ca-components 0.0.78 → 0.0.81
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/esm2022/lib/components/ca-filters/ca-filter.component.mjs +59 -5
- package/esm2022/lib/components/ca-filters/components/ca-dispatcher-filter/ca-dispatcher-filter.component.mjs +14 -35
- package/esm2022/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.mjs +10 -9
- package/esm2022/lib/components/ca-filters/components/ca-pm-filter/ca-pm-filter.component.mjs +8 -8
- package/esm2022/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.mjs +28 -23
- package/esm2022/lib/components/ca-filters/components/ca-status-filter/ca-status-filter.component.mjs +13 -9
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.mjs +62 -37
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/config/ca-trailer-type-filter.config.mjs +15 -0
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/config/index.mjs +2 -0
- package/esm2022/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.mjs +61 -37
- package/esm2022/lib/components/ca-filters/components/ca-truck-type-filter/config/ca-truck-type-filter.config.mjs +15 -0
- package/esm2022/lib/components/ca-filters/pipes/filter-popover-conditions.pipe.mjs +2 -1
- package/esm2022/lib/components/ca-filters/utils/constants/directive.constants.mjs +141 -141
- package/esm2022/lib/components/ca-filters/utils/helpers/filter.helper.mjs +13 -12
- package/esm2022/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.mjs +10 -5
- package/esm2022/lib/components/ca-payroll-list-summary-overview-table/ca-payroll-list-summary-overview-table.component.mjs +1 -1
- package/esm2022/lib/components/ca-todo/ca-todo.component.mjs +52 -153
- package/esm2022/lib/components/ca-todo/components/ca-todo-card.component.mjs +139 -0
- package/esm2022/lib/components/ca-todo/config/column.config.mjs +18 -0
- package/esm2022/lib/components/ca-todo/config/index.mjs +2 -0
- package/esm2022/lib/components/ca-todo/enums/column.enum.mjs +7 -0
- package/esm2022/lib/components/ca-todo/enums/index.mjs +2 -0
- package/esm2022/lib/components/ca-todo/models/image-config.model.mjs +2 -0
- package/esm2022/lib/components/ca-todo/models/index.mjs +3 -1
- package/esm2022/lib/components/ca-todo/models/todo-card-config.model.mjs +2 -0
- package/esm2022/lib/components/ca-todo/models/todo-config.model.mjs +1 -1
- package/esm2022/lib/components/ca-todo/utils/svg-routes/todo.routes.mjs +1 -1
- package/esm2022/lib/components/ca-upload-files/ca-upload-files.component.mjs +6 -3
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-dropzone/ca-upload-dropzone.component.mjs +8 -12
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-dropzone/helpers/file.helper.mjs +5 -7
- package/esm2022/lib/components/ca-upload-files/components/ca-upload-dropzone/models/file-config.model.mjs +1 -1
- package/esm2022/lib/models/array-status.model.mjs +1 -1
- package/fesm2022/ca-components.mjs +2539 -2375
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/components/ca-filters/ca-filter.component.d.ts +8 -1
- package/lib/components/ca-filters/components/ca-money-filter/ca-money-filter.component.d.ts +4 -3
- package/lib/components/ca-filters/components/ca-state-filter/ca-state-filter.component.d.ts +5 -5
- package/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.d.ts +12 -5
- package/lib/components/ca-filters/components/ca-trailer-type-filter/config/ca-trailer-type-filter.config.d.ts +4 -0
- package/lib/components/ca-filters/components/ca-trailer-type-filter/config/index.d.ts +1 -0
- package/lib/components/ca-filters/components/ca-truck-type-filter/ca-truck-type-filter.component.d.ts +13 -6
- package/lib/components/ca-filters/components/ca-truck-type-filter/config/ca-truck-type-filter.config.d.ts +4 -0
- package/lib/components/ca-payroll-list-summary-overview/ca-payroll-list-summary-overview.component.d.ts +4 -2
- package/lib/components/ca-todo/ca-todo.component.d.ts +19 -57
- package/lib/components/ca-todo/components/ca-todo-card.component.d.ts +56 -0
- package/lib/components/ca-todo/config/column.config.d.ts +6 -0
- package/lib/components/ca-todo/config/index.d.ts +1 -0
- package/lib/components/ca-todo/enums/column.enum.d.ts +5 -0
- package/lib/components/ca-todo/enums/index.d.ts +1 -0
- package/lib/components/ca-todo/models/image-config.model.d.ts +8 -0
- package/lib/components/ca-todo/models/index.d.ts +2 -0
- package/lib/components/ca-todo/models/todo-card-config.model.d.ts +9 -0
- package/lib/components/ca-todo/models/todo-config.model.d.ts +21 -13
- package/lib/components/ca-upload-files/ca-upload-files.component.d.ts +2 -1
- package/lib/components/ca-upload-files/components/ca-upload-dropzone/helpers/file.helper.d.ts +1 -1
- package/lib/components/ca-upload-files/components/ca-upload-dropzone/models/file-config.model.d.ts +1 -1
- package/lib/models/array-status.model.d.ts +2 -1
- package/package.json +1 -1
- package/esm2022/lib/components/ca-todo/services/file-service.mjs +0 -20
- package/esm2022/lib/components/ca-todo/services/index.mjs +0 -2
- package/lib/components/ca-todo/services/file-service.d.ts +0 -10
- package/lib/components/ca-todo/services/index.d.ts +0 -1
|
@@ -156,18 +156,19 @@ export class FilterHelper {
|
|
|
156
156
|
});
|
|
157
157
|
}
|
|
158
158
|
static handleFilterClose(filterArray, selectedFilterArray, removeFunction, addFunction) {
|
|
159
|
-
filterArray
|
|
160
|
-
|
|
161
|
-
(
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
159
|
+
filterArray &&
|
|
160
|
+
filterArray.forEach((item) => {
|
|
161
|
+
if ((item.isSelected && !item.currentSet) ||
|
|
162
|
+
(!item.isSelected && item.currentSet)) {
|
|
163
|
+
const indexNum = selectedFilterArray.findIndex((selectedItem) => selectedItem.id === item.id);
|
|
164
|
+
if (indexNum > -1)
|
|
165
|
+
removeFunction(item, indexNum);
|
|
166
|
+
else {
|
|
167
|
+
const inactiveIndexNum = filterArray.indexOf(item);
|
|
168
|
+
addFunction(item, inactiveIndexNum);
|
|
169
|
+
}
|
|
168
170
|
}
|
|
169
|
-
}
|
|
170
|
-
});
|
|
171
|
+
});
|
|
171
172
|
}
|
|
172
173
|
static handleAreaFilterClose(locationForm, locationNameSet, longVal, latVal, longValueSet, latValSet, locationRange, locationRangeSet) {
|
|
173
174
|
locationForm.setValue({ address: locationNameSet });
|
|
@@ -176,4 +177,4 @@ export class FilterHelper {
|
|
|
176
177
|
locationRange = locationRangeSet;
|
|
177
178
|
}
|
|
178
179
|
}
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvdXRpbHMvaGVscGVycy9maWx0ZXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLFNBQVM7QUFDVCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUd6RSxNQUFNLE9BQU8sWUFBWTtJQUN2QixNQUFNLENBQUMsU0FBUyxDQUNkLGlCQUFnQyxFQUNoQyx5QkFBd0MsRUFDeEMsb0JBQTZCO1FBTTdCLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM5QixJQUFJLG9CQUFvQixFQUFFO2dCQUN4QixPQUFPLENBQUMsQ0FBQyxJQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFLLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxPQUFPLENBQUMsQ0FBQyxJQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFLLENBQUMsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLElBQUksb0JBQW9CLEVBQUU7Z0JBQ3hCLE9BQU8sQ0FBQyxDQUFDLElBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQyxDQUFDO2FBQ3ZDO2lCQUFNO2dCQUNMLE9BQU8sQ0FBQyxDQUFDLElBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBb0IsR0FBRyxDQUFDLG9CQUFvQixDQUFDO1FBRTdDLE9BQU87WUFDTCxpQkFBaUI7WUFDakIs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Q0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxpQkFBaUIsQ0FDdEIsV0FBMEIsRUFDMUIsbUJBQWtDLEVBQ2xDLGNBQTBELEVBQzFELFdBQXVEO1FBRXZELFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN2QixJQUNFLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7Z0JBQ3JDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsRUFDckM7Z0JBQ0EsTUFBTSxRQUFRLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7b0JBQUUsY0FBYyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztxQkFDN0M7b0JBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNuRCxXQUFXLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7aUJBQ3JDO2FBQ0Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMscUJBQXFCLENBQzFCLFlBQThCLEVBQzlCLGVBQThCLEVBQzlCLE9BQWUsRUFDZixNQUFjLEVBQ2QsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsYUFBcUIsRUFDckIsZ0JBQXdCO1FBRXhCLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztRQUNwRCxPQUFPLEdBQUcsWUFBWSxDQUFDO1FBQ3ZCLE1BQU0sR0FBRyxTQUFTLENBQUM7UUFDbkIsYUFBYSxHQUFHLGdCQUFnQixDQUFDO0lBQ25DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFycmF5U3RhdHVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2FycmF5LXN0YXR1cy5tb2RlbCc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgVXNlckdyb3VwIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jYS11c2VyLWZpbHRlci9tb2RlbHMvY2EtdXNlci1ncm91cC5tb2RlbCc7XG5pbXBvcnQgeyBVc2VyRGF0YSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvY2EtdXNlci1maWx0ZXIvbW9kZWxzL2NhLXVzZXItZGF0YS5tb2RlbCc7XG5cbi8vIHJvdXRlc1xuaW1wb3J0IHsgQ2FGaWx0ZXJzU3ZnUm91dGVzIH0gZnJvbSAnLi4vc3ZnLXJvdXRlcy9jYS1maWx0ZXJzLXN2Zy1yb3V0ZXMnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGNsYXNzIEZpbHRlckhlbHBlciB7XG4gIHN0YXRpYyBzb3J0SXRlbXMoXG4gICAgc29ydGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXSxcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhblxuICApOiB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW107XG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXTtcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbjtcbiAgfSB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXkuc29ydCgoYSwgYikgPT4ge1xuICAgICAgaWYgKGlzQXNjZW5kaW5nU29ydE9yZGVyKSB7XG4gICAgICAgIHJldHVybiBhLm5hbWUhLmxvY2FsZUNvbXBhcmUoYi5uYW1lISk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gYi5uYW1lIS5sb2NhbGVDb21wYXJlKGEubmFtZSEpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICBpZiAoaXNBc2NlbmRpbmdTb3J0T3JkZXIpIHtcbiAgICAgICAgcmV0dXJuIGEubmFtZSEubG9jYWxlQ29tcGFyZShiLm5hbWUhKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBiLm5hbWUhLmxvY2FsZUNvbXBhcmUoYS5uYW1lISk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlciA9ICFpc0FzY2VuZGluZ1NvcnRPcmRlcjtcblxuICAgIHJldHVybiB7XG4gICAgICBzb3J0ZWRGaWx0ZXJBcnJheSxcbiAgICAgIHNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXksXG4gICAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcixcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIHNvcnRJdGVtc0NvdW50KFxuICAgIHNvcnRlZEZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdLFxuICAgIHNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgaXNBc2NlbmRpbmdTb3J0T3JkZXI6IGJvb2xlYW5cbiAgKToge1xuICAgIHNvcnRlZEZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdO1xuICAgIHNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW107XG4gICAgaXNBc2NlbmRpbmdTb3J0T3JkZXI6IGJvb2xlYW47XG4gIH0ge1xuICAgIHNvcnRlZEZpbHRlckFycmF5LnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGlmIChpc0FzY2VuZGluZ1NvcnRPcmRlcikge1xuICAgICAgICByZXR1cm4gYS5jb3VudCEgLSBiLmNvdW50ITtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBiLmNvdW50ISAtIGEuY291bnQhO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICBpZiAoaXNBc2NlbmRpbmdTb3J0T3JkZXIpIHtcbiAgICAgICAgcmV0dXJuIGEuY291bnQhIC0gYi5jb3VudCE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gYi5jb3VudCEgLSBhLmNvdW50ITtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyID0gIWlzQXNjZW5kaW5nU29ydE9yZGVyO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvcnRlZEZpbHRlckFycmF5LFxuICAgICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheSxcbiAgICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyLFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgc29ydEdyb3VwSXRlbXNDb3VudChcbiAgICBzb3J0ZWRGaWx0ZXJBcnJheTogVXNlckdyb3VwW10sXG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTogVXNlckdyb3VwW10sXG4gICAgaXNBc2NlbmRpbmdTb3J0T3JkZXI6IGJvb2xlYW5cbiAgKToge1xuICAgIHNvcnRlZEZpbHRlckFycmF5OiBVc2VyR3JvdXBbXTtcbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5OiBVc2VyR3JvdXBbXTtcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbjtcbiAgfSB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXkuZm9yRWFjaCgoZ3JvdXApID0+IHtcbiAgICAgIGdyb3VwLml0ZW1zLnNvcnQoKGE6IFVzZXJEYXRhLCBiOiBVc2VyRGF0YSkgPT4ge1xuICAgICAgICBpZiAoaXNBc2NlbmRpbmdTb3J0T3JkZXIpIHtcbiAgICAgICAgICByZXR1cm4gYS5jb3VudCEgLSBiLmNvdW50ITtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gYi5jb3VudCEgLSBhLmNvdW50ITtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGdyb3VwLml0ZW1zLnNvcnQoKGE6IFVzZXJEYXRhLCBiOiBVc2VyRGF0YSkgPT4ge1xuICAgICAgICBpZiAoaXNBc2NlbmRpbmdTb3J0T3JkZXIpIHtcbiAgICAgICAgICByZXR1cm4gYS5jb3VudCEgLSBiLmNvdW50ITtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gYi5jb3VudCEgLSBhLmNvdW50ITtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlciA9ICFpc0FzY2VuZGluZ1NvcnRPcmRlcjtcblxuICAgIHJldHVybiB7XG4gICAgICBzb3J0ZWRGaWx0ZXJBcnJheSxcbiAgICAgIHNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXksXG4gICAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcixcbiAgICB9O1xuICB9XG5cbiAgc3RhdGljIGdldEluaXRpYWxzKG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChuYW1lID09PSB1bmRlZmluZWQpIHJldHVybiAnJztcbiAgICBjb25zdCBbZmlyc3ROYW1lLCBsYXN0TmFtZV0gPSBuYW1lLnRyaW0oKS5zcGxpdCgnICcpO1xuICAgIHJldHVybiAoZmlyc3ROYW1lPy5bMF0gfHwgJycpICsgKGxhc3ROYW1lPy5bMF0gfHwgJycpLnRvVXBwZXJDYXNlKCk7XG4gIH1cblxuICBzdGF0aWMgYWRkT3JSZW1vdmVGcm9tR3JvdXAoXG4gICAgYWRkT3JSZW1vdmU6ICdhZGQnIHwgJ3JlbW92ZScsXG4gICAgZ3JvdXBBcnJheTogVXNlckdyb3VwW10sXG4gICAgaXRlbTogVXNlckRhdGEsXG4gICAgaW5keDogbnVtYmVyLFxuICAgIGluZHgyOiBudW1iZXJcbiAgKSB7XG4gICAgY29uc3QgaWQgPSBpdGVtLmlkO1xuICAgIGNvbnN0IG5ld0dyb3VwQXJyYXk6IFVzZXJHcm91cFtdID0gW107XG5cbiAgICBncm91cEFycmF5LmZvckVhY2goKGdyb3VwLCBncm91cEluZGV4KSA9PiB7XG4gICAgICBuZXdHcm91cEFycmF5LnB1c2goe1xuICAgICAgICAuLi5ncm91cCxcbiAgICAgICAgaXRlbXM6IGdyb3VwLml0ZW1zLm1hcCgoaXRlbSwgaXRlbUluZGV4KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGl0ZW0uaWQgPT09IGlkIHx8IChncm91cEluZGV4ID09PSBpbmR4ICYmIGl0ZW1JbmRleCA9PT0gaW5keDIpXG4gICAgICAgICAgICA/IHsgLi4uaXRlbSwgaXNTZWxlY3RlZDogYWRkT3JSZW1vdmUgPT09ICdhZGQnIHx8IHVuZGVmaW5lZCB9XG4gICAgICAgICAgICA6IGl0ZW07XG4gICAgICAgIH0pLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBncm91cEFycmF5ID0gbmV3R3JvdXBBcnJheTtcblxuICAgIGNvbnN0IHVuc2VsZWN0ZWRWaXNpYmxlQ291bnQgPSBncm91cEFycmF5LnJlZHVjZShcbiAgICAgIChjb3VudCwgZ3JvdXApID0+XG4gICAgICAgIGNvdW50ICsgZ3JvdXAuaXRlbXMuZmlsdGVyKChpdGVtKSA9PiAhaXRlbS5pc1NlbGVjdGVkKS5sZW5ndGgsXG4gICAgICAwXG4gICAgKTtcblxuICAgIGxldCBoYXNTZWxlY3RlZFVzZXJzID0gZmFsc2U7XG5cbiAgICBmb3IgKGNvbnN0IGdyb3VwIG9mIGdyb3VwQXJyYXkpIHtcbiAgICAgIGlmIChncm91cC5pdGVtcy5zb21lKChpdGVtOiBVc2VyRGF0YSkgPT4gaXRlbS5pc1NlbGVjdGVkKSkge1xuICAgICAgICBoYXNTZWxlY3RlZFVzZXJzID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9IGVsc2UgaGFzU2VsZWN0ZWRVc2VycyA9IGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB7IGhhc1NlbGVjdGVkVXNlcnMsIHVuc2VsZWN0ZWRWaXNpYmxlQ291bnQsIGdyb3VwQXJyYXkgfTtcbiAgfVxuXG4gIHN0YXRpYyBjaGVja0ZpbHRlckFjdGl2ZVZhbHVlKFxuICAgIGZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdLFxuICAgIHNlbGVjdGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgaXNCdXR0b25BdmFpbGFibGU6IGJvb2xlYW5cbiAgKToge1xuICAgIGlzQnV0dG9uQXZhaWxhYmxlOiBib29sZWFuO1xuICB9IHtcbiAgICBjb25zdCBhcnJheTEgPSBbLi4uc2VsZWN0ZWRGaWx0ZXJBcnJheV07XG4gICAgY29uc3QgYXJyYXkyID0gWy4uLmZpbHRlckFycmF5XTtcblxuICAgIGFycmF5MS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICByZXR1cm4gYS5pZCEgLSBiLmlkITtcbiAgICB9KTtcblxuICAgIGFycmF5Mi5zb3J0KChhLCBiKSA9PiB7XG4gICAgICByZXR1cm4gYS5pZCEgLSBiLmlkITtcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0cmluZ2Z5MSA9IEpTT04uc3RyaW5naWZ5KGFycmF5MSk7XG4gICAgY29uc3Qgc3RyaW5nZnkyID0gSlNPTi5zdHJpbmdpZnkoYXJyYXkyKTtcblxuICAgIGlmIChzdHJpbmdmeTEgPT09IHN0cmluZ2Z5Mikge1xuICAgICAgaXNCdXR0b25BdmFpbGFibGUgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgaXNCdXR0b25BdmFpbGFibGUgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiB7IGlzQnV0dG9uQXZhaWxhYmxlIH07XG4gIH1cblxuICBzdGF0aWMgY2hlY2tHcm91cEZpbHRlckFjdGl2ZVZhbHVlKFxuICAgIGZpbHRlckFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICBpc0J1dHRvbkF2YWlsYWJsZTogYm9vbGVhblxuICApOiB7XG4gICAgaXNCdXR0b25BdmFpbGFibGU6IGJvb2xlYW47XG4gIH0ge1xuICAgIGNvbnN0IGFycmF5ID0gWy4uLmZpbHRlckFycmF5XTtcblxuICAgIGFycmF5LmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICBncm91cC5pdGVtcy5zb3J0KChhOiBVc2VyRGF0YSwgYjogVXNlckRhdGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGEuaWQhIC0gYi5pZCE7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHJldHVybiB7IGlzQnV0dG9uQXZhaWxhYmxlIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0U3ZnUGF0aChwcm9wZXJ0eU5hbWU6IGtleW9mIHR5cGVvZiBDYUZpbHRlcnNTdmdSb3V0ZXMpOiBzdHJpbmcge1xuICAgIHJldHVybiBDYUZpbHRlcnNTdmdSb3V0ZXNbcHJvcGVydHlOYW1lXSBhcyBzdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgaGFuZGxlR3JvdXBGaWx0ZXJDbG9zZShcbiAgICBmaWx0ZXJBcnJheTogVXNlckdyb3VwW10sXG4gICAgc2VsZWN0ZWRGaWx0ZXJBcnJheTogVXNlckdyb3VwW10sXG4gICAgcmVtb3ZlRnVuY3Rpb246IChpdGVtOiBVc2VyRGF0YSwgaW5kZXg6IG51bWJlciwgaW5kZXgyOiBudW1iZXIpID0+IHZvaWQsXG4gICAgYWRkRnVuY3Rpb246IChpdGVtOiBVc2VyRGF0YSwgaW5kZXg6IG51bWJlciwgaW5kZXgyOiBudW1iZXIpID0+IHZvaWRcbiAgKSB7XG4gICAgZmlsdGVyQXJyYXkuZm9yRWFjaCgoZ3JvdXApID0+IHtcbiAgICAgIGNvbnN0IGluZGV4TnVtID0gc2VsZWN0ZWRGaWx0ZXJBcnJheS5pbmRleE9mKGdyb3VwKTtcbiAgICAgIGdyb3VwLml0ZW1zLmZvckVhY2goKGl0ZW06IFVzZXJEYXRhKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAoaXRlbS5pc1NlbGVjdGVkICYmICFpdGVtLmN1cnJlbnRTZXQpIHx8XG4gICAgICAgICAgKCFpdGVtLmlzU2VsZWN0ZWQgJiYgaXRlbS5jdXJyZW50U2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBpbmRleE51bTIgPSBncm91cC5pdGVtcy5pbmRleE9mKGl0ZW0pO1xuICAgICAgICAgIGlmIChpbmRleE51bSA+IC0xKSByZW1vdmVGdW5jdGlvbihpdGVtLCBpbmRleE51bSwgaW5kZXhOdW0yKTtcbiAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGluYWN0aXZlSW5kZXhOdW0gPSBmaWx0ZXJBcnJheS5pbmRleE9mKGdyb3VwKTtcbiAgICAgICAgICAgIGFkZEZ1bmN0aW9uKGl0ZW0sIGluYWN0aXZlSW5kZXhOdW0sIGluZGV4TnVtMik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyBoYW5kbGVGaWx0ZXJDbG9zZShcbiAgICBmaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXSxcbiAgICBzZWxlY3RlZEZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdLFxuICAgIHJlbW92ZUZ1bmN0aW9uOiAoaXRlbTogQXJyYXlTdGF0dXMsIGluZGV4OiBudW1iZXIpID0+IHZvaWQsXG4gICAgYWRkRnVuY3Rpb246IChpdGVtOiBBcnJheVN0YXR1cywgaW5kZXg6IG51bWJlcikgPT4gdm9pZFxuICApIHtcbiAgICBmaWx0ZXJBcnJheS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgKGl0ZW0uaXNTZWxlY3RlZCAmJiAhaXRlbS5jdXJyZW50U2V0KSB8fFxuICAgICAgICAoIWl0ZW0uaXNTZWxlY3RlZCAmJiBpdGVtLmN1cnJlbnRTZXQpXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgaW5kZXhOdW0gPSBzZWxlY3RlZEZpbHRlckFycmF5LmluZGV4T2YoaXRlbSk7XG4gICAgICAgIGlmIChpbmRleE51bSA+IC0xKSByZW1vdmVGdW5jdGlvbihpdGVtLCBpbmRleE51bSk7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGluYWN0aXZlSW5kZXhOdW0gPSBmaWx0ZXJBcnJheS5pbmRleE9mKGl0ZW0pO1xuICAgICAgICAgIGFkZEZ1bmN0aW9uKGl0ZW0sIGluYWN0aXZlSW5kZXhOdW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzdGF0aWMgaGFuZGxlQXJlYUZpbHRlckNsb3NlKFxuICAgIGxvY2F0aW9uRm9ybTogVW50eXBlZEZvcm1Hcm91cCxcbiAgICBsb2NhdGlvbk5hbWVTZXQ6IHN0cmluZyB8IG51bGwsXG4gICAgbG9uZ1ZhbDogbnVtYmVyLFxuICAgIGxhdFZhbDogbnVtYmVyLFxuICAgIGxvbmdWYWx1ZVNldDogbnVtYmVyLFxuICAgIGxhdFZhbFNldDogbnVtYmVyLFxuICAgIGxvY2F0aW9uUmFuZ2U6IG51bWJlcixcbiAgICBsb2NhdGlvblJhbmdlU2V0OiBudW1iZXJcbiAgKSB7XG4gICAgbG9jYXRpb25Gb3JtLnNldFZhbHVlKHsgYWRkcmVzczogbG9jYXRpb25OYW1lU2V0IH0pO1xuICAgIGxvbmdWYWwgPSBsb25nVmFsdWVTZXQ7XG4gICAgbGF0VmFsID0gbGF0VmFsU2V0O1xuICAgIGxvY2F0aW9uUmFuZ2UgPSBsb2NhdGlvblJhbmdlU2V0O1xuICB9XG59XG4iXX0=
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLWZpbHRlcnMvdXRpbHMvaGVscGVycy9maWx0ZXIuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLFNBQVM7QUFDVCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUd6RSxNQUFNLE9BQU8sWUFBWTtJQUN2QixNQUFNLENBQUMsU0FBUyxDQUNkLGlCQUFnQyxFQUNoQyx5QkFBd0MsRUFDeEMsb0JBQTZCO1FBTTdCLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM5QixJQUFJLG9CQUFvQixFQUFFO2dCQUN4QixPQUFPLENBQUMsQ0FBQyxJQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFLLENBQUMsQ0FBQzthQUN2QztpQkFBTTtnQkFDTCxPQUFPLENBQUMsQ0FBQyxJQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFLLENBQUMsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgseUJBQXlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLElBQUksb0JBQW9CLEVBQUU7Z0JBQ3hCLE9BQU8sQ0FBQyxDQUFDLElBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQyxDQUFDO2FBQ3ZDO2lCQUFNO2dCQUNMLE9BQU8sQ0FBQyxDQUFDLElBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUssQ0FBQyxDQUFDO2FBQ3ZDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBb0IsR0FBRyxDQUFDLG9CQUFvQixDQUFDO1FBRTdDLE9BQU87WUFDTCxpQkFBaUI7WUFDakIs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OlsiaW1wb3J0IHsgQXJyYXlTdGF0dXMgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvYXJyYXktc3RhdHVzLm1vZGVsJztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBVc2VyR3JvdXAgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2NhLXVzZXItZmlsdGVyL21vZGVscy9jYS11c2VyLWdyb3VwLm1vZGVsJztcbmltcG9ydCB7IFVzZXJEYXRhIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jYS11c2VyLWZpbHRlci9tb2RlbHMvY2EtdXNlci1kYXRhLm1vZGVsJztcblxuLy8gcm91dGVzXG5pbXBvcnQgeyBDYUZpbHRlcnNTdmdSb3V0ZXMgfSBmcm9tICcuLi9zdmctcm91dGVzL2NhLWZpbHRlcnMtc3ZnLXJvdXRlcyc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgY2xhc3MgRmlsdGVySGVscGVyIHtcbiAgc3RhdGljIHNvcnRJdGVtcyhcbiAgICBzb3J0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXSxcbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdLFxuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyOiBib29sZWFuXG4gICk6IHtcbiAgICBzb3J0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXTtcbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdO1xuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyOiBib29sZWFuO1xuICB9IHtcbiAgICBzb3J0ZWRGaWx0ZXJBcnJheS5zb3J0KChhLCBiKSA9PiB7XG4gICAgICBpZiAoaXNBc2NlbmRpbmdTb3J0T3JkZXIpIHtcbiAgICAgICAgcmV0dXJuIGEubmFtZSEubG9jYWxlQ29tcGFyZShiLm5hbWUhKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBiLm5hbWUhLmxvY2FsZUNvbXBhcmUoYS5uYW1lISk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5LnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGlmIChpc0FzY2VuZGluZ1NvcnRPcmRlcikge1xuICAgICAgICByZXR1cm4gYS5uYW1lIS5sb2NhbGVDb21wYXJlKGIubmFtZSEpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGIubmFtZSEubG9jYWxlQ29tcGFyZShhLm5hbWUhKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyID0gIWlzQXNjZW5kaW5nU29ydE9yZGVyO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvcnRlZEZpbHRlckFycmF5LFxuICAgICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheSxcbiAgICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyLFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgc29ydEl0ZW1zQ291bnQoXG4gICAgc29ydGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXSxcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhblxuICApOiB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW107XG4gICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXTtcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhbjtcbiAgfSB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXkuc29ydCgoYSwgYikgPT4ge1xuICAgICAgaWYgKGlzQXNjZW5kaW5nU29ydE9yZGVyKSB7XG4gICAgICAgIHJldHVybiBhLmNvdW50ISAtIGIuY291bnQhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGIuY291bnQhIC0gYS5jb3VudCE7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5LnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIGlmIChpc0FzY2VuZGluZ1NvcnRPcmRlcikge1xuICAgICAgICByZXR1cm4gYS5jb3VudCEgLSBiLmNvdW50ITtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBiLmNvdW50ISAtIGEuY291bnQhO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaXNBc2NlbmRpbmdTb3J0T3JkZXIgPSAhaXNBc2NlbmRpbmdTb3J0T3JkZXI7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc29ydGVkRmlsdGVyQXJyYXksXG4gICAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5LFxuICAgICAgaXNBc2NlbmRpbmdTb3J0T3JkZXIsXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBzb3J0R3JvdXBJdGVtc0NvdW50KFxuICAgIHNvcnRlZEZpbHRlckFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICBzb3J0ZWRTZWxlY3RlZEZpbHRlckFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICBpc0FzY2VuZGluZ1NvcnRPcmRlcjogYm9vbGVhblxuICApOiB7XG4gICAgc29ydGVkRmlsdGVyQXJyYXk6IFVzZXJHcm91cFtdO1xuICAgIHNvcnRlZFNlbGVjdGVkRmlsdGVyQXJyYXk6IFVzZXJHcm91cFtdO1xuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyOiBib29sZWFuO1xuICB9IHtcbiAgICBzb3J0ZWRGaWx0ZXJBcnJheS5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuc29ydCgoYTogVXNlckRhdGEsIGI6IFVzZXJEYXRhKSA9PiB7XG4gICAgICAgIGlmIChpc0FzY2VuZGluZ1NvcnRPcmRlcikge1xuICAgICAgICAgIHJldHVybiBhLmNvdW50ISAtIGIuY291bnQhO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBiLmNvdW50ISAtIGEuY291bnQhO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgZ3JvdXAuaXRlbXMuc29ydCgoYTogVXNlckRhdGEsIGI6IFVzZXJEYXRhKSA9PiB7XG4gICAgICAgIGlmIChpc0FzY2VuZGluZ1NvcnRPcmRlcikge1xuICAgICAgICAgIHJldHVybiBhLmNvdW50ISAtIGIuY291bnQhO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBiLmNvdW50ISAtIGEuY291bnQhO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyID0gIWlzQXNjZW5kaW5nU29ydE9yZGVyO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNvcnRlZEZpbHRlckFycmF5LFxuICAgICAgc29ydGVkU2VsZWN0ZWRGaWx0ZXJBcnJheSxcbiAgICAgIGlzQXNjZW5kaW5nU29ydE9yZGVyLFxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZ2V0SW5pdGlhbHMobmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKG5hbWUgPT09IHVuZGVmaW5lZCkgcmV0dXJuICcnO1xuICAgIGNvbnN0IFtmaXJzdE5hbWUsIGxhc3ROYW1lXSA9IG5hbWUudHJpbSgpLnNwbGl0KCcgJyk7XG4gICAgcmV0dXJuIChmaXJzdE5hbWU/LlswXSB8fCAnJykgKyAobGFzdE5hbWU/LlswXSB8fCAnJykudG9VcHBlckNhc2UoKTtcbiAgfVxuXG4gIHN0YXRpYyBhZGRPclJlbW92ZUZyb21Hcm91cChcbiAgICBhZGRPclJlbW92ZTogJ2FkZCcgfCAncmVtb3ZlJyxcbiAgICBncm91cEFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICBpdGVtOiBVc2VyRGF0YSxcbiAgICBpbmR4OiBudW1iZXIsXG4gICAgaW5keDI6IG51bWJlclxuICApIHtcbiAgICBjb25zdCBpZCA9IGl0ZW0uaWQ7XG4gICAgY29uc3QgbmV3R3JvdXBBcnJheTogVXNlckdyb3VwW10gPSBbXTtcblxuICAgIGdyb3VwQXJyYXkuZm9yRWFjaCgoZ3JvdXAsIGdyb3VwSW5kZXgpID0+IHtcbiAgICAgIG5ld0dyb3VwQXJyYXkucHVzaCh7XG4gICAgICAgIC4uLmdyb3VwLFxuICAgICAgICBpdGVtczogZ3JvdXAuaXRlbXMubWFwKChpdGVtLCBpdGVtSW5kZXgpID0+IHtcbiAgICAgICAgICByZXR1cm4gaXRlbS5pZCA9PT0gaWQgfHwgKGdyb3VwSW5kZXggPT09IGluZHggJiYgaXRlbUluZGV4ID09PSBpbmR4MilcbiAgICAgICAgICAgID8geyAuLi5pdGVtLCBpc1NlbGVjdGVkOiBhZGRPclJlbW92ZSA9PT0gJ2FkZCcgfHwgdW5kZWZpbmVkIH1cbiAgICAgICAgICAgIDogaXRlbTtcbiAgICAgICAgfSksXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGdyb3VwQXJyYXkgPSBuZXdHcm91cEFycmF5O1xuXG4gICAgY29uc3QgdW5zZWxlY3RlZFZpc2libGVDb3VudCA9IGdyb3VwQXJyYXkucmVkdWNlKFxuICAgICAgKGNvdW50LCBncm91cCkgPT5cbiAgICAgICAgY291bnQgKyBncm91cC5pdGVtcy5maWx0ZXIoKGl0ZW0pID0+ICFpdGVtLmlzU2VsZWN0ZWQpLmxlbmd0aCxcbiAgICAgIDBcbiAgICApO1xuXG4gICAgbGV0IGhhc1NlbGVjdGVkVXNlcnMgPSBmYWxzZTtcblxuICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgZ3JvdXBBcnJheSkge1xuICAgICAgaWYgKGdyb3VwLml0ZW1zLnNvbWUoKGl0ZW06IFVzZXJEYXRhKSA9PiBpdGVtLmlzU2VsZWN0ZWQpKSB7XG4gICAgICAgIGhhc1NlbGVjdGVkVXNlcnMgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIH0gZWxzZSBoYXNTZWxlY3RlZFVzZXJzID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgaGFzU2VsZWN0ZWRVc2VycywgdW5zZWxlY3RlZFZpc2libGVDb3VudCwgZ3JvdXBBcnJheSB9O1xuICB9XG5cbiAgc3RhdGljIGNoZWNrRmlsdGVyQWN0aXZlVmFsdWUoXG4gICAgZmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgc2VsZWN0ZWRGaWx0ZXJBcnJheTogQXJyYXlTdGF0dXNbXSxcbiAgICBpc0J1dHRvbkF2YWlsYWJsZTogYm9vbGVhblxuICApOiB7XG4gICAgaXNCdXR0b25BdmFpbGFibGU6IGJvb2xlYW47XG4gIH0ge1xuICAgIGNvbnN0IGFycmF5MSA9IFsuLi5zZWxlY3RlZEZpbHRlckFycmF5XTtcbiAgICBjb25zdCBhcnJheTIgPSBbLi4uZmlsdGVyQXJyYXldO1xuXG4gICAgYXJyYXkxLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIHJldHVybiBhLmlkISAtIGIuaWQhO1xuICAgIH0pO1xuXG4gICAgYXJyYXkyLnNvcnQoKGEsIGIpID0+IHtcbiAgICAgIHJldHVybiBhLmlkISAtIGIuaWQhO1xuICAgIH0pO1xuXG4gICAgY29uc3Qgc3RyaW5nZnkxID0gSlNPTi5zdHJpbmdpZnkoYXJyYXkxKTtcbiAgICBjb25zdCBzdHJpbmdmeTIgPSBKU09OLnN0cmluZ2lmeShhcnJheTIpO1xuXG4gICAgaWYgKHN0cmluZ2Z5MSA9PT0gc3RyaW5nZnkyKSB7XG4gICAgICBpc0J1dHRvbkF2YWlsYWJsZSA9IGZhbHNlO1xuICAgIH0gZWxzZSB7XG4gICAgICBpc0J1dHRvbkF2YWlsYWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgaXNCdXR0b25BdmFpbGFibGUgfTtcbiAgfVxuXG4gIHN0YXRpYyBjaGVja0dyb3VwRmlsdGVyQWN0aXZlVmFsdWUoXG4gICAgZmlsdGVyQXJyYXk6IFVzZXJHcm91cFtdLFxuICAgIGlzQnV0dG9uQXZhaWxhYmxlOiBib29sZWFuXG4gICk6IHtcbiAgICBpc0J1dHRvbkF2YWlsYWJsZTogYm9vbGVhbjtcbiAgfSB7XG4gICAgY29uc3QgYXJyYXkgPSBbLi4uZmlsdGVyQXJyYXldO1xuXG4gICAgYXJyYXkuZm9yRWFjaCgoZ3JvdXApID0+IHtcbiAgICAgIGdyb3VwLml0ZW1zLnNvcnQoKGE6IFVzZXJEYXRhLCBiOiBVc2VyRGF0YSkgPT4ge1xuICAgICAgICByZXR1cm4gYS5pZCEgLSBiLmlkITtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHsgaXNCdXR0b25BdmFpbGFibGUgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRTdmdQYXRoKHByb3BlcnR5TmFtZToga2V5b2YgdHlwZW9mIENhRmlsdGVyc1N2Z1JvdXRlcyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIENhRmlsdGVyc1N2Z1JvdXRlc1twcm9wZXJ0eU5hbWVdIGFzIHN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBoYW5kbGVHcm91cEZpbHRlckNsb3NlKFxuICAgIGZpbHRlckFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICBzZWxlY3RlZEZpbHRlckFycmF5OiBVc2VyR3JvdXBbXSxcbiAgICByZW1vdmVGdW5jdGlvbjogKGl0ZW06IFVzZXJEYXRhLCBpbmRleDogbnVtYmVyLCBpbmRleDI6IG51bWJlcikgPT4gdm9pZCxcbiAgICBhZGRGdW5jdGlvbjogKGl0ZW06IFVzZXJEYXRhLCBpbmRleDogbnVtYmVyLCBpbmRleDI6IG51bWJlcikgPT4gdm9pZFxuICApIHtcbiAgICBmaWx0ZXJBcnJheS5mb3JFYWNoKChncm91cCkgPT4ge1xuICAgICAgY29uc3QgaW5kZXhOdW0gPSBzZWxlY3RlZEZpbHRlckFycmF5LmluZGV4T2YoZ3JvdXApO1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbTogVXNlckRhdGEpID0+IHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIChpdGVtLmlzU2VsZWN0ZWQgJiYgIWl0ZW0uY3VycmVudFNldCkgfHxcbiAgICAgICAgICAoIWl0ZW0uaXNTZWxlY3RlZCAmJiBpdGVtLmN1cnJlbnRTZXQpXG4gICAgICAgICkge1xuICAgICAgICAgIGNvbnN0IGluZGV4TnVtMiA9IGdyb3VwLml0ZW1zLmluZGV4T2YoaXRlbSk7XG4gICAgICAgICAgaWYgKGluZGV4TnVtID4gLTEpIHJlbW92ZUZ1bmN0aW9uKGl0ZW0sIGluZGV4TnVtLCBpbmRleE51bTIpO1xuICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaW5hY3RpdmVJbmRleE51bSA9IGZpbHRlckFycmF5LmluZGV4T2YoZ3JvdXApO1xuICAgICAgICAgICAgYWRkRnVuY3Rpb24oaXRlbSwgaW5hY3RpdmVJbmRleE51bSwgaW5kZXhOdW0yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGhhbmRsZUZpbHRlckNsb3NlKFxuICAgIGZpbHRlckFycmF5OiBBcnJheVN0YXR1c1tdLFxuICAgIHNlbGVjdGVkRmlsdGVyQXJyYXk6IEFycmF5U3RhdHVzW10sXG4gICAgcmVtb3ZlRnVuY3Rpb246IChpdGVtOiBBcnJheVN0YXR1cywgaW5kZXg6IG51bWJlcikgPT4gdm9pZCxcbiAgICBhZGRGdW5jdGlvbjogKGl0ZW06IEFycmF5U3RhdHVzLCBpbmRleDogbnVtYmVyKSA9PiB2b2lkXG4gICkge1xuICAgIGZpbHRlckFycmF5ICYmXG4gICAgICBmaWx0ZXJBcnJheS5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAoaXRlbS5pc1NlbGVjdGVkICYmICFpdGVtLmN1cnJlbnRTZXQpIHx8XG4gICAgICAgICAgKCFpdGVtLmlzU2VsZWN0ZWQgJiYgaXRlbS5jdXJyZW50U2V0KVxuICAgICAgICApIHtcbiAgICAgICAgICBjb25zdCBpbmRleE51bSA9IHNlbGVjdGVkRmlsdGVyQXJyYXkuZmluZEluZGV4KFxuICAgICAgICAgICAgKHNlbGVjdGVkSXRlbSkgPT4gc2VsZWN0ZWRJdGVtLmlkID09PSBpdGVtLmlkXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoaW5kZXhOdW0gPiAtMSkgcmVtb3ZlRnVuY3Rpb24oaXRlbSwgaW5kZXhOdW0pO1xuICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaW5hY3RpdmVJbmRleE51bSA9IGZpbHRlckFycmF5LmluZGV4T2YoaXRlbSk7XG4gICAgICAgICAgICBhZGRGdW5jdGlvbihpdGVtLCBpbmFjdGl2ZUluZGV4TnVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIGhhbmRsZUFyZWFGaWx0ZXJDbG9zZShcbiAgICBsb2NhdGlvbkZvcm06IFVudHlwZWRGb3JtR3JvdXAsXG4gICAgbG9jYXRpb25OYW1lU2V0OiBzdHJpbmcgfCBudWxsLFxuICAgIGxvbmdWYWw6IG51bWJlcixcbiAgICBsYXRWYWw6IG51bWJlcixcbiAgICBsb25nVmFsdWVTZXQ6IG51bWJlcixcbiAgICBsYXRWYWxTZXQ6IG51bWJlcixcbiAgICBsb2NhdGlvblJhbmdlOiBudW1iZXIsXG4gICAgbG9jYXRpb25SYW5nZVNldDogbnVtYmVyXG4gICkge1xuICAgIGxvY2F0aW9uRm9ybS5zZXRWYWx1ZSh7IGFkZHJlc3M6IGxvY2F0aW9uTmFtZVNldCB9KTtcbiAgICBsb25nVmFsID0gbG9uZ1ZhbHVlU2V0O1xuICAgIGxhdFZhbCA9IGxhdFZhbFNldDtcbiAgICBsb2NhdGlvblJhbmdlID0gbG9jYXRpb25SYW5nZVNldDtcbiAgfVxufVxuIl19
|