ngx-material-entity 15.1.5 → 15.1.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.
Files changed (54) hide show
  1. package/classes/base.builder.d.ts +2 -0
  2. package/components/input/input.component.d.ts +141 -18
  3. package/components/input/input.module.d.ts +4 -1
  4. package/components/table/table-data.builder.d.ts +15 -4
  5. package/components/table/table-data.d.ts +4 -4
  6. package/decorators/array/array-decorator-internal.data.d.ts +12 -1
  7. package/decorators/array/array-decorator.data.d.ts +27 -5
  8. package/decorators/base/decorator-types.enum.d.ts +3 -1
  9. package/decorators/has-many/has-many-decorator-internal.data.d.ts +17 -0
  10. package/decorators/has-many/has-many-decorator.data.d.ts +38 -0
  11. package/decorators/has-many/has-many.decorator.d.ts +9 -0
  12. package/encapsulation/lodash.utilities.d.ts +2 -2
  13. package/esm2020/classes/base.builder.mjs +3 -1
  14. package/esm2020/classes/entity.model.mjs +2 -3
  15. package/esm2020/components/confirm-dialog/confirm-dialog-data.builder.mjs +3 -3
  16. package/esm2020/components/edit-page/page-edit-data.builder.mjs +4 -4
  17. package/esm2020/components/input/array/array-date-input/array-date-input.component.mjs +3 -3
  18. package/esm2020/components/input/array/array-date-range-input/array-date-range-input.component.mjs +3 -3
  19. package/esm2020/components/input/array/array-date-time-input/array-date-time-input.component.mjs +3 -3
  20. package/esm2020/components/input/boolean/boolean-dropdown-input/boolean-dropdown-input.component.mjs +3 -3
  21. package/esm2020/components/input/date/date-time-input/date-time-input.component.mjs +3 -3
  22. package/esm2020/components/input/input.component.mjs +469 -71
  23. package/esm2020/components/input/input.module.mjs +16 -4
  24. package/esm2020/components/input/number/number-dropdown-input/number-dropdown-input.component.mjs +3 -3
  25. package/esm2020/components/input/relations/references-many-input/references-many-input.component.mjs +3 -3
  26. package/esm2020/components/input/string/string-dropdown-input/string-dropdown-input.component.mjs +3 -3
  27. package/esm2020/components/table/create-dialog/create-entity-dialog.component.mjs +3 -3
  28. package/esm2020/components/table/edit-dialog/edit-entity.builder.mjs +3 -3
  29. package/esm2020/components/table/table-data.builder.mjs +48 -50
  30. package/esm2020/components/table/table-data.mjs +1 -1
  31. package/esm2020/components/table/table.component.mjs +3 -3
  32. package/esm2020/decorators/array/array-decorator-internal.data.mjs +13 -1
  33. package/esm2020/decorators/array/array-decorator.data.mjs +1 -1
  34. package/esm2020/decorators/base/decorator-types.enum.mjs +2 -1
  35. package/esm2020/decorators/custom/custom-decorator-internal.data.mjs +3 -2
  36. package/esm2020/decorators/has-many/has-many-decorator-internal.data.mjs +32 -0
  37. package/esm2020/decorators/has-many/has-many-decorator.data.mjs +2 -0
  38. package/esm2020/decorators/has-many/has-many.decorator.mjs +13 -0
  39. package/esm2020/encapsulation/lodash.utilities.mjs +1 -1
  40. package/esm2020/public-api.mjs +3 -1
  41. package/esm2020/services/entity.service.mjs +31 -13
  42. package/esm2020/utilities/entity.utilities.mjs +57 -12
  43. package/fesm2015/ngx-material-entity.mjs +686 -198
  44. package/fesm2015/ngx-material-entity.mjs.map +1 -1
  45. package/fesm2020/ngx-material-entity.mjs +672 -193
  46. package/fesm2020/ngx-material-entity.mjs.map +1 -1
  47. package/package.json +1 -1
  48. package/public-api.d.ts +2 -0
  49. package/services/entity.service.d.ts +19 -4
  50. package/utilities/entity.utilities.d.ts +16 -1
  51. package/components/input/add-array-item-dialog-data.builder.d.ts +0 -22
  52. package/components/input/add-array-item-dialog-data.d.ts +0 -20
  53. package/esm2020/components/input/add-array-item-dialog-data.builder.mjs +0 -38
  54. package/esm2020/components/input/add-array-item-dialog-data.mjs +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-material-entity",
