@datarailsshared/datarailsshared 1.5.298 → 1.5.300
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/datarailsshared-datarailsshared-1.5.300.tgz +0 -0
- package/esm2022/lib/dr-inputs/dr-link/dr-link.component.mjs +4 -3
- package/esm2022/lib/dr-inputs/dr-slider/dr-slider.component.mjs +53 -0
- package/esm2022/lib/image-cropper/dr-image-cropper-canvas.service.mjs +78 -0
- package/esm2022/lib/image-cropper/dr-image-cropper.component.mjs +94 -0
- package/esm2022/lib/image-cropper/dr-image-cropper.types.mjs +6 -0
- package/esm2022/public-api.mjs +4 -1
- package/fesm2022/datarailsshared-datarailsshared.mjs +219 -3
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -1
- package/lib/dr-inputs/dr-link/dr-link.component.d.ts +2 -1
- package/lib/dr-inputs/dr-slider/dr-slider.component.d.ts +18 -0
- package/lib/image-cropper/dr-image-cropper-canvas.service.d.ts +20 -0
- package/lib/image-cropper/dr-image-cropper.component.d.ts +28 -0
- package/lib/image-cropper/dr-image-cropper.types.d.ts +9 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
- package/datarailsshared-datarailsshared-1.5.298.tgz +0 -0
|
Binary file
|
|
@@ -4,6 +4,7 @@ export var LinkTheme;
|
|
|
4
4
|
(function (LinkTheme) {
|
|
5
5
|
LinkTheme["DEFAULT"] = "DEFAULT";
|
|
6
6
|
LinkTheme["DEFAULT_UNDERLINE"] = "DEFAULT_UNDERLINE";
|
|
7
|
+
LinkTheme["GRAY_UNDERLINE"] = "GRAY_UNDERLINE";
|
|
7
8
|
})(LinkTheme || (LinkTheme = {}));
|
|
8
9
|
export const DEFAULT_LINK_FONT_SIZE = '14px';
|
|
9
10
|
export const DEFAULT_LINK_FONT_WEIGHT = 400;
|
|
@@ -14,11 +15,11 @@ export class DrLinkComponent {
|
|
|
14
15
|
this.theme = LinkTheme.DEFAULT;
|
|
15
16
|
}
|
|
16
17
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrLinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrLinkComponent, selector: "dr-link", inputs: { link: "link", fontSize: "fontSize", fontWeight: "fontWeight", theme: "theme" }, ngImport: i0, template: "<a class=\"dr-link\"\n [class]=\"theme\"\n [href]=\"link\"\n [style.font-weight]=\"fontWeight\"\n [style.font-size]=\"fontSize\">\n <ng-content></ng-content>\n</a>\n", styles: [".dr-link{font-family:Poppins,sans-serif;font-style:normal;font-size:14px;font-weight:400;line-height:22px;color:#4646ce}.dr-link.DEFAULT{text-decoration:none!important}.dr-link.DEFAULT_UNDERLINE{text-decoration:underline!important}\n"] }); }
|
|
18
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrLinkComponent, selector: "dr-link", inputs: { link: "link", fontSize: "fontSize", fontWeight: "fontWeight", theme: "theme" }, ngImport: i0, template: "<a class=\"dr-link\"\n [class]=\"theme\"\n [href]=\"link\"\n [style.font-weight]=\"fontWeight\"\n [style.font-size]=\"fontSize\">\n <ng-content></ng-content>\n</a>\n", styles: [".dr-link{font-family:Poppins,sans-serif;font-style:normal;font-size:14px;font-weight:400;line-height:22px;color:#4646ce}.dr-link.DEFAULT{text-decoration:none!important}.dr-link.DEFAULT_UNDERLINE{text-decoration:underline!important}.dr-link.GRAY_UNDERLINE{color:#6d6e6f;text-decoration:underline!important}\n"] }); }
|
|
18
19
|
}
|
|
19
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrLinkComponent, decorators: [{
|
|
20
21
|
type: Component,
|
|
21
|
-
args: [{ selector: 'dr-link', template: "<a class=\"dr-link\"\n [class]=\"theme\"\n [href]=\"link\"\n [style.font-weight]=\"fontWeight\"\n [style.font-size]=\"fontSize\">\n <ng-content></ng-content>\n</a>\n", styles: [".dr-link{font-family:Poppins,sans-serif;font-style:normal;font-size:14px;font-weight:400;line-height:22px;color:#4646ce}.dr-link.DEFAULT{text-decoration:none!important}.dr-link.DEFAULT_UNDERLINE{text-decoration:underline!important}\n"] }]
|
|
22
|
+
args: [{ selector: 'dr-link', template: "<a class=\"dr-link\"\n [class]=\"theme\"\n [href]=\"link\"\n [style.font-weight]=\"fontWeight\"\n [style.font-size]=\"fontSize\">\n <ng-content></ng-content>\n</a>\n", styles: [".dr-link{font-family:Poppins,sans-serif;font-style:normal;font-size:14px;font-weight:400;line-height:22px;color:#4646ce}.dr-link.DEFAULT{text-decoration:none!important}.dr-link.DEFAULT_UNDERLINE{text-decoration:underline!important}.dr-link.GRAY_UNDERLINE{color:#6d6e6f;text-decoration:underline!important}\n"] }]
|
|
22
23
|
}], propDecorators: { link: [{
|
|
23
24
|
type: Input,
|
|
24
25
|
args: [{ required: true }]
|
|
@@ -29,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
29
30
|
}], theme: [{
|
|
30
31
|
type: Input
|
|
31
32
|
}] } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItbGluay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZHItbGluay9kci1saW5rLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kci1saW5rL2RyLWxpbmsuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRWpELE1BQU0sQ0FBTixJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDakIsZ0NBQW1CLENBQUE7SUFDbkIsb0RBQXVDLENBQUE7SUFDdkMsOENBQWlDLENBQUE7QUFDckMsQ0FBQyxFQUpXLFNBQVMsS0FBVCxTQUFTLFFBSXBCO0FBRUQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsTUFBZSxDQUFDO0FBQ3RELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQVksQ0FBQztBQU9yRCxNQUFNLE9BQU8sZUFBZTtJQUw1QjtRQU9hLGFBQVEsR0FBVyxzQkFBc0IsQ0FBQztRQUMxQyxlQUFVLEdBQVcsd0JBQXdCLENBQUM7UUFDOUMsVUFBSyxHQUFjLFNBQVMsQ0FBQyxPQUFPLENBQUM7S0FDakQ7a0lBTFksZUFBZTtzSEFBZixlQUFlLHlJQ2hCNUIsa0xBT0E7OzRGRFNhLGVBQWU7a0JBTDNCLFNBQVM7K0JBQ0UsU0FBUzs4QkFLVSxJQUFJO3NCQUE5QixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDaEIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGVudW0gTGlua1RoZW1lIHtcbiAgICBERUZBVUxUID0gJ0RFRkFVTFQnLFxuICAgIERFRkFVTFRfVU5ERVJMSU5FID0gJ0RFRkFVTFRfVU5ERVJMSU5FJyxcbiAgICBHUkFZX1VOREVSTElORSA9ICdHUkFZX1VOREVSTElORScsXG59XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0xJTktfRk9OVF9TSVpFID0gJzE0cHgnIGFzIGNvbnN0O1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTElOS19GT05UX1dFSUdIVCA9IDQwMCBhcyBjb25zdDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZHItbGluaycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kci1saW5rLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHItbGluay5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERyTGlua0NvbXBvbmVudCB7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgbGluazogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGZvbnRTaXplOiBzdHJpbmcgPSBERUZBVUxUX0xJTktfRk9OVF9TSVpFO1xuICAgIEBJbnB1dCgpIGZvbnRXZWlnaHQ6IG51bWJlciA9IERFRkFVTFRfTElOS19GT05UX1dFSUdIVDtcbiAgICBASW5wdXQoKSB0aGVtZTogTGlua1RoZW1lID0gTGlua1RoZW1lLkRFRkFVTFQ7XG59XG4iLCI8YSBjbGFzcz1cImRyLWxpbmtcIlxuICAgW2NsYXNzXT1cInRoZW1lXCJcbiAgIFtocmVmXT1cImxpbmtcIlxuICAgW3N0eWxlLmZvbnQtd2VpZ2h0XT1cImZvbnRXZWlnaHRcIlxuICAgW3N0eWxlLmZvbnQtc2l6ZV09XCJmb250U2l6ZVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvYT5cbiJdfQ==
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class DrSliderComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.max = 100;
|
|
7
|
+
this.min = 1;
|
|
8
|
+
this.step = 1;
|
|
9
|
+
this.rangeValue = 1;
|
|
10
|
+
this.onChange = () => {
|
|
11
|
+
};
|
|
12
|
+
this.onTouched = () => {
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
registerOnChange(fn) {
|
|
16
|
+
this.onChange = fn;
|
|
17
|
+
}
|
|
18
|
+
registerOnTouched(fn) {
|
|
19
|
+
this.onTouched = fn;
|
|
20
|
+
}
|
|
21
|
+
setDisabledState(isDisabled) {
|
|
22
|
+
this.disabled = isDisabled;
|
|
23
|
+
}
|
|
24
|
+
writeValue(value) {
|
|
25
|
+
this.rangeValue = value;
|
|
26
|
+
}
|
|
27
|
+
setValue(event) {
|
|
28
|
+
this.writeValue(event.target.value);
|
|
29
|
+
this.onChange(this.rangeValue);
|
|
30
|
+
this.onTouched();
|
|
31
|
+
}
|
|
32
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrSliderComponent, isStandalone: true, selector: "dr-slider", inputs: { disabled: "disabled", max: "max", min: "min", step: "step", rangeValue: "rangeValue" }, providers: [
|
|
34
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: DrSliderComponent, multi: true }
|
|
35
|
+
], ngImport: i0, template: "<input type=\"range\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [disabled]=\"disabled\"\n [value]=\"rangeValue\"\n (change)=\"setValue($event)\"\n/>\n", styles: ["input[type=range]{appearance:none;background:transparent;cursor:pointer}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background-color:#dfe0e3}input[type=range]::-webkit-slider-thumb{appearance:none;margin-top:-5px;height:14px;width:14px;border-radius:14px;background-color:#4646ce}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrSliderComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'dr-slider', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
40
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: DrSliderComponent, multi: true }
|
|
41
|
+
], standalone: true, template: "<input type=\"range\"\n [min]=\"min\"\n [max]=\"max\"\n [step]=\"step\"\n [disabled]=\"disabled\"\n [value]=\"rangeValue\"\n (change)=\"setValue($event)\"\n/>\n", styles: ["input[type=range]{appearance:none;background:transparent;cursor:pointer}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background-color:#dfe0e3}input[type=range]::-webkit-slider-thumb{appearance:none;margin-top:-5px;height:14px;width:14px;border-radius:14px;background-color:#4646ce}\n"] }]
|
|
42
|
+
}], propDecorators: { disabled: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], max: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], min: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], step: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], rangeValue: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kci1zbGlkZXIvZHItc2xpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kci1zbGlkZXIvZHItc2xpZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFZekUsTUFBTSxPQUFPLGlCQUFpQjtJQVY5QjtRQVlhLFFBQUcsR0FBVyxHQUFHLENBQUM7UUFDbEIsUUFBRyxHQUFXLENBQUMsQ0FBQztRQUNoQixTQUFJLEdBQVcsQ0FBQyxDQUFDO1FBQ2pCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFFeEIsYUFBUSxHQUE0QixHQUFHLEVBQUU7UUFDakQsQ0FBQyxDQUFDO1FBQ00sY0FBUyxHQUFlLEdBQUcsRUFBRTtRQUNyQyxDQUFDLENBQUM7S0F1Qkw7SUFyQkcsZ0JBQWdCLENBQUMsRUFBTztRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSztRQUNWLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztrSUFoQ1EsaUJBQWlCO3NIQUFqQixpQkFBaUIsMEpBTGY7WUFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtTQUM5RSwwQkNWTCxzTUFRQTs7NEZES2EsaUJBQWlCO2tCQVY3QixTQUFTOytCQUNJLFdBQVcsbUJBR0osdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLG1CQUFtQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7cUJBQzlFLGNBQ1csSUFBSTs4QkFHUCxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLXNsaWRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLXNsaWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItc2xpZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBEclNsaWRlckNvbXBvbmVudCwgbXVsdGk6IHRydWUgfVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRHJTbGlkZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbWF4OiBudW1iZXIgPSAxMDA7XG4gICAgQElucHV0KCkgbWluOiBudW1iZXIgPSAxO1xuICAgIEBJbnB1dCgpIHN0ZXA6IG51bWJlciA9IDE7XG4gICAgQElucHV0KCkgcmFuZ2VWYWx1ZTogbnVtYmVyID0gMTtcblxuICAgIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogbnVtYmVyKSA9PiB2b2lkID0gKCkgPT4ge1xuICAgIH07XG4gICAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7XG4gICAgfTtcblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yYW5nZVZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgc2V0VmFsdWUoZXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5yYW5nZVZhbHVlKTtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG59XG4iLCI8aW5wdXQgdHlwZT1cInJhbmdlXCJcbiAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgW21heF09XCJtYXhcIlxuICAgICAgIFtzdGVwXT1cInN0ZXBcIlxuICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgW3ZhbHVlXT1cInJhbmdlVmFsdWVcIlxuICAgICAgIChjaGFuZ2UpPVwic2V0VmFsdWUoJGV2ZW50KVwiXG4vPlxuIl19
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { CROP_IMAGE_MODES } from './dr-image-cropper.types';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class DrImageCropperCanvasService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.ALPHA_FOR_SHADOW = 0.2;
|
|
7
|
+
// this param means that a side of a white square is half of a side of a canvas
|
|
8
|
+
this.CROP_AREA_PROPORTION = 2;
|
|
9
|
+
this.RECTANGULAR_SHADOW_WIDTH = 30;
|
|
10
|
+
this.RECTANGULAR_SHADOW_HEIGHT = 70;
|
|
11
|
+
}
|
|
12
|
+
drawShape(canvasSize, cropMode, zoomLevel, htmlImageElement) {
|
|
13
|
+
this.clearCanvas(canvasSize);
|
|
14
|
+
this.drawImageByZoom(canvasSize, zoomLevel, htmlImageElement);
|
|
15
|
+
this.drawShadow(cropMode, canvasSize);
|
|
16
|
+
}
|
|
17
|
+
getCoordinates(cropMode, canvasSize) {
|
|
18
|
+
return cropMode === CROP_IMAGE_MODES.SQUARE
|
|
19
|
+
? this.getCoordinatesForSquare(canvasSize)
|
|
20
|
+
: this.getCoordinatesForRectangle(canvasSize);
|
|
21
|
+
}
|
|
22
|
+
getCoordinatesForSquare(canvasSize) {
|
|
23
|
+
const shadowLength = canvasSize / (this.CROP_AREA_PROPORTION * 2);
|
|
24
|
+
const bottomPosition = canvasSize - shadowLength;
|
|
25
|
+
return [shadowLength, shadowLength, bottomPosition, bottomPosition].join(',');
|
|
26
|
+
}
|
|
27
|
+
getCoordinatesForRectangle(canvasSize) {
|
|
28
|
+
return [
|
|
29
|
+
this.RECTANGULAR_SHADOW_WIDTH,
|
|
30
|
+
this.RECTANGULAR_SHADOW_HEIGHT,
|
|
31
|
+
canvasSize - this.RECTANGULAR_SHADOW_WIDTH,
|
|
32
|
+
canvasSize - this.RECTANGULAR_SHADOW_HEIGHT
|
|
33
|
+
].join(',');
|
|
34
|
+
}
|
|
35
|
+
drawShadow(cropMode, canvasSize) {
|
|
36
|
+
this.ctx.globalAlpha = this.ALPHA_FOR_SHADOW;
|
|
37
|
+
this.ctx.fillStyle = 'black';
|
|
38
|
+
if (cropMode === CROP_IMAGE_MODES.SQUARE) {
|
|
39
|
+
this.drawSquareShadow(canvasSize);
|
|
40
|
+
}
|
|
41
|
+
else if (cropMode === CROP_IMAGE_MODES.RECTANGLE) {
|
|
42
|
+
this.drawRectangularShadow(canvasSize);
|
|
43
|
+
}
|
|
44
|
+
this.ctx.globalAlpha = 1;
|
|
45
|
+
}
|
|
46
|
+
drawSquareShadow(canvasSize) {
|
|
47
|
+
const shadowLength = canvasSize / (this.CROP_AREA_PROPORTION * 2);
|
|
48
|
+
this.ctx.fillRect(0, 0, shadowLength, canvasSize);
|
|
49
|
+
this.ctx.fillRect(canvasSize - shadowLength, 0, shadowLength, canvasSize);
|
|
50
|
+
this.ctx.fillRect(shadowLength, 0, 2 * shadowLength, shadowLength);
|
|
51
|
+
this.ctx.fillRect(shadowLength, canvasSize - shadowLength, 2 * shadowLength, shadowLength);
|
|
52
|
+
}
|
|
53
|
+
drawRectangularShadow(canvasSize) {
|
|
54
|
+
this.ctx.fillRect(0, 0, this.RECTANGULAR_SHADOW_WIDTH, canvasSize);
|
|
55
|
+
this.ctx.fillRect(canvasSize - this.RECTANGULAR_SHADOW_WIDTH, 0, this.RECTANGULAR_SHADOW_WIDTH, canvasSize);
|
|
56
|
+
this.ctx.fillRect(this.RECTANGULAR_SHADOW_WIDTH, 0, canvasSize - 2 * this.RECTANGULAR_SHADOW_WIDTH, this.RECTANGULAR_SHADOW_HEIGHT);
|
|
57
|
+
this.ctx.fillRect(this.RECTANGULAR_SHADOW_WIDTH, canvasSize - this.RECTANGULAR_SHADOW_HEIGHT, canvasSize - 2 * this.RECTANGULAR_SHADOW_WIDTH, this.RECTANGULAR_SHADOW_HEIGHT);
|
|
58
|
+
}
|
|
59
|
+
drawImageByZoom(canvasSize, zoomLevel, htmlImageElement) {
|
|
60
|
+
const maxImageDimension = Math.max(htmlImageElement.width, htmlImageElement.height);
|
|
61
|
+
const proportion = canvasSize / (this.CROP_AREA_PROPORTION * maxImageDimension);
|
|
62
|
+
const suitableWidth = htmlImageElement.width * proportion * zoomLevel;
|
|
63
|
+
const suitableHeight = htmlImageElement.height * proportion * zoomLevel;
|
|
64
|
+
const rectX = (canvasSize - suitableWidth) / 2;
|
|
65
|
+
const rectY = (canvasSize - suitableHeight) / 2;
|
|
66
|
+
this.ctx.drawImage(htmlImageElement, rectX, rectY, suitableWidth, suitableHeight);
|
|
67
|
+
}
|
|
68
|
+
clearCanvas(canvasSize) {
|
|
69
|
+
this.ctx.fillStyle = 'white';
|
|
70
|
+
this.ctx.fillRect(0, 0, canvasSize, canvasSize);
|
|
71
|
+
}
|
|
72
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrImageCropperCanvasService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
73
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrImageCropperCanvasService }); }
|
|
74
|
+
}
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrImageCropperCanvasService, decorators: [{
|
|
76
|
+
type: Injectable
|
|
77
|
+
}] });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItaW1hZ2UtY3JvcHBlci1jYW52YXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2ltYWdlLWNyb3BwZXIvZHItaW1hZ2UtY3JvcHBlci1jYW52YXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUc1RCxNQUFNLE9BQU8sMkJBQTJCO0lBRHhDO1FBSXFCLHFCQUFnQixHQUFHLEdBQUcsQ0FBQztRQUN4QywrRUFBK0U7UUFDOUQseUJBQW9CLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLDZCQUF3QixHQUFHLEVBQUUsQ0FBQztRQUM5Qiw4QkFBeUIsR0FBRyxFQUFFLENBQUM7S0FpRm5EO0lBL0VHLFNBQVMsQ0FBQyxVQUFrQixFQUFFLFFBQTBCLEVBQUUsU0FBaUIsRUFBRSxnQkFBa0M7UUFDM0csSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQTBCLEVBQUUsVUFBa0I7UUFDekQsT0FBTyxRQUFRLEtBQUssZ0JBQWdCLENBQUMsTUFBTTtZQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQztZQUMxQyxDQUFDLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxVQUFrQjtRQUM5QyxNQUFNLFlBQVksR0FBRyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbEUsTUFBTSxjQUFjLEdBQUcsVUFBVSxHQUFHLFlBQVksQ0FBQztRQUNqRCxPQUFPLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFTywwQkFBMEIsQ0FBQyxVQUFrQjtRQUNqRCxPQUFPO1lBQ0gsSUFBSSxDQUFDLHdCQUF3QjtZQUM3QixJQUFJLENBQUMseUJBQXlCO1lBQzlCLFVBQVUsR0FBRyxJQUFJLENBQUMsd0JBQXdCO1lBQzFDLFVBQVUsR0FBRyxJQUFJLENBQUMseUJBQXlCO1NBQzlDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLENBQUM7SUFFTyxVQUFVLENBQUMsUUFBMEIsRUFBRSxVQUFrQjtRQUM3RCxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDN0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDO1FBQzdCLElBQUksUUFBUSxLQUFLLGdCQUFnQixDQUFDLE1BQU0sRUFBRTtZQUN0QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUE7U0FDcEM7YUFBTSxJQUFJLFFBQVEsS0FBSyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUU7WUFDaEQsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzFDO1FBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxVQUFrQjtRQUN2QyxNQUFNLFlBQVksR0FBRyxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLFlBQVksRUFBRSxDQUFDLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsVUFBVSxHQUFHLFlBQVksRUFBRSxDQUFDLEdBQUcsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxVQUFrQjtRQUM1QyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQ2IsSUFBSSxDQUFDLHdCQUF3QixFQUM3QixDQUFDLEVBQ0QsVUFBVSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsd0JBQXdCLEVBQzlDLElBQUksQ0FBQyx5QkFBeUIsQ0FDakMsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUNiLElBQUksQ0FBQyx3QkFBd0IsRUFDN0IsVUFBVSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsRUFDM0MsVUFBVSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsd0JBQXdCLEVBQzlDLElBQUksQ0FBQyx5QkFBeUIsQ0FDakMsQ0FBQztJQUNOLENBQUM7SUFFTyxlQUFlLENBQUMsVUFBa0IsRUFBRSxTQUFpQixFQUFFLGdCQUFrQztRQUM3RixNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BGLE1BQU0sVUFBVSxHQUFHLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLEtBQUssR0FBRyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQ3RFLE1BQU0sY0FBYyxHQUFHLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBRXhFLE1BQU0sS0FBSyxHQUFHLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQyxNQUFNLEtBQUssR0FBRyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVPLFdBQVcsQ0FBQyxVQUFrQjtRQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDcEQsQ0FBQztrSUF2RlEsMkJBQTJCO3NJQUEzQiwyQkFBMkI7OzRGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDUk9QX0lNQUdFX01PREVTIH0gZnJvbSAnLi9kci1pbWFnZS1jcm9wcGVyLnR5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERySW1hZ2VDcm9wcGVyQ2FudmFzU2VydmljZSB7XG4gICAgY3R4OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQ7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IEFMUEhBX0ZPUl9TSEFET1cgPSAwLjI7XG4gICAgLy8gdGhpcyBwYXJhbSBtZWFucyB0aGF0IGEgc2lkZSBvZiBhIHdoaXRlIHNxdWFyZSBpcyBoYWxmIG9mIGEgc2lkZSBvZiBhIGNhbnZhc1xuICAgIHByaXZhdGUgcmVhZG9ubHkgQ1JPUF9BUkVBX1BST1BPUlRJT04gPSAyO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgUkVDVEFOR1VMQVJfU0hBRE9XX1dJRFRIID0gMzA7XG4gICAgcHJpdmF0ZSByZWFkb25seSBSRUNUQU5HVUxBUl9TSEFET1dfSEVJR0hUID0gNzA7XG5cbiAgICBkcmF3U2hhcGUoY2FudmFzU2l6ZTogbnVtYmVyLCBjcm9wTW9kZTogQ1JPUF9JTUFHRV9NT0RFUywgem9vbUxldmVsOiBudW1iZXIsIGh0bWxJbWFnZUVsZW1lbnQ6IEhUTUxJbWFnZUVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbGVhckNhbnZhcyhjYW52YXNTaXplKTtcbiAgICAgICAgdGhpcy5kcmF3SW1hZ2VCeVpvb20oY2FudmFzU2l6ZSwgem9vbUxldmVsLCBodG1sSW1hZ2VFbGVtZW50KTtcbiAgICAgICAgdGhpcy5kcmF3U2hhZG93KGNyb3BNb2RlLCBjYW52YXNTaXplKTtcbiAgICB9XG5cbiAgICBnZXRDb29yZGluYXRlcyhjcm9wTW9kZTogQ1JPUF9JTUFHRV9NT0RFUywgY2FudmFzU2l6ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGNyb3BNb2RlID09PSBDUk9QX0lNQUdFX01PREVTLlNRVUFSRVxuICAgICAgICAgICAgPyB0aGlzLmdldENvb3JkaW5hdGVzRm9yU3F1YXJlKGNhbnZhc1NpemUpXG4gICAgICAgICAgICA6IHRoaXMuZ2V0Q29vcmRpbmF0ZXNGb3JSZWN0YW5nbGUoY2FudmFzU2l6ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDb29yZGluYXRlc0ZvclNxdWFyZShjYW52YXNTaXplOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBzaGFkb3dMZW5ndGggPSBjYW52YXNTaXplIC8gKHRoaXMuQ1JPUF9BUkVBX1BST1BPUlRJT04gKiAyKTtcbiAgICAgICAgY29uc3QgYm90dG9tUG9zaXRpb24gPSBjYW52YXNTaXplIC0gc2hhZG93TGVuZ3RoO1xuICAgICAgICByZXR1cm4gW3NoYWRvd0xlbmd0aCwgc2hhZG93TGVuZ3RoLCBib3R0b21Qb3NpdGlvbiwgYm90dG9tUG9zaXRpb25dLmpvaW4oJywnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENvb3JkaW5hdGVzRm9yUmVjdGFuZ2xlKGNhbnZhc1NpemU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19XSURUSCxcbiAgICAgICAgICAgIHRoaXMuUkVDVEFOR1VMQVJfU0hBRE9XX0hFSUdIVCxcbiAgICAgICAgICAgIGNhbnZhc1NpemUgLSB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19XSURUSCxcbiAgICAgICAgICAgIGNhbnZhc1NpemUgLSB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19IRUlHSFRcbiAgICAgICAgXS5qb2luKCcsJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkcmF3U2hhZG93KGNyb3BNb2RlOiBDUk9QX0lNQUdFX01PREVTLCBjYW52YXNTaXplOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdHguZ2xvYmFsQWxwaGEgPSB0aGlzLkFMUEhBX0ZPUl9TSEFET1c7XG4gICAgICAgIHRoaXMuY3R4LmZpbGxTdHlsZSA9ICdibGFjayc7XG4gICAgICAgIGlmIChjcm9wTW9kZSA9PT0gQ1JPUF9JTUFHRV9NT0RFUy5TUVVBUkUpIHtcbiAgICAgICAgICAgIHRoaXMuZHJhd1NxdWFyZVNoYWRvdyhjYW52YXNTaXplKVxuICAgICAgICB9IGVsc2UgaWYgKGNyb3BNb2RlID09PSBDUk9QX0lNQUdFX01PREVTLlJFQ1RBTkdMRSkge1xuICAgICAgICAgICAgdGhpcy5kcmF3UmVjdGFuZ3VsYXJTaGFkb3coY2FudmFzU2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdHguZ2xvYmFsQWxwaGEgPSAxO1xuICAgIH1cblxuICAgIHByaXZhdGUgZHJhd1NxdWFyZVNoYWRvdyhjYW52YXNTaXplOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2hhZG93TGVuZ3RoID0gY2FudmFzU2l6ZSAvICh0aGlzLkNST1BfQVJFQV9QUk9QT1JUSU9OICogMik7XG4gICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KDAsIDAsIHNoYWRvd0xlbmd0aCwgY2FudmFzU2l6ZSk7XG4gICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KGNhbnZhc1NpemUgLSBzaGFkb3dMZW5ndGgsIDAsIHNoYWRvd0xlbmd0aCwgY2FudmFzU2l6ZSk7XG4gICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KHNoYWRvd0xlbmd0aCwgMCwgMiAqIHNoYWRvd0xlbmd0aCwgc2hhZG93TGVuZ3RoKTtcbiAgICAgICAgdGhpcy5jdHguZmlsbFJlY3Qoc2hhZG93TGVuZ3RoLCBjYW52YXNTaXplIC0gc2hhZG93TGVuZ3RoLCAyICogc2hhZG93TGVuZ3RoLCBzaGFkb3dMZW5ndGgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZHJhd1JlY3Rhbmd1bGFyU2hhZG93KGNhbnZhc1NpemU6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmN0eC5maWxsUmVjdCgwLCAwLCB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19XSURUSCwgY2FudmFzU2l6ZSk7XG4gICAgICAgIHRoaXMuY3R4LmZpbGxSZWN0KGNhbnZhc1NpemUgLSB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19XSURUSCwgMCwgdGhpcy5SRUNUQU5HVUxBUl9TSEFET1dfV0lEVEgsIGNhbnZhc1NpemUpO1xuICAgICAgICB0aGlzLmN0eC5maWxsUmVjdChcbiAgICAgICAgICAgIHRoaXMuUkVDVEFOR1VMQVJfU0hBRE9XX1dJRFRILFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICAgIGNhbnZhc1NpemUgLSAyICogdGhpcy5SRUNUQU5HVUxBUl9TSEFET1dfV0lEVEgsXG4gICAgICAgICAgICB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19IRUlHSFRcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5jdHguZmlsbFJlY3QoXG4gICAgICAgICAgICB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19XSURUSCxcbiAgICAgICAgICAgIGNhbnZhc1NpemUgLSB0aGlzLlJFQ1RBTkdVTEFSX1NIQURPV19IRUlHSFQsXG4gICAgICAgICAgICBjYW52YXNTaXplIC0gMiAqIHRoaXMuUkVDVEFOR1VMQVJfU0hBRE9XX1dJRFRILFxuICAgICAgICAgICAgdGhpcy5SRUNUQU5HVUxBUl9TSEFET1dfSEVJR0hUXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkcmF3SW1hZ2VCeVpvb20oY2FudmFzU2l6ZTogbnVtYmVyLCB6b29tTGV2ZWw6IG51bWJlciwgaHRtbEltYWdlRWxlbWVudDogSFRNTEltYWdlRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtYXhJbWFnZURpbWVuc2lvbiA9IE1hdGgubWF4KGh0bWxJbWFnZUVsZW1lbnQud2lkdGgsIGh0bWxJbWFnZUVsZW1lbnQuaGVpZ2h0KTtcbiAgICAgICAgY29uc3QgcHJvcG9ydGlvbiA9IGNhbnZhc1NpemUgLyAodGhpcy5DUk9QX0FSRUFfUFJPUE9SVElPTiAqIG1heEltYWdlRGltZW5zaW9uKTtcbiAgICAgICAgY29uc3Qgc3VpdGFibGVXaWR0aCA9IGh0bWxJbWFnZUVsZW1lbnQud2lkdGggKiBwcm9wb3J0aW9uICogem9vbUxldmVsO1xuICAgICAgICBjb25zdCBzdWl0YWJsZUhlaWdodCA9IGh0bWxJbWFnZUVsZW1lbnQuaGVpZ2h0ICogcHJvcG9ydGlvbiAqIHpvb21MZXZlbDtcblxuICAgICAgICBjb25zdCByZWN0WCA9IChjYW52YXNTaXplIC0gc3VpdGFibGVXaWR0aCkgLyAyO1xuICAgICAgICBjb25zdCByZWN0WSA9IChjYW52YXNTaXplIC0gc3VpdGFibGVIZWlnaHQpIC8gMjtcblxuICAgICAgICB0aGlzLmN0eC5kcmF3SW1hZ2UoaHRtbEltYWdlRWxlbWVudCwgcmVjdFgsIHJlY3RZLCBzdWl0YWJsZVdpZHRoLCBzdWl0YWJsZUhlaWdodCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhckNhbnZhcyhjYW52YXNTaXplOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jdHguZmlsbFN0eWxlID0gJ3doaXRlJztcbiAgICAgICAgdGhpcy5jdHguZmlsbFJlY3QoMCwgMCwgY2FudmFzU2l6ZSwgY2FudmFzU2l6ZSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { DrSliderComponent } from '../dr-inputs/dr-slider/dr-slider.component';
|
|
4
|
+
import { CROP_IMAGE_MODES } from './dr-image-cropper.types';
|
|
5
|
+
import { DrInputsModule } from '../dr-inputs/dr-inputs.module';
|
|
6
|
+
import { DrImageCropperCanvasService } from './dr-image-cropper-canvas.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "./dr-image-cropper-canvas.service";
|
|
9
|
+
import * as i2 from "@angular/forms";
|
|
10
|
+
import * as i3 from "../dr-inputs/button/button.component";
|
|
11
|
+
export class DrImageCropperComponent {
|
|
12
|
+
constructor(canvasService) {
|
|
13
|
+
this.canvasService = canvasService;
|
|
14
|
+
this.maxZoom = 10;
|
|
15
|
+
this.minZoom = 0.5;
|
|
16
|
+
this.zoomStep = 0.1;
|
|
17
|
+
this.zoomLevel = 1;
|
|
18
|
+
this.cropChanged = new EventEmitter();
|
|
19
|
+
this.clearClicked = new EventEmitter();
|
|
20
|
+
this.cropMode = CROP_IMAGE_MODES.SQUARE;
|
|
21
|
+
this.CROP_IMAGE_MODES = CROP_IMAGE_MODES;
|
|
22
|
+
}
|
|
23
|
+
ngOnChanges(changes) {
|
|
24
|
+
if (changes.imageFile && this.imageFile) {
|
|
25
|
+
this.readImageFile();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
ngAfterViewInit() {
|
|
29
|
+
this.canvasService.ctx = this.canvasElement.nativeElement.getContext('2d');
|
|
30
|
+
}
|
|
31
|
+
drawImage(newZoomEvent) {
|
|
32
|
+
if (newZoomEvent !== undefined) {
|
|
33
|
+
this.zoomLevel = newZoomEvent.target.value;
|
|
34
|
+
}
|
|
35
|
+
this.onCropModeUpdated();
|
|
36
|
+
}
|
|
37
|
+
onCropModeUpdated(cropMode) {
|
|
38
|
+
if (cropMode) {
|
|
39
|
+
this.cropMode = cropMode;
|
|
40
|
+
}
|
|
41
|
+
this.canvasService.drawShape(this.cropperSize, this.cropMode, this.zoomLevel, this.htmlImageElement);
|
|
42
|
+
const coordinates = this.canvasService.getCoordinates(this.cropMode, this.cropperSize);
|
|
43
|
+
this.canvasElement.nativeElement.toBlob((blob) => {
|
|
44
|
+
const file = new File([blob], this.imageFile.name, { type: this.imageFile.type, lastModified: Date.now() });
|
|
45
|
+
this.cropChanged.emit({ file, coordinates, cropMode: this.cropMode });
|
|
46
|
+
}, this.imageFile.type);
|
|
47
|
+
}
|
|
48
|
+
readImageFile() {
|
|
49
|
+
const reader = new FileReader();
|
|
50
|
+
reader.onload = () => {
|
|
51
|
+
this.htmlImageElement = new Image();
|
|
52
|
+
this.htmlImageElement.src = this.getImagesStringSrc(reader);
|
|
53
|
+
this.htmlImageElement.onload = () => {
|
|
54
|
+
this.canvasElement.nativeElement.width = this.canvasElement.nativeElement.height = this.cropperSize;
|
|
55
|
+
this.drawImage();
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
reader.readAsDataURL(this.imageFile);
|
|
59
|
+
}
|
|
60
|
+
getImagesStringSrc(reader) {
|
|
61
|
+
if (typeof reader.result === 'string')
|
|
62
|
+
return reader.result;
|
|
63
|
+
const decoder = new TextDecoder();
|
|
64
|
+
return decoder.decode(reader.result);
|
|
65
|
+
}
|
|
66
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrImageCropperComponent, deps: [{ token: i1.DrImageCropperCanvasService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DrImageCropperComponent, isStandalone: true, selector: "dr-image-cropper", inputs: { cropperSize: "cropperSize", imageFile: "imageFile", maxZoom: "maxZoom", minZoom: "minZoom", zoomStep: "zoomStep", zoomLevel: "zoomLevel" }, outputs: { cropChanged: "cropChanged", clearClicked: "clearClicked" }, providers: [DrImageCropperCanvasService], viewQueries: [{ propertyName: "canvasElement", first: true, predicate: ["imageCanvas"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"crop-mode-btns-container\">\n <dr-button theme=\"ghost\"\n [class.active-mode]=\"cropMode === CROP_IMAGE_MODES.SQUARE\"\n (click)=\"onCropModeUpdated(CROP_IMAGE_MODES.SQUARE)\">\n <div class=\"mode-btn\">\n <div class=\"mode-btn__square-icon\"></div>\n Square\n </div>\n </dr-button>\n <dr-button theme=\"ghost\"\n [class.active-mode]=\"cropMode === CROP_IMAGE_MODES.RECTANGLE\"\n (click)=\"onCropModeUpdated(CROP_IMAGE_MODES.RECTANGLE)\">\n <div class=\"mode-btn\">\n <div class=\"mode-btn__rectangle-icon\"></div>\n Rectangle\n </div>\n </dr-button>\n</div>\n\n<div class=\"image-cropper\">\n <canvas #imageCanvas></canvas>\n</div>\n<dr-slider\n [(ngModel)]=\"zoomLevel\"\n [max]=\"maxZoom\"\n [min]=\"minZoom\"\n [step]=\"zoomStep\"\n [style.width]=\"cropperSize + 'px'\"\n class=\"image-crop-slider\"\n (input)=\"drawImage($event)\">\n</dr-slider>\n<dr-button [theme]=\"'ghost'\" (click)=\"clearClicked.emit()\" class=\"try-another-btn\">\n Try another image\n</dr-button>\n", styles: [":host{display:flex;flex-direction:column}:host .crop-mode-btns-container{display:flex;justify-content:center;margin-bottom:16px}:host .crop-mode-btns-container ::ng-deep dr-button.active-mode>button{background:#eaeaff}:host .crop-mode-btns-container ::ng-deep dr-button>button{height:56px;width:80px}:host .crop-mode-btns-container dr-button:not(:first-child){margin-left:8px}:host .crop-mode-btns-container .mode-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#333;height:56px;width:80px}:host .crop-mode-btns-container .mode-btn__rectangle-icon{height:8px;width:24px;margin-top:4px;margin-bottom:4px}:host .crop-mode-btns-container .mode-btn__square-icon{width:16px;height:16px}:host .crop-mode-btns-container .mode-btn__rectangle-icon,:host .crop-mode-btns-container .mode-btn__square-icon{border:1px solid #333333}:host .image-cropper{overflow:hidden;position:relative}:host .image-cropper__shadow{position:absolute}:host .image-crop-slider{margin-top:8px}:host .try-another-btn{display:flex;justify-content:center;margin-top:8px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DrSliderComponent, selector: "dr-slider", inputs: ["disabled", "max", "min", "step", "rangeValue"] }, { kind: "ngmodule", type: DrInputsModule }, { kind: "component", type: i3.DrButtonComponent, selector: "dr-button", inputs: ["theme", "icon", "iconColor", "iconSize", "iconAfter", "iconAfterColor", "iconAfterSize", "disabled", "isLoading", "isActive"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DrImageCropperComponent, decorators: [{
|
|
70
|
+
type: Component,
|
|
71
|
+
args: [{ selector: 'dr-image-cropper', changeDetection: ChangeDetectionStrategy.OnPush, imports: [FormsModule, DrSliderComponent, DrInputsModule], standalone: true, providers: [DrImageCropperCanvasService], template: "<div class=\"crop-mode-btns-container\">\n <dr-button theme=\"ghost\"\n [class.active-mode]=\"cropMode === CROP_IMAGE_MODES.SQUARE\"\n (click)=\"onCropModeUpdated(CROP_IMAGE_MODES.SQUARE)\">\n <div class=\"mode-btn\">\n <div class=\"mode-btn__square-icon\"></div>\n Square\n </div>\n </dr-button>\n <dr-button theme=\"ghost\"\n [class.active-mode]=\"cropMode === CROP_IMAGE_MODES.RECTANGLE\"\n (click)=\"onCropModeUpdated(CROP_IMAGE_MODES.RECTANGLE)\">\n <div class=\"mode-btn\">\n <div class=\"mode-btn__rectangle-icon\"></div>\n Rectangle\n </div>\n </dr-button>\n</div>\n\n<div class=\"image-cropper\">\n <canvas #imageCanvas></canvas>\n</div>\n<dr-slider\n [(ngModel)]=\"zoomLevel\"\n [max]=\"maxZoom\"\n [min]=\"minZoom\"\n [step]=\"zoomStep\"\n [style.width]=\"cropperSize + 'px'\"\n class=\"image-crop-slider\"\n (input)=\"drawImage($event)\">\n</dr-slider>\n<dr-button [theme]=\"'ghost'\" (click)=\"clearClicked.emit()\" class=\"try-another-btn\">\n Try another image\n</dr-button>\n", styles: [":host{display:flex;flex-direction:column}:host .crop-mode-btns-container{display:flex;justify-content:center;margin-bottom:16px}:host .crop-mode-btns-container ::ng-deep dr-button.active-mode>button{background:#eaeaff}:host .crop-mode-btns-container ::ng-deep dr-button>button{height:56px;width:80px}:host .crop-mode-btns-container dr-button:not(:first-child){margin-left:8px}:host .crop-mode-btns-container .mode-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#333;height:56px;width:80px}:host .crop-mode-btns-container .mode-btn__rectangle-icon{height:8px;width:24px;margin-top:4px;margin-bottom:4px}:host .crop-mode-btns-container .mode-btn__square-icon{width:16px;height:16px}:host .crop-mode-btns-container .mode-btn__rectangle-icon,:host .crop-mode-btns-container .mode-btn__square-icon{border:1px solid #333333}:host .image-cropper{overflow:hidden;position:relative}:host .image-cropper__shadow{position:absolute}:host .image-crop-slider{margin-top:8px}:host .try-another-btn{display:flex;justify-content:center;margin-top:8px}\n"] }]
|
|
72
|
+
}], ctorParameters: function () { return [{ type: i1.DrImageCropperCanvasService }]; }, propDecorators: { cropperSize: [{
|
|
73
|
+
type: Input,
|
|
74
|
+
args: [{ required: true }]
|
|
75
|
+
}], imageFile: [{
|
|
76
|
+
type: Input,
|
|
77
|
+
args: [{ required: true }]
|
|
78
|
+
}], maxZoom: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}], minZoom: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], zoomStep: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], zoomLevel: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], cropChanged: [{
|
|
87
|
+
type: Output
|
|
88
|
+
}], clearClicked: [{
|
|
89
|
+
type: Output
|
|
90
|
+
}], canvasElement: [{
|
|
91
|
+
type: ViewChild,
|
|
92
|
+
args: ['imageCanvas', { static: true }]
|
|
93
|
+
}] } });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItaW1hZ2UtY3JvcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9pbWFnZS1jcm9wcGVyL2RyLWltYWdlLWNyb3BwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvaW1hZ2UtY3JvcHBlci9kci1pbWFnZS1jcm9wcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFFTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBa0IsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7O0FBV2hGLE1BQU0sT0FBTyx1QkFBdUI7SUFpQmhDLFlBQTZCLGFBQTBDO1FBQTFDLGtCQUFhLEdBQWIsYUFBYSxDQUE2QjtRQWQ5RCxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBQ3JCLFlBQU8sR0FBVyxHQUFHLENBQUM7UUFDdEIsYUFBUSxHQUFXLEdBQUcsQ0FBQztRQUN2QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBRXJCLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWtCLENBQUM7UUFDakQsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBS2xELGFBQVEsR0FBcUIsZ0JBQWdCLENBQUMs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TUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7a0lBcEVRLHVCQUF1QjtzSEFBdkIsdUJBQXVCLDRSQUZyQixDQUFDLDJCQUEyQixDQUFDLDJLQ3pCNUMsb3FDQWtDQSw2bUNEWGMsV0FBVywrVkFBRSxpQkFBaUIsK0dBQUUsY0FBYzs7NEZBSS9DLHVCQUF1QjtrQkFUbkMsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLENBQUMsY0FDN0MsSUFBSSxhQUNMLENBQUMsMkJBQTJCLENBQUM7a0hBR2IsV0FBVztzQkFBckMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsU0FBUztzQkFBbkMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFFcUMsYUFBYTtzQkFBeEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRHJTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuLi9kci1pbnB1dHMvZHItc2xpZGVyL2RyLXNsaWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ1JPUF9JTUFHRV9NT0RFUywgSUNyb3BJbWFnZURhdGEgfSBmcm9tICcuL2RyLWltYWdlLWNyb3BwZXIudHlwZXMnO1xuaW1wb3J0IHsgRHJJbnB1dHNNb2R1bGUgfSBmcm9tICcuLi9kci1pbnB1dHMvZHItaW5wdXRzLm1vZHVsZSc7XG5pbXBvcnQgeyBEckltYWdlQ3JvcHBlckNhbnZhc1NlcnZpY2UgfSBmcm9tICcuL2RyLWltYWdlLWNyb3BwZXItY2FudmFzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWltYWdlLWNyb3BwZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1pbWFnZS1jcm9wcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1pbWFnZS1jcm9wcGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBEclNsaWRlckNvbXBvbmVudCwgRHJJbnB1dHNNb2R1bGVdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbRHJJbWFnZUNyb3BwZXJDYW52YXNTZXJ2aWNlXVxufSlcbmV4cG9ydCBjbGFzcyBEckltYWdlQ3JvcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY3JvcHBlclNpemU6IG51bWJlcjtcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBpbWFnZUZpbGU6IEZpbGU7XG4gICAgQElucHV0KCkgbWF4Wm9vbTogbnVtYmVyID0gMTA7XG4gICAgQElucHV0KCkgbWluWm9vbTogbnVtYmVyID0gMC41O1xuICAgIEBJbnB1dCgpIHpvb21TdGVwOiBudW1iZXIgPSAwLjE7XG4gICAgQElucHV0KCkgem9vbUxldmVsOiBudW1iZXIgPSAxO1xuXG4gICAgQE91dHB1dCgpIGNyb3BDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxJQ3JvcEltYWdlRGF0YT4oKTtcbiAgICBAT3V0cHV0KCkgY2xlYXJDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQFZpZXdDaGlsZCgnaW1hZ2VDYW52YXMnLCB7IHN0YXRpYzogdHJ1ZSB9KSBjYW52YXNFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcblxuICAgIGh0bWxJbWFnZUVsZW1lbnQ6IEhUTUxJbWFnZUVsZW1lbnQ7XG4gICAgY3JvcE1vZGU6IENST1BfSU1BR0VfTU9ERVMgPSBDUk9QX0lNQUdFX01PREVTLlNRVUFSRTtcbiAgICByZWFkb25seSBDUk9QX0lNQUdFX01PREVTID0gQ1JPUF9JTUFHRV9NT0RFUztcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2FudmFzU2VydmljZTogRHJJbWFnZUNyb3BwZXJDYW52YXNTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5pbWFnZUZpbGUgJiYgdGhpcy5pbWFnZUZpbGUpIHtcbiAgICAgICAgICAgIHRoaXMucmVhZEltYWdlRmlsZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhbnZhc1NlcnZpY2UuY3R4ID0gdGhpcy5jYW52YXNFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICB9XG5cbiAgICBkcmF3SW1hZ2UobmV3Wm9vbUV2ZW50Pyk6IHZvaWQge1xuICAgICAgICBpZiAobmV3Wm9vbUV2ZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuem9vbUxldmVsID0gbmV3Wm9vbUV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9uQ3JvcE1vZGVVcGRhdGVkKCk7XG4gICAgfVxuXG4gICAgb25Dcm9wTW9kZVVwZGF0ZWQoY3JvcE1vZGU/OiBDUk9QX0lNQUdFX01PREVTKTogdm9pZCB7XG4gICAgICAgIGlmIChjcm9wTW9kZSkge1xuICAgICAgICAgICAgdGhpcy5jcm9wTW9kZSA9IGNyb3BNb2RlO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jYW52YXNTZXJ2aWNlLmRyYXdTaGFwZSh0aGlzLmNyb3BwZXJTaXplLCB0aGlzLmNyb3BNb2RlLCB0aGlzLnpvb21MZXZlbCwgdGhpcy5odG1sSW1hZ2VFbGVtZW50KTtcbiAgICAgICAgY29uc3QgY29vcmRpbmF0ZXMgPSB0aGlzLmNhbnZhc1NlcnZpY2UuZ2V0Q29vcmRpbmF0ZXModGhpcy5jcm9wTW9kZSwgdGhpcy5jcm9wcGVyU2l6ZSk7XG4gICAgICAgIHRoaXMuY2FudmFzRWxlbWVudC5uYXRpdmVFbGVtZW50LnRvQmxvYigoYmxvYikgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmlsZSA9IG5ldyBGaWxlKFtibG9iXSwgdGhpcy5pbWFnZUZpbGUubmFtZSwgeyB0eXBlOiB0aGlzLmltYWdlRmlsZS50eXBlLCBsYXN0TW9kaWZpZWQ6IERhdGUubm93KCkgfSk7XG4gICAgICAgICAgICB0aGlzLmNyb3BDaGFuZ2VkLmVtaXQoeyBmaWxlLCBjb29yZGluYXRlcywgY3JvcE1vZGU6IHRoaXMuY3JvcE1vZGUgfSk7XG4gICAgICAgIH0sIHRoaXMuaW1hZ2VGaWxlLnR5cGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVhZEltYWdlRmlsZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaHRtbEltYWdlRWxlbWVudCA9IG5ldyBJbWFnZSgpO1xuICAgICAgICAgICAgdGhpcy5odG1sSW1hZ2VFbGVtZW50LnNyYyA9IHRoaXMuZ2V0SW1hZ2VzU3RyaW5nU3JjKHJlYWRlcik7XG4gICAgICAgICAgICB0aGlzLmh0bWxJbWFnZUVsZW1lbnQub25sb2FkID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FudmFzRWxlbWVudC5uYXRpdmVFbGVtZW50LndpZHRoID0gdGhpcy5jYW52YXNFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuaGVpZ2h0ID0gdGhpcy5jcm9wcGVyU2l6ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmRyYXdJbWFnZSgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfTtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwodGhpcy5pbWFnZUZpbGUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SW1hZ2VzU3RyaW5nU3JjKHJlYWRlcjogRmlsZVJlYWRlcik6IHN0cmluZyB7XG4gICAgICAgIGlmICh0eXBlb2YgcmVhZGVyLnJlc3VsdCA9PT0gJ3N0cmluZycpIHJldHVybiByZWFkZXIucmVzdWx0O1xuXG4gICAgICAgIGNvbnN0IGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoKTtcbiAgICAgICAgcmV0dXJuIGRlY29kZXIuZGVjb2RlKHJlYWRlci5yZXN1bHQpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcm9wLW1vZGUtYnRucy1jb250YWluZXJcIj5cbiAgICA8ZHItYnV0dG9uIHRoZW1lPVwiZ2hvc3RcIlxuICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZS1tb2RlXT1cImNyb3BNb2RlID09PSBDUk9QX0lNQUdFX01PREVTLlNRVUFSRVwiXG4gICAgICAgICAgICAgICAoY2xpY2spPVwib25Dcm9wTW9kZVVwZGF0ZWQoQ1JPUF9JTUFHRV9NT0RFUy5TUVVBUkUpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RlLWJ0blwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGUtYnRuX19zcXVhcmUtaWNvblwiPjwvZGl2PlxuICAgICAgICAgICAgU3F1YXJlXG4gICAgICAgIDwvZGl2PlxuICAgIDwvZHItYnV0dG9uPlxuICAgIDxkci1idXR0b24gdGhlbWU9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlLW1vZGVdPVwiY3JvcE1vZGUgPT09IENST1BfSU1BR0VfTU9ERVMuUkVDVEFOR0xFXCJcbiAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNyb3BNb2RlVXBkYXRlZChDUk9QX0lNQUdFX01PREVTLlJFQ1RBTkdMRSlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGUtYnRuXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kZS1idG5fX3JlY3RhbmdsZS1pY29uXCI+PC9kaXY+XG4gICAgICAgICAgICBSZWN0YW5nbGVcbiAgICAgICAgPC9kaXY+XG4gICAgPC9kci1idXR0b24+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImltYWdlLWNyb3BwZXJcIj5cbiAgICA8Y2FudmFzICNpbWFnZUNhbnZhcz48L2NhbnZhcz5cbjwvZGl2PlxuPGRyLXNsaWRlclxuICAgICAgICBbKG5nTW9kZWwpXT1cInpvb21MZXZlbFwiXG4gICAgICAgIFttYXhdPVwibWF4Wm9vbVwiXG4gICAgICAgIFttaW5dPVwibWluWm9vbVwiXG4gICAgICAgIFtzdGVwXT1cInpvb21TdGVwXCJcbiAgICAgICAgW3N0eWxlLndpZHRoXT1cImNyb3BwZXJTaXplICsgJ3B4J1wiXG4gICAgICAgIGNsYXNzPVwiaW1hZ2UtY3JvcC1zbGlkZXJcIlxuICAgICAgICAoaW5wdXQpPVwiZHJhd0ltYWdlKCRldmVudClcIj5cbjwvZHItc2xpZGVyPlxuPGRyLWJ1dHRvbiBbdGhlbWVdPVwiJ2dob3N0J1wiIChjbGljayk9XCJjbGVhckNsaWNrZWQuZW1pdCgpXCIgY2xhc3M9XCJ0cnktYW5vdGhlci1idG5cIj5cbiAgICBUcnkgYW5vdGhlciBpbWFnZVxuPC9kci1idXR0b24+XG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var CROP_IMAGE_MODES;
|
|
2
|
+
(function (CROP_IMAGE_MODES) {
|
|
3
|
+
CROP_IMAGE_MODES["SQUARE"] = "square";
|
|
4
|
+
CROP_IMAGE_MODES["RECTANGLE"] = "rectangle";
|
|
5
|
+
})(CROP_IMAGE_MODES || (CROP_IMAGE_MODES = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItaW1hZ2UtY3JvcHBlci50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2ltYWdlLWNyb3BwZXIvZHItaW1hZ2UtY3JvcHBlci50eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQ3hCLHFDQUFpQixDQUFBO0lBQ2pCLDJDQUF1QixDQUFBO0FBQzNCLENBQUMsRUFIVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRzNCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gQ1JPUF9JTUFHRV9NT0RFUyB7XG4gICAgU1FVQVJFID0gJ3NxdWFyZScsXG4gICAgUkVDVEFOR0xFID0gJ3JlY3RhbmdsZScsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyb3BJbWFnZURhdGEge1xuICAgIGZpbGU6IEZpbGU7XG4gICAgY29vcmRpbmF0ZXM6IHN0cmluZztcbiAgICBjcm9wTW9kZTogQ1JPUF9JTUFHRV9NT0RFUztcbn1cbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -121,6 +121,9 @@ export { DrTooltipModule } from './lib/dr-tooltip/dr-tooltip.module';
|
|
|
121
121
|
export { DrAvatarModule } from './lib/dr-avatar/dr-avatar.module';
|
|
122
122
|
export { DrSpinnerModule } from './lib/dr-spinner/dr-spinner.module';
|
|
123
123
|
export { DrPopoverModule } from './lib/dr-popover/dr-popover.module';
|
|
124
|
+
export { DrSliderComponent } from './lib/dr-inputs/dr-slider/dr-slider.component';
|
|
125
|
+
export { DrImageCropperComponent } from './lib/image-cropper/dr-image-cropper.component';
|
|
126
|
+
export * from './lib/image-cropper/dr-image-cropper.types';
|
|
124
127
|
export { DrDropdownModule } from './lib/dr-dropdown/dr-dropdown.module';
|
|
125
128
|
export { DrTabsModule } from './lib/dr-tabs/dr-tabs.module';
|
|
126
129
|
export { DrAccordionModule } from './lib/dr-accordion/accordion.module';
|
|
@@ -139,4 +142,4 @@ export { DrAlertModule } from './lib/dr-alert/dr-alert.module';
|
|
|
139
142
|
export { DrTagsConstructorModule } from './lib/dr-tags-constructor/dr-tags-constructor.module';
|
|
140
143
|
export { DrToastrModule } from './lib/dr-toastr/dr-toastr.module';
|
|
141
144
|
export { DrCodeEditorModule } from './lib/dr-code-editor/dr-code-editor.module';
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUFDaEIsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLCtDQUErQyxDQUFDO0FBQUEsY0FBYyxrR0FBa0csQ0FBQztBQUMvSyxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsb0dBQW9HLENBQUM7QUFDbkgsY0FBYyxrRkFBa0YsQ0FBQztBQUNqRyxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLHVFQUF1RSxDQUFDO0FBQ3RGLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYywrRUFBK0UsQ0FBQztBQUM5RixjQUFjLHVFQUF1RSxDQUFDO0FBQ3RGLGNBQWMsdUZBQXVGLENBQUM7QUFDdEcsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw4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LDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNENBQTRDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBjb21wb25lbnRzICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3MvYW55LXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL2RhdGUtdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3MvZm9yZWNhc3QtdGFnL2ZvcmVjYXN0LXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL21vbnRoLXRhZy9tb250aC10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy9xdWFydGVyLXRhZy9xdWFydGVyLXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL3dlZWstdGFnL3dlZWstdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3MveWVhci10YWcveWVhci10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRhZ3MvZHItdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saXN0LXRhZ3MvbGlzdC10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy9kYXktdGFnL2RheS10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy9kYXRlLXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9yYWRpby1idXR0b24vcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RyLWlucHV0L2RyLWlucHV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItbGluay9kci1saW5rLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItc2VsZWN0L2RyLXNlbGVjdC5jb21wb25lbnQnO2V4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZHItZGF0ZS1waWNrZXJfY3VzdG9tLWhlYWRlci9kci1kYXRlLXBpY2tlcl9jdXN0b20taGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyLXJhbmdlL2RyLWRhdGUtcGlja2VyLXJhbmdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RpcmVjdGl2ZXMvZHItZGF0ZS1waWNrZXItZm9ybWF0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLXNob3ctdGltZWZyYW1lLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RyLXNlbGVjdC1hZGQtaXRlbS9kci1zZWxlY3QtYWRkLWl0ZW0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRvb2x0aXAvY29tcG9uZW50cy90b29sdGlwLWRlZmF1bHQvdG9vbHRpcC1kZWZhdWx0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10b29sdGlwL2NvbXBvbmVudHMvdG9vbHRpcC1pbmZvL3Rvb2x0aXAtaW5mby5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9vbHRpcC9jb21wb25lbnRzL3Rvb2x0aXAtaW5mby1zaW1wbGUvdG9vbHRpcC1pbmZvLXNpbXBsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9vbHRpcC9jb21wb25lbnRzL3Rvb2x0aXAtbm8tYm9keS90b29sdGlwLW5vLWJvZHkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRvb2x0aXAvY29tcG9uZW50cy90b29sdGlwLXByb2Nlc3MtZGVmYXVsdC90b29sdGlwLXByb2Nlc3MtZGVmYXVsdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2NoYXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNoYXQvZHItY2hhdC1mb3JtL2NoYXQtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LXN1Z2dlc3Rpb25zL2NoYXQtc3VnZ2VzdGlvbnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNoYXQvZHItY2hhdC1tZXNzYWdlL2NoYXQtbWVzc2FnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LW1lc3NhZ2UvZHItY2hhdC1tZXNzYWdlLXRleHQvY2hhdC1tZXNzYWdlLXRleHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNoYXQvZHItY2hhdC1tZXNzYWdlL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LW1lc3NhZ2UvZHItY2hhdC1tZXNzYWdlLWZpbGUvY2hhdC1tZXNzYWdlLWZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNoYXQvZHItZG90LWZsYXNoaW5nL2RyLWRvdC1mbGFzaGluZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LWFsZXJ0L2RyLWNoYXQtYWxlcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWF2YXRhci9kci1hdmF0YXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWF2YXRhci9kci1hdmF0YXIucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRvb2x0aXAvZHItdG9vbHRpcC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RyLXRvZ2dsZS9kci10b2dnbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kci10b2dnbGUtYnV0dG9uL2RyLXRvZ2dsZS1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXNwaW5uZXIvZHItc3Bpbm5lci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItc3Bpbm5lci9kci1zcGlubmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYmFkZ2Utc3RhdHVzL2RyLWJhZGdlLXN0YXR1cy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYWxlcnQvZHItYWxlcnQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNvZGUtZWRpdG9yL2RyLWNvZGUtZWRpdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jb2RlLWVkaXRvci9jb21wb25lbnRzL2RyLWNvZGVtaXJyb3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNvZGUtZWRpdG9yL2NvbXBvbmVudHMvY29kZS1lZGl0b3ItaGludC13cmFwcGVyLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXNjZW5hcmlvL2NvbXBvbmVudHMvZHItc2NlbmFyaW8tdGFnLWNvbmZpZ3VyYXRpb24vZHItc2NlbmFyaW8tdGFnLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXNjZW5hcmlvL2NvbXBvbmVudHMvZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi9kci1zY2VuYXJpby1jb25maWd1cmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10YWdzLWNvbnN0cnVjdG9yL2RyLXRhZ3MtY29uc3RydWN0b3IuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItcG9wb3Zlci9kci1wb3BvdmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXBvcG92ZXIvZHItcG9wb3Zlci5zZXJ2aWNlJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRyb3Bkb3duL2RyLWRyb3Bkb3duLXBvc2l0aW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kcm9wZG93bi9kci1kcm9wZG93bi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kcm9wZG93bi9kci1kcm9wZG93bi1pdGVtLXNob3cucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10YWJzL2RyLXRhYnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRhYnMvZHItdGFiLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWFjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWFjY29yZGlvbi9hY2NvcmRpb24taXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtLWhlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtLWJvZHkuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItbGF5b3V0L2RyLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItbGF5b3V0L2RyLWxheW91dC1oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWxheW91dC9kci1sYXlvdXQtYm9keS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1lcnJvci9kci1lcnJvci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kaWFsb2cvc2VydmljZXMvZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZGlhbG9nL2NvbXBvbmVudHMvZGlhbG9nLXdyYXBwZXIvZGlhbG9nLXdyYXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRpYWxvZy9jb21wb25lbnRzL2RpYWxvZy1tb2RhbC13cmFwcGVyL2RpYWxvZy1tb2RhbC13cmFwcGVyLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRldGFpbHMtbGlzdC9kci1kZXRhaWxzLWxpc3QuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9jaGF0LmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L2NvbXBvbmVudHMvdHJlZXZpZXcvdHJlZXZpZXcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L3BpcGVzL3RyZWV2aWV3LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvbW9kZWxzL3RyZWV2aWV3LWl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvbW9kZWxzL3RyZWV2aWV3LWNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10cmVldmlldy9tb2RlbHMvdHJlZXZpZXctaTE4bic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10cmVldmlldy9tb2RlbHMvdHJlZXZpZXctaXRlbS10ZW1wbGF0ZS1jb250ZXh0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L2hlbHBlcnMvdHJlZXZpZXctZXZlbnQtcGFyc2VyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L2hlbHBlcnMvdHJlZXZpZXctaGVscGVyJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9hc3RyL2RlZmF1bHQtdG9hc3RyL2RlZmF1bHQtdG9hc3RyLmNvbXBvbmVudCc7XG5cbi8qIGVudW1zICovXG5leHBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuL2xpYi9kci10b29sdGlwL2VudW1zL3Rvb2x0aXAtcG9zaXRpb24uZW51bSc7XG5leHBvcnQgeyBUb29sdGlwVGhlbWUgfSBmcm9tICcuL2xpYi9kci10b29sdGlwL2VudW1zL3Rvb2x0aXAtdGhlbWUuZW51bSc7XG5leHBvcnQgeyBTY2VuYXJpbywgVFNjZW5hcmlvRGF0YUNoYW5nZWQgfSBmcm9tICcuL2xpYi9kci1zY2VuYXJpby9pbnRlcmZhY2VzL3NjZW5hcmlvJztcbmV4cG9ydCB7IFRvZ2dsZUJ1dHRvbk1vZGUgfSBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItdG9nZ2xlLWJ1dHRvbi90b2dnbGUtYnV0dG9uLW1vZGUnO1xuZXhwb3J0IHsgRHJBbGVydFRoZW1lIH0gZnJvbSAnLi9saWIvZHItYWxlcnQvZW51bXMvZHItYWxlcnQtdGhlbWUuZW51bSc7XG5cbi8qIGludGVyZmFjZXMgJiB0eXBlcyAqL1xuZXhwb3J0IHsgVG9vbHRpcEluZm9Db250ZXh0IH0gZnJvbSAnLi9saWIvZHItdG9vbHRpcC9pbnRlcmZhY2VzL3Rvb2x0aXAtY29tcG9uZW50LWNvbnRleHQnO1xuZXhwb3J0IHsgU3RlcCB9IGZyb20gJy4vbGliL3N0ZXBwZXIvaW50ZXJmYWNlcy9zdGVwcGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRpYWxvZy9pbnRlcmZhY2VzL2RpYWxvZy1kYXRhJztcblxuLyogZGlyZWN0aXZlcyAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RyLW1vZGVsLWRlYm91bmNlLWNoYW5nZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9jbGljay1vdXRzaWRlL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlJztcblxuLyogbW9kZWxzICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0ZVBpY2tlcic7XG5leHBvcnQgeyBUQUdfVFlQRVMsIElUYWcsIElEYXRlVGFnLCBJTGlzdFRhZywgSVRhZ0ZvclNlcnZlciwgSUR5bmFtaWNUYWcsIFREeW5hbWljVGFnVmFsdWUsIFREeW5hbWljVGFnLCBUYWdUeXBlcywgVGFnc0NvbmZpZ1N1YlR5cGUsIFRDb25uZWN0ZWRUYWdzIH0gZnJvbSAnLi9saWIvbW9kZWxzL3NlcnZlclRhZ3MnO1xuZXhwb3J0IHsgSVNwaW5uZXJPcHRpb25zLCBTcGlubmVyVHlwZSwgU3Bpbm5lclNpemUgfSBmcm9tICcuL2xpYi9tb2RlbHMvc3Bpbm5lck9wdGlvbnMnO1xuZXhwb3J0IHtcbiAgICBFbFBvc2l0aW9uLFxuICAgIElEcm9wZG93bixcbiAgICBJRHJvcGRvd25JdGVtLFxuICAgIElEcm9wZG93bkFjdGlvbkljb24sXG4gICAgSURyb3Bkb3duQ29vcmRpbmF0ZSxcbiAgICBJRHJvcGRvd25DYWxsRXZlbnQsXG4gICAgSURyb3Bkb3duQWN0aW9uXG59IGZyb20gJy4vbGliL21vZGVscy9kcm9wZG93bic7XG5leHBvcnQge1xuICAgIERyUG9wb3ZlclJlZixcbiAgICBJRHJQb3BvdmVyQ29tcG9uZW50TW9kZWwsXG4gICAgUG9pbnQsXG4gICAgRHJQb3BvdmVyQ29uZmlnLFxuICAgIElQb3BvdmVyTWFudWFsQ2xvc2luZyxcbiAgICBEclBvcG92ZXJBbGlnbm1lbnQsXG4gICAgRHJQb3BvdmVyQWxpZ25tZW50RGltZW5zaW9uLFxufSBmcm9tICcuL2xpYi9tb2RlbHMvcG9wb3Zlcic7XG5leHBvcnQgeyBJVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi9saWIvbW9kZWxzL3ZhbGlkYXRpb25FcnJvcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY2hhdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvYmFkZ2VTdGF0dXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2ZlZWRiYWNrJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy90b2FzdHInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2RhdGVQaWNrZXJSYW5nZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jb2RlLWVkaXRvci9tb2RlbHMvY29kZS1lZGl0b3ItaGludCc7XG5cbi8qIHNlcnZpY2VzICovXG5leHBvcnQgeyBTY2VuYXJpb1NlcnZpY2UgfSBmcm9tICcuL2xpYi9kci1zY2VuYXJpby9zZXJ2aWNlcy9zY2VuYXJpby5zZXJ2aWNlJztcbmV4cG9ydCB7IFRhZ3NDb25zdHJ1Y3RvclNlcnZpY2UgfSBmcm9tICcuL2xpYi9kci10YWdzLWNvbnN0cnVjdG9yL3RhZ3MtY29uc3RydWN0b3Iuc2VydmljZSc7XG5leHBvcnQgeyBEckF2YXRhclNlcnZpY2UgfSBmcm9tICcuL2xpYi9kci1hdmF0YXIvc2VydmljZXMvZHItYXZhdGFyLnNlcnZpY2UnO1xuZXhwb3J0IHsgRHJUb2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi9saWIvZHItdG9hc3RyL2RyLXRvYXN0ci5zZXJ2aWNlJztcblxuLyogbW9kdWxlcyAqL1xuZXhwb3J0IHsgRGF0ZVRhZ01vZHVsZSB9IGZyb20gJy4vbGliL2RhdGUtdGFncy9kYXRlLXRhZy5tb2R1bGUnO1xuZXhwb3J0IHsgTGlzdFRhZ01vZHVsZSB9IGZyb20gJy4vbGliL2xpc3QtdGFncy9saXN0LXRhZy5tb2R1bGUnO1xuZXhwb3J0IHsgRHJUYWdNb2R1bGUgfSBmcm9tICcuL2xpYi9kci10YWdzL2RyLXRhZy5tb2R1bGUnO1xuZXhwb3J0IHsgRHJJbnB1dHNNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItaW5wdXRzLm1vZHVsZSc7XG5leHBvcnQgeyBEclRvb2x0aXBNb2R1bGUgfSBmcm9tICcuL2xpYi9kci10b29sdGlwL2RyLXRvb2x0aXAubW9kdWxlJztcbmV4cG9ydCB7IERyQXZhdGFyTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItYXZhdGFyL2RyLWF2YXRhci5tb2R1bGUnO1xuZXhwb3J0IHsgRHJTcGlubmVyTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItc3Bpbm5lci9kci1zcGlubmVyLm1vZHVsZSc7XG5leHBvcnQgeyBEclBvcG92ZXJNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIubW9kdWxlJztcbmV4cG9ydCB7IERyRHJvcGRvd25Nb2R1bGUgfSBmcm9tICcuL2xpYi9kci1kcm9wZG93bi9kci1kcm9wZG93bi5tb2R1bGUnO1xuZXhwb3J0IHsgRHJUYWJzTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItdGFicy9kci10YWJzLm1vZHVsZSc7XG5leHBvcnQgeyBEckFjY29yZGlvbk1vZHVsZSB9IGZyb20gJy4vbGliL2RyLWFjY29yZGlvbi9hY2NvcmRpb24ubW9kdWxlJztcbmV4cG9ydCB7IERyU2hhcmVkVXRpbHMgfSBmcm9tICcuL2xpYi91dGlscy9kci1zaGFyZWQtdXRpbHMnO1xuZXhwb3J0IHsgRHJMYXlvdXRNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1sYXlvdXQvZHItbGF5b3V0Lm1vZHVsZSc7XG5leHBvcnQgeyBEckVycm9yTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItZXJyb3IvZHItZXJyb3IubW9kdWxlJztcbmV4cG9ydCB7IERyU3RlcHBlck1vZHVsZSB9IGZyb20gJy4vbGliL3N0ZXBwZXIvc3RlcHBlci5tb2R1bGUnO1xuZXhwb3J0IHsgRHJEaWFsb2dNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1kaWFsb2cvZGlhbG9nLm1vZHVsZSc7XG5leHBvcnQgeyBEckNoYXRNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1jaGF0L2NoYXQubW9kdWxlJztcbmV4cG9ydCB7IERyRGV0YWlsc0xpc3RNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1kZXRhaWxzLWxpc3QvZHItZGV0YWlscy1saXN0Lm1vZHVsZSc7XG5leHBvcnQgeyBEclNjZW5hcmlvTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItc2NlbmFyaW8vZHItc2NlbmFyaW8ubW9kdWxlJztcbmV4cG9ydCB7IERyQmFkZ2VTdGF0dXNNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1iYWRnZS1zdGF0dXMvZHItYmFkZ2Utc3RhdHVzLm1vZHVsZSc7XG5leHBvcnQgeyBUcmVldmlld01vZHVsZSB9IGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L2RyLXRyZWUtdmlldy5tb2R1bGUnO1xuZXhwb3J0IHsgQ2xpY2tPdXRzaWRlTW9kdWxlIH0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9jbGljay1vdXRzaWRlL2NsaWNrLW91dHNpZGUubW9kdWxlJztcbmV4cG9ydCB7IERyQWxlcnRNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1hbGVydC9kci1hbGVydC5tb2R1bGUnO1xuZXhwb3J0IHsgRHJUYWdzQ29uc3RydWN0b3JNb2R1bGUgfSBmcm9tICcuL2xpYi9kci10YWdzLWNvbnN0cnVjdG9yL2RyLXRhZ3MtY29uc3RydWN0b3IubW9kdWxlJztcbmV4cG9ydCB7IERyVG9hc3RyTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItdG9hc3RyL2RyLXRvYXN0ci5tb2R1bGUnO1xuZXhwb3J0IHsgRHJDb2RlRWRpdG9yTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItY29kZS1lZGl0b3IvZHItY29kZS1lZGl0b3IubW9kdWxlJztcbiJdfQ==
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUFDaEIsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLCtDQUErQyxDQUFDO0FBQUEsY0FBYyxrR0FBa0csQ0FBQztBQUMvSyxjQUFjLHNFQUFzRSxDQUFDO0FBQ3JGLGNBQWMsb0dBQW9HLENBQUM7QUFDbkgsY0FBYyxrRkFBa0YsQ0FBQztBQUNqRyxjQUFjLHlFQUF5RSxDQUFDO0FBQ3hGLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLHVFQUF1RSxDQUFDO0FBQ3RGLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYywrRUFBK0UsQ0FBQztBQUM5RixjQUFjLHVFQUF1RSxDQUFDO0FBQ3RGLGNBQWMsdUZBQXVGLENBQUM7QUFDdEcsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw4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NUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGNvbXBvbmVudHMgKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy9hbnktdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3MvZGF0ZS10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy9mb3JlY2FzdC10YWcvZm9yZWNhc3QtdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3MvbW9udGgtdGFnL21vbnRoLXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL3F1YXJ0ZXItdGFnL3F1YXJ0ZXItdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXRhZ3Mvd2Vlay10YWcvd2Vlay10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtdGFncy95ZWFyLXRhZy95ZWFyLXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdGFncy9kci10YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpc3QtdGFncy9saXN0LXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL2RheS10YWcvZGF5LXRhZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGF0ZS10YWdzL2RhdGUtdGFnLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvcmFkaW8tYnV0dG9uL3JhZGlvLWJ1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL3JhZGlvLWJ1dHRvbi9yYWRpby1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItaW5wdXQvZHItaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kci1saW5rL2RyLWxpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kci1zZWxlY3QvZHItc2VsZWN0LmNvbXBvbmVudCc7ZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RhdGUtcGlja2Vycy9kci1kYXRlLXBpY2tlcl9jdXN0b20taGVhZGVyL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZHItZGF0ZS1waWNrZXIvZHItZGF0ZS1waWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUvZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZHItZGF0ZS1waWNrZXItcmFuZ2UvZHItZGF0ZS1waWNrZXItcmFuZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZGlyZWN0aXZlcy9kci1kYXRlLXBpY2tlci1mb3JtYXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvZHItc2hvdy10aW1lZnJhbWUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItc2VsZWN0LWFkZC1pdGVtL2RyLXNlbGVjdC1hZGQtaXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9vbHRpcC9jb21wb25lbnRzL3Rvb2x0aXAtZGVmYXVsdC90b29sdGlwLWRlZmF1bHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRvb2x0aXAvY29tcG9uZW50cy90b29sdGlwLWluZm8vdG9vbHRpcC1pbmZvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10b29sdGlwL2NvbXBvbmVudHMvdG9vbHRpcC1pbmZvLXNpbXBsZS90b29sdGlwLWluZm8tc2ltcGxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10b29sdGlwL2NvbXBvbmVudHMvdG9vbHRpcC1uby1ib2R5L3Rvb2x0aXAtbm8tYm9keS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9vbHRpcC9jb21wb25lbnRzL3Rvb2x0aXAtcHJvY2Vzcy1kZWZhdWx0L3Rvb2x0aXAtcHJvY2Vzcy1kZWZhdWx0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNoYXQvY2hhdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LWZvcm0vY2hhdC1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2RyLWNoYXQtc3VnZ2VzdGlvbnMvY2hhdC1zdWdnZXN0aW9ucy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LW1lc3NhZ2UvY2hhdC1tZXNzYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2RyLWNoYXQtbWVzc2FnZS9kci1jaGF0LW1lc3NhZ2UtdGV4dC9jaGF0LW1lc3NhZ2UtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1jaGF0LW1lc3NhZ2UvZHItY2hhdC1tZXNzYWdlLWN1c3RvbS9jaGF0LWN1c3RvbS1tZXNzYWdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2RyLWNoYXQtbWVzc2FnZS9kci1jaGF0LW1lc3NhZ2UtZmlsZS9jaGF0LW1lc3NhZ2UtZmlsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY2hhdC9kci1kb3QtZmxhc2hpbmcvZHItZG90LWZsYXNoaW5nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2RyLWNoYXQtYWxlcnQvZHItY2hhdC1hbGVydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYXZhdGFyL2RyLWF2YXRhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYXZhdGFyL2RyLWF2YXRhci5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRvb2x0aXAvZHItdG9vbHRpcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdG9vbHRpcC9kci10b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItdG9nZ2xlL2RyLXRvZ2dsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItaW5wdXRzL2RyLXRvZ2dsZS1idXR0b24vZHItdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItc3Bpbm5lci9kci1zcGlubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1zcGlubmVyL2RyLXNwaW5uZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWlucHV0cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1iYWRnZS1zdGF0dXMvZHItYmFkZ2Utc3RhdHVzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1hbGVydC9kci1hbGVydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY29kZS1lZGl0b3IvZHItY29kZS1lZGl0b3IuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNvZGUtZWRpdG9yL2NvbXBvbmVudHMvZHItY29kZW1pcnJvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItY29kZS1lZGl0b3IvY29tcG9uZW50cy9jb2RlLWVkaXRvci1oaW50LXdyYXBwZXIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItc2NlbmFyaW8vY29tcG9uZW50cy9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItc2NlbmFyaW8vY29tcG9uZW50cy9kci1zY2VuYXJpby1jb25maWd1cmF0aW9uL2RyLXNjZW5hcmlvLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRhZ3MtY29uc3RydWN0b3IvZHItdGFncy1jb25zdHJ1Y3Rvci5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXBvcG92ZXIvZHItcG9wb3Zlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItcG9wb3Zlci9kci1wb3BvdmVyLnNlcnZpY2UnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kcm9wZG93bi9kci1kcm9wZG93bi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24tcG9zaXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRyb3Bkb3duL2RyLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kcm9wZG93bi9kci1kcm9wZG93bi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRyb3Bkb3duL2RyLWRyb3Bkb3duLWl0ZW0tc2hvdy5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRhYnMvZHItdGFicy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdGFicy9kci10YWIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYWNjb3JkaW9uL2FjY29yZGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1hY2NvcmRpb24vYWNjb3JkaW9uLWl0ZW0taGVhZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1hY2NvcmRpb24vYWNjb3JkaW9uLWl0ZW0tYm9keS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1sYXlvdXQvZHItbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1sYXlvdXQvZHItbGF5b3V0LWhlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItbGF5b3V0L2RyLWxheW91dC1ib2R5LmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWVycm9yL2RyLWVycm9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWRpYWxvZy9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1kaWFsb2cvY29tcG9uZW50cy9kaWFsb2ctd3JhcHBlci9kaWFsb2ctd3JhcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZGlhbG9nL2NvbXBvbmVudHMvZGlhbG9nLW1vZGFsLXdyYXBwZXIvZGlhbG9nLW1vZGFsLXdyYXBwZXIuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZGV0YWlscy1saXN0L2RyLWRldGFpbHMtbGlzdC5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1jaGF0L2NoYXQuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvY29tcG9uZW50cy90cmVldmlldy90cmVldmlldy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvcGlwZXMvdHJlZXZpZXcucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10cmVldmlldy9tb2RlbHMvdHJlZXZpZXctaXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10cmVldmlldy9tb2RlbHMvdHJlZXZpZXctY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L21vZGVscy90cmVldmlldy1pMThuJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLXRyZWV2aWV3L21vZGVscy90cmVldmlldy1pdGVtLXRlbXBsYXRlLWNvbnRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvaGVscGVycy90cmVldmlldy1ldmVudC1wYXJzZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItdHJlZXZpZXcvaGVscGVycy90cmVldmlldy1oZWxwZXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci10b2FzdHIvZGVmYXVsdC10b2FzdHIvZGVmYXVsdC10b2FzdHIuY29tcG9uZW50JztcblxuLyogZW51bXMgKi9cbmV4cG9ydCB7IFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gJy4vbGliL2RyLXRvb2x0aXAvZW51bXMvdG9vbHRpcC1wb3NpdGlvbi5lbnVtJztcbmV4cG9ydCB7IFRvb2x0aXBUaGVtZSB9IGZyb20gJy4vbGliL2RyLXRvb2x0aXAvZW51bXMvdG9vbHRpcC10aGVtZS5lbnVtJztcbmV4cG9ydCB7IFNjZW5hcmlvLCBUU2NlbmFyaW9EYXRhQ2hhbmdlZCB9IGZyb20gJy4vbGliL2RyLXNjZW5hcmlvL2ludGVyZmFjZXMvc2NlbmFyaW8nO1xuZXhwb3J0IHsgVG9nZ2xlQnV0dG9uTW9kZSB9IGZyb20gJy4vbGliL2RyLWlucHV0cy9kci10b2dnbGUtYnV0dG9uL3RvZ2dsZS1idXR0b24tbW9kZSc7XG5leHBvcnQgeyBEckFsZXJ0VGhlbWUgfSBmcm9tICcuL2xpYi9kci1hbGVydC9lbnVtcy9kci1hbGVydC10aGVtZS5lbnVtJztcblxuLyogaW50ZXJmYWNlcyAmIHR5cGVzICovXG5leHBvcnQgeyBUb29sdGlwSW5mb0NvbnRleHQgfSBmcm9tICcuL2xpYi9kci10b29sdGlwL2ludGVyZmFjZXMvdG9vbHRpcC1jb21wb25lbnQtY29udGV4dCc7XG5leHBvcnQgeyBTdGVwIH0gZnJvbSAnLi9saWIvc3RlcHBlci9pbnRlcmZhY2VzL3N0ZXBwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHItZGlhbG9nL2ludGVyZmFjZXMvZGlhbG9nLWRhdGEnO1xuXG4vKiBkaXJlY3RpdmVzICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItbW9kZWwtZGVib3VuY2UtY2hhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2NsaWNrLW91dHNpZGUvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUnO1xuXG4vKiBtb2RlbHMgKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9kYXRlUGlja2VyJztcbmV4cG9ydCB7IFRBR19UWVBFUywgSVRhZywgSURhdGVUYWcsIElMaXN0VGFnLCBJVGFnRm9yU2VydmVyLCBJRHluYW1pY1RhZywgVER5bmFtaWNUYWdWYWx1ZSwgVER5bmFtaWNUYWcsIFRhZ1R5cGVzLCBUYWdzQ29uZmlnU3ViVHlwZSwgVENvbm5lY3RlZFRhZ3MgfSBmcm9tICcuL2xpYi9tb2RlbHMvc2VydmVyVGFncyc7XG5leHBvcnQgeyBJU3Bpbm5lck9wdGlvbnMsIFNwaW5uZXJUeXBlLCBTcGlubmVyU2l6ZSB9IGZyb20gJy4vbGliL21vZGVscy9zcGlubmVyT3B0aW9ucyc7XG5leHBvcnQge1xuICAgIEVsUG9zaXRpb24sXG4gICAgSURyb3Bkb3duLFxuICAgIElEcm9wZG93bkl0ZW0sXG4gICAgSURyb3Bkb3duQWN0aW9uSWNvbixcbiAgICBJRHJvcGRvd25Db29yZGluYXRlLFxuICAgIElEcm9wZG93bkNhbGxFdmVudCxcbiAgICBJRHJvcGRvd25BY3Rpb25cbn0gZnJvbSAnLi9saWIvbW9kZWxzL2Ryb3Bkb3duJztcbmV4cG9ydCB7XG4gICAgRHJQb3BvdmVyUmVmLFxuICAgIElEclBvcG92ZXJDb21wb25lbnRNb2RlbCxcbiAgICBQb2ludCxcbiAgICBEclBvcG92ZXJDb25maWcsXG4gICAgSVBvcG92ZXJNYW51YWxDbG9zaW5nLFxuICAgIERyUG9wb3ZlckFsaWdubWVudCxcbiAgICBEclBvcG92ZXJBbGlnbm1lbnREaW1lbnNpb24sXG59IGZyb20gJy4vbGliL21vZGVscy9wb3BvdmVyJztcbmV4cG9ydCB7IElWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL2xpYi9tb2RlbHMvdmFsaWRhdGlvbkVycm9yJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jaGF0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9iYWRnZVN0YXR1cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZmVlZGJhY2snO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3RvYXN0cic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZGF0ZVBpY2tlclJhbmdlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RyLWNvZGUtZWRpdG9yL21vZGVscy9jb2RlLWVkaXRvci1oaW50JztcblxuLyogc2VydmljZXMgKi9cbmV4cG9ydCB7IFNjZW5hcmlvU2VydmljZSB9IGZyb20gJy4vbGliL2RyLXNjZW5hcmlvL3NlcnZpY2VzL3NjZW5hcmlvLnNlcnZpY2UnO1xuZXhwb3J0IHsgVGFnc0NvbnN0cnVjdG9yU2VydmljZSB9IGZyb20gJy4vbGliL2RyLXRhZ3MtY29uc3RydWN0b3IvdGFncy1jb25zdHJ1Y3Rvci5zZXJ2aWNlJztcbmV4cG9ydCB7IERyQXZhdGFyU2VydmljZSB9IGZyb20gJy4vbGliL2RyLWF2YXRhci9zZXJ2aWNlcy9kci1hdmF0YXIuc2VydmljZSc7XG5leHBvcnQgeyBEclRvYXN0clNlcnZpY2UgfSBmcm9tICcuL2xpYi9kci10b2FzdHIvZHItdG9hc3RyLnNlcnZpY2UnO1xuXG4vKiBtb2R1bGVzICovXG5leHBvcnQgeyBEYXRlVGFnTW9kdWxlIH0gZnJvbSAnLi9saWIvZGF0ZS10YWdzL2RhdGUtdGFnLm1vZHVsZSc7XG5leHBvcnQgeyBMaXN0VGFnTW9kdWxlIH0gZnJvbSAnLi9saWIvbGlzdC10YWdzL2xpc3QtdGFnLm1vZHVsZSc7XG5leHBvcnQgeyBEclRhZ01vZHVsZSB9IGZyb20gJy4vbGliL2RyLXRhZ3MvZHItdGFnLm1vZHVsZSc7XG5leHBvcnQgeyBEcklucHV0c01vZHVsZSB9IGZyb20gJy4vbGliL2RyLWlucHV0cy9kci1pbnB1dHMubW9kdWxlJztcbmV4cG9ydCB7IERyVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4vbGliL2RyLXRvb2x0aXAvZHItdG9vbHRpcC5tb2R1bGUnO1xuZXhwb3J0IHsgRHJBdmF0YXJNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1hdmF0YXIvZHItYXZhdGFyLm1vZHVsZSc7XG5leHBvcnQgeyBEclNwaW5uZXJNb2R1bGUgfSBmcm9tICcuL2xpYi9kci1zcGlubmVyL2RyLXNwaW5uZXIubW9kdWxlJztcbmV4cG9ydCB7IERyUG9wb3Zlck1vZHVsZSB9IGZyb20gJy4vbGliL2RyLXBvcG92ZXIvZHItcG9wb3Zlci5tb2R1bGUnO1xuZXhwb3J0IHsgRHJTbGlkZXJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9kci1pbnB1dHMvZHItc2xpZGVyL2RyLXNsaWRlci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRHJJbWFnZUNyb3BwZXJDb21wb25lbnQgfSBmcm9tICcuL2xpYi9pbWFnZS1jcm9wcGVyL2RyLWltYWdlLWNyb3BwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ltYWdlLWNyb3BwZXIvZHItaW1hZ2UtY3JvcHBlci50eXBlcyc7XG5leHBvcnQgeyBEckRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24ubW9kdWxlJztcbmV4cG9ydCB7IERyVGFic01vZHVsZSB9IGZyb20gJy4vbGliL2RyLXRhYnMvZHItdGFicy5tb2R1bGUnO1xuZXhwb3J0IHsgRHJBY2NvcmRpb25Nb2R1bGUgfSBmcm9tICcuL2xpYi9kci1hY2NvcmRpb24vYWNjb3JkaW9uLm1vZHVsZSc7XG5leHBvcnQgeyBEclNoYXJlZFV0aWxzIH0gZnJvbSAnLi9saWIvdXRpbHMvZHItc2hhcmVkLXV0aWxzJztcbmV4cG9ydCB7IERyTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi9saWIvZHItbGF5b3V0L2RyLWxheW91dC5tb2R1bGUnO1xuZXhwb3J0IHsgRHJFcnJvck1vZHVsZSB9IGZyb20gJy4vbGliL2RyLWVycm9yL2RyLWVycm9yLm1vZHVsZSc7XG5leHBvcnQgeyBEclN0ZXBwZXJNb2R1bGUgfSBmcm9tICcuL2xpYi9zdGVwcGVyL3N0ZXBwZXIubW9kdWxlJztcbmV4cG9ydCB7IERyRGlhbG9nTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItZGlhbG9nL2RpYWxvZy5tb2R1bGUnO1xuZXhwb3J0IHsgRHJDaGF0TW9kdWxlIH0gZnJvbSAnLi9saWIvZHItY2hhdC9jaGF0Lm1vZHVsZSc7XG5leHBvcnQgeyBEckRldGFpbHNMaXN0TW9kdWxlIH0gZnJvbSAnLi9saWIvZHItZGV0YWlscy1saXN0L2RyLWRldGFpbHMtbGlzdC5tb2R1bGUnO1xuZXhwb3J0IHsgRHJTY2VuYXJpb01vZHVsZSB9IGZyb20gJy4vbGliL2RyLXNjZW5hcmlvL2RyLXNjZW5hcmlvLm1vZHVsZSc7XG5leHBvcnQgeyBEckJhZGdlU3RhdHVzTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItYmFkZ2Utc3RhdHVzL2RyLWJhZGdlLXN0YXR1cy5tb2R1bGUnO1xuZXhwb3J0IHsgVHJlZXZpZXdNb2R1bGUgfSBmcm9tICcuL2xpYi9kci10cmVldmlldy9kci10cmVlLXZpZXcubW9kdWxlJztcbmV4cG9ydCB7IENsaWNrT3V0c2lkZU1vZHVsZSB9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS9jbGljay1vdXRzaWRlLm1vZHVsZSc7XG5leHBvcnQgeyBEckFsZXJ0TW9kdWxlIH0gZnJvbSAnLi9saWIvZHItYWxlcnQvZHItYWxlcnQubW9kdWxlJztcbmV4cG9ydCB7IERyVGFnc0NvbnN0cnVjdG9yTW9kdWxlIH0gZnJvbSAnLi9saWIvZHItdGFncy1jb25zdHJ1Y3Rvci9kci10YWdzLWNvbnN0cnVjdG9yLm1vZHVsZSc7XG5leHBvcnQgeyBEclRvYXN0ck1vZHVsZSB9IGZyb20gJy4vbGliL2RyLXRvYXN0ci9kci10b2FzdHIubW9kdWxlJztcbmV4cG9ydCB7IERyQ29kZUVkaXRvck1vZHVsZSB9IGZyb20gJy4vbGliL2RyLWNvZGUtZWRpdG9yL2RyLWNvZGUtZWRpdG9yLm1vZHVsZSc7XG4iXX0=
|