angular-odata 0.130.0 → 0.131.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/fesm2022/angular-odata.mjs +2298 -2162
- package/fesm2022/angular-odata.mjs.map +1 -1
- package/lib/api.d.ts +10 -11
- package/lib/cache/cache.d.ts +2 -2
- package/lib/cache/memory.d.ts +2 -2
- package/lib/cache/storage.d.ts +2 -2
- package/lib/loaders.d.ts +8 -8
- package/lib/metadata/csdl/csdl-annotation.d.ts +3 -3
- package/lib/metadata/csdl/csdl-entity-container.d.ts +2 -2
- package/lib/metadata/csdl/csdl-entity-set.d.ts +2 -2
- package/lib/metadata/csdl/csdl-enum-type.d.ts +3 -3
- package/lib/metadata/csdl/csdl-function-action.d.ts +4 -4
- package/lib/metadata/csdl/csdl-reference.d.ts +2 -2
- package/lib/metadata/csdl/csdl-schema.d.ts +2 -2
- package/lib/metadata/csdl/csdl-structural-property.d.ts +3 -3
- package/lib/metadata/csdl/csdl-structured-type.d.ts +3 -3
- package/lib/metadata/metadata.d.ts +2 -2
- package/lib/models/options.d.ts +2 -2
- package/lib/module.d.ts +3 -3
- package/lib/options.d.ts +3 -3
- package/lib/resources/query/expressions/apply.d.ts +1 -1
- package/lib/resources/query/expressions/compute.d.ts +1 -1
- package/lib/resources/query/expressions/count.d.ts +1 -1
- package/lib/resources/query/expressions/expand.d.ts +4 -3
- package/lib/resources/query/expressions/filter.d.ts +2 -1
- package/lib/resources/query/expressions/orderby.d.ts +2 -1
- package/lib/resources/query/expressions/search.d.ts +2 -1
- package/lib/resources/query/expressions/select.d.ts +2 -1
- package/lib/resources/query/handlers.d.ts +17 -5
- package/lib/resources/resource.d.ts +5 -5
- package/lib/resources/types/action.d.ts +2 -2
- package/lib/resources/types/entity-set.d.ts +2 -2
- package/lib/resources/types/navigation-property.d.ts +2 -2
- package/lib/resources/types/property.d.ts +2 -2
- package/lib/schema/annotation.d.ts +3 -3
- package/lib/schema/callable.d.ts +3 -3
- package/lib/schema/element.d.ts +3 -3
- package/lib/schema/entity-container.d.ts +2 -2
- package/lib/schema/entity-set.d.ts +2 -2
- package/lib/schema/enum-type.d.ts +2 -2
- package/lib/schema/parsers/callable.d.ts +4 -4
- package/lib/schema/parsers/enum-type.d.ts +3 -3
- package/lib/schema/parsers/structured-type.d.ts +4 -4
- package/lib/schema/schema.d.ts +3 -3
- package/lib/schema/singleton.d.ts +2 -2
- package/lib/schema/structured-type.d.ts +3 -3
- package/lib/services/entity.d.ts +1 -1
- package/lib/settings.d.ts +2 -2
- package/lib/types.d.ts +76 -74
- package/lib/utils/odata.d.ts +2 -2
- package/package.json +3 -5
- package/schematics/apigen/files/api-config/__fileName__.ts +4 -4
- package/esm2022/angular-odata.mjs +0 -5
- package/esm2022/lib/annotations.mjs +0 -146
- package/esm2022/lib/api.mjs +0 -439
- package/esm2022/lib/cache/cache.mjs +0 -177
- package/esm2022/lib/cache/index.mjs +0 -4
- package/esm2022/lib/cache/memory.mjs +0 -30
- package/esm2022/lib/cache/storage.mjs +0 -57
- package/esm2022/lib/client.mjs +0 -215
- package/esm2022/lib/constants.mjs +0 -95
- package/esm2022/lib/helper.mjs +0 -288
- package/esm2022/lib/index.mjs +0 -22
- package/esm2022/lib/loaders.mjs +0 -43
- package/esm2022/lib/metadata/csdl/csdl-annotation.mjs +0 -273
- package/esm2022/lib/metadata/csdl/csdl-entity-container.mjs +0 -59
- package/esm2022/lib/metadata/csdl/csdl-entity-set.mjs +0 -50
- package/esm2022/lib/metadata/csdl/csdl-enum-type.mjs +0 -74
- package/esm2022/lib/metadata/csdl/csdl-function-action.mjs +0 -204
- package/esm2022/lib/metadata/csdl/csdl-navigation-property-binding.mjs +0 -15
- package/esm2022/lib/metadata/csdl/csdl-reference.mjs +0 -76
- package/esm2022/lib/metadata/csdl/csdl-schema.mjs +0 -87
- package/esm2022/lib/metadata/csdl/csdl-singleton.mjs +0 -37
- package/esm2022/lib/metadata/csdl/csdl-structural-property.mjs +0 -145
- package/esm2022/lib/metadata/csdl/csdl-structured-type.mjs +0 -159
- package/esm2022/lib/metadata/csdl/csdl-type-definition.mjs +0 -46
- package/esm2022/lib/metadata/index.mjs +0 -3
- package/esm2022/lib/metadata/metadata.mjs +0 -41
- package/esm2022/lib/metadata/parser.mjs +0 -564
- package/esm2022/lib/models/collection.mjs +0 -816
- package/esm2022/lib/models/index.mjs +0 -4
- package/esm2022/lib/models/model.mjs +0 -577
- package/esm2022/lib/models/options.mjs +0 -1227
- package/esm2022/lib/module.mjs +0 -55
- package/esm2022/lib/options.mjs +0 -91
- package/esm2022/lib/resources/index.mjs +0 -7
- package/esm2022/lib/resources/options.mjs +0 -66
- package/esm2022/lib/resources/path/handlers.mjs +0 -81
- package/esm2022/lib/resources/path/index.mjs +0 -3
- package/esm2022/lib/resources/path/segments.mjs +0 -149
- package/esm2022/lib/resources/query/builder.mjs +0 -645
- package/esm2022/lib/resources/query/expressions/apply.mjs +0 -238
- package/esm2022/lib/resources/query/expressions/base.mjs +0 -26
- package/esm2022/lib/resources/query/expressions/compute.mjs +0 -55
- package/esm2022/lib/resources/query/expressions/count.mjs +0 -118
- package/esm2022/lib/resources/query/expressions/expand.mjs +0 -154
- package/esm2022/lib/resources/query/expressions/filter.mjs +0 -180
- package/esm2022/lib/resources/query/expressions/index.mjs +0 -10
- package/esm2022/lib/resources/query/expressions/orderby.mjs +0 -81
- package/esm2022/lib/resources/query/expressions/search.mjs +0 -144
- package/esm2022/lib/resources/query/expressions/select.mjs +0 -49
- package/esm2022/lib/resources/query/expressions/syntax.mjs +0 -770
- package/esm2022/lib/resources/query/handlers.mjs +0 -423
- package/esm2022/lib/resources/query/index.mjs +0 -5
- package/esm2022/lib/resources/query/options.mjs +0 -140
- package/esm2022/lib/resources/request.mjs +0 -210
- package/esm2022/lib/resources/resource.mjs +0 -316
- package/esm2022/lib/resources/response.mjs +0 -180
- package/esm2022/lib/resources/types/action.mjs +0 -118
- package/esm2022/lib/resources/types/batch.mjs +0 -428
- package/esm2022/lib/resources/types/count.mjs +0 -33
- package/esm2022/lib/resources/types/entity-set.mjs +0 -131
- package/esm2022/lib/resources/types/entity.mjs +0 -112
- package/esm2022/lib/resources/types/function.mjs +0 -149
- package/esm2022/lib/resources/types/index.mjs +0 -15
- package/esm2022/lib/resources/types/media.mjs +0 -44
- package/esm2022/lib/resources/types/metadata.mjs +0 -35
- package/esm2022/lib/resources/types/navigation-property.mjs +0 -246
- package/esm2022/lib/resources/types/options.mjs +0 -2
- package/esm2022/lib/resources/types/property.mjs +0 -187
- package/esm2022/lib/resources/types/reference.mjs +0 -87
- package/esm2022/lib/resources/types/singleton.mjs +0 -125
- package/esm2022/lib/resources/types/value.mjs +0 -48
- package/esm2022/lib/schema/annotation.mjs +0 -44
- package/esm2022/lib/schema/callable.mjs +0 -69
- package/esm2022/lib/schema/element.mjs +0 -70
- package/esm2022/lib/schema/entity-container.mjs +0 -13
- package/esm2022/lib/schema/entity-set.mjs +0 -11
- package/esm2022/lib/schema/enum-type.mjs +0 -69
- package/esm2022/lib/schema/index.mjs +0 -9
- package/esm2022/lib/schema/parsers/callable.mjs +0 -123
- package/esm2022/lib/schema/parsers/edm.mjs +0 -101
- package/esm2022/lib/schema/parsers/enum-type.mjs +0 -148
- package/esm2022/lib/schema/parsers/index.mjs +0 -5
- package/esm2022/lib/schema/parsers/structured-type.mjs +0 -548
- package/esm2022/lib/schema/schema.mjs +0 -52
- package/esm2022/lib/schema/singleton.mjs +0 -11
- package/esm2022/lib/schema/structured-type.mjs +0 -220
- package/esm2022/lib/services/base.mjs +0 -32
- package/esm2022/lib/services/entity-set.mjs +0 -161
- package/esm2022/lib/services/entity.mjs +0 -12
- package/esm2022/lib/services/factory.mjs +0 -39
- package/esm2022/lib/services/index.mjs +0 -5
- package/esm2022/lib/services/singleton.mjs +0 -55
- package/esm2022/lib/settings.mjs +0 -113
- package/esm2022/lib/types.mjs +0 -118
- package/esm2022/lib/utils/arraybuffers.mjs +0 -46
- package/esm2022/lib/utils/arrays.mjs +0 -10
- package/esm2022/lib/utils/dates.mjs +0 -18
- package/esm2022/lib/utils/durations.mjs +0 -40
- package/esm2022/lib/utils/enums.mjs +0 -61
- package/esm2022/lib/utils/http.mjs +0 -95
- package/esm2022/lib/utils/index.mjs +0 -10
- package/esm2022/lib/utils/objects.mjs +0 -204
- package/esm2022/lib/utils/odata.mjs +0 -22
- package/esm2022/lib/utils/strings.mjs +0 -20
- package/esm2022/lib/utils/types.mjs +0 -136
- package/esm2022/lib/utils/urls.mjs +0 -24
- package/esm2022/public-api.mjs +0 -5
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import { CALLABLE_BINDING_PARAMETER } from '../../constants';
|
|
2
|
-
import { NONE_PARSER, } from '../../types';
|
|
3
|
-
import { ODataEnumTypeParser } from './enum-type';
|
|
4
|
-
import { ODataStructuredTypeParser } from './structured-type';
|
|
5
|
-
export class ODataParameterParser {
|
|
6
|
-
name;
|
|
7
|
-
type;
|
|
8
|
-
parser;
|
|
9
|
-
collection;
|
|
10
|
-
nullable;
|
|
11
|
-
parserOptions;
|
|
12
|
-
constructor(name, parameter) {
|
|
13
|
-
this.name = name;
|
|
14
|
-
this.type = parameter.type;
|
|
15
|
-
this.parser = NONE_PARSER;
|
|
16
|
-
this.nullable = parameter.nullable;
|
|
17
|
-
this.collection = parameter.collection;
|
|
18
|
-
}
|
|
19
|
-
serialize(value, options) {
|
|
20
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
21
|
-
return Array.isArray(value)
|
|
22
|
-
? value.map((v) => this.parser.serialize(v, parserOptions))
|
|
23
|
-
: this.parser.serialize(value, parserOptions);
|
|
24
|
-
}
|
|
25
|
-
//Encode
|
|
26
|
-
encode(value, options) {
|
|
27
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
28
|
-
return Array.isArray(value)
|
|
29
|
-
? value.map((v) => this.parser.encode(v, parserOptions))
|
|
30
|
-
: this.parser.encode(value, parserOptions);
|
|
31
|
-
}
|
|
32
|
-
configure({ options, parserForType, }) {
|
|
33
|
-
this.parserOptions = options;
|
|
34
|
-
this.parser = parserForType(this.type);
|
|
35
|
-
}
|
|
36
|
-
isEdmType() {
|
|
37
|
-
return this.type.startsWith('Edm.');
|
|
38
|
-
}
|
|
39
|
-
isEnumType() {
|
|
40
|
-
return this.parser instanceof ODataEnumTypeParser;
|
|
41
|
-
}
|
|
42
|
-
enumType() {
|
|
43
|
-
if (!this.isEnumType())
|
|
44
|
-
throw new Error('Field are not EnumType');
|
|
45
|
-
return this.parser;
|
|
46
|
-
}
|
|
47
|
-
isStructuredType() {
|
|
48
|
-
return this.parser instanceof ODataStructuredTypeParser;
|
|
49
|
-
}
|
|
50
|
-
structuredType() {
|
|
51
|
-
if (!this.isStructuredType())
|
|
52
|
-
throw new Error('Field are not StrucuturedType');
|
|
53
|
-
return this.parser;
|
|
54
|
-
}
|
|
55
|
-
field(name) {
|
|
56
|
-
if (this.isStructuredType())
|
|
57
|
-
return this.parser.field(name);
|
|
58
|
-
throw new Error(`The field ${this.name} is not related to a StructuredType`);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
export class ODataCallableParser {
|
|
62
|
-
name;
|
|
63
|
-
namespace;
|
|
64
|
-
alias;
|
|
65
|
-
return;
|
|
66
|
-
parser;
|
|
67
|
-
parameters;
|
|
68
|
-
parserOptions;
|
|
69
|
-
constructor(config, namespace, alias) {
|
|
70
|
-
this.name = config.name;
|
|
71
|
-
this.namespace = namespace;
|
|
72
|
-
this.alias = alias;
|
|
73
|
-
this.return = config.return;
|
|
74
|
-
this.parser = NONE_PARSER;
|
|
75
|
-
this.parameters = Object.entries(config.parameters || []).map(([name, p]) => new ODataParameterParser(name, p));
|
|
76
|
-
}
|
|
77
|
-
isTypeOf(type) {
|
|
78
|
-
var names = [`${this.namespace}.${this.name}`];
|
|
79
|
-
if (this.alias)
|
|
80
|
-
names.push(`${this.alias}.${this.name}`);
|
|
81
|
-
return names.indexOf(type) !== -1;
|
|
82
|
-
}
|
|
83
|
-
// Deserialize
|
|
84
|
-
deserialize(value, options) {
|
|
85
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
86
|
-
return this.parser.deserialize(value, parserOptions);
|
|
87
|
-
}
|
|
88
|
-
// Serialize
|
|
89
|
-
serialize(params, options) {
|
|
90
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
91
|
-
const parameters = this.parameters
|
|
92
|
-
.filter((p) => p.name !== CALLABLE_BINDING_PARAMETER)
|
|
93
|
-
.filter((p) => p.name in params && params[p.name] !== undefined);
|
|
94
|
-
return parameters.reduce((acc, p) => ({
|
|
95
|
-
...acc,
|
|
96
|
-
[p.name]: p.serialize(params[p.name], parserOptions),
|
|
97
|
-
}), {});
|
|
98
|
-
}
|
|
99
|
-
//Encode
|
|
100
|
-
encode(params, options) {
|
|
101
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
102
|
-
const parameters = this.parameters
|
|
103
|
-
.filter((p) => p.name !== CALLABLE_BINDING_PARAMETER)
|
|
104
|
-
.filter((p) => p.name in params && params[p.name] !== undefined);
|
|
105
|
-
return parameters.reduce((acc, p) => ({
|
|
106
|
-
...acc,
|
|
107
|
-
[p.name]: p.encode(params[p.name], parserOptions),
|
|
108
|
-
}), {});
|
|
109
|
-
}
|
|
110
|
-
configure({ options, parserForType, }) {
|
|
111
|
-
this.parserOptions = options;
|
|
112
|
-
if (this.return)
|
|
113
|
-
this.parser = parserForType(this.return.type) ?? NONE_PARSER;
|
|
114
|
-
this.parameters.forEach((p) => p.configure({ options, parserForType }));
|
|
115
|
-
}
|
|
116
|
-
binding() {
|
|
117
|
-
return this.parameters.find((p) => p.name === CALLABLE_BINDING_PARAMETER);
|
|
118
|
-
}
|
|
119
|
-
returnType() {
|
|
120
|
-
return this.return?.type;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW9kYXRhL3NyYy9saWIvc2NoZW1hL3BhcnNlcnMvY2FsbGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUVMLFdBQVcsR0FJWixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFOUQsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixJQUFJLENBQVM7SUFDYixJQUFJLENBQVM7SUFDTCxNQUFNLENBQVk7SUFDMUIsVUFBVSxDQUFXO0lBQ3JCLFFBQVEsQ0FBVztJQUNuQixhQUFhLENBQWlCO0lBRTlCLFlBQVksSUFBWSxFQUFFLFNBQTBCO1FBQ2xELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUM7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBUSxFQUFFLE9BQXVCO1FBQ3pDLE1BQU0sYUFBYSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDNUQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN6QixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFF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LGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQztRQUMvRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLDBCQUEwQixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENBTExBQkxFX0JJTkRJTkdfUEFSQU1FVEVSIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gIENhbGxhYmxlQ29uZmlnLFxuICBOT05FX1BBUlNFUixcbiAgUGFyc2VyT3B0aW9ucyxcbiAgUGFyYW1ldGVyQ29uZmlnLFxuICBQYXJzZXIsXG59IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IE9EYXRhRW51bVR5cGVQYXJzZXIgfSBmcm9tICcuL2VudW0tdHlwZSc7XG5pbXBvcnQgeyBPRGF0YVN0cnVjdHVyZWRUeXBlUGFyc2VyIH0gZnJvbSAnLi9zdHJ1Y3R1cmVkLXR5cGUnO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFQYXJhbWV0ZXJQYXJzZXI8VD4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgcHJpdmF0ZSBwYXJzZXI6IFBhcnNlcjxUPjtcbiAgY29sbGVjdGlvbj86IGJvb2xlYW47XG4gIG51bGxhYmxlPzogYm9vbGVhbjtcbiAgcGFyc2VyT3B0aW9ucz86IFBhcnNlck9wdGlvbnM7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBwYXJhbWV0ZXI6IFBhcmFtZXRlckNvbmZpZykge1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy50eXBlID0gcGFyYW1ldGVyLnR5cGU7XG4gICAgdGhpcy5wYXJzZXIgPSBOT05FX1BBUlNFUjtcbiAgICB0aGlzLm51bGxhYmxlID0gcGFyYW1ldGVyLm51bGxhYmxlO1xuICAgIHRoaXMuY29sbGVjdGlvbiA9IHBhcmFtZXRlci5jb2xsZWN0aW9uO1xuICB9XG5cbiAgc2VyaWFsaXplKHZhbHVlOiBULCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICA/IHZhbHVlLm1hcCgodikgPT4gdGhpcy5wYXJzZXIuc2VyaWFsaXplKHYsIHBhcnNlck9wdGlvbnMpKVxuICAgICAgOiB0aGlzLnBhcnNlci5zZXJpYWxpemUodmFsdWUsIHBhcnNlck9wdGlvbnMpO1xuICB9XG5cbiAgLy9FbmNvZGVcbiAgZW5jb2RlKHZhbHVlOiBhbnksIG9wdGlvbnM/OiBQYXJzZXJPcHRpb25zKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWUubWFwKCh2KSA9PiB0aGlzLnBhcnNlci5lbmNvZGUodiwgcGFyc2VyT3B0aW9ucykpXG4gICAgICA6IHRoaXMucGFyc2VyLmVuY29kZSh2YWx1ZSwgcGFyc2VyT3B0aW9ucyk7XG4gIH1cblxuICBjb25maWd1cmUoe1xuICAgIG9wdGlvbnMsXG4gICAgcGFyc2VyRm9yVHlwZSxcbiAgfToge1xuICAgIG9wdGlvbnM6IFBhcnNlck9wdGlvbnM7XG4gICAgcGFyc2VyRm9yVHlwZTogKHR5cGU6IHN0cmluZykgPT4gUGFyc2VyPGFueT47XG4gIH0pIHtcbiAgICB0aGlzLnBhcnNlck9wdGlvbnMgPSBvcHRpb25zO1xuICAgIHRoaXMucGFyc2VyID0gcGFyc2VyRm9yVHlwZSh0aGlzLnR5cGUpO1xuICB9XG5cbiAgaXNFZG1UeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnR5cGUuc3RhcnRzV2l0aCgnRWRtLicpO1xuICB9XG5cbiAgaXNFbnVtVHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZXIgaW5zdGFuY2VvZiBPRGF0YUVudW1UeXBlUGFyc2VyO1xuICB9XG5cbiAgZW51bVR5cGUoKSB7XG4gICAgaWYgKCF0aGlzLmlzRW51bVR5cGUoKSkgdGhyb3cgbmV3IEVycm9yKCdGaWVsZCBhcmUgbm90IEVudW1UeXBlJyk7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VyIGFzIE9EYXRhRW51bVR5cGVQYXJzZXI8VD47XG4gIH1cblxuICBpc1N0cnVjdHVyZWRUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcnNlciBpbnN0YW5jZW9mIE9EYXRhU3RydWN0dXJlZFR5cGVQYXJzZXI7XG4gIH1cblxuICBzdHJ1Y3R1cmVkVHlwZSgpIHtcbiAgICBpZiAoIXRoaXMuaXNTdHJ1Y3R1cmVkVHlwZSgpKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWVsZCBhcmUgbm90IFN0cnVjdXR1cmVkVHlwZScpO1xuICAgIHJldHVybiB0aGlzLnBhcnNlciBhcyBPRGF0YVN0cnVjdHVyZWRUeXBlUGFyc2VyPFQ+O1xuICB9XG5cbiAgZmllbGQ8Rj4obmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuaXNTdHJ1Y3R1cmVkVHlwZSgpKVxuICAgICAgcmV0dXJuICh0aGlzLnBhcnNlciBhcyBPRGF0YVN0cnVjdHVyZWRUeXBlUGFyc2VyPFQ+KS5maWVsZDxGPihcbiAgICAgICAgbmFtZSBhcyBrZXlvZiBULFxuICAgICAgKTtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgVGhlIGZpZWxkICR7dGhpcy5uYW1lfSBpcyBub3QgcmVsYXRlZCB0byBhIFN0cnVjdHVyZWRUeXBlYCxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBPRGF0YUNhbGxhYmxlUGFyc2VyPFI+IGltcGxlbWVudHMgUGFyc2VyPFI+IHtcbiAgbmFtZTogc3RyaW5nO1xuICBuYW1lc3BhY2U6IHN0cmluZztcbiAgYWxpYXM/OiBzdHJpbmc7XG4gIHJldHVybj86IHsgdHlwZTogc3RyaW5nOyBjb2xsZWN0aW9uPzogYm9vbGVhbiB9O1xuICBwYXJzZXI6IFBhcnNlcjxhbnk+O1xuICBwYXJhbWV0ZXJzOiBPRGF0YVBhcmFtZXRlclBhcnNlcjxhbnk+W107XG4gIHBhcnNlck9wdGlvbnM/OiBQYXJzZXJPcHRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogQ2FsbGFibGVDb25maWcsIG5hbWVzcGFjZTogc3RyaW5nLCBhbGlhcz86IHN0cmluZykge1xuICAgIHRoaXMubmFtZSA9IGNvbmZpZy5uYW1lO1xuICAgIHRoaXMubmFtZXNwYWNlID0gbmFtZXNwYWNlO1xuICAgIHRoaXMuYWxpYXMgPSBhbGlhcztcbiAgICB0aGlzLnJldHVybiA9IGNvbmZpZy5yZXR1cm47XG4gICAgdGhpcy5wYXJzZXIgPSBOT05FX1BBUlNFUjtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSBPYmplY3QuZW50cmllcyhjb25maWcucGFyYW1ldGVycyB8fCBbXSkubWFwKFxuICAgICAgKFtuYW1lLCBwXSkgPT4gbmV3IE9EYXRhUGFyYW1ldGVyUGFyc2VyKG5hbWUsIHAgYXMgUGFyYW1ldGVyQ29uZmlnKSxcbiAgICApO1xuICB9XG5cbiAgaXNUeXBlT2YodHlwZTogc3RyaW5nKSB7XG4gICAgdmFyIG5hbWVzID0gW2Ake3RoaXMubmFtZXNwYWNlfS4ke3RoaXMubmFtZX1gXTtcbiAgICBpZiAodGhpcy5hbGlhcykgbmFtZXMucHVzaChgJHt0aGlzLmFsaWFzfS4ke3RoaXMubmFtZX1gKTtcbiAgICByZXR1cm4gbmFtZXMuaW5kZXhPZih0eXBlKSAhPT0gLTE7XG4gIH1cblxuICAvLyBEZXNlcmlhbGl6ZVxuICBkZXNlcmlhbGl6ZSh2YWx1ZTogYW55LCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IFIge1xuICAgIGNvbnN0IHBhcnNlck9wdGlvbnMgPSB7IC4uLnRoaXMucGFyc2VyT3B0aW9ucywgLi4ub3B0aW9ucyB9O1xuICAgIHJldHVybiB0aGlzLnBhcnNlci5kZXNlcmlhbGl6ZSh2YWx1ZSwgcGFyc2VyT3B0aW9ucyk7XG4gIH1cblxuICAvLyBTZXJpYWxpemVcbiAgc2VyaWFsaXplKHBhcmFtczogYW55LCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgcGFyYW1ldGVycyA9IHRoaXMucGFyYW1ldGVyc1xuICAgICAgLmZpbHRlcigocCkgPT4gcC5uYW1lICE9PSBDQUxMQUJMRV9CSU5ESU5HX1BBUkFNRVRFUilcbiAgICAgIC5maWx0ZXIoKHApID0+IHAubmFtZSBpbiBwYXJhbXMgJiYgcGFyYW1zW3AubmFtZV0gIT09IHVuZGVmaW5lZCk7XG4gICAgcmV0dXJuIHBhcmFtZXRlcnMucmVkdWNlKFxuICAgICAgKGFjYywgcCkgPT4gKHtcbiAgICAgICAgLi4uYWNjLFxuICAgICAgICBbcC5uYW1lXTogcC5zZXJpYWxpemUocGFyYW1zW3AubmFtZV0sIHBhcnNlck9wdGlvbnMpLFxuICAgICAgfSksXG4gICAgICB7fSxcbiAgICApO1xuICB9XG5cbiAgLy9FbmNvZGVcbiAgZW5jb2RlKHBhcmFtczogYW55LCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgcGFyYW1ldGVycyA9IHRoaXMucGFyYW1ldGVyc1xuICAgICAgLmZpbHRlcigocCkgPT4gcC5uYW1lICE9PSBDQUxMQUJMRV9CSU5ESU5HX1BBUkFNRVRFUilcbiAgICAgIC5maWx0ZXIoKHApID0+IHAubmFtZSBpbiBwYXJhbXMgJiYgcGFyYW1zW3AubmFtZV0gIT09IHVuZGVmaW5lZCk7XG4gICAgcmV0dXJuIHBhcmFtZXRlcnMucmVkdWNlKFxuICAgICAgKGFjYywgcCkgPT4gKHtcbiAgICAgICAgLi4uYWNjLFxuICAgICAgICBbcC5uYW1lXTogcC5lbmNvZGUocGFyYW1zW3AubmFtZV0sIHBhcnNlck9wdGlvbnMpLFxuICAgICAgfSksXG4gICAgICB7fSxcbiAgICApO1xuICB9XG5cbiAgY29uZmlndXJlKHtcbiAgICBvcHRpb25zLFxuICAgIHBhcnNlckZvclR5cGUsXG4gIH06IHtcbiAgICBvcHRpb25zOiBQYXJzZXJPcHRpb25zO1xuICAgIHBhcnNlckZvclR5cGU6ICh0eXBlOiBzdHJpbmcpID0+IFBhcnNlcjxhbnk+O1xuICB9KSB7XG4gICAgdGhpcy5wYXJzZXJPcHRpb25zID0gb3B0aW9ucztcbiAgICBpZiAodGhpcy5yZXR1cm4pXG4gICAgICB0aGlzLnBhcnNlciA9IHBhcnNlckZvclR5cGUodGhpcy5yZXR1cm4udHlwZSkgPz8gTk9ORV9QQVJTRVI7XG4gICAgdGhpcy5wYXJhbWV0ZXJzLmZvckVhY2goKHApID0+IHAuY29uZmlndXJlKHsgb3B0aW9ucywgcGFyc2VyRm9yVHlwZSB9KSk7XG4gIH1cblxuICBiaW5kaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmFtZXRlcnMuZmluZCgocCkgPT4gcC5uYW1lID09PSBDQUxMQUJMRV9CSU5ESU5HX1BBUkFNRVRFUik7XG4gIH1cblxuICByZXR1cm5UeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnJldHVybj8udHlwZTtcbiAgfVxufVxuIl19
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { raw, isRawType } from '../../resources/query';
|
|
2
|
-
import { EdmType } from '../../types';
|
|
3
|
-
import { ArrayBuffers } from '../../utils/arraybuffers';
|
|
4
|
-
import { Durations } from '../../utils/durations';
|
|
5
|
-
// Core EdmTypeParserBuilder
|
|
6
|
-
const EdmParser = (_d, _s, _e) => ({
|
|
7
|
-
deserialize(value, options) {
|
|
8
|
-
return Array.isArray(value)
|
|
9
|
-
? value.map((v) => _d(v, options))
|
|
10
|
-
: _d(value, options);
|
|
11
|
-
},
|
|
12
|
-
serialize(value, options) {
|
|
13
|
-
return Array.isArray(value)
|
|
14
|
-
? value.map((v) => _s(v, options))
|
|
15
|
-
: _s(value, options);
|
|
16
|
-
},
|
|
17
|
-
encode(value, options) {
|
|
18
|
-
return Array.isArray(value)
|
|
19
|
-
? value.map((v) => (!isRawType(v) ? _e(v, options) : v))
|
|
20
|
-
: !isRawType(value)
|
|
21
|
-
? _e(value, options)
|
|
22
|
-
: value;
|
|
23
|
-
},
|
|
24
|
-
});
|
|
25
|
-
const Identity = (v) => v;
|
|
26
|
-
const toNumber = (v) => Number(v);
|
|
27
|
-
const toString = (v) => v.toString();
|
|
28
|
-
const toBoolean = (v) => Boolean(v);
|
|
29
|
-
const toDate = (v) => new Date(v);
|
|
30
|
-
export const EDM_PARSERS = {
|
|
31
|
-
//Edm.Guid 16-byte (128-bit) unique identifier
|
|
32
|
-
[EdmType.Guid]: EdmParser(Identity, Identity, (v) => raw(v)),
|
|
33
|
-
//Edm.Int16 Signed 16-bit integer
|
|
34
|
-
[EdmType.Int16]: EdmParser(toNumber, toNumber, toNumber),
|
|
35
|
-
//Edm.String Sequence of UTF-8 characters
|
|
36
|
-
[EdmType.String]: EdmParser(toString, toString, toString),
|
|
37
|
-
//Edm.Boolean Binary-valued logic
|
|
38
|
-
[EdmType.Boolean]: EdmParser(toBoolean, toBoolean, toBoolean),
|
|
39
|
-
//Edm.Byte Unsigned 8-bit integer
|
|
40
|
-
[EdmType.Byte]: EdmParser(toNumber, toNumber, toNumber),
|
|
41
|
-
//Edm.SByte Signed 8-bit integer
|
|
42
|
-
[EdmType.SByte]: EdmParser(toNumber, toNumber, toNumber),
|
|
43
|
-
//Edm.Int32 Signed 16-bit integer
|
|
44
|
-
[EdmType.Int32]: EdmParser(toNumber, toNumber, toNumber),
|
|
45
|
-
//Edm.Int64 Signed 16-bit integer
|
|
46
|
-
[EdmType.Int64]: EdmParser(toNumber, toNumber, toNumber),
|
|
47
|
-
//Edm.Date Date without a time-zone offset
|
|
48
|
-
[EdmType.Date]: EdmParser((v) => new Date(`${v}T00:00:00.000Z`), (v) => toDate(v).toISOString().substring(0, 10), (v) => raw(toDate(v).toISOString().substring(0, 10))),
|
|
49
|
-
//Edm.TimeOfDay Clock time 00:00-23:59:59.999999999999
|
|
50
|
-
[EdmType.TimeOfDay]: EdmParser((v) => new Date(`1970-01-01T${v}Z`), (v) => toDate(v).toISOString().substring(11, 23), (v) => raw(toDate(v).toISOString().substring(11, 23))),
|
|
51
|
-
//Edm.DateTimeOffset Date and time with a time-zone offset, no leap seconds
|
|
52
|
-
[EdmType.DateTimeOffset]: EdmParser(toDate, (v) => toDate(v).toISOString(), (v) => raw(toDate(v).toISOString())),
|
|
53
|
-
//Edm.Duration Signed duration in days, hours, minutes, and (sub)seconds
|
|
54
|
-
[EdmType.Duration]: EdmParser((v) => Durations.toDuration(v), (v) => Durations.toString(v), (v) => raw(Durations.toString(v))),
|
|
55
|
-
//Edm.Decimal Numeric values with fixed precision and scale
|
|
56
|
-
[EdmType.Decimal]: EdmParser(toNumber, (v, o) => {
|
|
57
|
-
if (o.ieee754Compatible) {
|
|
58
|
-
let vstr = v.toPrecision(o.field.precision);
|
|
59
|
-
if (typeof o.field.scale === 'number') {
|
|
60
|
-
vstr = parseFloat(vstr).toFixed(o.field.scale);
|
|
61
|
-
}
|
|
62
|
-
return vstr;
|
|
63
|
-
}
|
|
64
|
-
return v;
|
|
65
|
-
}, (v, o) => {
|
|
66
|
-
if (o.ieee754Compatible) {
|
|
67
|
-
let vstr = v.toPrecision(o.field.precision);
|
|
68
|
-
if (typeof o.field.scale === 'number') {
|
|
69
|
-
vstr = parseFloat(vstr).toFixed(o.field.scale);
|
|
70
|
-
}
|
|
71
|
-
return raw(vstr);
|
|
72
|
-
}
|
|
73
|
-
return v;
|
|
74
|
-
}),
|
|
75
|
-
//Edm.Double IEEE 754 binary64 floating-point number (15-17 decimal digits)
|
|
76
|
-
[EdmType.Double]: EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => raw(v === Infinity ? 'INF' : v.toString())),
|
|
77
|
-
//Edm.Single IEEE 754 binary32 floating-point number (6-9 decimal digits)
|
|
78
|
-
[EdmType.Single]: EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => raw(v === Infinity ? 'INF' : v.toString())),
|
|
79
|
-
//Edm.Binary Binary data
|
|
80
|
-
[EdmType.Binary]: EdmParser((v) => ArrayBuffers.toArrayBuffer(v), (v) => ArrayBuffers.toString(v), (v) => raw(ArrayBuffers.toString(v))),
|
|
81
|
-
};
|
|
82
|
-
/*
|
|
83
|
-
Edm.Stream Binary data stream
|
|
84
|
-
Edm.Geography Abstract base type for all Geography types
|
|
85
|
-
Edm.GeographyPoint A point in a round-earth coordinate system
|
|
86
|
-
Edm.GeographyLineString Line string in a round-earth coordinate system
|
|
87
|
-
Edm.GeographyPolygon Polygon in a round-earth coordinate system
|
|
88
|
-
Edm.GeographyMultiPoint Collection of points in a round-earth coordinate system
|
|
89
|
-
Edm.GeographyMultiLineString Collection of line strings in a round-earth coordinate system
|
|
90
|
-
Edm.GeographyMultiPolygon Collection of polygons in a round-earth coordinate system
|
|
91
|
-
Edm.GeographyCollection Collection of arbitrary Geography values
|
|
92
|
-
Edm.Geometry Abstract base type for all Geometry types
|
|
93
|
-
Edm.GeometryPoint Point in a flat-earth coordinate system
|
|
94
|
-
Edm.GeometryLineString Line string in a flat-earth coordinate system
|
|
95
|
-
Edm.GeometryPolygon Polygon in a flat-earth coordinate system
|
|
96
|
-
Edm.GeometryMultiPoint Collection of points in a flat-earth coordinate system
|
|
97
|
-
Edm.GeometryMultiLineString Collection of line strings in a flat-earth coordinate system
|
|
98
|
-
Edm.GeometryMultiPolygon Collection of polygons in a flat-earth coordinate system
|
|
99
|
-
Edm.GeometryCollection Collection of arbitrary Geometry values
|
|
100
|
-
*/
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VkbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQTJDLE1BQU0sYUFBYSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQVksU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQsNEJBQTRCO0FBQzVCLE1BQU0sU0FBUyxHQUFHLENBQ2hCLEVBQWdELEVBQ2hELEVBQWtELEVBQ2xELEVBQWtELEVBQzVCLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLFdBQVcsQ0FBQyxLQUFVLEVBQUUsT0FBbUM7UUFDekQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN6QixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsU0FBUyxDQUFDLEtBQVUsRUFBRSxPQUFtQztRQUN2RCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFDRCxNQUFNLENBQUMsS0FBVSxFQUFFLE9BQW1DO1FBQ3BELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDekIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hELENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2pCLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQztnQkFDcEIsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFDLENBQUM7QUFFSCxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQy9CLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDdkMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUMxQyxNQUFNLFNBQVMsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3pDLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUV2QyxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQXlDO0lBQy9ELDhDQUE4QztJQUM5QyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLENBQVMsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLGlDQUFpQztJQUNqQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLENBQVMsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUM7SUFDaEUseUNBQXlDO0lBQ3pDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsQ0FBUyxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQztJQUNqRSxpQ0FBaUM7SUFDakMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFVLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO0lBQ3RFLGlDQUFpQztJQUNqQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLENBQVMsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUM7SUFDL0QsZ0NBQWdDO0lBQ2hDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLFNBQVMsQ0FBUyxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQztJQUNoRSxpQ0FBaUM7SUFDakMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQ2hFLGlDQUFpQztJQUNqQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLENBQVMsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUM7SUFDaEUsMENBQTBDO0lBQzFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FDdkIsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUMxQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQ3BELENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDMUQ7SUFDRCxzREFBc0Q7SUFDdEQsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUM1QixDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUN4QyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQ3JELENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDM0Q7SUFDRCwyRUFBMkU7SUFDM0UsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUUsU0FBUyxDQUNqQyxNQUFNLEVBQ04sQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFDbkMsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FDekM7SUFDRCx3RUFBd0U7SUFDeEUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsU0FBUyxDQUMzQixDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFDbkMsQ0FBQyxDQUFXLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQ3RDLENBQUMsQ0FBVyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUM1QztJQUNELDJEQUEyRDtJQUMzRCxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxT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QkUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByYXcsIGlzUmF3VHlwZSB9IGZyb20gJy4uLy4uL3Jlc291cmNlcy9xdWVyeSc7XG5pbXBvcnQgeyBFZG1UeXBlLCBGaWVsZFBhcnNlciwgU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBcnJheUJ1ZmZlcnMgfSBmcm9tICcuLi8uLi91dGlscy9hcnJheWJ1ZmZlcnMnO1xuaW1wb3J0IHsgRHVyYXRpb24sIER1cmF0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL2R1cmF0aW9ucyc7XG5cbi8vIENvcmUgRWRtVHlwZVBhcnNlckJ1aWxkZXJcbmNvbnN0IEVkbVBhcnNlciA9IDxUPihcbiAgX2Q6ICh2OiBhbnksIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiBULFxuICBfczogKHY6IGFueSwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IGFueSxcbiAgX2U6ICh2OiBhbnksIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiBhbnksXG4pOiBGaWVsZFBhcnNlcjxUIHwgVFtdPiA9PiAoe1xuICBkZXNlcmlhbGl6ZSh2YWx1ZTogYW55LCBvcHRpb25zOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucyk6IFQgfCBUW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgPyB2YWx1ZS5tYXAoKHYpID0+IF9kKHYsIG9wdGlvbnMpKVxuICAgICAgOiBfZCh2YWx1ZSwgb3B0aW9ucyk7XG4gIH0sXG4gIHNlcmlhbGl6ZSh2YWx1ZTogYW55LCBvcHRpb25zOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucyk6IGFueSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICA/IHZhbHVlLm1hcCgodikgPT4gX3Modiwgb3B0aW9ucykpXG4gICAgICA6IF9zKHZhbHVlLCBvcHRpb25zKTtcbiAgfSxcbiAgZW5jb2RlKHZhbHVlOiBhbnksIG9wdGlvbnM6IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKTogYW55IHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWUubWFwKCh2KSA9PiAoIWlzUmF3VHlwZSh2KSA/IF9lKHYsIG9wdGlvbnMpIDogdikpXG4gICAgICA6ICFpc1Jhd1R5cGUodmFsdWUpXG4gICAgICAgID8gX2UodmFsdWUsIG9wdGlvbnMpXG4gICAgICAgIDogdmFsdWU7XG4gIH0sXG59KTtcblxuY29uc3QgSWRlbnRpdHkgPSAodjogYW55KSA9PiB2O1xuY29uc3QgdG9OdW1iZXIgPSAodjogYW55KSA9PiBOdW1iZXIodik7XG5jb25zdCB0b1N0cmluZyA9ICh2OiBhbnkpID0+IHYudG9TdHJpbmcoKTtcbmNvbnN0IHRvQm9vbGVhbiA9ICh2OiBhbnkpID0+IEJvb2xlYW4odik7XG5jb25zdCB0b0RhdGUgPSAodjogYW55KSA9PiBuZXcgRGF0ZSh2KTtcblxuZXhwb3J0IGNvbnN0IEVETV9QQVJTRVJTOiB7IFt0eXBlOiBzdHJpbmddOiBGaWVsZFBhcnNlcjxhbnk+IH0gPSB7XG4gIC8vRWRtLkd1aWQgMTYtYnl0ZSAoMTI4LWJpdCkgdW5pcXVlIGlkZW50aWZpZXJcbiAgW0VkbVR5cGUuR3VpZF06IEVkbVBhcnNlcjxzdHJpbmc+KElkZW50aXR5LCBJZGVudGl0eSwgKHY6IHN0cmluZykgPT4gcmF3KHYpKSxcbiAgLy9FZG0uSW50MTYgU2lnbmVkIDE2LWJpdCBpbnRlZ2VyXG4gIFtFZG1UeXBlLkludDE2XTogRWRtUGFyc2VyPG51bWJlcj4odG9OdW1iZXIsIHRvTnVtYmVyLCB0b051bWJlciksXG4gIC8vRWRtLlN0cmluZyBTZXF1ZW5jZSBvZiBVVEYtOCBjaGFyYWN0ZXJzXG4gIFtFZG1UeXBlLlN0cmluZ106IEVkbVBhcnNlcjxzdHJpbmc+KHRvU3RyaW5nLCB0b1N0cmluZywgdG9TdHJpbmcpLFxuICAvL0VkbS5Cb29sZWFuIEJpbmFyeS12YWx1ZWQgbG9naWNcbiAgW0VkbVR5cGUuQm9vbGVhbl06IEVkbVBhcnNlcjxib29sZWFuPih0b0Jvb2xlYW4sIHRvQm9vbGVhbiwgdG9Cb29sZWFuKSxcbiAgLy9FZG0uQnl0ZSBVbnNpZ25lZCA4LWJpdCBpbnRlZ2VyXG4gIFtFZG1UeXBlLkJ5dGVdOiBFZG1QYXJzZXI8bnVtYmVyPih0b051bWJlciwgdG9OdW1iZXIsIHRvTnVtYmVyKSxcbiAgLy9FZG0uU0J5dGUgU2lnbmVkIDgtYml0IGludGVnZXJcbiAgW0VkbVR5cGUuU0J5dGVdOiBFZG1QYXJzZXI8bnVtYmVyPih0b051bWJlciwgdG9OdW1iZXIsIHRvTnVtYmVyKSxcbiAgLy9FZG0uSW50MzIgU2lnbmVkIDE2LWJpdCBpbnRlZ2VyXG4gIFtFZG1UeXBlLkludDMyXTogRWRtUGFyc2VyPG51bWJlcj4odG9OdW1iZXIsIHRvTnVtYmVyLCB0b051bWJlciksXG4gIC8vRWRtLkludDY0IFNpZ25lZCAxNi1iaXQgaW50ZWdlclxuICBbRWRtVHlwZS5JbnQ2NF06IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5EYXRlIERhdGUgd2l0aG91dCBhIHRpbWUtem9uZSBvZmZzZXRcbiAgW0VkbVR5cGUuRGF0ZV06IEVkbVBhcnNlcjxEYXRlPihcbiAgICAodjogYW55KSA9PiBuZXcgRGF0ZShgJHt2fVQwMDowMDowMC4wMDBaYCksXG4gICAgKHY6IGFueSkgPT4gdG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDAsIDEwKSxcbiAgICAodjogYW55KSA9PiByYXcodG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDAsIDEwKSksXG4gICksXG4gIC8vRWRtLlRpbWVPZkRheSBDbG9jayB0aW1lIDAwOjAwLTIzOjU5OjU5Ljk5OTk5OTk5OTk5OVxuICBbRWRtVHlwZS5UaW1lT2ZEYXldOiBFZG1QYXJzZXI8RGF0ZT4oXG4gICAgKHY6IGFueSkgPT4gbmV3IERhdGUoYDE5NzAtMDEtMDFUJHt2fVpgKSxcbiAgICAodjogYW55KSA9PiB0b0RhdGUodikudG9JU09TdHJpbmcoKS5zdWJzdHJpbmcoMTEsIDIzKSxcbiAgICAodjogYW55KSA9PiByYXcodG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDExLCAyMykpLFxuICApLFxuICAvL0VkbS5EYXRlVGltZU9mZnNldCBEYXRlIGFuZCB0aW1lIHdpdGggYSB0aW1lLXpvbmUgb2Zmc2V0LCBubyBsZWFwIHNlY29uZHNcbiAgW0VkbVR5cGUuRGF0ZVRpbWVPZmZzZXRdOiBFZG1QYXJzZXI8RGF0ZT4oXG4gICAgdG9EYXRlLFxuICAgICh2OiBhbnkpID0+IHRvRGF0ZSh2KS50b0lTT1N0cmluZygpLFxuICAgICh2OiBhbnkpID0+IHJhdyh0b0RhdGUodikudG9JU09TdHJpbmcoKSksXG4gICksXG4gIC8vRWRtLkR1cmF0aW9uIFNpZ25lZCBkdXJhdGlvbiBpbiBkYXlzLCBob3VycywgbWludXRlcywgYW5kIChzdWIpc2Vjb25kc1xuICBbRWRtVHlwZS5EdXJhdGlvbl06IEVkbVBhcnNlcjxEdXJhdGlvbj4oXG4gICAgKHY6IGFueSkgPT4gRHVyYXRpb25zLnRvRHVyYXRpb24odiksXG4gICAgKHY6IER1cmF0aW9uKSA9PiBEdXJhdGlvbnMudG9TdHJpbmcodiksXG4gICAgKHY6IER1cmF0aW9uKSA9PiByYXcoRHVyYXRpb25zLnRvU3RyaW5nKHYpKSxcbiAgKSxcbiAgLy9FZG0uRGVjaW1hbCBOdW1lcmljIHZhbHVlcyB3aXRoIGZpeGVkIHByZWNpc2lvbiBhbmQgc2NhbGVcbiAgW0VkbVR5cGUuRGVjaW1hbF06IEVkbVBhcnNlcjxudW1iZXI+KFxuICAgIHRvTnVtYmVyLFxuICAgICh2OiBudW1iZXIsIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiB7XG4gICAgICBpZiAoby5pZWVlNzU0Q29tcGF0aWJsZSkge1xuICAgICAgICBsZXQgdnN0ciA9IHYudG9QcmVjaXNpb24oby5maWVsZC5wcmVjaXNpb24pO1xuICAgICAgICBpZiAodHlwZW9mIG8uZmllbGQuc2NhbGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgdnN0ciA9IHBhcnNlRmxvYXQodnN0cikudG9GaXhlZChvLmZpZWxkLnNjYWxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdnN0cjtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2O1xuICAgIH0sXG4gICAgKHY6IG51bWJlciwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IHtcbiAgICAgIGlmIChvLmllZWU3NTRDb21wYXRpYmxlKSB7XG4gICAgICAgIGxldCB2c3RyID0gdi50b1ByZWNpc2lvbihvLmZpZWxkLnByZWNpc2lvbik7XG4gICAgICAgIGlmICh0eXBlb2Ygby5maWVsZC5zY2FsZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICB2c3RyID0gcGFyc2VGbG9hdCh2c3RyKS50b0ZpeGVkKG8uZmllbGQuc2NhbGUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByYXcodnN0cik7XG4gICAgICB9XG4gICAgICByZXR1cm4gdjtcbiAgICB9LFxuICApLFxuICAvL0VkbS5Eb3VibGUgSUVFRSA3NTQgYmluYXJ5NjQgZmxvYXRpbmctcG9pbnQgbnVtYmVyICgxNS0xNyBkZWNpbWFsIGRpZ2l0cylcbiAgW0VkbVR5cGUuRG91YmxlXTogRWRtUGFyc2VyPG51bWJlcj4oXG4gICAgKHY6IGFueSkgPT4gKHYgPT09ICdJTkYnID8gSW5maW5pdHkgOiAodiBhcyBudW1iZXIpKSxcbiAgICAodjogbnVtYmVyKSA9PiAodiA9PT0gSW5maW5pdHkgPyAnSU5GJyA6IHYpLFxuICAgICh2OiBudW1iZXIpID0+IHJhdyh2ID09PSBJbmZpbml0eSA/ICdJTkYnIDogdi50b1N0cmluZygpKSxcbiAgKSxcbiAgLy9FZG0uU2luZ2xlIElFRUUgNzU0IGJpbmFyeTMyIGZsb2F0aW5nLXBvaW50IG51bWJlciAoNi05IGRlY2ltYWwgZGlnaXRzKVxuICBbRWRtVHlwZS5TaW5nbGVdOiBFZG1QYXJzZXI8bnVtYmVyPihcbiAgICAodjogYW55KSA9PiAodiA9PT0gJ0lORicgPyBJbmZpbml0eSA6ICh2IGFzIG51bWJlcikpLFxuICAgICh2OiBudW1iZXIpID0+ICh2ID09PSBJbmZpbml0eSA/ICdJTkYnIDogdiksXG4gICAgKHY6IG51bWJlcikgPT4gcmF3KHYgPT09IEluZmluaXR5ID8gJ0lORicgOiB2LnRvU3RyaW5nKCkpLFxuICApLFxuICAvL0VkbS5CaW5hcnkgQmluYXJ5IGRhdGFcbiAgW0VkbVR5cGUuQmluYXJ5XTogRWRtUGFyc2VyPEFycmF5QnVmZmVyPihcbiAgICAodjogc3RyaW5nKSA9PiBBcnJheUJ1ZmZlcnMudG9BcnJheUJ1ZmZlcih2KSxcbiAgICAodjogQXJyYXlCdWZmZXIpID0+IEFycmF5QnVmZmVycy50b1N0cmluZyh2KSxcbiAgICAodjogQXJyYXlCdWZmZXIpID0+IHJhdyhBcnJheUJ1ZmZlcnMudG9TdHJpbmcodikpLFxuICApLFxufTtcblxuLypcbkVkbS5TdHJlYW0gQmluYXJ5IGRhdGEgc3RyZWFtXG5FZG0uR2VvZ3JhcGh5IEFic3RyYWN0IGJhc2UgdHlwZSBmb3IgYWxsIEdlb2dyYXBoeSB0eXBlc1xuRWRtLkdlb2dyYXBoeVBvaW50IEEgcG9pbnQgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeUxpbmVTdHJpbmcgTGluZSBzdHJpbmcgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeVBvbHlnb24gUG9seWdvbiBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5TXVsdGlQb2ludCBDb2xsZWN0aW9uIG9mIHBvaW50cyBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5TXVsdGlMaW5lU3RyaW5nIENvbGxlY3Rpb24gb2YgbGluZSBzdHJpbmdzIGluIGEgcm91bmQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9ncmFwaHlNdWx0aVBvbHlnb24gQ29sbGVjdGlvbiBvZiBwb2x5Z29ucyBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5Q29sbGVjdGlvbiBDb2xsZWN0aW9uIG9mIGFyYml0cmFyeSBHZW9ncmFwaHkgdmFsdWVzXG5FZG0uR2VvbWV0cnkgQWJzdHJhY3QgYmFzZSB0eXBlIGZvciBhbGwgR2VvbWV0cnkgdHlwZXNcbkVkbS5HZW9tZXRyeVBvaW50IFBvaW50IGluIGEgZmxhdC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb21ldHJ5TGluZVN0cmluZyBMaW5lIHN0cmluZyBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeVBvbHlnb24gUG9seWdvbiBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeU11bHRpUG9pbnQgQ29sbGVjdGlvbiBvZiBwb2ludHMgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlNdWx0aUxpbmVTdHJpbmcgQ29sbGVjdGlvbiBvZiBsaW5lIHN0cmluZ3MgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlNdWx0aVBvbHlnb24gQ29sbGVjdGlvbiBvZiBwb2x5Z29ucyBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeUNvbGxlY3Rpb24gQ29sbGVjdGlvbiBvZiBhcmJpdHJhcnkgR2VvbWV0cnkgdmFsdWVzXG4qL1xuIl19
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import { raw } from '../../resources/query';
|
|
2
|
-
import { JsonType, } from '../../types';
|
|
3
|
-
import { ODataAnnotatable } from '../annotation';
|
|
4
|
-
export class ODataEnumTypeFieldParser extends ODataAnnotatable {
|
|
5
|
-
name;
|
|
6
|
-
value;
|
|
7
|
-
constructor(name, field) {
|
|
8
|
-
super(field);
|
|
9
|
-
this.name = name;
|
|
10
|
-
this.value = field.value;
|
|
11
|
-
}
|
|
12
|
-
titleize(term) {
|
|
13
|
-
return (term && this.annotatedValue(term)) || this.name;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export class ODataEnumTypeParser extends ODataAnnotatable {
|
|
17
|
-
name;
|
|
18
|
-
namespace;
|
|
19
|
-
alias;
|
|
20
|
-
flags;
|
|
21
|
-
members;
|
|
22
|
-
_fields;
|
|
23
|
-
parserOptions;
|
|
24
|
-
constructor(config, namespace, alias) {
|
|
25
|
-
super(config);
|
|
26
|
-
this.name = config.name;
|
|
27
|
-
this.namespace = namespace;
|
|
28
|
-
this.alias = alias;
|
|
29
|
-
this.flags = config.flags;
|
|
30
|
-
this.members = config.members;
|
|
31
|
-
this._fields = Object.entries(config.fields).map(([name, f]) => new ODataEnumTypeFieldParser(name, f));
|
|
32
|
-
}
|
|
33
|
-
configure({ options }) {
|
|
34
|
-
this.parserOptions = options;
|
|
35
|
-
}
|
|
36
|
-
isTypeOf(type) {
|
|
37
|
-
var names = [`${this.namespace}.${this.name}`];
|
|
38
|
-
if (this.alias)
|
|
39
|
-
names.push(`${this.alias}.${this.name}`);
|
|
40
|
-
return names.indexOf(type) !== -1;
|
|
41
|
-
}
|
|
42
|
-
fields(namesValue) {
|
|
43
|
-
if (namesValue === undefined)
|
|
44
|
-
return [...this._fields];
|
|
45
|
-
if (Array.isArray(namesValue))
|
|
46
|
-
return [...this._fields.filter((f) => namesValue.includes(f.value))];
|
|
47
|
-
if (typeof namesValue === 'number') {
|
|
48
|
-
return [
|
|
49
|
-
...this._fields.filter((f) => (this.flags && Boolean(f.value & namesValue)) ||
|
|
50
|
-
f.value === namesValue),
|
|
51
|
-
];
|
|
52
|
-
}
|
|
53
|
-
if (typeof namesValue === 'string') {
|
|
54
|
-
const names = namesValue.split(',').map((o) => o.trim());
|
|
55
|
-
return this._fields.filter((f) => names.includes(f.name));
|
|
56
|
-
}
|
|
57
|
-
return [];
|
|
58
|
-
}
|
|
59
|
-
field(nameValue) {
|
|
60
|
-
const field = this.fields().find((f) => f.name === nameValue || f.value === nameValue);
|
|
61
|
-
//Throw error if not found
|
|
62
|
-
//if (field === undefined)
|
|
63
|
-
// throw new Error(`${this.name} has no field for ${nameValue}`);
|
|
64
|
-
return field;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Map the fields of the enum type.
|
|
68
|
-
* @param mapper Function that maps the value to the new value
|
|
69
|
-
* @returns The fields mapped by the mapper
|
|
70
|
-
*/
|
|
71
|
-
mapFields(mapper) {
|
|
72
|
-
return this.fields().map(mapper);
|
|
73
|
-
}
|
|
74
|
-
// Deserialize
|
|
75
|
-
deserialize(value, options) {
|
|
76
|
-
// string -> number
|
|
77
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
78
|
-
if (this.flags) {
|
|
79
|
-
return this.fields(value).reduce((acc, f) => acc | f.value, 0);
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
return this.field(value)?.value;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
// Serialize
|
|
86
|
-
serialize(value, options) {
|
|
87
|
-
// Enum are string | number
|
|
88
|
-
// string | number -> string
|
|
89
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
90
|
-
if (this.flags) {
|
|
91
|
-
let names = this.fields(value).map((f) => f.name);
|
|
92
|
-
if (names.length === 0)
|
|
93
|
-
names = [`${value}`];
|
|
94
|
-
return !parserOptions?.stringAsEnum
|
|
95
|
-
? `${this.namespace}.${this.name}'${names.join(', ')}'`
|
|
96
|
-
: names.join(', ');
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
let name = this.field(value)?.name;
|
|
100
|
-
if (name === undefined)
|
|
101
|
-
name = `${value}`;
|
|
102
|
-
return !parserOptions?.stringAsEnum
|
|
103
|
-
? `${this.namespace}.${this.name}'${name}'`
|
|
104
|
-
: name;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
//Encode
|
|
108
|
-
encode(value, options) {
|
|
109
|
-
const parserOptions = { ...this.parserOptions, ...options };
|
|
110
|
-
const serialized = this.serialize(value, parserOptions);
|
|
111
|
-
if (serialized === undefined)
|
|
112
|
-
return undefined;
|
|
113
|
-
return parserOptions?.stringAsEnum
|
|
114
|
-
? raw(`'${serialized}'`)
|
|
115
|
-
: raw(serialized);
|
|
116
|
-
}
|
|
117
|
-
// Json Schema
|
|
118
|
-
toJsonSchema() {
|
|
119
|
-
return this.flags
|
|
120
|
-
? {
|
|
121
|
-
title: this.name,
|
|
122
|
-
type: JsonType.array,
|
|
123
|
-
items: {
|
|
124
|
-
type: JsonType.integer,
|
|
125
|
-
},
|
|
126
|
-
}
|
|
127
|
-
: {
|
|
128
|
-
type: JsonType.integer,
|
|
129
|
-
enum: this._fields.map((f) => f.value),
|
|
130
|
-
};
|
|
131
|
-
}
|
|
132
|
-
validate(value, { method, navigation = false, } = {}) {
|
|
133
|
-
if (this.flags) {
|
|
134
|
-
let fields = this.fields(value);
|
|
135
|
-
return value && fields.length === 0 ? ['mismatch'] : undefined;
|
|
136
|
-
}
|
|
137
|
-
else {
|
|
138
|
-
return this.fields(value).length !== 1 ? ['mismatch'] : undefined;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
unpack(value) {
|
|
142
|
-
return this.fields(value).map((f) => f.value);
|
|
143
|
-
}
|
|
144
|
-
pack(value) {
|
|
145
|
-
return this.fields(value).reduce((acc, v) => acc | v.value, 0);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VudW0tdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUMsT0FBTyxFQUtMLFFBQVEsR0FDVCxNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGdCQUFnQjtJQUM1RCxJQUFJLENBQVM7SUFDYixLQUFLLENBQVM7SUFFZCxZQUFZLElBQVksRUFBRSxLQUEwQjtRQUNsRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFzQjtRQUM3QixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzFELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxtQkFDWCxTQUFRLGdCQUFnQjtJQUd4QixJQUFJLENBQVM7SUFDYixTQUFTLENBQVM7SUFDbEIsS0FBSyxDQUFVO0lBQ2YsS0FBSyxDQUFXO0lBQ2hCLE9BQU8sQ0FBMkQ7SUFDMUQsT0FBTyxDQUE2QjtJQUM1QyxhQUFhLENBQWlCO0lBRTlCLFlBQVksTUFBc0IsRUFBRSxTQUFpQixFQUFFLEtBQWM7UUFDbkUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQzlDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksd0JBQXdCLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUNyRCxDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBOEI7UUFDL0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFZO1FBQ25CLElBQUksS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLEtBQUs7WUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN6RCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUF1QztRQUM1QyxJQUFJLFVBQVUsS0FBSyxTQUFTO1lBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7WUFDM0IsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2RSxJQUFJLE9BQU8sVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25DLE9BQU87Z0JBQ0wsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FDcEIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLENBQU8sQ0FBQyxDQUFDLEtBQU0sR0FBUyxVQUFXLENBQUMsQ0FBQztvQkFDM0QsQ0FBQyxDQUFDLEtBQUssS0FBSyxVQUFVLENBQ3pCO2FBQ0YsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLE9BQU8sVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ25DLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN6RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzVELENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBMEI7UUFDOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FDOUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUNyRCxDQUFDO1FBQ0YsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQixrRUFBa0U7UUFDbEUsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFNBQVMsQ0FBSSxNQUE4QztRQUN6RCxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXLENBQUMsS0FBYSxFQUFFLE9BQXVCO1FBQ2hELG1CQUFtQjtRQUNuQixNQUFNLGFBQWEsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBQzVELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBTSxDQUFDO1FBQ3RFLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQVUsQ0FBQztRQUN2QyxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQVk7SUFDWixTQUFTLENBQUMsS0FBYSxFQUFFLE9BQXVCO1FBQzlDLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsTUFBTSxhQUFhLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUM1RCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEQsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUM7Z0JBQUUsS0FBSyxHQUFHLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsWUFBWTtnQkFDakMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQ3ZELENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUM7WUFDbkMsSUFBSSxJQUFJLEtBQUssU0FBUztnQkFBRSxJQUFJLEdBQUcsR0FBRyxLQUFLLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsYUFBYSxFQUFFLFlBQVk7Z0JBQ2pDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEdBQUc7Z0JBQzNDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDWCxDQUFDO0lBQ0gsQ0FBQztJQUVELFFBQVE7SUFDUixNQUFNLENBQUMsS0FBYSxFQUFFLE9BQXVCO1FBQzNDLE1BQU0sYUFBYSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDNUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDeEQsSUFBSSxVQUFVLEtBQUssU0FBUztZQUFFLE9BQU8sU0FBUyxDQUFDO1FBQy9DLE9BQU8sYUFBYSxFQUFFLFlBQVk7WUFDaEMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFVBQVUsR0FBRyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELGNBQWM7SUFDZCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsS0FBSztZQUNmLENBQUMsQ0FBQztnQkFDRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2hCLElBQUksRUFBRSxRQUFRLENBQUMsS0FBSztnQkFDcEIsS0FBSyxFQUFFO29CQUNMLElBQUksRUFBRSxRQUFRLENBQUMsT0FBTztpQkFDdkI7YUFDRjtZQUNILENBQUMsQ0FBQztnQkFDRSxJQUFJLEVBQUUsUUFBUSxDQUFDLE9BQU87Z0JBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQzthQUN2QyxDQUFDO0lBQ1IsQ0FBQztJQUVELFFBQVEsQ0FDTixLQUFzQixFQUN0QixFQUNFLE1BQU0sRUFDTixVQUFVLEdBQUcsS0FBSyxNQUloQixFQUFFO1FBRU4sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDakUsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3BFLENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQXNCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWlDO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQVEsQ0FBQztJQUN4RSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByYXcgfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvcXVlcnknO1xuaW1wb3J0IHtcbiAgRW51bVR5cGVDb25maWcsXG4gIEVudW1UeXBlRmllbGRDb25maWcsXG4gIFBhcnNlck9wdGlvbnMsXG4gIEZpZWxkUGFyc2VyLFxuICBKc29uVHlwZSxcbn0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgT0RhdGFBbm5vdGF0YWJsZSB9IGZyb20gJy4uL2Fubm90YXRpb24nO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyIGV4dGVuZHMgT0RhdGFBbm5vdGF0YWJsZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihuYW1lOiBzdHJpbmcsIGZpZWxkOiBFbnVtVHlwZUZpZWxkQ29uZmlnKSB7XG4gICAgc3VwZXIoZmllbGQpO1xuICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgdGhpcy52YWx1ZSA9IGZpZWxkLnZhbHVlO1xuICB9XG5cbiAgdGl0bGVpemUodGVybT86IHN0cmluZyB8IFJlZ0V4cCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICh0ZXJtICYmIHRoaXMuYW5ub3RhdGVkVmFsdWUodGVybSkpIHx8IHRoaXMubmFtZTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgT0RhdGFFbnVtVHlwZVBhcnNlcjxFPlxuICBleHRlbmRzIE9EYXRhQW5ub3RhdGFibGVcbiAgaW1wbGVtZW50cyBGaWVsZFBhcnNlcjxFPlxue1xuICBuYW1lOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICBhbGlhcz86IHN0cmluZztcbiAgZmxhZ3M/OiBib29sZWFuO1xuICBtZW1iZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBudW1iZXIgfSB8IHsgW3ZhbHVlOiBudW1iZXJdOiBzdHJpbmcgfTtcbiAgcHJpdmF0ZSBfZmllbGRzOiBPRGF0YUVudW1UeXBlRmllbGRQYXJzZXJbXTtcbiAgcGFyc2VyT3B0aW9ucz86IFBhcnNlck9wdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBFbnVtVHlwZUNvbmZpZywgbmFtZXNwYWNlOiBzdHJpbmcsIGFsaWFzPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoY29uZmlnKTtcbiAgICB0aGlzLm5hbWUgPSBjb25maWcubmFtZTtcbiAgICB0aGlzLm5hbWVzcGFjZSA9IG5hbWVzcGFjZTtcbiAgICB0aGlzLmFsaWFzID0gYWxpYXM7XG4gICAgdGhpcy5mbGFncyA9IGNvbmZpZy5mbGFncztcbiAgICB0aGlzLm1lbWJlcnMgPSBjb25maWcubWVtYmVycztcbiAgICB0aGlzLl9maWVsZHMgPSBPYmplY3QuZW50cmllcyhjb25maWcuZmllbGRzKS5tYXAoXG4gICAgICAoW25hbWUsIGZdKSA9PiBuZXcgT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyKG5hbWUsIGYpLFxuICAgICk7XG4gIH1cblxuICBjb25maWd1cmUoeyBvcHRpb25zIH06IHsgb3B0aW9uczogUGFyc2VyT3B0aW9ucyB9KSB7XG4gICAgdGhpcy5wYXJzZXJPcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gIGlzVHlwZU9mKHR5cGU6IHN0cmluZykge1xuICAgIHZhciBuYW1lcyA9IFtgJHt0aGlzLm5hbWVzcGFjZX0uJHt0aGlzLm5hbWV9YF07XG4gICAgaWYgKHRoaXMuYWxpYXMpIG5hbWVzLnB1c2goYCR7dGhpcy5hbGlhc30uJHt0aGlzLm5hbWV9YCk7XG4gICAgcmV0dXJuIG5hbWVzLmluZGV4T2YodHlwZSkgIT09IC0xO1xuICB9XG5cbiAgZmllbGRzKG5hbWVzVmFsdWU/OiBzdHJpbmcgfCBudW1iZXIgfCBudW1iZXJbXSk6IE9EYXRhRW51bVR5cGVGaWVsZFBhcnNlcltdIHtcbiAgICBpZiAobmFtZXNWYWx1ZSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gWy4uLnRoaXMuX2ZpZWxkc107XG4gICAgaWYgKEFycmF5LmlzQXJyYXkobmFtZXNWYWx1ZSkpXG4gICAgICByZXR1cm4gWy4uLnRoaXMuX2ZpZWxkcy5maWx0ZXIoKGYpID0+IG5hbWVzVmFsdWUuaW5jbHVkZXMoZi52YWx1ZSkpXTtcbiAgICBpZiAodHlwZW9mIG5hbWVzVmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gW1xuICAgICAgICAuLi50aGlzLl9maWVsZHMuZmlsdGVyKFxuICAgICAgICAgIChmKSA9PlxuICAgICAgICAgICAgKHRoaXMuZmxhZ3MgJiYgQm9vbGVhbigoPGFueT5mLnZhbHVlKSAmICg8YW55Pm5hbWVzVmFsdWUpKSkgfHxcbiAgICAgICAgICAgIGYudmFsdWUgPT09IG5hbWVzVmFsdWUsXG4gICAgICAgICksXG4gICAgICBdO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG5hbWVzVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBuYW1lcyA9IG5hbWVzVmFsdWUuc3BsaXQoJywnKS5tYXAoKG8pID0+IG8udHJpbSgpKTtcbiAgICAgIHJldHVybiB0aGlzLl9maWVsZHMuZmlsdGVyKChmKSA9PiBuYW1lcy5pbmNsdWRlcyhmLm5hbWUpKTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgZmllbGQobmFtZVZhbHVlOiBzdHJpbmcgfCBudW1iZXIpIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGRzKCkuZmluZChcbiAgICAgIChmKSA9PiBmLm5hbWUgPT09IG5hbWVWYWx1ZSB8fCBmLnZhbHVlID09PSBuYW1lVmFsdWUsXG4gICAgKTtcbiAgICAvL1Rocm93IGVycm9yIGlmIG5vdCBmb3VuZFxuICAgIC8vaWYgKGZpZWxkID09PSB1bmRlZmluZWQpXG4gICAgLy8gIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLm5hbWV9IGhhcyBubyBmaWVsZCBmb3IgJHtuYW1lVmFsdWV9YCk7XG4gICAgcmV0dXJuIGZpZWxkO1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcCB0aGUgZmllbGRzIG9mIHRoZSBlbnVtIHR5cGUuXG4gICAqIEBwYXJhbSBtYXBwZXIgRnVuY3Rpb24gdGhhdCBtYXBzIHRoZSB2YWx1ZSB0byB0aGUgbmV3IHZhbHVlXG4gICAqIEByZXR1cm5zIFRoZSBmaWVsZHMgbWFwcGVkIGJ5IHRoZSBtYXBwZXJcbiAgICovXG4gIG1hcEZpZWxkczxSPihtYXBwZXI6IChmaWVsZDogT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyKSA9PiBSKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzKCkubWFwKG1hcHBlcik7XG4gIH1cblxuICAvLyBEZXNlcmlhbGl6ZVxuICBkZXNlcmlhbGl6ZSh2YWx1ZTogc3RyaW5nLCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IEUge1xuICAgIC8vIHN0cmluZyAtPiBudW1iZXJcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICBpZiAodGhpcy5mbGFncykge1xuICAgICAgcmV0dXJuIHRoaXMuZmllbGRzKHZhbHVlKS5yZWR1Y2UoKGFjYywgZikgPT4gYWNjIHwgZi52YWx1ZSwgMCkgYXMgRTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMuZmllbGQodmFsdWUpPy52YWx1ZSBhcyBFO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNlcmlhbGl6ZVxuICBzZXJpYWxpemUodmFsdWU6IG51bWJlciwgb3B0aW9ucz86IFBhcnNlck9wdGlvbnMpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIC8vIEVudW0gYXJlIHN0cmluZyB8IG51bWJlclxuICAgIC8vIHN0cmluZyB8IG51bWJlciAtPiBzdHJpbmdcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICBpZiAodGhpcy5mbGFncykge1xuICAgICAgbGV0IG5hbWVzID0gdGhpcy5maWVsZHModmFsdWUpLm1hcCgoZikgPT4gZi5uYW1lKTtcbiAgICAgIGlmIChuYW1lcy5sZW5ndGggPT09IDApIG5hbWVzID0gW2Ake3ZhbHVlfWBdO1xuICAgICAgcmV0dXJuICFwYXJzZXJPcHRpb25zPy5zdHJpbmdBc0VudW1cbiAgICAgICAgPyBgJHt0aGlzLm5hbWVzcGFjZX0uJHt0aGlzLm5hbWV9JyR7bmFtZXMuam9pbignLCAnKX0nYFxuICAgICAgICA6IG5hbWVzLmpvaW4oJywgJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBuYW1lID0gdGhpcy5maWVsZCh2YWx1ZSk/Lm5hbWU7XG4gICAgICBpZiAobmFtZSA9PT0gdW5kZWZpbmVkKSBuYW1lID0gYCR7dmFsdWV9YDtcbiAgICAgIHJldHVybiAhcGFyc2VyT3B0aW9ucz8uc3RyaW5nQXNFbnVtXG4gICAgICAgID8gYCR7dGhpcy5uYW1lc3BhY2V9LiR7dGhpcy5uYW1lfScke25hbWV9J2BcbiAgICAgICAgOiBuYW1lO1xuICAgIH1cbiAgfVxuXG4gIC8vRW5jb2RlXG4gIGVuY29kZSh2YWx1ZTogbnVtYmVyLCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3Qgc2VyaWFsaXplZCA9IHRoaXMuc2VyaWFsaXplKHZhbHVlLCBwYXJzZXJPcHRpb25zKTtcbiAgICBpZiAoc2VyaWFsaXplZCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBwYXJzZXJPcHRpb25zPy5zdHJpbmdBc0VudW1cbiAgICAgID8gcmF3KGAnJHtzZXJpYWxpemVkfSdgKVxuICAgICAgOiByYXcoc2VyaWFsaXplZCk7XG4gIH1cblxuICAvLyBKc29uIFNjaGVtYVxuICB0b0pzb25TY2hlbWEoKSB7XG4gICAgcmV0dXJuIHRoaXMuZmxhZ3NcbiAgICAgID8ge1xuICAgICAgICAgIHRpdGxlOiB0aGlzLm5hbWUsXG4gICAgICAgICAgdHlwZTogSnNvblR5cGUuYXJyYXksXG4gICAgICAgICAgaXRlbXM6IHtcbiAgICAgICAgICAgIHR5cGU6IEpzb25UeXBlLmludGVnZXIsXG4gICAgICAgICAgfSxcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgdHlwZTogSnNvblR5cGUuaW50ZWdlcixcbiAgICAgICAgICBlbnVtOiB0aGlzLl9maWVsZHMubWFwKChmKSA9PiBmLnZhbHVlKSxcbiAgICAgICAgfTtcbiAgfVxuXG4gIHZhbGlkYXRlKFxuICAgIHZhbHVlOiBzdHJpbmcgfCBudW1iZXIsXG4gICAge1xuICAgICAgbWV0aG9kLFxuICAgICAgbmF2aWdhdGlvbiA9IGZhbHNlLFxuICAgIH06IHtcbiAgICAgIG1ldGhvZD86ICdjcmVhdGUnIHwgJ3VwZGF0ZScgfCAnbW9kaWZ5JztcbiAgICAgIG5hdmlnYXRpb24/OiBib29sZWFuO1xuICAgIH0gPSB7fSxcbiAgKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmZsYWdzKSB7XG4gICAgICBsZXQgZmllbGRzID0gdGhpcy5maWVsZHModmFsdWUpO1xuICAgICAgcmV0dXJuIHZhbHVlICYmIGZpZWxkcy5sZW5ndGggPT09IDAgPyBbJ21pc21hdGNoJ10gOiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmZpZWxkcyh2YWx1ZSkubGVuZ3RoICE9PSAxID8gWydtaXNtYXRjaCddIDogdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHVucGFjayh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKTogbnVtYmVyW10ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkcyh2YWx1ZSkubWFwKChmKSA9PiBmLnZhbHVlKTtcbiAgfVxuXG4gIHBhY2sodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bWJlcltdKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHModmFsdWUpLnJlZHVjZSgoYWNjLCB2KSA9PiBhY2MgfCB2LnZhbHVlLCAwKSBhcyBhbnk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './edm';
|
|
2
|
-
export * from './enum-type';
|
|
3
|
-
export * from './structured-type';
|
|
4
|
-
export * from './callable';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW9kYXRhL3NyYy9saWIvc2NoZW1hL3BhcnNlcnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWRtJztcbmV4cG9ydCAqIGZyb20gJy4vZW51bS10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc3RydWN0dXJlZC10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vY2FsbGFibGUnO1xuIl19
|