ca-components 1.0.25 → 1.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/ca-components.module.mjs +24 -6
- package/esm2022/lib/components/ca-activity-log-list/ca-activity-log-list.component.mjs +3 -3
- package/esm2022/lib/components/ca-filters/components/ca-pm-filter/ca-pm-filter.component.mjs +3 -3
- package/esm2022/lib/components/ca-filters/components/ca-trailer-type-filter/ca-trailer-type-filter.component.mjs +2 -2
- package/esm2022/lib/components/ca-input/ca-input.component.mjs +3 -3
- package/esm2022/lib/components/ca-input/pipes/input-clear-class.pipe.mjs +4 -3
- package/esm2022/lib/components/ca-input-address-dropdown/ca-input-address-dropdown.component.mjs +2 -2
- package/esm2022/lib/components/ca-input-dropdown/ca-input-dropdown.component.mjs +3 -3
- package/esm2022/lib/components/ca-logo-change/ca-logo-change.component.mjs +1 -1
- package/esm2022/lib/components/ca-map/ca-map.component.mjs +8 -2
- package/esm2022/lib/components/ca-map/enums/index.mjs +4 -0
- package/esm2022/lib/components/ca-map/enums/map-marker-string.enum.mjs +9 -0
- package/esm2022/lib/components/ca-map/models/map.model.mjs +1 -1
- package/esm2022/lib/components/ca-map/utils/constants/map-options.constants.mjs +24 -1
- package/esm2022/lib/components/ca-map/utils/helpers/index.mjs +3 -0
- package/esm2022/lib/components/ca-map/utils/helpers/map-marker-icon.helper.mjs +51 -0
- package/esm2022/lib/components/ca-map/utils/svg-routes/index.mjs +2 -0
- package/esm2022/lib/components/ca-map/utils/svg-routes/map-svg-routes.mjs +8 -0
- package/esm2022/lib/components/ca-progress-bar/ca-progress-bar.component.mjs +7 -6
- package/esm2022/lib/components/ca-progress-bar/utils/constants/progress-bar.constants.mjs +1 -11
- package/esm2022/lib/components/ca-progress-bar/utils/helpers/index.mjs +1 -2
- package/esm2022/lib/components/ca-progress-bar/utils/svg-routes/progress-bar-svg-routes.mjs +1 -4
- package/esm2022/lib/components/ca-progress-range/ca-progress-range.component.mjs +64 -0
- package/esm2022/lib/components/ca-progress-range/enums/index.mjs +3 -0
- package/esm2022/lib/components/ca-progress-range/enums/progress-range-price.enum.mjs +11 -0
- package/esm2022/lib/components/ca-progress-range/enums/progress-range-unit.enum.mjs +5 -0
- package/esm2022/lib/components/ca-progress-range/models/index.mjs +2 -0
- package/esm2022/lib/components/ca-progress-range/models/progress-range-last-price-item.model.mjs +2 -0
- package/esm2022/lib/components/ca-progress-range/utils/constants/ca-progress-range.constants.mjs +43 -0
- package/esm2022/lib/components/ca-progress-range/utils/constants/index.mjs +2 -0
- package/esm2022/lib/components/ca-progress-range/utils/svg-routes/ca-progress-range-svg-routes.mjs +5 -0
- package/esm2022/lib/components/ca-progress-range/utils/svg-routes/index.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/ca-right-side-panel.component.mjs +16 -6
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-company/ca-right-side-panel-company.component.mjs +137 -0
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-menu/ca-right-side-panel-menu.component.mjs +3 -3
- package/esm2022/lib/components/ca-right-side-panel/components/ca-right-side-panel-top-bar/ca-right-side-panel-top-bar.component.mjs +34 -4
- package/esm2022/lib/components/ca-right-side-panel/enums/company/bank-account-status.enum.mjs +8 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/company/bank-card-types-string.enum.mjs +8 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/company/fleet-type.enum.mjs +7 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/company/preferred-load-type.enum.mjs +6 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/company-font-size.enum.mjs +7 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/company-info-title.enum.mjs +18 -0
- package/esm2022/lib/components/ca-right-side-panel/enums/index.mjs +7 -1
- package/esm2022/lib/components/ca-right-side-panel/models/company/bank-account.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/bank-card.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/bank.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-additional-info.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-address.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-enum-value.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-navigation-data.model.mjs +1 -1
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-payroll.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-short.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company-user-short.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/company.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/department-contact.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/department.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/factoring-company.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/file-response.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/insurance-policy-addon.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/insurance-policy.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/company/per-mile.model.mjs +2 -0
- package/esm2022/lib/components/ca-right-side-panel/models/index.mjs +18 -1
- package/esm2022/lib/components/ca-right-side-panel/utils/pipes/bank-card-types.pipe.mjs +20 -0
- package/esm2022/lib/components/ca-right-side-panel/utils/pipes/hide-account.pipe.mjs +62 -0
- package/esm2022/lib/components/ca-right-side-panel/utils/pipes/index.mjs +3 -0
- package/esm2022/lib/components/ca-tooltip-list/ca-tooltip-list.component.mjs +35 -0
- package/esm2022/lib/components/ca-tooltip-list/models/index.mjs +3 -0
- package/esm2022/lib/components/ca-tooltip-list/models/tooltip-list-item.model.mjs +2 -0
- package/esm2022/lib/components/ca-tooltip-list/models/tooltip-list.model.mjs +2 -0
- package/esm2022/lib/components/ca-tooltip-list/utils/constants/ca-tooltip-list.constants.mjs +4 -0
- package/esm2022/lib/components/ca-tooltip-list/utils/constants/index.mjs +2 -0
- package/esm2022/lib/pipes/format-currency.pipe.mjs +29 -9
- package/esm2022/lib/pipes/truncate-string.pipe.mjs +19 -0
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/ca-components.mjs +605 -87
- package/fesm2022/ca-components.mjs.map +1 -1
- package/lib/ca-components.module.d.ts +5 -2
- package/lib/components/ca-activity-log-list/ca-activity-log-list.component.d.ts +1 -1
- package/lib/components/ca-filters/ca-filter.component.d.ts +2 -2
- package/lib/components/ca-map/enums/index.d.ts +3 -0
- package/lib/components/ca-map/enums/map-marker-string.enum.d.ts +6 -0
- package/lib/components/ca-map/models/map.model.d.ts +14 -1
- package/lib/components/ca-map/utils/constants/map-options.constants.d.ts +26 -0
- package/lib/components/ca-map/utils/helpers/index.d.ts +2 -0
- package/lib/components/ca-map/utils/helpers/map-marker-icon.helper.d.ts +4 -0
- package/lib/components/ca-map/utils/svg-routes/index.d.ts +1 -0
- package/lib/components/ca-map/utils/svg-routes/map-svg-routes.d.ts +7 -0
- package/lib/components/ca-progress-bar/ca-progress-bar.component.d.ts +0 -10
- package/lib/components/ca-progress-bar/utils/constants/progress-bar.constants.d.ts +0 -10
- package/lib/components/ca-progress-bar/utils/helpers/index.d.ts +0 -1
- package/lib/components/ca-progress-bar/utils/svg-routes/progress-bar-svg-routes.d.ts +0 -3
- package/lib/components/ca-progress-range/ca-progress-range.component.d.ts +19 -0
- package/lib/components/ca-progress-range/enums/index.d.ts +2 -0
- package/lib/components/ca-progress-range/enums/progress-range-price.enum.d.ts +9 -0
- package/lib/components/ca-progress-range/enums/progress-range-unit.enum.d.ts +3 -0
- package/lib/components/ca-progress-range/models/index.d.ts +1 -0
- package/lib/components/ca-progress-range/models/progress-range-last-price-item.model.d.ts +6 -0
- package/lib/components/ca-progress-range/utils/constants/ca-progress-range.constants.d.ts +15 -0
- package/lib/components/ca-progress-range/utils/constants/index.d.ts +1 -0
- package/lib/components/ca-progress-range/utils/svg-routes/ca-progress-range-svg-routes.d.ts +4 -0
- package/lib/components/ca-progress-range/utils/svg-routes/index.d.ts +1 -0
- package/lib/components/ca-right-side-panel/ca-right-side-panel.component.d.ts +6 -3
- package/lib/components/ca-right-side-panel/components/ca-right-side-panel-company/ca-right-side-panel-company.component.d.ts +51 -0
- package/lib/components/ca-right-side-panel/components/ca-right-side-panel-menu/ca-right-side-panel-menu.component.d.ts +1 -1
- package/lib/components/ca-right-side-panel/components/ca-right-side-panel-top-bar/ca-right-side-panel-top-bar.component.d.ts +12 -2
- package/lib/components/ca-right-side-panel/enums/company/bank-account-status.enum.d.ts +6 -0
- package/lib/components/ca-right-side-panel/enums/company/bank-card-types-string.enum.d.ts +6 -0
- package/lib/components/ca-right-side-panel/enums/company/fleet-type.enum.d.ts +5 -0
- package/lib/components/ca-right-side-panel/enums/company/preferred-load-type.enum.d.ts +4 -0
- package/lib/components/ca-right-side-panel/enums/company-font-size.enum.d.ts +5 -0
- package/lib/components/ca-right-side-panel/enums/company-info-title.enum.d.ts +16 -0
- package/lib/components/ca-right-side-panel/enums/index.d.ts +6 -0
- package/lib/components/ca-right-side-panel/models/company/bank-account.model.d.ts +11 -0
- package/lib/components/ca-right-side-panel/models/company/bank-card.model.d.ts +10 -0
- package/lib/components/ca-right-side-panel/models/company/bank.model.d.ts +7 -0
- package/lib/components/ca-right-side-panel/models/company/company-additional-info.model.d.ts +15 -0
- package/lib/components/ca-right-side-panel/models/company/company-address.model.d.ts +12 -0
- package/lib/components/ca-right-side-panel/models/company/company-enum-value.model.d.ts +4 -0
- package/lib/components/ca-right-side-panel/models/company/company-payroll.model.d.ts +21 -0
- package/lib/components/ca-right-side-panel/models/company/company-short.model.d.ts +9 -0
- package/lib/components/ca-right-side-panel/models/company/company-user-short.model.d.ts +8 -0
- package/lib/components/ca-right-side-panel/models/company/company.model.d.ts +38 -0
- package/lib/components/ca-right-side-panel/models/company/department-contact.model.d.ts +10 -0
- package/lib/components/ca-right-side-panel/models/company/department.model.d.ts +7 -0
- package/lib/components/ca-right-side-panel/models/company/factoring-company.model.d.ts +9 -0
- package/lib/components/ca-right-side-panel/models/company/file-response.model.d.ts +9 -0
- package/lib/components/ca-right-side-panel/models/company/insurance-policy-addon.model.d.ts +25 -0
- package/lib/components/ca-right-side-panel/models/company/insurance-policy.model.d.ts +13 -0
- package/lib/components/ca-right-side-panel/models/company/per-mile.model.d.ts +5 -0
- package/lib/components/ca-right-side-panel/models/index.d.ts +17 -0
- package/lib/components/ca-right-side-panel/utils/pipes/bank-card-types.pipe.d.ts +9 -0
- package/lib/components/ca-right-side-panel/utils/pipes/hide-account.pipe.d.ts +7 -0
- package/lib/components/ca-right-side-panel/utils/pipes/index.d.ts +2 -0
- package/lib/components/ca-tooltip-list/ca-tooltip-list.component.d.ts +13 -0
- package/lib/components/ca-tooltip-list/models/index.d.ts +2 -0
- package/lib/components/ca-tooltip-list/models/tooltip-list-item.model.d.ts +8 -0
- package/lib/components/ca-tooltip-list/models/tooltip-list.model.d.ts +9 -0
- package/lib/components/ca-tooltip-list/utils/constants/ca-tooltip-list.constants.d.ts +3 -0
- package/lib/components/ca-tooltip-list/utils/constants/index.d.ts +1 -0
- package/lib/pipes/format-currency.pipe.d.ts +3 -2
- package/lib/pipes/truncate-string.pipe.d.ts +7 -0
- package/package.json +1 -1
- package/public-api.d.ts +4 -0
- package/src/assets/ca-components/svg/common/ic_department.svg +5 -0
- package/src/assets/ca-components/svg/progress-range/progress-range-last-price-bar.svg +7 -0
- package/src/assets/ca-components/svg/progress-range/progress-range-last-price-cursor.svg +4 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_address.svg +3 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_amex.svg +6 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_bank_account.svg +7 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_copy.svg +3 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_discover.svg +5 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_edit.svg +4 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_fax.svg +5 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_fuel_card.svg +3 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_mastercard.svg +3 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_visa.svg +4 -0
- package/src/assets/ca-components/svg/right-side-panel/ic_website.svg +3 -0
- package/esm2022/lib/components/ca-map/utils/map-svg-routes/map-svg-routes.mjs +0 -5
- package/esm2022/lib/components/ca-progress-bar/utils/helpers/progress-map-marker.helper.mjs +0 -51
- package/lib/components/ca-map/utils/map-svg-routes/map-svg-routes.d.ts +0 -4
- package/lib/components/ca-progress-bar/utils/helpers/progress-map-marker.helper.d.ts +0 -4
|
@@ -8,13 +8,14 @@ import { CaMapComponent } from '../ca-map/ca-map.component';
|
|
|
8
8
|
import { CaAppTooltipV2Component } from '../ca-app-tooltip-v2/ca-app-tooltip-v2.component';
|
|
9
9
|
// Constants
|
|
10
10
|
import { ProgressBarConstants } from './utils/constants';
|
|
11
|
+
import { MapOptionsConstants } from '../ca-map/utils/constants';
|
|
11
12
|
// svg-routes
|
|
12
13
|
import { ProgressBarSvgRoutes } from './utils/svg-routes';
|
|
13
14
|
// pipes
|
|
14
15
|
import { ThousandSeparatorPipe } from '../../pipes/thousand-separator.pipe';
|
|
15
16
|
import { ConvertMinutesToHoursPipe } from './pipes';
|
|
16
17
|
// helpers
|
|
17
|
-
import {
|
|
18
|
+
import { MapMarkerIconHelper } from '../ca-map/utils/helpers';
|
|
18
19
|
// Enums
|
|
19
20
|
import { ProgressBarStringEnum } from './enums';
|
|
20
21
|
import * as i0 from "@angular/core";
|
|
@@ -102,7 +103,7 @@ export class ProgressBarComponent {
|
|
|
102
103
|
const routeMarker = {
|
|
103
104
|
position: { lat: loadStop.latitude, lng: loadStop.longitude },
|
|
104
105
|
icon: {
|
|
105
|
-
url:
|
|
106
|
+
url: MapMarkerIconHelper.getRoutingMarkerIcon(loadStop.stopNumber ?? 0, loadStop.type, this.currentPosition >= loadStop.position),
|
|
106
107
|
labelOrigin: new google.maps.Point(90, 15),
|
|
107
108
|
},
|
|
108
109
|
};
|
|
@@ -117,8 +118,8 @@ export class ProgressBarComponent {
|
|
|
117
118
|
{ lat: loadStop.latitude, lng: loadStop.longitude },
|
|
118
119
|
],
|
|
119
120
|
strokeColor: index === 1
|
|
120
|
-
?
|
|
121
|
-
:
|
|
121
|
+
? MapOptionsConstants.routingPathColors.currentLocation
|
|
122
|
+
: MapOptionsConstants.routingPathColors.default,
|
|
122
123
|
strokeOpacity: 1,
|
|
123
124
|
strokeWeight: 4,
|
|
124
125
|
};
|
|
@@ -126,7 +127,7 @@ export class ProgressBarComponent {
|
|
|
126
127
|
if (index === 1) {
|
|
127
128
|
routePaths.push({
|
|
128
129
|
...routePath,
|
|
129
|
-
strokeColor:
|
|
130
|
+
strokeColor: MapOptionsConstants.routingPathColors.deadhead,
|
|
130
131
|
strokeOpacity: 1,
|
|
131
132
|
strokeWeight: 2,
|
|
132
133
|
});
|
|
@@ -204,4 +205,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
204
205
|
}], dispatchStatus: [{
|
|
205
206
|
type: Input
|
|
206
207
|
}] } });
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXByb2dyZXNzLWJhci9jYS1wcm9ncmVzcy1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtYmFyL2NhLXByb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQWMsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFL0UsYUFBYTtBQUNiLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUUzRixZQUFZO0FBQ1osT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFVekQsYUFBYTtBQUNiLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTFELFFBQVE7QUFDUixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFcEQsVUFBVTtBQUNWLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTFELFFBQVE7QUFDUixPQUFP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LE9BQU87c0JBQWYsS0FBSztnQkFLRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ08sV0FBVztzQkFBdkIsS0FBSztnQkFPRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vLyBtb2R1bGVzXG5pbXBvcnQgeyBBbmd1bGFyU3ZnSWNvbk1vZHVsZSB9IGZyb20gJ2FuZ3VsYXItc3ZnLWljb24nO1xuaW1wb3J0IHsgTmdiTW9kdWxlLCBOZ2JQb3BvdmVyLCBOZ2JUb29sdGlwIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG4vLyBDb21wb25lbnRzXG5pbXBvcnQgeyBDYU1hcENvbXBvbmVudCB9IGZyb20gJy4uL2NhLW1hcC9jYS1tYXAuY29tcG9uZW50JztcbmltcG9ydCB7IENhQXBwVG9vbHRpcFYyQ29tcG9uZW50IH0gZnJvbSAnLi4vY2EtYXBwLXRvb2x0aXAtdjIvY2EtYXBwLXRvb2x0aXAtdjIuY29tcG9uZW50JztcblxuLy8gQ29uc3RhbnRzXG5pbXBvcnQgeyBQcm9ncmVzc0JhckNvbnN0YW50cyB9IGZyb20gJy4vdXRpbHMvY29uc3RhbnRzJztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBJR3BzUHJvZ3Jlc3MgfSBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQge1xuICBJQ2FNYXBQcm9wcyxcbiAgSU1hcE1hcmtlcnMsXG4gIElNYXBSb3V0ZVBhdGgsXG59IGZyb20gJy4uL2NhLW1hcC9tb2RlbHMvbWFwLm1vZGVsJztcblxuLy8gc3ZnLXJvdXRlc1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJTdmdSb3V0ZXMgfSBmcm9tICcuL3V0aWxzL3N2Zy1yb3V0ZXMnO1xuXG4vLyBwaXBlc1xuaW1wb3J0IHsgVGhvdXNhbmRTZXBhcmF0b3JQaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMvdGhvdXNhbmQtc2VwYXJhdG9yLnBpcGUnO1xuaW1wb3J0IHsgQ29udmVydE1pbnV0ZXNUb0hvdXJzUGlwZSB9IGZyb20gJy4vcGlwZXMnO1xuXG4vLyBoZWxwZXJzXG5pbXBvcnQgeyBQcm9ncmVzc01hcE1hcmtlckhlbHBlciB9IGZyb20gJy4vdXRpbHMvaGVscGVycyc7XG5cbi8vIEVudW1zXG5pbXBvcnQgeyBQcm9ncmVzc0JhclN0cmluZ0VudW0gfSBmcm9tICcuL2VudW1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWNhLXByb2dyZXNzLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYS1wcm9ncmVzcy1iYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIC8vIE1vZHVsZXNcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQW5ndWxhclN2Z0ljb25Nb2R1bGUsXG4gICAgTmdiTW9kdWxlLFxuICAgIE5nYlRvb2x0aXAsXG4gICAgLy8gQ29tcG9uZW50c1xuICAgIENhTWFwQ29tcG9uZW50LFxuICAgIENhQXBwVG9vbHRpcFYyQ29tcG9uZW50LFxuICAgIC8vIFBpcGVzXG4gICAgVGhvdXNhbmRTZXBhcmF0b3JQaXBlLFxuICAgIENvbnZlcnRNaW51dGVzVG9Ib3Vyc1BpcGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQmFyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgaXNEcm9wZG93bjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBjdXJyZW50UG9zaXRpb24hOiBudW1iZXI7XG4gIEBJbnB1dCgpIG1pbGVhZ2VJbmZvITogc3RyaW5nO1xuICBASW5wdXQoKSBjdXJyZW50U3RvcCE6IElHcHNQcm9ncmVzcztcbiAgQElucHV0KCkgZ3BzVGl0bGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBncHNJY29uITogc3RyaW5nO1xuICBASW5wdXQoKSBncHNJbmZvIToge1xuICAgIGdwc2hlYWRpbmc6IHN0cmluZztcbiAgICBncHNUaW1lOiBzdHJpbmc7XG4gICAgZ3BzaGVhZGluZ0NvbG9yPzogc3RyaW5nO1xuICB9O1xuICBASW5wdXQoKSBtaWxlYWdlc1BlcmNlbnQhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRvdGFsTWlsZXMhOiBudW1iZXI7XG4gIEBJbnB1dCgpIHNldCBncHNQcm9ncmVzcyh2YWx1ZXM6IElHcHNQcm9ncmVzc1tdKSB7XG4gICAgdGhpcy5fZ3BzUHJvZ3Jlc3MgPSB2YWx1ZXM7XG5cbiAgICB0aGlzLnNldE1hcE1hcmtlcnMoKTtcblxuICAgIHRoaXMuY2FsY3VsYXRlR3BzSWNvblBvc2l0aW9uKCk7XG4gIH1cbiAgQElucHV0KCkgZ3BzTG9jYXRpb25JY29uITogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNwYXRjaFN0YXR1cyE6IHN0cmluZztcbiAgcHVibGljIGhvdmVyZWRHcHNJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBob3ZlcmVkR3BzQ3VycmVudFBvc2l0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBzaG93RHJvcGRvd246IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZvY3VzZWRJY29uOiBudW1iZXIgPSAtMTtcbiAgcHVibGljIGlzSWNvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgdG9vbHRpcDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBzdGF0aWNDb25zdGFudCA9IFByb2dyZXNzQmFyQ29uc3RhbnRzO1xuICBwdWJsaWMgaG92ZXJlZEdwc1RpdGxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIGhvdmVyZWRNaWxlYWdlSW5mbzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyBob3ZlcmVkU3RvcDogSUdwc1Byb2dyZXNzIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyBfZ3BzUHJvZ3Jlc3M6IElHcHNQcm9ncmVzc1tdID0gW107XG4gIHB1YmxpYyBncHNJY29uVG9wUG9zaXRpb246IG51bWJlciA9IDA7XG5cbiAgcHVibGljIE1hcGRhdGE6IElDYU1hcFByb3BzID0ge1xuICAgIG1hcmtlcnM6IFtdLFxuICAgIGNsdXN0ZXJNYXJrZXJzOiBbXSxcbiAgICByb3V0aW5nTWFya2VyczogW10sXG4gICAgcm91dGVQYXRoczogW10sXG4gICAgZGFya01vZGU6IHRydWUsXG4gIH07XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHB1YmxpYyBob3ZlclN0b3AoXG4gICAgc3RvcDogSUdwc1Byb2dyZXNzLFxuICAgIGk6IG51bWJlcixcbiAgICBpc0ljb246IGJvb2xlYW4gPSBmYWxzZVxuICApOiB2b2lkIHtcbiAgICB0aGlzLmhvdmVyZWRTdG9wID0gc3RvcDtcbiAgICB0aGlzLmhvdmVyZWRHcHNDdXJyZW50UG9zaXRpb24gPSB0cnVlO1xuICAgIHRoaXMuaG92ZXJlZEdwc1RpdGxlID0gc3RvcD8uaXNBdFN0b3BcbiAgICAgID8gUHJvZ3Jlc3NCYXJTdHJpbmdFbnVtLkNVUlJFTlRfTE9DQVRJT05cbiAgICAgIDogc3RvcD8uaGVhZGluZyB8fCBudWxsO1xuICAgIHRoaXMuaG92ZXJlZE1pbGVhZ2VJbmZvID0gIXN0b3A/LmlzQXRTdG9wID8gc3RvcD8ubWlsZWFnZSA6ICcnO1xuICAgIHRoaXMuZm9jdXNlZEljb24gPSBpO1xuICAgIHRoaXMuaXNJY29uID0gaXNJY29uO1xuICAgIHRoaXMuZ2V0VG9vbFRpcCgpO1xuICB9XG5cbiAgcHVibGljIGxlYXZlU3RvcCgpOiB2b2lkIHtcbiAgICB0aGlzLmhvdmVyZWRTdG9wID0gbnVsbDtcbiAgICB0aGlzLmhvdmVyZWRHcHNDdXJyZW50UG9zaXRpb24gPSBmYWxzZTtcbiAgICB0aGlzLmhvdmVyZWRHcHNUaXRsZSA9IG51bGw7XG4gICAgdGhpcy5ob3ZlcmVkTWlsZWFnZUluZm8gPSBudWxsO1xuICAgIHRoaXMuZm9jdXNlZEljb24gPSAtMTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRMZWZ0U3R5bGUoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0ljb24pIHtcbiAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRTdG9wLnBvc2l0aW9uICsgJyUnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5fZ3BzUHJvZ3Jlc3NbdGhpcy5mb2N1c2VkSWNvbl0ucG9zaXRpb24gLSAyMCArICclJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VG9vbFRpcCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSWNvbikge1xuICAgICAgdGhpcy50b29sdGlwID0gdGhpcy5jdXJyZW50U3RvcD8ubG9jYXRpb247XG4gICAgICByZXR1cm4gdGhpcy50b29sdGlwO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRvb2x0aXAgPSB0aGlzLl9ncHNQcm9ncmVzc1t0aGlzLmZvY3VzZWRJY29uXS5sb2NhdGlvbjtcbiAgICAgIHJldHVybiB0aGlzLnRvb2x0aXA7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGlkZW50aXR5KGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHB1YmxpYyBzaG93RHJvcGRvd25NYXAodDI6IE5nYlBvcG92ZXIpOiB2b2lkIHtcbiAgICB0Mi5vcGVuKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3ZnUGF0aChwcm9wZXJ0eU5hbWU6IGtleW9mIHR5cGVvZiBQcm9ncmVzc0JhclN2Z1JvdXRlcyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFByb2dyZXNzQmFyU3ZnUm91dGVzW3Byb3BlcnR5TmFtZV0gYXMgc3RyaW5nO1xuICB9XG5cbiAgcHVibGljIHNldE1hcE1hcmtlcnMoKTogdm9pZCB7XG4gICAgY29uc3Qgcm91dGVNYXJrZXJzOiBJTWFwTWFya2Vyc1tdID0gW107XG4gICAgY29uc3Qgcm91dGVQYXRoczogSU1hcFJvdXRlUGF0aFtdID0gW107XG5cbiAgICB0aGlzLl9ncHNQcm9ncmVzcy5mb3JFYWNoKChsb2FkU3RvcCwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IHJvdXRlTWFya2VyID0ge1xuICAgICAgICBwb3NpdGlvbjogeyBsYXQ6IGxvYWRTdG9wLmxhdGl0dWRlLCBsbmc6IGxvYWRTdG9wLmxvbmdpdHVkZSB9LFxuICAgICAgICBpY29uOiB7XG4gICAgICAgICAgdXJsOiBQcm9ncmVzc01hcE1hcmtlckhlbHBlci5nZXRNYXJrZXJJY29uKFxuICAgICAgICAgICAgbG9hZFN0b3Auc3RvcE51bWJlciA/PyAwLFxuICAgICAgICAgICAgbG9hZFN0b3AudHlwZSxcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFBvc2l0aW9uID49IGxvYWRTdG9wLnBvc2l0aW9uXG4gICAgICAgICAgKSxcbiAgICAgICAgICBsYWJlbE9yaWdpbjogbmV3IGdvb2dsZS5tYXBzLlBvaW50KDkwLCAxNSksXG4gICAgICAgIH0sXG4gICAgICB9O1xuXG4gICAgICByb3V0ZU1hcmtlcnMucHVzaChyb3V0ZU1hcmtlcik7XG5cbiAgICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgICAgY29uc3Qgcm91dGVQYXRoID0ge1xuICAgICAgICAgIHBhdGg6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbGF0OiB0aGlzLl9ncHNQcm9ncmVzc1tpbmRleCAtIDFdLmxhdGl0dWRlISxcbiAgICAgICAgICAgICAgbG5nOiB0aGlzLl9ncHNQcm9ncmVzc1tpbmRleCAtIDFdLmxvbmdpdHVkZSEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBsYXQ6IGxvYWRTdG9wLmxhdGl0dWRlISwgbG5nOiBsb2FkU3RvcC5sb25naXR1ZGUhIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBzdHJva2VDb2xvcjpcbiAgICAgICAgICAgIGluZGV4ID09PSAxXG4gICAgICAgICAgICAgID8gUHJvZ3Jlc3NCYXJDb25zdGFudHMubWFwUGF0aENvbG9ycy5jdXJyZW50TG9jYXRpb25cbiAgICAgICAgICAgICAgOiBQcm9ncmVzc0JhckNvbnN0YW50cy5tYXBQYXRoQ29sb3JzLmRlZmF1bHQsXG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgICAgICAgICBzdHJva2VXZWlnaHQ6IDQsXG4gICAgICAgIH07XG5cbiAgICAgICAgcm91dGVQYXRocy5wdXNoKHJvdXRlUGF0aCk7XG5cbiAgICAgICAgaWYgKGluZGV4ID09PSAxKSB7XG4gICAgICAgICAgcm91dGVQYXRocy5wdXNoKHtcbiAgICAgICAgICAgIC4uLnJvdXRlUGF0aCxcbiAgICAgICAgICAgIHN0cm9rZUNvbG9yOiBQcm9ncmVzc0JhckNvbnN0YW50cy5tYXBQYXRoQ29sb3JzLmRlYWRoZWFkLFxuICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0cm9rZVdlaWdodDogMixcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5NYXBkYXRhID0ge1xuICAgICAgLi4udGhpcy5NYXBkYXRhLFxuICAgICAgaXNab29tU2hvd246IHRydWUsXG4gICAgICBpc1ZlcnRpY2FsWm9vbTogdHJ1ZSxcbiAgICAgIHJvdXRpbmdNYXJrZXJzOiByb3V0ZU1hcmtlcnMsXG4gICAgICByb3V0ZVBhdGhzOiByb3V0ZVBhdGhzLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgY2FsY3VsYXRlR3BzSWNvblBvc2l0aW9uKCk6IHZvaWQge1xuICAgIGxldCB0b3BQb3NpdGlvbiA9IDA7XG4gICAgbGV0IGN1cnJlbnRTdG9wUGVyY2VudGFnZSA9IG51bGw7XG4gICAgY29uc3Qgc3RvcFBlcmNlbnRhZ2UgPSAxMDAgLyAodGhpcy5fZ3BzUHJvZ3Jlc3MubGVuZ3RoIC0gMSk7XG5cbiAgICB0aGlzLl9ncHNQcm9ncmVzcy5mb3JFYWNoKChzdG9wLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgaXNBdERlYWRoZWFkID0gc3RvcC5pc0F0U3RvcCAmJiAhaW5kZXg7XG5cbiAgICAgIGlmIChzdG9wLmlzVmlzaXRlZCAmJiAhaXNBdERlYWRoZWFkKSB7XG4gICAgICAgIHRvcFBvc2l0aW9uICs9IGluZGV4ID8gc3RvcFBlcmNlbnRhZ2UgOiBzdG9wUGVyY2VudGFnZSAvIDI7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdG9wLmlzQXRTdG9wKSBjdXJyZW50U3RvcFBlcmNlbnRhZ2UgPSBzdG9wUGVyY2VudGFnZSAqIGluZGV4O1xuICAgIH0pO1xuXG4gICAgdGhpcy5ncHNJY29uVG9wUG9zaXRpb24gPSBjdXJyZW50U3RvcFBlcmNlbnRhZ2UgPz8gdG9wUG9zaXRpb247XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJncHMtcHJvZ3Jlc3MtYmFyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImdwcy1wcm9ncmVzcy1ob2xkZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgI3QyPVwibmdiUG9wb3ZlclwiXG4gICAgW25nYlBvcG92ZXJdPVwiZ3BzRHJvcGRvd25Qb3BvdmVyXCJcbiAgICBbYXV0b0Nsb3NlXT1cIidvdXRzaWRlJ1wiXG4gICAgY29udGFpbmVyPVwiYm9keVwiXG4gICAgW3BsYWNlbWVudF09XCInYm90dG9tLXJpZ2h0J1wiXG4gICAgcG9wb3ZlckNsYXNzPVwiZ3BzX2Ryb3Bkb3duX3BvcG92ZXJcIlxuICAgIHRyaWdnZXJzPVwibWFudWFsXCJcbiAgICAoY2xpY2spPVwic2hvd0Ryb3Bkb3duTWFwKHQyKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImdwcy1wcm9ncmVzcy1pbWdcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwiaG92ZXJlZEdwc0ljb24gPSB0cnVlXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyZWRHcHNJY29uID0gZmFsc2VcIlxuICAgID5cbiAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0ljb25cIj48L3N2Zy1pY29uPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaG92ZXJlZEdwc0ljb25cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHMtcHJvZ3Jlc3MtdGV4dFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZS1ncHMgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pbGVhZ2VzIGNhLWZvbnQtYm9sZFwiPlxuICAgICAgICAgICAge3sgaG92ZXJlZEdwc1RpdGxlID8/IGdwc1RpdGxlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pbGVhZ2Utbm9ybWFsIGNhLWZvbnQtcmVndWxhclwiPlxuICAgICAgICAgICAge3sgaG92ZXJlZE1pbGVhZ2VJbmZvID8/IG1pbGVhZ2VJbmZvIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZS1ncHMgZC1mbGV4XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdwcy10aW1lbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImdwcy10aW1lbGluZS1hY3RpdmVcIlxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBjdXJyZW50UG9zaXRpb24gKyAnJScgfVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgIGxldCBzdG9wIG9mIF9ncHNQcm9ncmVzcztcbiAgICAgICAgICAgICAgICBsZXQgaSA9IGluZGV4O1xuICAgICAgICAgICAgICAgIHRyYWNrQnk6IGlkZW50aXR5XG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdwcy1zdG9wXCJcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlclN0b3Aoc3RvcCwgaSwgZmFsc2UpXCJcbiAgICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJsZWF2ZVN0b3AoKVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3BpY2t1cC1zdG9wJzogc3RvcC50eXBlID09PSAncGlja3VwJyxcbiAgICAgICAgICAgICAgICAgICdkZWxpdmVyeS1zdG9wJzogc3RvcC50eXBlID09PSAnZGVsaXZlcnknLFxuICAgICAgICAgICAgICAgICAgJ3Zpc2l0ZWQtc3RvcCc6IGN1cnJlbnRQb3NpdGlvbiA+PSBzdG9wLnBvc2l0aW9uLFxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgbGVmdDogc3RvcC5wb3NpdGlvbiArICclJyB9XCJcbiAgICAgICAgICAgICAgICBuZ2JUb29sdGlwXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBCYWNrZ3JvdW5kXT1cIicjNDI0MjQyJ1wiXG4gICAgICAgICAgICAgICAgW21haW5DYVRvb2x0aXBdPVwic3RvcD8ubG9jYXRpb24gPz8gJydcIlxuICAgICAgICAgICAgICAgIHBvc2l0aW9uPVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiY3VycmVudC1wb3NcIlxuICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlclN0b3AoY3VycmVudFN0b3AsIC0yLCB0cnVlKVwiXG4gICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImxlYXZlU3RvcCgpXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyBsZWZ0OiBjdXJyZW50UG9zaXRpb24gKyAnJScgfVwiXG4gICAgICAgICAgICAgIG5nYlRvb2x0aXBcbiAgICAgICAgICAgICAgW3Rvb2x0aXBCYWNrZ3JvdW5kXT1cIicjNDI0MjQyJ1wiXG4gICAgICAgICAgICAgIFttYWluQ2FUb29sdGlwXT1cImN1cnJlbnRTdG9wPy5sb2NhdGlvbiA/PyAnJ1wiXG4gICAgICAgICAgICAgIFtkaXNhYmxlVG9vbHRpcF09XCIhY3VycmVudFN0b3BcIlxuICAgICAgICAgICAgICBwb3NpdGlvbj1cImJvdHRvbVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0xvY2F0aW9uSWNvblwiPjwvc3ZnLWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZXMgY2EtZm9udC1ib2xkXCI+e3sgbWlsZWFnZXNQZXJjZW50IH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhvdmVyZWRHcHNJY29uICYmIGdwc0luZm9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHNfaW5mb19ob2xkIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1vdmluZ19zaWRlIGNhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogZ3BzSW5mby5ncHNoZWFkaW5nQ29sb3IgfVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBncHNJbmZvLmdwc2hlYWRpbmcgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb3ZpbmdfdGltZSBjYS1mb250LW1lZGl1bVwiPnt7IGdwc0luZm8uZ3BzVGltZSB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuXG4gIDxuZy10ZW1wbGF0ZSAjZ3BzRHJvcGRvd25Qb3BvdmVyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtYWluX2Ryb3Bkb3duX2hvbGRlciBkLWZsZXhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYXBfaG9sZGVyXCI+XG4gICAgICAgIDxhcHAtY2EtbWFwIFtkYXRhXT1cIk1hcGRhdGFcIj48L2FwcC1jYS1tYXA+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHNfYWxsX2hvbGRcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZ3BzX2hlYWRlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlcmVkR3BzSWNvbiA9IHRydWVcIlxuICAgICAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyZWRHcHNJY29uID0gZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdwcy1wcm9ncmVzcy1pbWdcIj5cbiAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0ljb25cIj48L3N2Zy1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfaW5mb19ob2xkIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwibW92aW5nX3NpZGUgY2EtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogZ3BzSW5mbz8uZ3BzaGVhZGluZ0NvbG9yIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBncHNJbmZvPy5ncHNoZWFkaW5nIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm1vdmluZ190aW1lIGNhLWZvbnQtbWVkaXVtXCI+XG4gICAgICAgICAgICAgIHt7ICFob3ZlcmVkR3BzSWNvbiA/ICdOZWFyIE1hcGxld29vZCwgTU8nIDogJzAzOjQ3JyB9fVxuICAgICAgICAgICAgPC9kaXY+IC0tPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdwc19pbmZvX2JvcmRlclwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX3Byb2dyZXNzX2hvbGRcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImdwc19wcm9ncmVzc19ob2xkX2lubmVyIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1zdGFydFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX2xpbmVcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3NfaW5uZXJfbGluZVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBncHNJY29uVG9wUG9zaXRpb24gKyAnJScsXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgID48L2Rpdj5cblxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWN1cnJlbnRTdG9wXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgZ3BzTG9jYXRpb25JY29uVGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgdG9wUG9zaXRpb246IGdwc0ljb25Ub3BQb3NpdGlvbiB9XG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgbGV0IHN0b3Agb2YgX2dwc1Byb2dyZXNzO1xuICAgICAgICAgICAgICAgIGxldCBzdG9wSW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgICAgICB0cmFja0J5OiBpZGVudGl0eVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfaW5uZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfaGVhZGVyIGQtZmxleFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX2hlYWRlcl9pbnNpZGUgZC1mbGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyZXNzX2ljb24gZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAnZGVsaXZlcnktaWNvbic6IHN0b3AudHlwZSA9PT0gJ2RlbGl2ZXJ5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdwaWNrdXAtaWNvbic6IHN0b3AudHlwZSA9PT0gJ3BpY2t1cCcsXG4gICAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFzdG9wLmlzQXRTdG9wOyBlbHNlIGdwc0xvY2F0aW9uSWNvblRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFBvc2l0aW9uID49IHN0b3AucG9zaXRpb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBwcm9ncmVzc1N0b3BOdW1iZXJUZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImdldFN2Z1BhdGgoJ2NoZWNrUm91dGUnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N2Z1N0eWxlXT1cInsgJ3dpZHRoLnB4JzogMTQsICdoZWlnaHQucHgnOiAxNCB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNwcm9ncmVzc1N0b3BOdW1iZXJUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3Mtc3RvcC1udW1iZXIgdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3AudHlwZSA9PT0gJ3BpY2t1cCcgPyAnIzg2QzlDMycgOiAnI0VEOTI5MicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgc3RvcC5zdG9wTnVtYmVyIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzc19pbmZvX2hvbGQgZC1mbGV4IGZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzc19uYW1lIGNhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdG9wLmlzQXRTdG9wIHx8IChjdXJyZW50UG9zaXRpb24gPCBzdG9wLnBvc2l0aW9uKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcC50eXBlID09PSAncGlja3VwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICcjODZDOUMzJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICcjRUQ5MjkyJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnIzkxOTE5MScsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBzdG9wLmxvY2F0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhc3RvcC5pc0F0U3RvcDsgZWxzZSBsb2NhdGlvbkF0U3RvcFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcC5kYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyZXNzX3RpbWUgY2EtZm9udC1yZWd1bGFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudmlzaXRlZC1zdG9wLXRleHRdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50UG9zaXRpb24gPj0gc3RvcC5wb3NpdGlvbiAmJiAhc3RvcC5pc0F0U3RvcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBzdG9wLmRhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9wLnRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3NfdGltZSBjYS1mb250LXJlZ3VsYXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy52aXNpdGVkLXN0b3AtdGV4dF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRQb3NpdGlvbiA+PSBzdG9wLnBvc2l0aW9uICYmICFzdG9wLmlzQXRTdG9wXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHN0b3AudGltZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNsb2NhdGlvbkF0U3RvcFRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX3RpbWUgY2EtZm9udC1ib2xkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRpc3BhdGNoU3RhdHVzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9wLmN1cnJlbnRXYWl0VGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfdGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHN0b3AuY3VycmVudFdhaXRUaW1lIHwgY29udmVydE1pbnV0ZXNUb0hvdXJzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzcy1sZWctbWlsZXMtdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAndmlzaXRlZC1zdG9wLXRleHQnOiAoY3VycmVudFBvc2l0aW9uID49IHN0b3AucG9zaXRpb24pICYmICFzdG9wLmlzQXRTdG9wLFxuICAgICAgICAgICAgICAgICAgICAgICdjYS1mb250LWJvbGQnOiBzdG9wSW5kZXggPT09IDAsXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgIHN0b3BJbmRleCA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgICAgPyAnTEVHIG1pJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiBzdG9wPy5sZWdNaWxlc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyAnKycgKyBzdG9wLmxlZ01pbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcrJyArIDBcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdwc19pbmZvX2JvcmRlclwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX2hvbGRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX3JvdyBkLWZsZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfdGV4dFwiPlxuICAgICAgICAgICAgICB7eyBzdGF0aWNDb25zdGFudC5jb21wbGV0ZWQgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdwc19jb21wbGV0ZV90ZXh0X2luZm9cIj5cbiAgICAgICAgICAgICAge3sgc3RhdGljQ29uc3RhbnQudG90YWwgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfc2Vjb25kX3JvdyBkLWZsZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfdGV4dCBjYS1mb250LWJvbGRcIj5cbiAgICAgICAgICAgICAge3sgY3VycmVudFBvc2l0aW9uIH19e3sgc3RhdGljQ29uc3RhbnQucGVyY2VudGFnZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX3RleHRfaW5mbyBjYS1mb250LWJvbGRcIj5cbiAgICAgICAgICAgICAge3sgdG90YWxNaWxlcyB8IHRob3VzYW5kU2VwYXJhdG9yIH19IHt7IHN0YXRpY0NvbnN0YW50Lm1pbGVzIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2dwc0xvY2F0aW9uSWNvblRlbXBsYXRlIGxldC10b3BQb3NpdGlvbj1cInRvcFBvc2l0aW9uXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgW2NsYXNzLm1vdmluZy1ncHNdPVwidG9wUG9zaXRpb24gIT09IHVuZGVmaW5lZFwiXG4gICAgW3N0eWxlLnRvcF09XCJ0b3BQb3NpdGlvbiArICclJ1wiXG4gID5cbiAgICA8c3ZnLWljb25cbiAgICAgIGNsYXNzPVwiZC1mbGV4XCJcbiAgICAgIFtzcmNdPVwiZ3BzTG9jYXRpb25JY29uXCJcbiAgICAgIFtzdmdTdHlsZV09XCJ7ICd3aWR0aC5weCc6IDEwLCAnaGVpZ2h0LnB4JzogMTAgfVwiXG4gICAgPjwvc3ZnLWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXByb2dyZXNzLWJhci9jYS1wcm9ncmVzcy1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtYmFyL2NhLXByb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxTQUFTLEVBQWMsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFL0UsYUFBYTtBQUNiLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUUzRixZQUFZO0FBQ1osT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFVaEUsYUFBYTtBQUNiLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTFELFFBQVE7QUFDUixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFcEQsVUFBVTtBQUNWLE9BQU8sRUFBRSxtQkFB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S0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBS0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNPLFdBQVc7c0JBQXZCLEtBQUs7Z0JBT0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gbW9kdWxlc1xuaW1wb3J0IHsgQW5ndWxhclN2Z0ljb25Nb2R1bGUgfSBmcm9tICdhbmd1bGFyLXN2Zy1pY29uJztcbmltcG9ydCB7IE5nYk1vZHVsZSwgTmdiUG9wb3ZlciwgTmdiVG9vbHRpcCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcblxuLy8gQ29tcG9uZW50c1xuaW1wb3J0IHsgQ2FNYXBDb21wb25lbnQgfSBmcm9tICcuLi9jYS1tYXAvY2EtbWFwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYUFwcFRvb2x0aXBWMkNvbXBvbmVudCB9IGZyb20gJy4uL2NhLWFwcC10b29sdGlwLXYyL2NhLWFwcC10b29sdGlwLXYyLmNvbXBvbmVudCc7XG5cbi8vIENvbnN0YW50c1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJDb25zdGFudHMgfSBmcm9tICcuL3V0aWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBNYXBPcHRpb25zQ29uc3RhbnRzIH0gZnJvbSAnLi4vY2EtbWFwL3V0aWxzL2NvbnN0YW50cyc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgSUdwc1Byb2dyZXNzIH0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgSUNhTWFwUHJvcHMsXG4gIElNYXBNYXJrZXJzLFxuICBJTWFwUm91dGVQYXRoLFxufSBmcm9tICcuLi9jYS1tYXAvbW9kZWxzL21hcC5tb2RlbCc7XG5cbi8vIHN2Zy1yb3V0ZXNcbmltcG9ydCB7IFByb2dyZXNzQmFyU3ZnUm91dGVzIH0gZnJvbSAnLi91dGlscy9zdmctcm91dGVzJztcblxuLy8gcGlwZXNcbmltcG9ydCB7IFRob3VzYW5kU2VwYXJhdG9yUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3Rob3VzYW5kLXNlcGFyYXRvci5waXBlJztcbmltcG9ydCB7IENvbnZlcnRNaW51dGVzVG9Ib3Vyc1BpcGUgfSBmcm9tICcuL3BpcGVzJztcblxuLy8gaGVscGVyc1xuaW1wb3J0IHsgTWFwTWFya2VySWNvbkhlbHBlciB9IGZyb20gJy4uL2NhLW1hcC91dGlscy9oZWxwZXJzJztcblxuLy8gRW51bXNcbmltcG9ydCB7IFByb2dyZXNzQmFyU3RyaW5nRW51bSB9IGZyb20gJy4vZW51bXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2EtcHJvZ3Jlc3MtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhLXByb2dyZXNzLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhLXByb2dyZXNzLWJhci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgLy8gTW9kdWxlc1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBBbmd1bGFyU3ZnSWNvbk1vZHVsZSxcbiAgICBOZ2JNb2R1bGUsXG4gICAgTmdiVG9vbHRpcCxcbiAgICAvLyBDb21wb25lbnRzXG4gICAgQ2FNYXBDb21wb25lbnQsXG4gICAgQ2FBcHBUb29sdGlwVjJDb21wb25lbnQsXG4gICAgLy8gUGlwZXNcbiAgICBUaG91c2FuZFNlcGFyYXRvclBpcGUsXG4gICAgQ29udmVydE1pbnV0ZXNUb0hvdXJzUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3NCYXJDb21wb25lbnQge1xuICBASW5wdXQoKSBpc0Ryb3Bkb3duOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGN1cnJlbnRQb3NpdGlvbiE6IG51bWJlcjtcbiAgQElucHV0KCkgbWlsZWFnZUluZm8hOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGN1cnJlbnRTdG9wITogSUdwc1Byb2dyZXNzO1xuICBASW5wdXQoKSBncHNUaXRsZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGdwc0ljb24hOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGdwc0luZm8hOiB7XG4gICAgZ3BzaGVhZGluZzogc3RyaW5nO1xuICAgIGdwc1RpbWU6IHN0cmluZztcbiAgICBncHNoZWFkaW5nQ29sb3I/OiBzdHJpbmc7XG4gIH07XG4gIEBJbnB1dCgpIG1pbGVhZ2VzUGVyY2VudCE6IHN0cmluZztcbiAgQElucHV0KCkgdG90YWxNaWxlcyE6IG51bWJlcjtcbiAgQElucHV0KCkgc2V0IGdwc1Byb2dyZXNzKHZhbHVlczogSUdwc1Byb2dyZXNzW10pIHtcbiAgICB0aGlzLl9ncHNQcm9ncmVzcyA9IHZhbHVlcztcblxuICAgIHRoaXMuc2V0TWFwTWFya2VycygpO1xuXG4gICAgdGhpcy5jYWxjdWxhdGVHcHNJY29uUG9zaXRpb24oKTtcbiAgfVxuICBASW5wdXQoKSBncHNMb2NhdGlvbkljb24hOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc3BhdGNoU3RhdHVzITogc3RyaW5nO1xuICBwdWJsaWMgaG92ZXJlZEdwc0ljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGhvdmVyZWRHcHNDdXJyZW50UG9zaXRpb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHNob3dEcm9wZG93bjogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgZm9jdXNlZEljb246IG51bWJlciA9IC0xO1xuICBwdWJsaWMgaXNJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyB0b29sdGlwOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIHN0YXRpY0NvbnN0YW50ID0gUHJvZ3Jlc3NCYXJDb25zdGFudHM7XG4gIHB1YmxpYyBob3ZlcmVkR3BzVGl0bGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBwdWJsaWMgaG92ZXJlZE1pbGVhZ2VJbmZvOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIGhvdmVyZWRTdG9wOiBJR3BzUHJvZ3Jlc3MgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIF9ncHNQcm9ncmVzczogSUdwc1Byb2dyZXNzW10gPSBbXTtcbiAgcHVibGljIGdwc0ljb25Ub3BQb3NpdGlvbjogbnVtYmVyID0gMDtcblxuICBwdWJsaWMgTWFwZGF0YTogSUNhTWFwUHJvcHMgPSB7XG4gICAgbWFya2VyczogW10sXG4gICAgY2x1c3Rlck1hcmtlcnM6IFtdLFxuICAgIHJvdXRpbmdNYXJrZXJzOiBbXSxcbiAgICByb3V0ZVBhdGhzOiBbXSxcbiAgICBkYXJrTW9kZTogdHJ1ZSxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgcHVibGljIGhvdmVyU3RvcChcbiAgICBzdG9wOiBJR3BzUHJvZ3Jlc3MsXG4gICAgaTogbnVtYmVyLFxuICAgIGlzSWNvbjogYm9vbGVhbiA9IGZhbHNlXG4gICk6IHZvaWQge1xuICAgIHRoaXMuaG92ZXJlZFN0b3AgPSBzdG9wO1xuICAgIHRoaXMuaG92ZXJlZEdwc0N1cnJlbnRQb3NpdGlvbiA9IHRydWU7XG4gICAgdGhpcy5ob3ZlcmVkR3BzVGl0bGUgPSBzdG9wPy5pc0F0U3RvcFxuICAgICAgPyBQcm9ncmVzc0JhclN0cmluZ0VudW0uQ1VSUkVOVF9MT0NBVElPTlxuICAgICAgOiBzdG9wPy5oZWFkaW5nIHx8IG51bGw7XG4gICAgdGhpcy5ob3ZlcmVkTWlsZWFnZUluZm8gPSAhc3RvcD8uaXNBdFN0b3AgPyBzdG9wPy5taWxlYWdlIDogJyc7XG4gICAgdGhpcy5mb2N1c2VkSWNvbiA9IGk7XG4gICAgdGhpcy5pc0ljb24gPSBpc0ljb247XG4gICAgdGhpcy5nZXRUb29sVGlwKCk7XG4gIH1cblxuICBwdWJsaWMgbGVhdmVTdG9wKCk6IHZvaWQge1xuICAgIHRoaXMuaG92ZXJlZFN0b3AgPSBudWxsO1xuICAgIHRoaXMuaG92ZXJlZEdwc0N1cnJlbnRQb3NpdGlvbiA9IGZhbHNlO1xuICAgIHRoaXMuaG92ZXJlZEdwc1RpdGxlID0gbnVsbDtcbiAgICB0aGlzLmhvdmVyZWRNaWxlYWdlSW5mbyA9IG51bGw7XG4gICAgdGhpcy5mb2N1c2VkSWNvbiA9IC0xO1xuICB9XG5cbiAgcHVibGljIGdldExlZnRTdHlsZSgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzSWNvbikge1xuICAgICAgcmV0dXJuIHRoaXMuY3VycmVudFN0b3AucG9zaXRpb24gKyAnJSc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLl9ncHNQcm9ncmVzc1t0aGlzLmZvY3VzZWRJY29uXS5wb3NpdGlvbiAtIDIwICsgJyUnO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRUb29sVGlwKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuaXNJY29uKSB7XG4gICAgICB0aGlzLnRvb2x0aXAgPSB0aGlzLmN1cnJlbnRTdG9wPy5sb2NhdGlvbjtcbiAgICAgIHJldHVybiB0aGlzLnRvb2x0aXA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudG9vbHRpcCA9IHRoaXMuX2dwc1Byb2dyZXNzW3RoaXMuZm9jdXNlZEljb25dLmxvY2F0aW9uO1xuICAgICAgcmV0dXJuIHRoaXMudG9vbHRpcDtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaWRlbnRpdHkoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgcHVibGljIHNob3dEcm9wZG93bk1hcCh0MjogTmdiUG9wb3Zlcik6IHZvaWQge1xuICAgIHQyLm9wZW4oKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRTdmdQYXRoKHByb3BlcnR5TmFtZToga2V5b2YgdHlwZW9mIFByb2dyZXNzQmFyU3ZnUm91dGVzKTogc3RyaW5nIHtcbiAgICByZXR1cm4gUHJvZ3Jlc3NCYXJTdmdSb3V0ZXNbcHJvcGVydHlOYW1lXSBhcyBzdHJpbmc7XG4gIH1cblxuICBwdWJsaWMgc2V0TWFwTWFya2VycygpOiB2b2lkIHtcbiAgICBjb25zdCByb3V0ZU1hcmtlcnM6IElNYXBNYXJrZXJzW10gPSBbXTtcbiAgICBjb25zdCByb3V0ZVBhdGhzOiBJTWFwUm91dGVQYXRoW10gPSBbXTtcblxuICAgIHRoaXMuX2dwc1Byb2dyZXNzLmZvckVhY2goKGxvYWRTdG9wLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qgcm91dGVNYXJrZXI6IElNYXBNYXJrZXJzID0ge1xuICAgICAgICBwb3NpdGlvbjogeyBsYXQ6IGxvYWRTdG9wLmxhdGl0dWRlLCBsbmc6IGxvYWRTdG9wLmxvbmdpdHVkZSB9LFxuICAgICAgICBpY29uOiB7XG4gICAgICAgICAgdXJsOiBNYXBNYXJrZXJJY29uSGVscGVyLmdldFJvdXRpbmdNYXJrZXJJY29uKFxuICAgICAgICAgICAgbG9hZFN0b3Auc3RvcE51bWJlciA/PyAwLFxuICAgICAgICAgICAgbG9hZFN0b3AudHlwZSxcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFBvc2l0aW9uID49IGxvYWRTdG9wLnBvc2l0aW9uXG4gICAgICAgICAgKSxcbiAgICAgICAgICBsYWJlbE9yaWdpbjogbmV3IGdvb2dsZS5tYXBzLlBvaW50KDkwLCAxNSksXG4gICAgICAgIH0sXG4gICAgICB9O1xuXG4gICAgICByb3V0ZU1hcmtlcnMucHVzaChyb3V0ZU1hcmtlcik7XG5cbiAgICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgICAgY29uc3Qgcm91dGVQYXRoOiBJTWFwUm91dGVQYXRoID0ge1xuICAgICAgICAgIHBhdGg6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbGF0OiB0aGlzLl9ncHNQcm9ncmVzc1tpbmRleCAtIDFdLmxhdGl0dWRlISxcbiAgICAgICAgICAgICAgbG5nOiB0aGlzLl9ncHNQcm9ncmVzc1tpbmRleCAtIDFdLmxvbmdpdHVkZSEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgeyBsYXQ6IGxvYWRTdG9wLmxhdGl0dWRlISwgbG5nOiBsb2FkU3RvcC5sb25naXR1ZGUhIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBzdHJva2VDb2xvcjpcbiAgICAgICAgICAgIGluZGV4ID09PSAxXG4gICAgICAgICAgICAgID8gTWFwT3B0aW9uc0NvbnN0YW50cy5yb3V0aW5nUGF0aENvbG9ycy5jdXJyZW50TG9jYXRpb25cbiAgICAgICAgICAgICAgOiBNYXBPcHRpb25zQ29uc3RhbnRzLnJvdXRpbmdQYXRoQ29sb3JzLmRlZmF1bHQsXG4gICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgICAgICAgICBzdHJva2VXZWlnaHQ6IDQsXG4gICAgICAgIH07XG5cbiAgICAgICAgcm91dGVQYXRocy5wdXNoKHJvdXRlUGF0aCk7XG5cbiAgICAgICAgaWYgKGluZGV4ID09PSAxKSB7XG4gICAgICAgICAgcm91dGVQYXRocy5wdXNoKHtcbiAgICAgICAgICAgIC4uLnJvdXRlUGF0aCxcbiAgICAgICAgICAgIHN0cm9rZUNvbG9yOiBNYXBPcHRpb25zQ29uc3RhbnRzLnJvdXRpbmdQYXRoQ29sb3JzLmRlYWRoZWFkLFxuICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSxcbiAgICAgICAgICAgIHN0cm9rZVdlaWdodDogMixcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5NYXBkYXRhID0ge1xuICAgICAgLi4udGhpcy5NYXBkYXRhLFxuICAgICAgaXNab29tU2hvd246IHRydWUsXG4gICAgICBpc1ZlcnRpY2FsWm9vbTogdHJ1ZSxcbiAgICAgIHJvdXRpbmdNYXJrZXJzOiByb3V0ZU1hcmtlcnMsXG4gICAgICByb3V0ZVBhdGhzOiByb3V0ZVBhdGhzLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgY2FsY3VsYXRlR3BzSWNvblBvc2l0aW9uKCk6IHZvaWQge1xuICAgIGxldCB0b3BQb3NpdGlvbiA9IDA7XG4gICAgbGV0IGN1cnJlbnRTdG9wUGVyY2VudGFnZSA9IG51bGw7XG4gICAgY29uc3Qgc3RvcFBlcmNlbnRhZ2UgPSAxMDAgLyAodGhpcy5fZ3BzUHJvZ3Jlc3MubGVuZ3RoIC0gMSk7XG5cbiAgICB0aGlzLl9ncHNQcm9ncmVzcy5mb3JFYWNoKChzdG9wLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgaXNBdERlYWRoZWFkID0gc3RvcC5pc0F0U3RvcCAmJiAhaW5kZXg7XG5cbiAgICAgIGlmIChzdG9wLmlzVmlzaXRlZCAmJiAhaXNBdERlYWRoZWFkKSB7XG4gICAgICAgIHRvcFBvc2l0aW9uICs9IGluZGV4ID8gc3RvcFBlcmNlbnRhZ2UgOiBzdG9wUGVyY2VudGFnZSAvIDI7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdG9wLmlzQXRTdG9wKSBjdXJyZW50U3RvcFBlcmNlbnRhZ2UgPSBzdG9wUGVyY2VudGFnZSAqIGluZGV4O1xuICAgIH0pO1xuXG4gICAgdGhpcy5ncHNJY29uVG9wUG9zaXRpb24gPSBjdXJyZW50U3RvcFBlcmNlbnRhZ2UgPz8gdG9wUG9zaXRpb247XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJncHMtcHJvZ3Jlc3MtYmFyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImdwcy1wcm9ncmVzcy1ob2xkZXIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiXG4gICAgI3QyPVwibmdiUG9wb3ZlclwiXG4gICAgW25nYlBvcG92ZXJdPVwiZ3BzRHJvcGRvd25Qb3BvdmVyXCJcbiAgICBbYXV0b0Nsb3NlXT1cIidvdXRzaWRlJ1wiXG4gICAgY29udGFpbmVyPVwiYm9keVwiXG4gICAgW3BsYWNlbWVudF09XCInYm90dG9tLXJpZ2h0J1wiXG4gICAgcG9wb3ZlckNsYXNzPVwiZ3BzX2Ryb3Bkb3duX3BvcG92ZXJcIlxuICAgIHRyaWdnZXJzPVwibWFudWFsXCJcbiAgICAoY2xpY2spPVwic2hvd0Ryb3Bkb3duTWFwKHQyKVwiXG4gID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImdwcy1wcm9ncmVzcy1pbWdcIlxuICAgICAgKG1vdXNlZW50ZXIpPVwiaG92ZXJlZEdwc0ljb24gPSB0cnVlXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyZWRHcHNJY29uID0gZmFsc2VcIlxuICAgID5cbiAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0ljb25cIj48L3N2Zy1pY29uPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaG92ZXJlZEdwc0ljb25cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHMtcHJvZ3Jlc3MtdGV4dFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZS1ncHMgZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pbGVhZ2VzIGNhLWZvbnQtYm9sZFwiPlxuICAgICAgICAgICAge3sgaG92ZXJlZEdwc1RpdGxlID8/IGdwc1RpdGxlIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm1pbGVhZ2Utbm9ybWFsIGNhLWZvbnQtcmVndWxhclwiPlxuICAgICAgICAgICAge3sgaG92ZXJlZE1pbGVhZ2VJbmZvID8/IG1pbGVhZ2VJbmZvIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZS1ncHMgZC1mbGV4XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdwcy10aW1lbGluZVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImdwcy10aW1lbGluZS1hY3RpdmVcIlxuICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBjdXJyZW50UG9zaXRpb24gKyAnJScgfVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgIGxldCBzdG9wIG9mIF9ncHNQcm9ncmVzcztcbiAgICAgICAgICAgICAgICBsZXQgaSA9IGluZGV4O1xuICAgICAgICAgICAgICAgIHRyYWNrQnk6IGlkZW50aXR5XG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdwcy1zdG9wXCJcbiAgICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlclN0b3Aoc3RvcCwgaSwgZmFsc2UpXCJcbiAgICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJsZWF2ZVN0b3AoKVwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAgICAgJ3BpY2t1cC1zdG9wJzogc3RvcC50eXBlID09PSAncGlja3VwJyxcbiAgICAgICAgICAgICAgICAgICdkZWxpdmVyeS1zdG9wJzogc3RvcC50eXBlID09PSAnZGVsaXZlcnknLFxuICAgICAgICAgICAgICAgICAgJ3Zpc2l0ZWQtc3RvcCc6IGN1cnJlbnRQb3NpdGlvbiA+PSBzdG9wLnBvc2l0aW9uLFxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgbGVmdDogc3RvcC5wb3NpdGlvbiArICclJyB9XCJcbiAgICAgICAgICAgICAgICBuZ2JUb29sdGlwXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBCYWNrZ3JvdW5kXT1cIicjNDI0MjQyJ1wiXG4gICAgICAgICAgICAgICAgW21haW5DYVRvb2x0aXBdPVwic3RvcD8ubG9jYXRpb24gPz8gJydcIlxuICAgICAgICAgICAgICAgIHBvc2l0aW9uPVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiY3VycmVudC1wb3NcIlxuICAgICAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlclN0b3AoY3VycmVudFN0b3AsIC0yLCB0cnVlKVwiXG4gICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImxlYXZlU3RvcCgpXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyBsZWZ0OiBjdXJyZW50UG9zaXRpb24gKyAnJScgfVwiXG4gICAgICAgICAgICAgIG5nYlRvb2x0aXBcbiAgICAgICAgICAgICAgW3Rvb2x0aXBCYWNrZ3JvdW5kXT1cIicjNDI0MjQyJ1wiXG4gICAgICAgICAgICAgIFttYWluQ2FUb29sdGlwXT1cImN1cnJlbnRTdG9wPy5sb2NhdGlvbiA/PyAnJ1wiXG4gICAgICAgICAgICAgIFtkaXNhYmxlVG9vbHRpcF09XCIhY3VycmVudFN0b3BcIlxuICAgICAgICAgICAgICBwb3NpdGlvbj1cImJvdHRvbVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0xvY2F0aW9uSWNvblwiPjwvc3ZnLWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWlsZWFnZXMgY2EtZm9udC1ib2xkXCI+e3sgbWlsZWFnZXNQZXJjZW50IH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhvdmVyZWRHcHNJY29uICYmIGdwc0luZm9cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHNfaW5mb19ob2xkIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cIm1vdmluZ19zaWRlIGNhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogZ3BzSW5mby5ncHNoZWFkaW5nQ29sb3IgfVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBncHNJbmZvLmdwc2hlYWRpbmcgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb3ZpbmdfdGltZSBjYS1mb250LW1lZGl1bVwiPnt7IGdwc0luZm8uZ3BzVGltZSB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuXG4gIDxuZy10ZW1wbGF0ZSAjZ3BzRHJvcGRvd25Qb3BvdmVyIGxldC1kYXRhPVwiZGF0YVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtYWluX2Ryb3Bkb3duX2hvbGRlciBkLWZsZXhcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtYXBfaG9sZGVyXCI+XG4gICAgICAgIDxhcHAtY2EtbWFwIFtkYXRhXT1cIk1hcGRhdGFcIj48L2FwcC1jYS1tYXA+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJncHNfYWxsX2hvbGRcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZ3BzX2hlYWRlciBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAobW91c2VlbnRlcik9XCJob3ZlcmVkR3BzSWNvbiA9IHRydWVcIlxuICAgICAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyZWRHcHNJY29uID0gZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdwcy1wcm9ncmVzcy1pbWdcIj5cbiAgICAgICAgICAgIDxzdmctaWNvbiBbc3JjXT1cImdwc0ljb25cIj48L3N2Zy1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfaW5mb19ob2xkIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwibW92aW5nX3NpZGUgY2EtZm9udC1ib2xkXCJcbiAgICAgICAgICAgICAgW25nU3R5bGVdPVwieyBjb2xvcjogZ3BzSW5mbz8uZ3BzaGVhZGluZ0NvbG9yIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICB7eyBncHNJbmZvPy5ncHNoZWFkaW5nIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cIm1vdmluZ190aW1lIGNhLWZvbnQtbWVkaXVtXCI+XG4gICAgICAgICAgICAgIHt7ICFob3ZlcmVkR3BzSWNvbiA/ICdOZWFyIE1hcGxld29vZCwgTU8nIDogJzAzOjQ3JyB9fVxuICAgICAgICAgICAgPC9kaXY+IC0tPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdwc19pbmZvX2JvcmRlclwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX3Byb2dyZXNzX2hvbGRcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImdwc19wcm9ncmVzc19ob2xkX2lubmVyIGQtZmxleCBmbGV4LWNvbHVtbiBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1zdGFydFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX2xpbmVcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3NfaW5uZXJfbGluZVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBncHNJY29uVG9wUG9zaXRpb24gKyAnJScsXG4gICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgID48L2Rpdj5cblxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWN1cnJlbnRTdG9wXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICAgICAgZ3BzTG9jYXRpb25JY29uVGVtcGxhdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgdG9wUG9zaXRpb246IGdwc0ljb25Ub3BQb3NpdGlvbiB9XG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgbGV0IHN0b3Agb2YgX2dwc1Byb2dyZXNzO1xuICAgICAgICAgICAgICAgIGxldCBzdG9wSW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgICAgICB0cmFja0J5OiBpZGVudGl0eVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfaW5uZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfaGVhZGVyIGQtZmxleFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX2hlYWRlcl9pbnNpZGUgZC1mbGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyZXNzX2ljb24gZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAnZGVsaXZlcnktaWNvbic6IHN0b3AudHlwZSA9PT0gJ2RlbGl2ZXJ5JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdwaWNrdXAtaWNvbic6IHN0b3AudHlwZSA9PT0gJ3BpY2t1cCcsXG4gICAgICAgICAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFzdG9wLmlzQXRTdG9wOyBlbHNlIGdwc0xvY2F0aW9uSWNvblRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudFBvc2l0aW9uID49IHN0b3AucG9zaXRpb247XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBwcm9ncmVzc1N0b3BOdW1iZXJUZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cImdldFN2Z1BhdGgoJ2NoZWNrUm91dGUnKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N2Z1N0eWxlXT1cInsgJ3dpZHRoLnB4JzogMTQsICdoZWlnaHQucHgnOiAxNCB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvc3ZnLWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNwcm9ncmVzc1N0b3BOdW1iZXJUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3Mtc3RvcC1udW1iZXIgdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3AudHlwZSA9PT0gJ3BpY2t1cCcgPyAnIzg2QzlDMycgOiAnI0VEOTI5MicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgc3RvcC5zdG9wTnVtYmVyIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzc19pbmZvX2hvbGQgZC1mbGV4IGZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzc19uYW1lIGNhLWZvbnQtYm9sZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdG9wLmlzQXRTdG9wIHx8IChjdXJyZW50UG9zaXRpb24gPCBzdG9wLnBvc2l0aW9uKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gc3RvcC50eXBlID09PSAncGlja3VwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICcjODZDOUMzJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6ICcjRUQ5MjkyJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnIzkxOTE5MScsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBzdG9wLmxvY2F0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIhc3RvcC5pc0F0U3RvcDsgZWxzZSBsb2NhdGlvbkF0U3RvcFRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RvcC5kYXRlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInByb2dyZXNzX3RpbWUgY2EtZm9udC1yZWd1bGFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudmlzaXRlZC1zdG9wLXRleHRdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50UG9zaXRpb24gPj0gc3RvcC5wb3NpdGlvbiAmJiAhc3RvcC5pc0F0U3RvcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBzdG9wLmRhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9wLnRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicHJvZ3Jlc3NfdGltZSBjYS1mb250LXJlZ3VsYXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy52aXNpdGVkLXN0b3AtdGV4dF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRQb3NpdGlvbiA+PSBzdG9wLnBvc2l0aW9uICYmICFzdG9wLmlzQXRTdG9wXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHN0b3AudGltZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNsb2NhdGlvbkF0U3RvcFRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzX3RpbWUgY2EtZm9udC1ib2xkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGRpc3BhdGNoU3RhdHVzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdG9wLmN1cnJlbnRXYWl0VGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NfdGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IHN0b3AuY3VycmVudFdhaXRUaW1lIHwgY29udmVydE1pbnV0ZXNUb0hvdXJzIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwcm9ncmVzcy1sZWctbWlsZXMtdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAgICAgICAndmlzaXRlZC1zdG9wLXRleHQnOiAoY3VycmVudFBvc2l0aW9uID49IHN0b3AucG9zaXRpb24pICYmICFzdG9wLmlzQXRTdG9wLFxuICAgICAgICAgICAgICAgICAgICAgICdjYS1mb250LWJvbGQnOiBzdG9wSW5kZXggPT09IDAsXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgIHN0b3BJbmRleCA9PT0gMFxuICAgICAgICAgICAgICAgICAgICAgICAgPyAnTEVHIG1pJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiBzdG9wPy5sZWdNaWxlc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyAnKycgKyBzdG9wLmxlZ01pbGVzXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcrJyArIDBcbiAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImdwc19pbmZvX2JvcmRlclwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX2hvbGRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX3JvdyBkLWZsZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfdGV4dFwiPlxuICAgICAgICAgICAgICB7eyBzdGF0aWNDb25zdGFudC5jb21wbGV0ZWQgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdwc19jb21wbGV0ZV90ZXh0X2luZm9cIj5cbiAgICAgICAgICAgICAge3sgc3RhdGljQ29uc3RhbnQudG90YWwgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfc2Vjb25kX3JvdyBkLWZsZXhcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncHNfY29tcGxldGVfdGV4dCBjYS1mb250LWJvbGRcIj5cbiAgICAgICAgICAgICAge3sgY3VycmVudFBvc2l0aW9uIH19e3sgc3RhdGljQ29uc3RhbnQucGVyY2VudGFnZSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3BzX2NvbXBsZXRlX3RleHRfaW5mbyBjYS1mb250LWJvbGRcIj5cbiAgICAgICAgICAgICAge3sgdG90YWxNaWxlcyB8IHRob3VzYW5kU2VwYXJhdG9yIH19IHt7IHN0YXRpY0NvbnN0YW50Lm1pbGVzIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2dwc0xvY2F0aW9uSWNvblRlbXBsYXRlIGxldC10b3BQb3NpdGlvbj1cInRvcFBvc2l0aW9uXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiXG4gICAgW2NsYXNzLm1vdmluZy1ncHNdPVwidG9wUG9zaXRpb24gIT09IHVuZGVmaW5lZFwiXG4gICAgW3N0eWxlLnRvcF09XCJ0b3BQb3NpdGlvbiArICclJ1wiXG4gID5cbiAgICA8c3ZnLWljb25cbiAgICAgIGNsYXNzPVwiZC1mbGV4XCJcbiAgICAgIFtzcmNdPVwiZ3BzTG9jYXRpb25JY29uXCJcbiAgICAgIFtzdmdTdHlsZV09XCJ7ICd3aWR0aC5weCc6IDEwLCAnaGVpZ2h0LnB4JzogMTAgfVwiXG4gICAgPjwvc3ZnLWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -5,15 +5,5 @@ export const ProgressBarConstants = {
|
|
|
5
5
|
zero: 0,
|
|
6
6
|
percentage: '%',
|
|
7
7
|
miles: 'mi',
|
|
8
|
-
markerColors: {
|
|
9
|
-
pickup: '#259F94',
|
|
10
|
-
delivery: '#DF3C3C',
|
|
11
|
-
deadhead: '#6C6C6C',
|
|
12
|
-
},
|
|
13
|
-
mapPathColors: {
|
|
14
|
-
currentLocation: '#E5E5E5',
|
|
15
|
-
deadhead: '#2F2F2F',
|
|
16
|
-
default: '#6C6C6C',
|
|
17
|
-
},
|
|
18
8
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXByb2dyZXNzLWJhci91dGlscy9jb25zdGFudHMvcHJvZ3Jlc3MtYmFyLmNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRztJQUNsQyxTQUFTLEVBQUUsVUFBVTtJQUNyQixjQUFjLEVBQUUsVUFBVTtJQUMxQixLQUFLLEVBQUUsT0FBTztJQUNkLElBQUksRUFBRSxDQUFDO0lBQ1AsVUFBVSxFQUFFLEdBQUc7SUFDZixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgUHJvZ3Jlc3NCYXJDb25zdGFudHMgPSB7XG4gIGNvbXBsZXRlZDogJ0NvbXBsZXRlJyxcbiAgY29tcGxldGVkX3RleHQ6ICc0NTIuMCBtaScsXG4gIHRvdGFsOiAnVG90YWwnLFxuICB6ZXJvOiAwLFxuICBwZXJjZW50YWdlOiAnJScsXG4gIG1pbGVzOiAnbWknLFxufTtcbiJdfQ==
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export * from './convert-minutes-to-hours.helper';
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1iYXIvdXRpbHMvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnZlcnQtbWludXRlcy10by1ob3Vycy5oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1tYXAtbWFya2VyLmhlbHBlcic7XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1iYXIvdXRpbHMvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb252ZXJ0LW1pbnV0ZXMtdG8taG91cnMuaGVscGVyJztcbiJdfQ==
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export class ProgressBarSvgRoutes {
|
|
2
2
|
static { this.checkRoute = 'assets/ca-components/svg/map/check.svg'; }
|
|
3
|
-
static { this.checkedPickupMarker = 'assets/ca-components/svg/map/progress-marker-pickup.svg'; }
|
|
4
|
-
static { this.checkedDeliveryMarker = 'assets/ca-components/svg/map/progress-marker-checked.svg'; }
|
|
5
|
-
static { this.checkedDeadheadMarker = 'assets/ca-components/svg/map/progress_marker_reached.svg'; }
|
|
6
3
|
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLXN2Zy1yb3V0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1iYXIvdXRpbHMvc3ZnLXJvdXRlcy9wcm9ncmVzcy1iYXItc3ZnLXJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sb0JBQW9CO2FBQ3hCLGVBQVUsR0FBVyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBQcm9ncmVzc0JhclN2Z1JvdXRlcyB7XG4gIHN0YXRpYyBjaGVja1JvdXRlOiBzdHJpbmcgPSAnYXNzZXRzL2NhLWNvbXBvbmVudHMvc3ZnL21hcC9jaGVjay5zdmcnO1xufVxuIl19
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { Component, Input } from '@angular/core';
|
|
3
|
+
// moment
|
|
4
|
+
import moment from 'moment';
|
|
5
|
+
// enums
|
|
6
|
+
import { eProgressRangePrice } from './enums';
|
|
7
|
+
// modules
|
|
8
|
+
import { AngularSvgIconModule } from 'angular-svg-icon';
|
|
9
|
+
// svg routes
|
|
10
|
+
import { CaProgressRangeSvgRoutes } from './utils/svg-routes';
|
|
11
|
+
import { CaProgressRangeConstants } from './utils/constants';
|
|
12
|
+
import * as i0 from "@angular/core";
|
|
13
|
+
import * as i1 from "@angular/common";
|
|
14
|
+
import * as i2 from "angular-svg-icon";
|
|
15
|
+
export class CaProgressRangeComponent {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.svgRoutes = CaProgressRangeSvgRoutes;
|
|
18
|
+
}
|
|
19
|
+
ngOnInit() {
|
|
20
|
+
this.calculatePriceRange();
|
|
21
|
+
}
|
|
22
|
+
calculatePriceRange() {
|
|
23
|
+
const dateNow = moment();
|
|
24
|
+
const diff = moment(dateNow).diff(this.lastUsed, 'days');
|
|
25
|
+
if (diff > 7) {
|
|
26
|
+
this.priceRangeItem = { id: eProgressRangePrice.Expired, circleClassName: CaProgressRangeConstants.CLASS_CIRCLE_EXPIRED_NO_VALUE };
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
if (this.startRange && this.endRange && this.value) {
|
|
30
|
+
const range = Math.abs(this.endRange - this.startRange);
|
|
31
|
+
const step = range / CaProgressRangeConstants.PROGRESS_RANGE_LAST_PRICE_ITEMS?.length;
|
|
32
|
+
CaProgressRangeConstants.PROGRESS_RANGE_LAST_PRICE_ITEMS.forEach((item, index) => {
|
|
33
|
+
const currentStepStartRange = index === 0
|
|
34
|
+
? this.startRange
|
|
35
|
+
: this.startRange + (step * index);
|
|
36
|
+
const currentStepEndRange = index === (CaProgressRangeConstants.PROGRESS_RANGE_LAST_PRICE_ITEMS.length - 1)
|
|
37
|
+
? this.endRange
|
|
38
|
+
: this.startRange + (step * (index + 1));
|
|
39
|
+
if (currentStepStartRange <= this.value && currentStepEndRange >= this.value)
|
|
40
|
+
this.priceRangeItem = item;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaProgressRangeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaProgressRangeComponent, isStandalone: true, selector: "app-ca-progress-range", inputs: { startRange: "startRange", endRange: "endRange", value: "value", unit: "unit", lastUsed: "lastUsed" }, ngImport: i0, template: "<ng-container *ngIf=\"value !== null; else noValue\">\n <div class=\"w-100 h-100 progress-range-wrapper\">\n <span class=\"price-range-level-circle\" [ngClass]=\"priceRangeItem?.circleClassName\"></span>\n <span class=\"price-range-value\">{{ unit }} {{ value }}</span>\n\n <div class=\"progress-range-hover-box-wrapper\">\n <svg-icon [src]=\"svgRoutes.ICON_LAST_PRICE_CURSOR\" [className]=\"priceRangeItem?.arrowClassName\"></svg-icon>\n <svg-icon class=\"last-price-bar\" [src]=\"svgRoutes.ICON_LAST_PRICE_BAR\"></svg-icon>\n <div class=\"d-flex justify-content-between hover-box-text-wrapper\">\n <span>{{ unit }} {{ startRange }}</span>\n <span>{{ unit }} {{ endRange }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #noValue>\n <div class=\"w-100 h-100 progress-range-wrapper\">\n <span class=\"price-range-level-circle circle-color-expired-no-value\"></span>\n <span class=\"price-range-value not-applicable-text\">N/A</span>\n </div>\n</ng-template>", styles: ["@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";::ng-deep app-ca-progress-range .price-range-cheapest{left:7px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-cheapest svg path:first-child{fill:#56b4ac}::ng-deep app-ca-progress-range .circle-color-cheapest{background-color:#56b4ac}::ng-deep app-ca-progress-range .price-range-low{left:29px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-low svg path:first-child{fill:#77bf56}::ng-deep app-ca-progress-range .circle-color-low{background-color:#77bf56}::ng-deep app-ca-progress-range .price-range-moderate{left:51px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-moderate svg path:first-child{fill:#fab15c}::ng-deep app-ca-progress-range .circle-color-moderate{background-color:#fab15c}::ng-deep app-ca-progress-range .price-range-high{left:74px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-high svg path:first-child{fill:#ff906d}::ng-deep app-ca-progress-range .circle-color-high{background-color:#ff906d}::ng-deep app-ca-progress-range .price-range-most-expensive{left:96px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-most-expensive svg path:first-child{fill:#e66767}::ng-deep app-ca-progress-range .circle-color-most-expensive{background-color:#e66767}::ng-deep app-ca-progress-range .progress-range-wrapper{cursor:default;display:inline-block;position:relative;font-size:14px;padding:2px}::ng-deep app-ca-progress-range .progress-range-wrapper:hover:not(:has(.circle-color-expired-no-value)) .progress-range-hover-box-wrapper{display:block;position:absolute;left:-125px;top:0}::ng-deep app-ca-progress-range .price-range-level-circle{display:inline-flex;position:relative;width:10px;height:10px;border-radius:50%}::ng-deep app-ca-progress-range .progress-range-hover-box-wrapper{display:none;background-color:#2f2f2f;border-radius:3px;width:120px;height:26px}::ng-deep app-ca-progress-range .hover-box-text-wrapper{position:relative;top:-15px;font-size:10px;font-weight:600;color:#fff}::ng-deep app-ca-progress-range .hover-box-text-wrapper span:first-child{padding-left:5px}::ng-deep app-ca-progress-range .hover-box-text-wrapper span:last-child{padding-right:5px}::ng-deep app-ca-progress-range .last-price-bar{position:relative;vertical-align:super;top:-2px}::ng-deep app-ca-progress-range .price-range-value{margin-left:5px}::ng-deep app-ca-progress-range .circle-color-expired-no-value{background-color:#919191}::ng-deep app-ca-progress-range .not-applicable-text{color:#919191;font-weight:400}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: AngularSvgIconModule }, { kind: "component", type: i2.SvgIconComponent, selector: "svg-icon", inputs: ["src", "name", "stretch", "applyClass", "applyCss", "svgClass", "class", "viewBox", "svgAriaLabel", "svgStyle"] }] }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaProgressRangeComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'app-ca-progress-range', standalone: true, imports: [
|
|
50
|
+
CommonModule,
|
|
51
|
+
AngularSvgIconModule
|
|
52
|
+
], template: "<ng-container *ngIf=\"value !== null; else noValue\">\n <div class=\"w-100 h-100 progress-range-wrapper\">\n <span class=\"price-range-level-circle\" [ngClass]=\"priceRangeItem?.circleClassName\"></span>\n <span class=\"price-range-value\">{{ unit }} {{ value }}</span>\n\n <div class=\"progress-range-hover-box-wrapper\">\n <svg-icon [src]=\"svgRoutes.ICON_LAST_PRICE_CURSOR\" [className]=\"priceRangeItem?.arrowClassName\"></svg-icon>\n <svg-icon class=\"last-price-bar\" [src]=\"svgRoutes.ICON_LAST_PRICE_BAR\"></svg-icon>\n <div class=\"d-flex justify-content-between hover-box-text-wrapper\">\n <span>{{ unit }} {{ startRange }}</span>\n <span>{{ unit }} {{ endRange }}</span>\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #noValue>\n <div class=\"w-100 h-100 progress-range-wrapper\">\n <span class=\"price-range-level-circle circle-color-expired-no-value\"></span>\n <span class=\"price-range-value not-applicable-text\">N/A</span>\n </div>\n</ng-template>", styles: ["@import\"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css\";::ng-deep app-ca-progress-range .price-range-cheapest{left:7px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-cheapest svg path:first-child{fill:#56b4ac}::ng-deep app-ca-progress-range .circle-color-cheapest{background-color:#56b4ac}::ng-deep app-ca-progress-range .price-range-low{left:29px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-low svg path:first-child{fill:#77bf56}::ng-deep app-ca-progress-range .circle-color-low{background-color:#77bf56}::ng-deep app-ca-progress-range .price-range-moderate{left:51px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-moderate svg path:first-child{fill:#fab15c}::ng-deep app-ca-progress-range .circle-color-moderate{background-color:#fab15c}::ng-deep app-ca-progress-range .price-range-high{left:74px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-high svg path:first-child{fill:#ff906d}::ng-deep app-ca-progress-range .circle-color-high{background-color:#ff906d}::ng-deep app-ca-progress-range .price-range-most-expensive{left:96px;z-index:1;position:absolute;top:-6px}::ng-deep app-ca-progress-range .price-range-most-expensive svg path:first-child{fill:#e66767}::ng-deep app-ca-progress-range .circle-color-most-expensive{background-color:#e66767}::ng-deep app-ca-progress-range .progress-range-wrapper{cursor:default;display:inline-block;position:relative;font-size:14px;padding:2px}::ng-deep app-ca-progress-range .progress-range-wrapper:hover:not(:has(.circle-color-expired-no-value)) .progress-range-hover-box-wrapper{display:block;position:absolute;left:-125px;top:0}::ng-deep app-ca-progress-range .price-range-level-circle{display:inline-flex;position:relative;width:10px;height:10px;border-radius:50%}::ng-deep app-ca-progress-range .progress-range-hover-box-wrapper{display:none;background-color:#2f2f2f;border-radius:3px;width:120px;height:26px}::ng-deep app-ca-progress-range .hover-box-text-wrapper{position:relative;top:-15px;font-size:10px;font-weight:600;color:#fff}::ng-deep app-ca-progress-range .hover-box-text-wrapper span:first-child{padding-left:5px}::ng-deep app-ca-progress-range .hover-box-text-wrapper span:last-child{padding-right:5px}::ng-deep app-ca-progress-range .last-price-bar{position:relative;vertical-align:super;top:-2px}::ng-deep app-ca-progress-range .price-range-value{margin-left:5px}::ng-deep app-ca-progress-range .circle-color-expired-no-value{background-color:#919191}::ng-deep app-ca-progress-range .not-applicable-text{color:#919191;font-weight:400}\n"] }]
|
|
53
|
+
}], ctorParameters: function () { return []; }, propDecorators: { startRange: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], endRange: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}], value: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], unit: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], lastUsed: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}] } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcHJvZ3Jlc3MtcmFuZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtcmFuZ2UvY2EtcHJvZ3Jlc3MtcmFuZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtcmFuZ2UvY2EtcHJvZ3Jlc3MtcmFuZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRXpELFNBQVM7QUFDVCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsUUFBUTtBQUNSLE9BQU8sRUFBRSxtQkFBbUIsRUFBc0IsTUFBTSxTQUFTLENBQUM7QUFFbEUsVUFBVTtBQUNWLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELGFBQWE7QUFDYixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQWU3RCxNQUFNLE9BQU8sd0JBQXdCO0lBV3BDO1FBSk8sY0FBUyxHQUFHLHdCQUF3QixDQUFDO0lBSTdCLENBQUM7SUFFaEIsUUFBUTtRQUNQLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxtQkFBbUI7UUFDMUIsTUFBTSxPQUFPLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDekIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXpELElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxFQUFFLEVBQUUsbUJBQW1CLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSx3QkFBd0IsQ0FBQyw2QkFBNkIsRUFBaUMsQ0FBQztZQUVsSyxPQUFPO1NBQ1A7UUFFRCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ25ELE1BQU0sS0FBSyxHQUFXLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDaEUsTUFBTSxJQUFJLEdBQVcsS0FBSyxHQUFHLHdCQUF3QixDQUFDLCtCQUErQixFQUFFLE1BQU0sQ0FBQztZQUU5Rix3QkFBd0IsQ0FBQywrQkFBK0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ2hGLE1BQU0scUJBQXFCLEdBQzFCLEtBQUssS0FBSyxDQUFDO29CQUNYLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVTtvQkFDakIsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUM7Z0JBQ3BDLE1BQU0sbUJBQW1CLEdBQ3hCLEtBQUssS0FBSyxDQUFDLHdCQUF3QixDQUFDLCtCQUErQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7b0JBQy9FLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUTtvQkFDZixDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUUxQyxJQUFJLHFCQUFxQixJQUFZLElBQUksQ0FBQyxLQUFLLElBQUksbUJBQW1CLElBQVksSUFBSSxDQUFDLEtBQUs7b0JBQzNGLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1NBQ0g7SUFDRixDQUFDOytHQTdDVyx3QkFBd0I7bUdBQXhCLHdCQUF3QixpTUM3QnJDLG1sQ0FxQmMscXFGRElaLFlBQVksZ09BQ1osb0JBQW9COzs0RkFHVCx3QkFBd0I7a0JBVnBDLFNBQVM7K0JBQ0MsdUJBQXVCLGNBR3JCLElBQUksV0FDUDt3QkFDUixZQUFZO3dCQUNaLG9CQUFvQjtxQkFDcEI7MEVBR1EsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gbW9tZW50XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vIGVudW1zXG5pbXBvcnQgeyBlUHJvZ3Jlc3NSYW5nZVByaWNlLCBlUHJvZ3Jlc3NSYW5nZVVuaXQgfSBmcm9tICcuL2VudW1zJztcblxuLy8gbW9kdWxlc1xuaW1wb3J0IHsgQW5ndWxhclN2Z0ljb25Nb2R1bGUgfSBmcm9tICdhbmd1bGFyLXN2Zy1pY29uJztcblxuLy8gc3ZnIHJvdXRlc1xuaW1wb3J0IHsgQ2FQcm9ncmVzc1JhbmdlU3ZnUm91dGVzIH0gZnJvbSAnLi91dGlscy9zdmctcm91dGVzJztcbmltcG9ydCB7IENhUHJvZ3Jlc3NSYW5nZUNvbnN0YW50cyB9IGZyb20gJy4vdXRpbHMvY29uc3RhbnRzJztcblxuLy8gbW9kZWxzXG5pbXBvcnQgeyBJUHJvZ3Jlc3NSYW5nZUxhc3RQcmljZUl0ZW0gfSBmcm9tICcuL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2FwcC1jYS1wcm9ncmVzcy1yYW5nZScsXG5cdHRlbXBsYXRlVXJsOiAnLi9jYS1wcm9ncmVzcy1yYW5nZS5jb21wb25lbnQuaHRtbCcsXG5cdHN0eWxlVXJsczogWycuL2NhLXByb2dyZXNzLXJhbmdlLmNvbXBvbmVudC5zY3NzJ10sXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdGltcG9ydHM6IFtcblx0XHRDb21tb25Nb2R1bGUsXG5cdFx0QW5ndWxhclN2Z0ljb25Nb2R1bGVcblx0XVxufSlcbmV4cG9ydCBjbGFzcyBDYVByb2dyZXNzUmFuZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXHRASW5wdXQoKSBzdGFydFJhbmdlITogbnVtYmVyO1xuXHRASW5wdXQoKSBlbmRSYW5nZSE6IG51bWJlcjtcblx0QElucHV0KCkgdmFsdWUhOiBudW1iZXIgfCBudWxsO1xuXHRASW5wdXQoKSB1bml0ITogZVByb2dyZXNzUmFuZ2VVbml0XG5cdEBJbnB1dCgpIGxhc3RVc2VkITogc3RyaW5nO1xuXG5cdHB1YmxpYyBzdmdSb3V0ZXMgPSBDYVByb2dyZXNzUmFuZ2VTdmdSb3V0ZXM7XG5cblx0cHVibGljIHByaWNlUmFuZ2VJdGVtITogSVByb2dyZXNzUmFuZ2VMYXN0UHJpY2VJdGVtO1xuXG5cdGNvbnN0cnVjdG9yKCkge31cblxuXHRuZ09uSW5pdCgpOiB2b2lkIHtcblx0XHR0aGlzLmNhbGN1bGF0ZVByaWNlUmFuZ2UoKTtcblx0fVxuXG5cdHByaXZhdGUgY2FsY3VsYXRlUHJpY2VSYW5nZSgpOiB2b2lkIHtcblx0XHRjb25zdCBkYXRlTm93ID0gbW9tZW50KCk7XG5cdFx0Y29uc3QgZGlmZiA9IG1vbWVudChkYXRlTm93KS5kaWZmKHRoaXMubGFzdFVzZWQsICdkYXlzJyk7XG5cblx0XHRpZiAoZGlmZiA+IDcpIHtcblx0XHRcdHRoaXMucHJpY2VSYW5nZUl0ZW0gPSB7IGlkOiBlUHJvZ3Jlc3NSYW5nZVByaWNlLkV4cGlyZWQsIGNpcmNsZUNsYXNzTmFtZTogQ2FQcm9ncmVzc1JhbmdlQ29uc3RhbnRzLkNMQVNTX0NJUkNMRV9FWFBJUkVEX05PX1ZBTFVFIH0gYXMgSVByb2dyZXNzUmFuZ2VMYXN0UHJpY2VJdGVtO1xuXG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0aWYgKHRoaXMuc3RhcnRSYW5nZSAmJiB0aGlzLmVuZFJhbmdlICYmIHRoaXMudmFsdWUpIHtcblx0XHRcdGNvbnN0IHJhbmdlOiBudW1iZXIgPSBNYXRoLmFicyh0aGlzLmVuZFJhbmdlIC0gdGhpcy5zdGFydFJhbmdlKTtcblx0XHRcdGNvbnN0IHN0ZXA6IG51bWJlciA9IHJhbmdlIC8gQ2FQcm9ncmVzc1JhbmdlQ29uc3RhbnRzLlBST0dSRVNTX1JBTkdFX0xBU1RfUFJJQ0VfSVRFTVM/Lmxlbmd0aDtcblxuXHRcdFx0Q2FQcm9ncmVzc1JhbmdlQ29uc3RhbnRzLlBST0dSRVNTX1JBTkdFX0xBU1RfUFJJQ0VfSVRFTVMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcblx0XHRcdFx0Y29uc3QgY3VycmVudFN0ZXBTdGFydFJhbmdlOiBudW1iZXIgPSBcblx0XHRcdFx0XHRpbmRleCA9PT0gMCBcblx0XHRcdFx0XHQ/IHRoaXMuc3RhcnRSYW5nZSBcblx0XHRcdFx0XHQ6IHRoaXMuc3RhcnRSYW5nZSArIChzdGVwICogaW5kZXgpO1xuXHRcdFx0XHRjb25zdCBjdXJyZW50U3RlcEVuZFJhbmdlOiBudW1iZXIgPSBcblx0XHRcdFx0XHRpbmRleCA9PT0gKENhUHJvZ3Jlc3NSYW5nZUNvbnN0YW50cy5QUk9HUkVTU19SQU5HRV9MQVNUX1BSSUNFX0lURU1TLmxlbmd0aCAtIDEpXG5cdFx0XHRcdFx0PyB0aGlzLmVuZFJhbmdlXG5cdFx0XHRcdFx0OiB0aGlzLnN0YXJ0UmFuZ2UgKyAoc3RlcCAqIChpbmRleCArIDEpKTtcblx0XHRcdFx0XG5cdFx0XHRcdGlmIChjdXJyZW50U3RlcFN0YXJ0UmFuZ2UgPD0gPG51bWJlcj50aGlzLnZhbHVlICYmIGN1cnJlbnRTdGVwRW5kUmFuZ2UgPj0gPG51bWJlcj50aGlzLnZhbHVlKSBcblx0XHRcdFx0XHR0aGlzLnByaWNlUmFuZ2VJdGVtID0gaXRlbTtcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlICE9PSBudWxsOyBlbHNlIG5vVmFsdWVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcHJvZ3Jlc3MtcmFuZ2Utd3JhcHBlclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLXJhbmdlLWxldmVsLWNpcmNsZVwiIFtuZ0NsYXNzXT1cInByaWNlUmFuZ2VJdGVtPy5jaXJjbGVDbGFzc05hbWVcIj48L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicHJpY2UtcmFuZ2UtdmFsdWVcIj57eyB1bml0IH19IHt7IHZhbHVlIH19PC9zcGFuPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy1yYW5nZS1ob3Zlci1ib3gtd3JhcHBlclwiPlxuICAgICAgICAgICAgPHN2Zy1pY29uIFtzcmNdPVwic3ZnUm91dGVzLklDT05fTEFTVF9QUklDRV9DVVJTT1JcIiBbY2xhc3NOYW1lXT1cInByaWNlUmFuZ2VJdGVtPy5hcnJvd0NsYXNzTmFtZVwiPjwvc3ZnLWljb24+XG4gICAgICAgICAgICA8c3ZnLWljb24gY2xhc3M9XCJsYXN0LXByaWNlLWJhclwiIFtzcmNdPVwic3ZnUm91dGVzLklDT05fTEFTVF9QUklDRV9CQVJcIj48L3N2Zy1pY29uPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBob3Zlci1ib3gtdGV4dC13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3sgdW5pdCB9fSB7eyBzdGFydFJhbmdlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuPnt7IHVuaXQgfX0ge3sgZW5kUmFuZ2UgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNub1ZhbHVlPlxuICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCBoLTEwMCBwcm9ncmVzcy1yYW5nZS13cmFwcGVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicHJpY2UtcmFuZ2UtbGV2ZWwtY2lyY2xlIGNpcmNsZS1jb2xvci1leHBpcmVkLW5vLXZhbHVlXCI+PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLXJhbmdlLXZhbHVlIG5vdC1hcHBsaWNhYmxlLXRleHRcIj5OL0E8L3NwYW4+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './progress-range-price.enum';
|
|
2
|
+
export * from './progress-range-unit.enum';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1yYW5nZS9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Byb2dyZXNzLXJhbmdlLXByaWNlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1yYW5nZS11bml0LmVudW0nOyJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export var eProgressRangePrice;
|
|
2
|
+
(function (eProgressRangePrice) {
|
|
3
|
+
eProgressRangePrice[eProgressRangePrice["Expired"] = 0] = "Expired";
|
|
4
|
+
eProgressRangePrice[eProgressRangePrice["Cheapest"] = 1] = "Cheapest";
|
|
5
|
+
eProgressRangePrice[eProgressRangePrice["Low"] = 2] = "Low";
|
|
6
|
+
eProgressRangePrice[eProgressRangePrice["Moderate"] = 3] = "Moderate";
|
|
7
|
+
eProgressRangePrice[eProgressRangePrice["High"] = 4] = "High";
|
|
8
|
+
eProgressRangePrice[eProgressRangePrice["MostExpensive"] = 5] = "MostExpensive";
|
|
9
|
+
eProgressRangePrice[eProgressRangePrice["Inactive"] = 6] = "Inactive";
|
|
10
|
+
})(eProgressRangePrice || (eProgressRangePrice = {}));
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtcmFuZ2UtcHJpY2UuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXByb2dyZXNzLXJhbmdlL2VudW1zL3Byb2dyZXNzLXJhbmdlLXByaWNlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksbUJBUVg7QUFSRCxXQUFZLG1CQUFtQjtJQUMzQixtRUFBVyxDQUFBO0lBQ1gscUVBQVEsQ0FBQTtJQUNSLDJEQUFHLENBQUE7SUFDSCxxRUFBUSxDQUFBO0lBQ1IsNkRBQUksQ0FBQTtJQUNKLCtFQUFhLENBQUE7SUFDYixxRUFBUSxDQUFBO0FBQ1osQ0FBQyxFQVJXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFROUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBlUHJvZ3Jlc3NSYW5nZVByaWNlIHtcbiAgICBFeHBpcmVkID0gMCxcbiAgICBDaGVhcGVzdCxcbiAgICBMb3csXG4gICAgTW9kZXJhdGUsXG4gICAgSGlnaCxcbiAgICBNb3N0RXhwZW5zaXZlLFxuICAgIEluYWN0aXZlXG59Il19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export var eProgressRangeUnit;
|
|
2
|
+
(function (eProgressRangeUnit) {
|
|
3
|
+
eProgressRangeUnit["Dollar"] = "$";
|
|
4
|
+
})(eProgressRangeUnit || (eProgressRangeUnit = {}));
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtcmFuZ2UtdW5pdC5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtcmFuZ2UvZW51bXMvcHJvZ3Jlc3MtcmFuZ2UtdW5pdC5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGtCQUVYO0FBRkQsV0FBWSxrQkFBa0I7SUFDMUIsa0NBQVksQ0FBQTtBQUNoQixDQUFDLEVBRlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUU3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIGVQcm9ncmVzc1JhbmdlVW5pdCB7XG4gICAgRG9sbGFyID0gJyQnXG59Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './progress-range-last-price-item.model';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1yYW5nZS9tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHJvZ3Jlc3MtcmFuZ2UtbGFzdC1wcmljZS1pdGVtLm1vZGVsJzsiXX0=
|
package/esm2022/lib/components/ca-progress-range/models/progress-range-last-price-item.model.mjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtcmFuZ2UtbGFzdC1wcmljZS1pdGVtLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtcmFuZ2UvbW9kZWxzL3Byb2dyZXNzLXJhbmdlLWxhc3QtcHJpY2UtaXRlbS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZVByb2dyZXNzUmFuZ2VQcmljZSB9IGZyb20gXCIuLi9lbnVtc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElQcm9ncmVzc1JhbmdlTGFzdFByaWNlSXRlbSB7XG4gICAgaWQ6IGVQcm9ncmVzc1JhbmdlUHJpY2UsXG4gICAgY2lyY2xlQ2xhc3NOYW1lOiBzdHJpbmdcbiAgICBhcnJvd0NsYXNzTmFtZT86IHN0cmluZyxcbn0iXX0=
|
package/esm2022/lib/components/ca-progress-range/utils/constants/ca-progress-range.constants.mjs
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// enums
|
|
2
|
+
import { eProgressRangePrice } from "../../enums";
|
|
3
|
+
export class CaProgressRangeConstants {
|
|
4
|
+
static { this.CLASS_ARROW_CHEAPEST = 'price-range-cheapest'; }
|
|
5
|
+
static { this.CLASS_ARROW_LOW = 'price-range-low'; }
|
|
6
|
+
static { this.CLASS_ARROW_MODERATE = 'price-range-moderate'; }
|
|
7
|
+
static { this.CLASS_ARROW_HIGH = 'price-range-high'; }
|
|
8
|
+
static { this.CLASS_ARROW_MOST_EXPENSIVE = 'price-range-most-expensive'; }
|
|
9
|
+
static { this.CLASS_CIRCLE_CHEAPEST = 'circle-color-cheapest'; }
|
|
10
|
+
static { this.CLASS_CIRCLE_LOW = 'circle-color-low'; }
|
|
11
|
+
static { this.CLASS_CIRCLE_MODERATE = 'circle-color-moderate'; }
|
|
12
|
+
static { this.CLASS_CIRCLE_HIGH = 'circle-color-high'; }
|
|
13
|
+
static { this.CLASS_CIRCLE_MOST_EXPENSIVE = 'circle-color-most-expensive'; }
|
|
14
|
+
static { this.CLASS_CIRCLE_EXPIRED_NO_VALUE = 'circle-color-expired-no-value'; }
|
|
15
|
+
static { this.PROGRESS_RANGE_LAST_PRICE_ITEMS = [
|
|
16
|
+
{
|
|
17
|
+
id: eProgressRangePrice.Cheapest,
|
|
18
|
+
arrowClassName: this.CLASS_ARROW_CHEAPEST,
|
|
19
|
+
circleClassName: this.CLASS_CIRCLE_CHEAPEST
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: eProgressRangePrice.Low,
|
|
23
|
+
arrowClassName: this.CLASS_ARROW_LOW,
|
|
24
|
+
circleClassName: this.CLASS_CIRCLE_LOW
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
id: eProgressRangePrice.Moderate,
|
|
28
|
+
arrowClassName: this.CLASS_ARROW_MODERATE,
|
|
29
|
+
circleClassName: this.CLASS_CIRCLE_MODERATE
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
id: eProgressRangePrice.High,
|
|
33
|
+
arrowClassName: this.CLASS_ARROW_HIGH,
|
|
34
|
+
circleClassName: this.CLASS_CIRCLE_HIGH
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
id: eProgressRangePrice.MostExpensive,
|
|
38
|
+
arrowClassName: this.CLASS_ARROW_MOST_EXPENSIVE,
|
|
39
|
+
circleClassName: this.CLASS_CIRCLE_MOST_EXPENSIVE
|
|
40
|
+
}
|
|
41
|
+
]; }
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcHJvZ3Jlc3MtcmFuZ2UuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcHJvZ3Jlc3MtcmFuZ2UvdXRpbHMvY29uc3RhbnRzL2NhLXByb2dyZXNzLXJhbmdlLmNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxRQUFRO0FBQ1IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBS2xELE1BQU0sT0FBTyx3QkFBd0I7YUFDMUIseUJBQW9CLEdBQVcsc0JBQXNCLENBQUM7YUFDdEQsb0JBQWUsR0FBVyxpQkFBaUIsQ0FBQzthQUM1Qyx5QkFBb0IsR0FBVyxzQkFBc0IsQ0FBQzthQUN0RCxxQkFBZ0IsR0FBVyxrQkFBa0IsQ0FBQzthQUM5QywrQkFBMEIsR0FBVyw0QkFBNEIsQ0FBQzthQUVsRSwwQkFBcUIsR0FBVyx1QkFBdUIsQ0FBQzthQUN4RCxxQkFBZ0IsR0FBVyxrQkFBa0IsQ0FBQzthQUM5QywwQkFBcUIsR0FBVyx1QkFBdUIsQ0FBQzthQUN4RCxzQkFBaUIsR0FBVyxtQkFBbUIsQ0FBQzthQUNoRCxnQ0FBMkIsR0FBVyw2QkFBNkIsQ0FBQzthQUNwRSxrQ0FBNkIsR0FBVywrQkFBK0IsQ0FBQzthQUV4RSxvQ0FBK0IsR0FBa0M7UUFDcEU7WUFDSSxFQUFFLEVBQUUsbUJBQW1CLENBQUMsUUFBUTtZQUNoQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUN6QyxlQUFlLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtTQUM5QztRQUNEO1lBQ0ksRUFBRSxFQUFFLG1CQUFtQixDQUFDLEdBQUc7WUFDM0IsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3BDLGVBQWUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1NBQ3pDO1FBQ0Q7WUFDSSxFQUFFLEVBQUUsbUJBQW1CLENBQUMsUUFBUTtZQUNoQyxjQUFjLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjtZQUN6QyxlQUFlLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjtTQUM5QztRQUNEO1lBQ0ksRUFBRSxFQUFFLG1CQUFtQixDQUFDLElBQUk7WUFDNUIsY0FBYyxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDckMsZUFBZSxFQUFFLElBQUksQ0FBQyxpQkFBaUI7U0FDMUM7UUFDRDtZQUNJLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQyxhQUFhO1lBQ3JDLGNBQWMsRUFBRSxJQUFJLENBQUMsMEJBQTBCO1lBQy9DLGVBQWUsRUFBRSxJQUFJLENBQUMsMkJBQTJCO1NBQ3BEO0tBQ0osQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVudW1zXG5pbXBvcnQgeyBlUHJvZ3Jlc3NSYW5nZVByaWNlIH0gZnJvbSBcIi4uLy4uL2VudW1zXCI7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgSVByb2dyZXNzUmFuZ2VMYXN0UHJpY2VJdGVtIH0gZnJvbSBcIi4uLy4uL21vZGVsc1wiO1xuXG5leHBvcnQgY2xhc3MgQ2FQcm9ncmVzc1JhbmdlQ29uc3RhbnRzIHtcbiAgICBzdGF0aWMgQ0xBU1NfQVJST1dfQ0hFQVBFU1Q6IHN0cmluZyA9ICdwcmljZS1yYW5nZS1jaGVhcGVzdCc7XG4gICAgc3RhdGljIENMQVNTX0FSUk9XX0xPVzogc3RyaW5nID0gJ3ByaWNlLXJhbmdlLWxvdyc7XG4gICAgc3RhdGljIENMQVNTX0FSUk9XX01PREVSQVRFOiBzdHJpbmcgPSAncHJpY2UtcmFuZ2UtbW9kZXJhdGUnO1xuICAgIHN0YXRpYyBDTEFTU19BUlJPV19ISUdIOiBzdHJpbmcgPSAncHJpY2UtcmFuZ2UtaGlnaCc7XG4gICAgc3RhdGljIENMQVNTX0FSUk9XX01PU1RfRVhQRU5TSVZFOiBzdHJpbmcgPSAncHJpY2UtcmFuZ2UtbW9zdC1leHBlbnNpdmUnO1xuXG4gICAgc3RhdGljIENMQVNTX0NJUkNMRV9DSEVBUEVTVDogc3RyaW5nID0gJ2NpcmNsZS1jb2xvci1jaGVhcGVzdCc7XG4gICAgc3RhdGljIENMQVNTX0NJUkNMRV9MT1c6IHN0cmluZyA9ICdjaXJjbGUtY29sb3ItbG93JztcbiAgICBzdGF0aWMgQ0xBU1NfQ0lSQ0xFX01PREVSQVRFOiBzdHJpbmcgPSAnY2lyY2xlLWNvbG9yLW1vZGVyYXRlJztcbiAgICBzdGF0aWMgQ0xBU1NfQ0lSQ0xFX0hJR0g6IHN0cmluZyA9ICdjaXJjbGUtY29sb3ItaGlnaCc7XG4gICAgc3RhdGljIENMQVNTX0NJUkNMRV9NT1NUX0VYUEVOU0lWRTogc3RyaW5nID0gJ2NpcmNsZS1jb2xvci1tb3N0LWV4cGVuc2l2ZSc7XG4gICAgc3RhdGljIENMQVNTX0NJUkNMRV9FWFBJUkVEX05PX1ZBTFVFOiBzdHJpbmcgPSAnY2lyY2xlLWNvbG9yLWV4cGlyZWQtbm8tdmFsdWUnO1xuXG4gICAgc3RhdGljIFBST0dSRVNTX1JBTkdFX0xBU1RfUFJJQ0VfSVRFTVM6IElQcm9ncmVzc1JhbmdlTGFzdFByaWNlSXRlbVtdID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBpZDogZVByb2dyZXNzUmFuZ2VQcmljZS5DaGVhcGVzdCxcbiAgICAgICAgICAgIGFycm93Q2xhc3NOYW1lOiB0aGlzLkNMQVNTX0FSUk9XX0NIRUFQRVNULFxuICAgICAgICAgICAgY2lyY2xlQ2xhc3NOYW1lOiB0aGlzLkNMQVNTX0NJUkNMRV9DSEVBUEVTVFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogZVByb2dyZXNzUmFuZ2VQcmljZS5Mb3csXG4gICAgICAgICAgICBhcnJvd0NsYXNzTmFtZTogdGhpcy5DTEFTU19BUlJPV19MT1csXG4gICAgICAgICAgICBjaXJjbGVDbGFzc05hbWU6IHRoaXMuQ0xBU1NfQ0lSQ0xFX0xPV1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogZVByb2dyZXNzUmFuZ2VQcmljZS5Nb2RlcmF0ZSxcbiAgICAgICAgICAgIGFycm93Q2xhc3NOYW1lOiB0aGlzLkNMQVNTX0FSUk9XX01PREVSQVRFLFxuICAgICAgICAgICAgY2lyY2xlQ2xhc3NOYW1lOiB0aGlzLkNMQVNTX0NJUkNMRV9NT0RFUkFURVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogZVByb2dyZXNzUmFuZ2VQcmljZS5IaWdoLFxuICAgICAgICAgICAgYXJyb3dDbGFzc05hbWU6IHRoaXMuQ0xBU1NfQVJST1dfSElHSCxcbiAgICAgICAgICAgIGNpcmNsZUNsYXNzTmFtZTogdGhpcy5DTEFTU19DSVJDTEVfSElHSFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBpZDogZVByb2dyZXNzUmFuZ2VQcmljZS5Nb3N0RXhwZW5zaXZlLFxuICAgICAgICAgICAgYXJyb3dDbGFzc05hbWU6IHRoaXMuQ0xBU1NfQVJST1dfTU9TVF9FWFBFTlNJVkUsXG4gICAgICAgICAgICBjaXJjbGVDbGFzc05hbWU6IHRoaXMuQ0xBU1NfQ0lSQ0xFX01PU1RfRVhQRU5TSVZFXG4gICAgICAgIH1cbiAgICBdXG59Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './ca-progress-range.constants';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1yYW5nZS91dGlscy9jb25zdGFudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2EtcHJvZ3Jlc3MtcmFuZ2UuY29uc3RhbnRzJzsiXX0=
|
package/esm2022/lib/components/ca-progress-range/utils/svg-routes/ca-progress-range-svg-routes.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export class CaProgressRangeSvgRoutes {
|
|
2
|
+
static { this.ICON_LAST_PRICE_BAR = "assets/ca-components/svg/progress-range/progress-range-last-price-bar.svg"; }
|
|
3
|
+
static { this.ICON_LAST_PRICE_CURSOR = "assets/ca-components/svg/progress-range/progress-range-last-price-cursor.svg"; }
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcHJvZ3Jlc3MtcmFuZ2Utc3ZnLXJvdXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhLXByb2dyZXNzLXJhbmdlL3V0aWxzL3N2Zy1yb3V0ZXMvY2EtcHJvZ3Jlc3MtcmFuZ2Utc3ZnLXJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sd0JBQXdCO2FBQzFCLHdCQUFtQixHQUFHLDJFQUEyRSxDQUFDO2FBQ2xHLDJCQUFzQixHQUFHLDhFQUE4RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENhUHJvZ3Jlc3NSYW5nZVN2Z1JvdXRlcyB7XG4gICAgc3RhdGljIElDT05fTEFTVF9QUklDRV9CQVIgPSBcImFzc2V0cy9jYS1jb21wb25lbnRzL3N2Zy9wcm9ncmVzcy1yYW5nZS9wcm9ncmVzcy1yYW5nZS1sYXN0LXByaWNlLWJhci5zdmdcIjtcbiAgICBzdGF0aWMgSUNPTl9MQVNUX1BSSUNFX0NVUlNPUiA9IFwiYXNzZXRzL2NhLWNvbXBvbmVudHMvc3ZnL3Byb2dyZXNzLXJhbmdlL3Byb2dyZXNzLXJhbmdlLWxhc3QtcHJpY2UtY3Vyc29yLnN2Z1wiO1xufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './ca-progress-range-svg-routes';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1wcm9ncmVzcy1yYW5nZS91dGlscy9zdmctcm91dGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NhLXByb2dyZXNzLXJhbmdlLXN2Zy1yb3V0ZXMnOyJdfQ==
|
|
@@ -5,6 +5,7 @@ import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
|
5
5
|
import { CaRightSidePanelMenuComponent } from './components/ca-right-side-panel-menu/ca-right-side-panel-menu.component';
|
|
6
6
|
import { CaActivityLogListComponent } from '../ca-activity-log-list/ca-activity-log-list.component';
|
|
7
7
|
import { CaRightSidePanelTopBarComponent } from './components/ca-right-side-panel-top-bar/ca-right-side-panel-top-bar.component';
|
|
8
|
+
import { CaRightSidePanelCompanyComponent } from './components/ca-right-side-panel-company/ca-right-side-panel-company.component';
|
|
8
9
|
// enums
|
|
9
10
|
import { ActivityLogSortType, RightSidePanelCurrentTab, SelectedModule, } from './enums';
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
@@ -28,6 +29,7 @@ export class CaRightSidePanelComponent {
|
|
|
28
29
|
this.selectedNavModule = new EventEmitter();
|
|
29
30
|
this.isSidePanelPinned = new EventEmitter();
|
|
30
31
|
this.isNavOpen = new EventEmitter();
|
|
32
|
+
this.selectedCompanyId = new EventEmitter();
|
|
31
33
|
}
|
|
32
34
|
selectedNavEvent(selectedNav) {
|
|
33
35
|
if (!selectedNav)
|
|
@@ -41,6 +43,9 @@ export class CaRightSidePanelComponent {
|
|
|
41
43
|
selectedTabEvent(selectedTab) {
|
|
42
44
|
this.selectedTab = selectedTab;
|
|
43
45
|
}
|
|
46
|
+
selectedTabCompanyIdEvent(companyId) {
|
|
47
|
+
this.selectedCompanyId.emit(companyId);
|
|
48
|
+
}
|
|
44
49
|
pinSidebarEvent(isPinned) {
|
|
45
50
|
this.isSidePanelPinned.emit(isPinned);
|
|
46
51
|
}
|
|
@@ -74,23 +79,26 @@ export class CaRightSidePanelComponent {
|
|
|
74
79
|
this.isNavOpen.emit(isNavOpen);
|
|
75
80
|
}
|
|
76
81
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaRightSidePanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
77
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaRightSidePanelComponent, isStandalone: true, selector: "ca-right-side-panel", inputs: { companiesData: "companiesData",
|
|
82
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CaRightSidePanelComponent, isStandalone: true, selector: "app-ca-right-side-panel", inputs: { companiesData: "companiesData", activityLogData: "activityLogData", mainCompanyData: "mainCompanyData", usersFilter: "usersFilter", modulesFilter: "modulesFilter", actionsFilter: "actionsFilter" }, outputs: { activityLogFilterParams: "activityLogFilterParams", selectedNavModule: "selectedNavModule", isSidePanelPinned: "isSidePanelPinned", isNavOpen: "isNavOpen", selectedCompanyId: "selectedCompanyId" }, ngImport: i0, template: "<div class=\"side-panel-container-box\">\n <div class=\"side-panel-container d-flex flex-column\">\n <ng-container *ngIf=\"selectedNav === SelectedModule.ACTIVITY_LOG\">\n <app-ca-right-side-panel-top-bar\n [selectedModule]=\"selectedNav\"\n [usersFilter]=\"usersFilter\"\n [modulesFilter]=\"modulesFilter\"\n [actionsFilter]=\"actionsFilter\"\n [resetFilters]=\"resetFilters\"\n (selectedTab)=\"selectedTabEvent($event)\"\n (activityLogFilterParams)=\"setActivityLogFilterParams($event)\"\n ></app-ca-right-side-panel-top-bar>\n <app-ca-activity-log-list\n [activityLogList]=\"activityLogData\"\n [selectedTab]=\"selectedTab\"\n (searchText)=\"searchEvent($event)\"\n (resetFilters)=\"resetFiltersEvent($event)\"\n ></app-ca-activity-log-list>\n </ng-container>\n\n <ng-container *ngIf=\"selectedNav === SelectedModule.COMPANY_INFO\">\n <app-ca-right-side-panel-top-bar\n [selectedModule]=\"selectedNav\"\n [companyList]=\"companiesData\"\n (selectedTabCompanyId)=\"selectedTabCompanyIdEvent($event)\"\n ></app-ca-right-side-panel-top-bar>\n <app-ca-right-side-panel-company\n [company]=\"mainCompanyData\"\n ></app-ca-right-side-panel-company>\n </ng-container>\n\n <app-ca-right-side-panel-menu\n [companyList]=\"companiesData\"\n (selectedNav)=\"selectedNavEvent($event)\"\n (isPinned)=\"pinSidebarEvent($event)\"\n (isNavOpen)=\"openNavEvent($event)\"\n ></app-ca-right-side-panel-menu>\n </div>\n</div>\n", styles: [".side-panel-container-box .side-panel-container{position:fixed;bottom:12px;right:12px;gap:4px;max-height:calc(100vh - 24px);z-index:999}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: HttpClientModule }, { kind: "component", type:
|
|
78
83
|
// Components
|
|
79
|
-
CaRightSidePanelMenuComponent, selector: "ca-right-side-panel-menu", inputs: ["companyList"], outputs: ["selectedNav", "isPinned", "isNavOpen"] }, { kind: "component", type: CaActivityLogListComponent, selector: "ca-activity-log-list", inputs: ["activityLogList", "selectedTab"], outputs: ["searchText", "resetFilters"] }, { kind: "component", type: CaRightSidePanelTopBarComponent, selector: "ca-right-side-panel-top-bar", inputs: ["selectedModule", "usersFilter", "modulesFilter", "actionsFilter", "resetFilters"], outputs: ["selectedTab", "activityLogFilterParams"] }] }); }
|
|
84
|
+
CaRightSidePanelMenuComponent, selector: "app-ca-right-side-panel-menu", inputs: ["companyList"], outputs: ["selectedNav", "isPinned", "isNavOpen"] }, { kind: "component", type: CaActivityLogListComponent, selector: "app-ca-activity-log-list", inputs: ["activityLogList", "selectedTab"], outputs: ["searchText", "resetFilters"] }, { kind: "component", type: CaRightSidePanelTopBarComponent, selector: "app-ca-right-side-panel-top-bar", inputs: ["selectedModule", "usersFilter", "modulesFilter", "actionsFilter", "resetFilters", "companyList"], outputs: ["selectedTab", "activityLogFilterParams", "selectedTabCompanyId"] }, { kind: "component", type: CaRightSidePanelCompanyComponent, selector: "app-ca-right-side-panel-company", inputs: ["company"] }] }); }
|
|
80
85
|
}
|
|
81
86
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CaRightSidePanelComponent, decorators: [{
|
|
82
87
|
type: Component,
|
|
83
|
-
args: [{ selector: 'ca-right-side-panel', standalone: true, imports: [
|
|
88
|
+
args: [{ selector: 'app-ca-right-side-panel', standalone: true, imports: [
|
|
84
89
|
CommonModule,
|
|
85
90
|
HttpClientModule,
|
|
86
91
|
// Components
|
|
87
92
|
CaRightSidePanelMenuComponent,
|
|
88
93
|
CaActivityLogListComponent,
|
|
89
94
|
CaRightSidePanelTopBarComponent,
|
|
90
|
-
|
|
95
|
+
CaRightSidePanelCompanyComponent,
|
|
96
|
+
], template: "<div class=\"side-panel-container-box\">\n <div class=\"side-panel-container d-flex flex-column\">\n <ng-container *ngIf=\"selectedNav === SelectedModule.ACTIVITY_LOG\">\n <app-ca-right-side-panel-top-bar\n [selectedModule]=\"selectedNav\"\n [usersFilter]=\"usersFilter\"\n [modulesFilter]=\"modulesFilter\"\n [actionsFilter]=\"actionsFilter\"\n [resetFilters]=\"resetFilters\"\n (selectedTab)=\"selectedTabEvent($event)\"\n (activityLogFilterParams)=\"setActivityLogFilterParams($event)\"\n ></app-ca-right-side-panel-top-bar>\n <app-ca-activity-log-list\n [activityLogList]=\"activityLogData\"\n [selectedTab]=\"selectedTab\"\n (searchText)=\"searchEvent($event)\"\n (resetFilters)=\"resetFiltersEvent($event)\"\n ></app-ca-activity-log-list>\n </ng-container>\n\n <ng-container *ngIf=\"selectedNav === SelectedModule.COMPANY_INFO\">\n <app-ca-right-side-panel-top-bar\n [selectedModule]=\"selectedNav\"\n [companyList]=\"companiesData\"\n (selectedTabCompanyId)=\"selectedTabCompanyIdEvent($event)\"\n ></app-ca-right-side-panel-top-bar>\n <app-ca-right-side-panel-company\n [company]=\"mainCompanyData\"\n ></app-ca-right-side-panel-company>\n </ng-container>\n\n <app-ca-right-side-panel-menu\n [companyList]=\"companiesData\"\n (selectedNav)=\"selectedNavEvent($event)\"\n (isPinned)=\"pinSidebarEvent($event)\"\n (isNavOpen)=\"openNavEvent($event)\"\n ></app-ca-right-side-panel-menu>\n </div>\n</div>\n", styles: [".side-panel-container-box .side-panel-container{position:fixed;bottom:12px;right:12px;gap:4px;max-height:calc(100vh - 24px);z-index:999}\n"] }]
|
|
91
97
|
}], propDecorators: { companiesData: [{
|
|
92
98
|
type: Input
|
|
93
|
-
}],
|
|
99
|
+
}], activityLogData: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], mainCompanyData: [{
|
|
94
102
|
type: Input
|
|
95
103
|
}], usersFilter: [{
|
|
96
104
|
type: Input
|
|
@@ -106,5 +114,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
106
114
|
type: Output
|
|
107
115
|
}], isNavOpen: [{
|
|
108
116
|
type: Output
|
|
117
|
+
}], selectedCompanyId: [{
|
|
118
|
+
type: Output
|
|
109
119
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcmlnaHQtc2lkZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1yaWdodC1zaWRlLXBhbmVsL2NhLXJpZ2h0LXNpZGUtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcmlnaHQtc2lkZS1wYW5lbC9jYS1yaWdodC1zaWRlLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZFLGFBQWE7QUFDYixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNwRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQVlqSSxRQUFRO0FBQ1IsT0FBTyxFQUNMLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsY0FBYyxHQUNmLE1BQU0sU0FBUyxDQUFDOzs7QUFpQmpCLE1BQU0sT0FBTyx5QkFBeUI7SUFmdEM7UUFnQlMsNkJBQXdCLEdBQTRCO1lBQ3pELGNBQWMsRUFBRSxFQUFFO1lBQ2xCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLHFCQUFxQixFQUFFLEVBQUU7WUFDekIsSUFBSSxFQUFFLG1CQUFtQixDQUFDLFVBQVU7WUFDcEMsY0FBYyxFQUFFLHdCQUF3QixDQUFDLFFBQVE7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O2dCQUVoQixhQUFhO2dCQUNiLDZCQUE2QixpSkFDN0IsMEJBQTBCLHNKQUMxQiwrQkFBK0I7OzRGQUd0Qix5QkFBeUI7a0JBZnJDLFNBQVM7K0JBQ0UscUJBQXFCLGNBR25CLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFFaEIsYUFBYTt3QkFDYiw2QkFBNkI7d0JBQzdCLDBCQUEwQjt3QkFDMUIsK0JBQStCO3FCQUNoQzs4QkFtQlEsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksdUJBQXVCO3NCQUFoQyxNQUFNO2dCQUVHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFFRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gY29tcG9uZW50c1xuaW1wb3J0IHsgQ2FSaWdodFNpZGVQYW5lbE1lbnVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtcmlnaHQtc2lkZS1wYW5lbC1tZW51L2NhLXJpZ2h0LXNpZGUtcGFuZWwtbWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FBY3Rpdml0eUxvZ0xpc3RDb21wb25lbnQgfSBmcm9tICcuLi9jYS1hY3Rpdml0eS1sb2ctbGlzdC9jYS1hY3Rpdml0eS1sb2ctbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FSaWdodFNpZGVQYW5lbFRvcEJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYS1yaWdodC1zaWRlLXBhbmVsLXRvcC1iYXIvY2EtcmlnaHQtc2lkZS1wYW5lbC10b3AtYmFyLmNvbXBvbmVudCc7XG5cbi8vIG1vZGVsc1xuaW1wb3J0IHsgQWN0aXZpdHlMb2dJdGVtIH0gZnJvbSAnLi4vY2EtYWN0aXZpdHktbG9nLWxpc3QvbW9kZWxzJztcbmltcG9ydCB7XG4gIEFjdGlvbkZpbHRlcklucHV0RGF0YSxcbiAgQWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMsXG4gIENvbXBhbnlOYXZpZ2F0aW9uRGF0YSxcbiAgTW9kdWxlRmlsdGVySW5wdXREYXRhLFxuICBVc2VyRmlsdGVySW5wdXREYXRhLFxufSBmcm9tICcuL21vZGVscyc7XG5cbi8vIGVudW1zXG5pbXBvcnQge1xuICBBY3Rpdml0eUxvZ1NvcnRUeXBlLFxuICBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIsXG4gIFNlbGVjdGVkTW9kdWxlLFxufSBmcm9tICcuL2VudW1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2EtcmlnaHQtc2lkZS1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYS1yaWdodC1zaWRlLXBhbmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2EtcmlnaHQtc2lkZS1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEh0dHBDbGllbnRNb2R1bGUsXG5cbiAgICAvLyBDb21wb25lbnRzXG4gICAgQ2FSaWdodFNpZGVQYW5lbE1lbnVDb21wb25lbnQsXG4gICAgQ2FBY3Rpdml0eUxvZ0xpc3RDb21wb25lbnQsXG4gICAgQ2FSaWdodFNpZGVQYW5lbFRvcEJhckNvbXBvbmVudCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FSaWdodFNpZGVQYW5lbENvbXBvbmVudCB7XG4gIHB1YmxpYyBfYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXM6IEFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zID0ge1xuICAgIGNvbXBhbnlVc2VySWRzOiBbXSxcbiAgICBhY3Rpb25Mb2dJZHM6IFtdLFxuICAgIGVudGl0eVR5cGVBY3Rpdml0eUlkczogW10sXG4gICAgc29ydDogQWN0aXZpdHlMb2dTb3J0VHlwZS5ERVNDRU5ESU5HLFxuICAgIHVzZXJGaWx0ZXJUeXBlOiBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIuUEVSU09OQUwsXG4gICAgZGF0ZUZyb206IG51bGwsXG4gICAgZGF0ZVRvOiBudWxsLFxuICAgIHNlYXJjaDogbnVsbCxcbiAgfTtcbiAgcHVibGljIHNlbGVjdGVkTmF2PzogU2VsZWN0ZWRNb2R1bGU7XG4gIHB1YmxpYyBzZWxlY3RlZFRhYjogUmlnaHRTaWRlUGFuZWxDdXJyZW50VGFiID1cbiAgICBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIuUEVSU09OQUw7XG4gIHB1YmxpYyBTZWxlY3RlZE1vZHVsZSA9IFNlbGVjdGVkTW9kdWxlO1xuICBwdWJsaWMgcmVzZXRGaWx0ZXJzOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgY29tcGFuaWVzRGF0YSE6IENvbXBhbnlOYXZpZ2F0aW9uRGF0YVtdO1xuICBASW5wdXQoKSBkYXRhITogQWN0aXZpdHlMb2dJdGVtW107XG4gIEBJbnB1dCgpIHVzZXJzRmlsdGVyITogVXNlckZpbHRlcklucHV0RGF0YVtdO1xuICBASW5wdXQoKSBtb2R1bGVzRmlsdGVyITogTW9kdWxlRmlsdGVySW5wdXREYXRhW107XG4gIEBJbnB1dCgpIGFjdGlvbnNGaWx0ZXIhOiBBY3Rpb25GaWx0ZXJJbnB1dERhdGFbXTtcblxuICBAT3V0cHV0KCkgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXM6IEV2ZW50RW1pdHRlcjxBY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcz4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHNlbGVjdGVkTmF2TW9kdWxlOiBFdmVudEVtaXR0ZXI8U2VsZWN0ZWRNb2R1bGU+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBpc1NpZGVQYW5lbFBpbm5lZDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaXNOYXZPcGVuOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHVibGljIHNlbGVjdGVkTmF2RXZlbnQoc2VsZWN0ZWROYXY6IFNlbGVjdGVkTW9kdWxlKTogdm9pZCB7XG4gICAgaWYgKCFzZWxlY3RlZE5hdikgdGhpcy5zZWxlY3RlZFRhYiA9IFJpZ2h0U2lkZVBhbmVsQ3VycmVudFRhYi5QRVJTT05BTDtcbiAgICBpZiAodGhpcy5zZWxlY3RlZE5hdiAhPT0gc2VsZWN0ZWROYXYpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIuUEVSU09OQUw7XG4gICAgICB0aGlzLnNlbGVjdGVkTmF2ID0gc2VsZWN0ZWROYXY7XG4gICAgICB0aGlzLnNlbGVjdGVkTmF2TW9kdWxlLmVtaXQoc2VsZWN0ZWROYXYpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RlZFRhYkV2ZW50KHNlbGVjdGVkVGFiOiBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkVGFiID0gc2VsZWN0ZWRUYWI7XG4gIH1cblxuICBwdWJsaWMgcGluU2lkZWJhckV2ZW50KGlzUGlubmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc1NpZGVQYW5lbFBpbm5lZC5lbWl0KGlzUGlubmVkKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcyhcbiAgICBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtczogQWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXNcbiAgKTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuY29tcGFueVVzZXJJZHMgPVxuICAgICAgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuY29tcGFueVVzZXJJZHM7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuYWN0aW9uTG9nSWRzID1cbiAgICAgIGFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLmFjdGlvbkxvZ0lkcztcbiAgICB0aGlzLl9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5lbnRpdHlUeXBlQWN0aXZpdHlJZHMgPVxuICAgICAgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZW50aXR5VHlwZUFjdGl2aXR5SWRzO1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnNvcnQgPSBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5zb3J0O1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnVzZXJGaWx0ZXJUeXBlID1cbiAgICAgIGFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnVzZXJGaWx0ZXJUeXBlO1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLmRhdGVGcm9tID0gYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZGF0ZUZyb207XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZGF0ZVRvID0gYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZGF0ZVRvO1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnJlbG9hZEZpbHRlcnMgPVxuICAgICAgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMucmVsb2FkRmlsdGVycztcbiAgICB0aGlzLmFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLmVtaXQodGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEV2ZW50KHNlYXJjaFRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnNlYXJjaCA9IHNlYXJjaFRleHQ7XG4gICAgdGhpcy5hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5lbWl0KHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zKTtcbiAgfVxuXG4gIHB1YmxpYyByZXNldEZpbHRlcnNFdmVudChyZXNldEZpbHRlcnM6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnJlc2V0RmlsdGVycyA9IHJlc2V0RmlsdGVycztcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRGaWx0ZXJzID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb3Blbk5hdkV2ZW50KGlzTmF2T3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuaXNOYXZPcGVuLmVtaXQoaXNOYXZPcGVuKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInNpZGUtcGFuZWwtY29udGFpbmVyLWJveFwiPlxuICA8ZGl2IGNsYXNzPVwic2lkZS1wYW5lbC1jb250YWluZXIgZC1mbGV4IGZsZXgtY29sdW1uXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkTmF2ID09PSBTZWxlY3RlZE1vZHVsZS5BQ1RJVklUWV9MT0dcIj5cbiAgICAgIDxjYS1yaWdodC1zaWRlLXBhbmVsLXRvcC1iYXJcbiAgICAgICAgW3NlbGVjdGVkTW9kdWxlXT1cInNlbGVjdGVkTmF2XCJcbiAgICAgICAgW3VzZXJzRmlsdGVyXT1cInVzZXJzRmlsdGVyXCJcbiAgICAgICAgW21vZHVsZXNGaWx0ZXJdPVwibW9kdWxlc0ZpbHRlclwiXG4gICAgICAgIFthY3Rpb25zRmlsdGVyXT1cImFjdGlvbnNGaWx0ZXJcIlxuICAgICAgICBbcmVzZXRGaWx0ZXJzXT1cInJlc2V0RmlsdGVyc1wiXG4gICAgICAgIChzZWxlY3RlZFRhYik9XCJzZWxlY3RlZFRhYkV2ZW50KCRldmVudClcIlxuICAgICAgICAoYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMpPVwic2V0QWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMoJGV2ZW50KVwiXG4gICAgICA+PC9jYS1yaWdodC1zaWRlLXBhbmVsLXRvcC1iYXI+XG4gICAgICA8Y2EtYWN0aXZpdHktbG9nLWxpc3RcbiAgICAgICAgW2FjdGl2aXR5TG9nTGlzdF09XCJkYXRhXCJcbiAgICAgICAgW3NlbGVjdGVkVGFiXT1cInNlbGVjdGVkVGFiXCJcbiAgICAgICAgKHNlYXJjaFRleHQpPVwic2VhcmNoRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgIChyZXNldEZpbHRlcnMpPVwicmVzZXRGaWx0ZXJzRXZlbnQoJGV2ZW50KVwiXG4gICAgICA+PC9jYS1hY3Rpdml0eS1sb2ctbGlzdD5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxjYS1yaWdodC1zaWRlLXBhbmVsLW1lbnVcbiAgICAgIFtjb21wYW55TGlzdF09XCJjb21wYW5pZXNEYXRhXCJcbiAgICAgIChzZWxlY3RlZE5hdik9XCJzZWxlY3RlZE5hdkV2ZW50KCRldmVudClcIlxuICAgICAgKGlzUGlubmVkKT1cInBpblNpZGViYXJFdmVudCgkZXZlbnQpXCJcbiAgICAgIChpc05hdk9wZW4pPVwib3Blbk5hdkV2ZW50KCRldmVudClcIlxuICAgID48L2NhLXJpZ2h0LXNpZGUtcGFuZWwtbWVudT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2EtcmlnaHQtc2lkZS1wYW5lbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYS1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYS1yaWdodC1zaWRlLXBhbmVsL2NhLXJpZ2h0LXNpZGUtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2EtY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvY2EtcmlnaHQtc2lkZS1wYW5lbC9jYS1yaWdodC1zaWRlLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZFLGFBQWE7QUFDYixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUN6SCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNwRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQUNqSSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxnRkFBZ0YsQ0FBQztBQWFsSSxRQUFRO0FBQ1IsT0FBTyxFQUNMLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsY0FBYyxHQUNmLE1BQU0sU0FBUyxDQUFDOzs7QUFrQmpCLE1BQU0sT0FBTyx5QkFBeUI7SUFoQnRDO1FBaUJTLDZCQUF3QixHQUE0QjtZQUN6RCxjQUFjLEVBQUUsRUFBRTtZQUNsQixZQUFZLEVBQUUsRUFBRTtZQUNoQixxQkFBcUIsRUFBRSxFQUFFO1lBQ3pCLElBQUksRUFBRSxtQkFB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QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sWUFBWSxDQUFDLFNBQWtCO1FBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7K0dBdEZVLHlCQUF5QjttR0FBekIseUJBQXlCLG9mQzVDdEMsNmpEQXVDQSxtTURMSSxZQUFZLGtJQUNaLGdCQUFnQjtnQkFFaEIsYUFBYTtnQkFDYiw2QkFBNkIscUpBQzdCLDBCQUEwQiwwSkFDMUIsK0JBQStCLHFRQUMvQixnQ0FBZ0M7OzRGQUd2Qix5QkFBeUI7a0JBaEJyQyxTQUFTOytCQUNFLHlCQUF5QixjQUd2QixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixnQkFBZ0I7d0JBRWhCLGFBQWE7d0JBQ2IsNkJBQTZCO3dCQUM3QiwwQkFBMEI7d0JBQzFCLCtCQUErQjt3QkFDL0IsZ0NBQWdDO3FCQUNqQzs4QkFtQlEsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksdUJBQXVCO3NCQUFoQyxNQUFNO2dCQUVHLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFFRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vIGNvbXBvbmVudHNcbmltcG9ydCB7IENhUmlnaHRTaWRlUGFuZWxNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NhLXJpZ2h0LXNpZGUtcGFuZWwtbWVudS9jYS1yaWdodC1zaWRlLXBhbmVsLW1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IENhQWN0aXZpdHlMb2dMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vY2EtYWN0aXZpdHktbG9nLWxpc3QvY2EtYWN0aXZpdHktbG9nLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IENhUmlnaHRTaWRlUGFuZWxUb3BCYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtcmlnaHQtc2lkZS1wYW5lbC10b3AtYmFyL2NhLXJpZ2h0LXNpZGUtcGFuZWwtdG9wLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FSaWdodFNpZGVQYW5lbENvbXBhbnlDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2EtcmlnaHQtc2lkZS1wYW5lbC1jb21wYW55L2NhLXJpZ2h0LXNpZGUtcGFuZWwtY29tcGFueS5jb21wb25lbnQnO1xuXG4vLyBtb2RlbHNcbmltcG9ydCB7IEFjdGl2aXR5TG9nSXRlbSB9IGZyb20gJy4uL2NhLWFjdGl2aXR5LWxvZy1saXN0L21vZGVscyc7XG5pbXBvcnQge1xuICBBY3Rpb25GaWx0ZXJJbnB1dERhdGEsXG4gIEFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLFxuICBDb21wYW55LFxuICBDb21wYW55TmF2aWdhdGlvbkRhdGEsXG4gIE1vZHVsZUZpbHRlcklucHV0RGF0YSxcbiAgVXNlckZpbHRlcklucHV0RGF0YSxcbn0gZnJvbSAnLi9tb2RlbHMnO1xuXG4vLyBlbnVtc1xuaW1wb3J0IHtcbiAgQWN0aXZpdHlMb2dTb3J0VHlwZSxcbiAgUmlnaHRTaWRlUGFuZWxDdXJyZW50VGFiLFxuICBTZWxlY3RlZE1vZHVsZSxcbn0gZnJvbSAnLi9lbnVtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jYS1yaWdodC1zaWRlLXBhbmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhLXJpZ2h0LXNpZGUtcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYS1yaWdodC1zaWRlLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcblxuICAgIC8vIENvbXBvbmVudHNcbiAgICBDYVJpZ2h0U2lkZVBhbmVsTWVudUNvbXBvbmVudCxcbiAgICBDYUFjdGl2aXR5TG9nTGlzdENvbXBvbmVudCxcbiAgICBDYVJpZ2h0U2lkZVBhbmVsVG9wQmFyQ29tcG9uZW50LFxuICAgIENhUmlnaHRTaWRlUGFuZWxDb21wYW55Q29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDYVJpZ2h0U2lkZVBhbmVsQ29tcG9uZW50IHtcbiAgcHVibGljIF9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtczogQWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMgPSB7XG4gICAgY29tcGFueVVzZXJJZHM6IFtdLFxuICAgIGFjdGlvbkxvZ0lkczogW10sXG4gICAgZW50aXR5VHlwZUFjdGl2aXR5SWRzOiBbXSxcbiAgICBzb3J0OiBBY3Rpdml0eUxvZ1NvcnRUeXBlLkRFU0NFTkRJTkcsXG4gICAgdXNlckZpbHRlclR5cGU6IFJpZ2h0U2lkZVBhbmVsQ3VycmVudFRhYi5QRVJTT05BTCxcbiAgICBkYXRlRnJvbTogbnVsbCxcbiAgICBkYXRlVG86IG51bGwsXG4gICAgc2VhcmNoOiBudWxsLFxuICB9O1xuICBwdWJsaWMgc2VsZWN0ZWROYXY/OiBTZWxlY3RlZE1vZHVsZTtcbiAgcHVibGljIHNlbGVjdGVkVGFiOiBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIgPVxuICAgIFJpZ2h0U2lkZVBhbmVsQ3VycmVudFRhYi5QRVJTT05BTDtcbiAgcHVibGljIFNlbGVjdGVkTW9kdWxlID0gU2VsZWN0ZWRNb2R1bGU7XG4gIHB1YmxpYyByZXNldEZpbHRlcnM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBjb21wYW5pZXNEYXRhITogQ29tcGFueU5hdmlnYXRpb25EYXRhW107XG4gIEBJbnB1dCgpIGFjdGl2aXR5TG9nRGF0YSE6IEFjdGl2aXR5TG9nSXRlbVtdO1xuICBASW5wdXQoKSBtYWluQ29tcGFueURhdGEhOiBDb21wYW55O1xuICBASW5wdXQoKSB1c2Vyc0ZpbHRlciE6IFVzZXJGaWx0ZXJJbnB1dERhdGFbXTtcbiAgQElucHV0KCkgbW9kdWxlc0ZpbHRlciE6IE1vZHVsZUZpbHRlcklucHV0RGF0YVtdO1xuICBASW5wdXQoKSBhY3Rpb25zRmlsdGVyITogQWN0aW9uRmlsdGVySW5wdXREYXRhW107XG5cbiAgQE91dHB1dCgpIGFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zOiBFdmVudEVtaXR0ZXI8QWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXM+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZE5hdk1vZHVsZTogRXZlbnRFbWl0dGVyPFNlbGVjdGVkTW9kdWxlPiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaXNTaWRlUGFuZWxQaW5uZWQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGlzTmF2T3BlbjogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDb21wYW55SWQ6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBzZWxlY3RlZE5hdkV2ZW50KHNlbGVjdGVkTmF2OiBTZWxlY3RlZE1vZHVsZSk6IHZvaWQge1xuICAgIGlmICghc2VsZWN0ZWROYXYpIHRoaXMuc2VsZWN0ZWRUYWIgPSBSaWdodFNpZGVQYW5lbEN1cnJlbnRUYWIuUEVSU09OQUw7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWROYXYgIT09IHNlbGVjdGVkTmF2KSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gUmlnaHRTaWRlUGFuZWxDdXJyZW50VGFiLlBFUlNPTkFMO1xuICAgICAgdGhpcy5zZWxlY3RlZE5hdiA9IHNlbGVjdGVkTmF2O1xuICAgICAgdGhpcy5zZWxlY3RlZE5hdk1vZHVsZS5lbWl0KHNlbGVjdGVkTmF2KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0ZWRUYWJFdmVudChzZWxlY3RlZFRhYjogUmlnaHRTaWRlUGFuZWxDdXJyZW50VGFiKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZFRhYiA9IHNlbGVjdGVkVGFiO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdGVkVGFiQ29tcGFueUlkRXZlbnQoY29tcGFueUlkOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkQ29tcGFueUlkLmVtaXQoY29tcGFueUlkKTtcbiAgfVxuXG4gIHB1YmxpYyBwaW5TaWRlYmFyRXZlbnQoaXNQaW5uZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzU2lkZVBhbmVsUGlubmVkLmVtaXQoaXNQaW5uZWQpO1xuICB9XG5cbiAgcHVibGljIHNldEFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zKFxuICAgIGFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zOiBBY3Rpdml0eUxvZ0ZpbHRlclBhcmFtc1xuICApOiB2b2lkIHtcbiAgICB0aGlzLl9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5jb21wYW55VXNlcklkcyA9XG4gICAgICBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5jb21wYW55VXNlcklkcztcbiAgICB0aGlzLl9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5hY3Rpb25Mb2dJZHMgPVxuICAgICAgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuYWN0aW9uTG9nSWRzO1xuICAgIHRoaXMuX2FjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLmVudGl0eVR5cGVBY3Rpdml0eUlkcyA9XG4gICAgICBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5lbnRpdHlUeXBlQWN0aXZpdHlJZHM7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuc29ydCA9IGFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLnNvcnQ7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMudXNlckZpbHRlclR5cGUgPVxuICAgICAgYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMudXNlckZpbHRlclR5cGU7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZGF0ZUZyb20gPSBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5kYXRlRnJvbTtcbiAgICB0aGlzLl9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5kYXRlVG8gPSBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5kYXRlVG87XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMucmVsb2FkRmlsdGVycyA9XG4gICAgICBhY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcy5yZWxvYWRGaWx0ZXJzO1xuICAgIHRoaXMuYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuZW1pdCh0aGlzLl9hY3Rpdml0eUxvZ0ZpbHRlclBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoRXZlbnQoc2VhcmNoVGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMuc2VhcmNoID0gc2VhcmNoVGV4dDtcbiAgICB0aGlzLmFjdGl2aXR5TG9nRmlsdGVyUGFyYW1zLmVtaXQodGhpcy5fYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0RmlsdGVyc0V2ZW50KHJlc2V0RmlsdGVyczogYm9vbGVhbikge1xuICAgIHRoaXMucmVzZXRGaWx0ZXJzID0gcmVzZXRGaWx0ZXJzO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldEZpbHRlcnMgPSBmYWxzZTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuTmF2RXZlbnQoaXNOYXZPcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc05hdk9wZW4uZW1pdChpc05hdk9wZW4pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2lkZS1wYW5lbC1jb250YWluZXItYm94XCI+XG4gIDxkaXYgY2xhc3M9XCJzaWRlLXBhbmVsLWNvbnRhaW5lciBkLWZsZXggZmxleC1jb2x1bW5cIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWROYXYgPT09IFNlbGVjdGVkTW9kdWxlLkFDVElWSVRZX0xPR1wiPlxuICAgICAgPGFwcC1jYS1yaWdodC1zaWRlLXBhbmVsLXRvcC1iYXJcbiAgICAgICAgW3NlbGVjdGVkTW9kdWxlXT1cInNlbGVjdGVkTmF2XCJcbiAgICAgICAgW3VzZXJzRmlsdGVyXT1cInVzZXJzRmlsdGVyXCJcbiAgICAgICAgW21vZHVsZXNGaWx0ZXJdPVwibW9kdWxlc0ZpbHRlclwiXG4gICAgICAgIFthY3Rpb25zRmlsdGVyXT1cImFjdGlvbnNGaWx0ZXJcIlxuICAgICAgICBbcmVzZXRGaWx0ZXJzXT1cInJlc2V0RmlsdGVyc1wiXG4gICAgICAgIChzZWxlY3RlZFRhYik9XCJzZWxlY3RlZFRhYkV2ZW50KCRldmVudClcIlxuICAgICAgICAoYWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMpPVwic2V0QWN0aXZpdHlMb2dGaWx0ZXJQYXJhbXMoJGV2ZW50KVwiXG4gICAgICA+PC9hcHAtY2EtcmlnaHQtc2lkZS1wYW5lbC10b3AtYmFyPlxuICAgICAgPGFwcC1jYS1hY3Rpdml0eS1sb2ctbGlzdFxuICAgICAgICBbYWN0aXZpdHlMb2dMaXN0XT1cImFjdGl2aXR5TG9nRGF0YVwiXG4gICAgICAgIFtzZWxlY3RlZFRhYl09XCJzZWxlY3RlZFRhYlwiXG4gICAgICAgIChzZWFyY2hUZXh0KT1cInNlYXJjaEV2ZW50KCRldmVudClcIlxuICAgICAgICAocmVzZXRGaWx0ZXJzKT1cInJlc2V0RmlsdGVyc0V2ZW50KCRldmVudClcIlxuICAgICAgPjwvYXBwLWNhLWFjdGl2aXR5LWxvZy1saXN0PlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkTmF2ID09PSBTZWxlY3RlZE1vZHVsZS5DT01QQU5ZX0lORk9cIj5cbiAgICAgIDxhcHAtY2EtcmlnaHQtc2lkZS1wYW5lbC10b3AtYmFyXG4gICAgICAgIFtzZWxlY3RlZE1vZHVsZV09XCJzZWxlY3RlZE5hdlwiXG4gICAgICAgIFtjb21wYW55TGlzdF09XCJjb21wYW5pZXNEYXRhXCJcbiAgICAgICAgKHNlbGVjdGVkVGFiQ29tcGFueUlkKT1cInNlbGVjdGVkVGFiQ29tcGFueUlkRXZlbnQoJGV2ZW50KVwiXG4gICAgICA+PC9hcHAtY2EtcmlnaHQtc2lkZS1wYW5lbC10b3AtYmFyPlxuICAgICAgPGFwcC1jYS1yaWdodC1zaWRlLXBhbmVsLWNvbXBhbnlcbiAgICAgICAgW2NvbXBhbnldPVwibWFpbkNvbXBhbnlEYXRhXCJcbiAgICAgID48L2FwcC1jYS1yaWdodC1zaWRlLXBhbmVsLWNvbXBhbnk+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8YXBwLWNhLXJpZ2h0LXNpZGUtcGFuZWwtbWVudVxuICAgICAgW2NvbXBhbnlMaXN0XT1cImNvbXBhbmllc0RhdGFcIlxuICAgICAgKHNlbGVjdGVkTmF2KT1cInNlbGVjdGVkTmF2RXZlbnQoJGV2ZW50KVwiXG4gICAgICAoaXNQaW5uZWQpPVwicGluU2lkZWJhckV2ZW50KCRldmVudClcIlxuICAgICAgKGlzTmF2T3Blbik9XCJvcGVuTmF2RXZlbnQoJGV2ZW50KVwiXG4gICAgPjwvYXBwLWNhLXJpZ2h0LXNpZGUtcGFuZWwtbWVudT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|