@libs-ui/components-inputs-upload 0.2.356-8 → 0.2.357-0
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/README.md +498 -102
- package/avatar/avatar.component.d.ts +1 -1
- package/esm2022/avatar/avatar.component.mjs +3 -3
- package/esm2022/pipes/calc-duration-video.pipe.mjs +6 -3
- package/esm2022/upload-drop-file.directive.mjs +2 -2
- package/esm2022/upload-file.directive.mjs +1 -1
- package/esm2022/upload.component.mjs +13 -7
- package/fesm2022/libs-ui-components-inputs-upload.mjs +21 -12
- package/fesm2022/libs-ui-components-inputs-upload.mjs.map +1 -1
- package/package.json +16 -15
- package/upload-drop-file.directive.d.ts +2 -2
- package/upload-file.directive.d.ts +2 -2
- package/upload.component.d.ts +4 -4
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IFile } from '@libs-ui/interfaces-types';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class LibsUiComponentsInputsUploadAvatarComponent {
|
|
4
|
-
private linkImageError;
|
|
4
|
+
private readonly linkImageError;
|
|
5
5
|
readonly item: import("@angular/core").ModelSignal<IFile>;
|
|
6
6
|
readonly showVideoDuration: import("@angular/core").InputSignal<boolean | undefined>;
|
|
7
7
|
readonly disable: import("@angular/core").InputSignal<boolean | undefined>;
|
|
@@ -30,15 +30,15 @@ export class LibsUiComponentsInputsUploadAvatarComponent {
|
|
|
30
30
|
this.outOpenPreview.emit(this.item());
|
|
31
31
|
}
|
|
32
32
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LibsUiComponentsInputsUploadAvatarComponent, deps: [{ token: LINK_IMAGE_ERROR_TOKEN_INJECT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: LibsUiComponentsInputsUploadAvatarComponent, isStandalone: true, selector: "libs_ui-components-inputs-upload-avatar", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, showVideoDuration: { classPropertyName: "showVideoDuration", publicName: "showVideoDuration", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { item: "itemChange", outOpenPreview: "outOpenPreview" }, ngImport: i0, template: "<div\n class=\"flex mr-[12px] bg-[#ffffff] rounded-[4px] {{ classInclude() }}\"\n [class.libs-ui-disable]=\"disable() || item().isUploading || item().error\">\n @if (item() | LibsUiPipesCheckFileExtensionPipe: 'image') {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"relative\">\n @if (item().url || item().origin_url; as url) {\n <img\n [src]=\"url\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"rounded-[4px] cursor-pointer\"\n alt\n (error)=\"handlerImageError($event)\"\n (click)=\"handlerImageClick($event)\" />\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'video') {\n <div\n class=\"relative\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\">\n @if (item().url || item().origin_url) {\n @let constHtmlSrc = item().url || item().origin_url || '';\n <video\n #videoRef\n [style.width.px]=\"size || 32\"\n [style.height.px]=\"size || 32\"\n class=\"rounded-[4px]\"\n preload=\"metadata\"\n [src]=\"constHtmlSrc | LibsUiPipesSecurityTrustPipe: 'resourceUrl' | async\"
|
|
33
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: LibsUiComponentsInputsUploadAvatarComponent, isStandalone: true, selector: "libs_ui-components-inputs-upload-avatar", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, showVideoDuration: { classPropertyName: "showVideoDuration", publicName: "showVideoDuration", isSignal: true, isRequired: false, transformFunction: null }, disable: { classPropertyName: "disable", publicName: "disable", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, classInclude: { classPropertyName: "classInclude", publicName: "classInclude", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { item: "itemChange", outOpenPreview: "outOpenPreview" }, ngImport: i0, template: "<div\n class=\"flex mr-[12px] bg-[#ffffff] rounded-[4px] {{ classInclude() }}\"\n [class.libs-ui-disable]=\"disable() || item().isUploading || item().error\">\n @if (item() | LibsUiPipesCheckFileExtensionPipe: 'image') {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"relative\">\n @if (item().url || item().origin_url; as url) {\n <img\n [src]=\"url\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"rounded-[4px] cursor-pointer\"\n alt\n (error)=\"handlerImageError($event)\"\n (click)=\"handlerImageClick($event)\"\n (keydown.enter)=\"handlerImageClick($event)\" />\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'video') {\n <div\n class=\"relative\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\">\n @if (item().url || item().origin_url) {\n @let constHtmlSrc = item().url || item().origin_url || '';\n <video\n #videoRef\n [style.width.px]=\"size || 32\"\n [style.height.px]=\"size || 32\"\n class=\"rounded-[4px]\"\n preload=\"metadata\"\n [src]=\"constHtmlSrc | LibsUiPipesSecurityTrustPipe: 'resourceUrl' | async\">\n <track kind=\"captions\" />\n </video>\n <div class=\"absolute w-full h-full top-0 bg-[#001433] opacity-40 rounded-[4px]\"></div>\n <div class=\"absolute w-full h-full flex items-center justify-center top-0\">\n <i class=\"text-[#ffffff] libs-ui-icon-play-solid before:!text-[10px]\"></i>\n </div>\n @if (showVideoDuration()) {\n <div class=\"flex text-[5px] absolute bottom-0 right-0 py-[2px] px-[4px] rounded-[4px] bg-[#000000] text-[#ffffff]\">\n {{ videoRef.duration | LibsUiPipesInputsUploadCalcDurationVideoPipe }}\n </div>\n }\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'pdf') {\n <ng-container *ngComponentOutlet=\"'pdf' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'word') {\n <ng-container *ngComponentOutlet=\"'word' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'pptx') {\n <ng-container *ngComponentOutlet=\"'pptx' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'xlsx') {\n <ng-container *ngComponentOutlet=\"'xlsx' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"flex items-center justify-center\">\n <i\n class=\"libs-ui-icon-file before:!text-[19px]\"\n [class.text-[#6a7383]]=\"!item().isUploading && !item().error\"\n [class.text-[#071631]]=\"disable() || item().isUploading || item().error\"></i>\n </div>\n }\n</div>\n", dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: LibsUiComponentsSpinnerComponent, selector: "libs_ui-components-spinner", inputs: ["type", "size"] }, { kind: "pipe", type: LibsUiPipesSecurityTrustPipe, name: "LibsUiPipesSecurityTrustPipe" }, { kind: "pipe", type: LibsUiPipesInputsUploadCalcDurationVideoPipe, name: "LibsUiPipesInputsUploadCalcDurationVideoPipe" }, { kind: "pipe", type: LibsUiPipesCheckFileExtensionPipe, name: "LibsUiPipesCheckFileExtensionPipe" }, { kind: "pipe", type: LibsUiIconsGetIconComponentPipe, name: "LibsUiIconsGetIconComponentPipe" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
34
|
}
|
|
35
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LibsUiComponentsInputsUploadAvatarComponent, decorators: [{
|
|
36
36
|
type: Component,
|
|
37
|
-
args: [{ selector: 'libs_ui-components-inputs-upload-avatar', standalone: true, imports: [NgComponentOutlet, AsyncPipe, TranslateModule, LibsUiComponentsSpinnerComponent, LibsUiPipesSecurityTrustPipe, LibsUiPipesInputsUploadCalcDurationVideoPipe, LibsUiPipesCheckFileExtensionPipe, LibsUiIconsGetIconComponentPipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"flex mr-[12px] bg-[#ffffff] rounded-[4px] {{ classInclude() }}\"\n [class.libs-ui-disable]=\"disable() || item().isUploading || item().error\">\n @if (item() | LibsUiPipesCheckFileExtensionPipe: 'image') {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"relative\">\n @if (item().url || item().origin_url; as url) {\n <img\n [src]=\"url\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"rounded-[4px] cursor-pointer\"\n alt\n (error)=\"handlerImageError($event)\"\n (click)=\"handlerImageClick($event)\" />\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'video') {\n <div\n class=\"relative\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\">\n @if (item().url || item().origin_url) {\n @let constHtmlSrc = item().url || item().origin_url || '';\n <video\n #videoRef\n [style.width.px]=\"size || 32\"\n [style.height.px]=\"size || 32\"\n class=\"rounded-[4px]\"\n preload=\"metadata\"\n [src]=\"constHtmlSrc | LibsUiPipesSecurityTrustPipe: 'resourceUrl' | async\"
|
|
37
|
+
args: [{ selector: 'libs_ui-components-inputs-upload-avatar', standalone: true, imports: [NgComponentOutlet, AsyncPipe, TranslateModule, LibsUiComponentsSpinnerComponent, LibsUiPipesSecurityTrustPipe, LibsUiPipesInputsUploadCalcDurationVideoPipe, LibsUiPipesCheckFileExtensionPipe, LibsUiIconsGetIconComponentPipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"flex mr-[12px] bg-[#ffffff] rounded-[4px] {{ classInclude() }}\"\n [class.libs-ui-disable]=\"disable() || item().isUploading || item().error\">\n @if (item() | LibsUiPipesCheckFileExtensionPipe: 'image') {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"relative\">\n @if (item().url || item().origin_url; as url) {\n <img\n [src]=\"url\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"rounded-[4px] cursor-pointer\"\n alt\n (error)=\"handlerImageError($event)\"\n (click)=\"handlerImageClick($event)\"\n (keydown.enter)=\"handlerImageClick($event)\" />\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'video') {\n <div\n class=\"relative\"\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\">\n @if (item().url || item().origin_url) {\n @let constHtmlSrc = item().url || item().origin_url || '';\n <video\n #videoRef\n [style.width.px]=\"size || 32\"\n [style.height.px]=\"size || 32\"\n class=\"rounded-[4px]\"\n preload=\"metadata\"\n [src]=\"constHtmlSrc | LibsUiPipesSecurityTrustPipe: 'resourceUrl' | async\">\n <track kind=\"captions\" />\n </video>\n <div class=\"absolute w-full h-full top-0 bg-[#001433] opacity-40 rounded-[4px]\"></div>\n <div class=\"absolute w-full h-full flex items-center justify-center top-0\">\n <i class=\"text-[#ffffff] libs-ui-icon-play-solid before:!text-[10px]\"></i>\n </div>\n @if (showVideoDuration()) {\n <div class=\"flex text-[5px] absolute bottom-0 right-0 py-[2px] px-[4px] rounded-[4px] bg-[#000000] text-[#ffffff]\">\n {{ videoRef.duration | LibsUiPipesInputsUploadCalcDurationVideoPipe }}\n </div>\n }\n } @else {\n <libs_ui-components-spinner [size]=\"'medium'\" />\n }\n </div>\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'pdf') {\n <ng-container *ngComponentOutlet=\"'pdf' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'word') {\n <ng-container *ngComponentOutlet=\"'word' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'pptx') {\n <ng-container *ngComponentOutlet=\"'pptx' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else if (item() | LibsUiPipesCheckFileExtensionPipe: 'xlsx') {\n <ng-container *ngComponentOutlet=\"'xlsx' | LibsUiIconsGetIconComponentPipe | async; inputs: { size: size() || 32 }\" />\n } @else {\n <div\n [style.width.px]=\"size() || 32\"\n [style.height.px]=\"size() || 32\"\n class=\"flex items-center justify-center\">\n <i\n class=\"libs-ui-icon-file before:!text-[19px]\"\n [class.text-[#6a7383]]=\"!item().isUploading && !item().error\"\n [class.text-[#071631]]=\"disable() || item().isUploading || item().error\"></i>\n </div>\n }\n</div>\n" }]
|
|
38
38
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
39
39
|
type: Optional
|
|
40
40
|
}, {
|
|
41
41
|
type: Inject,
|
|
42
42
|
args: [LINK_IMAGE_ERROR_TOKEN_INJECT]
|
|
43
43
|
}] }] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy9pbnB1dHMvdXBsb2FkL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMtdWkvY29tcG9uZW50cy9pbnB1dHMvdXBsb2FkL3NyYy9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFakUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQVVqRyxNQUFNLE9BQU8sMkNBQTJDO0lBUzBCO0lBUnZFLElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFTLENBQUM7SUFDL0IsaUJBQWlCLEdBQUcsS0FBSyxFQUFXLENBQUM7SUFDckMsT0FBTyxHQUFHLEtBQUssRUFBVyxDQUFDO0lBQzNCLElBQUksR0FBRyxLQUFLLEVBQVUsQ0FBQztJQUN2QixZQUFZLEdBQUcsS0FBSyxDQUE2QixFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTVGLGNBQWMsR0FBRyxNQUFNLEVBQVMsQ0FBQztJQUUxQyxZQUFnRixjQUFzQjtRQUF0QixtQkFBYyxHQUFkLGNBQWMsQ0FBUTtJQUFHLENBQUM7SUFFaEcsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEtBQVk7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixPQUFPO1FBQ1QsQ0FBQztRQUNBLEtBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQ3JELENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxLQUFZO1FBQ3RDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO3dHQXJCVSwyQ0FBMkMsa0JBU3RCLDZCQUE2Qjs0RkFUbEQsMkNBQTJDLGswQkNuQnhELHN4R0F1RUEsNENEdkRZLGlCQUFpQiwrT0FBRSxTQUFTLDZDQUFFLGVBQWUsK0JBQUUsZ0NBQWdDLDRGQUFFLDRCQUE0QixnRUFBRSw0Q0FBNEMsZ0ZBQUUsaUNBQWlDLHFFQUFFLCtCQUErQjs7NEZBRzlOLDJDQUEyQztrQkFSdkQsU0FBUzsrQkFFRSx5Q0FBeUMsY0FFdkMsSUFBSSxXQUNQLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxnQ0FBZ0MsRUFBRSw0QkFBNEIsRUFBRSw0Q0FBNEMsRUFBRSxpQ0FBaUMsRUFBRSwrQkFBK0IsQ0FBQyxtQkFDek4sdUJBQXVCLENBQUMsTUFBTTs7MEJBV2xDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NvbXBvbmVudE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbmplY3QsIGlucHV0LCBtb2RlbCwgT3B0aW9uYWwsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTGlic1VpQ29tcG9uZW50c1NwaW5uZXJDb21wb25lbnQgfSBmcm9tICdAbGlicy11aS9jb21wb25lbnRzLXNwaW5uZXInO1xuaW1wb3J0IHsgTGlic1VpSWNvbnNHZXRJY29uQ29tcG9uZW50UGlwZSB9IGZyb20gJ0BsaWJzLXVpL2ljb25zJztcbmltcG9ydCB7IElFdmVudCwgSUZpbGUgfSBmcm9tICdAbGlicy11aS9pbnRlcmZhY2VzLXR5cGVzJztcbmltcG9ydCB7IExpYnNVaVBpcGVzQ2hlY2tGaWxlRXh0ZW5zaW9uUGlwZSB9IGZyb20gJ0BsaWJzLXVpL3BpcGVzLWNoZWNrLWZpbGUtZXh0ZW5zaW9uJztcbmltcG9ydCB7IExpYnNVaVBpcGVzU2VjdXJpdHlUcnVzdFBpcGUgfSBmcm9tICdAbGlicy11aS9waXBlcy1zZWN1cml0eS10cnVzdCc7XG5pbXBvcnQgeyBMSU5LX0lNQUdFX0VSUk9SX1RPS0VOX0lOSkVDVCB9IGZyb20gJ0BsaWJzLXVpL3V0aWxzJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTGlic1VpUGlwZXNJbnB1dHNVcGxvYWRDYWxjRHVyYXRpb25WaWRlb1BpcGUgfSBmcm9tICcuLi9waXBlcy9jYWxjLWR1cmF0aW9uLXZpZGVvLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaWJzX3VpLWNvbXBvbmVudHMtaW5wdXRzLXVwbG9hZC1hdmF0YXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYXZhdGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ29tcG9uZW50T3V0bGV0LCBBc3luY1BpcGUsIFRyYW5zbGF0ZU1vZHVsZSwgTGlic1VpQ29tcG9uZW50c1NwaW5uZXJDb21wb25lbnQsIExpYnNVaVBpcGVzU2VjdXJpdHlUcnVzdFBpcGUsIExpYnNVaVBpcGVzSW5wdXRzVXBsb2FkQ2FsY0R1cmF0aW9uVmlkZW9QaXBlLCBMaWJzVWlQaXBlc0NoZWNrRmlsZUV4dGVuc2lvblBpcGUsIExpYnNVaUljb25zR2V0SWNvbkNvbXBvbmVudFBpcGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGlic1VpQ29tcG9uZW50c0lucHV0c1VwbG9hZEF2YXRhckNvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGl0ZW0gPSBtb2RlbC5yZXF1aXJlZDxJRmlsZT4oKTtcbiAgcmVhZG9ubHkgc2hvd1ZpZGVvRHVyYXRpb24gPSBpbnB1dDxib29sZWFuPigpO1xuICByZWFkb25seSBkaXNhYmxlID0gaW5wdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgc2l6ZSA9IGlucHV0PG51bWJlcj4oKTtcbiAgcmVhZG9ubHkgY2xhc3NJbmNsdWRlID0gaW5wdXQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+KCcnLCB7IHRyYW5zZm9ybTogKHZhbHVlKSA9PiB2YWx1ZSA/PyAnJyB9KTtcblxuICByZWFkb25seSBvdXRPcGVuUHJldmlldyA9IG91dHB1dDxJRmlsZT4oKTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KExJTktfSU1BR0VfRVJST1JfVE9LRU5fSU5KRUNUKSBwcml2YXRlIHJlYWRvbmx5IGxpbmtJbWFnZUVycm9yOiBzdHJpbmcpIHt9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIGhhbmRsZXJJbWFnZUVycm9yKGV2ZW50OiBFdmVudCkge1xuICAgIGlmICghdGhpcy5saW5rSW1hZ2VFcnJvcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAoZXZlbnQgYXMgSUV2ZW50KS50YXJnZXQuc3JjID0gdGhpcy5saW5rSW1hZ2VFcnJvcjtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVySW1hZ2VDbGljayhldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLm91dE9wZW5QcmV2aWV3LmVtaXQodGhpcy5pdGVtKCkpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiZmxleCBtci1bMTJweF0gYmctWyNmZmZmZmZdIHJvdW5kZWQtWzRweF0ge3sgY2xhc3NJbmNsdWRlKCkgfX1cIlxuICBbY2xhc3MubGlicy11aS1kaXNhYmxlXT1cImRpc2FibGUoKSB8fCBpdGVtKCkuaXNVcGxvYWRpbmcgfHwgaXRlbSgpLmVycm9yXCI+XG4gIEBpZiAoaXRlbSgpIHwgTGlic1VpUGlwZXNDaGVja0ZpbGVFeHRlbnNpb25QaXBlOiAnaW1hZ2UnKSB7XG4gICAgPGRpdlxuICAgICAgW3N0eWxlLndpZHRoLnB4XT1cInNpemUoKSB8fCAzMlwiXG4gICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cInNpemUoKSB8fCAzMlwiXG4gICAgICBjbGFzcz1cInJlbGF0aXZlXCI+XG4gICAgICBAaWYgKGl0ZW0oKS51cmwgfHwgaXRlbSgpLm9yaWdpbl91cmw7IGFzIHVybCkge1xuICAgICAgICA8aW1nXG4gICAgICAgICAgW3NyY109XCJ1cmxcIlxuICAgICAgICAgIFtzdHlsZS53aWR0aC5weF09XCJzaXplKCkgfHwgMzJcIlxuICAgICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZSgpIHx8IDMyXCJcbiAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtWzRweF0gY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgIGFsdFxuICAgICAgICAgIChlcnJvcik9XCJoYW5kbGVySW1hZ2VFcnJvcigkZXZlbnQpXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlckltYWdlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiaGFuZGxlckltYWdlQ2xpY2soJGV2ZW50KVwiIC8+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGxpYnNfdWktY29tcG9uZW50cy1zcGlubmVyIFtzaXplXT1cIidtZWRpdW0nXCIgLz5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSBpZiAoaXRlbSgpIHwgTGlic1VpUGlwZXNDaGVja0ZpbGVFeHRlbnNpb25QaXBlOiAndmlkZW8nKSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJyZWxhdGl2ZVwiXG4gICAgICBbc3R5bGUud2lkdGgucHhdPVwic2l6ZSgpIHx8IDMyXCJcbiAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwic2l6ZSgpIHx8IDMyXCI+XG4gICAgICBAaWYgKGl0ZW0oKS51cmwgfHwgaXRlbSgpLm9yaWdpbl91cmwpIHtcbiAgICAgICAgQGxldCBjb25zdEh0bWxTcmMgPSBpdGVtKCkudXJsIHx8IGl0ZW0oKS5vcmlnaW5fdXJsIHx8ICcnO1xuICAgICAgICA8dmlkZW9cbiAgICAgICAgICAjdmlkZW9SZWZcbiAgICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwic2l6ZSB8fCAzMlwiXG4gICAgICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJzaXplIHx8IDMyXCJcbiAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtWzRweF1cIlxuICAgICAgICAgIHByZWxvYWQ9XCJtZXRhZGF0YVwiXG4gICAgICAgICAgW3NyY109XCJjb25zdEh0bWxTcmMgfCBMaWJzVWlQaXBlc1NlY3VyaXR5VHJ1c3RQaXBlOiAncmVzb3VyY2VVcmwnIHwgYXN5bmNcIj5cbiAgICAgICAgICA8dHJhY2sga2luZD1cImNhcHRpb25zXCIgLz5cbiAgICAgICAgPC92aWRlbz5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHctZnVsbCBoLWZ1bGwgdG9wLTAgYmctWyMwMDE0MzNdIG9wYWNpdHktNDAgcm91bmRlZC1bNHB4XVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgdy1mdWxsIGgtZnVsbCBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB0b3AtMFwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwidGV4dC1bI2ZmZmZmZl0gbGlicy11aS1pY29uLXBsYXktc29saWQgYmVmb3JlOiF0ZXh0LVsxMHB4XVwiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoc2hvd1ZpZGVvRHVyYXRpb24oKSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHRleHQtWzVweF0gYWJzb2x1dGUgYm90dG9tLTAgcmlnaHQtMCBweS1bMnB4XSBweC1bNHB4XSByb3VuZGVkLVs0cHhdIGJnLVsjMDAwMDAwXSB0ZXh0LVsjZmZmZmZmXVwiPlxuICAgICAgICAgICAge3sgdmlkZW9SZWYuZHVyYXRpb24gfCBMaWJzVWlQaXBlc0lucHV0c1VwbG9hZENhbGNEdXJhdGlvblZpZGVvUGlwZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGxpYnNfdWktY29tcG9uZW50cy1zcGlubmVyIFtzaXplXT1cIidtZWRpdW0nXCIgLz5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSBpZiAoaXRlbSgpIHwgTGlic1VpUGlwZXNDaGVja0ZpbGVFeHRlbnNpb25QaXBlOiAncGRmJykge1xuICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiJ3BkZicgfCBMaWJzVWlJY29uc0dldEljb25Db21wb25lbnRQaXBlIHwgYXN5bmM7IGlucHV0czogeyBzaXplOiBzaXplKCkgfHwgMzIgfVwiIC8+XG4gIH0gQGVsc2UgaWYgKGl0ZW0oKSB8IExpYnNVaVBpcGVzQ2hlY2tGaWxlRXh0ZW5zaW9uUGlwZTogJ3dvcmQnKSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCInd29yZCcgfCBMaWJzVWlJY29uc0dldEljb25Db21wb25lbnRQaXBlIHwgYXN5bmM7IGlucHV0czogeyBzaXplOiBzaXplKCkgfHwgMzIgfVwiIC8+XG4gIH0gQGVsc2UgaWYgKGl0ZW0oKSB8IExpYnNVaVBpcGVzQ2hlY2tGaWxlRXh0ZW5zaW9uUGlwZTogJ3BwdHgnKSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCIncHB0eCcgfCBMaWJzVWlJY29uc0dldEljb25Db21wb25lbnRQaXBlIHwgYXN5bmM7IGlucHV0czogeyBzaXplOiBzaXplKCkgfHwgMzIgfVwiIC8+XG4gIH0gQGVsc2UgaWYgKGl0ZW0oKSB8IExpYnNVaVBpcGVzQ2hlY2tGaWxlRXh0ZW5zaW9uUGlwZTogJ3hsc3gnKSB7XG4gICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCIneGxzeCcgfCBMaWJzVWlJY29uc0dldEljb25Db21wb25lbnRQaXBlIHwgYXN5bmM7IGlucHV0czogeyBzaXplOiBzaXplKCkgfHwgMzIgfVwiIC8+XG4gIH0gQGVsc2Uge1xuICAgIDxkaXZcbiAgICAgIFtzdHlsZS53aWR0aC5weF09XCJzaXplKCkgfHwgMzJcIlxuICAgICAgW3N0eWxlLmhlaWdodC5weF09XCJzaXplKCkgfHwgMzJcIlxuICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiPlxuICAgICAgPGlcbiAgICAgICAgY2xhc3M9XCJsaWJzLXVpLWljb24tZmlsZSBiZWZvcmU6IXRleHQtWzE5cHhdXCJcbiAgICAgICAgW2NsYXNzLnRleHQtWyM2YTczODNdXT1cIiFpdGVtKCkuaXNVcGxvYWRpbmcgJiYgIWl0ZW0oKS5lcnJvclwiXG4gICAgICAgIFtjbGFzcy50ZXh0LVsjMDcxNjMxXV09XCJkaXNhYmxlKCkgfHwgaXRlbSgpLmlzVXBsb2FkaW5nIHx8IGl0ZW0oKS5lcnJvclwiPjwvaT5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
@@ -10,12 +10,15 @@ export class LibsUiPipesInputsUploadCalcDurationVideoPipe {
|
|
|
10
10
|
const hour = Math.floor(duration / 3600);
|
|
11
11
|
const minute = Math.floor((duration - hour * 3600) / 60);
|
|
12
12
|
const second = duration - (hour * 3600 + minute * 60);
|
|
13
|
-
|
|
13
|
+
const minuteStr = String(minute).padStart(2, '0');
|
|
14
|
+
const secondStr = String(second).padStart(2, '0');
|
|
15
|
+
return `${hour}:${minuteStr}:${secondStr}`;
|
|
14
16
|
}
|
|
15
17
|
if (duration >= 60) {
|
|
16
18
|
const minute = Math.floor(duration / 60);
|
|
17
19
|
const second = duration - minute * 60;
|
|
18
|
-
|
|
20
|
+
const secondStr2 = String(second).padStart(2, '0');
|
|
21
|
+
return `${minute}:${secondStr2}`;
|
|
19
22
|
}
|
|
20
23
|
return `0:${duration}`;
|
|
21
24
|
}
|
|
@@ -29,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
29
32
|
standalone: true,
|
|
30
33
|
}]
|
|
31
34
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsYy1kdXJhdGlvbi12aWRlby5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL2lucHV0cy91cGxvYWQvc3JjL3BpcGVzL2NhbGMtZHVyYXRpb24tdmlkZW8ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFNcEQsTUFBTSxPQUFPLDRDQUE0QztJQUN2RCxTQUFTLENBQUMsUUFBZ0I7UUFDeEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEMsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFDckIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDekMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDekQsTUFBTSxNQUFNLEdBQUcsUUFBUSxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxNQUFNLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFFdEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDbEQsT0FBTyxHQUFHLElBQUksSUFBSSxTQUFTLElBQUksU0FBUyxFQUFFLENBQUM7UUFDN0MsQ0FBQztRQUNELElBQUksUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ25CLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sTUFBTSxHQUFHLFFBQVEsR0FBRyxNQUFNLEdBQUcsRUFBRSxDQUFDO1lBRXRDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ25ELE9BQU8sR0FBRyxNQUFNLElBQUksVUFBVSxFQUFFLENBQUM7UUFDbkMsQ0FBQztRQUVELE9BQU8sS0FBSyxRQUFRLEVBQUUsQ0FBQztJQUN6QixDQUFDO3dHQXhCVSw0Q0FBNEM7c0dBQTVDLDRDQUE0Qzs7NEZBQTVDLDRDQUE0QztrQkFKeEQsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsOENBQThDO29CQUNwRCxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ0xpYnNVaVBpcGVzSW5wdXRzVXBsb2FkQ2FsY0R1cmF0aW9uVmlkZW9QaXBlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTGlic1VpUGlwZXNJbnB1dHNVcGxvYWRDYWxjRHVyYXRpb25WaWRlb1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKGR1cmF0aW9uOiBudW1iZXIpIHtcbiAgICBpZiAoIWR1cmF0aW9uKSB7XG4gICAgICByZXR1cm4gJzA6MCc7XG4gICAgfVxuICAgIGR1cmF0aW9uID0gTWF0aC5yb3VuZChkdXJhdGlvbik7XG4gICAgaWYgKGR1cmF0aW9uID49IDM2MDApIHtcbiAgICAgIGNvbnN0IGhvdXIgPSBNYXRoLmZsb29yKGR1cmF0aW9uIC8gMzYwMCk7XG4gICAgICBjb25zdCBtaW51dGUgPSBNYXRoLmZsb29yKChkdXJhdGlvbiAtIGhvdXIgKiAzNjAwKSAvIDYwKTtcbiAgICAgIGNvbnN0IHNlY29uZCA9IGR1cmF0aW9uIC0gKGhvdXIgKiAzNjAwICsgbWludXRlICogNjApO1xuXG4gICAgICBjb25zdCBtaW51dGVTdHIgPSBTdHJpbmcobWludXRlKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgICAgY29uc3Qgc2Vjb25kU3RyID0gU3RyaW5nKHNlY29uZCkucGFkU3RhcnQoMiwgJzAnKTtcbiAgICAgIHJldHVybiBgJHtob3VyfToke21pbnV0ZVN0cn06JHtzZWNvbmRTdHJ9YDtcbiAgICB9XG4gICAgaWYgKGR1cmF0aW9uID49IDYwKSB7XG4gICAgICBjb25zdCBtaW51dGUgPSBNYXRoLmZsb29yKGR1cmF0aW9uIC8gNjApO1xuICAgICAgY29uc3Qgc2Vjb25kID0gZHVyYXRpb24gLSBtaW51dGUgKiA2MDtcblxuICAgICAgY29uc3Qgc2Vjb25kU3RyMiA9IFN0cmluZyhzZWNvbmQpLnBhZFN0YXJ0KDIsICcwJyk7XG4gICAgICByZXR1cm4gYCR7bWludXRlfToke3NlY29uZFN0cjJ9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gYDA6JHtkdXJhdGlvbn1gO1xuICB9XG59XG4iXX0=
|
|
@@ -37,7 +37,7 @@ export class LibsUiComponentsInputsUploadDropFileDirective {
|
|
|
37
37
|
e.preventDefault();
|
|
38
38
|
this.outDrop.emit(e);
|
|
39
39
|
const fileList = Array.from(e.dataTransfer?.files || e.clipboardData?.files || []).filter(isTypeFile);
|
|
40
|
-
if (!fileList
|
|
40
|
+
if (!fileList?.length) {
|
|
41
41
|
return;
|
|
42
42
|
}
|
|
43
43
|
if (this.multiple()) {
|
|
@@ -62,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
62
62
|
standalone: true,
|
|
63
63
|
}]
|
|
64
64
|
}] });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWRyb3AtZmlsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzLXVpL2NvbXBvbmVudHMvaW5wdXRzL3VwbG9hZC9zcmMvdXBsb2FkLWRyb3AtZmlsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBTTNDLE1BQU0sT0FBTyw2Q0FBNkM7SUFDdkMsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFeEMsUUFBUSxHQUFHLEtBQUssQ0FBK0IsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztJQUU5RixXQUFXLEdBQUcsTUFBTSxFQUFVLENBQUM7SUFDL0IsWUFBWSxHQUFHLE1BQU0sRUFBVSxDQUFDO0lBQ2hDLE9BQU8sR0FBRyxNQUFNLEVBQVUsQ0FBQztJQUMzQixZQUFZLEdBQUcsTUFBTSxFQUFVLENBQUM7SUFDaEMsV0FBVyxHQUFHLE1BQU0sRUFBUSxDQUFDO0lBRXJCLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFakQsZUFBZTtRQUNiLFNBQVMsQ0FBUyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7YUFDekQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUNMLFNBQVMsQ0FBUyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxXQUFXLENBQUM7YUFDMUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDL0IsU0FBUyxDQUFDLENBQUMsQ0FBUyxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUNuQixJQUFJLHlCQUF5QixDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hFLE9BQU87WUFDVCxDQUFDO1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFFTCxTQUFTLENBQVMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDO2FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFckIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsYUFBYSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFNUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDdEIsT0FBTztZQUNULENBQUM7WUFFRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFakMsT0FBTztZQUNULENBQUM7WUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7d0dBekRVLDZDQUE2Qzs0RkFBN0MsNkNBQTZDOzs0RkFBN0MsNkNBQTZDO2tCQUx6RCxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGlEQUFpRDtvQkFDM0QsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIGlucHV0LCBPbkRlc3Ryb3ksIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnQGxpYnMtdWkvaW50ZXJmYWNlcy10eXBlcyc7XG5pbXBvcnQgeyBjaGVja01vdXNlT3ZlckluQ29udGFpbmVyLCBpc1R5cGVGaWxlIH0gZnJvbSAnQGxpYnMtdWkvdXRpbHMnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbTGlic1VpQ29tcG9uZW50c0lucHV0c1VwbG9hZERyb3BGaWxlRGlyZWN0aXZlXScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIExpYnNVaUNvbXBvbmVudHNJbnB1dHNVcGxvYWREcm9wRmlsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25EZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICByZWFkb25seSBtdWx0aXBsZSA9IGlucHV0PGJvb2xlYW4sIGJvb2xlYW4gfCB1bmRlZmluZWQ+KHRydWUsIHsgdHJhbnNmb3JtOiAodmFsdWUpID0+IHZhbHVlID8/IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgb3V0RHJhZ092ZXIgPSBvdXRwdXQ8SUV2ZW50PigpO1xuICByZWFkb25seSBvdXREcmFnTGVhdmUgPSBvdXRwdXQ8SUV2ZW50PigpO1xuICByZWFkb25seSBvdXREcm9wID0gb3V0cHV0PElFdmVudD4oKTtcbiAgcmVhZG9ubHkgb3V0RHJvcEZpbGVzID0gb3V0cHV0PEZpbGVbXT4oKTtcbiAgcmVhZG9ubHkgb3V0RHJvcEZpbGUgPSBvdXRwdXQ8RmlsZT4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGZyb21FdmVudDxJRXZlbnQ+KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZHJhZ292ZXInKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95KSlcbiAgICAgIC5zdWJzY3JpYmUoKGU6IElFdmVudCkgPT4ge1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMub3V0RHJhZ092ZXIuZW1pdChlKTtcbiAgICAgIH0pO1xuICAgIGZyb21FdmVudDxJRXZlbnQ+KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZHJhZ2xlYXZlJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChlOiBJRXZlbnQpID0+IHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBpZiAoY2hlY2tNb3VzZU92ZXJJbkNvbnRhaW5lcihlLCB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vdXREcmFnTGVhdmUuZW1pdChlKTtcbiAgICAgIH0pO1xuXG4gICAgZnJvbUV2ZW50PElFdmVudD4odGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdkcm9wJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChlOiBJRXZlbnQpID0+IHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLm91dERyb3AuZW1pdChlKTtcblxuICAgICAgICBjb25zdCBmaWxlTGlzdCA9IEFycmF5LmZyb208RmlsZT4oZS5kYXRhVHJhbnNmZXI/LmZpbGVzIHx8IGUuY2xpcGJvYXJkRGF0YT8uZmlsZXMgfHwgW10pLmZpbHRlcihpc1R5cGVGaWxlKTtcblxuICAgICAgICBpZiAoIWZpbGVMaXN0Py5sZW5ndGgpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5tdWx0aXBsZSgpKSB7XG4gICAgICAgICAgdGhpcy5vdXREcm9wRmlsZXMuZW1pdChmaWxlTGlzdCk7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5vdXREcm9wRmlsZS5lbWl0KGZpbGVMaXN0WzBdKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5vbkRlc3Ryb3kubmV4dCgpO1xuICAgIHRoaXMub25EZXN0cm95LmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
51
51
|
standalone: true,
|
|
52
52
|
}]
|
|
53
53
|
}] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL2lucHV0cy91cGxvYWQvc3JjL3VwbG9hZC1maWxlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkcsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU9yRCxNQUFNLE9BQU8scUNBQXFDO0lBQy9CLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXhDLFFBQVEsR0FBRyxLQUFLLENBQStCLElBQUksRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUYsV0FBVyxHQUFHLEtBQUssQ0FBNkIsNkVBQTZFLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSw2RUFBNkUsRUFBRSxDQUFDLENBQUM7SUFFN08sY0FBYyxHQUFHLE1BQU0sRUFBVSxDQUFDO0lBQ2xDLGFBQWEsR0FBRyxNQUFNLEVBQVEsQ0FBQztJQUV2QixVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWpELGVBQWU7UUFDYixTQUFTLENBQVMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDO2FBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQy9CLFNBQVMsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNwQixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7WUFFbkIsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNELGtCQUFrQixDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7WUFDakMsa0JBQWtCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMvQyxrQkFBa0IsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzlDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQzFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzNCLFNBQVMsQ0FBUyxrQkFBa0IsRUFBRSxRQUFRLENBQUM7aUJBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUMvQixTQUFTLENBQUMsQ0FBQyxLQUFhLEVBQUUsRUFBRTtnQkFDM0IsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBTyxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDdkYsa0JBQWtCLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUM7b0JBQ25CLE9BQU87Z0JBQ1QsQ0FBQztnQkFDRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO29CQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFFaEMsT0FBTztnQkFDVCxDQUFDO2dCQUNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM1QixDQUFDO3dHQTdDVSxxQ0FBcUM7NEZBQXJDLHFDQUFxQzs7NEZBQXJDLHFDQUFxQztrQkFMakQsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSx5Q0FBeUM7b0JBQ25ELFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBpbnB1dCwgT25EZXN0cm95LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ0BsaWJzLXVpL2ludGVyZmFjZXMtdHlwZXMnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW0xpYnNVaUNvbXBvbmVudHNJbnB1dHNVcGxvYWREaXJlY3RpdmVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgTGlic1VpQ29tcG9uZW50c0lucHV0c1VwbG9hZERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb25EZXN0cm95ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICByZWFkb25seSBtdWx0aXBsZSA9IGlucHV0PGJvb2xlYW4sIGJvb2xlYW4gfCB1bmRlZmluZWQ+KHRydWUsIHsgdHJhbnNmb3JtOiAodmFsKSA9PiB2YWwgPz8gdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgYWNjZXNzRmlsZXMgPSBpbnB1dDxzdHJpbmcsIHN0cmluZyB8IHVuZGVmaW5lZD4oJ2ltYWdlL3gtcG5nLGltYWdlL2pwZyxpbWFnZS9qcGVnLGltYWdlL1BORyxpbWFnZS94LVBORyxpbWFnZS9KUEcsaW1hZ2UvSlBFRycsIHsgdHJhbnNmb3JtOiAodmFsKSA9PiB2YWwgPz8gJ2ltYWdlL3gtcG5nLGltYWdlL2pwZyxpbWFnZS9qcGVnLGltYWdlL1BORyxpbWFnZS94LVBORyxpbWFnZS9KUEcsaW1hZ2UvSlBFRycgfSk7XG5cbiAgcmVhZG9ubHkgb3V0VXBsb2FkRmlsZXMgPSBvdXRwdXQ8RmlsZVtdPigpO1xuICByZWFkb25seSBvdXRVcGxvYWRGaWxlID0gb3V0cHV0PEZpbGU+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBmcm9tRXZlbnQ8SUV2ZW50Pih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChlOiBJRXZlbnQpID0+IHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGNvbnN0IGlucHV0RWxlbWVudFVwbG9hZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XG4gICAgICAgIGlucHV0RWxlbWVudFVwbG9hZC50eXBlID0gJ2ZpbGUnO1xuICAgICAgICBpbnB1dEVsZW1lbnRVcGxvYWQuYWNjZXB0ID0gdGhpcy5hY2Nlc3NGaWxlcygpO1xuICAgICAgICBpbnB1dEVsZW1lbnRVcGxvYWQubXVsdGlwbGUgPSB0aGlzLm11bHRpcGxlKCk7XG4gICAgICAgIGlucHV0RWxlbWVudFVwbG9hZC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICBpbnB1dEVsZW1lbnRVcGxvYWQuY2xpY2soKTtcbiAgICAgICAgZnJvbUV2ZW50PElFdmVudD4oaW5wdXRFbGVtZW50VXBsb2FkLCAnY2hhbmdlJylcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpbGVzID0gQXJyYXkuZnJvbTxGaWxlPihldmVudC5kYXRhVHJhbnNmZXI/LmZpbGVzIHx8IGV2ZW50LnRhcmdldD8uZmlsZXMgfHwgW10pO1xuICAgICAgICAgICAgaW5wdXRFbGVtZW50VXBsb2FkLnJlbW92ZSgpO1xuICAgICAgICAgICAgaWYgKCFmaWxlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLm11bHRpcGxlKCkpIHtcbiAgICAgICAgICAgICAgdGhpcy5vdXRVcGxvYWRGaWxlcy5lbWl0KGZpbGVzKTtcblxuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLm91dFVwbG9hZEZpbGUuZW1pdChmaWxlc1swXSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25EZXN0cm95Lm5leHQoKTtcbiAgICB0aGlzLm9uRGVzdHJveS5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
|