@acorex/components 16.0.20 → 16.0.22
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2022/lib/calendar/calendar-box/calendar-box.component.mjs +74 -31
- package/esm2022/lib/property-editor/editors/selectbox-editor/selectbox.editor.mjs +4 -4
- package/esm2022/lib/tooltip/tooltip.directive.mjs +16 -5
- package/esm2022/lib/upload-file/upload-file.component.mjs +9 -5
- package/fesm2022/acorex-components.mjs +94 -35
- package/fesm2022/acorex-components.mjs.map +1 -1
- package/lib/calendar/calendar-box/calendar-box.component.d.ts +8 -4
- package/lib/property-editor/editors/selectbox-editor/selectbox.editor.d.ts +2 -2
- package/lib/tooltip/tooltip.directive.d.ts +1 -0
- package/package.json +1 -1
@@ -131,9 +131,11 @@ export class AXUploadFileComponent extends AXBaseComponent {
|
|
131
131
|
}
|
132
132
|
//
|
133
133
|
// this.dropRef.classList.add('ax-upload-drop-over');
|
134
|
-
this.dropRef
|
135
|
-
|
136
|
-
|
134
|
+
if (this.dropRef) {
|
135
|
+
this.dropRef.addEventListener('dragover', this.handleDragOver.bind(this));
|
136
|
+
this.dropRef.addEventListener('dragleave', this.handleDragLeave.bind(this));
|
137
|
+
this.dropRef.addEventListener('drop', this.handleDrop.bind(this));
|
138
|
+
}
|
137
139
|
}
|
138
140
|
handleOverlayDragOver(e) {
|
139
141
|
e.preventDefault();
|
@@ -173,7 +175,9 @@ export class AXUploadFileComponent extends AXBaseComponent {
|
|
173
175
|
const progressLabel = this.rendrer.createElement('small');
|
174
176
|
progressLabel.innerText = file.name;
|
175
177
|
this.fileName = file.name;
|
176
|
-
|
178
|
+
if (this.type === 'box') {
|
179
|
+
this.rendrer.appendChild(this.progressRef, progressDiv);
|
180
|
+
}
|
177
181
|
const com = this.injectionService.appendComponent(AXProgressBarComponent, { progress: 0 }, progressDiv).instance;
|
178
182
|
this.rendrer.appendChild(progressDiv, progressLabel);
|
179
183
|
const reader = new FileReader();
|
@@ -292,4 +296,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
292
296
|
}], onRemove: [{
|
293
297
|
type: Output
|
294
298
|
}] } });
|
295
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxHQUdoQixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7QUFZeEQsTUFBTSxPQUFPLHFCQUNYLFNBQVEsZUFBZTtJQXFHYjtJQUNBO0lBQ0E7SUFDRTtJQUNGO0lBdEdGLFVBQVUsQ0FBYztJQUdoQyxXQUFXLEdBT0UsS0FBSyxDQUFDO0lBR25CLE9BQU8sQ0FBYztJQUdyQixXQUFXLENBQWM7SUFHekIsS0FBSyxDQUFTO0lBR2QsSUFBSSxHQUFrQixJQUFJLENBQUM7SUFFSCxTQUFTLENBQWE7SUFHOUMsSUFBSSxHQUFnQyxRQUFRLENBQUM7SUFHdEMsUUFBUSxDQUFtQjtJQUV6QixRQUFRLEdBQVksS0FBSyxDQUFDO0lBRW5DLE1BQU0sR0FDSixJQUFJLFlBQVksRUFBeUIsQ0FBQztJQUc1QyxVQUFVLEdBQ1IsSUFBSSxZQUFZLEVBQTZCLENBQUM7SUFHaEQsUUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWpELFNBQVMsR0FBVTtRQUNqQjtZQUNFLElBQUksRUFBRSxPQUFPO1lBQ2IsTUFBTSxFQUFFLENBQUMsV0FBVyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7WUFDaEQsT0FBTyxFQUFFLEtBQUs7U0FDZjtRQUNEO1lBQ0UsSUFBSSxFQUFFLE9BQU87WUFDYixNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUM7WUFDckIsT0FBTyxFQUFFLE9BQU87U0FDakI7UUFDRDtZQUNFLElBQUksRUFBRSxPQUFPO1lBQ2IsTUFBTSxFQUFFLENBQUMsaUJBQWlCLENBQUM7WUFDM0IsT0FBTyxFQUFFLEtBQUs7U0FDZjtRQUNEO1lBQ0UsSUFBSSxFQUFFLE9BQU87WUFDYixNQUFNLEVBQUU7Z0JBQ04sMEJBQTBCO2dCQUMxQixtRUFBbUU7Z0JBQ25FLGdEQUFnRDtnQkFDaEQsZ0RBQWdEO2dCQUNoRCxVQUFVO2FBQ1g7WUFDRCxPQUFPLEVBQUUsTUFBTTtTQUNoQjtRQUNEO1lBQ0UsSUFBSSxFQUFFLE9BQU87WUFDYixNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUM7WUFDbkIsT0FBTyxFQUFFLE9BQU87U0FDakI7UUFDRDtZQUNFLElBQUksRUFBRSxhQUFhO1lBQ25CLE1BQU0sRUFBRSxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQztZQUMzRCxPQUFPLEVBQUUsYUFBYTtTQUN2QjtRQUNEO1lBQ0UsSUFBSSxFQUFFLE1BQU07WUFDWixNQUFNLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztZQUM1QixPQUFPLEVBQUUsTUFBTTtTQUNoQjtRQUNEO1lBQ0UsSUFBSSxFQUFFLEtBQUs7WUFDWCxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDZixPQUFPLEVBQUUsRUFBRTtTQUNaO0tBQ0YsQ0FBQztJQUVGLEtBQUssR0FBVyxFQUFFLENBQUM7SUFDbkIsS0FBSyxLQUFJLENBQUM7SUFFVixRQUFRLEdBQVcsRUFBRSxDQUFDO0lBQ3RCLFlBQ1UsRUFBMkIsRUFDM0IsZ0JBQWlDLEVBQ2pDLE9BQWtCLEVBQ2hCLEdBQXNCLEVBQ3hCLFlBQTRCO1FBRXBDLEtBQUssRUFBRSxDQUFDO1FBTkEsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyxZQUFPLEdBQVAsT0FBTyxDQUFXO1FBQ2hCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtJQUd0QyxDQUFDO0lBRUQsYUFBYSxDQUFDLENBQUM7UUFDYixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVksQ0FBQyxDQUFDO1FBQ1osTUFBTSxLQUFLLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWtDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNsRSxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBQ0QsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFFckIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4RCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM1QjtRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFO1NBQ3pCO2FBQU07WUFDTCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3hFO1FBQ0QsRUFBRTtRQUNGLElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLEVBQUU7U0FDN0I7YUFBTTtZQUNMLElBQUksQ0FBQyxXQUFXO2dCQUNkLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQzNEO1FBQ0QsRUFBRTtRQUNGLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFDakQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDekUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7U0FDM0U7UUFDRCxFQUFFO1FBQ0YscURBQXFEO1FBQ3JELElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxDQUFZO1FBQ3hDLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNuQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDcEIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU8sY0FBYyxDQUFDLENBQVk7UUFDakMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdEMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU8sZUFBZSxDQUFDLENBQVk7UUFDbEMsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsVUFBVSxDQUFDLENBQVk7UUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BELE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRU8sT0FBTyxDQUFDLElBQVU7UUFDeEIsSUFDRSxJQUFJLENBQUMsV0FBVztZQUNoQixJQUFJLENBQUMsV0FBVyxLQUFLLEtBQUs7WUFDMUIsQ0FBQyxJQUFJLENBQUMsU0FBUztpQkFDWixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQztpQkFDeEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQzdCO1lBQ0EsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ3BCLDZCQUNFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUMxRCxPQUFPLENBQ1IsQ0FBQztZQUNGLE9BQU87U0FDUjtRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBZ0IsQ0FBQztRQUNyRSxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBZ0IsQ0FBQztRQUN6RSxhQUFhLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDeEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FDL0Msc0JBQXNCLEVBQ3RCLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUNmLFdBQVcsQ0FDWixDQUFDLFFBQWtDLENBQUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRXJELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNmLElBQUk7Z0JBQ0osSUFBSSxFQUFHLENBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTTthQUMvQixDQUFDLENBQUM7WUFDSCxFQUFFO1lBQ0YsY0FBYztZQUNkLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNYLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztZQUNqQixNQUFNLElBQUksR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO2dCQUM1QixRQUFRLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztnQkFDeEIsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRTtvQkFDdEIsUUFBUSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7aUJBQ3BCO2dCQUNELEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztnQkFDM0MsR0FBRyxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO29CQUNuQixJQUFJO29CQUNKLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztvQkFDZCxRQUFRO29CQUNSLEtBQUssRUFBRSxFQUFFO2lCQUNWLENBQUMsQ0FBQztnQkFDSCxFQUFFO2dCQUNGLElBQUksR0FBRyxDQUFDLFFBQVEsSUFBSSxHQUFHLEVBQUU7b0JBQ3ZCLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRTt3QkFDZCxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO3dCQUN4RCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7NEJBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDOzRCQUN4RCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUMxQyxLQUFLLENBQ1MsQ0FBQzs0QkFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDOzRCQUN6QyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsR0FBRzs7Ozs7Ozs7Ozs7c0JBV3BCLElBQUksQ0FBQyxRQUFROzs7YUFHdEIsQ0FBQzs0QkFDQSxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsQ0FBQzs0QkFDakUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dDQUM1QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0NBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7Z0NBQ3hELElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dDQUMzQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7NEJBQ3RCLENBQUMsQ0FBQyxDQUFDOzRCQUNILElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO3lCQUN6RDtvQkFDSCxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7aUJBQ1Y7WUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDVixDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM3RSxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFnQixDQUFDO1FBQ25FLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsR0FBRzs7Ozs7Ozs7O1lBU3BCLFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDOztLQUV4QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDcEQsQ0FBQzt3R0FoVFUscUJBQXFCOzRGQUFyQixxQkFBcUIsZ2dCQy9CbEMseTNCQXFDQTs7NEZETmEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLGdCQUFnQixpQkFFWCxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUUsS0FBSyxFQUFFLGdEQUFnRCxFQUFFO29OQVNqRSxXQUFXO3NCQURWLEtBQUs7Z0JBV04sT0FBTztzQkFETixLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixLQUFLO3NCQURKLEtBQUs7Z0JBSU4sSUFBSTtzQkFESCxLQUFLO2dCQUdrQixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBR3RCLElBQUk7c0JBREgsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFFTixNQUFNO3NCQURMLE1BQU07Z0JBS1AsVUFBVTtzQkFEVCxNQUFNO2dCQUtQLFFBQVE7c0JBRFAsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYUmVuZGVyU2VydmljZSwgQVhUcmFuc2xhdG9yIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBWEJhc2VDb21wb25lbnQsXG4gIEFYQmFzZVNpemFibGVDb21wb25lbnQsXG4gIEFYRWxlbWVudFNpemUsXG59IGZyb20gJy4uL2Jhc2UvZWxlbWVudC5jbGFzcyc7XG5pbXBvcnQgeyBBWFByb2dyZXNzQmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi90b2FzdC90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEFYVXBsb2FkRmlsZUxvYWRFdmVudCxcbiAgQVhVcGxvYWRGaWxlUHJvZ3Jlc3NFdmVudCxcbn0gZnJvbSAnLi91cGxvYWQtZmlsZS5ldmVudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC11cGxvYWQtZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi91cGxvYWQtZmlsZS5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHsgc3R5bGU6ICdkaXNwbGF5OiBibG9jazsgd2lkdGg6MTAwJTsgcG9zaXRpb246IHJlbGF0aXZlJyB9LFxufSlcbmV4cG9ydCBjbGFzcyBBWFVwbG9hZEZpbGVDb21wb25lbnRcbiAgZXh0ZW5kcyBBWEJhc2VDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBWEJhc2VTaXphYmxlQ29tcG9uZW50XG57XG4gIHByaXZhdGUgb3ZlcmxheURpdjogSFRNTEVsZW1lbnQ7XG5cbiAgQElucHV0KClcbiAgY29udGVudFR5cGU6XG4gICAgfCAnaW1hZ2UnXG4gICAgfCAnZXhjZWwnXG4gICAgfCAnYXVkaW8nXG4gICAgfCAndmlkZW8nXG4gICAgfCAndmlkZW8vaW1hZ2UnXG4gICAgfCAnYW55J1xuICAgIHwgJ2pzb24nID0gJ2FueSc7XG5cbiAgQElucHV0KClcbiAgZHJvcFJlZjogSFRNTEVsZW1lbnQ7XG5cbiAgQElucHV0KClcbiAgcHJvZ3Jlc3NSZWY6IEhUTUxFbGVtZW50O1xuXG4gIEBJbnB1dCgpXG4gIGxhYmVsOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgc2l6ZTogQVhFbGVtZW50U2l6ZSA9ICdtZCc7XG5cbiAgQFZpZXdDaGlsZCgnZmlsZUlucHV0JykgZmlsZUlucHV0OiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgpXG4gIHR5cGU6ICdib3gnIHwgJ2lubGluZScgfCAnaGlkZGVuJyA9ICdpbmxpbmUnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KClcbiAgb25Mb2FkOiBFdmVudEVtaXR0ZXI8QVhVcGxvYWRGaWxlTG9hZEV2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWFVwbG9hZEZpbGVMb2FkRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIG9uUHJvZ3Jlc3M6IEV2ZW50RW1pdHRlcjxBWFVwbG9hZEZpbGVQcm9ncmVzc0V2ZW50PiA9XG4gICAgbmV3IEV2ZW50RW1pdHRlcjxBWFVwbG9hZEZpbGVQcm9ncmVzc0V2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBvblJlbW92ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgZmlsZVR5cGVzOiBhbnlbXSA9IFtcbiAgICB7XG4gICAgICB0eXBlOiAnaW1hZ2UnLFxuICAgICAgYWNjZXB0OiBbJ2ltYWdlL2dpZicsICdpbWFnZS9qcGVnJywgJ2ltYWdlL3BuZyddLFxuICAgICAgbWVzc2FnZTogJ9i52qnYsycsXG4gICAgfSxcbiAgICB7XG4gICAgICB0eXBlOiAnYXVkaW8nLFxuICAgICAgYWNjZXB0OiBbJ2F1ZGlvL21wMyddLFxuICAgICAgbWVzc2FnZTogJ2F1ZGlvJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICdlYm9vaycsXG4gICAgICBhY2NlcHQ6IFsnYXBwbGljYXRpb24vcGRmJ10sXG4gICAgICBtZXNzYWdlOiAncGRmJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICdleGNlbCcsXG4gICAgICBhY2NlcHQ6IFtcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbCcsXG4gICAgICAgICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCcsXG4gICAgICAgICdhcHBsaWNhdGlvbi92bmQubXMtZXhjZWwuc2hlZXQubWFjcm9FbmFibGVkLjEyJyxcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuc3ByZWFkc2hlZXQnLFxuICAgICAgICAndGV4dC9jc3YnLFxuICAgICAgXSxcbiAgICAgIG1lc3NhZ2U6ICfYp9qp2LPZhCcsXG4gICAgfSxcbiAgICB7XG4gICAgICB0eXBlOiAndmlkZW8nLFxuICAgICAgYWNjZXB0OiBbJ3ZpZGVvLyonXSxcbiAgICAgIG1lc3NhZ2U6ICd2aWRlbycsXG4gICAgfSxcbiAgICB7XG4gICAgICB0eXBlOiAndmlkZW8vaW1hZ2UnLFxuICAgICAgYWNjZXB0OiBbJ2ltYWdlL2dpZicsICdpbWFnZS9qcGVnJywgJ2ltYWdlL3BuZycsICd2aWRlby8qJ10sXG4gICAgICBtZXNzYWdlOiAndmlkZW8vaW1hZ2UnLFxuICAgIH0sXG4gICAge1xuICAgICAgdHlwZTogJ2pzb24nLFxuICAgICAgYWNjZXB0OiBbJ2FwcGxpY2F0aW9uL2pzb24nXSxcbiAgICAgIG1lc3NhZ2U6ICdqc29uJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICdhbnknLFxuICAgICAgYWNjZXB0OiBbJyovKiddLFxuICAgICAgbWVzc2FnZTogJycsXG4gICAgfSxcbiAgXTtcblxuICBmaWxlczogRmlsZVtdID0gW107XG4gIGZvY3VzKCkge31cblxuICBmaWxlTmFtZTogc3RyaW5nID0gJyc7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgaW5qZWN0aW9uU2VydmljZTogQVhSZW5kZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVuZHJlcjogUmVuZGVyZXIyLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBBWFRvYXN0U2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgb25EZWxldGVDbGljayhlKSB7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIG9uRmlsZUNoYW5nZShlKSB7XG4gICAgY29uc3QgZmlsZXMgPSBlLnRhcmdldC5maWxlcztcbiAgICB0aGlzLmFkZEZpbGUoZmlsZXNbMF0pO1xuICAgICh0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlID0gbnVsbDtcbiAgfVxuXG4gIG9wZW4oKSB7XG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC5jbGljayh7IGFjY2VwdDogdGhpcy5hY2Nlc3NUeXBlcyB9KTtcbiAgfVxuICByZW1vdmUoKSB7XG4gICAgdGhpcy5maWxlSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgIHRoaXMuZmlsZXMgPSBbXTtcbiAgICB0aGlzLmZpbGVOYW1lID0gbnVsbDtcblxuICAgIGlmICh0aGlzLnR5cGUgPT09ICdib3gnKSB7XG4gICAgICB0aGlzLnJlbmRyZXIucmVtb3ZlQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgdGhpcy5oYW5kbGVTaG93RW1wdHlGaWxlKCk7XG4gICAgfVxuICAgIHRoaXMub25SZW1vdmUuZW1pdCgpO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kcm9wUmVmICE9IG51bGwpIHtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kcm9wUmVmID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy51cGxvYWQtZmlsZS1ib3gnKTtcbiAgICB9XG4gICAgLy9cbiAgICBpZiAodGhpcy5wcm9ncmVzc1JlZiAhPSBudWxsKSB7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucHJvZ3Jlc3NSZWYgPVxuICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnVwbG9hZC1maWxlLWJveCcpO1xuICAgIH1cbiAgICAvL1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdoaWRkZW4nIHx8IHRoaXMudHlwZSA9PT0gJ2JveCcpIHtcbiAgICAgIHRoaXMuaGFuZGxlU2hvd0VtcHR5RmlsZSgpO1xuICAgICAgdGhpcy5vdmVybGF5RGl2LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWcnLCB0aGlzLmhhbmRsZU92ZXJsYXlEcmFnT3Zlcik7XG4gICAgICB0aGlzLm92ZXJsYXlEaXYuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ292ZXInLCB0aGlzLmhhbmRsZU92ZXJsYXlEcmFnT3Zlcik7XG4gICAgICB0aGlzLm92ZXJsYXlEaXYuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ2xlYXZlJywgdGhpcy5oYW5kbGVPdmVybGF5RHJhZ092ZXIpO1xuICAgIH1cbiAgICAvL1xuICAgIC8vIHRoaXMuZHJvcFJlZi5jbGFzc0xpc3QuYWRkKCdheC11cGxvYWQtZHJvcC1vdmVyJyk7XG4gICAgdGhpcy5kcm9wUmVmLmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWdvdmVyJywgdGhpcy5oYW5kbGVEcmFnT3Zlci5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmRyb3BSZWYuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ2xlYXZlJywgdGhpcy5oYW5kbGVEcmFnTGVhdmUuYmluZCh0aGlzKSk7XG4gICAgdGhpcy5kcm9wUmVmLmFkZEV2ZW50TGlzdGVuZXIoJ2Ryb3AnLCB0aGlzLmhhbmRsZURyb3AuYmluZCh0aGlzKSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZU92ZXJsYXlEcmFnT3ZlcihlOiBEcmFnRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZURyYWdPdmVyKGU6IERyYWdFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub3ZlcmxheURpdi5jbGFzc0xpc3QuYWRkKCdzaG93Jyk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVEcmFnTGVhdmUoZTogRHJhZ0V2ZW50KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5vdmVybGF5RGl2LmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBoYW5kbGVEcm9wKGU6IERyYWdFdmVudCkge1xuICAgIHRoaXMuaGFuZGxlRHJhZ0xlYXZlKGUpO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZS5kYXRhVHJhbnNmZXIuZmlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGZpbGUgPSBlLmRhdGFUcmFuc2Zlci5maWxlc1tpXTtcbiAgICAgIHRoaXMuYWRkRmlsZShmaWxlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZEZpbGUoZmlsZTogRmlsZSkge1xuICAgIGlmIChcbiAgICAgIHRoaXMuY29udGVudFR5cGUgJiZcbiAgICAgIHRoaXMuY29udGVudFR5cGUgIT09ICdhbnknICYmXG4gICAgICAhdGhpcy5maWxlVHlwZXNcbiAgICAgICAgLmZpbmQoKHgpID0+IHgudHlwZSA9PT0gdGhpcy5jb250ZW50VHlwZSlcbiAgICAgICAgLmFjY2VwdC5pbmNsdWRlcyhmaWxlLnR5cGUpXG4gICAgKSB7XG4gICAgICB0aGlzLnRvYXN0U2VydmljZS5pbmZvKFxuICAgICAgICBg2YHYp9uM2YQg2KjYp9ix2q/YsNin2LHbjCDYqNin24zYryDYp9iyINmG2YjYuSAke1xuICAgICAgICAgIHRoaXMuZmlsZVR5cGVzLmZpbmQoKHgpID0+IHgudHlwZSA9PT0gdGhpcy5jb250ZW50VHlwZSkubWVzc2FnZVxuICAgICAgICB9INio2KfYtNivYFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBwcm9ncmVzc0RpdiA9IHRoaXMucmVuZHJlci5jcmVhdGVFbGVtZW50KCdkaXYnKSBhcyBIVE1MRWxlbWVudDtcbiAgICBwcm9ncmVzc0Rpdi5jbGFzc0xpc3QuYWRkKCdheC11cGxvYWQtcHJvZ3Jlc3MtcGFuZWwnKTtcbiAgICBjb25zdCBwcm9ncmVzc0xhYmVsID0gdGhpcy5yZW5kcmVyLmNyZWF0ZUVsZW1lbnQoJ3NtYWxsJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgcHJvZ3Jlc3NMYWJlbC5pbm5lclRleHQgPSBmaWxlLm5hbWU7XG4gICAgdGhpcy5maWxlTmFtZSA9IGZpbGUubmFtZTtcbiAgICB0aGlzLnJlbmRyZXIuYXBwZW5kQ2hpbGQodGhpcy5wcm9ncmVzc1JlZiwgcHJvZ3Jlc3NEaXYpO1xuICAgIGNvbnN0IGNvbSA9IHRoaXMuaW5qZWN0aW9uU2VydmljZS5hcHBlbmRDb21wb25lbnQoXG4gICAgICBBWFByb2dyZXNzQmFyQ29tcG9uZW50LFxuICAgICAgeyBwcm9ncmVzczogMCB9LFxuICAgICAgcHJvZ3Jlc3NEaXZcbiAgICApLmluc3RhbmNlIGFzIEFYUHJvZ3Jlc3NCYXJDb21wb25lbnQ7XG4gICAgdGhpcy5yZW5kcmVyLmFwcGVuZENoaWxkKHByb2dyZXNzRGl2LCBwcm9ncmVzc0xhYmVsKTtcblxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZSkgPT4ge1xuICAgICAgdGhpcy5vbkxvYWQuZW1pdCh7XG4gICAgICAgIGZpbGUsXG4gICAgICAgIGRhdGE6IChlIGFzIGFueSkudGFyZ2V0LnJlc3VsdCxcbiAgICAgIH0pO1xuICAgICAgLy9cbiAgICAgIC8vIEZha2UgVXBsb2FkXG4gICAgICBsZXQgcHYgPSAwO1xuICAgICAgbGV0IHVwbG9hZGVkID0gMDtcbiAgICAgIGNvbnN0IGludHYgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIHVwbG9hZGVkICs9IDEwMjQgKiAxMDAwO1xuICAgICAgICBpZiAodXBsb2FkZWQgPiBlLnRvdGFsKSB7XG4gICAgICAgICAgdXBsb2FkZWQgPSBlLnRvdGFsO1xuICAgICAgICB9XG4gICAgICAgIHB2ID0gTWF0aC5jZWlsKCh1cGxvYWRlZCAvIGUudG90YWwpICogMTAwKTtcbiAgICAgICAgY29tLnByb2dyZXNzID0gcHY7XG4gICAgICAgIHRoaXMub25Qcm9ncmVzcy5lbWl0KHtcbiAgICAgICAgICBmaWxlLFxuICAgICAgICAgIHRvdGFsOiBlLnRvdGFsLFxuICAgICAgICAgIHVwbG9hZGVkLFxuICAgICAgICAgIHZhbHVlOiBwdixcbiAgICAgICAgfSk7XG4gICAgICAgIC8vXG4gICAgICAgIGlmIChjb20ucHJvZ3Jlc3MgPj0gMTAwKSB7XG4gICAgICAgICAgY2xlYXJJbnRlcnZhbChpbnR2KTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVuZHJlci5yZW1vdmVDaGlsZCh0aGlzLnByb2dyZXNzUmVmLCBwcm9ncmVzc0Rpdik7XG4gICAgICAgICAgICBpZiAodGhpcy5maWxlTmFtZSkge1xuICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIucmVtb3ZlQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYgPSB0aGlzLnJlbmRyZXIuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAnZGl2J1xuICAgICAgICAgICAgICApIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYuY2xhc3NMaXN0LmFkZCgnb3ZlcmxheScpO1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYuaW5uZXJIVE1MID0gYFxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8aSBzdHlsZT1cImNvbG9yOiB2YXIoLS1heC1kYW5nZXItY29sb3IpXCIgY2xhc3M9XCJmYXIgZmEtdGltZXMgZmEtM3hcIj48L2k+XG4gICAgICAgICAgICAgIDxzcGFuPiR7dGhpcy5maWxlTmFtZX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYDtcbiAgICAgICAgICAgICAgY29uc3QgY2xvc2VJY29uID0gdGhpcy5vdmVybGF5RGl2LnF1ZXJ5U2VsZWN0b3IoJy5mYXIuZmEtdGltZXMnKTtcbiAgICAgICAgICAgICAgdGhpcy5yZW5kcmVyLmxpc3RlbihjbG9zZUljb24sICdjbGljaycsIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIucmVtb3ZlQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU2hvd0VtcHR5RmlsZSgpO1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIuYXBwZW5kQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sIDEwMDApO1xuICAgICAgICB9XG4gICAgICB9LCAxMDApO1xuICAgIH0pO1xuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgIHRoaXMuZmlsZXMucHVzaChmaWxlKTtcbiAgfVxuXG4gIGdldCBhY2Nlc3NUeXBlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZVR5cGVzLmZpbmQoKGl0ZW0pID0+IGl0ZW0udHlwZSA9PSB0aGlzLmNvbnRlbnRUeXBlKS5hY2NlcHQ7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVNob3dFbXB0eUZpbGUoKSB7XG4gICAgdGhpcy5vdmVybGF5RGl2ID0gdGhpcy5yZW5kcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpIGFzIEhUTUxFbGVtZW50O1xuICAgIHRoaXMub3ZlcmxheURpdi5jbGFzc0xpc3QuYWRkKCdvdmVybGF5Jyk7XG4gICAgdGhpcy5vdmVybGF5RGl2LmlubmVySFRNTCA9IGBcbiAgICAgIDxkaXYgIHN0eWxlPVwiXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogOHB4O1xuICAgIFwiPlxuICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNsb3VkLXVwbG9hZC1hbHQgZmEtM3hcIj48L2k+XG4gICAgPHNwYW4+JHtBWFRyYW5zbGF0b3IuZ2V0KCdjb21tb24udXBsb2FkJyl9PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgICB0aGlzLnJlbmRyZXIuYXBwZW5kQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgIHRoaXMuZHJvcFJlZi5jbGFzc0xpc3QuYWRkKCdheC11cGxvYWQtZHJvcC1vdmVyJyk7XG4gIH1cbn1cbiIsIjxpbnB1dFxuICAjZmlsZUlucHV0XG4gIHR5cGU9XCJmaWxlXCJcbiAgW2FjY2VwdF09XCJhY2Nlc3NUeXBlcy5qb2luKCcsJylcIlxuICBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIlxuICAoY2hhbmdlKT1cIm9uRmlsZUNoYW5nZSgkZXZlbnQpXCJcbi8+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJ0eXBlID09ICdpbmxpbmUnOyBlbHNlIGVsc2VUZW1wbGF0ZVwiPlxuICA8YXgtZm9ybS1ncm91cCBzaXplPVwie3sgc2l6ZSB9fVwiPlxuICAgIDxheC10ZXh0LWJveFxuICAgICAgW3ZhbHVlXT1cImZpbGVOYW1lXCJcbiAgICAgIHJlYWRvbmx5PVwidHJ1ZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgID48L2F4LXRleHQtYm94PlxuICAgIDxheC1idXR0b25cbiAgICAgIHR5cGU9XCJibGFuayBsaWdodFwiXG4gICAgICBpY29uPVwiZmFyIGZhLXRpbWVzXCJcbiAgICAgIChjbGljayk9XCJyZW1vdmUoKVwiXG4gICAgICAqbmdJZj1cImZpbGVOYW1lXCJcbiAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgPlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIDxheC1idXR0b25cbiAgICAgIHR5cGU9XCJwcmltYXJ5IGJsYW5rXCJcbiAgICAgIGljb249XCJmYXIgZmEtdXBsb2FkXCJcbiAgICAgIChjbGljayk9XCJvcGVuKClcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgPlxuICAgIDwvYXgtYnV0dG9uPlxuICA8L2F4LWZvcm0tZ3JvdXA+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJheCB1cGxvYWQtZmlsZS1ib3hcIiAoY2xpY2spPVwib3BlbigpXCIgI2Ryb3BSZWY+PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
299
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvdXBsb2FkLWZpbGUvdXBsb2FkLWZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0QsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsZUFBZSxHQUdoQixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7QUFZeEQsTUFBTSxPQUFPLHFCQUNYLFNBQVEsZUFBZTtJQXFHYjtJQUNBO0lBQ0E7SUFDRTtJQUNGO0lBdEdGLFVBQVUsQ0FBYztJQUdoQyxXQUFXLEdBT0UsS0FBSyxDQUFDO0lBR25CLE9BQU8sQ0FBYztJQUdyQixXQUFXLENBQWM7SUFHekIsS0FBSyxDQUFTO0lBR2QsSUFBSSxHQUFrQixJQUFJLENBQUM7SUFFSCxTQUFTLENBQWE7SUFHOUMsSUFBSSxHQUFnQyxRQUFRLENBQUM7SUFHdEMsUUFBUSxDQUFtQjtJQUV6QixRQUFRLEdBQVksS0FBSyxDQUFDO0lBRW5DLE1BQU0sR0FDSixJQUFJLFlBQVksRUFBeUIsQ0FBQztJQUc1QyxVQUFVLEdBQ1Is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O2dCQUlOLEtBQUs7c0JBREosS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBR2tCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFHdEIsSUFBSTtzQkFESCxLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVOLE1BQU07c0JBREwsTUFBTTtnQkFLUCxVQUFVO3NCQURULE1BQU07Z0JBS1AsUUFBUTtzQkFEUCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhSZW5kZXJTZXJ2aWNlLCBBWFRyYW5zbGF0b3IgfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFYQmFzZUNvbXBvbmVudCxcbiAgQVhCYXNlU2l6YWJsZUNvbXBvbmVudCxcbiAgQVhFbGVtZW50U2l6ZSxcbn0gZnJvbSAnLi4vYmFzZS9lbGVtZW50LmNsYXNzJztcbmltcG9ydCB7IEFYUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tICcuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWFRvYXN0U2VydmljZSB9IGZyb20gJy4uL3RvYXN0L3RvYXN0LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQVhVcGxvYWRGaWxlTG9hZEV2ZW50LFxuICBBWFVwbG9hZEZpbGVQcm9ncmVzc0V2ZW50LFxufSBmcm9tICcuL3VwbG9hZC1maWxlLmV2ZW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXVwbG9hZC1maWxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VwbG9hZC1maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDogeyBzdHlsZTogJ2Rpc3BsYXk6IGJsb2NrOyB3aWR0aDoxMDAlOyBwb3NpdGlvbjogcmVsYXRpdmUnIH0sXG59KVxuZXhwb3J0IGNsYXNzIEFYVXBsb2FkRmlsZUNvbXBvbmVudFxuICBleHRlbmRzIEFYQmFzZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIEFYQmFzZVNpemFibGVDb21wb25lbnRcbntcbiAgcHJpdmF0ZSBvdmVybGF5RGl2OiBIVE1MRWxlbWVudDtcblxuICBASW5wdXQoKVxuICBjb250ZW50VHlwZTpcbiAgICB8ICdpbWFnZSdcbiAgICB8ICdleGNlbCdcbiAgICB8ICdhdWRpbydcbiAgICB8ICd2aWRlbydcbiAgICB8ICd2aWRlby9pbWFnZSdcbiAgICB8ICdhbnknXG4gICAgfCAnanNvbicgPSAnYW55JztcblxuICBASW5wdXQoKVxuICBkcm9wUmVmOiBIVE1MRWxlbWVudDtcblxuICBASW5wdXQoKVxuICBwcm9ncmVzc1JlZjogSFRNTEVsZW1lbnQ7XG5cbiAgQElucHV0KClcbiAgbGFiZWw6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzaXplOiBBWEVsZW1lbnRTaXplID0gJ21kJztcblxuICBAVmlld0NoaWxkKCdmaWxlSW5wdXQnKSBmaWxlSW5wdXQ6IEVsZW1lbnRSZWY7XG5cbiAgQElucHV0KClcbiAgdHlwZTogJ2JveCcgfCAnaW5saW5lJyB8ICdoaWRkZW4nID0gJ2lubGluZSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKVxuICBvbkxvYWQ6IEV2ZW50RW1pdHRlcjxBWFVwbG9hZEZpbGVMb2FkRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYVXBsb2FkRmlsZUxvYWRFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgb25Qcm9ncmVzczogRXZlbnRFbWl0dGVyPEFYVXBsb2FkRmlsZVByb2dyZXNzRXZlbnQ+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPEFYVXBsb2FkRmlsZVByb2dyZXNzRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIG9uUmVtb3ZlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBmaWxlVHlwZXM6IGFueVtdID0gW1xuICAgIHtcbiAgICAgIHR5cGU6ICdpbWFnZScsXG4gICAgICBhY2NlcHQ6IFsnaW1hZ2UvZ2lmJywgJ2ltYWdlL2pwZWcnLCAnaW1hZ2UvcG5nJ10sXG4gICAgICBtZXNzYWdlOiAn2LnaqdizJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICdhdWRpbycsXG4gICAgICBhY2NlcHQ6IFsnYXVkaW8vbXAzJ10sXG4gICAgICBtZXNzYWdlOiAnYXVkaW8nLFxuICAgIH0sXG4gICAge1xuICAgICAgdHlwZTogJ2Vib29rJyxcbiAgICAgIGFjY2VwdDogWydhcHBsaWNhdGlvbi9wZGYnXSxcbiAgICAgIG1lc3NhZ2U6ICdwZGYnLFxuICAgIH0sXG4gICAge1xuICAgICAgdHlwZTogJ2V4Y2VsJyxcbiAgICAgIGFjY2VwdDogW1xuICAgICAgICAnYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsJyxcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0JyxcbiAgICAgICAgJ2FwcGxpY2F0aW9uL3ZuZC5tcy1leGNlbC5zaGVldC5tYWNyb0VuYWJsZWQuMTInLFxuICAgICAgICAnYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC5zcHJlYWRzaGVldCcsXG4gICAgICAgICd0ZXh0L2NzdicsXG4gICAgICBdLFxuICAgICAgbWVzc2FnZTogJ9in2qnYs9mEJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICd2aWRlbycsXG4gICAgICBhY2NlcHQ6IFsndmlkZW8vKiddLFxuICAgICAgbWVzc2FnZTogJ3ZpZGVvJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIHR5cGU6ICd2aWRlby9pbWFnZScsXG4gICAgICBhY2NlcHQ6IFsnaW1hZ2UvZ2lmJywgJ2ltYWdlL2pwZWcnLCAnaW1hZ2UvcG5nJywgJ3ZpZGVvLyonXSxcbiAgICAgIG1lc3NhZ2U6ICd2aWRlby9pbWFnZScsXG4gICAgfSxcbiAgICB7XG4gICAgICB0eXBlOiAnanNvbicsXG4gICAgICBhY2NlcHQ6IFsnYXBwbGljYXRpb24vanNvbiddLFxuICAgICAgbWVzc2FnZTogJ2pzb24nLFxuICAgIH0sXG4gICAge1xuICAgICAgdHlwZTogJ2FueScsXG4gICAgICBhY2NlcHQ6IFsnKi8qJ10sXG4gICAgICBtZXNzYWdlOiAnJyxcbiAgICB9LFxuICBdO1xuXG4gIGZpbGVzOiBGaWxlW10gPSBbXTtcbiAgZm9jdXMoKSB7fVxuXG4gIGZpbGVOYW1lOiBzdHJpbmcgPSAnJztcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBpbmplY3Rpb25TZXJ2aWNlOiBBWFJlbmRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZW5kcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSB0b2FzdFNlcnZpY2U6IEFYVG9hc3RTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvbkRlbGV0ZUNsaWNrKGUpIHtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICB9XG5cbiAgb25GaWxlQ2hhbmdlKGUpIHtcbiAgICBjb25zdCBmaWxlcyA9IGUudGFyZ2V0LmZpbGVzO1xuICAgIHRoaXMuYWRkRmlsZShmaWxlc1swXSk7XG4gICAgKHRoaXMuZmlsZUlucHV0Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUgPSBudWxsO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LmNsaWNrKHsgYWNjZXB0OiB0aGlzLmFjY2Vzc1R5cGVzIH0pO1xuICB9XG4gIHJlbW92ZSgpIHtcbiAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgdGhpcy5maWxlcyA9IFtdO1xuICAgIHRoaXMuZmlsZU5hbWUgPSBudWxsO1xuXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2JveCcpIHtcbiAgICAgIHRoaXMucmVuZHJlci5yZW1vdmVDaGlsZCh0aGlzLmRyb3BSZWYsIHRoaXMub3ZlcmxheURpdik7XG4gICAgICB0aGlzLmhhbmRsZVNob3dFbXB0eUZpbGUoKTtcbiAgICB9XG4gICAgdGhpcy5vblJlbW92ZS5lbWl0KCk7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRyb3BSZWYgIT0gbnVsbCkge1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRyb3BSZWYgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnVwbG9hZC1maWxlLWJveCcpO1xuICAgIH1cbiAgICAvL1xuICAgIGlmICh0aGlzLnByb2dyZXNzUmVmICE9IG51bGwpIHtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5wcm9ncmVzc1JlZiA9XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcudXBsb2FkLWZpbGUtYm94Jyk7XG4gICAgfVxuICAgIC8vXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2hpZGRlbicgfHwgdGhpcy50eXBlID09PSAnYm94Jykge1xuICAgICAgdGhpcy5oYW5kbGVTaG93RW1wdHlGaWxlKCk7XG4gICAgICB0aGlzLm92ZXJsYXlEaXYuYWRkRXZlbnRMaXN0ZW5lcignZHJhZycsIHRoaXMuaGFuZGxlT3ZlcmxheURyYWdPdmVyKTtcbiAgICAgIHRoaXMub3ZlcmxheURpdi5hZGRFdmVudExpc3RlbmVyKCdkcmFnb3ZlcicsIHRoaXMuaGFuZGxlT3ZlcmxheURyYWdPdmVyKTtcbiAgICAgIHRoaXMub3ZlcmxheURpdi5hZGRFdmVudExpc3RlbmVyKCdkcmFnbGVhdmUnLCB0aGlzLmhhbmRsZU92ZXJsYXlEcmFnT3Zlcik7XG4gICAgfVxuICAgIC8vXG4gICAgLy8gdGhpcy5kcm9wUmVmLmNsYXNzTGlzdC5hZGQoJ2F4LXVwbG9hZC1kcm9wLW92ZXInKTtcbiAgICBpZiAodGhpcy5kcm9wUmVmKSB7XG4gICAgICB0aGlzLmRyb3BSZWYuYWRkRXZlbnRMaXN0ZW5lcignZHJhZ292ZXInLCB0aGlzLmhhbmRsZURyYWdPdmVyLmJpbmQodGhpcykpO1xuICAgICAgdGhpcy5kcm9wUmVmLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICdkcmFnbGVhdmUnLFxuICAgICAgICB0aGlzLmhhbmRsZURyYWdMZWF2ZS5iaW5kKHRoaXMpXG4gICAgICApO1xuICAgICAgdGhpcy5kcm9wUmVmLmFkZEV2ZW50TGlzdGVuZXIoJ2Ryb3AnLCB0aGlzLmhhbmRsZURyb3AuYmluZCh0aGlzKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVPdmVybGF5RHJhZ092ZXIoZTogRHJhZ0V2ZW50KSB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVEcmFnT3ZlcihlOiBEcmFnRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLm92ZXJsYXlEaXYuY2xhc3NMaXN0LmFkZCgnc2hvdycpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlRHJhZ0xlYXZlKGU6IERyYWdFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub3ZlcmxheURpdi5jbGFzc0xpc3QucmVtb3ZlKCdzaG93Jyk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaGFuZGxlRHJvcChlOiBEcmFnRXZlbnQpIHtcbiAgICB0aGlzLmhhbmRsZURyYWdMZWF2ZShlKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGUuZGF0YVRyYW5zZmVyLmZpbGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBmaWxlID0gZS5kYXRhVHJhbnNmZXIuZmlsZXNbaV07XG4gICAgICB0aGlzLmFkZEZpbGUoZmlsZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRGaWxlKGZpbGU6IEZpbGUpIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmNvbnRlbnRUeXBlICYmXG4gICAgICB0aGlzLmNvbnRlbnRUeXBlICE9PSAnYW55JyAmJlxuICAgICAgIXRoaXMuZmlsZVR5cGVzXG4gICAgICAgIC5maW5kKCh4KSA9PiB4LnR5cGUgPT09IHRoaXMuY29udGVudFR5cGUpXG4gICAgICAgIC5hY2NlcHQuaW5jbHVkZXMoZmlsZS50eXBlKVxuICAgICkge1xuICAgICAgdGhpcy50b2FzdFNlcnZpY2UuaW5mbyhcbiAgICAgICAgYNmB2KfbjNmEINio2KfYsdqv2LDYp9ix24wg2KjYp9uM2K8g2KfYsiDZhtmI2LkgJHtcbiAgICAgICAgICB0aGlzLmZpbGVUeXBlcy5maW5kKCh4KSA9PiB4LnR5cGUgPT09IHRoaXMuY29udGVudFR5cGUpLm1lc3NhZ2VcbiAgICAgICAgfSDYqNin2LTYr2BcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcHJvZ3Jlc3NEaXYgPSB0aGlzLnJlbmRyZXIuY3JlYXRlRWxlbWVudCgnZGl2JykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgcHJvZ3Jlc3NEaXYuY2xhc3NMaXN0LmFkZCgnYXgtdXBsb2FkLXByb2dyZXNzLXBhbmVsJyk7XG4gICAgY29uc3QgcHJvZ3Jlc3NMYWJlbCA9IHRoaXMucmVuZHJlci5jcmVhdGVFbGVtZW50KCdzbWFsbCcpIGFzIEhUTUxFbGVtZW50O1xuICAgIHByb2dyZXNzTGFiZWwuaW5uZXJUZXh0ID0gZmlsZS5uYW1lO1xuICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlLm5hbWU7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2JveCcpIHtcbiAgICAgIHRoaXMucmVuZHJlci5hcHBlbmRDaGlsZCh0aGlzLnByb2dyZXNzUmVmLCBwcm9ncmVzc0Rpdik7XG4gICAgfVxuICAgIGNvbnN0IGNvbSA9IHRoaXMuaW5qZWN0aW9uU2VydmljZS5hcHBlbmRDb21wb25lbnQoXG4gICAgICBBWFByb2dyZXNzQmFyQ29tcG9uZW50LFxuICAgICAgeyBwcm9ncmVzczogMCB9LFxuICAgICAgcHJvZ3Jlc3NEaXZcbiAgICApLmluc3RhbmNlIGFzIEFYUHJvZ3Jlc3NCYXJDb21wb25lbnQ7XG4gICAgdGhpcy5yZW5kcmVyLmFwcGVuZENoaWxkKHByb2dyZXNzRGl2LCBwcm9ncmVzc0xhYmVsKTtcblxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZSkgPT4ge1xuICAgICAgdGhpcy5vbkxvYWQuZW1pdCh7XG4gICAgICAgIGZpbGUsXG4gICAgICAgIGRhdGE6IChlIGFzIGFueSkudGFyZ2V0LnJlc3VsdCxcbiAgICAgIH0pO1xuICAgICAgLy9cbiAgICAgIC8vIEZha2UgVXBsb2FkXG4gICAgICBsZXQgcHYgPSAwO1xuICAgICAgbGV0IHVwbG9hZGVkID0gMDtcbiAgICAgIGNvbnN0IGludHYgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIHVwbG9hZGVkICs9IDEwMjQgKiAxMDAwO1xuICAgICAgICBpZiAodXBsb2FkZWQgPiBlLnRvdGFsKSB7XG4gICAgICAgICAgdXBsb2FkZWQgPSBlLnRvdGFsO1xuICAgICAgICB9XG4gICAgICAgIHB2ID0gTWF0aC5jZWlsKCh1cGxvYWRlZCAvIGUudG90YWwpICogMTAwKTtcbiAgICAgICAgY29tLnByb2dyZXNzID0gcHY7XG4gICAgICAgIHRoaXMub25Qcm9ncmVzcy5lbWl0KHtcbiAgICAgICAgICBmaWxlLFxuICAgICAgICAgIHRvdGFsOiBlLnRvdGFsLFxuICAgICAgICAgIHVwbG9hZGVkLFxuICAgICAgICAgIHZhbHVlOiBwdixcbiAgICAgICAgfSk7XG4gICAgICAgIC8vXG4gICAgICAgIGlmIChjb20ucHJvZ3Jlc3MgPj0gMTAwKSB7XG4gICAgICAgICAgY2xlYXJJbnRlcnZhbChpbnR2KTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVuZHJlci5yZW1vdmVDaGlsZCh0aGlzLnByb2dyZXNzUmVmLCBwcm9ncmVzc0Rpdik7XG4gICAgICAgICAgICBpZiAodGhpcy5maWxlTmFtZSkge1xuICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIucmVtb3ZlQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYgPSB0aGlzLnJlbmRyZXIuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAnZGl2J1xuICAgICAgICAgICAgICApIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYuY2xhc3NMaXN0LmFkZCgnb3ZlcmxheScpO1xuICAgICAgICAgICAgICB0aGlzLm92ZXJsYXlEaXYuaW5uZXJIVE1MID0gYFxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8aSBzdHlsZT1cImNvbG9yOiB2YXIoLS1heC1kYW5nZXItY29sb3IpXCIgY2xhc3M9XCJmYXIgZmEtdGltZXMgZmEtM3hcIj48L2k+XG4gICAgICAgICAgICAgIDxzcGFuPiR7dGhpcy5maWxlTmFtZX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgYDtcbiAgICAgICAgICAgICAgY29uc3QgY2xvc2VJY29uID0gdGhpcy5vdmVybGF5RGl2LnF1ZXJ5U2VsZWN0b3IoJy5mYXIuZmEtdGltZXMnKTtcbiAgICAgICAgICAgICAgdGhpcy5yZW5kcmVyLmxpc3RlbihjbG9zZUljb24sICdjbGljaycsIChlKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIucmVtb3ZlQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlU2hvd0VtcHR5RmlsZSgpO1xuICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB0aGlzLnJlbmRyZXIuYXBwZW5kQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sIDEwMDApO1xuICAgICAgICB9XG4gICAgICB9LCAxMDApO1xuICAgIH0pO1xuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgIHRoaXMuZmlsZXMucHVzaChmaWxlKTtcbiAgfVxuXG4gIGdldCBhY2Nlc3NUeXBlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsZVR5cGVzLmZpbmQoKGl0ZW0pID0+IGl0ZW0udHlwZSA9PSB0aGlzLmNvbnRlbnRUeXBlKS5hY2NlcHQ7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVNob3dFbXB0eUZpbGUoKSB7XG4gICAgdGhpcy5vdmVybGF5RGl2ID0gdGhpcy5yZW5kcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpIGFzIEhUTUxFbGVtZW50O1xuICAgIHRoaXMub3ZlcmxheURpdi5jbGFzc0xpc3QuYWRkKCdvdmVybGF5Jyk7XG4gICAgdGhpcy5vdmVybGF5RGl2LmlubmVySFRNTCA9IGBcbiAgICAgIDxkaXYgIHN0eWxlPVwiXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogOHB4O1xuICAgIFwiPlxuICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNsb3VkLXVwbG9hZC1hbHQgZmEtM3hcIj48L2k+XG4gICAgPHNwYW4+JHtBWFRyYW5zbGF0b3IuZ2V0KCdjb21tb24udXBsb2FkJyl9PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgICB0aGlzLnJlbmRyZXIuYXBwZW5kQ2hpbGQodGhpcy5kcm9wUmVmLCB0aGlzLm92ZXJsYXlEaXYpO1xuICAgIHRoaXMuZHJvcFJlZi5jbGFzc0xpc3QuYWRkKCdheC11cGxvYWQtZHJvcC1vdmVyJyk7XG4gIH1cbn1cbiIsIjxpbnB1dFxuICAjZmlsZUlucHV0XG4gIHR5cGU9XCJmaWxlXCJcbiAgW2FjY2VwdF09XCJhY2Nlc3NUeXBlcy5qb2luKCcsJylcIlxuICBzdHlsZT1cImRpc3BsYXk6IG5vbmVcIlxuICAoY2hhbmdlKT1cIm9uRmlsZUNoYW5nZSgkZXZlbnQpXCJcbi8+XG5cbjxuZy1jb250YWluZXIgKm5nSWY9XCJ0eXBlID09ICdpbmxpbmUnOyBlbHNlIGVsc2VUZW1wbGF0ZVwiPlxuICA8YXgtZm9ybS1ncm91cCBzaXplPVwie3sgc2l6ZSB9fVwiPlxuICAgIDxheC10ZXh0LWJveFxuICAgICAgW3ZhbHVlXT1cImZpbGVOYW1lXCJcbiAgICAgIHJlYWRvbmx5PVwidHJ1ZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgID48L2F4LXRleHQtYm94PlxuICAgIDxheC1idXR0b25cbiAgICAgIHR5cGU9XCJibGFuayBsaWdodFwiXG4gICAgICBpY29uPVwiZmFyIGZhLXRpbWVzXCJcbiAgICAgIChjbGljayk9XCJyZW1vdmUoKVwiXG4gICAgICAqbmdJZj1cImZpbGVOYW1lXCJcbiAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgPlxuICAgIDwvYXgtYnV0dG9uPlxuICAgIDxheC1idXR0b25cbiAgICAgIHR5cGU9XCJwcmltYXJ5IGJsYW5rXCJcbiAgICAgIGljb249XCJmYXIgZmEtdXBsb2FkXCJcbiAgICAgIChjbGljayk9XCJvcGVuKClcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFt0YWJJbmRleF09XCItMVwiXG4gICAgPlxuICAgIDwvYXgtYnV0dG9uPlxuICA8L2F4LWZvcm0tZ3JvdXA+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNlbHNlVGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJheCB1cGxvYWQtZmlsZS1ib3hcIiAoY2xpY2spPVwib3BlbigpXCIgI2Ryb3BSZWY+PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
@@ -973,21 +973,43 @@ class AXCalendarBoxComponent {
|
|
973
973
|
jalali: {
|
974
974
|
locale: AXConfig.get('dateTime.jalali.locale') || 'fa',
|
975
975
|
dir: 'rtl',
|
976
|
-
number: 1
|
976
|
+
number: 1,
|
977
977
|
},
|
978
978
|
gregorian: {
|
979
979
|
locale: AXConfig.get('dateTime.gregorian.locale') || 'en',
|
980
980
|
dir: 'ltr',
|
981
|
-
number: 0
|
982
|
-
}
|
981
|
+
number: 0,
|
982
|
+
},
|
983
983
|
};
|
984
984
|
numRotate;
|
985
985
|
size = 'md';
|
986
986
|
type;
|
987
987
|
locale;
|
988
988
|
dir;
|
989
|
-
|
990
|
-
|
989
|
+
_min;
|
990
|
+
set min(v) {
|
991
|
+
if (v) {
|
992
|
+
this._min = v;
|
993
|
+
this.focusedValue = this.today;
|
994
|
+
this.viewRange = this.today.month.range;
|
995
|
+
this.navigate(0);
|
996
|
+
}
|
997
|
+
}
|
998
|
+
get min() {
|
999
|
+
return this._min;
|
1000
|
+
}
|
1001
|
+
_max;
|
1002
|
+
set max(v) {
|
1003
|
+
if (v) {
|
1004
|
+
this._max = v;
|
1005
|
+
this.focusedValue = this.today;
|
1006
|
+
this.viewRange = this.today.month.range;
|
1007
|
+
this.navigate(0);
|
1008
|
+
}
|
1009
|
+
}
|
1010
|
+
get max() {
|
1011
|
+
return this._max;
|
1012
|
+
}
|
991
1013
|
selectableHoliday = true;
|
992
1014
|
dayStyle = [];
|
993
1015
|
dayMinMaxResoan = '';
|
@@ -1028,7 +1050,7 @@ class AXCalendarBoxComponent {
|
|
1028
1050
|
vv = AXDateTime.convert(v);
|
1029
1051
|
}
|
1030
1052
|
let unValidDate = false;
|
1031
|
-
if (this.
|
1053
|
+
if (this._max || this._min) {
|
1032
1054
|
unValidDate = this.isInMInMaxRange(vv);
|
1033
1055
|
}
|
1034
1056
|
if (!unValidDate) {
|
@@ -1040,7 +1062,7 @@ class AXCalendarBoxComponent {
|
|
1040
1062
|
this.onValueChanged.emit({
|
1041
1063
|
component: this,
|
1042
1064
|
value: this._value?.date,
|
1043
|
-
htmlElement: this.ref.nativeElement
|
1065
|
+
htmlElement: this.ref.nativeElement,
|
1044
1066
|
});
|
1045
1067
|
}
|
1046
1068
|
if (v == undefined) {
|
@@ -1052,7 +1074,7 @@ class AXCalendarBoxComponent {
|
|
1052
1074
|
this.onClick.emit({
|
1053
1075
|
component: this,
|
1054
1076
|
value: this._value?.date,
|
1055
|
-
htmlElement: this.ref.nativeElement
|
1077
|
+
htmlElement: this.ref.nativeElement,
|
1056
1078
|
});
|
1057
1079
|
}
|
1058
1080
|
}
|
@@ -1088,8 +1110,10 @@ class AXCalendarBoxComponent {
|
|
1088
1110
|
return this.dayStyle.find((c) => c.date.split('T')[0] == date.toISOString().split('T')[0]).text;
|
1089
1111
|
}
|
1090
1112
|
else {
|
1091
|
-
if ((this.
|
1092
|
-
|
1113
|
+
if ((this._min &&
|
1114
|
+
this._max &&
|
1115
|
+
date.compaireNew(new AXDateTime(this._min, this.type), 'YMD', this.type) === -1) ||
|
1116
|
+
date.compaireNew(new AXDateTime(this._max, this.type), 'YMD', this.type) === 1) {
|
1093
1117
|
return this.dayMinMaxResoan;
|
1094
1118
|
}
|
1095
1119
|
else {
|
@@ -1143,7 +1167,7 @@ class AXCalendarBoxComponent {
|
|
1143
1167
|
AXTranslator.get(`${path}.wed`, this.locale),
|
1144
1168
|
AXTranslator.get(`${path}.thu`, this.locale),
|
1145
1169
|
AXTranslator.get(`${path}.fri`, this.locale),
|
1146
|
-
AXTranslator.get(`${path}.sat`, this.locale)
|
1170
|
+
AXTranslator.get(`${path}.sat`, this.locale),
|
1147
1171
|
];
|
1148
1172
|
}
|
1149
1173
|
getTodayName() {
|
@@ -1157,7 +1181,11 @@ class AXCalendarBoxComponent {
|
|
1157
1181
|
}
|
1158
1182
|
rotate(array, n) {
|
1159
1183
|
const len = array.length;
|
1160
|
-
return !(n % len)
|
1184
|
+
return !(n % len)
|
1185
|
+
? array
|
1186
|
+
: n > 0
|
1187
|
+
? array.map((e, i, a) => a[(i + n) % len])
|
1188
|
+
: array.map((e, i, a) => a[(len - ((len - i - n) % len)) % len]);
|
1161
1189
|
}
|
1162
1190
|
navigate(value) {
|
1163
1191
|
let start;
|
@@ -1168,7 +1196,10 @@ class AXCalendarBoxComponent {
|
|
1168
1196
|
fd = value.startOf('month');
|
1169
1197
|
}
|
1170
1198
|
else {
|
1171
|
-
fd = this.viewRange.startTime
|
1199
|
+
fd = this.viewRange.startTime
|
1200
|
+
.add('day', 15)
|
1201
|
+
.add('month', value)
|
1202
|
+
.startOf('month');
|
1172
1203
|
}
|
1173
1204
|
start = fd.firstDayOfWeek;
|
1174
1205
|
end = fd.endOf('month').endDayOfWeek;
|
@@ -1191,7 +1222,10 @@ class AXCalendarBoxComponent {
|
|
1191
1222
|
fd = value.startOf('year');
|
1192
1223
|
}
|
1193
1224
|
else {
|
1194
|
-
fd = this.viewRange.startTime
|
1225
|
+
fd = this.viewRange.startTime
|
1226
|
+
.add('day', 15)
|
1227
|
+
.add('year', value)
|
1228
|
+
.startOf('year');
|
1195
1229
|
}
|
1196
1230
|
start = fd;
|
1197
1231
|
end = fd.endOf('year');
|
@@ -1221,7 +1255,8 @@ class AXCalendarBoxComponent {
|
|
1221
1255
|
//
|
1222
1256
|
if (this.view === 'day') {
|
1223
1257
|
this.matrix = this.matrixify(this.applyStyle(this.viewRange.enumurate('day', this.type)), 7);
|
1224
|
-
if (this.matrix.length > 0 &&
|
1258
|
+
if (this.matrix.length > 0 &&
|
1259
|
+
this.matrix[0].find((c) => c.nextMonth === false) === undefined) {
|
1225
1260
|
this.matrix.splice(0, 1);
|
1226
1261
|
}
|
1227
1262
|
if (this.matrix[this.matrix.length - 1].find((c) => c.nextMonth === false) === undefined) {
|
@@ -1241,12 +1276,17 @@ class AXCalendarBoxComponent {
|
|
1241
1276
|
dates.forEach((d, i, j) => {
|
1242
1277
|
const item = {};
|
1243
1278
|
item.date = d;
|
1244
|
-
item.selected =
|
1245
|
-
|
1246
|
-
item.
|
1279
|
+
item.selected =
|
1280
|
+
d.compaireNew(new AXDateTime(this.value, this.type), this.getViewCompaire(this.view), this.type) === 0;
|
1281
|
+
item.focused =
|
1282
|
+
d.compaireNew(this.focusedValue, this.getViewCompaire(this.view), this.type) === 0;
|
1283
|
+
item.today =
|
1284
|
+
this.today &&
|
1285
|
+
d.compaireNew(this.today, this.getViewCompaire(this.view), this.type) === 0;
|
1247
1286
|
if (this.view === 'day') {
|
1248
1287
|
// item.nextMonth = d.compaireNew(this.viewRange.startTime.add('day', 10), 'YM') !== 0;
|
1249
|
-
item.nextMonth =
|
1288
|
+
item.nextMonth =
|
1289
|
+
d.compaireNew(this.viewRange.startTime.add('day', 10), 'YM', this.type) !== 0;
|
1250
1290
|
item.unselect = this.isInMInMaxRange(d);
|
1251
1291
|
this.holidays.forEach((h) => {
|
1252
1292
|
const comp = d.compaireNew(new AXDateTime(h.date, this.type), 'YMD', this.type);
|
@@ -1298,16 +1338,18 @@ class AXCalendarBoxComponent {
|
|
1298
1338
|
isInMInMaxRange(d) {
|
1299
1339
|
let r = false;
|
1300
1340
|
if (d !== undefined) {
|
1301
|
-
if (this.
|
1302
|
-
r =
|
1341
|
+
if (this._min && !this._max) {
|
1342
|
+
r =
|
1343
|
+
d.compaireNew(new AXDateTime(this._min, this.type), this.getViewCompaire(this.view), this.type) === -1;
|
1303
1344
|
}
|
1304
|
-
if (this.
|
1305
|
-
r =
|
1345
|
+
if (this._max && !this._min) {
|
1346
|
+
r =
|
1347
|
+
d.compaireNew(new AXDateTime(this._max, this.type), this.getViewCompaire(this.view), this.type) === 1;
|
1306
1348
|
}
|
1307
|
-
if (this.
|
1349
|
+
if (this._min && this._max) {
|
1308
1350
|
r =
|
1309
|
-
d.compaireNew(new AXDateTime(this.
|
1310
|
-
d.compaireNew(new AXDateTime(this.
|
1351
|
+
d.compaireNew(new AXDateTime(this._min, this.type), this.getViewCompaire(this.view), this.type) === -1 ||
|
1352
|
+
d.compaireNew(new AXDateTime(this._max, this.type), this.getViewCompaire(this.view), this.type) === 1;
|
1311
1353
|
}
|
1312
1354
|
}
|
1313
1355
|
return r;
|
@@ -1318,7 +1360,9 @@ class AXCalendarBoxComponent {
|
|
1318
1360
|
}
|
1319
1361
|
else {
|
1320
1362
|
this.view = 'day';
|
1321
|
-
this.setFocus(new AXDateTime(this.value, this.type)
|
1363
|
+
this.setFocus(new AXDateTime(this.value, this.type)
|
1364
|
+
.set('year', date.year)
|
1365
|
+
.set('month', date.monthOfYear));
|
1322
1366
|
}
|
1323
1367
|
event.stopPropagation();
|
1324
1368
|
}
|
@@ -1651,6 +1695,11 @@ class AXTooltipDirective {
|
|
1651
1695
|
this.hide();
|
1652
1696
|
}
|
1653
1697
|
}
|
1698
|
+
onMouseClick() {
|
1699
|
+
if (this.tooltip && this.tooltipTitle) {
|
1700
|
+
this.hide();
|
1701
|
+
}
|
1702
|
+
}
|
1654
1703
|
show() {
|
1655
1704
|
this.create();
|
1656
1705
|
this.setPosition();
|
@@ -1686,7 +1735,10 @@ class AXTooltipDirective {
|
|
1686
1735
|
setPosition() {
|
1687
1736
|
const hostPos = this.el.nativeElement.getBoundingClientRect();
|
1688
1737
|
const tooltipPos = this.tooltip.getBoundingClientRect();
|
1689
|
-
const scrollPos = window.pageYOffset ||
|
1738
|
+
const scrollPos = window.pageYOffset ||
|
1739
|
+
document.documentElement.scrollTop ||
|
1740
|
+
document.body.scrollTop ||
|
1741
|
+
0;
|
1690
1742
|
let top;
|
1691
1743
|
let left;
|
1692
1744
|
if (this.placement === 'top') {
|
@@ -1709,12 +1761,12 @@ class AXTooltipDirective {
|
|
1709
1761
|
this.renderer.setStyle(this.tooltip, 'left', `${left}px`);
|
1710
1762
|
}
|
1711
1763
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
1712
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: AXTooltipDirective, selector: "[axTooltip]", inputs: { tooltipTitle: ["tooltip", "tooltipTitle"], placement: "placement", delay: "delay" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, ngImport: i0 });
|
1764
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: AXTooltipDirective, selector: "[axTooltip]", inputs: { tooltipTitle: ["tooltip", "tooltipTitle"], placement: "placement", delay: "delay" }, host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "click": "onMouseClick()" } }, ngImport: i0 });
|
1713
1765
|
}
|
1714
1766
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AXTooltipDirective, decorators: [{
|
1715
1767
|
type: Directive,
|
1716
1768
|
args: [{
|
1717
|
-
selector: '[axTooltip]'
|
1769
|
+
selector: '[axTooltip]',
|
1718
1770
|
}]
|
1719
1771
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipTitle: [{
|
1720
1772
|
type: Input,
|
@@ -1729,6 +1781,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
1729
1781
|
}], onMouseLeave: [{
|
1730
1782
|
type: HostListener,
|
1731
1783
|
args: ['mouseleave']
|
1784
|
+
}], onMouseClick: [{
|
1785
|
+
type: HostListener,
|
1786
|
+
args: ['click']
|
1732
1787
|
}] } });
|
1733
1788
|
|
1734
1789
|
class AXMenuItemClickEvent extends AXEvent {
|
@@ -13189,7 +13244,7 @@ class AXSelectBoxPropertyEditorComponent extends AXProperyEditorComponent {
|
|
13189
13244
|
selectionMode = 'single';
|
13190
13245
|
selectionDataMode = 'value';
|
13191
13246
|
allowSearch = true;
|
13192
|
-
allowNull =
|
13247
|
+
allowNull = true;
|
13193
13248
|
disabled = false;
|
13194
13249
|
items = [];
|
13195
13250
|
remoteOperation = false;
|
@@ -17261,9 +17316,11 @@ class AXUploadFileComponent extends AXBaseComponent {
|
|
17261
17316
|
}
|
17262
17317
|
//
|
17263
17318
|
// this.dropRef.classList.add('ax-upload-drop-over');
|
17264
|
-
this.dropRef
|
17265
|
-
|
17266
|
-
|
17319
|
+
if (this.dropRef) {
|
17320
|
+
this.dropRef.addEventListener('dragover', this.handleDragOver.bind(this));
|
17321
|
+
this.dropRef.addEventListener('dragleave', this.handleDragLeave.bind(this));
|
17322
|
+
this.dropRef.addEventListener('drop', this.handleDrop.bind(this));
|
17323
|
+
}
|
17267
17324
|
}
|
17268
17325
|
handleOverlayDragOver(e) {
|
17269
17326
|
e.preventDefault();
|
@@ -17303,7 +17360,9 @@ class AXUploadFileComponent extends AXBaseComponent {
|
|
17303
17360
|
const progressLabel = this.rendrer.createElement('small');
|
17304
17361
|
progressLabel.innerText = file.name;
|
17305
17362
|
this.fileName = file.name;
|
17306
|
-
|
17363
|
+
if (this.type === 'box') {
|
17364
|
+
this.rendrer.appendChild(this.progressRef, progressDiv);
|
17365
|
+
}
|
17307
17366
|
const com = this.injectionService.appendComponent(AXProgressBarComponent, { progress: 0 }, progressDiv).instance;
|
17308
17367
|
this.rendrer.appendChild(progressDiv, progressLabel);
|
17309
17368
|
const reader = new FileReader();
|