json-schema-library 7.4.6 → 7.4.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<p
|
|
1
|
+
<p style="text-align:center"><img src="./docs/json-schema-library.png" width="256" alt="json-schema-library"></p>
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
**Customizable and hackable json-validator and json-schema utilities for traversal, data generation and validation**
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
> lessens the pain to build custom tools around json-schema.
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
<p
|
|
12
|
+
<p style="text-align:center">
|
|
13
13
|
<a href="#draft-methods">draft methods</a> | <a href="#draft-extensions">draft extensions</a> | <a href="#draft-customization">draft customization</a> | <a href="#breaking-changes">breaking changes</a>
|
|
14
14
|
</p>
|
|
15
15
|
|
|
@@ -26,7 +26,7 @@ This library currently supports draft4, draft6 and draft7 features [@see benchma
|
|
|
26
26
|
|
|
27
27
|
**usage**
|
|
28
28
|
|
|
29
|
-
`json-schema-library` exposes a `Draft` for most json-schema drafts. Each `Draft` can be instantiated and offers a common set of actions working on the specified json-schema version.
|
|
29
|
+
`json-schema-library` exposes a `Draft` for most json-schema drafts. Each `Draft` can be instantiated and offers a common set of actions working on the specified json-schema version. Example:
|
|
30
30
|
|
|
31
31
|
```ts
|
|
32
32
|
import { Draft04, Draft06, Draft07, Draft, JSONError } from "json-schema-library";
|
|
@@ -58,25 +58,25 @@ What follows is a description of the main draft methods.
|
|
|
58
58
|
|
|
59
59
|
### validate
|
|
60
60
|
|
|
61
|
-
`validate` is a complete _json-schema validator_ for your input data. Calling _validate_ will return a list of validation errors for the passed data
|
|
61
|
+
`validate` is a complete _json-schema validator_ for your input data. Calling _validate_ will return a list of validation errors for the passed data.
|
|
62
62
|
|
|
63
63
|
```ts
|
|
64
64
|
const jsonSchema = new Draft07(myJsonSchema);
|
|
65
65
|
const errors: JSONError[] = jsonSchema.validate(myData);
|
|
66
66
|
```
|
|
67
67
|
|
|
68
|
-
Additionally, you can validate a
|
|
68
|
+
Additionally, you can validate a sub-schema and its data. Doing this, the intial schema will be used as rootSchema (for example, to resolve `$ref` from _definitions_).
|
|
69
69
|
|
|
70
70
|
```ts
|
|
71
71
|
const jsonSchema = new Draft07(myJsonSchema);
|
|
72
72
|
const errors: JSONError[] = jsonSchema.validate("my-string", { type: "number" });
|
|
73
73
|
```
|
|
74
74
|
|
|
75
|
-
>
|
|
75
|
+
> To prevent some errors when using helper methods with an independent sub-schema, please use `compileSchema` if it is not retrieved from a draft-method directly (which was compiled by passing it to Draft). Specifically, if the schema contains a $ref you need to use `compileSchema`. More details in [compileSchema](#compileSchema).
|
|
76
76
|
|
|
77
77
|
<details><summary>About type JSONError</summary>
|
|
78
78
|
|
|
79
|
-
In `json-schema-library` all errors are in the format of a `JSONError
|
|
79
|
+
In `json-schema-library` all errors are in the format of a `JSONError`:
|
|
80
80
|
|
|
81
81
|
```ts
|
|
82
82
|
type JSONError = {
|
|
@@ -88,7 +88,7 @@ type JSONError = {
|
|
|
88
88
|
};
|
|
89
89
|
```
|
|
90
90
|
|
|
91
|
-
|
|
91
|
+
In almost all cases, a _json-pointer_ is given on _error.data.pointer_, which points to the source within data where the error occured.
|
|
92
92
|
|
|
93
93
|
For more details on how to work with errors, refer to section [custom errors](#custom-errors).
|
|
94
94
|
|
|
@@ -155,7 +155,7 @@ expect(errors).to.deep.equal([
|
|
|
155
155
|
|
|
156
156
|
### isValid
|
|
157
157
|
|
|
158
|
-
`isValid` will return
|
|
158
|
+
`isValid` will return `true` if the given json-data is valid against the json-schema.
|
|
159
159
|
|
|
160
160
|
```ts
|
|
161
161
|
const jsonSchema = new Draft07(myJsonSchema);
|
|
@@ -165,9 +165,9 @@ const isValid: boolean = jsonSchema.isValid(myData);
|
|
|
165
165
|
|
|
166
166
|
### validateAsync
|
|
167
167
|
|
|
168
|
-
>
|
|
168
|
+
> This method is not yet exposed by a draft directly as the API of this is yet unsatisfactory. Nonetheless, this function is in production and can be used reliably.
|
|
169
169
|
|
|
170
|
-
Optional support for onError helper, which is invoked for each error (after being resolved)
|
|
170
|
+
Optional support for `onError` helper, which is invoked for each error (after being resolved):
|
|
171
171
|
|
|
172
172
|
```ts
|
|
173
173
|
import { Draft07, JSONError, validateAsync } from "json-schema-library";
|
|
@@ -181,21 +181,21 @@ validateAsync(draft, "", { onError: (err: JSONError) => {}, schema: draft.getSch
|
|
|
181
181
|
|
|
182
182
|
### getTemplate
|
|
183
183
|
|
|
184
|
-
`getTemplate` creates input data from a json-schema that is valid to the schema. Where possible the json-schema
|
|
184
|
+
`getTemplate` creates input data from a json-schema that is valid to the schema. Where possible, the json-schema `default` property will be used to initially setup input data. Otherwise, the first values encountered (enum values, initial values, etc.) are user to build up the json-data.
|
|
185
185
|
|
|
186
186
|
```ts
|
|
187
187
|
const jsonSchema = new Draft07(myJsonSchema);
|
|
188
188
|
const myData = jsonSchema.getTemplate();
|
|
189
189
|
```
|
|
190
190
|
|
|
191
|
-
Additionally, you can pass input data. `getTemplate` will then complement any missing values from the schema, while keeping the initial values
|
|
191
|
+
Additionally, you can pass input data. `getTemplate` will then complement any missing values from the schema, while keeping the initial values.
|
|
192
192
|
|
|
193
193
|
```ts
|
|
194
194
|
const jsonSchema = new Draft07(myJsonSchema);
|
|
195
195
|
const myData = jsonSchema.getTemplate({ name: "input-data" });
|
|
196
196
|
```
|
|
197
197
|
|
|
198
|
-
**Note
|
|
198
|
+
**Note:** If you are using references in your schema, `getTemplate` will only resolve the first _$ref_ in each path, ensuring no inifinte data structures are created. In case the limit of **1** _$ref_ resolution is too low, you can modify the value globally one by adjusting the json-schema-library settings:
|
|
199
199
|
|
|
200
200
|
```ts
|
|
201
201
|
import { settings } from "json-schema-library";
|
|
@@ -316,7 +316,7 @@ expect(calls).to.deep.equal([
|
|
|
316
316
|
|
|
317
317
|
### eachSchema
|
|
318
318
|
|
|
319
|
-
`eachSchema` emits each sub
|
|
319
|
+
`eachSchema` emits each sub-schema definition to a callback.
|
|
320
320
|
|
|
321
321
|
```ts
|
|
322
322
|
const jsonSchema = new Draft07(mySchema);
|
|
@@ -365,7 +365,7 @@ expect(calls).to.deep.equal([
|
|
|
365
365
|
|
|
366
366
|
### getSchema
|
|
367
367
|
|
|
368
|
-
`getSchema` retrieves the json-schema of a specific location in data. The location in data is given by a _json-pointer_. In many cases the schema can be retrieved without passing the actual data, but in situations where the schema is dynamic
|
|
368
|
+
`getSchema` retrieves the json-schema of a specific location in data. The location in data is given by a _json-pointer_. In many cases the schema can be retrieved without passing the actual data, but in situations where the schema is dynamic (e.g., in _oneOf_, _dependencies_, etc.), the data is required or will return a _JSONError_ if the location cannot be found.
|
|
369
369
|
|
|
370
370
|
```ts
|
|
371
371
|
const jsonSchema = new Draft07(mySchema);
|
|
@@ -388,11 +388,11 @@ const mySchema = {
|
|
|
388
388
|
{
|
|
389
389
|
type: "object",
|
|
390
390
|
required: ["name"],
|
|
391
|
-
properties: {
|
|
392
|
-
name: {
|
|
393
|
-
type: "string",
|
|
394
|
-
title: "name of item"
|
|
395
|
-
}
|
|
391
|
+
properties: {
|
|
392
|
+
name: {
|
|
393
|
+
type: "string",
|
|
394
|
+
title: "name of item"
|
|
395
|
+
}
|
|
396
396
|
}
|
|
397
397
|
},
|
|
398
398
|
{
|
|
@@ -433,16 +433,18 @@ expect(schemaOfItem).to.deep.equal({
|
|
|
433
433
|
|
|
434
434
|
<details><summary>About JSONPointer</summary>
|
|
435
435
|
|
|
436
|
-
**[JSON-Pointer](https://tools.ietf.org/html/rfc6901)** defines a string syntax for identifying a specific value within a JSON document and is [supported by JSON-Schema](https://json-schema.org/understanding-json-schema/structuring.html). Given a JSON document, it behaves similar to a [lodash path](https://lodash.com/docs/4.17.5#get) (`a[0].b.c`), which follows JS-syntax, but instead uses `/` separators
|
|
436
|
+
**[JSON-Pointer](https://tools.ietf.org/html/rfc6901)** defines a string syntax for identifying a specific value within a JSON document and is [supported by JSON-Schema](https://json-schema.org/understanding-json-schema/structuring.html). Given a JSON document, it behaves similar to a [lodash path](https://lodash.com/docs/4.17.5#get) (`a[0].b.c`), which follows JS-syntax, but instead uses `/` separators (e.g., `a/0/b/c`). In the end, you describe a path into the JSON data to a specific point.
|
|
437
437
|
|
|
438
438
|
</details>
|
|
439
439
|
|
|
440
440
|
|
|
441
441
|
### getChildSchemaSelection
|
|
442
442
|
|
|
443
|
-
`getChildSchemaSelection` returns a list of available sub
|
|
443
|
+
`getChildSchemaSelection` returns a list of available sub-schemas for the given property. In many cases, a single schema will be returned. For _oneOf_-schemas, a list of possible options is returned.
|
|
444
|
+
|
|
445
|
+
This helper always returns a list of schemas.
|
|
444
446
|
|
|
445
|
-
**Note
|
|
447
|
+
**Note:** This helper currenly supports a subset of json-schema for multiple results, mainly _oneOf_-definitions
|
|
446
448
|
|
|
447
449
|
```ts
|
|
448
450
|
const jsonSchema = new Draft07(mySchema);
|
|
@@ -475,7 +477,7 @@ expect(schemas).to.deep.equal([
|
|
|
475
477
|
])
|
|
476
478
|
```
|
|
477
479
|
|
|
478
|
-
</details>
|
|
480
|
+
</details>
|
|
479
481
|
|
|
480
482
|
|
|
481
483
|
|
|
@@ -519,11 +521,11 @@ expect(res).to.deep.eq({ type: "number" });
|
|
|
519
521
|
|
|
520
522
|
### addRemoteSchema
|
|
521
523
|
|
|
522
|
-
`addRemoteSchema` lets you add additional schemas that can be referenced by an
|
|
524
|
+
`addRemoteSchema` lets you add additional schemas that can be referenced by an URL using `$ref`. Use this to combine multiple schemas without changing the actual schema.
|
|
523
525
|
|
|
524
526
|
```ts
|
|
525
|
-
const jsonSchema = new Draft07({
|
|
526
|
-
$ref: "http://json-schema.org/draft-07/schema#definitions/nonNegativeInteger"
|
|
527
|
+
const jsonSchema = new Draft07({
|
|
528
|
+
$ref: "http://json-schema.org/draft-07/schema#definitions/nonNegativeInteger"
|
|
527
529
|
});
|
|
528
530
|
jsonSchema.addRemoteSchema("http://json-schema.org/draft-07/schema", draft07Schema);
|
|
529
531
|
```
|
|
@@ -563,7 +565,7 @@ const schema: JSONSchema = jsonSchema.createSchemaOf({ title: "initial value" })
|
|
|
563
565
|
|
|
564
566
|
### compileSchema
|
|
565
567
|
|
|
566
|
-
`compileSchema` adds _$ref_ resolution support to a json-schema. Internally, each draft compiles a passed schema on its own, but when passing additional schemas to individual functions, `compileSchema` has to be called manually for json-schemas containing $
|
|
568
|
+
`compileSchema` adds _$ref_ resolution support to a json-schema. Internally, each draft compiles a passed schema on its own, but when passing additional schemas to individual functions, `compileSchema` has to be called manually for json-schemas containing _$ref_-references.
|
|
567
569
|
|
|
568
570
|
```ts
|
|
569
571
|
const jsonSchema = new Draft07(mySchema);
|
|
@@ -571,7 +573,7 @@ const compiledSchema = jsonSchema.compileSchema({ $ref: "/$defs/table" });
|
|
|
571
573
|
const tableSchema = compiledSchema.getRef();
|
|
572
574
|
```
|
|
573
575
|
|
|
574
|
-
**Note
|
|
576
|
+
**Note:** that `draft.compileSchema` compiles a schema under the current rootSchema. That is, definitions from root schema will be copied to the local schema, to enable _$ref_ resolutions.
|
|
575
577
|
|
|
576
578
|
|
|
577
579
|
## Draft extensions
|
|
@@ -587,9 +589,9 @@ expression, the example will be printed in the error message.
|
|
|
587
589
|
|
|
588
590
|
### oneOfProperty
|
|
589
591
|
|
|
590
|
-
For `oneOf` resolution json-schema states that
|
|
592
|
+
For `oneOf` resolution, json-schema states that data is valid if it validates against exactly one of those sub-schemas. In some scenarios this is unwanted behaviour, as the actual `oneOf` schema is known and only validation errors of this exact sub-schema should be returned.
|
|
591
593
|
|
|
592
|
-
For an explicit `oneOf` resolution the json-schema may be extended by a property `oneOfProperty`. This will always associate an entry with a matching value (instead of schema validation) and return only this schema or validation errors, depending on the current task
|
|
594
|
+
For an explicit `oneOf` resolution, the json-schema may be extended by a property `oneOfProperty`. This will always associate an entry with a matching value (instead of schema validation) and return only this schema or validation errors, depending on the current task. For example:
|
|
593
595
|
|
|
594
596
|
```ts
|
|
595
597
|
const schema = {
|
|
@@ -613,9 +615,9 @@ const schema = {
|
|
|
613
615
|
const resolvedSchema = jsonSchema.resolveOneOf({ id: "2", title: "not a number" }, schema);
|
|
614
616
|
|
|
615
617
|
// will always return (even if invalid)
|
|
616
|
-
expect(resolvedSchema).to.deep.eq({
|
|
617
|
-
type: "object",
|
|
618
|
-
properties: { id: { const: "2" }, title: { type: "number" } }
|
|
618
|
+
expect(resolvedSchema).to.deep.eq({
|
|
619
|
+
type: "object",
|
|
620
|
+
properties: { id: { const: "2" }, title: { type: "number" } }
|
|
619
621
|
});
|
|
620
622
|
```
|
|
621
623
|
|
|
@@ -625,7 +627,7 @@ expect(resolvedSchema).to.deep.eq({
|
|
|
625
627
|
[custom resolvers](#custom-resolvers) | [custom validators](#custom-validators) | [custom errors](#custom-errors)
|
|
626
628
|
|
|
627
629
|
|
|
628
|
-
Each `Draft` in `json-schema-library` is build around a [DraftConfig](./lib/draft/index.ts#19). A `DraftConfig` holds all _functions_ and _configurations_ for each json-schema drafts. The `DraftConfig` is your main way to alter or extend behaviour for `json-schema-library`. You can either create your own _draftConfig_ or adjust any existing _draftConfig_. For the current drafts (4-7), each _draftConfig_ is exposed along with its actual _class_
|
|
630
|
+
Each `Draft` in `json-schema-library` is build around a [DraftConfig](./lib/draft/index.ts#19). A `DraftConfig` holds all _functions_ and _configurations_ for each json-schema drafts. The `DraftConfig` is your main way to alter or extend behaviour for `json-schema-library`. You can either create your own _draftConfig_ or adjust any existing _draftConfig_. For the current drafts (4-7), each _draftConfig_ is exposed along with its actual _class_. For example:
|
|
629
631
|
|
|
630
632
|
```ts
|
|
631
633
|
import { Draft, Draft07, draft07Config } from 'json-schema-library';
|
|
@@ -636,9 +638,9 @@ new Draft07(mySchema, {});
|
|
|
636
638
|
new Draft07(mySchema);
|
|
637
639
|
```
|
|
638
640
|
|
|
639
|
-
|
|
641
|
+
All draft configurations for specific `Draft` classes accept a partial configuration that lets you overwrite default behaviour:
|
|
640
642
|
|
|
641
|
-
> replace the strict resolveOneOf behaviour to use fuzzy search instead:
|
|
643
|
+
> replace the strict `resolveOneOf` behaviour to use fuzzy search instead:
|
|
642
644
|
|
|
643
645
|
```ts
|
|
644
646
|
import { Draft07, draft07Config, resolveOneOfFuzzy } from 'json-schema-library';
|
|
@@ -650,12 +652,12 @@ new Draft({ ...draft07Config, resolveOneOf: resolveOneOfFuzzy }, mySchema);
|
|
|
650
652
|
|
|
651
653
|
### custom resolvers
|
|
652
654
|
|
|
653
|
-
A _resolver_ is a simple method implementing a specific feature of json-schema to retrieve a sub
|
|
655
|
+
A _resolver_ is a simple method implementing a specific feature of json-schema to retrieve a sub-schema. Implementing the signature of each resolver you can create and pass your own resolvers.
|
|
654
656
|
|
|
655
657
|
|
|
656
658
|
#### `resolveRef` with merge
|
|
657
659
|
|
|
658
|
-
The default json-schema behaviour for `$ref` resolution is to replace the schema where a `$ref` is defined. In some scenarios you what to add context
|
|
660
|
+
The default json-schema behaviour for `$ref` resolution is to replace the schema where a `$ref` is defined. In some scenarios you what to add context-specific information (e.g., a specific _title_). For this, a modified `$ref`-resolver is exposed by `json-schema-library`:
|
|
659
661
|
|
|
660
662
|
```ts
|
|
661
663
|
import { Draft07, draft07Config, resolveRefMerge } from 'json-schema-library';
|
|
@@ -664,7 +666,7 @@ const jsonSchema = new Draft07(mySchema, { resolveRef: resolveRefMerge });
|
|
|
664
666
|
|
|
665
667
|
`resolveRefMerge` performs a shallow merge (first level of properties), adding the local schemas properties last.
|
|
666
668
|
|
|
667
|
-
**
|
|
669
|
+
**Caution:** With this resolver, it is possible to overwrite json-schema behavioural properties. Treat with care.
|
|
668
670
|
|
|
669
671
|
<details><summary>Example</summary>
|
|
670
672
|
|
|
@@ -700,7 +702,7 @@ expect(subHeaderSchema).to.eq({
|
|
|
700
702
|
|
|
701
703
|
#### `resolveOneOf` fuzzy search
|
|
702
704
|
|
|
703
|
-
The default json-schema behaviour for `oneOf` resolution is to validate all contained _oneOf_-schemas and return the one schema that validates against the given input data. If no item validates completely an error returned, containing all validation errors of all schemas. When you are interested in the actual error (
|
|
705
|
+
The default json-schema behaviour for `oneOf` resolution is to validate all contained _oneOf_-schemas and return the one schema that validates against the given input data. If no item validates completely an error returned, containing all validation errors of all schemas. When you are interested in the actual error (rather than simply determining “Is the data is valid or not?”), this is behaviour is not very helpful as the result is hard to read.
|
|
704
706
|
|
|
705
707
|
`json-schema-library` exposes a method `resolveOneOfFuzzy`, which will return a single schema in cases where no valid schema could be resolved. `resolveOneOfFuzzy` uses a simple scoring mechanism to return the best fitting schema for the given input data. Thus, `resolveOneOfFuzzy` may return schemas that do not validate a given input data.
|
|
706
708
|
|
|
@@ -712,15 +714,15 @@ const jsonSchema = new Draft07(mySchema, { resolveOneOf: resolveOneOfFuzzy });
|
|
|
712
714
|
|
|
713
715
|
### custom validators
|
|
714
716
|
|
|
715
|
-
All json-schema validation is done using validator functions for _keywords_ and _formats_.
|
|
717
|
+
All json-schema validation is done using validator functions for _keywords_ and _formats_.
|
|
716
718
|
|
|
717
|
-
**keyword validators** are called for each keyword defined on a json-schema,
|
|
719
|
+
**keyword validators** are called for each keyword defined on a json-schema. For example, the following schema will run two keyword-validators (one for `items` and one of `minItems`) which are defined in `draft.validateKeyword.items` and `draft.validateKeyword.minItems`.
|
|
718
720
|
|
|
719
721
|
```ts
|
|
720
722
|
{ type: "object", items: {}, minItems: 1 }
|
|
721
723
|
```
|
|
722
724
|
|
|
723
|
-
Since valid json-schema keywords vary by their `type` an additional mapping registers, which keyword should be tested per schema-type. This mapping is defined in `draft.typeKeywords
|
|
725
|
+
Since valid json-schema keywords vary by their `type` an additional mapping registers, which keyword should be tested per schema-type. This mapping is defined in `draft.typeKeywords`:
|
|
724
726
|
|
|
725
727
|
```ts
|
|
726
728
|
import { draft07Config } from "json-schema-library";
|
|
@@ -732,7 +734,7 @@ console.log(draft07Config.typeKeywords.array);
|
|
|
732
734
|
|
|
733
735
|
> The keyword **format** is also registered in `draft.validateKeyword.format`, but each actual format validation is defined as follows:
|
|
734
736
|
|
|
735
|
-
**format validators** are called on each
|
|
737
|
+
**format validators** are called on each occurrence of a property format in a json-schema. In the next example, the schema will run the _email_-validator given in `draft.validateFormat.email`:
|
|
736
738
|
|
|
737
739
|
```ts
|
|
738
740
|
{ type: "string", format: "email" }
|
|
@@ -740,9 +742,9 @@ console.log(draft07Config.typeKeywords.array);
|
|
|
740
742
|
|
|
741
743
|
#### add custom keyword validator
|
|
742
744
|
|
|
743
|
-
To add or overwrite a keyword validator you
|
|
745
|
+
To add or overwrite a keyword validator, you must add a validator function on your draft config in `validateKeyword`.
|
|
744
746
|
|
|
745
|
-
|
|
747
|
+
Using specific Draft configuration, where draft configuration objects will be merged:
|
|
746
748
|
|
|
747
749
|
```ts
|
|
748
750
|
import { Draft07, JSONValidator } from "json-schema-library";
|
|
@@ -759,7 +761,7 @@ const jsonSchema = new Draft07(mySchema, {
|
|
|
759
761
|
});
|
|
760
762
|
```
|
|
761
763
|
|
|
762
|
-
|
|
764
|
+
**Example:** Manually extending draft configuration:
|
|
763
765
|
|
|
764
766
|
```ts
|
|
765
767
|
import { Draft, draft07Config, JSONValidator } from "json-schema-library";
|
|
@@ -785,7 +787,7 @@ const jsonSchema = new Draft(myDraftConfiguration, mySchema);
|
|
|
785
787
|
|
|
786
788
|
#### add custom format validator
|
|
787
789
|
|
|
788
|
-
To add or overwrite a format validator you
|
|
790
|
+
To add or overwrite a format validator you must add a validator function on your draft config in `validateFormat`.
|
|
789
791
|
|
|
790
792
|
```ts
|
|
791
793
|
import { Draft07, JSONValidator } from "json-schema-library";
|
|
@@ -818,10 +820,10 @@ Each error message in `config.strings` receives the `data`-property of an error.
|
|
|
818
820
|
import { render } from "json-schema-library";
|
|
819
821
|
|
|
820
822
|
render(
|
|
821
|
-
"Expected given value `{{value}}` in `{{pointer}}` to be one of `{{values}}`",
|
|
823
|
+
"Expected given value `{{value}}` in `{{pointer}}` to be one of `{{values}}`",
|
|
822
824
|
{ pointer: "[A]", value: "[B]" }
|
|
823
825
|
);
|
|
824
|
-
// "Expected given value `[B]` in `[A]` to be one of ``"
|
|
826
|
+
// "Expected given value `[B]` in `[A]` to be one of ``"
|
|
825
827
|
```
|
|
826
828
|
|
|
827
829
|
|
|
@@ -864,16 +866,16 @@ const error: JSONError = createError("EnumError", { data: { pointer: "#/location
|
|
|
864
866
|
|
|
865
867
|
### v7.0.0
|
|
866
868
|
|
|
867
|
-
|
|
869
|
+
With version `v7.0.0`, library export and Draft API has changed heavily. The API is now more consistent across draft-versions and offers a simple and consistent configuration interface for existing and custom drafts. In addition, most standalone functions are no longer exposed separately, but under its current _draftConfigs_ and mainly on each draft-instance. This will help to reduce confusion when consuming this API.
|
|
868
870
|
|
|
869
|
-
The above documentation reflects all
|
|
871
|
+
The above documentation reflects all these changes. Just reach out if you have troubles migrating to the latest version.
|
|
870
872
|
|
|
871
|
-
<details><summary>Details
|
|
873
|
+
<details><summary>Details of breaking changes</summary>
|
|
872
874
|
|
|
873
875
|
- replaced `Core` interface by new `Draft` interface
|
|
874
876
|
- changed export of `Interface` to `Draft`
|
|
875
877
|
- renamed `addSchema` to `addRemoteSchema`
|
|
876
|
-
- changed
|
|
878
|
+
- changed API of `compileSchema` to have an additional schema-parameter for rootSchema reference
|
|
877
879
|
- changed `compileSchema` and `addRemoteSchema` to work on instance state, instead of global state
|
|
878
880
|
- `addRemoteSchema`, `compileSchema` now requires draft instance as first parameter
|
|
879
881
|
- removed direct export of following functions: `addValidator`, `compileSchema`, `createSchemaOf`, `each`, `eachSchema`, `getChildSchemaSelection`, `getSchema`, `getTemplate`, `isValid`, `step`, `validate`. They are still accessible under the draftConfigs of each draft-version
|
|
@@ -884,14 +886,14 @@ The above documentation reflects all those changes. Just reach out if you have t
|
|
|
884
886
|
|
|
885
887
|
### v6.0.0
|
|
886
888
|
|
|
887
|
-
|
|
889
|
+
With version `v6.0.0` supported json schema drafts are exported directly as `Draft04`, `Draft06`, `Draft07`. Example use: `import { Draft07 } from "json-schema-library"`.
|
|
888
890
|
|
|
889
891
|
|
|
890
892
|
### v5.0.0
|
|
891
893
|
|
|
892
|
-
|
|
894
|
+
With version `v5.0.0` the API has changed to es6 modules, where there is no `default` export, only named exports. Additionally all code has been rewritten in TypeScript. When directly accessing files, switch to `dist/module/*.js`-files for plain js-modules.
|
|
893
895
|
|
|
894
896
|
|
|
895
897
|
### v4.0.0
|
|
896
898
|
|
|
897
|
-
|
|
899
|
+
With version `v4.0.0` the API has changed in order to use the defined (root) schema in draft as default where possible. This means most methods have a changed signature, where `data` is passed before an optional `schema` argument.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see jsonSchemaLibrary.js.LICENSE.txt */
|
|
2
|
-
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("jlib",[],r):"object"==typeof exports?exports.jlib=r():e.jlib=r()}("undefined"!=typeof self?self:this,(()=>(()=>{var __webpack_modules__={604:function(e){"undefined"!=typeof self&&self,e.exports=(()=>{"use strict";var e={d:(r,t)=>{for(var n in t)e.o(t,n)&&!e.o(r,n)&&Object.defineProperty(r,n,{enumerable:!0,get:t[n]})},o:(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};function t(e){return"#"===e||""===e||Array.isArray(e)&&0===e.length||!1}e.r(r),e.d(r,{default:()=>A,get:()=>f,isRoot:()=>t,join:()=>P,remove:()=>O,removeUndefinedItems:()=>E,set:()=>h,split:()=>u,splitLast:()=>S});const n=/~1/g,o=/~0/g,i=/\/+/g,a=/(^[#/]*|\/+$)/g;function s(e){return e.replace(n,"/").replace(o,"~")}function l(e){return s(decodeURIComponent(e))}function u(e){if(null==e||"string"!=typeof e||t(e))return Array.isArray(e)?e:[];const r=e.indexOf("#")>=0?l:s,n=(e=(e=e.replace(i,"/")).replace(a,"")).split("/");for(let e=0,t=n.length;e<t;e+=1)n[e]=r(n[e]);return n}function f(e,r,n){if(null==r||null==e)return n;if(t(r))return e;const o=c(e,u(r));return void 0===o?n:o}function c(e,r){const t=r.shift();if(void 0!==e)return void 0!==t?c(e[t],r):e}const p=/^\[.*\]$/,m=/^\[(.+)\]$/;function d(e,r){return"__proto__"===e||"constructor"==e&&r.length>0&&"prototype"==r[0]}function h(e,r,t){if(null==r)return e;const n=u(r);if(0===n.length)return e;null==e&&(e=p.test(n[0])?[]:{});let o,i,a=e;for(;n.length>1;)o=n.shift(),i=p.test(n[0]),d(o,n)||(a=g(a,o,i));return o=n.pop(),y(a,o,t),e}function y(e,r,t){let n;const o=r.match(m);"[]"===r&&Array.isArray(e)?e.push(t):o?(n=o.pop(),e[n]=t):e[r]=t}function g(e,r,t){if(null!=e[r])return e[r];const n=t?[]:{};return y(e,r,n),n}function E(e){let r=0,t=0;for(;r+t<e.length;)void 0===e[r+t]&&(t+=1),e[r]=e[r+t],r+=1;return e.length=e.length-t,e}function O(e,r,t){const n=u(r),o=n.pop(),i=f(e,n);return i&&delete i[o],Array.isArray(i)&&!0!==t&&E(i),e}const v=/\/+/g,b=/~/g,x=/\//g;function _(e,r){if(0===e.length)return r?"#":"";for(let t=0,n=e.length;t<n;t+=1)e[t]=e[t].replace(b,"~0").replace(x,"~1"),r&&(e[t]=encodeURIComponent(e[t]));return((r?"#/":"/")+e.join("/")).replace(v,"/")}function P(e,...r){const t=[];if(Array.isArray(e))return _(e,!0===arguments[1]);const n=arguments[arguments.length-1],o="boolean"==typeof n?n:e&&"#"===e[0];for(let e=0,r=arguments.length;e<r;e+=1)t.push.apply(t,u(arguments[e]));const i=[];for(let e=0,r=t.length;e<r;e+=1)if(".."===t[e]){if(0===i.length)return o?"#":"";i.pop()}else i.push(t[e]);return _(i,o)}function S(e){const r=u(e);if(0===r.length)return"string"==typeof e&&"#"===e[0]?["#",r[0]]:["",void 0];if(1===r.length)return"#"===e[0]?["#",r[0]]:["",r[0]];const t=r.pop();return[P(r,"#"===e[0]),t]}const A={get:f,set:h,remove:O,join:P,split:u,splitLast:S,isRoot:t,removeUndefinedItems:E};return r})()},996:e=>{"use strict";var r=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var r=Object.prototype.toString.call(e);return"[object RegExp]"===r||"[object Date]"===r||function(e){return e.$$typeof===t}(e)}(e)};var t="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,r){return!1!==r.clone&&r.isMergeableObject(e)?l((t=e,Array.isArray(t)?[]:{}),e,r):e;var t}function o(e,r,t){return e.concat(r).map((function(e){return n(e,t)}))}function i(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(r){return e.propertyIsEnumerable(r)})):[]}(e))}function a(e,r){try{return r in e}catch(e){return!1}}function s(e,r,t){var o={};return t.isMergeableObject(e)&&i(e).forEach((function(r){o[r]=n(e[r],t)})),i(r).forEach((function(i){(function(e,r){return a(e,r)&&!(Object.hasOwnProperty.call(e,r)&&Object.propertyIsEnumerable.call(e,r))})(e,i)||(a(e,i)&&t.isMergeableObject(r[i])?o[i]=function(e,r){if(!r.customMerge)return l;var t=r.customMerge(e);return"function"==typeof t?t:l}(i,t)(e[i],r[i],t):o[i]=n(r[i],t))})),o}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||r,i.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(t);return a===Array.isArray(e)?a?i.arrayMerge(e,t,i):s(e,t,i):n(t,i)}l.all=function(e,r){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,t){return l(e,t,r)}),{})};var u=l;e.exports=u},723:(e,r,t)=>{"use strict";const n=t(802);var o;!function(e){e.RULES=[{name:"Grammar",bnf:[["RULE_S*","%Atomic*","EOF"]]},{name:"%Atomic",bnf:[["Production","RULE_S*"]],fragment:!0},{name:"Production",bnf:[["NCName","RULE_S*",'"::="',"RULE_WHITESPACE*","Choice","RULE_WHITESPACE*","RULE_EOL+","RULE_S*"]]},{name:"NCName",bnf:[[/[a-zA-Z][a-zA-Z_0-9]*/]]},{name:"Choice",bnf:[["SequenceOrDifference","%_Choice_1*"]],fragment:!0},{name:"%_Choice_1",bnf:[["RULE_WHITESPACE*",'"|"',"RULE_WHITESPACE*","SequenceOrDifference"]],fragment:!0},{name:"SequenceOrDifference",bnf:[["Item","RULE_WHITESPACE*","%_Item_1?"]]},{name:"%_Item_1",bnf:[["Minus","Item"],["Item*"]],fragment:!0},{name:"Minus",bnf:[['"-"']]},{name:"Item",bnf:[["RULE_WHITESPACE*","%Primary","PrimaryDecoration?"]],fragment:!0},{name:"PrimaryDecoration",bnf:[['"?"'],['"*"'],['"+"']]},{name:"DecorationName",bnf:[['"ebnf://"',/[^\x5D#]+/]]},{name:"%Primary",bnf:[["NCName"],["StringLiteral"],["CharCode"],["CharClass"],["SubItem"]],fragment:!0},{name:"SubItem",bnf:[['"("',"RULE_WHITESPACE*","Choice","RULE_WHITESPACE*",'")"']]},{name:"StringLiteral",bnf:[["'\"'",/[^"]*/,"'\"'"],['"\'"',/[^']*/,'"\'"']],pinned:1},{name:"CharCode",bnf:[['"#x"',/[0-9a-zA-Z]+/]]},{name:"CharClass",bnf:[["'['","'^'?","%RULE_CharClass_1+",'"]"']]},{name:"%RULE_CharClass_1",bnf:[["CharCodeRange"],["CharRange"],["CharCode"],["RULE_Char"]],fragment:!0},{name:"RULE_Char",bnf:[[/\x09/],[/\x0A/],[/\x0D/],[/[\x20-\x5c]/],[/[\x5e-\uD7FF]/],[/[\uE000-\uFFFD]/]]},{name:"CharRange",bnf:[["RULE_Char",'"-"',"RULE_Char"]]},{name:"CharCodeRange",bnf:[["CharCode",'"-"',"CharCode"]]},{name:"RULE_WHITESPACE",bnf:[["%RULE_WHITESPACE_CHAR*"],["Comment","RULE_WHITESPACE*"]]},{name:"RULE_S",bnf:[["RULE_WHITESPACE","RULE_S*"],["RULE_EOL","RULE_S*"]]},{name:"%RULE_WHITESPACE_CHAR",bnf:[[/\x09/],[/\x20/]],fragment:!0},{name:"Comment",bnf:[['"/*"',"%RULE_Comment_Body*",'"*/"']]},{name:"%RULE_Comment_Body",bnf:[['!"*/"',/[^*]/]],fragment:!0},{name:"RULE_EOL",bnf:[[/\x0D/,/\x0A/],[/\x0A/],[/\x0D/]]},{name:"Link",bnf:[["'['","Url","']'"]]},{name:"Url",bnf:[[/[^\x5D:/?#]/,'"://"',/[^\x5D#]+/,"%Url1?"]]},{name:"%Url1",bnf:[['"#"',"NCName"]],fragment:!0}],e.defaultParser=new n.Parser(e.RULES,{debug:!1});const r=/^(!|&)/,t=/(\?|\+|\*)$/,o=/^%/;function i(e,i){if("string"==typeof e){if(r.test(e))return"";if(o.test(e)){let r=t.exec(e),o=r?r[0]+" ":"",s=function(e,r){let t=n.findRuleByName(e,r);return t&&1==t.bnf.length&&1==t.bnf[0].length&&(t.bnf[0][0]instanceof RegExp||'"'==t.bnf[0][0][0]||"'"==t.bnf[0][0][0])}(e,i);return s?a(e,i)+o:"("+a(e,i)+")"+o}return e}return e.source.replace(/\\(?:x|u)([a-zA-Z0-9]+)/g,"#x$1").replace(/\[\\(?:x|u)([a-zA-Z0-9]+)-\\(?:x|u)([a-zA-Z0-9]+)\]/g,"[#x$1-#x$2]")}function a(e,r){let t=n.findRuleByName(e,r);return t?t.bnf.map((e=>function(e,r){return e.map((e=>i(e,r))).join(" ")}(e,r))).join(" | "):"RULE_NOT_FOUND {"+e+"}"}function s(e){let r=[];return e.grammarRules.forEach((t=>{if(!/^%/.test(t.name)){let n=t.recover?" /* { recoverUntil="+t.recover+" } */":"";r.push(t.name+" ::= "+a(t.name,e)+n)}})),r.join("\n")}e.emit=s;let l=0;function u(e){return new RegExp(e.replace(/#x([a-zA-Z0-9]{4})/g,"\\u$1").replace(/#x([a-zA-Z0-9]{3})/g,"\\u0$1").replace(/#x([a-zA-Z0-9]{2})/g,"\\x$1").replace(/#x([a-zA-Z0-9]{1})/g,"\\x0$1"))}function f(e,r,t){let n=null,o=[];return r.children.forEach(((i,a)=>{"Minus"==i.type&&function(e,r){throw console.log("reberia restar "+r+" a "+e),new Error("Difference not supported yet")}(n,i);let s=r.children[a+1];s=s&&"PrimaryDecoration"==s.type&&s.text||"";switch(i.type){case"SubItem":let r="%"+(t+l++);c(e,i,r),o.push(""+r+s);break;case"NCName":case"StringLiteral":o.push(""+i.text+s);break;case"CharCode":case"CharClass":if(s){let r={name:"%"+(t+l++),bnf:[[u(i.text)]]};e.push(r),o.push(""+r.name+s)}else o.push(u(i.text));break;case"PrimaryDecoration":break;default:throw new Error(" HOW SHOULD I PARSE THIS? "+i.type+" -> "+JSON.stringify(i.text))}n=i})),o}function c(e,r,t){let n=r.children.filter((e=>"SequenceOrDifference"==e.type)).map((r=>f(e,r,t))),o={name:t,bnf:n},i=null;n.forEach((e=>{i=i||e.recover,delete e.recover})),0==t.indexOf("%")&&(o.fragment=!0),i&&(o.recover=i),e.push(o)}function p(r,t=e.defaultParser){let n=t.getAST(r);if(!n)throw new Error("Could not parse "+r);if(n.errors&&n.errors.length)throw n.errors[0];let o=[];return n.children.filter((e=>"Production"==e.type)).map((e=>{let r=e.children.filter((e=>"NCName"==e.type))[0].text;c(o,e,r)})),o}e.getRules=p,e.Transform=function(r,t=e.defaultParser){return p(r.join(""),t)};class m extends n.Parser{constructor(r,t){super(p(r,t&&!0===t.debugRulesParser?new n.Parser(e.RULES,{debug:!0}):e.defaultParser),t)}emitSource(){return s(this)}}e.Parser=m}(o||(o={})),r.Z=o},802:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Parser=exports.findRuleByName=exports.parseRuleName=exports.escapeRegExp=exports.readToken=void 0;const UPPER_SNAKE_RE=/^[A-Z0-9_]+$/,decorationRE=/(\?|\+|\*)$/,preDecorationRE=/^(@|&|!)/,WS_RULE="WS",TokenError_1=__webpack_require__(239);function readToken(e,r){let t=r.exec(e);return t&&0==t.index?0==t[0].length&&r.source.length>0?null:{type:null,text:t[0],rest:e.substr(t[0].length),start:0,end:t[0].length-1,fullText:t[0],errors:[],children:[],parent:null}:null}function escapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function fixRest(e){e.rest="",e.children&&e.children.forEach((e=>fixRest(e)))}function fixPositions(e,r){e.start+=r,e.end+=r,e.children&&e.children.forEach((r=>fixPositions(r,e.start)))}function agregateErrors(e,r){r.errors&&r.errors.length&&r.errors.forEach((r=>e.push(r))),r.children&&r.children.forEach((r=>agregateErrors(e,r)))}function parseRuleName(e){let r=decorationRE.exec(e),t=preDecorationRE.exec(e),n=r&&r[0]||"",o=t&&t[0]||"",i={raw:e,name:e.replace(decorationRE,"").replace(preDecorationRE,""),isOptional:"?"==n||"*"==n,allowRepetition:"+"==n||"*"==n,atLeastOne:"+"==n,lookupPositive:"&"==o,lookupNegative:"!"==o,pinned:"@"==o,lookup:!1,isLiteral:!1};return i.isLiteral="'"==i.name[0]||'"'==i.name[0],i.lookup=i.lookupNegative||i.lookupPositive,i}function findRuleByName(e,r){let t=parseRuleName(e);return r.cachedRules[t.name]||null}function stripRules(e,r){if(e.children){let t=e.children.filter((e=>e.type&&r.test(e.type)));for(let r=0;r<t.length;r++){let n=e.children.indexOf(t[r]);-1!=n&&e.children.splice(n,1)}e.children.forEach((e=>stripRules(e,r)))}}exports.readToken=readToken,exports.escapeRegExp=escapeRegExp,exports.parseRuleName=parseRuleName,exports.findRuleByName=findRuleByName;const ignoreMissingRules=["EOF"];class Parser{constructor(e,r){this.grammarRules=e,this.options=r,this.cachedRules={},this.debug=!!r&&!0===r.debug;let t=[],n=[];if(e.forEach((e=>{let r=parseRuleName(e.name);if(r.name in this.cachedRules)t.push("Duplicated rule "+r.name);else{if(this.cachedRules[r.name]=e,e.bnf&&e.bnf.length)e.bnf.forEach((r=>{if("string"==typeof r[0]){if(parseRuleName(r[0]).name==e.name){let r="Left recursion is not allowed, rule: "+e.name;-1==t.indexOf(r)&&t.push(r)}}r.forEach((e=>{if("string"==typeof e){let r=parseRuleName(e);r.isLiteral||-1!=n.indexOf(r.name)||-1!=ignoreMissingRules.indexOf(r.name)||n.push(r.name)}}))}));else{let r="Missing rule content, rule: "+e.name;-1==t.indexOf(r)&&t.push(r)}WS_RULE==e.name&&(e.implicitWs=!1),e.implicitWs&&-1==n.indexOf(WS_RULE)&&n.push(WS_RULE),e.recover&&-1==n.indexOf(e.recover)&&n.push(e.recover)}})),n.forEach((e=>{e in this.cachedRules||t.push("Missing rule "+e)})),t.length)throw new Error(t.join("\n"))}getAST(e,r){r||(r=this.grammarRules.filter((e=>!e.fragment&&0!=e.name.indexOf("%")))[0].name);let t=this.parse(e,r);if(t){agregateErrors(t.errors,t),fixPositions(t,0),stripRules(t,/^%/),this.options&&this.options.keepUpperRules||stripRules(t,UPPER_SNAKE_RE);let e=t.rest;e&&new TokenError_1.TokenError("Unexpected end of input: \n"+e,t),fixRest(t),t.rest=e}return t}emitSource(){return"CANNOT EMIT SOURCE FROM BASE Parser"}parse(txt,target,recursion=0){let out=null,type=parseRuleName(target),expr,printable=this.debug&&!UPPER_SNAKE_RE.test(type.name);printable&&console.log(new Array(recursion).join("│ ")+"Trying to get "+target+" from "+JSON.stringify(txt.split("\n")[0]));let realType=type.name,targetLex=findRuleByName(type.name,this);if("EOF"==type.name){if(txt.length)return null;if(0==txt.length)return{type:"EOF",text:"",rest:"",start:0,end:0,fullText:"",errors:[],children:[],parent:null}}try{if(!targetLex&&type.isLiteral){let src=eval(type.name);if(""===src)return{type:"%%EMPTY%%",text:"",rest:txt,start:0,end:0,fullText:"",errors:[],children:[],parent:null};expr=new RegExp(escapeRegExp(src)),realType=null}}catch(e){return e instanceof ReferenceError&&console.error(e),null}if(expr){let e=readToken(txt,expr);if(e)return e.type=realType,e}else{let e=targetLex.bnf;e instanceof Array&&e.forEach((e=>{if(out)return;let r=null,t={type:type.name,text:"",children:[],end:0,errors:[],fullText:"",parent:null,start:0,rest:txt};targetLex.fragment&&(t.fragment=!0);let n=txt,o=0,i=e.length>0,a=!1;for(let s=0;s<e.length;s++)if("string"==typeof e[s]){let l,u=parseRuleName(e[s]);i=i&&u.isOptional;let f=!1;do{if(l=null,targetLex.implicitWs&&(l=this.parse(n,u.name,recursion+1),!l)){let e;do{if(e=this.parse(n,WS_RULE,recursion+1),!e)break;t.text=t.text+e.text,t.end=t.text.length,e.parent=t,t.children.push(e),n=n.substr(e.text.length),o+=e.text.length}while(e&&e.text.length)}if(l=l||this.parse(n,u.name,recursion+1),u.lookupNegative){if(l)return;break}if(u.lookupPositive&&!l)return;if(!l){if(u.isOptional)break;if(u.atLeastOne&&f)break}if(l&&targetLex.pinned==s+1&&(r=l,printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" PINNED")),l||(l=this.parseRecovery(targetLex,n,recursion+1)),!l){if(!r)return;out=t,l={type:"SyntaxError",text:n,children:[],end:n.length,errors:[],fullText:"",parent:null,start:0,rest:""},n.length?new TokenError_1.TokenError(`Unexpected end of input. Expecting ${u.name} Got: ${n}`,l):new TokenError_1.TokenError(`Unexpected end of input. Missing ${u.name}`,l),printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" "+JSON.stringify(l.text))}if(f=!0,a=!0,"%%EMPTY%%"==l.type)break;l.start+=o,l.end+=o,!u.lookupPositive&&l.type&&(l.fragment?l.children&&l.children.forEach((e=>{e.start+=o,e.end+=o,e.parent=t,t.children.push(e)})):(l.parent=t,t.children.push(l))),u.lookup&&(l.lookup=!0),printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" "+JSON.stringify(l.text)),u.lookup||l.lookup||(t.text=t.text+l.text,t.end=t.text.length,n=n.substr(l.text.length),o+=l.text.length),t.rest=n}while(l&&u.allowRepetition&&n.length&&!l.lookup)}else{let r=readToken(n,e[s]);if(!r)return;printable&&console.log(new Array(recursion+1).join("│ ")+"└> "+JSON.stringify(r.text)+e[s].source),a=!0,r.start+=o,r.end+=o,t.text=t.text+r.text,t.end=t.text.length,n=n.substr(r.text.length),o+=r.text.length,t.rest=n}a&&(out=t,printable&&console.log(new Array(recursion).join("│ ")+"├<─┴< PUSHING "+out.type+" "+JSON.stringify(out.text)))})),out&&targetLex.simplifyWhenOneChildren&&1==out.children.length&&(out=out.children[0])}return out||printable&&console.log(target+" NOT RESOLVED FROM "+txt),out}parseRecovery(e,r,t){if(e.recover&&r.length){let n=this.debug;n&&console.log(new Array(t+1).join("│ ")+"Trying to recover until token "+e.recover+" from "+JSON.stringify(r.split("\n")[0]+r.split("\n")[1]));let o,i={type:"SyntaxError",text:"",children:[],end:0,errors:[],fullText:"",parent:null,start:0,rest:""};do{if(o=this.parse(r,e.recover,t+1),o){new TokenError_1.TokenError('Unexpected input: "'+i.text+`" Expecting: ${e.name}`,i);break}i.text=i.text+r[0],i.end=i.text.length,r=r.substr(1)}while(!o&&r.length>0);if(i.text.length>0&&o)return n&&console.log(new Array(t+1).join("│ ")+"Recovered text: "+JSON.stringify(i.text)),i}return null}}exports.Parser=Parser,exports.default=Parser},239:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.TokenError=void 0;class t extends Error{constructor(e,r){if(super(e),this.message=e,this.token=r,!r||!r.errors)throw this;r.errors.push(this)}inspect(){return"SyntaxError: "+this.message}}r.TokenError=t},63:e=>{"use strict";e.exports=function e(r,t){if(r===t)return!0;if(r&&t&&"object"==typeof r&&"object"==typeof t){if(r.constructor!==t.constructor)return!1;var n,o,i;if(Array.isArray(r)){if((n=r.length)!=t.length)return!1;for(o=n;0!=o--;)if(!e(r[o],t[o]))return!1;return!0}if(r.constructor===RegExp)return r.source===t.source&&r.flags===t.flags;if(r.valueOf!==Object.prototype.valueOf)return r.valueOf()===t.valueOf();if(r.toString!==Object.prototype.toString)return r.toString()===t.toString();if((n=(i=Object.keys(r)).length)!==Object.keys(t).length)return!1;for(o=n;0!=o--;)if(!Object.prototype.hasOwnProperty.call(t,i[o]))return!1;for(o=n;0!=o--;){var a=i[o];if(!e(r[a],t[a]))return!1}return!0}return r!=r&&t!=t}},481:(e,r,t)=>{!function(e){"use strict";e.exports.is_uri=t,e.exports.is_http_uri=n,e.exports.is_https_uri=o,e.exports.is_web_uri=i,e.exports.isUri=t,e.exports.isHttpUri=n,e.exports.isHttpsUri=o,e.exports.isWebUri=i;var r=function(e){return e.match(/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/)};function t(e){if(e&&!/[^a-z0-9\:\/\?\#\[\]\@\!\$\&\'\(\)\*\+\,\;\=\.\-\_\~\%]/i.test(e)&&!/%[^0-9a-f]/i.test(e)&&!/%[0-9a-f](:?[^0-9a-f]|$)/i.test(e)){var t,n,o,i,a,s="",l="";if(s=(t=r(e))[1],n=t[2],o=t[3],i=t[4],a=t[5],s&&s.length&&o.length>=0){if(n&&n.length){if(0!==o.length&&!/^\//.test(o))return}else if(/^\/\//.test(o))return;if(/^[a-z][a-z0-9\+\-\.]*$/.test(s.toLowerCase()))return l+=s+":",n&&n.length&&(l+="//"+n),l+=o,i&&i.length&&(l+="?"+i),a&&a.length&&(l+="#"+a),l}}}function n(e,n){if(t(e)){var o,i,a,s,l="",u="",f="",c="";if(l=(o=r(e))[1],u=o[2],i=o[3],a=o[4],s=o[5],l){if(n){if("https"!=l.toLowerCase())return}else if("http"!=l.toLowerCase())return;if(u)return/:(\d+)$/.test(u)&&(f=u.match(/:(\d+)$/)[0],u=u.replace(/:\d+$/,"")),c+=l+":",c+="//"+u,f&&(c+=f),c+=i,a&&a.length&&(c+="?"+a),s&&s.length&&(c+="#"+s),c}}}function o(e){return n(e,!0)}function i(e){return n(e)||o(e)}}(e=t.nmd(e))}},__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__={};return(()=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{Draft:()=>k,Draft04:()=>Dr,Draft06:()=>Fr,Draft07:()=>Ir,JsonEditor:()=>Nr,SchemaService:()=>Lr,config:()=>Kr,createCustomError:()=>o,createError:()=>n,draft04Config:()=>qr,draft06Config:()=>Vr,draft07Config:()=>wr,draftJsonEditorConfig:()=>kr,getTypeOf:()=>a,isJSONError:()=>s,render:()=>r,resolveAllOf:()=>b,resolveOneOf:()=>m,resolveOneOfFuzzy:()=>P,resolveRef:()=>S,resolveRefMerge:()=>A,settings:()=>c,validateAsync:()=>Tr});const e={AdditionalItemsError:"Array at `{{pointer}}` may not have an additional item `{{key}}`",AdditionalPropertiesError:"Additional property `{{property}}` on `{{pointer}}` does not match schema `{{schema}}`",AllOfError:"Value `{{value}}` at `{{pointer}}` does not match schema of `{{allOf}}`",AnyOfError:"Value `{{value}}` at `{{pointer}}` does not match any schema of `{{anyOf}}`",ConstError:"Expected value at `{{pointer}}` to be `{{expected}}`, but value given is `{{value}}`",containsAnyError:"The array at `{{pointer}}` must contain at least one item",ContainsArrayError:"The property at `{{pointer}}` must not be an array",ContainsError:"The array at `{{pointer}}` must contain an element that matches `{{schema}}`",EnumError:"Expected given value `{{value}}` in `{{pointer}}` to be one of `{{values}}`",FormatDateError:"Value `{{value}}` at `{{pointer}}` is not a valid date",FormatDateTimeError:"Value `{{value}}` at `{{pointer}}` is not a valid date-time",FormatEmailError:"Value `{{value}}` at `{{pointer}}` is not a valid email",FormatHostnameError:"Value `{{value}}` at `{{pointer}}` is not a valid hostname",FormatIPV4Error:"Value `{{value}}` at `{{pointer}}` is not a valid IPv4 address",FormatIPV4LeadingZeroError:"IPv4 addresses starting with zero are invalid, since they are interpreted as octals",FormatIPV6Error:"Value `{{value}}` at `{{pointer}}` is not a valid IPv6 address",FormatIPV6LeadingZeroError:"IPv6 addresses starting with zero are invalid, since they are interpreted as octals",FormatJSONPointerError:"Value `{{value}}` at `{{pointer}}` is not a valid json-pointer",FormatRegExError:"Value `{{value}}` at `{{pointer}}` is not a valid regular expression",FormatTimeError:"Value `{{value}}` at `{{pointer}}` is not a valid time",FormatURIError:"Value `{{value}}` at `{{pointer}}` is not a valid uri",FormatURIReferenceError:"Value `{{value}}` at `{{pointer}}` is not a valid uri-reference",FormatURITemplateError:"Value `{{value}}` at `{{pointer}}` is not a valid uri-template",FormatURLError:"Value `{{value}}` at `{{pointer}}` is not a valid url",InvalidDataError:"No value may be specified in `{{pointer}}`",InvalidPropertyNameError:"Invalid property name `{{property}}` at `{{pointer}}`",MaximumError:"Value in `{{pointer}}` is `{{length}}`, but should be `{{maximum}}` at maximum",MaxItemsError:"Too many items in `{{pointer}}`, should be `{{maximum}}` at most, but got `{{length}}`",MaxLengthError:"Value `{{pointer}}` should have a maximum length of `{{maxLength}}`, but got `{{length}}`.",MaxPropertiesError:"Too many properties in `{{pointer}}`, should be `{{maximum}}` at most, but got `{{length}}`",MinimumError:"Value in `{{pointer}}` is `{{length}}`, but should be `{{minimum}}` at minimum",MinItemsError:"Too few items in `{{pointer}}`, should be at least `{{minimum}}`, but got `{{length}}`",MinItemsOneError:"At least one item is required in `{{pointer}}`",MinLengthError:"Value `{{pointer}}` should have a minimum length of `{{minLength}}`, but got `{{length}}`.",MinLengthOneError:"A value is required in `{{pointer}}`",MinPropertiesError:"Too few properties in `{{pointer}}`, should be at least `{{minimum}}`, but got `{{length}}`",MissingDependencyError:"The required propery '{{missingProperty}}' in `{{pointer}}` is missing",MissingOneOfPropertyError:"Value at `{{pointer}}` property: `{{property}}`",MultipleOfError:"Expected `{{value}}` in `{{pointer}}` to be multiple of `{{multipleOf}}`",MultipleOneOfError:"Value `{{value}}` should not match multiple schemas in oneOf `{{matches}}`",NoAdditionalPropertiesError:"Additional property `{{property}}` in `{{pointer}}` is not allowed",NotError:"Value `{{value}}` at pointer should not match schema `{{not}}`",OneOfError:"Value `{{value}}` in `{{pointer}}` does not match any given oneof schema",OneOfPropertyError:"Failed finding a matching oneOfProperty schema in `{{pointer}}` where `{{property}}` matches `{{value}}`",PatternError:"Value in `{{pointer}}` should match `{{description}}`, but received `{{received}}`",PatternPropertiesError:"Property `{{key}}` does not match any patterns in `{{pointer}}`. Valid patterns are: {{patterns}}",RequiredPropertyError:"The required property `{{key}}` is missing at `{{pointer}}`",TypeError:"Expected `{{value}}` ({{received}}) in `{{pointer}}` to be of type `{{expected}}`",UndefinedValueError:"Value must not be undefined in `{{pointer}}`",UniqueItemsError:"Expected unique items in {{pointer}}: duplicate value `{{value}}` found at {{itemPointer}} and {{duplicatePointer}}",UnknownPropertyError:"Could not find a valid schema for property `{{pointer}}` within object",ValueNotEmptyError:"A value for `{{property}}` is required at `{{pointer}}`"};function r(e,r={}){return e.replace(/\{\{\w+\}\}/g,(e=>r[e.replace(/[{}]/g,"")]))}function t(t,n,o=t){return r(e[t]||o,n)}function n(e,r){return{type:"error",name:e,code:(n=e,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()),message:t(e,r),data:r};var n}function o(e){return n.bind(null,e)}const i=Object.prototype.toString;function a(e){const r=i.call(e).match(/\s([^\]]+)\]/).pop().toLowerCase();return"file"===r?"object":r}function s(e){return"error"===(null==e?void 0:e.type)}function l(e){return s(e)||e instanceof Promise}function u(e){return s(e)}function f(e,r=[]){for(let t=0;t<e.length;t+=1){const n=e[t];Array.isArray(n)?f(n,r):r.push(n)}return r}const c={DECLARATOR_ONEOF:"oneOfProperty",GET_TEMPLATE_RECURSION_LIMIT:1,floatingPointPrecision:1e4,propertyBlacklist:["_id"]},{DECLARATOR_ONEOF:p}=c;function m(e,r,t=e.rootSchema,n="#"){if(null!=r&&t[p]){const o=[],i=t[p],a=r[t[p]];if(void 0===a)return e.errors.missingOneOfPropertyError({property:i,pointer:n});for(let u=0;u<t.oneOf.length;u+=1){const c=e.resolveRef(t.oneOf[u]),p=e.step(i,c,r,n);if(s(p))return p;let m=f(e.validate(a,p,n));if(m=m.filter(l),!(m.length>0))return c;o.push(...m)}return e.errors.oneOfPropertyError({property:i,value:a,pointer:n,errors:o})}const o=[],i=[];for(let a=0;a<t.oneOf.length;a+=1){const s=e.resolveRef(t.oneOf[a]);let u=f(e.validate(r,s,n));u=u.filter(l),u.length>0?i.push(...u):o.push(s)}return 1===o.length?o[0]:o.length>1?e.errors.multipleOneOfError({value:r,pointer:n,matches:o}):e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf,errors:i})}const d=e=>JSON.parse(JSON.stringify(e));var h=__webpack_require__(996),y=__webpack_require__.n(h);const g=(e,r)=>r,E=(e,r)=>y()(e,r,{arrayMerge:g}),O=(e,r)=>{const t=e.concat(r);return t.filter(((e,r)=>t.indexOf(e)===r))};function v(e,r,t){var n;const o=Object.assign({},null!==(n=e.resolveRef(r))&&void 0!==n?n:{});if(o.if&&(o.then||o.else)){const r=e.isValid(t,o.if);if(r&&o.then)return v(e,o.then,t);if(!r&&o.else)return v(e,o.else,t);delete o.if,delete o.then,delete o.else}return o}function b(e,r,t=e.rootSchema,n="#"){let o=d(t);for(let n=0;n<t.allOf.length;n+=1){const s=v(e,t.allOf[n],r);i=o,a=s,o=y()(i,a,{arrayMerge:O}),r=e.getTemplate(r,o)}var i,a;return delete o.allOf,o}const{DECLARATOR_ONEOF:x}=c;function _(e,r,t,n){if(null==t||null==r.properties)return-1;let o=0;const i=Object.keys(r.properties);for(let a=0;a<i.length;a+=1){const s=i[a];null!=t[s]&&e.isValid(t[s],r.properties[s],n)&&(o+=1)}return o}function P(e,r,t=e.rootSchema,n="#"){if(null!=r&&t[x]){const o=[],i=t[x],a=r[t[x]];if(void 0===a)return e.errors.missingOneOfPropertyError({property:i,pointer:n});for(let u=0;u<t.oneOf.length;u+=1){const c=e.resolveRef(t.oneOf[u]),p=e.step(i,c,r,n);if(s(p))return p;let m=f(e.validate(a,p,n));if(m=m.filter(l),!(m.length>0))return c;o.push(...m)}return e.errors.oneOfPropertyError({property:i,value:a,pointer:n,errors:o})}const o=[];for(let i=0;i<t.oneOf.length;i+=1){const a=e.resolveRef(t.oneOf[i]);e.isValid(r,a,n)&&o.push(a)}if(1===o.length)return o[0];if("object"===a(r)){let o,i=0;for(let n=0;n<t.oneOf.length;n+=1){const a=e.resolveRef(t.oneOf[n]),s=_(e,a,r);i<s&&(i=s,o=t.oneOf[n])}return void 0===o?e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf}):o}return o.length>1?e.errors.multipleOneOfError({matches:o,data:r,pointer:n}):e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf})}function S(e,r){if(null==e||null==e.$ref)return e;if(e.getRoot){return e.getRoot().getRef(e)}return r.getRef(e)}function A(e,r){if(null==e||null==e.$ref)return e;const t=r.getRef(e),n=Object.assign({},t,e);return delete n.$ref,Object.defineProperty(n,"__ref",{enumerable:!1,value:e.__ref}),Object.defineProperty(n,"getRoot",{enumerable:!1,value:e.getRoot}),n}var $=__webpack_require__(604),R=__webpack_require__.n($);const j={};function w(e,r,t,n=e.rootSchema){const o=R().split(r);return n=e.resolveRef(n),I(e,n,o,r,t)}function I(e,r,t,n,o=j){if(0===t.length)return e.resolveRef(r);const i=t.shift();return s(r=e.step(i,r,o,n))?r:I(e,r,t,`${n}/${i}`,o=o[i])}class k{constructor(e,r){this.remotes={},this.errors={},this.typeKeywords={},this.validateKeyword={},this.validateType={},this.validateFormat={},this.config=e,this.typeKeywords=JSON.parse(JSON.stringify(e.typeKeywords)),this.validateKeyword=Object.assign({},e.validateKeyword),this.validateType=Object.assign({},e.validateType),this.validateFormat=Object.assign({},e.validateFormat),this.errors=Object.assign({},e.errors),this.setSchema(r)}get rootSchema(){return this.__rootSchema}set rootSchema(e){null!=e&&(this.__rootSchema=this.config.compileSchema(this,e))}addRemoteSchema(e,r){this.config.addRemoteSchema(this,e,r)}compileSchema(e){var r;return this.config.compileSchema(this,e,null!==(r=this.rootSchema)&&void 0!==r?r:e)}createSchemaOf(e){return this.config.createSchemaOf(e)}each(e,r,t,n){return this.config.each(this,e,r,t,n)}eachSchema(e,r=this.rootSchema){return this.config.eachSchema(r,e)}getChildSchemaSelection(e,r){return this.config.getChildSchemaSelection(this,e,r)}getSchema(e="#",r,t){return this.config.getSchema(this,e,r,t)}getTemplate(e,r,t){return this.config.getTemplate(this,e,r,t)}isValid(e,r,t){return this.config.isValid(this,e,r,t)}resolveAnyOf(e,r,t){return this.config.resolveAnyOf(this,e,r,t)}resolveAllOf(e,r,t){return this.config.resolveAllOf(this,e,r,t)}resolveRef(e){return this.config.resolveRef(e,this.rootSchema)}resolveOneOf(e,r,t){return this.config.resolveOneOf(this,e,r,t)}setSchema(e){this.rootSchema=e}step(e,r,t,n){return this.config.step(this,e,r,t,n)}validate(e,r,t){return this.config.validate(this,e,r,t)}}function N(e,r,t){t.id=t.id||r,e.remotes[r]=e.compileSchema(t)}var L=__webpack_require__(723);const T="[^?/{}*,()#]+",C=`\nroot ::= ("#" recursion | recursion | (query | pattern) recursion* | "#" SEP? | SEP)\nrecursion ::= (SEP query | pattern)*\n\nquery ::= (ESC escaped ESC | property | all | any | regex) typecheck? lookahead?\nproperty ::= ${T}\nregex ::= "{" [^}]+ "}"\nSEP ::= "/"\nall ::= "**"\nany ::= "*"\n\ntypecheck ::= "?:" ("value" | "boolean" | "string" | "number" | "object" | "array")\nlookahead ::= "?" expression ((andExpr | orExpr) expression)*\nandExpr ::= S? "&&" S?\norExpr ::= S? "||" S?\n\nexpression ::= (exprProperty | ESC escaped ESC) ((isnot | is) (exprProperty | regex | ESC escaped ESC))*\nexprProperty ::= [a-zA-Z0-9-_ $]+\nescaped ::= [^"]+\nis ::= ":"\nisnot ::= ":!"\nESC ::= '"'\n\npattern ::= S? "(" (SEP query | pattern (orPattern? pattern)*)* ")" quantifier? S? lookahead?\nquantifier ::= "+" | "*" | [0-9]+\norPattern ::= S? "," S?\n\nS ::= [ ]*\n`,U=new L.Z.Parser(C),M=e=>U.getAST(e),q=(e,r)=>`${e}/${r}`,D=Object.prototype.toString,V=/Object|Array/,F=e=>V.test(D.call(e));function K(e){return new RegExp(e.text.replace(/(^{|}$)/g,""))}function z(e){return Array.isArray(e)?e.map((function(e,r){return`${r}`})):"[object Object]"===Object.prototype.toString.call(e)?Object.keys(e):[]}const J={mem:[],get(e,r){const t=e[0][r];if(!J.mem.includes(t))return F(t)&&J.mem.push(t),[t,r,e[0],q(e[3],r)]},reset(){J.mem.length=0}},Z={any(e,r){const t=r[0];return z(t).map((e=>[t[e],e,t,q(r[3],e)]))},all(e,r){const t=[r];var n,o;return n=r[0],o=(n,o)=>{const i=J.get(r,o);i&&t.push(...Z.all(e,i))},Array.isArray(n)?n.forEach(o):"[object Object]"===Object.prototype.toString.call(n)&&Object.keys(n).forEach((function(e){o(n[e],e,n)})),t},regex(e,r){const t=K(e),n=r[0];return z(n).filter((e=>t.test(e))).map((e=>[n[e],e,n,q(r[3],e)]))}},W={escaped:(e,r)=>W.property(e,r),property:(e,r)=>{const t=e.text;if(r[0]&&void 0!==r[0][t])return[r[0][t],t,r[0],q(r[3],t)]},typecheck:(e,r)=>{const t=e.text.replace(/^\?:/,"");if("value"===t)return F(r[0])?void 0:r;var n;return(n=r[0],D.call(n).match(/\s([^\]]+)\]/).pop().toLowerCase())===t?r:void 0},lookahead:(e,r)=>{let t=!0,n=!1;return e.children.forEach((e=>{if("expression"===e.type){const o=void 0!==W.expression(e,r);t=!0===n?t||o:t&&o}else n="orExpr"===e.type})),t?r:void 0},expression:(e,r)=>{const t=e.children[0].text,n=e.children[1],o=e.children[2],i=r[0];if(!1!==F(i))return function(e,r,t){if(void 0===r)return void 0!==e;let n;const o=`${e}`;if("regex"===t.type){n=K(t).test(o)}else n=o===t.text;"isnot"===r.type&&(n=!1===n&&void 0!==e);return n}(i[t],n,o)?r:void 0}};function H(e,r,t){const n=[];let o=e;return r.children.forEach((r=>{if("orPattern"===r.type)return n.push(...o),void(o=e);o=G(o,r,t)})),n.push(...o),n}function B(e,r,t){const n=[],o=r.children.find((e=>"quantifier"===e.type)),i=function(e){if(null==e)return 1;if("*"===e||"+"===e)return 1/0;const r=parseInt(e);return isNaN(r)?1:r}(o&&o.text);let a=e;o&&"*"===o.text&&n.push(...a);let s=0;for(;a.length>0&&s<i;)a=H(a,r,t),n.push(...a),s+=1;return n}function G(e,r,t){let n;return n="query"===r.type?function(e,r,t){let n=e;return r.children.forEach((e=>{if(Z[e.type])n=function(e,r,t,n){const o=[];for(let i=0,a=r.length;i<a;i+=1)o.push(...e(t,r[i],t,n));return o}(Z[e.type],n,e,t);else{if(!W[e.type])throw new Error(`Unknown filter ${e.type}`);n=function(e,r,t,n){const o=[];for(let i=0,a=r.length;i<a;i+=1){const a=e(t,r[i],n);a&&o.push(a)}return o}(W[e.type],n,e,t)}})),n}(e,r,t):"pattern"===r.type?B(e,r,t):function(e,r,t){let n=e;return r.children.forEach((e=>n=G(n,e,t))),n}(e,r,t),J.reset(),J.mem.push(e),n}const Y={value:e=>e.map((e=>e[0])),pointer:e=>e.map((e=>e[3])),all:e=>e,map:e=>{const r={};return e.forEach((e=>r[e[3]]=e[0])),r}};var Q;function X(e,r,t=Q.VALUE){if(null==r)return[];""===(r=r.replace(/(\/$)/g,""))&&(r="#");const n=M(r);if(null==n)throw new Error(`empty ast for '${r}'`);if(""!==n.rest)throw new Error(`Failed parsing queryString from: '${n.rest}'`);const o=function(e,r){return J.reset(),J.mem.push(e),G([[e,null,null,"#"]],r)}(e,n);return"function"==typeof t?o.map((e=>t(...e))):Y[t]?Y[t](o):o}!function(e){e.POINTER="pointer",e.VALUE="value",e.ALL="all",e.MAP="map"}(Q||(Q={})),X.POINTER=Q.POINTER,X.VALUE=Q.VALUE,X.ALL=Q.ALL,X.MAP=Q.MAP;const ee=["root","recursion"];function re(e,r=[]){return ee.includes(e.type)?(e.children.forEach((e=>re(e,r))),r):(r.push(e.text),r)}function te(e){if(null==e||""===e)return[];return re(M(e))}const ne=e=>JSON.parse(JSON.stringify(e)),oe=Object.prototype.toString,ie=e=>oe.call(e).match(/\s([^\]]+)\]/).pop().toLowerCase(),ae=new RegExp(`^("[^"]+"|${T})$`),se=["string","number","boolean","null"],le=/^\[\d*\]$/,ue=/^\[(\d+)\]$/,fe=/^".+"$/,ce=/(^\[\d*\]$|^\d+$)/;function pe(e){return parseInt(e.replace(/^(\[|\]$)/,""))}function me(e){return fe.test(e)?e.replace(/(^"|"$)/g,""):e}function de(e,r,t,n){const o=e[0];if(/^\[\]$/.test(r)){o.push(t);const r=o.length-1;return[o[r],r,o,`${e[3]}/${r}}`]}if(null==n&&"object"===ie(o[r])&&"object"===ie(t))return[o[r],r,o,`${e[3]}/${r}}`];if(n===ye.INSERT_ITEMS||null==n&&ue.test(r)){const n=pe(r);return function(e,r,t){e.length<=r?e[r]=t:e.splice(r,0,t)}(o,n,t),[o[n],n,o,`${e[3]}/${n}}`]}if(n===ye.REPLACE_ITEMS||null==n){const n=pe(r);return o[n]=t,[o[n],n,o,`${e[3]}/${n}}`]}throw new Error(`Unknown array index '${r}' with force-option '${n}'`)}var he;function ye(e,r,t,n){if(null==r)return ne(e);if(""===(r=r.replace(/(\/$)/g,"")))return ne(t);const o=ne(e);let i=[[o,null,null,"#"]];const a=te(r),s=a.pop(),l=le.test(s)&&!1===ue.test(s);if(!1===ae.test(s)||l)throw new Error(`Unsupported query '${r}' ending with non-property`);return a.forEach(((e,r)=>{if("__proto__"===e||"prototyped"===e||"constructor"===e)return;if(!1===ae.test(e))return void(i=function(e,r){const t=[];return e.forEach((e=>t.push(...X(e[0],r,Q.ALL)))),t}(i,e));const t=r>=a.length-1?s:a[r+1],o=ce.test(t);i=function(e,r,t,n){return r=me(r),e.filter((e=>!(!Array.isArray(e[0])||!ce.test(r))||!1===se.includes(ie(e[0][r])))).map((e=>{const o=t?[]:{},i=e[0];return Array.isArray(i)?de(e,r,o,n):(i[r]=i[r]||o,[i[r],r,i,`${e[3]}/${r}`])}))}(i,e,o,n)})),i.forEach((e=>{let r=t;"function"===ie(t)&&(r=t(e[3],s,e[0],`${e[3]}/${s}`));const o=e[0];if(Array.isArray(o))de(e,s,r,n);else{const e=me(s);if("__proto__"===e||"prototyped"===e||"constructor"===e)return;o[e]=r}})),o}!function(e){e.REPLACE_ITEMS="replace",e.INSERT_ITEMS="insert"}(he||(he={})),ye.REPLACE_ITEMS=he.REPLACE_ITEMS,ye.INSERT_ITEMS=he.INSERT_ITEMS;const ge={$ref:{type:!1},allOf:{type:!1,definitions:["allOf/*"]},anyOf:{type:!1,definitions:["anyOf/*"]},array:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not","items","items/*","additionalItems"],validationKeywords:["minItems","maxItems","uniqueItems"],keywords:["items","additionalItems","minItems","maxItems","uniqueItems"]},boolean:{type:!0},enum:{type:!1},integer:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minimum","maximum","multipleOf"]},not:{type:!1,definitions:["not"]},number:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minimum","maximum","multipleOf"]},null:{type:!0},object:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not","properties/*","additionalProperties","patternProperties/*","dependencies/*"],validationKeywords:["minProperties","maxProperties","required"],keywords:["properties","additionalProperties","patternProperties","dependencies","minProperties","maxProperties","required"]},oneOf:{type:!1,definitions:["oneOf/*"]},string:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minLength","maxLength","pattern"]}},Ee=Object.keys(ge).filter((e=>!1===ge[e].type)),Oe=Object.prototype.hasOwnProperty;function ve(e){if(!1==(r=e,"[object Object]"===Object.prototype.toString.call(r)))return;var r;if(e.enum)return"enum";if(ge[e.type]||Array.isArray(e.type))return e.type;const t=Ee.filter((r=>e[r]));if(1===t.length)return t[0];if(0!==t.length)throw new Error(`Mutiple typeIds [${t.join(", ")}] matched in ${JSON.stringify(e)}`);for(let r=0,t=ge.object.keywords.length;r<t;r+=1){const t=ge.object.keywords[r];if(Oe.call(e,t))return"object"}for(let r=0,t=ge.array.keywords.length;r<t;r+=1){const t=ge.array.keywords[r];if(Oe.call(e,t))return"array"}}function be(e){const r=[],t=ve(e);if(null==t)return r;let n;if(Array.isArray(t)){n={};for(let e=0,r=t.length;e<r;e+=1)Object.assign(n,ge[t[e]])}else n=ge[t];return null==n.definitions||n.definitions.forEach((t=>{X(e,t,((e,t,n,o)=>{(e=>"[object Object]"===Object.prototype.toString.call(e))(e)&&ve(e)&&r.push({pointer:R().join(R().split(o),!1),def:e})}))})),r}function xe(e,r){if(!0===this.callback(e,r))return;be(e).forEach((e=>this.nextTypeDefs(e.def,R().join(r,e.pointer,!1))))}function _e(e,r,t,n="definitions"){const o=r[n];Object.keys(o).forEach((r=>{if(!1!==o[r]&&(i=o[r],"[object Object]"!==Object.prototype.toString.call(i)))var i;else e.nextTypeDefs(o[r],R().join(t,n,r,!1))}))}function Pe(e,r,t="#"){const n={callback:r,nextTypeDefs:xe};n.nextTypeDefs(e,t),null!=e.definitions&&(n.callback=(e,t)=>{r(e,t),null!=e.definitions&&_e(n,e,t)},_e(n,e,t)),null!=e.$defs&&(n.callback=(e,t)=>{r(e,t),null!=e.definitions&&_e(n,e,t)},_e(n,e,t,"$defs"))}const Se=/(#|\/)+$/,Ae=/#$/,$e=/^[^:]+:\/\/[^/]+\//,Re=/\/[^/]*$/,je=/#.*$/;function we(e,r){return null==e&&null==r?"#":null==r?e.replace(Ae,""):null==e?r.replace(Ae,""):"#"===r[0]?`${e.replace(je,"")}${r.replace(Se,"")}`:$e.test(r)?r.replace(Ae,""):`${e.replace(Re,"")}/${r.replace(Ae,"")}`}const Ie=/(#|\/)+$/g,ke=["",null,"#"];const Ne=/(#|\/)+$/g;function Le(e,r,t){if("object"===a(t)&&(t=t.__ref||t.$ref),null==t)return r;let n;const o=t.replace(Ne,"");if(e.remotes[o])return n=e.remotes[o],n&&n.$ref?Le(e,r,n.$ref):n;if(e.ids[t])return n=(0,$.get)(r,e.ids[t]),n&&n.$ref?Le(e,r,n.$ref):n;const i=function(e){if(ke.includes(e))return[];if(-1===(e=e.replace(Ie,"")).indexOf("#"))return[e.replace(Ie,"")];if(0===e.indexOf("#"))return[e.replace(Ie,"")];const r=e.split("#");return r[0]=r[0].replace(Ie,""),r[1]=`#${r[1].replace(Ie,"")}`,r}(t);if(0===i.length)return r;if(1===i.length){if(t=i[0],e.remotes[t])return n=e.remotes[t],Le(e,r,n.$ref);if(e.ids[t])return n=(0,$.get)(r,e.ids[t]),n&&n.$ref?Le(e,r,n.$ref):n}if(2===i.length){const n=i[0];if(t=i[1],e.remotes[n])return e.remotes[n].getRef?e.remotes[n].getRef(t):Le(e,e.remotes[n],t);if(e.ids[n])return Le(e,(0,$.get)(r,e.ids[n]),t)}return n=(0,$.get)(r,e.ids[t]||t),n&&n.$ref?Le(e,r,n.$ref):n}const Te="__compiled",Ce="__ref",Ue=/(#|\/)+$/g;function Me(e,r,t=r,n=!1){if(!0===r||!1===r||void 0===r)return r;if(void 0!==r[Te])return r;const o={ids:{},remotes:e.remotes},i=JSON.stringify(r),a=JSON.parse(i);if(Object.defineProperty(a,Te,{enumerable:!1,value:!0}),Object.defineProperty(a,"getRef",{enumerable:!1,value:Le.bind(null,o,a)}),!1===n&&!1===i.includes("$ref"))return a;a!==t&&Object.defineProperty(a,"$defs",{enumerable:!0,value:Object.assign({},t.definitions,t.$defs,a.definitions,a.$defs)});const s={},l=()=>a;return Pe(a,((e,r)=>{var t;if(e.$id){if(e.$id.startsWith("http")&&/(allOf|anyOf|oneOf)\/\d+$/.test(r)){const n=r.replace(/\/(allOf|anyOf|oneOf)\/\d+$/,""),o=(0,$.get)(a,n);e.$id=null!==(t=o.$id)&&void 0!==t?t:e.$id}o.ids[e.$id.replace(Ue,"")]=r}const n=(r=`#${r}`.replace(/##+/,"#")).replace(/\/[^/]+$/,""),i=r.replace(/\/[^/]+\/[^/]+$/,""),u=we(s[n]||s[i],e.$id);s[r]=u,null==o.ids[u]&&(o.ids[u]=r),e.$ref&&!e[Ce]&&(Object.defineProperty(e,Ce,{enumerable:!1,value:we(u,e.$ref)}),Object.defineProperty(e,"getRoot",{enumerable:!1,value:l}))})),a}function qe(e,r,t,n=e.rootSchema,o="#"){n=e.resolveRef(n),t(n,r,o);const i=a(r);"object"===i?Object.keys(r).forEach((i=>{const a=e.step(i,n,r,o),s=r[i];e.each(s,t,a,`${o}/${i}`)})):"array"===i&&r.forEach(((i,a)=>{const s=e.step(a,n,r,o);e.each(i,t,s,`${o}/${a}`)}))}const De={additionalItemsError:o("AdditionalItemsError"),additionalPropertiesError:o("AdditionalPropertiesError"),anyOfError:o("AnyOfError"),allOfError:o("AllOfError"),constError:o("ConstError"),containsError:o("ContainsError"),containsArrayError:o("ContainsArrayError"),containsAnyError:o("ContainsAnyError"),enumError:o("EnumError"),formatURLError:o("FormatURLError"),formatURIError:o("FormatURIError"),formatURIReferenceError:o("FormatURIReferenceError"),formatURITemplateError:o("FormatURITemplateError"),formatDateError:o("FormatDateaError"),formatDateTimeError:o("FormatDateTimeError"),formatEmailError:o("FormatEmailError"),formatHostnameError:o("FormatHostnameError"),formatIPV4Error:o("FormatIPV4Error"),formatIPV4LeadingZeroError:o("FormatIPV4LeadingZeroError"),formatIPV6Error:o("FormatIPV6Error"),formatIPV6LeadingZeroError:o("FormatIPV6LeadingZeroError"),formatJSONPointerError:o("FormatJSONPointerError"),formatRegExError:o("FormatRegExError"),formatTimeError:o("FormatTimeError"),invalidSchemaError:o("InvalidSchemaError"),invalidDataError:o("InvalidDataError"),invalidTypeError:o("InvalidTypeError"),invalidPropertyNameError:o("InvalidPropertyNameError"),maximumError:o("MaximumError"),maxItemsError:o("MaxItemsError"),maxLengthError:o("MaxLengthError"),maxPropertiesError:o("MaxPropertiesError"),minimumError:o("MinimumError"),minItemsError:o("MinItemsError"),minItemsOneError:o("MinItemsOneError"),minLengthError:o("MinLengthError"),minLengthOneError:o("MinLengthOneError"),minPropertiesError:o("MinPropertiesError"),missingDependencyError:o("MissingDependencyError"),missingOneOfPropertyError:o("MissingOneOfPropertyError"),multipleOfError:o("MultipleOfError"),multipleOneOfError:o("MultipleOneOfError"),noAdditionalPropertiesError:o("NoAdditionalPropertiesError"),notError:o("NotError"),oneOfError:o("OneOfError"),oneOfPropertyError:o("OneOfPropertyError"),patternError:o("PatternError"),patternPropertiesError:o("PatternPropertiesError"),requiredPropertyError:o("RequiredPropertyError"),typeError:o("TypeError"),undefinedValueError:o("UndefinedValueError"),uniqueItemsError:o("UniqueItemsError"),unknownPropertyError:o("UnknownPropertyError"),valueNotEmptyError:o("ValueNotEmptyError")};var Ve=__webpack_require__(481),Fe=__webpack_require__.n(Ve);const Ke=new RegExp("^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\\.[0-9]+)?(([Zz])|([\\+|\\-]([01][0-9]|2[0-3]):[0-5][0-9]))$"),ze=/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,Je=/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,Ze=/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,We=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,He=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,Be=[0,31,28,31,30,31,30,31,31,30,31,30,31],Ge=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Ye=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,Qe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,Xe=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,er={date:(e,r,t,n)=>{if("string"!=typeof t)return;const o=t.match(We);if(!o)return De.formatDateTimeError({value:t,pointer:n});const i=+o[1],a=+o[2],s=+o[3];return a>=1&&a<=12&&s>=1&&s<=(2==a&&(i%4==0&&(i%100!=0||i%400==0))?29:Be[a])?void 0:De.formatDateError({value:t,pointer:n})},"date-time":(e,r,t,n)=>{if("string"==typeof t)return""===t||Ke.test(t)?"Invalid Date"===new Date(t).toString()?De.formatDateTimeError({value:t,pointer:n}):void 0:De.formatDateTimeError({value:t,pointer:n})},email:(e,r,t,n)=>{if("string"!=typeof t)return;if('"'===t[0])return De.formatEmailError({value:t,pointer:n});const[o,i,...a]=t.split("@");return!o||!i||0!==a.length||o.length>64||i.length>253||"."===o[0]||o.endsWith(".")||o.includes("..")?De.formatEmailError({value:t,pointer:n}):/^[a-z0-9.-]+$/i.test(i)&&/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+$/i.test(o)&&i.split(".").every((e=>/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/i.test(e)))?void 0:De.formatEmailError({value:t,pointer:n})},hostname:(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ze.test(t))return De.formatHostnameError({value:t,pointer:n})},ipv4:(e,r,t,n)=>{if("string"==typeof t&&""!==t){if(t&&"0"===t[0])return De.formatIPV4LeadingZeroError({value:t,pointer:n});if(!(t.length<=15&&ze.test(t)))return De.formatIPV4Error({value:t,pointer:n})}},ipv6:(e,r,t,n)=>{if("string"==typeof t&&""!==t){if(t&&"0"===t[0])return De.formatIPV6LeadingZeroError({value:t,pointer:n});if(!(t.length<=45&&Je.test(t)))return De.formatIPV6Error({value:t,pointer:n})}},"json-pointer":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ge.test(t))return De.formatJSONPointerError({value:t,pointer:n})},"relative-json-pointer":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ye.test(t))return De.formatJSONPointerError({value:t,pointer:n})},regex:(e,r,t,n)=>{if("string"==typeof t&&!1===/\\Z$/.test(t)){try{return void new RegExp(t)}catch(e){}return De.formatRegExError({value:t,pointer:n})}if("object"!=typeof t&&"number"!=typeof t&&!Array.isArray(t))return De.formatRegExError({value:t,pointer:n})},time:(e,r,t,n)=>{if("string"!=typeof t)return;const o=t.match(He);if(!o)return De.formatDateTimeError({value:t,pointer:n});const i=+o[1],a=+o[2],s=+o[3],l=!!o[5];return(i<=23&&a<=59&&s<=59||23==i&&59==a&&60==s)&&l?void 0:De.formatTimeError({value:t,pointer:n})},uri:(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Fe().isUri(t))return De.formatURIError({value:t,pointer:n})},"uri-reference":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Qe.test(t))return De.formatURIReferenceError({value:t,pointer:n})},"uri-template":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Xe.test(t))return De.formatURITemplateError({value:t,pointer:n})},url:(e,r,t,n)=>{if(""!==t&&!Fe().isWebUri(t))return De.formatUrlError({value:t,pointer:n})}};const rr={addOptionalProps:!0,removeInvalidData:!1};let tr;function nr(e,r){const{$ref:t}=e;if(null==t)return!0;return(null==tr[r]||null==tr[r][t]?0:tr[r][t])<c.GET_TEMPLATE_RECURSION_LIMIT}function or(e,r,t){if(null==t)throw new Error(`missing pointer ${t}`);const{$ref:n}=r;return null==n?r:(tr[t]=tr[t]||{},tr[t][n]=tr[t][n]||0,tr[t][n]+=1,e.resolveRef(r))}function ir(e,r,t,n){if("object"!==a(r))return Object.assign({pointer:n},r);if(!1===nr(r,n)&&null==t)return!1;let o=d(or(e,r,n));if(Array.isArray(r.anyOf)&&r.anyOf.length>0){if(nr(r.anyOf[0],`${n}/anyOf/0`)){const t=or(e,r.anyOf[0],`${n}/anyOf/0`);o=E(o,t),o.pointer=r.anyOf[0].$ref||o.pointer}delete o.anyOf}if(Array.isArray(r.allOf)){for(let t=0,i=r.allOf.length;t<i;t+=1)nr(r.allOf[t],`${n}/allOf/${t}`)&&(o=E(o,or(e,r.allOf[t],`${n}/allOf/${t}`)),o.pointer=r.allOf[t].$ref||o.pointer);delete o.allOf}return o.pointer=o.pointer||r.$ref||n,o}const ar=e=>e&&"object"==typeof e;function sr(e,r,t,n,o){if(null==t)throw new Error(`getTemplate: missing schema for data: ${JSON.stringify(r)}`);if(null==n)throw new Error("Missing pointer");let i=ir(e,t,r,n);if(!ar(i))return;if(n=i.pointer,null==i?void 0:i.const)return i.const;if(Array.isArray(i.oneOf))if(function(e){switch(a(e)){case"string":case"array":return 0===e.length;case"null":case"undefined":return!0;case"object":return 0===Object.keys(e).length;default:return!1}}(r)){const e=i.oneOf[0].type||i.type||i.const&&typeof i.const||a(r);i=Object.assign(Object.assign({},i.oneOf[0]),{type:e})}else{const t=P(e,r,i);if(s(t)){if(null!=r&&!0!==o.removeInvalidData)return r;i=i.oneOf[0],r=void 0}else i=t}if(!ar(i)||null==i.type)return;const l=Array.isArray(i.type)?function(e,r,t){if(null==r){if(null!=t){const r=a(t);if(e.includes(r))return r}return e[0]}const n=a(r);if(e.includes(n))return n;return e[0]}(i.type,r,i.default):i.type,u=a(r);if(null==r||u===l||"number"===u&&"integer"===l||(r=function(e,r){if("string"===e)return JSON.stringify(r);if("string"!=typeof r)return null;try{if(typeof(r=JSON.parse(r))===e)return r}catch(e){}return null}(l,r)),null==lr[l]){if(o.removeInvalidData)return;return r}return lr[l](e,i,r,n,o)}const lr={null:(e,r,t)=>ur(r,t,null),string:(e,r,t)=>ur(r,t,""),number:(e,r,t)=>ur(r,t,0),integer:(e,r,t)=>ur(r,t,0),boolean:(e,r,t)=>ur(r,t,!1),object:(e,r,t,n,o)=>{var i;const l=void 0===r.default?{}:r.default,u={},f=null!==(i=r.required)&&void 0!==i?i:[];if(r.properties&&Object.keys(r.properties).forEach((i=>{const a=null==t||null==t[i]?l[i]:t[i],s=f.includes(i);(null!=a||s||o.addOptionalProps)&&(u[i]=sr(e,a,r.properties[i],`${n}/properties/${i}`,o))})),r.dependencies&&Object.keys(r.dependencies).forEach((i=>{if(void 0===u[i])return;const l=r.dependencies[i];if(Array.isArray(l))return void l.forEach((t=>{u[t]=sr(e,u[t],r.properties[t],`${n}/properties/${t}`,o)}));if("object"!==a(l))return;const f=sr(e,t,Object.assign(Object.assign({},l),{type:"object"}),`${n}/dependencies/${i}`,o);f&&!s(f)&&Object.assign(u,f)})),t&&Object.keys(t).forEach((e=>null==u[e]&&(u[e]=t[e]))),r.if&&(r.then||r.else)){const t=e.isValid(u,r.if);if(t&&r.then){const t=e.getTemplate(u,Object.assign({type:"object"},r.then),o);Object.assign(u,t)}else if(!t&&r.else){const t=e.getTemplate(u,Object.assign({type:"object"},r.else),o);Object.assign(u,t)}}return u},array:(e,r,t,n,o)=>{var i,l,u;const f=void 0===r.default?[]:r.default;r.minItems=r.minItems||0;const c=t||[];if(null==r.items)return c;if(Array.isArray(r.items)){for(let t=0,a=Math.max(null!==(i=r.minItems)&&void 0!==i?i:0,null!==(u=null===(l=r.items)||void 0===l?void 0:l.length)&&void 0!==u?u:0);t<a;t+=1)c[t]=sr(e,null==c[t]?f[t]:c[t],r.items[t],`${n}/items/${t}`,o);return c}if("object"!==a(r.items))return c;const p=ir(e,r.items,t,n);if(!1===p)return c;if(n=p.pointer||n,p.oneOf&&0===c.length){const t=p.oneOf[0];for(let i=0;i<r.minItems;i+=1)c[i]=sr(e,null==c[i]?f[i]:c[i],t,`${n}/oneOf/0`,o);return c}if(p.oneOf&&c.length>0){const t=Math.max(r.minItems,c.length);for(let r=0;r<t;r+=1){let t=null==c[r]?f[r]:c[r],i=P(e,t,p);null==i||s(i)?null!=t&&!0!==o.removeInvalidData?c[r]=t:(t=void 0,i=p.oneOf[0],c[r]=sr(e,t,i,`${n}/oneOf/${r}`,o)):c[r]=sr(e,t,i,`${n}/oneOf/${r}`,o)}return c}if(p.type){for(let t=0,i=Math.max(r.minItems,c.length);t<i;t+=1)c[t]=sr(e,null==c[t]?f[t]:c[t],p,`${n}/items`,o);return c}return c}};function ur(e,r,t){return null!=r?r:e.const?e.const:void 0===e.default&&Array.isArray(e.enum)?e.enum[0]:void 0===e.default?t:e.default}const fr=(e,r,t=e.rootSchema,n=rr)=>(tr={mi:{}},sr(e,r,t,"#",n));function cr(e,r,t=e.rootSchema,n="#"){return 0===e.validate(r,t,n).length}function pr(e,r){const t=typeof e;if(t!==typeof r)return!1;if(Array.isArray(e)){if(!Array.isArray(r))return!1;const t=e.length;if(t!==r.length)return!1;for(let n=0;n<t;n++)if(!pr(e[n],r[n]))return!1;return!0}if("object"===t){if(!e||!r)return e===r;const t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(const n of t)if(!pr(e[n],r[n]))return!1;return!0}return e===r}function mr(e){const r=[];let t=0;const n=e.length;for(;t<n;){const o=e.charCodeAt(t++);if(o>=55296&&o<=56319&&t<n){const n=e.charCodeAt(t++);56320==(64512&n)?r.push(((1023&o)<<10)+(1023&n)+65536):(r.push(o),t--)}else r.push(o)}return r}const dr=c.floatingPointPrecision,hr=Object.prototype.hasOwnProperty,yr=(e,r)=>!(void 0===e[r]||!hr.call(e,r)),gr={additionalProperties:(e,r,t,n)=>{if(!0===r.additionalProperties||null==r.additionalProperties)return;if("object"===a(r.patternProperties)&&!1===r.additionalProperties)return;const o=[];let i=Object.keys(t).filter((e=>!1===c.propertyBlacklist.includes(e)));const l=Object.keys(r.properties||{});if("object"===a(r.patternProperties)){const e=Object.keys(r.patternProperties).map((e=>new RegExp(e)));i=i.filter((r=>{for(let t=0;t<e.length;t+=1)if(e[t].test(r))return!1;return!0}))}for(let a=0,u=i.length;a<u;a+=1){const u=i[a];if(-1===l.indexOf(u)){const f="object"==typeof r.additionalProperties;if(f&&Array.isArray(r.additionalProperties.oneOf)){const f=e.resolveOneOf(t[u],r.additionalProperties,`${n}/${u}`);s(f)?o.push(e.errors.additionalPropertiesError({schema:r.additionalProperties,property:i[a],properties:l,pointer:n,errors:f.data.errors})):o.push(...e.validate(t[u],f,n))}else f?o.push(...e.validate(t[u],r.additionalProperties,`${n}/${u}`)):o.push(e.errors.noAdditionalPropertiesError({property:i[a],properties:l,pointer:n}))}}return o},allOf:(e,r,t,n)=>{if(!1===Array.isArray(r.allOf))return;const o=[];return r.allOf.forEach((r=>{o.push(...e.validate(t,r,n))})),o},anyOf:(e,r,t,n)=>{if(!1!==Array.isArray(r.anyOf)){for(let n=0;n<r.anyOf.length;n+=1)if(e.isValid(t,r.anyOf[n]))return;return e.errors.anyOfError({anyOf:r.anyOf,value:t,pointer:n})}},dependencies:(e,r,t,n)=>{if("object"!==a(r.dependencies))return;const o=[];return Object.keys(t).forEach((i=>{if(void 0===r.dependencies[i])return;if(!0===r.dependencies[i])return;if(!1===r.dependencies[i])return void o.push(e.errors.missingDependencyError({pointer:n}));let s;const l=a(r.dependencies[i]);if("array"===l)s=r.dependencies[i].filter((e=>void 0===t[e])).map((r=>e.errors.missingDependencyError({missingProperty:r,pointer:n})));else{if("object"!==l)throw new Error(`Invalid dependency definition for ${n}/${i}. Must be list or schema`);s=e.validate(t,r.dependencies[i],n)}o.push(...s)})),o.length>0?o:void 0},enum:(e,r,t,n)=>{const o=a(t);if("object"===o||"array"===o){const e=JSON.stringify(t);for(let t=0;t<r.enum.length;t+=1)if(JSON.stringify(r.enum[t])===e)return}else if(r.enum.includes(t))return;return e.errors.enumError({values:r.enum,value:t,pointer:n})},format:(e,r,t,n)=>{if(e.validateFormat[r.format]){return e.validateFormat[r.format](e,r,t,n)}},items:(e,r,t,n)=>{if(!1===r.items){if(Array.isArray(t)&&0===t.length)return;return e.errors.invalidDataError({pointer:n,value:t})}const o=[];for(let i=0;i<t.length;i+=1){const a=t[i],l=e.step(i,r,t,n);if(s(l))return[l];const u=e.validate(a,l,`${n}/${i}`);o.push(...u)}return o},maximum:(e,r,t,n)=>{if(!isNaN(r.maximum))return r.maximum&&r.maximum<t||r.maximum&&!0===r.exclusiveMaximum&&r.maximum===t?e.errors.maximumError({maximum:r.maximum,length:t,pointer:n}):void 0},maxItems:(e,r,t,n)=>{if(!isNaN(r.maxItems))return r.maxItems<t.length?e.errors.maxItemsError({maximum:r.maxItems,length:t.length,pointer:n}):void 0},maxLength:(e,r,t,n)=>{if(isNaN(r.maxLength))return;const o=mr(t).length;return r.maxLength<o?e.errors.maxLengthError({maxLength:r.maxLength,length:o,pointer:n}):void 0},maxProperties:(e,r,t,n)=>{const o=Object.keys(t).length;if(!1===isNaN(r.maxProperties)&&r.maxProperties<o)return e.errors.maxPropertiesError({maxProperties:r.maxProperties,length:o,pointer:n})},minLength:(e,r,t,n)=>{if(isNaN(r.minLength))return;const o=mr(t).length;return r.minLength>o?1===r.minLength?e.errors.minLengthOneError({minLength:r.minLength,length:o,pointer:n}):e.errors.minLengthError({minLength:r.minLength,length:o,pointer:n}):void 0},minimum:(e,r,t,n)=>{if(!isNaN(r.minimum))return r.minimum>t||!0===r.exclusiveMinimum&&r.minimum===t?e.errors.minimumError({minimum:r.minimum,length:t,pointer:n}):void 0},minItems:(e,r,t,n)=>{if(!isNaN(r.minItems))return r.minItems>t.length?1===r.minItems?e.errors.minItemsOneError({minItems:r.minItems,length:t.length,pointer:n}):e.errors.minItemsError({minItems:r.minItems,length:t.length,pointer:n}):void 0},minProperties:(e,r,t,n)=>{if(isNaN(r.minProperties))return;const o=Object.keys(t).length;return r.minProperties>o?e.errors.minPropertiesError({minProperties:r.minProperties,length:o,pointer:n}):void 0},multipleOf:(e,r,t,n)=>{if(!isNaN(r.multipleOf))return t*dr%(r.multipleOf*dr)/dr!=0?e.errors.multipleOfError({multipleOf:r.multipleOf,value:t,pointer:n}):void 0},not:(e,r,t,n)=>{const o=[];return 0===e.validate(t,r.not,n).length&&o.push(e.errors.notError({value:t,not:r.not,pointer:n})),o},oneOf:(e,r,t,n)=>{if(!1!==Array.isArray(r.oneOf))return s(r=e.resolveOneOf(t,r,n))?r:void 0},pattern:(e,r,t,n)=>{if(!1===new RegExp(r.pattern,"u").test(t))return e.errors.patternError({pattern:r.pattern,description:r.patternExample||r.pattern,received:t,pointer:n})},patternProperties:(e,r,t,n)=>{const o=r.properties||{},i=r.patternProperties;if("object"!==a(i))return;const s=[],l=Object.keys(t),u=Object.keys(i).map((e=>({regex:new RegExp(e),patternSchema:i[e]})));return l.forEach((a=>{let l=!1;for(let r=0,o=u.length;r<o;r+=1)if(u[r].regex.test(a)){l=!0;const o=e.validate(t[a],u[r].patternSchema,`${n}/${a}`);o&&o.length>0&&s.push(...o)}o[a]||!1===l&&!1===r.additionalProperties&&s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}))})),s},properties:(e,r,t,n)=>{const o=[],i=Object.keys(r.properties||{});for(let a=0;a<i.length;a+=1){const s=i[a];if(yr(t,s)){const i=e.step(s,r,t,n),a=e.validate(t[s],i,`${n}/${s}`);o.push(...a)}}return o},propertiesRequired:(e,r,t,n)=>{const o=[],i=Object.keys(r.properties||{});for(let a=0;a<i.length;a+=1){const s=i[a];if(void 0===t[s])o.push(e.errors.requiredPropertyError({key:s,pointer:n}));else{const i=e.step(s,r,t,n),a=e.validate(t[s],i,`${n}/${s}`);o.push(...a)}}return o},required:(e,r,t,n)=>{if(!1!==Array.isArray(r.required))return r.required.map((r=>{if(!yr(t,r))return e.errors.requiredPropertyError({key:r,pointer:n})}))},requiredNotEmpty:(e,r,t,n)=>{if(!1!==Array.isArray(r.required))return r.required.map((r=>{if(null==t[r]||""===t[r])return e.errors.valueNotEmptyError({property:r,pointer:`${n}/${r}`})}))},uniqueItems:(e,r,t,n)=>{if(!1===(Array.isArray(t)&&r.uniqueItems))return;const o=[];return t.forEach(((r,i)=>{for(let a=i+1;a<t.length;a+=1)pr(r,t[a])&&o.push(e.errors.uniqueItemsError({pointer:n,itemPointer:`${n}/${i}`,duplicatePointer:`${n}/${a}`,value:JSON.stringify(r)}))})),o}},Er=gr,Or=Object.assign(Object.assign({},Er),{contains:(e,r,t,n)=>{if(!1===r.contains)return e.errors.containsArrayError({pointer:n,value:t});if(!0===r.contains)return Array.isArray(t)&&0===t.length?e.errors.containsAnyError({pointer:n}):void 0;if("object"===a(r.contains)){for(let n=0;n<t.length;n+=1)if(e.isValid(t[n],r.contains))return;return e.errors.containsError({pointer:n,schema:JSON.stringify(r.contains)})}},exclusiveMaximum:(e,r,t,n)=>{if(!isNaN(r.exclusiveMaximum))return r.exclusiveMaximum<=t?e.errors.maximumError({maximum:r.exclusiveMaximum,length:t,pointer:n}):void 0},exclusiveMinimum:(e,r,t,n)=>{if(!isNaN(r.exclusiveMinimum))return r.exclusiveMinimum>=t?e.errors.minimumError({minimum:r.exclusiveMinimum,length:t,pointer:n}):void 0},if:(e,r,t,n)=>{if(null==r.if)return;const o=e.validate(t,r.if,n);return 0===o.length&&r.then?e.validate(t,r.then,n):0!==o.length&&r.else?e.validate(t,r.else,n):void 0},maximum:(e,r,t,n)=>{if(!isNaN(r.maximum))return r.maximum&&r.maximum<t?e.errors.maximumError({maximum:r.maximum,length:t,pointer:n}):void 0},minimum:(e,r,t,n)=>{if(!isNaN(r.minimum))return r.minimum>t?e.errors.minimumError({minimum:r.minimum,length:t,pointer:n}):void 0},patternProperties:(e,r,t,n)=>{const o=r.properties||{},i=r.patternProperties;if("object"!==a(i))return;const s=[],l=Object.keys(t),u=Object.keys(i).map((e=>({regex:new RegExp(e),patternSchema:i[e]})));return l.forEach((a=>{let l=!1;for(let r=0,o=u.length;r<o;r+=1)if(u[r].regex.test(a)){if(l=!0,!1===u[r].patternSchema)return void s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}));const o=e.validate(t[a],u[r].patternSchema,`${n}/${a}`);o&&o.length>0&&s.push(...o)}o[a]||!1===l&&!1===r.additionalProperties&&s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}))})),s},propertyNames:(e,r,t,n)=>{if(!1===r.propertyNames){if(0===Object.keys(t).length)return;return e.errors.invalidPropertyNameError({property:Object.keys(t),pointer:n,value:t})}if(!0===r.propertyNames)return;if("object"!==a(r.propertyNames))return;const o=[],i=Object.keys(t),s=Object.assign(Object.assign({},r.propertyNames),{type:"string"});return i.forEach((r=>{const i=e.validate(r,s,`${n}/${r}`);i.length>0&&o.push(e.errors.invalidPropertyNameError({property:r,pointer:n,validationError:i[0],value:t[r]}))})),o}}),vr=Or;function br(e,r,t=e.rootSchema,n="#"){let o=!1,i=d(t);for(let a=0;a<t.anyOf.length;a+=1){const s=e.resolveRef(t.anyOf[a]);e.isValid(r,t.anyOf[a],n)&&(o=!0,i=E(i,s))}return!1===o?De.anyOfError({value:r,pointer:n,anyOf:JSON.stringify(t.anyOf)}):(delete i.anyOf,i)}function xr(e){const r={type:a(e)};return"object"===r.type&&(r.properties={},Object.keys(e).forEach((t=>r.properties[t]=xr(e[t])))),"array"===r.type&&1===e.length?r.items=xr(e[0]):"array"===r.type&&(r.items=e.map(xr)),r}function _r(e,r,t=e.rootSchema){const n=e.step(r,t,{},"#");return s(n)?"one-of-error"===n.code?n.data.oneOf.map((r=>e.resolveRef(r))):n:[n]}const Pr={array:(e,r,t,n,o)=>{const i=a(t.items);if("object"===i)return Array.isArray(t.items.oneOf)?e.resolveOneOf(n[r],t.items,o):Array.isArray(t.items.anyOf)?e.resolveAnyOf(n[r],t.items,o):Array.isArray(t.items.allOf)?e.resolveAllOf(n[r],t.items,o):e.resolveRef(t.items);if("array"===i){if(!0===t.items[r])return xr(n[r]);if(!1===t.items[r])return De.invalidDataError({key:r,value:n[r],pointer:o});if(t.items[r])return e.resolveRef(t.items[r]);if(!1===t.additionalItems)return De.additionalItemsError({key:r,value:n[r],pointer:o});if(!0===t.additionalItems||void 0===t.additionalItems)return xr(n[r]);if("object"===a(t.additionalItems))return t.additionalItems;throw new Error(`Invalid schema ${JSON.stringify(t,null,4)} for ${JSON.stringify(n,null,4)}`)}return!1!==t.additionalItems&&n[r]?xr(n[r]):new Error(`Invalid array schema for ${r} at ${o}`)},object:(e,r,t,n,o)=>{if(Array.isArray(t.oneOf)){const r=e.resolveOneOf(n,t,o);if(s(t=E(t,r)))return t}if(Array.isArray(t.anyOf)&&s(t=e.resolveAnyOf(n,t,o)))return t;if(Array.isArray(t.allOf)&&s(t=e.resolveAllOf(n,t,o)))return t;let i;if(t.properties&&void 0!==t.properties[r]){if(i=e.resolveRef(t.properties[r]),s(i))return i;if(i&&Array.isArray(i.oneOf)){let t=e.resolveOneOf(n[r],i,`${o}/${r}`);const a=i.oneOf.findIndex((e=>e===t));return t=JSON.parse(JSON.stringify(t)),t.variableSchema=!0,t.oneOfIndex=a,t.oneOfSchema=i,t}if(i)return i}const{dependencies:l}=t;if("object"===a(l)){const t=Object.keys(l).filter((e=>"object"===a(l[e])));for(let i=0,a=t.length;i<a;i+=1){const a=t[i],u=Sr(e,r,l[a],n,`${o}/${a}`);if(!s(u))return u}}if(t.if&&(t.then||t.else)){const i=e.isValid(n,t.if);if(i&&t.then){const i=Sr(e,r,t.then,n,o);if("string"==typeof i.type&&"error"!==i.type)return i}if(!i&&t.else){const i=Sr(e,r,t.else,n,o);if("string"==typeof i.type&&"error"!==i.type)return i}}if("object"===a(t.patternProperties)){let e;const n=Object.keys(t.patternProperties);for(let o=0,i=n.length;o<i;o+=1)if(e=new RegExp(n[o]),e.test(r))return t.patternProperties[n[o]]}return"object"===a(t.additionalProperties)?t.additionalProperties:!0===t.additionalProperties?xr(n[r]):De.unknownPropertyError({property:r,value:n,pointer:`${o}`})}};function Sr(e,r,t,n,o="#"){if(Array.isArray(t.type)){const i=a(n);return t.type.includes(i)?Pr[i](e,`${r}`,t,n,o):e.errors.typeError({value:n,pointer:o,expected:t.type,received:i})}const i=t.type||a(n),s=Pr[i];return s?s(e,`${r}`,t,n,o):new Error(`Unsupported schema type ${t.type} for key ${r}`)}const Ar={array:(e,r,t,n)=>e.typeKeywords.array.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),object:(e,r,t,n)=>e.typeKeywords.object.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),string:(e,r,t,n)=>e.typeKeywords.string.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),integer:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),number:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),boolean:(e,r,t,n)=>e.typeKeywords.boolean.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),null:(e,r,t,n)=>e.typeKeywords.null.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n)))};var $r=__webpack_require__(63),Rr=__webpack_require__.n($r);function jr(e,r,t=e.rootSchema,n="#"){if("boolean"===a(t=e.resolveRef(t)))return t?[]:[e.errors.invalidDataError({value:r,pointer:n})];if(s(t))return[t];if(void 0!==t.const)return Rr()(t.const,r)?[]:[e.errors.constError({value:r,expected:t.const,pointer:n})];const o=function(e,r){const t=a(e);return"number"===t&&("integer"===r||Array.isArray(r)&&r.includes("integer"))?Number.isInteger(e)||isNaN(e)?"integer":"number":t}(r,t.type),i=t.type||o;if(!(o===i||Array.isArray(i)&&i.includes(o)))return[e.errors.typeError({received:o,expected:i,value:r,pointer:n})];if(null==e.validateType[o])return[e.errors.invalidTypeError({receivedType:o,pointer:n})];return f(e.validateType[o](e,t,r,n)).filter(l)}const wr={typeKeywords:{array:["allOf","anyOf","contains","enum","if","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["allOf","anyOf","enum","not","oneOf"],object:["additionalProperties","allOf","anyOf","dependencies","enum","format","if","maxProperties","minProperties","not","oneOf","patternProperties","properties","propertyNames","required"],string:["allOf","anyOf","enum","format","if","maxLength","minLength","not","oneOf","pattern"],number:["allOf","anyOf","enum","exclusiveMaximum","exclusiveMinimum","format","if","maximum","minimum","multipleOf","not","oneOf"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:vr,validateType:Ar,validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:Me,createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Ir extends k{constructor(e,r={}){super(E(wr,r),e)}}const kr=Object.assign(Object.assign({},wr),{resolveOneOf:P,resolveRef:A});class Nr extends k{constructor(e,r={}){super(E(kr,r),e)}}class Lr{constructor(e,r){this.core=new Nr(e),this.schema=e,this.data=r,this.cache={}}updateData(e){this.data=e,this.cache={}}updateSchema(e){this.schema=e,this.core.setSchema(e),this.cache={}}get(e,r){if(r){const t=w(this.core,e,r,this.schema);return d(t)}if("#"===e)return this.schema;if(this.cache[e])return this.cache[e];const t=R().join(e,"..");let n=this.cache[t];null==n&&(n=w(this.core,t,this.data,this.schema),!0!==n.variableSchema&&(this.cache[t]=d(n)));const o=R().split(e).pop();let i=w(this.core,o,R().get(this.data,t),this.cache[t]);return i=d(i),!0!==i.variableSchema&&(this.cache[e]=i),i}}function Tr(e,r,t){const{schema:n,pointer:o,onError:i}=Object.assign({schema:e.rootSchema,pointer:"#"},t);let a=e.validate(r,n,o);if(i){a=f(a);const e=function(e){return function r(t){return Array.isArray(t)?((t=f(t)).forEach(r),t):(s(t)&&e(t),t)}}(i);for(let r=0;r<a.length;r+=1)a[r]instanceof Promise?a[r].then(e):s(a[r])&&i(a[r])}return Promise.all(a).then(f).then((e=>e.filter(u))).catch((e=>{throw console.log("Failed resolving promises",e.message),console.log(e.stack),e}))}const Cr="__compiled",Ur="__ref",Mr=/(#|\/)+$/g;const qr={typeKeywords:{array:["allOf","anyOf","enum","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["enum","not","allOf","anyOf","oneOf"],object:["additionalProperties","dependencies","enum","format","minProperties","maxProperties","patternProperties","properties","required","not","oneOf","allOf","anyOf"],string:["allOf","anyOf","enum","format","maxLength","minLength","not","oneOf","pattern"],number:["allOf","anyOf","enum","format","maximum","minimum","multipleOf","not","oneOf"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:Er,validateType:{array:(e,r,t,n)=>e.typeKeywords.array.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),object:(e,r,t,n)=>e.typeKeywords.object.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),string:(e,r,t,n)=>e.typeKeywords.string.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),integer:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),number:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),boolean:(e,r,t,n)=>e.typeKeywords.boolean.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),null:(e,r,t,n)=>e.typeKeywords.null.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n)))},validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:function(e,r,t=r,n=!1){if(!r||void 0!==r[Cr])return r;const o={ids:{},remotes:e.remotes},i=JSON.stringify(r),a=JSON.parse(i);if(Object.defineProperty(a,Cr,{enumerable:!1,value:!0}),Object.defineProperty(a,"getRef",{enumerable:!1,value:Le.bind(null,o,a)}),!1===n&&!1===i.includes("$ref"))return a;r!==t&&Object.defineProperty(a,"definitions",{enumerable:!1,value:Object.assign({},t.definitions,t.$defs,r.definitions,r.$defs)});const s={},l=()=>a;return Pe(a,((e,r)=>{var t;if(e.id){if(e.id.startsWith("http")&&/(allOf|anyOf|oneOf)\/\d+$/.test(r)){const n=r.replace(/\/(allOf|anyOf|oneOf)\/\d+$/,""),o=(0,$.get)(a,n);e.id=null!==(t=o.id)&&void 0!==t?t:e.id}o.ids[e.id.replace(Mr,"")]=r}const n=(r=`#${r}`.replace(/##+/,"#")).replace(/\/[^/]+$/,""),i=r.replace(/\/[^/]+\/[^/]+$/,""),u=we(s[n]||s[i],e.id);s[r]=u,null==o.ids[u]&&(o.ids[u]=r),e.$ref&&!e[Ur]&&(Object.defineProperty(e,Ur,{enumerable:!1,value:we(u,e.$ref)}),Object.defineProperty(e,"getRoot",{enumerable:!1,value:l}))})),a},createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Dr extends k{constructor(e,r={}){super(E(qr,r),e)}}const Vr={typeKeywords:{array:["allOf","anyOf","contains","enum","if","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["allOf","anyOf","enum","not","oneOf"],object:["additionalProperties","allOf","anyOf","dependencies","enum","format","if","maxProperties","minProperties","not","oneOf","patternProperties","properties","propertyNames","required"],string:["allOf","anyOf","enum","format","if","maxLength","minLength","not","oneOf","pattern"],number:["enum","exclusiveMaximum","exclusiveMinimum","format","maximum","minimum","multipleOf","not","oneOf","allOf","anyOf","if"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:vr,validateType:Ar,validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:Me,createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Fr extends k{constructor(e,r={}){super(E(Vr,r),e)}}const Kr={strings:e}})(),__webpack_exports__})()));
|
|
2
|
+
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define("jlib",[],r):"object"==typeof exports?exports.jlib=r():e.jlib=r()}("undefined"!=typeof self?self:this,(()=>(()=>{var __webpack_modules__={604:function(e){"undefined"!=typeof self&&self,e.exports=(()=>{"use strict";var e={d:(r,t)=>{for(var n in t)e.o(t,n)&&!e.o(r,n)&&Object.defineProperty(r,n,{enumerable:!0,get:t[n]})},o:(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};function t(e){return"#"===e||""===e||Array.isArray(e)&&0===e.length||!1}e.r(r),e.d(r,{default:()=>A,get:()=>f,isRoot:()=>t,join:()=>P,remove:()=>O,removeUndefinedItems:()=>E,set:()=>h,split:()=>u,splitLast:()=>S});const n=/~1/g,o=/~0/g,i=/\/+/g,a=/(^[#/]*|\/+$)/g;function s(e){return e.replace(n,"/").replace(o,"~")}function l(e){return s(decodeURIComponent(e))}function u(e){if(null==e||"string"!=typeof e||t(e))return Array.isArray(e)?e:[];const r=e.indexOf("#")>=0?l:s,n=(e=(e=e.replace(i,"/")).replace(a,"")).split("/");for(let e=0,t=n.length;e<t;e+=1)n[e]=r(n[e]);return n}function f(e,r,n){if(null==r||null==e)return n;if(t(r))return e;const o=c(e,u(r));return void 0===o?n:o}function c(e,r){const t=r.shift();if(void 0!==e)return void 0!==t?c(e[t],r):e}const p=/^\[.*\]$/,m=/^\[(.+)\]$/;function d(e,r){return"__proto__"===e||"constructor"==e&&r.length>0&&"prototype"==r[0]}function h(e,r,t){if(null==r)return e;const n=u(r);if(0===n.length)return e;null==e&&(e=p.test(n[0])?[]:{});let o,i,a=e;for(;n.length>1;)o=n.shift(),i=p.test(n[0]),d(o,n)||(a=g(a,o,i));return o=n.pop(),y(a,o,t),e}function y(e,r,t){let n;const o=r.match(m);"[]"===r&&Array.isArray(e)?e.push(t):o?(n=o.pop(),e[n]=t):e[r]=t}function g(e,r,t){if(null!=e[r])return e[r];const n=t?[]:{};return y(e,r,n),n}function E(e){let r=0,t=0;for(;r+t<e.length;)void 0===e[r+t]&&(t+=1),e[r]=e[r+t],r+=1;return e.length=e.length-t,e}function O(e,r,t){const n=u(r),o=n.pop(),i=f(e,n);return i&&delete i[o],Array.isArray(i)&&!0!==t&&E(i),e}const v=/\/+/g,b=/~/g,x=/\//g;function _(e,r){if(0===e.length)return r?"#":"";for(let t=0,n=e.length;t<n;t+=1)e[t]=e[t].replace(b,"~0").replace(x,"~1"),r&&(e[t]=encodeURIComponent(e[t]));return((r?"#/":"/")+e.join("/")).replace(v,"/")}function P(e,...r){const t=[];if(Array.isArray(e))return _(e,!0===arguments[1]);const n=arguments[arguments.length-1],o="boolean"==typeof n?n:e&&"#"===e[0];for(let e=0,r=arguments.length;e<r;e+=1)t.push.apply(t,u(arguments[e]));const i=[];for(let e=0,r=t.length;e<r;e+=1)if(".."===t[e]){if(0===i.length)return o?"#":"";i.pop()}else i.push(t[e]);return _(i,o)}function S(e){const r=u(e);if(0===r.length)return"string"==typeof e&&"#"===e[0]?["#",r[0]]:["",void 0];if(1===r.length)return"#"===e[0]?["#",r[0]]:["",r[0]];const t=r.pop();return[P(r,"#"===e[0]),t]}const A={get:f,set:h,remove:O,join:P,split:u,splitLast:S,isRoot:t,removeUndefinedItems:E};return r})()},996:e=>{"use strict";var r=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var r=Object.prototype.toString.call(e);return"[object RegExp]"===r||"[object Date]"===r||function(e){return e.$$typeof===t}(e)}(e)};var t="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,r){return!1!==r.clone&&r.isMergeableObject(e)?l((t=e,Array.isArray(t)?[]:{}),e,r):e;var t}function o(e,r,t){return e.concat(r).map((function(e){return n(e,t)}))}function i(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(r){return e.propertyIsEnumerable(r)})):[]}(e))}function a(e,r){try{return r in e}catch(e){return!1}}function s(e,r,t){var o={};return t.isMergeableObject(e)&&i(e).forEach((function(r){o[r]=n(e[r],t)})),i(r).forEach((function(i){(function(e,r){return a(e,r)&&!(Object.hasOwnProperty.call(e,r)&&Object.propertyIsEnumerable.call(e,r))})(e,i)||(a(e,i)&&t.isMergeableObject(r[i])?o[i]=function(e,r){if(!r.customMerge)return l;var t=r.customMerge(e);return"function"==typeof t?t:l}(i,t)(e[i],r[i],t):o[i]=n(r[i],t))})),o}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||r,i.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(t);return a===Array.isArray(e)?a?i.arrayMerge(e,t,i):s(e,t,i):n(t,i)}l.all=function(e,r){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,t){return l(e,t,r)}),{})};var u=l;e.exports=u},723:(e,r,t)=>{"use strict";const n=t(802);var o;!function(e){e.RULES=[{name:"Grammar",bnf:[["RULE_S*","%Atomic*","EOF"]]},{name:"%Atomic",bnf:[["Production","RULE_S*"]],fragment:!0},{name:"Production",bnf:[["NCName","RULE_S*",'"::="',"RULE_WHITESPACE*","Choice","RULE_WHITESPACE*","RULE_EOL+","RULE_S*"]]},{name:"NCName",bnf:[[/[a-zA-Z][a-zA-Z_0-9]*/]]},{name:"Choice",bnf:[["SequenceOrDifference","%_Choice_1*"]],fragment:!0},{name:"%_Choice_1",bnf:[["RULE_WHITESPACE*",'"|"',"RULE_WHITESPACE*","SequenceOrDifference"]],fragment:!0},{name:"SequenceOrDifference",bnf:[["Item","RULE_WHITESPACE*","%_Item_1?"]]},{name:"%_Item_1",bnf:[["Minus","Item"],["Item*"]],fragment:!0},{name:"Minus",bnf:[['"-"']]},{name:"Item",bnf:[["RULE_WHITESPACE*","%Primary","PrimaryDecoration?"]],fragment:!0},{name:"PrimaryDecoration",bnf:[['"?"'],['"*"'],['"+"']]},{name:"DecorationName",bnf:[['"ebnf://"',/[^\x5D#]+/]]},{name:"%Primary",bnf:[["NCName"],["StringLiteral"],["CharCode"],["CharClass"],["SubItem"]],fragment:!0},{name:"SubItem",bnf:[['"("',"RULE_WHITESPACE*","Choice","RULE_WHITESPACE*",'")"']]},{name:"StringLiteral",bnf:[["'\"'",/[^"]*/,"'\"'"],['"\'"',/[^']*/,'"\'"']],pinned:1},{name:"CharCode",bnf:[['"#x"',/[0-9a-zA-Z]+/]]},{name:"CharClass",bnf:[["'['","'^'?","%RULE_CharClass_1+",'"]"']]},{name:"%RULE_CharClass_1",bnf:[["CharCodeRange"],["CharRange"],["CharCode"],["RULE_Char"]],fragment:!0},{name:"RULE_Char",bnf:[[/\x09/],[/\x0A/],[/\x0D/],[/[\x20-\x5c]/],[/[\x5e-\uD7FF]/],[/[\uE000-\uFFFD]/]]},{name:"CharRange",bnf:[["RULE_Char",'"-"',"RULE_Char"]]},{name:"CharCodeRange",bnf:[["CharCode",'"-"',"CharCode"]]},{name:"RULE_WHITESPACE",bnf:[["%RULE_WHITESPACE_CHAR*"],["Comment","RULE_WHITESPACE*"]]},{name:"RULE_S",bnf:[["RULE_WHITESPACE","RULE_S*"],["RULE_EOL","RULE_S*"]]},{name:"%RULE_WHITESPACE_CHAR",bnf:[[/\x09/],[/\x20/]],fragment:!0},{name:"Comment",bnf:[['"/*"',"%RULE_Comment_Body*",'"*/"']]},{name:"%RULE_Comment_Body",bnf:[['!"*/"',/[^*]/]],fragment:!0},{name:"RULE_EOL",bnf:[[/\x0D/,/\x0A/],[/\x0A/],[/\x0D/]]},{name:"Link",bnf:[["'['","Url","']'"]]},{name:"Url",bnf:[[/[^\x5D:/?#]/,'"://"',/[^\x5D#]+/,"%Url1?"]]},{name:"%Url1",bnf:[['"#"',"NCName"]],fragment:!0}],e.defaultParser=new n.Parser(e.RULES,{debug:!1});const r=/^(!|&)/,t=/(\?|\+|\*)$/,o=/^%/;function i(e,i){if("string"==typeof e){if(r.test(e))return"";if(o.test(e)){let r=t.exec(e),o=r?r[0]+" ":"",s=function(e,r){let t=n.findRuleByName(e,r);return t&&1==t.bnf.length&&1==t.bnf[0].length&&(t.bnf[0][0]instanceof RegExp||'"'==t.bnf[0][0][0]||"'"==t.bnf[0][0][0])}(e,i);return s?a(e,i)+o:"("+a(e,i)+")"+o}return e}return e.source.replace(/\\(?:x|u)([a-zA-Z0-9]+)/g,"#x$1").replace(/\[\\(?:x|u)([a-zA-Z0-9]+)-\\(?:x|u)([a-zA-Z0-9]+)\]/g,"[#x$1-#x$2]")}function a(e,r){let t=n.findRuleByName(e,r);return t?t.bnf.map((e=>function(e,r){return e.map((e=>i(e,r))).join(" ")}(e,r))).join(" | "):"RULE_NOT_FOUND {"+e+"}"}function s(e){let r=[];return e.grammarRules.forEach((t=>{if(!/^%/.test(t.name)){let n=t.recover?" /* { recoverUntil="+t.recover+" } */":"";r.push(t.name+" ::= "+a(t.name,e)+n)}})),r.join("\n")}e.emit=s;let l=0;function u(e){return new RegExp(e.replace(/#x([a-zA-Z0-9]{4})/g,"\\u$1").replace(/#x([a-zA-Z0-9]{3})/g,"\\u0$1").replace(/#x([a-zA-Z0-9]{2})/g,"\\x$1").replace(/#x([a-zA-Z0-9]{1})/g,"\\x0$1"))}function f(e,r,t){let n=null,o=[];return r.children.forEach(((i,a)=>{"Minus"==i.type&&function(e,r){throw console.log("reberia restar "+r+" a "+e),new Error("Difference not supported yet")}(n,i);let s=r.children[a+1];s=s&&"PrimaryDecoration"==s.type&&s.text||"";switch(i.type){case"SubItem":let r="%"+(t+l++);c(e,i,r),o.push(""+r+s);break;case"NCName":case"StringLiteral":o.push(""+i.text+s);break;case"CharCode":case"CharClass":if(s){let r={name:"%"+(t+l++),bnf:[[u(i.text)]]};e.push(r),o.push(""+r.name+s)}else o.push(u(i.text));break;case"PrimaryDecoration":break;default:throw new Error(" HOW SHOULD I PARSE THIS? "+i.type+" -> "+JSON.stringify(i.text))}n=i})),o}function c(e,r,t){let n=r.children.filter((e=>"SequenceOrDifference"==e.type)).map((r=>f(e,r,t))),o={name:t,bnf:n},i=null;n.forEach((e=>{i=i||e.recover,delete e.recover})),0==t.indexOf("%")&&(o.fragment=!0),i&&(o.recover=i),e.push(o)}function p(r,t=e.defaultParser){let n=t.getAST(r);if(!n)throw new Error("Could not parse "+r);if(n.errors&&n.errors.length)throw n.errors[0];let o=[];return n.children.filter((e=>"Production"==e.type)).map((e=>{let r=e.children.filter((e=>"NCName"==e.type))[0].text;c(o,e,r)})),o}e.getRules=p,e.Transform=function(r,t=e.defaultParser){return p(r.join(""),t)};class m extends n.Parser{constructor(r,t){super(p(r,t&&!0===t.debugRulesParser?new n.Parser(e.RULES,{debug:!0}):e.defaultParser),t)}emitSource(){return s(this)}}e.Parser=m}(o||(o={})),r.Z=o},802:(__unused_webpack_module,exports,__webpack_require__)=>{"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Parser=exports.findRuleByName=exports.parseRuleName=exports.escapeRegExp=exports.readToken=void 0;const UPPER_SNAKE_RE=/^[A-Z0-9_]+$/,decorationRE=/(\?|\+|\*)$/,preDecorationRE=/^(@|&|!)/,WS_RULE="WS",TokenError_1=__webpack_require__(239);function readToken(e,r){let t=r.exec(e);return t&&0==t.index?0==t[0].length&&r.source.length>0?null:{type:null,text:t[0],rest:e.substr(t[0].length),start:0,end:t[0].length-1,fullText:t[0],errors:[],children:[],parent:null}:null}function escapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function fixRest(e){e.rest="",e.children&&e.children.forEach((e=>fixRest(e)))}function fixPositions(e,r){e.start+=r,e.end+=r,e.children&&e.children.forEach((r=>fixPositions(r,e.start)))}function agregateErrors(e,r){r.errors&&r.errors.length&&r.errors.forEach((r=>e.push(r))),r.children&&r.children.forEach((r=>agregateErrors(e,r)))}function parseRuleName(e){let r=decorationRE.exec(e),t=preDecorationRE.exec(e),n=r&&r[0]||"",o=t&&t[0]||"",i={raw:e,name:e.replace(decorationRE,"").replace(preDecorationRE,""),isOptional:"?"==n||"*"==n,allowRepetition:"+"==n||"*"==n,atLeastOne:"+"==n,lookupPositive:"&"==o,lookupNegative:"!"==o,pinned:"@"==o,lookup:!1,isLiteral:!1};return i.isLiteral="'"==i.name[0]||'"'==i.name[0],i.lookup=i.lookupNegative||i.lookupPositive,i}function findRuleByName(e,r){let t=parseRuleName(e);return r.cachedRules[t.name]||null}function stripRules(e,r){if(e.children){let t=e.children.filter((e=>e.type&&r.test(e.type)));for(let r=0;r<t.length;r++){let n=e.children.indexOf(t[r]);-1!=n&&e.children.splice(n,1)}e.children.forEach((e=>stripRules(e,r)))}}exports.readToken=readToken,exports.escapeRegExp=escapeRegExp,exports.parseRuleName=parseRuleName,exports.findRuleByName=findRuleByName;const ignoreMissingRules=["EOF"];class Parser{constructor(e,r){this.grammarRules=e,this.options=r,this.cachedRules={},this.debug=!!r&&!0===r.debug;let t=[],n=[];if(e.forEach((e=>{let r=parseRuleName(e.name);if(r.name in this.cachedRules)t.push("Duplicated rule "+r.name);else{if(this.cachedRules[r.name]=e,e.bnf&&e.bnf.length)e.bnf.forEach((r=>{if("string"==typeof r[0]){if(parseRuleName(r[0]).name==e.name){let r="Left recursion is not allowed, rule: "+e.name;-1==t.indexOf(r)&&t.push(r)}}r.forEach((e=>{if("string"==typeof e){let r=parseRuleName(e);r.isLiteral||-1!=n.indexOf(r.name)||-1!=ignoreMissingRules.indexOf(r.name)||n.push(r.name)}}))}));else{let r="Missing rule content, rule: "+e.name;-1==t.indexOf(r)&&t.push(r)}WS_RULE==e.name&&(e.implicitWs=!1),e.implicitWs&&-1==n.indexOf(WS_RULE)&&n.push(WS_RULE),e.recover&&-1==n.indexOf(e.recover)&&n.push(e.recover)}})),n.forEach((e=>{e in this.cachedRules||t.push("Missing rule "+e)})),t.length)throw new Error(t.join("\n"))}getAST(e,r){r||(r=this.grammarRules.filter((e=>!e.fragment&&0!=e.name.indexOf("%")))[0].name);let t=this.parse(e,r);if(t){agregateErrors(t.errors,t),fixPositions(t,0),stripRules(t,/^%/),this.options&&this.options.keepUpperRules||stripRules(t,UPPER_SNAKE_RE);let e=t.rest;e&&new TokenError_1.TokenError("Unexpected end of input: \n"+e,t),fixRest(t),t.rest=e}return t}emitSource(){return"CANNOT EMIT SOURCE FROM BASE Parser"}parse(txt,target,recursion=0){let out=null,type=parseRuleName(target),expr,printable=this.debug&&!UPPER_SNAKE_RE.test(type.name);printable&&console.log(new Array(recursion).join("│ ")+"Trying to get "+target+" from "+JSON.stringify(txt.split("\n")[0]));let realType=type.name,targetLex=findRuleByName(type.name,this);if("EOF"==type.name){if(txt.length)return null;if(0==txt.length)return{type:"EOF",text:"",rest:"",start:0,end:0,fullText:"",errors:[],children:[],parent:null}}try{if(!targetLex&&type.isLiteral){let src=eval(type.name);if(""===src)return{type:"%%EMPTY%%",text:"",rest:txt,start:0,end:0,fullText:"",errors:[],children:[],parent:null};expr=new RegExp(escapeRegExp(src)),realType=null}}catch(e){return e instanceof ReferenceError&&console.error(e),null}if(expr){let e=readToken(txt,expr);if(e)return e.type=realType,e}else{let e=targetLex.bnf;e instanceof Array&&e.forEach((e=>{if(out)return;let r=null,t={type:type.name,text:"",children:[],end:0,errors:[],fullText:"",parent:null,start:0,rest:txt};targetLex.fragment&&(t.fragment=!0);let n=txt,o=0,i=e.length>0,a=!1;for(let s=0;s<e.length;s++)if("string"==typeof e[s]){let l,u=parseRuleName(e[s]);i=i&&u.isOptional;let f=!1;do{if(l=null,targetLex.implicitWs&&(l=this.parse(n,u.name,recursion+1),!l)){let e;do{if(e=this.parse(n,WS_RULE,recursion+1),!e)break;t.text=t.text+e.text,t.end=t.text.length,e.parent=t,t.children.push(e),n=n.substr(e.text.length),o+=e.text.length}while(e&&e.text.length)}if(l=l||this.parse(n,u.name,recursion+1),u.lookupNegative){if(l)return;break}if(u.lookupPositive&&!l)return;if(!l){if(u.isOptional)break;if(u.atLeastOne&&f)break}if(l&&targetLex.pinned==s+1&&(r=l,printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" PINNED")),l||(l=this.parseRecovery(targetLex,n,recursion+1)),!l){if(!r)return;out=t,l={type:"SyntaxError",text:n,children:[],end:n.length,errors:[],fullText:"",parent:null,start:0,rest:""},n.length?new TokenError_1.TokenError(`Unexpected end of input. Expecting ${u.name} Got: ${n}`,l):new TokenError_1.TokenError(`Unexpected end of input. Missing ${u.name}`,l),printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" "+JSON.stringify(l.text))}if(f=!0,a=!0,"%%EMPTY%%"==l.type)break;l.start+=o,l.end+=o,!u.lookupPositive&&l.type&&(l.fragment?l.children&&l.children.forEach((e=>{e.start+=o,e.end+=o,e.parent=t,t.children.push(e)})):(l.parent=t,t.children.push(l))),u.lookup&&(l.lookup=!0),printable&&console.log(new Array(recursion+1).join("│ ")+"└─ "+l.type+" "+JSON.stringify(l.text)),u.lookup||l.lookup||(t.text=t.text+l.text,t.end=t.text.length,n=n.substr(l.text.length),o+=l.text.length),t.rest=n}while(l&&u.allowRepetition&&n.length&&!l.lookup)}else{let r=readToken(n,e[s]);if(!r)return;printable&&console.log(new Array(recursion+1).join("│ ")+"└> "+JSON.stringify(r.text)+e[s].source),a=!0,r.start+=o,r.end+=o,t.text=t.text+r.text,t.end=t.text.length,n=n.substr(r.text.length),o+=r.text.length,t.rest=n}a&&(out=t,printable&&console.log(new Array(recursion).join("│ ")+"├<─┴< PUSHING "+out.type+" "+JSON.stringify(out.text)))})),out&&targetLex.simplifyWhenOneChildren&&1==out.children.length&&(out=out.children[0])}return out||printable&&console.log(target+" NOT RESOLVED FROM "+txt),out}parseRecovery(e,r,t){if(e.recover&&r.length){let n=this.debug;n&&console.log(new Array(t+1).join("│ ")+"Trying to recover until token "+e.recover+" from "+JSON.stringify(r.split("\n")[0]+r.split("\n")[1]));let o,i={type:"SyntaxError",text:"",children:[],end:0,errors:[],fullText:"",parent:null,start:0,rest:""};do{if(o=this.parse(r,e.recover,t+1),o){new TokenError_1.TokenError('Unexpected input: "'+i.text+`" Expecting: ${e.name}`,i);break}i.text=i.text+r[0],i.end=i.text.length,r=r.substr(1)}while(!o&&r.length>0);if(i.text.length>0&&o)return n&&console.log(new Array(t+1).join("│ ")+"Recovered text: "+JSON.stringify(i.text)),i}return null}}exports.Parser=Parser,exports.default=Parser},239:(e,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.TokenError=void 0;class t extends Error{constructor(e,r){if(super(e),this.message=e,this.token=r,!r||!r.errors)throw this;r.errors.push(this)}inspect(){return"SyntaxError: "+this.message}}r.TokenError=t},63:e=>{"use strict";e.exports=function e(r,t){if(r===t)return!0;if(r&&t&&"object"==typeof r&&"object"==typeof t){if(r.constructor!==t.constructor)return!1;var n,o,i;if(Array.isArray(r)){if((n=r.length)!=t.length)return!1;for(o=n;0!=o--;)if(!e(r[o],t[o]))return!1;return!0}if(r.constructor===RegExp)return r.source===t.source&&r.flags===t.flags;if(r.valueOf!==Object.prototype.valueOf)return r.valueOf()===t.valueOf();if(r.toString!==Object.prototype.toString)return r.toString()===t.toString();if((n=(i=Object.keys(r)).length)!==Object.keys(t).length)return!1;for(o=n;0!=o--;)if(!Object.prototype.hasOwnProperty.call(t,i[o]))return!1;for(o=n;0!=o--;){var a=i[o];if(!e(r[a],t[a]))return!1}return!0}return r!=r&&t!=t}},481:(e,r,t)=>{!function(e){"use strict";e.exports.is_uri=t,e.exports.is_http_uri=n,e.exports.is_https_uri=o,e.exports.is_web_uri=i,e.exports.isUri=t,e.exports.isHttpUri=n,e.exports.isHttpsUri=o,e.exports.isWebUri=i;var r=function(e){return e.match(/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/)};function t(e){if(e&&!/[^a-z0-9\:\/\?\#\[\]\@\!\$\&\'\(\)\*\+\,\;\=\.\-\_\~\%]/i.test(e)&&!/%[^0-9a-f]/i.test(e)&&!/%[0-9a-f](:?[^0-9a-f]|$)/i.test(e)){var t,n,o,i,a,s="",l="";if(s=(t=r(e))[1],n=t[2],o=t[3],i=t[4],a=t[5],s&&s.length&&o.length>=0){if(n&&n.length){if(0!==o.length&&!/^\//.test(o))return}else if(/^\/\//.test(o))return;if(/^[a-z][a-z0-9\+\-\.]*$/.test(s.toLowerCase()))return l+=s+":",n&&n.length&&(l+="//"+n),l+=o,i&&i.length&&(l+="?"+i),a&&a.length&&(l+="#"+a),l}}}function n(e,n){if(t(e)){var o,i,a,s,l="",u="",f="",c="";if(l=(o=r(e))[1],u=o[2],i=o[3],a=o[4],s=o[5],l){if(n){if("https"!=l.toLowerCase())return}else if("http"!=l.toLowerCase())return;if(u)return/:(\d+)$/.test(u)&&(f=u.match(/:(\d+)$/)[0],u=u.replace(/:\d+$/,"")),c+=l+":",c+="//"+u,f&&(c+=f),c+=i,a&&a.length&&(c+="?"+a),s&&s.length&&(c+="#"+s),c}}}function o(e){return n(e,!0)}function i(e){return n(e)||o(e)}}(e=t.nmd(e))}},__webpack_module_cache__={};function __webpack_require__(e){var r=__webpack_module_cache__[e];if(void 0!==r)return r.exports;var t=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(t.exports,t,t.exports,__webpack_require__),t.loaded=!0,t.exports}__webpack_require__.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(r,{a:r}),r},__webpack_require__.d=(e,r)=>{for(var t in r)__webpack_require__.o(r,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},__webpack_require__.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__={};return(()=>{"use strict";__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{Draft:()=>k,Draft04:()=>Dr,Draft06:()=>Fr,Draft07:()=>Ir,JsonEditor:()=>Nr,SchemaService:()=>Lr,config:()=>Kr,createCustomError:()=>o,createError:()=>n,draft04Config:()=>qr,draft06Config:()=>Vr,draft07Config:()=>wr,draftJsonEditorConfig:()=>kr,getTypeOf:()=>a,isJSONError:()=>s,render:()=>r,resolveAllOf:()=>b,resolveOneOf:()=>m,resolveOneOfFuzzy:()=>P,resolveRef:()=>S,resolveRefMerge:()=>A,settings:()=>c,validateAsync:()=>Tr});const e={AdditionalItemsError:"Array at `{{pointer}}` may not have an additional item `{{key}}`",AdditionalPropertiesError:"Additional property `{{property}}` on `{{pointer}}` does not match schema `{{schema}}`",AllOfError:"Value `{{value}}` at `{{pointer}}` does not match schema of `{{allOf}}`",AnyOfError:"Value `{{value}}` at `{{pointer}}` does not match any schema of `{{anyOf}}`",ConstError:"Expected value at `{{pointer}}` to be `{{expected}}`, but value given is `{{value}}`",containsAnyError:"The array at `{{pointer}}` must contain at least one item",ContainsArrayError:"The property at `{{pointer}}` must not be an array",ContainsError:"The array at `{{pointer}}` must contain an element that matches `{{schema}}`",EnumError:"Expected given value `{{value}}` in `{{pointer}}` to be one of `{{values}}`",FormatDateError:"Value `{{value}}` at `{{pointer}}` is not a valid date",FormatDateTimeError:"Value `{{value}}` at `{{pointer}}` is not a valid date-time",FormatEmailError:"Value `{{value}}` at `{{pointer}}` is not a valid email",FormatHostnameError:"Value `{{value}}` at `{{pointer}}` is not a valid hostname",FormatIPV4Error:"Value `{{value}}` at `{{pointer}}` is not a valid IPv4 address",FormatIPV4LeadingZeroError:"IPv4 addresses starting with zero are invalid, since they are interpreted as octals",FormatIPV6Error:"Value `{{value}}` at `{{pointer}}` is not a valid IPv6 address",FormatIPV6LeadingZeroError:"IPv6 addresses starting with zero are invalid, since they are interpreted as octals",FormatJSONPointerError:"Value `{{value}}` at `{{pointer}}` is not a valid json-pointer",FormatRegExError:"Value `{{value}}` at `{{pointer}}` is not a valid regular expression",FormatTimeError:"Value `{{value}}` at `{{pointer}}` is not a valid time",FormatURIError:"Value `{{value}}` at `{{pointer}}` is not a valid uri",FormatURIReferenceError:"Value `{{value}}` at `{{pointer}}` is not a valid uri-reference",FormatURITemplateError:"Value `{{value}}` at `{{pointer}}` is not a valid uri-template",FormatURLError:"Value `{{value}}` at `{{pointer}}` is not a valid url",InvalidDataError:"No value may be specified in `{{pointer}}`",InvalidPropertyNameError:"Invalid property name `{{property}}` at `{{pointer}}`",MaximumError:"Value in `{{pointer}}` is `{{length}}`, but should be `{{maximum}}` at maximum",MaxItemsError:"Too many items in `{{pointer}}`, should be `{{maximum}}` at most, but got `{{length}}`",MaxLengthError:"Value `{{pointer}}` should have a maximum length of `{{maxLength}}`, but got `{{length}}`.",MaxPropertiesError:"Too many properties in `{{pointer}}`, should be `{{maximum}}` at most, but got `{{length}}`",MinimumError:"Value in `{{pointer}}` is `{{length}}`, but should be `{{minimum}}` at minimum",MinItemsError:"Too few items in `{{pointer}}`, should be at least `{{minimum}}`, but got `{{length}}`",MinItemsOneError:"At least one item is required in `{{pointer}}`",MinLengthError:"Value `{{pointer}}` should have a minimum length of `{{minLength}}`, but got `{{length}}`.",MinLengthOneError:"A value is required in `{{pointer}}`",MinPropertiesError:"Too few properties in `{{pointer}}`, should be at least `{{minimum}}`, but got `{{length}}`",MissingDependencyError:"The required propery '{{missingProperty}}' in `{{pointer}}` is missing",MissingOneOfPropertyError:"Value at `{{pointer}}` property: `{{property}}`",MultipleOfError:"Expected `{{value}}` in `{{pointer}}` to be multiple of `{{multipleOf}}`",MultipleOneOfError:"Value `{{value}}` should not match multiple schemas in oneOf `{{matches}}`",NoAdditionalPropertiesError:"Additional property `{{property}}` in `{{pointer}}` is not allowed",NotError:"Value `{{value}}` at pointer should not match schema `{{not}}`",OneOfError:"Value `{{value}}` in `{{pointer}}` does not match any given oneof schema",OneOfPropertyError:"Failed finding a matching oneOfProperty schema in `{{pointer}}` where `{{property}}` matches `{{value}}`",PatternError:"Value in `{{pointer}}` should match `{{description}}`, but received `{{received}}`",PatternPropertiesError:"Property `{{key}}` does not match any patterns in `{{pointer}}`. Valid patterns are: {{patterns}}",RequiredPropertyError:"The required property `{{key}}` is missing at `{{pointer}}`",TypeError:"Expected `{{value}}` ({{received}}) in `{{pointer}}` to be of type `{{expected}}`",UndefinedValueError:"Value must not be undefined in `{{pointer}}`",UniqueItemsError:"Expected unique items in {{pointer}}: duplicate value `{{value}}` found at {{itemPointer}} and {{duplicatePointer}}",UnknownPropertyError:"Could not find a valid schema for property `{{pointer}}` within object",ValueNotEmptyError:"A value for `{{property}}` is required at `{{pointer}}`"};function r(e,r={}){return e.replace(/\{\{\w+\}\}/g,(e=>r[e.replace(/[{}]/g,"")]))}function t(t,n,o=t){return r(e[t]||o,n)}function n(e,r){return{type:"error",name:e,code:(n=e,n.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()),message:t(e,r),data:r};var n}function o(e){return n.bind(null,e)}const i=Object.prototype.toString;function a(e){const r=i.call(e).match(/\s([^\]]+)\]/).pop().toLowerCase();return"file"===r?"object":r}function s(e){return"error"===(null==e?void 0:e.type)}function l(e){return s(e)||e instanceof Promise}function u(e){return s(e)}function f(e,r=[]){for(let t=0;t<e.length;t+=1){const n=e[t];Array.isArray(n)?f(n,r):r.push(n)}return r}const c={DECLARATOR_ONEOF:"oneOfProperty",GET_TEMPLATE_RECURSION_LIMIT:1,floatingPointPrecision:1e4,propertyBlacklist:["_id"]},{DECLARATOR_ONEOF:p}=c;function m(e,r,t=e.rootSchema,n="#"){if(null!=r&&t[p]){const o=[],i=t[p],a=r[t[p]];if(void 0===a)return e.errors.missingOneOfPropertyError({property:i,pointer:n});for(let u=0;u<t.oneOf.length;u+=1){const c=e.resolveRef(t.oneOf[u]),p=e.step(i,c,r,n);if(s(p))return p;let m=f(e.validate(a,p,n));if(m=m.filter(l),!(m.length>0))return c;o.push(...m)}return e.errors.oneOfPropertyError({property:i,value:a,pointer:n,errors:o})}const o=[],i=[];for(let a=0;a<t.oneOf.length;a+=1){const s=e.resolveRef(t.oneOf[a]);let u=f(e.validate(r,s,n));u=u.filter(l),u.length>0?i.push(...u):o.push(s)}return 1===o.length?o[0]:o.length>1?e.errors.multipleOneOfError({value:r,pointer:n,matches:o}):e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf,errors:i})}const d=e=>JSON.parse(JSON.stringify(e));var h=__webpack_require__(996),y=__webpack_require__.n(h);const g=(e,r)=>r,E=(e,r)=>y()(e,r,{arrayMerge:g}),O=(e,r)=>{const t=e.concat(r);return t.filter(((e,r)=>t.indexOf(e)===r))};function v(e,r,t){var n;const o=Object.assign({},null!==(n=e.resolveRef(r))&&void 0!==n?n:{});if(o.if&&(o.then||o.else)){const r=e.isValid(t,o.if);if(r&&o.then)return v(e,o.then,t);if(!r&&o.else)return v(e,o.else,t);delete o.if,delete o.then,delete o.else}return o}function b(e,r,t=e.rootSchema,n="#"){let o=d(t);for(let n=0;n<t.allOf.length;n+=1){const s=v(e,t.allOf[n],r);i=o,a=s,o=y()(i,a,{arrayMerge:O}),r=e.getTemplate(r,o)}var i,a;return delete o.allOf,o}const{DECLARATOR_ONEOF:x}=c;function _(e,r,t,n){if(null==t||null==r.properties)return-1;let o=0;const i=Object.keys(r.properties);for(let a=0;a<i.length;a+=1){const s=i[a];null!=t[s]&&e.isValid(t[s],r.properties[s],n)&&(o+=1)}return o}function P(e,r,t=e.rootSchema,n="#"){if(null!=r&&t[x]){const o=[],i=t[x],a=r[t[x]];if(void 0===a)return e.errors.missingOneOfPropertyError({property:i,pointer:n});for(let u=0;u<t.oneOf.length;u+=1){const c=e.resolveRef(t.oneOf[u]),p=e.step(i,c,r,n);if(s(p))return p;let m=f(e.validate(a,p,n));if(m=m.filter(l),!(m.length>0))return c;o.push(...m)}return e.errors.oneOfPropertyError({property:i,value:a,pointer:n,errors:o})}const o=[];for(let i=0;i<t.oneOf.length;i+=1){const a=e.resolveRef(t.oneOf[i]);e.isValid(r,a,n)&&o.push(a)}if(1===o.length)return o[0];if("object"===a(r)){let o,i=0;for(let n=0;n<t.oneOf.length;n+=1){const a=e.resolveRef(t.oneOf[n]),s=_(e,a,r);i<s&&(i=s,o=t.oneOf[n])}return void 0===o?e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf}):o}return o.length>1?e.errors.multipleOneOfError({matches:o,data:r,pointer:n}):e.errors.oneOfError({value:JSON.stringify(r),pointer:n,oneOf:t.oneOf})}function S(e,r){if(null==e||null==e.$ref)return e;if(e.getRoot){return e.getRoot().getRef(e)}return r.getRef(e)}function A(e,r){if(null==e||null==e.$ref)return e;const t=r.getRef(e),n=Object.assign({},t,e);return delete n.$ref,Object.defineProperty(n,"__ref",{enumerable:!1,value:e.__ref}),Object.defineProperty(n,"getRoot",{enumerable:!1,value:e.getRoot}),n}var $=__webpack_require__(604),R=__webpack_require__.n($);const j={};function w(e,r,t,n=e.rootSchema){const o=R().split(r);return n=e.resolveRef(n),I(e,n,o,r,t)}function I(e,r,t,n,o=j){if(0===t.length)return e.resolveRef(r);const i=t.shift();return s(r=e.step(i,r,o,n))?r:I(e,r,t,`${n}/${i}`,o=o[i])}class k{constructor(e,r){this.remotes={},this.errors={},this.typeKeywords={},this.validateKeyword={},this.validateType={},this.validateFormat={},this.config=e,this.typeKeywords=JSON.parse(JSON.stringify(e.typeKeywords)),this.validateKeyword=Object.assign({},e.validateKeyword),this.validateType=Object.assign({},e.validateType),this.validateFormat=Object.assign({},e.validateFormat),this.errors=Object.assign({},e.errors),this.setSchema(r)}get rootSchema(){return this.__rootSchema}set rootSchema(e){null!=e&&(this.__rootSchema=this.config.compileSchema(this,e))}addRemoteSchema(e,r){this.config.addRemoteSchema(this,e,r)}compileSchema(e){var r;return this.config.compileSchema(this,e,null!==(r=this.rootSchema)&&void 0!==r?r:e)}createSchemaOf(e){return this.config.createSchemaOf(e)}each(e,r,t,n){return this.config.each(this,e,r,t,n)}eachSchema(e,r=this.rootSchema){return this.config.eachSchema(r,e)}getChildSchemaSelection(e,r){return this.config.getChildSchemaSelection(this,e,r)}getSchema(e="#",r,t){return this.config.getSchema(this,e,r,t)}getTemplate(e,r,t){return this.config.getTemplate(this,e,r,t)}isValid(e,r,t){return this.config.isValid(this,e,r,t)}resolveAnyOf(e,r,t){return this.config.resolveAnyOf(this,e,r,t)}resolveAllOf(e,r,t){return this.config.resolveAllOf(this,e,r,t)}resolveRef(e){return this.config.resolveRef(e,this.rootSchema)}resolveOneOf(e,r,t){return this.config.resolveOneOf(this,e,r,t)}setSchema(e){this.rootSchema=e}step(e,r,t,n){return this.config.step(this,e,r,t,n)}validate(e,r,t){return this.config.validate(this,e,r,t)}}function N(e,r,t){t.id=t.id||r,e.remotes[r]=e.compileSchema(t)}var L=__webpack_require__(723);const T="[^?/{}*,()#]+",C=`\nroot ::= ("#" recursion | recursion | (query | pattern) recursion* | "#" SEP? | SEP)\nrecursion ::= (SEP query | pattern)*\n\nquery ::= (ESC escaped ESC | property | all | any | regex) typecheck? lookahead?\nproperty ::= ${T}\nregex ::= "{" [^}]+ "}"\nSEP ::= "/"\nall ::= "**"\nany ::= "*"\n\ntypecheck ::= "?:" ("value" | "boolean" | "string" | "number" | "object" | "array")\nlookahead ::= "?" expression ((andExpr | orExpr) expression)*\nandExpr ::= S? "&&" S?\norExpr ::= S? "||" S?\n\nexpression ::= (exprProperty | ESC escaped ESC) ((isnot | is) (exprProperty | regex | ESC escaped ESC))*\nexprProperty ::= [a-zA-Z0-9-_ $]+\nescaped ::= [^"]+\nis ::= ":"\nisnot ::= ":!"\nESC ::= '"'\n\npattern ::= S? "(" (SEP query | pattern (orPattern? pattern)*)* ")" quantifier? S? lookahead?\nquantifier ::= "+" | "*" | [0-9]+\norPattern ::= S? "," S?\n\nS ::= [ ]*\n`,U=new L.Z.Parser(C),M=e=>U.getAST(e),q=(e,r)=>`${e}/${r}`,D=Object.prototype.toString,V=/Object|Array/,F=e=>V.test(D.call(e));function K(e){return new RegExp(e.text.replace(/(^{|}$)/g,""))}function z(e){return Array.isArray(e)?e.map((function(e,r){return`${r}`})):"[object Object]"===Object.prototype.toString.call(e)?Object.keys(e):[]}const J={mem:[],get(e,r){const t=e[0][r];if(!J.mem.includes(t))return F(t)&&J.mem.push(t),[t,r,e[0],q(e[3],r)]},reset(){J.mem.length=0}},Z={any(e,r){const t=r[0];return z(t).map((e=>[t[e],e,t,q(r[3],e)]))},all(e,r){const t=[r];var n,o;return n=r[0],o=(n,o)=>{const i=J.get(r,o);i&&t.push(...Z.all(e,i))},Array.isArray(n)?n.forEach(o):"[object Object]"===Object.prototype.toString.call(n)&&Object.keys(n).forEach((function(e){o(n[e],e,n)})),t},regex(e,r){const t=K(e),n=r[0];return z(n).filter((e=>t.test(e))).map((e=>[n[e],e,n,q(r[3],e)]))}},W={escaped:(e,r)=>W.property(e,r),property:(e,r)=>{const t=e.text;if(r[0]&&void 0!==r[0][t])return[r[0][t],t,r[0],q(r[3],t)]},typecheck:(e,r)=>{const t=e.text.replace(/^\?:/,"");if("value"===t)return F(r[0])?void 0:r;var n;return(n=r[0],D.call(n).match(/\s([^\]]+)\]/).pop().toLowerCase())===t?r:void 0},lookahead:(e,r)=>{let t=!0,n=!1;return e.children.forEach((e=>{if("expression"===e.type){const o=void 0!==W.expression(e,r);t=!0===n?t||o:t&&o}else n="orExpr"===e.type})),t?r:void 0},expression:(e,r)=>{const t=e.children[0].text,n=e.children[1],o=e.children[2],i=r[0];if(!1!==F(i))return function(e,r,t){if(void 0===r)return void 0!==e;let n;const o=`${e}`;if("regex"===t.type){n=K(t).test(o)}else n=o===t.text;"isnot"===r.type&&(n=!1===n&&void 0!==e);return n}(i[t],n,o)?r:void 0}};function H(e,r,t){const n=[];let o=e;return r.children.forEach((r=>{if("orPattern"===r.type)return n.push(...o),void(o=e);o=G(o,r,t)})),n.push(...o),n}function B(e,r,t){const n=[],o=r.children.find((e=>"quantifier"===e.type)),i=function(e){if(null==e)return 1;if("*"===e||"+"===e)return 1/0;const r=parseInt(e);return isNaN(r)?1:r}(o&&o.text);let a=e;o&&"*"===o.text&&n.push(...a);let s=0;for(;a.length>0&&s<i;)a=H(a,r,t),n.push(...a),s+=1;return n}function G(e,r,t){let n;return n="query"===r.type?function(e,r,t){let n=e;return r.children.forEach((e=>{if(Z[e.type])n=function(e,r,t,n){const o=[];for(let i=0,a=r.length;i<a;i+=1)o.push(...e(t,r[i],t,n));return o}(Z[e.type],n,e,t);else{if(!W[e.type])throw new Error(`Unknown filter ${e.type}`);n=function(e,r,t,n){const o=[];for(let i=0,a=r.length;i<a;i+=1){const a=e(t,r[i],n);a&&o.push(a)}return o}(W[e.type],n,e,t)}})),n}(e,r,t):"pattern"===r.type?B(e,r,t):function(e,r,t){let n=e;return r.children.forEach((e=>n=G(n,e,t))),n}(e,r,t),J.reset(),J.mem.push(e),n}const Y={value:e=>e.map((e=>e[0])),pointer:e=>e.map((e=>e[3])),all:e=>e,map:e=>{const r={};return e.forEach((e=>r[e[3]]=e[0])),r}};var Q;function X(e,r,t=Q.VALUE){if(null==r)return[];""===(r=r.replace(/(\/$)/g,""))&&(r="#");const n=M(r);if(null==n)throw new Error(`empty ast for '${r}'`);if(""!==n.rest)throw new Error(`Failed parsing queryString from: '${n.rest}'`);const o=function(e,r){return J.reset(),J.mem.push(e),G([[e,null,null,"#"]],r)}(e,n);return"function"==typeof t?o.map((e=>t(...e))):Y[t]?Y[t](o):o}!function(e){e.POINTER="pointer",e.VALUE="value",e.ALL="all",e.MAP="map"}(Q||(Q={})),X.POINTER=Q.POINTER,X.VALUE=Q.VALUE,X.ALL=Q.ALL,X.MAP=Q.MAP;const ee=["root","recursion"];function re(e,r=[]){return ee.includes(e.type)?(e.children.forEach((e=>re(e,r))),r):(r.push(e.text),r)}function te(e){if(null==e||""===e)return[];return re(M(e))}const ne=e=>JSON.parse(JSON.stringify(e)),oe=Object.prototype.toString,ie=e=>oe.call(e).match(/\s([^\]]+)\]/).pop().toLowerCase(),ae=new RegExp(`^("[^"]+"|${T})$`),se=["string","number","boolean","null"],le=/^\[\d*\]$/,ue=/^\[(\d+)\]$/,fe=/^".+"$/,ce=/(^\[\d*\]$|^\d+$)/;function pe(e){return parseInt(e.replace(/^(\[|\]$)/,""))}function me(e){return fe.test(e)?e.replace(/(^"|"$)/g,""):e}function de(e,r,t,n){const o=e[0];if(/^\[\]$/.test(r)){o.push(t);const r=o.length-1;return[o[r],r,o,`${e[3]}/${r}}`]}if(null==n&&"object"===ie(o[r])&&"object"===ie(t))return[o[r],r,o,`${e[3]}/${r}}`];if(n===ye.INSERT_ITEMS||null==n&&ue.test(r)){const n=pe(r);return function(e,r,t){e.length<=r?e[r]=t:e.splice(r,0,t)}(o,n,t),[o[n],n,o,`${e[3]}/${n}}`]}if(n===ye.REPLACE_ITEMS||null==n){const n=pe(r);return o[n]=t,[o[n],n,o,`${e[3]}/${n}}`]}throw new Error(`Unknown array index '${r}' with force-option '${n}'`)}var he;function ye(e,r,t,n){if(null==r)return ne(e);if(""===(r=r.replace(/(\/$)/g,"")))return ne(t);const o=ne(e);let i=[[o,null,null,"#"]];const a=te(r),s=a.pop(),l=le.test(s)&&!1===ue.test(s);if(!1===ae.test(s)||l)throw new Error(`Unsupported query '${r}' ending with non-property`);return a.forEach(((e,r)=>{if("__proto__"===e||"prototyped"===e||"constructor"===e)return;if(!1===ae.test(e))return void(i=function(e,r){const t=[];return e.forEach((e=>t.push(...X(e[0],r,Q.ALL)))),t}(i,e));const t=r>=a.length-1?s:a[r+1],o=ce.test(t);i=function(e,r,t,n){return r=me(r),e.filter((e=>!(!Array.isArray(e[0])||!ce.test(r))||!1===se.includes(ie(e[0][r])))).map((e=>{const o=t?[]:{},i=e[0];return Array.isArray(i)?de(e,r,o,n):(i[r]=i[r]||o,[i[r],r,i,`${e[3]}/${r}`])}))}(i,e,o,n)})),i.forEach((e=>{let r=t;"function"===ie(t)&&(r=t(e[3],s,e[0],`${e[3]}/${s}`));const o=e[0];if(Array.isArray(o))de(e,s,r,n);else{const e=me(s);if("__proto__"===e||"prototyped"===e||"constructor"===e)return;o[e]=r}})),o}!function(e){e.REPLACE_ITEMS="replace",e.INSERT_ITEMS="insert"}(he||(he={})),ye.REPLACE_ITEMS=he.REPLACE_ITEMS,ye.INSERT_ITEMS=he.INSERT_ITEMS;const ge={$ref:{type:!1},allOf:{type:!1,definitions:["allOf/*"]},anyOf:{type:!1,definitions:["anyOf/*"]},array:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not","items","items/*","additionalItems"],validationKeywords:["minItems","maxItems","uniqueItems"],keywords:["items","additionalItems","minItems","maxItems","uniqueItems"]},boolean:{type:!0},enum:{type:!1},integer:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minimum","maximum","multipleOf"]},not:{type:!1,definitions:["not"]},number:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minimum","maximum","multipleOf"]},null:{type:!0},object:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not","properties/*","additionalProperties","patternProperties/*","dependencies/*"],validationKeywords:["minProperties","maxProperties","required"],keywords:["properties","additionalProperties","patternProperties","dependencies","minProperties","maxProperties","required"]},oneOf:{type:!1,definitions:["oneOf/*"]},string:{type:!0,definitions:["allOf/*","anyOf/*","oneOf/*","not"],validationKeywords:["minLength","maxLength","pattern"]}},Ee=Object.keys(ge).filter((e=>!1===ge[e].type)),Oe=Object.prototype.hasOwnProperty;function ve(e){if(!1==(r=e,"[object Object]"===Object.prototype.toString.call(r)))return;var r;if(e.enum)return"enum";if(ge[e.type]||Array.isArray(e.type))return e.type;const t=Ee.filter((r=>e[r]));if(1===t.length)return t[0];if(0!==t.length)throw new Error(`Mutiple typeIds [${t.join(", ")}] matched in ${JSON.stringify(e)}`);for(let r=0,t=ge.object.keywords.length;r<t;r+=1){const t=ge.object.keywords[r];if(Oe.call(e,t))return"object"}for(let r=0,t=ge.array.keywords.length;r<t;r+=1){const t=ge.array.keywords[r];if(Oe.call(e,t))return"array"}}function be(e){const r=[],t=ve(e);if(null==t)return r;let n;if(Array.isArray(t)){n={};for(let e=0,r=t.length;e<r;e+=1)Object.assign(n,ge[t[e]])}else n=ge[t];return null==n.definitions||n.definitions.forEach((t=>{X(e,t,((e,t,n,o)=>{(e=>"[object Object]"===Object.prototype.toString.call(e))(e)&&ve(e)&&r.push({pointer:R().join(R().split(o),!1),def:e})}))})),r}function xe(e,r){if(!0===this.callback(e,r))return;be(e).forEach((e=>this.nextTypeDefs(e.def,R().join(r,e.pointer,!1))))}function _e(e,r,t,n="definitions"){const o=r[n];Object.keys(o).forEach((r=>{if(!1!==o[r]&&(i=o[r],"[object Object]"!==Object.prototype.toString.call(i)))var i;else e.nextTypeDefs(o[r],R().join(t,n,r,!1))}))}function Pe(e,r,t="#"){const n={callback:r,nextTypeDefs:xe};n.nextTypeDefs(e,t),null!=e.definitions&&(n.callback=(e,t)=>{r(e,t),null!=e.definitions&&_e(n,e,t)},_e(n,e,t)),null!=e.$defs&&(n.callback=(e,t)=>{r(e,t),null!=e.definitions&&_e(n,e,t)},_e(n,e,t,"$defs"))}const Se=/(#|\/)+$/,Ae=/#$/,$e=/^[^:]+:\/\/[^/]+\//,Re=/\/[^/]*$/,je=/#.*$/;function we(e,r){return null==e&&null==r?"#":null==r?e.replace(Ae,""):null==e?r.replace(Ae,""):"#"===r[0]?`${e.replace(je,"")}${r.replace(Se,"")}`:$e.test(r)?r.replace(Ae,""):`${e.replace(Re,"")}/${r.replace(Ae,"")}`}const Ie=/(#|\/)+$/g,ke=["",null,"#"];const Ne=/(#|\/)+$/g;function Le(e,r,t){if("object"===a(t)&&(t=t.__ref||t.$ref),null==t)return r;let n;const o=t.replace(Ne,"");if(e.remotes[o])return n=e.remotes[o],n&&n.$ref?Le(e,r,n.$ref):n;if(e.ids[t])return n=(0,$.get)(r,e.ids[t]),n&&n.$ref?Le(e,r,n.$ref):n;const i=function(e){if(ke.includes(e))return[];if(-1===(e=e.replace(Ie,"")).indexOf("#"))return[e.replace(Ie,"")];if(0===e.indexOf("#"))return[e.replace(Ie,"")];const r=e.split("#");return r[0]=r[0].replace(Ie,""),r[1]=`#${r[1].replace(Ie,"")}`,r}(t);if(0===i.length)return r;if(1===i.length){if(t=i[0],e.remotes[t])return n=e.remotes[t],Le(e,r,n.$ref);if(e.ids[t])return n=(0,$.get)(r,e.ids[t]),n&&n.$ref?Le(e,r,n.$ref):n}if(2===i.length){const n=i[0];if(t=i[1],e.remotes[n])return e.remotes[n].getRef?e.remotes[n].getRef(t):Le(e,e.remotes[n],t);if(e.ids[n])return Le(e,(0,$.get)(r,e.ids[n]),t)}return n=(0,$.get)(r,e.ids[t]||t),n&&n.$ref?Le(e,r,n.$ref):n}const Te="__compiled",Ce="__ref",Ue=/(#|\/)+$/g;function Me(e,r,t=r,n=!1){if(!0===r||!1===r||void 0===r)return r;if(void 0!==r[Te])return r;const o={ids:{},remotes:e.remotes},i=JSON.stringify(r),a=JSON.parse(i);if(Object.defineProperty(a,Te,{enumerable:!1,value:!0}),Object.defineProperty(a,"getRef",{enumerable:!1,value:Le.bind(null,o,a)}),!1===n&&!1===i.includes("$ref"))return a;a!==t&&Object.defineProperty(a,"$defs",{enumerable:!0,value:Object.assign({},t.definitions,t.$defs,a.definitions,a.$defs)});const s={},l=()=>a;return Pe(a,((e,r)=>{var t;if(e.$id){if(e.$id.startsWith("http")&&/(allOf|anyOf|oneOf)\/\d+$/.test(r)){const n=r.replace(/\/(allOf|anyOf|oneOf)\/\d+$/,""),o=(0,$.get)(a,n);e.$id=null!==(t=o.$id)&&void 0!==t?t:e.$id}o.ids[e.$id.replace(Ue,"")]=r}const n=(r=`#${r}`.replace(/##+/,"#")).replace(/\/[^/]+$/,""),i=r.replace(/\/[^/]+\/[^/]+$/,""),u=we(s[n]||s[i],e.$id);s[r]=u,null==o.ids[u]&&(o.ids[u]=r),e.$ref&&!e[Ce]&&(Object.defineProperty(e,Ce,{enumerable:!1,value:we(u,e.$ref)}),Object.defineProperty(e,"getRoot",{enumerable:!1,value:l}))})),a}function qe(e,r,t,n=e.rootSchema,o="#"){n=e.resolveRef(n),t(n,r,o);const i=a(r);"object"===i?Object.keys(r).forEach((i=>{const a=e.step(i,n,r,o),s=r[i];e.each(s,t,a,`${o}/${i}`)})):"array"===i&&r.forEach(((i,a)=>{const s=e.step(a,n,r,o);e.each(i,t,s,`${o}/${a}`)}))}const De={additionalItemsError:o("AdditionalItemsError"),additionalPropertiesError:o("AdditionalPropertiesError"),anyOfError:o("AnyOfError"),allOfError:o("AllOfError"),constError:o("ConstError"),containsError:o("ContainsError"),containsArrayError:o("ContainsArrayError"),containsAnyError:o("ContainsAnyError"),enumError:o("EnumError"),formatURLError:o("FormatURLError"),formatURIError:o("FormatURIError"),formatURIReferenceError:o("FormatURIReferenceError"),formatURITemplateError:o("FormatURITemplateError"),formatDateError:o("FormatDateaError"),formatDateTimeError:o("FormatDateTimeError"),formatEmailError:o("FormatEmailError"),formatHostnameError:o("FormatHostnameError"),formatIPV4Error:o("FormatIPV4Error"),formatIPV4LeadingZeroError:o("FormatIPV4LeadingZeroError"),formatIPV6Error:o("FormatIPV6Error"),formatIPV6LeadingZeroError:o("FormatIPV6LeadingZeroError"),formatJSONPointerError:o("FormatJSONPointerError"),formatRegExError:o("FormatRegExError"),formatTimeError:o("FormatTimeError"),invalidSchemaError:o("InvalidSchemaError"),invalidDataError:o("InvalidDataError"),invalidTypeError:o("InvalidTypeError"),invalidPropertyNameError:o("InvalidPropertyNameError"),maximumError:o("MaximumError"),maxItemsError:o("MaxItemsError"),maxLengthError:o("MaxLengthError"),maxPropertiesError:o("MaxPropertiesError"),minimumError:o("MinimumError"),minItemsError:o("MinItemsError"),minItemsOneError:o("MinItemsOneError"),minLengthError:o("MinLengthError"),minLengthOneError:o("MinLengthOneError"),minPropertiesError:o("MinPropertiesError"),missingDependencyError:o("MissingDependencyError"),missingOneOfPropertyError:o("MissingOneOfPropertyError"),multipleOfError:o("MultipleOfError"),multipleOneOfError:o("MultipleOneOfError"),noAdditionalPropertiesError:o("NoAdditionalPropertiesError"),notError:o("NotError"),oneOfError:o("OneOfError"),oneOfPropertyError:o("OneOfPropertyError"),patternError:o("PatternError"),patternPropertiesError:o("PatternPropertiesError"),requiredPropertyError:o("RequiredPropertyError"),typeError:o("TypeError"),undefinedValueError:o("UndefinedValueError"),uniqueItemsError:o("UniqueItemsError"),unknownPropertyError:o("UnknownPropertyError"),valueNotEmptyError:o("ValueNotEmptyError")};var Ve=__webpack_require__(481),Fe=__webpack_require__.n(Ve);const Ke=new RegExp("^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\\.[0-9]+)?(([Zz])|([\\+|\\-]([01][0-9]|2[0-3]):[0-5][0-9]))$"),ze=/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,Je=/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,Ze=/^(?=.{1,255}$)[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?(?:\.[0-9A-Za-z](?:(?:[0-9A-Za-z]|-){0,61}[0-9A-Za-z])?)*\.?$/,We=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,He=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,Be=[0,31,28,31,30,31,30,31,31,30,31,30,31],Ge=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Ye=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,Qe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,Xe=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,er={date:(e,r,t,n)=>{if("string"!=typeof t)return;const o=t.match(We);if(!o)return De.formatDateTimeError({value:t,pointer:n});const i=+o[1],a=+o[2],s=+o[3];return a>=1&&a<=12&&s>=1&&s<=(2==a&&(i%4==0&&(i%100!=0||i%400==0))?29:Be[a])?void 0:De.formatDateError({value:t,pointer:n})},"date-time":(e,r,t,n)=>{if("string"==typeof t)return""===t||Ke.test(t)?"Invalid Date"===new Date(t).toString()?De.formatDateTimeError({value:t,pointer:n}):void 0:De.formatDateTimeError({value:t,pointer:n})},email:(e,r,t,n)=>{if("string"!=typeof t)return;if('"'===t[0])return De.formatEmailError({value:t,pointer:n});const[o,i,...a]=t.split("@");return!o||!i||0!==a.length||o.length>64||i.length>253||"."===o[0]||o.endsWith(".")||o.includes("..")?De.formatEmailError({value:t,pointer:n}):/^[a-z0-9.-]+$/i.test(i)&&/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+$/i.test(o)&&i.split(".").every((e=>/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/i.test(e)))?void 0:De.formatEmailError({value:t,pointer:n})},hostname:(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ze.test(t))return De.formatHostnameError({value:t,pointer:n})},ipv4:(e,r,t,n)=>{if("string"==typeof t&&""!==t){if(t&&"0"===t[0])return De.formatIPV4LeadingZeroError({value:t,pointer:n});if(!(t.length<=15&&ze.test(t)))return De.formatIPV4Error({value:t,pointer:n})}},ipv6:(e,r,t,n)=>{if("string"==typeof t&&""!==t){if(t&&"0"===t[0])return De.formatIPV6LeadingZeroError({value:t,pointer:n});if(!(t.length<=45&&Je.test(t)))return De.formatIPV6Error({value:t,pointer:n})}},"json-pointer":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ge.test(t))return De.formatJSONPointerError({value:t,pointer:n})},"relative-json-pointer":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Ye.test(t))return De.formatJSONPointerError({value:t,pointer:n})},regex:(e,r,t,n)=>{if("string"==typeof t&&!1===/\\Z$/.test(t)){try{return void new RegExp(t)}catch(e){}return De.formatRegExError({value:t,pointer:n})}if("object"!=typeof t&&"number"!=typeof t&&!Array.isArray(t))return De.formatRegExError({value:t,pointer:n})},time:(e,r,t,n)=>{if("string"!=typeof t)return;const o=t.match(He);if(!o)return De.formatDateTimeError({value:t,pointer:n});const i=+o[1],a=+o[2],s=+o[3],l=!!o[5];return(i<=23&&a<=59&&s<=59||23==i&&59==a&&60==s)&&l?void 0:De.formatTimeError({value:t,pointer:n})},uri:(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Fe().isUri(t))return De.formatURIError({value:t,pointer:n})},"uri-reference":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Qe.test(t))return De.formatURIReferenceError({value:t,pointer:n})},"uri-template":(e,r,t,n)=>{if("string"==typeof t&&""!==t&&!Xe.test(t))return De.formatURITemplateError({value:t,pointer:n})},url:(e,r,t,n)=>{if(""!==t&&!Fe().isWebUri(t))return De.formatURLError({value:t,pointer:n})}};const rr={addOptionalProps:!0,removeInvalidData:!1};let tr;function nr(e,r){const{$ref:t}=e;if(null==t)return!0;return(null==tr[r]||null==tr[r][t]?0:tr[r][t])<c.GET_TEMPLATE_RECURSION_LIMIT}function or(e,r,t){if(null==t)throw new Error(`missing pointer ${t}`);const{$ref:n}=r;return null==n?r:(tr[t]=tr[t]||{},tr[t][n]=tr[t][n]||0,tr[t][n]+=1,e.resolveRef(r))}function ir(e,r,t,n){if("object"!==a(r))return Object.assign({pointer:n},r);if(!1===nr(r,n)&&null==t)return!1;let o=d(or(e,r,n));if(Array.isArray(r.anyOf)&&r.anyOf.length>0){if(nr(r.anyOf[0],`${n}/anyOf/0`)){const t=or(e,r.anyOf[0],`${n}/anyOf/0`);o=E(o,t),o.pointer=r.anyOf[0].$ref||o.pointer}delete o.anyOf}if(Array.isArray(r.allOf)){for(let t=0,i=r.allOf.length;t<i;t+=1)nr(r.allOf[t],`${n}/allOf/${t}`)&&(o=E(o,or(e,r.allOf[t],`${n}/allOf/${t}`)),o.pointer=r.allOf[t].$ref||o.pointer);delete o.allOf}return o.pointer=o.pointer||r.$ref||n,o}const ar=e=>e&&"object"==typeof e;function sr(e,r,t,n,o){if(null==t)throw new Error(`getTemplate: missing schema for data: ${JSON.stringify(r)}`);if(null==n)throw new Error("Missing pointer");let i=ir(e,t,r,n);if(!ar(i))return;if(n=i.pointer,null==i?void 0:i.const)return i.const;if(Array.isArray(i.oneOf))if(function(e){switch(a(e)){case"string":case"array":return 0===e.length;case"null":case"undefined":return!0;case"object":return 0===Object.keys(e).length;default:return!1}}(r)){const e=i.oneOf[0].type||i.type||i.const&&typeof i.const||a(r);i=Object.assign(Object.assign({},i.oneOf[0]),{type:e})}else{const t=P(e,r,i);if(s(t)){if(null!=r&&!0!==o.removeInvalidData)return r;i=i.oneOf[0],r=void 0}else i=t}if(!ar(i)||null==i.type)return;const l=Array.isArray(i.type)?function(e,r,t){if(null==r){if(null!=t){const r=a(t);if(e.includes(r))return r}return e[0]}const n=a(r);if(e.includes(n))return n;return e[0]}(i.type,r,i.default):i.type,u=a(r);if(null==r||u===l||"number"===u&&"integer"===l||(r=function(e,r){if("string"===e)return JSON.stringify(r);if("string"!=typeof r)return null;try{if(typeof(r=JSON.parse(r))===e)return r}catch(e){}return null}(l,r)),null==lr[l]){if(o.removeInvalidData)return;return r}return lr[l](e,i,r,n,o)}const lr={null:(e,r,t)=>ur(r,t,null),string:(e,r,t)=>ur(r,t,""),number:(e,r,t)=>ur(r,t,0),integer:(e,r,t)=>ur(r,t,0),boolean:(e,r,t)=>ur(r,t,!1),object:(e,r,t,n,o)=>{var i;const l=void 0===r.default?{}:r.default,u={},f=null!==(i=r.required)&&void 0!==i?i:[];if(r.properties&&Object.keys(r.properties).forEach((i=>{const a=null==t||null==t[i]?l[i]:t[i],s=f.includes(i);(null!=a||s||o.addOptionalProps)&&(u[i]=sr(e,a,r.properties[i],`${n}/properties/${i}`,o))})),r.dependencies&&Object.keys(r.dependencies).forEach((i=>{if(void 0===u[i])return;const l=r.dependencies[i];if(Array.isArray(l))return void l.forEach((t=>{u[t]=sr(e,u[t],r.properties[t],`${n}/properties/${t}`,o)}));if("object"!==a(l))return;const f=sr(e,t,Object.assign(Object.assign({},l),{type:"object"}),`${n}/dependencies/${i}`,o);f&&!s(f)&&Object.assign(u,f)})),t&&Object.keys(t).forEach((e=>null==u[e]&&(u[e]=t[e]))),r.if&&(r.then||r.else)){const t=e.isValid(u,r.if);if(t&&r.then){const t=e.getTemplate(u,Object.assign({type:"object"},r.then),o);Object.assign(u,t)}else if(!t&&r.else){const t=e.getTemplate(u,Object.assign({type:"object"},r.else),o);Object.assign(u,t)}}return u},array:(e,r,t,n,o)=>{var i,l,u;const f=void 0===r.default?[]:r.default;r.minItems=r.minItems||0;const c=t||[];if(null==r.items)return c;if(Array.isArray(r.items)){for(let t=0,a=Math.max(null!==(i=r.minItems)&&void 0!==i?i:0,null!==(u=null===(l=r.items)||void 0===l?void 0:l.length)&&void 0!==u?u:0);t<a;t+=1)c[t]=sr(e,null==c[t]?f[t]:c[t],r.items[t],`${n}/items/${t}`,o);return c}if("object"!==a(r.items))return c;const p=ir(e,r.items,t,n);if(!1===p)return c;if(n=p.pointer||n,p.oneOf&&0===c.length){const t=p.oneOf[0];for(let i=0;i<r.minItems;i+=1)c[i]=sr(e,null==c[i]?f[i]:c[i],t,`${n}/oneOf/0`,o);return c}if(p.oneOf&&c.length>0){const t=Math.max(r.minItems,c.length);for(let r=0;r<t;r+=1){let t=null==c[r]?f[r]:c[r],i=P(e,t,p);null==i||s(i)?null!=t&&!0!==o.removeInvalidData?c[r]=t:(t=void 0,i=p.oneOf[0],c[r]=sr(e,t,i,`${n}/oneOf/${r}`,o)):c[r]=sr(e,t,i,`${n}/oneOf/${r}`,o)}return c}if(p.type){for(let t=0,i=Math.max(r.minItems,c.length);t<i;t+=1)c[t]=sr(e,null==c[t]?f[t]:c[t],p,`${n}/items`,o);return c}return c}};function ur(e,r,t){return null!=r?r:e.const?e.const:void 0===e.default&&Array.isArray(e.enum)?e.enum[0]:void 0===e.default?t:e.default}const fr=(e,r,t=e.rootSchema,n=rr)=>(tr={mi:{}},sr(e,r,t,"#",n));function cr(e,r,t=e.rootSchema,n="#"){return 0===e.validate(r,t,n).length}function pr(e,r){const t=typeof e;if(t!==typeof r)return!1;if(Array.isArray(e)){if(!Array.isArray(r))return!1;const t=e.length;if(t!==r.length)return!1;for(let n=0;n<t;n++)if(!pr(e[n],r[n]))return!1;return!0}if("object"===t){if(!e||!r)return e===r;const t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(const n of t)if(!pr(e[n],r[n]))return!1;return!0}return e===r}function mr(e){const r=[];let t=0;const n=e.length;for(;t<n;){const o=e.charCodeAt(t++);if(o>=55296&&o<=56319&&t<n){const n=e.charCodeAt(t++);56320==(64512&n)?r.push(((1023&o)<<10)+(1023&n)+65536):(r.push(o),t--)}else r.push(o)}return r}const dr=c.floatingPointPrecision,hr=Object.prototype.hasOwnProperty,yr=(e,r)=>!(void 0===e[r]||!hr.call(e,r)),gr={additionalProperties:(e,r,t,n)=>{if(!0===r.additionalProperties||null==r.additionalProperties)return;if("object"===a(r.patternProperties)&&!1===r.additionalProperties)return;const o=[];let i=Object.keys(t).filter((e=>!1===c.propertyBlacklist.includes(e)));const l=Object.keys(r.properties||{});if("object"===a(r.patternProperties)){const e=Object.keys(r.patternProperties).map((e=>new RegExp(e)));i=i.filter((r=>{for(let t=0;t<e.length;t+=1)if(e[t].test(r))return!1;return!0}))}for(let a=0,u=i.length;a<u;a+=1){const u=i[a];if(-1===l.indexOf(u)){const f="object"==typeof r.additionalProperties;if(f&&Array.isArray(r.additionalProperties.oneOf)){const f=e.resolveOneOf(t[u],r.additionalProperties,`${n}/${u}`);s(f)?o.push(e.errors.additionalPropertiesError({schema:r.additionalProperties,property:i[a],properties:l,pointer:n,errors:f.data.errors})):o.push(...e.validate(t[u],f,n))}else f?o.push(...e.validate(t[u],r.additionalProperties,`${n}/${u}`)):o.push(e.errors.noAdditionalPropertiesError({property:i[a],properties:l,pointer:n}))}}return o},allOf:(e,r,t,n)=>{if(!1===Array.isArray(r.allOf))return;const o=[];return r.allOf.forEach((r=>{o.push(...e.validate(t,r,n))})),o},anyOf:(e,r,t,n)=>{if(!1!==Array.isArray(r.anyOf)){for(let n=0;n<r.anyOf.length;n+=1)if(e.isValid(t,r.anyOf[n]))return;return e.errors.anyOfError({anyOf:r.anyOf,value:t,pointer:n})}},dependencies:(e,r,t,n)=>{if("object"!==a(r.dependencies))return;const o=[];return Object.keys(t).forEach((i=>{if(void 0===r.dependencies[i])return;if(!0===r.dependencies[i])return;if(!1===r.dependencies[i])return void o.push(e.errors.missingDependencyError({pointer:n}));let s;const l=a(r.dependencies[i]);if("array"===l)s=r.dependencies[i].filter((e=>void 0===t[e])).map((r=>e.errors.missingDependencyError({missingProperty:r,pointer:n})));else{if("object"!==l)throw new Error(`Invalid dependency definition for ${n}/${i}. Must be list or schema`);s=e.validate(t,r.dependencies[i],n)}o.push(...s)})),o.length>0?o:void 0},enum:(e,r,t,n)=>{const o=a(t);if("object"===o||"array"===o){const e=JSON.stringify(t);for(let t=0;t<r.enum.length;t+=1)if(JSON.stringify(r.enum[t])===e)return}else if(r.enum.includes(t))return;return e.errors.enumError({values:r.enum,value:t,pointer:n})},format:(e,r,t,n)=>{if(e.validateFormat[r.format]){return e.validateFormat[r.format](e,r,t,n)}},items:(e,r,t,n)=>{if(!1===r.items){if(Array.isArray(t)&&0===t.length)return;return e.errors.invalidDataError({pointer:n,value:t})}const o=[];for(let i=0;i<t.length;i+=1){const a=t[i],l=e.step(i,r,t,n);if(s(l))return[l];const u=e.validate(a,l,`${n}/${i}`);o.push(...u)}return o},maximum:(e,r,t,n)=>{if(!isNaN(r.maximum))return r.maximum&&r.maximum<t||r.maximum&&!0===r.exclusiveMaximum&&r.maximum===t?e.errors.maximumError({maximum:r.maximum,length:t,pointer:n}):void 0},maxItems:(e,r,t,n)=>{if(!isNaN(r.maxItems))return r.maxItems<t.length?e.errors.maxItemsError({maximum:r.maxItems,length:t.length,pointer:n}):void 0},maxLength:(e,r,t,n)=>{if(isNaN(r.maxLength))return;const o=mr(t).length;return r.maxLength<o?e.errors.maxLengthError({maxLength:r.maxLength,length:o,pointer:n}):void 0},maxProperties:(e,r,t,n)=>{const o=Object.keys(t).length;if(!1===isNaN(r.maxProperties)&&r.maxProperties<o)return e.errors.maxPropertiesError({maxProperties:r.maxProperties,length:o,pointer:n})},minLength:(e,r,t,n)=>{if(isNaN(r.minLength))return;const o=mr(t).length;return r.minLength>o?1===r.minLength?e.errors.minLengthOneError({minLength:r.minLength,length:o,pointer:n}):e.errors.minLengthError({minLength:r.minLength,length:o,pointer:n}):void 0},minimum:(e,r,t,n)=>{if(!isNaN(r.minimum))return r.minimum>t||!0===r.exclusiveMinimum&&r.minimum===t?e.errors.minimumError({minimum:r.minimum,length:t,pointer:n}):void 0},minItems:(e,r,t,n)=>{if(!isNaN(r.minItems))return r.minItems>t.length?1===r.minItems?e.errors.minItemsOneError({minItems:r.minItems,length:t.length,pointer:n}):e.errors.minItemsError({minItems:r.minItems,length:t.length,pointer:n}):void 0},minProperties:(e,r,t,n)=>{if(isNaN(r.minProperties))return;const o=Object.keys(t).length;return r.minProperties>o?e.errors.minPropertiesError({minProperties:r.minProperties,length:o,pointer:n}):void 0},multipleOf:(e,r,t,n)=>{if(!isNaN(r.multipleOf))return t*dr%(r.multipleOf*dr)/dr!=0?e.errors.multipleOfError({multipleOf:r.multipleOf,value:t,pointer:n}):void 0},not:(e,r,t,n)=>{const o=[];return 0===e.validate(t,r.not,n).length&&o.push(e.errors.notError({value:t,not:r.not,pointer:n})),o},oneOf:(e,r,t,n)=>{if(!1!==Array.isArray(r.oneOf))return s(r=e.resolveOneOf(t,r,n))?r:void 0},pattern:(e,r,t,n)=>{if(!1===new RegExp(r.pattern,"u").test(t))return e.errors.patternError({pattern:r.pattern,description:r.patternExample||r.pattern,received:t,pointer:n})},patternProperties:(e,r,t,n)=>{const o=r.properties||{},i=r.patternProperties;if("object"!==a(i))return;const s=[],l=Object.keys(t),u=Object.keys(i).map((e=>({regex:new RegExp(e),patternSchema:i[e]})));return l.forEach((a=>{let l=!1;for(let r=0,o=u.length;r<o;r+=1)if(u[r].regex.test(a)){l=!0;const o=e.validate(t[a],u[r].patternSchema,`${n}/${a}`);o&&o.length>0&&s.push(...o)}o[a]||!1===l&&!1===r.additionalProperties&&s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}))})),s},properties:(e,r,t,n)=>{const o=[],i=Object.keys(r.properties||{});for(let a=0;a<i.length;a+=1){const s=i[a];if(yr(t,s)){const i=e.step(s,r,t,n),a=e.validate(t[s],i,`${n}/${s}`);o.push(...a)}}return o},propertiesRequired:(e,r,t,n)=>{const o=[],i=Object.keys(r.properties||{});for(let a=0;a<i.length;a+=1){const s=i[a];if(void 0===t[s])o.push(e.errors.requiredPropertyError({key:s,pointer:n}));else{const i=e.step(s,r,t,n),a=e.validate(t[s],i,`${n}/${s}`);o.push(...a)}}return o},required:(e,r,t,n)=>{if(!1!==Array.isArray(r.required))return r.required.map((r=>{if(!yr(t,r))return e.errors.requiredPropertyError({key:r,pointer:n})}))},requiredNotEmpty:(e,r,t,n)=>{if(!1!==Array.isArray(r.required))return r.required.map((r=>{if(null==t[r]||""===t[r])return e.errors.valueNotEmptyError({property:r,pointer:`${n}/${r}`})}))},uniqueItems:(e,r,t,n)=>{if(!1===(Array.isArray(t)&&r.uniqueItems))return;const o=[];return t.forEach(((r,i)=>{for(let a=i+1;a<t.length;a+=1)pr(r,t[a])&&o.push(e.errors.uniqueItemsError({pointer:n,itemPointer:`${n}/${i}`,duplicatePointer:`${n}/${a}`,value:JSON.stringify(r)}))})),o}},Er=gr,Or=Object.assign(Object.assign({},Er),{contains:(e,r,t,n)=>{if(!1===r.contains)return e.errors.containsArrayError({pointer:n,value:t});if(!0===r.contains)return Array.isArray(t)&&0===t.length?e.errors.containsAnyError({pointer:n}):void 0;if("object"===a(r.contains)){for(let n=0;n<t.length;n+=1)if(e.isValid(t[n],r.contains))return;return e.errors.containsError({pointer:n,schema:JSON.stringify(r.contains)})}},exclusiveMaximum:(e,r,t,n)=>{if(!isNaN(r.exclusiveMaximum))return r.exclusiveMaximum<=t?e.errors.maximumError({maximum:r.exclusiveMaximum,length:t,pointer:n}):void 0},exclusiveMinimum:(e,r,t,n)=>{if(!isNaN(r.exclusiveMinimum))return r.exclusiveMinimum>=t?e.errors.minimumError({minimum:r.exclusiveMinimum,length:t,pointer:n}):void 0},if:(e,r,t,n)=>{if(null==r.if)return;const o=e.validate(t,r.if,n);return 0===o.length&&r.then?e.validate(t,r.then,n):0!==o.length&&r.else?e.validate(t,r.else,n):void 0},maximum:(e,r,t,n)=>{if(!isNaN(r.maximum))return r.maximum&&r.maximum<t?e.errors.maximumError({maximum:r.maximum,length:t,pointer:n}):void 0},minimum:(e,r,t,n)=>{if(!isNaN(r.minimum))return r.minimum>t?e.errors.minimumError({minimum:r.minimum,length:t,pointer:n}):void 0},patternProperties:(e,r,t,n)=>{const o=r.properties||{},i=r.patternProperties;if("object"!==a(i))return;const s=[],l=Object.keys(t),u=Object.keys(i).map((e=>({regex:new RegExp(e),patternSchema:i[e]})));return l.forEach((a=>{let l=!1;for(let r=0,o=u.length;r<o;r+=1)if(u[r].regex.test(a)){if(l=!0,!1===u[r].patternSchema)return void s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}));const o=e.validate(t[a],u[r].patternSchema,`${n}/${a}`);o&&o.length>0&&s.push(...o)}o[a]||!1===l&&!1===r.additionalProperties&&s.push(e.errors.patternPropertiesError({key:a,pointer:n,patterns:Object.keys(i).join(",")}))})),s},propertyNames:(e,r,t,n)=>{if(!1===r.propertyNames){if(0===Object.keys(t).length)return;return e.errors.invalidPropertyNameError({property:Object.keys(t),pointer:n,value:t})}if(!0===r.propertyNames)return;if("object"!==a(r.propertyNames))return;const o=[],i=Object.keys(t),s=Object.assign(Object.assign({},r.propertyNames),{type:"string"});return i.forEach((r=>{const i=e.validate(r,s,`${n}/${r}`);i.length>0&&o.push(e.errors.invalidPropertyNameError({property:r,pointer:n,validationError:i[0],value:t[r]}))})),o}}),vr=Or;function br(e,r,t=e.rootSchema,n="#"){let o=!1,i=d(t);for(let a=0;a<t.anyOf.length;a+=1){const s=e.resolveRef(t.anyOf[a]);e.isValid(r,t.anyOf[a],n)&&(o=!0,i=E(i,s))}return!1===o?De.anyOfError({value:r,pointer:n,anyOf:JSON.stringify(t.anyOf)}):(delete i.anyOf,i)}function xr(e){const r={type:a(e)};return"object"===r.type&&(r.properties={},Object.keys(e).forEach((t=>r.properties[t]=xr(e[t])))),"array"===r.type&&1===e.length?r.items=xr(e[0]):"array"===r.type&&(r.items=e.map(xr)),r}function _r(e,r,t=e.rootSchema){const n=e.step(r,t,{},"#");return s(n)?"one-of-error"===n.code?n.data.oneOf.map((r=>e.resolveRef(r))):n:[n]}const Pr={array:(e,r,t,n,o)=>{const i=a(t.items);if("object"===i)return Array.isArray(t.items.oneOf)?e.resolveOneOf(n[r],t.items,o):Array.isArray(t.items.anyOf)?e.resolveAnyOf(n[r],t.items,o):Array.isArray(t.items.allOf)?e.resolveAllOf(n[r],t.items,o):e.resolveRef(t.items);if("array"===i){if(!0===t.items[r])return xr(n[r]);if(!1===t.items[r])return De.invalidDataError({key:r,value:n[r],pointer:o});if(t.items[r])return e.resolveRef(t.items[r]);if(!1===t.additionalItems)return De.additionalItemsError({key:r,value:n[r],pointer:o});if(!0===t.additionalItems||void 0===t.additionalItems)return xr(n[r]);if("object"===a(t.additionalItems))return t.additionalItems;throw new Error(`Invalid schema ${JSON.stringify(t,null,4)} for ${JSON.stringify(n,null,4)}`)}return!1!==t.additionalItems&&n[r]?xr(n[r]):new Error(`Invalid array schema for ${r} at ${o}`)},object:(e,r,t,n,o)=>{if(Array.isArray(t.oneOf)){const r=e.resolveOneOf(n,t,o);if(s(t=E(t,r)))return t}if(Array.isArray(t.anyOf)&&s(t=e.resolveAnyOf(n,t,o)))return t;if(Array.isArray(t.allOf)&&s(t=e.resolveAllOf(n,t,o)))return t;let i;if(t.properties&&void 0!==t.properties[r]){if(i=e.resolveRef(t.properties[r]),s(i))return i;if(i&&Array.isArray(i.oneOf)){let t=e.resolveOneOf(n[r],i,`${o}/${r}`);const a=i.oneOf.findIndex((e=>e===t));return t=JSON.parse(JSON.stringify(t)),t.variableSchema=!0,t.oneOfIndex=a,t.oneOfSchema=i,t}if(i)return i}const{dependencies:l}=t;if("object"===a(l)){const t=Object.keys(l).filter((e=>"object"===a(l[e])));for(let i=0,a=t.length;i<a;i+=1){const a=t[i],u=Sr(e,r,l[a],n,`${o}/${a}`);if(!s(u))return u}}if(t.if&&(t.then||t.else)){const i=e.isValid(n,t.if);if(i&&t.then){const i=Sr(e,r,t.then,n,o);if("string"==typeof i.type&&"error"!==i.type)return i}if(!i&&t.else){const i=Sr(e,r,t.else,n,o);if("string"==typeof i.type&&"error"!==i.type)return i}}if("object"===a(t.patternProperties)){let e;const n=Object.keys(t.patternProperties);for(let o=0,i=n.length;o<i;o+=1)if(e=new RegExp(n[o]),e.test(r))return t.patternProperties[n[o]]}return"object"===a(t.additionalProperties)?t.additionalProperties:!0===t.additionalProperties?xr(n[r]):De.unknownPropertyError({property:r,value:n,pointer:`${o}`})}};function Sr(e,r,t,n,o="#"){if(Array.isArray(t.type)){const i=a(n);return t.type.includes(i)?Pr[i](e,`${r}`,t,n,o):e.errors.typeError({value:n,pointer:o,expected:t.type,received:i})}const i=t.type||a(n),s=Pr[i];return s?s(e,`${r}`,t,n,o):new Error(`Unsupported schema type ${t.type} for key ${r}`)}const Ar={array:(e,r,t,n)=>e.typeKeywords.array.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),object:(e,r,t,n)=>e.typeKeywords.object.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),string:(e,r,t,n)=>e.typeKeywords.string.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),integer:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),number:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),boolean:(e,r,t,n)=>e.typeKeywords.boolean.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),null:(e,r,t,n)=>e.typeKeywords.null.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n)))};var $r=__webpack_require__(63),Rr=__webpack_require__.n($r);function jr(e,r,t=e.rootSchema,n="#"){if("boolean"===a(t=e.resolveRef(t)))return t?[]:[e.errors.invalidDataError({value:r,pointer:n})];if(s(t))return[t];if(void 0!==t.const)return Rr()(t.const,r)?[]:[e.errors.constError({value:r,expected:t.const,pointer:n})];const o=function(e,r){const t=a(e);return"number"===t&&("integer"===r||Array.isArray(r)&&r.includes("integer"))?Number.isInteger(e)||isNaN(e)?"integer":"number":t}(r,t.type),i=t.type||o;if(!(o===i||Array.isArray(i)&&i.includes(o)))return[e.errors.typeError({received:o,expected:i,value:r,pointer:n})];if(null==e.validateType[o])return[e.errors.invalidTypeError({receivedType:o,pointer:n})];return f(e.validateType[o](e,t,r,n)).filter(l)}const wr={typeKeywords:{array:["allOf","anyOf","contains","enum","if","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["allOf","anyOf","enum","not","oneOf"],object:["additionalProperties","allOf","anyOf","dependencies","enum","format","if","maxProperties","minProperties","not","oneOf","patternProperties","properties","propertyNames","required"],string:["allOf","anyOf","enum","format","if","maxLength","minLength","not","oneOf","pattern"],number:["allOf","anyOf","enum","exclusiveMaximum","exclusiveMinimum","format","if","maximum","minimum","multipleOf","not","oneOf"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:vr,validateType:Ar,validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:Me,createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Ir extends k{constructor(e,r={}){super(E(wr,r),e)}}const kr=Object.assign(Object.assign({},wr),{resolveOneOf:P,resolveRef:A});class Nr extends k{constructor(e,r={}){super(E(kr,r),e)}}class Lr{constructor(e,r){this.core=new Nr(e),this.schema=e,this.data=r,this.cache={}}updateData(e){this.data=e,this.cache={}}updateSchema(e){this.schema=e,this.core.setSchema(e),this.cache={}}get(e,r){if(r){const t=w(this.core,e,r,this.schema);return d(t)}if("#"===e)return this.schema;if(this.cache[e])return this.cache[e];const t=R().join(e,"..");let n=this.cache[t];null==n&&(n=w(this.core,t,this.data,this.schema),!0!==n.variableSchema&&(this.cache[t]=d(n)));const o=R().split(e).pop();let i=w(this.core,o,R().get(this.data,t),this.cache[t]);return i=d(i),!0!==i.variableSchema&&(this.cache[e]=i),i}}function Tr(e,r,t){const{schema:n,pointer:o,onError:i}=Object.assign({schema:e.rootSchema,pointer:"#"},t);let a=e.validate(r,n,o);if(i){a=f(a);const e=function(e){return function r(t){return Array.isArray(t)?((t=f(t)).forEach(r),t):(s(t)&&e(t),t)}}(i);for(let r=0;r<a.length;r+=1)a[r]instanceof Promise?a[r].then(e):s(a[r])&&i(a[r])}return Promise.all(a).then(f).then((e=>e.filter(u))).catch((e=>{throw console.log("Failed resolving promises",e.message),console.log(e.stack),e}))}const Cr="__compiled",Ur="__ref",Mr=/(#|\/)+$/g;const qr={typeKeywords:{array:["allOf","anyOf","enum","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["enum","not","allOf","anyOf","oneOf"],object:["additionalProperties","dependencies","enum","format","minProperties","maxProperties","patternProperties","properties","required","not","oneOf","allOf","anyOf"],string:["allOf","anyOf","enum","format","maxLength","minLength","not","oneOf","pattern"],number:["allOf","anyOf","enum","format","maximum","minimum","multipleOf","not","oneOf"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:Er,validateType:{array:(e,r,t,n)=>e.typeKeywords.array.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),object:(e,r,t,n)=>e.typeKeywords.object.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),string:(e,r,t,n)=>e.typeKeywords.string.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),integer:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),number:(e,r,t,n)=>e.typeKeywords.number.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),boolean:(e,r,t,n)=>e.typeKeywords.boolean.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n))),null:(e,r,t,n)=>e.typeKeywords.null.filter((e=>r&&null!=r[e])).map((o=>e.validateKeyword[o](e,r,t,n)))},validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:function(e,r,t=r,n=!1){if(!r||void 0!==r[Cr])return r;const o={ids:{},remotes:e.remotes},i=JSON.stringify(r),a=JSON.parse(i);if(Object.defineProperty(a,Cr,{enumerable:!1,value:!0}),Object.defineProperty(a,"getRef",{enumerable:!1,value:Le.bind(null,o,a)}),!1===n&&!1===i.includes("$ref"))return a;r!==t&&Object.defineProperty(a,"definitions",{enumerable:!1,value:Object.assign({},t.definitions,t.$defs,r.definitions,r.$defs)});const s={},l=()=>a;return Pe(a,((e,r)=>{var t;if(e.id){if(e.id.startsWith("http")&&/(allOf|anyOf|oneOf)\/\d+$/.test(r)){const n=r.replace(/\/(allOf|anyOf|oneOf)\/\d+$/,""),o=(0,$.get)(a,n);e.id=null!==(t=o.id)&&void 0!==t?t:e.id}o.ids[e.id.replace(Mr,"")]=r}const n=(r=`#${r}`.replace(/##+/,"#")).replace(/\/[^/]+$/,""),i=r.replace(/\/[^/]+\/[^/]+$/,""),u=we(s[n]||s[i],e.id);s[r]=u,null==o.ids[u]&&(o.ids[u]=r),e.$ref&&!e[Ur]&&(Object.defineProperty(e,Ur,{enumerable:!1,value:we(u,e.$ref)}),Object.defineProperty(e,"getRoot",{enumerable:!1,value:l}))})),a},createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Dr extends k{constructor(e,r={}){super(E(qr,r),e)}}const Vr={typeKeywords:{array:["allOf","anyOf","contains","enum","if","items","maxItems","minItems","not","oneOf","uniqueItems"],boolean:["allOf","anyOf","enum","not","oneOf"],object:["additionalProperties","allOf","anyOf","dependencies","enum","format","if","maxProperties","minProperties","not","oneOf","patternProperties","properties","propertyNames","required"],string:["allOf","anyOf","enum","format","if","maxLength","minLength","not","oneOf","pattern"],number:["enum","exclusiveMaximum","exclusiveMinimum","format","maximum","minimum","multipleOf","not","oneOf","allOf","anyOf","if"],null:["allOf","anyOf","enum","format","not","oneOf"]},validateKeyword:vr,validateType:Ar,validateFormat:er,errors:De,addRemoteSchema:N,compileSchema:Me,createSchemaOf:xr,each:qe,eachSchema:Pe,getChildSchemaSelection:_r,getSchema:w,getTemplate:fr,isValid:cr,resolveAllOf:b,resolveAnyOf:br,resolveOneOf:m,resolveRef:S,step:Sr,validate:jr};class Fr extends k{constructor(e,r={}){super(E(Vr,r),e)}}const Kr={strings:e}})(),__webpack_exports__})()));
|
|
@@ -195,7 +195,7 @@ const formatValidators = {
|
|
|
195
195
|
if (value === "" || validUrl.isWebUri(value)) {
|
|
196
196
|
return undefined;
|
|
197
197
|
}
|
|
198
|
-
return errors.
|
|
198
|
+
return errors.formatURLError({ value, pointer });
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
201
|
export default formatValidators;
|
package/lib/validation/format.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "json-schema-library",
|
|
3
|
-
"version": "7.4.
|
|
3
|
+
"version": "7.4.7",
|
|
4
4
|
"description": "Customizable and hackable json-validator and json-schema utilities for traversal, data generation and validation",
|
|
5
5
|
"module": "dist/module/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|