angular-odata 0.105.0 → 0.110.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/esm2020/lib/api.mjs +44 -6
- package/esm2020/lib/client.mjs +6 -31
- package/esm2020/lib/helper.mjs +17 -7
- package/esm2020/lib/models/collection.mjs +25 -31
- package/esm2020/lib/models/model.mjs +6 -3
- package/esm2020/lib/models/options.mjs +5 -5
- package/esm2020/lib/resources/request.mjs +30 -2
- package/esm2020/lib/resources/resource.mjs +7 -50
- package/esm2020/lib/resources/responses/annotations.mjs +15 -3
- package/esm2020/lib/resources/responses/response.mjs +1 -1
- package/esm2020/lib/resources/responses/types.mjs +1 -1
- package/esm2020/lib/resources/types/batch.mjs +6 -9
- package/esm2020/lib/resources/types/count.mjs +1 -1
- package/esm2020/lib/resources/types/entity-set.mjs +32 -10
- package/esm2020/lib/resources/types/entity.mjs +1 -1
- package/esm2020/lib/resources/types/media.mjs +1 -1
- package/esm2020/lib/resources/types/metadata.mjs +3 -5
- package/esm2020/lib/resources/types/navigation-property.mjs +24 -6
- package/esm2020/lib/resources/types/options.mjs +1 -1
- package/esm2020/lib/resources/types/property.mjs +24 -4
- package/esm2020/lib/resources/types/reference.mjs +1 -1
- package/esm2020/lib/resources/types/singleton.mjs +1 -4
- package/esm2020/lib/resources/types/value.mjs +2 -2
- package/esm2020/lib/schema/parsers/callable.mjs +1 -1
- package/esm2020/lib/schema/parsers/edm.mjs +9 -9
- package/esm2020/lib/schema/parsers/enum-type.mjs +1 -1
- package/esm2020/lib/services/entity-set.mjs +7 -7
- package/esm2020/lib/utils/http.mjs +1 -1
- package/esm2020/lib/utils/objects.mjs +1 -1
- package/fesm2015/angular-odata.mjs +225 -157
- package/fesm2015/angular-odata.mjs.map +1 -1
- package/fesm2020/angular-odata.mjs +234 -162
- package/fesm2020/angular-odata.mjs.map +1 -1
- package/lib/api.d.ts +10 -3
- package/lib/client.d.ts +139 -1425
- package/lib/helper.d.ts +1 -1
- package/lib/models/collection.d.ts +11 -5
- package/lib/models/model.d.ts +7 -9
- package/lib/models/options.d.ts +3 -3
- package/lib/resources/query/handlers.d.ts +3 -1
- package/lib/resources/request.d.ts +13 -2
- package/lib/resources/resource.d.ts +2 -9
- package/lib/resources/responses/annotations.d.ts +17 -12
- package/lib/resources/responses/types.d.ts +3 -3
- package/lib/resources/types/count.d.ts +1 -1
- package/lib/resources/types/entity-set.d.ts +23 -6
- package/lib/resources/types/entity.d.ts +8 -24
- package/lib/resources/types/media.d.ts +7 -15
- package/lib/resources/types/metadata.d.ts +1 -1
- package/lib/resources/types/navigation-property.d.ts +26 -28
- package/lib/resources/types/options.d.ts +4 -2
- package/lib/resources/types/property.d.ts +28 -15
- package/lib/resources/types/reference.d.ts +3 -12
- package/lib/resources/types/singleton.d.ts +8 -27
- package/lib/services/entity-set.d.ts +15 -6
- package/lib/utils/http.d.ts +1 -1
- package/lib/utils/objects.d.ts +19 -5
- package/package.json +1 -1
|
@@ -42,13 +42,13 @@ export const EDM_PARSERS = {
|
|
|
42
42
|
//Edm.Int64 Signed 16-bit integer
|
|
43
43
|
'Edm.Int64': EdmParser(toNumber, toNumber, toNumber),
|
|
44
44
|
//Edm.Date Date without a time-zone offset
|
|
45
|
-
'Edm.Date': EdmParser((v) => new Date(`${v}T00:00:00.000Z`), (v) => toDate(v).toISOString().substring(0, 10), (v) => toDate(v).toISOString().substring(0, 10)),
|
|
45
|
+
'Edm.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))),
|
|
46
46
|
//Edm.TimeOfDay Clock time 00:00-23:59:59.999999999999
|
|
47
|
-
'Edm.TimeOfDay': EdmParser((v) => new Date(`1970-01-01T${v}Z`), (v) => toDate(v).toISOString().substring(11, 23), (v) => toDate(v).toISOString().substring(11, 23)),
|
|
47
|
+
'Edm.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))),
|
|
48
48
|
//Edm.DateTimeOffset Date and time with a time-zone offset, no leap seconds
|
|
49
|
-
'Edm.DateTimeOffset': EdmParser(toDate, (v) => toDate(v).toISOString(), (v) => toDate(v).toISOString()),
|
|
49
|
+
'Edm.DateTimeOffset': EdmParser(toDate, (v) => toDate(v).toISOString(), (v) => raw(toDate(v).toISOString())),
|
|
50
50
|
//Edm.Duration Signed duration in days, hours, minutes, and (sub)seconds
|
|
51
|
-
'Edm.Duration': EdmParser((v) => Durations.toDuration(v), (v) => Durations.toString(v), (v) => Durations.toString(v)),
|
|
51
|
+
'Edm.Duration': EdmParser((v) => Durations.toDuration(v), (v) => Durations.toString(v), (v) => raw(Durations.toString(v))),
|
|
52
52
|
//Edm.Decimal Numeric values with fixed precision and scale
|
|
53
53
|
'Edm.Decimal': EdmParser((v, o) => {
|
|
54
54
|
if (typeof v === 'string' && o.ieee754Compatible) {
|
|
@@ -70,16 +70,16 @@ export const EDM_PARSERS = {
|
|
|
70
70
|
if (typeof o.field.scale === 'number') {
|
|
71
71
|
vstr = parseFloat(vstr).toFixed(o.field.scale);
|
|
72
72
|
}
|
|
73
|
-
return vstr;
|
|
73
|
+
return raw(vstr);
|
|
74
74
|
}
|
|
75
75
|
return v;
|
|
76
76
|
}),
|
|
77
77
|
//Edm.Double IEEE 754 binary64 floating-point number (15-17 decimal digits)
|
|
78
|
-
'Edm.Double': EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => (v === Infinity ? 'INF' : v)),
|
|
78
|
+
'Edm.Double': EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => raw((v === Infinity ? 'INF' : v.toString()))),
|
|
79
79
|
//Edm.Single IEEE 754 binary32 floating-point number (6-9 decimal digits)
|
|
80
|
-
'Edm.Single': EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => (v === Infinity ? 'INF' : v)),
|
|
80
|
+
'Edm.Single': EdmParser((v) => (v === 'INF' ? Infinity : v), (v) => (v === Infinity ? 'INF' : v), (v) => raw((v === Infinity ? 'INF' : v.toString()))),
|
|
81
81
|
//Edm.Binary Binary data
|
|
82
|
-
'Edm.Binary': EdmParser((v) => ArrayBuffers.toArrayBuffer(v), (v) => ArrayBuffers.toString(v), (v) => ArrayBuffers.toString(v)),
|
|
82
|
+
'Edm.Binary': EdmParser((v) => ArrayBuffers.toArrayBuffer(v), (v) => ArrayBuffers.toString(v), (v) => raw(ArrayBuffers.toString(v))),
|
|
83
83
|
};
|
|
84
84
|
/*
|
|
85
85
|
Edm.Stream Binary data stream
|
|
@@ -100,4 +100,4 @@ Edm.GeometryMultiLineString Collection of line strings in a flat-earth coordinat
|
|
|
100
100
|
Edm.GeometryMultiPolygon Collection of polygons in a flat-earth coordinate system
|
|
101
101
|
Edm.GeometryCollection Collection of arbitrary Geometry values
|
|
102
102
|
*/
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VkbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBWSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCw0QkFBNEI7QUFDNUIsTUFBTSxTQUFTLEdBQUcsQ0FDaEIsRUFBZ0QsRUFDaEQsRUFBa0QsRUFDbEQsRUFBa0QsRUFDakMsRUFBRSxDQUFDLENBQUM7SUFDckIsV0FBVyxDQUFDLEtBQVUsRUFBRSxPQUFtQztRQUN6RCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFDRCxTQUFTLENBQUMsS0FBVSxFQUFFLE9BQW1DO1FBQ3ZELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDekIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUFVLEVBQUUsT0FBbUM7UUFDcEQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUss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QUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUMzQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUM1QztJQUNELHdCQUF3QjtJQUN4QixZQUFZLEVBQUUsU0FBUyxDQUNyQixDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFDNUMsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQzVDLENBQUMsQ0FBYyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUM3QztDQUNGLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBa0JFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmF3IH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3F1ZXJ5JztcbmltcG9ydCB7IFBhcnNlciwgU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBcnJheUJ1ZmZlcnMgfSBmcm9tICcuLi8uLi91dGlscy9hcnJheWJ1ZmZlcnMnO1xuaW1wb3J0IHsgRHVyYXRpb24sIER1cmF0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL2R1cmF0aW9ucyc7XG5cbi8vIENvcmUgRWRtVHlwZVBhcnNlckJ1aWxkZXJcbmNvbnN0IEVkbVBhcnNlciA9IDxUPihcbiAgX2Q6ICh2OiBhbnksIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiBULFxuICBfczogKHY6IGFueSwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IGFueSxcbiAgX2U6ICh2OiBhbnksIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiBhbnlcbik6IFBhcnNlcjxUIHwgVFtdPiA9PiAoe1xuICBkZXNlcmlhbGl6ZSh2YWx1ZTogYW55LCBvcHRpb25zOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucyk6IFQgfCBUW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgPyB2YWx1ZS5tYXAoKHYpID0+IF9kKHYsIG9wdGlvbnMpKVxuICAgICAgOiBfZCh2YWx1ZSwgb3B0aW9ucyk7XG4gIH0sXG4gIHNlcmlhbGl6ZSh2YWx1ZTogYW55LCBvcHRpb25zOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucyk6IGFueSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICA/IHZhbHVlLm1hcCgodikgPT4gX3Modiwgb3B0aW9ucykpXG4gICAgICA6IF9zKHZhbHVlLCBvcHRpb25zKTtcbiAgfSxcbiAgZW5jb2RlKHZhbHVlOiBhbnksIG9wdGlvbnM6IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKTogYW55IHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWUubWFwKCh2KSA9PiBfZSh2LCBvcHRpb25zKSlcbiAgICAgIDogX2UodmFsdWUsIG9wdGlvbnMpO1xuICB9LFxufSk7XG5cbmNvbnN0IElkZW50aXR5ID0gKHY6IGFueSkgPT4gdjtcbmNvbnN0IHRvTnVtYmVyID0gKHY6IGFueSkgPT4gTnVtYmVyKHYpO1xuY29uc3QgdG9TdHJpbmcgPSAodjogYW55KSA9PiB2LnRvU3RyaW5nKCk7XG5jb25zdCB0b0Jvb2xlYW4gPSAodjogYW55KSA9PiBCb29sZWFuKHYpO1xuY29uc3QgdG9EYXRlID0gKHY6IGFueSkgPT4gbmV3IERhdGUodik7XG5cbmV4cG9ydCBjb25zdCBFRE1fUEFSU0VSUzogeyBbdHlwZTogc3RyaW5nXTogUGFyc2VyPGFueT4gfSA9IHtcbiAgLy9FZG0uR3VpZCAxNi1ieXRlICgxMjgtYml0KSB1bmlxdWUgaWRlbnRpZmllclxuICAnRWRtLkd1aWQnOiBFZG1QYXJzZXI8c3RyaW5nPihJZGVudGl0eSwgSWRlbnRpdHksICh2OiBzdHJpbmcpID0+IHJhdyh2KSksXG4gIC8vRWRtLkludDE2IFNpZ25lZCAxNi1iaXQgaW50ZWdlclxuICAnRWRtLkludDE2JzogRWRtUGFyc2VyPG51bWJlcj4odG9OdW1iZXIsIHRvTnVtYmVyLCB0b051bWJlciksXG4gIC8vRWRtLlN0cmluZyBTZXF1ZW5jZSBvZiBVVEYtOCBjaGFyYWN0ZXJzXG4gICdFZG0uU3RyaW5nJzogRWRtUGFyc2VyPHN0cmluZz4odG9TdHJpbmcsIHRvU3RyaW5nLCB0b1N0cmluZyksXG4gIC8vRWRtLkJvb2xlYW4gQmluYXJ5LXZhbHVlZCBsb2dpY1xuICAnRWRtLkJvb2xlYW4nOiBFZG1QYXJzZXI8Ym9vbGVhbj4odG9Cb29sZWFuLCB0b0Jvb2xlYW4sIHRvQm9vbGVhbiksXG4gIC8vRWRtLkJ5dGUgVW5zaWduZWQgOC1iaXQgaW50ZWdlclxuICAnRWRtLkJ5dGUnOiBFZG1QYXJzZXI8bnVtYmVyPih0b051bWJlciwgdG9OdW1iZXIsIHRvTnVtYmVyKSxcbiAgLy9FZG0uU0J5dGUgU2lnbmVkIDgtYml0IGludGVnZXJcbiAgJ0VkbS5TQnl0ZSc6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5JbnQzMiBTaWduZWQgMTYtYml0IGludGVnZXJcbiAgJ0VkbS5JbnQzMic6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5JbnQ2NCBTaWduZWQgMTYtYml0IGludGVnZXJcbiAgJ0VkbS5JbnQ2NCc6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5EYXRlIERhdGUgd2l0aG91dCBhIHRpbWUtem9uZSBvZmZzZXRcbiAgJ0VkbS5EYXRlJzogRWRtUGFyc2VyPERhdGU+KFxuICAgICh2OiBhbnkpID0+IG5ldyBEYXRlKGAke3Z9VDAwOjAwOjAwLjAwMFpgKSxcbiAgICAodjogYW55KSA9PiB0b0RhdGUodikudG9JU09TdHJpbmcoKS5zdWJzdHJpbmcoMCwgMTApLFxuICAgICh2OiBhbnkpID0+IHRvRGF0ZSh2KS50b0lTT1N0cmluZygpLnN1YnN0cmluZygwLCAxMClcbiAgKSxcbiAgLy9FZG0uVGltZU9mRGF5IENsb2NrIHRpbWUgMDA6MDAtMjM6NTk6NTkuOTk5OTk5OTk5OTk5XG4gICdFZG0uVGltZU9mRGF5JzogRWRtUGFyc2VyPERhdGU+KFxuICAgICh2OiBhbnkpID0+IG5ldyBEYXRlKGAxOTcwLTAxLTAxVCR7dn1aYCksXG4gICAgKHY6IGFueSkgPT4gdG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDExLCAyMyksXG4gICAgKHY6IGFueSkgPT4gdG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDExLCAyMylcbiAgKSxcbiAgLy9FZG0uRGF0ZVRpbWVPZmZzZXQgRGF0ZSBhbmQgdGltZSB3aXRoIGEgdGltZS16b25lIG9mZnNldCwgbm8gbGVhcCBzZWNvbmRzXG4gICdFZG0uRGF0ZVRpbWVPZmZzZXQnOiBFZG1QYXJzZXI8RGF0ZT4oXG4gICAgdG9EYXRlLFxuICAgICh2OiBhbnkpID0+IHRvRGF0ZSh2KS50b0lTT1N0cmluZygpLFxuICAgICh2OiBhbnkpID0+IHRvRGF0ZSh2KS50b0lTT1N0cmluZygpXG4gICksXG4gIC8vRWRtLkR1cmF0aW9uIFNpZ25lZCBkdXJhdGlvbiBpbiBkYXlzLCBob3VycywgbWludXRlcywgYW5kIChzdWIpc2Vjb25kc1xuICAnRWRtLkR1cmF0aW9uJzogRWRtUGFyc2VyPER1cmF0aW9uPihcbiAgICAodjogYW55KSA9PiBEdXJhdGlvbnMudG9EdXJhdGlvbih2KSxcbiAgICAodjogRHVyYXRpb24pID0+IER1cmF0aW9ucy50b1N0cmluZyh2KSxcbiAgICAodjogRHVyYXRpb24pID0+IER1cmF0aW9ucy50b1N0cmluZyh2KVxuICApLFxuICAvL0VkbS5EZWNpbWFsIE51bWVyaWMgdmFsdWVzIHdpdGggZml4ZWQgcHJlY2lzaW9uIGFuZCBzY2FsZVxuICAnRWRtLkRlY2ltYWwnOiBFZG1QYXJzZXI8bnVtYmVyPihcbiAgICAodjogYW55LCBvOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucykgPT4ge1xuICAgICAgaWYgKHR5cGVvZiB2ID09PSAnc3RyaW5nJyAmJiBvLmllZWU3NTRDb21wYXRpYmxlKSB7XG4gICAgICAgIHJldHVybiBwYXJzZUZsb2F0KHYpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHY7XG4gICAgfSxcbiAgICAodjogbnVtYmVyLCBvOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucykgPT4ge1xuICAgICAgaWYgKG8uaWVlZTc1NENvbXBhdGlibGUpIHtcbiAgICAgICAgbGV0IHZzdHIgPSB2LnRvUHJlY2lzaW9uKG8uZmllbGQucHJlY2lzaW9uKTtcbiAgICAgICAgaWYgKHR5cGVvZiBvLmZpZWxkLnNjYWxlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgIHZzdHIgPSBwYXJzZUZsb2F0KHZzdHIpLnRvRml4ZWQoby5maWVsZC5zY2FsZSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZzdHI7XG4gICAgICB9XG4gICAgICByZXR1cm4gdjtcbiAgICB9LFxuICAgICh2OiBudW1iZXIsIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiB7XG4gICAgICBpZiAoby5pZWVlNzU0Q29tcGF0aWJsZSkge1xuICAgICAgICBsZXQgdnN0ciA9IHYudG9QcmVjaXNpb24oby5maWVsZC5wcmVjaXNpb24pO1xuICAgICAgICBpZiAodHlwZW9mIG8uZmllbGQuc2NhbGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgdnN0ciA9IHBhcnNlRmxvYXQodnN0cikudG9GaXhlZChvLmZpZWxkLnNjYWxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdnN0cjtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2O1xuICAgIH1cbiAgKSxcbiAgLy9FZG0uRG91YmxlIElFRUUgNzU0IGJpbmFyeTY0IGZsb2F0aW5nLXBvaW50IG51bWJlciAoMTUtMTcgZGVjaW1hbCBkaWdpdHMpXG4gICdFZG0uRG91YmxlJzogRWRtUGFyc2VyPG51bWJlcj4oXG4gICAgKHY6IGFueSkgPT4gKHYgPT09ICdJTkYnID8gSW5maW5pdHkgOiAodiBhcyBudW1iZXIpKSxcbiAgICAodjogbnVtYmVyKSA9PiAodiA9PT0gSW5maW5pdHkgPyAnSU5GJyA6IHYpLFxuICAgICh2OiBudW1iZXIpID0+ICh2ID09PSBJbmZpbml0eSA/ICdJTkYnIDogdilcbiAgKSxcbiAgLy9FZG0uU2luZ2xlIElFRUUgNzU0IGJpbmFyeTMyIGZsb2F0aW5nLXBvaW50IG51bWJlciAoNi05IGRlY2ltYWwgZGlnaXRzKVxuICAnRWRtLlNpbmdsZSc6IEVkbVBhcnNlcjxudW1iZXI+KFxuICAgICh2OiBhbnkpID0+ICh2ID09PSAnSU5GJyA/IEluZmluaXR5IDogKHYgYXMgbnVtYmVyKSksXG4gICAgKHY6IG51bWJlcikgPT4gKHYgPT09IEluZmluaXR5ID8gJ0lORicgOiB2KSxcbiAgICAodjogbnVtYmVyKSA9PiAodiA9PT0gSW5maW5pdHkgPyAnSU5GJyA6IHYpXG4gICksXG4gIC8vRWRtLkJpbmFyeSBCaW5hcnkgZGF0YVxuICAnRWRtLkJpbmFyeSc6IEVkbVBhcnNlcjxBcnJheUJ1ZmZlcj4oXG4gICAgKHY6IHN0cmluZykgPT4gQXJyYXlCdWZmZXJzLnRvQXJyYXlCdWZmZXIodiksXG4gICAgKHY6IEFycmF5QnVmZmVyKSA9PiBBcnJheUJ1ZmZlcnMudG9TdHJpbmcodiksXG4gICAgKHY6IEFycmF5QnVmZmVyKSA9PiBBcnJheUJ1ZmZlcnMudG9TdHJpbmcodilcbiAgKSxcbn07XG5cbi8qXG5FZG0uU3RyZWFtIEJpbmFyeSBkYXRhIHN0cmVhbVxuRWRtLkdlb2dyYXBoeSBBYnN0cmFjdCBiYXNlIHR5cGUgZm9yIGFsbCBHZW9ncmFwaHkgdHlwZXNcbkVkbS5HZW9ncmFwaHlQb2ludCBBIHBvaW50IGluIGEgcm91bmQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9ncmFwaHlMaW5lU3RyaW5nIExpbmUgc3RyaW5nIGluIGEgcm91bmQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9ncmFwaHlQb2x5Z29uIFBvbHlnb24gaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeU11bHRpUG9pbnQgQ29sbGVjdGlvbiBvZiBwb2ludHMgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeU11bHRpTGluZVN0cmluZyBDb2xsZWN0aW9uIG9mIGxpbmUgc3RyaW5ncyBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5TXVsdGlQb2x5Z29uIENvbGxlY3Rpb24gb2YgcG9seWdvbnMgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeUNvbGxlY3Rpb24gQ29sbGVjdGlvbiBvZiBhcmJpdHJhcnkgR2VvZ3JhcGh5IHZhbHVlc1xuRWRtLkdlb21ldHJ5IEFic3RyYWN0IGJhc2UgdHlwZSBmb3IgYWxsIEdlb21ldHJ5IHR5cGVzXG5FZG0uR2VvbWV0cnlQb2ludCBQb2ludCBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeUxpbmVTdHJpbmcgTGluZSBzdHJpbmcgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlQb2x5Z29uIFBvbHlnb24gaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlNdWx0aVBvaW50IENvbGxlY3Rpb24gb2YgcG9pbnRzIGluIGEgZmxhdC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb21ldHJ5TXVsdGlMaW5lU3RyaW5nIENvbGxlY3Rpb24gb2YgbGluZSBzdHJpbmdzIGluIGEgZmxhdC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb21ldHJ5TXVsdGlQb2x5Z29uIENvbGxlY3Rpb24gb2YgcG9seWdvbnMgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlDb2xsZWN0aW9uIENvbGxlY3Rpb24gb2YgYXJiaXRyYXJ5IEdlb21ldHJ5IHZhbHVlc1xuKi9cbiJdfQ==
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VkbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBWSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUU1RCw0QkFBNEI7QUFDNUIsTUFBTSxTQUFTLEdBQUcsQ0FDaEIsRUFBZ0QsRUFDaEQsRUFBa0QsRUFDbEQsRUFBa0QsRUFDakMsRUFBRSxDQUFDLENBQUM7SUFDckIsV0FBVyxDQUFDLEtBQVUsRUFBRSxPQUFtQztRQUN6RCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFDRCxTQUFTLENBQUMsS0FBVSxFQUFFLE9BQW1DO1FBQ3ZELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDekIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUNELE1BQU0sQ0FBQyxLQUFVLEVBQUUsT0FBbUM7UUFDcEQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUN6QixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUMvQixNQUFNLFFBQVEsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3ZDLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDMUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN6QyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFdkMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFvQztJQUMxRCw4Q0FBOEM7SUFDOUMsVUFBVSxFQUFFLFNBQVMsQ0FDbkIsUUFBUSxFQUNSLFFBQVEsRUFDUixDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUN0QjtJQUNELGlDQUFpQztJQUNqQyxXQUFXLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzVELHlDQUF5QztJQUN6QyxZQUFZLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzdELGlDQUFpQztJQUNqQyxhQUFhLEVBQUUsU0FBUyxDQUFVLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDO0lBQ2xFLGlDQUFpQztJQUNqQyxVQUFVLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzNELGdDQUFnQztJQUNoQyxXQUFXLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzVELGlDQUFpQztJQUNqQyxXQUFXLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzVELGlDQUFpQztJQUNqQyxXQUFXLEVBQUUsU0FBUyxDQUFTLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxDQUFDO0lBQzVELDBDQUEwQztJQUMxQyxVQUFVLEVBQUUsU0FBUyxDQUNuQixDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLEVBQzFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFDcEQsQ0FBQyxDQUFNLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUMxRDtJQUNELHNEQUFzRDtJQUN0RCxlQUFlLEVBQUUsU0FBUyxDQUN4QixDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUN4QyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQ3JELENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FDM0Q7SUFDRCwy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QUFDLFFBQVEsQ0FBQyxDQUFDLENBQUUsQ0FBWSxDQUFDLEVBQ3BELENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzNDLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQzVEO0lBQ0Qsd0JBQXdCO0lBQ3hCLFlBQVksRUFBRSxTQUFTLENBQ3JCLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUM1QyxDQUFDLENBQWMsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFDNUMsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2xEO0NBQ0YsQ0FBQztBQUVGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFrQkUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByYXcgfSBmcm9tICcuLi8uLi9yZXNvdXJjZXMvcXVlcnknO1xuaW1wb3J0IHsgUGFyc2VyLCBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEFycmF5QnVmZmVycyB9IGZyb20gJy4uLy4uL3V0aWxzL2FycmF5YnVmZmVycyc7XG5pbXBvcnQgeyBEdXJhdGlvbiwgRHVyYXRpb25zIH0gZnJvbSAnLi4vLi4vdXRpbHMvZHVyYXRpb25zJztcblxuLy8gQ29yZSBFZG1UeXBlUGFyc2VyQnVpbGRlclxuY29uc3QgRWRtUGFyc2VyID0gPFQ+KFxuICBfZDogKHY6IGFueSwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IFQsXG4gIF9zOiAodjogYW55LCBvOiBTdHJ1Y3R1cmVkVHlwZUZpZWxkT3B0aW9ucykgPT4gYW55LFxuICBfZTogKHY6IGFueSwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IGFueVxuKTogUGFyc2VyPFQgfCBUW10+ID0+ICh7XG4gIGRlc2VyaWFsaXplKHZhbHVlOiBhbnksIG9wdGlvbnM6IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKTogVCB8IFRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICA/IHZhbHVlLm1hcCgodikgPT4gX2Qodiwgb3B0aW9ucykpXG4gICAgICA6IF9kKHZhbHVlLCBvcHRpb25zKTtcbiAgfSxcbiAgc2VyaWFsaXplKHZhbHVlOiBhbnksIG9wdGlvbnM6IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKTogYW55IHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSlcbiAgICAgID8gdmFsdWUubWFwKCh2KSA9PiBfcyh2LCBvcHRpb25zKSlcbiAgICAgIDogX3ModmFsdWUsIG9wdGlvbnMpO1xuICB9LFxuICBlbmNvZGUodmFsdWU6IGFueSwgb3B0aW9uczogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpOiBhbnkge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKVxuICAgICAgPyB2YWx1ZS5tYXAoKHYpID0+IF9lKHYsIG9wdGlvbnMpKVxuICAgICAgOiBfZSh2YWx1ZSwgb3B0aW9ucyk7XG4gIH0sXG59KTtcblxuY29uc3QgSWRlbnRpdHkgPSAodjogYW55KSA9PiB2O1xuY29uc3QgdG9OdW1iZXIgPSAodjogYW55KSA9PiBOdW1iZXIodik7XG5jb25zdCB0b1N0cmluZyA9ICh2OiBhbnkpID0+IHYudG9TdHJpbmcoKTtcbmNvbnN0IHRvQm9vbGVhbiA9ICh2OiBhbnkpID0+IEJvb2xlYW4odik7XG5jb25zdCB0b0RhdGUgPSAodjogYW55KSA9PiBuZXcgRGF0ZSh2KTtcblxuZXhwb3J0IGNvbnN0IEVETV9QQVJTRVJTOiB7IFt0eXBlOiBzdHJpbmddOiBQYXJzZXI8YW55PiB9ID0ge1xuICAvL0VkbS5HdWlkIDE2LWJ5dGUgKDEyOC1iaXQpIHVuaXF1ZSBpZGVudGlmaWVyXG4gICdFZG0uR3VpZCc6IEVkbVBhcnNlcjxzdHJpbmc+KFxuICAgIElkZW50aXR5LCBcbiAgICBJZGVudGl0eSwgXG4gICAgKHY6IHN0cmluZykgPT4gcmF3KHYpXG4gICksXG4gIC8vRWRtLkludDE2IFNpZ25lZCAxNi1iaXQgaW50ZWdlclxuICAnRWRtLkludDE2JzogRWRtUGFyc2VyPG51bWJlcj4odG9OdW1iZXIsIHRvTnVtYmVyLCB0b051bWJlciksXG4gIC8vRWRtLlN0cmluZyBTZXF1ZW5jZSBvZiBVVEYtOCBjaGFyYWN0ZXJzXG4gICdFZG0uU3RyaW5nJzogRWRtUGFyc2VyPHN0cmluZz4odG9TdHJpbmcsIHRvU3RyaW5nLCB0b1N0cmluZyksXG4gIC8vRWRtLkJvb2xlYW4gQmluYXJ5LXZhbHVlZCBsb2dpY1xuICAnRWRtLkJvb2xlYW4nOiBFZG1QYXJzZXI8Ym9vbGVhbj4odG9Cb29sZWFuLCB0b0Jvb2xlYW4sIHRvQm9vbGVhbiksXG4gIC8vRWRtLkJ5dGUgVW5zaWduZWQgOC1iaXQgaW50ZWdlclxuICAnRWRtLkJ5dGUnOiBFZG1QYXJzZXI8bnVtYmVyPih0b051bWJlciwgdG9OdW1iZXIsIHRvTnVtYmVyKSxcbiAgLy9FZG0uU0J5dGUgU2lnbmVkIDgtYml0IGludGVnZXJcbiAgJ0VkbS5TQnl0ZSc6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5JbnQzMiBTaWduZWQgMTYtYml0IGludGVnZXJcbiAgJ0VkbS5JbnQzMic6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5JbnQ2NCBTaWduZWQgMTYtYml0IGludGVnZXJcbiAgJ0VkbS5JbnQ2NCc6IEVkbVBhcnNlcjxudW1iZXI+KHRvTnVtYmVyLCB0b051bWJlciwgdG9OdW1iZXIpLFxuICAvL0VkbS5EYXRlIERhdGUgd2l0aG91dCBhIHRpbWUtem9uZSBvZmZzZXRcbiAgJ0VkbS5EYXRlJzogRWRtUGFyc2VyPERhdGU+KFxuICAgICh2OiBhbnkpID0+IG5ldyBEYXRlKGAke3Z9VDAwOjAwOjAwLjAwMFpgKSxcbiAgICAodjogYW55KSA9PiB0b0RhdGUodikudG9JU09TdHJpbmcoKS5zdWJzdHJpbmcoMCwgMTApLFxuICAgICh2OiBhbnkpID0+IHJhdyh0b0RhdGUodikudG9JU09TdHJpbmcoKS5zdWJzdHJpbmcoMCwgMTApKVxuICApLFxuICAvL0VkbS5UaW1lT2ZEYXkgQ2xvY2sgdGltZSAwMDowMC0yMzo1OTo1OS45OTk5OTk5OTk5OTlcbiAgJ0VkbS5UaW1lT2ZEYXknOiBFZG1QYXJzZXI8RGF0ZT4oXG4gICAgKHY6IGFueSkgPT4gbmV3IERhdGUoYDE5NzAtMDEtMDFUJHt2fVpgKSxcbiAgICAodjogYW55KSA9PiB0b0RhdGUodikudG9JU09TdHJpbmcoKS5zdWJzdHJpbmcoMTEsIDIzKSxcbiAgICAodjogYW55KSA9PiByYXcodG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkuc3Vic3RyaW5nKDExLCAyMykpXG4gICksXG4gIC8vRWRtLkRhdGVUaW1lT2Zmc2V0IERhdGUgYW5kIHRpbWUgd2l0aCBhIHRpbWUtem9uZSBvZmZzZXQsIG5vIGxlYXAgc2Vjb25kc1xuICAnRWRtLkRhdGVUaW1lT2Zmc2V0JzogRWRtUGFyc2VyPERhdGU+KFxuICAgIHRvRGF0ZSxcbiAgICAodjogYW55KSA9PiB0b0RhdGUodikudG9JU09TdHJpbmcoKSxcbiAgICAodjogYW55KSA9PiByYXcodG9EYXRlKHYpLnRvSVNPU3RyaW5nKCkpXG4gICksXG4gIC8vRWRtLkR1cmF0aW9uIFNpZ25lZCBkdXJhdGlvbiBpbiBkYXlzLCBob3VycywgbWludXRlcywgYW5kIChzdWIpc2Vjb25kc1xuICAnRWRtLkR1cmF0aW9uJzogRWRtUGFyc2VyPER1cmF0aW9uPihcbiAgICAodjogYW55KSA9PiBEdXJhdGlvbnMudG9EdXJhdGlvbih2KSxcbiAgICAodjogRHVyYXRpb24pID0+IER1cmF0aW9ucy50b1N0cmluZyh2KSxcbiAgICAodjogRHVyYXRpb24pID0+IHJhdyhEdXJhdGlvbnMudG9TdHJpbmcodikpXG4gICksXG4gIC8vRWRtLkRlY2ltYWwgTnVtZXJpYyB2YWx1ZXMgd2l0aCBmaXhlZCBwcmVjaXNpb24gYW5kIHNjYWxlXG4gICdFZG0uRGVjaW1hbCc6IEVkbVBhcnNlcjxudW1iZXI+KFxuICAgICh2OiBhbnksIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHYgPT09ICdzdHJpbmcnICYmIG8uaWVlZTc1NENvbXBhdGlibGUpIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlRmxvYXQodik7XG4gICAgICB9XG4gICAgICByZXR1cm4gdjtcbiAgICB9LFxuICAgICh2OiBudW1iZXIsIG86IFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zKSA9PiB7XG4gICAgICBpZiAoby5pZWVlNzU0Q29tcGF0aWJsZSkge1xuICAgICAgICBsZXQgdnN0ciA9IHYudG9QcmVjaXNpb24oby5maWVsZC5wcmVjaXNpb24pO1xuICAgICAgICBpZiAodHlwZW9mIG8uZmllbGQuc2NhbGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgdnN0ciA9IHBhcnNlRmxvYXQodnN0cikudG9GaXhlZChvLmZpZWxkLnNjYWxlKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdnN0cjtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2O1xuICAgIH0sXG4gICAgKHY6IG51bWJlciwgbzogU3RydWN0dXJlZFR5cGVGaWVsZE9wdGlvbnMpID0+IHtcbiAgICAgIGlmIChvLmllZWU3NTRDb21wYXRpYmxlKSB7XG4gICAgICAgIGxldCB2c3RyID0gdi50b1ByZWNpc2lvbihvLmZpZWxkLnByZWNpc2lvbik7XG4gICAgICAgIGlmICh0eXBlb2Ygby5maWVsZC5zY2FsZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICB2c3RyID0gcGFyc2VGbG9hdCh2c3RyKS50b0ZpeGVkKG8uZmllbGQuc2NhbGUpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByYXcodnN0cik7XG4gICAgICB9XG4gICAgICByZXR1cm4gdjtcbiAgICB9XG4gICksXG4gIC8vRWRtLkRvdWJsZSBJRUVFIDc1NCBiaW5hcnk2NCBmbG9hdGluZy1wb2ludCBudW1iZXIgKDE1LTE3IGRlY2ltYWwgZGlnaXRzKVxuICAnRWRtLkRvdWJsZSc6IEVkbVBhcnNlcjxudW1iZXI+KFxuICAgICh2OiBhbnkpID0+ICh2ID09PSAnSU5GJyA/IEluZmluaXR5IDogKHYgYXMgbnVtYmVyKSksXG4gICAgKHY6IG51bWJlcikgPT4gKHYgPT09IEluZmluaXR5ID8gJ0lORicgOiB2KSxcbiAgICAodjogbnVtYmVyKSA9PiByYXcoKHYgPT09IEluZmluaXR5ID8gJ0lORicgOiB2LnRvU3RyaW5nKCkpKVxuICApLFxuICAvL0VkbS5TaW5nbGUgSUVFRSA3NTQgYmluYXJ5MzIgZmxvYXRpbmctcG9pbnQgbnVtYmVyICg2LTkgZGVjaW1hbCBkaWdpdHMpXG4gICdFZG0uU2luZ2xlJzogRWRtUGFyc2VyPG51bWJlcj4oXG4gICAgKHY6IGFueSkgPT4gKHYgPT09ICdJTkYnID8gSW5maW5pdHkgOiAodiBhcyBudW1iZXIpKSxcbiAgICAodjogbnVtYmVyKSA9PiAodiA9PT0gSW5maW5pdHkgPyAnSU5GJyA6IHYpLFxuICAgICh2OiBudW1iZXIpID0+IHJhdygodiA9PT0gSW5maW5pdHkgPyAnSU5GJyA6IHYudG9TdHJpbmcoKSkpXG4gICksXG4gIC8vRWRtLkJpbmFyeSBCaW5hcnkgZGF0YVxuICAnRWRtLkJpbmFyeSc6IEVkbVBhcnNlcjxBcnJheUJ1ZmZlcj4oXG4gICAgKHY6IHN0cmluZykgPT4gQXJyYXlCdWZmZXJzLnRvQXJyYXlCdWZmZXIodiksXG4gICAgKHY6IEFycmF5QnVmZmVyKSA9PiBBcnJheUJ1ZmZlcnMudG9TdHJpbmcodiksXG4gICAgKHY6IEFycmF5QnVmZmVyKSA9PiByYXcoQXJyYXlCdWZmZXJzLnRvU3RyaW5nKHYpKVxuICApLFxufTtcblxuLypcbkVkbS5TdHJlYW0gQmluYXJ5IGRhdGEgc3RyZWFtXG5FZG0uR2VvZ3JhcGh5IEFic3RyYWN0IGJhc2UgdHlwZSBmb3IgYWxsIEdlb2dyYXBoeSB0eXBlc1xuRWRtLkdlb2dyYXBoeVBvaW50IEEgcG9pbnQgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeUxpbmVTdHJpbmcgTGluZSBzdHJpbmcgaW4gYSByb3VuZC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb2dyYXBoeVBvbHlnb24gUG9seWdvbiBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5TXVsdGlQb2ludCBDb2xsZWN0aW9uIG9mIHBvaW50cyBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5TXVsdGlMaW5lU3RyaW5nIENvbGxlY3Rpb24gb2YgbGluZSBzdHJpbmdzIGluIGEgcm91bmQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9ncmFwaHlNdWx0aVBvbHlnb24gQ29sbGVjdGlvbiBvZiBwb2x5Z29ucyBpbiBhIHJvdW5kLWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvZ3JhcGh5Q29sbGVjdGlvbiBDb2xsZWN0aW9uIG9mIGFyYml0cmFyeSBHZW9ncmFwaHkgdmFsdWVzXG5FZG0uR2VvbWV0cnkgQWJzdHJhY3QgYmFzZSB0eXBlIGZvciBhbGwgR2VvbWV0cnkgdHlwZXNcbkVkbS5HZW9tZXRyeVBvaW50IFBvaW50IGluIGEgZmxhdC1lYXJ0aCBjb29yZGluYXRlIHN5c3RlbVxuRWRtLkdlb21ldHJ5TGluZVN0cmluZyBMaW5lIHN0cmluZyBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeVBvbHlnb24gUG9seWdvbiBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeU11bHRpUG9pbnQgQ29sbGVjdGlvbiBvZiBwb2ludHMgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlNdWx0aUxpbmVTdHJpbmcgQ29sbGVjdGlvbiBvZiBsaW5lIHN0cmluZ3MgaW4gYSBmbGF0LWVhcnRoIGNvb3JkaW5hdGUgc3lzdGVtXG5FZG0uR2VvbWV0cnlNdWx0aVBvbHlnb24gQ29sbGVjdGlvbiBvZiBwb2x5Z29ucyBpbiBhIGZsYXQtZWFydGggY29vcmRpbmF0ZSBzeXN0ZW1cbkVkbS5HZW9tZXRyeUNvbGxlY3Rpb24gQ29sbGVjdGlvbiBvZiBhcmJpdHJhcnkgR2VvbWV0cnkgdmFsdWVzXG4qL1xuIl19
|
|
@@ -120,4 +120,4 @@ export class ODataEnumTypeParser extends ODataAnnotatable {
|
|
|
120
120
|
return Enums.toValues(this.members, value).reduce((acc, v) => acc | v, 0);
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VudW0tdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFRNUMsT0FBTyxFQUFFLEtBQUssRUFBVyxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsTUFBTSxPQUFPLHdCQUE0QixTQUFRLGdCQUFnQjtJQUkvRCxZQUFZLElBQVksRUFBRSxLQUE2QjtRQUNyRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFzQjtRQUM3QixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzFELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxtQkFDWCxTQUFRLGdCQUFnQjtJQVd4QixZQUFZLE1BQXlCLEVBQUUsU0FBaUIsRUFBRSxLQUFjO1FBQ3RFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMs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SyxDQUFDLENBQUMsTUFBTSxDQUMvQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQ25CLENBQUMsQ0FDSyxDQUFDO0lBQ1gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmF3IH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3F1ZXJ5JztcbmltcG9ydCB7XG4gIEVudW1UeXBlQ29uZmlnLFxuICBFbnVtVHlwZUZpZWxkQ29uZmlnLFxuICBQYXJzZXJPcHRpb25zLFxuICBQYXJzZXIsXG4gIFN0cnVjdHVyZWRUeXBlRmllbGRPcHRpb25zLFxufSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBFbnVtcywgU3RyaW5ncyB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IE9EYXRhQW5ub3RhdGFibGUgfSBmcm9tICcuLi9hbm5vdGF0aW9uJztcblxuZXhwb3J0IGNsYXNzIE9EYXRhRW51bVR5cGVGaWVsZFBhcnNlcjxFPiBleHRlbmRzIE9EYXRhQW5ub3RhdGFibGUge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBFO1xuXG4gIGNvbnN0cnVjdG9yKG5hbWU6IHN0cmluZywgZmllbGQ6IEVudW1UeXBlRmllbGRDb25maWc8RT4pIHtcbiAgICBzdXBlcihmaWVsZCk7XG4gICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICB0aGlzLnZhbHVlID0gZmllbGQudmFsdWU7XG4gIH1cblxuICB0aXRsZWl6ZSh0ZXJtPzogc3RyaW5nIHwgUmVnRXhwKTogc3RyaW5nIHtcbiAgICByZXR1cm4gKHRlcm0gJiYgdGhpcy5hbm5vdGF0ZWRWYWx1ZSh0ZXJtKSkgfHwgdGhpcy5uYW1lO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBPRGF0YUVudW1UeXBlUGFyc2VyPEU+XG4gIGV4dGVuZHMgT0RhdGFBbm5vdGF0YWJsZVxuICBpbXBsZW1lbnRzIFBhcnNlcjxFPlxue1xuICBuYW1lOiBzdHJpbmc7XG4gIG5hbWVzcGFjZTogc3RyaW5nO1xuICBhbGlhcz86IHN0cmluZztcbiAgZmxhZ3M/OiBib29sZWFuO1xuICBtZW1iZXJzOiB7IFtuYW1lOiBzdHJpbmddOiBFIH0gfCB7IFt2YWx1ZTogbnVtYmVyXTogc3RyaW5nIH07XG4gIHByaXZhdGUgX2ZpZWxkczogT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyPEU+W107XG4gIHBhcnNlck9wdGlvbnM/OiBQYXJzZXJPcHRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogRW51bVR5cGVDb25maWc8RT4sIG5hbWVzcGFjZTogc3RyaW5nLCBhbGlhcz86IHN0cmluZykge1xuICAgIHN1cGVyKGNvbmZpZyk7XG4gICAgdGhpcy5uYW1lID0gY29uZmlnLm5hbWU7XG4gICAgdGhpcy5uYW1lc3BhY2UgPSBuYW1lc3BhY2U7XG4gICAgdGhpcy5hbGlhcyA9IGFsaWFzO1xuICAgIHRoaXMuZmxhZ3MgPSBjb25maWcuZmxhZ3M7XG4gICAgdGhpcy5tZW1iZXJzID0gY29uZmlnLm1lbWJlcnM7XG4gICAgdGhpcy5fZmllbGRzID0gT2JqZWN0LmVudHJpZXMoY29uZmlnLmZpZWxkcykubWFwKFxuICAgICAgKFtuYW1lLCBmXSkgPT4gbmV3IE9EYXRhRW51bVR5cGVGaWVsZFBhcnNlcihuYW1lLCBmKVxuICAgICk7XG4gIH1cblxuICBjb25maWd1cmUoe1xuICAgIG9wdGlvbnMsXG4gICAgcGFyc2VyRm9yVHlwZSxcbiAgICBmaW5kT3B0aW9uc0ZvclR5cGUsXG4gIH06IHtcbiAgICBvcHRpb25zOiBQYXJzZXJPcHRpb25zO1xuICAgIHBhcnNlckZvclR5cGU6ICh0eXBlOiBzdHJpbmcpID0+IFBhcnNlcjxhbnk+O1xuICAgIGZpbmRPcHRpb25zRm9yVHlwZTogKHR5cGU6IHN0cmluZykgPT4gYW55O1xuICB9KSB7XG4gICAgdGhpcy5wYXJzZXJPcHRpb25zID0gb3B0aW9ucztcbiAgfVxuXG4gIGlzVHlwZU9mKHR5cGU6IHN0cmluZykge1xuICAgIHZhciBuYW1lcyA9IFtgJHt0aGlzLm5hbWVzcGFjZX0uJHt0aGlzLm5hbWV9YF07XG4gICAgaWYgKHRoaXMuYWxpYXMpIG5hbWVzLnB1c2goYCR7dGhpcy5hbGlhc30uJHt0aGlzLm5hbWV9YCk7XG4gICAgcmV0dXJuIG5hbWVzLmluZGV4T2YodHlwZSkgIT09IC0xO1xuICB9XG5cbiAgZmllbGRzKHZhbHVlPzogRSk6IE9EYXRhRW51bVR5cGVGaWVsZFBhcnNlcjxFPltdIHtcbiAgICByZXR1cm4gW1xuICAgICAgLi4udGhpcy5fZmllbGRzLmZpbHRlcihcbiAgICAgICAgKGYpID0+IHZhbHVlID09PSB1bmRlZmluZWQgfHwgQm9vbGVhbigoPGFueT5mLnZhbHVlKSAmICg8YW55PnZhbHVlKSlcbiAgICAgICksXG4gICAgXTtcbiAgfVxuXG4gIGZpZWxkKG5hbWVWYWx1ZTogc3RyaW5nIHwgRSkge1xuICAgIGxldCBmaWVsZCA9IHRoaXMuZmllbGRzKCkuZmluZChcbiAgICAgIChmKSA9PiBmLm5hbWUgPT09IG5hbWVWYWx1ZSB8fCBmLnZhbHVlID09PSBuYW1lVmFsdWVcbiAgICApO1xuICAgIC8vVGhyb3cgZXJyb3IgaWYgbm90IGZvdW5kXG4gICAgaWYgKGZpZWxkID09PSB1bmRlZmluZWQpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7dGhpcy5uYW1lfSBoYXMgbm8gZmllbGQgbmFtZWQgJHtTdHJpbmcobmFtZSl9YCk7XG4gICAgcmV0dXJuIGZpZWxkO1xuICB9XG5cbiAgLyoqXG4gICAqIE1hcCB0aGUgZmllbGRzIG9mIHRoZSBlbnVtIHR5cGUuXG4gICAqIEBwYXJhbSBtYXBwZXIgRnVuY3Rpb24gdGhhdCBtYXBzIHRoZSB2YWx1ZSB0byB0aGUgbmV3IHZhbHVlXG4gICAqIEByZXR1cm5zIFRoZSBmaWVsZHMgbWFwcGVkIGJ5IHRoZSBtYXBwZXJcbiAgICovXG4gIG1hcEZpZWxkczxSPihtYXBwZXI6IChmaWVsZDogT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyPEU+KSA9PiBSKSB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRzKCkubWFwKG1hcHBlcik7XG4gIH1cblxuICAvLyBEZXNlcmlhbGl6ZVxuICBkZXNlcmlhbGl6ZSh2YWx1ZTogc3RyaW5nLCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IEUge1xuICAgIC8vIHN0cmluZyAtPiBudW1iZXJcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICBpZiAodGhpcy5mbGFncykge1xuICAgICAgcmV0dXJuIEVudW1zLnRvVmFsdWVzPEU+KHRoaXMubWVtYmVycyBhcyBhbnksIHZhbHVlKS5yZWR1Y2UoXG4gICAgICAgIChhY2MsIHYpID0+IGFjYyB8IHYsXG4gICAgICAgIDBcbiAgICAgICkgYXMgYW55O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gRW51bXMudG9WYWx1ZTxFPih0aGlzLm1lbWJlcnMgYXMgYW55LCB2YWx1ZSkgYXMgYW55O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNlcmlhbGl6ZVxuICBzZXJpYWxpemUodmFsdWU6IEUsIG9wdGlvbnM/OiBQYXJzZXJPcHRpb25zKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBFbnVtIGFyZSBzdHJpbmcgfCBudW1iZXJcbiAgICAvLyBzdHJpbmcgfCBudW1iZXIgLT4gc3RyaW5nXG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgaWYgKHRoaXMuZmxhZ3MpIHtcbiAgICAgIGxldCBuYW1lcyA9IEVudW1zLnRvTmFtZXModGhpcy5tZW1iZXJzLCB2YWx1ZSk7XG4gICAgICBpZiAobmFtZXMubGVuZ3RoID09PSAwKSBuYW1lcyA9IFtgJHt2YWx1ZX1gXTtcbiAgICAgIHJldHVybiAhcGFyc2VyT3B0aW9ucz8uc3RyaW5nQXNFbnVtXG4gICAgICAgID8gYCR7dGhpcy5uYW1lc3BhY2V9LiR7dGhpcy5uYW1lfScke25hbWVzLmpvaW4oJywgJyl9J2BcbiAgICAgICAgOiBuYW1lcy5qb2luKCcsICcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgbmFtZSA9IEVudW1zLnRvTmFtZSh0aGlzLm1lbWJlcnMsIHZhbHVlKTtcbiAgICAgIGlmIChuYW1lID09PSB1bmRlZmluZWQpIG5hbWUgPSBgJHt2YWx1ZX1gO1xuICAgICAgcmV0dXJuICFwYXJzZXJPcHRpb25zPy5zdHJpbmdBc0VudW1cbiAgICAgICAgPyBgJHt0aGlzLm5hbWVzcGFjZX0uJHt0aGlzLm5hbWV9JyR7bmFtZX0nYFxuICAgICAgICA6IG5hbWU7XG4gICAgfVxuICB9XG5cbiAgLy9FbmNvZGVcbiAgZW5jb2RlKHZhbHVlOiBFLCBvcHRpb25zPzogUGFyc2VyT3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgcGFyc2VyT3B0aW9ucyA9IHsgLi4udGhpcy5wYXJzZXJPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3Qgc2VyaWFsaXplZCA9IHRoaXMuc2VyaWFsaXplKHZhbHVlLCBwYXJzZXJPcHRpb25zKTtcbiAgICBpZiAoc2VyaWFsaXplZCA9PT0gdW5kZWZpbmVkKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBwYXJzZXJPcHRpb25zPy5zdHJpbmdBc0VudW1cbiAgICAgID8gcmF3KGAnJHtzZXJpYWxpemVkfSdgKVxuICAgICAgOiByYXcoc2VyaWFsaXplZCk7XG4gIH1cblxuICAvLyBKc29uIFNjaGVtYVxuICB0b0pzb25TY2hlbWEoKSB7XG4gICAgbGV0IHByb3BlcnR5ID0gPGFueT57XG4gICAgICB0aXRsZTogdGhpcy5uYW1lLFxuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgfTtcbiAgICBwcm9wZXJ0eS5lbnVtID0gdGhpcy5fZmllbGRzLm1hcCgoZikgPT4gZi5uYW1lKTtcbiAgICByZXR1cm4gcHJvcGVydHk7XG4gIH1cblxuICB2YWxpZGF0ZShcbiAgICBtZW1iZXI6IHN0cmluZyB8IG51bWJlcixcbiAgICB7XG4gICAgICBtZXRob2QsXG4gICAgICBuYXZpZ2F0aW9uID0gZmFsc2UsXG4gICAgfToge1xuICAgICAgbWV0aG9kPzogJ2NyZWF0ZScgfCAndXBkYXRlJyB8ICdtb2RpZnknO1xuICAgICAgbmF2aWdhdGlvbj86IGJvb2xlYW47XG4gICAgfSA9IHt9XG4gICk6IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodGhpcy5mbGFncykge1xuICAgICAgbGV0IG1lbWJlcnMgPSBFbnVtcy50b1ZhbHVlcyh0aGlzLm1lbWJlcnMsIG1lbWJlcik7XG4gICAgICByZXR1cm4gbWVtYmVycy5zb21lKChtZW1iZXIpID0+ICEobWVtYmVyIGluIHRoaXMubWVtYmVycykpXG4gICAgICAgID8gWydtaXNtYXRjaCddXG4gICAgICAgIDogdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gIShtZW1iZXIgaW4gdGhpcy5tZW1iZXJzKSA/IFsnbWlzbWF0Y2gnXSA6IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICB1bnBhY2sodmFsdWU6IEUpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIEVudW1zLnRvVmFsdWVzKHRoaXMubWVtYmVycywgdmFsdWUpO1xuICB9XG5cbiAgcGFjayh2YWx1ZTogbnVtYmVyW10pOiBFIHtcbiAgICByZXR1cm4gRW51bXMudG9WYWx1ZXModGhpcy5tZW1iZXJzLCB2YWx1ZSkucmVkdWNlKFxuICAgICAgKGFjYywgdikgPT4gYWNjIHwgdixcbiAgICAgIDBcbiAgICApIGFzIGFueTtcbiAgfVxufVxuIl19
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3NjaGVtYS9wYXJzZXJzL2VudW0tdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPNUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsTUFBTSxPQUFPLHdCQUE0QixTQUFRLGdCQUFnQjtJQUkvRCxZQUFZLElBQVksRUFBRSxLQUE2QjtRQUNyRCxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFzQjtRQUM3QixPQUFPLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzFELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxtQkFDWCxTQUFRLGdCQUFnQjtJQVd4QixZQUFZLE1BQXlCLEVBQUUsU0FBaUIsRUFBRSxLQUFjO1FBQ3RFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNkLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMs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SyxDQUFDLENBQUMsTUFBTSxDQUMvQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLEVBQ25CLENBQUMsQ0FDSyxDQUFDO0lBQ1gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmF3IH0gZnJvbSAnLi4vLi4vcmVzb3VyY2VzL3F1ZXJ5JztcbmltcG9ydCB7XG4gIEVudW1UeXBlQ29uZmlnLFxuICBFbnVtVHlwZUZpZWxkQ29uZmlnLFxuICBQYXJzZXJPcHRpb25zLFxuICBQYXJzZXIsXG59IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEVudW1zIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgT0RhdGFBbm5vdGF0YWJsZSB9IGZyb20gJy4uL2Fubm90YXRpb24nO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyPEU+IGV4dGVuZHMgT0RhdGFBbm5vdGF0YWJsZSB7XG4gIG5hbWU6IHN0cmluZztcbiAgdmFsdWU6IEU7XG5cbiAgY29uc3RydWN0b3IobmFtZTogc3RyaW5nLCBmaWVsZDogRW51bVR5cGVGaWVsZENvbmZpZzxFPikge1xuICAgIHN1cGVyKGZpZWxkKTtcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xuICAgIHRoaXMudmFsdWUgPSBmaWVsZC52YWx1ZTtcbiAgfVxuXG4gIHRpdGxlaXplKHRlcm0/OiBzdHJpbmcgfCBSZWdFeHApOiBzdHJpbmcge1xuICAgIHJldHVybiAodGVybSAmJiB0aGlzLmFubm90YXRlZFZhbHVlKHRlcm0pKSB8fCB0aGlzLm5hbWU7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE9EYXRhRW51bVR5cGVQYXJzZXI8RT5cbiAgZXh0ZW5kcyBPRGF0YUFubm90YXRhYmxlXG4gIGltcGxlbWVudHMgUGFyc2VyPEU+XG57XG4gIG5hbWU6IHN0cmluZztcbiAgbmFtZXNwYWNlOiBzdHJpbmc7XG4gIGFsaWFzPzogc3RyaW5nO1xuICBmbGFncz86IGJvb2xlYW47XG4gIG1lbWJlcnM6IHsgW25hbWU6IHN0cmluZ106IEUgfSB8IHsgW3ZhbHVlOiBudW1iZXJdOiBzdHJpbmcgfTtcbiAgcHJpdmF0ZSBfZmllbGRzOiBPRGF0YUVudW1UeXBlRmllbGRQYXJzZXI8RT5bXTtcbiAgcGFyc2VyT3B0aW9ucz86IFBhcnNlck9wdGlvbnM7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBFbnVtVHlwZUNvbmZpZzxFPiwgbmFtZXNwYWNlOiBzdHJpbmcsIGFsaWFzPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoY29uZmlnKTtcbiAgICB0aGlzLm5hbWUgPSBjb25maWcubmFtZTtcbiAgICB0aGlzLm5hbWVzcGFjZSA9IG5hbWVzcGFjZTtcbiAgICB0aGlzLmFsaWFzID0gYWxpYXM7XG4gICAgdGhpcy5mbGFncyA9IGNvbmZpZy5mbGFncztcbiAgICB0aGlzLm1lbWJlcnMgPSBjb25maWcubWVtYmVycztcbiAgICB0aGlzLl9maWVsZHMgPSBPYmplY3QuZW50cmllcyhjb25maWcuZmllbGRzKS5tYXAoXG4gICAgICAoW25hbWUsIGZdKSA9PiBuZXcgT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyKG5hbWUsIGYpXG4gICAgKTtcbiAgfVxuXG4gIGNvbmZpZ3VyZSh7XG4gICAgb3B0aW9ucyxcbiAgICBwYXJzZXJGb3JUeXBlLFxuICAgIGZpbmRPcHRpb25zRm9yVHlwZSxcbiAgfToge1xuICAgIG9wdGlvbnM6IFBhcnNlck9wdGlvbnM7XG4gICAgcGFyc2VyRm9yVHlwZTogKHR5cGU6IHN0cmluZykgPT4gUGFyc2VyPGFueT47XG4gICAgZmluZE9wdGlvbnNGb3JUeXBlOiAodHlwZTogc3RyaW5nKSA9PiBhbnk7XG4gIH0pIHtcbiAgICB0aGlzLnBhcnNlck9wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgaXNUeXBlT2YodHlwZTogc3RyaW5nKSB7XG4gICAgdmFyIG5hbWVzID0gW2Ake3RoaXMubmFtZXNwYWNlfS4ke3RoaXMubmFtZX1gXTtcbiAgICBpZiAodGhpcy5hbGlhcykgbmFtZXMucHVzaChgJHt0aGlzLmFsaWFzfS4ke3RoaXMubmFtZX1gKTtcbiAgICByZXR1cm4gbmFtZXMuaW5kZXhPZih0eXBlKSAhPT0gLTE7XG4gIH1cblxuICBmaWVsZHModmFsdWU/OiBFKTogT0RhdGFFbnVtVHlwZUZpZWxkUGFyc2VyPEU+W10ge1xuICAgIHJldHVybiBbXG4gICAgICAuLi50aGlzLl9maWVsZHMuZmlsdGVyKFxuICAgICAgICAoZikgPT4gdmFsdWUgPT09IHVuZGVmaW5lZCB8fCBCb29sZWFuKCg8YW55PmYudmFsdWUpICYgKDxhbnk+dmFsdWUpKVxuICAgICAgKSxcbiAgICBdO1xuICB9XG5cbiAgZmllbGQobmFtZVZhbHVlOiBzdHJpbmcgfCBFKSB7XG4gICAgbGV0IGZpZWxkID0gdGhpcy5maWVsZHMoKS5maW5kKFxuICAgICAgKGYpID0+IGYubmFtZSA9PT0gbmFtZVZhbHVlIHx8IGYudmFsdWUgPT09IG5hbWVWYWx1ZVxuICAgICk7XG4gICAgLy9UaHJvdyBlcnJvciBpZiBub3QgZm91bmRcbiAgICBpZiAoZmllbGQgPT09IHVuZGVmaW5lZClcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLm5hbWV9IGhhcyBubyBmaWVsZCBuYW1lZCAke1N0cmluZyhuYW1lKX1gKTtcbiAgICByZXR1cm4gZmllbGQ7XG4gIH1cblxuICAvKipcbiAgICogTWFwIHRoZSBmaWVsZHMgb2YgdGhlIGVudW0gdHlwZS5cbiAgICogQHBhcmFtIG1hcHBlciBGdW5jdGlvbiB0aGF0IG1hcHMgdGhlIHZhbHVlIHRvIHRoZSBuZXcgdmFsdWVcbiAgICogQHJldHVybnMgVGhlIGZpZWxkcyBtYXBwZWQgYnkgdGhlIG1hcHBlclxuICAgKi9cbiAgbWFwRmllbGRzPFI+KG1hcHBlcjogKGZpZWxkOiBPRGF0YUVudW1UeXBlRmllbGRQYXJzZXI8RT4pID0+IFIpIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZHMoKS5tYXAobWFwcGVyKTtcbiAgfVxuXG4gIC8vIERlc2VyaWFsaXplXG4gIGRlc2VyaWFsaXplKHZhbHVlOiBzdHJpbmcsIG9wdGlvbnM/OiBQYXJzZXJPcHRpb25zKTogRSB7XG4gICAgLy8gc3RyaW5nIC0+IG51bWJlclxuICAgIGNvbnN0IHBhcnNlck9wdGlvbnMgPSB7IC4uLnRoaXMucGFyc2VyT3B0aW9ucywgLi4ub3B0aW9ucyB9O1xuICAgIGlmICh0aGlzLmZsYWdzKSB7XG4gICAgICByZXR1cm4gRW51bXMudG9WYWx1ZXM8RT4odGhpcy5tZW1iZXJzIGFzIGFueSwgdmFsdWUpLnJlZHVjZShcbiAgICAgICAgKGFjYywgdikgPT4gYWNjIHwgdixcbiAgICAgICAgMFxuICAgICAgKSBhcyBhbnk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBFbnVtcy50b1ZhbHVlPEU+KHRoaXMubWVtYmVycyBhcyBhbnksIHZhbHVlKSBhcyBhbnk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2VyaWFsaXplXG4gIHNlcmlhbGl6ZSh2YWx1ZTogRSwgb3B0aW9ucz86IFBhcnNlck9wdGlvbnMpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIC8vIEVudW0gYXJlIHN0cmluZyB8IG51bWJlclxuICAgIC8vIHN0cmluZyB8IG51bWJlciAtPiBzdHJpbmdcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICBpZiAodGhpcy5mbGFncykge1xuICAgICAgbGV0IG5hbWVzID0gRW51bXMudG9OYW1lcyh0aGlzLm1lbWJlcnMsIHZhbHVlKTtcbiAgICAgIGlmIChuYW1lcy5sZW5ndGggPT09IDApIG5hbWVzID0gW2Ake3ZhbHVlfWBdO1xuICAgICAgcmV0dXJuICFwYXJzZXJPcHRpb25zPy5zdHJpbmdBc0VudW1cbiAgICAgICAgPyBgJHt0aGlzLm5hbWVzcGFjZX0uJHt0aGlzLm5hbWV9JyR7bmFtZXMuam9pbignLCAnKX0nYFxuICAgICAgICA6IG5hbWVzLmpvaW4oJywgJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBuYW1lID0gRW51bXMudG9OYW1lKHRoaXMubWVtYmVycywgdmFsdWUpO1xuICAgICAgaWYgKG5hbWUgPT09IHVuZGVmaW5lZCkgbmFtZSA9IGAke3ZhbHVlfWA7XG4gICAgICByZXR1cm4gIXBhcnNlck9wdGlvbnM/LnN0cmluZ0FzRW51bVxuICAgICAgICA/IGAke3RoaXMubmFtZXNwYWNlfS4ke3RoaXMubmFtZX0nJHtuYW1lfSdgXG4gICAgICAgIDogbmFtZTtcbiAgICB9XG4gIH1cblxuICAvL0VuY29kZVxuICBlbmNvZGUodmFsdWU6IEUsIG9wdGlvbnM/OiBQYXJzZXJPcHRpb25zKTogYW55IHtcbiAgICBjb25zdCBwYXJzZXJPcHRpb25zID0geyAuLi50aGlzLnBhcnNlck9wdGlvbnMsIC4uLm9wdGlvbnMgfTtcbiAgICBjb25zdCBzZXJpYWxpemVkID0gdGhpcy5zZXJpYWxpemUodmFsdWUsIHBhcnNlck9wdGlvbnMpO1xuICAgIGlmIChzZXJpYWxpemVkID09PSB1bmRlZmluZWQpIHJldHVybiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIHBhcnNlck9wdGlvbnM/LnN0cmluZ0FzRW51bVxuICAgICAgPyByYXcoYCcke3NlcmlhbGl6ZWR9J2ApXG4gICAgICA6IHJhdyhzZXJpYWxpemVkKTtcbiAgfVxuXG4gIC8vIEpzb24gU2NoZW1hXG4gIHRvSnNvblNjaGVtYSgpIHtcbiAgICBsZXQgcHJvcGVydHkgPSA8YW55PntcbiAgICAgIHRpdGxlOiB0aGlzLm5hbWUsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICB9O1xuICAgIHByb3BlcnR5LmVudW0gPSB0aGlzLl9maWVsZHMubWFwKChmKSA9PiBmLm5hbWUpO1xuICAgIHJldHVybiBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbGlkYXRlKFxuICAgIG1lbWJlcjogc3RyaW5nIHwgbnVtYmVyLFxuICAgIHtcbiAgICAgIG1ldGhvZCxcbiAgICAgIG5hdmlnYXRpb24gPSBmYWxzZSxcbiAgICB9OiB7XG4gICAgICBtZXRob2Q/OiAnY3JlYXRlJyB8ICd1cGRhdGUnIHwgJ21vZGlmeSc7XG4gICAgICBuYXZpZ2F0aW9uPzogYm9vbGVhbjtcbiAgICB9ID0ge31cbiAgKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmZsYWdzKSB7XG4gICAgICBsZXQgbWVtYmVycyA9IEVudW1zLnRvVmFsdWVzKHRoaXMubWVtYmVycywgbWVtYmVyKTtcbiAgICAgIHJldHVybiBtZW1iZXJzLnNvbWUoKG1lbWJlcikgPT4gIShtZW1iZXIgaW4gdGhpcy5tZW1iZXJzKSlcbiAgICAgICAgPyBbJ21pc21hdGNoJ11cbiAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAhKG1lbWJlciBpbiB0aGlzLm1lbWJlcnMpID8gWydtaXNtYXRjaCddIDogdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIHVucGFjayh2YWx1ZTogRSk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gRW51bXMudG9WYWx1ZXModGhpcy5tZW1iZXJzLCB2YWx1ZSk7XG4gIH1cblxuICBwYWNrKHZhbHVlOiBudW1iZXJbXSk6IEUge1xuICAgIHJldHVybiBFbnVtcy50b1ZhbHVlcyh0aGlzLm1lbWJlcnMsIHZhbHVlKS5yZWR1Y2UoXG4gICAgICAoYWNjLCB2KSA9PiBhY2MgfCB2LFxuICAgICAgMFxuICAgICkgYXMgYW55O1xuICB9XG59XG4iXX0=
|
|
@@ -43,8 +43,8 @@ export class ODataEntitySetService extends ODataEntityService {
|
|
|
43
43
|
* @param withCount Get the count of the entities.
|
|
44
44
|
* @param options The options for the request.
|
|
45
45
|
*/
|
|
46
|
-
fetchMany(options) {
|
|
47
|
-
return this.entities().
|
|
46
|
+
fetchMany(top, options) {
|
|
47
|
+
return this.entities().fetchMany(top, options);
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* Get an entity from the entity set.
|
|
@@ -52,8 +52,8 @@ export class ODataEntitySetService extends ODataEntityService {
|
|
|
52
52
|
* @param etag The etag for the entity.
|
|
53
53
|
* @param options The options for the request.
|
|
54
54
|
*/
|
|
55
|
-
fetchOne(
|
|
56
|
-
return this.
|
|
55
|
+
fetchOne(options) {
|
|
56
|
+
return this.entities().fetchOne(options);
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
59
|
* Create an entity in the entity set.
|
|
@@ -110,11 +110,11 @@ export class ODataEntitySetService extends ODataEntityService {
|
|
|
110
110
|
* @param options The options for the request.
|
|
111
111
|
*/
|
|
112
112
|
fetchOrCreate(key, attrs, { etag, ...options } = {}) {
|
|
113
|
-
return this.
|
|
113
|
+
return this.entity(key).fetch({ etag, ...options }).pipe(catchError((error) => {
|
|
114
114
|
if (error.status === 404)
|
|
115
115
|
return this.create(attrs, options);
|
|
116
116
|
else
|
|
117
|
-
return throwError(error);
|
|
117
|
+
return throwError(() => error);
|
|
118
118
|
}));
|
|
119
119
|
}
|
|
120
120
|
/**
|
|
@@ -140,4 +140,4 @@ export class ODataEntitySetService extends ODataEntityService {
|
|
|
140
140
|
: this.update(key, attrs, { etag, ...options });
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9zZXJ2aWNlcy9lbnRpdHktc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFTN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTlDLE1BQU0sT0FBTyxxQkFBeUIsU0FBUSxrQkFBcUI7SUFDakU7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBSSxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsR0FBa0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFRTSxNQUFNLENBQUMsS0FBVTtRQUN0QixJQUFJLEtBQUssWUFBWSxVQUFVLEVBQUU7WUFDL0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztTQUN4QzthQUFNLElBQUksS0FBSyxZQUFZLGVBQWUsRUFBRTtZQUMzQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFB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IjpbImltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9EYXRhQ29sbGVjdGlvbiB9IGZyb20gJy4uL21vZGVscy9jb2xsZWN0aW9uJztcbmltcG9ydCB7IE9EYXRhTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbW9kZWwnO1xuaW1wb3J0IHtcbiAgRW50aXR5S2V5LFxuICBPRGF0YUVudGl0aWVzLFxuICBPRGF0YUVudGl0eSxcbiAgT0RhdGFFbnRpdHlSZXNvdXJjZSxcbiAgT0RhdGFFbnRpdHlTZXRSZXNvdXJjZSxcbiAgT0RhdGFPcHRpb25zLFxufSBmcm9tICcuLi9yZXNvdXJjZXMnO1xuaW1wb3J0IHsgT0RhdGFFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi9lbnRpdHknO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFFbnRpdHlTZXRTZXJ2aWNlPFQ+IGV4dGVuZHMgT0RhdGFFbnRpdHlTZXJ2aWNlPFQ+IHtcbiAgLyoqXG4gICAqIEdldCB0aGUgZW50aXR5IHNldCByZXNvdXJjZSBmb3IgdGhpcyBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGVudGl0aWVzKCk6IE9EYXRhRW50aXR5U2V0UmVzb3VyY2U8VD4ge1xuICAgIHJldHVybiB0aGlzLmNsaWVudC5lbnRpdHlTZXQ8VD4odGhpcy5uYW1lLCB0aGlzLmFwaU5hbWVPckVudGl0eVR5cGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgZW50aXR5IHJlc291cmNlIGZvciB0aGlzIHNlcnZpY2UuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqL1xuICBwdWJsaWMgZW50aXR5KGtleT86IEVudGl0eUtleTxUPik6IE9EYXRhRW50aXR5UmVzb3VyY2U8VD4ge1xuICAgIHJldHVybiB0aGlzLmVudGl0aWVzKCkuZW50aXR5KGtleSk7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoIGFuIGV4aXN0aW5nIG1vZGVsIHRvIHRoaXMgc2VydmljZS5cbiAgICogQHBhcmFtIG1vZGVsIFRoZSBtb2RlbCB0byBhdHRhY2guXG4gICAqL1xuICBwdWJsaWMgYXR0YWNoPE0gZXh0ZW5kcyBPRGF0YU1vZGVsPFQ+Pihtb2RlbDogTSk6IHZvaWQ7XG4gIHB1YmxpYyBhdHRhY2g8QyBleHRlbmRzIE9EYXRhQ29sbGVjdGlvbjxULCBPRGF0YU1vZGVsPFQ+Pj4obW9kZWw6IEMpOiB2b2lkO1xuICBwdWJsaWMgYXR0YWNoKG1vZGVsOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAobW9kZWwgaW5zdGFuY2VvZiBPRGF0YU1vZGVsKSB7XG4gICAgICBtb2RlbC5hdHRhY2godGhpcy5lbnRpdGllcygpLmVudGl0eSgpKTtcbiAgICB9IGVsc2UgaWYgKG1vZGVsIGluc3RhbmNlb2YgT0RhdGFDb2xsZWN0aW9uKSB7XG4gICAgICBtb2RlbC5hdHRhY2godGhpcy5lbnRpdGllcygpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIHNjaGVtYSBmb3IgdGhlIGVudGl0eSBzZXQuXG4gICAqL1xuICBnZXQgZW50aXR5U2V0U2NoZW1hKCkge1xuICAgIHJldHVybiB0aGlzLmFwaS5maW5kRW50aXR5U2V0QnlOYW1lKHRoaXMubmFtZSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCBlbnRpdGllcyBmcm9tIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgZmV0Y2hBbGwob3B0aW9ucz86IE9EYXRhT3B0aW9ucyk6IE9ic2VydmFibGU8VFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXRpZXMoKS5mZXRjaEFsbChvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZW50aXRpZXMgZnJvbSB0aGUgZW50aXR5IHNldC5cbiAgICogQHBhcmFtIHdpdGhDb3VudCBHZXQgdGhlIGNvdW50IG9mIHRoZSBlbnRpdGllcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIGZldGNoTWFueShcbiAgICBvcHRpb25zPzogT0RhdGFPcHRpb25zICYgeyB3aXRoQ291bnQ/OiBib29sZWFuIH1cbiAgKTogT2JzZXJ2YWJsZTxPRGF0YUVudGl0aWVzPFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXRpZXMoKS5mZXRjaChvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYW4gZW50aXR5IGZyb20gdGhlIGVudGl0eSBzZXQuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqIEBwYXJhbSBldGFnIFRoZSBldGFnIGZvciB0aGUgZW50aXR5LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgZmV0Y2hPbmUoXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICk6IE9ic2VydmFibGU8T0RhdGFFbnRpdHk8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdHkoa2V5KS5mZXRjaChvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0gYXR0cnMgVGhlIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGUoXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9uc1xuICApOiBPYnNlcnZhYmxlPE9EYXRhRW50aXR5PFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXRpZXMoKS5jcmVhdGUoYXR0cnMsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhbiBlbnRpdHkgaW4gdGhlIGVudGl0eSBzZXQuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqIEBwYXJhbSBhdHRycyBUaGUgYXR0cmlidXRlcyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIGV0YWcgVGhlIGV0YWcgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGUoXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICk6IE9ic2VydmFibGU8T0RhdGFFbnRpdHk8VD4+IHtcbiAgICBjb25zdCByZXMgPSB0aGlzLmVudGl0eShrZXkpO1xuICAgIGlmICghcmVzLmhhc0tleSgpKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCd1cGRhdGU6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMudXBkYXRlKGF0dHJzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaCBhbiBlbnRpdHkgaW4gdGhlIGVudGl0eSBzZXQuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqIEBwYXJhbSBhdHRycyBUaGUgYXR0cmlidXRlcyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIGV0YWcgVGhlIGV0YWcgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyBtb2RpZnkoXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICk6IE9ic2VydmFibGU8T0RhdGFFbnRpdHk8VD4+IHtcbiAgICBjb25zdCByZXMgPSB0aGlzLmVudGl0eShrZXkpO1xuICAgIGlmICghcmVzLmhhc0tleSgpKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdtb2RpZnk6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMubW9kaWZ5KGF0dHJzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0ga2V5IFRoZSBlbnRpdHkga2V5LlxuICAgKiBAcGFyYW0gZXRhZyBUaGUgZXRhZyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIGRlc3Ryb3koXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICkge1xuICAgIGNvbnN0IHJlcyA9IHRoaXMuZW50aXR5KGtleSk7XG4gICAgaWYgKCFyZXMuaGFzS2V5KCkpXG4gICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoJ2Rlc3Ryb3k6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMuZGVzdHJveShvcHRpb25zKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBTaG9ydGN1dHNcbiAgLyoqXG4gICAqIEdldCBvciBjcmVhdGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0ga2V5IFRoZSBlbnRpdHkga2V5LlxuICAgKiBAcGFyYW0gYXR0cnMgVGhlIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBldGFnIFRoZSBldGFnIGZvciB0aGUgZW50aXR5LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgZmV0Y2hPckNyZWF0ZShcbiAgICBrZXk6IEVudGl0eUtleTxUPixcbiAgICBhdHRyczogUGFydGlhbDxUPixcbiAgICB7IGV0YWcsIC4uLm9wdGlvbnMgfTogeyBldGFnPzogc3RyaW5nIH0gJiBPRGF0YU9wdGlvbnMgPSB7fVxuICApOiBPYnNlcnZhYmxlPE9EYXRhRW50aXR5PFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZmV0Y2hPbmUoa2V5LCB7IGV0YWcsIC4uLm9wdGlvbnMgfSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDQpIHJldHVybiB0aGlzLmNyZWF0ZShhdHRycywgb3B0aW9ucyk7XG4gICAgICAgIGVsc2UgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdmUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0gYXR0cnMgVGhlIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBtZXRob2QgVGhlIG1ldGhvZCB0byB1c2UuXG4gICAqIEBwYXJhbSBldGFnIFRoZSBldGFnIGZvciB0aGUgZW50aXR5LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgc2F2ZShcbiAgICBhdHRyczogUGFydGlhbDxUPixcbiAgICB7XG4gICAgICBldGFnLFxuICAgICAgbWV0aG9kLFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH06IHtcbiAgICAgIGV0YWc/OiBzdHJpbmc7XG4gICAgICBtZXRob2Q/OiAnY3JlYXRlJyB8ICd1cGRhdGUnIHwgJ21vZGlmeSc7XG4gICAgfSAmIE9EYXRhT3B0aW9ucyA9IHt9XG4gICkge1xuICAgIGxldCBzY2hlbWEgPSB0aGlzLnN0cnVjdHVyZWRUeXBlU2NoZW1hO1xuICAgIGlmIChtZXRob2QgPT09IHVuZGVmaW5lZCAmJiBzY2hlbWEgIT09IHVuZGVmaW5lZCAmJiBzY2hlbWEuaXNDb21wb3VuZEtleSgpKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgbmV3IEVycm9yKFxuICAgICAgICAgICAgJ3NhdmU6IENvbXBvc2l0ZSBrZXkgcmVxdWlyZSBhIHNwZWNpZmljIG1ldGhvZCwgdXNlIGNyZWF0ZS91cGRhdGUvcGF0Y2gnXG4gICAgICAgICAgKVxuICAgICAgKTtcbiAgICBsZXQga2V5ID0gc2NoZW1hICYmIHNjaGVtYS5yZXNvbHZlS2V5KGF0dHJzKTtcbiAgICBpZiAobWV0aG9kID09PSB1bmRlZmluZWQpIG1ldGhvZCA9IGtleSAhPT0gdW5kZWZpbmVkID8gJ3VwZGF0ZScgOiAnY3JlYXRlJztcbiAgICBpZiAoKG1ldGhvZCA9PT0gJ3VwZGF0ZScgfHwgbWV0aG9kID09PSAnbW9kaWZ5JykgJiYga2V5ID09PSB1bmRlZmluZWQpXG4gICAgICByZXR1cm4gdGhyb3dFcnJvcihcbiAgICAgICAgKCkgPT4gbmV3IEVycm9yKFwic2F2ZTogQ2FuJ3QgdXBkYXRlL3BhdGNoIGVudGl0eSB3aXRob3V0IGtleVwiKVxuICAgICAgKTtcbiAgICByZXR1cm4gbWV0aG9kID09PSAnY3JlYXRlJ1xuICAgICAgPyB0aGlzLmNyZWF0ZShhdHRycywgb3B0aW9ucylcbiAgICAgIDogbWV0aG9kID09PSAnbW9kaWZ5J1xuICAgICAgPyB0aGlzLm1vZGlmeShrZXksIGF0dHJzLCB7IGV0YWcsIC4uLm9wdGlvbnMgfSlcbiAgICAgIDogdGhpcy51cGRhdGUoa2V5LCBhdHRycywgeyBldGFnLCAuLi5vcHRpb25zIH0pO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxufVxuIl19
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9zZXJ2aWNlcy9lbnRpdHktc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFRN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTlDLE1BQU0sT0FBTyxxQkFBeUIsU0FBUSxrQkFBcUI7SUFDakU7O09BRUc7SUFDSSxRQUFRO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBSSxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsR0FBa0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFRTSxNQUFNLENBQUMsS0FBVTtRQUN0QixJQUFJLEtBQUssWUFBWSxVQUFVLEVBQUU7WUFDL0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztTQUN4QzthQUFNLElBQUksS0FBSyxZQUFZLGVBQWUsRUFBRTtZQUMzQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFB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RCxDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBPRGF0YUNvbGxlY3Rpb24gfSBmcm9tICcuLi9tb2RlbHMvY29sbGVjdGlvbic7XG5pbXBvcnQgeyBPRGF0YU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL21vZGVsJztcbmltcG9ydCB7XG4gIEVudGl0eUtleSxcbiAgT0RhdGFFbnRpdHksXG4gIE9EYXRhRW50aXR5UmVzb3VyY2UsXG4gIE9EYXRhRW50aXR5U2V0UmVzb3VyY2UsXG4gIE9EYXRhT3B0aW9ucyxcbn0gZnJvbSAnLi4vcmVzb3VyY2VzJztcbmltcG9ydCB7IE9EYXRhRW50aXR5U2VydmljZSB9IGZyb20gJy4vZW50aXR5JztcblxuZXhwb3J0IGNsYXNzIE9EYXRhRW50aXR5U2V0U2VydmljZTxUPiBleHRlbmRzIE9EYXRhRW50aXR5U2VydmljZTxUPiB7XG4gIC8qKlxuICAgKiBHZXQgdGhlIGVudGl0eSBzZXQgcmVzb3VyY2UgZm9yIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHB1YmxpYyBlbnRpdGllcygpOiBPRGF0YUVudGl0eVNldFJlc291cmNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5jbGllbnQuZW50aXR5U2V0PFQ+KHRoaXMubmFtZSwgdGhpcy5hcGlOYW1lT3JFbnRpdHlUeXBlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGVudGl0eSByZXNvdXJjZSBmb3IgdGhpcyBzZXJ2aWNlLlxuICAgKiBAcGFyYW0ga2V5IFRoZSBlbnRpdHkga2V5LlxuICAgKi9cbiAgcHVibGljIGVudGl0eShrZXk/OiBFbnRpdHlLZXk8VD4pOiBPRGF0YUVudGl0eVJlc291cmNlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdGllcygpLmVudGl0eShrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhbiBleGlzdGluZyBtb2RlbCB0byB0aGlzIHNlcnZpY2UuXG4gICAqIEBwYXJhbSBtb2RlbCBUaGUgbW9kZWwgdG8gYXR0YWNoLlxuICAgKi9cbiAgcHVibGljIGF0dGFjaDxNIGV4dGVuZHMgT0RhdGFNb2RlbDxUPj4obW9kZWw6IE0pOiB2b2lkO1xuICBwdWJsaWMgYXR0YWNoPEMgZXh0ZW5kcyBPRGF0YUNvbGxlY3Rpb248VCwgT0RhdGFNb2RlbDxUPj4+KG1vZGVsOiBDKTogdm9pZDtcbiAgcHVibGljIGF0dGFjaChtb2RlbDogYW55KTogdm9pZCB7XG4gICAgaWYgKG1vZGVsIGluc3RhbmNlb2YgT0RhdGFNb2RlbCkge1xuICAgICAgbW9kZWwuYXR0YWNoKHRoaXMuZW50aXRpZXMoKS5lbnRpdHkoKSk7XG4gICAgfSBlbHNlIGlmIChtb2RlbCBpbnN0YW5jZW9mIE9EYXRhQ29sbGVjdGlvbikge1xuICAgICAgbW9kZWwuYXR0YWNoKHRoaXMuZW50aXRpZXMoKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlbWEgZm9yIHRoZSBlbnRpdHkgc2V0LlxuICAgKi9cbiAgZ2V0IGVudGl0eVNldFNjaGVtYSgpIHtcbiAgICByZXR1cm4gdGhpcy5hcGkuZmluZEVudGl0eVNldEJ5TmFtZSh0aGlzLm5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbGwgZW50aXRpZXMgZnJvbSB0aGUgZW50aXR5IHNldC5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIGZldGNoQWxsKG9wdGlvbnM/OiBPRGF0YU9wdGlvbnMpIHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdGllcygpLmZldGNoQWxsKG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBlbnRpdGllcyBmcm9tIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0gd2l0aENvdW50IEdldCB0aGUgY291bnQgb2YgdGhlIGVudGl0aWVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgZmV0Y2hNYW55KFxuICAgIHRvcDogbnVtYmVyLFxuICAgIG9wdGlvbnM/OiBPRGF0YU9wdGlvbnMgJiB7IHdpdGhDb3VudD86IGJvb2xlYW4gfVxuICApIHtcbiAgICByZXR1cm4gdGhpcy5lbnRpdGllcygpLmZldGNoTWFueSh0b3AsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbiBlbnRpdHkgZnJvbSB0aGUgZW50aXR5IHNldC5cbiAgICogQHBhcmFtIGtleSBUaGUgZW50aXR5IGtleS5cbiAgICogQHBhcmFtIGV0YWcgVGhlIGV0YWcgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyBmZXRjaE9uZShcbiAgICBvcHRpb25zPzogT0RhdGFPcHRpb25zICYgeyBldGFnPzogc3RyaW5nIH1cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXRpZXMoKS5mZXRjaE9uZShvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0gYXR0cnMgVGhlIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyBjcmVhdGUoXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9uc1xuICApOiBPYnNlcnZhYmxlPE9EYXRhRW50aXR5PFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXRpZXMoKS5jcmVhdGUoYXR0cnMsIG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBhbiBlbnRpdHkgaW4gdGhlIGVudGl0eSBzZXQuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqIEBwYXJhbSBhdHRycyBUaGUgYXR0cmlidXRlcyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIGV0YWcgVGhlIGV0YWcgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGUoXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICk6IE9ic2VydmFibGU8T0RhdGFFbnRpdHk8VD4+IHtcbiAgICBjb25zdCByZXMgPSB0aGlzLmVudGl0eShrZXkpO1xuICAgIGlmICghcmVzLmhhc0tleSgpKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCd1cGRhdGU6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMudXBkYXRlKGF0dHJzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXRjaCBhbiBlbnRpdHkgaW4gdGhlIGVudGl0eSBzZXQuXG4gICAqIEBwYXJhbSBrZXkgVGhlIGVudGl0eSBrZXkuXG4gICAqIEBwYXJhbSBhdHRycyBUaGUgYXR0cmlidXRlcyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIGV0YWcgVGhlIGV0YWcgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgcmVxdWVzdC5cbiAgICovXG4gIHB1YmxpYyBtb2RpZnkoXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICk6IE9ic2VydmFibGU8T0RhdGFFbnRpdHk8VD4+IHtcbiAgICBjb25zdCByZXMgPSB0aGlzLmVudGl0eShrZXkpO1xuICAgIGlmICghcmVzLmhhc0tleSgpKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKCdtb2RpZnk6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMubW9kaWZ5KGF0dHJzLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0ga2V5IFRoZSBlbnRpdHkga2V5LlxuICAgKiBAcGFyYW0gZXRhZyBUaGUgZXRhZyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIGRlc3Ryb3koXG4gICAga2V5OiBFbnRpdHlLZXk8VD4sXG4gICAgb3B0aW9ucz86IE9EYXRhT3B0aW9ucyAmIHsgZXRhZz86IHN0cmluZyB9XG4gICkge1xuICAgIGNvbnN0IHJlcyA9IHRoaXMuZW50aXR5KGtleSk7XG4gICAgaWYgKCFyZXMuaGFzS2V5KCkpXG4gICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoJ2Rlc3Ryb3k6IFJlc291cmNlIHdpdGhvdXQga2V5JykpO1xuICAgIHJldHVybiByZXMuZGVzdHJveShvcHRpb25zKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBTaG9ydGN1dHNcbiAgLyoqXG4gICAqIEdldCBvciBjcmVhdGUgYW4gZW50aXR5IGluIHRoZSBlbnRpdHkgc2V0LlxuICAgKiBAcGFyYW0ga2V5IFRoZSBlbnRpdHkga2V5LlxuICAgKiBAcGFyYW0gYXR0cnMgVGhlIGF0dHJpYnV0ZXMgZm9yIHRoZSBlbnRpdHkuXG4gICAqIEBwYXJhbSBldGFnIFRoZSBldGFnIGZvciB0aGUgZW50aXR5LlxuICAgKiBAcGFyYW0gb3B0aW9ucyBUaGUgb3B0aW9ucyBmb3IgdGhlIHJlcXVlc3QuXG4gICAqL1xuICBwdWJsaWMgZmV0Y2hPckNyZWF0ZShcbiAgICBrZXk6IEVudGl0eUtleTxUPixcbiAgICBhdHRyczogUGFydGlhbDxUPixcbiAgICB7IGV0YWcsIC4uLm9wdGlvbnMgfTogeyBldGFnPzogc3RyaW5nIH0gJiBPRGF0YU9wdGlvbnMgPSB7fVxuICApOiBPYnNlcnZhYmxlPE9EYXRhRW50aXR5PFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuZW50aXR5KGtleSkuZmV0Y2goeyBldGFnLCAuLi5vcHRpb25zIH0pLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDA0KSByZXR1cm4gdGhpcy5jcmVhdGUoYXR0cnMsIG9wdGlvbnMpO1xuICAgICAgICBlbHNlIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTYXZlIGFuIGVudGl0eSBpbiB0aGUgZW50aXR5IHNldC5cbiAgICogQHBhcmFtIGF0dHJzIFRoZSBhdHRyaWJ1dGVzIGZvciB0aGUgZW50aXR5LlxuICAgKiBAcGFyYW0gbWV0aG9kIFRoZSBtZXRob2QgdG8gdXNlLlxuICAgKiBAcGFyYW0gZXRhZyBUaGUgZXRhZyBmb3IgdGhlIGVudGl0eS5cbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIG9wdGlvbnMgZm9yIHRoZSByZXF1ZXN0LlxuICAgKi9cbiAgcHVibGljIHNhdmUoXG4gICAgYXR0cnM6IFBhcnRpYWw8VD4sXG4gICAge1xuICAgICAgZXRhZyxcbiAgICAgIG1ldGhvZCxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9OiB7XG4gICAgICBldGFnPzogc3RyaW5nO1xuICAgICAgbWV0aG9kPzogJ2NyZWF0ZScgfCAndXBkYXRlJyB8ICdtb2RpZnknO1xuICAgIH0gJiBPRGF0YU9wdGlvbnMgPSB7fVxuICApIHtcbiAgICBsZXQgc2NoZW1hID0gdGhpcy5zdHJ1Y3R1cmVkVHlwZVNjaGVtYTtcbiAgICBpZiAobWV0aG9kID09PSB1bmRlZmluZWQgJiYgc2NoZW1hICE9PSB1bmRlZmluZWQgJiYgc2NoZW1hLmlzQ29tcG91bmRLZXkoKSlcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKFxuICAgICAgICAoKSA9PlxuICAgICAgICAgIG5ldyBFcnJvcihcbiAgICAgICAgICAgICdzYXZlOiBDb21wb3NpdGUga2V5IHJlcXVpcmUgYSBzcGVjaWZpYyBtZXRob2QsIHVzZSBjcmVhdGUvdXBkYXRlL3BhdGNoJ1xuICAgICAgICAgIClcbiAgICAgICk7XG4gICAgbGV0IGtleSA9IHNjaGVtYSAmJiBzY2hlbWEucmVzb2x2ZUtleShhdHRycyk7XG4gICAgaWYgKG1ldGhvZCA9PT0gdW5kZWZpbmVkKSBtZXRob2QgPSBrZXkgIT09IHVuZGVmaW5lZCA/ICd1cGRhdGUnIDogJ2NyZWF0ZSc7XG4gICAgaWYgKChtZXRob2QgPT09ICd1cGRhdGUnIHx8IG1ldGhvZCA9PT0gJ21vZGlmeScpICYmIGtleSA9PT0gdW5kZWZpbmVkKVxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoXG4gICAgICAgICgpID0+IG5ldyBFcnJvcihcInNhdmU6IENhbid0IHVwZGF0ZS9wYXRjaCBlbnRpdHkgd2l0aG91dCBrZXlcIilcbiAgICAgICk7XG4gICAgcmV0dXJuIG1ldGhvZCA9PT0gJ2NyZWF0ZSdcbiAgICAgID8gdGhpcy5jcmVhdGUoYXR0cnMsIG9wdGlvbnMpXG4gICAgICA6IG1ldGhvZCA9PT0gJ21vZGlmeSdcbiAgICAgID8gdGhpcy5tb2RpZnkoa2V5LCBhdHRycywgeyBldGFnLCAuLi5vcHRpb25zIH0pXG4gICAgICA6IHRoaXMudXBkYXRlKGtleSwgYXR0cnMsIHsgZXRhZywgLi4ub3B0aW9ucyB9KTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbn1cbiJdfQ==
|
|
@@ -90,4 +90,4 @@ export const Http = {
|
|
|
90
90
|
return boundaryEnd;
|
|
91
91
|
},
|
|
92
92
|
};
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi91dGlscy9odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHO0lBQ2xCLGVBQWU7SUFDZixnQkFBZ0IsQ0FDZCxHQUFHLE1BQWlFO1FBRXBFLElBQUksT0FBTyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3ZCLElBQUksS0FBSyxZQUFZLFdBQVcsRUFBRTtnQkFDaEMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUMzQixPQUFPLEdBQUcsQ0FBRSxLQUFxQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQ3pELENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQzlCLE9BQU8sQ0FDUixDQUFDO2dCQUNKLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNyQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7b0JBQzdDLE9BQU8sR0FBRyxDQUFDLEtBQUss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RUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxXQUFtQjtRQUNuQyxNQUFNLGdCQUFnQixHQUFhLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUQsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2pDLE1BQU0sUUFBUSxHQUFXLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUQsTUFBTSxpQkFBaUIsR0FDckIsc0JBQXNCLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsRCxPQUFPLGlCQUFpQixDQUFDO1NBQzFCO2FBQU07WUFDTCxPQUFPLEVBQUUsQ0FBQztTQUNYO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxpQkFBeUI7UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxXQUFXLEdBQVcsaUJBQWlCLEdBQUcsc0JBQXNCLENBQUM7UUFDdkUsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcblxuaW1wb3J0IHsgQk9VTkRBUllfUFJFRklYX1NVRkZJWCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUeXBlcyB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgSHR0cCA9IHtcbiAgLy9NZXJnZSBIZWFkZXJzXG4gIG1lcmdlSHR0cEhlYWRlcnMoXG4gICAgLi4udmFsdWVzOiAoSHR0cEhlYWRlcnMgfCB7IFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIH0pW11cbiAgKTogSHR0cEhlYWRlcnMge1xuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCk7XG4gICAgdmFsdWVzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBIdHRwSGVhZGVycykge1xuICAgICAgICB2YWx1ZS5rZXlzKCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgaGVhZGVycyA9ICgodmFsdWUgYXMgSHR0cEhlYWRlcnMpLmdldEFsbChrZXkpIHx8IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCB2KSA9PiBhY2MuYXBwZW5kKGtleSwgdiksXG4gICAgICAgICAgICBoZWFkZXJzXG4gICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2UgaWYgKFR5cGVzLmlzUGxhaW5PYmplY3QodmFsdWUpKSB7XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKHZhbHVlKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgICBoZWFkZXJzID0gKEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdKS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCB2KSA9PiBhY2MuYXBwZW5kKGtleSwgdiksXG4gICAgICAgICAgICBoZWFkZXJzXG4gICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGhlYWRlcnM7XG4gIH0sXG5cbiAgLy8gTWVyZ2UgUGFyYW1zXG4gIG1lcmdlSHR0cFBhcmFtcyhcbiAgICAuLi52YWx1ZXM6IChIdHRwUGFyYW1zIHwgeyBbcGFyYW06IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdIH0pW11cbiAgKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgdmFsdWVzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBIdHRwUGFyYW1zKSB7XG4gICAgICAgIHZhbHVlLmtleXMoKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICBwYXJhbXMgPSAoKHZhbHVlIGFzIEh0dHBQYXJhbXMpLmdldEFsbChrZXkpIHx8IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCB2KSA9PiBhY2MuYXBwZW5kKGtleSwgdiksXG4gICAgICAgICAgICBwYXJhbXNcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoVHlwZXMuaXNQbGFpbk9iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgT2JqZWN0LmVudHJpZXModmFsdWUpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIHBhcmFtcyA9IChBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXSkucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgICAgcGFyYW1zXG4gICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfSxcblxuICAvLyBTcGxpdCBQYXJhbXNcbiAgc3BsaXRIdHRwUGFyYW1zKFxuICAgIHBhcmFtczogSHR0cFBhcmFtcyxcbiAgICBrZXlzOiBzdHJpbmdbXVxuICApOiBbSHR0cFBhcmFtcywgSHR0cFBhcmFtc10ge1xuICAgIGxldCBvdGhlciA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgcGFyYW1zLmtleXMoKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmIChrZXlzLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgb3RoZXIgPSAocGFyYW1zLmdldEFsbChrZXkpIHx8IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgIG90aGVyXG4gICAgICAgICk7XG4gICAgICAgIHBhcmFtcyA9IHBhcmFtcy5kZWxldGUoa2V5KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gW3BhcmFtcywgb3RoZXJdO1xuICB9LFxuXG4gIC8vIFdpdGhvdXQgUGFyYW1zXG4gIHdpdGhvdXRIdHRwUGFyYW1zKHBhcmFtczogSHR0cFBhcmFtcywga2V5czogc3RyaW5nW10pOiBIdHRwUGFyYW1zIHtcbiAgICByZXR1cm4ga2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiBhY2MuZGVsZXRlKGtleSksIHBhcmFtcyk7XG4gIH0sXG5cbiAgcmVzb2x2ZUhlYWRlcktleShcbiAgICBoZWFkZXJzOiBIdHRwSGVhZGVycyB8IHsgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9LFxuICAgIG9wdGlvbnM6IHN0cmluZ1tdXG4gICk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGhlYWRlcnMgaW5zdGFuY2VvZiBIdHRwSGVhZGVycykge1xuICAgICAgcmV0dXJuIGhlYWRlcnMua2V5cygpLmZpbmQoKGspID0+IG9wdGlvbnMuaW5kZXhPZihrKSAhPT0gLTEpO1xuICAgIH0gZWxzZSBpZiAoVHlwZXMuaXNQbGFpbk9iamVjdChoZWFkZXJzKSkge1xuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGhlYWRlcnMpLmZpbmQoKGspID0+IG9wdGlvbnMuaW5kZXhPZihrKSAhPT0gLTEpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9LFxuXG4gIGhlYWRlclZhbHVlKGhlYWRlcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgcmVzOiBzdHJpbmcgPSBoZWFkZXIuc3BsaXQoJzsnKVswXS50cmltKCk7XG4gICAgcmVzID0gcmVzLnNwbGl0KCc6JylbMV0udHJpbSgpO1xuICAgIHJldHVybiByZXM7XG4gIH0sXG5cbiAgcGFyc2VSZXNwb25zZVN0YXR1cyhzdGF0dXNMaW5lOiBzdHJpbmcpOiB7XG4gICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgY29kZTogbnVtYmVyO1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgfSB7XG4gICAgY29uc3Qgc3RhdHVzID0gc3RhdHVzTGluZS5zcGxpdCgnICcpWzBdO1xuICAgIGNvbnN0IGNvZGUgPSBwYXJzZUludChzdGF0dXNMaW5lLnNwbGl0KCcgJylbMV0sIDEwKTtcbiAgICBjb25zdCBtZXNzYWdlID0gc3RhdHVzTGluZS5zcGxpdCgnICcpWzJdO1xuICAgIHJldHVybiB7IHN0YXR1cywgY29kZSwgbWVzc2FnZSB9O1xuICB9LFxuXG4gIGJvdW5kYXJ5RGVsaW1pdGVyKGNvbnRlbnRUeXBlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlUGFydHM6IHN0cmluZ1tdID0gY29udGVudFR5cGUuc3BsaXQoJzsnKTtcbiAgICBpZiAoY29udGVudFR5cGVQYXJ0cy5sZW5ndGggPT09IDIpIHtcbiAgICAgIGNvbnN0IGJvdW5kYXJ5OiBzdHJpbmcgPSBjb250ZW50VHlwZS5zcGxpdCgnOycpWzFdLnRyaW0oKTtcbiAgICAgIGNvbnN0IGJvdW5kYXJ5RGVsaW1pdGVyOiBzdHJpbmcgPVxuICAgICAgICBCT1VOREFSWV9QUkVGSVhfU1VGRklYICsgYm91bmRhcnkuc3BsaXQoJz0nKVsxXTtcbiAgICAgIHJldHVybiBib3VuZGFyeURlbGltaXRlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfSxcblxuICBib3VuZGFyeUVuZChib3VuZGFyeURlbGltaXRlcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIWJvdW5kYXJ5RGVsaW1pdGVyLmxlbmd0aCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBjb25zdCBib3VuZGFyeUVuZDogc3RyaW5nID0gYm91bmRhcnlEZWxpbWl0ZXIgKyBCT1VOREFSWV9QUkVGSVhfU1VGRklYO1xuICAgIHJldHVybiBib3VuZGFyeUVuZDtcbiAgfSxcbn07XG4iXX0=
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi91dGlscy9odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHO0lBQ2xCLGVBQWU7SUFDZixnQkFBZ0IsQ0FDZCxHQUFHLE1BQWlFO1FBRXBFLElBQUksT0FBTyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3ZCLElBQUksS0FBSyxZQUFZLFdBQVcsRUFBRTtnQkFDaEMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUMzQixPQUFPLEdBQUcsQ0FBRSxLQUFxQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQ3pELENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQzlCLE9BQU8sQ0FDUixDQUFDO2dCQUNKLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQU0sSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNyQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7b0JBQzdDLE9BQU8sR0FBRyxDQUFDLEtBQUss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QUUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsV0FBbUI7UUFDbkMsTUFBTSxnQkFBZ0IsR0FBYSxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFELElBQUksZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNqQyxNQUFNLFFBQVEsR0FBVyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQzFELE1BQU0saUJBQWlCLEdBQ3JCLHNCQUFzQixHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEQsT0FBTyxpQkFBaUIsQ0FBQztTQUMxQjthQUFNO1lBQ0wsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsaUJBQXlCO1FBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7WUFDN0IsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUNELE1BQU0sV0FBVyxHQUFXLGlCQUFpQixHQUFHLHNCQUFzQixDQUFDO1FBQ3ZFLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEhlYWRlcnMsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbmltcG9ydCB7IEJPVU5EQVJZX1BSRUZJWF9TVUZGSVggfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgVHlwZXMgfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IEh0dHAgPSB7XG4gIC8vTWVyZ2UgSGVhZGVyc1xuICBtZXJnZUh0dHBIZWFkZXJzKFxuICAgIC4uLnZhbHVlczogKEh0dHBIZWFkZXJzIHwgeyBbaGVhZGVyOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9KVtdXG4gICk6IEh0dHBIZWFkZXJzIHtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xuICAgIHZhbHVlcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgSHR0cEhlYWRlcnMpIHtcbiAgICAgICAgdmFsdWUua2V5cygpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIGhlYWRlcnMgPSAoKHZhbHVlIGFzIEh0dHBIZWFkZXJzKS5nZXRBbGwoa2V5KSB8fCBbXSkucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgICAgaGVhZGVyc1xuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmIChUeXBlcy5pc1BsYWluT2JqZWN0KHZhbHVlKSkge1xuICAgICAgICBPYmplY3QuZW50cmllcyh2YWx1ZSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgaGVhZGVycyA9IChBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXSkucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgICAgaGVhZGVyc1xuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBoZWFkZXJzO1xuICB9LFxuXG4gIC8vIE1lcmdlIFBhcmFtc1xuICBtZXJnZUh0dHBQYXJhbXMoXG4gICAgLi4udmFsdWVzOiAoXG4gICAgICB8IEh0dHBQYXJhbXNcbiAgICAgIHwge1xuICAgICAgICAgIFtwYXJhbTogc3RyaW5nXTpcbiAgICAgICAgICAgIHwgc3RyaW5nXG4gICAgICAgICAgICB8IG51bWJlclxuICAgICAgICAgICAgfCBib29sZWFuXG4gICAgICAgICAgICB8IFJlYWRvbmx5QXJyYXk8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj47XG4gICAgICAgIH1cbiAgICApW11cbiAgKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgdmFsdWVzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICBpZiAodmFsdWUgaW5zdGFuY2VvZiBIdHRwUGFyYW1zKSB7XG4gICAgICAgIHZhbHVlLmtleXMoKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICBwYXJhbXMgPSAoKHZhbHVlIGFzIEh0dHBQYXJhbXMpLmdldEFsbChrZXkpIHx8IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCB2KSA9PiBhY2MuYXBwZW5kKGtleSwgdiksXG4gICAgICAgICAgICBwYXJhbXNcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoVHlwZXMuaXNQbGFpbk9iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgT2JqZWN0LmVudHJpZXModmFsdWUpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgIHBhcmFtcyA9IChBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXSkucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgICAgcGFyYW1zXG4gICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfSxcblxuICAvLyBTcGxpdCBQYXJhbXNcbiAgc3BsaXRIdHRwUGFyYW1zKFxuICAgIHBhcmFtczogSHR0cFBhcmFtcyxcbiAgICBrZXlzOiBzdHJpbmdbXVxuICApOiBbSHR0cFBhcmFtcywgSHR0cFBhcmFtc10ge1xuICAgIGxldCBvdGhlciA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgcGFyYW1zLmtleXMoKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIGlmIChrZXlzLmluY2x1ZGVzKGtleSkpIHtcbiAgICAgICAgb3RoZXIgPSAocGFyYW1zLmdldEFsbChrZXkpIHx8IFtdKS5yZWR1Y2UoXG4gICAgICAgICAgKGFjYywgdikgPT4gYWNjLmFwcGVuZChrZXksIHYpLFxuICAgICAgICAgIG90aGVyXG4gICAgICAgICk7XG4gICAgICAgIHBhcmFtcyA9IHBhcmFtcy5kZWxldGUoa2V5KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gW3BhcmFtcywgb3RoZXJdO1xuICB9LFxuXG4gIC8vIFdpdGhvdXQgUGFyYW1zXG4gIHdpdGhvdXRIdHRwUGFyYW1zKHBhcmFtczogSHR0cFBhcmFtcywga2V5czogc3RyaW5nW10pOiBIdHRwUGFyYW1zIHtcbiAgICByZXR1cm4ga2V5cy5yZWR1Y2UoKGFjYywga2V5KSA9PiBhY2MuZGVsZXRlKGtleSksIHBhcmFtcyk7XG4gIH0sXG5cbiAgcmVzb2x2ZUhlYWRlcktleShcbiAgICBoZWFkZXJzOiBIdHRwSGVhZGVycyB8IHsgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9LFxuICAgIG9wdGlvbnM6IHN0cmluZ1tdXG4gICk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKGhlYWRlcnMgaW5zdGFuY2VvZiBIdHRwSGVhZGVycykge1xuICAgICAgcmV0dXJuIGhlYWRlcnMua2V5cygpLmZpbmQoKGspID0+IG9wdGlvbnMuaW5kZXhPZihrKSAhPT0gLTEpO1xuICAgIH0gZWxzZSBpZiAoVHlwZXMuaXNQbGFpbk9iamVjdChoZWFkZXJzKSkge1xuICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKGhlYWRlcnMpLmZpbmQoKGspID0+IG9wdGlvbnMuaW5kZXhPZihrKSAhPT0gLTEpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9LFxuXG4gIGhlYWRlclZhbHVlKGhlYWRlcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgcmVzOiBzdHJpbmcgPSBoZWFkZXIuc3BsaXQoJzsnKVswXS50cmltKCk7XG4gICAgcmVzID0gcmVzLnNwbGl0KCc6JylbMV0udHJpbSgpO1xuICAgIHJldHVybiByZXM7XG4gIH0sXG5cbiAgcGFyc2VSZXNwb25zZVN0YXR1cyhzdGF0dXNMaW5lOiBzdHJpbmcpOiB7XG4gICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgY29kZTogbnVtYmVyO1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgfSB7XG4gICAgY29uc3Qgc3RhdHVzID0gc3RhdHVzTGluZS5zcGxpdCgnICcpWzBdO1xuICAgIGNvbnN0IGNvZGUgPSBwYXJzZUludChzdGF0dXNMaW5lLnNwbGl0KCcgJylbMV0sIDEwKTtcbiAgICBjb25zdCBtZXNzYWdlID0gc3RhdHVzTGluZS5zcGxpdCgnICcpWzJdO1xuICAgIHJldHVybiB7IHN0YXR1cywgY29kZSwgbWVzc2FnZSB9O1xuICB9LFxuXG4gIGJvdW5kYXJ5RGVsaW1pdGVyKGNvbnRlbnRUeXBlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbnRlbnRUeXBlUGFydHM6IHN0cmluZ1tdID0gY29udGVudFR5cGUuc3BsaXQoJzsnKTtcbiAgICBpZiAoY29udGVudFR5cGVQYXJ0cy5sZW5ndGggPT09IDIpIHtcbiAgICAgIGNvbnN0IGJvdW5kYXJ5OiBzdHJpbmcgPSBjb250ZW50VHlwZS5zcGxpdCgnOycpWzFdLnRyaW0oKTtcbiAgICAgIGNvbnN0IGJvdW5kYXJ5RGVsaW1pdGVyOiBzdHJpbmcgPVxuICAgICAgICBCT1VOREFSWV9QUkVGSVhfU1VGRklYICsgYm91bmRhcnkuc3BsaXQoJz0nKVsxXTtcbiAgICAgIHJldHVybiBib3VuZGFyeURlbGltaXRlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfSxcblxuICBib3VuZGFyeUVuZChib3VuZGFyeURlbGltaXRlcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIWJvdW5kYXJ5RGVsaW1pdGVyLmxlbmd0aCkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICBjb25zdCBib3VuZGFyeUVuZDogc3RyaW5nID0gYm91bmRhcnlEZWxpbWl0ZXIgKyBCT1VOREFSWV9QUkVGSVhfU1VGRklYO1xuICAgIHJldHVybiBib3VuZGFyeUVuZDtcbiAgfSxcbn07XG4iXX0=
|
|
@@ -201,4 +201,4 @@ export const Objects = {
|
|
|
201
201
|
return cloneTarget;
|
|
202
202
|
},
|
|
203
203
|
};
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi91dGlscy9vYmplY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsU0FBUyxPQUFPLENBQUMsS0FBWSxFQUFFLFFBQTZDO0lBQzFFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2YsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUM1QixPQUFPLEVBQUUsS0FBSyxHQUFHLE1BQU0sRUFBRTtRQUN2QixRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQy9CO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLEdBQUcsQ0FBQyxHQUFXLEVBQUUsSUFBWSxFQUFFLEtBQVU7UUFDdkMseUZBQXlGO1FBQ3pGLE1BQU0sU0FBUyxHQUFHLENBQ2hCLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FDOUMsQ0FBQztRQUVYLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQy9CLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFNBQVM7Z0JBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsS0FBSyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUNqRCxPQUFPLEdBQUcsQ0FB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LElBQUksSUFBSSxRQUFRLEVBQUU7WUFDcEIsV0FBVyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7WUFDM0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNsRCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlcyB9IGZyb20gJy4vdHlwZXMnO1xuXG5mdW5jdGlvbiBmb3JFYWNoKGFycmF5OiBhbnlbXSwgaXRlcmF0ZWU6ICh2YWx1ZTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB2b2lkKSB7XG4gIGxldCBpbmRleCA9IC0xO1xuICBjb25zdCBsZW5ndGggPSBhcnJheS5sZW5ndGg7XG4gIHdoaWxlICgrK2luZGV4IDwgbGVuZ3RoKSB7XG4gICAgaXRlcmF0ZWUoYXJyYXlbaW5kZXhdLCBpbmRleCk7XG4gIH1cbiAgcmV0dXJuIGFycmF5O1xufVxuXG5leHBvcnQgY29uc3QgT2JqZWN0cyA9IHtcbiAgc2V0KG9iajogT2JqZWN0LCBwYXRoOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcbiAgICAvLyBDaGVjayBpZiBwYXRoIGlzIHN0cmluZyBvciBhcnJheS4gUmVnZXggOiBlbnN1cmUgdGhhdCB3ZSBkbyBub3QgaGF2ZSAnLicgYW5kIGJyYWNrZXRzLlxuICAgIGNvbnN0IHBhdGhBcnJheSA9IChcbiAgICAgIFR5cGVzLmlzQXJyYXkocGF0aCkgPyBwYXRoIDogcGF0aC5tYXRjaCgvKFteWy5cXF1dKSsvZylcbiAgICApIGFzIGFueVtdO1xuXG4gICAgcGF0aEFycmF5LnJlZHVjZSgoYWNjLCBrZXksIGkpID0+IHtcbiAgICAgIGlmIChhY2Nba2V5XSA9PT0gdW5kZWZpbmVkKSBhY2Nba2V5XSA9IHt9O1xuICAgICAgaWYgKGkgPT09IHBhdGhBcnJheS5sZW5ndGggLSAxKSBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgcmV0dXJuIGFjY1trZXldO1xuICAgIH0sIG9iaik7XG4gIH0sXG5cbiAgZ2V0KG9iajogT2JqZWN0LCBwYXRoOiBzdHJpbmcsIGRlZj86IGFueSk6IGFueSB7XG4gICAgLy8gQ2hlY2sgaWYgcGF0aCBpcyBzdHJpbmcgb3IgYXJyYXkuIFJlZ2V4IDogZW5zdXJlIHRoYXQgd2UgZG8gbm90IGhhdmUgJy4nIGFuZCBicmFja2V0cy5cbiAgICBjb25zdCBwYXRoQXJyYXkgPSAoXG4gICAgICBUeXBlcy5pc0FycmF5KHBhdGgpID8gcGF0aCA6IHBhdGgubWF0Y2goLyhbXlsuXFxdXSkrL2cpXG4gICAgKSBhcyBhbnlbXTtcbiAgICAvLyBGaW5kIHZhbHVlIGlmIGV4aXN0IHJldHVybiBvdGhlcndpc2UgcmV0dXJuIHVuZGVmaW5lZCB2YWx1ZTtcbiAgICByZXR1cm4gKFxuICAgICAgcGF0aEFycmF5LnJlZHVjZSgocHJldk9iaiwga2V5KSA9PiBwcmV2T2JqICYmIHByZXZPYmpba2V5XSwgb2JqKSB8fCBkZWZcbiAgICApO1xuICB9LFxuXG4gIHVuc2V0KG9iajogT2JqZWN0LCBwYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBDaGVjayBpZiBwYXRoIGlzIHN0cmluZyBvciBhcnJheS4gUmVnZXggOiBlbnN1cmUgdGhhdCB3ZSBkbyBub3QgaGF2ZSAnLicgYW5kIGJyYWNrZXRzLlxuICAgIGNvbnN0IHBhdGhBcnJheSA9IChcbiAgICAgIFR5cGVzLmlzQXJyYXkocGF0aCkgPyBwYXRoIDogcGF0aC5tYXRjaCgvKFteWy5cXF1dKSsvZylcbiAgICApIGFzIGFueVtdO1xuXG4gICAgcGF0aEFycmF5LnJlZHVjZSgoYWNjLCBrZXksIGkpID0+IHtcbiAgICAgIGlmIChpID09PSBwYXRoQXJyYXkubGVuZ3RoIC0gMSkgZGVsZXRlIGFjY1trZXldO1xuICAgICAgcmV0dXJuIGFjY1trZXldO1xuICAgIH0sIG9iaik7XG4gIH0sXG5cbiAgaGFzKG9iajogT2JqZWN0LCBwYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBDaGVjayBpZiBwYXRoIGlzIHN0cmluZyBvciBhcnJheS4gUmVnZXggOiBlbnN1cmUgdGhhdCB3ZSBkbyBub3QgaGF2ZSAnLicgYW5kIGJyYWNrZXRzLlxuICAgIGNvbnN0IHBhdGhBcnJheSA9IChcbiAgICAgIFR5cGVzLmlzQXJyYXkocGF0aCkgPyBwYXRoIDogcGF0aC5tYXRjaCgvKFteWy5cXF1dKSsvZylcbiAgICApIGFzIGFueVtdO1xuXG4gICAgcmV0dXJuICEhcGF0aEFycmF5LnJlZHVjZSgocHJldk9iaiwga2V5KSA9PiBwcmV2T2JqICYmIHByZXZPYmpba2V5XSwgb2JqKTtcbiAgfSxcblxuICBtZXJnZSh0YXJnZXQ6IE9iamVjdCwgc291cmNlOiBPYmplY3QpIHtcbiAgICBjb25zdCBtZXJnZSA9ICh0YXJnZXQ6IGFueSwgc291cmNlOiB7IFthdHRyOiBzdHJpbmddOiBhbnkgfSkgPT4ge1xuICAgICAgZm9yIChsZXQgYXR0ciBpbiBzb3VyY2UpIHtcbiAgICAgICAgbGV0IHZhbHVlID0gc291cmNlW2F0dHJdO1xuICAgICAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgVHlwZXMuaXNQbGFpbk9iamVjdCh2YWx1ZSkgJiYgYXR0ciBpbiB0YXJnZXQpIHtcbiAgICAgICAgICBtZXJnZSh0YXJnZXRbYXR0cl0sIHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YXJnZXRbYXR0cl0gIT09IHZhbHVlKSB7XG4gICAgICAgICAgdGFyZ2V0W2F0dHJdID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICAgIG1lcmdlKHRhcmdldCwgc291cmNlKTtcbiAgICByZXR1cm4gdGFyZ2V0O1xuICB9LFxuXG4gIGVxdWFsKG9iamVjdDE6IHsgW2F0dHI6IHN0cmluZ106IGFueSB9LCBvYmplY3QyOiB7IFthdHRyOiBzdHJpbmddOiBhbnkgfSkge1xuICAgIGNvbnN0IGtleXMxID0gT2JqZWN0LmtleXMob2JqZWN0MSk7XG4gICAgY29uc3Qga2V5czIgPSBPYmplY3Qua2V5cyhvYmplY3QyKTtcblxuICAgIGlmIChrZXlzMS5sZW5ndGggIT09IGtleXMyLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXMxKSB7XG4gICAgICBjb25zdCB2YWwxID0gb2JqZWN0MVtrZXldO1xuICAgICAgY29uc3QgdmFsMiA9IG9iamVjdDJba2V5XTtcbiAgICAgIGNvbnN0IGFyZU9iamVjdHMgPSBUeXBlcy5pc1BsYWluT2JqZWN0KHZhbDEpICYmIFR5cGVzLmlzUGxhaW5PYmplY3QodmFsMik7XG4gICAgICBpZiAoXG4gICAgICAgIChhcmVPYmplY3RzICYmICFPYmplY3RzLmVxdWFsKHZhbDEsIHZhbDIpKSB8fFxuICAgICAgICAoIWFyZU9iamVjdHMgJiYgdmFsMSAhPT0gdmFsMilcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9LFxuXG4gIGRpZmZlcmVuY2UoXG4gICAgb2JqZWN0MTogeyBbYXR0cjogc3RyaW5nXTogYW55IH0sXG4gICAgb2JqZWN0MjogeyBbYXR0cjogc3RyaW5nXTogYW55IH1cbiAgKSB7XG4gICAgaWYgKCFvYmplY3QyIHx8ICFUeXBlcy5pc1BsYWluT2JqZWN0KG9iamVjdDIpKSB7XG4gICAgICByZXR1cm4gb2JqZWN0MTtcbiAgICB9XG4gICAgdmFyIGRpZmZzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgIHZhciBrZXk7XG4gICAgdmFyIGFycmF5c01hdGNoID0gZnVuY3Rpb24gKGFycjE6IGFueVtdLCBhcnIyOiBhbnlbXSkge1xuICAgICAgaWYgKGFycjEubGVuZ3RoICE9PSBhcnIyLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycjEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGFycjFbaV0gIT09IGFycjJbaV0pIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcblxuICAgIHZhciBjb21wYXJlID0gZnVuY3Rpb24gKGl0ZW0xOiBhbnksIGl0ZW0yOiBhbnkgfCB1bmRlZmluZWQsIGtleTogc3RyaW5nKSB7XG4gICAgICBpZiAoaXRlbTIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBkaWZmc1trZXldID0gbnVsbDtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGl0ZW0xICE9PSB0eXBlb2YgaXRlbTIpIHtcbiAgICAgICAgZGlmZnNba2V5XSA9IGl0ZW0yO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChUeXBlcy5pc1BsYWluT2JqZWN0KGl0ZW0xKSkge1xuICAgICAgICB2YXIgb2JqRGlmZiA9IE9iamVjdHMuZGlmZmVyZW5jZShpdGVtMSwgaXRlbTIpO1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMob2JqRGlmZikubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBvYmpEaWZmO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbTEpKSB7XG4gICAgICAgIGlmICghYXJyYXlzTWF0Y2goaXRlbTEsIGl0ZW0yKSkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBpdGVtMjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpdGVtMSAhPT0gaXRlbTIpIHtcbiAgICAgICAgZGlmZnNba2V5XSA9IGl0ZW0yO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBmb3IgKGtleSBpbiBvYmplY3QxKSB7XG4gICAgICBpZiAob2JqZWN0MS5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIGNvbXBhcmUob2JqZWN0MVtrZXldLCBvYmplY3QyW2tleV0sIGtleSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChrZXkgaW4gb2JqZWN0Mikge1xuICAgICAgaWYgKG9iamVjdDIuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICBpZiAoIW9iamVjdDFba2V5XSAmJiBvYmplY3QxW2tleV0gIT09IG9iamVjdDJba2V5XSkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBvYmplY3QyW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRpZmZzO1xuICB9LFxuXG4gIHJlc29sdmVLZXkoa2V5OiBhbnksIHsgc2luZ2xlID0gdHJ1ZSB9OiB7IHNpbmdsZT86IGJvb2xlYW4gfSA9IHt9KSB7XG4gICAgY29uc3QgdHlwZSA9IFR5cGVzLnJhd1R5cGUoa2V5KTtcbiAgICBpZiAoWydudW1iZXInLCAnc3RyaW5nJ10uaW5kZXhPZih0eXBlKSAhPT0gLTEpIHJldHVybiBrZXk7XG4gICAgaWYgKHR5cGUgIT09ICdNYXAnICYmIHR5cGUgIT09ICdPYmplY3QnKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZXMgPVxuICAgICAgdHlwZSA9PT0gJ01hcCcgPyBBcnJheS5mcm9tKGtleS52YWx1ZXMoKSkgOiBPYmplY3QudmFsdWVzKGtleSk7XG4gICAgaWYgKHZhbHVlcy5sZW5ndGggPT09IDEgJiYgc2luZ2xlKSB7XG4gICAgICAvLyBTaW5nbGUgcHJpbWl0aXZlIGtleSB2YWx1ZVxuICAgICAga2V5ID0gdmFsdWVzWzBdO1xuICAgICAgcmV0dXJuICFUeXBlcy5pc0VtcHR5KGtleSkgPyBrZXkgOiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIGlmICh2YWx1ZXMuc29tZSgodikgPT4gdiA9PT0gdW5kZWZpbmVkKSkge1xuICAgICAgLy8gQ29tcG9zZSBrZXksIG5lZWRzIGFsbCB2YWx1ZXNcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG9iaiA9IHR5cGUgPT09ICdNYXAnID8gT2JqZWN0LmZyb21FbnRyaWVzKGtleSkgOiBrZXk7XG4gICAgICByZXR1cm4gIVR5cGVzLmlzRW1wdHkob2JqKSA/IG9iaiA6IHVuZGVmaW5lZDtcbiAgICB9XG4gIH0sXG5cbiAgY2xvbmUodGFyZ2V0OiBhbnksIG1hcD86IFdlYWtNYXA8b2JqZWN0LCBhbnk+KSB7XG4gICAgaWYgKG1hcCA9PT0gdW5kZWZpbmVkKSBtYXAgPSBuZXcgV2Vha01hcCgpO1xuICAgIC8vIGNsb25lIHByaW1pdGl2ZSB0eXBlc1xuICAgIGlmICh0eXBlb2YgdGFyZ2V0ICE9ICdvYmplY3QnIHx8IHRhcmdldCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cblxuICAgIGlmICgnY2xvbmUnIGluIHRhcmdldCkge1xuICAgICAgLy8gdGFyZ2V0IGlzIGEgY2xvbmVhYmxlIG9iamVjdFxuICAgICAgcmV0dXJuIHRhcmdldC5jbG9uZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGUgPSBUeXBlcy5yYXdUeXBlKHRhcmdldCk7XG4gICAgbGV0IGNsb25lVGFyZ2V0OiBhbnkgPSBudWxsO1xuXG4gICAgaWYgKG1hcC5nZXQodGFyZ2V0KSkge1xuICAgICAgcmV0dXJuIG1hcC5nZXQodGFyZ2V0KTtcbiAgICB9XG4gICAgbWFwLnNldCh0YXJnZXQsIGNsb25lVGFyZ2V0KTtcblxuICAgIGlmICh0eXBlICE9ICdTZXQnICYmIHR5cGUgIT0gJ01hcCcgJiYgdHlwZSAhPSAnQXJyYXknICYmIHR5cGUgIT0gJ09iamVjdCcpIHtcbiAgICAgIHJldHVybiBUeXBlcy5jbG9uZSh0YXJnZXQpO1xuICAgIH1cblxuICAgIC8vIGNsb25lIFNldFxuICAgIGlmICh0eXBlID09ICdTZXQnKSB7XG4gICAgICBjbG9uZVRhcmdldCA9IG5ldyBTZXQoKTtcbiAgICAgIHRhcmdldC5mb3JFYWNoKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgIGNsb25lVGFyZ2V0LmFkZCh0aGlzLmNsb25lKHZhbHVlLCBtYXApKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNsb25lVGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIGNsb25lIE1hcFxuICAgIGlmICh0eXBlID09ICdNYXAnKSB7XG4gICAgICBjbG9uZVRhcmdldCA9IG5ldyBNYXAoKTtcbiAgICAgIHRhcmdldC5mb3JFYWNoKCh2YWx1ZTogYW55LCBrZXk6IGFueSkgPT4ge1xuICAgICAgICBjbG9uZVRhcmdldC5zZXQoa2V5LCB0aGlzLmNsb25lKHZhbHVlLCBtYXApKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNsb25lVGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIGNsb25lIEFycmF5XG4gICAgaWYgKHR5cGUgPT0gJ0FycmF5Jykge1xuICAgICAgY2xvbmVUYXJnZXQgPSBuZXcgQXJyYXkoKTtcbiAgICAgIGZvckVhY2godGFyZ2V0LCAodmFsdWUsIGluZGV4KSA9PiB7XG4gICAgICAgIGNsb25lVGFyZ2V0W2luZGV4XSA9IHRoaXMuY2xvbmUodmFsdWUsIG1hcCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBjbG9uZSBub3JtYWwgT2JqZWN0XG4gICAgaWYgKHR5cGUgPT0gJ09iamVjdCcpIHtcbiAgICAgIGNsb25lVGFyZ2V0ID0gbmV3IE9iamVjdCgpO1xuICAgICAgZm9yRWFjaChPYmplY3Qua2V5cyh0YXJnZXQpLCAoa2V5LCBpbmRleCkgPT4ge1xuICAgICAgICBjbG9uZVRhcmdldFtrZXldID0gdGhpcy5jbG9uZSh0YXJnZXRba2V5XSwgbWFwKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjbG9uZVRhcmdldDtcbiAgfSxcbn07XG4iXX0=
|
|
204
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi91dGlscy9vYmplY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFaEMsU0FBUyxPQUFPLENBQUMsS0FBWSxFQUFFLFFBQTZDO0lBQzFFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2YsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUM1QixPQUFPLEVBQUUsS0FBSyxHQUFHLE1BQU0sRUFBRTtRQUN2QixRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQy9CO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLEdBQUcsQ0FBQyxHQUE0QixFQUFFLElBQVksRUFBRSxLQUFVO1FBQ3hELHlGQUF5RjtRQUN6RixNQUFNLFNBQVMsR0FBRyxDQUNoQixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQzlDLENBQUM7UUFFWCxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMvQixJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTO2dCQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLEtBQUssU0FBUyxDQUFDLE1BQU0sR0FBRyxDQUFDO2dCQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDakQsT0FBTyxHQUFHLENB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QixJQUFJLElBQUksSUFBSSxRQUFRLEVBQUU7WUFDcEIsV0FBVyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUM7WUFDM0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQzFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNsRCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUeXBlcyB9IGZyb20gJy4vdHlwZXMnO1xuXG5mdW5jdGlvbiBmb3JFYWNoKGFycmF5OiBhbnlbXSwgaXRlcmF0ZWU6ICh2YWx1ZTogYW55LCBpbmRleDogbnVtYmVyKSA9PiB2b2lkKSB7XG4gIGxldCBpbmRleCA9IC0xO1xuICBjb25zdCBsZW5ndGggPSBhcnJheS5sZW5ndGg7XG4gIHdoaWxlICgrK2luZGV4IDwgbGVuZ3RoKSB7XG4gICAgaXRlcmF0ZWUoYXJyYXlbaW5kZXhdLCBpbmRleCk7XG4gIH1cbiAgcmV0dXJuIGFycmF5O1xufVxuXG5leHBvcnQgY29uc3QgT2JqZWN0cyA9IHtcbiAgc2V0KG9iajogeyBbYXR0cjogc3RyaW5nXTogYW55IH0sIHBhdGg6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgIC8vIENoZWNrIGlmIHBhdGggaXMgc3RyaW5nIG9yIGFycmF5LiBSZWdleCA6IGVuc3VyZSB0aGF0IHdlIGRvIG5vdCBoYXZlICcuJyBhbmQgYnJhY2tldHMuXG4gICAgY29uc3QgcGF0aEFycmF5ID0gKFxuICAgICAgVHlwZXMuaXNBcnJheShwYXRoKSA/IHBhdGggOiBwYXRoLm1hdGNoKC8oW15bLlxcXV0pKy9nKVxuICAgICkgYXMgYW55W107XG5cbiAgICBwYXRoQXJyYXkucmVkdWNlKChhY2MsIGtleSwgaSkgPT4ge1xuICAgICAgaWYgKGFjY1trZXldID09PSB1bmRlZmluZWQpIGFjY1trZXldID0ge307XG4gICAgICBpZiAoaSA9PT0gcGF0aEFycmF5Lmxlbmd0aCAtIDEpIGFjY1trZXldID0gdmFsdWU7XG4gICAgICByZXR1cm4gYWNjW2tleV07XG4gICAgfSwgb2JqKTtcbiAgfSxcblxuICBnZXQob2JqOiB7IFthdHRyOiBzdHJpbmddOiBhbnkgfSwgcGF0aDogc3RyaW5nLCBkZWY/OiBhbnkpOiBhbnkge1xuICAgIC8vIENoZWNrIGlmIHBhdGggaXMgc3RyaW5nIG9yIGFycmF5LiBSZWdleCA6IGVuc3VyZSB0aGF0IHdlIGRvIG5vdCBoYXZlICcuJyBhbmQgYnJhY2tldHMuXG4gICAgY29uc3QgcGF0aEFycmF5ID0gKFxuICAgICAgVHlwZXMuaXNBcnJheShwYXRoKSA/IHBhdGggOiBwYXRoLm1hdGNoKC8oW15bLlxcXV0pKy9nKVxuICAgICkgYXMgYW55W107XG4gICAgLy8gRmluZCB2YWx1ZSBpZiBleGlzdCByZXR1cm4gb3RoZXJ3aXNlIHJldHVybiB1bmRlZmluZWQgdmFsdWU7XG4gICAgcmV0dXJuIChcbiAgICAgIHBhdGhBcnJheS5yZWR1Y2UoKHByZXZPYmosIGtleSkgPT4gcHJldk9iaiAmJiBwcmV2T2JqW2tleV0sIG9iaikgfHwgZGVmXG4gICAgKTtcbiAgfSxcblxuICB1bnNldChvYmo6IHsgW2F0dHI6IHN0cmluZ106IGFueSB9LCBwYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBDaGVjayBpZiBwYXRoIGlzIHN0cmluZyBvciBhcnJheS4gUmVnZXggOiBlbnN1cmUgdGhhdCB3ZSBkbyBub3QgaGF2ZSAnLicgYW5kIGJyYWNrZXRzLlxuICAgIGNvbnN0IHBhdGhBcnJheSA9IChcbiAgICAgIFR5cGVzLmlzQXJyYXkocGF0aCkgPyBwYXRoIDogcGF0aC5tYXRjaCgvKFteWy5cXF1dKSsvZylcbiAgICApIGFzIGFueVtdO1xuXG4gICAgcGF0aEFycmF5LnJlZHVjZSgoYWNjLCBrZXksIGkpID0+IHtcbiAgICAgIGlmIChpID09PSBwYXRoQXJyYXkubGVuZ3RoIC0gMSkgZGVsZXRlIGFjY1trZXldO1xuICAgICAgcmV0dXJuIGFjY1trZXldO1xuICAgIH0sIG9iaik7XG4gIH0sXG5cbiAgaGFzKG9iajogeyBbYXR0cjogc3RyaW5nXTogYW55IH0sIHBhdGg6IHN0cmluZykge1xuICAgIC8vIENoZWNrIGlmIHBhdGggaXMgc3RyaW5nIG9yIGFycmF5LiBSZWdleCA6IGVuc3VyZSB0aGF0IHdlIGRvIG5vdCBoYXZlICcuJyBhbmQgYnJhY2tldHMuXG4gICAgY29uc3QgcGF0aEFycmF5ID0gKFxuICAgICAgVHlwZXMuaXNBcnJheShwYXRoKSA/IHBhdGggOiBwYXRoLm1hdGNoKC8oW15bLlxcXV0pKy9nKVxuICAgICkgYXMgYW55W107XG5cbiAgICByZXR1cm4gISFwYXRoQXJyYXkucmVkdWNlKChwcmV2T2JqLCBrZXkpID0+IHByZXZPYmogJiYgcHJldk9ialtrZXldLCBvYmopO1xuICB9LFxuXG4gIG1lcmdlKHRhcmdldDogeyBbYXR0cjogc3RyaW5nXTogYW55IH0sIHNvdXJjZTogeyBbYXR0cjogc3RyaW5nXTogYW55IH0pIHtcbiAgICBjb25zdCBtZXJnZSA9ICh0YXJnZXQ6IGFueSwgc291cmNlOiB7IFthdHRyOiBzdHJpbmddOiBhbnkgfSkgPT4ge1xuICAgICAgZm9yIChsZXQgYXR0ciBpbiBzb3VyY2UpIHtcbiAgICAgICAgbGV0IHZhbHVlID0gc291cmNlW2F0dHJdO1xuICAgICAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgVHlwZXMuaXNQbGFpbk9iamVjdCh2YWx1ZSkgJiYgYXR0ciBpbiB0YXJnZXQpIHtcbiAgICAgICAgICBtZXJnZSh0YXJnZXRbYXR0cl0sIHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YXJnZXRbYXR0cl0gIT09IHZhbHVlKSB7XG4gICAgICAgICAgdGFyZ2V0W2F0dHJdID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICAgIG1lcmdlKHRhcmdldCwgc291cmNlKTtcbiAgICByZXR1cm4gdGFyZ2V0O1xuICB9LFxuXG4gIGVxdWFsKG9iamVjdDE6IHsgW2F0dHI6IHN0cmluZ106IGFueSB9LCBvYmplY3QyOiB7IFthdHRyOiBzdHJpbmddOiBhbnkgfSkge1xuICAgIGNvbnN0IGtleXMxID0gT2JqZWN0LmtleXMob2JqZWN0MSk7XG4gICAgY29uc3Qga2V5czIgPSBPYmplY3Qua2V5cyhvYmplY3QyKTtcblxuICAgIGlmIChrZXlzMS5sZW5ndGggIT09IGtleXMyLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXMxKSB7XG4gICAgICBjb25zdCB2YWwxID0gb2JqZWN0MVtrZXldO1xuICAgICAgY29uc3QgdmFsMiA9IG9iamVjdDJba2V5XTtcbiAgICAgIGNvbnN0IGFyZU9iamVjdHMgPSBUeXBlcy5pc1BsYWluT2JqZWN0KHZhbDEpICYmIFR5cGVzLmlzUGxhaW5PYmplY3QodmFsMik7XG4gICAgICBpZiAoXG4gICAgICAgIChhcmVPYmplY3RzICYmICFPYmplY3RzLmVxdWFsKHZhbDEsIHZhbDIpKSB8fFxuICAgICAgICAoIWFyZU9iamVjdHMgJiYgdmFsMSAhPT0gdmFsMilcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9LFxuXG4gIGRpZmZlcmVuY2UoXG4gICAgb2JqZWN0MTogeyBbYXR0cjogc3RyaW5nXTogYW55IH0sXG4gICAgb2JqZWN0MjogeyBbYXR0cjogc3RyaW5nXTogYW55IH1cbiAgKSB7XG4gICAgaWYgKCFvYmplY3QyIHx8ICFUeXBlcy5pc1BsYWluT2JqZWN0KG9iamVjdDIpKSB7XG4gICAgICByZXR1cm4gb2JqZWN0MTtcbiAgICB9XG4gICAgdmFyIGRpZmZzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgIHZhciBrZXk7XG4gICAgdmFyIGFycmF5c01hdGNoID0gZnVuY3Rpb24gKGFycjE6IGFueVtdLCBhcnIyOiBhbnlbXSkge1xuICAgICAgaWYgKGFycjEubGVuZ3RoICE9PSBhcnIyLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFycjEubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGFycjFbaV0gIT09IGFycjJbaV0pIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcblxuICAgIHZhciBjb21wYXJlID0gZnVuY3Rpb24gKGl0ZW0xOiBhbnksIGl0ZW0yOiBhbnkgfCB1bmRlZmluZWQsIGtleTogc3RyaW5nKSB7XG4gICAgICBpZiAoaXRlbTIgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBkaWZmc1trZXldID0gbnVsbDtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGl0ZW0xICE9PSB0eXBlb2YgaXRlbTIpIHtcbiAgICAgICAgZGlmZnNba2V5XSA9IGl0ZW0yO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChUeXBlcy5pc1BsYWluT2JqZWN0KGl0ZW0xKSkge1xuICAgICAgICB2YXIgb2JqRGlmZiA9IE9iamVjdHMuZGlmZmVyZW5jZShpdGVtMSwgaXRlbTIpO1xuICAgICAgICBpZiAoT2JqZWN0LmtleXMob2JqRGlmZikubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBvYmpEaWZmO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbTEpKSB7XG4gICAgICAgIGlmICghYXJyYXlzTWF0Y2goaXRlbTEsIGl0ZW0yKSkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBpdGVtMjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpdGVtMSAhPT0gaXRlbTIpIHtcbiAgICAgICAgZGlmZnNba2V5XSA9IGl0ZW0yO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBmb3IgKGtleSBpbiBvYmplY3QxKSB7XG4gICAgICBpZiAob2JqZWN0MS5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XG4gICAgICAgIGNvbXBhcmUob2JqZWN0MVtrZXldLCBvYmplY3QyW2tleV0sIGtleSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9yIChrZXkgaW4gb2JqZWN0Mikge1xuICAgICAgaWYgKG9iamVjdDIuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICBpZiAoIW9iamVjdDFba2V5XSAmJiBvYmplY3QxW2tleV0gIT09IG9iamVjdDJba2V5XSkge1xuICAgICAgICAgIGRpZmZzW2tleV0gPSBvYmplY3QyW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGRpZmZzO1xuICB9LFxuXG4gIHJlc29sdmVLZXkoa2V5OiBhbnksIHsgc2luZ2xlID0gdHJ1ZSB9OiB7IHNpbmdsZT86IGJvb2xlYW4gfSA9IHt9KSB7XG4gICAgY29uc3QgdHlwZSA9IFR5cGVzLnJhd1R5cGUoa2V5KTtcbiAgICBpZiAoWydudW1iZXInLCAnc3RyaW5nJ10uaW5kZXhPZih0eXBlKSAhPT0gLTEpIHJldHVybiBrZXk7XG4gICAgaWYgKHR5cGUgIT09ICdNYXAnICYmIHR5cGUgIT09ICdPYmplY3QnKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZXMgPVxuICAgICAgdHlwZSA9PT0gJ01hcCcgPyBBcnJheS5mcm9tKGtleS52YWx1ZXMoKSkgOiBPYmplY3QudmFsdWVzKGtleSk7XG4gICAgaWYgKHZhbHVlcy5sZW5ndGggPT09IDEgJiYgc2luZ2xlKSB7XG4gICAgICAvLyBTaW5nbGUgcHJpbWl0aXZlIGtleSB2YWx1ZVxuICAgICAga2V5ID0gdmFsdWVzWzBdO1xuICAgICAgcmV0dXJuICFUeXBlcy5pc0VtcHR5KGtleSkgPyBrZXkgOiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIGlmICh2YWx1ZXMuc29tZSgodikgPT4gdiA9PT0gdW5kZWZpbmVkKSkge1xuICAgICAgLy8gQ29tcG9zZSBrZXksIG5lZWRzIGFsbCB2YWx1ZXNcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IG9iaiA9IHR5cGUgPT09ICdNYXAnID8gT2JqZWN0LmZyb21FbnRyaWVzKGtleSkgOiBrZXk7XG4gICAgICByZXR1cm4gIVR5cGVzLmlzRW1wdHkob2JqKSA/IG9iaiA6IHVuZGVmaW5lZDtcbiAgICB9XG4gIH0sXG5cbiAgY2xvbmUodGFyZ2V0OiBhbnksIG1hcD86IFdlYWtNYXA8b2JqZWN0LCBhbnk+KSB7XG4gICAgaWYgKG1hcCA9PT0gdW5kZWZpbmVkKSBtYXAgPSBuZXcgV2Vha01hcCgpO1xuICAgIC8vIGNsb25lIHByaW1pdGl2ZSB0eXBlc1xuICAgIGlmICh0eXBlb2YgdGFyZ2V0ICE9ICdvYmplY3QnIHx8IHRhcmdldCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGFyZ2V0O1xuICAgIH1cblxuICAgIGlmICgnY2xvbmUnIGluIHRhcmdldCkge1xuICAgICAgLy8gdGFyZ2V0IGlzIGEgY2xvbmVhYmxlIG9iamVjdFxuICAgICAgcmV0dXJuIHRhcmdldC5jbG9uZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHR5cGUgPSBUeXBlcy5yYXdUeXBlKHRhcmdldCk7XG4gICAgbGV0IGNsb25lVGFyZ2V0OiBhbnkgPSBudWxsO1xuXG4gICAgaWYgKG1hcC5nZXQodGFyZ2V0KSkge1xuICAgICAgcmV0dXJuIG1hcC5nZXQodGFyZ2V0KTtcbiAgICB9XG4gICAgbWFwLnNldCh0YXJnZXQsIGNsb25lVGFyZ2V0KTtcblxuICAgIGlmICh0eXBlICE9ICdTZXQnICYmIHR5cGUgIT0gJ01hcCcgJiYgdHlwZSAhPSAnQXJyYXknICYmIHR5cGUgIT0gJ09iamVjdCcpIHtcbiAgICAgIHJldHVybiBUeXBlcy5jbG9uZSh0YXJnZXQpO1xuICAgIH1cblxuICAgIC8vIGNsb25lIFNldFxuICAgIGlmICh0eXBlID09ICdTZXQnKSB7XG4gICAgICBjbG9uZVRhcmdldCA9IG5ldyBTZXQoKTtcbiAgICAgIHRhcmdldC5mb3JFYWNoKCh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgIGNsb25lVGFyZ2V0LmFkZCh0aGlzLmNsb25lKHZhbHVlLCBtYXApKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNsb25lVGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIGNsb25lIE1hcFxuICAgIGlmICh0eXBlID09ICdNYXAnKSB7XG4gICAgICBjbG9uZVRhcmdldCA9IG5ldyBNYXAoKTtcbiAgICAgIHRhcmdldC5mb3JFYWNoKCh2YWx1ZTogYW55LCBrZXk6IGFueSkgPT4ge1xuICAgICAgICBjbG9uZVRhcmdldC5zZXQoa2V5LCB0aGlzLmNsb25lKHZhbHVlLCBtYXApKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNsb25lVGFyZ2V0O1xuICAgIH1cblxuICAgIC8vIGNsb25lIEFycmF5XG4gICAgaWYgKHR5cGUgPT0gJ0FycmF5Jykge1xuICAgICAgY2xvbmVUYXJnZXQgPSBuZXcgQXJyYXkoKTtcbiAgICAgIGZvckVhY2godGFyZ2V0LCAodmFsdWUsIGluZGV4KSA9PiB7XG4gICAgICAgIGNsb25lVGFyZ2V0W2luZGV4XSA9IHRoaXMuY2xvbmUodmFsdWUsIG1hcCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBjbG9uZSBub3JtYWwgT2JqZWN0XG4gICAgaWYgKHR5cGUgPT0gJ09iamVjdCcpIHtcbiAgICAgIGNsb25lVGFyZ2V0ID0gbmV3IE9iamVjdCgpO1xuICAgICAgZm9yRWFjaChPYmplY3Qua2V5cyh0YXJnZXQpLCAoa2V5LCBpbmRleCkgPT4ge1xuICAgICAgICBjbG9uZVRhcmdldFtrZXldID0gdGhpcy5jbG9uZSh0YXJnZXRba2V5XSwgbWFwKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBjbG9uZVRhcmdldDtcbiAgfSxcbn07XG4iXX0=
|