ng-tailwind 6.0.0 → 6.0.2
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/components/ngt-action/ngt-action.component.d.ts +1 -1
- package/components/ngt-button/ngt-button.component.d.ts +1 -1
- package/components/ngt-checkbox/ngt-checkbox.component.d.ts +1 -1
- package/components/ngt-content/ngt-content.component.d.ts +1 -1
- package/components/ngt-context-menu/ngt-context-menu.directive.d.ts +1 -1
- package/components/ngt-datatable/ngt-datatable.component.d.ts +1 -1
- package/components/ngt-datatable/ngt-td-check/ngt-td-check.component.d.ts +1 -1
- package/components/ngt-datatable/ngt-th/ngt-th.component.d.ts +1 -1
- package/components/ngt-datatable/ngt-tr/ngt-tr.component.d.ts +1 -1
- package/components/ngt-date/ngt-date.component.d.ts +3 -6
- package/components/ngt-date/ngt-date.module.d.ts +4 -5
- package/components/ngt-dropdown/ngt-dropdown.component.d.ts +1 -1
- package/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.d.ts +1 -3
- package/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.d.ts +1 -1
- package/components/ngt-dropzone/ngt-dropzone.component.d.ts +1 -1
- package/components/ngt-dropzone/ngt-dropzone.module.d.ts +2 -3
- package/components/ngt-floating-button/ngt-floating-button.component.d.ts +1 -1
- package/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.d.ts +1 -1
- package/components/ngt-form/ngt-form.component.d.ts +1 -1
- package/components/ngt-header-nav/ngt-header-nav.component.d.ts +1 -1
- package/components/ngt-helper/ngt-helper.component.d.ts +1 -1
- package/components/ngt-input/ngt-input.component.d.ts +1 -1
- package/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.d.ts +1 -1
- package/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.d.ts +1 -1
- package/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.d.ts +1 -1
- package/components/ngt-modal/ngt-modal.component.d.ts +1 -1
- package/components/ngt-multi-select/ngt-multi-select.component.d.ts +1 -1
- package/components/ngt-pagination/ngt-pagination.component.d.ts +1 -1
- package/components/ngt-popover/ngt-popover.component.d.ts +1 -1
- package/components/ngt-popover/ngt-popover.directive.d.ts +1 -1
- package/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.d.ts +1 -1
- package/components/ngt-portlet/ngt-portlet.component.d.ts +1 -1
- package/components/ngt-radio-button/ngt-radio-button.component.d.ts +1 -1
- package/components/ngt-section/ngt-section.component.d.ts +1 -1
- package/components/ngt-select/ngt-select.component.d.ts +1 -1
- package/components/ngt-shining/ngt-shining.component.d.ts +1 -1
- package/components/ngt-sidenav/ngt-sidenav.component.d.ts +1 -1
- package/components/ngt-slider/ngt-slider.component.d.ts +1 -1
- package/components/ngt-svg/ngt-svg.component.d.ts +1 -1
- package/components/ngt-tag/ngt-tag.component.d.ts +1 -1
- package/components/ngt-textarea/ngt-textarea.component.d.ts +1 -1
- package/components/ngt-validation/ngt-validation.component.d.ts +1 -1
- package/directives/ngt-stylizable/ngt-stylizable.directive.d.ts +1 -1
- package/{esm2020 → esm2022}/components/ngt-action/ngt-action.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-action/ngt-action.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-button/ngt-button.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-button/ngt-button.module.mjs +9 -9
- package/esm2022/components/ngt-checkbox/ngt-checkbox.component.mjs +192 -0
- package/{esm2020 → esm2022}/components/ngt-checkbox/ngt-checkbox.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-content/ngt-content.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-content/ngt-content.module.mjs +5 -5
- package/{esm2020 → esm2022}/components/ngt-context-menu/ngt-context-menu.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-context-menu/ngt-context-menu.directive.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-context-menu/ngt-context-menu.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-datatable.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-datatable.module.mjs +39 -39
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-tbody/ngt-tbody.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-td/ngt-td.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-td-check/ngt-td-check.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-th/ngt-th.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-th-check/ngt-th-check.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-thead/ngt-thead.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-datatable/ngt-tr/ngt-tr.component.mjs +5 -5
- package/esm2022/components/ngt-date/ngt-date.component.mjs +425 -0
- package/esm2022/components/ngt-date/ngt-date.module.mjs +36 -0
- package/{esm2020 → esm2022}/components/ngt-dropdown/ngt-dropdown-container/ngt-dropdown-container.component.mjs +4 -4
- package/esm2022/components/ngt-dropdown/ngt-dropdown.component.mjs +205 -0
- package/{esm2020 → esm2022}/components/ngt-dropdown/ngt-dropdown.module.mjs +5 -5
- package/esm2022/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.mjs +54 -0
- package/esm2022/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.mjs +61 -0
- package/{esm2020 → esm2022}/components/ngt-dropzone/ngt-dropzone-view/ngt-dropzone-view.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-dropzone/ngt-dropzone.component.mjs +8 -8
- package/esm2022/components/ngt-dropzone/ngt-dropzone.module.mjs +55 -0
- package/esm2022/components/ngt-floating-button/ngt-floating-button.component.mjs +119 -0
- package/{esm2020 → esm2022}/components/ngt-floating-button/ngt-floating-button.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-form/ngt-form-validation-message/ngt-form-validation-message.component.mjs +4 -4
- package/esm2022/components/ngt-form/ngt-form.component.mjs +207 -0
- package/{esm2020 → esm2022}/components/ngt-form/ngt-form.module.mjs +7 -7
- package/{esm2020 → esm2022}/components/ngt-header-nav/ngt-header-nav.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-header-nav/ngt-header-nav.module.mjs +5 -5
- package/{esm2020 → esm2022}/components/ngt-helper/ngt-helper.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-helper/ngt-helper.module.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-input/ngt-input.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-input/ngt-input.module.mjs +19 -19
- package/{esm2020 → esm2022}/components/ngt-modal/ngt-modal-body/ngt-modal-body.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-modal/ngt-modal-footer/ngt-modal-footer.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-modal/ngt-modal-header/ngt-modal-header.component.mjs +5 -5
- package/esm2022/components/ngt-modal/ngt-modal.component.mjs +122 -0
- package/{esm2020 → esm2022}/components/ngt-modal/ngt-modal.module.mjs +11 -11
- package/{esm2020 → esm2022}/components/ngt-multi-select/ngt-multi-select.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-multi-select/ngt-multi-select.module.mjs +19 -19
- package/{esm2020 → esm2022}/components/ngt-pagination/ngt-pagination.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-pagination/ngt-pagination.module.mjs +13 -13
- package/esm2022/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.mjs +59 -0
- package/{esm2020 → esm2022}/components/ngt-popover/ngt-popover.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-popover/ngt-popover.directive.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-popover/ngt-popover.module.mjs +10 -10
- package/{esm2020 → esm2022}/components/ngt-portlet/ngt-portlet-body/ngt-portlet-body.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-portlet/ngt-portlet-footer/ngt-portlet-footer.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-portlet/ngt-portlet-header/ngt-portlet-header.component.mjs +4 -4
- package/esm2022/components/ngt-portlet/ngt-portlet.component.mjs +74 -0
- package/{esm2020 → esm2022}/components/ngt-portlet/ngt-portlet.module.mjs +15 -15
- package/{esm2020 → esm2022}/components/ngt-radio-button/ngt-radio-button-container/ngt-radio-button-container.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-radio-button/ngt-radio-button.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-radio-button/ngt-radio-button.module.mjs +9 -9
- package/esm2022/components/ngt-section/ngt-section.component.mjs +151 -0
- package/{esm2020 → esm2022}/components/ngt-section/ngt-section.module.mjs +11 -11
- package/{esm2020 → esm2022}/components/ngt-select/ngt-select.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-select/ngt-select.directive.mjs +10 -10
- package/{esm2020 → esm2022}/components/ngt-select/ngt-select.module.mjs +25 -25
- package/{esm2020 → esm2022}/components/ngt-shining/ngt-shining.component.mjs +5 -5
- package/{esm2020 → esm2022}/components/ngt-shining/ngt-shining.module.mjs +5 -5
- package/{esm2020 → esm2022}/components/ngt-sidenav/ngt-sidenav.component.mjs +6 -6
- package/{esm2020 → esm2022}/components/ngt-sidenav/ngt-sidenav.module.mjs +5 -5
- package/{esm2020 → esm2022}/components/ngt-slider/ngt-slider.component.mjs +9 -9
- package/{esm2020 → esm2022}/components/ngt-slider/ngt-slider.module.mjs +7 -7
- package/{esm2020 → esm2022}/components/ngt-svg/ngt-svg.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-svg/ngt-svg.module.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-tag/ngt-tag.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-tag/ngt-tag.module.mjs +7 -7
- package/{esm2020 → esm2022}/components/ngt-textarea/ngt-textarea.component.mjs +8 -8
- package/{esm2020 → esm2022}/components/ngt-textarea/ngt-textarea.module.mjs +17 -17
- package/{esm2020 → esm2022}/components/ngt-validation/ngt-validation.component.mjs +4 -4
- package/{esm2020 → esm2022}/components/ngt-validation/ngt-validation.module.mjs +5 -5
- package/{esm2020 → esm2022}/directives/ngt-stylizable/ngt-stylizable.directive.mjs +4 -4
- package/{esm2020 → esm2022}/directives/ngt-stylizable/ngt-stylizable.module.mjs +5 -5
- package/{fesm2020 → fesm2022}/ng-tailwind.mjs +631 -644
- package/fesm2022/ng-tailwind.mjs.map +1 -0
- package/package.json +7 -16
- package/esm2020/components/ngt-checkbox/ngt-checkbox.component.mjs +0 -192
- package/esm2020/components/ngt-date/ngt-date.component.mjs +0 -435
- package/esm2020/components/ngt-date/ngt-date.module.mjs +0 -40
- package/esm2020/components/ngt-dropdown/ngt-dropdown.component.mjs +0 -205
- package/esm2020/components/ngt-dropzone/custom-dropzone-preview/custom-dropzone-preview.component.mjs +0 -54
- package/esm2020/components/ngt-dropzone/ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component.mjs +0 -66
- package/esm2020/components/ngt-dropzone/ngt-dropzone.module.mjs +0 -55
- package/esm2020/components/ngt-floating-button/ngt-floating-button.component.mjs +0 -119
- package/esm2020/components/ngt-form/ngt-form.component.mjs +0 -207
- package/esm2020/components/ngt-modal/ngt-modal.component.mjs +0 -122
- package/esm2020/components/ngt-popover/ngt-popover-tooltip/ngt-popover-tooltip.component.mjs +0 -59
- package/esm2020/components/ngt-portlet/ngt-portlet.component.mjs +0 -74
- package/esm2020/components/ngt-section/ngt-section.component.mjs +0 -151
- package/fesm2015/ng-tailwind.mjs +0 -8913
- package/fesm2015/ng-tailwind.mjs.map +0 -1
- package/fesm2020/ng-tailwind.mjs.map +0 -1
- /package/{esm2020 → esm2022}/animations/ngt-angular-animations.mjs +0 -0
- /package/{esm2020 → esm2022}/base/ngt-base-ng-model.mjs +0 -0
- /package/{esm2020 → esm2022}/components/ngt-dropzone/ngt-dropzone.meta.mjs +0 -0
- /package/{esm2020 → esm2022}/enums/size.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/enum/enum.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/form/form.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/input-mask/input-mask.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/promise/promise-helper.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/routing/route.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/uuid.mjs +0 -0
- /package/{esm2020 → esm2022}/ng-tailwind.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-attachment-http.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-http-form.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-http-resource.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-http-validation.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-http.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/http/ngt-translate.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/ngt-stylizable/ngt-stylizable.service.mjs +0 -0
- /package/{esm2020 → esm2022}/services/validation/ngt-ability-validation.service.mjs +0 -0
|
@@ -1,205 +0,0 @@
|
|
|
1
|
-
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
2
|
-
import { Component, EventEmitter, Input, Optional, Output, SkipSelf, ViewChild, } from '@angular/core';
|
|
3
|
-
import { getEnumFromString } from '../../helpers/enum/enum';
|
|
4
|
-
import { uuid } from '../../helpers/uuid';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "./ngt-dropdown-container/ngt-dropdown-container.component";
|
|
7
|
-
import * as i2 from "@angular/common";
|
|
8
|
-
export class NgtDropdownComponent {
|
|
9
|
-
constructor(ngtDropdownContainer, changeDetector) {
|
|
10
|
-
this.ngtDropdownContainer = ngtDropdownContainer;
|
|
11
|
-
this.changeDetector = changeDetector;
|
|
12
|
-
this.autoYReverse = true;
|
|
13
|
-
this.closeTimeout = 1000;
|
|
14
|
-
this.openMethod = NgtDropdownOpenMethod.HOVER;
|
|
15
|
-
this.onToggle = new EventEmitter();
|
|
16
|
-
this.onHostClick = new EventEmitter();
|
|
17
|
-
this.name = uuid();
|
|
18
|
-
this.isBindingYPosition = true;
|
|
19
|
-
this.isBindingXPosition = true;
|
|
20
|
-
this.subscriptions = [];
|
|
21
|
-
if (this.ngtDropdownContainer) {
|
|
22
|
-
this.subscriptions.push(this.ngtDropdownContainer.onActiveDropdownChange.subscribe((activeDropdown) => {
|
|
23
|
-
this.isOpen = (activeDropdown.name === this.name);
|
|
24
|
-
}));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
ngOnChanges(changes) {
|
|
28
|
-
if (changes.openMethod) {
|
|
29
|
-
this.openMethod = getEnumFromString(changes.openMethod.currentValue, NgtDropdownOpenMethod);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
ngOnDestroy() {
|
|
33
|
-
this.destroySubscriptions();
|
|
34
|
-
}
|
|
35
|
-
open() {
|
|
36
|
-
this.isOpen = true;
|
|
37
|
-
this.ngtDropdownContainer?.setActiveDropdown(this);
|
|
38
|
-
this.changeDetector.detectChanges();
|
|
39
|
-
this.bindContainerXPosition();
|
|
40
|
-
this.bindContainerYPosition();
|
|
41
|
-
this.onToggle.emit(this.isOpen);
|
|
42
|
-
}
|
|
43
|
-
closeOnSelectOption() {
|
|
44
|
-
if (this.closeOnClick) {
|
|
45
|
-
this.close();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
close() {
|
|
49
|
-
this.isOpen = false;
|
|
50
|
-
this.containerXPosition = null;
|
|
51
|
-
this.containerYPosition = null;
|
|
52
|
-
this.onToggle.emit(this.isOpen);
|
|
53
|
-
}
|
|
54
|
-
toggle() {
|
|
55
|
-
setTimeout(() => {
|
|
56
|
-
if (this.isOpen) {
|
|
57
|
-
this.close();
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.open();
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
onHover(host, container) {
|
|
65
|
-
if (this.openMethod == NgtDropdownOpenMethod.HOVER && host && container) {
|
|
66
|
-
this.open();
|
|
67
|
-
this.watchHover(host, container);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
onClick(event, host, container) {
|
|
71
|
-
this.onHostClick?.emit();
|
|
72
|
-
if (this.isClickMethod()) {
|
|
73
|
-
event.preventDefault();
|
|
74
|
-
event.stopPropagation();
|
|
75
|
-
this.toggle();
|
|
76
|
-
}
|
|
77
|
-
if (this.openMethod == NgtDropdownOpenMethod.POPOVER_CLICK) {
|
|
78
|
-
this.watchHover(host, container);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
onRightClick(event) {
|
|
82
|
-
if (this.openMethod == NgtDropdownOpenMethod.RIGHT_CLICK) {
|
|
83
|
-
event.preventDefault();
|
|
84
|
-
event.stopPropagation();
|
|
85
|
-
this.toggle();
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
shouldReverseXPosition() {
|
|
89
|
-
if (!this.autoXReverse || this.reverseXPosition !== undefined) {
|
|
90
|
-
return this.reverseXPosition;
|
|
91
|
-
}
|
|
92
|
-
if (this.isOpen && !this.isBindingXPosition) {
|
|
93
|
-
this.isXPositionReversed = !(this.containerXPosition > document.documentElement.clientWidth);
|
|
94
|
-
return this.isXPositionReversed;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
shouldReverseYPosition() {
|
|
98
|
-
if (!this.autoYReverse || this.reverseYPosition !== undefined) {
|
|
99
|
-
return this.reverseYPosition;
|
|
100
|
-
}
|
|
101
|
-
if (this.isOpen && !this.isBindingYPosition) {
|
|
102
|
-
this.isYPositionReversed = this.containerYPosition > (document.documentElement.clientHeight * 0.9);
|
|
103
|
-
return this.isYPositionReversed;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
bindContainerXPosition() {
|
|
107
|
-
if (!this.containerXPosition && this.containerRef.nativeElement.offsetWidth) {
|
|
108
|
-
this.isBindingXPosition = true;
|
|
109
|
-
setTimeout(() => {
|
|
110
|
-
this.containerXPosition = this.containerRef.nativeElement.getBoundingClientRect().x
|
|
111
|
-
+ this.containerRef.nativeElement.offsetWidth;
|
|
112
|
-
this.isBindingXPosition = false;
|
|
113
|
-
this.changeDetector.detectChanges();
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
bindContainerYPosition() {
|
|
118
|
-
if (!this.containerYPosition && this.containerRef?.nativeElement.offsetHeight) {
|
|
119
|
-
this.isBindingYPosition = true;
|
|
120
|
-
setTimeout(() => {
|
|
121
|
-
this.containerYPosition = this.containerRef.nativeElement.getBoundingClientRect().y
|
|
122
|
-
+ this.containerRef.nativeElement.offsetHeight;
|
|
123
|
-
this.isBindingYPosition = false;
|
|
124
|
-
this.changeDetector.detectChanges();
|
|
125
|
-
});
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
watchHover(host, container) {
|
|
129
|
-
const interval = setInterval(() => {
|
|
130
|
-
if (!host || !container || !this.isInHover(host, container)) {
|
|
131
|
-
this.close();
|
|
132
|
-
clearInterval(interval);
|
|
133
|
-
}
|
|
134
|
-
}, this.closeTimeout);
|
|
135
|
-
}
|
|
136
|
-
isInHover(host, container) {
|
|
137
|
-
return host.parentElement.querySelector(':hover') == host ||
|
|
138
|
-
container.parentElement.querySelector(':hover') == container;
|
|
139
|
-
}
|
|
140
|
-
destroySubscriptions() {
|
|
141
|
-
this.subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
142
|
-
this.subscriptions = [];
|
|
143
|
-
}
|
|
144
|
-
isClickMethod() {
|
|
145
|
-
return this.openMethod == NgtDropdownOpenMethod.CLICK
|
|
146
|
-
|| this.openMethod == NgtDropdownOpenMethod.POPOVER_CLICK;
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
NgtDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropdownComponent, deps: [{ token: i1.NgtDropdownContainerComponent, optional: true, skipSelf: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
150
|
-
NgtDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtDropdownComponent, selector: "ngt-dropdown", inputs: { scrollable: "scrollable", autoXReverse: "autoXReverse", autoYReverse: "autoYReverse", reverseXPosition: "reverseXPosition", reverseYPosition: "reverseYPosition", closeOnClick: "closeOnClick", closeTimeout: "closeTimeout", openMethod: "openMethod" }, outputs: { onToggle: "onToggle", onHostClick: "onHostClick" }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"sm:relative\">\n <div (mouseenter)=\"onHover(host, container)\" (click)=\"onClick($event, host, container)\"\n (contextmenu)=\"onRightClick($event)\" #host>\n <ng-content select='[host]'></ng-content>\n </div>\n\n <div [hidden]='!isOpen'\n class=\"{{ shouldReverseYPosition() ? 'mb-12 bottom-0' : 'mt-4' }} {{ shouldReverseXPosition() ? 'left-0': 'right-0' }} ngt-dropdown-container sm:mr-0 mr-3 max-w-xs absolute\"\n [@openClose]=\"isOpen ? 'open' : 'closed'\" (mouseenter)=\"onHover(host, container)\"\n (click)='closeOnSelectOption()' style=\"z-index: 1100 !important;\" #container>\n\n <div *ngIf=\"isOpen\" class=\"flex flex-col\" [ngClass]=\"{ 'h-52 overflow-auto':scrollable }\">\n <ng-content select='[container]'></ng-content>\n </div>\n </div>\n</div>\n\n<button *ngIf=\"isOpen && openMethod != 'HOVER'\" type=\"button\"\n class=\"fixed z-40 inset-0 h-full w-full opacity-0 cursor-default\" (click)='toggle()'>\n</button>", styles: [".ngt-dropdown-container{max-height:30rem;width:max-content}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
|
|
151
|
-
trigger('openClose', [
|
|
152
|
-
state('open', style({ opacity: 1, transform: 'translateY(0px)' })),
|
|
153
|
-
state('closed', style({ opacity: 0, transform: 'translateY(-10px)' })),
|
|
154
|
-
transition('closed => open', [
|
|
155
|
-
animate(300)
|
|
156
|
-
]),
|
|
157
|
-
]),
|
|
158
|
-
] });
|
|
159
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropdownComponent, decorators: [{
|
|
160
|
-
type: Component,
|
|
161
|
-
args: [{ selector: 'ngt-dropdown', animations: [
|
|
162
|
-
trigger('openClose', [
|
|
163
|
-
state('open', style({ opacity: 1, transform: 'translateY(0px)' })),
|
|
164
|
-
state('closed', style({ opacity: 0, transform: 'translateY(-10px)' })),
|
|
165
|
-
transition('closed => open', [
|
|
166
|
-
animate(300)
|
|
167
|
-
]),
|
|
168
|
-
]),
|
|
169
|
-
], template: "<div class=\"sm:relative\">\n <div (mouseenter)=\"onHover(host, container)\" (click)=\"onClick($event, host, container)\"\n (contextmenu)=\"onRightClick($event)\" #host>\n <ng-content select='[host]'></ng-content>\n </div>\n\n <div [hidden]='!isOpen'\n class=\"{{ shouldReverseYPosition() ? 'mb-12 bottom-0' : 'mt-4' }} {{ shouldReverseXPosition() ? 'left-0': 'right-0' }} ngt-dropdown-container sm:mr-0 mr-3 max-w-xs absolute\"\n [@openClose]=\"isOpen ? 'open' : 'closed'\" (mouseenter)=\"onHover(host, container)\"\n (click)='closeOnSelectOption()' style=\"z-index: 1100 !important;\" #container>\n\n <div *ngIf=\"isOpen\" class=\"flex flex-col\" [ngClass]=\"{ 'h-52 overflow-auto':scrollable }\">\n <ng-content select='[container]'></ng-content>\n </div>\n </div>\n</div>\n\n<button *ngIf=\"isOpen && openMethod != 'HOVER'\" type=\"button\"\n class=\"fixed z-40 inset-0 h-full w-full opacity-0 cursor-default\" (click)='toggle()'>\n</button>", styles: [".ngt-dropdown-container{max-height:30rem;width:max-content}\n"] }]
|
|
170
|
-
}], ctorParameters: function () { return [{ type: i1.NgtDropdownContainerComponent, decorators: [{
|
|
171
|
-
type: Optional
|
|
172
|
-
}, {
|
|
173
|
-
type: SkipSelf
|
|
174
|
-
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { containerRef: [{
|
|
175
|
-
type: ViewChild,
|
|
176
|
-
args: ['container', { static: true }]
|
|
177
|
-
}], scrollable: [{
|
|
178
|
-
type: Input
|
|
179
|
-
}], autoXReverse: [{
|
|
180
|
-
type: Input
|
|
181
|
-
}], autoYReverse: [{
|
|
182
|
-
type: Input
|
|
183
|
-
}], reverseXPosition: [{
|
|
184
|
-
type: Input
|
|
185
|
-
}], reverseYPosition: [{
|
|
186
|
-
type: Input
|
|
187
|
-
}], closeOnClick: [{
|
|
188
|
-
type: Input
|
|
189
|
-
}], closeTimeout: [{
|
|
190
|
-
type: Input
|
|
191
|
-
}], openMethod: [{
|
|
192
|
-
type: Input
|
|
193
|
-
}], onToggle: [{
|
|
194
|
-
type: Output
|
|
195
|
-
}], onHostClick: [{
|
|
196
|
-
type: Output
|
|
197
|
-
}] } });
|
|
198
|
-
export var NgtDropdownOpenMethod;
|
|
199
|
-
(function (NgtDropdownOpenMethod) {
|
|
200
|
-
NgtDropdownOpenMethod["CLICK"] = "CLICK";
|
|
201
|
-
NgtDropdownOpenMethod["POPOVER_CLICK"] = "POPOVER_CLICK";
|
|
202
|
-
NgtDropdownOpenMethod["RIGHT_CLICK"] = "RIGHT_CLICK";
|
|
203
|
-
NgtDropdownOpenMethod["HOVER"] = "HOVER";
|
|
204
|
-
})(NgtDropdownOpenMethod || (NgtDropdownOpenMethod = {}));
|
|
205
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kcm9wZG93bi9uZ3QtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWRyb3Bkb3duL25ndC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUVOLFFBQVEsRUFDUixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBaUIxQyxNQUFNLE9BQU8sb0JBQW9CO0lBMEI3QixZQUVZLG9CQUFtRCxFQUNuRCxjQUFpQztRQURqQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQStCO1FBQ25ELG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQXhCN0IsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFJN0IsaUJBQVksR0FBVyxJQUFJLENBQUM7UUFDNUIsZUFBVSxHQUEwQixxQkFBcUIsQ0FBQyxLQUFLLENBQUM7UUFFL0QsYUFBUSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JELGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFOUQsU0FBSSxHQUFXLElBQUksRUFBRSxDQUFDO1FBSXRCLHVCQUFrQixHQUFZLElBQUksQ0FBQztRQUNuQyx1QkFBa0IsR0FBWSxJQUFJLENBQUM7UUFFbEMsa0JBQWEsR0FBd0IsRUFBRSxDQUFDO1FBUzVDLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNuQixJQUFJLENBQUMsb0JBQW9CLENBQUMsc0JBQXNCLENBQUMsU0FBUyxDQUFDLENBQUMsY0FBb0MsRUFBRSxFQUFFO2dCQUNoRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztTQUNMO0lBQ0wsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUNyQyxJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUU7WUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1NBQy9GO0lBQ0wsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU0sSUFBSTtRQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVuRCxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXBDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBRTlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sbUJBQW1CO1FBQ3RCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUUvQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVNLE1BQU07UUFDVCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNiLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNoQjtpQkFBTTtnQkFDSCxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7YUFDZjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFTLEVBQUUsU0FBYztRQUNwQyxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUkscUJBQXFCLENBQUMsS0FBSyxJQUFJLElBQUksSUFBSSxTQUFTLEVBQUU7WUFDckUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQVksRUFBRSxJQUFTLEVBQUUsU0FBYztRQUNsRCxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1FBRXpCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ3RCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFFeEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2pCO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLHFCQUFxQixDQUFDLGFBQWEsRUFBRTtZQUN4RCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQztTQUNwQztJQUNMLENBQUM7SUFFTSxZQUFZLENBQUMsS0FBWTtRQUM1QixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUkscUJBQXFCLENBQUMsV0FBVyxFQUFFO1lBQ3RELEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2pCO0lBQ0wsQ0FBQztJQUVNLHNCQUFzQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssU0FBUyxFQUFFO1lBQzNELE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO1NBQ2hDO1FBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3pDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFN0YsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7U0FDbkM7SUFDTCxDQUFDO0lBRU0sc0JBQXNCO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLEVBQUU7WUFDM0QsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7U0FDaEM7UUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1lBRW5HLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUVPLHNCQUFzQjtRQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRTtZQUN6RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1lBRS9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ1osSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztzQkFDN0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO2dCQUVsRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO2dCQUVoQyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3hDLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sc0JBQXNCO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUMsWUFBWSxFQUFFO1lBQzNFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7WUFFL0IsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO3NCQUM3RSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUM7Z0JBRW5ELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7Z0JBRWhDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEMsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFTyxVQUFVLENBQUMsSUFBUyxFQUFFLFNBQWM7UUFDeEMsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLEVBQUU7Z0JBQ3pELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDYixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDM0I7UUFDTCxDQUFDLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFTyxTQUFTLENBQUMsSUFBUyxFQUFFLFNBQWM7UUFDdkMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJO1lBQ3JELFNBQVMsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxJQUFJLFNBQVMsQ0FBQztJQUNyRSxDQUFDO0lBRU8sb0JBQW9CO1FBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLGFBQWE7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLHFCQUFxQixDQUFDLEtBQUs7ZUFDOUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxxQkFBcUIsQ0FBQyxhQUFhLENBQUM7SUFDbEUsQ0FBQzs7aUhBaE1RLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHFnQkNsQ2pDLDYvQkFtQlMsMlNES087UUFDUixPQUFPLENBQUMsV0FBVyxFQUFFO1lBQ2pCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1lBQ2xFLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1lBQ3RFLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQzthQUNmLENBQUM7U0FDTCxDQUFDO0tBQ0w7MkZBRVEsb0JBQW9CO2tCQWRoQyxTQUFTOytCQUNJLGNBQWMsY0FHWjt3QkFDUixPQUFPLENBQUMsV0FBVyxFQUFFOzRCQUNqQixLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQzs0QkFDbEUsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7NEJBQ3RFLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRTtnQ0FDekIsT0FBTyxDQUFDLEdBQUcsQ0FBQzs2QkFDZixDQUFDO3lCQUNMLENBQUM7cUJBQ0w7OzBCQTZCSSxRQUFROzswQkFBSSxRQUFROzRFQTFCd0IsWUFBWTtzQkFBNUQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUV4QixVQUFVO3NCQUF6QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUVXLFFBQVE7c0JBQXhCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTTs7QUFzTFgsTUFBTSxDQUFOLElBQVkscUJBS1g7QUFMRCxXQUFZLHFCQUFxQjtJQUM3Qix3Q0FBZSxDQUFBO0lBQ2Ysd0RBQStCLENBQUE7SUFDL0Isb0RBQTJCLENBQUE7SUFDM0Isd0NBQWUsQ0FBQTtBQUNuQixDQUFDLEVBTFcscUJBQXFCLEtBQXJCLHFCQUFxQixRQUtoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9wdGlvbmFsLFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgZ2V0RW51bUZyb21TdHJpbmcgfSBmcm9tICcuLi8uLi9oZWxwZXJzL2VudW0vZW51bSc7XG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnLi4vLi4vaGVscGVycy91dWlkJztcbmltcG9ydCB7IE5ndERyb3Bkb3duQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9uZ3QtZHJvcGRvd24tY29udGFpbmVyL25ndC1kcm9wZG93bi1jb250YWluZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3QtZHJvcGRvd24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9uZ3QtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL25ndC1kcm9wZG93bi5jb21wb25lbnQuY3NzJ10sXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdvcGVuQ2xvc2UnLCBbXG4gICAgICAgICAgICBzdGF0ZSgnb3BlbicsIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwcHgpJyB9KSksXG4gICAgICAgICAgICBzdGF0ZSgnY2xvc2VkJywgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMHB4KScgfSkpLFxuICAgICAgICAgICAgdHJhbnNpdGlvbignY2xvc2VkID0+IG9wZW4nLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZSgzMDApXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgXSksXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3REcm9wZG93bkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQFZpZXdDaGlsZCgnY29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgcHVibGljIGNvbnRhaW5lclJlZjogRWxlbWVudFJlZjtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzY3JvbGxhYmxlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhdXRvWFJldmVyc2U6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcHVibGljIGF1dG9ZUmV2ZXJzZTogYm9vbGVhbiA9IHRydWU7XG4gICAgQElucHV0KCkgcHVibGljIHJldmVyc2VYUG9zaXRpb246IGJvb2xlYW47XG4gICAgQElucHV0KCkgcHVibGljIHJldmVyc2VZUG9zaXRpb246IGJvb2xlYW47XG4gICAgQElucHV0KCkgcHVibGljIGNsb3NlT25DbGljazogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBwdWJsaWMgY2xvc2VUaW1lb3V0OiBudW1iZXIgPSAxMDAwO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBvcGVuTWV0aG9kOiBOZ3REcm9wZG93bk9wZW5NZXRob2QgPSBOZ3REcm9wZG93bk9wZW5NZXRob2QuSE9WRVI7XG5cbiAgICBAT3V0cHV0KCkgcHVibGljIG9uVG9nZ2xlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQE91dHB1dCgpIHB1YmxpYyBvbkhvc3RDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwdWJsaWMgbmFtZTogc3RyaW5nID0gdXVpZCgpO1xuICAgIHB1YmxpYyBpc09wZW46IGJvb2xlYW47XG4gICAgcHVibGljIGlzWVBvc2l0aW9uUmV2ZXJzZWQ6IGJvb2xlYW47XG4gICAgcHVibGljIGlzWFBvc2l0aW9uUmV2ZXJzZWQ6IGJvb2xlYW47XG4gICAgcHVibGljIGlzQmluZGluZ1lQb3NpdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gICAgcHVibGljIGlzQmluZGluZ1hQb3NpdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcbiAgICBwcml2YXRlIGNvbnRhaW5lclhQb3NpdGlvbjogbnVtYmVyO1xuICAgIHByaXZhdGUgY29udGFpbmVyWVBvc2l0aW9uOiBudW1iZXI7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpXG4gICAgICAgIHByaXZhdGUgbmd0RHJvcGRvd25Db250YWluZXI6IE5ndERyb3Bkb3duQ29udGFpbmVyQ29tcG9uZW50LFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICAgICkge1xuICAgICAgICBpZiAodGhpcy5uZ3REcm9wZG93bkNvbnRhaW5lcikge1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICAgICAgICAgICAgdGhpcy5uZ3REcm9wZG93bkNvbnRhaW5lci5vbkFjdGl2ZURyb3Bkb3duQ2hhbmdlLnN1YnNjcmliZSgoYWN0aXZlRHJvcGRvd246IE5ndERyb3Bkb3duQ29tcG9uZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gKGFjdGl2ZURyb3Bkb3duLm5hbWUgPT09IHRoaXMubmFtZSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5vcGVuTWV0aG9kKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5NZXRob2QgPSBnZXRFbnVtRnJvbVN0cmluZyhjaGFuZ2VzLm9wZW5NZXRob2QuY3VycmVudFZhbHVlLCBOZ3REcm9wZG93bk9wZW5NZXRob2QpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3lTdWJzY3JpcHRpb25zKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5uZ3REcm9wZG93bkNvbnRhaW5lcj8uc2V0QWN0aXZlRHJvcGRvd24odGhpcyk7XG5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICAgICAgdGhpcy5iaW5kQ29udGFpbmVyWFBvc2l0aW9uKCk7XG4gICAgICAgIHRoaXMuYmluZENvbnRhaW5lcllQb3NpdGlvbigpO1xuXG4gICAgICAgIHRoaXMub25Ub2dnbGUuZW1pdCh0aGlzLmlzT3Blbik7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlT25TZWxlY3RPcHRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNsb3NlT25DbGljaykge1xuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbnRhaW5lclhQb3NpdGlvbiA9IG51bGw7XG4gICAgICAgIHRoaXMuY29udGFpbmVyWVBvc2l0aW9uID0gbnVsbDtcblxuICAgICAgICB0aGlzLm9uVG9nZ2xlLmVtaXQodGhpcy5pc09wZW4pO1xuICAgIH1cblxuICAgIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uSG92ZXIoaG9zdDogYW55LCBjb250YWluZXI6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vcGVuTWV0aG9kID09IE5ndERyb3Bkb3duT3Blbk1ldGhvZC5IT1ZFUiAmJiBob3N0ICYmIGNvbnRhaW5lcikge1xuICAgICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgICAgICB0aGlzLndhdGNoSG92ZXIoaG9zdCwgY29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBFdmVudCwgaG9zdDogYW55LCBjb250YWluZXI6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uSG9zdENsaWNrPy5lbWl0KCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNDbGlja01ldGhvZCgpKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgICAgIHRoaXMudG9nZ2xlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5vcGVuTWV0aG9kID09IE5ndERyb3Bkb3duT3Blbk1ldGhvZC5QT1BPVkVSX0NMSUNLKSB7XG4gICAgICAgICAgICB0aGlzLndhdGNoSG92ZXIoaG9zdCwgY29udGFpbmVyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblJpZ2h0Q2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm9wZW5NZXRob2QgPT0gTmd0RHJvcGRvd25PcGVuTWV0aG9kLlJJR0hUX0NMSUNLKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLnRvZ2dsZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNob3VsZFJldmVyc2VYUG9zaXRpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5hdXRvWFJldmVyc2UgfHwgdGhpcy5yZXZlcnNlWFBvc2l0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJldmVyc2VYUG9zaXRpb247XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc09wZW4gJiYgIXRoaXMuaXNCaW5kaW5nWFBvc2l0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmlzWFBvc2l0aW9uUmV2ZXJzZWQgPSAhKHRoaXMuY29udGFpbmVyWFBvc2l0aW9uID4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNYUG9zaXRpb25SZXZlcnNlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzaG91bGRSZXZlcnNlWVBvc2l0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMuYXV0b1lSZXZlcnNlIHx8IHRoaXMucmV2ZXJzZVlQb3NpdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5yZXZlcnNlWVBvc2l0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuICYmICF0aGlzLmlzQmluZGluZ1lQb3NpdGlvbikge1xuICAgICAgICAgICAgdGhpcy5pc1lQb3NpdGlvblJldmVyc2VkID0gdGhpcy5jb250YWluZXJZUG9zaXRpb24gPiAoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCAqIDAuOSk7XG5cbiAgICAgICAgICAgIHJldHVybiB0aGlzLmlzWVBvc2l0aW9uUmV2ZXJzZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGJpbmRDb250YWluZXJYUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5jb250YWluZXJYUG9zaXRpb24gJiYgdGhpcy5jb250YWluZXJSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5pc0JpbmRpbmdYUG9zaXRpb24gPSB0cnVlO1xuXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRhaW5lclhQb3NpdGlvbiA9IHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkueFxuICAgICAgICAgICAgICAgICAgICArIHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmlzQmluZGluZ1hQb3NpdGlvbiA9IGZhbHNlO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgYmluZENvbnRhaW5lcllQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRhaW5lcllQb3NpdGlvbiAmJiB0aGlzLmNvbnRhaW5lclJlZj8ubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQpIHtcbiAgICAgICAgICAgIHRoaXMuaXNCaW5kaW5nWVBvc2l0aW9uID0gdHJ1ZTtcblxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb250YWluZXJZUG9zaXRpb24gPSB0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnlcbiAgICAgICAgICAgICAgICAgICAgKyB0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcblxuICAgICAgICAgICAgICAgIHRoaXMuaXNCaW5kaW5nWVBvc2l0aW9uID0gZmFsc2U7XG5cbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB3YXRjaEhvdmVyKGhvc3Q6IGFueSwgY29udGFpbmVyOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIWhvc3QgfHwgIWNvbnRhaW5lciB8fCAhdGhpcy5pc0luSG92ZXIoaG9zdCwgY29udGFpbmVyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgdGhpcy5jbG9zZVRpbWVvdXQpO1xuICAgIH1cblxuICAgIHByaXZhdGUgaXNJbkhvdmVyKGhvc3Q6IGFueSwgY29udGFpbmVyOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGhvc3QucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCc6aG92ZXInKSA9PSBob3N0IHx8XG4gICAgICAgICAgICBjb250YWluZXIucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yKCc6aG92ZXInKSA9PSBjb250YWluZXI7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXN0cm95U3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3Vic2NyaXB0aW9uID0+IHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpKTtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb25zID0gW107XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc0NsaWNrTWV0aG9kKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcGVuTWV0aG9kID09IE5ndERyb3Bkb3duT3Blbk1ldGhvZC5DTElDS1xuICAgICAgICAgICAgfHwgdGhpcy5vcGVuTWV0aG9kID09IE5ndERyb3Bkb3duT3Blbk1ldGhvZC5QT1BPVkVSX0NMSUNLO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gTmd0RHJvcGRvd25PcGVuTWV0aG9kIHtcbiAgICBDTElDSyA9ICdDTElDSycsXG4gICAgUE9QT1ZFUl9DTElDSyA9ICdQT1BPVkVSX0NMSUNLJyxcbiAgICBSSUdIVF9DTElDSyA9ICdSSUdIVF9DTElDSycsXG4gICAgSE9WRVIgPSAnSE9WRVInXG59XG4iLCI8ZGl2IGNsYXNzPVwic206cmVsYXRpdmVcIj5cbiAgICA8ZGl2IChtb3VzZWVudGVyKT1cIm9uSG92ZXIoaG9zdCwgY29udGFpbmVyKVwiIChjbGljayk9XCJvbkNsaWNrKCRldmVudCwgaG9zdCwgY29udGFpbmVyKVwiXG4gICAgICAgIChjb250ZXh0bWVudSk9XCJvblJpZ2h0Q2xpY2soJGV2ZW50KVwiICNob3N0PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9J1tob3N0XSc+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBbaGlkZGVuXT0nIWlzT3BlbidcbiAgICAgICAgY2xhc3M9XCJ7eyBzaG91bGRSZXZlcnNlWVBvc2l0aW9uKCkgPyAnbWItMTIgYm90dG9tLTAnIDogJ210LTQnIH19IHt7IHNob3VsZFJldmVyc2VYUG9zaXRpb24oKSA/ICdsZWZ0LTAnOiAncmlnaHQtMCcgfX0gbmd0LWRyb3Bkb3duLWNvbnRhaW5lciBzbTptci0wIG1yLTMgbWF4LXcteHMgYWJzb2x1dGVcIlxuICAgICAgICBbQG9wZW5DbG9zZV09XCJpc09wZW4gPyAnb3BlbicgOiAnY2xvc2VkJ1wiIChtb3VzZWVudGVyKT1cIm9uSG92ZXIoaG9zdCwgY29udGFpbmVyKVwiXG4gICAgICAgIChjbGljayk9J2Nsb3NlT25TZWxlY3RPcHRpb24oKScgc3R5bGU9XCJ6LWluZGV4OiAxMTAwICFpbXBvcnRhbnQ7XCIgI2NvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNPcGVuXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCIgW25nQ2xhc3NdPVwieyAnaC01MiBvdmVyZmxvdy1hdXRvJzpzY3JvbGxhYmxlIH1cIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD0nW2NvbnRhaW5lcl0nPjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGJ1dHRvbiAqbmdJZj1cImlzT3BlbiAmJiBvcGVuTWV0aG9kICE9ICdIT1ZFUidcIiB0eXBlPVwiYnV0dG9uXCJcbiAgICBjbGFzcz1cImZpeGVkIHotNDAgaW5zZXQtMCBoLWZ1bGwgdy1mdWxsIG9wYWNpdHktMCBjdXJzb3ItZGVmYXVsdFwiIChjbGljayk9J3RvZ2dsZSgpJz5cbjwvYnV0dG9uPiJdfQ==
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { NgxDropzonePreviewComponent } from 'ngx-dropzone';
|
|
3
|
-
import { NgtDropzoneFileTypeEnum } from '../ngt-dropzone.meta';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/platform-browser";
|
|
6
|
-
import * as i2 from "@angular/common";
|
|
7
|
-
import * as i3 from "ngx-dropzone";
|
|
8
|
-
export class CustomDropzonePreviewComponent extends NgxDropzonePreviewComponent {
|
|
9
|
-
constructor(sanitizer) {
|
|
10
|
-
super(sanitizer);
|
|
11
|
-
this.sanitizer = sanitizer;
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
if (!this.file) {
|
|
15
|
-
console.error('No file to read. Please provide a file using the [file] Input property.');
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
this.bindFileType();
|
|
19
|
-
}
|
|
20
|
-
bindFileType() {
|
|
21
|
-
if (this.file.type.includes('.sheet')) {
|
|
22
|
-
this.fileType = NgtDropzoneFileTypeEnum.XLS;
|
|
23
|
-
}
|
|
24
|
-
else if (this.file.type.includes('pdf')) {
|
|
25
|
-
this.fileType = NgtDropzoneFileTypeEnum.PDF;
|
|
26
|
-
}
|
|
27
|
-
else if (this.file.type.includes('.document')) {
|
|
28
|
-
this.fileType = NgtDropzoneFileTypeEnum.DOC;
|
|
29
|
-
}
|
|
30
|
-
else if (this.file.type.includes('.dwg')) {
|
|
31
|
-
this.fileType = NgtDropzoneFileTypeEnum.DWG;
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
this.fileType = NgtDropzoneFileTypeEnum.OTHER;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
CustomDropzonePreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CustomDropzonePreviewComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
-
CustomDropzonePreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: CustomDropzonePreviewComponent, selector: "custom-dropzone-preview", providers: [
|
|
40
|
-
{
|
|
41
|
-
provide: NgxDropzonePreviewComponent,
|
|
42
|
-
useExisting: CustomDropzonePreviewComponent
|
|
43
|
-
}
|
|
44
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"flex flex-col items-center w-48 cursor-pointer hover:opacity-75\">\n <div class=\"w-full flex justify-center border-2 rounded py-4 text-6xl\">\n <svg *ngIf=\"fileType == 'OTHER'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path class=\"heroicon-ui\" fill=\"#4a5568\"\n d=\"M6 2h9a1 1 0 0 1 .7.3l4 4a1 1 0 0 1 .3.7v13a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4c0-1.1.9-2 2-2zm9 2.41V7h2.59L15 4.41zM18 9h-3a2 2 0 0 1-2-2V4H6v16h12V9zm-2 7a1 1 0 0 1-1 1H9a1 1 0 0 1 0-2h6a1 1 0 0 1 1 1zm0-4a1 1 0 0 1-1 1H9a1 1 0 0 1 0-2h6a1 1 0 0 1 1 1zm-5-4a1 1 0 0 1-1 1H9a1 1 0 1 1 0-2h1a1 1 0 0 1 1 1z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'DOC'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l-9.6 0c-1.33,0 -2.4,1.08 -2.4,2.4l0 19.2c0,1.33 1.07,2.4 2.4,2.4l14.4 0c1.33,0 2.4,-1.07 2.4,-2.4l0 -14.4 -7.2 -7.2 0 0zm4.8 21.6l-14.4 0 0 -19.2 8.4 0 0 6 6 0 0 13.2 0 0zm-0.78 -12l-2.52 10.8 -1.68 0 -2.16 -8.15 -2.16 8.15 -1.68 0 -2.64 -10.8 1.8 0 1.68 8.17 2.16 -8.17 1.56 0 2.16 8.17 1.68 -8.17 1.8 0z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'XLS'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l-9.6 0c-1.33,0 -2.4,1.08 -2.4,2.4l0 19.2c0,1.33 1.07,2.4 2.4,2.4l14.4 0c1.33,0 2.4,-1.07 2.4,-2.4l0 -14.4 -7.2 -7.2 0 0zm4.8 21.6l-14.4 0 0 -19.2 8.4 0 0 6 6 0 0 13.2 0 0zm-6.12 -6.6l3.48 5.4 -2.16 0 -2.4 -4.08 -2.4 4.08 -2.16 0 3.48 -5.4 -3.48 -5.4 2.16 0 2.4 4.08 2.4 -4.08 2.16 0 -3.48 5.4z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'PDF'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l7.2 7.2 0 14.4c0,1.32 -1.08,2.4 -2.4,2.4l-14.4 0c-1.32,0 -2.4,-1.08 -2.4,-2.4l0 -19.2c0,-1.32 1.08,-2.4 2.4,-2.4l9.6 0 0 0zm4.8 21.6l0 -13.2 -6 0 0 -6 -8.4 0 0 19.2 14.4 0 0 0zm-8.5 -9.23c-0.28,-0.92 -0.92,-3.87 0.76,-3.92 1.68,-0.05 0.58,3.74 0.58,3.74 0.46,1.79 2.42,3.07 2.42,3.07 0.6,-0.18 4.02,-0.57 3.54,1.21 -0.52,1.77 -4.2,0.1 -4.2,0.1 -2.34,0.17 -4.09,0.8 -4.09,0.8 -1.36,2.53 -2.94,3.63 -3.59,2.56 -0.8,-1.33 2.56,-3.04 2.56,-3.04 1.74,-2.83 2,-4.47 2.02,-4.52l0 0zm0.78 1.01c-0.48,1.56 -1.44,3.23 -1.44,3.23 1.02,-0.41 3.26,-0.88 3.26,-0.88 -1.37,-1.2 -1.79,-2.34 -1.82,-2.35l0 0zm3.77 2.6c0,0 2.1,0.79 2.15,0.47 0.08,-0.32 -1.6,-0.61 -2.15,-0.47l0 0zm-6.79 1.79c-0.93,0.36 -1.81,1.9 -1.6,1.9 0.22,0.01 1.1,-0.72 1.6,-1.9l0 0zm3.02 -6.66c0,-0.06 0.52,-2.01 0,-2.07 -0.36,-0.04 -0.01,2.02 0,2.07z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'DWG'\" version=\"1.0\" xmlns=\"http://www.w3.org/2000/svg\" width=\"512.000000pt\" height=\"512.000000pt\"\n viewBox=\"0 0 512.000000 512.000000\" preserveAspectRatio=\"xMidYMid meet\">\n <g transform=\"translate(0.000000,512.000000) scale(0.100000,-0.100000)\" fill=\"#4a5568\" stroke=\"none\">\n <path\n d=\"M830 5104 c-42 -18 -86 -58 -108 -99 -15 -27 -17 -109 -20 -871 l-3 -842 -92 -4 c-112 -5 -179 -32 -235 -92 -81 -88 -77 -39 -77 -946 0 -801 0 -805 21 -851 54 -116 140 -169 291 -177 l92 -5 3 -536 c3 -588 1 -562 65 -623 65 -62 -61 -58 1793 -58 1854 0 1728 -4 1793 58 64 61 62 35 65 623 l3 536 92 5 c151 8 237 61 291 177 21 46 21 50 21 851 0 907 4 858 -77 946 -56 60 -123 87 -235 92 l-93 4 -1 302 c-1 165 -4 312 -8 326 -8 30 -994 1160 -1033 1184 -24 15 -138 16 -1270 16 -1088 -1 -1247 -3 -1278 -16z m2400 -714 l0 -530 29 -32 29 -33 466 -3 466 -3 0 -249 0 -250 -1660 0 -1660 0 0 815 0 815 1165 0 1165 0 0 -530z m1093 -1516 c87 -16 127 -32 127 -48 -1 -17 -48 -197 -54 -203 -2 -3 -27 2 -54 11 -131 44 -323 40 -429 -9 -72 -33 -146 -110 -174 -182 -27 -72 -36 -204 -19 -282 26 -120 110 -221 217 -261 70 -26 193 -36 251 -21 l42 12 0 124 0 125 -95 0 -95 0 0 110 0 110 230 0 230 0 0 -320 0 -320 -27 -11 c-16 -6 -71 -20 -123 -32 -129 -29 -401 -31 -500 -4 -116 33 -189 74 -266 151 -114 114 -164 244 -164 426 0 265 115 460 331 563 52 25 117 50 144 57 122 30 283 31 428 4z m-3042 -12 c304 -82 457 -320 419 -653 -35 -312 -215 -491 -545 -544 -94 -16 -317 -20 -448 -9 l-77 7 0 602 0 603 83 10 c45 6 174 9 287 7 170 -2 218 -6 281 -23z m808 -34 c16 -81 96 -524 127 -705 15 -90 29 -161 31 -160 2 2 14 66 28 143 20 116 101 518 145 722 l12 52 147 0 147 0 28 -147 c67 -356 104 -564 116 -648 13 -92 29 -144 30 -95 0 42 47 310 107 608 l56 282 138 0 c77 0 139 -3 139 -7 0 -5 -217 -853 -301 -1175 l-10 -38 -149 0 c-133 0 -149 2 -154 18 -13 44 -127 653 -141 759 -9 65 -18 119 -19 120 -1 2 -12 -55 -24 -125 -13 -70 -55 -272 -94 -449 l-71 -323 -152 0 -151 0 -142 598 c-78 328 -142 603 -142 610 0 9 36 12 144 12 l145 0 10 -52z m2131 -2088 l0 -480 -1660 0 -1660 0 0 480 0 480 1660 0 1660 0 0 -480z\" />\n\n <path\n d=\"M923 2673 l-23 -4 0 -399 0 -399 43 -6 c60 -9 200 12 261 39 140 63 212 207 204 411 -3 86 -8 109 -34 165 -51 108 -128 167 -249 189 -57 11 -157 13 -202 4z\" />\n </g>\n </svg>\n </div>\n</div>\n\n<ngx-dropzone-remove-badge *ngIf=\"removable\" (click)=\"_remove($event)\" style=\"top: -15px !important;\">\n</ngx-dropzone-remove-badge>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.NgxDropzoneRemoveBadgeComponent, selector: "ngx-dropzone-remove-badge" }] });
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CustomDropzonePreviewComponent, decorators: [{
|
|
46
|
-
type: Component,
|
|
47
|
-
args: [{ selector: 'custom-dropzone-preview', providers: [
|
|
48
|
-
{
|
|
49
|
-
provide: NgxDropzonePreviewComponent,
|
|
50
|
-
useExisting: CustomDropzonePreviewComponent
|
|
51
|
-
}
|
|
52
|
-
], template: "<div class=\"flex flex-col items-center w-48 cursor-pointer hover:opacity-75\">\n <div class=\"w-full flex justify-center border-2 rounded py-4 text-6xl\">\n <svg *ngIf=\"fileType == 'OTHER'\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path class=\"heroicon-ui\" fill=\"#4a5568\"\n d=\"M6 2h9a1 1 0 0 1 .7.3l4 4a1 1 0 0 1 .3.7v13a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4c0-1.1.9-2 2-2zm9 2.41V7h2.59L15 4.41zM18 9h-3a2 2 0 0 1-2-2V4H6v16h12V9zm-2 7a1 1 0 0 1-1 1H9a1 1 0 0 1 0-2h6a1 1 0 0 1 1 1zm0-4a1 1 0 0 1-1 1H9a1 1 0 0 1 0-2h6a1 1 0 0 1 1 1zm-5-4a1 1 0 0 1-1 1H9a1 1 0 1 1 0-2h1a1 1 0 0 1 1 1z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'DOC'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l-9.6 0c-1.33,0 -2.4,1.08 -2.4,2.4l0 19.2c0,1.33 1.07,2.4 2.4,2.4l14.4 0c1.33,0 2.4,-1.07 2.4,-2.4l0 -14.4 -7.2 -7.2 0 0zm4.8 21.6l-14.4 0 0 -19.2 8.4 0 0 6 6 0 0 13.2 0 0zm-0.78 -12l-2.52 10.8 -1.68 0 -2.16 -8.15 -2.16 8.15 -1.68 0 -2.64 -10.8 1.8 0 1.68 8.17 2.16 -8.17 1.56 0 2.16 8.17 1.68 -8.17 1.8 0z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'XLS'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l-9.6 0c-1.33,0 -2.4,1.08 -2.4,2.4l0 19.2c0,1.33 1.07,2.4 2.4,2.4l14.4 0c1.33,0 2.4,-1.07 2.4,-2.4l0 -14.4 -7.2 -7.2 0 0zm4.8 21.6l-14.4 0 0 -19.2 8.4 0 0 6 6 0 0 13.2 0 0zm-6.12 -6.6l3.48 5.4 -2.16 0 -2.4 -4.08 -2.4 4.08 -2.16 0 3.48 -5.4 -3.48 -5.4 2.16 0 2.4 4.08 2.4 -4.08 2.16 0 -3.48 5.4z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'PDF'\" fill=\"#4a5568\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path\n d=\"M14.4 0l7.2 7.2 0 14.4c0,1.32 -1.08,2.4 -2.4,2.4l-14.4 0c-1.32,0 -2.4,-1.08 -2.4,-2.4l0 -19.2c0,-1.32 1.08,-2.4 2.4,-2.4l9.6 0 0 0zm4.8 21.6l0 -13.2 -6 0 0 -6 -8.4 0 0 19.2 14.4 0 0 0zm-8.5 -9.23c-0.28,-0.92 -0.92,-3.87 0.76,-3.92 1.68,-0.05 0.58,3.74 0.58,3.74 0.46,1.79 2.42,3.07 2.42,3.07 0.6,-0.18 4.02,-0.57 3.54,1.21 -0.52,1.77 -4.2,0.1 -4.2,0.1 -2.34,0.17 -4.09,0.8 -4.09,0.8 -1.36,2.53 -2.94,3.63 -3.59,2.56 -0.8,-1.33 2.56,-3.04 2.56,-3.04 1.74,-2.83 2,-4.47 2.02,-4.52l0 0zm0.78 1.01c-0.48,1.56 -1.44,3.23 -1.44,3.23 1.02,-0.41 3.26,-0.88 3.26,-0.88 -1.37,-1.2 -1.79,-2.34 -1.82,-2.35l0 0zm3.77 2.6c0,0 2.1,0.79 2.15,0.47 0.08,-0.32 -1.6,-0.61 -2.15,-0.47l0 0zm-6.79 1.79c-0.93,0.36 -1.81,1.9 -1.6,1.9 0.22,0.01 1.1,-0.72 1.6,-1.9l0 0zm3.02 -6.66c0,-0.06 0.52,-2.01 0,-2.07 -0.36,-0.04 -0.01,2.02 0,2.07z\" />\n </svg>\n\n <svg *ngIf=\"fileType == 'DWG'\" version=\"1.0\" xmlns=\"http://www.w3.org/2000/svg\" width=\"512.000000pt\" height=\"512.000000pt\"\n viewBox=\"0 0 512.000000 512.000000\" preserveAspectRatio=\"xMidYMid meet\">\n <g transform=\"translate(0.000000,512.000000) scale(0.100000,-0.100000)\" fill=\"#4a5568\" stroke=\"none\">\n <path\n d=\"M830 5104 c-42 -18 -86 -58 -108 -99 -15 -27 -17 -109 -20 -871 l-3 -842 -92 -4 c-112 -5 -179 -32 -235 -92 -81 -88 -77 -39 -77 -946 0 -801 0 -805 21 -851 54 -116 140 -169 291 -177 l92 -5 3 -536 c3 -588 1 -562 65 -623 65 -62 -61 -58 1793 -58 1854 0 1728 -4 1793 58 64 61 62 35 65 623 l3 536 92 5 c151 8 237 61 291 177 21 46 21 50 21 851 0 907 4 858 -77 946 -56 60 -123 87 -235 92 l-93 4 -1 302 c-1 165 -4 312 -8 326 -8 30 -994 1160 -1033 1184 -24 15 -138 16 -1270 16 -1088 -1 -1247 -3 -1278 -16z m2400 -714 l0 -530 29 -32 29 -33 466 -3 466 -3 0 -249 0 -250 -1660 0 -1660 0 0 815 0 815 1165 0 1165 0 0 -530z m1093 -1516 c87 -16 127 -32 127 -48 -1 -17 -48 -197 -54 -203 -2 -3 -27 2 -54 11 -131 44 -323 40 -429 -9 -72 -33 -146 -110 -174 -182 -27 -72 -36 -204 -19 -282 26 -120 110 -221 217 -261 70 -26 193 -36 251 -21 l42 12 0 124 0 125 -95 0 -95 0 0 110 0 110 230 0 230 0 0 -320 0 -320 -27 -11 c-16 -6 -71 -20 -123 -32 -129 -29 -401 -31 -500 -4 -116 33 -189 74 -266 151 -114 114 -164 244 -164 426 0 265 115 460 331 563 52 25 117 50 144 57 122 30 283 31 428 4z m-3042 -12 c304 -82 457 -320 419 -653 -35 -312 -215 -491 -545 -544 -94 -16 -317 -20 -448 -9 l-77 7 0 602 0 603 83 10 c45 6 174 9 287 7 170 -2 218 -6 281 -23z m808 -34 c16 -81 96 -524 127 -705 15 -90 29 -161 31 -160 2 2 14 66 28 143 20 116 101 518 145 722 l12 52 147 0 147 0 28 -147 c67 -356 104 -564 116 -648 13 -92 29 -144 30 -95 0 42 47 310 107 608 l56 282 138 0 c77 0 139 -3 139 -7 0 -5 -217 -853 -301 -1175 l-10 -38 -149 0 c-133 0 -149 2 -154 18 -13 44 -127 653 -141 759 -9 65 -18 119 -19 120 -1 2 -12 -55 -24 -125 -13 -70 -55 -272 -94 -449 l-71 -323 -152 0 -151 0 -142 598 c-78 328 -142 603 -142 610 0 9 36 12 144 12 l145 0 10 -52z m2131 -2088 l0 -480 -1660 0 -1660 0 0 480 0 480 1660 0 1660 0 0 -480z\" />\n\n <path\n d=\"M923 2673 l-23 -4 0 -399 0 -399 43 -6 c60 -9 200 12 261 39 140 63 212 207 204 411 -3 86 -8 109 -34 165 -51 108 -128 167 -249 189 -57 11 -157 13 -202 4z\" />\n </g>\n </svg>\n </div>\n</div>\n\n<ngx-dropzone-remove-badge *ngIf=\"removable\" (click)=\"_remove($event)\" style=\"top: -15px !important;\">\n</ngx-dropzone-remove-badge>" }]
|
|
53
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWRyb3B6b25lLXByZXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdGFpbHdpbmQvc3JjL2NvbXBvbmVudHMvbmd0LWRyb3B6b25lL2N1c3RvbS1kcm9wem9uZS1wcmV2aWV3L2N1c3RvbS1kcm9wem9uZS1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kcm9wem9uZS9jdXN0b20tZHJvcHpvbmUtcHJldmlldy9jdXN0b20tZHJvcHpvbmUtcHJldmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUzRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7QUFZL0QsTUFBTSxPQUFPLDhCQUErQixTQUFRLDJCQUEyQjtJQUczRSxZQUEwQixTQUF1QjtRQUM3QyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFESyxjQUFTLEdBQVQsU0FBUyxDQUFjO0lBRWpELENBQUM7SUFFTSxRQUFRO1FBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDWixPQUFPLENBQUMsS0FBSyxDQUFDLHlFQUF5RSxDQUFDLENBQUM7WUFFekYsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxZQUFZO1FBQ2hCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsdUJBQXVCLENBQUMsR0FBRyxDQUFDO1NBQy9DO2FBQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyx1QkFBdUIsQ0FBQyxHQUFHLENBQUM7U0FDL0M7YUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUM3QyxJQUFJLENBQUMsUUFBUSxHQUFHLHVCQUF1QixDQUFDLEdBQUcsQ0FBQztTQUMvQzthQUFNLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxRQUFRLEdBQUcsdUJBQXVCLENBQUMsR0FBRyxDQUFDO1NBQy9DO2FBQU07WUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLHVCQUF1QixDQUFDLEtBQUssQ0FBQztTQUNqRDtJQUNMLENBQUM7OzJIQTdCUSw4QkFBOEI7K0dBQTlCLDhCQUE4QixrREFQNUI7UUFDUDtZQUNJLE9BQU8sRUFBRSwyQkFBMkI7WUFDcEMsV0FBVyxFQUFFLDhCQUE4QjtTQUM5QztLQUNKLGlEQ2RMLGltS0FvQzRCOzJGRHBCZiw4QkFBOEI7a0JBVjFDLFNBQVM7K0JBQ0kseUJBQXlCLGFBRXhCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSwyQkFBMkI7NEJBQ3BDLFdBQVcsZ0NBQWdDO3lCQUM5QztxQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IE5neERyb3B6b25lUHJldmlld0NvbXBvbmVudCB9IGZyb20gJ25neC1kcm9wem9uZSc7XG5cbmltcG9ydCB7IE5ndERyb3B6b25lRmlsZVR5cGVFbnVtIH0gZnJvbSAnLi4vbmd0LWRyb3B6b25lLm1ldGEnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1c3RvbS1kcm9wem9uZS1wcmV2aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLWRyb3B6b25lLXByZXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOZ3hEcm9wem9uZVByZXZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogQ3VzdG9tRHJvcHpvbmVQcmV2aWV3Q29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEN1c3RvbURyb3B6b25lUHJldmlld0NvbXBvbmVudCBleHRlbmRzIE5neERyb3B6b25lUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHVibGljIGZpbGVUeXBlOiBOZ3REcm9wem9uZUZpbGVUeXBlRW51bTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihwdWJsaWMgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcbiAgICAgICAgc3VwZXIoc2FuaXRpemVyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5maWxlKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdObyBmaWxlIHRvIHJlYWQuIFBsZWFzZSBwcm92aWRlIGEgZmlsZSB1c2luZyB0aGUgW2ZpbGVdIElucHV0IHByb3BlcnR5LicpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJpbmRGaWxlVHlwZSgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYmluZEZpbGVUeXBlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWxlLnR5cGUuaW5jbHVkZXMoJy5zaGVldCcpKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVUeXBlID0gTmd0RHJvcHpvbmVGaWxlVHlwZUVudW0uWExTO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZmlsZS50eXBlLmluY2x1ZGVzKCdwZGYnKSkge1xuICAgICAgICAgICAgdGhpcy5maWxlVHlwZSA9IE5ndERyb3B6b25lRmlsZVR5cGVFbnVtLlBERjtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZpbGUudHlwZS5pbmNsdWRlcygnLmRvY3VtZW50JykpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZVR5cGUgPSBOZ3REcm9wem9uZUZpbGVUeXBlRW51bS5ET0M7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5maWxlLnR5cGUuaW5jbHVkZXMoJy5kd2cnKSkge1xuICAgICAgICAgICAgdGhpcy5maWxlVHlwZSA9IE5ndERyb3B6b25lRmlsZVR5cGVFbnVtLkRXRztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZVR5cGUgPSBOZ3REcm9wem9uZUZpbGVUeXBlRW51bS5PVEhFUjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGl0ZW1zLWNlbnRlciB3LTQ4IGN1cnNvci1wb2ludGVyIGhvdmVyOm9wYWNpdHktNzVcIj5cbiAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIGZsZXgganVzdGlmeS1jZW50ZXIgYm9yZGVyLTIgcm91bmRlZCBweS00IHRleHQtNnhsXCI+XG4gICAgICAgIDxzdmcgKm5nSWY9XCJmaWxlVHlwZSA9PSAnT1RIRVInXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICAgICAgICAgIDxwYXRoIGNsYXNzPVwiaGVyb2ljb24tdWlcIiBmaWxsPVwiIzRhNTU2OFwiXG4gICAgICAgICAgICAgICAgZD1cIk02IDJoOWExIDEgMCAwIDEgLjcuM2w0IDRhMSAxIDAgMCAxIC4zLjd2MTNhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWNGMwLTEuMS45LTIgMi0yem05IDIuNDFWN2gyLjU5TDE1IDQuNDF6TTE4IDloLTNhMiAyIDAgMCAxLTItMlY0SDZ2MTZoMTJWOXptLTIgN2ExIDEgMCAwIDEtMSAxSDlhMSAxIDAgMCAxIDAtMmg2YTEgMSAwIDAgMSAxIDF6bTAtNGExIDEgMCAwIDEtMSAxSDlhMSAxIDAgMCAxIDAtMmg2YTEgMSAwIDAgMSAxIDF6bS01LTRhMSAxIDAgMCAxLTEgMUg5YTEgMSAwIDEgMSAwLTJoMWExIDEgMCAwIDEgMSAxelwiIC8+XG4gICAgICAgIDwvc3ZnPlxuXG4gICAgICAgIDxzdmcgKm5nSWY9XCJmaWxlVHlwZSA9PSAnRE9DJ1wiIGZpbGw9XCIjNGE1NTY4XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgZD1cIk0xNC40IDBsLTkuNiAwYy0xLjMzLDAgLTIuNCwxLjA4IC0yLjQsMi40bDAgMTkuMmMwLDEuMzMgMS4wNywyLjQgMi40LDIuNGwxNC40IDBjMS4zMywwIDIuNCwtMS4wNyAyLjQsLTIuNGwwIC0xNC40IC03LjIgLTcuMiAwIDB6bTQuOCAyMS42bC0xNC40IDAgMCAtMTkuMiA4LjQgMCAwIDYgNiAwIDAgMTMuMiAwIDB6bS0wLjc4IC0xMmwtMi41MiAxMC44IC0xLjY4IDAgLTIuMTYgLTguMTUgLTIuMTYgOC4xNSAtMS42OCAwIC0yLjY0IC0xMC44IDEuOCAwIDEuNjggOC4xNyAyLjE2IC04LjE3IDEuNTYgMCAyLjE2IDguMTcgMS42OCAtOC4xNyAxLjggMHpcIiAvPlxuICAgICAgICA8L3N2Zz5cblxuICAgICAgICA8c3ZnICpuZ0lmPVwiZmlsZVR5cGUgPT0gJ1hMUydcIiBmaWxsPVwiIzRhNTU2OFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgIGQ9XCJNMTQuNCAwbC05LjYgMGMtMS4zMywwIC0yLjQsMS4wOCAtMi40LDIuNGwwIDE5LjJjMCwxLjMzIDEuMDcsMi40IDIuNCwyLjRsMTQuNCAwYzEuMzMsMCAyLjQsLTEuMDcgMi40LC0yLjRsMCAtMTQuNCAtNy4yIC03LjIgMCAwem00LjggMjEuNmwtMTQuNCAwIDAgLTE5LjIgOC40IDAgMCA2IDYgMCAwIDEzLjIgMCAwem0tNi4xMiAtNi42bDMuNDggNS40IC0yLjE2IDAgLTIuNCAtNC4wOCAtMi40IDQuMDggLTIuMTYgMCAzLjQ4IC01LjQgLTMuNDggLTUuNCAyLjE2IDAgMi40IDQuMDggMi40IC00LjA4IDIuMTYgMCAtMy40OCA1LjR6XCIgLz5cbiAgICAgICAgPC9zdmc+XG5cbiAgICAgICAgPHN2ZyAqbmdJZj1cImZpbGVUeXBlID09ICdQREYnXCIgZmlsbD1cIiM0YTU1NjhcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICBkPVwiTTE0LjQgMGw3LjIgNy4yIDAgMTQuNGMwLDEuMzIgLTEuMDgsMi40IC0yLjQsMi40bC0xNC40IDBjLTEuMzIsMCAtMi40LC0xLjA4IC0yLjQsLTIuNGwwIC0xOS4yYzAsLTEuMzIgMS4wOCwtMi40IDIuNCwtMi40bDkuNiAwIDAgMHptNC44IDIxLjZsMCAtMTMuMiAtNiAwIDAgLTYgLTguNCAwIDAgMTkuMiAxNC40IDAgMCAwem0tOC41IC05LjIzYy0wLjI4LC0wLjkyIC0wLjkyLC0zLjg3IDAuNzYsLTMuOTIgMS42OCwtMC4wNSAwLjU4LDMuNzQgMC41OCwzLjc0IDAuNDYsMS43OSAyLjQyLDMuMDcgMi40MiwzLjA3IDAuNiwtMC4xOCA0LjAyLC0wLjU3IDMuNTQsMS4yMSAtMC41MiwxLjc3IC00LjIsMC4xIC00LjIsMC4xIC0yLjM0LDAuMTcgLTQuMDksMC44IC00LjA5LDAuOCAtMS4zNiwyLjUzIC0yLjk0LDMuNjMgLTMuNTksMi41NiAtMC44LC0xLjMzIDIuNTYsLTMuMDQgMi41NiwtMy4wNCAxLjc0LC0yLjgzIDIsLTQuNDcgMi4wMiwtNC41MmwwIDB6bTAuNzggMS4wMWMtMC40OCwxLjU2IC0xLjQ0LDMuMjMgLTEuNDQsMy4yMyAxLjAyLC0wLjQxIDMuMjYsLTAuODggMy4yNiwtMC44OCAtMS4zNywtMS4yIC0xLjc5LC0yLjM0IC0xLjgyLC0yLjM1bDAgMHptMy43NyAyLjZjMCwwIDIuMSwwLjc5IDIuMTUsMC40NyAwLjA4LC0wLjMyIC0xLjYsLTAuNjEgLTIuMTUsLTAuNDdsMCAwem0tNi43OSAxLjc5Yy0wLjkzLDAuMzYgLTEuODEsMS45IC0xLjYsMS45IDAuMjIsMC4wMSAxLjEsLTAuNzIgMS42LC0xLjlsMCAwem0zLjAyIC02LjY2YzAsLTAuMDYgMC41MiwtMi4wMSAwLC0yLjA3IC0wLjM2LC0wLjA0IC0wLjAxLDIuMDIgMCwyLjA3elwiIC8+XG4gICAgICAgIDwvc3ZnPlxuXG4gICAgICAgIDxzdmcgKm5nSWY9XCJmaWxlVHlwZSA9PSAnRFdHJ1wiIHZlcnNpb249XCIxLjBcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI1MTIuMDAwMDAwcHRcIiBoZWlnaHQ9XCI1MTIuMDAwMDAwcHRcIlxuICAgICAgICAgICAgdmlld0JveD1cIjAgMCA1MTIuMDAwMDAwIDUxMi4wMDAwMDBcIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwieE1pZFlNaWQgbWVldFwiPlxuICAgICAgICAgICAgPGcgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDAuMDAwMDAwLDUxMi4wMDAwMDApIHNjYWxlKDAuMTAwMDAwLC0wLjEwMDAwMClcIiBmaWxsPVwiIzRhNTU2OFwiIHN0cm9rZT1cIm5vbmVcIj5cbiAgICAgICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICAgICAgICBkPVwiTTgzMCA1MTA0IGMtNDIgLTE4IC04NiAtNTggLTEwOCAtOTkgLTE1IC0yNyAtMTcgLTEwOSAtMjAgLTg3MSBsLTMgLTg0MiAtOTIgLTQgYy0xMTIgLTUgLTE3OSAtMzIgLTIzNSAtOTIgLTgxIC04OCAtNzcgLTM5IC03NyAtOTQ2IDAgLTgwMSAwIC04MDUgMjEgLTg1MSA1NCAtMTE2IDE0MCAtMTY5IDI5MSAtMTc3IGw5MiAtNSAzIC01MzYgYzMgLTU4OCAxIC01NjIgNjUgLTYyMyA2NSAtNjIgLTYxIC01OCAxNzkzIC01OCAxODU0IDAgMTcyOCAtNCAxNzkzIDU4IDY0IDYxIDYyIDM1IDY1IDYyMyBsMyA1MzYgOTIgNSBjMTUxIDggMjM3IDYxIDI5MSAxNzcgMjEgNDYgMjEgNTAgMjEgODUxIDAgOTA3IDQgODU4IC03NyA5NDYgLTU2IDYwIC0xMjMgODcgLTIzNSA5MiBsLTkzIDQgLTEgMzAyIGMtMSAxNjUgLTQgMzEyIC04IDMyNiAtOCAzMCAtOTk0IDExNjAgLTEwMzMgMTE4NCAtMjQgMTUgLTEzOCAxNiAtMTI3MCAxNiAtMTA4OCAtMSAtMTI0NyAtMyAtMTI3OCAtMTZ6IG0yNDAwIC03MTQgbDAgLTUzMCAyOSAtMzIgMjkgLTMzIDQ2NiAtMyA0NjYgLTMgMCAtMjQ5IDAgLTI1MCAtMTY2MCAwIC0xNjYwIDAgMCA4MTUgMCA4MTUgMTE2NSAwIDExNjUgMCAwIC01MzB6IG0xMDkzIC0xNTE2IGM4NyAtMTYgMTI3IC0zMiAxMjcgLTQ4IC0xIC0xNyAtNDggLTE5NyAtNTQgLTIwMyAtMiAtMyAtMjcgMiAtNTQgMTEgLTEzMSA0NCAtMzIzIDQwIC00MjkgLTkgLTcyIC0zMyAtMTQ2IC0xMTAgLTE3NCAtMTgyIC0yNyAtNzIgLTM2IC0yMDQgLTE5IC0yODIgMjYgLTEyMCAxMTAgLTIyMSAyMTcgLTI2MSA3MCAtMjYgMTkzIC0zNiAyNTEgLTIxIGw0MiAxMiAwIDEyNCAwIDEyNSAtOTUgMCAtOTUgMCAwIDExMCAwIDExMCAyMzAgMCAyMzAgMCAwIC0zMjAgMCAtMzIwIC0yNyAtMTEgYy0xNiAtNiAtNzEgLTIwIC0xMjMgLTMyIC0xMjkgLTI5IC00MDEgLTMxIC01MDAgLTQgLTExNiAzMyAtMTg5IDc0IC0yNjYgMTUxIC0xMTQgMTE0IC0xNjQgMjQ0IC0xNjQgNDI2IDAgMjY1IDExNSA0NjAgMzMxIDU2MyA1MiAyNSAxMTcgNTAgMTQ0IDU3IDEyMiAzMCAyODMgMzEgNDI4IDR6IG0tMzA0MiAtMTIgYzMwNCAtODIgNDU3IC0zMjAgNDE5IC02NTMgLTM1IC0zMTIgLTIxNSAtNDkxIC01NDUgLTU0NCAtOTQgLTE2IC0zMTcgLTIwIC00NDggLTkgbC03NyA3IDAgNjAyIDAgNjAzIDgzIDEwIGM0NSA2IDE3NCA5IDI4NyA3IDE3MCAtMiAyMTggLTYgMjgxIC0yM3ogbTgwOCAtMzQgYzE2IC04MSA5NiAtNTI0IDEyNyAtNzA1IDE1IC05MCAyOSAtMTYxIDMxIC0xNjAgMiAyIDE0IDY2IDI4IDE0MyAyMCAxMTYgMTAxIDUxOCAxNDUgNzIyIGwxMiA1MiAxNDcgMCAxNDcgMCAyOCAtMTQ3IGM2NyAtMzU2IDEwNCAtNTY0IDExNiAtNjQ4IDEzIC05MiAyOSAtMTQ0IDMwIC05NSAwIDQyIDQ3IDMxMCAxMDcgNjA4IGw1NiAyODIgMTM4IDAgYzc3IDAgMTM5IC0zIDEzOSAtNyAwIC01IC0yMTcgLTg1MyAtMzAxIC0xMTc1IGwtMTAgLTM4IC0xNDkgMCBjLTEzMyAwIC0xNDkgMiAtMTU0IDE4IC0xMyA0NCAtMTI3IDY1MyAtMTQxIDc1OSAtOSA2NSAtMTggMTE5IC0xOSAxMjAgLTEgMiAtMTIgLTU1IC0yNCAtMTI1IC0xMyAtNzAgLTU1IC0yNzIgLTk0IC00NDkgbC03MSAtMzIzIC0xNTIgMCAtMTUxIDAgLTE0MiA1OTggYy03OCAzMjggLTE0MiA2MDMgLTE0MiA2MTAgMCA5IDM2IDEyIDE0NCAxMiBsMTQ1IDAgMTAgLTUyeiBtMjEzMSAtMjA4OCBsMCAtNDgwIC0xNjYwIDAgLTE2NjAgMCAwIDQ4MCAwIDQ4MCAxNjYwIDAgMTY2MCAwIDAgLTQ4MHpcIiAvPlxuXG4gICAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICAgICAgZD1cIk05MjMgMjY3MyBsLTIzIC00IDAgLTM5OSAwIC0zOTkgNDMgLTYgYzYwIC05IDIwMCAxMiAyNjEgMzkgMTQwIDYzIDIxMiAyMDcgMjA0IDQxMSAtMyA4NiAtOCAxMDkgLTM0IDE2NSAtNTEgMTA4IC0xMjggMTY3IC0yNDkgMTg5IC01NyAxMSAtMTU3IDEzIC0yMDIgNHpcIiAvPlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICA8L3N2Zz5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmd4LWRyb3B6b25lLXJlbW92ZS1iYWRnZSAqbmdJZj1cInJlbW92YWJsZVwiIChjbGljayk9XCJfcmVtb3ZlKCRldmVudClcIiBzdHlsZT1cInRvcDogLTE1cHggIWltcG9ydGFudDtcIj5cbjwvbmd4LWRyb3B6b25lLXJlbW92ZS1iYWRnZT4iXX0=
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import { EloverdeDocViewerComponent } from 'eloverde-doc-viewer';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../../services/http/ngt-translate.service";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "eloverde-doc-viewer";
|
|
7
|
-
export class NgtDropzoneFileViewerComponent {
|
|
8
|
-
constructor(ngtTranslateService) {
|
|
9
|
-
this.ngtTranslateService = ngtTranslateService;
|
|
10
|
-
this.disableContent = 'none';
|
|
11
|
-
this.canDownloadFile = true;
|
|
12
|
-
this.onClose = new EventEmitter();
|
|
13
|
-
this.maxFileSize = 30000000; /** 30 MB */
|
|
14
|
-
}
|
|
15
|
-
keyEvent(event) {
|
|
16
|
-
if (event.code == 'Escape') {
|
|
17
|
-
this.canShowViewer = false;
|
|
18
|
-
setTimeout(() => this.onClose.emit(), 500);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
init() {
|
|
22
|
-
if (this.fileSize < this.maxFileSize) {
|
|
23
|
-
this.loading = true;
|
|
24
|
-
this.canShowViewer = true;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
close() {
|
|
28
|
-
this.canShowViewer = false;
|
|
29
|
-
this.onClose.emit();
|
|
30
|
-
}
|
|
31
|
-
handleClose() {
|
|
32
|
-
this.onClose.emit();
|
|
33
|
-
}
|
|
34
|
-
downloadFile() {
|
|
35
|
-
let file = document.createElement("a");
|
|
36
|
-
file.target = '_blank';
|
|
37
|
-
file.href = this.url;
|
|
38
|
-
file.setAttribute("download", this.fileName);
|
|
39
|
-
file.click();
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
NgtDropzoneFileViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneFileViewerComponent, deps: [{ token: i1.NgtTranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
-
NgtDropzoneFileViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: NgtDropzoneFileViewerComponent, selector: "ngt-dropzone-file-viewer", inputs: { url: "url", fileName: "fileName", fileSize: "fileSize", disableContent: "disableContent", canDownloadFile: "canDownloadFile" }, outputs: { onClose: "onClose" }, host: { listeners: { "window:keydown": "keyEvent($event)" } }, viewQueries: [{ propertyName: "eloverdeDocViewer", first: true, predicate: EloverdeDocViewerComponent, descendants: true }], ngImport: i0, template: "<div style=\"width:100%; height: 100%;\">\n <div style=\"width:100%; height: 100%;\">\n <div class=\"w-full py-5 pr-10\">\n <div class=\"w-full flex justify-end text-2xl\">\n <div *ngIf=\"canDownloadFile\" class=\"cursor-pointer\" (click)=\"downloadFile()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path fill=\"#fff\" d=\"M13 8V2H7v6H2l8 8 8-8h-5zM0 18h20v2H0v-2z\" />\n </svg>\n </div>\n\n \n\n <div class=\"cursor-pointer\" (click)=\"close()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path fill=\"#fff\"\n d=\"M24 2.42l-2.42 -2.42 -9.58 9.58 -9.58 -9.58 -2.42 2.42 9.58 9.58 -9.58 9.58 2.42 2.42 9.58 -9.58 9.58 9.58 2.42 -2.42 -9.58 -9.58 9.58 -9.58z\" />\n </svg>\n </div>\n\n </div>\n\n <div class=\"w-full justify-center text-center text-2xl font-mono text-white\">\n {{ fileName }}\n </div>\n </div>\n\n <div *ngIf=\"fileSize > maxFileSize\" class=\"flex w-full h-full justify-center items-center\">\n <div class=\"flex flex-col w-auto bg-gray-700 rounded-lg p-6\" style=\"max-width: 80%;\">\n <p class=\"text-white font-medium text-center w-full\">\n {{\n canDownloadFile\n ? ngtTranslateService.ngtFileTooLargeForPreview\n : ngtTranslateService.ngtFileTooLargeForPreviewNoDownloadPermission\n }}\n </p>\n\n <div *ngIf=\"canDownloadFile\" class=\"cursor-pointer mt-5 text-2xl self-center border rounded p-2\"\n (click)=\"downloadFile()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path fill=\"#fff\" d=\"M13 8V2H7v6H2l8 8 8-8h-5zM0 18h20v2H0v-2z\" />\n </svg>\n </div>\n </div>\n </div>\n\n <div class=\"px-10\" style=\"width:100%; height: 83%;\" *ngIf=\"canShowViewer\">\n <eloverde-doc-viewer class=\"h-full w-full flex justify-center\" [url]=\"url\" [disableContent]=\"disableContent\"\n (loaded)=\"loading = false\" (onClose)=\"handleClose()\">\n </eloverde-doc-viewer>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"loading\" class=\"flex fixed inset-0 justify-center items-center w-full h-full cursor-wait z-50\">\n <div class=\"div-loader\"></div>\n</div>", styles: [":host{background:rgba(0,0,0,.5);color:#fff;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000000}.div-loader{width:5rem;height:5rem;border:5px solid #89C43F38;border-top-color:#89c43f;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.EloverdeDocViewerComponent, selector: "eloverde-doc-viewer", inputs: ["url", "queryParams", "viewerUrl", "googleCheckInterval", "googleMaxChecks", "disableContent", "googleCheckContentLoaded", "viewer", "overrideLocalhost"], outputs: ["loaded", "onClose"] }] });
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneFileViewerComponent, decorators: [{
|
|
45
|
-
type: Component,
|
|
46
|
-
args: [{ selector: 'ngt-dropzone-file-viewer', template: "<div style=\"width:100%; height: 100%;\">\n <div style=\"width:100%; height: 100%;\">\n <div class=\"w-full py-5 pr-10\">\n <div class=\"w-full flex justify-end text-2xl\">\n <div *ngIf=\"canDownloadFile\" class=\"cursor-pointer\" (click)=\"downloadFile()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path fill=\"#fff\" d=\"M13 8V2H7v6H2l8 8 8-8h-5zM0 18h20v2H0v-2z\" />\n </svg>\n </div>\n\n \n\n <div class=\"cursor-pointer\" (click)=\"close()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path fill=\"#fff\"\n d=\"M24 2.42l-2.42 -2.42 -9.58 9.58 -9.58 -9.58 -2.42 2.42 9.58 9.58 -9.58 9.58 2.42 2.42 9.58 -9.58 9.58 9.58 2.42 -2.42 -9.58 -9.58 9.58 -9.58z\" />\n </svg>\n </div>\n\n </div>\n\n <div class=\"w-full justify-center text-center text-2xl font-mono text-white\">\n {{ fileName }}\n </div>\n </div>\n\n <div *ngIf=\"fileSize > maxFileSize\" class=\"flex w-full h-full justify-center items-center\">\n <div class=\"flex flex-col w-auto bg-gray-700 rounded-lg p-6\" style=\"max-width: 80%;\">\n <p class=\"text-white font-medium text-center w-full\">\n {{\n canDownloadFile\n ? ngtTranslateService.ngtFileTooLargeForPreview\n : ngtTranslateService.ngtFileTooLargeForPreviewNoDownloadPermission\n }}\n </p>\n\n <div *ngIf=\"canDownloadFile\" class=\"cursor-pointer mt-5 text-2xl self-center border rounded p-2\"\n (click)=\"downloadFile()\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\">\n <path fill=\"#fff\" d=\"M13 8V2H7v6H2l8 8 8-8h-5zM0 18h20v2H0v-2z\" />\n </svg>\n </div>\n </div>\n </div>\n\n <div class=\"px-10\" style=\"width:100%; height: 83%;\" *ngIf=\"canShowViewer\">\n <eloverde-doc-viewer class=\"h-full w-full flex justify-center\" [url]=\"url\" [disableContent]=\"disableContent\"\n (loaded)=\"loading = false\" (onClose)=\"handleClose()\">\n </eloverde-doc-viewer>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"loading\" class=\"flex fixed inset-0 justify-center items-center w-full h-full cursor-wait z-50\">\n <div class=\"div-loader\"></div>\n</div>", styles: [":host{background:rgba(0,0,0,.5);color:#fff;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:10000000}.div-loader{width:5rem;height:5rem;border:5px solid #89C43F38;border-top-color:#89c43f;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}\n"] }]
|
|
47
|
-
}], ctorParameters: function () { return [{ type: i1.NgtTranslateService }]; }, propDecorators: { eloverdeDocViewer: [{
|
|
48
|
-
type: ViewChild,
|
|
49
|
-
args: [EloverdeDocViewerComponent]
|
|
50
|
-
}], url: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}], fileName: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}], fileSize: [{
|
|
55
|
-
type: Input
|
|
56
|
-
}], disableContent: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], canDownloadFile: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], onClose: [{
|
|
61
|
-
type: Output
|
|
62
|
-
}], keyEvent: [{
|
|
63
|
-
type: HostListener,
|
|
64
|
-
args: ['window:keydown', ['$event']]
|
|
65
|
-
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWRyb3B6b25lLWZpbGUtdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kcm9wem9uZS9uZ3QtZHJvcHpvbmUtZmlsZS12aWV3ZXIvbmd0LWRyb3B6b25lLWZpbGUtdmlld2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kcm9wem9uZS9uZ3QtZHJvcHpvbmUtZmlsZS12aWV3ZXIvbmd0LWRyb3B6b25lLWZpbGUtdmlld2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFTakUsTUFBTSxPQUFPLDhCQUE4QjtJQWV2QyxZQUNXLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBVm5DLG1CQUFjLEdBQVcsTUFBTSxDQUFDO1FBQ2hDLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBRS9CLFlBQU8sR0FBdUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUkzRCxnQkFBVyxHQUFXLFFBQVEsQ0FBQyxDQUFDLFlBQVk7SUFJL0MsQ0FBQztJQUdFLFFBQVEsQ0FBQyxLQUFvQjtRQUNoQyxJQUFJLEtBQUssQ0FBQyxJQUFJLElBQUksUUFBUSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1lBRTNCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQzlDO0lBQ0wsQ0FBQztJQUVNLElBQUk7UUFDUCxJQUFJLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztTQUM3QjtJQUNMLENBQUM7SUFFTSxLQUFLO1FBQ1IsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sV0FBVztRQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLElBQUksR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRXZDLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pCLENBQUM7OzJIQW5EUSw4QkFBOEI7K0dBQTlCLDhCQUE4Qiw2VkFDNUIsMEJBQTBCLGdEQ1h6Qyw2b0ZBdURNOzJGRDdDTyw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0ksMEJBQTBCOzBHQUtVLGlCQUFpQjtzQkFBOUQsU0FBUzt1QkFBQywwQkFBMEI7Z0JBRXJCLEdBQUc7c0JBQWxCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFFVyxPQUFPO3NCQUF2QixNQUFNO2dCQVdBLFFBQVE7c0JBRGQsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWxvdmVyZGVEb2NWaWV3ZXJDb21wb25lbnQgfSBmcm9tICdlbG92ZXJkZS1kb2Mtdmlld2VyJztcblxuaW1wb3J0IHsgTmd0VHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2h0dHAvbmd0LXRyYW5zbGF0ZS5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3QtZHJvcHpvbmUtZmlsZS12aWV3ZXInLFxuICAgIHN0eWxlVXJsczogWycuL25ndC1kcm9wem9uZS1maWxlLXZpZXdlci5jb21wb25lbnQuY3NzJ10sXG4gICAgdGVtcGxhdGVVcmw6ICcuL25ndC1kcm9wem9uZS1maWxlLXZpZXdlci5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTmd0RHJvcHpvbmVGaWxlVmlld2VyQ29tcG9uZW50IHtcbiAgICBAVmlld0NoaWxkKEVsb3ZlcmRlRG9jVmlld2VyQ29tcG9uZW50KSBwdWJsaWMgZWxvdmVyZGVEb2NWaWV3ZXI6IEVsb3ZlcmRlRG9jVmlld2VyQ29tcG9uZW50O1xuXG4gICAgQElucHV0KCkgcHVibGljIHVybDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBmaWxlTmFtZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBmaWxlU2l6ZTogbnVtYmVyO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlQ29udGVudDogc3RyaW5nID0gJ25vbmUnO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBjYW5Eb3dubG9hZEZpbGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQE91dHB1dCgpIHB1YmxpYyBvbkNsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBwdWJsaWMgY2FuU2hvd1ZpZXdlcjogYm9vbGVhbjtcbiAgICBwdWJsaWMgbG9hZGluZzogYm9vbGVhbjtcbiAgICBwdWJsaWMgbWF4RmlsZVNpemU6IG51bWJlciA9IDMwMDAwMDAwOyAvKiogMzAgTUIgKi9cblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIG5ndFRyYW5zbGF0ZVNlcnZpY2U6IE5ndFRyYW5zbGF0ZVNlcnZpY2VcbiAgICApIHsgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleWRvd24nLCBbJyRldmVudCddKVxuICAgIHB1YmxpYyBrZXlFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQuY29kZSA9PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgdGhpcy5jYW5TaG93Vmlld2VyID0gZmFsc2U7XG5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5vbkNsb3NlLmVtaXQoKSwgNTAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBpbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5maWxlU2l6ZSA8IHRoaXMubWF4RmlsZVNpemUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmNhblNob3dWaWV3ZXIgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhblNob3dWaWV3ZXIgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5vbkNsb3NlLmVtaXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DbG9zZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGRvd25sb2FkRmlsZSgpOiB2b2lkIHtcbiAgICAgICAgbGV0IGZpbGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcblxuICAgICAgICBmaWxlLnRhcmdldCA9ICdfYmxhbmsnO1xuICAgICAgICBmaWxlLmhyZWYgPSB0aGlzLnVybDtcbiAgICAgICAgZmlsZS5zZXRBdHRyaWJ1dGUoXCJkb3dubG9hZFwiLCB0aGlzLmZpbGVOYW1lKTtcbiAgICAgICAgZmlsZS5jbGljaygpO1xuICAgIH1cbn1cbiIsIjxkaXYgc3R5bGU9XCJ3aWR0aDoxMDAlOyBoZWlnaHQ6IDEwMCU7XCI+XG4gICAgPGRpdiBzdHlsZT1cIndpZHRoOjEwMCU7IGhlaWdodDogMTAwJTtcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBweS01IHByLTEwXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIGZsZXgganVzdGlmeS1lbmQgdGV4dC0yeGxcIj5cbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2FuRG93bmxvYWRGaWxlXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJkb3dubG9hZEZpbGUoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsPVwiI2ZmZlwiIGQ9XCJNMTMgOFYySDd2NkgybDggOCA4LThoLTV6TTAgMThoMjB2Mkgwdi0yelwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgJm5ic3A7Jm5ic3A7Jm5ic3A7XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsPVwiI2ZmZlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yNCAyLjQybC0yLjQyIC0yLjQyIC05LjU4IDkuNTggLTkuNTggLTkuNTggLTIuNDIgMi40MiA5LjU4IDkuNTggLTkuNTggOS41OCAyLjQyIDIuNDIgOS41OCAtOS41OCA5LjU4IDkuNTggMi40MiAtMi40MiAtOS41OCAtOS41OCA5LjU4IC05LjU4elwiIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBqdXN0aWZ5LWNlbnRlciB0ZXh0LWNlbnRlciB0ZXh0LTJ4bCBmb250LW1vbm8gdGV4dC13aGl0ZVwiPlxuICAgICAgICAgICAgICAgIHt7IGZpbGVOYW1lIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cImZpbGVTaXplID4gbWF4RmlsZVNpemVcIiBjbGFzcz1cImZsZXggdy1mdWxsIGgtZnVsbCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHctYXV0byBiZy1ncmF5LTcwMCByb3VuZGVkLWxnIHAtNlwiIHN0eWxlPVwibWF4LXdpZHRoOiA4MCU7XCI+XG4gICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LXdoaXRlIGZvbnQtbWVkaXVtIHRleHQtY2VudGVyIHctZnVsbFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBjYW5Eb3dubG9hZEZpbGVcbiAgICAgICAgICAgICAgICAgICAgPyBuZ3RUcmFuc2xhdGVTZXJ2aWNlLm5ndEZpbGVUb29MYXJnZUZvclByZXZpZXdcbiAgICAgICAgICAgICAgICAgICAgOiBuZ3RUcmFuc2xhdGVTZXJ2aWNlLm5ndEZpbGVUb29MYXJnZUZvclByZXZpZXdOb0Rvd25sb2FkUGVybWlzc2lvblxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIDwvcD5cblxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjYW5Eb3dubG9hZEZpbGVcIiBjbGFzcz1cImN1cnNvci1wb2ludGVyIG10LTUgdGV4dC0yeGwgc2VsZi1jZW50ZXIgYm9yZGVyIHJvdW5kZWQgcC0yXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImRvd25sb2FkRmlsZSgpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGw9XCIjZmZmXCIgZD1cIk0xMyA4VjJIN3Y2SDJsOCA4IDgtOGgtNXpNMCAxOGgyMHYySDB2LTJ6XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInB4LTEwXCIgc3R5bGU9XCJ3aWR0aDoxMDAlOyBoZWlnaHQ6IDgzJTtcIiAqbmdJZj1cImNhblNob3dWaWV3ZXJcIj5cbiAgICAgICAgICAgIDxlbG92ZXJkZS1kb2Mtdmlld2VyIGNsYXNzPVwiaC1mdWxsIHctZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyXCIgW3VybF09XCJ1cmxcIiBbZGlzYWJsZUNvbnRlbnRdPVwiZGlzYWJsZUNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIChsb2FkZWQpPVwibG9hZGluZyA9IGZhbHNlXCIgKG9uQ2xvc2UpPVwiaGFuZGxlQ2xvc2UoKVwiPlxuICAgICAgICAgICAgPC9lbG92ZXJkZS1kb2Mtdmlld2VyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2ICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwiZmxleCBmaXhlZCBpbnNldC0wIGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciB3LWZ1bGwgaC1mdWxsIGN1cnNvci13YWl0IHotNTBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZGl2LWxvYWRlclwiPjwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { EloverdeDocViewerModule } from 'eloverde-doc-viewer';
|
|
5
|
-
import { NgxDropzoneModule } from 'ngx-dropzone';
|
|
6
|
-
import { NgtHelperModule } from '../ngt-helper/ngt-helper.module';
|
|
7
|
-
import { NgtSvgModule } from '../ngt-svg/ngt-svg.module';
|
|
8
|
-
import { NgtValidationModule } from '../ngt-validation/ngt-validation.module';
|
|
9
|
-
import { CustomDropzonePreviewComponent } from './custom-dropzone-preview/custom-dropzone-preview.component';
|
|
10
|
-
import { NgtDropzoneFileViewerComponent } from './ngt-dropzone-file-viewer/ngt-dropzone-file-viewer.component';
|
|
11
|
-
import { NgtDropzoneViewComponent } from './ngt-dropzone-view/ngt-dropzone-view.component';
|
|
12
|
-
import { NgtDropzoneComponent } from './ngt-dropzone.component';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class NgtDropzoneModule {
|
|
15
|
-
}
|
|
16
|
-
NgtDropzoneModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
17
|
-
NgtDropzoneModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneModule, declarations: [NgtDropzoneComponent,
|
|
18
|
-
NgtDropzoneFileViewerComponent,
|
|
19
|
-
NgtDropzoneViewComponent,
|
|
20
|
-
CustomDropzonePreviewComponent], imports: [CommonModule,
|
|
21
|
-
FormsModule,
|
|
22
|
-
NgtValidationModule,
|
|
23
|
-
NgxDropzoneModule,
|
|
24
|
-
NgtSvgModule,
|
|
25
|
-
EloverdeDocViewerModule,
|
|
26
|
-
NgtHelperModule], exports: [NgtDropzoneComponent] });
|
|
27
|
-
NgtDropzoneModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneModule, imports: [CommonModule,
|
|
28
|
-
FormsModule,
|
|
29
|
-
NgtValidationModule,
|
|
30
|
-
NgxDropzoneModule,
|
|
31
|
-
NgtSvgModule,
|
|
32
|
-
EloverdeDocViewerModule,
|
|
33
|
-
NgtHelperModule] });
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NgtDropzoneModule, decorators: [{
|
|
35
|
-
type: NgModule,
|
|
36
|
-
args: [{
|
|
37
|
-
exports: [NgtDropzoneComponent],
|
|
38
|
-
declarations: [
|
|
39
|
-
NgtDropzoneComponent,
|
|
40
|
-
NgtDropzoneFileViewerComponent,
|
|
41
|
-
NgtDropzoneViewComponent,
|
|
42
|
-
CustomDropzonePreviewComponent,
|
|
43
|
-
],
|
|
44
|
-
imports: [
|
|
45
|
-
CommonModule,
|
|
46
|
-
FormsModule,
|
|
47
|
-
NgtValidationModule,
|
|
48
|
-
NgxDropzoneModule,
|
|
49
|
-
NgtSvgModule,
|
|
50
|
-
EloverdeDocViewerModule,
|
|
51
|
-
NgtHelperModule
|
|
52
|
-
]
|
|
53
|
-
}]
|
|
54
|
-
}] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd0LWRyb3B6b25lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXRhaWx3aW5kL3NyYy9jb21wb25lbnRzL25ndC1kcm9wem9uZS9uZ3QtZHJvcHpvbmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMvRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMzRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFvQmhFLE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixpQkFmdEIsb0JBQW9CO1FBQ3BCLDhCQUE4QjtRQUM5Qix3QkFBd0I7UUFDeEIsOEJBQThCLGFBRzlCLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGlCQUFpQjtRQUNqQixZQUFZO1FBQ1osdUJBQXVCO1FBQ3ZCLGVBQWUsYUFkVCxvQkFBb0I7K0dBaUJyQixpQkFBaUIsWUFUdEIsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWix1QkFBdUI7UUFDdkIsZUFBZTsyRkFHVixpQkFBaUI7a0JBbEI3QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUMvQixZQUFZLEVBQUU7d0JBQ1Ysb0JBQW9CO3dCQUNwQiw4QkFBOEI7d0JBQzlCLHdCQUF3Qjt3QkFDeEIsOEJBQThCO3FCQUNqQztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIsZUFBZTtxQkFDbEI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRWxvdmVyZGVEb2NWaWV3ZXJNb2R1bGUgfSBmcm9tICdlbG92ZXJkZS1kb2Mtdmlld2VyJztcbmltcG9ydCB7IE5neERyb3B6b25lTW9kdWxlIH0gZnJvbSAnbmd4LWRyb3B6b25lJztcblxuaW1wb3J0IHsgTmd0SGVscGVyTW9kdWxlIH0gZnJvbSAnLi4vbmd0LWhlbHBlci9uZ3QtaGVscGVyLm1vZHVsZSc7XG5pbXBvcnQgeyBOZ3RTdmdNb2R1bGUgfSBmcm9tICcuLi9uZ3Qtc3ZnL25ndC1zdmcubW9kdWxlJztcbmltcG9ydCB7IE5ndFZhbGlkYXRpb25Nb2R1bGUgfSBmcm9tICcuLi9uZ3QtdmFsaWRhdGlvbi9uZ3QtdmFsaWRhdGlvbi5tb2R1bGUnO1xuaW1wb3J0IHsgQ3VzdG9tRHJvcHpvbmVQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jdXN0b20tZHJvcHpvbmUtcHJldmlldy9jdXN0b20tZHJvcHpvbmUtcHJldmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd0RHJvcHpvbmVGaWxlVmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9uZ3QtZHJvcHpvbmUtZmlsZS12aWV3ZXIvbmd0LWRyb3B6b25lLWZpbGUtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3REcm9wem9uZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL25ndC1kcm9wem9uZS12aWV3L25ndC1kcm9wem9uZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3REcm9wem9uZUNvbXBvbmVudCB9IGZyb20gJy4vbmd0LWRyb3B6b25lLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZXhwb3J0czogW05ndERyb3B6b25lQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTmd0RHJvcHpvbmVDb21wb25lbnQsXG4gICAgICAgIE5ndERyb3B6b25lRmlsZVZpZXdlckNvbXBvbmVudCxcbiAgICAgICAgTmd0RHJvcHpvbmVWaWV3Q29tcG9uZW50LFxuICAgICAgICBDdXN0b21Ecm9wem9uZVByZXZpZXdDb21wb25lbnQsXG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE5ndFZhbGlkYXRpb25Nb2R1bGUsXG4gICAgICAgIE5neERyb3B6b25lTW9kdWxlLFxuICAgICAgICBOZ3RTdmdNb2R1bGUsXG4gICAgICAgIEVsb3ZlcmRlRG9jVmlld2VyTW9kdWxlLFxuICAgICAgICBOZ3RIZWxwZXJNb2R1bGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5ndERyb3B6b25lTW9kdWxlIHsgfVxuIl19
|