@cratis/arc 18.1.0 → 18.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/commands/Command.ts +23 -0
  2. package/commands/CommandResult.ts +20 -0
  3. package/commands/for_Command/given/a_command.ts +1 -0
  4. package/commands/for_Command/when_executing/with_custom_http_headers.ts +1 -0
  5. package/commands/for_Command/when_executing/with_microservice_header.ts +1 -0
  6. package/commands/for_Command/when_executing/with_missing_required_property.ts +39 -0
  7. package/commands/for_Command/when_executing/with_origin_and_api_base_path.ts +1 -0
  8. package/dist/cjs/commands/Command.d.ts +1 -0
  9. package/dist/cjs/commands/Command.d.ts.map +1 -1
  10. package/dist/cjs/commands/Command.js +16 -0
  11. package/dist/cjs/commands/Command.js.map +1 -1
  12. package/dist/cjs/commands/CommandResult.d.ts +1 -0
  13. package/dist/cjs/commands/CommandResult.d.ts.map +1 -1
  14. package/dist/cjs/commands/CommandResult.js +19 -0
  15. package/dist/cjs/commands/CommandResult.js.map +1 -1
  16. package/dist/cjs/validation/ValidationResultSeverity.js +10 -0
  17. package/dist/cjs/validation/ValidationResultSeverity.js.map +1 -0
  18. package/dist/esm/commands/Command.d.ts +1 -0
  19. package/dist/esm/commands/Command.d.ts.map +1 -1
  20. package/dist/esm/commands/Command.js +16 -0
  21. package/dist/esm/commands/Command.js.map +1 -1
  22. package/dist/esm/commands/CommandResult.d.ts +1 -0
  23. package/dist/esm/commands/CommandResult.d.ts.map +1 -1
  24. package/dist/esm/commands/CommandResult.js +19 -0
  25. package/dist/esm/commands/CommandResult.js.map +1 -1
  26. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  27. package/dist/esm/validation/ValidationResultSeverity.js +4 -2
  28. package/dist/esm/validation/ValidationResultSeverity.js.map +1 -1
  29. package/package.json +1 -1
@@ -10,6 +10,8 @@ import { joinPaths } from '../joinPaths';
10
10
  import { UrlHelpers } from '../UrlHelpers';
11
11
  import { GetHttpHeaders } from '../GetHttpHeaders';
12
12
  import { PropertyDescriptor } from '../reflection/PropertyDescriptor';
13
+ import { ValidationResult } from '../validation/ValidationResult';
14
+ import { ValidationResultSeverity } from '../validation/ValidationResultSeverity';
13
15
 
14
16
  type Callback = {
15
17
  callback: WeakRef<PropertyChanged>;
@@ -68,6 +70,11 @@ export abstract class Command<TCommandContent = object, TCommandResponse = objec
68
70
 
69
71
  /** @inheritdoc */
70
72
  async execute(): Promise<CommandResult<TCommandResponse>> {
73
+ const validationErrors = this.validateRequiredProperties();
74
+ if (validationErrors.length > 0) {
75
+ return CommandResult.validationFailed(validationErrors) as CommandResult<TCommandResponse>;
76
+ }
77
+
71
78
  let actualRoute = this.route;
72
79
 
73
80
  if (this.requestParameters && this.requestParameters.length > 0) {
@@ -95,6 +102,22 @@ export abstract class Command<TCommandContent = object, TCommandResponse = objec
95
102
  return payload;
96
103
  }
97
104
 
105
+ private validateRequiredProperties(): ValidationResult[] {
106
+ const validationErrors: ValidationResult[] = [];
107
+ this.properties.forEach(property => {
108
+ const value = this[property];
109
+ if (value === undefined || value === null || value === '') {
110
+ validationErrors.push(new ValidationResult(
111
+ ValidationResultSeverity.Error,
112
+ `${property} is required`,
113
+ [property],
114
+ null
115
+ ));
116
+ }
117
+ });
118
+ return validationErrors;
119
+ }
120
+
98
121
  private buildHeaders(): HeadersInit {
99
122
  const customHeaders = this._httpHeadersCallback?.() ?? {};
100
123
  const headers = {
@@ -85,6 +85,26 @@ export class CommandResult<TResponse = object> implements ICommandResult<TRespon
85
85
  }, Object, false);
86
86
  };
87
87
 
88
+ static validationFailed = (validationResults: ValidationResult[]): CommandResult => {
89
+ return new CommandResult({
90
+ correlationId: Guid.empty.toString(),
91
+ isSuccess: false,
92
+ isAuthorized: true,
93
+ isValid: false,
94
+ hasExceptions: false,
95
+ validationResults: validationResults.map(_ => ({
96
+ severity: _.severity,
97
+ message: _.message,
98
+ members: _.members,
99
+ state: _.state
100
+ })),
101
+ exceptionMessages: [],
102
+ exceptionStackTrace: '',
103
+ authorizationFailureReason: '',
104
+ response: null
105
+ }, Object, false);
106
+ };
107
+
88
108
  /** @inheritdoc */
89
109
  readonly correlationId: Guid;
90
110
 
@@ -13,6 +13,7 @@ export class a_command {
13
13
  this.command.route = '/test-route';
14
14
  this.command.setOrigin('http://localhost');
15
15
  this.command.setApiBasePath('/api');
16
+ this.command.someProperty = 'test-value';
16
17
  this.fetchStub = sinon.stub(globalThis, 'fetch');
17
18
  }
18
19
  }
