@infrab4a/connect 4.0.0-beta.26 → 4.0.0-beta.27
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/domain/catalog/models/category-collection-children.d.ts +1 -2
- package/domain/catalog/models/category-filter.d.ts +1 -1
- package/domain/catalog/models/category.d.ts +1 -2
- package/domain/catalog/models/filter-option.d.ts +1 -2
- package/domain/catalog/models/filter.d.ts +1 -2
- package/domain/catalog/models/kit-product.d.ts +1 -1
- package/domain/catalog/models/product.d.ts +1 -2
- package/domain/catalog/models/variant.d.ts +1 -2
- package/domain/generic/model/base.model.d.ts +9 -5
- package/domain/generic/model/types/base-model-builder.type.d.ts +4 -2
- package/domain/generic/model/types/identifier-model.type.d.ts +6 -5
- package/domain/generic/model/types/model-base-structure.type.d.ts +9 -3
- package/domain/generic/model/types/non-function-property-name.type.d.ts +12 -3
- package/domain/generic/repository/get.repository.d.ts +2 -2
- package/domain/generic/repository/types/repository-find-filters.type.d.ts +3 -3
- package/domain/generic/repository/types/repository-order-by-list.type.d.ts +2 -2
- package/domain/generic/repository/types/repository-update-params.type.d.ts +2 -2
- package/domain/location/models/address.d.ts +4 -3
- package/domain/shopping/models/checkout.d.ts +5 -6
- package/domain/shopping/models/subscription/checkout.d.ts +3 -4
- package/domain/users/models/subscription/subscription.d.ts +3 -3
- package/domain/users/models/user-address.d.ts +1 -2
- package/domain/users/models/user.d.ts +2 -3
- package/esm2020/domain/catalog/models/category-collection-children.mjs +1 -4
- package/esm2020/domain/catalog/models/category-filter.mjs +1 -1
- package/esm2020/domain/catalog/models/category.mjs +1 -4
- package/esm2020/domain/catalog/models/filter-option.mjs +1 -4
- package/esm2020/domain/catalog/models/filter.mjs +1 -4
- package/esm2020/domain/catalog/models/kit-product.mjs +2 -2
- package/esm2020/domain/catalog/models/product.mjs +1 -4
- package/esm2020/domain/catalog/models/variant.mjs +1 -4
- package/esm2020/domain/generic/model/base.model.mjs +3 -2
- package/esm2020/domain/generic/model/types/base-model-builder.type.mjs +1 -1
- package/esm2020/domain/generic/model/types/identifier-model.type.mjs +1 -1
- package/esm2020/domain/generic/model/types/model-base-structure.type.mjs +1 -1
- package/esm2020/domain/generic/model/types/non-function-property-name.type.mjs +1 -1
- package/esm2020/domain/generic/repository/get.repository.mjs +1 -1
- package/esm2020/domain/generic/repository/types/repository-find-filters.type.mjs +1 -1
- package/esm2020/domain/generic/repository/types/repository-order-by-list.type.mjs +1 -1
- package/esm2020/domain/generic/repository/types/repository-update-params.type.mjs +1 -1
- package/esm2020/domain/location/models/address.mjs +2 -2
- package/esm2020/domain/shopping/models/checkout.mjs +6 -7
- package/esm2020/domain/shopping/models/order.mjs +1 -1
- package/esm2020/domain/shopping/models/subscription/checkout.mjs +6 -6
- package/esm2020/domain/users/models/subscription/subscription.mjs +6 -6
- package/esm2020/domain/users/models/user-address.mjs +1 -1
- package/esm2020/domain/users/models/user.mjs +3 -3
- package/esm2020/domain/users/use-cases/authentication.mjs +2 -2
- package/esm2020/infra/elasticsearch/adapters/axios.adapter.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-create-firestore.mixin.mjs +2 -2
- package/esm2020/infra/firebase/firestore/mixins/with-crud-firestore.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-delete-firestore.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-find-firestore.mixin.mjs +3 -3
- package/esm2020/infra/firebase/firestore/mixins/with-firestore.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-get-firestore.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-helpers.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-sub-collection.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/mixins/with-update-firestore.mixin.mjs +1 -1
- package/esm2020/infra/firebase/firestore/types/firestore-sub.repository.type.mjs +1 -1
- package/esm2020/infra/firebase/firestore/types/firestore.helpers.type.mjs +1 -1
- package/esm2020/infra/firebase/firestore/types/firestore.repository.type.mjs +1 -1
- package/esm2020/infra/hasura-graphql/mixins/helpers/attribute-option.helper.mjs +1 -1
- package/esm2020/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.mjs +5 -4
- package/esm2020/infra/hasura-graphql/mixins/helpers/filter-option.helper.mjs +1 -1
- package/esm2020/infra/hasura-graphql/mixins/helpers/graphql-field.helper.mjs +25 -20
- package/esm2020/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.mjs +5 -3
- package/esm2020/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.mjs +1 -1
- package/esm2020/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.mjs +5 -3
- package/esm2020/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.mjs +21 -4
- package/esm2020/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.mjs +5 -3
- package/esm2020/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.mjs +12 -5
- package/esm2020/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.mjs +7 -5
- package/esm2020/infra/hasura-graphql/types/graphql.repository.type.mjs +1 -1
- package/esm2020/infra/hasura-graphql/types/hasura-graphql-fields.type.mjs +1 -1
- package/esm2020/utils/decorators/debug.class.decorator.mjs +7 -0
- package/esm2020/utils/decorators/index.mjs +3 -0
- package/esm2020/utils/decorators/trace.method.decorator.mjs +81 -0
- package/esm2020/utils/helpers/class-name.helper.mjs +15 -0
- package/esm2020/utils/helpers/debug-decorator.helper.mjs +18 -0
- package/esm2020/utils/helpers/debug.helper.mjs +150 -0
- package/esm2020/utils/helpers/index.mjs +5 -0
- package/esm2020/utils/helpers/reflect.helper.mjs +165 -0
- package/esm2020/utils/index.mjs +4 -1
- package/esm2020/utils/log.utils.mjs +9 -0
- package/fesm2015/infrab4a-connect.mjs +530 -80
- package/fesm2015/infrab4a-connect.mjs.map +1 -1
- package/fesm2020/infrab4a-connect.mjs +534 -80
- package/fesm2020/infrab4a-connect.mjs.map +1 -1
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +1 -1
- package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +2 -2
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +3 -3
- package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +3 -3
- package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +5 -5
- package/infra/firebase/firestore/types/firestore.repository.type.d.ts +1 -1
- package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +9 -3
- package/infra/hasura-graphql/mixins/helpers/bind-filter-query.helper.d.ts +5 -5
- package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +4 -2
- package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +8 -5
- package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +2 -1
- package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +1 -1
- package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +11 -9
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +7 -6
- package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +2 -2
- package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +2 -2
- package/infra/hasura-graphql/types/graphql.repository.type.d.ts +7 -5
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +7 -3
- package/package.json +2 -1
- package/utils/decorators/debug.class.decorator.d.ts +2 -0
- package/utils/decorators/index.d.ts +2 -0
- package/utils/decorators/trace.method.decorator.d.ts +14 -0
- package/utils/helpers/class-name.helper.d.ts +3 -0
- package/utils/helpers/debug-decorator.helper.d.ts +9 -0
- package/utils/helpers/debug.helper.d.ts +60 -0
- package/utils/helpers/index.d.ts +4 -0
- package/utils/helpers/reflect.helper.d.ts +50 -0
- package/utils/index.d.ts +3 -0
- package/utils/log.utils.d.ts +7 -0
|
@@ -1,12 +1,29 @@
|
|
|
1
|
-
import { isNil } from '../../../utils';
|
|
2
|
-
import { BindFilterQueryHelper } from './helpers';
|
|
1
|
+
import { DebugHelper, isNil } from '../../../utils';
|
|
2
|
+
import { AttributeOptionHelper, BindFilterQueryHelper } from './helpers';
|
|
3
3
|
export const withFindHasuraGraphQL = (MixinBase) => {
|
|
4
4
|
return class FindHasuraGraphQLMixin extends MixinBase {
|
|
5
|
+
constructor() {
|
|
6
|
+
super(...arguments);
|
|
7
|
+
this.bindOrderByAttributes = (orderBy, fields) => Object.keys(orderBy).reduce((acc, current) => ({
|
|
8
|
+
...acc,
|
|
9
|
+
[AttributeOptionHelper.FindByAttribute(current, fields)
|
|
10
|
+
.columnName]: orderBy[current],
|
|
11
|
+
}), {});
|
|
12
|
+
}
|
|
5
13
|
async find(params) {
|
|
14
|
+
this.logger = DebugHelper.from(this, 'find');
|
|
6
15
|
const { filters, limits, orderBy, options } = params || {};
|
|
7
16
|
const enableCount = options?.enableCount ?? true;
|
|
8
17
|
const variablesCount = {
|
|
9
|
-
...(isNil(orderBy)
|
|
18
|
+
...(isNil(orderBy)
|
|
19
|
+
? {}
|
|
20
|
+
: {
|
|
21
|
+
order_by: {
|
|
22
|
+
type: `${this.tableName}_order_by!`,
|
|
23
|
+
list: true,
|
|
24
|
+
value: this.bindOrderByAttributes(orderBy, this.fields),
|
|
25
|
+
},
|
|
26
|
+
}),
|
|
10
27
|
...(isNil(filters)
|
|
11
28
|
? {}
|
|
12
29
|
: {
|
|
@@ -47,4 +64,4 @@ export const withFindHasuraGraphQL = (MixinBase) => {
|
|
|
47
64
|
}
|
|
48
65
|
};
|
|
49
66
|
};
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1maW5kLWhhc3VyYS1ncmFwaHFsLm1peGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvaGFzdXJhLWdyYXBocWwvbWl4aW5zL3dpdGgtZmluZC1oYXN1cmEtZ3JhcGhxbC5taXhpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsV0FBVyxFQUFhLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUV4RSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUluQyxTQUEyRCxFQUMzRCxFQUFFO0lBQ0YsT0FBTyxNQUFNLHNCQUF1QixTQUFRLFNBQVM7UUFBOUM7O1lBNkRMLDBCQUFxQixHQUFHLENBQUMsT0FBaUMsRUFBRSxNQUFrQyxFQUFFLEVBQUUsQ0FDaEcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQ3pCLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDakIsR0FBRyxHQUFHO2dCQUNOLENBQUMscUJBQXFCLENBQUMsZUFBZSxDQUFDLE9BQXVELEVBQUUsTUFBTSxDQUFDO3FCQUNwRyxVQUFVLENBQUMsRUFBRSxPQUFPLENBQUMsT0FBdUQsQ0FBQzthQUNqRixDQUFDLEVBQ0YsRUFBRSxDQUNILENBQUE7UUFDTCxDQUFDO1FBckVDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBb0M7WUFDN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQTtZQUU1QyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxJQUFJLEVBQUUsQ0FBQTtZQUMxRCxNQUFNLFdBQVcsR0FBRyxPQUFPLEVBQUUsV0FBVyxJQUFJLElBQUksQ0FBQTtZQUNoRCxNQUFNLGNBQWMsR0FBRztnQkFDckIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7b0JBQ2hCLENBQUMsQ0FBQyxFQUFFO29CQUNKLENBQUMsQ0FBQzt3QkFDRSxRQUFRLEVBQUU7NEJBQ1IsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWTs0QkFDbkMsSUFBSSxFQUFFLElBQUk7NEJBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQzt5QkFDeEQ7cUJBQ0YsQ0FBQztnQkFDTixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztvQkFDaEIsQ0FBQyxDQUFDLEVBQUU7b0JBQ0osQ0FBQyxDQUFDO3dCQUNFLEtBQUssRUFBRTs0QkFDTCxLQUFLLEVBQUUscUJBQXFCLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7NEJBQ25FLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLFdBQVc7NEJBQ2xDLFFBQVEsRUFBRSxJQUFJO3lCQUNmO3FCQUNGLENBQUM7YUFDUCxDQUFBO1lBQ0QsTUFBTSxTQUFTLEdBQUc7Z0JBQ2hCLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO2dCQUNoQyxHQUFHLGNBQWM7YUFDbEIsQ0FBQTtZQUNELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDOUI7b0JBQ0UsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO29CQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07d0JBQ25CLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTTs2QkFDVixHQUFHLENBQ0YsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDOzRCQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxTQUFTLENBQUMsQ0FDcEY7NkJBQ0EsTUFBTSxDQUFDLE9BQU8sQ0FBQzt3QkFDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNO29CQUNmLFNBQVM7aUJBQ1Y7Z0JBQ0QsR0FBRyxDQUFDLFdBQVc7b0JBQ2IsQ0FBQyxDQUFDO3dCQUNFOzRCQUNFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLFlBQVk7NEJBQ3hDLE1BQU0sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQzs0QkFDbEMsU0FBUyxFQUFFLGNBQWM7eUJBQ0Y7cUJBQzFCO29CQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDUixDQUFDLENBQUE7WUFDRixNQUFNLElBQUksR0FBWSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQW9DLEVBQUUsRUFBRSxDQUN4RixJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQ2hDLENBQUE7WUFFRCxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLFlBQVksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ3hHLENBQUM7S0FXRixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRmluZFJlcG9zaXRvcnksXG4gIEZpbmRSZXBvc2l0b3J5UGFyYW1zLFxuICBNb2RlbEJhc2VTdHJ1Y3R1cmUsXG4gIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXMsXG4gIFJlcG9zaXRvcnlGaW5kUmVzdWx0LFxuICBSZXBvc2l0b3J5T3JkZXJCeSxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRGVidWdIZWxwZXIsIE1peGluQ3RvciwgaXNOaWwgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxQYXJhbXMsIEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIsIEJpbmRGaWx0ZXJRdWVyeUhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IGNvbnN0IHdpdGhGaW5kSGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgRmluZEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEZpbmRSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgYXN5bmMgZmluZChwYXJhbXM/OiBGaW5kUmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPFJlcG9zaXRvcnlGaW5kUmVzdWx0PE1CYXNlPj4ge1xuICAgICAgdGhpcy5sb2dnZXIgPSBEZWJ1Z0hlbHBlci5mcm9tKHRoaXMsICdmaW5kJylcblxuICAgICAgY29uc3QgeyBmaWx0ZXJzLCBsaW1pdHMsIG9yZGVyQnksIG9wdGlvbnMgfSA9IHBhcmFtcyB8fCB7fVxuICAgICAgY29uc3QgZW5hYmxlQ291bnQgPSBvcHRpb25zPy5lbmFibGVDb3VudCA/PyB0cnVlXG4gICAgICBjb25zdCB2YXJpYWJsZXNDb3VudCA9IHtcbiAgICAgICAgLi4uKGlzTmlsKG9yZGVyQnkpXG4gICAgICAgICAgPyB7fVxuICAgICAgICAgIDoge1xuICAgICAgICAgICAgICBvcmRlcl9ieToge1xuICAgICAgICAgICAgICAgIHR5cGU6IGAke3RoaXMudGFibGVOYW1lfV9vcmRlcl9ieSFgLFxuICAgICAgICAgICAgICAgIGxpc3Q6IHRydWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuYmluZE9yZGVyQnlBdHRyaWJ1dGVzKG9yZGVyQnksIHRoaXMuZmllbGRzKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAuLi4oaXNOaWwoZmlsdGVycylcbiAgICAgICAgICA/IHt9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IEJpbmRGaWx0ZXJRdWVyeUhlbHBlci5NYWtlR3JhcGhRTFdoZXJlKGZpbHRlcnMsIHRoaXMuZmllbGRzKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBgJHt0aGlzLnRhYmxlTmFtZX1fYm9vbF9leHBgLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICB9XG4gICAgICBjb25zdCB2YXJpYWJsZXMgPSB7XG4gICAgICAgIC4uLihpc05pbChsaW1pdHMpID8ge30gOiBsaW1pdHMpLFxuICAgICAgICAuLi52YXJpYWJsZXNDb3VudCxcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMucXVlcnkoW1xuICAgICAgICB7XG4gICAgICAgICAgb3BlcmF0aW9uOiB0aGlzLnRhYmxlTmFtZSxcbiAgICAgICAgICBmaWVsZHM6IHBhcmFtcy5maWVsZHNcbiAgICAgICAgICAgID8gcGFyYW1zLmZpZWxkc1xuICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAoZmllbGROYW1lKSA9PlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkcy5maW5kKChmaWVsZE9wdGlvbikgPT4gZmllbGRPcHRpb24gPT09IGZpZWxkTmFtZSkgPz9cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWVsZHMuZmluZCgoZmllbGRPcHRpb24pID0+IE9iamVjdC5rZXlzKGZpZWxkT3B0aW9uKS5zaGlmdCgpID09PSBmaWVsZE5hbWUpLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgICA6IHRoaXMuZmllbGRzLFxuICAgICAgICAgIHZhcmlhYmxlcyxcbiAgICAgICAgfSxcbiAgICAgICAgLi4uKGVuYWJsZUNvdW50XG4gICAgICAgICAgPyBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRpb246IGAke3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW3sgYWdncmVnYXRlOiBbJ2NvdW50J10gfV0sXG4gICAgICAgICAgICAgICAgdmFyaWFibGVzOiB2YXJpYWJsZXNDb3VudCxcbiAgICAgICAgICAgICAgfSBhcyBHcmFwaFFMUGFyYW1zPE1CYXNlPixcbiAgICAgICAgICAgIF1cbiAgICAgICAgICA6IFtdKSxcbiAgICAgIF0pXG4gICAgICBjb25zdCBkYXRhOiBNQmFzZVtdID0gcmVzdWx0W3RoaXMudGFibGVOYW1lXS5tYXAoKHJvdzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyPikgPT5cbiAgICAgICAgdGhpcy5jb252ZXJ0RGF0YUZyb21IYXN1cmEocm93KSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHsgZGF0YSwgY291bnQ6IGVuYWJsZUNvdW50ID8gcmVzdWx0W2Ake3RoaXMudGFibGVOYW1lfV9hZ2dyZWdhdGVgXS5hZ2dyZWdhdGUuY291bnQgOiBJbmZpbml0eSB9XG4gICAgfVxuXG4gICAgYmluZE9yZGVyQnlBdHRyaWJ1dGVzID0gKG9yZGVyQnk6IFJlcG9zaXRvcnlPcmRlckJ5PE1CYXNlPiwgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPikgPT5cbiAgICAgIE9iamVjdC5rZXlzKG9yZGVyQnkpLnJlZHVjZShcbiAgICAgICAgKGFjYywgY3VycmVudCkgPT4gKHtcbiAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgW0F0dHJpYnV0ZU9wdGlvbkhlbHBlci5GaW5kQnlBdHRyaWJ1dGUoY3VycmVudCBhcyBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPiwgZmllbGRzKVxuICAgICAgICAgICAgLmNvbHVtbk5hbWVdOiBvcmRlckJ5W2N1cnJlbnQgYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNQmFzZT5dLFxuICAgICAgICB9KSxcbiAgICAgICAge30sXG4gICAgICApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NotFoundError } from '../../../errors';
|
|
2
|
-
import { isNil } from '../../../utils';
|
|
2
|
+
import { DebugHelper, isNil } from '../../../utils';
|
|
3
3
|
import { AttributeOptionHelper } from './helpers';
|
|
4
4
|
export const withGetHasuraGraphQL = (MixinBase) => {
|
|
5
5
|
return class GetHasuraGraphQLMixin extends MixinBase {
|
|
@@ -9,9 +9,11 @@ export const withGetHasuraGraphQL = (MixinBase) => {
|
|
|
9
9
|
this.getGraphQLOperation = options?.getGraphQLOperation || `${this.tableName}_by_pk`;
|
|
10
10
|
}
|
|
11
11
|
async get(identifiers) {
|
|
12
|
+
this.logger = DebugHelper.from(this, 'get');
|
|
12
13
|
const instance = this.model.toInstance(identifiers);
|
|
13
14
|
const result = await this.query(this.getGraphQLOperation, this.fields, this.model.identifiersFields.reduce((ids, identifier) => {
|
|
14
|
-
|
|
15
|
+
const identifierBinded = identifier;
|
|
16
|
+
if (isNil(instance[identifierBinded]))
|
|
15
17
|
return ids;
|
|
16
18
|
const columnOption = AttributeOptionHelper.FindByAttribute(identifier, this.fields);
|
|
17
19
|
const value = columnOption?.to?.(identifiers[identifier], instance) ||
|
|
@@ -32,4 +34,4 @@ export const withGetHasuraGraphQL = (MixinBase) => {
|
|
|
32
34
|
}
|
|
33
35
|
};
|
|
34
36
|
};
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC1nZXQtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQWEsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBTWpELE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBSWxDLFNBQTJELEVBQzNELEVBQUU7SUFDRixPQUFPLE1BQU0scUJBQXNCLFNBQVEsU0FBUztRQUdsRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBeUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFakQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLFFBQVEsQ0FBQTtRQUN0RixDQUFDO1FBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxXQUF1QztZQUMvQyxJQUFJLENBQUMsTUFBTSxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1lBRTNDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1lBQ25ELE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FDN0IsSUFBSSxDQUFDLG1CQUFtQixFQUN4QixJQUFJLENBQUMsTUFBTSxFQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxFQUFFO2dCQUN0RCxNQUFNLGdCQUFnQixHQUdsQixVQUFVLENBQUE7Z0JBRWQsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7b0JBQUUsT0FBTyxHQUFHLENBQUE7Z0JBRWpELE1BQU0sWUFBWSxHQUFHLHFCQUFxQixDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUNuRixNQUFNLEtBQUssR0FDVCxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUMsV0FBVyxDQUFDLFVBQXNDLENBQUMsRUFBRSxRQUFRLENBQUM7b0JBQ2pGLFdBQVcsQ0FBQyxVQUFzQyxDQUFDLENBQUE7Z0JBRXJELE9BQU87b0JBQ0wsR0FBRyxHQUFHO29CQUNOLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFO3dCQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDO3dCQUNoRSxLQUFLO3dCQUNMLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2lCQUNGLENBQUE7WUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQ1AsQ0FBQTtZQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQTtZQUU3QyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQUUsTUFBTSxJQUFJLGFBQWEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQTtZQUVsRixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQTtRQUNyRSxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEdldFJlcG9zaXRvcnksXG4gIEdldFJlcG9zaXRvcnlQYXJhbXMsXG4gIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgTm90Rm91bmRFcnJvciB9IGZyb20gJy4uLy4uLy4uL2Vycm9ycydcbmltcG9ydCB7IERlYnVnSGVscGVyLCBNaXhpbkN0b3IsIGlzTmlsIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBHcmFwaFFMUmVwb3NpdG9yeSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBBdHRyaWJ1dGVPcHRpb25IZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmV4cG9ydCB0eXBlIEdldENvbnN0cnVjdG9yUGFyYW1zID0ge1xuICBnZXRHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoR2V0SGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUTWl4aW5CYXNlIGV4dGVuZHMgTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4sXG4+KFxuICBNaXhpbkJhc2U6IE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+ICYgVE1peGluQmFzZSxcbikgPT4ge1xuICByZXR1cm4gY2xhc3MgR2V0SGFzdXJhR3JhcGhRTE1peGluIGV4dGVuZHMgTWl4aW5CYXNlIGltcGxlbWVudHMgR2V0UmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIGdldEdyYXBoUUxPcGVyYXRpb246IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zOiBhbnlbXSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogR2V0Q29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMuZ2V0R3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LmdldEdyYXBoUUxPcGVyYXRpb24gfHwgYCR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgIH1cblxuICAgIGFzeW5jIGdldChpZGVudGlmaWVyczogR2V0UmVwb3NpdG9yeVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPE1CYXNlPiB7XG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcywgJ2dldCcpXG5cbiAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5tb2RlbC50b0luc3RhbmNlKGlkZW50aWZpZXJzKVxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5xdWVyeShcbiAgICAgICAgdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uLFxuICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGlkZW50aWZpZXJCaW5kZWQ6IEV4dHJhY3Q8XG4gICAgICAgICAgICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPixcbiAgICAgICAgICAgIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl1cbiAgICAgICAgICA+ID0gaWRlbnRpZmllclxuXG4gICAgICAgICAgaWYgKGlzTmlsKGluc3RhbmNlW2lkZW50aWZpZXJCaW5kZWRdKSkgcmV0dXJuIGlkc1xuXG4gICAgICAgICAgY29uc3QgY29sdW1uT3B0aW9uID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShpZGVudGlmaWVyLCB0aGlzLmZpZWxkcylcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9XG4gICAgICAgICAgICBjb2x1bW5PcHRpb24/LnRvPy4oaWRlbnRpZmllcnNbaWRlbnRpZmllciBhcyBrZXlvZiB0eXBlb2YgaWRlbnRpZmllcnNdLCBpbnN0YW5jZSkgfHxcbiAgICAgICAgICAgIGlkZW50aWZpZXJzW2lkZW50aWZpZXIgYXMga2V5b2YgdHlwZW9mIGlkZW50aWZpZXJzXVxuXG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICAgIFtjb2x1bW5PcHRpb24uY29sdW1uTmFtZV06IHtcbiAgICAgICAgICAgICAgdHlwZTogdGhpcy5nZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mKGNvbHVtbk9wdGlvbi50eXBlIHx8IHZhbHVlKSxcbiAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH0sIHt9KSxcbiAgICAgIClcbiAgICAgIGNvbnN0IGRhdGEgPSByZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXVxuXG4gICAgICBpZiAoaXNOaWwoZGF0YSkpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGAke2luc3RhbmNlLmNvbnN0cnVjdG9yLm5hbWV9IG5vdCBmb3VuZGApXG5cbiAgICAgIHJldHVybiB0aGlzLmNvbnZlcnREYXRhRnJvbUhhc3VyYShyZXN1bHRbdGhpcy5nZXRHcmFwaFFMT3BlcmF0aW9uXSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { mutation, query } from 'gql-query-builder';
|
|
3
|
-
import { isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
|
|
3
|
+
import { DebugHelper, isBoolean, isInteger, isNaN, isNil, isNumber, isString, isUUID, parseISO, } from '../../../utils';
|
|
4
4
|
import { GraphQLFieldHelper } from './helpers';
|
|
5
5
|
export const withHasuraGraphQL = (MixinBase) => {
|
|
6
6
|
return class HasuraGraphQLMixin extends MixinBase {
|
|
@@ -12,6 +12,7 @@ export const withHasuraGraphQL = (MixinBase) => {
|
|
|
12
12
|
this.authOptions = options.authOptions;
|
|
13
13
|
this.model = options.model;
|
|
14
14
|
this.fields = options.fields || this.model.identifiersFields;
|
|
15
|
+
this.logger = DebugHelper.from(this);
|
|
15
16
|
}
|
|
16
17
|
get headers() {
|
|
17
18
|
return {
|
|
@@ -35,13 +36,18 @@ export const withHasuraGraphQL = (MixinBase) => {
|
|
|
35
36
|
return this.fetch(resultQuery);
|
|
36
37
|
}
|
|
37
38
|
async query(operation, fields, variables) {
|
|
38
|
-
const builded = this.buildHasuraQueryFields({
|
|
39
|
+
const builded = this.buildHasuraQueryFields({
|
|
40
|
+
operation,
|
|
41
|
+
fields: fields,
|
|
42
|
+
variables,
|
|
43
|
+
});
|
|
39
44
|
const interpected = (await this.interceptors?.request?.(builded)) || builded;
|
|
40
45
|
const resultQuery = query(interpected);
|
|
41
46
|
const result = await this.fetch(resultQuery);
|
|
42
47
|
return (await this.interceptors?.response?.(result, interpected)) || result;
|
|
43
48
|
}
|
|
44
49
|
async fetch(params) {
|
|
50
|
+
this.logger.with('params').log(params);
|
|
45
51
|
const headers = this.headers;
|
|
46
52
|
const { data: result } = await axios({
|
|
47
53
|
url: `${this.endpoint}`,
|
|
@@ -51,6 +57,7 @@ export const withHasuraGraphQL = (MixinBase) => {
|
|
|
51
57
|
});
|
|
52
58
|
if (!isNil(result.errors))
|
|
53
59
|
throw new Error(JSON.stringify(result.errors));
|
|
60
|
+
this.logger.with('returns').log(result);
|
|
54
61
|
return result.data;
|
|
55
62
|
}
|
|
56
63
|
getAttributeGraphQLTypeOf(value) {
|
|
@@ -76,8 +83,8 @@ export const withHasuraGraphQL = (MixinBase) => {
|
|
|
76
83
|
return value;
|
|
77
84
|
return date;
|
|
78
85
|
}
|
|
79
|
-
convertDataFromHasura(data) {
|
|
80
|
-
const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, this.fields);
|
|
86
|
+
convertDataFromHasura(data, fields) {
|
|
87
|
+
const plain = GraphQLFieldHelper.ConvertFieldValueFrom(data, fields || this.fields);
|
|
81
88
|
return this.model.toInstance(plain);
|
|
82
89
|
}
|
|
83
90
|
convertDataToHasura(instance, update = false) {
|
|
@@ -98,4 +105,4 @@ export const withHasuraGraphQL = (MixinBase) => {
|
|
|
98
105
|
}
|
|
99
106
|
};
|
|
100
107
|
};
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR25ELE9BQU8sRUFHTCxTQUFTLEVBQ1QsU0FBUyxFQUNULEtBQUssRUFDTCxLQUFLLEVBQ0wsUUFBUSxFQUNSLFFBQVEsRUFDUixNQUFNLEVBQ04sUUFBUSxHQUNULE1BQU0sZ0JBQWdCLENBQUE7QUFXdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBc0I5QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixTQUFZLEVBQzBGLEVBQUU7SUFDeEcsT0FBTyxNQUFNLGtCQUFtQixTQUFRLFNBQVM7UUFzQi9DLFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUFtQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFekQsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUE7WUFFaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFBO1lBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQTtZQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUE7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO1lBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFnRCxDQUFBO1FBQzlG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LENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztvQkFDM0IsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQzVFLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUM7b0JBQ0UsU0FBUztvQkFDVCxTQUFTO29CQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3JFLENBQUE7UUFDUCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcydcbmltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xuXG5pbXBvcnQgeyBCYXNlTW9kZWxCdWlsZGVyLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQge1xuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLFxuICBNaXhpbkN0b3IsXG4gIGlzQm9vbGVhbixcbiAgaXNJbnRlZ2VyLFxuICBpc05hTixcbiAgaXNOaWwsXG4gIGlzTnVtYmVyLFxuICBpc1N0cmluZyxcbiAgaXNVVUlELFxuICBwYXJzZUlTTyxcbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQge1xuICBGaWVsZHMsXG4gIEdyYXBoUUxQYXJhbXMsXG4gIEdyYXBoUUxSZXBvc2l0b3J5LFxuICBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMsXG4gIEhhc3VyYUdyYXBoUUxGaWVsZHMsXG4gIEhhc3VyYUdyYXBoUUxIZWFkZXJzLFxuICBWYXJpYWJsZU9wdGlvbnMsXG59IGZyb20gJy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBHcmFwaFFMRmllbGRIZWxwZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5cbnR5cGUgUXVlcnlCdWlsZGVyT3B0aW9ucyA9IHtcbiAgb3BlcmF0aW9uOiBzdHJpbmdcbiAgZmllbGRzOiBGaWVsZHNcbiAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zXG59XG5cbnR5cGUgSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yczxQID0gUXVlcnlCdWlsZGVyT3B0aW9ucyB8IFF1ZXJ5QnVpbGRlck9wdGlvbnNbXT4gPSB7XG4gIHJlcXVlc3Q/OiA8Uj4ocmVxdWVzdDogUCkgPT4gUHJvbWlzZTxQICYgUj5cbiAgcmVzcG9uc2U/OiA8Uj4ocmVzcG9uc2U6IFIsIHJlcXVlc3Q6IFApID0+IFByb21pc2U8Uj5cbn1cblxuZXhwb3J0IHR5cGUgSGFzdXJhQ29uc3RydWN0b3JQYXJhbXM8TW9kZWwgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0ge1xuICB0YWJsZU5hbWU6IHN0cmluZ1xuICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNb2RlbD5cbiAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICBlbmRwb2ludDogc3RyaW5nXG4gIGludGVyY2VwdG9ycz86IEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnNcbiAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9uc1xufVxuXG5leHBvcnQgY29uc3Qgd2l0aEhhc3VyYUdyYXBoUUwgPSA8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmUsIFQgZXh0ZW5kcyBNaXhpbkN0b3IgPSBNaXhpbkN0b3I+KFxuICBNaXhpbkJhc2U6IFQsXG4pOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+LCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPGFueVtdLCBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxNQmFzZT5bXT4+ID0+IHtcbiAgcmV0dXJuIGNsYXNzIEhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgdGFibGVOYW1lOiBzdHJpbmdcbiAgICBlbmRwb2ludDogc3RyaW5nXG4gICAgYXV0aE9wdGlvbnM6IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9uc1xuICAgIGludGVyY2VwdG9yczogSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yc1xuICAgIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1CYXNlPlxuICAgIGZpZWxkczogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cblxuICAgIGdldCBoZWFkZXJzKCk6IEhhc3VyYUdyYXBoUUxIZWFkZXJzIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hdXRoVG9rZW4pID8ge30gOiB7IEF1dGhvcml6YXRpb246IHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhUb2tlbiB9KSxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmFkbWluU2VjcmV0KSA/IHt9IDogeyAnWC1IYXN1cmEtQWRtaW4tU2VjcmV0JzogdGhpcy5hdXRoT3B0aW9ucz8uYWRtaW5TZWNyZXQgfSksXG4gICAgICAgIC4uLihpc05pbCh0aGlzLmF1dGhPcHRpb25zPy5hdXRoUm9sZSlcbiAgICAgICAgICA/IHt9XG4gICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Sb2xlJzogdGhpcy5hdXRoT3B0aW9ucy5hdXRoUm9sZS5yb2xlLFxuICAgICAgICAgICAgICAnWC1IYXN1cmEtVXNlci1JZCc6IHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhSb2xlPy51c2VySWQsXG4gICAgICAgICAgICB9KSxcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBIYXN1cmFDb25zdHJ1Y3RvclBhcmFtczxNQmFzZT4gPSBwYXJhbXNbMF1cblxuICAgICAgc3VwZXIoLi4ucGFyYW1zKVxuXG4gICAgICB0aGlzLnRhYmxlTmFtZSA9IG9wdGlvbnMudGFibGVOYW1lXG4gICAgICB0aGlzLmVuZHBvaW50ID0gb3B0aW9ucy5lbmRwb2ludFxuICAgICAgdGhpcy5hdXRoT3B0aW9ucyA9IG9wdGlvbnMuYXV0aE9wdGlvbnNcbiAgICAgIHRoaXMubW9kZWwgPSBvcHRpb25zLm1vZGVsXG4gICAgICB0aGlzLmZpZWxkcyA9IG9wdGlvbnMuZmllbGRzIHx8ICh0aGlzLm1vZGVsLmlkZW50aWZpZXJzRmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+KVxuICAgIH1cblxuICAgIGFzeW5jIG11dGF0aW9uPFJldHVybkZpZWxkcyA9IGFueT4oXG4gICAgICBvcGVyYXRpb246IHN0cmluZyxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IG11dGF0aW9uKHtcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMpLFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG4gICAgfVxuXG4gICAgYXN5bmMgcXVlcnk8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcbiAgICAgIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCBidWlsZGVkID0gdGhpcy5idWlsZEhhc3VyYVF1ZXJ5RmllbGRzKHsgb3BlcmF0aW9uLCBmaWVsZHMsIHZhcmlhYmxlcyB9KVxuICAgICAgY29uc3QgaW50ZXJwZWN0ZWQgPSAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/LihidWlsZGVkKSkgfHwgYnVpbGRlZFxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBxdWVyeShpbnRlcnBlY3RlZClcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG5cbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlc3BvbnNlPy4ocmVzdWx0LCBpbnRlcnBlY3RlZCkpIHx8IHJlc3VsdFxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xuICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuaGVhZGVyc1xuICAgICAgY29uc3QgeyBkYXRhOiByZXN1bHQgfSA9IGF3YWl0IGF4aW9zKHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVuZHBvaW50fWAsXG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBkYXRhOiBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuXG4gICAgICBpZiAoIWlzTmlsKHJlc3VsdC5lcnJvcnMpKSB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzdWx0LmVycm9ycykpXG5cbiAgICAgIHJldHVybiByZXN1bHQuZGF0YVxuICAgIH1cblxuICAgIGdldEF0dHJpYnV0ZUdyYXBoUUxUeXBlT2Y8RmllbGRUeXBlPih2YWx1ZTogRmllbGRUeXBlKTogc3RyaW5nIHtcbiAgICAgIGlmIChpc1VVSUQodmFsdWUgYXMgYW55KSkgcmV0dXJuICd1dWlkJ1xuICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSkgcmV0dXJuICdTdHJpbmcnXG4gICAgICBpZiAoaXNCb29sZWFuKHZhbHVlKSkgcmV0dXJuICdCb29sZWFuJ1xuICAgICAgaWYgKHZhbHVlIGluc3RhbmNlb2YgRGF0ZSkgcmV0dXJuICd0aW1lc3RhbXB0eidcbiAgICAgIGlmIChpc0ludGVnZXIodmFsdWUpKSByZXR1cm4gJ0ludCdcbiAgICAgIGlmIChpc051bWJlcih2YWx1ZSkpIHJldHVybiAnbnVtZXJpYydcblxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeXBlIG5vdCBpbXBsZW1lbnRlZCB5ZXQnKVxuICAgIH1cblxuICAgIGNoZWNrSWZJc0RhdGVUaW1lQW5kUGFyc2UodmFsdWU6IHN0cmluZyk6IERhdGUgfCBzdHJpbmcge1xuICAgICAgaWYgKCEvXlxcZHs0fS0oMFsxLTldfDFbMC0yXSktKDBbMS05XXxbMTJdWzAtOV18M1swMV0pJC8udGVzdCh2YWx1ZSkpIHJldHVybiB2YWx1ZVxuXG4gICAgICBjb25zdCBkYXRlID0gcGFyc2VJU08odmFsdWUpXG5cbiAgICAgIGlmIChpc05hTihkYXRlLmdldFRpbWUoKSkpIHJldHVybiB2YWx1ZVxuXG4gICAgICByZXR1cm4gZGF0ZVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhRnJvbUhhc3VyYShkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+KTogTUJhc2Uge1xuICAgICAgY29uc3QgcGxhaW4gPSBHcmFwaFFMRmllbGRIZWxwZXIuQ29udmVydEZpZWxkVmFsdWVGcm9tKGRhdGEsIHRoaXMuZmllbGRzKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHBsYWluKVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhVG9IYXN1cmEoaW5zdGFuY2U6IE1CYXNlLCB1cGRhdGUgPSBmYWxzZSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4ge1xuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxuICAgIH1cblxuICAgIGJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgb3BlcmF0aW9uLFxuICAgICAgZmllbGRzLFxuICAgICAgdmFyaWFibGVzLFxuICAgIH06IHtcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXVxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xuICAgIH0pOiBRdWVyeUJ1aWxkZXJPcHRpb25zIHwgUXVlcnlCdWlsZGVyT3B0aW9uc1tdIHtcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ2hlY2tJc0dyYXBoUUxQYXJhbXMob3BlcmF0aW9uKVxuICAgICAgICA/IG9wZXJhdGlvbi5tYXAoKG9wdGlvbikgPT4gKHtcbiAgICAgICAgICAgIG9wZXJhdGlvbjogb3B0aW9uLm9wZXJhdGlvbixcbiAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhvcHRpb24uZmllbGRzKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiB7XG4gICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC1oYXN1cmEtZ3JhcGhxbC5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL21peGlucy93aXRoLWhhc3VyYS1ncmFwaHFsLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQTtBQUN6QixPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR25ELE9BQU8sRUFDTCxXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGdCQUFnQixDQUFBO0FBV3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQXNCOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FJL0IsU0FBWSxFQUMwRixFQUFFO0lBQ3hHLE9BQU8sTUFBTSxrQkFBbUIsU0FBUSxTQUFTO1FBdUIvQyxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBbUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBRXpELEtBQUssQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFBO1lBRWhCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQTtZQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUE7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFBO1lBQ3RDLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtZQUMxQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLElBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBZ0Qs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QTtRQUNyQyxDQUFDO1FBRUQsbUJBQW1CLENBQUMsUUFBZSxFQUFFLE1BQU0sR0FBRyxLQUFLO1lBQ2pELE9BQU8sa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDOUUsQ0FBQztRQUVELHNCQUFzQixDQUFDLEVBQ3JCLFNBQVMsRUFDVCxNQUFNLEVBQ04sU0FBUyxHQUtWO1lBQ0MsT0FBTyxrQkFBa0IsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6QixTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVM7b0JBQzNCLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztvQkFDM0IsTUFBTSxFQUFFLGtCQUFrQixDQUFDLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7aUJBQzVFLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUM7b0JBQ0UsU0FBUztvQkFDVCxTQUFTO29CQUNULE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxpQ0FBaUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3JFLENBQUE7UUFDUCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBheGlvcyBmcm9tICdheGlvcydcbmltcG9ydCB7IG11dGF0aW9uLCBxdWVyeSB9IGZyb20gJ2dxbC1xdWVyeS1idWlsZGVyJ1xuXG5pbXBvcnQgeyBCYXNlTW9kZWxCdWlsZGVyLCBNb2RlbEJhc2VTdHJ1Y3R1cmUgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQge1xuICBEZWJ1Z0hlbHBlcixcbiAgaXNCb29sZWFuLFxuICBpc0ludGVnZXIsXG4gIGlzTmFOLFxuICBpc05pbCxcbiAgaXNOdW1iZXIsXG4gIGlzU3RyaW5nLFxuICBpc1VVSUQsXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsXG4gIE1peGluQ3RvcixcbiAgcGFyc2VJU08sXG59IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHtcbiAgRmllbGRzLFxuICBHcmFwaFFMUGFyYW1zLFxuICBHcmFwaFFMUmVwb3NpdG9yeSxcbiAgSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zLFxuICBIYXN1cmFHcmFwaFFMRmllbGRzLFxuICBIYXN1cmFHcmFwaFFMSGVhZGVycyxcbiAgVmFyaWFibGVPcHRpb25zLFxufSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgR3JhcGhRTEZpZWxkSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG50eXBlIFF1ZXJ5QnVpbGRlck9wdGlvbnMgPSB7XG4gIG9wZXJhdGlvbjogc3RyaW5nXG4gIGZpZWxkczogRmllbGRzXG4gIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xufVxuXG50eXBlIEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnM8UCA9IFF1ZXJ5QnVpbGRlck9wdGlvbnMgfCBRdWVyeUJ1aWxkZXJPcHRpb25zW10+ID0ge1xuICByZXF1ZXN0PzogPFI+KHJlcXVlc3Q6IFApID0+IFByb21pc2U8UCAmIFI+XG4gIHJlc3BvbnNlPzogPFI+KHJlc3BvbnNlOiBSLCByZXF1ZXN0OiBQKSA9PiBQcm9taXNlPFI+XG59XG5cbmV4cG9ydCB0eXBlIEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsLCBNb2RlbFsnaWRlbnRpZmllcnNGaWVsZHMnXVtudW1iZXJdPj4gPSB7XG4gIHRhYmxlTmFtZTogc3RyaW5nXG4gIG1vZGVsOiBCYXNlTW9kZWxCdWlsZGVyPE1vZGVsPlxuICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+XG4gIGVuZHBvaW50OiBzdHJpbmdcbiAgaW50ZXJjZXB0b3JzPzogSGFzdXJhR3JhcGhRTEludGVyY2VwdG9yc1xuICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zXG59XG5cbmV4cG9ydCBjb25zdCB3aXRoSGFzdXJhR3JhcGhRTCA9IDxcbiAgTUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU8TUJhc2UsIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl0+LFxuICBUIGV4dGVuZHMgTWl4aW5DdG9yID0gTWl4aW5DdG9yLFxuPihcbiAgTWl4aW5CYXNlOiBULFxuKTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiwgTWVyZ2VDb25zdHJ1Y3RvclBhcmFtczxhbnlbXSwgSGFzdXJhQ29uc3RydWN0b3JQYXJhbXM8TUJhc2U+W10+PiA9PiB7XG4gIHJldHVybiBjbGFzcyBIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4ge1xuICAgIHRhYmxlTmFtZTogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcbiAgICBpbnRlcmNlcHRvcnM6IEhhc3VyYUdyYXBoUUxJbnRlcmNlcHRvcnNcbiAgICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNQmFzZT5cbiAgICBmaWVsZHM6IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+XG4gICAgbG9nZ2VyOiBEZWJ1Z0hlbHBlclxuXG4gICAgZ2V0IGhlYWRlcnMoKTogSGFzdXJhR3JhcGhRTEhlYWRlcnMge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhUb2tlbikgPyB7fSA6IHsgQXV0aG9yaXphdGlvbjogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFRva2VuIH0pLFxuICAgICAgICAuLi4oaXNOaWwodGhpcy5hdXRoT3B0aW9ucz8uYWRtaW5TZWNyZXQpID8ge30gOiB7ICdYLUhhc3VyYS1BZG1pbi1TZWNyZXQnOiB0aGlzLmF1dGhPcHRpb25zPy5hZG1pblNlY3JldCB9KSxcbiAgICAgICAgLi4uKGlzTmlsKHRoaXMuYXV0aE9wdGlvbnM/LmF1dGhSb2xlKVxuICAgICAgICAgID8ge31cbiAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgJ1gtSGFzdXJhLVJvbGUnOiB0aGlzLmF1dGhPcHRpb25zLmF1dGhSb2xlLnJvbGUsXG4gICAgICAgICAgICAgICdYLUhhc3VyYS1Vc2VyLUlkJzogdGhpcy5hdXRoT3B0aW9ucz8uYXV0aFJvbGU/LnVzZXJJZCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKC4uLnBhcmFtczogYW55W10pIHtcbiAgICAgIGNvbnN0IG9wdGlvbnM6IEhhc3VyYUNvbnN0cnVjdG9yUGFyYW1zPE1CYXNlPiA9IHBhcmFtc1swXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMudGFibGVOYW1lID0gb3B0aW9ucy50YWJsZU5hbWVcbiAgICAgIHRoaXMuZW5kcG9pbnQgPSBvcHRpb25zLmVuZHBvaW50XG4gICAgICB0aGlzLmF1dGhPcHRpb25zID0gb3B0aW9ucy5hdXRoT3B0aW9uc1xuICAgICAgdGhpcy5tb2RlbCA9IG9wdGlvbnMubW9kZWxcbiAgICAgIHRoaXMuZmllbGRzID0gb3B0aW9ucy5maWVsZHMgfHwgKHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pXG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcylcbiAgICB9XG5cbiAgICBhc3luYyBtdXRhdGlvbjxSZXR1cm5GaWVsZHMgPSBhbnk+KFxuICAgICAgb3BlcmF0aW9uOiBzdHJpbmcsXG4gICAgICBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgdmFyaWFibGVzPzogVmFyaWFibGVPcHRpb25zLFxuICAgICk6IFByb21pc2U8UmV0dXJuRmllbGRzPiB7XG4gICAgICBjb25zdCByZXN1bHRRdWVyeSA9IG11dGF0aW9uKHtcbiAgICAgICAgb3BlcmF0aW9uLFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhmaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pLFxuICAgICAgfSlcblxuICAgICAgcmV0dXJuIHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG4gICAgfVxuXG4gICAgYXN5bmMgcXVlcnk8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXSxcbiAgICAgIGZpZWxkcz86IHN0cmluZ1tdIHwgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXG4gICAgKTogUHJvbWlzZTxSZXR1cm5GaWVsZHM+IHtcbiAgICAgIGNvbnN0IGJ1aWxkZWQgPSB0aGlzLmJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgIGZpZWxkczogZmllbGRzIGFzIEhhc3VyYUdyYXBoUUxGaWVsZHM8TUJhc2U+LFxuICAgICAgICB2YXJpYWJsZXMsXG4gICAgICB9KVxuICAgICAgY29uc3QgaW50ZXJwZWN0ZWQgPSAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlcXVlc3Q/LihidWlsZGVkKSkgfHwgYnVpbGRlZFxuICAgICAgY29uc3QgcmVzdWx0UXVlcnkgPSBxdWVyeShpbnRlcnBlY3RlZClcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuZmV0Y2gocmVzdWx0UXVlcnkpXG5cbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5pbnRlcmNlcHRvcnM/LnJlc3BvbnNlPy4ocmVzdWx0LCBpbnRlcnBlY3RlZCkpIHx8IHJlc3VsdFxuICAgIH1cblxuICAgIGFzeW5jIGZldGNoPFJldHVybkZpZWxkcyA9IGFueT4ocGFyYW1zOiB7IHZhcmlhYmxlczogYW55OyBxdWVyeTogc3RyaW5nIH0pOiBQcm9taXNlPFJldHVybkZpZWxkcz4ge1xuICAgICAgdGhpcy5sb2dnZXIud2l0aCgncGFyYW1zJykubG9nKHBhcmFtcylcblxuICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuaGVhZGVyc1xuICAgICAgY29uc3QgeyBkYXRhOiByZXN1bHQgfSA9IGF3YWl0IGF4aW9zKHtcbiAgICAgICAgdXJsOiBgJHt0aGlzLmVuZHBvaW50fWAsXG4gICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICBkYXRhOiBwYXJhbXMsXG4gICAgICAgIGhlYWRlcnMsXG4gICAgICB9KVxuXG4gICAgICBpZiAoIWlzTmlsKHJlc3VsdC5lcnJvcnMpKSB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkocmVzdWx0LmVycm9ycykpXG5cbiAgICAgIHRoaXMubG9nZ2VyLndpdGgoJ3JldHVybnMnKS5sb2cocmVzdWx0KVxuXG4gICAgICByZXR1cm4gcmVzdWx0LmRhdGFcbiAgICB9XG5cbiAgICBnZXRBdHRyaWJ1dGVHcmFwaFFMVHlwZU9mPEZpZWxkVHlwZT4odmFsdWU6IEZpZWxkVHlwZSk6IHN0cmluZyB7XG4gICAgICBpZiAoaXNVVUlEKHZhbHVlIGFzIGFueSkpIHJldHVybiAndXVpZCdcbiAgICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHJldHVybiAnU3RyaW5nJ1xuICAgICAgaWYgKGlzQm9vbGVhbih2YWx1ZSkpIHJldHVybiAnQm9vbGVhbidcbiAgICAgIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHJldHVybiAndGltZXN0YW1wdHonXG4gICAgICBpZiAoaXNJbnRlZ2VyKHZhbHVlKSkgcmV0dXJuICdJbnQnXG4gICAgICBpZiAoaXNOdW1iZXIodmFsdWUpKSByZXR1cm4gJ251bWVyaWMnXG5cbiAgICAgIHRocm93IG5ldyBFcnJvcignVHlwZSBub3QgaW1wbGVtZW50ZWQgeWV0JylcbiAgICB9XG5cbiAgICBjaGVja0lmSXNEYXRlVGltZUFuZFBhcnNlKHZhbHVlOiBzdHJpbmcpOiBEYXRlIHwgc3RyaW5nIHtcbiAgICAgIGlmICghL15cXGR7NH0tKDBbMS05XXwxWzAtMl0pLSgwWzEtOV18WzEyXVswLTldfDNbMDFdKSQvLnRlc3QodmFsdWUpKSByZXR1cm4gdmFsdWVcblxuICAgICAgY29uc3QgZGF0ZSA9IHBhcnNlSVNPKHZhbHVlKVxuXG4gICAgICBpZiAoaXNOYU4oZGF0ZS5nZXRUaW1lKCkpKSByZXR1cm4gdmFsdWVcblxuICAgICAgcmV0dXJuIGRhdGVcbiAgICB9XG5cbiAgICBjb252ZXJ0RGF0YUZyb21IYXN1cmEoXG4gICAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+LFxuICAgICAgZmllbGRzPzogc3RyaW5nW10gfCBIYXN1cmFHcmFwaFFMRmllbGRzPE1CYXNlPixcbiAgICApOiBNQmFzZSB7XG4gICAgICBjb25zdCBwbGFpbiA9IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZUZyb20oXG4gICAgICAgIGRhdGEsXG4gICAgICAgIChmaWVsZHMgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4pIHx8IHRoaXMuZmllbGRzLFxuICAgICAgKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC50b0luc3RhbmNlKHBsYWluKVxuICAgIH1cblxuICAgIGNvbnZlcnREYXRhVG9IYXN1cmEoaW5zdGFuY2U6IE1CYXNlLCB1cGRhdGUgPSBmYWxzZSk6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IG51bWJlcj4ge1xuICAgICAgcmV0dXJuIEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0RmllbGRWYWx1ZVRvKGluc3RhbmNlLCB0aGlzLmZpZWxkcywgdXBkYXRlKVxuICAgIH1cblxuICAgIGJ1aWxkSGFzdXJhUXVlcnlGaWVsZHMoe1xuICAgICAgb3BlcmF0aW9uLFxuICAgICAgZmllbGRzLFxuICAgICAgdmFyaWFibGVzLFxuICAgIH06IHtcbiAgICAgIG9wZXJhdGlvbjogc3RyaW5nIHwgR3JhcGhRTFBhcmFtczxNQmFzZT5bXVxuICAgICAgZmllbGRzPzogSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT5cbiAgICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xuICAgIH0pOiBRdWVyeUJ1aWxkZXJPcHRpb25zIHwgUXVlcnlCdWlsZGVyT3B0aW9uc1tdIHtcbiAgICAgIHJldHVybiBHcmFwaFFMRmllbGRIZWxwZXIuQ2hlY2tJc0dyYXBoUUxQYXJhbXMob3BlcmF0aW9uKVxuICAgICAgICA/IG9wZXJhdGlvbi5tYXAoKG9wdGlvbikgPT4gKHtcbiAgICAgICAgICAgIG9wZXJhdGlvbjogb3B0aW9uLm9wZXJhdGlvbixcbiAgICAgICAgICAgIHZhcmlhYmxlczogb3B0aW9uLnZhcmlhYmxlcyxcbiAgICAgICAgICAgIGZpZWxkczogR3JhcGhRTEZpZWxkSGVscGVyLkNvbnZlcnRNb2RlbEZpZWxkc1RvR3JhcGhRTEZpZWxkcyhvcHRpb24uZmllbGRzKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiB7XG4gICAgICAgICAgICBvcGVyYXRpb24sXG4gICAgICAgICAgICB2YXJpYWJsZXMsXG4gICAgICAgICAgICBmaWVsZHM6IEdyYXBoUUxGaWVsZEhlbHBlci5Db252ZXJ0TW9kZWxGaWVsZHNUb0dyYXBoUUxGaWVsZHMoZmllbGRzKSxcbiAgICAgICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseModel, UpdateOptionActions, } from '../../../domain';
|
|
2
|
-
import { is, isNil } from '../../../utils';
|
|
2
|
+
import { DebugHelper, is, isNil } from '../../../utils';
|
|
3
3
|
import { AttributeOptionHelper } from './helpers';
|
|
4
4
|
export const withUpdateHasuraGraphQL = (MixinBase) => {
|
|
5
5
|
const getValueByAction = (options) => {
|
|
@@ -20,6 +20,7 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
|
|
|
20
20
|
this.updateGraphQLPKType = options?.updateGraphQLPKType || `${this.tableName}_pk_columns_input`;
|
|
21
21
|
}
|
|
22
22
|
async update(data) {
|
|
23
|
+
this.logger = DebugHelper.from(this, 'update');
|
|
23
24
|
const plainData = this.paramsToPlain(data);
|
|
24
25
|
await this.mutation(this.updateGraphQLOperation, this.model.identifiersFields.map((field) => AttributeOptionHelper.FindByAttribute(field, this.fields).columnName), {
|
|
25
26
|
_set: {
|
|
@@ -45,10 +46,11 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
|
|
|
45
46
|
getUpdateModelKeys(data) {
|
|
46
47
|
const instance = this.model.toInstance(data);
|
|
47
48
|
return this.model.identifiersFields.reduce((ids, identifier) => {
|
|
48
|
-
|
|
49
|
+
const identifierBinded = identifier;
|
|
50
|
+
if (isNil(instance.identifier[identifierBinded]))
|
|
49
51
|
return ids;
|
|
50
|
-
const columnOption = AttributeOptionHelper.FindByAttribute(
|
|
51
|
-
const value = columnOption?.to?.(data[
|
|
52
|
+
const columnOption = AttributeOptionHelper.FindByAttribute(identifierBinded, this.fields);
|
|
53
|
+
const value = columnOption?.to?.(data[identifierBinded], instance) || data[columnOption.attributeName];
|
|
52
54
|
return {
|
|
53
55
|
...ids,
|
|
54
56
|
[columnOption.columnName]: value,
|
|
@@ -57,4 +59,4 @@ export const withUpdateHasuraGraphQL = (MixinBase) => {
|
|
|
57
59
|
}
|
|
58
60
|
};
|
|
59
61
|
};
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFJVCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQTtBQUc3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFZakQsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FJckMsU0FBMkQsRUFJM0QsRUFBRTtJQUNGLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxPQUE2QixFQUFXLEVBQUU7UUFDbEUsSUFBSSxPQUFPLFlBQVksU0FBUztZQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQzFELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7WUFBRSxPQUFPLE9BQU8sQ0FBQTtRQUMxQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1lBQzdHLE9BQU8sSUFBSSxDQUFBO1FBRWIsT0FBTyxPQUFPLENBQUMsS0FBSyxDQUFBO0lBQ3RCLENBQUMsQ0FBQTtJQUVELE9BQU8sTUFBTSx3QkFBeUIsU0FBUSxTQUFTO1FBS3JELFlBQVksR0FBRyxNQUFhO1lBQzFCLE1BQU0sT0FBTyxHQUE0QixNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUVwRCxLQUFLLENBQUMs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Q0FBQyxDQUFBO2dCQUVoRyxPQUFPO29CQUNMLEdBQUcsR0FBRztvQkFDTixDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLO2lCQUNqQyxDQUFBO1lBQ0gsQ0FBQyxFQUFFLEVBQStDLENBQUMsQ0FBQTtRQUNyRCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VNb2RlbCxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzLFxuICBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zLFxuICBVcGRhdGVPcHRpb25BY3Rpb25zLFxuICBVcGRhdGVPcHRpb25zLFxuICBVcGRhdGVSZXBvc2l0b3J5LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBpcywgaXNOaWwsIE1lcmdlQ29uc3RydWN0b3JQYXJhbXMsIE1peGluQ3RvciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHsgR3JhcGhRTFJlcG9zaXRvcnksIEhhc3VyYUdyYXBoUUxGaWVsZHMgfSBmcm9tICcuLi90eXBlcydcblxuaW1wb3J0IHsgQXR0cmlidXRlT3B0aW9uSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8TUJhc2UgZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmU+ID0gVXBkYXRlUmVwb3NpdG9yeTxNQmFzZT4gJiB7XG4gIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFBhcnRpYWw8TUJhc2U+XG59XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxQS1R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZSxcbiAgVE1peGluQmFzZSBleHRlbmRzIE1peGluQ3RvcjxHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4+LFxuPihcbiAgTWl4aW5CYXNlOiBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+PiAmIFRNaXhpbkJhc2UsXG4pOiBNaXhpbkN0b3I8XG4gIEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPiAmIFVwZGF0ZUhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5VHlwZTxNQmFzZT4gJiBJbnN0YW5jZVR5cGU8VE1peGluQmFzZT4sXG4gIE1lcmdlQ29uc3RydWN0b3JQYXJhbXM8W1VwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zLCAuLi5hbnlbXV0sIENvbnN0cnVjdG9yUGFyYW1ldGVyczxUTWl4aW5CYXNlPj5cbj4gPT4ge1xuICBjb25zdCBnZXRWYWx1ZUJ5QWN0aW9uID0gKG9wdGlvbnM6IFVwZGF0ZU9wdGlvbnM8TUJhc2U+KTogdW5rbm93biA9PiB7XG4gICAgaWYgKG9wdGlvbnMgaW5zdGFuY2VvZiBCYXNlTW9kZWwpIHJldHVybiBvcHRpb25zLnRvUGxhaW4oKVxuICAgIGlmIChpc05pbChvcHRpb25zPy5hY3Rpb24pKSByZXR1cm4gb3B0aW9uc1xuICAgIGlmIChbVXBkYXRlT3B0aW9uQWN0aW9ucy5SRU1PVkVfRklFTEQudG9TdHJpbmcoKSwgVXBkYXRlT3B0aW9uQWN0aW9ucy5OVUxMLnRvU3RyaW5nKCldLmluY2x1ZGVzKG9wdGlvbnMuYWN0aW9uKSlcbiAgICAgIHJldHVybiBudWxsXG5cbiAgICByZXR1cm4gb3B0aW9ucy52YWx1ZVxuICB9XG5cbiAgcmV0dXJuIGNsYXNzIFVwZGF0ZUhhc3VyYUdyYXBoUUxNaXhpbiBleHRlbmRzIE1peGluQmFzZSBpbXBsZW1lbnRzIFVwZGF0ZVJlcG9zaXRvcnk8TUJhc2U+IHtcbiAgICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVHcmFwaFFMT2JqZWN0VHlwZTogc3RyaW5nXG4gICAgdXBkYXRlR3JhcGhRTFBLVHlwZTogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvciguLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgICBjb25zdCBvcHRpb25zOiBVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcyA9IHBhcmFtcz8uWzBdXG5cbiAgICAgIHN1cGVyKC4uLnBhcmFtcylcblxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMT3BlcmF0aW9uID0gb3B0aW9ucz8udXBkYXRlR3JhcGhRTE9wZXJhdGlvbiB8fCBgdXBkYXRlXyR7dGhpcy50YWJsZU5hbWV9X2J5X3BrYFxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMT2JqZWN0VHlwZSA9IG9wdGlvbnM/LnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9zZXRfaW5wdXRgXG4gICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxQS1R5cGUgPSBvcHRpb25zPy51cGRhdGVHcmFwaFFMUEtUeXBlIHx8IGAke3RoaXMudGFibGVOYW1lfV9wa19jb2x1bW5zX2lucHV0YFxuICAgIH1cblxuICAgIGFzeW5jIHVwZGF0ZShkYXRhOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFByb21pc2U8TUJhc2U+IHtcbiAgICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbihkYXRhKVxuXG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKFxuICAgICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24sXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMubWFwKFxuICAgICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICAgICkgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICAgIHtcbiAgICAgICAgICBfc2V0OiB7XG4gICAgICAgICAgICB0eXBlOiB0aGlzLnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UocGxhaW5EYXRhKSwgdHJ1ZSksXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBrX2NvbHVtbnM6IHsgdHlwZTogdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlLCB2YWx1ZTogdGhpcy5nZXRVcGRhdGVNb2RlbEtleXMocGxhaW5EYXRhKSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbkRhdGEpXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUGFydGlhbDxNQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7XG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAuLi4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dICE9PSB1bmRlZmluZWQgJiYge1xuICAgICAgICAgICAgW2N1cnJlbnRLZXldOiBnZXRWYWx1ZUJ5QWN0aW9uKFxuICAgICAgICAgICAgICBpczxVcGRhdGVPcHRpb25zPE1CYXNlPj4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG5cbiAgICBnZXRVcGRhdGVNb2RlbEtleXMoZGF0YTogUGFydGlhbDxNQmFzZT4pOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzPE1CYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2VbaWRlbnRpZmllcl0pKSByZXR1cm4gaWRzXG5cbiAgICAgICAgY29uc3QgY29sdW1uT3B0aW9uID0gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShpZGVudGlmaWVyLCB0aGlzLmZpZWxkcylcbiAgICAgICAgY29uc3QgdmFsdWUgPSBjb2x1bW5PcHRpb24/LnRvPy4oZGF0YVtpZGVudGlmaWVyXSwgaW5zdGFuY2UpIHx8IGRhdGFbY29sdW1uT3B0aW9uLmF0dHJpYnV0ZU5hbWVdXG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5pZHMsXG4gICAgICAgICAgW2NvbHVtbk9wdGlvbi5jb2x1bW5OYW1lXTogdmFsdWUsXG4gICAgICAgIH1cbiAgICAgIH0sIHt9IGFzIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnRpZXM8TUJhc2U+KVxuICAgIH1cbiAgfSBhcyBhbnlcbn1cbiJdfQ==
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9taXhpbnMvd2l0aC11cGRhdGUtaGFzdXJhLWdyYXBocWwubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFLVCxtQkFBbUIsR0FHcEIsTUFBTSxpQkFBaUIsQ0FBQTtBQUN4QixPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQXFDLE1BQU0sZ0JBQWdCLENBQUE7QUFHMUYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBY2pELE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLENBSXJDLFNBQTJELEVBSTNELEVBQUU7SUFDRixNQUFNLGdCQUFnQixHQUFHLENBQUMsT0FBNkIsRUFBVyxFQUFFO1FBQ2xFLElBQUksT0FBTyxZQUFZLFNBQVM7WUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUMxRCxJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO1lBQUUsT0FBTyxPQUFPLENBQUE7UUFDMUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztZQUM3RyxPQUFPLElBQUksQ0FBQTtRQUViLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQTtJQUN0QixDQUFDLENBQUE7SUFFRCxPQUFPLE1BQU0sd0JBQXlCLFNBQVEsU0FBUztRQUtyRCxZQUFZLEdBQUcsTUFBYTtZQUMxQixNQUFNLE9BQU8sR0FBNEIsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFFcEQs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QUFDLE1BQU0sQ0FDWixDQUFBO2dCQUNELE1BQU0sS0FBSyxHQUFHLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFBO2dCQUV0RyxPQUFPO29CQUNMLEdBQUcsR0FBRztvQkFDTixDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLO2lCQUNqQyxDQUFBO1lBQ0gsQ0FBQyxFQUFFLEVBQStDLENBQUMsQ0FBQTtRQUNyRCxDQUFDO0tBQ0ssQ0FBQTtBQUNWLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEJhc2VNb2RlbCxcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzLFxuICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzLFxuICBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zLFxuICBVcGRhdGVPcHRpb25BY3Rpb25zLFxuICBVcGRhdGVPcHRpb25zLFxuICBVcGRhdGVSZXBvc2l0b3J5LFxufSBmcm9tICcuLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBEZWJ1Z0hlbHBlciwgaXMsIGlzTmlsLCBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zLCBNaXhpbkN0b3IgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEdyYXBoUUxSZXBvc2l0b3J5LCBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmltcG9ydCB7IEF0dHJpYnV0ZU9wdGlvbkhlbHBlciB9IGZyb20gJy4vaGVscGVycydcblxuZXhwb3J0IHR5cGUgVXBkYXRlSGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlUeXBlPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZSwgTUJhc2VbJ2lkZW50aWZpZXJzRmllbGRzJ11bbnVtYmVyXT4sXG4+ID0gVXBkYXRlUmVwb3NpdG9yeTxNQmFzZT4gJiB7XG4gIHBhcmFtc1RvUGxhaW4ocGFyYW1zOiBSZXBvc2l0b3J5VXBkYXRlUGFyYW1zPE1CYXNlPik6IFBhcnRpYWw8TUJhc2U+XG59XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUNvbnN0cnVjdG9yUGFyYW1zID0ge1xuICB1cGRhdGVHcmFwaFFMT3BlcmF0aW9uPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlPzogc3RyaW5nXG4gIHVwZGF0ZUdyYXBoUUxQS1R5cGU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IHdpdGhVcGRhdGVIYXN1cmFHcmFwaFFMID0gPFxuICBNQmFzZSBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNQmFzZT4sXG4gIFRNaXhpbkJhc2UgZXh0ZW5kcyBNaXhpbkN0b3I8R3JhcGhRTFJlcG9zaXRvcnk8TUJhc2U+Pixcbj4oXG4gIE1peGluQmFzZTogTWl4aW5DdG9yPEdyYXBoUUxSZXBvc2l0b3J5PE1CYXNlPj4gJiBUTWl4aW5CYXNlLFxuKTogTWl4aW5DdG9yPFxuICBHcmFwaFFMUmVwb3NpdG9yeTxNQmFzZT4gJiBVcGRhdGVIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVR5cGU8TUJhc2U+ICYgSW5zdGFuY2VUeXBlPFRNaXhpbkJhc2U+LFxuICBNZXJnZUNvbnN0cnVjdG9yUGFyYW1zPFtVcGRhdGVDb25zdHJ1Y3RvclBhcmFtcywgLi4uYW55W11dLCBDb25zdHJ1Y3RvclBhcmFtZXRlcnM8VE1peGluQmFzZT4+XG4+ID0+IHtcbiAgY29uc3QgZ2V0VmFsdWVCeUFjdGlvbiA9IChvcHRpb25zOiBVcGRhdGVPcHRpb25zPE1CYXNlPik6IHVua25vd24gPT4ge1xuICAgIGlmIChvcHRpb25zIGluc3RhbmNlb2YgQmFzZU1vZGVsKSByZXR1cm4gb3B0aW9ucy50b1BsYWluKClcbiAgICBpZiAoaXNOaWwob3B0aW9ucz8uYWN0aW9uKSkgcmV0dXJuIG9wdGlvbnNcbiAgICBpZiAoW1VwZGF0ZU9wdGlvbkFjdGlvbnMuUkVNT1ZFX0ZJRUxELnRvU3RyaW5nKCksIFVwZGF0ZU9wdGlvbkFjdGlvbnMuTlVMTC50b1N0cmluZygpXS5pbmNsdWRlcyhvcHRpb25zLmFjdGlvbikpXG4gICAgICByZXR1cm4gbnVsbFxuXG4gICAgcmV0dXJuIG9wdGlvbnMudmFsdWVcbiAgfVxuXG4gIHJldHVybiBjbGFzcyBVcGRhdGVIYXN1cmFHcmFwaFFMTWl4aW4gZXh0ZW5kcyBNaXhpbkJhc2UgaW1wbGVtZW50cyBVcGRhdGVSZXBvc2l0b3J5PE1CYXNlPiB7XG4gICAgdXBkYXRlR3JhcGhRTE9wZXJhdGlvbjogc3RyaW5nXG4gICAgdXBkYXRlR3JhcGhRTE9iamVjdFR5cGU6IHN0cmluZ1xuICAgIHVwZGF0ZUdyYXBoUUxQS1R5cGU6IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoLi4ucGFyYW1zOiBhbnlbXSkge1xuICAgICAgY29uc3Qgb3B0aW9uczogVXBkYXRlQ29uc3RydWN0b3JQYXJhbXMgPSBwYXJhbXM/LlswXVxuXG4gICAgICBzdXBlciguLi5wYXJhbXMpXG5cbiAgICAgIHRoaXMudXBkYXRlR3JhcGhRTE9wZXJhdGlvbiA9IG9wdGlvbnM/LnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24gfHwgYHVwZGF0ZV8ke3RoaXMudGFibGVOYW1lfV9ieV9wa2BcbiAgICAgIHRoaXMudXBkYXRlR3JhcGhRTE9iamVjdFR5cGUgPSBvcHRpb25zPy51cGRhdGVHcmFwaFFMT2JqZWN0VHlwZSB8fCBgJHt0aGlzLnRhYmxlTmFtZX1fc2V0X2lucHV0YFxuICAgICAgdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlID0gb3B0aW9ucz8udXBkYXRlR3JhcGhRTFBLVHlwZSB8fCBgJHt0aGlzLnRhYmxlTmFtZX1fcGtfY29sdW1uc19pbnB1dGBcbiAgICB9XG5cbiAgICBhc3luYyB1cGRhdGUoZGF0YTogUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT4pOiBQcm9taXNlPE1CYXNlPiB7XG4gICAgICB0aGlzLmxvZ2dlciA9IERlYnVnSGVscGVyLmZyb20odGhpcywgJ3VwZGF0ZScpXG5cbiAgICAgIGNvbnN0IHBsYWluRGF0YSA9IHRoaXMucGFyYW1zVG9QbGFpbihkYXRhKVxuXG4gICAgICBhd2FpdCB0aGlzLm11dGF0aW9uKFxuICAgICAgICB0aGlzLnVwZGF0ZUdyYXBoUUxPcGVyYXRpb24sXG4gICAgICAgIHRoaXMubW9kZWwuaWRlbnRpZmllcnNGaWVsZHMubWFwKFxuICAgICAgICAgIChmaWVsZCkgPT4gQXR0cmlidXRlT3B0aW9uSGVscGVyLkZpbmRCeUF0dHJpYnV0ZShmaWVsZCwgdGhpcy5maWVsZHMpLmNvbHVtbk5hbWUsXG4gICAgICAgICkgYXMgSGFzdXJhR3JhcGhRTEZpZWxkczxNQmFzZT4sXG4gICAgICAgIHtcbiAgICAgICAgICBfc2V0OiB7XG4gICAgICAgICAgICB0eXBlOiB0aGlzLnVwZGF0ZUdyYXBoUUxPYmplY3RUeXBlLFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMuY29udmVydERhdGFUb0hhc3VyYSh0aGlzLm1vZGVsLnRvSW5zdGFuY2UocGxhaW5EYXRhKSwgdHJ1ZSksXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBrX2NvbHVtbnM6IHsgdHlwZTogdGhpcy51cGRhdGVHcmFwaFFMUEtUeXBlLCB2YWx1ZTogdGhpcy5nZXRVcGRhdGVNb2RlbEtleXMocGxhaW5EYXRhKSwgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICAgICAgfSxcbiAgICAgIClcblxuICAgICAgcmV0dXJuIHRoaXMubW9kZWwudG9JbnN0YW5jZShwbGFpbkRhdGEpXG4gICAgfVxuXG4gICAgcGFyYW1zVG9QbGFpbihwYXJhbXM6IFJlcG9zaXRvcnlVcGRhdGVQYXJhbXM8TUJhc2U+KTogUGFydGlhbDxNQmFzZT4ge1xuICAgICAgY29uc3QgbW9kZWwgPSB0aGlzLm1vZGVsXG5cbiAgICAgIGlmIChtb2RlbC5pc01vZGVsKHBhcmFtcykpIHJldHVybiBwYXJhbXMudG9QbGFpbigpXG5cbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhwYXJhbXMpLnJlZHVjZShcbiAgICAgICAgKGRhdGEsIGN1cnJlbnRLZXkpID0+ICh7XG4gICAgICAgICAgLi4uZGF0YSxcbiAgICAgICAgICAuLi4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dICE9PSB1bmRlZmluZWQgJiYge1xuICAgICAgICAgICAgW2N1cnJlbnRLZXldOiBnZXRWYWx1ZUJ5QWN0aW9uKFxuICAgICAgICAgICAgICBpczxVcGRhdGVPcHRpb25zPE1CYXNlPj4ocGFyYW1zW2N1cnJlbnRLZXkgYXMga2V5b2YgUmVwb3NpdG9yeVVwZGF0ZVBhcmFtczxNQmFzZT5dKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgfSksXG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICAgIClcbiAgICB9XG5cbiAgICBnZXRVcGRhdGVNb2RlbEtleXMoZGF0YTogUGFydGlhbDxNQmFzZT4pOiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0aWVzPE1CYXNlPiB7XG4gICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMubW9kZWwudG9JbnN0YW5jZShkYXRhKVxuXG4gICAgICByZXR1cm4gdGhpcy5tb2RlbC5pZGVudGlmaWVyc0ZpZWxkcy5yZWR1Y2UoKGlkcywgaWRlbnRpZmllcikgPT4ge1xuICAgICAgICBjb25zdCBpZGVudGlmaWVyQmluZGVkOiBFeHRyYWN0PFxuICAgICAgICAgIE5vbkZ1bmN0aW9uQW5kSWRlbnRpZmllclByb3BlcnR5TmFtZXM8TUJhc2U+LFxuICAgICAgICAgIE1CYXNlWydpZGVudGlmaWVyc0ZpZWxkcyddW251bWJlcl1cbiAgICAgICAgPiA9IGlkZW50aWZpZXJcblxuICAgICAgICBpZiAoaXNOaWwoaW5zdGFuY2UuaWRlbnRpZmllcltpZGVudGlmaWVyQmluZGVkXSkpIHJldHVybiBpZHNcblxuICAgICAgICBjb25zdCBjb2x1bW5PcHRpb24gPSBBdHRyaWJ1dGVPcHRpb25IZWxwZXIuRmluZEJ5QXR0cmlidXRlPE1CYXNlLCBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1CYXNlPj4oXG4gICAgICAgICAgaWRlbnRpZmllckJpbmRlZCxcbiAgICAgICAgICB0aGlzLmZpZWxkcyxcbiAgICAgICAgKVxuICAgICAgICBjb25zdCB2YWx1ZSA9IGNvbHVtbk9wdGlvbj8udG8/LihkYXRhW2lkZW50aWZpZXJCaW5kZWRdLCBpbnN0YW5jZSkgfHwgZGF0YVtjb2x1bW5PcHRpb24uYXR0cmlidXRlTmFtZV1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmlkcyxcbiAgICAgICAgICBbY29sdW1uT3B0aW9uLmNvbHVtbk5hbWVdOiB2YWx1ZSxcbiAgICAgICAgfVxuICAgICAgfSwge30gYXMgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydGllczxNQmFzZT4pXG4gICAgfVxuICB9IGFzIGFueVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbC5yZXBvc2l0b3J5LnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9ncmFwaHFsLnJlcG9zaXRvcnkudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZU1vZGVsQnVpbGRlciwgTW9kZWxCYXNlU3RydWN0dXJlIH0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgRGVidWdIZWxwZXIgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyB9IGZyb20gJy4vaGFzdXJhLWdyYXBocWwtYXV0aC1vcHRpb25zLnR5cGUnXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMRmllbGRzIH0gZnJvbSAnLi9oYXN1cmEtZ3JhcGhxbC1maWVsZHMudHlwZSdcbmltcG9ydCB7IFZhcmlhYmxlT3B0aW9ucyB9IGZyb20gJy4vdmFyaWFibGUtb3B0aW9ucy50eXBlJ1xuXG5leHBvcnQgdHlwZSBHcmFwaFFMUGFyYW1zPE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlPE1vZGVsPj4gPSB7XG4gIG9wZXJhdGlvbjogc3RyaW5nXG4gIGZpZWxkcz86IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+XG4gIHZhcmlhYmxlcz86IFZhcmlhYmxlT3B0aW9uc1xufVxuXG5leHBvcnQgdHlwZSBHcmFwaFFMUmVwb3NpdG9yeTxNb2RlbCBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZTxNb2RlbD4+ID0ge1xuICB0YWJsZU5hbWU6IHN0cmluZ1xuICBtb2RlbDogQmFzZU1vZGVsQnVpbGRlcjxNb2RlbD5cbiAgZmllbGRzOiBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICBlbmRwb2ludDogc3RyaW5nXG4gIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnNcbiAgbG9nZ2VyOiBEZWJ1Z0hlbHBlclxuICBtdXRhdGlvbjogPFJldHVybkZpZWxkcyA9IGFueT4oXG4gICAgb3BlcmF0aW9uOiBzdHJpbmcsXG4gICAgZmllbGRzPzogc3RyaW5nW10gfCBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxSZXR1cm5GaWVsZHM+XG4gIHF1ZXJ5OiA8UmV0dXJuRmllbGRzID0gYW55PihcbiAgICBvcGVyYXRpb246IHN0cmluZyB8IEdyYXBoUUxQYXJhbXM8TW9kZWw+W10sXG4gICAgZmllbGRzPzogc3RyaW5nW10gfCBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPixcbiAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZU9wdGlvbnMsXG4gICkgPT4gUHJvbWlzZTxSZXR1cm5GaWVsZHM+XG4gIGdldEF0dHJpYnV0ZUdyYXBoUUxUeXBlT2Y6IDxGaWVsZFZhbHVlPih2YWx1ZTogRmllbGRWYWx1ZSkgPT4gc3RyaW5nXG4gIGNvbnZlcnREYXRhRnJvbUhhc3VyYShkYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+LCBmaWVsZHM/OiBzdHJpbmdbXSB8IEhhc3VyYUdyYXBoUUxGaWVsZHM8TW9kZWw+KTogTW9kZWxcbiAgY29udmVydERhdGFUb0hhc3VyYShpbnN0YW5jZTogTW9kZWwsIHVwZGF0ZT86IGJvb2xlYW4pOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBudW1iZXI+XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtZmllbGRzLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9oYXN1cmEtZ3JhcGhxbC1maWVsZHMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOZXN0ZWRSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucyxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsZCxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgUHJvcFR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5cbmV4cG9ydCB0eXBlIENvbHVtbk9wdGlvbnM8RmllbGRUeXBlLCBNb2RlbCwgVmFsdWVGcm9tID0gYW55PiA9IHtcbiAgdHlwZT86IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlXG4gIGNvbHVtbk5hbWU/OiBzdHJpbmdcbiAgZmlsdGVycz86IHtcbiAgICBmaWx0ZXJUeXBlOiBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZSB8IHN0cmluZ1xuICAgIGZpbHRlcnM6IE5lc3RlZFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPEZpZWxkVHlwZT5cbiAgfVxuICBmaWVsZHM/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLWdyYXBocWwtZmllbGRzLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC90eXBlcy9oYXN1cmEtZ3JhcGhxbC1maWVsZHMudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTW9kZWxCYXNlU3RydWN0dXJlLFxuICBOZXN0ZWRSZXBvc2l0b3J5RmluZEZpZWx0ZXJzT3B0aW9ucyxcbiAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lcyxcbiAgUmVwb3NpdG9yeUZpbmRGaWVsZCxcbn0gZnJvbSAnLi4vLi4vLi4vZG9tYWluJ1xuaW1wb3J0IHsgUHJvcFR5cGUgfSBmcm9tICcuLi8uLi8uLi91dGlscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5cbmV4cG9ydCB0eXBlIENvbHVtbk9wdGlvbnM8RmllbGRUeXBlLCBNb2RlbCwgVmFsdWVGcm9tID0gYW55PiA9IHtcbiAgdHlwZT86IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlXG4gIGNvbHVtbk5hbWU/OiBzdHJpbmdcbiAgZmlsdGVycz86IHtcbiAgICBmaWx0ZXJUeXBlOiBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZSB8IHN0cmluZ1xuICAgIGZpbHRlcnM6IE5lc3RlZFJlcG9zaXRvcnlGaW5kRmllbHRlcnNPcHRpb25zPEZpZWxkVHlwZT5cbiAgfVxuICBmaWVsZHM/OiBIYXN1cmFHcmFwaFFMRmllbGRzPEZpZWxkVHlwZT5cbiAgZm9yZWlnbktleUNvbHVtbj86XG4gICAgfCBQYXJ0aWFsPFxuICAgICAgICBSZWNvcmQ8XG4gICAgICAgICAgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxGaWVsZFR5cGUgZXh0ZW5kcyBhbnlbXSA/IEZpZWxkVHlwZVtudW1iZXJdIDogRmllbGRUeXBlPixcbiAgICAgICAgICBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPiB8IChzdHJpbmcgJiB7fSlcbiAgICAgICAgPlxuICAgICAgPlxuICAgIHwge31cbiAgZnJvbT86ICh2YWx1ZTogVmFsdWVGcm9tIHwgVmFsdWVGcm9tW10sIGRhdGE/OiBhbnkpID0+IEZpZWxkVHlwZVxuICB0bz86ICh2YWx1ZTogRmllbGRUeXBlLCBpbnN0YW5jZT86IE1vZGVsKSA9PiBWYWx1ZUZyb21cbiAgYmluZEZpbmRGaWx0ZXI/OiAoXG4gICAgc2VudGVuY2U6IFJlcG9zaXRvcnlGaW5kRmllbGQ8TW9kZWwsIGtleW9mIE1vZGVsPixcbiAgKSA9PiBSZWNvcmQ8c3RyaW5nLCBSZXBvc2l0b3J5RmluZEZpZWxkPGFueSwgYW55PiB8IFZhbHVlRnJvbT4gfCBSZXBvc2l0b3J5RmluZEZpZWxkPGFueSwgYW55PiB8IFZhbHVlRnJvbVxuICBiaW5kUGVyc2lzdERhdGE/OiAodmFsdWU6IEZpZWxkVHlwZSwgaW5zdGFuY2U/OiBNb2RlbCkgPT4gUmVjb3JkPHN0cmluZywgVmFsdWVGcm9tPlxufVxuZXhwb3J0IHR5cGUgQWdncmVnYXRlT3B0aW9uTmFtZXMgPVxuICB8ICdhdmcnXG4gIHwgJ2NvdW50J1xuICB8ICdtYXgnXG4gIHwgJ21pbidcbiAgfCAnc3RkZGV2J1xuICB8ICdzdGRkZXZfcG9wJ1xuICB8ICdzdGRkZXZfc2FtcCdcbiAgfCAnc3VtJ1xuICB8ICd2YXJfcG9wJ1xuICB8ICd2YXJfc2FtcCdcbiAgfCAndmFyaWFuY2UnXG5leHBvcnQgdHlwZSBBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIFR5cGUsIFByb3BlcnRpZXMgZXh0ZW5kcyBrZXlvZiBNb2RlbCA9IGtleW9mIE1vZGVsPiA9XG4gIHwge1xuICAgICAgW0sgaW4gUHJvcGVydGllc106IFByb3BUeXBlPE1vZGVsLCBLPiBleHRlbmRzIFR5cGUgPyBLIDogbmV2ZXJcbiAgICB9W1Byb3BlcnRpZXNdXG4gIHwgc3RyaW5nXG5leHBvcnQgdHlwZSBBZ2dyZWdhdGVPcHRpb25zPE1vZGVsPiA9IHtcbiAgYXZnPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICBtYXg/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlciB8IERhdGU+PlxuICBtaW4/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlciB8IERhdGU+PlxuICBzdGRkZXY/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHN0ZGRldl9wb3A/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHN0ZGRldl9zYW1wPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICBzdW0/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHZhcl9wb3A/OiBBcnJheTxBZ2dyZWdhdGVPcHRpb25GaWVsZHM8TW9kZWwsIG51bWJlcj4+XG4gIHZhcl9zYW1wPzogQXJyYXk8QWdncmVnYXRlT3B0aW9uRmllbGRzPE1vZGVsLCBudW1iZXI+PlxuICB2YXJpYW5jZT86IEFycmF5PEFnZ3JlZ2F0ZU9wdGlvbkZpZWxkczxNb2RlbCwgbnVtYmVyPj5cbn1cblxudHlwZSBNb2RlbEJhc2VIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPiA9IE1vZGVsIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlXG4gID9cbiAgICAgIHwgTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5cbiAgICAgIHwge1xuICAgICAgICAgIFtrZXkgaW4gTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5dPzogUHJvcFR5cGU8TW9kZWwsIGtleT4gZXh0ZW5kcyBNb2RlbEJhc2VTdHJ1Y3R1cmVcbiAgICAgICAgICAgID8gSGFzdXJhR3JhcGhRTEZpZWxkczxQcm9wVHlwZTxNb2RlbCwga2V5Pj5cbiAgICAgICAgICAgIDogUHJvcFR5cGU8TW9kZWwsIGtleT4gZXh0ZW5kcyBhbnlbXVxuICAgICAgICAgICAgPyBQcm9wVHlwZTxNb2RlbCwga2V5PltdIGV4dGVuZHMgTW9kZWxCYXNlU3RydWN0dXJlW11cbiAgICAgICAgICAgICAgPyBIYXN1cmFHcmFwaFFMRmllbGRzPFByb3BUeXBlPE1vZGVsLCBrZXk+W10+XG4gICAgICAgICAgICAgIDogbmV2ZXJcbiAgICAgICAgICAgIDogbmV2ZXJcbiAgICAgICAgfVxuICAgICAgfCB7XG4gICAgICAgICAgW2tleSBpbiBOb25GdW5jdGlvbkFuZElkZW50aWZpZXJQcm9wZXJ0eU5hbWVzPE1vZGVsPl0/OiBrZXkgZXh0ZW5kcyAnYWdncmVnYXRlJ1xuICAgICAgICAgICAgPyBuZXZlclxuICAgICAgICAgICAgOiBQcm9wVHlwZTxNb2RlbCwga2V5PiBleHRlbmRzIE1vZGVsQmFzZVN0cnVjdHVyZVxuICAgICAgICAgICAgPyBDb2x1bW5PcHRpb25zPFByb3BUeXBlPE1vZGVsLCBrZXk+LCBNb2RlbD5cbiAgICAgICAgICAgIDogQ29sdW1uT3B0aW9uczxQcm9wVHlwZTxNb2RlbCwga2V5PiwgTW9kZWw+XG4gICAgICAgIH1cbiAgICAgIHwgUmVjb3JkPHN0cmluZywgQ29sdW1uT3B0aW9uczxQcm9wVHlwZTxNb2RlbCwgYW55PiwgTW9kZWw+PlxuICA6IHN0cmluZ1xuXG5leHBvcnQgdHlwZSBIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPiA9IChcbiAgfCBNb2RlbEJhc2VIYXN1cmFHcmFwaFFMRmllbGRzPE1vZGVsPlxuICB8IHsgYWdncmVnYXRlOiBBcnJheTxBZ2dyZWdhdGVPcHRpb25zPE1vZGVsPiB8ICdjb3VudCc+IH1cbiAgfCB7IHJldHVybmluZzogTm9uRnVuY3Rpb25BbmRJZGVudGlmaWVyUHJvcGVydHlOYW1lczxNb2RlbD5bXSB9XG4gIHwgJ2FmZmVjdGVkX3Jvd3MnXG4pW11cbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DebugDecoratorHelper } from '../helpers';
|
|
2
|
+
export function Debug(opts) {
|
|
3
|
+
return function (target) {
|
|
4
|
+
DebugDecoratorHelper.set(target.prototype, opts);
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuY2xhc3MuZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvdXRpbHMvZGVjb3JhdG9ycy9kZWJ1Zy5jbGFzcy5kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFnQixNQUFNLFlBQVksQ0FBQTtBQUUvRCxNQUFNLFVBQVUsS0FBSyxDQUFDLElBQW1CO0lBQ3ZDLE9BQU8sVUFBcUIsTUFBVztRQUNyQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUNsRCxDQUFDLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVidWdEZWNvcmF0b3JIZWxwZXIsIERlYnVnT3B0aW9ucyB9IGZyb20gJy4uL2hlbHBlcnMnXG5cbmV4cG9ydCBmdW5jdGlvbiBEZWJ1ZyhvcHRzPzogRGVidWdPcHRpb25zKTogQ2xhc3NEZWNvcmF0b3Ige1xuICByZXR1cm4gZnVuY3Rpb24gPFRGdW5jdGlvbj4odGFyZ2V0OiBhbnkpOiBURnVuY3Rpb24gfCB2b2lkIHtcbiAgICBEZWJ1Z0RlY29yYXRvckhlbHBlci5zZXQodGFyZ2V0LnByb3RvdHlwZSwgb3B0cylcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './debug.class.decorator';
|
|
2
|
+
export * from './trace.method.decorator';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy91dGlscy9kZWNvcmF0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUE7QUFDdkMsY0FBYywwQkFBMEIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGVidWcuY2xhc3MuZGVjb3JhdG9yJ1xuZXhwb3J0ICogZnJvbSAnLi90cmFjZS5tZXRob2QuZGVjb3JhdG9yJ1xuIl19
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { get } from 'lodash';
|
|
2
|
+
import { DebugHelper } from '../helpers';
|
|
3
|
+
const ASYNC_IDENTIFIER = 'async';
|
|
4
|
+
export function Log(options = {}) {
|
|
5
|
+
return Trace({ level: 'log', ...options });
|
|
6
|
+
}
|
|
7
|
+
export function Trace(options = {}) {
|
|
8
|
+
return function (target, propertyKey, propertyDescriptor) {
|
|
9
|
+
const method = propertyDescriptor.value;
|
|
10
|
+
const isPromise = method.toString().includes(ASYNC_IDENTIFIER);
|
|
11
|
+
const args = {
|
|
12
|
+
options,
|
|
13
|
+
method,
|
|
14
|
+
target,
|
|
15
|
+
propertyKey,
|
|
16
|
+
propertyDescriptor,
|
|
17
|
+
};
|
|
18
|
+
propertyDescriptor.value = isPromise ? promiseTracer(args) : functionTracer(args);
|
|
19
|
+
return propertyDescriptor;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const traceCall = function ({ target, propertyKey, propertyDescriptor, args }) {
|
|
23
|
+
if (!target.debug)
|
|
24
|
+
target.debug = DebugHelper.for(target, propertyKey);
|
|
25
|
+
return target.debug.push(propertyKey).trace('called', { target, propertyKey, propertyDescriptor, args });
|
|
26
|
+
};
|
|
27
|
+
const promiseTracer = function ({ options, method, propertyKey, propertyDescriptor }) {
|
|
28
|
+
return function (...args) {
|
|
29
|
+
return new Promise((resolve, reject) => {
|
|
30
|
+
const debug = traceCall({ target: this, propertyDescriptor, propertyKey, args });
|
|
31
|
+
if (get(options, 'level', '') === 'log') {
|
|
32
|
+
debug.with('params').log(args);
|
|
33
|
+
}
|
|
34
|
+
return method
|
|
35
|
+
.apply(this, args)
|
|
36
|
+
.then((result) => {
|
|
37
|
+
if (options.callbackFn) {
|
|
38
|
+
options.callbackFn({ target: this, result, args, namespace: [propertyKey] });
|
|
39
|
+
}
|
|
40
|
+
if (get(options, 'level', '') === 'log') {
|
|
41
|
+
debug.with('returns').log(result === undefined ? 'void' : result);
|
|
42
|
+
}
|
|
43
|
+
return resolve(result);
|
|
44
|
+
})
|
|
45
|
+
.catch((error) => {
|
|
46
|
+
debug.error(error, ...args);
|
|
47
|
+
debug.with('stack').error(error.stack).pop();
|
|
48
|
+
return reject(error);
|
|
49
|
+
})
|
|
50
|
+
.finally(() => {
|
|
51
|
+
return debug.trace('finally', { args }).pop();
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
const functionTracer = function ({ options, target, method, propertyKey, propertyDescriptor, }) {
|
|
57
|
+
return function (...args) {
|
|
58
|
+
const debug = traceCall({ target: this || target, propertyDescriptor, propertyKey, args });
|
|
59
|
+
if (get(options, 'level', '') === 'log') {
|
|
60
|
+
debug.with('params').log(args);
|
|
61
|
+
}
|
|
62
|
+
let result;
|
|
63
|
+
try {
|
|
64
|
+
result = method.apply(this, args);
|
|
65
|
+
if (options.callbackFn)
|
|
66
|
+
options.callbackFn({ target: this, result, args, namespace: [propertyKey] });
|
|
67
|
+
if (get(options, 'level', '') === 'log') {
|
|
68
|
+
debug.with('returns').log(result === undefined ? 'void' : result);
|
|
69
|
+
}
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
debug.error(error, ...args).pop();
|
|
74
|
+
throw error;
|
|
75
|
+
}
|
|
76
|
+
finally {
|
|
77
|
+
debug.trace('finally', { args }).pop();
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2UubWV0aG9kLmRlY29yYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL3V0aWxzL2RlY29yYXRvcnMvdHJhY2UubWV0aG9kLmRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBRTVCLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUErQnBELE1BQU0sZ0JBQWdCLEdBQUcsT0FBTyxDQUFBO0FBRWhDLE1BQU0sVUFBVSxHQUFHLENBQVksVUFBbUMsRUFBRTtJQUNsRSxPQUFPLEtBQUssQ0FBWSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFBO0FBQ3ZELENBQUM7QUFFRCxNQUFNLFVBQVUsS0FBSyxDQUFZLFVBQW1DLEVBQUU7SUFDcEUsT0FBTyxVQUFVLE1BQVcsRUFBRSxXQUFtQixFQUFFLGtCQUFzQztRQUN2RixNQUFNLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQyxLQUFLLENBQUE7UUFDdkMsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBQzlELE1BQU0sSUFBSSxHQUFHO1lBQ1gsT0FBTztZQUNQLE1BQU07WUFDTixNQUFNO1lBQ04sV0FBVztZQUNYLGtCQUFrQjtTQUNuQixDQUFBO1FBRUQsa0JBQWtCLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFakYsT0FBTyxrQkFBa0IsQ0FBQTtJQUMzQixDQUFDLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxTQUFTLEdBQUcsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUs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LENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7U0FDL0I7UUFFRCxJQUFJLE1BQVcsQ0FBQTtRQUVmLElBQUk7WUFDRixNQUFNLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7WUFFakMsSUFBSSxPQUFPLENBQUMsVUFBVTtnQkFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQTtZQUVwRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssRUFBRTtnQkFDdkMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQTthQUNsRTtZQUVELE9BQU8sTUFBTSxDQUFBO1NBQ2Q7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7WUFFakMsTUFBTSxLQUFLLENBQUE7U0FDWjtnQkFBUztZQUNSLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQTtTQUN2QztJQUNILENBQUMsQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaCdcblxuaW1wb3J0IHsgRGVidWdnYWJsZSwgRGVidWdIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzJ1xuXG5leHBvcnQgdHlwZSBDYWxsYmFja0ZuQXJnczxULCBSZXN1bHQ+ID0ge1xuICB0YXJnZXQ6IFRcbiAgcmVzdWx0OiBSZXN1bHRcbiAgYXJnczogQXJyYXk8YW55PlxuICBuYW1lc3BhY2U/OiBBcnJheTxzdHJpbmc+XG59XG5cbnR5cGUgQ2FsbGJhY2tGbjxULCBSZXN1bHQ+ID0gKG9wdHM6IENhbGxiYWNrRm5BcmdzPFQsIFJlc3VsdD4pID0+IHZvaWRcblxudHlwZSBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PiA9IHtcbiAgY2FsbGJhY2tGbj86IENhbGxiYWNrRm48VCwgUmVzdWx0PlxuICBsZXZlbD86ICd0cmFjZScgfCAnbG9nJ1xufVxuXG50eXBlIFRyYWNlcjxULCBSZXN1bHQ+ID0ge1xuICBvcHRpb25zOiBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PlxuICBtZXRob2Q6IGFueVxuICB0YXJnZXQ6IFQgJiBEZWJ1Z2dhYmxlXG4gIHByb3BlcnR5RGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yXG4gIHByb3BlcnR5S2V5OiBzdHJpbmdcbn1cblxudHlwZSBDYWxsVHJhY2VyQXJncyA9IHtcbiAgdGFyZ2V0OiBhbnlcbiAgcHJvcGVydHlLZXk6IHN0cmluZ1xuICBwcm9wZXJ0eURlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvclxuICBhcmdzOiBBcnJheTxhbnk+XG59XG5cbmNvbnN0IEFTWU5DX0lERU5USUZJRVIgPSAnYXN5bmMnXG5cbmV4cG9ydCBmdW5jdGlvbiBMb2c8VCwgUmVzdWx0PihvcHRpb25zOiBUcmFjZU9wdGlvbnM8VCwgUmVzdWx0PiA9IHt9KSB7XG4gIHJldHVybiBUcmFjZTxULCBSZXN1bHQ+KHsgbGV2ZWw6ICdsb2cnLCAuLi5vcHRpb25zIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBUcmFjZTxULCBSZXN1bHQ+KG9wdGlvbnM6IFRyYWNlT3B0aW9uczxULCBSZXN1bHQ+ID0ge30pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQ6IGFueSwgcHJvcGVydHlLZXk6IHN0cmluZywgcHJvcGVydHlEZXNjcmlwdG9yOiBQcm9wZXJ0eURlc2NyaXB0b3IpIHtcbiAgICBjb25zdCBtZXRob2QgPSBwcm9wZXJ0eURlc2NyaXB0b3IudmFsdWVcbiAgICBjb25zdCBpc1Byb21pc2UgPSBtZXRob2QudG9TdHJpbmcoKS5pbmNsdWRlcyhBU1lOQ19JREVOVElGSUVSKVxuICAgIGNvbnN0IGFyZ3MgPSB7XG4gICAgICBvcHRpb25zLFxuICAgICAgbWV0aG9kLFxuICAgICAgdGFyZ2V0LFxuICAgICAgcHJvcGVydHlLZXksXG4gICAgICBwcm9wZXJ0eURlc2NyaXB0b3IsXG4gICAgfVxuXG4gICAgcHJvcGVydHlEZXNjcmlwdG9yLnZhbHVlID0gaXNQcm9taXNlID8gcHJvbWlzZVRyYWNlcihhcmdzKSA6IGZ1bmN0aW9uVHJhY2VyKGFyZ3MpXG5cbiAgICByZXR1cm4gcHJvcGVydHlEZXNjcmlwdG9yXG4gIH1cbn1cblxuY29uc3QgdHJhY2VDYWxsID0gZnVuY3Rpb24gKHsgdGFyZ2V0LCBwcm9wZXJ0eUtleSwgcHJvcGVydHlEZXNjcmlwdG9yLCBhcmdzIH06IENhbGxUcmFjZXJBcmdzKTogRGVidWdIZWxwZXIge1xuICBpZiAoIXRhcmdldC5kZWJ1ZykgdGFyZ2V0LmRlYnVnID0gRGVidWdIZWxwZXIuZm9yKHRhcmdldCwgcHJvcGVydHlLZXkpXG5cbiAgcmV0dXJuIHRhcmdldC5kZWJ1Zy5wdXNoKHByb3BlcnR5S2V5KS50cmFjZSgnY2FsbGVkJywgeyB0YXJnZXQsIHByb3BlcnR5S2V5LCBwcm9wZXJ0eURlc2NyaXB0b3IsIGFyZ3MgfSlcbn1cblxuY29uc3QgcHJvbWlzZVRyYWNlciA9IGZ1bmN0aW9uIDxULCBSZXN1bHQ+KHsgb3B0aW9ucywgbWV0aG9kLCBwcm9wZXJ0eUtleSwgcHJvcGVydHlEZXNjcmlwdG9yIH06IFRyYWNlcjxULCBSZXN1bHQ+KSB7XG4gIHJldHVybiBmdW5jdGlvbiAodGhpczogYW55LCAuLi5hcmdzOiBBcnJheTxhbnk+KTogYW55IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgY29uc3QgZGVidWcgPSB0cmFjZUNhbGwoeyB0YXJnZXQ6IHRoaXMsIHByb3BlcnR5RGVzY3JpcHRvciwgcHJvcGVydHlLZXksIGFyZ3MgfSlcblxuICAgICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICAgIGRlYnVnLndpdGgoJ3BhcmFtcycpLmxvZyhhcmdzKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbWV0aG9kXG4gICAgICAgIC5hcHBseSh0aGlzLCBhcmdzKVxuICAgICAgICAudGhlbigocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAob3B0aW9ucy5jYWxsYmFja0ZuKSB7XG4gICAgICAgICAgICBvcHRpb25zLmNhbGxiYWNrRm4oeyB0YXJnZXQ6IHRoaXMsIHJlc3VsdCwgYXJncywgbmFtZXNwYWNlOiBbcHJvcGVydHlLZXldIH0pXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICAgICAgICBkZWJ1Zy53aXRoKCdyZXR1cm5zJykubG9nKHJlc3VsdCA9PT0gdW5kZWZpbmVkID8gJ3ZvaWQnIDogcmVzdWx0KVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXNvbHZlKHJlc3VsdClcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgICBkZWJ1Zy5lcnJvcihlcnJvciwgLi4uYXJncylcbiAgICAgICAgICBkZWJ1Zy53aXRoKCdzdGFjaycpLmVycm9yKGVycm9yLnN0YWNrKS5wb3AoKVxuXG4gICAgICAgICAgcmV0dXJuIHJlamVjdChlcnJvcilcbiAgICAgICAgfSlcbiAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgIHJldHVybiBkZWJ1Zy50cmFjZSgnZmluYWxseScsIHsgYXJncyB9KS5wb3AoKVxuICAgICAgICB9KVxuICAgIH0pXG4gIH1cbn1cblxuY29uc3QgZnVuY3Rpb25UcmFjZXIgPSBmdW5jdGlvbiA8VCwgUmVzdWx0Pih7XG4gIG9wdGlvbnMsXG4gIHRhcmdldCxcbiAgbWV0aG9kLFxuICBwcm9wZXJ0eUtleSxcbiAgcHJvcGVydHlEZXNjcmlwdG9yLFxufTogVHJhY2VyPFQsIFJlc3VsdD4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uICh0aGlzOiBhbnksIC4uLmFyZ3M6IEFycmF5PGFueT4pOiBhbnkge1xuICAgIGNvbnN0IGRlYnVnID0gdHJhY2VDYWxsKHsgdGFyZ2V0OiB0aGlzIHx8IHRhcmdldCwgcHJvcGVydHlEZXNjcmlwdG9yLCBwcm9wZXJ0eUtleSwgYXJncyB9KVxuXG4gICAgaWYgKGdldChvcHRpb25zLCAnbGV2ZWwnLCAnJykgPT09ICdsb2cnKSB7XG4gICAgICBkZWJ1Zy53aXRoKCdwYXJhbXMnKS5sb2coYXJncylcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBhbnlcblxuICAgIHRyeSB7XG4gICAgICByZXN1bHQgPSBtZXRob2QuYXBwbHkodGhpcywgYXJncylcblxuICAgICAgaWYgKG9wdGlvbnMuY2FsbGJhY2tGbikgb3B0aW9ucy5jYWxsYmFja0ZuKHsgdGFyZ2V0OiB0aGlzLCByZXN1bHQsIGFyZ3MsIG5hbWVzcGFjZTogW3Byb3BlcnR5S2V5XSB9KVxuXG4gICAgICBpZiAoZ2V0KG9wdGlvbnMsICdsZXZlbCcsICcnKSA9PT0gJ2xvZycpIHtcbiAgICAgICAgZGVidWcud2l0aCgncmV0dXJucycpLmxvZyhyZXN1bHQgPT09IHVuZGVmaW5lZCA/ICd2b2lkJyA6IHJlc3VsdClcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBkZWJ1Zy5lcnJvcihlcnJvciwgLi4uYXJncykucG9wKClcblxuICAgICAgdGhyb3cgZXJyb3JcbiAgICB9IGZpbmFsbHkge1xuICAgICAgZGVidWcudHJhY2UoJ2ZpbmFsbHknLCB7IGFyZ3MgfSkucG9wKClcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { compact, get } from 'lodash';
|
|
2
|
+
export class ClassNameHelper {
|
|
3
|
+
static get(clazz) {
|
|
4
|
+
if (!clazz)
|
|
5
|
+
return null;
|
|
6
|
+
const prototype = Object.getPrototypeOf(clazz);
|
|
7
|
+
const names = compact([
|
|
8
|
+
get(clazz, 'constructor.name'),
|
|
9
|
+
get(prototype, 'constructor.name'),
|
|
10
|
+
get(prototype, '__proto__.constructor.name'),
|
|
11
|
+
]);
|
|
12
|
+
return names.find((name) => name !== 'class_1');
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3MtbmFtZS5oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy91dGlscy9oZWxwZXJzL2NsYXNzLW5hbWUuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBRXJDLE1BQU0sT0FBTyxlQUFlO0lBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsS0FBSztZQUFFLE9BQU8sSUFBSSxDQUFBO1FBRXZCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDOUMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDO1lBQ3BCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsa0JBQWtCLENBQUM7WUFDOUIsR0FBRyxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQztZQUNsQyxHQUFHLENBQUMsU0FBUyxFQUFFLDRCQUE0QixDQUFDO1NBQzdDLENBQUMsQ0FBQTtRQUVGLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFBO0lBQ2pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvbXBhY3QsIGdldCB9IGZyb20gJ2xvZGFzaCdcblxuZXhwb3J0IGNsYXNzIENsYXNzTmFtZUhlbHBlciB7XG4gIHN0YXRpYyBnZXQoY2xheno6IGFueSk6IHN0cmluZyB7XG4gICAgaWYgKCFjbGF6eikgcmV0dXJuIG51bGxcblxuICAgIGNvbnN0IHByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihjbGF6eilcbiAgICBjb25zdCBuYW1lcyA9IGNvbXBhY3QoW1xuICAgICAgZ2V0KGNsYXp6LCAnY29uc3RydWN0b3IubmFtZScpLFxuICAgICAgZ2V0KHByb3RvdHlwZSwgJ2NvbnN0cnVjdG9yLm5hbWUnKSxcbiAgICAgIGdldChwcm90b3R5cGUsICdfX3Byb3RvX18uY29uc3RydWN0b3IubmFtZScpLFxuICAgIF0pXG5cbiAgICByZXR1cm4gbmFtZXMuZmluZCgobmFtZSkgPT4gbmFtZSAhPT0gJ2NsYXNzXzEnKVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReflectHelper } from './reflect.helper';
|
|
2
|
+
export class DebugDecoratorHelper {
|
|
3
|
+
static set(target, options) {
|
|
4
|
+
ReflectHelper.add({
|
|
5
|
+
key: DebugDecoratorHelper.DebugNamingMetadataKey,
|
|
6
|
+
target,
|
|
7
|
+
value: options,
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
static get(target) {
|
|
11
|
+
return ReflectHelper.first({
|
|
12
|
+
key: DebugDecoratorHelper.DebugNamingMetadataKey,
|
|
13
|
+
target,
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
DebugDecoratorHelper.DebugNamingMetadataKey = 'model:naming:decorator';
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWctZGVjb3JhdG9yLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL3V0aWxzL2hlbHBlcnMvZGVidWctZGVjb3JhdG9yLmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFPaEQsTUFBTSxPQUFPLG9CQUFvQjtJQUcvQixNQUFNLENBQUMsR0FBRyxDQUFDLE1BQWMsRUFBRSxPQUFxQjtRQUM5QyxhQUFhLENBQUMsR0FBRyxDQUFlO1lBQzlCLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQyxzQkFBc0I7WUFDaEQsTUFBTTtZQUNOLEtBQUssRUFBRSxPQUFPO1NBQ2YsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBYztRQUN2QixPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQWU7WUFDdkMsR0FBRyxFQUFFLG9CQUFvQixDQUFDLHNCQUFzQjtZQUNoRCxNQUFNO1NBQ1AsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs7QUFmTSwyQ0FBc0IsR0FBRyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlZmxlY3RIZWxwZXIgfSBmcm9tICcuL3JlZmxlY3QuaGVscGVyJ1xuXG5leHBvcnQgdHlwZSBEZWJ1Z09wdGlvbnMgPSB7XG4gIG5hbWU/OiBzdHJpbmdcbiAgbmFtZXNwYWNlcz86IEFycmF5PHN0cmluZz5cbn1cblxuZXhwb3J0IGNsYXNzIERlYnVnRGVjb3JhdG9ySGVscGVyIHtcbiAgc3RhdGljIERlYnVnTmFtaW5nTWV0YWRhdGFLZXkgPSAnbW9kZWw6bmFtaW5nOmRlY29yYXRvcidcblxuICBzdGF0aWMgc2V0KHRhcmdldDogb2JqZWN0LCBvcHRpb25zOiBEZWJ1Z09wdGlvbnMpOiB2b2lkIHtcbiAgICBSZWZsZWN0SGVscGVyLmFkZDxEZWJ1Z09wdGlvbnM+KHtcbiAgICAgIGtleTogRGVidWdEZWNvcmF0b3JIZWxwZXIuRGVidWdOYW1pbmdNZXRhZGF0YUtleSxcbiAgICAgIHRhcmdldCxcbiAgICAgIHZhbHVlOiBvcHRpb25zLFxuICAgIH0pXG4gIH1cblxuICBzdGF0aWMgZ2V0KHRhcmdldDogb2JqZWN0KTogRGVidWdPcHRpb25zIHtcbiAgICByZXR1cm4gUmVmbGVjdEhlbHBlci5maXJzdDxEZWJ1Z09wdGlvbnM+KHtcbiAgICAgIGtleTogRGVidWdEZWNvcmF0b3JIZWxwZXIuRGVidWdOYW1pbmdNZXRhZGF0YUtleSxcbiAgICAgIHRhcmdldCxcbiAgICB9KVxuICB9XG59XG4iXX0=
|