@pepperi-addons/ngx-lib 0.4.2-beta.117 → 0.4.2-beta.119
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/query-builder/common/model/operator.mjs +3 -47
- package/esm2020/query-builder/common/services/query-structure.service.mjs +24 -1
- package/esm2020/query-builder/query-builder.component.mjs +3 -4
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +27 -49
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +27 -49
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/package.json +1 -1
- package/query-builder/common/services/query-structure.service.d.ts +1 -0
- package/query-builder/query-builder.component.d.ts +1 -1
|
@@ -73,59 +73,15 @@ const Contains = {
|
|
|
73
73
|
type: null
|
|
74
74
|
};
|
|
75
75
|
const BeginsWith = {
|
|
76
|
-
legacy: '
|
|
76
|
+
legacy: 'StartWith',
|
|
77
77
|
smartFilter: PepSmartFilterOperators.BeginsWith,
|
|
78
78
|
type: null
|
|
79
79
|
};
|
|
80
80
|
const EndsWith = {
|
|
81
|
-
legacy: '
|
|
81
|
+
legacy: 'EndWith',
|
|
82
82
|
smartFilter: PepSmartFilterOperators.EndsWith,
|
|
83
83
|
type: null
|
|
84
84
|
};
|
|
85
|
-
/*
|
|
86
|
-
const BeginsWith: IPepQueryBuilderOperator = {
|
|
87
|
-
legacy: {
|
|
88
|
-
operator: 'BeginsWith',
|
|
89
|
-
type: 'String'
|
|
90
|
-
},
|
|
91
|
-
smartFilter: {
|
|
92
|
-
item: PepSmartFilterOperators.BeginsWith,
|
|
93
|
-
type: 'text'
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
const EndsWith: IPepQueryBuilderOperator = {
|
|
98
|
-
legacy: {
|
|
99
|
-
operator: 'EndsWith',
|
|
100
|
-
type: 'String'
|
|
101
|
-
},
|
|
102
|
-
smartFilter: {
|
|
103
|
-
item: PepSmartFilterOperators.EndsWith,
|
|
104
|
-
type: 'text'
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
const Before: IPepQueryBuilderOperator = {
|
|
109
|
-
legacy: {
|
|
110
|
-
operator: 'Before',
|
|
111
|
-
type: 'Date'
|
|
112
|
-
},
|
|
113
|
-
smartFilter: {
|
|
114
|
-
item: PepSmartFilterOperators.Before,
|
|
115
|
-
type: 'date'
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
|
|
119
|
-
const After: IPepQueryBuilderOperator = {
|
|
120
|
-
legacy: {
|
|
121
|
-
operator: 'After',
|
|
122
|
-
type: 'Date'
|
|
123
|
-
},
|
|
124
|
-
smartFilter: {
|
|
125
|
-
item: PepSmartFilterOperators.After,
|
|
126
|
-
type: 'date'
|
|
127
|
-
}
|
|
128
|
-
}; */
|
|
129
85
|
const InTheLast = {
|
|
130
86
|
legacy: 'InTheLast',
|
|
131
87
|
smartFilter: PepSmartFilterOperators.InTheLast,
|
|
@@ -263,4 +219,4 @@ export function getLegacyOperator(operator, type) {
|
|
|
263
219
|
(item.type === null || item.type.includes(type)));
|
|
264
220
|
return legacyOperator ? legacyOperator.legacy : null;
|
|
265
221
|
}
|
|
266
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUVsQyxNQUFNLHVDQUF1QyxDQUFDO0FBUy9DLE1BQU0sTUFBTSxHQUE2QjtJQUNyQyxNQUFNLEVBQUUsU0FBUztJQUNqQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtJQUMzQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDM0MsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUE2QjtJQUM3QyxNQUFNLEVBQUUsaUJBQWlCO0lBQ3pCLFdBQVcsRUFBRSwrQkFBK0IsQ0FBQyxnQkFBZ0I7SUFDN0QsSUFBSSxFQUFFLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsY0FBYyxDQUFDO0NBQ25ELENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLFlBQVk7SUFDcEIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFFBQVE7SUFDN0MsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBNkI7SUFDaEQsTUFBTSxFQUFFLG9CQUFvQjtJQUM1QixXQUFXLEVBQUUsK0JBQStCLENBQUMsbUJBQW1CO0lBQ2hFLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUM7Q0FDcEMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2QjtJQUN2QyxNQUFNLEVBQUUsR0FBRztJQUNYLFdBQVcsRUFBRSx1QkFBdUIsQ0FBQyxRQUFRO0lBQzdDLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUE2QjtJQUM5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QWlCO0lBQ2pCLFlBQVk7SUFDWixvQkFBb0I7SUFDcEIsS0FBSztJQUNMLFFBQVE7SUFDUixTQUFTO0lBQ1QsU0FBUztJQUNULGlCQUFpQjtJQUNqQixLQUFLO0lBQ0wsUUFBUTtJQUNSLEVBQUU7SUFDRixPQUFPO0lBQ1AsVUFBVTtJQUNWLEVBQUU7Q0FDTCxDQUFBO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsUUFBZ0IsRUFBRSxJQUF3QjtJQUM3RSxNQUFNLG1CQUFtQixHQUFHLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUM3RCxJQUFJLENBQUMsTUFBTSxLQUFLLFFBQVE7UUFDeEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRCxDQUFDO0lBQ0YsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEUsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQWlDLEVBQUUsSUFBd0I7SUFDekYsTUFBTSxjQUFjLEdBQUcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQ3hELElBQUksQ0FBQyxXQUFXLEtBQUssUUFBUTtRQUM3QixDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ25ELENBQUM7SUFDRixPQUFPLGNBQWMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLFxuICAgIFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycyxcbiAgICBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLFxuICAgIElQZXBTbWFydEZpbHRlck9wZXJhdG9yXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xuaW1wb3J0IHsgUGVwU21hcnRGaWx0ZXJUeXBlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc21hcnQtZmlsdGVycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yIHtcbiAgICBsZWdhY3k6IHN0cmluZywgLy9sZWdhY3kgT3BlcmF0b3IgICAgXG4gICAgc21hcnRGaWx0ZXI6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yLCAvL3NtYXJ0IGZpbHRlciBvcGVyYXRvciAgICBcbiAgICB0eXBlOiBQZXBTbWFydEZpbHRlclR5cGVbXSB8IG51bGwgLy9zbWFydCBmaWx0ZXIgdHlwZVxufVxuXG5jb25zdCBFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRXF1YWxzLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCcsICdyZWFsJ11cbn07XG5cbmNvbnN0IEVxdWFsc1ZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNFcXVhbFZhcmlhYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5FcXVhbHNUb1ZhcmlhYmxlLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCcsICdtdWx0aS1zZWxlY3QnXVxufTtcblxuY29uc3QgTm90RXF1YWw6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RXF1YWwsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgTm90RXF1YWxzVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVxdWFsVmFyaWFibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLk5vdEVxdWFsc1RvVmFyaWFibGUsXG4gICAgdHlwZTogWydib29sZWFuJywgJ211bHRpLXNlbGVjdCddXG59O1xuXG5jb25zdCBMZXNzVGhhbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJzwnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBMZXNzVGhhblZhcmlibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdMZXNzVGhhblZhcmlibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkxlc3NUaGFuVmFyaWFibGUsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgR3JlYXRlclRoYW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICc+JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuR3JlYXRlclRoYW4sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgR3JlYXRlclRoYW5WYXJpYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnR3JlYXRlclRoYW5WYXJpYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5HcmVhdGVyVGhhblZhcmlhYmxlLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbi8qXG5jb25zdCBHcmVhdGVyVGhhbk9yRXF1YWxzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiB7XG4gICAgICAgIG9wZXJhdG9yOiAnPj0nLFxuICAgICAgICB0eXBlOiAnSW50ZWdlcidcbiAgICB9LFxuICAgIHNtYXJ0RmlsdGVyOiB7XG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuT3JFcXVhbHMsXG4gICAgICAgIHR5cGU6ICdpbnQnXG4gICAgfVxufTtcblxuY29uc3QgTGVzc1RoYW5PckVxdWFsczogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJzw9JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5MZXNzVGhhbk9yRXF1YWxzLFxuICAgICAgICB0eXBlOiAnaW50JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfVxufTsgKi9cblxuY29uc3QgTnVtYmVyUmFuZ2U6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZXR3ZWVuJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTnVtYmVyUmFuZ2UsXG4gICAgdHlwZTogWydpbnQnXVxufTtcblxuY29uc3QgQ29udGFpbnM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdDb250YWlucycsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkNvbnRhaW5zLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEJlZ2luc1dpdGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZWdpbnNXaXRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVnaW5zV2l0aCxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBFbmRzV2l0aDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0VuZHNXaXRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRW5kc1dpdGgsXG4gICAgdHlwZTogbnVsbFxufTtcblxuLypcbmNvbnN0IEJlZ2luc1dpdGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6IHtcbiAgICAgICAgb3BlcmF0b3I6ICdCZWdpbnNXaXRoJyxcbiAgICAgICAgdHlwZTogJ1N0cmluZydcbiAgICB9LFxuICAgIHNtYXJ0RmlsdGVyOiB7XG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkJlZ2luc1dpdGgsXG4gICAgICAgIHR5cGU6ICd0ZXh0J1xuICAgIH1cbn07XG5cbmNvbnN0IEVuZHNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiB7XG4gICAgICAgIG9wZXJhdG9yOiAnRW5kc1dpdGgnLFxuICAgICAgICB0eXBlOiAnU3RyaW5nJ1xuICAgIH0sXG4gICAgc21hcnRGaWx0ZXI6IHtcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRW5kc1dpdGgsXG4gICAgICAgIHR5cGU6ICd0ZXh0J1xuICAgIH1cbn07XG5cbmNvbnN0IEJlZm9yZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJ0JlZm9yZScsXG4gICAgICAgIHR5cGU6ICdEYXRlJ1xuICAgIH0sXG4gICAgc21hcnRGaWx0ZXI6IHtcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVmb3JlLFxuICAgICAgICB0eXBlOiAnZGF0ZSdcbiAgICB9XG59O1xuXG5jb25zdCBBZnRlcjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJ0FmdGVyJyxcbiAgICAgICAgdHlwZTogJ0RhdGUnXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5BZnRlcixcbiAgICAgICAgdHlwZTogJ2RhdGUnXG4gICAgfVxufTsgKi9cblxuY29uc3QgSW5UaGVMYXN0OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW5UaGVMYXN0LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEluVGhlTGFzdENhbGVuZGFyOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSW5UaGVMYXN0Q2FsZW5kYXInLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlckFkZGl0aW9uYWxPcGVyYXRvcnMuSW5UaGVMYXN0Q2FsZW5kYXIsXG4gICAgdHlwZTogbnVsbFxufVxuXG4vKlxuY29uc3QgSW5UaGVMYXN0VmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJblRoZUxhc3RWYXJpYWJsZScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuSW5UaGVMYXN0VmFyaWFibGUsXG4gICAgdHlwZTogbnVsbFxufSAqL1xuXG5jb25zdCBOb3RJblRoZUxhc3Q6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdOb3RJblRoZUxhc3QnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3RJblRoZUxhc3QsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgTm90SW5UaGVMYXN0Q2FsZW5kYXI6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdOb3RJblRoZUxhc3RDYWxlbmRhcicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5Ob3RJblRoZUxhc3RDYWxlbmRhcixcbiAgICB0eXBlOiBudWxsXG59XG5cbmNvbnN0IFRvZGF5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVG9kYXknLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ub2RheSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBUaGlzV2VlazogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ1RoaXNXZWVrJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVGhpc1dlZWssXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgVGhpc01vbnRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVGhpc01vbnRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVGhpc01vbnRoLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IERhdGVSYW5nZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0JldHdlZW4nLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5EYXRlUmFuZ2UsXG4gICAgdHlwZTogWydkYXRlLXRpbWUnXVxufTtcblxuY29uc3QgZGF0ZVJhbmdlVmFyaWFibGU6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdCZXR3ZWVuVmFyaWFibGUnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlclZhcmlhYmxlT3BlcmF0b3JzLkRhdGVSYW5nZVZhcmlhYmxlLFxuICAgIHR5cGU6IFsnZGF0ZS10aW1lJ11cbn07XG5cbmNvbnN0IER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnRHVlSW4nLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5EdWVJbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBOb3REdWVJbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ05vdER1ZUluJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RHVlSW4sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgT246IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdPbicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk9uLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IElzRW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VtcHR5JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSXNFbXB0eSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBJc05vdEVtcHR5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNOb3RFbXB0eScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLklzTm90RW1wdHksXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc0VxdWFsJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW4sXG4gICAgdHlwZTogWydtdWx0aS1zZWxlY3QnXVxufTtcblxuXG5jb25zdCBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvcnMgPSBbXG4gICAgRXF1YWxzLFxuICAgIEVxdWFsc1ZhcmlhYmxlLFxuICAgIE5vdEVxdWFsLFxuICAgIE5vdEVxdWFsc1ZhcmlhYmxlLFxuICAgIExlc3NUaGFuLFxuICAgIExlc3NUaGFuVmFyaWJsZSxcbiAgICAvLyAgIExlc3NUaGFuT3JFcXVhbHMsXG4gICAgR3JlYXRlclRoYW4sXG4gICAgR3JlYXRlclRoYW5WYXJpYmxlLFxuICAgIC8vICAgR3JlYXRlclRoYW5PckVxdWFscyxcbiAgICBOdW1iZXJSYW5nZSxcbiAgICBDb250YWlucyxcbiAgICBCZWdpbnNXaXRoLFxuICAgIEVuZHNXaXRoLFxuICAgIC8vICAgQWZ0ZXIsXG4gICAgLy8gICBCZWZvcmUsXG4gICAgSW5UaGVMYXN0LFxuICAgIC8vIEluVGhlTGFzdFZhcmlhYmxlLFxuICAgIEluVGhlTGFzdENhbGVuZGFyLFxuICAgIE5vdEluVGhlTGFzdCxcbiAgICBOb3RJblRoZUxhc3RDYWxlbmRhcixcbiAgICBUb2RheSxcbiAgICBUaGlzV2VlayxcbiAgICBUaGlzTW9udGgsXG4gICAgRGF0ZVJhbmdlLFxuICAgIGRhdGVSYW5nZVZhcmlhYmxlLFxuICAgIER1ZUluLFxuICAgIE5vdER1ZUluLFxuICAgIE9uLFxuICAgIElzRW1wdHksXG4gICAgSXNOb3RFbXB0eSxcbiAgICBJblxuXVxuXG4vKipcbiAqIGdldHMgYSBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIG9wZXJhdG9yIGxlZ2FjeSBvcGVyYXRvclxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgc21hcnQgZmlsdGVyIG9wZXJhdG9yIGl0ZW1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNtYXJ0RmlsdGVyT3BlcmF0b3Iob3BlcmF0b3I6IHN0cmluZywgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlKTogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IgfCBudWxsIHtcbiAgICBjb25zdCBzbWFydEZpbHRlck9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxuICAgICAgICBpdGVtLmxlZ2FjeSA9PT0gb3BlcmF0b3IgJiZcbiAgICAgICAgKGl0ZW0udHlwZSA9PT0gbnVsbCB8fCBpdGVtLnR5cGUuaW5jbHVkZXModHlwZSkpXG4gICAgKTtcbiAgICByZXR1cm4gc21hcnRGaWx0ZXJPcGVyYXRvciA/IHNtYXJ0RmlsdGVyT3BlcmF0b3Iuc21hcnRGaWx0ZXIgOiBudWxsO1xufVxuXG4vKipcbiAqIGdldHMgYSBsZWdhY3kgb3BlcmF0b3IgdmFsdWVcbiAqIEBwYXJhbSBvcGVyYXRvciBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxuICogQHJldHVybnMgbGVnYWN5IG9wZXJhdG9yIHZhbHVlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRMZWdhY3lPcGVyYXRvcihvcGVyYXRvcjogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsIHR5cGU6IFBlcFNtYXJ0RmlsdGVyVHlwZSk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IGxlZ2FjeU9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxuICAgICAgICBpdGVtLnNtYXJ0RmlsdGVyID09PSBvcGVyYXRvciAmJlxuICAgICAgICAoaXRlbS50eXBlID09PSBudWxsIHx8IGl0ZW0udHlwZS5pbmNsdWRlcyh0eXBlKSlcbiAgICApO1xuICAgIHJldHVybiBsZWdhY3lPcGVyYXRvciA/IGxlZ2FjeU9wZXJhdG9yLmxlZ2FjeSA6IG51bGw7XG59XG4iXX0=
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUVsQyxNQUFNLHVDQUF1QyxDQUFDO0FBUy9DLE1BQU0sTUFBTSxHQUE2QjtJQUNyQyxNQUFNLEVBQUUsU0FBUztJQUNqQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtJQUMzQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUM7Q0FDM0MsQ0FBQztBQUVGLE1BQU0sY0FBYyxHQUE2QjtJQUM3QyxNQUFNLEVBQUUsaUJBQWlCO0lBQ3pCLFdBQVcsRUFBRSwrQkFBK0IsQ0FBQyxnQkFBZ0I7SUFDN0QsSUFBSSxFQUFFLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsY0FBYyxDQUFDO0NBQ25ELENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLFlBQVk7SUFDcEIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFFBQVE7SUFDN0MsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBNkI7SUFDaEQsTUFBTSxFQUFFLG9CQUFvQjtJQUM1QixXQUFXLEVBQUUsK0JBQStCLENBQUMsbUJBQW1CO0lBQ2hFLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUM7Q0FDcEMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2QjtJQUN2QyxNQUFNLEVBQUUsR0FBRztJQUNYLFdBQVcsRUFBRSx1QkFBdUIsQ0FBQyxRQUFRO0lBQzdDLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sZUFBZSxHQUE2QjtJQUM5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U0FBUztJQUNULFNBQVM7SUFDVCxpQkFBaUI7SUFDakIsS0FBSztJQUNMLFFBQVE7SUFDUixFQUFFO0lBQ0YsT0FBTztJQUNQLFVBQVU7SUFDVixFQUFFO0NBQ0wsQ0FBQTtBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLFFBQWdCLEVBQUUsSUFBd0I7SUFDN0UsTUFBTSxtQkFBbUIsR0FBRyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDN0QsSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRO1FBQ3hCLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDbkQsQ0FBQztJQUNGLE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3hFLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxRQUFpQyxFQUFFLElBQXdCO0lBQ3pGLE1BQU0sY0FBYyxHQUFHLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUN4RCxJQUFJLENBQUMsV0FBVyxLQUFLLFFBQVE7UUFDN0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNuRCxDQUFDO0lBQ0YsT0FBTyxjQUFjLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN6RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBQZXBTbWFydEZpbHRlck9wZXJhdG9ycyxcbiAgICBQZXBTbWFydEZpbHRlckFkZGl0aW9uYWxPcGVyYXRvcnMsXG4gICAgUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycyxcbiAgICBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvclxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zbWFydC1maWx0ZXJzJztcbmltcG9ydCB7IFBlcFNtYXJ0RmlsdGVyVHlwZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciB7XG4gICAgbGVnYWN5OiBzdHJpbmcsIC8vbGVnYWN5IE9wZXJhdG9yICAgIFxuICAgIHNtYXJ0RmlsdGVyOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciwgLy9zbWFydCBmaWx0ZXIgb3BlcmF0b3IgICAgXG4gICAgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlW10gfCBudWxsIC8vc21hcnQgZmlsdGVyIHR5cGVcbn1cblxuY29uc3QgRXF1YWxzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNFcXVhbCcsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkVxdWFscyxcbiAgICB0eXBlOiBbJ2Jvb2xlYW4nLCAnaW50JywgJ3RleHQnLCAncmVhbCddXG59O1xuXG5jb25zdCBFcXVhbHNWYXJpYWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0lzRXF1YWxWYXJpYWJsZScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuRXF1YWxzVG9WYXJpYWJsZSxcbiAgICB0eXBlOiBbJ2Jvb2xlYW4nLCAnaW50JywgJ3RleHQnLCAnbXVsdGktc2VsZWN0J11cbn07XG5cbmNvbnN0IE5vdEVxdWFsOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNOb3RFcXVhbCcsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdEVxdWFsLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE5vdEVxdWFsc1ZhcmlhYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnSXNOb3RFcXVhbFZhcmlhYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5Ob3RFcXVhbHNUb1ZhcmlhYmxlLFxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdtdWx0aS1zZWxlY3QnXVxufTtcblxuY29uc3QgTGVzc1RoYW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICc8JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTGVzc1RoYW4sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgTGVzc1RoYW5WYXJpYmxlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnTGVzc1RoYW5WYXJpYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5MZXNzVGhhblZhcmlhYmxlLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEdyZWF0ZXJUaGFuOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnPicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IEdyZWF0ZXJUaGFuVmFyaWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0dyZWF0ZXJUaGFuVmFyaWJsZScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuR3JlYXRlclRoYW5WYXJpYWJsZSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG4vKlxuY29uc3QgR3JlYXRlclRoYW5PckVxdWFsczogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeToge1xuICAgICAgICBvcGVyYXRvcjogJz49JyxcbiAgICAgICAgdHlwZTogJ0ludGVnZXInXG4gICAgfSxcbiAgICBzbWFydEZpbHRlcjoge1xuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5HcmVhdGVyVGhhbk9yRXF1YWxzLFxuICAgICAgICB0eXBlOiAnaW50J1xuICAgIH1cbn07XG5cbmNvbnN0IExlc3NUaGFuT3JFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6IHtcbiAgICAgICAgb3BlcmF0b3I6ICc8PScsXG4gICAgICAgIHR5cGU6ICdJbnRlZ2VyJ1xuICAgIH0sXG4gICAgc21hcnRGaWx0ZXI6IHtcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTGVzc1RoYW5PckVxdWFscyxcbiAgICAgICAgdHlwZTogJ2ludCcsXG4gICAgICAgIHR5cGU6ICdJbnRlZ2VyJ1xuICAgIH1cbn07ICovXG5cbmNvbnN0IE51bWJlclJhbmdlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnQmV0d2VlbicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk51bWJlclJhbmdlLFxuICAgIHR5cGU6IFsnaW50J11cbn07XG5cbmNvbnN0IENvbnRhaW5zOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnQ29udGFpbnMnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Db250YWlucyxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBCZWdpbnNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnU3RhcnRXaXRoJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVnaW5zV2l0aCxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBFbmRzV2l0aDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0VuZFdpdGgnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5FbmRzV2l0aCxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBJblRoZUxhc3Q6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJblRoZUxhc3QnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5JblRoZUxhc3QsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSW5UaGVMYXN0Q2FsZW5kYXI6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJblRoZUxhc3RDYWxlbmRhcicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyQWRkaXRpb25hbE9wZXJhdG9ycy5JblRoZUxhc3RDYWxlbmRhcixcbiAgICB0eXBlOiBudWxsXG59XG5cbi8qXG5jb25zdCBJblRoZUxhc3RWYXJpYWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0luVGhlTGFzdFZhcmlhYmxlJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJWYXJpYWJsZU9wZXJhdG9ycy5JblRoZUxhc3RWYXJpYWJsZSxcbiAgICB0eXBlOiBudWxsXG59ICovXG5cbmNvbnN0IE5vdEluVGhlTGFzdDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ05vdEluVGhlTGFzdCcsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdEluVGhlTGFzdCxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBOb3RJblRoZUxhc3RDYWxlbmRhcjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ05vdEluVGhlTGFzdENhbGVuZGFyJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJBZGRpdGlvbmFsT3BlcmF0b3JzLk5vdEluVGhlTGFzdENhbGVuZGFyLFxuICAgIHR5cGU6IG51bGxcbn1cblxuY29uc3QgVG9kYXk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdUb2RheScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLlRvZGF5LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IFRoaXNXZWVrOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnVGhpc1dlZWsnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5UaGlzV2VlayxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBUaGlzTW9udGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdUaGlzTW9udGgnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5UaGlzTW9udGgsXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgRGF0ZVJhbmdlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnQmV0d2VlbicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkRhdGVSYW5nZSxcbiAgICB0eXBlOiBbJ2RhdGUtdGltZSddXG59O1xuXG5jb25zdCBkYXRlUmFuZ2VWYXJpYWJsZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0JldHdlZW5WYXJpYWJsZScsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyVmFyaWFibGVPcGVyYXRvcnMuRGF0ZVJhbmdlVmFyaWFibGUsXG4gICAgdHlwZTogWydkYXRlLXRpbWUnXVxufTtcblxuY29uc3QgRHVlSW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdEdWVJbicsXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkR1ZUluLFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IE5vdER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XG4gICAgbGVnYWN5OiAnTm90RHVlSW4nLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3REdWVJbixcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBPbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ09uJyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuT24sXG4gICAgdHlwZTogbnVsbFxufTtcblxuY29uc3QgSXNFbXB0eTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0lzRW1wdHknLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Jc0VtcHR5LFxuICAgIHR5cGU6IG51bGxcbn07XG5cbmNvbnN0IElzTm90RW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcbiAgICBsZWdhY3k6ICdJc05vdEVtcHR5JyxcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSXNOb3RFbXB0eSxcbiAgICB0eXBlOiBudWxsXG59O1xuXG5jb25zdCBJbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xuICAgIGxlZ2FjeTogJ0lzRXF1YWwnLFxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5JbixcbiAgICB0eXBlOiBbJ211bHRpLXNlbGVjdCddXG59O1xuXG5cbmNvbnN0IFBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9ycyA9IFtcbiAgICBFcXVhbHMsXG4gICAgRXF1YWxzVmFyaWFibGUsXG4gICAgTm90RXF1YWwsXG4gICAgTm90RXF1YWxzVmFyaWFibGUsXG4gICAgTGVzc1RoYW4sXG4gICAgTGVzc1RoYW5WYXJpYmxlLFxuICAgIC8vICAgTGVzc1RoYW5PckVxdWFscyxcbiAgICBHcmVhdGVyVGhhbixcbiAgICBHcmVhdGVyVGhhblZhcmlibGUsXG4gICAgLy8gICBHcmVhdGVyVGhhbk9yRXF1YWxzLFxuICAgIE51bWJlclJhbmdlLFxuICAgIENvbnRhaW5zLFxuICAgIEJlZ2luc1dpdGgsXG4gICAgRW5kc1dpdGgsXG4gICAgLy8gICBBZnRlcixcbiAgICAvLyAgIEJlZm9yZSxcbiAgICBJblRoZUxhc3QsXG4gICAgLy8gSW5UaGVMYXN0VmFyaWFibGUsXG4gICAgSW5UaGVMYXN0Q2FsZW5kYXIsXG4gICAgTm90SW5UaGVMYXN0LFxuICAgIE5vdEluVGhlTGFzdENhbGVuZGFyLFxuICAgIFRvZGF5LFxuICAgIFRoaXNXZWVrLFxuICAgIFRoaXNNb250aCxcbiAgICBEYXRlUmFuZ2UsXG4gICAgZGF0ZVJhbmdlVmFyaWFibGUsXG4gICAgRHVlSW4sXG4gICAgTm90RHVlSW4sXG4gICAgT24sXG4gICAgSXNFbXB0eSxcbiAgICBJc05vdEVtcHR5LFxuICAgIEluXG5dXG5cbi8qKlxuICogZ2V0cyBhIHNtYXJ0IGZpbHRlciBvcGVyYXRvciBpdGVtXG4gKiBAcGFyYW0gb3BlcmF0b3IgbGVnYWN5IG9wZXJhdG9yXG4gKiBAcGFyYW0gdHlwZSBzbWFydCBmaWx0ZXIncyB0eXBlXG4gKiBAcmV0dXJucyBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0U21hcnRGaWx0ZXJPcGVyYXRvcihvcGVyYXRvcjogc3RyaW5nLCB0eXBlOiBQZXBTbWFydEZpbHRlclR5cGUpOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciB8IG51bGwge1xuICAgIGNvbnN0IHNtYXJ0RmlsdGVyT3BlcmF0b3IgPSBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvcnMuZmluZChpdGVtID0+XG4gICAgICAgIGl0ZW0ubGVnYWN5ID09PSBvcGVyYXRvciAmJlxuICAgICAgICAoaXRlbS50eXBlID09PSBudWxsIHx8IGl0ZW0udHlwZS5pbmNsdWRlcyh0eXBlKSlcbiAgICApO1xuICAgIHJldHVybiBzbWFydEZpbHRlck9wZXJhdG9yID8gc21hcnRGaWx0ZXJPcGVyYXRvci5zbWFydEZpbHRlciA6IG51bGw7XG59XG5cbi8qKlxuICogZ2V0cyBhIGxlZ2FjeSBvcGVyYXRvciB2YWx1ZVxuICogQHBhcmFtIG9wZXJhdG9yIHNtYXJ0IGZpbHRlciBvcGVyYXRvciBpdGVtXG4gKiBAcGFyYW0gdHlwZSBzbWFydCBmaWx0ZXIncyB0eXBlXG4gKiBAcmV0dXJucyBsZWdhY3kgb3BlcmF0b3IgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldExlZ2FjeU9wZXJhdG9yKG9wZXJhdG9yOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciwgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgY29uc3QgbGVnYWN5T3BlcmF0b3IgPSBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvcnMuZmluZChpdGVtID0+XG4gICAgICAgIGl0ZW0uc21hcnRGaWx0ZXIgPT09IG9wZXJhdG9yICYmXG4gICAgICAgIChpdGVtLnR5cGUgPT09IG51bGwgfHwgaXRlbS50eXBlLmluY2x1ZGVzKHR5cGUpKVxuICAgICk7XG4gICAgcmV0dXJuIGxlZ2FjeU9wZXJhdG9yID8gbGVnYWN5T3BlcmF0b3IubGVnYWN5IDogbnVsbDtcbn1cbiJdfQ==
|
|
@@ -17,6 +17,7 @@ export class PepQueryStructureService {
|
|
|
17
17
|
this._outputQuery$ = new BehaviorSubject(null);
|
|
18
18
|
this._variableFields = {};
|
|
19
19
|
this._maxStructureDepth = MAX_STRUCTURE_DEPTH;
|
|
20
|
+
this._cmpRefMap = new Map();
|
|
20
21
|
this.outputQuery$ = this._outputQuery$.asObservable();
|
|
21
22
|
}
|
|
22
23
|
set maxDepth(value) {
|
|
@@ -58,6 +59,18 @@ export class PepQueryStructureService {
|
|
|
58
59
|
* @param containerRef reference to root element
|
|
59
60
|
*/
|
|
60
61
|
buildQueryStructure(query, containerRef) {
|
|
62
|
+
// Remove all the components from the query builder.
|
|
63
|
+
this._cmpRefMap.forEach((value, key) => {
|
|
64
|
+
// console.log(key, value);
|
|
65
|
+
// value.instance.remove();
|
|
66
|
+
if (value.instance.parentForm) {
|
|
67
|
+
value.instance.parentForm.removeControl(key);
|
|
68
|
+
}
|
|
69
|
+
value.destroy();
|
|
70
|
+
this._cmpRefMap.delete(key);
|
|
71
|
+
});
|
|
72
|
+
// Clear containerRef
|
|
73
|
+
containerRef.clear();
|
|
61
74
|
//update root operator
|
|
62
75
|
if (this.hasProperty(query, 'ComplexId') &&
|
|
63
76
|
query?.Operation &&
|
|
@@ -138,10 +151,15 @@ export class PepQueryStructureService {
|
|
|
138
151
|
parentForm.removeControl(formKey);
|
|
139
152
|
componentRef.destroy();
|
|
140
153
|
this.createOutputQuery();
|
|
154
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
155
|
+
this._cmpRefMap.delete(formKey);
|
|
156
|
+
}
|
|
141
157
|
});
|
|
142
158
|
componentRef.instance.operatorChange.subscribe(() => {
|
|
143
159
|
this.createOutputQuery();
|
|
144
160
|
});
|
|
161
|
+
// Add this to remove all the components when fields changes.
|
|
162
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
145
163
|
return {
|
|
146
164
|
containerRef: componentRef.instance.sectionContainer,
|
|
147
165
|
parentForm: sectionGroup
|
|
@@ -179,7 +197,12 @@ export class PepQueryStructureService {
|
|
|
179
197
|
parentForm.removeControl(formKey);
|
|
180
198
|
componentRef.destroy();
|
|
181
199
|
this.createOutputQuery();
|
|
200
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
201
|
+
this._cmpRefMap.delete(formKey);
|
|
202
|
+
}
|
|
182
203
|
});
|
|
204
|
+
// Add this to remove all the components when fields changes.
|
|
205
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
183
206
|
}
|
|
184
207
|
/**
|
|
185
208
|
* get smart filter field
|
|
@@ -223,4 +246,4 @@ PepQueryStructureService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0
|
|
|
223
246
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepQueryStructureService, decorators: [{
|
|
224
247
|
type: Injectable
|
|
225
248
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i1.PepOutputQueryService }, { type: i2.PepQueryBuilderService }]; } });
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RydWN0dXJlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL3F1ZXJ5LXN0cnVjdHVyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQThDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWV2QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUdyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUUzRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUc5QixNQUFNLE9BQU8sd0JBQXdCO0lBVWpDLFlBQ1ksU0FBbUMsRUFDbkMsbUJBQTBDLEVBQzFDLG9CQUE0QztRQUY1QyxjQUFTLEdBQVQsU0FBUyxDQUEwQjtRQUNuQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXVCO1FBQzFDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFaaEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBbUMsSUFBSSxDQUFDLENBQUM7UUFHNUUsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFFMUIsdUJBQWtCLEdBQUcsbUJBQW1CLENBQUM7UUFFMUMsaUJBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBT3hELENBQUM7SUFFRCxJQUFJLFFBQVEsQ0FBQyxLQUFLO1FBQ2QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLElBQWtDO1FBQ3pDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksY0FBYyxDQUFDLElBQWtDO1FBQ2pELElBQUksSUFBSSxFQUFFLE1BQU0sRUFBRTtZQUNkLE1BQU0sVUFBVSxHQUFHLElBQUksc0JBQXNCLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNqQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsK0JBQStCLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUN2RyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxTQUFTLENBQUMsRUFBRTtvQkFDbkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUN2RDtxQkFBTTtvQkFDSCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUNyRDtZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsS0FBZ0I7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxtQkFBbUIsQ0FDZixLQUF1QyxFQUN2QyxZQUE4QjtRQUU5Qiw4QkFBOEI7UUFDOUIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7WUFDcEMsS0FBSyxFQUFFLFNBQVM7WUFDaEIsS0FBSyxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUU7WUFDdEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN4RDtRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRUQ7Ozs7O01BS0U7SUFDTSxXQUFXLENBQUMsR0FBRyxFQUFFLElBQUk7UUFDekIsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxPQUFPLENBQUMsY0FBc0IsRUFBRSxPQUF5QyxFQUFFLFlBQThCLEVBQUUsVUFBcUIsRUFBRSxLQUFhO1FBQ25KLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLEVBQUU7WUFDeEMsTUFBTSxPQUFPLEdBQUcsT0FBMkIsQ0FBQztZQUM1QyxJQUFJLGNBQWMsS0FBSyxPQUFPLENBQUMsU0FBUyxFQUFFO2dCQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNuRixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ3ZGO2lCQUFNO2dCQUNILE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDMUYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDckcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQzthQUN6RztTQUNKO2FBQU0sSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFBRTtZQUNsRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQXdCLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxhQUFhLENBQUMsUUFBMEIsRUFBRSxZQUE4QixFQUFFLFVBQXFCLEVBQUUsS0FBYTtRQUMxRyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDeEYsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzRCx3Q0FBd0M7UUFDeEMsMkNBQTJDO1FBQzNDLE1BQU07UUFDTixNQUFNLFlBQVksR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUMvQixRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDO1NBQ3RDLENBQUMsQ0FBQztRQUNILElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztRQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFBRSxPQUFPLEVBQUUsQ0FBQztTQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkcsTUFBTSxPQUFPLEdBQUcsVUFBVSxPQUFPLEVBQUUsQ0FBQztRQUNwQyxVQUFVLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztRQUU3QyxZQUFZLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUM7UUFDMUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUc7WUFDMUIsT0FBTyxFQUFFLEtBQUs7WUFDZCxHQUFHLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtTQUMvQixDQUFDO1FBQ0YsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMvQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFLFlBQVksRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzVDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDaEYsQ0FBQyxDQUFDLENBQUM7UUFDSCxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hDLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsWUFBWSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNoRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU87WUFDSCxZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0I7WUFDcEQsVUFBVSxFQUFFLFlBQVk7U0FDM0IsQ0FBQztJQUNOLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxPQUFzQixFQUFFLFlBQThCLEVBQUUsVUFBcUI7UUFDcEYsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ3JGLE1BQU0sWUFBWSxHQUFHLFlBQVksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0QsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUFFLE9BQU8sRUFBRSxDQUFDO1NBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRyxNQUFNLE9BQU8sR0FBRyxPQUFPLE9BQU8sRUFBRSxDQUFDO1FBRWpDLFlBQVksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN4QyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7UUFDdkQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUM1RCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckQsSUFBSSxhQUFhLEVBQUU7WUFDZixZQUFZLENBQUMsUUFBUSxDQUFDLFFBQVEsR0FBRyxhQUFhLENBQUM7WUFDL0MsSUFBSSxPQUFPLEVBQUU7Z0JBQ1QsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3BHO1NBQ0o7UUFDRCxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDOUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM5QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUNILFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDeEMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGdCQUFnQixDQUFDLE9BQXNCO1FBQzNDLElBQUksT0FBTyxFQUFFO1lBQ1QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2RixPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDaEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ2xGO0lBQ0wsQ0FBQztJQUVPLCtCQUErQixDQUFDLElBQVk7UUFDaEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxZQUFZO2dCQUNiLE9BQU8sUUFBUSxDQUFDO1lBQ3BCLEtBQUssV0FBVztnQkFDWixPQUFPLE1BQU0sQ0FBQztZQUNsQjtnQkFDSSxPQUFPLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQzs7cUhBcE9RLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZCwgSVBlcFF1ZXJ5U2VjdGlvbiwgSVBlcFF1ZXJ5SXRlbSB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9sZWdhY3knO1xuaW1wb3J0IHtcbiAgICBJUGVwU21hcnRGaWx0ZXJEYXRhLFxuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLFxuICAgIElQZXBTbWFydEZpbHRlck9wZXJhdG9yLFxuICAgIFBlcFNtYXJ0RmlsdGVyVHlwZSxcbiAgICBjcmVhdGVTbWFydEZpbHRlcixcbiAgICBjcmVhdGVTbWFydEZpbHRlckZpZWxkLFxuICAgIFBlcFNtYXJ0RmlsdGVyQmFzZUZpZWxkXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBPdXRwdXRRdWVyeVNlcnZpY2UgfSBmcm9tICcuLi8uLi9jb21tb24vc2VydmljZXMvb3V0cHV0LXF1ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0U21hcnRGaWx0ZXJPcGVyYXRvciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvcic7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci1zZWN0aW9uL3F1ZXJ5LWJ1aWxkZXItc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXItaXRlbS9xdWVyeS1idWlsZGVyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9maWVsZCc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3R5cGUtbWFwJztcbmltcG9ydCB7IGdldFNtYXJ0RmlsdGVyT3BlcmF0aW9uVW5pdCB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvci11bml0JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJWYWx1ZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvZmlsdGVyJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvdHlwZSc7XG5cbmNvbnN0IE1BWF9TVFJVQ1RVUkVfREVQVEggPSAzO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9vdXRwdXRRdWVyeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPihudWxsKTtcblxuICAgIHByaXZhdGUgX3NtYXJ0RmlsdGVyRmllbGRzOiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGRDb250YWluZXI+O1xuICAgIHByaXZhdGUgX3ZhcmlhYmxlRmllbGRzOiBhbnkgPSB7fTtcbiAgICBwcml2YXRlIF9mb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJpdmF0ZSBfbWF4U3RydWN0dXJlRGVwdGggPSBNQVhfU1RSVUNUVVJFX0RFUFRIO1xuXG4gICAgcHVibGljIG91dHB1dFF1ZXJ5JCA9IHRoaXMuX291dHB1dFF1ZXJ5JC5hc09ic2VydmFibGUoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9yZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBwcml2YXRlIF9vdXRwdXRRdWVyeVNlcnZpY2U6IFBlcE91dHB1dFF1ZXJ5U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfcXVlcnlCdWlsZGVyU2VydmljZTogUGVwUXVlcnlCdWlsZGVyU2VydmljZSkge1xuXG4gICAgfVxuXG4gICAgc2V0IG1heERlcHRoKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX21heFN0cnVjdHVyZURlcHRoID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IG1heERlcHRoKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWF4U3RydWN0dXJlRGVwdGg7XG4gICAgfVxuXG4gICAgc2V0IGZpZWxkcyhsaXN0OiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGQ+KSB7XG4gICAgICAgIHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzID0gdGhpcy5fcXVlcnlCdWlsZGVyU2VydmljZS5jb252ZXJ0VG9TbWFydEZpbHRlckZpZWxkcyhsaXN0KTtcbiAgICB9XG5cbiAgICBnZXQgaGFzRmllbGRzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHM/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgc2V0IHZhcmlhYmxlRmllbGRzKGxpc3Q6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgaWYgKGxpc3Q/Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgdHlwZU1hcHBlciA9IG5ldyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwKCk7XG4gICAgICAgICAgICBsaXN0LmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpZWxkVHlwZSA9IHRoaXMuY29udmVydFNtYXJ0RmlsdGVyQ29tcG9uZW50VHlwZSh0eXBlTWFwcGVyLmdldFNtYXJ0RmlsdGVyVHlwZShmaWVsZC5GaWVsZFR5cGUpKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oYXNQcm9wZXJ0eSh0aGlzLl92YXJpYWJsZUZpZWxkcywgZmllbGRUeXBlKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl92YXJpYWJsZUZpZWxkc1tmaWVsZFR5cGVdLnB1c2goZmllbGQuRmllbGRJRCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdmFyaWFibGVGaWVsZHNbZmllbGRUeXBlXSA9IFtmaWVsZC5GaWVsZElEXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldCBmb3JtKHZhbHVlOiBGb3JtR3JvdXApIHtcbiAgICAgICAgdGhpcy5fZm9ybSA9IHZhbHVlO1xuICAgIH1cblxuICAgIGdldCBmb3JtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZm9ybTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBidWlsZHMgYSBkeW5hbWljIFVJIHF1ZXJ5IHN0cnVjdHVyZVxuICAgICAqIG1pZ2h0IGhhcyBhIGRpZmZlcmVudCBzdHJ1Y3R1cmUgdGhhbiB0aGUgcXVlcnkncyBkdWUgdG8gcGFyZW50LWNoaWxkIGVsZW1lbnRzIG1lcmdlXG4gICAgICogQHBhcmFtIHF1ZXJ5IGxlZ2FjeSBxdWVyeSAgICAgXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiByZWZlcmVuY2UgdG8gcm9vdCBlbGVtZW50XG4gICAgICovXG4gICAgYnVpbGRRdWVyeVN0cnVjdHVyZShcbiAgICAgICAgcXVlcnk6IElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtLFxuICAgICAgICBjb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgICApIHtcbiAgICAgICAgLy91cGRhdGUgcm9vdCBvcGVyYXRvciAgICAgICAgXG4gICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHF1ZXJ5LCAnQ29tcGxleElkJykgJiZcbiAgICAgICAgICAgIHF1ZXJ5Py5PcGVyYXRpb24gJiZcbiAgICAgICAgICAgIHF1ZXJ5Lk9wZXJhdGlvbiAhPT0gdGhpcy5fZm9ybS5nZXQoJ29wZXJhdG9yJykudmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnNldFZhbHVlKHF1ZXJ5Lk9wZXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mbGF0dGVuKHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnZhbHVlLCBxdWVyeSwgY29udGFpbmVyUmVmLCB0aGlzLl9mb3JtLCAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIGNoZWNrcyBpZiB0aGUgb2JqZWN0IGNvbnRhaW5zIHByb3BlcnR5XG4gICAgKiBAcGFyYW0gb2JqIG9iamVjdFxuICAgICogQHBhcmFtIHByb3AgcHJvcGVydHkgbmFtZVxuICAgICogQHJldHVybnMgdHJ1ZSBpZiBjb250YWlucywgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgKi9cbiAgICBwcml2YXRlIGhhc1Byb3BlcnR5KG9iaiwgcHJvcCkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIFVJIGZpbHRlcnMgc3RydWN0dXJlXG4gICAgICogQHBhcmFtIHBhcmVudE9wZXJhdG9yIHBhcmVudCBsZWdhY3kgY29tcGxleCBvcGVyYXRvclxuICAgICAqIEBwYXJhbSBjdXJyZW50IGNoaWxkIGxlZ2FjeSBvYmplY3QgKGVpdGhlciBhbm90aGVyIGNvbXBsZXggb3IgZXhwcmVzc2lvbiB0eXBlKVxuICAgICAqIEBwYXJhbSBjb250YWluZXJSZWYgcGFyZW50IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gcGFyZW50Rm9ybSBwYXJlbnQgZm9ybVxuICAgICAqL1xuICAgIHByaXZhdGUgZmxhdHRlbihwYXJlbnRPcGVyYXRvcjogc3RyaW5nLCBjdXJyZW50OiBJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbSwgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUHJvcGVydHkoY3VycmVudCwgJ0NvbXBsZXhJZCcpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uID0gY3VycmVudCBhcyBJUGVwUXVlcnlTZWN0aW9uO1xuICAgICAgICAgICAgaWYgKHBhcmVudE9wZXJhdG9yID09PSBjdXJyZW50Lk9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihjdXJyZW50Lk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKGN1cnJlbnQuT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuY3JlYXRlU2VjdGlvbihzZWN0aW9uLk9wZXJhdGlvbiwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCArIDEpO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihzZWN0aW9uLk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKHNlY3Rpb24uT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNQcm9wZXJ0eShjdXJyZW50LCAnRXhwcmVzc2lvbklkJykpIHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSXRlbShjdXJyZW50IGFzIElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZiwgcGFyZW50Rm9ybSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBvZiB0d28gb3IgbW9yZSBjaGlsZCBmaWx0ZXIgaXRlbXNcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgQU5EL09SIG9wZXJhdG9yXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiBwYXJlbnQgZWxlbWVudFxuICAgICAqIEBwYXJhbSBwYXJlbnRGb3JtIHBhcmVudCBmb3JtXG4gICAgICogQHBhcmFtIGRlcHRoXG4gICAgICogQHJldHVybnMgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgZWxlbWVudCBhbmQgY3VycmVudCBmb3JtXG4gICAgICovXG4gICAgY3JlYXRlU2VjdGlvbihvcGVyYXRvcjogUGVwT3BlcmF0b3JUeXBlcywgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFBlcFF1ZXJ5QnVpbGRlclNlY3Rpb25Db21wb25lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIC8vIGNvbnN0IHNlY3Rpb25Hcm91cCA9IHRoaXMuX2ZiLmdyb3VwKHtcbiAgICAgICAgLy8gICAgIG9wZXJhdG9yOiB0aGlzLl9mYi5jb250cm9sKG9wZXJhdG9yKVxuICAgICAgICAvLyB9KTtcbiAgICAgICAgY29uc3Qgc2VjdGlvbkdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogbmV3IEZvcm1Db250cm9sKG9wZXJhdG9yKVxuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGNvdW50ZXIgPSAxO1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnRGb3JtLmNvbnRyb2xzKS5mb3JFYWNoKGl0ZW0gPT4geyBpZiAoaXRlbS5pbmNsdWRlcygnc2VjdGlvbicpKSB7IGNvdW50ZXIrKzsgfSB9KTtcbiAgICAgICAgY29uc3QgZm9ybUtleSA9IGBzZWN0aW9uJHtjb3VudGVyfWA7XG4gICAgICAgIHBhcmVudEZvcm0uYWRkQ29udHJvbChmb3JtS2V5LCBzZWN0aW9uR3JvdXApO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtID0gc2VjdGlvbkdyb3VwO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZGVwdGggPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBkZXB0aCxcbiAgICAgICAgICAgIG1heDogdGhpcy5fbWF4U3RydWN0dXJlRGVwdGhcbiAgICAgICAgfTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmNyZWF0ZVNlY3Rpb24uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLmNyZWF0ZVNlY3Rpb24oUGVwT3BlcmF0b3JUeXBlcy5BbmQsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXAsIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUl0ZW0obnVsbCwgc2VjdGlvbi5jb250YWluZXJSZWYsIHNlY3Rpb24ucGFyZW50Rm9ybSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY3JlYXRlSXRlbS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJdGVtKG51bGwsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXApO1xuICAgICAgICB9KTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlbW92ZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgcGFyZW50Rm9ybS5yZW1vdmVDb250cm9sKGZvcm1LZXkpO1xuICAgICAgICAgICAgY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vcGVyYXRvckNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmOiBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgICAgIHBhcmVudEZvcm06IHNlY3Rpb25Hcm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNyZWF0ZXMgYSBjb21wb25lbnQgcmVwcmVzZW50cyBmaWx0ZXIgaXRlbSAobGVhZiBlbGVtZW50IC0gaGFzIG5vIGNoaWxkcylcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHBhcmVudCBlbGVtZW50XG4gICAgICogQHBhcmFtIHBhcmVudEZvcm0gcGFyZW50IGZvcm1cbiAgICAgKi9cbiAgICBjcmVhdGVJdGVtKGN1cnJlbnQ6IElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcGFyZW50Rm9ybTogRm9ybUdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLl9yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShQZXBRdWVyeUJ1aWxkZXJJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcblxuICAgICAgICBsZXQgY291bnRlciA9IDE7XG4gICAgICAgIE9iamVjdC5rZXlzKHBhcmVudEZvcm0uY29udHJvbHMpLmZvckVhY2goaXRlbSA9PiB7IGlmIChpdGVtLmluY2x1ZGVzKCdpdGVtJykpIHsgY291bnRlcisrOyB9IH0pO1xuICAgICAgICBjb25zdCBmb3JtS2V5ID0gYGl0ZW0ke2NvdW50ZXJ9YDtcblxuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZm9ybUtleSA9IGZvcm1LZXk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWVsZHMgPSB0aGlzLl9zbWFydEZpbHRlckZpZWxkcztcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnZhcmlhYmxlRmllbGRzID0gdGhpcy5fdmFyaWFibGVGaWVsZHM7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRmllbGQgPSB0aGlzLmdldFNlbGVjdGVkRmllbGQoY3VycmVudCk7XG4gICAgICAgIGlmIChzZWxlY3RlZEZpZWxkKSB7XG4gICAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VsZWN0ZWQgPSBzZWxlY3RlZEZpZWxkO1xuICAgICAgICAgICAgaWYgKGN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZmlsdGVyID0gdGhpcy5fcXVlcnlCdWlsZGVyU2VydmljZS5nZXRGaWx0ZXIoY3VycmVudCwgc2VsZWN0ZWRGaWVsZC5zbWFydCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnBhcmVudEZvcm0gPSBwYXJlbnRGb3JtO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZmlsdGVyQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dFF1ZXJ5KCk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucmVtb3ZlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBwYXJlbnRGb3JtLnJlbW92ZUNvbnRyb2woZm9ybUtleSk7XG4gICAgICAgICAgICBjb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZXQgc21hcnQgZmlsdGVyIGZpZWxkXG4gICAgICogQHBhcmFtIGN1cnJlbnQgZmlsdGVyIGxlZ2FjeSBlbGVtZW50XG4gICAgICogQHJldHVybnMgc21hcnQgZmlsdGVyIGZpZWxkLCBpZiBub3QgZm91bmQgcmV0dXJucyB0aGUgZmlyc3QgZmllbGRcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFNlbGVjdGVkRmllbGQoY3VycmVudDogSVBlcFF1ZXJ5SXRlbSk6IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB8IG51bGwge1xuICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzLmZpbmQoZmllbGQgPT4gZmllbGQuc21hcnQuaWQgPT09IGN1cnJlbnQuQXBpTmFtZSk7XG4gICAgICAgICAgICByZXR1cm4gaXRlbSA/IGl0ZW0gOiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMCA/IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzWzBdIDogbnVsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMCA/IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzWzBdIDogbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29udmVydFNtYXJ0RmlsdGVyQ29tcG9uZW50VHlwZSh0eXBlOiBzdHJpbmcpIHtcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdpbnQnOlxuICAgICAgICAgICAgY2FzZSAnY3VycmVuY3knOlxuICAgICAgICAgICAgY2FzZSAncmVhbCc6XG4gICAgICAgICAgICBjYXNlICdwZXJjZW50YWdlJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ251bWJlcic7XG4gICAgICAgICAgICBjYXNlICdkYXRlLXRpbWUnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnZGF0ZSc7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0eXBlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogY3JlYXRlcyBhIGxlZ2FjeSBvdXRwdXQgcXVlcnkgXG4gICAgICovXG4gICAgY3JlYXRlT3V0cHV0UXVlcnkoKSB7XG4gICAgICAgIGlmICh0aGlzLl9mb3JtLnZhbGlkKSB7XG4gICAgICAgICAgICBjb25zdCBxdWVyeSA9IHRoaXMuX291dHB1dFF1ZXJ5U2VydmljZS5nZW5lcmF0ZVF1ZXJ5KHRoaXMuX2Zvcm0udmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5fb3V0cHV0UXVlcnkkLm5leHQocXVlcnkpO1xuICAgICAgICB9XG4gICAgfVxuXG59Il19
|
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc3RydWN0dXJlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL3F1ZXJ5LXN0cnVjdHVyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQTRELE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUt2QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQUVyRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7OztBQUUzRCxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUc5QixNQUFNLE9BQU8sd0JBQXdCO0lBWWpDLFlBQ1ksU0FBbUMsRUFDbkMsbUJBQTBDLEVBQzFDLG9CQUE0QztRQUY1QyxjQUFTLEdBQVQsU0FBUyxDQUEwQjtRQUNuQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXVCO1FBQzFDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBd0I7UUFkaEQsa0JBQWEsR0FBRyxJQUFJLGVBQWUsQ0FBbUMsSUFBSSxDQUFDLENBQUM7UUFHNUUsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFFMUIsdUJBQWtCLEdBQUcsbUJBQW1CLENBQUM7UUFFekMsZUFBVSxHQUFtQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBRXhELGlCQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQU94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QUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDaEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ2xGO0lBQ0wsQ0FBQztJQUVPLCtCQUErQixDQUFDLElBQVk7UUFDaEQsUUFBUSxJQUFJLEVBQUU7WUFDVixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssVUFBVSxDQUFDO1lBQ2hCLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxZQUFZO2dCQUNiLE9BQU8sUUFBUSxDQUFDO1lBQ3BCLEtBQUssV0FBVztnQkFDWixPQUFPLE1BQU0sQ0FBQztZQUNsQjtnQkFDSSxPQUFPLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQjtRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3ZFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQzs7cUhBaFFRLHdCQUF3Qjt5SEFBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgSVBlcFF1ZXJ5QnVpbGRlckZpZWxkLCBJUGVwUXVlcnlTZWN0aW9uLCBJUGVwUXVlcnlJdGVtIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL2xlZ2FjeSc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcE91dHB1dFF1ZXJ5U2VydmljZSB9IGZyb20gJy4uLy4uL2NvbW1vbi9zZXJ2aWNlcy9vdXRwdXQtcXVlcnkuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcXVlcnktYnVpbGRlci1zZWN0aW9uL3F1ZXJ5LWJ1aWxkZXItc2VjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwUXVlcnlCdWlsZGVySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL3F1ZXJ5LWJ1aWxkZXItaXRlbS9xdWVyeS1idWlsZGVyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZENvbnRhaW5lciB9IGZyb20gJy4uLy4uL2NvbW1vbi9tb2RlbC9maWVsZCc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJUeXBlTWFwIH0gZnJvbSAnLi4vLi4vY29tbW9uL21vZGVsL3R5cGUtbWFwJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuLi8uLi9jb21tb24vbW9kZWwvdHlwZSc7XG5cbmNvbnN0IE1BWF9TVFJVQ1RVUkVfREVQVEggPSAzO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9vdXRwdXRRdWVyeSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPihudWxsKTtcblxuICAgIHByaXZhdGUgX3NtYXJ0RmlsdGVyRmllbGRzOiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGRDb250YWluZXI+O1xuICAgIHByaXZhdGUgX3ZhcmlhYmxlRmllbGRzOiBhbnkgPSB7fTtcbiAgICBwcml2YXRlIF9mb3JtOiBGb3JtR3JvdXA7XG4gICAgcHJpdmF0ZSBfbWF4U3RydWN0dXJlRGVwdGggPSBNQVhfU1RSVUNUVVJFX0RFUFRIO1xuXG4gICAgcHJpdmF0ZSBfY21wUmVmTWFwOiBNYXA8c3RyaW5nLCBDb21wb25lbnRSZWY8YW55Pj4gPSBuZXcgTWFwKCk7XG5cbiAgICBwdWJsaWMgb3V0cHV0UXVlcnkkID0gdGhpcy5fb3V0cHV0UXVlcnkkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX3Jlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByaXZhdGUgX291dHB1dFF1ZXJ5U2VydmljZTogUGVwT3V0cHV0UXVlcnlTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9xdWVyeUJ1aWxkZXJTZXJ2aWNlOiBQZXBRdWVyeUJ1aWxkZXJTZXJ2aWNlKSB7XG5cbiAgICB9XG5cbiAgICBzZXQgbWF4RGVwdGgodmFsdWUpIHtcbiAgICAgICAgdGhpcy5fbWF4U3RydWN0dXJlRGVwdGggPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgbWF4RGVwdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhTdHJ1Y3R1cmVEZXB0aDtcbiAgICB9XG5cbiAgICBzZXQgZmllbGRzKGxpc3Q6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHMgPSB0aGlzLl9xdWVyeUJ1aWxkZXJTZXJ2aWNlLmNvbnZlcnRUb1NtYXJ0RmlsdGVyRmllbGRzKGxpc3QpO1xuICAgIH1cblxuICAgIGdldCBoYXNGaWVsZHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zbWFydEZpbHRlckZpZWxkcz8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICBzZXQgdmFyaWFibGVGaWVsZHMobGlzdDogQXJyYXk8SVBlcFF1ZXJ5QnVpbGRlckZpZWxkPikge1xuICAgICAgICBpZiAobGlzdD8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCB0eXBlTWFwcGVyID0gbmV3IFBlcFF1ZXJ5QnVpbGRlclR5cGVNYXAoKTtcbiAgICAgICAgICAgIGxpc3QuZm9yRWFjaChmaWVsZCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGRUeXBlID0gdGhpcy5jb252ZXJ0U21hcnRGaWx0ZXJDb21wb25lbnRUeXBlKHR5cGVNYXBwZXIuZ2V0U21hcnRGaWx0ZXJUeXBlKGZpZWxkLkZpZWxkVHlwZSkpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHRoaXMuX3ZhcmlhYmxlRmllbGRzLCBmaWVsZFR5cGUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3ZhcmlhYmxlRmllbGRzW2ZpZWxkVHlwZV0ucHVzaChmaWVsZC5GaWVsZElEKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl92YXJpYWJsZUZpZWxkc1tmaWVsZFR5cGVdID0gW2ZpZWxkLkZpZWxkSURdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0IGZvcm0odmFsdWU6IEZvcm1Hcm91cCkge1xuICAgICAgICB0aGlzLl9mb3JtID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGJ1aWxkcyBhIGR5bmFtaWMgVUkgcXVlcnkgc3RydWN0dXJlXG4gICAgICogbWlnaHQgaGFzIGEgZGlmZmVyZW50IHN0cnVjdHVyZSB0aGFuIHRoZSBxdWVyeSdzIGR1ZSB0byBwYXJlbnQtY2hpbGQgZWxlbWVudHMgbWVyZ2VcbiAgICAgKiBAcGFyYW0gcXVlcnkgbGVnYWN5IHF1ZXJ5ICAgICBcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHJlZmVyZW5jZSB0byByb290IGVsZW1lbnRcbiAgICAgKi9cbiAgICBidWlsZFF1ZXJ5U3RydWN0dXJlKFxuICAgICAgICBxdWVyeTogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0sXG4gICAgICAgIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxuICAgICkge1xuICAgICAgICAvLyBSZW1vdmUgYWxsIHRoZSBjb21wb25lbnRzIGZyb20gdGhlIHF1ZXJ5IGJ1aWxkZXIuXG4gICAgICAgIHRoaXMuX2NtcFJlZk1hcC5mb3JFYWNoKCh2YWx1ZTogQ29tcG9uZW50UmVmPGFueT4sIGtleTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhrZXksIHZhbHVlKTtcbiAgICAgICAgICAgIC8vIHZhbHVlLmluc3RhbmNlLnJlbW92ZSgpO1xuICAgICAgICAgICAgaWYgKHZhbHVlLmluc3RhbmNlLnBhcmVudEZvcm0pIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5pbnN0YW5jZS5wYXJlbnRGb3JtLnJlbW92ZUNvbnRyb2woa2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhbHVlLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuX2NtcFJlZk1hcC5kZWxldGUoa2V5KTtcbiAgICAgICAgfSk7XG4gICAgICAgIFxuICAgICAgICAvLyBDbGVhciBjb250YWluZXJSZWZcbiAgICAgICAgY29udGFpbmVyUmVmLmNsZWFyKCk7XG5cbiAgICAgICAgLy91cGRhdGUgcm9vdCBvcGVyYXRvciAgICAgICAgXG4gICAgICAgIGlmICh0aGlzLmhhc1Byb3BlcnR5KHF1ZXJ5LCAnQ29tcGxleElkJykgJiZcbiAgICAgICAgICAgIHF1ZXJ5Py5PcGVyYXRpb24gJiZcbiAgICAgICAgICAgIHF1ZXJ5Lk9wZXJhdGlvbiAhPT0gdGhpcy5fZm9ybS5nZXQoJ29wZXJhdG9yJykudmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnNldFZhbHVlKHF1ZXJ5Lk9wZXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mbGF0dGVuKHRoaXMuX2Zvcm0uZ2V0KCdvcGVyYXRvcicpLnZhbHVlLCBxdWVyeSwgY29udGFpbmVyUmVmLCB0aGlzLl9mb3JtLCAwKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAqIGNoZWNrcyBpZiB0aGUgb2JqZWN0IGNvbnRhaW5zIHByb3BlcnR5XG4gICAgKiBAcGFyYW0gb2JqIG9iamVjdFxuICAgICogQHBhcmFtIHByb3AgcHJvcGVydHkgbmFtZVxuICAgICogQHJldHVybnMgdHJ1ZSBpZiBjb250YWlucywgZmFsc2Ugb3RoZXJ3aXNlXG4gICAgKi9cbiAgICBwcml2YXRlIGhhc1Byb3BlcnR5KG9iaiwgcHJvcCkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIFVJIGZpbHRlcnMgc3RydWN0dXJlXG4gICAgICogQHBhcmFtIHBhcmVudE9wZXJhdG9yIHBhcmVudCBsZWdhY3kgY29tcGxleCBvcGVyYXRvclxuICAgICAqIEBwYXJhbSBjdXJyZW50IGNoaWxkIGxlZ2FjeSBvYmplY3QgKGVpdGhlciBhbm90aGVyIGNvbXBsZXggb3IgZXhwcmVzc2lvbiB0eXBlKVxuICAgICAqIEBwYXJhbSBjb250YWluZXJSZWYgcGFyZW50IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gcGFyZW50Rm9ybSBwYXJlbnQgZm9ybVxuICAgICAqL1xuICAgIHByaXZhdGUgZmxhdHRlbihwYXJlbnRPcGVyYXRvcjogc3RyaW5nLCBjdXJyZW50OiBJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbSwgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUHJvcGVydHkoY3VycmVudCwgJ0NvbXBsZXhJZCcpKSB7XG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uID0gY3VycmVudCBhcyBJUGVwUXVlcnlTZWN0aW9uO1xuICAgICAgICAgICAgaWYgKHBhcmVudE9wZXJhdG9yID09PSBjdXJyZW50Lk9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihjdXJyZW50Lk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKGN1cnJlbnQuT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuY3JlYXRlU2VjdGlvbihzZWN0aW9uLk9wZXJhdGlvbiwgY29udGFpbmVyUmVmLCBwYXJlbnRGb3JtLCBkZXB0aCArIDEpO1xuICAgICAgICAgICAgICAgIHRoaXMuZmxhdHRlbihzZWN0aW9uLk9wZXJhdGlvbiwgc2VjdGlvbi5MZWZ0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5mbGF0dGVuKHNlY3Rpb24uT3BlcmF0aW9uLCBzZWN0aW9uLlJpZ2h0Tm9kZSwgcmVzdWx0LmNvbnRhaW5lclJlZiwgcmVzdWx0LnBhcmVudEZvcm0sIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5oYXNQcm9wZXJ0eShjdXJyZW50LCAnRXhwcmVzc2lvbklkJykpIHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlSXRlbShjdXJyZW50IGFzIElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZiwgcGFyZW50Rm9ybSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBvZiB0d28gb3IgbW9yZSBjaGlsZCBmaWx0ZXIgaXRlbXNcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgQU5EL09SIG9wZXJhdG9yXG4gICAgICogQHBhcmFtIGNvbnRhaW5lclJlZiBwYXJlbnQgZWxlbWVudFxuICAgICAqIEBwYXJhbSBwYXJlbnRGb3JtIHBhcmVudCBmb3JtXG4gICAgICogQHBhcmFtIGRlcHRoXG4gICAgICogQHJldHVybnMgYW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgZWxlbWVudCBhbmQgY3VycmVudCBmb3JtXG4gICAgICovXG4gICAgY3JlYXRlU2VjdGlvbihvcGVyYXRvcjogUGVwT3BlcmF0b3JUeXBlcywgY29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLCBwYXJlbnRGb3JtOiBGb3JtR3JvdXAsIGRlcHRoOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuX3Jlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFBlcFF1ZXJ5QnVpbGRlclNlY3Rpb25Db21wb25lbnQpO1xuICAgICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBjb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIC8vIGNvbnN0IHNlY3Rpb25Hcm91cCA9IHRoaXMuX2ZiLmdyb3VwKHtcbiAgICAgICAgLy8gICAgIG9wZXJhdG9yOiB0aGlzLl9mYi5jb250cm9sKG9wZXJhdG9yKVxuICAgICAgICAvLyB9KTtcbiAgICAgICAgY29uc3Qgc2VjdGlvbkdyb3VwID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogbmV3IEZvcm1Db250cm9sKG9wZXJhdG9yKVxuICAgICAgICB9KTtcbiAgICAgICAgbGV0IGNvdW50ZXIgPSAxO1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnRGb3JtLmNvbnRyb2xzKS5mb3JFYWNoKGl0ZW0gPT4geyBpZiAoaXRlbS5pbmNsdWRlcygnc2VjdGlvbicpKSB7IGNvdW50ZXIrKzsgfSB9KTtcbiAgICAgICAgY29uc3QgZm9ybUtleSA9IGBzZWN0aW9uJHtjb3VudGVyfWA7XG4gICAgICAgIHBhcmVudEZvcm0uYWRkQ29udHJvbChmb3JtS2V5LCBzZWN0aW9uR3JvdXApO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtID0gc2VjdGlvbkdyb3VwO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuZGVwdGggPSB7XG4gICAgICAgICAgICBjdXJyZW50OiBkZXB0aCxcbiAgICAgICAgICAgIG1heDogdGhpcy5fbWF4U3RydWN0dXJlRGVwdGhcbiAgICAgICAgfTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmNyZWF0ZVNlY3Rpb24uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLmNyZWF0ZVNlY3Rpb24oUGVwT3BlcmF0b3JUeXBlcy5BbmQsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXAsIGRlcHRoICsgMSk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUl0ZW0obnVsbCwgc2VjdGlvbi5jb250YWluZXJSZWYsIHNlY3Rpb24ucGFyZW50Rm9ybSk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY3JlYXRlSXRlbS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVJdGVtKG51bGwsIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWN0aW9uQ29udGFpbmVyLCBzZWN0aW9uR3JvdXApO1xuICAgICAgICB9KTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlbW92ZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgcGFyZW50Rm9ybS5yZW1vdmVDb250cm9sKGZvcm1LZXkpO1xuICAgICAgICAgICAgY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9jbXBSZWZNYXAuaGFzKGZvcm1LZXkpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fY21wUmVmTWFwLmRlbGV0ZShmb3JtS2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vcGVyYXRvckNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICAvLyBBZGQgdGhpcyB0byByZW1vdmUgYWxsIHRoZSBjb21wb25lbnRzIHdoZW4gZmllbGRzIGNoYW5nZXMuXG4gICAgICAgIHRoaXMuX2NtcFJlZk1hcC5zZXQoZm9ybUtleSwgY29tcG9uZW50UmVmKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmOiBjb21wb25lbnRSZWYuaW5zdGFuY2Uuc2VjdGlvbkNvbnRhaW5lcixcbiAgICAgICAgICAgIHBhcmVudEZvcm06IHNlY3Rpb25Hcm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNyZWF0ZXMgYSBjb21wb25lbnQgcmVwcmVzZW50cyBmaWx0ZXIgaXRlbSAobGVhZiBlbGVtZW50IC0gaGFzIG5vIGNoaWxkcylcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gY29udGFpbmVyUmVmIHBhcmVudCBlbGVtZW50XG4gICAgICogQHBhcmFtIHBhcmVudEZvcm0gcGFyZW50IGZvcm1cbiAgICAgKi9cbiAgICBjcmVhdGVJdGVtKGN1cnJlbnQ6IElQZXBRdWVyeUl0ZW0sIGNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcGFyZW50Rm9ybTogRm9ybUdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGZhY3RvcnkgPSB0aGlzLl9yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShQZXBRdWVyeUJ1aWxkZXJJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gY29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgICAgICAgXG4gICAgICAgIGxldCBjb3VudGVyID0gMTtcbiAgICAgICAgT2JqZWN0LmtleXMocGFyZW50Rm9ybS5jb250cm9scykuZm9yRWFjaChpdGVtID0+IHsgaWYgKGl0ZW0uaW5jbHVkZXMoJ2l0ZW0nKSkgeyBjb3VudGVyKys7IH0gfSk7XG4gICAgICAgIGNvbnN0IGZvcm1LZXkgPSBgaXRlbSR7Y291bnRlcn1gO1xuXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5mb3JtS2V5ID0gZm9ybUtleTtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmZpZWxkcyA9IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzO1xuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UudmFyaWFibGVGaWVsZHMgPSB0aGlzLl92YXJpYWJsZUZpZWxkcztcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRGaWVsZCA9IHRoaXMuZ2V0U2VsZWN0ZWRGaWVsZChjdXJyZW50KTtcbiAgICAgICAgaWYgKHNlbGVjdGVkRmllbGQpIHtcbiAgICAgICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5zZWxlY3RlZCA9IHNlbGVjdGVkRmllbGQ7XG4gICAgICAgICAgICBpZiAoY3VycmVudCkge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWx0ZXIgPSB0aGlzLl9xdWVyeUJ1aWxkZXJTZXJ2aWNlLmdldEZpbHRlcihjdXJyZW50LCBzZWxlY3RlZEZpZWxkLnNtYXJ0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UucGFyZW50Rm9ybSA9IHBhcmVudEZvcm07XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWx0ZXJDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZS5yZW1vdmUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHBhcmVudEZvcm0ucmVtb3ZlQ29udHJvbChmb3JtS2V5KTtcbiAgICAgICAgICAgIGNvbXBvbmVudFJlZi5kZXN0cm95KCk7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU91dHB1dFF1ZXJ5KCk7XG4gICAgICAgICAgICBpZiAodGhpcy5fY21wUmVmTWFwLmhhcyhmb3JtS2V5KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2NtcFJlZk1hcC5kZWxldGUoZm9ybUtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIEFkZCB0aGlzIHRvIHJlbW92ZSBhbGwgdGhlIGNvbXBvbmVudHMgd2hlbiBmaWVsZHMgY2hhbmdlcy5cbiAgICAgICAgdGhpcy5fY21wUmVmTWFwLnNldChmb3JtS2V5LCBjb21wb25lbnRSZWYpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGdldCBzbWFydCBmaWx0ZXIgZmllbGRcbiAgICAgKiBAcGFyYW0gY3VycmVudCBmaWx0ZXIgbGVnYWN5IGVsZW1lbnRcbiAgICAgKiBAcmV0dXJucyBzbWFydCBmaWx0ZXIgZmllbGQsIGlmIG5vdCBmb3VuZCByZXR1cm5zIHRoZSBmaXJzdCBmaWVsZFxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0U2VsZWN0ZWRGaWVsZChjdXJyZW50OiBJUGVwUXVlcnlJdGVtKTogSVBlcFF1ZXJ5QnVpbGRlckZpZWxkQ29udGFpbmVyIHwgbnVsbCB7XG4gICAgICAgIGlmIChjdXJyZW50KSB7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHMuZmluZChmaWVsZCA9PiBmaWVsZC5zbWFydC5pZCA9PT0gY3VycmVudC5BcGlOYW1lKTtcbiAgICAgICAgICAgIHJldHVybiBpdGVtID8gaXRlbSA6IHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzPy5sZW5ndGggPiAwID8gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHNbMF0gOiBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3NtYXJ0RmlsdGVyRmllbGRzPy5sZW5ndGggPiAwID8gdGhpcy5fc21hcnRGaWx0ZXJGaWVsZHNbMF0gOiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb252ZXJ0U21hcnRGaWx0ZXJDb21wb25lbnRUeXBlKHR5cGU6IHN0cmluZykge1xuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2ludCc6XG4gICAgICAgICAgICBjYXNlICdjdXJyZW5jeSc6XG4gICAgICAgICAgICBjYXNlICdyZWFsJzpcbiAgICAgICAgICAgIGNhc2UgJ3BlcmNlbnRhZ2UnOlxuICAgICAgICAgICAgICAgIHJldHVybiAnbnVtYmVyJztcbiAgICAgICAgICAgIGNhc2UgJ2RhdGUtdGltZSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdkYXRlJztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHR5cGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjcmVhdGVzIGEgbGVnYWN5IG91dHB1dCBxdWVyeSBcbiAgICAgKi9cbiAgICBjcmVhdGVPdXRwdXRRdWVyeSgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2Zvcm0udmFsaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fb3V0cHV0UXVlcnlTZXJ2aWNlLmdlbmVyYXRlUXVlcnkodGhpcy5fZm9ybS52YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLl9vdXRwdXRRdWVyeSQubmV4dChxdWVyeSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn0iXX0=
|
|
@@ -16,7 +16,7 @@ export class PepQueryBuilderComponent {
|
|
|
16
16
|
this.formValidationChange = new EventEmitter();
|
|
17
17
|
this._lastFormValidStatus = true;
|
|
18
18
|
this.hasFields = false;
|
|
19
|
-
this.
|
|
19
|
+
this.setupForm();
|
|
20
20
|
this.initDepth();
|
|
21
21
|
this._formSubscription$ = this.queryStructureService.form.valueChanges.subscribe((val) => {
|
|
22
22
|
if (this.queryStructureService.form.valid !== this._lastFormValidStatus) {
|
|
@@ -46,7 +46,7 @@ export class PepQueryBuilderComponent {
|
|
|
46
46
|
ngOnInit() {
|
|
47
47
|
//
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
setupForm() {
|
|
50
50
|
this.queryStructureService.form = this._fb.group({
|
|
51
51
|
operator: this._fb.control(PepOperatorTypes.And)
|
|
52
52
|
});
|
|
@@ -64,7 +64,6 @@ export class PepQueryBuilderComponent {
|
|
|
64
64
|
if (this._query &&
|
|
65
65
|
this.queryStructureService.hasFields &&
|
|
66
66
|
this.root?.sectionContainer) {
|
|
67
|
-
this.initForm();
|
|
68
67
|
this.queryStructureService.buildQueryStructure(this._query, this.root.sectionContainer);
|
|
69
68
|
}
|
|
70
69
|
}
|
|
@@ -108,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
108
107
|
type: ViewChild,
|
|
109
108
|
args: ['rootContainer', { static: true }]
|
|
110
109
|
}] } });
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFTdkQsTUFBTSxPQUFPLHdCQUF3QjtJQW1DakMsWUFDWSxHQUFnQixFQUNqQixxQkFBK0M7UUFEOUMsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUNqQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQTBCO1FBcEMxRCxXQUFNLEdBQXFDLElBQUksQ0FBQztRQXNCaEQsZ0JBQVcsR0FBbUQsSUFBSSxZQUFZLEVBQW9DLENBQUM7UUFFbkgseUJBQW9CLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFNMUUseUJBQW9CLEdBQUcsSUFBSSxDQUFDO1FBRTVCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFNZCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxD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RUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osSUFBSSxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUN6QixJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekM7UUFDRCxJQUFJLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtZQUNoQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDaEQ7SUFDTCxDQUFDOztxSEF2R1Esd0JBQXdCO3lHQUF4Qix3QkFBd0IseU9BRnRCLENBQUUsd0JBQXdCLEVBQUUsdUJBQXVCLEVBQUUscUJBQXFCLENBQUMsK0lDdkIxRiwrUUFFNEI7MkZEdUJmLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDSSxtQkFBbUIsYUFHbEIsQ0FBRSx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsQ0FBQzt5SUFLbEYsS0FBSztzQkFEUixLQUFLO2dCQU1GLE1BQU07c0JBRFQsS0FBSztnQkFPRixjQUFjO3NCQURqQixLQUFLO2dCQUtGLFFBQVE7c0JBRFgsS0FBSztnQkFNTixXQUFXO3NCQURWLE1BQU07Z0JBR1Asb0JBQW9CO3NCQURuQixNQUFNO2dCQUd1QyxJQUFJO3NCQUFqRCxTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIE9uSW5pdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9xdWVyeS1idWlsZGVyLXNlY3Rpb24vcXVlcnktYnVpbGRlci1zZWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJUGVwUXVlcnlCdWlsZGVyRmllbGQsIElQZXBRdWVyeVNlY3Rpb24sIElQZXBRdWVyeUl0ZW0gfSBmcm9tICcuL2NvbW1vbi9tb2RlbC9sZWdhY3knO1xuaW1wb3J0IHsgUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlIH0gZnJvbSAnLi9jb21tb24vc2VydmljZXMvcXVlcnktc3RydWN0dXJlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVwVHlwZUNvbnZlcnRvclNlcnZpY2UgfSBmcm9tICcuL2NvbW1vbi9zZXJ2aWNlcy90eXBlLWNvbnZlcnRvci5zZXJ2aWNlJztcbmltcG9ydCB7IFBlcE91dHB1dFF1ZXJ5U2VydmljZSB9IGZyb20gJy4vY29tbW9uL3NlcnZpY2VzL291dHB1dC1xdWVyeS5zZXJ2aWNlJztcbmltcG9ydCB7IElQZXBRdWVyeURlcHRoIH0gZnJvbSAnLi9jb21tb24vbW9kZWwvc3RydWN0dXJlJztcbmltcG9ydCB7IFBlcE9wZXJhdG9yVHlwZXMgfSBmcm9tICcuL2NvbW1vbi9tb2RlbC90eXBlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1xdWVyeS1idWlsZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcXVlcnktYnVpbGRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcXVlcnktYnVpbGRlci5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogWyBQZXBRdWVyeVN0cnVjdHVyZVNlcnZpY2UsIFBlcFR5cGVDb252ZXJ0b3JTZXJ2aWNlLCBQZXBPdXRwdXRRdWVyeVNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFBlcFF1ZXJ5QnVpbGRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBfcXVlcnk6IElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtID0gbnVsbDtcbiAgICBASW5wdXQoKVxuICAgIHNldCBxdWVyeShvYmplY3Q6IElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtKSB7XG4gICAgICAgIHRoaXMuX3F1ZXJ5ID0gb2JqZWN0O1xuICAgICAgICB0aGlzLmxvYWRRdWVyeSgpXG4gICAgfVxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZpZWxkcyhsaXN0OiBBcnJheTxJUGVwUXVlcnlCdWlsZGVyRmllbGQ+KSB7XG4gICAgICAgIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmZpZWxkcyA9IGxpc3Q7XG4gICAgICAgIHRoaXMuaGFzRmllbGRzID0gdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuaGFzRmllbGRzO1xuICAgICAgICB0aGlzLmxvYWRRdWVyeSgpO1xuICAgIH1cbiAgICBASW5wdXQoKSBcbiAgICBzZXQgdmFyaWFibGVGaWVsZHMobGlzdCA6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UudmFyaWFibGVGaWVsZHMgPSBsaXN0O1xuICAgIH1cbiAgICBASW5wdXQoKVxuICAgIHNldCBtYXhEZXB0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLm1heERlcHRoID0gdmFsdWU7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpXG4gICAgcXVlcnlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUGVwUXVlcnlTZWN0aW9uIHwgSVBlcFF1ZXJ5SXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPigpO1xuICAgIEBPdXRwdXQoKVxuICAgIGZvcm1WYWxpZGF0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdyb290Q29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgcm9vdDogUGVwUXVlcnlCdWlsZGVyU2VjdGlvbkNvbXBvbmVudDtcblxuICAgIF9mb3JtU3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uO1xuICAgIF9vdXRwdXRRdWVyeVN1YnNjcmlwdGlvbiQ6IFN1YnNjcmlwdGlvbjtcbiAgICBfbGFzdEZvcm1WYWxpZFN0YXR1cyA9IHRydWU7XG4gICAgZGVwdGg6IElQZXBRdWVyeURlcHRoO1xuICAgIGhhc0ZpZWxkcyA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2ZiOiBGb3JtQnVpbGRlcixcbiAgICAgICAgcHVibGljIHF1ZXJ5U3RydWN0dXJlU2VydmljZTogUGVwUXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaW5pdEZvcm0oKTtcbiAgICAgICAgdGhpcy5pbml0RGVwdGgoKTtcbiAgICAgICAgdGhpcy5fZm9ybVN1YnNjcmlwdGlvbiQgPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmZvcm0udmFsaWQgIT09IHRoaXMuX2xhc3RGb3JtVmFsaWRTdGF0dXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sYXN0Rm9ybVZhbGlkU3RhdHVzID0gdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuZm9ybS52YWxpZDtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1WYWxpZGF0aW9uQ2hhbmdlLmVtaXQodGhpcy5fbGFzdEZvcm1WYWxpZFN0YXR1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9vdXRwdXRRdWVyeVN1YnNjcmlwdGlvbiQgPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5vdXRwdXRRdWVyeSQuc3Vic2NyaWJlKChvdXRwdXRRdWVyeSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5xdWVyeUNoYW5nZS5lbWl0KG91dHB1dFF1ZXJ5KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIC8vXG4gICAgfVxuXG4gICAgaW5pdEZvcm0oKSB7XG4gICAgICAgIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmZvcm0gPSB0aGlzLl9mYi5ncm91cCh7XG4gICAgICAgICAgICBvcGVyYXRvcjogdGhpcy5fZmIuY29udHJvbChQZXBPcGVyYXRvclR5cGVzLkFuZClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaW5pdERlcHRoKCkge1xuICAgICAgICB0aGlzLmRlcHRoID0ge1xuICAgICAgICAgICAgY3VycmVudDogMCxcbiAgICAgICAgICAgIG1heDogdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UubWF4RGVwdGhcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGJ1aWxkcyBVSSBxdWVyeSBzdHJ1Y3R1cmUgYXMgc29vbiBhcyBib3RoIHRoZSBmaWVsZHMgYW5kIHF1ZXJ5IGxvYWRzXG4gICAgICovXG4gICAgbG9hZFF1ZXJ5KCkge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgICB0aGlzLl9xdWVyeSAmJlxuICAgICAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuaGFzRmllbGRzICYmXG4gICAgICAgICAgICB0aGlzLnJvb3Q/LnNlY3Rpb25Db250YWluZXJcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRGb3JtKCk7XG4gICAgICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5idWlsZFF1ZXJ5U3RydWN0dXJlKHRoaXMuX3F1ZXJ5LCB0aGlzLnJvb3Quc2VjdGlvbkNvbnRhaW5lcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNyZWF0ZVNlY3Rpb24oKSB7XG4gICAgICAgIGNvbnN0IHNlY3Rpb24gPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5jcmVhdGVTZWN0aW9uKFBlcE9wZXJhdG9yVHlwZXMuQW5kLCB0aGlzLnJvb3Quc2VjdGlvbkNvbnRhaW5lciwgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuZm9ybSwgMSk7XG4gICAgICAgIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmNyZWF0ZUl0ZW0obnVsbCwgc2VjdGlvbi5jb250YWluZXJSZWYsIHNlY3Rpb24ucGFyZW50Rm9ybSk7XG4gICAgfVxuXG4gICAgb25DcmVhdGVJdGVtKCkge1xuICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5jcmVhdGVJdGVtKG51bGwsIHRoaXMucm9vdC5zZWN0aW9uQ29udGFpbmVyLCB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5mb3JtKTtcbiAgICB9XG5cbiAgICBvbk9wZXJhdG9yQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5jcmVhdGVPdXRwdXRRdWVyeSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5fZm9ybVN1YnNjcmlwdGlvbiQpIHtcbiAgICAgICAgICAgIHRoaXMuX2Zvcm1TdWJzY3JpcHRpb24kLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuX291dHB1dFF1ZXJ5U3Vic2NyaXB0aW9uJCkge1xuICAgICAgICAgICAgdGhpcy5fb3V0cHV0UXVlcnlTdWJzY3JpcHRpb24kLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIjxwZXAtcXVlcnktYnVpbGRlci1zZWN0aW9uICNyb290Q29udGFpbmVyIFtmb3JtXT1cInF1ZXJ5U3RydWN0dXJlU2VydmljZS5mb3JtXCIgW2RlcHRoXT1cImRlcHRoXCIgW2hhc0ZpZWxkc109XCJoYXNGaWVsZHNcIlxuICAgIChjcmVhdGVTZWN0aW9uKT1cIm9uQ3JlYXRlU2VjdGlvbigpXCIgKGNyZWF0ZUl0ZW0pPVwib25DcmVhdGVJdGVtKClcIiAob3BlcmF0b3JDaGFuZ2UpPVwib25PcGVyYXRvckNoYW5nZSgpXCI+XG48L3BlcC1xdWVyeS1idWlsZGVyLXNlY3Rpb24+Il19
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvcXVlcnktYnVpbGRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUdOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNyRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFTdkQsTUFBTSxPQUFPLHdCQUF3QjtJQW1DakMsWUFDWSxHQUFnQixFQUNqQixxQkFBK0M7UUFEOUMsUUFBRyxHQUFILEdBQUcsQ0FBYTtRQUNqQiwwQkFBcUIsR0FBckIscUJBQXFCLENBQTBCO1FBcEMxRCxXQUFNLEdBQXFDLElBQUksQ0FBQztRQXNCaEQsZ0JBQVcsR0FBbUQsSUFBSSxZQUFZLEVBQW9DLENBQUM7UUFFbkgseUJBQW9CLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFNMUUseUJBQW9CLEdBQUcsSUFBSSxDQUFDO1FBRTVCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFNZCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxD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LEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3pCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN6QztRQUNELElBQUksSUFBSSxDQUFDLHlCQUF5QixFQUFFO1lBQ2hDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNoRDtJQUNMLENBQUM7O3FIQXRHUSx3QkFBd0I7eUdBQXhCLHdCQUF3Qix5T0FGdEIsQ0FBRSx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSxxQkFBcUIsQ0FBQywrSUN2QjFGLCtRQUU0QjsyRkR1QmYsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNJLG1CQUFtQixhQUdsQixDQUFFLHdCQUF3QixFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixDQUFDO3lJQUtsRixLQUFLO3NCQURSLEtBQUs7Z0JBTUYsTUFBTTtzQkFEVCxLQUFLO2dCQU9GLGNBQWM7c0JBRGpCLEtBQUs7Z0JBS0YsUUFBUTtzQkFEWCxLQUFLO2dCQU1OLFdBQVc7c0JBRFYsTUFBTTtnQkFHUCxvQkFBb0I7c0JBRG5CLE1BQU07Z0JBR3VDLElBQUk7c0JBQWpELFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFBlcFF1ZXJ5QnVpbGRlclNlY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL3F1ZXJ5LWJ1aWxkZXItc2VjdGlvbi9xdWVyeS1idWlsZGVyLXNlY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IElQZXBRdWVyeUJ1aWxkZXJGaWVsZCwgSVBlcFF1ZXJ5U2VjdGlvbiwgSVBlcFF1ZXJ5SXRlbSB9IGZyb20gJy4vY29tbW9uL21vZGVsL2xlZ2FjeSc7XG5pbXBvcnQgeyBQZXBRdWVyeVN0cnVjdHVyZVNlcnZpY2UgfSBmcm9tICcuL2NvbW1vbi9zZXJ2aWNlcy9xdWVyeS1zdHJ1Y3R1cmUuc2VydmljZSc7XG5pbXBvcnQgeyBQZXBUeXBlQ29udmVydG9yU2VydmljZSB9IGZyb20gJy4vY29tbW9uL3NlcnZpY2VzL3R5cGUtY29udmVydG9yLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGVwT3V0cHV0UXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi9jb21tb24vc2VydmljZXMvb3V0cHV0LXF1ZXJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgSVBlcFF1ZXJ5RGVwdGggfSBmcm9tICcuL2NvbW1vbi9tb2RlbC9zdHJ1Y3R1cmUnO1xuaW1wb3J0IHsgUGVwT3BlcmF0b3JUeXBlcyB9IGZyb20gJy4vY29tbW9uL21vZGVsL3R5cGUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGVwLXF1ZXJ5LWJ1aWxkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9xdWVyeS1idWlsZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbIFBlcFF1ZXJ5U3RydWN0dXJlU2VydmljZSwgUGVwVHlwZUNvbnZlcnRvclNlcnZpY2UsIFBlcE91dHB1dFF1ZXJ5U2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlCdWlsZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIF9xdWVyeTogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0gPSBudWxsO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHF1ZXJ5KG9iamVjdDogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0pIHtcbiAgICAgICAgdGhpcy5fcXVlcnkgPSBvYmplY3Q7XG4gICAgICAgIHRoaXMubG9hZFF1ZXJ5KClcbiAgICB9XG4gICAgQElucHV0KClcbiAgICBzZXQgZmllbGRzKGxpc3Q6IEFycmF5PElQZXBRdWVyeUJ1aWxkZXJGaWVsZD4pIHtcbiAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuZmllbGRzID0gbGlzdDtcbiAgICAgICAgdGhpcy5oYXNGaWVsZHMgPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5oYXNGaWVsZHM7XG4gICAgICAgIHRoaXMubG9hZFF1ZXJ5KCk7XG4gICAgfVxuICAgIEBJbnB1dCgpIFxuICAgIHNldCB2YXJpYWJsZUZpZWxkcyhsaXN0IDogQXJyYXk8SVBlcFF1ZXJ5QnVpbGRlckZpZWxkPikge1xuICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS52YXJpYWJsZUZpZWxkcyA9IGxpc3Q7XG4gICAgfVxuICAgIEBJbnB1dCgpXG4gICAgc2V0IG1heERlcHRoKHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UubWF4RGVwdGggPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICBxdWVyeUNoYW5nZTogRXZlbnRFbWl0dGVyPElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtPiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW0+KCk7XG4gICAgQE91dHB1dCgpXG4gICAgZm9ybVZhbGlkYXRpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ3Jvb3RDb250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSByb290OiBQZXBRdWVyeUJ1aWxkZXJTZWN0aW9uQ29tcG9uZW50O1xuXG4gICAgX2Zvcm1TdWJzY3JpcHRpb24kOiBTdWJzY3JpcHRpb247XG4gICAgX291dHB1dFF1ZXJ5U3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uO1xuICAgIF9sYXN0Rm9ybVZhbGlkU3RhdHVzID0gdHJ1ZTtcbiAgICBkZXB0aDogSVBlcFF1ZXJ5RGVwdGg7XG4gICAgaGFzRmllbGRzID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfZmI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwdWJsaWMgcXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlOiBQZXBRdWVyeVN0cnVjdHVyZVNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5zZXR1cEZvcm0oKTtcbiAgICAgICAgdGhpcy5pbml0RGVwdGgoKTtcbiAgICAgICAgdGhpcy5fZm9ybVN1YnNjcmlwdGlvbiQgPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5mb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmZvcm0udmFsaWQgIT09IHRoaXMuX2xhc3RGb3JtVmFsaWRTdGF0dXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9sYXN0Rm9ybVZhbGlkU3RhdHVzID0gdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuZm9ybS52YWxpZDtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1WYWxpZGF0aW9uQ2hhbmdlLmVtaXQodGhpcy5fbGFzdEZvcm1WYWxpZFN0YXR1cyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9vdXRwdXRRdWVyeVN1YnNjcmlwdGlvbiQgPSB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5vdXRwdXRRdWVyeSQuc3Vic2NyaWJlKChvdXRwdXRRdWVyeSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5xdWVyeUNoYW5nZS5lbWl0KG91dHB1dFF1ZXJ5KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIC8vXG4gICAgfVxuXG4gICAgc2V0dXBGb3JtKCkge1xuICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5mb3JtID0gdGhpcy5fZmIuZ3JvdXAoe1xuICAgICAgICAgICAgb3BlcmF0b3I6IHRoaXMuX2ZiLmNvbnRyb2woUGVwT3BlcmF0b3JUeXBlcy5BbmQpXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGluaXREZXB0aCgpIHtcbiAgICAgICAgdGhpcy5kZXB0aCA9IHtcbiAgICAgICAgICAgIGN1cnJlbnQ6IDAsXG4gICAgICAgICAgICBtYXg6IHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLm1heERlcHRoXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBidWlsZHMgVUkgcXVlcnkgc3RydWN0dXJlIGFzIHNvb24gYXMgYm90aCB0aGUgZmllbGRzIGFuZCBxdWVyeSBsb2Fkc1xuICAgICAqL1xuICAgIGxvYWRRdWVyeSgpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5fcXVlcnkgJiZcbiAgICAgICAgICAgIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmhhc0ZpZWxkcyAmJlxuICAgICAgICAgICAgdGhpcy5yb290Py5zZWN0aW9uQ29udGFpbmVyXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuYnVpbGRRdWVyeVN0cnVjdHVyZSh0aGlzLl9xdWVyeSwgdGhpcy5yb290LnNlY3Rpb25Db250YWluZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25DcmVhdGVTZWN0aW9uKCkge1xuICAgICAgICBjb25zdCBzZWN0aW9uID0gdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuY3JlYXRlU2VjdGlvbihQZXBPcGVyYXRvclR5cGVzLkFuZCwgdGhpcy5yb290LnNlY3Rpb25Db250YWluZXIsIHRoaXMucXVlcnlTdHJ1Y3R1cmVTZXJ2aWNlLmZvcm0sIDEpO1xuICAgICAgICB0aGlzLnF1ZXJ5U3RydWN0dXJlU2VydmljZS5jcmVhdGVJdGVtKG51bGwsIHNlY3Rpb24uY29udGFpbmVyUmVmLCBzZWN0aW9uLnBhcmVudEZvcm0pO1xuICAgIH1cblxuICAgIG9uQ3JlYXRlSXRlbSgpIHtcbiAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuY3JlYXRlSXRlbShudWxsLCB0aGlzLnJvb3Quc2VjdGlvbkNvbnRhaW5lciwgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuZm9ybSk7XG4gICAgfVxuXG4gICAgb25PcGVyYXRvckNoYW5nZSgpIHtcbiAgICAgICAgdGhpcy5xdWVyeVN0cnVjdHVyZVNlcnZpY2UuY3JlYXRlT3V0cHV0UXVlcnkoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2Zvcm1TdWJzY3JpcHRpb24kKSB7XG4gICAgICAgICAgICB0aGlzLl9mb3JtU3Vic2NyaXB0aW9uJC51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLl9vdXRwdXRRdWVyeVN1YnNjcmlwdGlvbiQpIHtcbiAgICAgICAgICAgIHRoaXMuX291dHB1dFF1ZXJ5U3Vic2NyaXB0aW9uJC51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCI8cGVwLXF1ZXJ5LWJ1aWxkZXItc2VjdGlvbiAjcm9vdENvbnRhaW5lciBbZm9ybV09XCJxdWVyeVN0cnVjdHVyZVNlcnZpY2UuZm9ybVwiIFtkZXB0aF09XCJkZXB0aFwiIFtoYXNGaWVsZHNdPVwiaGFzRmllbGRzXCJcbiAgICAoY3JlYXRlU2VjdGlvbik9XCJvbkNyZWF0ZVNlY3Rpb24oKVwiIChjcmVhdGVJdGVtKT1cIm9uQ3JlYXRlSXRlbSgpXCIgKG9wZXJhdG9yQ2hhbmdlKT1cIm9uT3BlcmF0b3JDaGFuZ2UoKVwiPlxuPC9wZXAtcXVlcnktYnVpbGRlci1zZWN0aW9uPiJdfQ==
|
|
@@ -344,59 +344,15 @@ const Contains = {
|
|
|
344
344
|
type: null
|
|
345
345
|
};
|
|
346
346
|
const BeginsWith = {
|
|
347
|
-
legacy: '
|
|
347
|
+
legacy: 'StartWith',
|
|
348
348
|
smartFilter: PepSmartFilterOperators.BeginsWith,
|
|
349
349
|
type: null
|
|
350
350
|
};
|
|
351
351
|
const EndsWith = {
|
|
352
|
-
legacy: '
|
|
352
|
+
legacy: 'EndWith',
|
|
353
353
|
smartFilter: PepSmartFilterOperators.EndsWith,
|
|
354
354
|
type: null
|
|
355
355
|
};
|
|
356
|
-
/*
|
|
357
|
-
const BeginsWith: IPepQueryBuilderOperator = {
|
|
358
|
-
legacy: {
|
|
359
|
-
operator: 'BeginsWith',
|
|
360
|
-
type: 'String'
|
|
361
|
-
},
|
|
362
|
-
smartFilter: {
|
|
363
|
-
item: PepSmartFilterOperators.BeginsWith,
|
|
364
|
-
type: 'text'
|
|
365
|
-
}
|
|
366
|
-
};
|
|
367
|
-
|
|
368
|
-
const EndsWith: IPepQueryBuilderOperator = {
|
|
369
|
-
legacy: {
|
|
370
|
-
operator: 'EndsWith',
|
|
371
|
-
type: 'String'
|
|
372
|
-
},
|
|
373
|
-
smartFilter: {
|
|
374
|
-
item: PepSmartFilterOperators.EndsWith,
|
|
375
|
-
type: 'text'
|
|
376
|
-
}
|
|
377
|
-
};
|
|
378
|
-
|
|
379
|
-
const Before: IPepQueryBuilderOperator = {
|
|
380
|
-
legacy: {
|
|
381
|
-
operator: 'Before',
|
|
382
|
-
type: 'Date'
|
|
383
|
-
},
|
|
384
|
-
smartFilter: {
|
|
385
|
-
item: PepSmartFilterOperators.Before,
|
|
386
|
-
type: 'date'
|
|
387
|
-
}
|
|
388
|
-
};
|
|
389
|
-
|
|
390
|
-
const After: IPepQueryBuilderOperator = {
|
|
391
|
-
legacy: {
|
|
392
|
-
operator: 'After',
|
|
393
|
-
type: 'Date'
|
|
394
|
-
},
|
|
395
|
-
smartFilter: {
|
|
396
|
-
item: PepSmartFilterOperators.After,
|
|
397
|
-
type: 'date'
|
|
398
|
-
}
|
|
399
|
-
}; */
|
|
400
356
|
const InTheLast = {
|
|
401
357
|
legacy: 'InTheLast',
|
|
402
358
|
smartFilter: PepSmartFilterOperators.InTheLast,
|
|
@@ -793,6 +749,7 @@ class PepQueryStructureService {
|
|
|
793
749
|
this._outputQuery$ = new BehaviorSubject(null);
|
|
794
750
|
this._variableFields = {};
|
|
795
751
|
this._maxStructureDepth = MAX_STRUCTURE_DEPTH;
|
|
752
|
+
this._cmpRefMap = new Map();
|
|
796
753
|
this.outputQuery$ = this._outputQuery$.asObservable();
|
|
797
754
|
}
|
|
798
755
|
set maxDepth(value) {
|
|
@@ -835,6 +792,18 @@ class PepQueryStructureService {
|
|
|
835
792
|
* @param containerRef reference to root element
|
|
836
793
|
*/
|
|
837
794
|
buildQueryStructure(query, containerRef) {
|
|
795
|
+
// Remove all the components from the query builder.
|
|
796
|
+
this._cmpRefMap.forEach((value, key) => {
|
|
797
|
+
// console.log(key, value);
|
|
798
|
+
// value.instance.remove();
|
|
799
|
+
if (value.instance.parentForm) {
|
|
800
|
+
value.instance.parentForm.removeControl(key);
|
|
801
|
+
}
|
|
802
|
+
value.destroy();
|
|
803
|
+
this._cmpRefMap.delete(key);
|
|
804
|
+
});
|
|
805
|
+
// Clear containerRef
|
|
806
|
+
containerRef.clear();
|
|
838
807
|
//update root operator
|
|
839
808
|
if (this.hasProperty(query, 'ComplexId') &&
|
|
840
809
|
(query === null || query === void 0 ? void 0 : query.Operation) &&
|
|
@@ -917,10 +886,15 @@ class PepQueryStructureService {
|
|
|
917
886
|
parentForm.removeControl(formKey);
|
|
918
887
|
componentRef.destroy();
|
|
919
888
|
this.createOutputQuery();
|
|
889
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
890
|
+
this._cmpRefMap.delete(formKey);
|
|
891
|
+
}
|
|
920
892
|
});
|
|
921
893
|
componentRef.instance.operatorChange.subscribe(() => {
|
|
922
894
|
this.createOutputQuery();
|
|
923
895
|
});
|
|
896
|
+
// Add this to remove all the components when fields changes.
|
|
897
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
924
898
|
return {
|
|
925
899
|
containerRef: componentRef.instance.sectionContainer,
|
|
926
900
|
parentForm: sectionGroup
|
|
@@ -960,7 +934,12 @@ class PepQueryStructureService {
|
|
|
960
934
|
parentForm.removeControl(formKey);
|
|
961
935
|
componentRef.destroy();
|
|
962
936
|
this.createOutputQuery();
|
|
937
|
+
if (this._cmpRefMap.has(formKey)) {
|
|
938
|
+
this._cmpRefMap.delete(formKey);
|
|
939
|
+
}
|
|
963
940
|
});
|
|
941
|
+
// Add this to remove all the components when fields changes.
|
|
942
|
+
this._cmpRefMap.set(formKey, componentRef);
|
|
964
943
|
}
|
|
965
944
|
/**
|
|
966
945
|
* get smart filter field
|
|
@@ -1015,7 +994,7 @@ class PepQueryBuilderComponent {
|
|
|
1015
994
|
this.formValidationChange = new EventEmitter();
|
|
1016
995
|
this._lastFormValidStatus = true;
|
|
1017
996
|
this.hasFields = false;
|
|
1018
|
-
this.
|
|
997
|
+
this.setupForm();
|
|
1019
998
|
this.initDepth();
|
|
1020
999
|
this._formSubscription$ = this.queryStructureService.form.valueChanges.subscribe((val) => {
|
|
1021
1000
|
if (this.queryStructureService.form.valid !== this._lastFormValidStatus) {
|
|
@@ -1045,7 +1024,7 @@ class PepQueryBuilderComponent {
|
|
|
1045
1024
|
ngOnInit() {
|
|
1046
1025
|
//
|
|
1047
1026
|
}
|
|
1048
|
-
|
|
1027
|
+
setupForm() {
|
|
1049
1028
|
this.queryStructureService.form = this._fb.group({
|
|
1050
1029
|
operator: this._fb.control(PepOperatorTypes.And)
|
|
1051
1030
|
});
|
|
@@ -1064,7 +1043,6 @@ class PepQueryBuilderComponent {
|
|
|
1064
1043
|
if (this._query &&
|
|
1065
1044
|
this.queryStructureService.hasFields &&
|
|
1066
1045
|
((_a = this.root) === null || _a === void 0 ? void 0 : _a.sectionContainer)) {
|
|
1067
|
-
this.initForm();
|
|
1068
1046
|
this.queryStructureService.buildQueryStructure(this._query, this.root.sectionContainer);
|
|
1069
1047
|
}
|
|
1070
1048
|
}
|