@progressio_resources/gravity-design-system 3.0.24 → 3.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/gravity-calendar/gravity-calendar.component.mjs +16 -9
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.mjs +12 -1
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.mjs +8 -7
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.mjs +20 -17
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.mjs +20 -18
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.mjs +38 -13
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.mjs +20 -17
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.mjs +20 -18
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.mjs +12 -9
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.mjs +23 -15
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.mjs +15 -8
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.mjs +28 -0
- package/esm2022/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.mjs +74 -0
- package/esm2022/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.mjs +31 -14
- package/esm2022/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.mjs +58 -0
- package/esm2022/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.mjs +31 -14
- package/esm2022/lib/components/gravity-dropdown-list-display/gravity-dropdown-list-display.component.mjs +2 -2
- package/esm2022/lib/components/gravity-icon/gravity-icon.component.mjs +58 -54
- package/esm2022/lib/components/gravity-link/gravity-link.component.mjs +7 -8
- package/esm2022/lib/components/gravity-modal/gravity-modal.component.mjs +1 -1
- package/esm2022/lib/components/gravity-navigation-card/gravity-navigation-card.component.mjs +43 -0
- package/esm2022/lib/components/gravity-status-indicator/gravity-status-indicator.component.mjs +3 -3
- package/esm2022/lib/gravity-design-system.module.mjs +15 -4
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/progressio_resources-gravity-design-system.mjs +479 -192
- package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
- package/lib/components/gravity-calendar/gravity-calendar.component.d.ts +4 -1
- package/lib/components/gravity-calendar-v2/datepicker/base/bs-datepicker-container.d.ts +1 -0
- package/lib/components/gravity-calendar-v2/datepicker/bs-datepicker.component.d.ts +3 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-container.component.d.ts +3 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-inline-container.component.d.ts +2 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-datepicker-navigation-view/bs-datepicker-navigation-view.component.d.ts +15 -5
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-container.component.d.ts +3 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-daterangepicker-inline-container.component.d.ts +2 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-days-calendar-view/bs-days-calendar-view.component.d.ts +3 -1
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-months-calendar-view/bs-months-calendar-view.component.d.ts +9 -5
- package/lib/components/gravity-calendar-v2/datepicker/components/bs-years-calendar-view/bs-years-calendar-view.component.d.ts +3 -0
- package/lib/components/gravity-calendar-v2/datepicker/services/header-type.service.d.ts +17 -0
- package/lib/components/gravity-calendar-v2/datepicker/utils/date-abbreviation.pipe.d.ts +13 -0
- package/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.d.ts +8 -2
- package/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.d.ts +17 -0
- package/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.d.ts +4 -1
- package/lib/components/gravity-icon/gravity-icon.component.d.ts +57 -53
- package/lib/components/gravity-link/gravity-link.component.d.ts +2 -3
- package/lib/components/gravity-navigation-card/gravity-navigation-card.component.d.ts +17 -0
- package/lib/components/gravity-status-indicator/gravity-status-indicator.component.d.ts +1 -1
- package/lib/gravity-design-system.module.d.ts +32 -29
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
- package/src/lib/assets/icon-set/gt-icon-add-update/gt-icon-add-update-lg-24.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-add-update/gt-icon-add-update-md-16.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-add-update/gt-icon-add-update-sm-12.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-add-update/gt-icon-add-update-xl-32.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-money-in/gt-icon-money-in-lg-24.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-money-in/gt-icon-money-in-md-16.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-money-in/gt-icon-money-in-sm-12.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-money-in/gt-icon-money-in-xl-32.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-monitor/gt-icon-monitor-lg-24.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-monitor/gt-icon-monitor-md-16.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-monitor/gt-icon-monitor-sm-12.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-monitor/gt-icon-monitor-xl-32.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-right-angle-arrow/gt-icon-right-angle-arrow-lg-24.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-right-angle-arrow/gt-icon-right-angle-arrow-md-16.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-right-angle-arrow/gt-icon-right-angle-arrow-sm-12.svg +10 -0
- package/src/lib/assets/icon-set/gt-icon-right-angle-arrow/gt-icon-right-angle-arrow-xl-32.svg +10 -0
- package/src/lib/assets/json/icons.json +64 -0
- package/src/lib/styles/components/_datepicker-v2.scss +9 -1
- package/src/lib/styles/foundations/colors/themes/_hero.theme.scss +2 -2
- package/src/lib/assets/icon-set/gt-icon-arrow-up/gt-icon-switch-lg-24.svg +0 -10
- package/src/lib/assets/icon-set/gt-icon-arrow-up/gt-icon-switch-md-16.svg +0 -10
- package/src/lib/assets/icon-set/gt-icon-arrow-up/gt-icon-switch-sm-12.svg +0 -10
- package/src/lib/assets/icon-set/gt-icon-arrow-up/gt-icon-switch-xl-32.svg +0 -10
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "
|
|
4
|
-
import * as i2 from "@angular/
|
|
5
|
-
import * as i3 from "
|
|
6
|
-
import * as i4 from "
|
|
7
|
-
import * as i5 from "./datepicker/bs-datepicker
|
|
8
|
-
import * as i6 from "./datepicker/bs-
|
|
9
|
-
import * as i7 from "./datepicker/bs-daterangepicker
|
|
3
|
+
import * as i1 from "./datepicker/services/header-type.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
import * as i3 from "@angular/forms";
|
|
6
|
+
import * as i4 from "../gravity-icon/gravity-icon.component";
|
|
7
|
+
import * as i5 from "./datepicker/bs-datepicker.component";
|
|
8
|
+
import * as i6 from "./datepicker/bs-datepicker-inline.component";
|
|
9
|
+
import * as i7 from "./datepicker/bs-daterangepicker.component";
|
|
10
|
+
import * as i8 from "./datepicker/bs-daterangepicker-inline.component";
|
|
11
|
+
import * as i9 from "../gravity-dropdown-label/gravity-dropdown-label.component";
|
|
12
|
+
import * as i10 from "./datepicker/utils/date-abbreviation.pipe";
|
|
10
13
|
export class GravityCalendarV2Component {
|
|
11
|
-
constructor() {
|
|
14
|
+
constructor(headerTypeService) {
|
|
15
|
+
this.headerTypeService = headerTypeService;
|
|
12
16
|
// Component configuration
|
|
13
17
|
this.clearable = true;
|
|
14
18
|
this.currentLang = 'en';
|
|
@@ -16,8 +20,9 @@ export class GravityCalendarV2Component {
|
|
|
16
20
|
this.isDisabled = false;
|
|
17
21
|
this.isReadonly = false;
|
|
18
22
|
this.required = false;
|
|
19
|
-
//
|
|
23
|
+
// Appearance settings
|
|
20
24
|
this.size = 'sm';
|
|
25
|
+
this.inputType = 'field';
|
|
21
26
|
this.width = 'short';
|
|
22
27
|
// Calendar
|
|
23
28
|
this.calendarType = 'day';
|
|
@@ -34,6 +39,7 @@ export class GravityCalendarV2Component {
|
|
|
34
39
|
this.maxDate = new Date();
|
|
35
40
|
this.minDate = new Date(new Date().getUTCFullYear() - 11, 0, 1);
|
|
36
41
|
this.showMobileCalendar = false;
|
|
42
|
+
this.isCalendarOpen = false;
|
|
37
43
|
let milliseconds = new Date().getTime();
|
|
38
44
|
let randomNumber = Math.random() * 10;
|
|
39
45
|
this.elementId = '' + (milliseconds * randomNumber / 2);
|
|
@@ -172,18 +178,25 @@ export class GravityCalendarV2Component {
|
|
|
172
178
|
openMobileCalendar() {
|
|
173
179
|
this.showMobileCalendar = true;
|
|
174
180
|
this.focusInput = true;
|
|
181
|
+
this.headerTypeService.setIsMobile(true);
|
|
175
182
|
}
|
|
176
183
|
closeMobileCalendar() {
|
|
177
184
|
this.showMobileCalendar = false;
|
|
178
185
|
this.focusInput = false;
|
|
186
|
+
this.restartCalendarType();
|
|
179
187
|
}
|
|
180
|
-
|
|
181
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityCalendarV2Component, selector: "gravity-calendar-v2", inputs: { clearable: "clearable", currentLang: "currentLang", cypressTag: "cypressTag", hasError: "hasError", isDisabled: "isDisabled", isReadonly: "isReadonly", label: "label", placeholder: "placeholder", required: "required", supportText: "supportText", size: "size", width: "width", calendarType: "calendarType", calendarMode: "calendarMode", selectionMode: "selectionMode", customDate: "customDate", customDates: "customDates" }, outputs: { calendarResponse: "response" }, host: { listeners: { "window:resize": "onResize($event)" } }, usesOnChanges: true, ngImport: i0, template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{ label }} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.elementId]=\"elementId\" class=\"gravity-calendar-field {{size}} {{width}}-width {{getStatus()}}\">\n <div class=\"mobile-calendar-container\" [class.hide]=\"!showMobileCalendar\" [class.show]=\"showMobileCalendar\">\n <div class=\"mobile-calendar-topbar\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n <div class=\"mobile-calendar-body\">\n <div class=\"calendar-container\"\n gravityDatePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"!displayRangePicker\"></div>\n\n <div class=\"calendar-container\"\n gravityRangePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"displayRangePicker\"></div>\n </div>\n </div>\n\n <ng-container *ngIf=\"isMobile\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n\n (click)=\"openMobileCalendar()\"\n\n (blur)=\"focusInput = false\"\n (focus)=\"focusInput = true\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : selectionMode == 'range' ? 'Select your dates' : 'Select your dates' + calendarType\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!isMobile\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n gravityDatePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false\"\n\n *ngIf=\"!displayRangePicker\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select your ' + calendarType\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled\"\n [class.readonly]=\"isReadonly\"\n gravityRangePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false\"\n\n *ngIf=\"displayRangePicker\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select your dates'\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && inputLabel?.length == 0 && required\">\n {{ currentLang == 'es' ? 'Requerido' : 'Required' }}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-calendar-field{background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;height:var(--text-field-input-field-height);position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-calendar-field-trigger{align-items:center;display:flex;height:100%;padding:10px 12px;width:100%}.gravity-calendar-field-trigger gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content);margin-left:var(--icon-margin)}.gravity-calendar-field input{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-calendar-field input::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-calendar-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-calendar-field.sm{--icon-margin: 5px;--text-field-input-field-height: 29px;--text-field-input-field-content: 9px;--text-field-input-field-input: 13px}.gravity-calendar-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-calendar-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-calendar-field.sm.full-width,.gravity-calendar-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.md{--icon-margin: 8px;--text-field-input-field-height: 35px;--text-field-input-field-content: 15px;--text-field-input-field-input: 18px}.gravity-calendar-field.md.short-width{--text-field-input-field-width: 242px}.gravity-calendar-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-calendar-field.md.full-width,.gravity-calendar-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-calendar-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-calendar-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-calendar-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.mobile-calendar-container{background-color:var(--surface-secondary);height:100%;overflow:auto;position:fixed;width:100%;z-index:1}.mobile-calendar-container.hide{left:1000vw;top:1000vh;visibility:hidden}.mobile-calendar-container.show{left:0;top:0;visibility:visible}.mobile-calendar-container .mobile-calendar-topbar{height:54px;padding:14px 19px 24px}.mobile-calendar-container .mobile-calendar-topbar gravity-icon{--icon-color: var(--bg-calendar-nav-primary);margin-left:auto}.mobile-calendar-container .mobile-calendar-body{height:calc(100vh - 65px);width:100%}.mobile-calendar-container .mobile-calendar-body .calendar-container{height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "directive", type: i4.BsDatepickerDirective, selector: "[gravityDatePicker]", inputs: ["bsConfig", "container", "isDisabled", "isMobile", "maxDate", "minDate", "minMode", "isOpen", "bsValue"], outputs: ["bsValueChange", "onApplyEmit", "onHidden", "onShown"], exportAs: ["gravityDatePicker"] }, { kind: "directive", type: i5.BsDatepickerInlineDirective, selector: "[gravityDatePickerInline]", inputs: ["bsConfig", "isDisabled", "isMobile", "maxDate", "minDate", "minMode", "bsValue"], outputs: ["bsValueChange", "onApplyEmit"], exportAs: ["gravityDatePickerInline"] }, { kind: "directive", type: i6.BsDaterangepickerDirective, selector: "[gravityRangePicker]", inputs: ["bsConfig", "container", "isDisabled", "isMobile", "maxDate", "minDate", "isOpen", "bsValue"], outputs: ["bsValueChange", "onApplyEmit", "onHidden", "onShown"], exportAs: ["gravityRangePicker"] }, { kind: "directive", type: i7.BsDaterangepickerInlineDirective, selector: "[gravityRangePickerInline]", inputs: ["bsConfig", "isDisabled", "isMobile", "maxDate", "minDate", "bsValue"], outputs: ["bsValueChange", "onApplyEmit"], exportAs: ["gravityRangePickerInline"] }] }); }
|
|
188
|
+
restartCalendarType() {
|
|
189
|
+
this.headerTypeService.setIsMobile(false);
|
|
190
|
+
this.headerTypeService.setHeaderType('self');
|
|
191
|
+
this.headerTypeService.setCalendarType('days');
|
|
192
|
+
}
|
|
193
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityCalendarV2Component, deps: [{ token: i1.HeaderTypeService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
194
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityCalendarV2Component, selector: "gravity-calendar-v2", inputs: { clearable: "clearable", currentLang: "currentLang", cypressTag: "cypressTag", hasError: "hasError", isDisabled: "isDisabled", isReadonly: "isReadonly", label: "label", placeholder: "placeholder", required: "required", supportText: "supportText", size: "size", labelSize: "labelSize", inputType: "inputType", width: "width", calendarType: "calendarType", calendarMode: "calendarMode", selectionMode: "selectionMode", customDate: "customDate", customDates: "customDates" }, outputs: { calendarResponse: "response" }, host: { listeners: { "window:resize": "onResize($event)" } }, usesOnChanges: true, ngImport: i0, template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{ label }} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.elementId]=\"elementId\" class=\"gravity-calendar-field {{size}} {{width}}-width {{getStatus()}} {{inputType}}-{{labelSize}}\">\n <div class=\"mobile-calendar-container\" [class.hide]=\"!showMobileCalendar\" [class.show]=\"showMobileCalendar\">\n <div class=\"mobile-calendar-body\">\n <div class=\"calendar-container\"\n gravityDatePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"!displayRangePicker\">\n\n <div class=\"calendar-close-icon\" *ngIf=\"headerTypeService.getCalendarType() === 'days'\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n </div>\n </div>\n\n <div class=\"calendar-container\"\n gravityRangePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"displayRangePicker\">\n\n <div class=\"calendar-close-icon\" *ngIf=\"headerTypeService.getCalendarType() === 'days'\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n </div>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"isMobile && inputType === 'field'\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n\n (click)=\"openMobileCalendar()\"\n\n (blur)=\"focusInput = false\"\n (focus)=\"focusInput = true\">\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : selectionMode == 'range' ? 'Select date range' : 'Select a ' + calendarType\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!isMobile || inputType === 'label'\">\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n gravityDatePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false; restartCalendarType(); isCalendarOpen = false;\"\n (onShown)=\"restartCalendarType(); isCalendarOpen = true;\"\n\n *ngIf=\"!displayRangePicker\">\n\n <gravity-dropdown-label *ngIf=\"inputType === 'label'\" [size]=\"labelSize\" [stopPropagation]=\"false\" [isOpen]=\"isCalendarOpen\"\n [label]=\"inputLabel ? (inputLabel | dateFormating: currentLang : false): 'Select a ' + calendarType\" >\n </gravity-dropdown-label>\n\n <ng-container *ngIf=\"inputType === 'field'\">\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select a ' + calendarType\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </ng-container>\n </div>\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled\"\n [class.readonly]=\"isReadonly\"\n gravityRangePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false; restartCalendarType()\"\n (onShown)=\"restartCalendarType()\"\n\n *ngIf=\"displayRangePicker\">\n\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select a date range'\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && inputLabel?.length == 0 && required\">\n {{ currentLang == 'es' ? 'Requerido' : 'Required' }}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-calendar-field{background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--outline-field-full-enabled-pressed-primary);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;height:var(--text-field-input-field-height);position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width);display:flex;align-items:center}.gravity-calendar-field .placement-left{margin-right:5px}.gravity-calendar-field-trigger{align-items:center;display:flex;height:100%;padding:10px 12px;width:100%}.gravity-calendar-field-trigger gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-calendar-field input{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-calendar-field input::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-calendar-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-calendar-field.sm{--text-field-input-field-height: 29px;--text-field-input-field-content: 9px;--text-field-input-field-input: 13px}.gravity-calendar-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-calendar-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-calendar-field.sm.full-width,.gravity-calendar-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.md{--icon-margin: 8px;--text-field-input-field-height: 35px;--text-field-input-field-content: 15px;--text-field-input-field-input: 18px}.gravity-calendar-field.md.short-width{--text-field-input-field-width: 242px}.gravity-calendar-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-calendar-field.md.full-width,.gravity-calendar-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-calendar-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-calendar-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-calendar-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.gravity-calendar-field.label-sm,.gravity-calendar-field.label-md,.gravity-calendar-field.label-lg{border:none}.gravity-calendar-field.label-sm .gravity-calendar-field-trigger,.gravity-calendar-field.label-md .gravity-calendar-field-trigger,.gravity-calendar-field.label-lg .gravity-calendar-field-trigger{justify-content:center;padding:0}.gravity-calendar-field.label-sm{border:none;height:40px;--text-field-input-field-width: 359px !important}.gravity-calendar-field.label-md{border:none;height:30px;--text-field-input-field-width: 359px !important}.gravity-calendar-field.label-lg{border:none;height:12px;--text-field-input-field-width: 344px !important}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.mobile-calendar-container{z-index:1;width:100%;height:100%;display:flex;overflow:auto;position:fixed;justify-content:center;background-color:var(--surface-secondary)}.mobile-calendar-container.hide{left:1000vw;top:1000vh;visibility:hidden}.mobile-calendar-container.show{top:0;left:0;visibility:visible}.mobile-calendar-container .mobile-calendar-body{max-width:400px;min-width:328px;position:relative;margin:var(--gravity-spacing-sm);width:calc(100% - var(--gravity-spacing-lg));height:calc(100% - var(--gravity-spacing-lg))}.mobile-calendar-container .mobile-calendar-body .calendar-close-icon{display:flex;position:absolute;justify-content:flex-end;right:var(--gravity-spacing-sm)}.mobile-calendar-container .mobile-calendar-body .calendar-close-icon gravity-icon{margin:var(--gravity-spacing-sm) var(--gravity-spacing-xxs) 0 0;--icon-color: var(--bg-calendar-nav-primary)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "directive", type: i5.BsDatepickerDirective, selector: "[gravityDatePicker]", inputs: ["bsConfig", "container", "isDisabled", "isMobile", "maxDate", "minDate", "minMode", "isOpen", "bsValue"], outputs: ["bsValueChange", "onApplyEmit", "onHidden", "onShown"], exportAs: ["gravityDatePicker"] }, { kind: "directive", type: i6.BsDatepickerInlineDirective, selector: "[gravityDatePickerInline]", inputs: ["bsConfig", "isDisabled", "isMobile", "maxDate", "minDate", "minMode", "bsValue"], outputs: ["bsValueChange", "onApplyEmit"], exportAs: ["gravityDatePickerInline"] }, { kind: "directive", type: i7.BsDaterangepickerDirective, selector: "[gravityRangePicker]", inputs: ["bsConfig", "container", "isDisabled", "isMobile", "maxDate", "minDate", "isOpen", "bsValue"], outputs: ["bsValueChange", "onApplyEmit", "onHidden", "onShown"], exportAs: ["gravityRangePicker"] }, { kind: "directive", type: i8.BsDaterangepickerInlineDirective, selector: "[gravityRangePickerInline]", inputs: ["bsConfig", "isDisabled", "isMobile", "maxDate", "minDate", "bsValue"], outputs: ["bsValueChange", "onApplyEmit"], exportAs: ["gravityRangePickerInline"] }, { kind: "component", type: i9.GravityDropdownLabelComponent, selector: "gravity-dropdown-label", inputs: ["label", "isOpen", "stopPropagation", "size"], outputs: ["onClickLabel"] }, { kind: "pipe", type: i10.DateAbbreviationPipe, name: "dateFormating" }] }); }
|
|
182
195
|
}
|
|
183
196
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityCalendarV2Component, decorators: [{
|
|
184
197
|
type: Component,
|
|
185
|
-
args: [{ selector: 'gravity-calendar-v2', template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{ label }} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.elementId]=\"elementId\" class=\"gravity-calendar-field {{size}} {{width}}-width {{getStatus()}}\">\n <div class=\"mobile-calendar-container\" [class.hide]=\"!showMobileCalendar\" [class.show]=\"showMobileCalendar\">\n <div class=\"mobile-calendar-topbar\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\"\n [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n <div class=\"mobile-calendar-body\">\n <div class=\"calendar-container\"\n gravityDatePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"!displayRangePicker\"></div>\n\n <div class=\"calendar-container\"\n gravityRangePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"displayRangePicker\"></div>\n </div>\n </div>\n\n <ng-container *ngIf=\"isMobile\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n\n (click)=\"openMobileCalendar()\"\n\n (blur)=\"focusInput = false\"\n (focus)=\"focusInput = true\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : selectionMode == 'range' ? 'Select your dates' : 'Select your dates' + calendarType\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!isMobile\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n gravityDatePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false\"\n\n *ngIf=\"!displayRangePicker\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select your ' + calendarType\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled\"\n [class.readonly]=\"isReadonly\"\n gravityRangePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false\"\n\n *ngIf=\"displayRangePicker\">\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select your dates'\">\n <gravity-icon class=\"right\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && inputLabel?.length == 0 && required\">\n {{ currentLang == 'es' ? 'Requerido' : 'Required' }}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-calendar-field{background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;height:var(--text-field-input-field-height);position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-calendar-field-trigger{align-items:center;display:flex;height:100%;padding:10px 12px;width:100%}.gravity-calendar-field-trigger gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content);margin-left:var(--icon-margin)}.gravity-calendar-field input{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-calendar-field input::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-calendar-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-calendar-field.sm{--icon-margin: 5px;--text-field-input-field-height: 29px;--text-field-input-field-content: 9px;--text-field-input-field-input: 13px}.gravity-calendar-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-calendar-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-calendar-field.sm.full-width,.gravity-calendar-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.md{--icon-margin: 8px;--text-field-input-field-height: 35px;--text-field-input-field-content: 15px;--text-field-input-field-input: 18px}.gravity-calendar-field.md.short-width{--text-field-input-field-width: 242px}.gravity-calendar-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-calendar-field.md.full-width,.gravity-calendar-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-calendar-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-calendar-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-calendar-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.mobile-calendar-container{background-color:var(--surface-secondary);height:100%;overflow:auto;position:fixed;width:100%;z-index:1}.mobile-calendar-container.hide{left:1000vw;top:1000vh;visibility:hidden}.mobile-calendar-container.show{left:0;top:0;visibility:visible}.mobile-calendar-container .mobile-calendar-topbar{height:54px;padding:14px 19px 24px}.mobile-calendar-container .mobile-calendar-topbar gravity-icon{--icon-color: var(--bg-calendar-nav-primary);margin-left:auto}.mobile-calendar-container .mobile-calendar-body{height:calc(100vh - 65px);width:100%}.mobile-calendar-container .mobile-calendar-body .calendar-container{height:100%;width:100%}\n"] }]
|
|
186
|
-
}], ctorParameters: function () { return []; }, propDecorators: { clearable: [{
|
|
198
|
+
args: [{ selector: 'gravity-calendar-v2', template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{ label }} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.elementId]=\"elementId\" class=\"gravity-calendar-field {{size}} {{width}}-width {{getStatus()}} {{inputType}}-{{labelSize}}\">\n <div class=\"mobile-calendar-container\" [class.hide]=\"!showMobileCalendar\" [class.show]=\"showMobileCalendar\">\n <div class=\"mobile-calendar-body\">\n <div class=\"calendar-container\"\n gravityDatePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"!displayRangePicker\">\n\n <div class=\"calendar-close-icon\" *ngIf=\"headerTypeService.getCalendarType() === 'days'\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n </div>\n </div>\n\n <div class=\"calendar-container\"\n gravityRangePickerInline\n\n [bsConfig]=\"calendarConfiguration\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (onApplyEmit)=\"closeMobileCalendar()\"\n\n *ngIf=\"displayRangePicker\">\n\n <div class=\"calendar-close-icon\" *ngIf=\"headerTypeService.getCalendarType() === 'days'\">\n <gravity-icon class=\"pointer\" (click)=\"closeMobileCalendar()\" [iconName]=\"'unsuccess'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n </div>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"isMobile && inputType === 'field'\">\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n\n (click)=\"openMobileCalendar()\"\n\n (blur)=\"focusInput = false\"\n (focus)=\"focusInput = true\">\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : selectionMode == 'range' ? 'Select date range' : 'Select a ' + calendarType\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!isMobile || inputType === 'label'\">\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled || isReadonly\"\n [class.readonly]=\"isReadonly\"\n gravityDatePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [minMode]=\"calendarType\"\n\n [(bsValue)]=\"selectedDate\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false; restartCalendarType(); isCalendarOpen = false;\"\n (onShown)=\"restartCalendarType(); isCalendarOpen = true;\"\n\n *ngIf=\"!displayRangePicker\">\n\n <gravity-dropdown-label *ngIf=\"inputType === 'label'\" [size]=\"labelSize\" [stopPropagation]=\"false\" [isOpen]=\"isCalendarOpen\"\n [label]=\"inputLabel ? (inputLabel | dateFormating: currentLang : false): 'Select a ' + calendarType\" >\n </gravity-dropdown-label>\n\n <ng-container *ngIf=\"inputType === 'field'\">\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select a ' + calendarType\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </ng-container>\n </div>\n\n <div [attr.data-cy]=\"cypressTag\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n class=\"gravity-calendar-field-trigger\"\n [class.disabled]=\"isDisabled\"\n [class.readonly]=\"isReadonly\"\n gravityRangePicker\n\n [bsConfig]=\"calendarConfiguration\"\n [container]=\"getGtCalendarContainer()\"\n [isDisabled]=\"isDisabled || isReadonly\"\n [isMobile]=\"isMobile\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n\n [(bsValue)]=\"selectedDates\"\n\n (blur)=\"focusInput = false\"\n (bsValueChange)=\"updateSelectedDate($event)\"\n (focus)=\"focusInput = true\"\n (onHidden)=\"focusInput = false; restartCalendarType()\"\n (onShown)=\"restartCalendarType()\"\n\n *ngIf=\"displayRangePicker\">\n\n <gravity-icon class=\"placement-left\" [iconName]=\"'calendar'\" [iconSize]=\"'md-16'\"></gravity-icon>\n <input [attr.data-cy]=\"cypressTag + '_input'\"\n [attr.readonly]=\"isReadonly\"\n [style.cursor]=\"!isDisabled && !isReadonly ? 'pointer' : 'text'\"\n\n [(ngModel)]=\"inputLabel\" [ngModel]=\"inputLabel | dateFormating: currentLang\"\n\n class=\"hr-label {{size}}-regular\"\n [placeholder]=\"placeholder && placeholder != '' ? placeholder : 'Select a date range'\">\n <gravity-icon [iconName]=\"focusInput ? 'arrow-up' : 'arrow-down'\" [iconSize]=\"'md-16'\"></gravity-icon>\n </div>\n </ng-container>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{ supportText }}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && inputLabel?.length == 0 && required\">\n {{ currentLang == 'es' ? 'Requerido' : 'Required' }}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-calendar-field{background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--outline-field-full-enabled-pressed-primary);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;height:var(--text-field-input-field-height);position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width);display:flex;align-items:center}.gravity-calendar-field .placement-left{margin-right:5px}.gravity-calendar-field-trigger{align-items:center;display:flex;height:100%;padding:10px 12px;width:100%}.gravity-calendar-field-trigger gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-calendar-field input{background-color:transparent;border:none;box-shadow:none;color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:1;outline:none;padding:0;resize:none;width:100%}.gravity-calendar-field input::placeholder{color:var(--text-field-input-field-placeholder-color)}.gravity-calendar-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-field-autofill) inset!important;-webkit-text-fill-color:var(--label-text-full-enabled-primary)!important}.gravity-calendar-field.sm{--text-field-input-field-height: 29px;--text-field-input-field-content: 9px;--text-field-input-field-input: 13px}.gravity-calendar-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-calendar-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-calendar-field.sm.full-width,.gravity-calendar-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.md{--icon-margin: 8px;--text-field-input-field-height: 35px;--text-field-input-field-content: 15px;--text-field-input-field-input: 18px}.gravity-calendar-field.md.short-width{--text-field-input-field-width: 242px}.gravity-calendar-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-calendar-field.md.full-width,.gravity-calendar-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-calendar-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-calendar-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-calendar-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-calendar-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-calendar-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-calendar-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.gravity-calendar-field.label-sm,.gravity-calendar-field.label-md,.gravity-calendar-field.label-lg{border:none}.gravity-calendar-field.label-sm .gravity-calendar-field-trigger,.gravity-calendar-field.label-md .gravity-calendar-field-trigger,.gravity-calendar-field.label-lg .gravity-calendar-field-trigger{justify-content:center;padding:0}.gravity-calendar-field.label-sm{border:none;height:40px;--text-field-input-field-width: 359px !important}.gravity-calendar-field.label-md{border:none;height:30px;--text-field-input-field-width: 359px !important}.gravity-calendar-field.label-lg{border:none;height:12px;--text-field-input-field-width: 344px !important}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}.mobile-calendar-container{z-index:1;width:100%;height:100%;display:flex;overflow:auto;position:fixed;justify-content:center;background-color:var(--surface-secondary)}.mobile-calendar-container.hide{left:1000vw;top:1000vh;visibility:hidden}.mobile-calendar-container.show{top:0;left:0;visibility:visible}.mobile-calendar-container .mobile-calendar-body{max-width:400px;min-width:328px;position:relative;margin:var(--gravity-spacing-sm);width:calc(100% - var(--gravity-spacing-lg));height:calc(100% - var(--gravity-spacing-lg))}.mobile-calendar-container .mobile-calendar-body .calendar-close-icon{display:flex;position:absolute;justify-content:flex-end;right:var(--gravity-spacing-sm)}.mobile-calendar-container .mobile-calendar-body .calendar-close-icon gravity-icon{margin:var(--gravity-spacing-sm) var(--gravity-spacing-xxs) 0 0;--icon-color: var(--bg-calendar-nav-primary)}\n"] }]
|
|
199
|
+
}], ctorParameters: function () { return [{ type: i1.HeaderTypeService }]; }, propDecorators: { clearable: [{
|
|
187
200
|
type: Input
|
|
188
201
|
}], currentLang: [{
|
|
189
202
|
type: Input
|
|
@@ -205,6 +218,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
205
218
|
type: Input
|
|
206
219
|
}], size: [{
|
|
207
220
|
type: Input
|
|
221
|
+
}], labelSize: [{
|
|
222
|
+
type: Input
|
|
223
|
+
}], inputType: [{
|
|
224
|
+
type: Input
|
|
208
225
|
}], width: [{
|
|
209
226
|
type: Input
|
|
210
227
|
}], calendarType: [{
|
|
@@ -224,4 +241,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
224
241
|
type: HostListener,
|
|
225
242
|
args: ['window:resize', ['$event']]
|
|
226
243
|
}] } });
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItdjIvZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItdjIvZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTckgsTUFBTSxPQUFPLDBCQUEwQjtJQTJDckM7UUExQ0EsMEJBQTBCO1FBQ1YsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMxQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQUUzQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDNUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUc1QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFDLGFBQWE7UUFDRyxTQUFJLEdBQWdCLElBQUksQ0FBQztRQUN6QixVQUFLLEdBQXdDLE9BQU8sQ0FBQztRQUVyRSxXQUFXO1FBQ0ssaUJBQVksR0FBeUIsS0FBSyxDQUFDO1FBQzNDLGlCQUFZLEdBQXdCLFFBQVEsQ0FBQztRQUM3QyxrQkFBYSxHQUFxQixNQUFNLENBQUM7UUFNOUIscUJBQWdCLEdBQWdDLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXRHLDBCQUFxQixHQUFnQztZQUMxRCxhQUFhLEVBQUUsQ0FBQztTQUNqQixDQUFDO1FBR0ssdUJB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QkFBMUIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBR1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUdVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUdVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFFcUIsZ0JBQWdCO3NCQUExQyxNQUFNO3VCQUFDLFVBQVU7Z0JBd0tWLFFBQVE7c0JBRGYsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QnNEYXRlcGlja2VyVmlld01vZGV9IGZyb20gXCIuL2RhdGVwaWNrZXIvbW9kZWxzXCI7XG5pbXBvcnQge0JzRGF0ZXBpY2tlckNvbmZpZ30gZnJvbSBcIi4vZGF0ZXBpY2tlci9icy1kYXRlcGlja2VyLmNvbmZpZ1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWNhbGVuZGFyLXYyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktY2FsZW5kYXItdjIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LWNhbGVuZGFyLXYyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eUNhbGVuZGFyVjJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIC8vIENvbXBvbmVudCBjb25maWd1cmF0aW9uXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBwdWJsaWMgY3VycmVudExhbmc6IHN0cmluZyA9ICdlbic7XG4gIEBJbnB1dCgpIHB1YmxpYyBjeXByZXNzVGFnOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBoYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgaXNEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgaXNSZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgc3VwcG9ydFRleHQ6IHN0cmluZztcblxuICAvLyBJbnB1dCBzaXplXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyA9ICdzbSc7XG4gIEBJbnB1dCgpIHB1YmxpYyB3aWR0aDogJ3Nob3J0JyB8ICdtZWRpdW0nIHwgJ2Z1bGwnIHwgJ2ZpdCcgPSAnc2hvcnQnO1xuXG4gIC8vIENhbGVuZGFyXG4gIEBJbnB1dCgpIHB1YmxpYyBjYWxlbmRhclR5cGU6IEJzRGF0ZXBpY2tlclZpZXdNb2RlID0gJ2RheSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBjYWxlbmRhck1vZGU6ICdzaW5nbGUnIHwgJ2RvdWJsZScgPSAnc2luZ2xlJztcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGlvbk1vZGU6ICdkYXRlJyB8ICdyYW5nZScgPSAnZGF0ZSc7XG5cbiAgLy8gRGF0ZXNcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbURhdGU/OiBEYXRlO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tRGF0ZXM/OiBEYXRlW107XG5cbiAgQE91dHB1dCgncmVzcG9uc2UnKSBwdWJsaWMgY2FsZW5kYXJSZXNwb25zZTogRXZlbnRFbWl0dGVyPERhdGVbXSB8IERhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlW10gfCBEYXRlPigpO1xuXG4gIHB1YmxpYyBjYWxlbmRhckNvbmZpZ3VyYXRpb246IFBhcnRpYWw8QnNEYXRlcGlja2VyQ29uZmlnPiA9IHtcbiAgICBkaXNwbGF5TW9udGhzOiAxXG4gIH07XG5cbiAgcHVibGljIHJlYWRvbmx5IGVsZW1lbnRJZDogc3RyaW5nO1xuICBwdWJsaWMgZGlzcGxheVJhbmdlUGlja2VyOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBmb2N1c0lucHV0OiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpc01vYmlsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5wdXRMYWJlbDogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBtYXhEYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgcHVibGljIG1pbkRhdGU6IERhdGUgPSBuZXcgRGF0ZShuZXcgRGF0ZSgpLmdldFVUQ0Z1bGxZZWFyKCkgLSAxMSwgMCwgMSk7XG4gIHB1YmxpYyBzZWxlY3RlZERhdGU6IERhdGU7XG4gIHB1YmxpYyBzZWxlY3RlZERhdGVzOiBEYXRlW107XG4gIHB1YmxpYyBzaG93TW9iaWxlQ2FsZW5kYXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBsZXQgbWlsbGlzZWNvbmRzOiBudW1iZXIgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICBsZXQgcmFuZG9tTnVtYmVyOiBudW1iZXIgPSBNYXRoLnJhbmRvbSgpICogMTA7XG5cbiAgICB0aGlzLmVsZW1lbnRJZCA9ICcnICsgKG1pbGxpc2Vjb25kcyAqIHJhbmRvbU51bWJlciAvIDIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vblJlc2l6ZSgpO1xuICAgIHRoaXMudXBkYXRlQ29uZmlnKCk7XG5cbiAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5jYWxlbmRhclNpemUgPSB0aGlzLnNpemU7XG4gICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uY2xlYXJhYmxlID0gdGhpcy5jbGVhcmFibGU7XG5cbiAgICBpZiAodGhpcy5jdXN0b21EYXRlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuY3VzdG9tRGF0ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdXN0b21EYXRlcykge1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGVzID0gdGhpcy5jdXN0b21EYXRlcztcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ3NlbGVjdGlvbk1vZGUnXSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlID0gY2hhbmdlc1snc2VsZWN0aW9uTW9kZSddLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMudXBkYXRlQ29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2NhbGVuZGFyTW9kZSddKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyTW9kZSA9IGNoYW5nZXNbJ2NhbGVuZGFyTW9kZSddLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMudXBkYXRlQ29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2NsZWFyYWJsZSddKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5jbGVhcmFibGUgPSBjaGFuZ2VzWydjbGVhcmFibGUnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ3NpemUnXSkge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uY2FsZW5kYXJTaXplID0gY2hhbmdlc1snc2l6ZSddLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snY3VzdG9tRGF0ZSddKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IGNoYW5nZXNbJ2N1c3RvbURhdGUnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2N1c3RvbURhdGVzJ10pIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlcyA9IGNoYW5nZXNbJ2N1c3RvbURhdGVzJ10uY3VycmVudFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29uZmlnKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNhbGVuZGFyTW9kZSA9PSAnc2luZ2xlJyAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT0gJ2RhdGUnKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5kaXNwbGF5TW9udGhzID0gMTtcbiAgICAgIHRoaXMuZGlzcGxheVJhbmdlUGlja2VyID0gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FsZW5kYXJNb2RlID09ICdzaW5nbGUnICYmIHRoaXMuc2VsZWN0aW9uTW9kZSA9PSAncmFuZ2UnKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5kaXNwbGF5TW9udGhzID0gMTtcbiAgICAgIHRoaXMuZGlzcGxheVJhbmdlUGlja2VyID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jYWxlbmRhck1vZGUgPT0gJ2RvdWJsZScgJiYgdGhpcy5zZWxlY3Rpb25Nb2RlID09ICdkYXRlJykge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uZGlzcGxheU1vbnRocyA9IDI7XG4gICAgICB0aGlzLmRpc3BsYXlSYW5nZVBpY2tlciA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FsZW5kYXJNb2RlID09ICdkb3VibGUnICYmIHRoaXMuc2VsZWN0aW9uTW9kZSA9PSAncmFuZ2UnKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5kaXNwbGF5TW9udGhzID0gMjtcbiAgICAgIHRoaXMuZGlzcGxheVJhbmdlUGlja2VyID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlU2VsZWN0ZWREYXRlKCRldmVudDogRGF0ZSB8IERhdGVbXSk6IHZvaWQge1xuICAgIGlmICghJGV2ZW50IHx8IChBcnJheS5pc0FycmF5KCRldmVudCkgJiYgJGV2ZW50Lmxlbmd0aCA9PSAwKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSBudWxsO1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGVzID0gbnVsbDtcbiAgICAgIHRoaXMuaW5wdXRMYWJlbCA9ICcnO1xuICAgICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQodW5kZWZpbmVkKTtcbiAgICB9IGVsc2UgaWYgKCRldmVudCBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gJGV2ZW50O1xuICAgICAgdGhpcy5pbnB1dExhYmVsID0gdGhpcy5mb3JtYXREYXRlKCRldmVudCk7XG4gICAgICB0aGlzLmNhbGVuZGFyUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkRGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlcyA9ICRldmVudDtcbiAgICAgIGNvbnN0IGRhdGUxOiBzdHJpbmcgPSB0aGlzLmZvcm1hdERhdGUoJGV2ZW50WzBdKTtcbiAgICAgIGNvbnN0IGRhdGUyOiBzdHJpbmcgPSB0aGlzLmZvcm1hdERhdGUoJGV2ZW50WzFdKTtcblxuICAgICAgdGhpcy5pbnB1dExhYmVsID0gZGF0ZTEgKyAnIC0gJyArIGRhdGUyO1xuXG4gICAgICB0aGlzLmNhbGVuZGFyUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkRGF0ZXMpO1xuICAgIH1cblxuICAgIHRoaXMuY2xvc2VNb2JpbGVDYWxlbmRhcigpO1xuICB9XG5cbiAgcmVzZXRDYWxlbmRhcigpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuY3VzdG9tRGF0ZSA/IHRoaXMuY3VzdG9tRGF0ZSA6IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZXMgPSB0aGlzLmN1c3RvbURhdGVzID8gdGhpcy5jdXN0b21EYXRlcyA6IHVuZGVmaW5lZDtcblxuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGUgPT0gJ2RhdGUnKSB7XG4gICAgICB0aGlzLmNhbGVuZGFyUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkRGF0ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FsZW5kYXJSZXNwb25zZS5lbWl0KHRoaXMuc2VsZWN0ZWREYXRlcyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldEd0Q2FsZW5kYXJDb250YWluZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJy5ncmF2aXR5LWNhbGVuZGFyLWZpZWxkW2VsZW1lbnRJZD1cIicgKyB0aGlzLmVsZW1lbnRJZCArICdcIl0nO1xuICB9XG5cbiAgcHVibGljIGdldFN0YXR1cygpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgIHJldHVybiAnZGlzYWJsZWQnO1xuICAgIH0gZWxzZSBpZiAodGhpcy5pc1JlYWRvbmx5KSB7XG4gICAgICByZXR1cm4gJ3JlYWRvbmx5JztcbiAgICB9IGVsc2UgaWYgKHRoaXMuaGFzRXJyb3IpIHtcbiAgICAgIHJldHVybiAnZXJyb3InO1xuICAgIH0gZWxzZSBpZiAodGhpcy5mb2N1c0lucHV0KSB7XG4gICAgICByZXR1cm4gJ29wZW4nO1xuICAgIH0gZWxzZSBpZiAodGhpcy5zZWxlY3RlZERhdGVzPy5sZW5ndGggPiAwIHx8IHRoaXMuc2VsZWN0ZWREYXRlKSB7XG4gICAgICByZXR1cm4gJ3NlbGVjdGVkJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICdhY3RpdmUnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0RGF0ZShkYXRlOiBEYXRlKTogc3RyaW5nIHtcbiAgICBsZXQgZm9ybWF0dGVkRGF0ZTogc3RyaW5nID0gJyc7XG4gICAgbGV0IG1vbnRoOiBzdHJpbmc7XG4gICAgbGV0IGRheTogc3RyaW5nO1xuXG4gICAgc3dpdGNoICh0aGlzLmNhbGVuZGFyVHlwZSkge1xuICAgICAgY2FzZSBcImRheVwiOlxuICAgICAgICBtb250aCA9IGRhdGUuZ2V0TW9udGgoKSA8IDkgPyAoJzAnICsgKGRhdGUuZ2V0TW9udGgoKSArIDEpKSA6ICgnJyArIChkYXRlLmdldE1vbnRoKCkgKyAxKSk7XG4gICAgICAgIGRheSA9IGRhdGUuZ2V0RGF0ZSgpIDwgMTAgPyAnMCcgKyBkYXRlLmdldERhdGUoKSA6ICcnICsgZGF0ZS5nZXREYXRlKCk7XG4gICAgICAgIGZvcm1hdHRlZERhdGUgPSBtb250aCArICcvJyArIGRheSArICcvJyArIGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwibW9udGhcIjpcbiAgICAgICAgbW9udGggPSBkYXRlLmdldE1vbnRoKCkgPCA5ID8gKCcwJyArIChkYXRlLmdldE1vbnRoKCkgKyAxKSkgOiAoJycgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkpO1xuICAgICAgICBmb3JtYXR0ZWREYXRlID0gbW9udGggKyAnLycgKyBkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcInllYXJcIjpcbiAgICAgICAgZm9ybWF0dGVkRGF0ZSA9IGRhdGUuZ2V0RnVsbFllYXIoKS50b1N0cmluZygpO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkRGF0ZTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBwcml2YXRlIG9uUmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuaXNNb2JpbGUgPSB3aW5kb3cuaW5uZXJXaWR0aCA8PSA5OTI7XG4gICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uaXNBbmltYXRlZCA9ICF0aGlzLmlzTW9iaWxlO1xuICAgIHRoaXMuY2FsZW5kYXJDb25maWd1cmF0aW9uLmlzTW9iaWxlID0gdGhpcy5pc01vYmlsZTtcbiAgfVxuXG4gIHB1YmxpYyBvcGVuTW9iaWxlQ2FsZW5kYXIoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93TW9iaWxlQ2FsZW5kYXIgPSB0cnVlO1xuICAgIHRoaXMuZm9jdXNJbnB1dCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VNb2JpbGVDYWxlbmRhcigpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dNb2JpbGVDYWxlbmRhciA9IGZhbHNlO1xuICAgIHRoaXMuZm9jdXNJbnB1dCA9IGZhbHNlO1xuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJoci1sYWJlbCBzbS1ib2xkIHt7Z2V0U3RhdHVzKCl9fVwiICpuZ0lmPVwibGFiZWxcIj5cbiAge3sgbGFiZWwgfX0gPHNwYW4gKm5nSWY9XCJyZXF1aXJlZCB8fCBoYXNFcnJvclwiPio8L3NwYW4+XG48L2xhYmVsPlxuPGRpdiBbYXR0ci5lbGVtZW50SWRdPVwiZWxlbWVudElkXCIgY2xhc3M9XCJncmF2aXR5LWNhbGVuZGFyLWZpZWxkIHt7c2l6ZX19IHt7d2lkdGh9fS13aWR0aCB7e2dldFN0YXR1cygpfX1cIj5cbiAgPGRpdiBjbGFzcz1cIm1vYmlsZS1jYWxlbmRhci1jb250YWluZXJcIiBbY2xhc3MuaGlkZV09XCIhc2hvd01vYmlsZUNhbGVuZGFyXCIgW2NsYXNzLnNob3ddPVwic2hvd01vYmlsZUNhbGVuZGFyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1jYWxlbmRhci10b3BiYXJcIj5cbiAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJwb2ludGVyXCIgKGNsaWNrKT1cImNsb3NlTW9iaWxlQ2FsZW5kYXIoKVwiIFtpY29uTmFtZV09XCIndW5zdWNjZXNzJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtpY29uU2l6ZV09XCInbWQtMTYnXCI+PC9ncmF2aXR5LWljb24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1jYWxlbmRhci1ib2R5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItY29udGFpbmVyXCJcbiAgICAgICAgICAgZ3Jhdml0eURhdGVQaWNrZXJJbmxpbmVcblxuICAgICAgICAgICBbYnNDb25maWddPVwiY2FsZW5kYXJDb25maWd1cmF0aW9uXCJcbiAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcbiAgICAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICAgICBbbWluTW9kZV09XCJjYWxlbmRhclR5cGVcIlxuXG4gICAgICAgICAgIFsoYnNWYWx1ZSldPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgICAgKGJzVmFsdWVDaGFuZ2UpPVwidXBkYXRlU2VsZWN0ZWREYXRlKCRldmVudClcIlxuICAgICAgICAgICAob25BcHBseUVtaXQpPVwiY2xvc2VNb2JpbGVDYWxlbmRhcigpXCJcblxuICAgICAgICAgICAqbmdJZj1cIiFkaXNwbGF5UmFuZ2VQaWNrZXJcIj48L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyLWNvbnRhaW5lclwiXG4gICAgICAgICAgIGdyYXZpdHlSYW5nZVBpY2tlcklubGluZVxuXG4gICAgICAgICAgIFtic0NvbmZpZ109XCJjYWxlbmRhckNvbmZpZ3VyYXRpb25cIlxuICAgICAgICAgICBbaXNEaXNhYmxlZF09XCJpc0Rpc2FibGVkIHx8IGlzUmVhZG9ubHlcIlxuICAgICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG5cbiAgICAgICAgICAgWyhic1ZhbHVlKV09XCJzZWxlY3RlZERhdGVzXCJcbiAgICAgICAgICAgKGJzVmFsdWVDaGFuZ2UpPVwidXBkYXRlU2VsZWN0ZWREYXRlKCRldmVudClcIlxuICAgICAgICAgICAob25BcHBseUVtaXQpPVwiY2xvc2VNb2JpbGVDYWxlbmRhcigpXCJcblxuICAgICAgICAgICAqbmdJZj1cImRpc3BsYXlSYW5nZVBpY2tlclwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNNb2JpbGVcIj5cbiAgICA8ZGl2IFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZ1wiXG4gICAgICAgICBbc3R5bGUuY3Vyc29yXT1cIiFpc0Rpc2FibGVkICYmICFpc1JlYWRvbmx5ID8gJ3BvaW50ZXInIDogJ3RleHQnXCJcblxuICAgICAgICAgY2xhc3M9XCJncmF2aXR5LWNhbGVuZGFyLWZpZWxkLXRyaWdnZXJcIlxuICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImlzRGlzYWJsZWQgfHwgaXNSZWFkb25seVwiXG4gICAgICAgICBbY2xhc3MucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG5cbiAgICAgICAgIChjbGljayk9XCJvcGVuTW9iaWxlQ2FsZW5kYXIoKVwiXG5cbiAgICAgICAgIChibHVyKT1cImZvY3VzSW5wdXQgPSBmYWxzZVwiXG4gICAgICAgICAoZm9jdXMpPVwiZm9jdXNJbnB1dCA9IHRydWVcIj5cbiAgICAgIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX2lucHV0J1wiXG4gICAgICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICAgICAgW3N0eWxlLmN1cnNvcl09XCIhaXNEaXNhYmxlZCAmJiAhaXNSZWFkb25seSA/ICdwb2ludGVyJyA6ICd0ZXh0J1wiXG5cbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0TGFiZWxcIlxuXG4gICAgICAgICAgICAgY2xhc3M9XCJoci1sYWJlbCB7e3NpemV9fS1yZWd1bGFyXCJcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgJiYgcGxhY2Vob2xkZXIgIT0gJycgPyBwbGFjZWhvbGRlciA6IHNlbGVjdGlvbk1vZGUgPT0gJ3JhbmdlJyA/ICdTZWxlY3QgeW91ciBkYXRlcycgOiAnU2VsZWN0IHlvdXIgZGF0ZXMnICsgY2FsZW5kYXJUeXBlXCI+XG4gICAgICA8Z3Jhdml0eS1pY29uIGNsYXNzPVwicmlnaHRcIiBbaWNvbk5hbWVdPVwiJ2NhbGVuZGFyJ1wiIFtpY29uU2l6ZV09XCInbWQtMTYnXCI+PC9ncmF2aXR5LWljb24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNNb2JpbGVcIj5cbiAgICA8ZGl2IFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZ1wiXG4gICAgICAgICBbc3R5bGUuY3Vyc29yXT1cIiFpc0Rpc2FibGVkICYmICFpc1JlYWRvbmx5ID8gJ3BvaW50ZXInIDogJ3RleHQnXCJcblxuICAgICAgICAgY2xhc3M9XCJncmF2aXR5LWNhbGVuZGFyLWZpZWxkLXRyaWdnZXJcIlxuICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cImlzRGlzYWJsZWQgfHwgaXNSZWFkb25seVwiXG4gICAgICAgICBbY2xhc3MucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICBncmF2aXR5RGF0ZVBpY2tlclxuXG4gICAgICAgICBbYnNDb25maWddPVwiY2FsZW5kYXJDb25maWd1cmF0aW9uXCJcbiAgICAgICAgIFtjb250YWluZXJdPVwiZ2V0R3RDYWxlbmRhckNvbnRhaW5lcigpXCJcbiAgICAgICAgIFtpc0Rpc2FibGVkXT1cImlzRGlzYWJsZWQgfHwgaXNSZWFkb25seVwiXG4gICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICAgICAgIFttaW5Nb2RlXT1cImNhbGVuZGFyVHlwZVwiXG5cbiAgICAgICAgIFsoYnNWYWx1ZSldPVwic2VsZWN0ZWREYXRlXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChic1ZhbHVlQ2hhbmdlKT1cInVwZGF0ZVNlbGVjdGVkRGF0ZSgkZXZlbnQpXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAob25IaWRkZW4pPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcblxuICAgICAgICAgKm5nSWY9XCIhZGlzcGxheVJhbmdlUGlja2VyXCI+XG4gICAgICA8aW5wdXQgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnICsgJ19pbnB1dCdcIlxuICAgICAgICAgICAgIFthdHRyLnJlYWRvbmx5XT1cImlzUmVhZG9ubHlcIlxuICAgICAgICAgICAgIFtzdHlsZS5jdXJzb3JdPVwiIWlzRGlzYWJsZWQgJiYgIWlzUmVhZG9ubHkgPyAncG9pbnRlcicgOiAndGV4dCdcIlxuXG4gICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dExhYmVsXCJcblxuICAgICAgICAgICAgIGNsYXNzPVwiaHItbGFiZWwge3tzaXplfX0tcmVndWxhclwiXG4gICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyICYmIHBsYWNlaG9sZGVyICE9ICcnID8gcGxhY2Vob2xkZXIgOiAnU2VsZWN0IHlvdXIgJyArIGNhbGVuZGFyVHlwZVwiPlxuICAgICAgPGdyYXZpdHktaWNvbiBjbGFzcz1cInJpZ2h0XCIgW2ljb25OYW1lXT1cIidjYWxlbmRhcidcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIlxuICAgICAgICAgW3N0eWxlLmN1cnNvcl09XCIhaXNEaXNhYmxlZCAmJiAhaXNSZWFkb25seSA/ICdwb2ludGVyJyA6ICd0ZXh0J1wiXG5cbiAgICAgICAgIGNsYXNzPVwiZ3Jhdml0eS1jYWxlbmRhci1maWVsZC10cmlnZ2VyXCJcbiAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgICAgIFtjbGFzcy5yZWFkb25seV09XCJpc1JlYWRvbmx5XCJcbiAgICAgICAgIGdyYXZpdHlSYW5nZVBpY2tlclxuXG4gICAgICAgICBbYnNDb25maWddPVwiY2FsZW5kYXJDb25maWd1cmF0aW9uXCJcbiAgICAgICAgIFtjb250YWluZXJdPVwiZ2V0R3RDYWxlbmRhckNvbnRhaW5lcigpXCJcbiAgICAgICAgIFtpc0Rpc2FibGVkXT1cImlzRGlzYWJsZWQgfHwgaXNSZWFkb25seVwiXG4gICAgICAgICBbaXNNb2JpbGVdPVwiaXNNb2JpbGVcIlxuICAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcblxuICAgICAgICAgWyhic1ZhbHVlKV09XCJzZWxlY3RlZERhdGVzXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChic1ZhbHVlQ2hhbmdlKT1cInVwZGF0ZVNlbGVjdGVkRGF0ZSgkZXZlbnQpXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAob25IaWRkZW4pPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcblxuICAgICAgICAgKm5nSWY9XCJkaXNwbGF5UmFuZ2VQaWNrZXJcIj5cbiAgICAgIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX2lucHV0J1wiXG4gICAgICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICAgICAgW3N0eWxlLmN1cnNvcl09XCIhaXNEaXNhYmxlZCAmJiAhaXNSZWFkb25seSA/ICdwb2ludGVyJyA6ICd0ZXh0J1wiXG5cbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0TGFiZWxcIlxuXG4gICAgICAgICAgICAgY2xhc3M9XCJoci1sYWJlbCB7e3NpemV9fS1yZWd1bGFyXCJcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgJiYgcGxhY2Vob2xkZXIgIT0gJycgPyBwbGFjZWhvbGRlciA6ICdTZWxlY3QgeW91ciBkYXRlcydcIj5cbiAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJyaWdodFwiIFtpY29uTmFtZV09XCInY2FsZW5kYXInXCIgW2ljb25TaXplXT1cIidtZC0xNidcIj48L2dyYXZpdHktaWNvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRTdGF0dXMoKX19IHt7c2l6ZX19XCIgKm5nSWY9XCJzdXBwb3J0VGV4dFwiPlxuICA8Z3Jhdml0eS1pY29uIFtpY29uTmFtZV09XCIncXVlc3Rpb24tY2lyY2xlJ1wiICpuZ0lmPVwiaGFzRXJyb3JcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICB7eyBzdXBwb3J0VGV4dCB9fVxuPC9wPlxuPHAgY2xhc3M9XCJoci1sYWJlbCBzbS1yZWd1bGFyIHN1cHBvcnRpbmctdGV4dCB7e2dldFN0YXR1cygpfX0ge3tzaXplfX1cIlxuICAgKm5nSWY9XCIhc3VwcG9ydFRleHQgJiYgZ2V0U3RhdHVzKCkgPT0gJ2FjdGl2ZScgJiYgaW5wdXRMYWJlbD8ubGVuZ3RoID09IDAgJiYgcmVxdWlyZWRcIj5cbiAge3sgY3VycmVudExhbmcgPT0gJ2VzJyA/ICdSZXF1ZXJpZG8nIDogJ1JlcXVpcmVkJyB9fVxuPC9wPlxuIl19
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItdjIvZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItdjIvZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWdCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7Ozs7QUFVckgsTUFBTSxPQUFPLDBCQUEwQjtJQThDckMsWUFBbUIsaUJBQW9DO1FBQXBDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUE3Q3ZELDBCQUEwQjtRQUNWLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFDMUIsZ0JBQVcsR0FBVyxJQUFJLENBQUM7UUFFM0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFHNUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQyxzQkFBc0I7UUFDTixTQUFJLEdBQWdCLElBQUksQ0FBQztRQUV6QixjQUFTLEdBQXNCLE9BQU8sQ0FBQztRQUN2QyxVQUFLLEdBQXdDLE9BQU8sQ0FBQztRQUVyRSxXQUFXO1FBQ0ssaUJBQVksR0FBeUIsS0FBSyxDQUFDO1FBQzNDLGlCQUFZLEdBQXdCLFFBQVEsQ0FBQztRQUM3QyxrQkFBYSxHQUFxQixNQUFNLENBQUM7UUFNOUIscUJBQWdCLEdBQWdDLElB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ZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCc0RhdGVwaWNrZXJWaWV3TW9kZX0gZnJvbSBcIi4vZGF0ZXBpY2tlci9tb2RlbHNcIjtcbmltcG9ydCB7QnNEYXRlcGlja2VyQ29uZmlnfSBmcm9tIFwiLi9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIuY29uZmlnXCI7XG5pbXBvcnQge0hlYWRlclR5cGVTZXJ2aWNlfSBmcm9tIFwiLi9kYXRlcGlja2VyL3NlcnZpY2VzL2hlYWRlci10eXBlLnNlcnZpY2VcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhdml0eS1jYWxlbmRhci12MicsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LWNhbGVuZGFyLXYyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3Jhdml0eS1jYWxlbmRhci12Mi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyYXZpdHlDYWxlbmRhclYyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAvLyBDb21wb25lbnQgY29uZmlndXJhdGlvblxuICBASW5wdXQoKSBwdWJsaWMgY2xlYXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSAnZW4nO1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGlzRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGlzUmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHN1cHBvcnRUZXh0OiBzdHJpbmc7XG5cbiAgLy8gQXBwZWFyYW5jZSBzZXR0aW5nc1xuICBASW5wdXQoKSBwdWJsaWMgc2l6ZTogJ3NtJyB8ICdtZCcgPSAnc20nO1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWxTaXplOiAnc20nIHwgJ21kJyB8ICdsZyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbnB1dFR5cGU6ICdmaWVsZCcgfCAnbGFiZWwnID0gJ2ZpZWxkJztcbiAgQElucHV0KCkgcHVibGljIHdpZHRoOiAnc2hvcnQnIHwgJ21lZGl1bScgfCAnZnVsbCcgfCAnZml0JyA9ICdzaG9ydCc7XG5cbiAgLy8gQ2FsZW5kYXJcbiAgQElucHV0KCkgcHVibGljIGNhbGVuZGFyVHlwZTogQnNEYXRlcGlja2VyVmlld01vZGUgPSAnZGF5JztcbiAgQElucHV0KCkgcHVibGljIGNhbGVuZGFyTW9kZTogJ3NpbmdsZScgfCAnZG91YmxlJyA9ICdzaW5nbGUnO1xuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0aW9uTW9kZTogJ2RhdGUnIHwgJ3JhbmdlJyA9ICdkYXRlJztcblxuICAvLyBEYXRlc1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tRGF0ZT86IERhdGU7XG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21EYXRlcz86IERhdGVbXTtcblxuICBAT3V0cHV0KCdyZXNwb25zZScpIHB1YmxpYyBjYWxlbmRhclJlc3BvbnNlOiBFdmVudEVtaXR0ZXI8RGF0ZVtdIHwgRGF0ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGVbXSB8IERhdGU+KCk7XG5cbiAgcHVibGljIGNhbGVuZGFyQ29uZmlndXJhdGlvbjogUGFydGlhbDxCc0RhdGVwaWNrZXJDb25maWc+ID0ge1xuICAgIGRpc3BsYXlNb250aHM6IDFcbiAgfTtcblxuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudElkOiBzdHJpbmc7XG4gIHB1YmxpYyBkaXNwbGF5UmFuZ2VQaWNrZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGZvY3VzSW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGlzTW9iaWxlOiBib29sZWFuID0gZmFsc2U7XG4gIHB1YmxpYyBpbnB1dExhYmVsOiBzdHJpbmcgPSAnJztcbiAgcHVibGljIG1heERhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICBwdWJsaWMgbWluRGF0ZTogRGF0ZSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0VVRDRnVsbFllYXIoKSAtIDExLCAwLCAxKTtcbiAgcHVibGljIHNlbGVjdGVkRGF0ZTogRGF0ZTtcbiAgcHVibGljIHNlbGVjdGVkRGF0ZXM6IERhdGVbXTtcbiAgcHVibGljIHNob3dNb2JpbGVDYWxlbmRhcjogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaXNDYWxlbmRhck9wZW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgaGVhZGVyVHlwZVNlcnZpY2U6IEhlYWRlclR5cGVTZXJ2aWNlKSB7XG4gICAgbGV0IG1pbGxpc2Vjb25kczogbnVtYmVyID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XG4gICAgbGV0IHJhbmRvbU51bWJlcjogbnVtYmVyID0gTWF0aC5yYW5kb20oKSAqIDEwO1xuXG4gICAgdGhpcy5lbGVtZW50SWQgPSAnJyArIChtaWxsaXNlY29uZHMgKiByYW5kb21OdW1iZXIgLyAyKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMub25SZXNpemUoKTtcbiAgICB0aGlzLnVwZGF0ZUNvbmZpZygpO1xuXG4gICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uY2FsZW5kYXJTaXplID0gdGhpcy5zaXplO1xuICAgIHRoaXMuY2FsZW5kYXJDb25maWd1cmF0aW9uLmNsZWFyYWJsZSA9IHRoaXMuY2xlYXJhYmxlO1xuXG4gICAgaWYgKHRoaXMuY3VzdG9tRGF0ZSkge1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmN1c3RvbURhdGU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3VzdG9tRGF0ZXMpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlcyA9IHRoaXMuY3VzdG9tRGF0ZXM7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydzZWxlY3Rpb25Nb2RlJ10pIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZSA9IGNoYW5nZXNbJ3NlbGVjdGlvbk1vZGUnXS5jdXJyZW50VmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZUNvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzWydjYWxlbmRhck1vZGUnXSkge1xuICAgICAgdGhpcy5jYWxlbmRhck1vZGUgPSBjaGFuZ2VzWydjYWxlbmRhck1vZGUnXS5jdXJyZW50VmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZUNvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzWydjbGVhcmFibGUnXSkge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uY2xlYXJhYmxlID0gY2hhbmdlc1snY2xlYXJhYmxlJ10uY3VycmVudFZhbHVlO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzWydzaXplJ10pIHtcbiAgICAgIHRoaXMuY2FsZW5kYXJDb25maWd1cmF0aW9uLmNhbGVuZGFyU2l6ZSA9IGNoYW5nZXNbJ3NpemUnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXNbJ2N1c3RvbURhdGUnXSkge1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSBjaGFuZ2VzWydjdXN0b21EYXRlJ10uY3VycmVudFZhbHVlO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzWydjdXN0b21EYXRlcyddKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZXMgPSBjaGFuZ2VzWydjdXN0b21EYXRlcyddLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNvbmZpZygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jYWxlbmRhck1vZGUgPT0gJ3NpbmdsZScgJiYgdGhpcy5zZWxlY3Rpb25Nb2RlID09ICdkYXRlJykge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uZGlzcGxheU1vbnRocyA9IDE7XG4gICAgICB0aGlzLmRpc3BsYXlSYW5nZVBpY2tlciA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNhbGVuZGFyTW9kZSA9PSAnc2luZ2xlJyAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT0gJ3JhbmdlJykge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uZGlzcGxheU1vbnRocyA9IDE7XG4gICAgICB0aGlzLmRpc3BsYXlSYW5nZVBpY2tlciA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FsZW5kYXJNb2RlID09ICdkb3VibGUnICYmIHRoaXMuc2VsZWN0aW9uTW9kZSA9PSAnZGF0ZScpIHtcbiAgICAgIHRoaXMuY2FsZW5kYXJDb25maWd1cmF0aW9uLmRpc3BsYXlNb250aHMgPSAyO1xuICAgICAgdGhpcy5kaXNwbGF5UmFuZ2VQaWNrZXIgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNhbGVuZGFyTW9kZSA9PSAnZG91YmxlJyAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT0gJ3JhbmdlJykge1xuICAgICAgdGhpcy5jYWxlbmRhckNvbmZpZ3VyYXRpb24uZGlzcGxheU1vbnRocyA9IDI7XG4gICAgICB0aGlzLmRpc3BsYXlSYW5nZVBpY2tlciA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVNlbGVjdGVkRGF0ZSgkZXZlbnQ6IERhdGUgfCBEYXRlW10pOiB2b2lkIHtcbiAgICBpZiAoISRldmVudCB8fCAoQXJyYXkuaXNBcnJheSgkZXZlbnQpICYmICRldmVudC5sZW5ndGggPT0gMCkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gbnVsbDtcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlcyA9IG51bGw7XG4gICAgICB0aGlzLmlucHV0TGFiZWwgPSAnJztcbiAgICAgIHRoaXMuY2FsZW5kYXJSZXNwb25zZS5lbWl0KHVuZGVmaW5lZCk7XG4gICAgfSBlbHNlIGlmICgkZXZlbnQgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9ICRldmVudDtcbiAgICAgIHRoaXMuaW5wdXRMYWJlbCA9IHRoaXMuZm9ybWF0RGF0ZSgkZXZlbnQpO1xuICAgICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQodGhpcy5zZWxlY3RlZERhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZXMgPSAkZXZlbnQ7XG4gICAgICBjb25zdCBkYXRlMTogc3RyaW5nID0gdGhpcy5mb3JtYXREYXRlKCRldmVudFswXSk7XG4gICAgICBjb25zdCBkYXRlMjogc3RyaW5nID0gdGhpcy5mb3JtYXREYXRlKCRldmVudFsxXSk7XG5cbiAgICAgIHRoaXMuaW5wdXRMYWJlbCA9IGRhdGUxICsgJyAtICcgKyBkYXRlMjtcblxuICAgICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQodGhpcy5zZWxlY3RlZERhdGVzKTtcbiAgICB9XG5cbiAgICB0aGlzLmNsb3NlTW9iaWxlQ2FsZW5kYXIoKTtcbiAgfVxuXG4gIHJlc2V0Q2FsZW5kYXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLmN1c3RvbURhdGUgPyB0aGlzLmN1c3RvbURhdGUgOiB1bmRlZmluZWQ7XG4gICAgdGhpcy5zZWxlY3RlZERhdGVzID0gdGhpcy5jdXN0b21EYXRlcyA/IHRoaXMuY3VzdG9tRGF0ZXMgOiB1bmRlZmluZWQ7XG5cbiAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09ICdkYXRlJykge1xuICAgICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQodGhpcy5zZWxlY3RlZERhdGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhbGVuZGFyUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkRGF0ZXMpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRHdENhbGVuZGFyQ29udGFpbmVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICcuZ3Jhdml0eS1jYWxlbmRhci1maWVsZFtlbGVtZW50SWQ9XCInICsgdGhpcy5lbGVtZW50SWQgKyAnXCJdJztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTdGF0dXMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICByZXR1cm4gJ2Rpc2FibGVkJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNSZWFkb25seSkge1xuICAgICAgcmV0dXJuICdyZWFkb25seSc7XG4gICAgfSBlbHNlIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuZm9jdXNJbnB1dCkge1xuICAgICAgcmV0dXJuICdvcGVuJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0ZWREYXRlcz8ubGVuZ3RoID4gMCB8fCB0aGlzLnNlbGVjdGVkRGF0ZSkge1xuICAgICAgcmV0dXJuICdzZWxlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnYWN0aXZlJztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZvcm1hdERhdGUoZGF0ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgbGV0IGZvcm1hdHRlZERhdGU6IHN0cmluZyA9ICcnO1xuICAgIGxldCBtb250aDogc3RyaW5nO1xuICAgIGxldCBkYXk6IHN0cmluZztcblxuICAgIHN3aXRjaCAodGhpcy5jYWxlbmRhclR5cGUpIHtcbiAgICAgIGNhc2UgXCJkYXlcIjpcbiAgICAgICAgbW9udGggPSBkYXRlLmdldE1vbnRoKCkgPCA5ID8gKCcwJyArIChkYXRlLmdldE1vbnRoKCkgKyAxKSkgOiAoJycgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkpO1xuICAgICAgICBkYXkgPSBkYXRlLmdldERhdGUoKSA8IDEwID8gJzAnICsgZGF0ZS5nZXREYXRlKCkgOiAnJyArIGRhdGUuZ2V0RGF0ZSgpO1xuICAgICAgICBmb3JtYXR0ZWREYXRlID0gbW9udGggKyAnLycgKyBkYXkgKyAnLycgKyBkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcIm1vbnRoXCI6XG4gICAgICAgIG1vbnRoID0gZGF0ZS5nZXRNb250aCgpIDwgOSA/ICgnMCcgKyAoZGF0ZS5nZXRNb250aCgpICsgMSkpIDogKCcnICsgKGRhdGUuZ2V0TW9udGgoKSArIDEpKTtcbiAgICAgICAgZm9ybWF0dGVkRGF0ZSA9IG1vbnRoICsgJy8nICsgZGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgXCJ5ZWFyXCI6XG4gICAgICAgIGZvcm1hdHRlZERhdGUgPSBkYXRlLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvcm1hdHRlZERhdGU7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLmlzTW9iaWxlID0gd2luZG93LmlubmVyV2lkdGggPD0gOTkyO1xuICAgIHRoaXMuY2FsZW5kYXJDb25maWd1cmF0aW9uLmlzQW5pbWF0ZWQgPSAhdGhpcy5pc01vYmlsZTtcbiAgICB0aGlzLmNhbGVuZGFyQ29uZmlndXJhdGlvbi5pc01vYmlsZSA9IHRoaXMuaXNNb2JpbGU7XG4gIH1cblxuICBwdWJsaWMgb3Blbk1vYmlsZUNhbGVuZGFyKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd01vYmlsZUNhbGVuZGFyID0gdHJ1ZTtcbiAgICB0aGlzLmZvY3VzSW5wdXQgPSB0cnVlO1xuXG4gICAgdGhpcy5oZWFkZXJUeXBlU2VydmljZS5zZXRJc01vYmlsZSh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZU1vYmlsZUNhbGVuZGFyKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd01vYmlsZUNhbGVuZGFyID0gZmFsc2U7XG4gICAgdGhpcy5mb2N1c0lucHV0ID0gZmFsc2U7XG4gICAgdGhpcy5yZXN0YXJ0Q2FsZW5kYXJUeXBlKCk7XG4gIH1cblxuICBwdWJsaWMgcmVzdGFydENhbGVuZGFyVHlwZSgpIHtcbiAgICB0aGlzLmhlYWRlclR5cGVTZXJ2aWNlLnNldElzTW9iaWxlKGZhbHNlKTtcbiAgICB0aGlzLmhlYWRlclR5cGVTZXJ2aWNlLnNldEhlYWRlclR5cGUoJ3NlbGYnKTtcbiAgICB0aGlzLmhlYWRlclR5cGVTZXJ2aWNlLnNldENhbGVuZGFyVHlwZSgnZGF5cycpO1xuICB9XG59XG5cbiIsIjxsYWJlbCBjbGFzcz1cImhyLWxhYmVsIHNtLWJvbGQge3tnZXRTdGF0dXMoKX19XCIgKm5nSWY9XCJsYWJlbFwiPlxuICB7eyBsYWJlbCB9fSA8c3BhbiAqbmdJZj1cInJlcXVpcmVkIHx8IGhhc0Vycm9yXCI+Kjwvc3Bhbj5cbjwvbGFiZWw+XG48ZGl2IFthdHRyLmVsZW1lbnRJZF09XCJlbGVtZW50SWRcIiBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItZmllbGQge3tzaXplfX0ge3t3aWR0aH19LXdpZHRoIHt7Z2V0U3RhdHVzKCl9fSB7e2lucHV0VHlwZX19LXt7bGFiZWxTaXplfX1cIj5cbiAgPGRpdiBjbGFzcz1cIm1vYmlsZS1jYWxlbmRhci1jb250YWluZXJcIiBbY2xhc3MuaGlkZV09XCIhc2hvd01vYmlsZUNhbGVuZGFyXCIgW2NsYXNzLnNob3ddPVwic2hvd01vYmlsZUNhbGVuZGFyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1jYWxlbmRhci1ib2R5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItY29udGFpbmVyXCJcbiAgICAgICAgICAgZ3Jhdml0eURhdGVQaWNrZXJJbmxpbmVcblxuICAgICAgICAgICBbYnNDb25maWddPVwiY2FsZW5kYXJDb25maWd1cmF0aW9uXCJcbiAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcbiAgICAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICAgICBbbWluTW9kZV09XCJjYWxlbmRhclR5cGVcIlxuXG4gICAgICAgICAgIFsoYnNWYWx1ZSldPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgICAgKGJzVmFsdWVDaGFuZ2UpPVwidXBkYXRlU2VsZWN0ZWREYXRlKCRldmVudClcIlxuICAgICAgICAgICAob25BcHBseUVtaXQpPVwiY2xvc2VNb2JpbGVDYWxlbmRhcigpXCJcblxuICAgICAgICAgICAqbmdJZj1cIiFkaXNwbGF5UmFuZ2VQaWNrZXJcIj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1jbG9zZS1pY29uXCIgKm5nSWY9XCJoZWFkZXJUeXBlU2VydmljZS5nZXRDYWxlbmRhclR5cGUoKSA9PT0gJ2RheXMnXCI+XG4gICAgICAgICAgICA8Z3Jhdml0eS1pY29uIGNsYXNzPVwicG9pbnRlclwiIChjbGljayk9XCJjbG9zZU1vYmlsZUNhbGVuZGFyKClcIiBbaWNvbk5hbWVdPVwiJ3Vuc3VjY2VzcydcIiBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1jb250YWluZXJcIlxuICAgICAgICAgICBncmF2aXR5UmFuZ2VQaWNrZXJJbmxpbmVcblxuICAgICAgICAgICBbYnNDb25maWddPVwiY2FsZW5kYXJDb25maWd1cmF0aW9uXCJcbiAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcbiAgICAgICAgICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuXG4gICAgICAgICAgIFsoYnNWYWx1ZSldPVwic2VsZWN0ZWREYXRlc1wiXG4gICAgICAgICAgIChic1ZhbHVlQ2hhbmdlKT1cInVwZGF0ZVNlbGVjdGVkRGF0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgKG9uQXBwbHlFbWl0KT1cImNsb3NlTW9iaWxlQ2FsZW5kYXIoKVwiXG5cbiAgICAgICAgICAgKm5nSWY9XCJkaXNwbGF5UmFuZ2VQaWNrZXJcIj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1jbG9zZS1pY29uXCIgKm5nSWY9XCJoZWFkZXJUeXBlU2VydmljZS5nZXRDYWxlbmRhclR5cGUoKSA9PT0gJ2RheXMnXCI+XG4gICAgICAgICAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJwb2ludGVyXCIgKGNsaWNrKT1cImNsb3NlTW9iaWxlQ2FsZW5kYXIoKVwiIFtpY29uTmFtZV09XCIndW5zdWNjZXNzJ1wiIFtpY29uU2l6ZV09XCInc20tMTInXCI+PC9ncmF2aXR5LWljb24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTW9iaWxlICYmIGlucHV0VHlwZSA9PT0gJ2ZpZWxkJ1wiPlxuICAgIDxkaXYgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnXCJcbiAgICAgICAgIFtzdHlsZS5jdXJzb3JdPVwiIWlzRGlzYWJsZWQgJiYgIWlzUmVhZG9ubHkgPyAncG9pbnRlcicgOiAndGV4dCdcIlxuXG4gICAgICAgICBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItZmllbGQtdHJpZ2dlclwiXG4gICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgIFtjbGFzcy5yZWFkb25seV09XCJpc1JlYWRvbmx5XCJcblxuICAgICAgICAgKGNsaWNrKT1cIm9wZW5Nb2JpbGVDYWxlbmRhcigpXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiPlxuICAgICAgPGdyYXZpdHktaWNvbiBjbGFzcz1cInBsYWNlbWVudC1sZWZ0XCIgW2ljb25OYW1lXT1cIidjYWxlbmRhcidcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgICAgPGlucHV0IFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZyArICdfaW5wdXQnXCJcbiAgICAgICAgICAgICBbYXR0ci5yZWFkb25seV09XCJpc1JlYWRvbmx5XCJcbiAgICAgICAgICAgICBbc3R5bGUuY3Vyc29yXT1cIiFpc0Rpc2FibGVkICYmICFpc1JlYWRvbmx5ID8gJ3BvaW50ZXInIDogJ3RleHQnXCJcblxuICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaW5wdXRMYWJlbFwiIFtuZ01vZGVsXT1cImlucHV0TGFiZWwgfCBkYXRlRm9ybWF0aW5nOiBjdXJyZW50TGFuZ1wiXG5cbiAgICAgICAgICAgICBjbGFzcz1cImhyLWxhYmVsIHt7c2l6ZX19LXJlZ3VsYXJcIlxuICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlciAmJiBwbGFjZWhvbGRlciAhPSAnJyA/IHBsYWNlaG9sZGVyIDogc2VsZWN0aW9uTW9kZSA9PSAncmFuZ2UnID8gJ1NlbGVjdCBkYXRlIHJhbmdlJyA6ICdTZWxlY3QgYSAnICsgY2FsZW5kYXJUeXBlXCI+XG4gICAgICAgIDxncmF2aXR5LWljb24gW2ljb25OYW1lXT1cImZvY3VzSW5wdXQgPyAnYXJyb3ctdXAnIDogJ2Fycm93LWRvd24nXCIgW2ljb25TaXplXT1cIidtZC0xNidcIj48L2dyYXZpdHktaWNvbj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc01vYmlsZSB8fCBpbnB1dFR5cGUgPT09ICdsYWJlbCdcIj5cblxuICAgIDxkaXYgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnXCJcbiAgICAgICAgIFtzdHlsZS5jdXJzb3JdPVwiIWlzRGlzYWJsZWQgJiYgIWlzUmVhZG9ubHkgPyAncG9pbnRlcicgOiAndGV4dCdcIlxuXG4gICAgICAgICBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItZmllbGQtdHJpZ2dlclwiXG4gICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgIFtjbGFzcy5yZWFkb25seV09XCJpc1JlYWRvbmx5XCJcbiAgICAgICAgIGdyYXZpdHlEYXRlUGlja2VyXG5cbiAgICAgICAgIFtic0NvbmZpZ109XCJjYWxlbmRhckNvbmZpZ3VyYXRpb25cIlxuICAgICAgICAgW2NvbnRhaW5lcl09XCJnZXRHdENhbGVuZGFyQ29udGFpbmVyKClcIlxuICAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNEaXNhYmxlZCB8fCBpc1JlYWRvbmx5XCJcbiAgICAgICAgIFtpc01vYmlsZV09XCJpc01vYmlsZVwiXG4gICAgICAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICAgICAgIFttaW5EYXRlXT1cIm1pbkRhdGVcIlxuICAgICAgICAgW21pbk1vZGVdPVwiY2FsZW5kYXJUeXBlXCJcblxuICAgICAgICAgWyhic1ZhbHVlKV09XCJzZWxlY3RlZERhdGVcIlxuXG4gICAgICAgICAoYmx1cik9XCJmb2N1c0lucHV0ID0gZmFsc2VcIlxuICAgICAgICAgKGJzVmFsdWVDaGFuZ2UpPVwidXBkYXRlU2VsZWN0ZWREYXRlKCRldmVudClcIlxuICAgICAgICAgKGZvY3VzKT1cImZvY3VzSW5wdXQgPSB0cnVlXCJcbiAgICAgICAgIChvbkhpZGRlbik9XCJmb2N1c0lucHV0ID0gZmFsc2U7IHJlc3RhcnRDYWxlbmRhclR5cGUoKTsgaXNDYWxlbmRhck9wZW4gPSBmYWxzZTtcIlxuICAgICAgICAgKG9uU2hvd24pPVwicmVzdGFydENhbGVuZGFyVHlwZSgpOyBpc0NhbGVuZGFyT3BlbiA9IHRydWU7XCJcblxuICAgICAgICAgKm5nSWY9XCIhZGlzcGxheVJhbmdlUGlja2VyXCI+XG5cbiAgICAgICAgPGdyYXZpdHktZHJvcGRvd24tbGFiZWwgKm5nSWY9XCJpbnB1dFR5cGUgPT09ICdsYWJlbCdcIiBbc2l6ZV09XCJsYWJlbFNpemVcIiBbc3RvcFByb3BhZ2F0aW9uXT1cImZhbHNlXCIgW2lzT3Blbl09XCJpc0NhbGVuZGFyT3BlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJpbnB1dExhYmVsID8gKGlucHV0TGFiZWwgfCBkYXRlRm9ybWF0aW5nOiBjdXJyZW50TGFuZyA6IGZhbHNlKTogJ1NlbGVjdCBhICcgKyBjYWxlbmRhclR5cGVcIiA+XG4gICAgICAgIDwvZ3Jhdml0eS1kcm9wZG93bi1sYWJlbD5cblxuICAgICAgICA8bmctY29udGFpbmVyICAqbmdJZj1cImlucHV0VHlwZSA9PT0gJ2ZpZWxkJ1wiPlxuICAgICAgICAgICAgPGdyYXZpdHktaWNvbiBjbGFzcz1cInBsYWNlbWVudC1sZWZ0XCIgW2ljb25OYW1lXT1cIidjYWxlbmRhcidcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgICAgICAgICAgPGlucHV0IFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZyArICdfaW5wdXQnXCJcbiAgICAgICAgICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICAgICAgICAgIFtzdHlsZS5jdXJzb3JdPVwiIWlzRGlzYWJsZWQgJiYgIWlzUmVhZG9ubHkgPyAncG9pbnRlcicgOiAndGV4dCdcIlxuXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiaW5wdXRMYWJlbFwiIFtuZ01vZGVsXT1cImlucHV0TGFiZWwgfCBkYXRlRm9ybWF0aW5nOiBjdXJyZW50TGFuZ1wiXG5cbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJoci1sYWJlbCB7e3NpemV9fS1yZWd1bGFyXCJcbiAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyICYmIHBsYWNlaG9sZGVyICE9ICcnID8gcGxhY2Vob2xkZXIgOiAnU2VsZWN0IGEgJyArIGNhbGVuZGFyVHlwZVwiPlxuICAgICAgICAgICAgPGdyYXZpdHktaWNvbiBbaWNvbk5hbWVdPVwiZm9jdXNJbnB1dCA/ICdhcnJvdy11cCcgOiAnYXJyb3ctZG93bidcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnXCJcbiAgICAgICAgIFtzdHlsZS5jdXJzb3JdPVwiIWlzRGlzYWJsZWQgJiYgIWlzUmVhZG9ubHkgPyAncG9pbnRlcicgOiAndGV4dCdcIlxuXG4gICAgICAgICBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItZmllbGQtdHJpZ2dlclwiXG4gICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gICAgICAgICBbY2xhc3MucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICBncmF2aXR5UmFuZ2VQaWNrZXJcblxuICAgICAgICAgW2JzQ29uZmlnXT1cImNhbGVuZGFyQ29uZmlndXJhdGlvblwiXG4gICAgICAgICBbY29udGFpbmVyXT1cImdldEd0Q2FsZW5kYXJDb250YWluZXIoKVwiXG4gICAgICAgICBbaXNEaXNhYmxlZF09XCJpc0Rpc2FibGVkIHx8IGlzUmVhZG9ubHlcIlxuICAgICAgICAgW2lzTW9iaWxlXT1cImlzTW9iaWxlXCJcbiAgICAgICAgIFttYXhEYXRlXT1cIm1heERhdGVcIlxuICAgICAgICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG5cbiAgICAgICAgIFsoYnNWYWx1ZSldPVwic2VsZWN0ZWREYXRlc1wiXG5cbiAgICAgICAgIChibHVyKT1cImZvY3VzSW5wdXQgPSBmYWxzZVwiXG4gICAgICAgICAoYnNWYWx1ZUNoYW5nZSk9XCJ1cGRhdGVTZWxlY3RlZERhdGUoJGV2ZW50KVwiXG4gICAgICAgICAoZm9jdXMpPVwiZm9jdXNJbnB1dCA9IHRydWVcIlxuICAgICAgICAgKG9uSGlkZGVuKT1cImZvY3VzSW5wdXQgPSBmYWxzZTsgcmVzdGFydENhbGVuZGFyVHlwZSgpXCJcbiAgICAgICAgIChvblNob3duKT1cInJlc3RhcnRDYWxlbmRhclR5cGUoKVwiXG5cbiAgICAgICAgICpuZ0lmPVwiZGlzcGxheVJhbmdlUGlja2VyXCI+XG5cbiAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJwbGFjZW1lbnQtbGVmdFwiIFtpY29uTmFtZV09XCInY2FsZW5kYXInXCIgW2ljb25TaXplXT1cIidtZC0xNidcIj48L2dyYXZpdHktaWNvbj5cbiAgICAgIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX2lucHV0J1wiXG4gICAgICAgICAgICAgW2F0dHIucmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgICAgICAgW3N0eWxlLmN1cnNvcl09XCIhaXNEaXNhYmxlZCAmJiAhaXNSZWFkb25seSA/ICdwb2ludGVyJyA6ICd0ZXh0J1wiXG5cbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImlucHV0TGFiZWxcIiBbbmdNb2RlbF09XCJpbnB1dExhYmVsIHwgZGF0ZUZvcm1hdGluZzogY3VycmVudExhbmdcIlxuXG4gICAgICAgICAgICAgY2xhc3M9XCJoci1sYWJlbCB7e3NpemV9fS1yZWd1bGFyXCJcbiAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIgJiYgcGxhY2Vob2xkZXIgIT0gJycgPyBwbGFjZWhvbGRlciA6ICdTZWxlY3QgYSBkYXRlIHJhbmdlJ1wiPlxuICAgICAgICA8Z3Jhdml0eS1pY29uIFtpY29uTmFtZV09XCJmb2N1c0lucHV0ID8gJ2Fycm93LXVwJyA6ICdhcnJvdy1kb3duJ1wiIFtpY29uU2l6ZV09XCInbWQtMTYnXCI+PC9ncmF2aXR5LWljb24+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48cCBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXIgc3VwcG9ydGluZy10ZXh0IHt7Z2V0U3RhdHVzKCl9fSB7e3NpemV9fVwiICpuZ0lmPVwic3VwcG9ydFRleHRcIj5cbiAgPGdyYXZpdHktaWNvbiBbaWNvbk5hbWVdPVwiJ3F1ZXN0aW9uLWNpcmNsZSdcIiAqbmdJZj1cImhhc0Vycm9yXCIgW2ljb25TaXplXT1cIidtZC0xNidcIj48L2dyYXZpdHktaWNvbj5cbiAge3sgc3VwcG9ydFRleHQgfX1cbjwvcD5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgICpuZ0lmPVwiIXN1cHBvcnRUZXh0ICYmIGdldFN0YXR1cygpID09ICdhY3RpdmUnICYmIGlucHV0TGFiZWw/Lmxlbmd0aCA9PSAwICYmIHJlcXVpcmVkXCI+XG4gIHt7IGN1cnJlbnRMYW5nID09ICdlcycgPyAnUmVxdWVyaWRvJyA6ICdSZXF1aXJlZCcgfX1cbjwvcD5cbiJdfQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../gravity-icon/gravity-icon.component";
|
|
5
|
+
export class GravityDropdownLabelComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.isOpen = false;
|
|
8
|
+
this.stopPropagation = true;
|
|
9
|
+
this.size = 'sm';
|
|
10
|
+
this.onClickLabel = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
getLabelClass() {
|
|
13
|
+
switch (this.size) {
|
|
14
|
+
case "sm": return 'hr-title md-bold';
|
|
15
|
+
case "md": return 'hr-headline sm-bold';
|
|
16
|
+
case "lg": return 'hr-headline md-bold';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
onClick(event) {
|
|
20
|
+
if (this.stopPropagation) {
|
|
21
|
+
event.stopPropagation();
|
|
22
|
+
}
|
|
23
|
+
this.onClickLabel.emit();
|
|
24
|
+
}
|
|
25
|
+
getIconSize() {
|
|
26
|
+
let newIconsSize;
|
|
27
|
+
let oldIconsSize;
|
|
28
|
+
switch (this.size) {
|
|
29
|
+
case "lg":
|
|
30
|
+
case "md":
|
|
31
|
+
newIconsSize = 'lg';
|
|
32
|
+
oldIconsSize = 'lg-24';
|
|
33
|
+
break;
|
|
34
|
+
case "sm":
|
|
35
|
+
newIconsSize = 'md';
|
|
36
|
+
oldIconsSize = 'md-16';
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
return { newIconsSize, oldIconsSize };
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityDropdownLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityDropdownLabelComponent, selector: "gravity-dropdown-label", inputs: { label: "label", isOpen: "isOpen", stopPropagation: "stopPropagation", size: "size" }, outputs: { onClickLabel: "onClickLabel" }, ngImport: i0, template: "<div class=\"gravity-dropdown-label\" [class.open]=\"isOpen\" (click)=\"onClick($event)\">\n <p [ngClass]=\"getLabelClass()\">{{label}}</p>\n <gravity-icon [style.--icon-color]=\"'var(--label-icon-color)'\"\n [iconName]=\"isOpen ? 'arrow-up' : 'arrow-down'\" [size]=\"getIconSize().newIconsSize\"\n [iconSize]=\"getIconSize().oldIconsSize\">\n </gravity-icon>\n</div>\n", styles: [".gravity-dropdown-label{display:flex;align-items:center;color:var(--label-color);gap:var(--gravity-spacing-xs);--label-color: var(--text-primary);--label-icon-color: var(--icon-active-primary)}.gravity-dropdown-label.open{--label-icon-color: var(--on-bg-button-pressed-tertiary);--label-color: var(--on-bg-button-pressed-tertiary)}.gravity-dropdown-label:hover{--label-icon-color: var(--icon-hover-primary);--label-color: var(--on-bg-button-hover-tertiary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityDropdownLabelComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'gravity-dropdown-label', template: "<div class=\"gravity-dropdown-label\" [class.open]=\"isOpen\" (click)=\"onClick($event)\">\n <p [ngClass]=\"getLabelClass()\">{{label}}</p>\n <gravity-icon [style.--icon-color]=\"'var(--label-icon-color)'\"\n [iconName]=\"isOpen ? 'arrow-up' : 'arrow-down'\" [size]=\"getIconSize().newIconsSize\"\n [iconSize]=\"getIconSize().oldIconsSize\">\n </gravity-icon>\n</div>\n", styles: [".gravity-dropdown-label{display:flex;align-items:center;color:var(--label-color);gap:var(--gravity-spacing-xs);--label-color: var(--text-primary);--label-icon-color: var(--icon-active-primary)}.gravity-dropdown-label.open{--label-icon-color: var(--on-bg-button-pressed-tertiary);--label-color: var(--on-bg-button-pressed-tertiary)}.gravity-dropdown-label:hover{--label-icon-color: var(--icon-hover-primary);--label-color: var(--on-bg-button-hover-tertiary)}\n"] }]
|
|
47
|
+
}], propDecorators: { label: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], isOpen: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], stopPropagation: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], size: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], onClickLabel: [{
|
|
56
|
+
type: Output
|
|
57
|
+
}] } });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1kcm9wZG93bi1sYWJlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktZHJvcGRvd24tbGFiZWwvZ3Jhdml0eS1kcm9wZG93bi1sYWJlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktZHJvcGRvd24tbGFiZWwvZ3Jhdml0eS1kcm9wZG93bi1sYWJlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7O0FBT3JFLE1BQU0sT0FBTyw2QkFBNkI7SUFMMUM7UUFPa0IsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUN4QixvQkFBZSxHQUFZLElBQUksQ0FBQztRQUNoQyxTQUFJLEdBQXVCLElBQUksQ0FBQztRQUUvQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7S0FnQzFEO0lBOUJRLGFBQWE7UUFDbEIsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2pCLEtBQUssSUFBSSxDQUFDLENBQUMsT0FBTyxrQkFBa0IsQ0FBQztZQUNyQyxLQUFLLElBQUksQ0FBQyxDQUFDLE9BQU8scUJBQXFCLENBQUM7WUFDeEMsS0FBSyxJQUFJLENBQUMsQ0FBQyxPQUFPLHFCQUFxQixDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQUVNLE9BQU8sQ0FBQyxLQUFpQjtRQUM5QixJQUFHLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFBQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7U0FBQztRQUNuRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksWUFBZ0MsQ0FBQztRQUNyQyxJQUFJLFlBQW1ELENBQUM7UUFDeEQsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2pCLEtBQUssSUFBSSxDQUFDO1lBQ1YsS0FBSyxJQUFJO2dCQUNQLFlBQVksR0FBRyxJQUFJLENBQUM7Z0JBQ3BCLFlBQVksR0FBRyxPQUFPLENBQUM7Z0JBQ3ZCLE1BQU07WUFDUixLQUFLLElBQUk7Z0JBQ1AsWUFBWSxHQUFHLElBQUksQ0FBQztnQkFDcEIsWUFBWSxHQUFHLE9BQU8sQ0FBQztnQkFDdkIsTUFBTTtTQUNUO1FBQ0QsT0FBTyxFQUFDLFlBQVksRUFBRSxZQUFZLEVBQUMsQ0FBQztJQUN0QyxDQUFDOytHQXBDVSw2QkFBNkI7bUdBQTdCLDZCQUE2Qix5TUNQMUMsOFpBT0E7OzRGREFhLDZCQUE2QjtrQkFMekMsU0FBUzsrQkFDRSx3QkFBd0I7OEJBS2xCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBRVcsWUFBWTtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWRyb3Bkb3duLWxhYmVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktZHJvcGRvd24tbGFiZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LWRyb3Bkb3duLWxhYmVsLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eURyb3Bkb3duTGFiZWxDb21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGlzT3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgc3RvcFByb3BhZ2F0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIHNpemU6ICdzbScgfCAnbWQnIHwgJ2xnJyA9ICdzbSc7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBvbkNsaWNrTGFiZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIGdldExhYmVsQ2xhc3MoKSB7XG4gICAgc3dpdGNoICh0aGlzLnNpemUpIHtcbiAgICAgIGNhc2UgXCJzbVwiOiByZXR1cm4gJ2hyLXRpdGxlIG1kLWJvbGQnO1xuICAgICAgY2FzZSBcIm1kXCI6IHJldHVybiAnaHItaGVhZGxpbmUgc20tYm9sZCc7XG4gICAgICBjYXNlIFwibGdcIjogcmV0dXJuICdoci1oZWFkbGluZSBtZC1ib2xkJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmKHRoaXMuc3RvcFByb3BhZ2F0aW9uKSB7ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7fVxuICAgIHRoaXMub25DbGlja0xhYmVsLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRJY29uU2l6ZSgpIHtcbiAgICBsZXQgbmV3SWNvbnNTaXplOiAnc20nIHwgJ21kJyB8ICdsZyc7XG4gICAgbGV0IG9sZEljb25zU2l6ZTogJ3NtLTEyJyB8ICdtZC0xNicgfCAnbGctMjQnIHwgJ3hsLTMyJztcbiAgICBzd2l0Y2ggKHRoaXMuc2l6ZSkge1xuICAgICAgY2FzZSBcImxnXCI6XG4gICAgICBjYXNlIFwibWRcIjpcbiAgICAgICAgbmV3SWNvbnNTaXplID0gJ2xnJztcbiAgICAgICAgb2xkSWNvbnNTaXplID0gJ2xnLTI0JztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwic21cIjpcbiAgICAgICAgbmV3SWNvbnNTaXplID0gJ21kJztcbiAgICAgICAgb2xkSWNvbnNTaXplID0gJ21kLTE2JztcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIHJldHVybiB7bmV3SWNvbnNTaXplLCBvbGRJY29uc1NpemV9O1xuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJncmF2aXR5LWRyb3Bkb3duLWxhYmVsXCIgW2NsYXNzLm9wZW5dPVwiaXNPcGVuXCIgKGNsaWNrKT1cIm9uQ2xpY2soJGV2ZW50KVwiPlxuICAgIDxwIFtuZ0NsYXNzXT1cImdldExhYmVsQ2xhc3MoKVwiPnt7bGFiZWx9fTwvcD5cbiAgICA8Z3Jhdml0eS1pY29uIFtzdHlsZS4tLWljb24tY29sb3JdPVwiJ3ZhcigtLWxhYmVsLWljb24tY29sb3IpJ1wiXG4gICAgICAgICAgICAgICAgICBbaWNvbk5hbWVdPVwiaXNPcGVuID8gJ2Fycm93LXVwJyA6ICdhcnJvdy1kb3duJ1wiIFtzaXplXT1cImdldEljb25TaXplKCkubmV3SWNvbnNTaXplXCJcbiAgICAgICAgICAgICAgICAgIFtpY29uU2l6ZV09XCJnZXRJY29uU2l6ZSgpLm9sZEljb25zU2l6ZVwiPlxuICAgIDwvZ3Jhdml0eS1pY29uPlxuPC9kaXY+XG4iXX0=
|