3
- "version": "15.1.5",
3
+ "version": "15.1.7",
4
4
  "license": "MIT",
5
5
  "keywords": [
6
6
  "angular",
package/public-api.d.ts CHANGED
@@ -40,6 +40,8 @@ export * from './decorators/object/object-decorator.data';
40
40
  export * from './decorators/object/object.decorator';
41
41
  export * from './decorators/references-many/references-many-decorator.data';
42
42
  export * from './decorators/references-many/references-many.decorator';
43
+ export * from './decorators/has-many/has-many-decorator.data';
44
+ export * from './decorators/has-many/has-many.decorator';
43
45
  export * from './decorators/string/string-decorator.data';
44
46
  export * from './decorators/string/string.decorator';
45
47
  export * from './services/entity.service';
@@ -55,9 +55,11 @@ export declare abstract class EntityService<EntityType extends BaseEntityType<En
55
55
  *
56
56
  * @param entity - The data of the entity to create.
57
57
  * All values that should be omitted will be removed from it inside this method.
58
+ * @param baseUrl - The base url to send the post request to.
59
+ * This can be used if you want to create an entity belonging to another, like "customers/{id}/invoices".
58
60
  * @returns A Promise of the created entity.
59
61
  */
60
- create(entity: EntityType): Promise<EntityType>;
62
+ create(entity: EntityType, baseUrl?: string): Promise<EntityType>;
61
63
  /**
62
64
  * Imports everything from the provided json file.
63
65
  *
@@ -73,22 +75,27 @@ export declare abstract class EntityService<EntityType extends BaseEntityType<En
73
75
  * @param body - The body Of the request.
74
76
  * @param filePropertyKeys - All property keys that are files and need to be added to the form data.
75
77
  * @param entity - The entity to create. This is needed in addition to the body because the body doesn't contain any metadata.
78
+ * @param baseUrl - The base url to send the post request to.
79
+ * This can be used if you want to create an entity belonging to another, like "customers/{id}/invoices".
76
80
  * @returns The created entity from the server.
77
81
  */
78
- protected createWithFormData(body: Partial<EntityType>, filePropertyKeys: (keyof EntityType)[], entity: EntityType): Promise<EntityType>;
82
+ protected createWithFormData(body: Partial<EntityType>, filePropertyKeys: (keyof EntityType)[], entity: EntityType, baseUrl?: string): Promise<EntityType>;
79
83
  /**
80
84
  * Creates the entity with a normal json body in contrast to creating it with form data when the entity contains files.
81
85
  *
82
86
  * @param body - The body Of the request.
87
+ * @param baseUrl - The base url to send the post request to.
88
+ * This can be used if you want to create an entity belonging to another, like "customers/{id}/invoices".
83
89
  * @returns The created entity from the server.
84
90
  */
85
- protected createWithJson(body: Partial<EntityType>): Promise<EntityType>;
91
+ protected createWithJson(body: Partial<EntityType>, baseUrl?: string): Promise<EntityType>;
86
92
  /**
87
93
  * Gets all existing entities and pushes them to the entities array.
88
94
  *
95
+ * @param baseUrl - The base url for the request. Defaults to the baseUrl on the service.
89
96
  * @returns A Promise of all received Entities.
90
97
  */
91
- read(): Promise<EntityType[]>;
98
+ read(baseUrl?: string): Promise<EntityType[]>;
92
99
  /**
93
100
  * Tries to find an entity with the given id.
94
101
  *
@@ -105,6 +112,14 @@ export declare abstract class EntityService<EntityType extends BaseEntityType<En
105
112
  * It Is used to get changed values and only update them instead of sending the whole entity data.
106
113
  */
107
114
  update(entity: EntityType, entityPriorChanges: EntityType): Promise<void>;
115
+ /**
116
+ * Builds the update request body from the given entity before and after its changes.
117
+ *
118
+ * @param entity - The entity with changed values.
119
+ * @param entityPriorChanges - The entity before any changes.
120
+ * @returns A partial of only the changed values.
121
+ */
122
+ protected entityToUpdateRequestBody(entity: EntityType, entityPriorChanges: EntityType): Promise<Partial<EntityType>>;
108
123
  /**
109
124
  * Updates the entity with form data when the entity contains files in contrast to creating it with a normal json body.
110
125
  * All file values are stored inside their respective property key and their name.
@@ -55,6 +55,22 @@ export declare abstract class EntityUtilities {
55
55
  * @returns The properties which should be left out for creating a new Entity.
56
56
  */
57
57
  static getOmitForCreate<EntityType extends BaseEntityType<EntityType>>(entity: EntityType): (keyof EntityType)[];
58
+ /**
59
+ * Returns the given entity without the values that should be omitted for creation.
60
+ *
61
+ * @param entity - The entity with all its values.
62
+ * @returns The reduced entity object.
63
+ */
64
+ static getWithoutOmitCreateValues<EntityType extends BaseEntityType<EntityType>>(entity: EntityType): Partial<EntityType>;
65
+ /**
66
+ * Returns the given entity without the values that should be omitted for updating.
67
+ * This also handles omitting keys for @object or @array values and removes values that haven't been changed by default.
68
+ *
69
+ * @param entity - The entity with all its values.
70
+ * @param entityPriorChanges - The entity before any changes were applied.
71
+ * @returns The reduced entity object.
72
+ */
73
+ static getWithoutOmitUpdateValues<EntityType extends BaseEntityType<EntityType>>(entity: EntityType, entityPriorChanges: EntityType): Promise<Partial<EntityType>>;
58
74
  /**
59
75
  * Gets all properties on the given entity which are files.
60
76
  *
@@ -138,7 +154,6 @@ export declare abstract class EntityUtilities {
138
154
  * @param entityPriorChanges - The second entity to compare.
139
155
  * @returns The difference between the two Entities in form of a Partial.
140
156
  */
141
- static difference<EntityType extends BaseEntityType<EntityType>>(entity: EntityType, entityPriorChanges: EntityType): Promise<Partial<EntityType>>;
142
157
  /**
143
158
  * Checks if two given values are equal.
144
159
  * It uses the isEqual method from LodashUtilities and extends it with functionality regarding Dates.
@@ -1,22 +0,0 @@
1
- import { NgModel } from '@angular/forms';
2
- import { BaseBuilder } from '../../classes/base.builder';
3
- import { BaseEntityType } from '../../classes/entity.model';
4
- import { CreateDialogDataInternal } from '../table/create-dialog/create-dialog-data.builder';
5
- import { AddArrayItemDialogData } from './add-array-item-dialog-data';
6
- /**
7
- * The internal AddArrayItemDialogData. Requires all default values the user can leave out.
8
- */
9
- export declare class AddArrayItemDialogDataInternal<EntityType extends BaseEntityType<EntityType>> implements AddArrayItemDialogData<EntityType> {
10
- entity: EntityType;
11
- createDialogData: CreateDialogDataInternal;
12
- getValidationErrorMessage: (model: NgModel) => string;
13
- constructor(entity: EntityType, createDialogData: CreateDialogDataInternal, getValidationErrorMessage: (model: NgModel) => string);
14
- }
15
- /**
16
- * The Builder for the AddArrayItemDialogData. Sets default values.
17
- */
18
- export declare class AddArrayItemDialogDataBuilder<EntityType extends BaseEntityType<EntityType>> extends BaseBuilder<AddArrayItemDialogDataInternal<EntityType>, AddArrayItemDialogData<EntityType>> {
19
- protected readonly defaultGetValidationErrorMessage: (model: NgModel) => string;
20
- constructor(data: AddArrayItemDialogData<EntityType>, defaultGetValidationErrorMessage: (model: NgModel) => string);
21
- protected generateBaseData(data: AddArrayItemDialogData<EntityType>): AddArrayItemDialogDataInternal<EntityType>;
22
- }
@@ -1,20 +0,0 @@
1
- import { NgModel } from '@angular/forms';
2
- import { BaseEntityType } from '../../classes/entity.model';
3
- import { CreateDialogData } from '../table/table-data';
4
- /**
5
- * The configuration options for the dialog that adds items to an array.
6
- */
7
- export interface AddArrayItemDialogData<EntityType extends BaseEntityType<EntityType>> {
8
- /**
9
- * An empty entity that is used as the data model.
10
- */
11
- entity: EntityType;
12
- /**
13
- * The info of the generic create-dialog.
14
- */
15
- createDialogData?: CreateDialogData;
16
- /**
17
- * A custom function to generate the error-message for invalid inputs.
18
- */
19
- getValidationErrorMessage?: (model: NgModel) => string;
20
- }
@@ -1,38 +0,0 @@
1
- import { __decorate, __metadata, __param } from "tslib";
2
- import { Inject } from '@angular/core';
3
- import { BaseBuilder } from '../../classes/base.builder';
4
- import { NGX_GET_VALIDATION_ERROR_MESSAGE } from '../get-validation-error-message.function';
5
- import { CreateDialogDataBuilder } from '../table/create-dialog/create-dialog-data.builder';
6
- /**
7
- * The internal AddArrayItemDialogData. Requires all default values the user can leave out.
8
- */
9
- export class AddArrayItemDialogDataInternal {
10
- constructor(entity, createDialogData, getValidationErrorMessage) {
11
- this.entity = entity;
12
- this.createDialogData = createDialogData;
13
- this.getValidationErrorMessage = getValidationErrorMessage;
14
- }
15
- }
16
- /**
17
- * The Builder for the AddArrayItemDialogData. Sets default values.
18
- */
19
- let AddArrayItemDialogDataBuilder = class AddArrayItemDialogDataBuilder extends BaseBuilder {
20
- constructor(data, defaultGetValidationErrorMessage) {
21
- super(data);
22
- this.defaultGetValidationErrorMessage = defaultGetValidationErrorMessage;
23
- }
24
- // eslint-disable-next-line jsdoc/require-jsdoc
25
- generateBaseData(data) {
26
- const createDialogData = new CreateDialogDataBuilder(data.createDialogData)
27
- .withDefault('createButtonLabel', 'Add')
28
- .withDefault('title', 'Add to array')
29
- .getResult();
30
- return new AddArrayItemDialogDataInternal(data.entity, createDialogData, data.getValidationErrorMessage ?? this.defaultGetValidationErrorMessage);
31
- }
32
- };
33
- AddArrayItemDialogDataBuilder = __decorate([
34
- __param(1, Inject(NGX_GET_VALIDATION_ERROR_MESSAGE)),
35
- __metadata("design:paramtypes", [Object, Function])
36
- ], AddArrayItemDialogDataBuilder);
37
- export { AddArrayItemDialogDataBuilder };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWFycmF5LWl0ZW0tZGlhbG9nLWRhdGEuYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1tYXRlcmlhbC1lbnRpdHkvc3JjL2NvbXBvbmVudHMvaW5wdXQvYWRkLWFycmF5LWl0ZW0tZGlhbG9nLWRhdGEuYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFekQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDNUYsT0FBTyxFQUFFLHVCQUF1QixFQUE0QixNQUFNLG1EQUFtRCxDQUFDO0FBR3RIOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDhCQUE4QjtJQVF2QyxZQUNJLE1BQWtCLEVBQ2xCLGdCQUEwQyxFQUMxQyx5QkFBcUQ7UUFFckQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ3pDLElBQUksQ0FBQyx5QkFBeUIsR0FBRyx5QkFBeUIsQ0FBQztJQUMvRCxDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQUNJLElBQU0sNkJBQTZCLEdBQW5DLE1BQU0sNkJBQ1QsU0FBUSxXQUEyRjtJQUVuRyxZQUNJLElBQXdDLEVBRXJCLGdDQUE0RDtRQUUvRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFGTyxxQ0FBZ0MsR0FBaEMsZ0NBQWdDLENBQTRCO0lBR25GLENBQUM7SUFFRCwrQ0FBK0M7SUFDckMsZ0JBQWdCLENBQUMsSUFBd0M7UUFDL0QsTUFBTSxnQkFBZ0IsR0FBNkIsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7YUFDaEcsV0FBVyxDQUFDLG1CQUFtQixFQUFFLEtBQUssQ0FBQzthQUN2QyxXQUFXLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQzthQUNwQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixPQUFPLElBQUksOEJBQThCLENBQ3JDLElBQUksQ0FBQyxNQUFNLEVBQ1gsZ0JBQWdCLEVBQ2hCLElBQUksQ0FBQyx5QkFBeUIsSUFBSSxJQUFJLENBQUMsZ0NBQWdDLENBQzFFLENBQUM7SUFDTixDQUFDO0NBQ0osQ0FBQTtBQXZCWSw2QkFBNkI7SUFLakMsV0FBQSxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTs7R0FMcEMsNkJBQTZCLENBdUJ6QztTQXZCWSw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nTW9kZWwgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCYXNlQnVpbGRlciB9IGZyb20gJy4uLy4uL2NsYXNzZXMvYmFzZS5idWlsZGVyJztcbmltcG9ydCB7IEJhc2VFbnRpdHlUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9lbnRpdHkubW9kZWwnO1xuaW1wb3J0IHsgTkdYX0dFVF9WQUxJREFUSU9OX0VSUk9SX01FU1NBR0UgfSBmcm9tICcuLi9nZXQtdmFsaWRhdGlvbi1lcnJvci1tZXNzYWdlLmZ1bmN0aW9uJztcbmltcG9ydCB7IENyZWF0ZURpYWxvZ0RhdGFCdWlsZGVyLCBDcmVhdGVEaWFsb2dEYXRhSW50ZXJuYWwgfSBmcm9tICcuLi90YWJsZS9jcmVhdGUtZGlhbG9nL2NyZWF0ZS1kaWFsb2ctZGF0YS5idWlsZGVyJztcbmltcG9ydCB7IEFkZEFycmF5SXRlbURpYWxvZ0RhdGEgfSBmcm9tICcuL2FkZC1hcnJheS1pdGVtLWRpYWxvZy1kYXRhJztcblxuLyoqXG4gKiBUaGUgaW50ZXJuYWwgQWRkQXJyYXlJdGVtRGlhbG9nRGF0YS4gUmVxdWlyZXMgYWxsIGRlZmF1bHQgdmFsdWVzIHRoZSB1c2VyIGNhbiBsZWF2ZSBvdXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBBZGRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZSBleHRlbmRzIEJhc2VFbnRpdHlUeXBlPEVudGl0eVR5cGU+PiBpbXBsZW1lbnRzIEFkZEFycmF5SXRlbURpYWxvZ0RhdGE8RW50aXR5VHlwZT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZW50aXR5OiBFbnRpdHlUeXBlO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgY3JlYXRlRGlhbG9nRGF0YTogQ3JlYXRlRGlhbG9nRGF0YUludGVybmFsO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgZ2V0VmFsaWRhdGlvbkVycm9yTWVzc2FnZTogKG1vZGVsOiBOZ01vZGVsKSA9PiBzdHJpbmc7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgZW50aXR5OiBFbnRpdHlUeXBlLFxuICAgICAgICBjcmVhdGVEaWFsb2dEYXRhOiBDcmVhdGVEaWFsb2dEYXRhSW50ZXJuYWwsXG4gICAgICAgIGdldFZhbGlkYXRpb25FcnJvck1lc3NhZ2U6IChtb2RlbDogTmdNb2RlbCkgPT4gc3RyaW5nXG4gICAgKSB7XG4gICAgICAgIHRoaXMuZW50aXR5ID0gZW50aXR5O1xuICAgICAgICB0aGlzLmNyZWF0ZURpYWxvZ0RhdGEgPSBjcmVhdGVEaWFsb2dEYXRhO1xuICAgICAgICB0aGlzLmdldFZhbGlkYXRpb25FcnJvck1lc3NhZ2UgPSBnZXRWYWxpZGF0aW9uRXJyb3JNZXNzYWdlO1xuICAgIH1cbn1cblxuLyoqXG4gKiBUaGUgQnVpbGRlciBmb3IgdGhlIEFkZEFycmF5SXRlbURpYWxvZ0RhdGEuIFNldHMgZGVmYXVsdCB2YWx1ZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBBZGRBcnJheUl0ZW1EaWFsb2dEYXRhQnVpbGRlcjxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+XG4gICAgZXh0ZW5kcyBCYXNlQnVpbGRlcjxBZGRBcnJheUl0ZW1EaWFsb2dEYXRhSW50ZXJuYWw8RW50aXR5VHlwZT4sIEFkZEFycmF5SXRlbURpYWxvZ0RhdGE8RW50aXR5VHlwZT4+IHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBkYXRhOiBBZGRBcnJheUl0ZW1EaWFsb2dEYXRhPEVudGl0eVR5cGU+LFxuICAgICAgICBASW5qZWN0KE5HWF9HRVRfVkFMSURBVElPTl9FUlJPUl9NRVNTQUdFKVxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVmYXVsdEdldFZhbGlkYXRpb25FcnJvck1lc3NhZ2U6IChtb2RlbDogTmdNb2RlbCkgPT4gc3RyaW5nXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGRhdGEpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gICAgcHJvdGVjdGVkIGdlbmVyYXRlQmFzZURhdGEoZGF0YTogQWRkQXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlPik6IEFkZEFycmF5SXRlbURpYWxvZ0RhdGFJbnRlcm5hbDxFbnRpdHlUeXBlPiB7XG4gICAgICAgIGNvbnN0IGNyZWF0ZURpYWxvZ0RhdGE6IENyZWF0ZURpYWxvZ0RhdGFJbnRlcm5hbCA9IG5ldyBDcmVhdGVEaWFsb2dEYXRhQnVpbGRlcihkYXRhLmNyZWF0ZURpYWxvZ0RhdGEpXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ2NyZWF0ZUJ1dHRvbkxhYmVsJywgJ0FkZCcpXG4gICAgICAgICAgICAud2l0aERlZmF1bHQoJ3RpdGxlJywgJ0FkZCB0byBhcnJheScpXG4gICAgICAgICAgICAuZ2V0UmVzdWx0KCk7XG4gICAgICAgIHJldHVybiBuZXcgQWRkQXJyYXlJdGVtRGlhbG9nRGF0YUludGVybmFsKFxuICAgICAgICAgICAgZGF0YS5lbnRpdHksXG4gICAgICAgICAgICBjcmVhdGVEaWFsb2dEYXRhLFxuICAgICAgICAgICAgZGF0YS5nZXRWYWxpZGF0aW9uRXJyb3JNZXNzYWdlID8/IHRoaXMuZGVmYXVsdEdldFZhbGlkYXRpb25FcnJvck1lc3NhZ2VcbiAgICAgICAgKTtcbiAgICB9XG59Il19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWFycmF5LWl0ZW0tZGlhbG9nLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbWF0ZXJpYWwtZW50aXR5L3NyYy9jb21wb25lbnRzL2lucHV0L2FkZC1hcnJheS1pdGVtLWRpYWxvZy1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQmFzZUVudGl0eVR5cGUgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2VudGl0eS5tb2RlbCc7XG5pbXBvcnQgeyBDcmVhdGVEaWFsb2dEYXRhIH0gZnJvbSAnLi4vdGFibGUvdGFibGUtZGF0YSc7XG5cbi8qKlxuICogVGhlIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGRpYWxvZyB0aGF0IGFkZHMgaXRlbXMgdG8gYW4gYXJyYXkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkQXJyYXlJdGVtRGlhbG9nRGF0YTxFbnRpdHlUeXBlIGV4dGVuZHMgQmFzZUVudGl0eVR5cGU8RW50aXR5VHlwZT4+IHtcbiAgICAvKipcbiAgICAgKiBBbiBlbXB0eSBlbnRpdHkgdGhhdCBpcyB1c2VkIGFzIHRoZSBkYXRhIG1vZGVsLlxuICAgICAqL1xuICAgIGVudGl0eTogRW50aXR5VHlwZSxcbiAgICAvKipcbiAgICAgKiBUaGUgaW5mbyBvZiB0aGUgZ2VuZXJpYyBjcmVhdGUtZGlhbG9nLlxuICAgICAqL1xuICAgIGNyZWF0ZURpYWxvZ0RhdGE/OiBDcmVhdGVEaWFsb2dEYXRhLFxuICAgIC8qKlxuICAgICAqIEEgY3VzdG9tIGZ1bmN0aW9uIHRvIGdlbmVyYXRlIHRoZSBlcnJvci1tZXNzYWdlIGZvciBpbnZhbGlkIGlucHV0cy5cbiAgICAgKi9cbiAgICBnZXRWYWxpZGF0aW9uRXJyb3JNZXNzYWdlPzogKG1vZGVsOiBOZ01vZGVsKSA9PiBzdHJpbmdcbn0iXX0=