@@ -14,6 +14,7 @@ describe("when executing with custom http headers", given(class {
14
14
  this.command.route = '/test-route';
15
15
  this.command.setOrigin('http://localhost');
16
16
  this.command.setApiBasePath('/api');
17
+ this.command.someProperty = 'test-value';
17
18
  this.command.setHttpHeadersCallback(() => ({
18
19
  'X-Custom-Header': 'custom-value',
19
20
  'Authorization': 'Bearer token123'
@@ -16,6 +16,7 @@ describe("when executing with microservice header", given(class {
16
16
  this.command.route = '/test-route';
17
17
  this.command.setOrigin('http://localhost');
18
18
  this.command.setApiBasePath('/api');
19
+ this.command.someProperty = 'test-value';
19
20
  this.command.setMicroservice('my-microservice');
20
21
  this.fetchStub = sinon.stub(globalThis, 'fetch');
21
22
  this.originalMicroserviceHeader = Globals.microserviceHttpHeader;
@@ -0,0 +1,39 @@
1
+ // Copyright (c) Cratis. All rights reserved.
2
+ // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3
+
4
+ import sinon from 'sinon';
5
+ import { SomeCommand } from '../SomeCommand';
6
+ import { given } from '../../../given';
7
+ import { CommandResult } from '../../CommandResult';
8
+
9
+ describe("when executing with missing required property", given(class {
10
+ command: SomeCommand;
11
+ fetchStub: sinon.SinonStub;
12
+
13
+ constructor() {
14
+ this.command = new SomeCommand();
15
+ this.command.route = '/test-route';
16
+ this.command.setOrigin('http://localhost');
17
+ this.command.setApiBasePath('/api');
18
+ // Intentionally NOT setting someProperty to test validation
19
+ this.fetchStub = sinon.stub(globalThis, 'fetch');
20
+ }
21
+ }, context => {
22
+ let result: CommandResult<object>;
23
+
24
+ beforeEach(async () => {
25
+ result = await context.command.execute();
26
+ });
27
+
28
+ afterEach(() => {
29
+ context.fetchStub.restore();
30
+ });
31
+
32
+ it("should_not_call_fetch", () => context.fetchStub.called.should.be.false);
33
+ it("should_return_failed_result", () => result.isSuccess.should.be.false);
34
+ it("should_return_invalid_result", () => result.isValid.should.be.false);
35
+ it("should_return_authorized_result", () => result.isAuthorized.should.be.true);
36
+ it("should_have_validation_results", () => result.validationResults.length.should.equal(1));
37
+ it("should_have_validation_message_for_property", () => result.validationResults[0].message.should.equal('someProperty is required'));
38
+ it("should_have_validation_member_for_property", () => result.validationResults[0].members[0].should.equal('someProperty'));
39
+ }));
@@ -14,6 +14,7 @@ describe("when executing with origin and api base path", given(class {
14
14
  this.command.route = '/items';
15
15
  this.command.setOrigin('https://api.example.com');
16
16
  this.command.setApiBasePath('/api/v1');
17
+ this.command.someProperty = 'test-value';
17
18
  this.fetchStub = sinon.stub(globalThis, 'fetch');
18
19
  }
19
20
  }, context => {
@@ -27,6 +27,7 @@ export declare abstract class Command<TCommandContent = object, TCommandResponse
27
27
  execute(): Promise<CommandResult<TCommandResponse>>;
28
28
  validate(): Promise<CommandResult<TCommandResponse>>;
29
29
  private buildPayload;
30
+ private validateRequiredProperties;
30
31
  private buildHeaders;
31
32
  private performRequest;
32
33
  clear(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../commands/Command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAUtE,8BAAsB,OAAO,CAAC,eAAe,GAAG,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAE,YAAW,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAoBzH,QAAQ,CAAC,aAAa,EAAE,WAAW;IAAW,QAAQ,CAAC,yBAAyB,EAAE,OAAO;IAnBrG,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,oBAAoB,CAAiB;IAC7C,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,KAAK,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC3C,QAAQ,KAAK,UAAU,IAAI,MAAM,EAAE,CAAC;IAEpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAkB;gBAOf,aAAa,EAAE,WAAW,YAAS,EAAW,yBAAyB,EAAE,OAAO;IAQrG,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK/B,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKhD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAenD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAK1D,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;YAeN,cAAc;IA6B5B,KAAK,IAAI,IAAI;IASb,gBAAgB,CAAC,MAAM,EAAE,eAAe;IAWxC,iCAAiC;IAUjC,aAAa,IAAI,IAAI;IAOrB,IAAI,UAAU,YAEb;IAGD,eAAe,CAAC,QAAQ,EAAE,MAAM;IAehC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM;IAO5D,OAAO,CAAC,gBAAgB;CAG3B"}
1
+ {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../commands/Command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAYtE,8BAAsB,OAAO,CAAC,eAAe,GAAG,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAE,YAAW,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAoBzH,QAAQ,CAAC,aAAa,EAAE,WAAW;IAAW,QAAQ,CAAC,yBAAyB,EAAE,OAAO;IAnBrG,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,oBAAoB,CAAiB;IAC7C,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,KAAK,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC3C,QAAQ,KAAK,UAAU,IAAI,MAAM,EAAE,CAAC;IAEpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAkB;gBAOf,aAAa,EAAE,WAAW,YAAS,EAAW,yBAAyB,EAAE,OAAO;IAQrG,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK/B,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKhD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAoBnD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAK1D,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,YAAY;YAeN,cAAc;IA6B5B,KAAK,IAAI,IAAI;IASb,gBAAgB,CAAC,MAAM,EAAE,eAAe;IAWxC,iCAAiC;IAUjC,aAAa,IAAI,IAAI;IAOrB,IAAI,UAAU,YAEb;IAGD,eAAe,CAAC,QAAQ,EAAE,MAAM;IAehC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM;IAO5D,OAAO,CAAC,gBAAgB;CAG3B"}
@@ -5,6 +5,8 @@ var fundamentals = require('@cratis/fundamentals');
5
5
  var Globals = require('../Globals.js');
6
6
  var joinPaths = require('../joinPaths.js');
7
7
  var UrlHelpers = require('../UrlHelpers.js');
8
+ var ValidationResult = require('../validation/ValidationResult.js');
9
+ var ValidationResultSeverity = require('../validation/ValidationResultSeverity.js');
8
10
 
9
11
  class Command {
10
12
  _responseType;
@@ -37,6 +39,10 @@ class Command {
37
39
  this._httpHeadersCallback = callback;
38
40
  }
39
41
  async execute() {
42
+ const validationErrors = this.validateRequiredProperties();
43
+ if (validationErrors.length > 0) {
44
+ return CommandResult.CommandResult.validationFailed(validationErrors);
45
+ }
40
46
  let actualRoute = this.route;
41
47
  if (this.requestParameters && this.requestParameters.length > 0) {
42
48
  const payload = this.buildPayload();
@@ -58,6 +64,16 @@ class Command {
58
64
  });
59
65
  return payload;
60
66
  }
67
+ validateRequiredProperties() {
68
+ const validationErrors = [];
69
+ this.properties.forEach(property => {
70
+ const value = this[property];
71
+ if (value === undefined || value === null || value === '') {
72
+ validationErrors.push(new ValidationResult.ValidationResult(ValidationResultSeverity.ValidationResultSeverity.Error, `${property} is required`, [property], null));
73
+ }
74
+ });
75
+ return validationErrors;
76
+ }
61
77
  buildHeaders() {
62
78
  const customHeaders = this._httpHeadersCallback?.() ?? {};
63
79
  const headers = {
@@ -1 +1 @@
1
- {"version":3,"file":"Command.js","sources":["../../../commands/Command.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ICommand, PropertyChanged } from './ICommand';\nimport { CommandResult } from \"./CommandResult\";\nimport { CommandValidator } from './CommandValidator';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\nimport { Globals } from '../Globals';\nimport { joinPaths } from '../joinPaths';\nimport { UrlHelpers } from '../UrlHelpers';\nimport { GetHttpHeaders } from '../GetHttpHeaders';\nimport { PropertyDescriptor } from '../reflection/PropertyDescriptor';\n\ntype Callback = {\n callback: WeakRef<PropertyChanged>;\n thisArg: WeakRef<object>;\n}\n\n/**\n * Represents an implementation of {@link ICommand} that works with HTTP fetch.\n */\nexport abstract class Command<TCommandContent = object, TCommandResponse = object> implements ICommand<TCommandContent, TCommandResponse> {\n private _microservice: string;\n private _apiBasePath: string;\n private _origin: string;\n private _httpHeadersCallback: GetHttpHeaders;\n abstract readonly route: string;\n abstract readonly validation: CommandValidator;\n abstract readonly propertyDescriptors: PropertyDescriptor[];\n abstract get requestParameters(): string[];\n abstract get properties(): string[];\n\n private _initialValues: object = {};\n private _hasChanges = false;\n private _callbacks: Callback[] = [];\n\n /**\n * Initializes a new instance of the {@link Command<,>} class.\n * @param _responseType Type of response.\n * @param _isResponseTypeEnumerable Whether or not the response type is enumerable.\n */\n constructor(readonly _responseType: Constructor = Object, readonly _isResponseTypeEnumerable: boolean) {\n this._microservice = Globals.microservice ?? '';\n this._apiBasePath = '';\n this._origin = '';\n this._httpHeadersCallback = () => ({});\n }\n\n /** @inheritdoc */\n setMicroservice(microservice: string) {\n this._microservice = microservice;\n }\n\n /** @inheritdoc */\n setApiBasePath(apiBasePath: string): void {\n this._apiBasePath = apiBasePath;\n }\n\n /** @inheritdoc */\n setOrigin(origin: string): void {\n this._origin = origin;\n }\n\n /** @inheritdoc */\n setHttpHeadersCallback(callback: GetHttpHeaders): void {\n this._httpHeadersCallback = callback;\n }\n\n /** @inheritdoc */\n async execute(): Promise<CommandResult<TCommandResponse>> {\n let actualRoute = this.route;\n\n if (this.requestParameters && this.requestParameters.length > 0) {\n const payload = this.buildPayload();\n const { route } = UrlHelpers.replaceRouteParameters(this.route, payload);\n actualRoute = route;\n }\n\n const result = await this.performRequest(actualRoute, 'Command not found at route', 'Error during server call');\n this.setInitialValuesFromCurrentValues();\n return result;\n }\n\n /** @inheritdoc */\n async validate(): Promise<CommandResult<TCommandResponse>> {\n const actualRoute = `${this.route}/validate`;\n return this.performRequest(actualRoute, 'Command validation endpoint not found at route', 'Error during validation call');\n }\n\n private buildPayload(): object {\n const payload = {};\n this.properties.forEach(property => {\n payload[property] = this[property];\n });\n return payload;\n }\n\n private buildHeaders(): HeadersInit {\n const customHeaders = this._httpHeadersCallback?.() ?? {};\n const headers = {\n ...customHeaders,\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n };\n\n if (this._microservice?.length > 0) {\n headers[Globals.microserviceHttpHeader] = this._microservice;\n }\n\n return headers;\n }\n\n private async performRequest(\n route: string,\n notFoundMessage: string,\n errorMessage: string\n ): Promise<CommandResult<TCommandResponse>> {\n const payload = this.buildPayload();\n const headers = this.buildHeaders();\n const actualRoute = joinPaths(this._apiBasePath, route);\n const url = UrlHelpers.createUrlFrom(this._origin, this._apiBasePath, actualRoute);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers,\n body: JsonSerializer.serialize(payload)\n });\n\n if (response.status === 404) {\n return CommandResult.failed([`${notFoundMessage} '${actualRoute}'`]) as CommandResult<TCommandResponse>;\n }\n\n const result = await response.json();\n return new CommandResult(result, this._responseType, this._isResponseTypeEnumerable);\n } catch (ex) {\n return CommandResult.failed([`${errorMessage}: ${ex}`]) as CommandResult<TCommandResponse>;\n }\n }\n\n /** @inheritdoc */\n clear(): void {\n this.properties.forEach(property => {\n this[property] = undefined;\n });\n this._initialValues = {};\n this._hasChanges = false;\n }\n\n /** @inheritdoc */\n setInitialValues(values: TCommandContent) {\n this.properties.forEach(property => {\n if (Object.prototype.hasOwnProperty.call(values, property)) {\n this._initialValues[property] = values[property];\n this[property] = values[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n setInitialValuesFromCurrentValues() {\n this.properties.forEach(property => {\n if (this[property]) {\n this._initialValues[property] = this[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n revertChanges(): void {\n this.properties.forEach(property => {\n this[property] = this._initialValues[property];\n });\n }\n\n /** @inheritdoc */\n get hasChanges() {\n return this._hasChanges;\n }\n\n /** @inheritdoc */\n propertyChanged(property: string) {\n this.updateHasChanges();\n\n this._callbacks.forEach(callbackContainer => {\n const callback = callbackContainer.callback.deref();\n const thisArg = callbackContainer.thisArg.deref();\n if (callback && thisArg) {\n callback.call(thisArg, property);\n } else {\n this._callbacks = this._callbacks.filter(_ => _.callback !== callbackContainer.callback);\n }\n });\n }\n\n /** @inheritdoc */\n onPropertyChanged(callback: PropertyChanged, thisArg: object) {\n this._callbacks.push({\n callback: new WeakRef(callback),\n thisArg: new WeakRef(thisArg)\n });\n }\n\n private updateHasChanges() {\n this._hasChanges = this.properties.some(property => this[property] !== this._initialValues[property]);\n }\n}\n"],"names":["Globals","UrlHelpers","joinPaths","JsonSerializer","CommandResult"],"mappings":"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"}
1
+ {"version":3,"file":"Command.js","sources":["../../../commands/Command.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ICommand, PropertyChanged } from './ICommand';\nimport { CommandResult } from \"./CommandResult\";\nimport { CommandValidator } from './CommandValidator';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\nimport { Globals } from '../Globals';\nimport { joinPaths } from '../joinPaths';\nimport { UrlHelpers } from '../UrlHelpers';\nimport { GetHttpHeaders } from '../GetHttpHeaders';\nimport { PropertyDescriptor } from '../reflection/PropertyDescriptor';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { ValidationResultSeverity } from '../validation/ValidationResultSeverity';\n\ntype Callback = {\n callback: WeakRef<PropertyChanged>;\n thisArg: WeakRef<object>;\n}\n\n/**\n * Represents an implementation of {@link ICommand} that works with HTTP fetch.\n */\nexport abstract class Command<TCommandContent = object, TCommandResponse = object> implements ICommand<TCommandContent, TCommandResponse> {\n private _microservice: string;\n private _apiBasePath: string;\n private _origin: string;\n private _httpHeadersCallback: GetHttpHeaders;\n abstract readonly route: string;\n abstract readonly validation: CommandValidator;\n abstract readonly propertyDescriptors: PropertyDescriptor[];\n abstract get requestParameters(): string[];\n abstract get properties(): string[];\n\n private _initialValues: object = {};\n private _hasChanges = false;\n private _callbacks: Callback[] = [];\n\n /**\n * Initializes a new instance of the {@link Command<,>} class.\n * @param _responseType Type of response.\n * @param _isResponseTypeEnumerable Whether or not the response type is enumerable.\n */\n constructor(readonly _responseType: Constructor = Object, readonly _isResponseTypeEnumerable: boolean) {\n this._microservice = Globals.microservice ?? '';\n this._apiBasePath = '';\n this._origin = '';\n this._httpHeadersCallback = () => ({});\n }\n\n /** @inheritdoc */\n setMicroservice(microservice: string) {\n this._microservice = microservice;\n }\n\n /** @inheritdoc */\n setApiBasePath(apiBasePath: string): void {\n this._apiBasePath = apiBasePath;\n }\n\n /** @inheritdoc */\n setOrigin(origin: string): void {\n this._origin = origin;\n }\n\n /** @inheritdoc */\n setHttpHeadersCallback(callback: GetHttpHeaders): void {\n this._httpHeadersCallback = callback;\n }\n\n /** @inheritdoc */\n async execute(): Promise<CommandResult<TCommandResponse>> {\n const validationErrors = this.validateRequiredProperties();\n if (validationErrors.length > 0) {\n return CommandResult.validationFailed(validationErrors) as CommandResult<TCommandResponse>;\n }\n\n let actualRoute = this.route;\n\n if (this.requestParameters && this.requestParameters.length > 0) {\n const payload = this.buildPayload();\n const { route } = UrlHelpers.replaceRouteParameters(this.route, payload);\n actualRoute = route;\n }\n\n const result = await this.performRequest(actualRoute, 'Command not found at route', 'Error during server call');\n this.setInitialValuesFromCurrentValues();\n return result;\n }\n\n /** @inheritdoc */\n async validate(): Promise<CommandResult<TCommandResponse>> {\n const actualRoute = `${this.route}/validate`;\n return this.performRequest(actualRoute, 'Command validation endpoint not found at route', 'Error during validation call');\n }\n\n private buildPayload(): object {\n const payload = {};\n this.properties.forEach(property => {\n payload[property] = this[property];\n });\n return payload;\n }\n\n private validateRequiredProperties(): ValidationResult[] {\n const validationErrors: ValidationResult[] = [];\n this.properties.forEach(property => {\n const value = this[property];\n if (value === undefined || value === null || value === '') {\n validationErrors.push(new ValidationResult(\n ValidationResultSeverity.Error,\n `${property} is required`,\n [property],\n null\n ));\n }\n });\n return validationErrors;\n }\n\n private buildHeaders(): HeadersInit {\n const customHeaders = this._httpHeadersCallback?.() ?? {};\n const headers = {\n ...customHeaders,\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n };\n\n if (this._microservice?.length > 0) {\n headers[Globals.microserviceHttpHeader] = this._microservice;\n }\n\n return headers;\n }\n\n private async performRequest(\n route: string,\n notFoundMessage: string,\n errorMessage: string\n ): Promise<CommandResult<TCommandResponse>> {\n const payload = this.buildPayload();\n const headers = this.buildHeaders();\n const actualRoute = joinPaths(this._apiBasePath, route);\n const url = UrlHelpers.createUrlFrom(this._origin, this._apiBasePath, actualRoute);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers,\n body: JsonSerializer.serialize(payload)\n });\n\n if (response.status === 404) {\n return CommandResult.failed([`${notFoundMessage} '${actualRoute}'`]) as CommandResult<TCommandResponse>;\n }\n\n const result = await response.json();\n return new CommandResult(result, this._responseType, this._isResponseTypeEnumerable);\n } catch (ex) {\n return CommandResult.failed([`${errorMessage}: ${ex}`]) as CommandResult<TCommandResponse>;\n }\n }\n\n /** @inheritdoc */\n clear(): void {\n this.properties.forEach(property => {\n this[property] = undefined;\n });\n this._initialValues = {};\n this._hasChanges = false;\n }\n\n /** @inheritdoc */\n setInitialValues(values: TCommandContent) {\n this.properties.forEach(property => {\n if (Object.prototype.hasOwnProperty.call(values, property)) {\n this._initialValues[property] = values[property];\n this[property] = values[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n setInitialValuesFromCurrentValues() {\n this.properties.forEach(property => {\n if (this[property]) {\n this._initialValues[property] = this[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n revertChanges(): void {\n this.properties.forEach(property => {\n this[property] = this._initialValues[property];\n });\n }\n\n /** @inheritdoc */\n get hasChanges() {\n return this._hasChanges;\n }\n\n /** @inheritdoc */\n propertyChanged(property: string) {\n this.updateHasChanges();\n\n this._callbacks.forEach(callbackContainer => {\n const callback = callbackContainer.callback.deref();\n const thisArg = callbackContainer.thisArg.deref();\n if (callback && thisArg) {\n callback.call(thisArg, property);\n } else {\n this._callbacks = this._callbacks.filter(_ => _.callback !== callbackContainer.callback);\n }\n });\n }\n\n /** @inheritdoc */\n onPropertyChanged(callback: PropertyChanged, thisArg: object) {\n this._callbacks.push({\n callback: new WeakRef(callback),\n thisArg: new WeakRef(thisArg)\n });\n }\n\n private updateHasChanges() {\n this._hasChanges = this.properties.some(property => this[property] !== this._initialValues[property]);\n }\n}\n"],"names":["Globals","CommandResult","UrlHelpers","ValidationResult","ValidationResultSeverity","joinPaths","JsonSerializer"],"mappings":"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"}
@@ -27,6 +27,7 @@ type ServerCommandResult = {
27
27
  export declare class CommandResult<TResponse = object> implements ICommandResult<TResponse> {
28
28
  static empty: CommandResult;
29
29
  static failed: (exceptionMessages: string[]) => CommandResult;
30
+ static validationFailed: (validationResults: ValidationResult[]) => CommandResult;
30
31
  readonly correlationId: Guid;
31
32
  readonly isSuccess: boolean;
32
33
  readonly isAuthorized: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandResult.d.ts","sourceRoot":"","sources":["../../../commands/CommandResult.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAKnE,KAAK,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK3E,KAAK,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK9F,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAKpE,KAAK,cAAc,GAAG,MAAM,IAAI,CAAC;AAKjC,KAAK,mBAAmB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;AAE3E,KAAK,mBAAmB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;IAGnC,QAAQ,EAAE,GAAG,CAAC;CAEjB,CAAA;AAKD,qBAAa,aAAa,CAAC,SAAS,GAAG,MAAM,CAAE,YAAW,cAAc,CAAC,SAAS,CAAC;IAE/E,MAAM,CAAC,KAAK,EAAE,aAAa,CAWT;IAElB,MAAM,CAAC,MAAM,GAAI,mBAAmB,MAAM,EAAE,KAAG,aAAa,CAa1D;IAGF,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAG7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAG/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IAG/C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAGrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAGrC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAG5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;gBAQlB,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,WAAW,YAAS,EAAE,wBAAwB,EAAE,OAAO;IAyBtH,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;IAYxD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC;IAYjE,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;IAY5D,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC;IAYlE,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;CAM/E"}
1
+ {"version":3,"file":"CommandResult.d.ts","sourceRoot":"","sources":["../../../commands/CommandResult.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAKnE,KAAK,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK3E,KAAK,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK9F,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAKpE,KAAK,cAAc,GAAG,MAAM,IAAI,CAAC;AAKjC,KAAK,mBAAmB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;AAE3E,KAAK,mBAAmB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;IAGnC,QAAQ,EAAE,GAAG,CAAC;CAEjB,CAAA;AAKD,qBAAa,aAAa,CAAC,SAAS,GAAG,MAAM,CAAE,YAAW,cAAc,CAAC,SAAS,CAAC;IAE/E,MAAM,CAAC,KAAK,EAAE,aAAa,CAWT;IAElB,MAAM,CAAC,MAAM,GAAI,mBAAmB,MAAM,EAAE,KAAG,aAAa,CAa1D;IAEF,MAAM,CAAC,gBAAgB,GAAI,mBAAmB,gBAAgB,EAAE,KAAG,aAAa,CAkB9E;IAGF,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAG7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAG/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IAG/C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAGrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAGrC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAG5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;gBAQlB,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,WAAW,YAAS,EAAE,wBAAwB,EAAE,OAAO;IAyBtH,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;IAYxD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC;IAYjE,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;IAY5D,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC;IAYlE,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;CAM/E"}
@@ -30,6 +30,25 @@ class CommandResult {
30
30
  response: null
31
31
  }, Object, false);
32
32
  };
33
+ static validationFailed = (validationResults) => {
34
+ return new CommandResult({
35
+ correlationId: fundamentals.Guid.empty.toString(),
36
+ isSuccess: false,
37
+ isAuthorized: true,
38
+ isValid: false,
39
+ hasExceptions: false,
40
+ validationResults: validationResults.map(_ => ({
41
+ severity: _.severity,
42
+ message: _.message,
43
+ members: _.members,
44
+ state: _.state
45
+ })),
46
+ exceptionMessages: [],
47
+ exceptionStackTrace: '',
48
+ authorizationFailureReason: '',
49
+ response: null
50
+ }, Object, false);
51
+ };
33
52
  correlationId;
34
53
  isSuccess;
35
54
  isAuthorized;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandResult.js","sources":["../../../commands/CommandResult.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Guid } from '@cratis/fundamentals';\nimport { ICommandResult } from './ICommandResult';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\n\n/**\n * Delegate type for the onSuccess callback.\n */\ntype OnSuccess = (<TResponse>(response: TResponse) => void) | (() => void);\n\n/**\n * Delegate type for the onFailed callback.\n */\ntype OnFailed<TResponse> = ((commandResult: CommandResult<TResponse>) => void) | (() => void);\n\n/**\n * Delegate type for the onException callback.\n */\ntype OnException = (messages: string[], stackTrace: string) => void;\n\n/**\n * Delegate type for the onUnauthorized callback.\n */\ntype OnUnauthorized = () => void;\n\n/**\n * Delegate type for the onValidationFailure callback.\n */\ntype OnValidationFailure = (validationResults: ValidationResult[]) => void;\n\ntype ServerCommandResult = {\n correlationId: string;\n isSuccess: boolean;\n isAuthorized: boolean;\n isValid: boolean;\n hasExceptions: boolean;\n validationResults: {\n severity: number;\n message: string;\n members: string[];\n state: object;\n }[];\n exceptionMessages: string[];\n exceptionStackTrace: string;\n authorizationFailureReason: string;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n response: any;\n /* eslint-enable @typescript-eslint/no-explicit-any */\n}\n\n/**\n * Represents the result from executing a {@link ICommand}.\n */\nexport class CommandResult<TResponse = object> implements ICommandResult<TResponse> {\n\n static empty: CommandResult = new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: true,\n isAuthorized: true,\n isValid: true,\n hasExceptions: false,\n validationResults: [],\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n\n static failed = (exceptionMessages: string[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: true,\n hasExceptions: true,\n validationResults: [],\n exceptionMessages: exceptionMessages,\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n /** @inheritdoc */\n readonly correlationId: Guid;\n\n /** @inheritdoc */\n readonly isSuccess: boolean;\n\n /** @inheritdoc */\n readonly isAuthorized: boolean;\n\n /** @inheritdoc */\n readonly isValid: boolean;\n\n /** @inheritdoc */\n readonly hasExceptions: boolean;\n\n /** @inheritdoc */\n readonly validationResults: ValidationResult[];\n\n /** @inheritdoc */\n readonly exceptionMessages: string[];\n\n /** @inheritdoc */\n readonly exceptionStackTrace: string;\n\n /** @inheritdoc */\n readonly authorizationFailureReason: string;\n\n /** @inheritdoc */\n readonly response?: TResponse;\n\n /**\n * Creates an instance of command result.\n * @param {*} result The JSON/any representation of the command result;\n * @param {Constructor} responseInstanceType The {@see Constructor} that represents the type of response, if any. Defaults to {@see Object}.\n * @param {boolean} isResponseTypeEnumerable Whether or not the response type is an enumerable or not.\n */\n constructor(result: ServerCommandResult, responseInstanceType: Constructor = Object, isResponseTypeEnumerable: boolean) {\n this.correlationId = Guid.parse(result.correlationId);\n this.isSuccess = result.isSuccess;\n this.isAuthorized = result.isAuthorized;\n this.isValid = result.isValid;\n this.hasExceptions = result.hasExceptions;\n this.validationResults = result.validationResults.map(_ => new ValidationResult(_.severity, _.message, _.members, _.state));\n this.exceptionMessages = result.exceptionMessages;\n this.exceptionStackTrace = result.exceptionStackTrace;\n this.authorizationFailureReason = result.authorizationFailureReason;\n\n if (result.response) {\n if (isResponseTypeEnumerable) {\n this.response = JsonSerializer.deserializeArrayFromInstance(responseInstanceType, result.response) as TResponse;\n } else {\n this.response = JsonSerializer.deserializeFromInstance(responseInstanceType, result.response) as TResponse;\n }\n }\n }\n\n /**\n * Set up a callback for when the command was successful.\n * @param {OnSuccess} callback The callback to call when the command was successful.\n * @returns {CommandResult} The instance of the command result.\n */\n onSuccess(callback: OnSuccess): CommandResult<TResponse> {\n if (this.isSuccess) {\n callback(this.response as TResponse);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed.\n * @param {OnFailed} callback The callback to call when the command failed.\n * @returns {CommandResult} The instance of the command result.\n */\n onFailed(callback: OnFailed<TResponse>): CommandResult<TResponse> {\n if (!this.isSuccess) {\n callback(this);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed with an exception.\n * @param {OnException} callback The callback to call when the command had an exception.\n * @returns {CommandResult} The instance of the command result.\n */\n onException(callback: OnException): CommandResult<TResponse> {\n if (this.hasExceptions) {\n callback(this.exceptionMessages, this.exceptionStackTrace);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command was unauthorized.\n * @param {OnUnauthorized} callback The callback to call when the command was unauthorized.\n * @returns {CommandResult} The instance of the command result.\n */\n onUnauthorized(callback: OnUnauthorized): CommandResult<TResponse> {\n if (!this.isAuthorized) {\n callback();\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command had validation errors.\n * @param {OnSuccess} callback The callback to call when the command was invalid.\n * @returns {CommandResult} The instance of the command result.\n */\n onValidationFailure(callback: OnValidationFailure): CommandResult<TResponse> {\n if (!this.isValid) {\n callback(this.validationResults);\n }\n return this;\n }\n}\n"],"names":["Guid","ValidationResult","JsonSerializer"],"mappings":"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"}
1
+ {"version":3,"file":"CommandResult.js","sources":["../../../commands/CommandResult.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Guid } from '@cratis/fundamentals';\nimport { ICommandResult } from './ICommandResult';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\n\n/**\n * Delegate type for the onSuccess callback.\n */\ntype OnSuccess = (<TResponse>(response: TResponse) => void) | (() => void);\n\n/**\n * Delegate type for the onFailed callback.\n */\ntype OnFailed<TResponse> = ((commandResult: CommandResult<TResponse>) => void) | (() => void);\n\n/**\n * Delegate type for the onException callback.\n */\ntype OnException = (messages: string[], stackTrace: string) => void;\n\n/**\n * Delegate type for the onUnauthorized callback.\n */\ntype OnUnauthorized = () => void;\n\n/**\n * Delegate type for the onValidationFailure callback.\n */\ntype OnValidationFailure = (validationResults: ValidationResult[]) => void;\n\ntype ServerCommandResult = {\n correlationId: string;\n isSuccess: boolean;\n isAuthorized: boolean;\n isValid: boolean;\n hasExceptions: boolean;\n validationResults: {\n severity: number;\n message: string;\n members: string[];\n state: object;\n }[];\n exceptionMessages: string[];\n exceptionStackTrace: string;\n authorizationFailureReason: string;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n response: any;\n /* eslint-enable @typescript-eslint/no-explicit-any */\n}\n\n/**\n * Represents the result from executing a {@link ICommand}.\n */\nexport class CommandResult<TResponse = object> implements ICommandResult<TResponse> {\n\n static empty: CommandResult = new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: true,\n isAuthorized: true,\n isValid: true,\n hasExceptions: false,\n validationResults: [],\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n\n static failed = (exceptionMessages: string[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: true,\n hasExceptions: true,\n validationResults: [],\n exceptionMessages: exceptionMessages,\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n static validationFailed = (validationResults: ValidationResult[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: false,\n hasExceptions: false,\n validationResults: validationResults.map(_ => ({\n severity: _.severity,\n message: _.message,\n members: _.members,\n state: _.state\n })),\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n /** @inheritdoc */\n readonly correlationId: Guid;\n\n /** @inheritdoc */\n readonly isSuccess: boolean;\n\n /** @inheritdoc */\n readonly isAuthorized: boolean;\n\n /** @inheritdoc */\n readonly isValid: boolean;\n\n /** @inheritdoc */\n readonly hasExceptions: boolean;\n\n /** @inheritdoc */\n readonly validationResults: ValidationResult[];\n\n /** @inheritdoc */\n readonly exceptionMessages: string[];\n\n /** @inheritdoc */\n readonly exceptionStackTrace: string;\n\n /** @inheritdoc */\n readonly authorizationFailureReason: string;\n\n /** @inheritdoc */\n readonly response?: TResponse;\n\n /**\n * Creates an instance of command result.\n * @param {*} result The JSON/any representation of the command result;\n * @param {Constructor} responseInstanceType The {@see Constructor} that represents the type of response, if any. Defaults to {@see Object}.\n * @param {boolean} isResponseTypeEnumerable Whether or not the response type is an enumerable or not.\n */\n constructor(result: ServerCommandResult, responseInstanceType: Constructor = Object, isResponseTypeEnumerable: boolean) {\n this.correlationId = Guid.parse(result.correlationId);\n this.isSuccess = result.isSuccess;\n this.isAuthorized = result.isAuthorized;\n this.isValid = result.isValid;\n this.hasExceptions = result.hasExceptions;\n this.validationResults = result.validationResults.map(_ => new ValidationResult(_.severity, _.message, _.members, _.state));\n this.exceptionMessages = result.exceptionMessages;\n this.exceptionStackTrace = result.exceptionStackTrace;\n this.authorizationFailureReason = result.authorizationFailureReason;\n\n if (result.response) {\n if (isResponseTypeEnumerable) {\n this.response = JsonSerializer.deserializeArrayFromInstance(responseInstanceType, result.response) as TResponse;\n } else {\n this.response = JsonSerializer.deserializeFromInstance(responseInstanceType, result.response) as TResponse;\n }\n }\n }\n\n /**\n * Set up a callback for when the command was successful.\n * @param {OnSuccess} callback The callback to call when the command was successful.\n * @returns {CommandResult} The instance of the command result.\n */\n onSuccess(callback: OnSuccess): CommandResult<TResponse> {\n if (this.isSuccess) {\n callback(this.response as TResponse);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed.\n * @param {OnFailed} callback The callback to call when the command failed.\n * @returns {CommandResult} The instance of the command result.\n */\n onFailed(callback: OnFailed<TResponse>): CommandResult<TResponse> {\n if (!this.isSuccess) {\n callback(this);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed with an exception.\n * @param {OnException} callback The callback to call when the command had an exception.\n * @returns {CommandResult} The instance of the command result.\n */\n onException(callback: OnException): CommandResult<TResponse> {\n if (this.hasExceptions) {\n callback(this.exceptionMessages, this.exceptionStackTrace);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command was unauthorized.\n * @param {OnUnauthorized} callback The callback to call when the command was unauthorized.\n * @returns {CommandResult} The instance of the command result.\n */\n onUnauthorized(callback: OnUnauthorized): CommandResult<TResponse> {\n if (!this.isAuthorized) {\n callback();\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command had validation errors.\n * @param {OnSuccess} callback The callback to call when the command was invalid.\n * @returns {CommandResult} The instance of the command result.\n */\n onValidationFailure(callback: OnValidationFailure): CommandResult<TResponse> {\n if (!this.isValid) {\n callback(this.validationResults);\n }\n return this;\n }\n}\n"],"names":["Guid","ValidationResult","JsonSerializer"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ exports.ValidationResultSeverity = void 0;
4
+ (function (ValidationResultSeverity) {
5
+ ValidationResultSeverity[ValidationResultSeverity["Unknown"] = 0] = "Unknown";
6
+ ValidationResultSeverity[ValidationResultSeverity["Information"] = 1] = "Information";
7
+ ValidationResultSeverity[ValidationResultSeverity["Warning"] = 2] = "Warning";
8
+ ValidationResultSeverity[ValidationResultSeverity["Error"] = 3] = "Error";
9
+ })(exports.ValidationResultSeverity || (exports.ValidationResultSeverity = {}));
10
+ //# sourceMappingURL=ValidationResultSeverity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidationResultSeverity.js","sources":["../../../validation/ValidationResultSeverity.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/**\n * Holds the values for severity of a validation result.\n */\nexport enum ValidationResultSeverity {\n\n /**\n * The validation result is unknown.\n */\n Unknown = 0,\n\n /**\n * The validation result is a warning.\n */\n Information = 1,\n\n /**\n * The validation result is a warning.\n */\n Warning = 2,\n\n /**\n * The validation result is an error.\n */\n Error = 3\n}\n"],"names":["ValidationResultSeverity"],"mappings":";;AAMYA;AAAZ,CAAA,UAAY,wBAAwB,EAAA;AAKhC,IAAA,wBAAA,CAAA,wBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAKX,IAAA,wBAAA,CAAA,wBAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe;AAKf,IAAA,wBAAA,CAAA,wBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAKX,IAAA,wBAAA,CAAA,wBAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS;AACb,CAAC,EArBWA,gCAAwB,KAAxBA,gCAAwB,GAAA,EAAA,CAAA,CAAA;;"}
@@ -27,6 +27,7 @@ export declare abstract class Command<TCommandContent = object, TCommandResponse
27
27
  execute(): Promise<CommandResult<TCommandResponse>>;
28
28
  validate(): Promise<CommandResult<TCommandResponse>>;
29
29
  private buildPayload;
30
+ private validateRequiredProperties;
30
31
  private buildHeaders;
31
32
  private performRequest;
32
33
  clear(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../commands/Command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAUtE,8BAAsB,OAAO,CAAC,eAAe,GAAG,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAE,YAAW,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAoBzH,QAAQ,CAAC,aAAa,EAAE,WAAW;IAAW,QAAQ,CAAC,yBAAyB,EAAE,OAAO;IAnBrG,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,oBAAoB,CAAiB;IAC7C,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,KAAK,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC3C,QAAQ,KAAK,UAAU,IAAI,MAAM,EAAE,CAAC;IAEpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAkB;gBAOf,aAAa,EAAE,WAAW,YAAS,EAAW,yBAAyB,EAAE,OAAO;IAQrG,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK/B,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKhD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAenD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAK1D,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,YAAY;YAeN,cAAc;IA6B5B,KAAK,IAAI,IAAI;IASb,gBAAgB,CAAC,MAAM,EAAE,eAAe;IAWxC,iCAAiC;IAUjC,aAAa,IAAI,IAAI;IAOrB,IAAI,UAAU,YAEb;IAGD,eAAe,CAAC,QAAQ,EAAE,MAAM;IAehC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM;IAO5D,OAAO,CAAC,gBAAgB;CAG3B"}
1
+ {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../commands/Command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAInE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAYtE,8BAAsB,OAAO,CAAC,eAAe,GAAG,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAAE,YAAW,QAAQ,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAoBzH,QAAQ,CAAC,aAAa,EAAE,WAAW;IAAW,QAAQ,CAAC,yBAAyB,EAAE,OAAO;IAnBrG,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,oBAAoB,CAAiB;IAC7C,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,KAAK,iBAAiB,IAAI,MAAM,EAAE,CAAC;IAC3C,QAAQ,KAAK,UAAU,IAAI,MAAM,EAAE,CAAC;IAEpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAkB;gBAOf,aAAa,EAAE,WAAW,YAAS,EAAW,yBAAyB,EAAE,OAAO;IAQrG,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKzC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK/B,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKhD,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAoBnD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAK1D,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,YAAY;YAeN,cAAc;IA6B5B,KAAK,IAAI,IAAI;IASb,gBAAgB,CAAC,MAAM,EAAE,eAAe;IAWxC,iCAAiC;IAUjC,aAAa,IAAI,IAAI;IAOrB,IAAI,UAAU,YAEb;IAGD,eAAe,CAAC,QAAQ,EAAE,MAAM;IAehC,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM;IAO5D,OAAO,CAAC,gBAAgB;CAG3B"}
@@ -3,6 +3,8 @@ import { JsonSerializer } from '@cratis/fundamentals';
3
3
  import { Globals } from '../Globals.js';
4
4
  import { joinPaths } from '../joinPaths.js';
5
5
  import { UrlHelpers } from '../UrlHelpers.js';
6
+ import { ValidationResult } from '../validation/ValidationResult.js';
7
+ import { ValidationResultSeverity } from '../validation/ValidationResultSeverity.js';
6
8
 
7
9
  class Command {
8
10
  _responseType;
@@ -35,6 +37,10 @@ class Command {
35
37
  this._httpHeadersCallback = callback;
36
38
  }
37
39
  async execute() {
40
+ const validationErrors = this.validateRequiredProperties();
41
+ if (validationErrors.length > 0) {
42
+ return CommandResult.validationFailed(validationErrors);
43
+ }
38
44
  let actualRoute = this.route;
39
45
  if (this.requestParameters && this.requestParameters.length > 0) {
40
46
  const payload = this.buildPayload();
@@ -56,6 +62,16 @@ class Command {
56
62
  });
57
63
  return payload;
58
64
  }
65
+ validateRequiredProperties() {
66
+ const validationErrors = [];
67
+ this.properties.forEach(property => {
68
+ const value = this[property];
69
+ if (value === undefined || value === null || value === '') {
70
+ validationErrors.push(new ValidationResult(ValidationResultSeverity.Error, `${property} is required`, [property], null));
71
+ }
72
+ });
73
+ return validationErrors;
74
+ }
59
75
  buildHeaders() {
60
76
  const customHeaders = this._httpHeadersCallback?.() ?? {};
61
77
  const headers = {
@@ -1 +1 @@
1
- {"version":3,"file":"Command.js","sources":["../../../commands/Command.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ICommand, PropertyChanged } from './ICommand';\nimport { CommandResult } from \"./CommandResult\";\nimport { CommandValidator } from './CommandValidator';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\nimport { Globals } from '../Globals';\nimport { joinPaths } from '../joinPaths';\nimport { UrlHelpers } from '../UrlHelpers';\nimport { GetHttpHeaders } from '../GetHttpHeaders';\nimport { PropertyDescriptor } from '../reflection/PropertyDescriptor';\n\ntype Callback = {\n callback: WeakRef<PropertyChanged>;\n thisArg: WeakRef<object>;\n}\n\n/**\n * Represents an implementation of {@link ICommand} that works with HTTP fetch.\n */\nexport abstract class Command<TCommandContent = object, TCommandResponse = object> implements ICommand<TCommandContent, TCommandResponse> {\n private _microservice: string;\n private _apiBasePath: string;\n private _origin: string;\n private _httpHeadersCallback: GetHttpHeaders;\n abstract readonly route: string;\n abstract readonly validation: CommandValidator;\n abstract readonly propertyDescriptors: PropertyDescriptor[];\n abstract get requestParameters(): string[];\n abstract get properties(): string[];\n\n private _initialValues: object = {};\n private _hasChanges = false;\n private _callbacks: Callback[] = [];\n\n /**\n * Initializes a new instance of the {@link Command<,>} class.\n * @param _responseType Type of response.\n * @param _isResponseTypeEnumerable Whether or not the response type is enumerable.\n */\n constructor(readonly _responseType: Constructor = Object, readonly _isResponseTypeEnumerable: boolean) {\n this._microservice = Globals.microservice ?? '';\n this._apiBasePath = '';\n this._origin = '';\n this._httpHeadersCallback = () => ({});\n }\n\n /** @inheritdoc */\n setMicroservice(microservice: string) {\n this._microservice = microservice;\n }\n\n /** @inheritdoc */\n setApiBasePath(apiBasePath: string): void {\n this._apiBasePath = apiBasePath;\n }\n\n /** @inheritdoc */\n setOrigin(origin: string): void {\n this._origin = origin;\n }\n\n /** @inheritdoc */\n setHttpHeadersCallback(callback: GetHttpHeaders): void {\n this._httpHeadersCallback = callback;\n }\n\n /** @inheritdoc */\n async execute(): Promise<CommandResult<TCommandResponse>> {\n let actualRoute = this.route;\n\n if (this.requestParameters && this.requestParameters.length > 0) {\n const payload = this.buildPayload();\n const { route } = UrlHelpers.replaceRouteParameters(this.route, payload);\n actualRoute = route;\n }\n\n const result = await this.performRequest(actualRoute, 'Command not found at route', 'Error during server call');\n this.setInitialValuesFromCurrentValues();\n return result;\n }\n\n /** @inheritdoc */\n async validate(): Promise<CommandResult<TCommandResponse>> {\n const actualRoute = `${this.route}/validate`;\n return this.performRequest(actualRoute, 'Command validation endpoint not found at route', 'Error during validation call');\n }\n\n private buildPayload(): object {\n const payload = {};\n this.properties.forEach(property => {\n payload[property] = this[property];\n });\n return payload;\n }\n\n private buildHeaders(): HeadersInit {\n const customHeaders = this._httpHeadersCallback?.() ?? {};\n const headers = {\n ...customHeaders,\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n };\n\n if (this._microservice?.length > 0) {\n headers[Globals.microserviceHttpHeader] = this._microservice;\n }\n\n return headers;\n }\n\n private async performRequest(\n route: string,\n notFoundMessage: string,\n errorMessage: string\n ): Promise<CommandResult<TCommandResponse>> {\n const payload = this.buildPayload();\n const headers = this.buildHeaders();\n const actualRoute = joinPaths(this._apiBasePath, route);\n const url = UrlHelpers.createUrlFrom(this._origin, this._apiBasePath, actualRoute);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers,\n body: JsonSerializer.serialize(payload)\n });\n\n if (response.status === 404) {\n return CommandResult.failed([`${notFoundMessage} '${actualRoute}'`]) as CommandResult<TCommandResponse>;\n }\n\n const result = await response.json();\n return new CommandResult(result, this._responseType, this._isResponseTypeEnumerable);\n } catch (ex) {\n return CommandResult.failed([`${errorMessage}: ${ex}`]) as CommandResult<TCommandResponse>;\n }\n }\n\n /** @inheritdoc */\n clear(): void {\n this.properties.forEach(property => {\n this[property] = undefined;\n });\n this._initialValues = {};\n this._hasChanges = false;\n }\n\n /** @inheritdoc */\n setInitialValues(values: TCommandContent) {\n this.properties.forEach(property => {\n if (Object.prototype.hasOwnProperty.call(values, property)) {\n this._initialValues[property] = values[property];\n this[property] = values[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n setInitialValuesFromCurrentValues() {\n this.properties.forEach(property => {\n if (this[property]) {\n this._initialValues[property] = this[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n revertChanges(): void {\n this.properties.forEach(property => {\n this[property] = this._initialValues[property];\n });\n }\n\n /** @inheritdoc */\n get hasChanges() {\n return this._hasChanges;\n }\n\n /** @inheritdoc */\n propertyChanged(property: string) {\n this.updateHasChanges();\n\n this._callbacks.forEach(callbackContainer => {\n const callback = callbackContainer.callback.deref();\n const thisArg = callbackContainer.thisArg.deref();\n if (callback && thisArg) {\n callback.call(thisArg, property);\n } else {\n this._callbacks = this._callbacks.filter(_ => _.callback !== callbackContainer.callback);\n }\n });\n }\n\n /** @inheritdoc */\n onPropertyChanged(callback: PropertyChanged, thisArg: object) {\n this._callbacks.push({\n callback: new WeakRef(callback),\n thisArg: new WeakRef(thisArg)\n });\n }\n\n private updateHasChanges() {\n this._hasChanges = this.properties.some(property => this[property] !== this._initialValues[property]);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Command.js","sources":["../../../commands/Command.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ICommand, PropertyChanged } from './ICommand';\nimport { CommandResult } from \"./CommandResult\";\nimport { CommandValidator } from './CommandValidator';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\nimport { Globals } from '../Globals';\nimport { joinPaths } from '../joinPaths';\nimport { UrlHelpers } from '../UrlHelpers';\nimport { GetHttpHeaders } from '../GetHttpHeaders';\nimport { PropertyDescriptor } from '../reflection/PropertyDescriptor';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { ValidationResultSeverity } from '../validation/ValidationResultSeverity';\n\ntype Callback = {\n callback: WeakRef<PropertyChanged>;\n thisArg: WeakRef<object>;\n}\n\n/**\n * Represents an implementation of {@link ICommand} that works with HTTP fetch.\n */\nexport abstract class Command<TCommandContent = object, TCommandResponse = object> implements ICommand<TCommandContent, TCommandResponse> {\n private _microservice: string;\n private _apiBasePath: string;\n private _origin: string;\n private _httpHeadersCallback: GetHttpHeaders;\n abstract readonly route: string;\n abstract readonly validation: CommandValidator;\n abstract readonly propertyDescriptors: PropertyDescriptor[];\n abstract get requestParameters(): string[];\n abstract get properties(): string[];\n\n private _initialValues: object = {};\n private _hasChanges = false;\n private _callbacks: Callback[] = [];\n\n /**\n * Initializes a new instance of the {@link Command<,>} class.\n * @param _responseType Type of response.\n * @param _isResponseTypeEnumerable Whether or not the response type is enumerable.\n */\n constructor(readonly _responseType: Constructor = Object, readonly _isResponseTypeEnumerable: boolean) {\n this._microservice = Globals.microservice ?? '';\n this._apiBasePath = '';\n this._origin = '';\n this._httpHeadersCallback = () => ({});\n }\n\n /** @inheritdoc */\n setMicroservice(microservice: string) {\n this._microservice = microservice;\n }\n\n /** @inheritdoc */\n setApiBasePath(apiBasePath: string): void {\n this._apiBasePath = apiBasePath;\n }\n\n /** @inheritdoc */\n setOrigin(origin: string): void {\n this._origin = origin;\n }\n\n /** @inheritdoc */\n setHttpHeadersCallback(callback: GetHttpHeaders): void {\n this._httpHeadersCallback = callback;\n }\n\n /** @inheritdoc */\n async execute(): Promise<CommandResult<TCommandResponse>> {\n const validationErrors = this.validateRequiredProperties();\n if (validationErrors.length > 0) {\n return CommandResult.validationFailed(validationErrors) as CommandResult<TCommandResponse>;\n }\n\n let actualRoute = this.route;\n\n if (this.requestParameters && this.requestParameters.length > 0) {\n const payload = this.buildPayload();\n const { route } = UrlHelpers.replaceRouteParameters(this.route, payload);\n actualRoute = route;\n }\n\n const result = await this.performRequest(actualRoute, 'Command not found at route', 'Error during server call');\n this.setInitialValuesFromCurrentValues();\n return result;\n }\n\n /** @inheritdoc */\n async validate(): Promise<CommandResult<TCommandResponse>> {\n const actualRoute = `${this.route}/validate`;\n return this.performRequest(actualRoute, 'Command validation endpoint not found at route', 'Error during validation call');\n }\n\n private buildPayload(): object {\n const payload = {};\n this.properties.forEach(property => {\n payload[property] = this[property];\n });\n return payload;\n }\n\n private validateRequiredProperties(): ValidationResult[] {\n const validationErrors: ValidationResult[] = [];\n this.properties.forEach(property => {\n const value = this[property];\n if (value === undefined || value === null || value === '') {\n validationErrors.push(new ValidationResult(\n ValidationResultSeverity.Error,\n `${property} is required`,\n [property],\n null\n ));\n }\n });\n return validationErrors;\n }\n\n private buildHeaders(): HeadersInit {\n const customHeaders = this._httpHeadersCallback?.() ?? {};\n const headers = {\n ...customHeaders,\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n };\n\n if (this._microservice?.length > 0) {\n headers[Globals.microserviceHttpHeader] = this._microservice;\n }\n\n return headers;\n }\n\n private async performRequest(\n route: string,\n notFoundMessage: string,\n errorMessage: string\n ): Promise<CommandResult<TCommandResponse>> {\n const payload = this.buildPayload();\n const headers = this.buildHeaders();\n const actualRoute = joinPaths(this._apiBasePath, route);\n const url = UrlHelpers.createUrlFrom(this._origin, this._apiBasePath, actualRoute);\n\n try {\n const response = await fetch(url, {\n method: 'POST',\n headers,\n body: JsonSerializer.serialize(payload)\n });\n\n if (response.status === 404) {\n return CommandResult.failed([`${notFoundMessage} '${actualRoute}'`]) as CommandResult<TCommandResponse>;\n }\n\n const result = await response.json();\n return new CommandResult(result, this._responseType, this._isResponseTypeEnumerable);\n } catch (ex) {\n return CommandResult.failed([`${errorMessage}: ${ex}`]) as CommandResult<TCommandResponse>;\n }\n }\n\n /** @inheritdoc */\n clear(): void {\n this.properties.forEach(property => {\n this[property] = undefined;\n });\n this._initialValues = {};\n this._hasChanges = false;\n }\n\n /** @inheritdoc */\n setInitialValues(values: TCommandContent) {\n this.properties.forEach(property => {\n if (Object.prototype.hasOwnProperty.call(values, property)) {\n this._initialValues[property] = values[property];\n this[property] = values[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n setInitialValuesFromCurrentValues() {\n this.properties.forEach(property => {\n if (this[property]) {\n this._initialValues[property] = this[property];\n }\n });\n this.updateHasChanges();\n }\n\n /** @inheritdoc */\n revertChanges(): void {\n this.properties.forEach(property => {\n this[property] = this._initialValues[property];\n });\n }\n\n /** @inheritdoc */\n get hasChanges() {\n return this._hasChanges;\n }\n\n /** @inheritdoc */\n propertyChanged(property: string) {\n this.updateHasChanges();\n\n this._callbacks.forEach(callbackContainer => {\n const callback = callbackContainer.callback.deref();\n const thisArg = callbackContainer.thisArg.deref();\n if (callback && thisArg) {\n callback.call(thisArg, property);\n } else {\n this._callbacks = this._callbacks.filter(_ => _.callback !== callbackContainer.callback);\n }\n });\n }\n\n /** @inheritdoc */\n onPropertyChanged(callback: PropertyChanged, thisArg: object) {\n this._callbacks.push({\n callback: new WeakRef(callback),\n thisArg: new WeakRef(thisArg)\n });\n }\n\n private updateHasChanges() {\n this._hasChanges = this.properties.some(property => this[property] !== this._initialValues[property]);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ type ServerCommandResult = {
27
27
  export declare class CommandResult<TResponse = object> implements ICommandResult<TResponse> {
28
28
  static empty: CommandResult;
29
29
  static failed: (exceptionMessages: string[]) => CommandResult;
30
+ static validationFailed: (validationResults: ValidationResult[]) => CommandResult;
30
31
  readonly correlationId: Guid;
31
32
  readonly isSuccess: boolean;
32
33
  readonly isAuthorized: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandResult.d.ts","sourceRoot":"","sources":["../../../commands/CommandResult.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAKnE,KAAK,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK3E,KAAK,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK9F,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAKpE,KAAK,cAAc,GAAG,MAAM,IAAI,CAAC;AAKjC,KAAK,mBAAmB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;AAE3E,KAAK,mBAAmB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;IAGnC,QAAQ,EAAE,GAAG,CAAC;CAEjB,CAAA;AAKD,qBAAa,aAAa,CAAC,SAAS,GAAG,MAAM,CAAE,YAAW,cAAc,CAAC,SAAS,CAAC;IAE/E,MAAM,CAAC,KAAK,EAAE,aAAa,CAWT;IAElB,MAAM,CAAC,MAAM,GAAI,mBAAmB,MAAM,EAAE,KAAG,aAAa,CAa1D;IAGF,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAG7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAG/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IAG/C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAGrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAGrC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAG5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;gBAQlB,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,WAAW,YAAS,EAAE,wBAAwB,EAAE,OAAO;IAyBtH,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;IAYxD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC;IAYjE,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;IAY5D,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC;IAYlE,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;CAM/E"}
1
+ {"version":3,"file":"CommandResult.d.ts","sourceRoot":"","sources":["../../../commands/CommandResult.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAkB,MAAM,sBAAsB,CAAC;AAKnE,KAAK,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK3E,KAAK,QAAQ,CAAC,SAAS,IAAI,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;AAK9F,KAAK,WAAW,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAKpE,KAAK,cAAc,GAAG,MAAM,IAAI,CAAC;AAKjC,KAAK,mBAAmB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;AAE3E,KAAK,mBAAmB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;KACjB,EAAE,CAAC;IACJ,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;IAGnC,QAAQ,EAAE,GAAG,CAAC;CAEjB,CAAA;AAKD,qBAAa,aAAa,CAAC,SAAS,GAAG,MAAM,CAAE,YAAW,cAAc,CAAC,SAAS,CAAC;IAE/E,MAAM,CAAC,KAAK,EAAE,aAAa,CAWT;IAElB,MAAM,CAAC,MAAM,GAAI,mBAAmB,MAAM,EAAE,KAAG,aAAa,CAa1D;IAEF,MAAM,CAAC,gBAAgB,GAAI,mBAAmB,gBAAgB,EAAE,KAAG,aAAa,CAkB9E;IAGF,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC;IAG7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAG5B,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAG/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAG1B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,QAAQ,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IAG/C,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAGrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAGrC,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC;IAG5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;gBAQlB,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,WAAW,YAAS,EAAE,wBAAwB,EAAE,OAAO;IAyBtH,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;IAYxD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC;IAYjE,WAAW,CAAC,QAAQ,EAAE,WAAW,GAAG,aAAa,CAAC,SAAS,CAAC;IAY5D,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC;IAYlE,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,aAAa,CAAC,SAAS,CAAC;CAM/E"}
@@ -28,6 +28,25 @@ class CommandResult {
28
28
  response: null
29
29
  }, Object, false);
30
30
  };
31
+ static validationFailed = (validationResults) => {
32
+ return new CommandResult({
33
+ correlationId: Guid.empty.toString(),
34
+ isSuccess: false,
35
+ isAuthorized: true,
36
+ isValid: false,
37
+ hasExceptions: false,
38
+ validationResults: validationResults.map(_ => ({
39
+ severity: _.severity,
40
+ message: _.message,
41
+ members: _.members,
42
+ state: _.state
43
+ })),
44
+ exceptionMessages: [],
45
+ exceptionStackTrace: '',
46
+ authorizationFailureReason: '',
47
+ response: null
48
+ }, Object, false);
49
+ };
31
50
  correlationId;
32
51
  isSuccess;
33
52
  isAuthorized;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandResult.js","sources":["../../../commands/CommandResult.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Guid } from '@cratis/fundamentals';\nimport { ICommandResult } from './ICommandResult';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\n\n/**\n * Delegate type for the onSuccess callback.\n */\ntype OnSuccess = (<TResponse>(response: TResponse) => void) | (() => void);\n\n/**\n * Delegate type for the onFailed callback.\n */\ntype OnFailed<TResponse> = ((commandResult: CommandResult<TResponse>) => void) | (() => void);\n\n/**\n * Delegate type for the onException callback.\n */\ntype OnException = (messages: string[], stackTrace: string) => void;\n\n/**\n * Delegate type for the onUnauthorized callback.\n */\ntype OnUnauthorized = () => void;\n\n/**\n * Delegate type for the onValidationFailure callback.\n */\ntype OnValidationFailure = (validationResults: ValidationResult[]) => void;\n\ntype ServerCommandResult = {\n correlationId: string;\n isSuccess: boolean;\n isAuthorized: boolean;\n isValid: boolean;\n hasExceptions: boolean;\n validationResults: {\n severity: number;\n message: string;\n members: string[];\n state: object;\n }[];\n exceptionMessages: string[];\n exceptionStackTrace: string;\n authorizationFailureReason: string;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n response: any;\n /* eslint-enable @typescript-eslint/no-explicit-any */\n}\n\n/**\n * Represents the result from executing a {@link ICommand}.\n */\nexport class CommandResult<TResponse = object> implements ICommandResult<TResponse> {\n\n static empty: CommandResult = new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: true,\n isAuthorized: true,\n isValid: true,\n hasExceptions: false,\n validationResults: [],\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n\n static failed = (exceptionMessages: string[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: true,\n hasExceptions: true,\n validationResults: [],\n exceptionMessages: exceptionMessages,\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n /** @inheritdoc */\n readonly correlationId: Guid;\n\n /** @inheritdoc */\n readonly isSuccess: boolean;\n\n /** @inheritdoc */\n readonly isAuthorized: boolean;\n\n /** @inheritdoc */\n readonly isValid: boolean;\n\n /** @inheritdoc */\n readonly hasExceptions: boolean;\n\n /** @inheritdoc */\n readonly validationResults: ValidationResult[];\n\n /** @inheritdoc */\n readonly exceptionMessages: string[];\n\n /** @inheritdoc */\n readonly exceptionStackTrace: string;\n\n /** @inheritdoc */\n readonly authorizationFailureReason: string;\n\n /** @inheritdoc */\n readonly response?: TResponse;\n\n /**\n * Creates an instance of command result.\n * @param {*} result The JSON/any representation of the command result;\n * @param {Constructor} responseInstanceType The {@see Constructor} that represents the type of response, if any. Defaults to {@see Object}.\n * @param {boolean} isResponseTypeEnumerable Whether or not the response type is an enumerable or not.\n */\n constructor(result: ServerCommandResult, responseInstanceType: Constructor = Object, isResponseTypeEnumerable: boolean) {\n this.correlationId = Guid.parse(result.correlationId);\n this.isSuccess = result.isSuccess;\n this.isAuthorized = result.isAuthorized;\n this.isValid = result.isValid;\n this.hasExceptions = result.hasExceptions;\n this.validationResults = result.validationResults.map(_ => new ValidationResult(_.severity, _.message, _.members, _.state));\n this.exceptionMessages = result.exceptionMessages;\n this.exceptionStackTrace = result.exceptionStackTrace;\n this.authorizationFailureReason = result.authorizationFailureReason;\n\n if (result.response) {\n if (isResponseTypeEnumerable) {\n this.response = JsonSerializer.deserializeArrayFromInstance(responseInstanceType, result.response) as TResponse;\n } else {\n this.response = JsonSerializer.deserializeFromInstance(responseInstanceType, result.response) as TResponse;\n }\n }\n }\n\n /**\n * Set up a callback for when the command was successful.\n * @param {OnSuccess} callback The callback to call when the command was successful.\n * @returns {CommandResult} The instance of the command result.\n */\n onSuccess(callback: OnSuccess): CommandResult<TResponse> {\n if (this.isSuccess) {\n callback(this.response as TResponse);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed.\n * @param {OnFailed} callback The callback to call when the command failed.\n * @returns {CommandResult} The instance of the command result.\n */\n onFailed(callback: OnFailed<TResponse>): CommandResult<TResponse> {\n if (!this.isSuccess) {\n callback(this);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed with an exception.\n * @param {OnException} callback The callback to call when the command had an exception.\n * @returns {CommandResult} The instance of the command result.\n */\n onException(callback: OnException): CommandResult<TResponse> {\n if (this.hasExceptions) {\n callback(this.exceptionMessages, this.exceptionStackTrace);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command was unauthorized.\n * @param {OnUnauthorized} callback The callback to call when the command was unauthorized.\n * @returns {CommandResult} The instance of the command result.\n */\n onUnauthorized(callback: OnUnauthorized): CommandResult<TResponse> {\n if (!this.isAuthorized) {\n callback();\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command had validation errors.\n * @param {OnSuccess} callback The callback to call when the command was invalid.\n * @returns {CommandResult} The instance of the command result.\n */\n onValidationFailure(callback: OnValidationFailure): CommandResult<TResponse> {\n if (!this.isValid) {\n callback(this.validationResults);\n }\n return this;\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandResult.js","sources":["../../../commands/CommandResult.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Guid } from '@cratis/fundamentals';\nimport { ICommandResult } from './ICommandResult';\nimport { ValidationResult } from '../validation/ValidationResult';\nimport { Constructor, JsonSerializer } from '@cratis/fundamentals';\n\n/**\n * Delegate type for the onSuccess callback.\n */\ntype OnSuccess = (<TResponse>(response: TResponse) => void) | (() => void);\n\n/**\n * Delegate type for the onFailed callback.\n */\ntype OnFailed<TResponse> = ((commandResult: CommandResult<TResponse>) => void) | (() => void);\n\n/**\n * Delegate type for the onException callback.\n */\ntype OnException = (messages: string[], stackTrace: string) => void;\n\n/**\n * Delegate type for the onUnauthorized callback.\n */\ntype OnUnauthorized = () => void;\n\n/**\n * Delegate type for the onValidationFailure callback.\n */\ntype OnValidationFailure = (validationResults: ValidationResult[]) => void;\n\ntype ServerCommandResult = {\n correlationId: string;\n isSuccess: boolean;\n isAuthorized: boolean;\n isValid: boolean;\n hasExceptions: boolean;\n validationResults: {\n severity: number;\n message: string;\n members: string[];\n state: object;\n }[];\n exceptionMessages: string[];\n exceptionStackTrace: string;\n authorizationFailureReason: string;\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n response: any;\n /* eslint-enable @typescript-eslint/no-explicit-any */\n}\n\n/**\n * Represents the result from executing a {@link ICommand}.\n */\nexport class CommandResult<TResponse = object> implements ICommandResult<TResponse> {\n\n static empty: CommandResult = new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: true,\n isAuthorized: true,\n isValid: true,\n hasExceptions: false,\n validationResults: [],\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n\n static failed = (exceptionMessages: string[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: true,\n hasExceptions: true,\n validationResults: [],\n exceptionMessages: exceptionMessages,\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n static validationFailed = (validationResults: ValidationResult[]): CommandResult => {\n return new CommandResult({\n correlationId: Guid.empty.toString(),\n isSuccess: false,\n isAuthorized: true,\n isValid: false,\n hasExceptions: false,\n validationResults: validationResults.map(_ => ({\n severity: _.severity,\n message: _.message,\n members: _.members,\n state: _.state\n })),\n exceptionMessages: [],\n exceptionStackTrace: '',\n authorizationFailureReason: '',\n response: null\n }, Object, false);\n };\n\n /** @inheritdoc */\n readonly correlationId: Guid;\n\n /** @inheritdoc */\n readonly isSuccess: boolean;\n\n /** @inheritdoc */\n readonly isAuthorized: boolean;\n\n /** @inheritdoc */\n readonly isValid: boolean;\n\n /** @inheritdoc */\n readonly hasExceptions: boolean;\n\n /** @inheritdoc */\n readonly validationResults: ValidationResult[];\n\n /** @inheritdoc */\n readonly exceptionMessages: string[];\n\n /** @inheritdoc */\n readonly exceptionStackTrace: string;\n\n /** @inheritdoc */\n readonly authorizationFailureReason: string;\n\n /** @inheritdoc */\n readonly response?: TResponse;\n\n /**\n * Creates an instance of command result.\n * @param {*} result The JSON/any representation of the command result;\n * @param {Constructor} responseInstanceType The {@see Constructor} that represents the type of response, if any. Defaults to {@see Object}.\n * @param {boolean} isResponseTypeEnumerable Whether or not the response type is an enumerable or not.\n */\n constructor(result: ServerCommandResult, responseInstanceType: Constructor = Object, isResponseTypeEnumerable: boolean) {\n this.correlationId = Guid.parse(result.correlationId);\n this.isSuccess = result.isSuccess;\n this.isAuthorized = result.isAuthorized;\n this.isValid = result.isValid;\n this.hasExceptions = result.hasExceptions;\n this.validationResults = result.validationResults.map(_ => new ValidationResult(_.severity, _.message, _.members, _.state));\n this.exceptionMessages = result.exceptionMessages;\n this.exceptionStackTrace = result.exceptionStackTrace;\n this.authorizationFailureReason = result.authorizationFailureReason;\n\n if (result.response) {\n if (isResponseTypeEnumerable) {\n this.response = JsonSerializer.deserializeArrayFromInstance(responseInstanceType, result.response) as TResponse;\n } else {\n this.response = JsonSerializer.deserializeFromInstance(responseInstanceType, result.response) as TResponse;\n }\n }\n }\n\n /**\n * Set up a callback for when the command was successful.\n * @param {OnSuccess} callback The callback to call when the command was successful.\n * @returns {CommandResult} The instance of the command result.\n */\n onSuccess(callback: OnSuccess): CommandResult<TResponse> {\n if (this.isSuccess) {\n callback(this.response as TResponse);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed.\n * @param {OnFailed} callback The callback to call when the command failed.\n * @returns {CommandResult} The instance of the command result.\n */\n onFailed(callback: OnFailed<TResponse>): CommandResult<TResponse> {\n if (!this.isSuccess) {\n callback(this);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command failed with an exception.\n * @param {OnException} callback The callback to call when the command had an exception.\n * @returns {CommandResult} The instance of the command result.\n */\n onException(callback: OnException): CommandResult<TResponse> {\n if (this.hasExceptions) {\n callback(this.exceptionMessages, this.exceptionStackTrace);\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command was unauthorized.\n * @param {OnUnauthorized} callback The callback to call when the command was unauthorized.\n * @returns {CommandResult} The instance of the command result.\n */\n onUnauthorized(callback: OnUnauthorized): CommandResult<TResponse> {\n if (!this.isAuthorized) {\n callback();\n }\n return this;\n }\n\n /**\n * Set up a callback for when the command had validation errors.\n * @param {OnSuccess} callback The callback to call when the command was invalid.\n * @returns {CommandResult} The instance of the command result.\n */\n onValidationFailure(callback: OnValidationFailure): CommandResult<TResponse> {\n if (!this.isValid) {\n callback(this.validationResults);\n }\n return this;\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"fileNames":["../../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.float16.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../../node_modules/tslib/tslib.d.ts","../../../../../node_modules/@types/react/global.d.ts","../../../../../node_modules/csstype/index.d.ts","../../../../../node_modules/@types/react/index.d.ts","../../../../../node_modules/@types/react/jsx-runtime.d.ts","../../GetHttpHeaders.ts","../../Globals.ts","../../ICanBeConfigured.ts","../../UrlHelpers.ts","../../deepEqual.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Constructor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Field.d.ts","../../../../../node_modules/reflect-metadata/index.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Fields.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/IEquatable.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Guid.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyAccessor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyAccessorDescriptor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyPathResolverProxyHandler.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/fieldDecorator.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/derivedTypeDecorator.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/JsonSerializer.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/DerivedType.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/index.d.ts","../../../../../node_modules/@types/mocha/index.d.ts","../../given.ts","../../validation/ValidationResultSeverity.ts","../../validation/ValidationResult.ts","../../commands/ICommandResult.ts","../../commands/CommandResult.ts","../../reflection/PropertyDescriptor.ts","../../commands/ICommand.ts","../../validation/Validator.ts","../../commands/CommandValidator.ts","../../joinPaths.ts","../../commands/Command.ts","../../commands/CommandResults.ts","../../commands/index.ts","../../identity/IIdentity.ts","../../identity/IIdentityProvider.ts","../../identity/IdentityProviderResult.ts","../../identity/IdentityProvider.ts","../../identity/index.ts","../../queries/Paging.ts","../../queries/SortDirection.ts","../../queries/Sorting.ts","../../queries/IQuery.ts","../../queries/PagingInfo.ts","../../queries/IQueryResult.ts","../../queries/QueryResult.ts","../../reflection/ParameterDescriptor.ts","../../reflection/IHaveParameters.ts","../../queries/IQueryFor.ts","../../queries/SortingActions.ts","../../queries/SortingActionsForQuery.ts","../../queries/ObservableQueryConnection.ts","../../queries/IObservableQueryConnection.ts","../../queries/ObservableQuerySubscription.ts","../../queries/IObservableQueryFor.ts","../../queries/SortingActionsForObservableQuery.ts","../../queries/ValidateRequestArguments.ts","../../reflection/ParametersHelper.ts","../../queries/QueryFor.ts","../../queries/QueryResultWithState.ts","../../queries/NullObservableQueryConnection.ts","../../queries/ObservableQueryFor.ts","../../queries/IQueryProvider.ts","../../queries/QueryProvider.ts","../../queries/index.ts","../../validation/index.ts","../../reflection/index.ts","../../index.ts","../../../../../node_modules/@types/aria-query/index.d.ts","../../../../../node_modules/@babel/types/lib/index.d.ts","../../../../../node_modules/@types/babel__generator/index.d.ts","../../../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../../../node_modules/@types/babel__template/index.d.ts","../../../../../node_modules/@types/babel__traverse/index.d.ts","../../../../../node_modules/@types/babel__core/index.d.ts","../../../../../node_modules/@types/deep-eql/index.d.ts","../../../../../node_modules/assertion-error/index.d.ts","../../../../../node_modules/@types/chai/index.d.ts","../../../../../node_modules/@types/chai-as-promised/index.d.ts","../../../../../node_modules/@types/estree/index.d.ts","../../../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../../../node_modules/@types/node/globals.typedarray.d.ts","../../../../../node_modules/@types/node/buffer.buffer.d.ts","../../../../../node_modules/@types/node/globals.d.ts","../../../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../../../node_modules/@types/node/web-globals/crypto.d.ts","../../../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../../../node_modules/@types/node/web-globals/events.d.ts","../../../../../node_modules/undici-types/utility.d.ts","../../../../../node_modules/undici-types/header.d.ts","../../../../../node_modules/undici-types/readable.d.ts","../../../../../node_modules/undici-types/fetch.d.ts","../../../../../node_modules/undici-types/formdata.d.ts","../../../../../node_modules/undici-types/connector.d.ts","../../../../../node_modules/undici-types/client-stats.d.ts","../../../../../node_modules/undici-types/client.d.ts","../../../../../node_modules/undici-types/errors.d.ts","../../../../../node_modules/undici-types/dispatcher.d.ts","../../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../../node_modules/undici-types/global-origin.d.ts","../../../../../node_modules/undici-types/pool-stats.d.ts","../../../../../node_modules/undici-types/pool.d.ts","../../../../../node_modules/undici-types/handlers.d.ts","../../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../../node_modules/undici-types/h2c-client.d.ts","../../../../../node_modules/undici-types/agent.d.ts","../../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../../node_modules/undici-types/mock-call-history.d.ts","../../../../../node_modules/undici-types/mock-agent.d.ts","../../../../../node_modules/undici-types/mock-client.d.ts","../../../../../node_modules/undici-types/mock-pool.d.ts","../../../../../node_modules/undici-types/snapshot-agent.d.ts","../../../../../node_modules/undici-types/mock-errors.d.ts","../../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../../../node_modules/undici-types/retry-handler.d.ts","../../../../../node_modules/undici-types/retry-agent.d.ts","../../../../../node_modules/undici-types/api.d.ts","../../../../../node_modules/undici-types/cache-interceptor.d.ts","../../../../../node_modules/undici-types/interceptors.d.ts","../../../../../node_modules/undici-types/util.d.ts","../../../../../node_modules/undici-types/cookies.d.ts","../../../../../node_modules/undici-types/patch.d.ts","../../../../../node_modules/undici-types/websocket.d.ts","../../../../../node_modules/undici-types/eventsource.d.ts","../../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../../node_modules/undici-types/content-type.d.ts","../../../../../node_modules/undici-types/cache.d.ts","../../../../../node_modules/undici-types/index.d.ts","../../../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../../../node_modules/@types/node/web-globals/navigator.d.ts","../../../../../node_modules/@types/node/web-globals/storage.d.ts","../../../../../node_modules/@types/node/web-globals/streams.d.ts","../../../../../node_modules/@types/node/assert.d.ts","../../../../../node_modules/@types/node/assert/strict.d.ts","../../../../../node_modules/@types/node/async_hooks.d.ts","../../../../../node_modules/@types/node/buffer.d.ts","../../../../../node_modules/@types/node/child_process.d.ts","../../../../../node_modules/@types/node/cluster.d.ts","../../../../../node_modules/@types/node/console.d.ts","../../../../../node_modules/@types/node/constants.d.ts","../../../../../node_modules/@types/node/crypto.d.ts","../../../../../node_modules/@types/node/dgram.d.ts","../../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../../node_modules/@types/node/dns.d.ts","../../../../../node_modules/@types/node/dns/promises.d.ts","../../../../../node_modules/@types/node/domain.d.ts","../../../../../node_modules/@types/node/events.d.ts","../../../../../node_modules/@types/node/fs.d.ts","../../../../../node_modules/@types/node/fs/promises.d.ts","../../../../../node_modules/@types/node/http.d.ts","../../../../../node_modules/@types/node/http2.d.ts","../../../../../node_modules/@types/node/https.d.ts","../../../../../node_modules/@types/node/inspector.d.ts","../../../../../node_modules/@types/node/inspector.generated.d.ts","../../../../../node_modules/@types/node/module.d.ts","../../../../../node_modules/@types/node/net.d.ts","../../../../../node_modules/@types/node/os.d.ts","../../../../../node_modules/@types/node/path.d.ts","../../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../../node_modules/@types/node/process.d.ts","../../../../../node_modules/@types/node/punycode.d.ts","../../../../../node_modules/@types/node/querystring.d.ts","../../../../../node_modules/@types/node/readline.d.ts","../../../../../node_modules/@types/node/readline/promises.d.ts","../../../../../node_modules/@types/node/repl.d.ts","../../../../../node_modules/@types/node/sea.d.ts","../../../../../node_modules/@types/node/sqlite.d.ts","../../../../../node_modules/@types/node/stream.d.ts","../../../../../node_modules/@types/node/stream/promises.d.ts","../../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../../node_modules/@types/node/stream/web.d.ts","../../../../../node_modules/@types/node/string_decoder.d.ts","../../../../../node_modules/@types/node/test.d.ts","../../../../../node_modules/@types/node/timers.d.ts","../../../../../node_modules/@types/node/timers/promises.d.ts","../../../../../node_modules/@types/node/tls.d.ts","../../../../../node_modules/@types/node/trace_events.d.ts","../../../../../node_modules/@types/node/tty.d.ts","../../../../../node_modules/@types/node/url.d.ts","../../../../../node_modules/@types/node/util.d.ts","../../../../../node_modules/@types/node/v8.d.ts","../../../../../node_modules/@types/node/vm.d.ts","../../../../../node_modules/@types/node/wasi.d.ts","../../../../../node_modules/@types/node/worker_threads.d.ts","../../../../../node_modules/@types/node/zlib.d.ts","../../../../../node_modules/@types/node/index.d.ts","../../../../../node_modules/parse5/dist/common/html.d.ts","../../../../../node_modules/parse5/dist/common/token.d.ts","../../../../../node_modules/parse5/dist/common/error-codes.d.ts","../../../../../node_modules/parse5/dist/tokenizer/preprocessor.d.ts","../../../../../node_modules/entities/dist/commonjs/generated/decode-data-html.d.ts","../../../../../node_modules/entities/dist/commonjs/generated/decode-data-xml.d.ts","../../../../../node_modules/entities/dist/commonjs/decode-codepoint.d.ts","../../../../../node_modules/entities/dist/commonjs/decode.d.ts","../../../../../node_modules/entities/decode.d.ts","../../../../../node_modules/parse5/dist/tokenizer/index.d.ts","../../../../../node_modules/parse5/dist/tree-adapters/interface.d.ts","../../../../../node_modules/parse5/dist/parser/open-element-stack.d.ts","../../../../../node_modules/parse5/dist/parser/formatting-element-list.d.ts","../../../../../node_modules/parse5/dist/parser/index.d.ts","../../../../../node_modules/parse5/dist/tree-adapters/default.d.ts","../../../../../node_modules/parse5/dist/serializer/index.d.ts","../../../../../node_modules/parse5/dist/common/foreign-content.d.ts","../../../../../node_modules/parse5/dist/index.d.ts","../../../../../node_modules/tough-cookie/dist/index.d.ts","../../../../../node_modules/@types/jsdom/base.d.ts","../../../../../node_modules/@types/jsdom/index.d.ts","../../../../../node_modules/@types/json-schema/index.d.ts","../../../../../node_modules/@types/json5/index.d.ts","../../../../../node_modules/@types/react-dom/index.d.ts","../../../../../node_modules/@types/sinonjs__fake-timers/index.d.ts","../../../../../node_modules/@types/sinon/index.d.ts","../../../../../node_modules/@types/sinon-chai/index.d.ts","../../../../../node_modules/@types/tough-cookie/index.d.ts"],"fileIdsList":[[83,87,169,223,240,241],[83,87,88,169,223,240,241],[83,87,88,89,91,106,112,113,114,116,117,169,223,240,241],[83,87,106,110,111,169,223,240,241],[83,87,106,110,111,112,118,169,223,240,241],[83,87,115,169,223,240,241],[83,87,90,112,113,169,223,240,241],[83,87,106,110,169,223,240,241],[83,87,111,112,114,116,118,119,169,223,240,241],[83,87,106,107,169,223,240,241],[83,87,121,169,223,240,241],[83,87,88,121,122,123,169,223,240,241],[83,87,121,122,123,124,169,223,240,241],[83,87,88,89,90,92,117,120,125,151,152,153,169,223,240,241],[83,87,138,169,223,240,241],[83,87,129,132,134,140,169,223,240,241],[83,87,90,126,128,169,223,240,241],[83,87,129,132,134,169,223,240,241],[83,87,106,129,169,223,240,241],[83,87,110,130,169,223,240,241],[83,87,132,138,139,169,223,240,241],[83,87,89,132,139,169,223,240,241],[83,87,88,89,91,106,117,126,127,128,132,133,138,139,140,141,143,144,147,169,223,240,241],[83,87,139,169,223,240,241],[83,87,88,89,91,106,117,126,127,128,132,133,135,143,144,169,223,240,241],[83,87,88,106,129,149,169,223,240,241],[83,87,106,110,130,131,169,223,240,241],[83,87,110,130,131,132,169,223,240,241],[83,87,127,169,223,240,241],[83,87,127,128,169,223,240,241],[83,87,127,128,141,169,223,240,241],[83,87,127,128,135,169,223,240,241],[83,87,126,127,128,129,132,135,136,137,138,139,140,141,142,145,146,148,149,150,169,223,240,241],[83,87,133,169,223,240,241],[83,87,106,169,223,240,241],[83,87,134,169,223,240,241],[83,87,113,133,134,144,169,223,240,241],[83,87,109,169,223,240,241],[83,87,110,115,169,223,240,241],[156,169,223,240,241],[169,223,240,241],[93,169,223,240,241],[93,94,95,169,223,240,241],[97,169,223,240,241],[99,169,223,240,241],[95,169,223,240,241],[93,94,96,97,98,99,100,101,102,103,104,105,169,223,240,241],[156,157,158,159,160,169,223,240,241],[156,158,169,223,240,241],[164,169,223,240,241],[162,163,169,223,240,241],[169,223,234,240,241,269,273,291,292,294],[169,223,240,241,293],[169,220,221,223,240,241],[169,222,223,240,241],[223,240,241],[169,223,228,240,241,258],[169,223,224,229,234,240,241,243,255,266],[169,223,224,225,234,240,241,243],[169,223,226,240,241,267],[169,223,227,228,235,240,241,244],[169,223,228,240,241,255,263],[169,223,229,231,234,240,241,243],[169,222,223,230,240,241],[169,223,231,232,240,241],[169,223,233,234,240,241],[169,222,223,234,240,241],[169,223,234,235,236,240,241,255,266],[169,223,234,235,236,240,241,250,255,258],[169,215,223,231,234,237,240,241,243,255,266],[169,223,234,235,237,238,240,241,243,255,263,266],[169,223,237,239,240,241,255,263,266],[167,168,169,170,171,172,173,174,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272],[169,223,234,240,241],[169,223,240,241,242,266],[169,223,231,234,240,241,243,255],[169,223,240,241,244],[169,223,240,241,245],[169,222,223,240,241,246],[169,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272],[169,223,240,241,248],[169,223,240,241,249],[169,223,234,240,241,250,251],[169,223,240,241,250,252,267,269],[169,223,235,240,241],[169,223,234,240,241,255,256,258],[169,223,240,241,257,258],[169,223,240,241,255,256],[169,223,240,241,258],[169,223,240,241,259],[169,220,223,240,241,255,260],[169,223,234,240,241,261,262],[169,223,240,241,261,262],[169,223,228,240,241,243,255,263],[169,223,240,241,264],[169,223,240,241,243,265],[169,223,237,240,241,249,266],[169,223,228,240,241,267],[169,223,240,241,255,268],[169,223,240,241,242,269],[169,223,240,241,270],[169,223,228,240,241],[169,215,223,240,241],[169,223,240,241,271],[169,215,223,234,236,240,241,246,255,258,266,268,269,271],[169,223,240,241,255,272],[86,169,223,240,241],[84,85,169,223,240,241],[164,169,223,240,241,299],[169,223,240,241,298],[169,223,240,241,281],[169,223,240,241,278,279,280],[169,223,240,241,275],[169,223,240,241,274,275],[169,223,240,241,274],[169,223,240,241,274,275,276,283,284,287,288,289,290],[169,223,240,241,275,284],[169,223,240,241,274,275,276,283,284,285,286],[169,223,240,241,274,284],[169,223,240,241,284,288],[169,223,240,241,275,276,277,282],[169,223,240,241,276],[169,223,240,241,274,275,284],[169,181,184,187,188,223,240,241,266],[169,184,223,240,241,255,266],[169,184,188,223,240,241,266],[169,223,240,241,255],[169,178,223,240,241],[169,182,223,240,241],[169,180,181,184,223,240,241,266],[169,223,240,241,243,263],[169,223,240,241,273],[169,178,223,240,241,273],[169,180,184,223,240,241,243,266],[169,175,176,177,179,183,223,234,240,241,255,266],[169,184,192,200,223,240,241],[169,176,182,223,240,241],[169,184,209,210,223,240,241],[169,176,179,184,223,240,241,258,266,273],[169,184,223,240,241],[169,180,184,223,240,241,266],[169,175,223,240,241],[169,178,179,180,182,183,184,185,186,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,210,211,212,213,214,223,240,241],[169,184,202,205,223,231,240,241],[169,184,192,193,194,223,240,241],[169,182,184,193,195,223,240,241],[169,183,223,240,241],[169,176,178,184,223,240,241],[169,184,188,193,195,223,240,241],[169,188,223,240,241],[169,182,184,187,223,240,241,266],[169,176,180,184,192,223,240,241],[169,184,202,223,240,241],[169,195,223,240,241],[169,178,184,209,223,240,241,258,271,273]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"a6a5253138c5432c68a1510c70fe78a644fe2e632111ba778e1978010d6edfec","impliedFormat":1},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"5e76305d58bcdc924ff2bf14f6a9dc2aa5441ed06464b7e7bd039e611d66a89b","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"0865837f9cd6828d072a96e86044ba047f58abc04005555bfa4bcc6d288d2b18","signature":"6233c192c811d88836046512adc2197a34a7b89b28db670a7a2b31fbe0c2b28a"},{"version":"6f43ff8a6790108e24626c1bfb56e3be45cc09723f21c473e0852314d0174d6d","signature":"4aa39a0a8b8a7e89435ae4ac2fcc48585c3c99cc53bc81f8fa18a0e9520d301d"},{"version":"5d880dddec176baa112ff58e256d95c72772c7d46556ba5f726bce90c7326796","signature":"34fe8eed7525ae97a0cfa1c60e8846cca6999785efec326bc2db606a4c81a909"},{"version":"3fd814b963b82de278bacbaf1eb15d2de042e7feeaa62304a18799196b149190","signature":"c093cddbb521453aa81ea4eb4ef87c7a4602a1475975683a1b8a90f9f5fa31fc"},{"version":"4a59cead9322f899115954e7b302e2699c57fbc2fbe3d038f7300843830b359b","signature":"2e1e7dd9be488ae9ab2bfe83322de90b5c7aa8a406a6d563f0afd389873b6166"},{"version":"3c5b3f1c8adb64ad550d0c0614995fdd1a7af68c27b8a090867837ac75e5dc4d","impliedFormat":99},{"version":"12cc7d59d5646b61a636e0370617ae13eb360031b8e26721d841fc27395b5799","impliedFormat":99},{"version":"8d6d51a5118d000ed3bfe6e1dd1335bebfff3fef23cd2af2f84a24d30f90cc90","affectsGlobalScope":true,"impliedFormat":1},{"version":"87d8b7a19cc151bdd78558b7d8c5776a0fdbdfd7b15ca27a2d5b731254dca0d8","impliedFormat":99},{"version":"374b2233ae455dbcfb065fdf14868312a265330e49db507c5778facab12ed51b","impliedFormat":99},{"version":"3e4580bcbca5adc95b4d1885a84af8f2450638ab071fa11c88aa805f7fe84c29","impliedFormat":99},{"version":"2c8ca64937449516444087b089a6e3ba00a8857263c26b4bd276d7f6545719e7","impliedFormat":99},{"version":"72bb6c88b31100cbd982a148a24c707e9a9a05d34b56bd33488d742b55ae1f6d","impliedFormat":99},{"version":"34e4c71c3ec97292cb2c15bf7420ddb967aaeafb7f16d76fa80ade9a7a73af8c","impliedFormat":99},{"version":"d0637705feb79d2b997259dc9eb74c9fba1dac19006ae3bc2d88aa6318b6deb6","impliedFormat":99},{"version":"3803c87977f241e7991d9849880361a08dca4ed66851506b0cd9b64332df852b","impliedFormat":99},{"version":"2cac2364bb67fb8f111be1c7c1836d01cfa0ce55cef0fbee87b7f8a8364f7f79","impliedFormat":99},{"version":"d423a05eb704d18dabd0bfeee04f9196b777294e6c915a309e7ebcaf4abd7d4c","impliedFormat":99},{"version":"a518814deed3e8f7355cb15a746631be910d15d316ff4a85555c43b68c774c4e","impliedFormat":99},{"version":"29f72ec1289ae3aeda78bf14b38086d3d803262ac13904b400422941a26a3636","affectsGlobalScope":true,"impliedFormat":1},{"version":"59f0a0413bf62e62e853026d1c8fdd41f5e5d1d9ef163433a7dfabda81cd1143","signature":"0d6bf0a261d103c8708f18778eb892e903f8cc85203954982605ab10ddc94aa3"},{"version":"1cb77267c63d74b85f25cc323d14e42f7d14bd941678844dfdb34ef74b6a19a4","signature":"948c0dacb5cc6dffa9b2a3710950c396f870d1571a6ac8f2e51f47ba7138c924"},{"version":"6853ca196c5a23f0433999d36657fd242f5a856764b5fb7721fe928447711a8c","signature":"39a0525f0859e6a2da69a7179758511a8a2611f863450dcf14908c362a7b0b18"},{"version":"52710d22c9ef8e7cf4dd28107916d37df00a90bef46110085c1323366252c11c","signature":"785bbcd9758c54296a9ce94218d81e66138a4fd53c7fcee4dabf61a1007c545c"},{"version":"0d465f277a3ed956050584f7243071542a90c983fe0457d2becd367c4eea5cb2","signature":"761df28737aad5d24db5420cfaf710945baf21822a7104b84f69a02160f800c0"},{"version":"2af716d4b0872de1911cbb51b121aa5c044ed9bc78665bd877b036b14b90f912","signature":"bbf7ffde7666952bf4a12b97068f73508aaca029c1d8ab901d29f0c93dabb367"},{"version":"93634b1d4ec79368f4be8a97a6e864f1653b229417ef2d87d4c1450a89de2c2d","signature":"301ff9ff87b73c795fd28a3bf5f9e05b4265f4e49090fcd88f7dda528ffd8918"},{"version":"c2821f023c4074afbdc6eb7c747e04c4da9a2159e9862c05da119cff2264782e","signature":"4088c22dfee22f8bbe1e077e62122163ccc7a8803a9a0729c194a19f9564b50e"},{"version":"e1e9274bbd575b8f5eb36e43d5d92856f86088d2b95f56f27cc11ea472d29d9d","signature":"f67a13951fe33ef2ba915939860d3fc510c59aa962c05ca4a7b75b9e9e16fcd6"},{"version":"5450a0862382f8de6f95f0c8cb410c773d8eb6e887af2ce8e9e6b95113e4eaf5","signature":"84d8a7875ac6bfbfbd20639a65f3e1fdca5d8b0d438a70c06b3697700bc0b7c6"},{"version":"1376057e7451aa77f4367187b577869bfe28d0a414dc657df59cd6c5002cc3bc","signature":"d3b0565e2c4dd5c18a40db46f66e8a6226c9a7a0d2d564868a2ff45d3d27732b"},{"version":"355f16ffa13bc3386d0ca7727c7157c6ea65b1d0ab1f44d537e1fe075843af4b","signature":"fa052ef01ea19728754d70086b1bcf7587899c7aa3a7789d83613bdb5ff31f68"},{"version":"eba9198b11d696151952ef3db91632f8d3637c61aeff063542fc19808a597f2b","signature":"97ae53172109f9a94601da014edca400c0456162e5b89dd31674ac62ac60973f"},{"version":"c7ed6c64887b69b371ead246e06c39c255b21011f51520831231bdb49bd008cf","signature":"d4ee46bae28804505aeafe3dd30d9c62b3de11007820753f8b80562d76ab43d1"},{"version":"36d399baa1f1a12ce713cffbcc2a359c967b00f778a559e93ee6b5b054b2dd57","signature":"f12e7ab2a34d51c1741cb60521cae98b11c4c15c28ee56d0632d02b3d8ee4d72"},{"version":"8d297d9c3964fbb1250eecc2e12e697cd311fcbc8815ddbfbde2a9910f953da3","signature":"28e39d98b82166c0499cce2928227ad47a648249ee5ebb3f3f8837f01f5c67bc"},{"version":"d6504a8b9ce26ad6a4d9f8f093f13ed4608983c917f0528979322405d8ab0906","signature":"8fd5947a56046dd26e9350712c62933984f7b96c50e0c6e3f3c1e02bcf49184a"},{"version":"7b4cc1932cd91ad6b8bbb08238bcf4bdc549538ffec9a7c26a7cbecb8b8d2718","signature":"5cc726d1f8a2124ad40694ebcd544d6cb8954785dba314d4d0e24ac32091c872"},{"version":"a88ebf8a584b57ddbf90676828b8e269ab8487f7e6b5b8f7fb19a76aae7d5cec","signature":"1d3aa0e74a0ae10904a2c36d622a3e42f5ce4848511266cc12ae1274cdd7a857"},{"version":"d66a199a22688bcbe8c6e31dd135b3e144cacbae7f8d11291fcb3fba1cafbc7b","signature":"e5b7cc79660808cde94bf82de1a7b5b99b8148b95d434890f49ad2e501629450"},{"version":"286983c011b6d4f6b020ec6326715590f49dd330205da12aaf066489c3dca79a","signature":"ef274ea43189ce7fde0d085753be916a2ed212e059de367df5b2dcfd2be9ffe8"},{"version":"34b167aab6bb9e00f9a0f85e27c5aa50e1ecb4600021449872e365f1aa857a8d","signature":"46b11e0467725e112edd429bb987e1388d5c5ae973f52b8511480f8cf9513fea"},{"version":"7932b7b1a3217a421cee78139906b34d0211000822f682aafb5fc70dac2bc3c4","signature":"fdaf319a0c3fe10a891a2f5b098c920360bdbfd771c459badabaec1ddcaa221e"},{"version":"11ca5f48bb2c0e0646f0b0182115edb4a677025fc5a61b55dec23a6513a7769e","signature":"43b7193d001cf6e032116e72c5f8f9e9b3c4c22dcb42483f776ecc5c701c20cd"},{"version":"9c1c26d8292408873ac8134e0ae5aaebf88b34967a372d8a85d050d9f0e601ac","signature":"30382e1b5895113985a5c7f3772c7d5f440dc912319373f742af771bd1159610"},{"version":"3c363473c840ae2cb26206f0abaf0ee9d52fb0c82176be86bf32aaffc3e99905","signature":"16c738c3101ec0f10d4fc57c6a7d459be4830c5ce5baa802fb91f6439f54f319"},{"version":"db2a01e889887a57a7de1af569d254e0c46f610d3b34e2b74329b0b17e5cdfee","signature":"99f0d1aaaa9135745e7bd1c96603e801113e888e5ee9a56b5e30a13f7792681f"},{"version":"a20f37bf88f0b6cd5a26b1e8e41287002c8e2d8e3f21dd2a2cea9df5722ce4ef","signature":"150d8909b1a3d3fe7f535a687ff8d9cf14a34d996a8f7bdb388e5e1f0c3551e6"},{"version":"8b7b4f05f721d7386c7ef4b49b306c73b32c74b902ea2c317bfb85b0b3235c18","signature":"6b0193b486f9fa7ae377bda9df2a19a42e2b8bd9ba84e8addfd4fec5c21fcf21"},{"version":"78f1fd4a2ef72865925f92ceeedc11daaf28992c3f8577e7fe6411ba43593bed","signature":"b443ded609eb492fdb0f9ea680d7bc22e54b9bd0201321e457507e6d711b241c"},{"version":"2b876841ee0f2147729e033918005c71ed31e8d01b39545286e273bb919524d1","signature":"30117f0defb684ef0d4399b20e6f52ec3662e8b80612fd727e42c3eb18b2bc26"},{"version":"1c72ec19de877455eadbb5f256f55606c1386a38e13f58f6524dedae2405d407","signature":"ca2dcbce12129454a3c9b3e77088d445258b0e5f9fd7f8eb5c9414f155ee8c37"},{"version":"b47572cf7bc284e310e279693049150936c3e7d91206f03a988306ef532ac7e0","signature":"d09e88a6d51021684eefcc0667365cc2a04f2034685a04a30f4241c744a19e60"},{"version":"508195dd2576ab104c3632e13ac8f4a9611ef444d89b1e5dd50490a91d07a8be","signature":"a92737791e73747051df717b3c88d826d827b833eb0c7e5daa0ab5b2410fa775"},{"version":"a29621af6531fb76ba9ada19745f1e868f5c2f74ed3d0ce4598f71c67ad2093c","signature":"4ce209f787ed5bdaeeae74f40e4ed9abe4b71ee5edc166a788feddcff2b34ec9"},{"version":"838c95520dad293e758e82670d8c15906e9545dd3676a2114dbc6ced4ce27a66","signature":"57e8f32ca6a86c9dfc7173c270f25f2dac96dd988a0c9b404abc18206127a46d"},{"version":"495e510e32c9a7860a8f22ad0a4539941d0a7cc6f008657a4f62ae9bb7d0be56","signature":"2813f753a1d612ba83741720fd567f0cf656e8ce0a0ab22b037161c149360bdb"},{"version":"7e3aadccf7e77b56aa8b4f4104e3e55480d3ab03562ddb030d2e6bdcc88aab20","signature":"d35c7211ad455b5161992f589fddb340ae8e4d77bf4edfd92fe81f0baded1d8a"},{"version":"cdbd9dc1e38003d810f51940dc24cef4205c54ff3172ddfc23bbde967cd72ca4","signature":"ae377dd574fae8fc64bb3d1da743ddd16a12f35d7b96a1e63aeb24b5414239f7"},{"version":"87fc8233cb3d5b89d7a1732fed29a8470f9b8c5dd87666fb9f04a5bb0d6ad362","signature":"19aa3076a48126c25edad7cfd03e4c68ea7a77f45371a4bb58b45f8d34b0fcc4"},{"version":"db35dadaa98206bace5705a8b8af3600393fbeba818ac8808c2dc599e916baae","signature":"d109972b755e6257f43009c267730074de71aa452be963a27829075831c5a142"},{"version":"ca53d3b8a81f5722dec5baafc280f36dd9b7b5ac8685b09d2821d618c7213110","signature":"7817e3c6e4077d31b8ba3717d158a7956bf6e2cb586a9b491006b33618d3d715"},{"version":"95f08805327fc09996d12dc2cd8cce1ecbc6c3ab1d8baf4aa1ea3e57ab5f5b25","signature":"dc1fa4e287c1f0822e5fdacb5761b1253c5ce35e0cb320e14d5e20a04e0ef65a"},{"version":"6c9b2f19db7791f1a4131739ae58c5c9c355ce5700465c0722aad73887d3141f","signature":"823d1c940425ff312468f2d4488a60f9a992dc7863ada0710a6926e31bdb9e67"},{"version":"280d555067719d2c1bb2465306887a61118867de822f8df7f43180ef60faad5a","signature":"90aaeba147e5401f68f5880ab30f7c891df8483983f1a3e430cfb663ebce7a34"},{"version":"2b13af58dafaa5d026c802844ce70cc9e79c9d20aa1742b4b4d3df8950df7b67","signature":"272f48c176dade9bb2e11b3444c2cb34259f2266c976212b77bd6220f853028a"},{"version":"e047a23d5cc2185fa5d4b31443afd032a5c2f578ff855984b3d2e5278c5c7005","signature":"5193233f2cab698de0710063faac9946a84aaf2f2b901287203b2f2d02b4e235"},{"version":"ae77d81a5541a8abb938a0efedf9ac4bea36fb3a24cc28cfa11c598863aba571","impliedFormat":1},{"version":"c2c2a861a338244d7dd700d0c52a78916b4bb75b98fc8ca5e7c501899fc03796","impliedFormat":1},{"version":"b6d03c9cfe2cf0ba4c673c209fcd7c46c815b2619fd2aad59fc4229aaef2ed43","impliedFormat":1},{"version":"adb467429462e3891de5bb4a82a4189b92005d61c7f9367c089baf03997c104e","impliedFormat":1},{"version":"670a76db379b27c8ff42f1ba927828a22862e2ab0b0908e38b671f0e912cc5ed","impliedFormat":1},{"version":"13b77ab19ef7aadd86a1e54f2f08ea23a6d74e102909e3c00d31f231ed040f62","impliedFormat":1},{"version":"069bebfee29864e3955378107e243508b163e77ab10de6a5ee03ae06939f0bb9","impliedFormat":1},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"6550c1290df354eba9437fbf470699d7ee9800490e3179565c56e203eb6f42c1","affectsGlobalScope":true,"impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"378281aa35786c27d5811af7e6bcaa492eebd0c7013d48137c35bbc69a2b9751","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"1b2dd1cbeb0cc6ae20795958ba5950395ebb2849b7c8326853dd15530c77ab0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"387a023d363f755eb63450a66c28b14cdd7bc30a104565e2dbf0a8988bb4a56c","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"830171b27c5fdf9bcbe4cf7d428fcf3ae2c67780fb7fbdccdf70d1623d938bc4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ea15fd99b2e34cb25fe8346c955000bb70c8b423ae4377a972ef46bfb37f595","impliedFormat":1},{"version":"7cf69dd5502c41644c9e5106210b5da7144800670cbe861f66726fa209e231c4","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"f9b4137a0d285bd77dba2e6e895530112264310ae47e07bf311feae428fb8b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b21e13ed07d0df176ae31d6b7f01f7b17d66dbeb489c0d31d00de2ca14883da","impliedFormat":1},{"version":"51aecd2df90a3cffea1eb4696b33b2d78594ea2aa2138e6b9471ec4841c6c2ee","impliedFormat":1},{"version":"9d8f9e63e29a3396285620908e7f14d874d066caea747dc4b2c378f0599166b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"f929f0b6b3421a2d34344b0f421f45aeb2c84ad365ebf29d04312023b3accc58","impliedFormat":1},{"version":"db9ada976f9e52e13f7ae8b9a320f4b67b87685938c5879187d8864b2fbe97f3","impliedFormat":1},{"version":"9f39e70a354d0fba29ac3cdf6eca00b7f9e96f64b2b2780c432e8ea27f133743","impliedFormat":1},{"version":"0dace96cc0f7bc6d0ee2044921bdf19fe42d16284dbcc8ae200800d1c9579335","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"c64e1888baaa3253ca4405b455e4bf44f76357868a1bd0a52998ade9a092ad78","affectsGlobalScope":true,"impliedFormat":1},{"version":"d8cf132379078d0974a59df26069689a2d33c7dc826b5be56231841cb2f32e58","impliedFormat":1},{"version":"fbf413fc617837453c878a9174a1f1b383616857a3f8366bc41cf30df4aea7d5","impliedFormat":1},{"version":"148c73ec11318850f571172ceae3e55ce479d850fe18ec8eae0abd99d9f6c319","impliedFormat":1},{"version":"230bdc111d7578276e4a3bb9d075d85c78c6b68f428c3a9935e2eaa10f4ae1f5","impliedFormat":1},{"version":"e8aabbee5e7b9101b03bb4222607d57f38859b8115a8050a4eb91b4ee43a3a73","impliedFormat":1},{"version":"bbf42f98a5819f4f06e18c8b669a994afe9a17fe520ae3454a195e6eabf7700d","impliedFormat":1},{"version":"c0bb1b65757c72bbf8ddf7eaa532223bacf58041ff16c883e76f45506596e925","impliedFormat":1},{"version":"c8b85f7aed29f8f52b813f800611406b0bfe5cf3224d20a4bdda7c7f73ce368e","affectsGlobalScope":true,"impliedFormat":1},{"version":"145dcf25fd4967c610c53d93d7bc4dce8fbb1b6dd7935362472d4ae49363c7ba","impliedFormat":1},{"version":"ff65b8a8bd380c6d129becc35de02f7c29ad7ce03300331ca91311fb4044d1a9","impliedFormat":1},{"version":"76957a6d92b94b9e2852cf527fea32ad2dc0ef50f67fe2b14bd027c9ceef2d86","impliedFormat":1},{"version":"9043daec15206650fa119bad6b8d70136021ea7d52673a71f79a87a42ee38d44","affectsGlobalScope":true,"impliedFormat":1},{"version":"4e2de7ab2f74e36d7078bccdf831585b10dc6330bab56054921531b03f9beaf3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"8c81fd4a110490c43d7c578e8c6f69b3af01717189196899a6a44f93daa57a3a","impliedFormat":1},{"version":"5fb39858b2459864b139950a09adae4f38dad87c25bf572ce414f10e4bd7baab","impliedFormat":1},{"version":"65faec1b4bd63564aeec33eab9cacfaefd84ce2400f03903a71a1841fbce195f","impliedFormat":1},{"version":"b33b74b97952d9bf4fbd2951dcfbb5136656ddb310ce1c84518aaa77dbca9992","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b306cd4282bbb54d4a6bb23cfb7a271160983dfc38c67b5a132504cfcc34896","affectsGlobalScope":true,"impliedFormat":1},{"version":"c119835edf36415081dfd9ed15fc0cd37aaa28d232be029ad073f15f3d88c323","impliedFormat":1},{"version":"450172a56b944c2d83f45cc11c9a388ea967cd301a21202aa0a23c34c7506a18","impliedFormat":1},{"version":"9705cd157ffbb91c5cab48bdd2de5a437a372e63f870f8a8472e72ff634d47c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"72f8936aebf0c4a1adab767b97d34ba7d3a308afcf76de4417b9c16fb92ed548","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"69e0a41d620fb678a899c65e073413b452f4db321b858fe422ad93fd686cd49a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3585d6891e9ea18e07d0755a6d90d71331558ba5dc5561933553209f886db106","affectsGlobalScope":true,"impliedFormat":1},{"version":"86be71cbb0593468644932a6eb96d527cfa600cecfc0b698af5f52e51804451d","impliedFormat":1},{"version":"84dd6b0fd2505135692935599d6606f50a421389e8d4535194bcded307ee5cf2","impliedFormat":1},{"version":"0d5b085f36e6dc55bc6332ecb9c733be3a534958c238fb8d8d18d4a2b6f2a15a","impliedFormat":1},{"version":"db19ea066fdc5f97df3f769e582ae3000380ab7942e266654bdb1a4650d19eaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"2a034894bf28c220a331c7a0229d33564803abe2ac1b9a5feee91b6b9b6e88ea","impliedFormat":1},{"version":"d7e9ab1b0996639047c61c1e62f85c620e4382206b3abb430d9a21fb7bc23c77","impliedFormat":1},{"version":"19990350fca066265b2c190c9b6cde1229f35002ea2d4df8c9e397e9942f6c89","impliedFormat":99},{"version":"8fb8fdda477cd7382477ffda92c2bb7d9f7ef583b1aa531eb6b2dc2f0a206c10","impliedFormat":99},{"version":"66995b0c991b5c5d42eff1d950733f85482c7419f7296ab8952e03718169e379","impliedFormat":99},{"version":"9863f888da357e35e013ca3465b794a490a198226bd8232c2f81fb44e16ff323","impliedFormat":99},{"version":"84bc2d80326a83ee4a6e7cba2fd480b86502660770c0e24da96535af597c9f1e","impliedFormat":1},{"version":"ea27768379b866ee3f5da2419650acdb01125479f7af73580a4bceb25b79e372","impliedFormat":1},{"version":"598931eeb4362542cae5845f95c5f0e45ac668925a40ce201e244d7fe808e965","impliedFormat":1},{"version":"da9ef88cde9f715756da642ad80c4cd87a987f465d325462d6bc2a0b11d202c8","impliedFormat":1},{"version":"9462ab013df86c16a2a69ca0a3b6f31d4fd86dd29a947e14b590eb20806f220b","impliedFormat":99},{"version":"b4c6184d78303b0816e779a48bef779b15aea4a66028eb819aac0abee8407dea","impliedFormat":99},{"version":"db085d2171d48938a99e851dafe0e486dce9859e5dfa73c21de5ed3d4d6fb0c5","impliedFormat":99},{"version":"62a3ad1ddd1f5974b3bf105680b3e09420f2230711d6520a521fab2be1a32838","impliedFormat":99},{"version":"a77be6fc44c876bc10c897107f84eaba10790913ebdcad40fcda7e47469b2160","impliedFormat":99},{"version":"06cf55b6da5cef54eaaf51cdc3d4e5ebf16adfdd9ebd20cec7fe719be9ced017","impliedFormat":99},{"version":"91f5dbcdb25d145a56cffe957ec665256827892d779ef108eb2f3864faff523b","impliedFormat":99},{"version":"052ba354bab8fb943e0bc05a0769f7b81d7c3b3c6cd0f5cfa53c7b2da2a525c5","impliedFormat":99},{"version":"927955a3de5857e0a1c575ced5a4245e74e6821d720ed213141347dd1870197f","impliedFormat":99},{"version":"fec804d54cd97dd77e956232fc37dc13f53e160d4bbeeb5489e86eeaa91f7ebd","impliedFormat":99},{"version":"1fd5dcbeb175a97c46ac125c12cb8f0de5186e76f5ee3c4708fa0cca1874d585","impliedFormat":99},{"version":"1e00db245ee0a8b165a7ed7eebc9b9666b3836fe61b742149392010eed018814","impliedFormat":1},{"version":"af11413ffc8c34a2a2475cb9d2982b4cc87a9317bf474474eedaacc4aaab4582","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"baf3507287629018d38c88e2636dd041550c70620bb774127011eb6dc3b361c0","impliedFormat":1},{"version":"12d5592986cbcd3404fa50481df6b62ed74f7035ea0d6a27c207844b7bc7c950","impliedFormat":1},{"version":"3be709044ba3682e21e16e6deec00c91a502d8adfc8eaeb423e5ad51fd3cb80b","affectsGlobalScope":true,"impliedFormat":99},{"version":"03c258e060b7da220973f84b89615e4e9850e9b5d30b3a8e4840b3e3268ae8eb","impliedFormat":1}],"root":[[88,92],[108,154]],"options":{"allowJs":false,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"assumeChangesOnlyAffectDirectDependencies":true,"checkJs":false,"composite":true,"declaration":true,"declarationMap":true,"downlevelIteration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"jsx":4,"module":7,"newLine":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"../..","skipLibCheck":true,"sourceMap":true,"strict":true,"strictNullChecks":true,"stripInternal":true,"target":9},"referencedMap":[[88,1],[89,1],[90,2],[91,1],[118,3],[112,4],[119,5],[116,6],[114,7],[111,8],[120,9],[92,1],[108,10],[121,1],[122,11],[124,12],[123,1],[125,13],[154,14],[117,1],[139,15],[141,16],[129,17],[135,18],[149,19],[131,20],[147,21],[138,22],[148,23],[140,24],[126,1],[130,1],[145,25],[150,26],[132,27],[146,28],[127,1],[128,29],[136,30],[142,31],[137,32],[143,1],[151,33],[134,34],[133,35],[144,36],[113,35],[153,37],[110,38],[109,1],[115,1],[152,39],[158,40],[156,41],[93,41],[105,42],[94,42],[96,43],[98,44],[97,41],[104,42],[99,41],[100,45],[101,41],[103,46],[102,42],[106,47],[155,41],[161,48],[157,40],[159,49],[160,40],[165,50],[164,51],[162,41],[166,41],[293,52],[294,53],[295,41],[296,41],[107,41],[220,54],[221,54],[222,55],[169,56],[223,57],[224,58],[225,59],[167,41],[226,60],[227,61],[228,62],[229,63],[230,64],[231,65],[232,65],[233,66],[234,67],[235,68],[236,69],[170,41],[168,41],[237,70],[238,71],[239,72],[273,73],[240,74],[241,41],[242,75],[243,76],[244,77],[245,78],[246,79],[247,80],[248,81],[249,82],[250,83],[251,83],[252,84],[253,41],[254,85],[255,86],[257,87],[256,88],[258,89],[259,90],[260,91],[261,92],[262,93],[263,94],[264,95],[265,96],[266,97],[267,98],[268,99],[269,100],[270,101],[171,41],[172,102],[173,41],[174,41],[216,103],[217,104],[218,41],[219,89],[271,105],[272,106],[297,107],[84,41],[86,108],[87,107],[300,109],[299,110],[298,41],[301,41],[163,41],[85,41],[282,111],[280,41],[281,112],[278,41],[279,41],[276,113],[290,114],[274,41],[275,115],[291,116],[286,117],[287,118],[285,119],[289,120],[283,121],[277,122],[288,123],[284,114],[95,41],[292,41],[83,41],[81,41],[82,41],[13,41],[14,41],[16,41],[15,41],[2,41],[17,41],[18,41],[19,41],[20,41],[21,41],[22,41],[23,41],[24,41],[3,41],[25,41],[26,41],[4,41],[27,41],[31,41],[28,41],[29,41],[30,41],[32,41],[33,41],[34,41],[5,41],[35,41],[36,41],[37,41],[38,41],[6,41],[42,41],[39,41],[40,41],[41,41],[43,41],[7,41],[44,41],[49,41],[50,41],[45,41],[46,41],[47,41],[48,41],[8,41],[54,41],[51,41],[52,41],[53,41],[55,41],[9,41],[56,41],[57,41],[58,41],[60,41],[59,41],[61,41],[62,41],[10,41],[63,41],[64,41],[65,41],[11,41],[66,41],[67,41],[68,41],[69,41],[70,41],[1,41],[71,41],[72,41],[12,41],[76,41],[74,41],[79,41],[78,41],[73,41],[77,41],[75,41],[80,41],[192,124],[204,125],[190,126],[205,127],[214,128],[181,129],[182,130],[180,131],[213,132],[208,133],[212,134],[184,135],[201,136],[183,137],[211,138],[178,139],[179,133],[185,140],[186,41],[191,141],[189,140],[176,142],[215,143],[206,144],[195,145],[194,140],[196,146],[199,147],[193,148],[197,149],[209,132],[187,150],[188,151],[200,152],[177,127],[203,153],[202,140],[198,154],[207,41],[175,41],[210,155]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
1
+ {"fileNames":["../../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.object.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.es2024.string.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.array.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.float16.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.error.d.ts","../../../../../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../../node_modules/tslib/tslib.d.ts","../../../../../node_modules/@types/react/global.d.ts","../../../../../node_modules/csstype/index.d.ts","../../../../../node_modules/@types/react/index.d.ts","../../../../../node_modules/@types/react/jsx-runtime.d.ts","../../GetHttpHeaders.ts","../../Globals.ts","../../ICanBeConfigured.ts","../../UrlHelpers.ts","../../deepEqual.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Constructor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Field.d.ts","../../../../../node_modules/reflect-metadata/index.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Fields.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/IEquatable.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/Guid.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyAccessor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyAccessorDescriptor.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/PropertyPathResolverProxyHandler.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/fieldDecorator.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/derivedTypeDecorator.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/JsonSerializer.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/DerivedType.d.ts","../../../../../node_modules/@cratis/fundamentals/dist/esm/index.d.ts","../../../../../node_modules/@types/mocha/index.d.ts","../../given.ts","../../validation/ValidationResultSeverity.ts","../../validation/ValidationResult.ts","../../commands/ICommandResult.ts","../../commands/CommandResult.ts","../../reflection/PropertyDescriptor.ts","../../commands/ICommand.ts","../../validation/Validator.ts","../../commands/CommandValidator.ts","../../joinPaths.ts","../../commands/Command.ts","../../commands/CommandResults.ts","../../commands/index.ts","../../identity/IIdentity.ts","../../identity/IIdentityProvider.ts","../../identity/IdentityProviderResult.ts","../../identity/IdentityProvider.ts","../../identity/index.ts","../../queries/Paging.ts","../../queries/SortDirection.ts","../../queries/Sorting.ts","../../queries/IQuery.ts","../../queries/PagingInfo.ts","../../queries/IQueryResult.ts","../../queries/QueryResult.ts","../../reflection/ParameterDescriptor.ts","../../reflection/IHaveParameters.ts","../../queries/IQueryFor.ts","../../queries/SortingActions.ts","../../queries/SortingActionsForQuery.ts","../../queries/ObservableQueryConnection.ts","../../queries/IObservableQueryConnection.ts","../../queries/ObservableQuerySubscription.ts","../../queries/IObservableQueryFor.ts","../../queries/SortingActionsForObservableQuery.ts","../../queries/ValidateRequestArguments.ts","../../reflection/ParametersHelper.ts","../../queries/QueryFor.ts","../../queries/QueryResultWithState.ts","../../queries/NullObservableQueryConnection.ts","../../queries/ObservableQueryFor.ts","../../queries/IQueryProvider.ts","../../queries/QueryProvider.ts","../../queries/index.ts","../../validation/index.ts","../../reflection/index.ts","../../index.ts","../../../../../node_modules/@types/aria-query/index.d.ts","../../../../../node_modules/@babel/types/lib/index.d.ts","../../../../../node_modules/@types/babel__generator/index.d.ts","../../../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../../../node_modules/@types/babel__template/index.d.ts","../../../../../node_modules/@types/babel__traverse/index.d.ts","../../../../../node_modules/@types/babel__core/index.d.ts","../../../../../node_modules/@types/deep-eql/index.d.ts","../../../../../node_modules/assertion-error/index.d.ts","../../../../../node_modules/@types/chai/index.d.ts","../../../../../node_modules/@types/chai-as-promised/index.d.ts","../../../../../node_modules/@types/estree/index.d.ts","../../../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../../../node_modules/@types/node/globals.typedarray.d.ts","../../../../../node_modules/@types/node/buffer.buffer.d.ts","../../../../../node_modules/@types/node/globals.d.ts","../../../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../../../node_modules/@types/node/web-globals/crypto.d.ts","../../../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../../../node_modules/@types/node/web-globals/events.d.ts","../../../../../node_modules/undici-types/utility.d.ts","../../../../../node_modules/undici-types/header.d.ts","../../../../../node_modules/undici-types/readable.d.ts","../../../../../node_modules/undici-types/fetch.d.ts","../../../../../node_modules/undici-types/formdata.d.ts","../../../../../node_modules/undici-types/connector.d.ts","../../../../../node_modules/undici-types/client-stats.d.ts","../../../../../node_modules/undici-types/client.d.ts","../../../../../node_modules/undici-types/errors.d.ts","../../../../../node_modules/undici-types/dispatcher.d.ts","../../../../../node_modules/undici-types/global-dispatcher.d.ts","../../../../../node_modules/undici-types/global-origin.d.ts","../../../../../node_modules/undici-types/pool-stats.d.ts","../../../../../node_modules/undici-types/pool.d.ts","../../../../../node_modules/undici-types/handlers.d.ts","../../../../../node_modules/undici-types/balanced-pool.d.ts","../../../../../node_modules/undici-types/h2c-client.d.ts","../../../../../node_modules/undici-types/agent.d.ts","../../../../../node_modules/undici-types/mock-interceptor.d.ts","../../../../../node_modules/undici-types/mock-call-history.d.ts","../../../../../node_modules/undici-types/mock-agent.d.ts","../../../../../node_modules/undici-types/mock-client.d.ts","../../../../../node_modules/undici-types/mock-pool.d.ts","../../../../../node_modules/undici-types/snapshot-agent.d.ts","../../../../../node_modules/undici-types/mock-errors.d.ts","../../../../../node_modules/undici-types/proxy-agent.d.ts","../../../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../../../node_modules/undici-types/retry-handler.d.ts","../../../../../node_modules/undici-types/retry-agent.d.ts","../../../../../node_modules/undici-types/api.d.ts","../../../../../node_modules/undici-types/cache-interceptor.d.ts","../../../../../node_modules/undici-types/interceptors.d.ts","../../../../../node_modules/undici-types/util.d.ts","../../../../../node_modules/undici-types/cookies.d.ts","../../../../../node_modules/undici-types/patch.d.ts","../../../../../node_modules/undici-types/websocket.d.ts","../../../../../node_modules/undici-types/eventsource.d.ts","../../../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../../../node_modules/undici-types/content-type.d.ts","../../../../../node_modules/undici-types/cache.d.ts","../../../../../node_modules/undici-types/index.d.ts","../../../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../../../node_modules/@types/node/web-globals/navigator.d.ts","../../../../../node_modules/@types/node/web-globals/storage.d.ts","../../../../../node_modules/@types/node/web-globals/streams.d.ts","../../../../../node_modules/@types/node/assert.d.ts","../../../../../node_modules/@types/node/assert/strict.d.ts","../../../../../node_modules/@types/node/async_hooks.d.ts","../../../../../node_modules/@types/node/buffer.d.ts","../../../../../node_modules/@types/node/child_process.d.ts","../../../../../node_modules/@types/node/cluster.d.ts","../../../../../node_modules/@types/node/console.d.ts","../../../../../node_modules/@types/node/constants.d.ts","../../../../../node_modules/@types/node/crypto.d.ts","../../../../../node_modules/@types/node/dgram.d.ts","../../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../../node_modules/@types/node/dns.d.ts","../../../../../node_modules/@types/node/dns/promises.d.ts","../../../../../node_modules/@types/node/domain.d.ts","../../../../../node_modules/@types/node/events.d.ts","../../../../../node_modules/@types/node/fs.d.ts","../../../../../node_modules/@types/node/fs/promises.d.ts","../../../../../node_modules/@types/node/http.d.ts","../../../../../node_modules/@types/node/http2.d.ts","../../../../../node_modules/@types/node/https.d.ts","../../../../../node_modules/@types/node/inspector.d.ts","../../../../../node_modules/@types/node/inspector.generated.d.ts","../../../../../node_modules/@types/node/module.d.ts","../../../../../node_modules/@types/node/net.d.ts","../../../../../node_modules/@types/node/os.d.ts","../../../../../node_modules/@types/node/path.d.ts","../../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../../node_modules/@types/node/process.d.ts","../../../../../node_modules/@types/node/punycode.d.ts","../../../../../node_modules/@types/node/querystring.d.ts","../../../../../node_modules/@types/node/readline.d.ts","../../../../../node_modules/@types/node/readline/promises.d.ts","../../../../../node_modules/@types/node/repl.d.ts","../../../../../node_modules/@types/node/sea.d.ts","../../../../../node_modules/@types/node/sqlite.d.ts","../../../../../node_modules/@types/node/stream.d.ts","../../../../../node_modules/@types/node/stream/promises.d.ts","../../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../../node_modules/@types/node/stream/web.d.ts","../../../../../node_modules/@types/node/string_decoder.d.ts","../../../../../node_modules/@types/node/test.d.ts","../../../../../node_modules/@types/node/timers.d.ts","../../../../../node_modules/@types/node/timers/promises.d.ts","../../../../../node_modules/@types/node/tls.d.ts","../../../../../node_modules/@types/node/trace_events.d.ts","../../../../../node_modules/@types/node/tty.d.ts","../../../../../node_modules/@types/node/url.d.ts","../../../../../node_modules/@types/node/util.d.ts","../../../../../node_modules/@types/node/v8.d.ts","../../../../../node_modules/@types/node/vm.d.ts","../../../../../node_modules/@types/node/wasi.d.ts","../../../../../node_modules/@types/node/worker_threads.d.ts","../../../../../node_modules/@types/node/zlib.d.ts","../../../../../node_modules/@types/node/index.d.ts","../../../../../node_modules/parse5/dist/common/html.d.ts","../../../../../node_modules/parse5/dist/common/token.d.ts","../../../../../node_modules/parse5/dist/common/error-codes.d.ts","../../../../../node_modules/parse5/dist/tokenizer/preprocessor.d.ts","../../../../../node_modules/entities/dist/commonjs/generated/decode-data-html.d.ts","../../../../../node_modules/entities/dist/commonjs/generated/decode-data-xml.d.ts","../../../../../node_modules/entities/dist/commonjs/decode-codepoint.d.ts","../../../../../node_modules/entities/dist/commonjs/decode.d.ts","../../../../../node_modules/entities/decode.d.ts","../../../../../node_modules/parse5/dist/tokenizer/index.d.ts","../../../../../node_modules/parse5/dist/tree-adapters/interface.d.ts","../../../../../node_modules/parse5/dist/parser/open-element-stack.d.ts","../../../../../node_modules/parse5/dist/parser/formatting-element-list.d.ts","../../../../../node_modules/parse5/dist/parser/index.d.ts","../../../../../node_modules/parse5/dist/tree-adapters/default.d.ts","../../../../../node_modules/parse5/dist/serializer/index.d.ts","../../../../../node_modules/parse5/dist/common/foreign-content.d.ts","../../../../../node_modules/parse5/dist/index.d.ts","../../../../../node_modules/tough-cookie/dist/index.d.ts","../../../../../node_modules/@types/jsdom/base.d.ts","../../../../../node_modules/@types/jsdom/index.d.ts","../../../../../node_modules/@types/json-schema/index.d.ts","../../../../../node_modules/@types/json5/index.d.ts","../../../../../node_modules/@types/react-dom/index.d.ts","../../../../../node_modules/@types/sinonjs__fake-timers/index.d.ts","../../../../../node_modules/@types/sinon/index.d.ts","../../../../../node_modules/@types/sinon-chai/index.d.ts","../../../../../node_modules/@types/tough-cookie/index.d.ts"],"fileIdsList":[[83,87,169,223,240,241],[83,87,88,169,223,240,241],[83,87,88,89,91,106,109,110,112,113,114,116,117,169,223,240,241],[83,87,106,110,111,169,223,240,241],[83,87,106,110,111,112,118,169,223,240,241],[83,87,115,169,223,240,241],[83,87,90,112,113,169,223,240,241],[83,87,106,110,169,223,240,241],[83,87,111,112,114,116,118,119,169,223,240,241],[83,87,106,107,169,223,240,241],[83,87,121,169,223,240,241],[83,87,88,121,122,123,169,223,240,241],[83,87,121,122,123,124,169,223,240,241],[83,87,88,89,90,92,117,120,125,151,152,153,169,223,240,241],[83,87,138,169,223,240,241],[83,87,129,132,134,140,169,223,240,241],[83,87,90,126,128,169,223,240,241],[83,87,129,132,134,169,223,240,241],[83,87,106,129,169,223,240,241],[83,87,110,130,169,223,240,241],[83,87,132,138,139,169,223,240,241],[83,87,89,132,139,169,223,240,241],[83,87,88,89,91,106,117,126,127,128,132,133,138,139,140,141,143,144,147,169,223,240,241],[83,87,139,169,223,240,241],[83,87,88,89,91,106,117,126,127,128,132,133,135,143,144,169,223,240,241],[83,87,88,106,129,149,169,223,240,241],[83,87,106,110,130,131,169,223,240,241],[83,87,110,130,131,132,169,223,240,241],[83,87,127,169,223,240,241],[83,87,127,128,169,223,240,241],[83,87,127,128,141,169,223,240,241],[83,87,127,128,135,169,223,240,241],[83,87,126,127,128,129,132,135,136,137,138,139,140,141,142,145,146,148,149,150,169,223,240,241],[83,87,133,169,223,240,241],[83,87,106,169,223,240,241],[83,87,134,169,223,240,241],[83,87,113,133,134,144,169,223,240,241],[83,87,109,169,223,240,241],[83,87,110,115,169,223,240,241],[156,169,223,240,241],[169,223,240,241],[93,169,223,240,241],[93,94,95,169,223,240,241],[97,169,223,240,241],[99,169,223,240,241],[95,169,223,240,241],[93,94,96,97,98,99,100,101,102,103,104,105,169,223,240,241],[156,157,158,159,160,169,223,240,241],[156,158,169,223,240,241],[164,169,223,240,241],[162,163,169,223,240,241],[169,223,234,240,241,269,273,291,292,294],[169,223,240,241,293],[169,220,221,223,240,241],[169,222,223,240,241],[223,240,241],[169,223,228,240,241,258],[169,223,224,229,234,240,241,243,255,266],[169,223,224,225,234,240,241,243],[169,223,226,240,241,267],[169,223,227,228,235,240,241,244],[169,223,228,240,241,255,263],[169,223,229,231,234,240,241,243],[169,222,223,230,240,241],[169,223,231,232,240,241],[169,223,233,234,240,241],[169,222,223,234,240,241],[169,223,234,235,236,240,241,255,266],[169,223,234,235,236,240,241,250,255,258],[169,215,223,231,234,237,240,241,243,255,266],[169,223,234,235,237,238,240,241,243,255,263,266],[169,223,237,239,240,241,255,263,266],[167,168,169,170,171,172,173,174,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272],[169,223,234,240,241],[169,223,240,241,242,266],[169,223,231,234,240,241,243,255],[169,223,240,241,244],[169,223,240,241,245],[169,222,223,240,241,246],[169,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272],[169,223,240,241,248],[169,223,240,241,249],[169,223,234,240,241,250,251],[169,223,240,241,250,252,267,269],[169,223,235,240,241],[169,223,234,240,241,255,256,258],[169,223,240,241,257,258],[169,223,240,241,255,256],[169,223,240,241,258],[169,223,240,241,259],[169,220,223,240,241,255,260],[169,223,234,240,241,261,262],[169,223,240,241,261,262],[169,223,228,240,241,243,255,263],[169,223,240,241,264],[169,223,240,241,243,265],[169,223,237,240,241,249,266],[169,223,228,240,241,267],[169,223,240,241,255,268],[169,223,240,241,242,269],[169,223,240,241,270],[169,223,228,240,241],[169,215,223,240,241],[169,223,240,241,271],[169,215,223,234,236,240,241,246,255,258,266,268,269,271],[169,223,240,241,255,272],[86,169,223,240,241],[84,85,169,223,240,241],[164,169,223,240,241,299],[169,223,240,241,298],[169,223,240,241,281],[169,223,240,241,278,279,280],[169,223,240,241,275],[169,223,240,241,274,275],[169,223,240,241,274],[169,223,240,241,274,275,276,283,284,287,288,289,290],[169,223,240,241,275,284],[169,223,240,241,274,275,276,283,284,285,286],[169,223,240,241,274,284],[169,223,240,241,284,288],[169,223,240,241,275,276,277,282],[169,223,240,241,276],[169,223,240,241,274,275,284],[169,181,184,187,188,223,240,241,266],[169,184,223,240,241,255,266],[169,184,188,223,240,241,266],[169,223,240,241,255],[169,178,223,240,241],[169,182,223,240,241],[169,180,181,184,223,240,241,266],[169,223,240,241,243,263],[169,223,240,241,273],[169,178,223,240,241,273],[169,180,184,223,240,241,243,266],[169,175,176,177,179,183,223,234,240,241,255,266],[169,184,192,200,223,240,241],[169,176,182,223,240,241],[169,184,209,210,223,240,241],[169,176,179,184,223,240,241,258,266,273],[169,184,223,240,241],[169,180,184,223,240,241,266],[169,175,223,240,241],[169,178,179,180,182,183,184,185,186,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,210,211,212,213,214,223,240,241],[169,184,202,205,223,231,240,241],[169,184,192,193,194,223,240,241],[169,182,184,193,195,223,240,241],[169,183,223,240,241],[169,176,178,184,223,240,241],[169,184,188,193,195,223,240,241],[169,188,223,240,241],[169,182,184,187,223,240,241,266],[169,176,180,184,192,223,240,241],[169,184,202,223,240,241],[169,195,223,240,241],[169,178,184,209,223,240,241,258,271,273]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"a6a5253138c5432c68a1510c70fe78a644fe2e632111ba778e1978010d6edfec","impliedFormat":1},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac51dd7d31333793807a6abaa5ae168512b6131bd41d9c5b98477fc3b7800f9f","impliedFormat":1},{"version":"5e76305d58bcdc924ff2bf14f6a9dc2aa5441ed06464b7e7bd039e611d66a89b","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"0865837f9cd6828d072a96e86044ba047f58abc04005555bfa4bcc6d288d2b18","signature":"6233c192c811d88836046512adc2197a34a7b89b28db670a7a2b31fbe0c2b28a"},{"version":"6f43ff8a6790108e24626c1bfb56e3be45cc09723f21c473e0852314d0174d6d","signature":"4aa39a0a8b8a7e89435ae4ac2fcc48585c3c99cc53bc81f8fa18a0e9520d301d"},{"version":"5d880dddec176baa112ff58e256d95c72772c7d46556ba5f726bce90c7326796","signature":"34fe8eed7525ae97a0cfa1c60e8846cca6999785efec326bc2db606a4c81a909"},{"version":"3fd814b963b82de278bacbaf1eb15d2de042e7feeaa62304a18799196b149190","signature":"c093cddbb521453aa81ea4eb4ef87c7a4602a1475975683a1b8a90f9f5fa31fc"},{"version":"4a59cead9322f899115954e7b302e2699c57fbc2fbe3d038f7300843830b359b","signature":"2e1e7dd9be488ae9ab2bfe83322de90b5c7aa8a406a6d563f0afd389873b6166"},{"version":"3c5b3f1c8adb64ad550d0c0614995fdd1a7af68c27b8a090867837ac75e5dc4d","impliedFormat":99},{"version":"12cc7d59d5646b61a636e0370617ae13eb360031b8e26721d841fc27395b5799","impliedFormat":99},{"version":"8d6d51a5118d000ed3bfe6e1dd1335bebfff3fef23cd2af2f84a24d30f90cc90","affectsGlobalScope":true,"impliedFormat":1},{"version":"87d8b7a19cc151bdd78558b7d8c5776a0fdbdfd7b15ca27a2d5b731254dca0d8","impliedFormat":99},{"version":"374b2233ae455dbcfb065fdf14868312a265330e49db507c5778facab12ed51b","impliedFormat":99},{"version":"3e4580bcbca5adc95b4d1885a84af8f2450638ab071fa11c88aa805f7fe84c29","impliedFormat":99},{"version":"2c8ca64937449516444087b089a6e3ba00a8857263c26b4bd276d7f6545719e7","impliedFormat":99},{"version":"72bb6c88b31100cbd982a148a24c707e9a9a05d34b56bd33488d742b55ae1f6d","impliedFormat":99},{"version":"34e4c71c3ec97292cb2c15bf7420ddb967aaeafb7f16d76fa80ade9a7a73af8c","impliedFormat":99},{"version":"d0637705feb79d2b997259dc9eb74c9fba1dac19006ae3bc2d88aa6318b6deb6","impliedFormat":99},{"version":"3803c87977f241e7991d9849880361a08dca4ed66851506b0cd9b64332df852b","impliedFormat":99},{"version":"2cac2364bb67fb8f111be1c7c1836d01cfa0ce55cef0fbee87b7f8a8364f7f79","impliedFormat":99},{"version":"d423a05eb704d18dabd0bfeee04f9196b777294e6c915a309e7ebcaf4abd7d4c","impliedFormat":99},{"version":"a518814deed3e8f7355cb15a746631be910d15d316ff4a85555c43b68c774c4e","impliedFormat":99},{"version":"29f72ec1289ae3aeda78bf14b38086d3d803262ac13904b400422941a26a3636","affectsGlobalScope":true,"impliedFormat":1},{"version":"59f0a0413bf62e62e853026d1c8fdd41f5e5d1d9ef163433a7dfabda81cd1143","signature":"0d6bf0a261d103c8708f18778eb892e903f8cc85203954982605ab10ddc94aa3"},{"version":"1cb77267c63d74b85f25cc323d14e42f7d14bd941678844dfdb34ef74b6a19a4","signature":"948c0dacb5cc6dffa9b2a3710950c396f870d1571a6ac8f2e51f47ba7138c924"},{"version":"6853ca196c5a23f0433999d36657fd242f5a856764b5fb7721fe928447711a8c","signature":"39a0525f0859e6a2da69a7179758511a8a2611f863450dcf14908c362a7b0b18"},{"version":"52710d22c9ef8e7cf4dd28107916d37df00a90bef46110085c1323366252c11c","signature":"785bbcd9758c54296a9ce94218d81e66138a4fd53c7fcee4dabf61a1007c545c"},{"version":"57561b6e5b77b7b6a90b2c0a2bb71f19d265d93e66d0c98aaf5e2fb4c323b083","signature":"19154b07ca05778de140c1695e71443cb75db637ed3b59f0343126032edacdbe"},{"version":"2af716d4b0872de1911cbb51b121aa5c044ed9bc78665bd877b036b14b90f912","signature":"bbf7ffde7666952bf4a12b97068f73508aaca029c1d8ab901d29f0c93dabb367"},{"version":"93634b1d4ec79368f4be8a97a6e864f1653b229417ef2d87d4c1450a89de2c2d","signature":"301ff9ff87b73c795fd28a3bf5f9e05b4265f4e49090fcd88f7dda528ffd8918"},{"version":"c2821f023c4074afbdc6eb7c747e04c4da9a2159e9862c05da119cff2264782e","signature":"4088c22dfee22f8bbe1e077e62122163ccc7a8803a9a0729c194a19f9564b50e"},{"version":"e1e9274bbd575b8f5eb36e43d5d92856f86088d2b95f56f27cc11ea472d29d9d","signature":"f67a13951fe33ef2ba915939860d3fc510c59aa962c05ca4a7b75b9e9e16fcd6"},{"version":"5450a0862382f8de6f95f0c8cb410c773d8eb6e887af2ce8e9e6b95113e4eaf5","signature":"84d8a7875ac6bfbfbd20639a65f3e1fdca5d8b0d438a70c06b3697700bc0b7c6"},{"version":"a6a67dbea9b0b4d2265214e15960f803c3ceb556e5edcbdab7f908d74250e4c1","signature":"251442c929d652e043cf5f185a3d4829d5e18afb87879ac528cc38a52e57f4ef"},{"version":"355f16ffa13bc3386d0ca7727c7157c6ea65b1d0ab1f44d537e1fe075843af4b","signature":"fa052ef01ea19728754d70086b1bcf7587899c7aa3a7789d83613bdb5ff31f68"},{"version":"eba9198b11d696151952ef3db91632f8d3637c61aeff063542fc19808a597f2b","signature":"97ae53172109f9a94601da014edca400c0456162e5b89dd31674ac62ac60973f"},{"version":"c7ed6c64887b69b371ead246e06c39c255b21011f51520831231bdb49bd008cf","signature":"d4ee46bae28804505aeafe3dd30d9c62b3de11007820753f8b80562d76ab43d1"},{"version":"36d399baa1f1a12ce713cffbcc2a359c967b00f778a559e93ee6b5b054b2dd57","signature":"f12e7ab2a34d51c1741cb60521cae98b11c4c15c28ee56d0632d02b3d8ee4d72"},{"version":"8d297d9c3964fbb1250eecc2e12e697cd311fcbc8815ddbfbde2a9910f953da3","signature":"28e39d98b82166c0499cce2928227ad47a648249ee5ebb3f3f8837f01f5c67bc"},{"version":"d6504a8b9ce26ad6a4d9f8f093f13ed4608983c917f0528979322405d8ab0906","signature":"8fd5947a56046dd26e9350712c62933984f7b96c50e0c6e3f3c1e02bcf49184a"},{"version":"7b4cc1932cd91ad6b8bbb08238bcf4bdc549538ffec9a7c26a7cbecb8b8d2718","signature":"5cc726d1f8a2124ad40694ebcd544d6cb8954785dba314d4d0e24ac32091c872"},{"version":"a88ebf8a584b57ddbf90676828b8e269ab8487f7e6b5b8f7fb19a76aae7d5cec","signature":"1d3aa0e74a0ae10904a2c36d622a3e42f5ce4848511266cc12ae1274cdd7a857"},{"version":"d66a199a22688bcbe8c6e31dd135b3e144cacbae7f8d11291fcb3fba1cafbc7b","signature":"e5b7cc79660808cde94bf82de1a7b5b99b8148b95d434890f49ad2e501629450"},{"version":"286983c011b6d4f6b020ec6326715590f49dd330205da12aaf066489c3dca79a","signature":"ef274ea43189ce7fde0d085753be916a2ed212e059de367df5b2dcfd2be9ffe8"},{"version":"34b167aab6bb9e00f9a0f85e27c5aa50e1ecb4600021449872e365f1aa857a8d","signature":"46b11e0467725e112edd429bb987e1388d5c5ae973f52b8511480f8cf9513fea"},{"version":"7932b7b1a3217a421cee78139906b34d0211000822f682aafb5fc70dac2bc3c4","signature":"fdaf319a0c3fe10a891a2f5b098c920360bdbfd771c459badabaec1ddcaa221e"},{"version":"11ca5f48bb2c0e0646f0b0182115edb4a677025fc5a61b55dec23a6513a7769e","signature":"43b7193d001cf6e032116e72c5f8f9e9b3c4c22dcb42483f776ecc5c701c20cd"},{"version":"9c1c26d8292408873ac8134e0ae5aaebf88b34967a372d8a85d050d9f0e601ac","signature":"30382e1b5895113985a5c7f3772c7d5f440dc912319373f742af771bd1159610"},{"version":"3c363473c840ae2cb26206f0abaf0ee9d52fb0c82176be86bf32aaffc3e99905","signature":"16c738c3101ec0f10d4fc57c6a7d459be4830c5ce5baa802fb91f6439f54f319"},{"version":"db2a01e889887a57a7de1af569d254e0c46f610d3b34e2b74329b0b17e5cdfee","signature":"99f0d1aaaa9135745e7bd1c96603e801113e888e5ee9a56b5e30a13f7792681f"},{"version":"a20f37bf88f0b6cd5a26b1e8e41287002c8e2d8e3f21dd2a2cea9df5722ce4ef","signature":"150d8909b1a3d3fe7f535a687ff8d9cf14a34d996a8f7bdb388e5e1f0c3551e6"},{"version":"8b7b4f05f721d7386c7ef4b49b306c73b32c74b902ea2c317bfb85b0b3235c18","signature":"6b0193b486f9fa7ae377bda9df2a19a42e2b8bd9ba84e8addfd4fec5c21fcf21"},{"version":"78f1fd4a2ef72865925f92ceeedc11daaf28992c3f8577e7fe6411ba43593bed","signature":"b443ded609eb492fdb0f9ea680d7bc22e54b9bd0201321e457507e6d711b241c"},{"version":"2b876841ee0f2147729e033918005c71ed31e8d01b39545286e273bb919524d1","signature":"30117f0defb684ef0d4399b20e6f52ec3662e8b80612fd727e42c3eb18b2bc26"},{"version":"1c72ec19de877455eadbb5f256f55606c1386a38e13f58f6524dedae2405d407","signature":"ca2dcbce12129454a3c9b3e77088d445258b0e5f9fd7f8eb5c9414f155ee8c37"},{"version":"b47572cf7bc284e310e279693049150936c3e7d91206f03a988306ef532ac7e0","signature":"d09e88a6d51021684eefcc0667365cc2a04f2034685a04a30f4241c744a19e60"},{"version":"508195dd2576ab104c3632e13ac8f4a9611ef444d89b1e5dd50490a91d07a8be","signature":"a92737791e73747051df717b3c88d826d827b833eb0c7e5daa0ab5b2410fa775"},{"version":"a29621af6531fb76ba9ada19745f1e868f5c2f74ed3d0ce4598f71c67ad2093c","signature":"4ce209f787ed5bdaeeae74f40e4ed9abe4b71ee5edc166a788feddcff2b34ec9"},{"version":"838c95520dad293e758e82670d8c15906e9545dd3676a2114dbc6ced4ce27a66","signature":"57e8f32ca6a86c9dfc7173c270f25f2dac96dd988a0c9b404abc18206127a46d"},{"version":"495e510e32c9a7860a8f22ad0a4539941d0a7cc6f008657a4f62ae9bb7d0be56","signature":"2813f753a1d612ba83741720fd567f0cf656e8ce0a0ab22b037161c149360bdb"},{"version":"7e3aadccf7e77b56aa8b4f4104e3e55480d3ab03562ddb030d2e6bdcc88aab20","signature":"d35c7211ad455b5161992f589fddb340ae8e4d77bf4edfd92fe81f0baded1d8a"},{"version":"cdbd9dc1e38003d810f51940dc24cef4205c54ff3172ddfc23bbde967cd72ca4","signature":"ae377dd574fae8fc64bb3d1da743ddd16a12f35d7b96a1e63aeb24b5414239f7"},{"version":"87fc8233cb3d5b89d7a1732fed29a8470f9b8c5dd87666fb9f04a5bb0d6ad362","signature":"19aa3076a48126c25edad7cfd03e4c68ea7a77f45371a4bb58b45f8d34b0fcc4"},{"version":"db35dadaa98206bace5705a8b8af3600393fbeba818ac8808c2dc599e916baae","signature":"d109972b755e6257f43009c267730074de71aa452be963a27829075831c5a142"},{"version":"ca53d3b8a81f5722dec5baafc280f36dd9b7b5ac8685b09d2821d618c7213110","signature":"7817e3c6e4077d31b8ba3717d158a7956bf6e2cb586a9b491006b33618d3d715"},{"version":"95f08805327fc09996d12dc2cd8cce1ecbc6c3ab1d8baf4aa1ea3e57ab5f5b25","signature":"dc1fa4e287c1f0822e5fdacb5761b1253c5ce35e0cb320e14d5e20a04e0ef65a"},{"version":"6c9b2f19db7791f1a4131739ae58c5c9c355ce5700465c0722aad73887d3141f","signature":"823d1c940425ff312468f2d4488a60f9a992dc7863ada0710a6926e31bdb9e67"},{"version":"280d555067719d2c1bb2465306887a61118867de822f8df7f43180ef60faad5a","signature":"90aaeba147e5401f68f5880ab30f7c891df8483983f1a3e430cfb663ebce7a34"},{"version":"2b13af58dafaa5d026c802844ce70cc9e79c9d20aa1742b4b4d3df8950df7b67","signature":"272f48c176dade9bb2e11b3444c2cb34259f2266c976212b77bd6220f853028a"},{"version":"e047a23d5cc2185fa5d4b31443afd032a5c2f578ff855984b3d2e5278c5c7005","signature":"5193233f2cab698de0710063faac9946a84aaf2f2b901287203b2f2d02b4e235"},{"version":"ae77d81a5541a8abb938a0efedf9ac4bea36fb3a24cc28cfa11c598863aba571","impliedFormat":1},{"version":"c2c2a861a338244d7dd700d0c52a78916b4bb75b98fc8ca5e7c501899fc03796","impliedFormat":1},{"version":"b6d03c9cfe2cf0ba4c673c209fcd7c46c815b2619fd2aad59fc4229aaef2ed43","impliedFormat":1},{"version":"adb467429462e3891de5bb4a82a4189b92005d61c7f9367c089baf03997c104e","impliedFormat":1},{"version":"670a76db379b27c8ff42f1ba927828a22862e2ab0b0908e38b671f0e912cc5ed","impliedFormat":1},{"version":"13b77ab19ef7aadd86a1e54f2f08ea23a6d74e102909e3c00d31f231ed040f62","impliedFormat":1},{"version":"069bebfee29864e3955378107e243508b163e77ab10de6a5ee03ae06939f0bb9","impliedFormat":1},{"version":"427fe2004642504828c1476d0af4270e6ad4db6de78c0b5da3e4c5ca95052a99","impliedFormat":1},{"version":"2eeffcee5c1661ddca53353929558037b8cf305ffb86a803512982f99bcab50d","impliedFormat":99},{"version":"9afb4cb864d297e4092a79ee2871b5d3143ea14153f62ef0bb04ede25f432030","affectsGlobalScope":true,"impliedFormat":99},{"version":"6550c1290df354eba9437fbf470699d7ee9800490e3179565c56e203eb6f42c1","affectsGlobalScope":true,"impliedFormat":99},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"378281aa35786c27d5811af7e6bcaa492eebd0c7013d48137c35bbc69a2b9751","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"1b2dd1cbeb0cc6ae20795958ba5950395ebb2849b7c8326853dd15530c77ab0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"387a023d363f755eb63450a66c28b14cdd7bc30a104565e2dbf0a8988bb4a56c","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"830171b27c5fdf9bcbe4cf7d428fcf3ae2c67780fb7fbdccdf70d1623d938bc4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ea15fd99b2e34cb25fe8346c955000bb70c8b423ae4377a972ef46bfb37f595","impliedFormat":1},{"version":"7cf69dd5502c41644c9e5106210b5da7144800670cbe861f66726fa209e231c4","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"f9b4137a0d285bd77dba2e6e895530112264310ae47e07bf311feae428fb8b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b21e13ed07d0df176ae31d6b7f01f7b17d66dbeb489c0d31d00de2ca14883da","impliedFormat":1},{"version":"51aecd2df90a3cffea1eb4696b33b2d78594ea2aa2138e6b9471ec4841c6c2ee","impliedFormat":1},{"version":"9d8f9e63e29a3396285620908e7f14d874d066caea747dc4b2c378f0599166b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"f929f0b6b3421a2d34344b0f421f45aeb2c84ad365ebf29d04312023b3accc58","impliedFormat":1},{"version":"db9ada976f9e52e13f7ae8b9a320f4b67b87685938c5879187d8864b2fbe97f3","impliedFormat":1},{"version":"9f39e70a354d0fba29ac3cdf6eca00b7f9e96f64b2b2780c432e8ea27f133743","impliedFormat":1},{"version":"0dace96cc0f7bc6d0ee2044921bdf19fe42d16284dbcc8ae200800d1c9579335","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"c64e1888baaa3253ca4405b455e4bf44f76357868a1bd0a52998ade9a092ad78","affectsGlobalScope":true,"impliedFormat":1},{"version":"d8cf132379078d0974a59df26069689a2d33c7dc826b5be56231841cb2f32e58","impliedFormat":1},{"version":"fbf413fc617837453c878a9174a1f1b383616857a3f8366bc41cf30df4aea7d5","impliedFormat":1},{"version":"148c73ec11318850f571172ceae3e55ce479d850fe18ec8eae0abd99d9f6c319","impliedFormat":1},{"version":"230bdc111d7578276e4a3bb9d075d85c78c6b68f428c3a9935e2eaa10f4ae1f5","impliedFormat":1},{"version":"e8aabbee5e7b9101b03bb4222607d57f38859b8115a8050a4eb91b4ee43a3a73","impliedFormat":1},{"version":"bbf42f98a5819f4f06e18c8b669a994afe9a17fe520ae3454a195e6eabf7700d","impliedFormat":1},{"version":"c0bb1b65757c72bbf8ddf7eaa532223bacf58041ff16c883e76f45506596e925","impliedFormat":1},{"version":"c8b85f7aed29f8f52b813f800611406b0bfe5cf3224d20a4bdda7c7f73ce368e","affectsGlobalScope":true,"impliedFormat":1},{"version":"145dcf25fd4967c610c53d93d7bc4dce8fbb1b6dd7935362472d4ae49363c7ba","impliedFormat":1},{"version":"ff65b8a8bd380c6d129becc35de02f7c29ad7ce03300331ca91311fb4044d1a9","impliedFormat":1},{"version":"76957a6d92b94b9e2852cf527fea32ad2dc0ef50f67fe2b14bd027c9ceef2d86","impliedFormat":1},{"version":"9043daec15206650fa119bad6b8d70136021ea7d52673a71f79a87a42ee38d44","affectsGlobalScope":true,"impliedFormat":1},{"version":"4e2de7ab2f74e36d7078bccdf831585b10dc6330bab56054921531b03f9beaf3","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"8c81fd4a110490c43d7c578e8c6f69b3af01717189196899a6a44f93daa57a3a","impliedFormat":1},{"version":"5fb39858b2459864b139950a09adae4f38dad87c25bf572ce414f10e4bd7baab","impliedFormat":1},{"version":"65faec1b4bd63564aeec33eab9cacfaefd84ce2400f03903a71a1841fbce195f","impliedFormat":1},{"version":"b33b74b97952d9bf4fbd2951dcfbb5136656ddb310ce1c84518aaa77dbca9992","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b306cd4282bbb54d4a6bb23cfb7a271160983dfc38c67b5a132504cfcc34896","affectsGlobalScope":true,"impliedFormat":1},{"version":"c119835edf36415081dfd9ed15fc0cd37aaa28d232be029ad073f15f3d88c323","impliedFormat":1},{"version":"450172a56b944c2d83f45cc11c9a388ea967cd301a21202aa0a23c34c7506a18","impliedFormat":1},{"version":"9705cd157ffbb91c5cab48bdd2de5a437a372e63f870f8a8472e72ff634d47c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"72f8936aebf0c4a1adab767b97d34ba7d3a308afcf76de4417b9c16fb92ed548","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"69e0a41d620fb678a899c65e073413b452f4db321b858fe422ad93fd686cd49a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3585d6891e9ea18e07d0755a6d90d71331558ba5dc5561933553209f886db106","affectsGlobalScope":true,"impliedFormat":1},{"version":"86be71cbb0593468644932a6eb96d527cfa600cecfc0b698af5f52e51804451d","impliedFormat":1},{"version":"84dd6b0fd2505135692935599d6606f50a421389e8d4535194bcded307ee5cf2","impliedFormat":1},{"version":"0d5b085f36e6dc55bc6332ecb9c733be3a534958c238fb8d8d18d4a2b6f2a15a","impliedFormat":1},{"version":"db19ea066fdc5f97df3f769e582ae3000380ab7942e266654bdb1a4650d19eaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"2a034894bf28c220a331c7a0229d33564803abe2ac1b9a5feee91b6b9b6e88ea","impliedFormat":1},{"version":"d7e9ab1b0996639047c61c1e62f85c620e4382206b3abb430d9a21fb7bc23c77","impliedFormat":1},{"version":"19990350fca066265b2c190c9b6cde1229f35002ea2d4df8c9e397e9942f6c89","impliedFormat":99},{"version":"8fb8fdda477cd7382477ffda92c2bb7d9f7ef583b1aa531eb6b2dc2f0a206c10","impliedFormat":99},{"version":"66995b0c991b5c5d42eff1d950733f85482c7419f7296ab8952e03718169e379","impliedFormat":99},{"version":"9863f888da357e35e013ca3465b794a490a198226bd8232c2f81fb44e16ff323","impliedFormat":99},{"version":"84bc2d80326a83ee4a6e7cba2fd480b86502660770c0e24da96535af597c9f1e","impliedFormat":1},{"version":"ea27768379b866ee3f5da2419650acdb01125479f7af73580a4bceb25b79e372","impliedFormat":1},{"version":"598931eeb4362542cae5845f95c5f0e45ac668925a40ce201e244d7fe808e965","impliedFormat":1},{"version":"da9ef88cde9f715756da642ad80c4cd87a987f465d325462d6bc2a0b11d202c8","impliedFormat":1},{"version":"9462ab013df86c16a2a69ca0a3b6f31d4fd86dd29a947e14b590eb20806f220b","impliedFormat":99},{"version":"b4c6184d78303b0816e779a48bef779b15aea4a66028eb819aac0abee8407dea","impliedFormat":99},{"version":"db085d2171d48938a99e851dafe0e486dce9859e5dfa73c21de5ed3d4d6fb0c5","impliedFormat":99},{"version":"62a3ad1ddd1f5974b3bf105680b3e09420f2230711d6520a521fab2be1a32838","impliedFormat":99},{"version":"a77be6fc44c876bc10c897107f84eaba10790913ebdcad40fcda7e47469b2160","impliedFormat":99},{"version":"06cf55b6da5cef54eaaf51cdc3d4e5ebf16adfdd9ebd20cec7fe719be9ced017","impliedFormat":99},{"version":"91f5dbcdb25d145a56cffe957ec665256827892d779ef108eb2f3864faff523b","impliedFormat":99},{"version":"052ba354bab8fb943e0bc05a0769f7b81d7c3b3c6cd0f5cfa53c7b2da2a525c5","impliedFormat":99},{"version":"927955a3de5857e0a1c575ced5a4245e74e6821d720ed213141347dd1870197f","impliedFormat":99},{"version":"fec804d54cd97dd77e956232fc37dc13f53e160d4bbeeb5489e86eeaa91f7ebd","impliedFormat":99},{"version":"1fd5dcbeb175a97c46ac125c12cb8f0de5186e76f5ee3c4708fa0cca1874d585","impliedFormat":99},{"version":"1e00db245ee0a8b165a7ed7eebc9b9666b3836fe61b742149392010eed018814","impliedFormat":1},{"version":"af11413ffc8c34a2a2475cb9d2982b4cc87a9317bf474474eedaacc4aaab4582","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"baf3507287629018d38c88e2636dd041550c70620bb774127011eb6dc3b361c0","impliedFormat":1},{"version":"12d5592986cbcd3404fa50481df6b62ed74f7035ea0d6a27c207844b7bc7c950","impliedFormat":1},{"version":"3be709044ba3682e21e16e6deec00c91a502d8adfc8eaeb423e5ad51fd3cb80b","affectsGlobalScope":true,"impliedFormat":99},{"version":"03c258e060b7da220973f84b89615e4e9850e9b5d30b3a8e4840b3e3268ae8eb","impliedFormat":1}],"root":[[88,92],[108,154]],"options":{"allowJs":false,"allowSyntheticDefaultImports":true,"alwaysStrict":true,"assumeChangesOnlyAffectDirectDependencies":true,"checkJs":false,"composite":true,"declaration":true,"declarationMap":true,"downlevelIteration":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"jsx":4,"module":7,"newLine":1,"noFallthroughCasesInSwitch":true,"noImplicitAny":false,"noImplicitReturns":true,"outDir":"./","preserveConstEnums":true,"removeComments":true,"rootDir":"../..","skipLibCheck":true,"sourceMap":true,"strict":true,"strictNullChecks":true,"stripInternal":true,"target":9},"referencedMap":[[88,1],[89,1],[90,2],[91,1],[118,3],[112,4],[119,5],[116,6],[114,7],[111,8],[120,9],[92,1],[108,10],[121,1],[122,11],[124,12],[123,1],[125,13],[154,14],[117,1],[139,15],[141,16],[129,17],[135,18],[149,19],[131,20],[147,21],[138,22],[148,23],[140,24],[126,1],[130,1],[145,25],[150,26],[132,27],[146,28],[127,1],[128,29],[136,30],[142,31],[137,32],[143,1],[151,33],[134,34],[133,35],[144,36],[113,35],[153,37],[110,38],[109,1],[115,1],[152,39],[158,40],[156,41],[93,41],[105,42],[94,42],[96,43],[98,44],[97,41],[104,42],[99,41],[100,45],[101,41],[103,46],[102,42],[106,47],[155,41],[161,48],[157,40],[159,49],[160,40],[165,50],[164,51],[162,41],[166,41],[293,52],[294,53],[295,41],[296,41],[107,41],[220,54],[221,54],[222,55],[169,56],[223,57],[224,58],[225,59],[167,41],[226,60],[227,61],[228,62],[229,63],[230,64],[231,65],[232,65],[233,66],[234,67],[235,68],[236,69],[170,41],[168,41],[237,70],[238,71],[239,72],[273,73],[240,74],[241,41],[242,75],[243,76],[244,77],[245,78],[246,79],[247,80],[248,81],[249,82],[250,83],[251,83],[252,84],[253,41],[254,85],[255,86],[257,87],[256,88],[258,89],[259,90],[260,91],[261,92],[262,93],[263,94],[264,95],[265,96],[266,97],[267,98],[268,99],[269,100],[270,101],[171,41],[172,102],[173,41],[174,41],[216,103],[217,104],[218,41],[219,89],[271,105],[272,106],[297,107],[84,41],[86,108],[87,107],[300,109],[299,110],[298,41],[301,41],[163,41],[85,41],[282,111],[280,41],[281,112],[278,41],[279,41],[276,113],[290,114],[274,41],[275,115],[291,116],[286,117],[287,118],[285,119],[289,120],[283,121],[277,122],[288,123],[284,114],[95,41],[292,41],[83,41],[81,41],[82,41],[13,41],[14,41],[16,41],[15,41],[2,41],[17,41],[18,41],[19,41],[20,41],[21,41],[22,41],[23,41],[24,41],[3,41],[25,41],[26,41],[4,41],[27,41],[31,41],[28,41],[29,41],[30,41],[32,41],[33,41],[34,41],[5,41],[35,41],[36,41],[37,41],[38,41],[6,41],[42,41],[39,41],[40,41],[41,41],[43,41],[7,41],[44,41],[49,41],[50,41],[45,41],[46,41],[47,41],[48,41],[8,41],[54,41],[51,41],[52,41],[53,41],[55,41],[9,41],[56,41],[57,41],[58,41],[60,41],[59,41],[61,41],[62,41],[10,41],[63,41],[64,41],[65,41],[11,41],[66,41],[67,41],[68,41],[69,41],[70,41],[1,41],[71,41],[72,41],[12,41],[76,41],[74,41],[79,41],[78,41],[73,41],[77,41],[75,41],[80,41],[192,124],[204,125],[190,126],[205,127],[214,128],[181,129],[182,130],[180,131],[213,132],[208,133],[212,134],[184,135],[201,136],[183,137],[211,138],[178,139],[179,133],[185,140],[186,41],[191,141],[189,140],[176,142],[215,143],[206,144],[195,145],[194,140],[196,146],[199,147],[193,148],[197,149],[209,132],[187,150],[188,151],[200,152],[177,127],[203,153],[202,140],[198,154],[207,41],[175,41],[210,155]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
@@ -1,8 +1,10 @@
1
- export var ValidationResultSeverity;
1
+ var ValidationResultSeverity;
2
2
  (function (ValidationResultSeverity) {
3
3
  ValidationResultSeverity[ValidationResultSeverity["Unknown"] = 0] = "Unknown";
4
4
  ValidationResultSeverity[ValidationResultSeverity["Information"] = 1] = "Information";
5
5
  ValidationResultSeverity[ValidationResultSeverity["Warning"] = 2] = "Warning";
6
6
  ValidationResultSeverity[ValidationResultSeverity["Error"] = 3] = "Error";
7
7
  })(ValidationResultSeverity || (ValidationResultSeverity = {}));
8
- //# sourceMappingURL=ValidationResultSeverity.js.map
8
+
9
+ export { ValidationResultSeverity };
10
+ //# sourceMappingURL=ValidationResultSeverity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationResultSeverity.js","sourceRoot":"","sources":["../../../validation/ValidationResultSeverity.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,wBAqBX;AArBD,WAAY,wBAAwB;IAKhC,6EAAW,CAAA;IAKX,qFAAe,CAAA;IAKf,6EAAW,CAAA;IAKX,yEAAS,CAAA;AACb,CAAC,EArBW,wBAAwB,KAAxB,wBAAwB,QAqBnC"}
1
+ {"version":3,"file":"ValidationResultSeverity.js","sources":["../../../validation/ValidationResultSeverity.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n/**\n * Holds the values for severity of a validation result.\n */\nexport enum ValidationResultSeverity {\n\n /**\n * The validation result is unknown.\n */\n Unknown = 0,\n\n /**\n * The validation result is a warning.\n */\n Information = 1,\n\n /**\n * The validation result is a warning.\n */\n Warning = 2,\n\n /**\n * The validation result is an error.\n */\n Error = 3\n}\n"],"names":[],"mappings":"IAMY;AAAZ,CAAA,UAAY,wBAAwB,EAAA;AAKhC,IAAA,wBAAA,CAAA,wBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAKX,IAAA,wBAAA,CAAA,wBAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAe;AAKf,IAAA,wBAAA,CAAA,wBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAW;AAKX,IAAA,wBAAA,CAAA,wBAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS;AACb,CAAC,EArBW,wBAAwB,KAAxB,wBAAwB,GAAA,EAAA,CAAA,CAAA;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cratis/arc",
3
- "version": "18.1.0",
3
+ "version": "18.1.2",
4
4
  "description": "",
5
5
  "author": "Cratis",
6
6
  "license": "MIT",