@progressio_resources/gravity-design-system 3.0.54 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/esm2022/lib/components/gravity-calendar-next/components/day-calendar/day-calendar.component.mjs +86 -88
  2. package/esm2022/lib/components/gravity-calendar-next/components/day-calendar/range-days-calendar.utils.mjs +70 -0
  3. package/esm2022/lib/components/gravity-calendar-next/components/dual-month-calendar/dual-month-calendar.component.mjs +113 -0
  4. package/esm2022/lib/components/gravity-calendar-next/components/month-calendar/month-calendar.component.mjs +100 -0
  5. package/esm2022/lib/components/gravity-calendar-next/components/year-calendar/year-calendar.component.mjs +10 -6
  6. package/esm2022/lib/components/gravity-calendar-next/gravity-calendar-next.component.mjs +5 -4
  7. package/esm2022/lib/components/gravity-calendar-next/shared/calendar.constants.mjs +9 -7
  8. package/esm2022/lib/components/gravity-calendar-next/shared/calendar.modal.mjs +1 -1
  9. package/esm2022/lib/components/gravity-calendar-next/shared/calendar.utils.mjs +6 -29
  10. package/esm2022/lib/components/gravity-calendar-v2/gravity-calendar-v2.component.mjs +1 -1
  11. package/esm2022/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.mjs +9 -4
  12. package/esm2022/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.mjs +1 -1
  13. package/esm2022/lib/gravity-design-system.module.mjs +6 -3
  14. package/fesm2022/progressio_resources-gravity-design-system.mjs +420 -251
  15. package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
  16. package/lib/components/gravity-calendar-next/components/day-calendar/day-calendar.component.d.ts +35 -19
  17. package/lib/components/gravity-calendar-next/components/day-calendar/range-days-calendar.utils.d.ts +9 -0
  18. package/lib/components/gravity-calendar-next/components/dual-month-calendar/dual-month-calendar.component.d.ts +47 -0
  19. package/lib/components/gravity-calendar-next/components/month-calendar/month-calendar.component.d.ts +40 -0
  20. package/lib/components/gravity-calendar-next/components/year-calendar/year-calendar.component.d.ts +9 -5
  21. package/lib/components/gravity-calendar-next/shared/calendar.constants.d.ts +9 -3
  22. package/lib/components/gravity-calendar-next/shared/calendar.modal.d.ts +4 -4
  23. package/lib/components/gravity-calendar-next/shared/calendar.utils.d.ts +4 -11
  24. package/lib/components/gravity-dropdown-label/gravity-dropdown-label.component.d.ts +2 -1
  25. package/lib/gravity-design-system.module.d.ts +11 -10
  26. package/package.json +1 -1
  27. package/esm2022/lib/components/gravity-calendar-next/components/month-calendary/month-calendar.component.mjs +0 -88
  28. package/lib/components/gravity-calendar-next/components/month-calendary/month-calendar.component.d.ts +0 -34
@@ -0,0 +1,70 @@
1
+ import { getStartDate, toCalendarDay, toDate } from "../../shared/calendar.utils";
2
+ export function isPreview(component, day) {
3
+ if (!component.selectedRangeStart || component.selectedRangeEnd || !component.hoveredDay)
4
+ return false;
5
+ const current = toDate(day);
6
+ const hover = toDate(component.hoveredDay);
7
+ const start = toDate(component.selectedRangeStart);
8
+ if (hover <= start)
9
+ return false;
10
+ return current > start && current <= hover;
11
+ }
12
+ export function processPreselectedRangeDate(component) {
13
+ const [start, end] = component.preSelectedDate;
14
+ if (start instanceof Date) {
15
+ component.currentDate = getStartDate(start);
16
+ component.selectedRangeStart = toCalendarDay(start);
17
+ }
18
+ if (end instanceof Date) {
19
+ component.selectedRangeEnd = toCalendarDay(end);
20
+ }
21
+ }
22
+ export function getRangeSelectionClass(component, day) {
23
+ if (!component.selectedRangeStart)
24
+ return 'nsl-start';
25
+ const current = toDate(day);
26
+ const start = toDate(component.selectedRangeStart);
27
+ if (!component.selectedRangeEnd) {
28
+ if (current.getTime() === start.getTime())
29
+ return 'sl start';
30
+ if (component.hoveredDay) {
31
+ const hover = toDate(component.hoveredDay);
32
+ if (current.getTime() === hover.getTime() && hover < start)
33
+ return 'nsl-start';
34
+ }
35
+ return 'nsl-end';
36
+ }
37
+ const end = toDate(component.selectedRangeEnd);
38
+ if (current.getTime() === start.getTime())
39
+ return 'sl start';
40
+ if (current.getTime() === end.getTime())
41
+ return 'sl end';
42
+ if (current > start && current < end)
43
+ return 'sl range';
44
+ return 'nsl-start';
45
+ }
46
+ export function onSelectRageDays(component, day) {
47
+ if (!component.selectedRangeStart || component.selectedRangeEnd) {
48
+ component.selectedRangeStart = day;
49
+ component.selectedRangeEnd = null;
50
+ }
51
+ else {
52
+ const selectedDate = toDate(day);
53
+ const startDate = toDate(component.selectedRangeStart);
54
+ selectedDate >= startDate ? component.selectedRangeEnd = day : component.selectedRangeStart = day;
55
+ }
56
+ }
57
+ export function onApplyRageDate(component) {
58
+ const start = toDate(component.selectedRangeStart);
59
+ const end = toDate(component.selectedRangeEnd);
60
+ component.calendarResponse.emit([start, end]);
61
+ }
62
+ export function onHoverDay(component, day) {
63
+ if (component.selectedRangeEnd)
64
+ return;
65
+ component.hoveredDay = day;
66
+ }
67
+ export function onClearHover(component) {
68
+ component.hoveredDay = null;
69
+ }
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZ2UtZGF5cy1jYWxlbmRhci51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS1jYWxlbmRhci1uZXh0L2NvbXBvbmVudHMvZGF5LWNhbGVuZGFyL3JhbmdlLWRheXMtY2FsZW5kYXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFaEYsTUFBTSxVQUFVLFNBQVMsQ0FBQyxTQUErQixFQUFFLEdBQWlCO0lBQ3hFLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLElBQUksU0FBUyxDQUFDLGdCQUFnQixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVU7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUV2RyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDNUIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFbkQsSUFBSSxLQUFLLElBQUksS0FBSztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ2pDLE9BQU8sT0FBTyxHQUFHLEtBQUssSUFBSSxPQUFPLElBQUksS0FBSyxDQUFDO0FBQy9DLENBQUM7QUFFRCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsU0FBK0I7SUFDdkUsTUFBTSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsZUFBeUIsQ0FBQztJQUV6RCxJQUFJLEtBQUssWUFBWSxJQUFJLEVBQUU7UUFDdkIsU0FBUyxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENB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LFNBQStCO0lBQ3hELFNBQVMsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBQ2hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NhbGVuZGFyRGF0ZX0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci5tb2RhbFwiO1xuaW1wb3J0IHtEYXlDYWxlbmRhckNvbXBvbmVudH0gZnJvbSBcIi4vZGF5LWNhbGVuZGFyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtnZXRTdGFydERhdGUsIHRvQ2FsZW5kYXJEYXksIHRvRGF0ZX0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci51dGlsc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNQcmV2aWV3KGNvbXBvbmVudDogRGF5Q2FsZW5kYXJDb21wb25lbnQsIGRheTogQ2FsZW5kYXJEYXRlKTogYm9vbGVhbiB7XG4gICAgaWYgKCFjb21wb25lbnQuc2VsZWN0ZWRSYW5nZVN0YXJ0IHx8IGNvbXBvbmVudC5zZWxlY3RlZFJhbmdlRW5kIHx8ICFjb21wb25lbnQuaG92ZXJlZERheSkgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgY3VycmVudCA9IHRvRGF0ZShkYXkpO1xuICAgIGNvbnN0IGhvdmVyID0gdG9EYXRlKGNvbXBvbmVudC5ob3ZlcmVkRGF5KTtcbiAgICBjb25zdCBzdGFydCA9IHRvRGF0ZShjb21wb25lbnQuc2VsZWN0ZWRSYW5nZVN0YXJ0KTtcblxuICAgIGlmIChob3ZlciA8PSBzdGFydCkgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiBjdXJyZW50ID4gc3RhcnQgJiYgY3VycmVudCA8PSBob3Zlcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb2Nlc3NQcmVzZWxlY3RlZFJhbmdlRGF0ZShjb21wb25lbnQ6IERheUNhbGVuZGFyQ29tcG9uZW50KSB7XG4gICAgY29uc3QgW3N0YXJ0LCBlbmRdID0gY29tcG9uZW50LnByZVNlbGVjdGVkRGF0ZSBhcyBEYXRlW107XG5cbiAgICBpZiAoc3RhcnQgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICAgIGNvbXBvbmVudC5jdXJyZW50RGF0ZSA9IGdldFN0YXJ0RGF0ZShzdGFydCk7XG4gICAgICAgIGNvbXBvbmVudC5zZWxlY3RlZFJhbmdlU3RhcnQgPSB0b0NhbGVuZGFyRGF5KHN0YXJ0KTtcbiAgICB9XG5cbiAgICBpZiAoZW5kIGluc3RhbmNlb2YgRGF0ZSkgeyBjb21wb25lbnQuc2VsZWN0ZWRSYW5nZUVuZCA9IHRvQ2FsZW5kYXJEYXkoZW5kKTsgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmFuZ2VTZWxlY3Rpb25DbGFzcyhjb21wb25lbnQ6IERheUNhbGVuZGFyQ29tcG9uZW50LCBkYXk6IENhbGVuZGFyRGF0ZSk6IHN0cmluZyB7XG4gICAgaWYgKCFjb21wb25lbnQuc2VsZWN0ZWRSYW5nZVN0YXJ0KSByZXR1cm4gJ25zbC1zdGFydCc7XG5cbiAgICBjb25zdCBjdXJyZW50ID0gdG9EYXRlKGRheSk7XG4gICAgY29uc3Qgc3RhcnQgPSB0b0RhdGUoY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VTdGFydCk7XG5cbiAgICBpZiAoIWNvbXBvbmVudC5zZWxlY3RlZFJhbmdlRW5kKSB7XG4gICAgICAgIGlmIChjdXJyZW50LmdldFRpbWUoKSA9PT0gc3RhcnQuZ2V0VGltZSgpKSByZXR1cm4gJ3NsIHN0YXJ0JztcblxuICAgICAgICBpZiAoY29tcG9uZW50LmhvdmVyZWREYXkpIHtcbiAgICAgICAgICAgIGNvbnN0IGhvdmVyID0gdG9EYXRlKGNvbXBvbmVudC5ob3ZlcmVkRGF5KTtcbiAgICAgICAgICAgIGlmIChjdXJyZW50LmdldFRpbWUoKSA9PT0gaG92ZXIuZ2V0VGltZSgpICYmIGhvdmVyIDwgc3RhcnQpIHJldHVybiAnbnNsLXN0YXJ0JztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAnbnNsLWVuZCc7XG4gICAgfVxuXG4gICAgY29uc3QgZW5kID0gdG9EYXRlKGNvbXBvbmVudC5zZWxlY3RlZFJhbmdlRW5kKTtcblxuICAgIGlmIChjdXJyZW50LmdldFRpbWUoKSA9PT0gc3RhcnQuZ2V0VGltZSgpKSByZXR1cm4gJ3NsIHN0YXJ0JztcbiAgICBpZiAoY3VycmVudC5nZXRUaW1lKCkgPT09IGVuZC5nZXRUaW1lKCkpIHJldHVybiAnc2wgZW5kJztcbiAgICBpZiAoY3VycmVudCA+IHN0YXJ0ICYmIGN1cnJlbnQgPCBlbmQpIHJldHVybiAnc2wgcmFuZ2UnO1xuXG4gICAgcmV0dXJuICduc2wtc3RhcnQnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gb25TZWxlY3RSYWdlRGF5cyhjb21wb25lbnQ6IERheUNhbGVuZGFyQ29tcG9uZW50LCBkYXk6IENhbGVuZGFyRGF0ZSkge1xuICAgIGlmICghY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VTdGFydCB8fCBjb21wb25lbnQuc2VsZWN0ZWRSYW5nZUVuZCkge1xuICAgICAgICBjb21wb25lbnQuc2VsZWN0ZWRSYW5nZVN0YXJ0ID0gZGF5O1xuICAgICAgICBjb21wb25lbnQuc2VsZWN0ZWRSYW5nZUVuZCA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWREYXRlID0gdG9EYXRlKGRheSk7XG4gICAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IHRvRGF0ZShjb21wb25lbnQuc2VsZWN0ZWRSYW5nZVN0YXJ0KTtcbiAgICAgICAgc2VsZWN0ZWREYXRlID49IHN0YXJ0RGF0ZSA/IGNvbXBvbmVudC5zZWxlY3RlZFJhbmdlRW5kID0gZGF5IDogY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VTdGFydCA9IGRheTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBvbkFwcGx5UmFnZURhdGUoY29tcG9uZW50OiBEYXlDYWxlbmRhckNvbXBvbmVudCl7XG4gICAgY29uc3Qgc3RhcnQgPSB0b0RhdGUoY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VTdGFydCk7XG4gICAgY29uc3QgZW5kID10b0RhdGUoY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VFbmQpO1xuICAgIGNvbXBvbmVudC5jYWxlbmRhclJlc3BvbnNlLmVtaXQoW3N0YXJ0LCBlbmRdKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9uSG92ZXJEYXkoY29tcG9uZW50OiBEYXlDYWxlbmRhckNvbXBvbmVudCwgZGF5OiBDYWxlbmRhckRhdGUpOiB2b2lkIHtcbiAgICBpZiAoY29tcG9uZW50LnNlbGVjdGVkUmFuZ2VFbmQpIHJldHVybjtcbiAgICBjb21wb25lbnQuaG92ZXJlZERheSA9IGRheTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG9uQ2xlYXJIb3Zlcihjb21wb25lbnQ6IERheUNhbGVuZGFyQ29tcG9uZW50KTogdm9pZCB7XG4gICAgY29tcG9uZW50LmhvdmVyZWREYXkgPSBudWxsO1xufVxuXG4iXX0=
@@ -0,0 +1,113 @@
1
+ import { changeDate, getStartDate, toCalendarDay } from "../../shared/calendar.utils";
2
+ import { onClearHover, onHoverDay, onSelectRageDays, } from "../day-calendar/range-days-calendar.utils";
3
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
4
+ import { CALENDAR_I18N, DAYS_EN, DAYS_ES, MONTHS_SHORT_EN, MONTHS_SHORT_ES } from "../../shared/calendar.constants";
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "../../../gravity-icon/gravity-icon.component";
8
+ import * as i3 from "../day-calendar/day-calendar.component";
9
+ export class DualMonthCalendarComponent {
10
+ constructor() {
11
+ this.restart = false;
12
+ this.disabled = false;
13
+ this.language = 'en';
14
+ this.clearSelection = new EventEmitter();
15
+ this.calendarResponse = new EventEmitter();
16
+ this.currentDate = new Date();
17
+ this.showLeftCalendar = true;
18
+ this.showRightCalendar = true;
19
+ this.nextMonth = changeDate(1, this.currentDate, true);
20
+ this.Date = Date;
21
+ this.changeDate = changeDate;
22
+ this.onSelectRageDays = onSelectRageDays;
23
+ }
24
+ get i18n() { return CALENDAR_I18N[this.language]; }
25
+ get daysList() { return this.language === 'en' ? DAYS_EN : DAYS_ES; }
26
+ get monthsShortList() { return this.language === 'en' ? MONTHS_SHORT_EN : MONTHS_SHORT_ES; }
27
+ ngOnChanges(changes) {
28
+ const shouldRestart = changes['restart'] && this.restart;
29
+ const shouldProcessPreSelected = changes['preSelectedDate'] && this.preSelectedDate;
30
+ if (shouldRestart || shouldProcessPreSelected) {
31
+ this.processPreselectedDate();
32
+ }
33
+ }
34
+ processPreselectedDate() {
35
+ this.showLeftCalendar = true;
36
+ this.showRightCalendar = true;
37
+ if (Array.isArray(this.preSelectedDate)) {
38
+ const [start, end] = this.preSelectedDate;
39
+ if (start instanceof Date) {
40
+ this.currentDate = getStartDate(start);
41
+ this.nextMonth = changeDate(1, this.currentDate, true);
42
+ setTimeout(() => {
43
+ this.leftCalendar.selectedRangeStart = toCalendarDay(start);
44
+ this.rightCalendar.selectedRangeStart = toCalendarDay(start);
45
+ });
46
+ }
47
+ if (end instanceof Date) {
48
+ setTimeout(() => {
49
+ this.leftCalendar.selectedRangeEnd = toCalendarDay(end);
50
+ this.rightCalendar.selectedRangeEnd = toCalendarDay(end);
51
+ });
52
+ }
53
+ }
54
+ }
55
+ onChangeMonth(calendar, offset) {
56
+ const targetCalendar = calendar === 'left' ? this.rightCalendar : this.leftCalendar;
57
+ targetCalendar.currentDate = changeDate(offset, targetCalendar.currentDate, true);
58
+ }
59
+ getFormattedDate(day) {
60
+ return this.daysList[day.weekDay] + ', ' + day.day + ' ' + this.monthsShortList[day.monthYear.month];
61
+ }
62
+ handleHoverDay(day) {
63
+ onHoverDay(this.leftCalendar, day);
64
+ }
65
+ handleClearHover() {
66
+ onClearHover(this.leftCalendar);
67
+ }
68
+ handleApplyResponse($event) {
69
+ this.calendarResponse.emit($event);
70
+ }
71
+ handleClearSelection() {
72
+ this.clearSelection.emit();
73
+ this.leftCalendar.clearSelectedDate();
74
+ }
75
+ handlerChangeMonthYearResponse($event, origin) {
76
+ if ($event instanceof Date) {
77
+ if (origin === 'left') {
78
+ this.showRightCalendar = true;
79
+ setTimeout(() => { this.rightCalendar.currentDate = changeDate(1, $event, true); });
80
+ }
81
+ else {
82
+ this.showLeftCalendar = true;
83
+ setTimeout(() => { this.leftCalendar.currentDate = changeDate(-1, $event, true); });
84
+ }
85
+ }
86
+ }
87
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DualMonthCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
88
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DualMonthCalendarComponent, selector: "dual-month-calendar", inputs: { restart: "restart", disabled: "disabled", language: "language", preSelectedDate: "preSelectedDate" }, outputs: { clearSelection: "clearSelection", calendarResponse: "response" }, viewQueries: [{ propertyName: "leftCalendar", first: true, predicate: ["leftCalendar"], descendants: true }, { propertyName: "rightCalendar", first: true, predicate: ["rightCalendar"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"showRightCalendar && showLeftCalendar\" class=\"date-select-indicator\">\n <p>\n <span class=\"hr-title\" [ngClass]=\"leftCalendar?.selectedRangeStart ? 'sm-regular' : 'sm-bold'\">\n {{leftCalendar?.selectedRangeStart ? getFormattedDate(leftCalendar.selectedRangeStart) : i18n.start_date}} </span>\n\n <gravity-icon [iconSize]=\"'md-16'\" [size]=\"'md'\" [iconName]=\"'swaps-arrow-right'\"></gravity-icon>\n\n <span class=\"hr-title\" [ngClass]=\"leftCalendar?.selectedRangeStart && !leftCalendar.selectedRangeEnd ? 'sm-bold' : 'sm-regular'\">\n {{leftCalendar?.selectedRangeEnd ? getFormattedDate(leftCalendar.selectedRangeEnd) : i18n.end_date}} </span>\n </p>\n</div>\n\n<div class=\"dual-calendar-container\">\n\n <day-calendar #leftCalendar *ngIf=\"showLeftCalendar\" [range]=\"true\" [language]=\"language\" [disabled]=\"disabled\"\n [navType]=\"'prev'\" [actionsSection]=\"false\" [currentDate]=\"currentDate\"\n (changeMonthYearResponse)=\"handlerChangeMonthYearResponse($event, 'left')\"\n (selectedRage)=\"onSelectRageDays(rightCalendar, $event)\"\n (changeMonth)=\"onChangeMonth('left', $event)\"\n (openIntegratedCalendar)=\"showRightCalendar = false\"> </day-calendar>\n\n <day-calendar #rightCalendar *ngIf=\"showRightCalendar\" [range]=\"true\" [language]=\"language\" [disabled]=\"disabled\"\n [navType]=\"'next'\" [actionsSection]=\"true\" [currentDate]=\"nextMonth\"\n (changeMonthYearResponse)=\"handlerChangeMonthYearResponse($event, 'right')\"\n (selectedRage)=\"onSelectRageDays(leftCalendar, $event)\"\n (changeMonth)=\"onChangeMonth('right', $event)\"\n (openIntegratedCalendar)=\"showLeftCalendar = false\"\n (clearSelection)=\"handleClearSelection()\"\n (response)=\"handleApplyResponse($event)\"\n (hoverDay)=\"handleHoverDay($event)\"\n (clearHover)=\"handleClearHover()\"> </day-calendar>\n</div>", styles: [".date-select-indicator{height:27px;display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--gravity-spacing-sm);margin-bottom:var(--gravity-spacing-md);border-bottom:2px solid var(--divider-menu-active-primary)}.date-select-indicator p{display:flex;align-items:center;gap:var(--gravity-spacing-xs);color:var(--bg-calendar-nav-primary)}.dual-calendar-container{display:flex;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-md)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "component", type: i3.DayCalendarComponent, selector: "day-calendar", inputs: ["preSelectedYear", "preSelectedMonth", "range", "restart", "disabled", "language", "preSelectedDate", "actionsSection", "currentDate", "navType"], outputs: ["clearHover", "clearSelection", "changeMonth", "hoverDay", "openIntegratedCalendar", "selectedRage", "changeMonthYearResponse", "response"] }] }); }
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DualMonthCalendarComponent, decorators: [{
91
+ type: Component,
92
+ args: [{ selector: 'dual-month-calendar', template: "<div *ngIf=\"showRightCalendar && showLeftCalendar\" class=\"date-select-indicator\">\n <p>\n <span class=\"hr-title\" [ngClass]=\"leftCalendar?.selectedRangeStart ? 'sm-regular' : 'sm-bold'\">\n {{leftCalendar?.selectedRangeStart ? getFormattedDate(leftCalendar.selectedRangeStart) : i18n.start_date}} </span>\n\n <gravity-icon [iconSize]=\"'md-16'\" [size]=\"'md'\" [iconName]=\"'swaps-arrow-right'\"></gravity-icon>\n\n <span class=\"hr-title\" [ngClass]=\"leftCalendar?.selectedRangeStart && !leftCalendar.selectedRangeEnd ? 'sm-bold' : 'sm-regular'\">\n {{leftCalendar?.selectedRangeEnd ? getFormattedDate(leftCalendar.selectedRangeEnd) : i18n.end_date}} </span>\n </p>\n</div>\n\n<div class=\"dual-calendar-container\">\n\n <day-calendar #leftCalendar *ngIf=\"showLeftCalendar\" [range]=\"true\" [language]=\"language\" [disabled]=\"disabled\"\n [navType]=\"'prev'\" [actionsSection]=\"false\" [currentDate]=\"currentDate\"\n (changeMonthYearResponse)=\"handlerChangeMonthYearResponse($event, 'left')\"\n (selectedRage)=\"onSelectRageDays(rightCalendar, $event)\"\n (changeMonth)=\"onChangeMonth('left', $event)\"\n (openIntegratedCalendar)=\"showRightCalendar = false\"> </day-calendar>\n\n <day-calendar #rightCalendar *ngIf=\"showRightCalendar\" [range]=\"true\" [language]=\"language\" [disabled]=\"disabled\"\n [navType]=\"'next'\" [actionsSection]=\"true\" [currentDate]=\"nextMonth\"\n (changeMonthYearResponse)=\"handlerChangeMonthYearResponse($event, 'right')\"\n (selectedRage)=\"onSelectRageDays(leftCalendar, $event)\"\n (changeMonth)=\"onChangeMonth('right', $event)\"\n (openIntegratedCalendar)=\"showLeftCalendar = false\"\n (clearSelection)=\"handleClearSelection()\"\n (response)=\"handleApplyResponse($event)\"\n (hoverDay)=\"handleHoverDay($event)\"\n (clearHover)=\"handleClearHover()\"> </day-calendar>\n</div>", styles: [".date-select-indicator{height:27px;display:flex;align-self:stretch;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:var(--gravity-spacing-sm);margin-bottom:var(--gravity-spacing-md);border-bottom:2px solid var(--divider-menu-active-primary)}.date-select-indicator p{display:flex;align-items:center;gap:var(--gravity-spacing-xs);color:var(--bg-calendar-nav-primary)}.dual-calendar-container{display:flex;align-items:center;align-self:stretch;justify-content:center;gap:var(--gravity-spacing-md)}\n"] }]
93
+ }], propDecorators: { restart: [{
94
+ type: Input
95
+ }], disabled: [{
96
+ type: Input
97
+ }], language: [{
98
+ type: Input
99
+ }], preSelectedDate: [{
100
+ type: Input
101
+ }], clearSelection: [{
102
+ type: Output
103
+ }], calendarResponse: [{
104
+ type: Output,
105
+ args: ['response']
106
+ }], leftCalendar: [{
107
+ type: ViewChild,
108
+ args: ['leftCalendar']
109
+ }], rightCalendar: [{
110
+ type: ViewChild,
111
+ args: ['rightCalendar']
112
+ }] } });
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVhbC1tb250aC1jYWxlbmRhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItbmV4dC9jb21wb25lbnRzL2R1YWwtbW9udGgtY2FsZW5kYXIvZHVhbC1tb250aC1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItbmV4dC9jb21wb25lbnRzL2R1YWwtbW9udGgtY2FsZW5kYXIvZHVhbC1tb250aC1jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRixPQUFPLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsR0FBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBQyxNQUFNLGlDQUFpQyxDQUFDOzs7OztBQU9sSCxNQUFNLE9BQU8sMEJBQTBCO0lBTHZDO1FBTWtCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixhQUFRLEdBQWdCLElBQUksQ0FBQztRQUc1QixtQkFBYyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3BELHFCQUFnQixHQUFnQyxJQUFJLFlB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Q0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBLENBQUEsQ0FBQyxDQUFDLENBQUE7YUFDakY7U0FDRjtJQUNILENBQUM7K0dBeEZVLDBCQUEwQjttR0FBMUIsMEJBQTBCLDRkQ1p2QyxzbEVBK0JNOzs0RkRuQk8sMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQjs4QkFLZixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxlQUFlO3NCQUE5QixLQUFLO2dCQUVXLGNBQWM7c0JBQTlCLE1BQU07Z0JBQ29CLGdCQUFnQjtzQkFBMUMsTUFBTTt1QkFBQyxVQUFVO2dCQUVTLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFDRyxhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NhbGVuZGFyRGF0ZX0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci5tb2RhbFwiO1xuaW1wb3J0IHtEYXlDYWxlbmRhckNvbXBvbmVudH0gZnJvbSBcIi4uL2RheS1jYWxlbmRhci9kYXktY2FsZW5kYXIuY29tcG9uZW50XCI7XG5pbXBvcnQge2NoYW5nZURhdGUsIGdldFN0YXJ0RGF0ZSwgdG9DYWxlbmRhckRheX0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci51dGlsc1wiO1xuaW1wb3J0IHtvbkNsZWFySG92ZXIsIG9uSG92ZXJEYXksIG9uU2VsZWN0UmFnZURheXMsfSBmcm9tIFwiLi4vZGF5LWNhbGVuZGFyL3JhbmdlLWRheXMtY2FsZW5kYXIudXRpbHNcIjtcbmltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q0FMRU5EQVJfSTE4TiwgREFZU19FTiwgREFZU19FUywgTU9OVEhTX1NIT1JUX0VOLCBNT05USFNfU0hPUlRfRVN9IGZyb20gXCIuLi8uLi9zaGFyZWQvY2FsZW5kYXIuY29uc3RhbnRzXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2R1YWwtbW9udGgtY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZHVhbC1tb250aC1jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2R1YWwtbW9udGgtY2FsZW5kYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEdWFsTW9udGhDYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXN0YXJ0OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgbGFuZ3VhZ2U6ICdlcycgfCAnZW4nID0gJ2VuJztcbiAgQElucHV0KCkgcHVibGljIHByZVNlbGVjdGVkRGF0ZTogRGF0ZSB8IERhdGVbXTtcblxuICBAT3V0cHV0KCkgcHVibGljIGNsZWFyU2VsZWN0aW9uOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoJ3Jlc3BvbnNlJykgcHVibGljIGNhbGVuZGFyUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjxEYXRlW10gfCBEYXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZVtdIHwgRGF0ZT4oKTtcblxuICBAVmlld0NoaWxkKCdsZWZ0Q2FsZW5kYXInKSBsZWZ0Q2FsZW5kYXI6IERheUNhbGVuZGFyQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKCdyaWdodENhbGVuZGFyJykgcmlnaHRDYWxlbmRhcjogRGF5Q2FsZW5kYXJDb21wb25lbnQ7XG5cbiAgcHVibGljIGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcbiAgcHVibGljIHNob3dMZWZ0Q2FsZW5kYXI6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgc2hvd1JpZ2h0Q2FsZW5kYXI6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgbmV4dE1vbnRoID0gY2hhbmdlRGF0ZSgxLCB0aGlzLmN1cnJlbnREYXRlLCB0cnVlKTtcblxuICBwdWJsaWMgZ2V0IGkxOG4oKSB7IHJldHVybiBDQUxFTkRBUl9JMThOW3RoaXMubGFuZ3VhZ2VdOyB9XG4gIHB1YmxpYyBnZXQgZGF5c0xpc3QoKSB7IHJldHVybiB0aGlzLmxhbmd1YWdlID09PSAnZW4nID8gREFZU19FTiA6IERBWVNfRVM7IH1cbiAgcHVibGljIGdldCBtb250aHNTaG9ydExpc3QoKSB7IHJldHVybiB0aGlzLmxhbmd1YWdlID09PSAnZW4nID8gTU9OVEhTX1NIT1JUX0VOIDogTU9OVEhTX1NIT1JUX0VTOyB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IHNob3VsZFJlc3RhcnQgPSBjaGFuZ2VzWydyZXN0YXJ0J10gJiYgdGhpcy5yZXN0YXJ0O1xuICAgIGNvbnN0IHNob3VsZFByb2Nlc3NQcmVTZWxlY3RlZCA9IGNoYW5nZXNbJ3ByZVNlbGVjdGVkRGF0ZSddICYmIHRoaXMucHJlU2VsZWN0ZWREYXRlO1xuICAgIGlmIChzaG91bGRSZXN0YXJ0IHx8IHNob3VsZFByb2Nlc3NQcmVTZWxlY3RlZCkgeyB0aGlzLnByb2Nlc3NQcmVzZWxlY3RlZERhdGUoKTsgfVxuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzUHJlc2VsZWN0ZWREYXRlKCk6IHZvaWQge1xuICAgIHRoaXMuc2hvd0xlZnRDYWxlbmRhciA9IHRydWU7XG4gICAgdGhpcy5zaG93UmlnaHRDYWxlbmRhciA9IHRydWU7XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLnByZVNlbGVjdGVkRGF0ZSkpIHtcbiAgICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IHRoaXMucHJlU2VsZWN0ZWREYXRlIGFzIERhdGVbXTtcblxuICAgICAgaWYgKHN0YXJ0IGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICB0aGlzLmN1cnJlbnREYXRlID0gZ2V0U3RhcnREYXRlKHN0YXJ0KTtcbiAgICAgICAgdGhpcy5uZXh0TW9udGggPSBjaGFuZ2VEYXRlKDEsIHRoaXMuY3VycmVudERhdGUsIHRydWUpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmxlZnRDYWxlbmRhci5zZWxlY3RlZFJhbmdlU3RhcnQgPSB0b0NhbGVuZGFyRGF5KHN0YXJ0KTtcbiAgICAgICAgICB0aGlzLnJpZ2h0Q2FsZW5kYXIuc2VsZWN0ZWRSYW5nZVN0YXJ0ID0gdG9DYWxlbmRhckRheShzdGFydCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoZW5kIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLmxlZnRDYWxlbmRhci5zZWxlY3RlZFJhbmdlRW5kID0gdG9DYWxlbmRhckRheShlbmQpO1xuICAgICAgICAgIHRoaXMucmlnaHRDYWxlbmRhci5zZWxlY3RlZFJhbmdlRW5kID0gdG9DYWxlbmRhckRheShlbmQpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25DaGFuZ2VNb250aChjYWxlbmRhcjogJ2xlZnQnIHwgJ3JpZ2h0Jywgb2Zmc2V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXRDYWxlbmRhciA9IGNhbGVuZGFyID09PSAnbGVmdCcgPyB0aGlzLnJpZ2h0Q2FsZW5kYXIgOiB0aGlzLmxlZnRDYWxlbmRhcjtcbiAgICB0YXJnZXRDYWxlbmRhci5jdXJyZW50RGF0ZSA9IGNoYW5nZURhdGUob2Zmc2V0LCB0YXJnZXRDYWxlbmRhci5jdXJyZW50RGF0ZSwgdHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Rm9ybWF0dGVkRGF0ZShkYXk6IENhbGVuZGFyRGF0ZSkge1xuICAgIHJldHVybiB0aGlzLmRheXNMaXN0W2RheS53ZWVrRGF5XSArICcsICcgKyBkYXkuZGF5ICsgJyAnICsgdGhpcy5tb250aHNTaG9ydExpc3RbZGF5Lm1vbnRoWWVhci5tb250aF07XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlSG92ZXJEYXkoZGF5OiBDYWxlbmRhckRhdGUpIHtcbiAgICBvbkhvdmVyRGF5KHRoaXMubGVmdENhbGVuZGFyLCBkYXkpO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZUNsZWFySG92ZXIoKXtcbiAgICBvbkNsZWFySG92ZXIodGhpcy5sZWZ0Q2FsZW5kYXIpO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZUFwcGx5UmVzcG9uc2UoJGV2ZW50OiBEYXRlIHwgRGF0ZVtdKTogdm9pZCB7XG4gICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVDbGVhclNlbGVjdGlvbigpe1xuICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24uZW1pdCgpO1xuICAgIHRoaXMubGVmdENhbGVuZGFyLmNsZWFyU2VsZWN0ZWREYXRlKCk7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlckNoYW5nZU1vbnRoWWVhclJlc3BvbnNlKCRldmVudDogRGF0ZSB8IERhdGVbXSwgb3JpZ2luOiAnbGVmdCcgfCAncmlnaHQnKXtcbiAgICBpZigkZXZlbnQgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICBpZihvcmlnaW4gPT09ICdsZWZ0Jykge1xuICAgICAgICB0aGlzLnNob3dSaWdodENhbGVuZGFyID0gdHJ1ZTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7dGhpcy5yaWdodENhbGVuZGFyLmN1cnJlbnREYXRlID0gY2hhbmdlRGF0ZSgxLCAkZXZlbnQsIHRydWUpfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2hvd0xlZnRDYWxlbmRhciA9IHRydWU7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge3RoaXMubGVmdENhbGVuZGFyLmN1cnJlbnREYXRlID0gY2hhbmdlRGF0ZSgtMSwgJGV2ZW50LCB0cnVlKX0pXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IERhdGUgPSBEYXRlO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hhbmdlRGF0ZSA9IGNoYW5nZURhdGU7XG4gIHByb3RlY3RlZCByZWFkb25seSBvblNlbGVjdFJhZ2VEYXlzID0gb25TZWxlY3RSYWdlRGF5cztcbn1cbiIsIjxkaXYgKm5nSWY9XCJzaG93UmlnaHRDYWxlbmRhciAmJiBzaG93TGVmdENhbGVuZGFyXCIgY2xhc3M9XCJkYXRlLXNlbGVjdC1pbmRpY2F0b3JcIj5cbiAgICA8cD5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJoci10aXRsZVwiICBbbmdDbGFzc109XCJsZWZ0Q2FsZW5kYXI/LnNlbGVjdGVkUmFuZ2VTdGFydCA/ICdzbS1yZWd1bGFyJyA6ICdzbS1ib2xkJ1wiPlxuICAgICAgICAgICAge3tsZWZ0Q2FsZW5kYXI/LnNlbGVjdGVkUmFuZ2VTdGFydCA/IGdldEZvcm1hdHRlZERhdGUobGVmdENhbGVuZGFyLnNlbGVjdGVkUmFuZ2VTdGFydCkgOiBpMThuLnN0YXJ0X2RhdGV9fSA8L3NwYW4+XG5cbiAgICAgICAgPGdyYXZpdHktaWNvbiBbaWNvblNpemVdPVwiJ21kLTE2J1wiIFtzaXplXT1cIidtZCdcIiBbaWNvbk5hbWVdPVwiJ3N3YXBzLWFycm93LXJpZ2h0J1wiPjwvZ3Jhdml0eS1pY29uPlxuXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaHItdGl0bGVcIiAgW25nQ2xhc3NdPVwibGVmdENhbGVuZGFyPy5zZWxlY3RlZFJhbmdlU3RhcnQgJiYgIWxlZnRDYWxlbmRhci5zZWxlY3RlZFJhbmdlRW5kID8gJ3NtLWJvbGQnIDogJ3NtLXJlZ3VsYXInXCI+XG4gICAgICAgICAgICB7e2xlZnRDYWxlbmRhcj8uc2VsZWN0ZWRSYW5nZUVuZCA/IGdldEZvcm1hdHRlZERhdGUobGVmdENhbGVuZGFyLnNlbGVjdGVkUmFuZ2VFbmQpIDogaTE4bi5lbmRfZGF0ZX19IDwvc3Bhbj5cbiAgICA8L3A+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImR1YWwtY2FsZW5kYXItY29udGFpbmVyXCI+XG5cbiAgICA8ZGF5LWNhbGVuZGFyICNsZWZ0Q2FsZW5kYXIgKm5nSWY9XCJzaG93TGVmdENhbGVuZGFyXCIgW3JhbmdlXT1cInRydWVcIiBbbGFuZ3VhZ2VdPVwibGFuZ3VhZ2VcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgW25hdlR5cGVdPVwiJ3ByZXYnXCIgW2FjdGlvbnNTZWN0aW9uXT1cImZhbHNlXCIgW2N1cnJlbnREYXRlXT1cImN1cnJlbnREYXRlXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2VNb250aFllYXJSZXNwb25zZSk9XCJoYW5kbGVyQ2hhbmdlTW9udGhZZWFyUmVzcG9uc2UoJGV2ZW50LCAnbGVmdCcpXCJcbiAgICAgICAgICAgICAgICAgIChzZWxlY3RlZFJhZ2UpPVwib25TZWxlY3RSYWdlRGF5cyhyaWdodENhbGVuZGFyLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2VNb250aCk9XCJvbkNoYW5nZU1vbnRoKCdsZWZ0JywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAob3BlbkludGVncmF0ZWRDYWxlbmRhcik9XCJzaG93UmlnaHRDYWxlbmRhciA9IGZhbHNlXCI+IDwvZGF5LWNhbGVuZGFyPlxuXG4gICAgPGRheS1jYWxlbmRhciAjcmlnaHRDYWxlbmRhciAqbmdJZj1cInNob3dSaWdodENhbGVuZGFyXCIgW3JhbmdlXT1cInRydWVcIiBbbGFuZ3VhZ2VdPVwibGFuZ3VhZ2VcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgW25hdlR5cGVdPVwiJ25leHQnXCIgW2FjdGlvbnNTZWN0aW9uXT1cInRydWVcIiBbY3VycmVudERhdGVdPVwibmV4dE1vbnRoXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2VNb250aFllYXJSZXNwb25zZSk9XCJoYW5kbGVyQ2hhbmdlTW9udGhZZWFyUmVzcG9uc2UoJGV2ZW50LCAncmlnaHQnKVwiXG4gICAgICAgICAgICAgICAgICAoc2VsZWN0ZWRSYWdlKT1cIm9uU2VsZWN0UmFnZURheXMobGVmdENhbGVuZGFyLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2VNb250aCk9XCJvbkNoYW5nZU1vbnRoKCdyaWdodCcsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgKG9wZW5JbnRlZ3JhdGVkQ2FsZW5kYXIpPVwic2hvd0xlZnRDYWxlbmRhciA9IGZhbHNlXCJcbiAgICAgICAgICAgICAgICAgIChjbGVhclNlbGVjdGlvbik9XCJoYW5kbGVDbGVhclNlbGVjdGlvbigpXCJcbiAgICAgICAgICAgICAgICAgIChyZXNwb25zZSk9XCJoYW5kbGVBcHBseVJlc3BvbnNlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgKGhvdmVyRGF5KT1cImhhbmRsZUhvdmVyRGF5KCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgKGNsZWFySG92ZXIpPVwiaGFuZGxlQ2xlYXJIb3ZlcigpXCI+IDwvZGF5LWNhbGVuZGFyPlxuPC9kaXY+Il19
@@ -0,0 +1,100 @@
1
+ import { changeDate, getStartDate } from "../../shared/calendar.utils";
2
+ import { Component, EventEmitter, Input, Output, } from '@angular/core';
3
+ import { CALENDAR_I18N, MONTHS_EN, MONTHS_SHORT_EN, MONTHS_ES, MONTHS_SHORT_ES } from "../../shared/calendar.constants";
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../../../gravity-button/gravity-button.component";
7
+ import * as i3 from "../../../gravity-icon/gravity-icon.component";
8
+ import * as i4 from "../../../gravity-link/gravity-link.component";
9
+ import * as i5 from "../../../gravity-dropdown-label/gravity-dropdown-label.component";
10
+ export class MonthCalendarComponent {
11
+ constructor() {
12
+ this.restart = false;
13
+ this.disabled = false;
14
+ this.language = 'en';
15
+ this.actionsSection = true;
16
+ this.integratedMode = false;
17
+ this.clearSelection = new EventEmitter();
18
+ this.calendarResponse = new EventEmitter();
19
+ this.currentDate = new Date();
20
+ this.changeDate = changeDate;
21
+ }
22
+ get i18n() { return CALENDAR_I18N[this.language]; }
23
+ get monthsList() { return this.language === 'en' ? MONTHS_EN : MONTHS_ES; }
24
+ get monthsShortList() { return this.language === 'en' ? MONTHS_SHORT_EN : MONTHS_SHORT_ES; }
25
+ ngOnChanges(changes) {
26
+ const shouldRestart = changes['restart'] && this.restart;
27
+ const shouldProcessPreSelected = changes['preSelectedDate'] && this.preSelectedDate;
28
+ if (shouldRestart || shouldProcessPreSelected) {
29
+ this.processPreselectedDate();
30
+ }
31
+ }
32
+ trackByMonth(_, month) {
33
+ return `${month.year}-${month.month}`;
34
+ }
35
+ processPreselectedDate() {
36
+ if (this.preSelectedDate instanceof Date) {
37
+ this.currentDate = getStartDate(this.preSelectedDate);
38
+ this.selectedMonth = {
39
+ month: this.preSelectedDate.getMonth(),
40
+ year: this.preSelectedDate.getFullYear()
41
+ };
42
+ }
43
+ }
44
+ onSelectMonth(month) {
45
+ this.selectedMonth = month;
46
+ this.currentDate = new Date(month.year, month.month, 1);
47
+ this.calendarResponse.emit(this.currentDate);
48
+ return;
49
+ }
50
+ getMonthSelectionClass(month) {
51
+ if (this.selectedMonth && this.selectedMonth.month === month.month &&
52
+ this.selectedMonth.year === month.year) {
53
+ return 'selected';
54
+ }
55
+ if (new Date().getMonth() === month.month &&
56
+ new Date().getFullYear() === month.year) {
57
+ return 'current';
58
+ }
59
+ return '';
60
+ }
61
+ clearSelectedMonth() {
62
+ this.selectedMonth = null;
63
+ this.clearSelection.emit();
64
+ }
65
+ applySelectedMonth() {
66
+ const date = new Date(this.selectedMonth.year, this.selectedMonth.month);
67
+ this.calendarResponse.emit(date);
68
+ }
69
+ getYearMonthsList() {
70
+ const months = [];
71
+ for (let i = 0; i < 12; i++) {
72
+ months.push({ month: i, year: this.currentDate.getFullYear() });
73
+ }
74
+ return months;
75
+ }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MonthCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MonthCalendarComponent, selector: "month-calendar", inputs: { restart: "restart", disabled: "disabled", language: "language", preSelectedDate: "preSelectedDate", actionsSection: "actionsSection", integratedMode: "integratedMode" }, outputs: { clearSelection: "clearSelection", calendarResponse: "response" }, usesOnChanges: true, ngImport: i0, template: "<section class=\"gravity-calendar-header\">\n <div class=\"header-container\">\n <div *ngIf=\"!integratedMode\" class=\"previous-button\" (click)=\"currentDate = changeDate(-1, currentDate, false)\">\n <gravity-icon [style.--icon-color]=\"'var(--text-highlight-primary)'\" [iconName]=\"'arrow-left'\" [iconSize]=\"'sm-12'\" > </gravity-icon>\n </div>\n\n <div class=\"year-label\">\n <gravity-dropdown-label [state]=\"integratedMode ? 'active' : 'inactive'\" [fontClass]=\"'hr-title sm-bold'\" [size]=\"'sm'\"\n [label]=\"integratedMode ? monthsList[currentDate.getMonth()] : currentDate.getFullYear().toString()\"\n [isOpen]=\"integratedMode\" (onClickLabel)=\"calendarResponse.emit(currentDate)\" > </gravity-dropdown-label>\n </div>\n\n <div *ngIf=\"!integratedMode\" class=\"next-button\" (click)=\"currentDate = changeDate(1, currentDate, false)\">\n <gravity-icon [style.--icon-color]=\"'var(--text-highlight-primary)'\" [iconName]=\"'arrow-right'\" [iconSize]=\"'sm-12'\"> </gravity-icon>\n </div>\n </div>\n\n <div class=\"separator-line\"></div>\n</section>\n\n<section class=\"gravity-calendar-body\">\n <div class=\"items-table\">\n <span class=\"hr-body sm-regular item\" *ngFor=\"let month of getYearMonthsList(), trackBy: trackByMonth\"\n [ngClass]=\"disabled ? 'disabled' : getMonthSelectionClass(month)\" (click)=\"onSelectMonth(month)\">\n {{ monthsShortList[month.month] }} </span>\n </div>\n\n <div *ngIf=\"actionsSection\" class=\"action-section\" >\n <gravity-link [linkText]=\"i18n.clear\" [state]=\"!selectedMonth ? 'disabled' : 'active'\" (click)=\"clearSelectedMonth()\"></gravity-link>\n <gravity-button [size]=\"'sm'\" [type]=\"'tertiary'\" [disabled]=\"!selectedMonth\" (click)=\"applySelectedMonth()\">{{i18n.apply}}</gravity-button>\n </div>\n</section>", styles: [":root{--gravity-spacing-none: 0;--gravity-spacing-xxs: .25rem;--gravity-spacing-xs: .5rem;--gravity-spacing-sm: 1rem;--gravity-spacing-md: 1.5rem;--gravity-spacing-lg: 2rem;--gravity-spacing-xl: 2.5rem;--gravity-spacing-xxl: 3rem;--gravity-spacing-xxxl: 4rem;--gravity-spacing-xxxxl: 6rem;--gravity-spacing-xxxxxl: 12rem}.gravity-padding-none{padding:0!important}.gravity-padding-top-none{padding-top:0!important}.gravity-padding-bottom-none{padding-bottom:0!important}.gravity-padding-left-none{padding-left:0!important}.gravity-padding-right-none{padding-right:0!important}.gravity-padding-block-none{padding-block:0!important}.gravity-padding-inline-none{padding-inline:0!important}.gravity-padding-xxs{padding:.25rem!important}.gravity-padding-top-xxs{padding-top:.25rem!important}.gravity-padding-bottom-xxs{padding-bottom:.25rem!important}.gravity-padding-left-xxs{padding-left:.25rem!important}.gravity-padding-right-xxs{padding-right:.25rem!important}.gravity-padding-block-xxs{padding-block:.25rem!important}.gravity-padding-inline-xxs{padding-inline:.25rem!important}.gravity-padding-xs{padding:.5rem!important}.gravity-padding-top-xs{padding-top:.5rem!important}.gravity-padding-bottom-xs{padding-bottom:.5rem!important}.gravity-padding-left-xs{padding-left:.5rem!important}.gravity-padding-right-xs{padding-right:.5rem!important}.gravity-padding-block-xs{padding-block:.5rem!important}.gravity-padding-inline-xs{padding-inline:.5rem!important}.gravity-padding-sm{padding:1rem!important}.gravity-padding-top-sm{padding-top:1rem!important}.gravity-padding-bottom-sm{padding-bottom:1rem!important}.gravity-padding-left-sm{padding-left:1rem!important}.gravity-padding-right-sm{padding-right:1rem!important}.gravity-padding-block-sm{padding-block:1rem!important}.gravity-padding-inline-sm{padding-inline:1rem!important}.gravity-padding-md{padding:1.5rem!important}.gravity-padding-top-md{padding-top:1.5rem!important}.gravity-padding-bottom-md{padding-bottom:1.5rem!important}.gravity-padding-left-md{padding-left:1.5rem!important}.gravity-padding-right-md{padding-right:1.5rem!important}.gravity-padding-block-md{padding-block:1.5rem!important}.gravity-padding-inline-md{padding-inline:1.5rem!important}.gravity-padding-lg{padding:2rem!important}.gravity-padding-top-lg{padding-top:2rem!important}.gravity-padding-bottom-lg{padding-bottom:2rem!important}.gravity-padding-left-lg{padding-left:2rem!important}.gravity-padding-right-lg{padding-right:2rem!important}.gravity-padding-block-lg{padding-block:2rem!important}.gravity-padding-inline-lg{padding-inline:2rem!important}.gravity-padding-xl{padding:2.5rem!important}.gravity-padding-top-xl{padding-top:2.5rem!important}.gravity-padding-bottom-xl{padding-bottom:2.5rem!important}.gravity-padding-left-xl{padding-left:2.5rem!important}.gravity-padding-right-xl{padding-right:2.5rem!important}.gravity-padding-block-xl{padding-block:2.5rem!important}.gravity-padding-inline-xl{padding-inline:2.5rem!important}.gravity-padding-xxl{padding:3rem!important}.gravity-padding-top-xxl{padding-top:3rem!important}.gravity-padding-bottom-xxl{padding-bottom:3rem!important}.gravity-padding-left-xxl{padding-left:3rem!important}.gravity-padding-right-xxl{padding-right:3rem!important}.gravity-padding-block-xxl{padding-block:3rem!important}.gravity-padding-inline-xxl{padding-inline:3rem!important}.gravity-padding-xxxl{padding:4rem!important}.gravity-padding-top-xxxl{padding-top:4rem!important}.gravity-padding-bottom-xxxl{padding-bottom:4rem!important}.gravity-padding-left-xxxl{padding-left:4rem!important}.gravity-padding-right-xxxl{padding-right:4rem!important}.gravity-padding-block-xxxl{padding-block:4rem!important}.gravity-padding-inline-xxxl{padding-inline:4rem!important}.gravity-padding-xxxxl{padding:6rem!important}.gravity-padding-top-xxxxl{padding-top:6rem!important}.gravity-padding-bottom-xxxxl{padding-bottom:6rem!important}.gravity-padding-left-xxxxl{padding-left:6rem!important}.gravity-padding-right-xxxxl{padding-right:6rem!important}.gravity-padding-block-xxxxl{padding-block:6rem!important}.gravity-padding-inline-xxxxl{padding-inline:6rem!important}.gravity-padding-xxxxxl{padding:12rem!important}.gravity-padding-top-xxxxxl{padding-top:12rem!important}.gravity-padding-bottom-xxxxxl{padding-bottom:12rem!important}.gravity-padding-left-xxxxxl{padding-left:12rem!important}.gravity-padding-right-xxxxxl{padding-right:12rem!important}.gravity-padding-block-xxxxxl{padding-block:12rem!important}.gravity-padding-inline-xxxxxl{padding-inline:12rem!important}.gravity-margin-none{margin:0!important}.gravity-margin-top-none{margin-top:0!important}.gravity-margin-bottom-none{margin-bottom:0!important}.gravity-margin-left-none{margin-left:0!important}.gravity-margin-right-none{margin-right:0!important}.gravity-margin-block-none{margin-block:0!important}.gravity-margin-inline-none{margin-inline:0!important}.gravity-margin-xxs{margin:.25rem!important}.gravity-margin-top-xxs{margin-top:.25rem!important}.gravity-margin-bottom-xxs{margin-bottom:.25rem!important}.gravity-margin-left-xxs{margin-left:.25rem!important}.gravity-margin-right-xxs{margin-right:.25rem!important}.gravity-margin-block-xxs{margin-block:.25rem!important}.gravity-margin-inline-xxs{margin-inline:.25rem!important}.gravity-margin-xs{margin:.5rem!important}.gravity-margin-top-xs{margin-top:.5rem!important}.gravity-margin-bottom-xs{margin-bottom:.5rem!important}.gravity-margin-left-xs{margin-left:.5rem!important}.gravity-margin-right-xs{margin-right:.5rem!important}.gravity-margin-block-xs{margin-block:.5rem!important}.gravity-margin-inline-xs{margin-inline:.5rem!important}.gravity-margin-sm{margin:1rem!important}.gravity-margin-top-sm{margin-top:1rem!important}.gravity-margin-bottom-sm{margin-bottom:1rem!important}.gravity-margin-left-sm{margin-left:1rem!important}.gravity-margin-right-sm{margin-right:1rem!important}.gravity-margin-block-sm{margin-block:1rem!important}.gravity-margin-inline-sm{margin-inline:1rem!important}.gravity-margin-md{margin:1.5rem!important}.gravity-margin-top-md{margin-top:1.5rem!important}.gravity-margin-bottom-md{margin-bottom:1.5rem!important}.gravity-margin-left-md{margin-left:1.5rem!important}.gravity-margin-right-md{margin-right:1.5rem!important}.gravity-margin-block-md{margin-block:1.5rem!important}.gravity-margin-inline-md{margin-inline:1.5rem!important}.gravity-margin-lg{margin:2rem!important}.gravity-margin-top-lg{margin-top:2rem!important}.gravity-margin-bottom-lg{margin-bottom:2rem!important}.gravity-margin-left-lg{margin-left:2rem!important}.gravity-margin-right-lg{margin-right:2rem!important}.gravity-margin-block-lg{margin-block:2rem!important}.gravity-margin-inline-lg{margin-inline:2rem!important}.gravity-margin-xl{margin:2.5rem!important}.gravity-margin-top-xl{margin-top:2.5rem!important}.gravity-margin-bottom-xl{margin-bottom:2.5rem!important}.gravity-margin-left-xl{margin-left:2.5rem!important}.gravity-margin-right-xl{margin-right:2.5rem!important}.gravity-margin-block-xl{margin-block:2.5rem!important}.gravity-margin-inline-xl{margin-inline:2.5rem!important}.gravity-margin-xxl{margin:3rem!important}.gravity-margin-top-xxl{margin-top:3rem!important}.gravity-margin-bottom-xxl{margin-bottom:3rem!important}.gravity-margin-left-xxl{margin-left:3rem!important}.gravity-margin-right-xxl{margin-right:3rem!important}.gravity-margin-block-xxl{margin-block:3rem!important}.gravity-margin-inline-xxl{margin-inline:3rem!important}.gravity-margin-xxxl{margin:4rem!important}.gravity-margin-top-xxxl{margin-top:4rem!important}.gravity-margin-bottom-xxxl{margin-bottom:4rem!important}.gravity-margin-left-xxxl{margin-left:4rem!important}.gravity-margin-right-xxxl{margin-right:4rem!important}.gravity-margin-block-xxxl{margin-block:4rem!important}.gravity-margin-inline-xxxl{margin-inline:4rem!important}.gravity-margin-xxxxl{margin:6rem!important}.gravity-margin-top-xxxxl{margin-top:6rem!important}.gravity-margin-bottom-xxxxl{margin-bottom:6rem!important}.gravity-margin-left-xxxxl{margin-left:6rem!important}.gravity-margin-right-xxxxl{margin-right:6rem!important}.gravity-margin-block-xxxxl{margin-block:6rem!important}.gravity-margin-inline-xxxxl{margin-inline:6rem!important}.gravity-margin-xxxxxl{margin:12rem!important}.gravity-margin-top-xxxxxl{margin-top:12rem!important}.gravity-margin-bottom-xxxxxl{margin-bottom:12rem!important}.gravity-margin-left-xxxxxl{margin-left:12rem!important}.gravity-margin-right-xxxxxl{margin-right:12rem!important}.gravity-margin-block-xxxxxl{margin-block:12rem!important}.gravity-margin-inline-xxxxxl{margin-inline:12rem!important}.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}.next-button,.previous-button{cursor:pointer;padding:var(--gravity-spacing-xs);border-radius:var(--gravity-spacing-xs)}.next-button:hover,.previous-button:hover{background:var(--bg-button-active-tertiary)}.separator-line{border-bottom:2px solid var(--divider-menu-active-primary)}.action-section{height:25px;display:flex;align-items:center;align-self:stretch;justify-content:space-between}.gravity-calendar-header{width:215px;height:40px;display:flex;align-self:stretch;align-items:center;flex-direction:column;justify-content:center;gap:var(--gravity-spacing-sm);padding-top:var(--gravity-spacing-xs)}.gravity-calendar-header .header-container{display:flex;align-items:center;align-self:stretch;justify-content:space-between;padding:0 var(--gravity-spacing-xs)}.gravity-calendar-header .separator-line{width:215px}.gravity-calendar-body{width:215px;display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:center;gap:var(--gravity-spacing-sm);margin-top:var(--gravity-spacing-sm)}.gravity-calendar-body .items-table{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 var(--gravity-spacing-sm)}.gravity-calendar-body .items-table .item{width:37px;height:25px;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--gravity-spacing-xs);color:var(--on-bg-button-pressed-tertiary);border:2px solid var(--bg-calender-primary)}.gravity-calendar-body .items-table .item.current{border-color:var(--bg-number-calendar-hover-primary)}.gravity-calendar-body .items-table .item:not(.disabled):not(.selected):hover{color:var(--on-bg-button-pressed-tertiary);background:var(--bg-button-active-tertiary);border-color:var(--bg-button-active-tertiary)}.gravity-calendar-body .items-table .item.selected{color:var(--on-bg-button-pressed-primary);background:var(--bg-button-pressed-primary);border-color:var(--bg-button-pressed-primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GravityButtonComponent, selector: "gravity-button", inputs: ["cypressTag", "disabled", "customState", "iconPosition", "iconName", "isLoading", "showContent", "size", "type"] }, { kind: "component", type: i3.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size", "isCoin"] }, { kind: "component", type: i4.GravityLinkComponent, selector: "gravity-link", inputs: ["linkText", "fontClass", "link", "cypressTag", "iconName", "target", "iconPosition", "iconSize", "state"] }, { kind: "component", type: i5.GravityDropdownLabelComponent, selector: "gravity-dropdown-label", inputs: ["label", "fontClass", "isOpen", "stopPropagation", "size", "state"], outputs: ["onClickLabel"] }] }); }
78
+ }
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MonthCalendarComponent, decorators: [{
80
+ type: Component,
81
+ args: [{ selector: 'month-calendar', template: "<section class=\"gravity-calendar-header\">\n <div class=\"header-container\">\n <div *ngIf=\"!integratedMode\" class=\"previous-button\" (click)=\"currentDate = changeDate(-1, currentDate, false)\">\n <gravity-icon [style.--icon-color]=\"'var(--text-highlight-primary)'\" [iconName]=\"'arrow-left'\" [iconSize]=\"'sm-12'\" > </gravity-icon>\n </div>\n\n <div class=\"year-label\">\n <gravity-dropdown-label [state]=\"integratedMode ? 'active' : 'inactive'\" [fontClass]=\"'hr-title sm-bold'\" [size]=\"'sm'\"\n [label]=\"integratedMode ? monthsList[currentDate.getMonth()] : currentDate.getFullYear().toString()\"\n [isOpen]=\"integratedMode\" (onClickLabel)=\"calendarResponse.emit(currentDate)\" > </gravity-dropdown-label>\n </div>\n\n <div *ngIf=\"!integratedMode\" class=\"next-button\" (click)=\"currentDate = changeDate(1, currentDate, false)\">\n <gravity-icon [style.--icon-color]=\"'var(--text-highlight-primary)'\" [iconName]=\"'arrow-right'\" [iconSize]=\"'sm-12'\"> </gravity-icon>\n </div>\n </div>\n\n <div class=\"separator-line\"></div>\n</section>\n\n<section class=\"gravity-calendar-body\">\n <div class=\"items-table\">\n <span class=\"hr-body sm-regular item\" *ngFor=\"let month of getYearMonthsList(), trackBy: trackByMonth\"\n [ngClass]=\"disabled ? 'disabled' : getMonthSelectionClass(month)\" (click)=\"onSelectMonth(month)\">\n {{ monthsShortList[month.month] }} </span>\n </div>\n\n <div *ngIf=\"actionsSection\" class=\"action-section\" >\n <gravity-link [linkText]=\"i18n.clear\" [state]=\"!selectedMonth ? 'disabled' : 'active'\" (click)=\"clearSelectedMonth()\"></gravity-link>\n <gravity-button [size]=\"'sm'\" [type]=\"'tertiary'\" [disabled]=\"!selectedMonth\" (click)=\"applySelectedMonth()\">{{i18n.apply}}</gravity-button>\n </div>\n</section>", styles: [":root{--gravity-spacing-none: 0;--gravity-spacing-xxs: .25rem;--gravity-spacing-xs: .5rem;--gravity-spacing-sm: 1rem;--gravity-spacing-md: 1.5rem;--gravity-spacing-lg: 2rem;--gravity-spacing-xl: 2.5rem;--gravity-spacing-xxl: 3rem;--gravity-spacing-xxxl: 4rem;--gravity-spacing-xxxxl: 6rem;--gravity-spacing-xxxxxl: 12rem}.gravity-padding-none{padding:0!important}.gravity-padding-top-none{padding-top:0!important}.gravity-padding-bottom-none{padding-bottom:0!important}.gravity-padding-left-none{padding-left:0!important}.gravity-padding-right-none{padding-right:0!important}.gravity-padding-block-none{padding-block:0!important}.gravity-padding-inline-none{padding-inline:0!important}.gravity-padding-xxs{padding:.25rem!important}.gravity-padding-top-xxs{padding-top:.25rem!important}.gravity-padding-bottom-xxs{padding-bottom:.25rem!important}.gravity-padding-left-xxs{padding-left:.25rem!important}.gravity-padding-right-xxs{padding-right:.25rem!important}.gravity-padding-block-xxs{padding-block:.25rem!important}.gravity-padding-inline-xxs{padding-inline:.25rem!important}.gravity-padding-xs{padding:.5rem!important}.gravity-padding-top-xs{padding-top:.5rem!important}.gravity-padding-bottom-xs{padding-bottom:.5rem!important}.gravity-padding-left-xs{padding-left:.5rem!important}.gravity-padding-right-xs{padding-right:.5rem!important}.gravity-padding-block-xs{padding-block:.5rem!important}.gravity-padding-inline-xs{padding-inline:.5rem!important}.gravity-padding-sm{padding:1rem!important}.gravity-padding-top-sm{padding-top:1rem!important}.gravity-padding-bottom-sm{padding-bottom:1rem!important}.gravity-padding-left-sm{padding-left:1rem!important}.gravity-padding-right-sm{padding-right:1rem!important}.gravity-padding-block-sm{padding-block:1rem!important}.gravity-padding-inline-sm{padding-inline:1rem!important}.gravity-padding-md{padding:1.5rem!important}.gravity-padding-top-md{padding-top:1.5rem!important}.gravity-padding-bottom-md{padding-bottom:1.5rem!important}.gravity-padding-left-md{padding-left:1.5rem!important}.gravity-padding-right-md{padding-right:1.5rem!important}.gravity-padding-block-md{padding-block:1.5rem!important}.gravity-padding-inline-md{padding-inline:1.5rem!important}.gravity-padding-lg{padding:2rem!important}.gravity-padding-top-lg{padding-top:2rem!important}.gravity-padding-bottom-lg{padding-bottom:2rem!important}.gravity-padding-left-lg{padding-left:2rem!important}.gravity-padding-right-lg{padding-right:2rem!important}.gravity-padding-block-lg{padding-block:2rem!important}.gravity-padding-inline-lg{padding-inline:2rem!important}.gravity-padding-xl{padding:2.5rem!important}.gravity-padding-top-xl{padding-top:2.5rem!important}.gravity-padding-bottom-xl{padding-bottom:2.5rem!important}.gravity-padding-left-xl{padding-left:2.5rem!important}.gravity-padding-right-xl{padding-right:2.5rem!important}.gravity-padding-block-xl{padding-block:2.5rem!important}.gravity-padding-inline-xl{padding-inline:2.5rem!important}.gravity-padding-xxl{padding:3rem!important}.gravity-padding-top-xxl{padding-top:3rem!important}.gravity-padding-bottom-xxl{padding-bottom:3rem!important}.gravity-padding-left-xxl{padding-left:3rem!important}.gravity-padding-right-xxl{padding-right:3rem!important}.gravity-padding-block-xxl{padding-block:3rem!important}.gravity-padding-inline-xxl{padding-inline:3rem!important}.gravity-padding-xxxl{padding:4rem!important}.gravity-padding-top-xxxl{padding-top:4rem!important}.gravity-padding-bottom-xxxl{padding-bottom:4rem!important}.gravity-padding-left-xxxl{padding-left:4rem!important}.gravity-padding-right-xxxl{padding-right:4rem!important}.gravity-padding-block-xxxl{padding-block:4rem!important}.gravity-padding-inline-xxxl{padding-inline:4rem!important}.gravity-padding-xxxxl{padding:6rem!important}.gravity-padding-top-xxxxl{padding-top:6rem!important}.gravity-padding-bottom-xxxxl{padding-bottom:6rem!important}.gravity-padding-left-xxxxl{padding-left:6rem!important}.gravity-padding-right-xxxxl{padding-right:6rem!important}.gravity-padding-block-xxxxl{padding-block:6rem!important}.gravity-padding-inline-xxxxl{padding-inline:6rem!important}.gravity-padding-xxxxxl{padding:12rem!important}.gravity-padding-top-xxxxxl{padding-top:12rem!important}.gravity-padding-bottom-xxxxxl{padding-bottom:12rem!important}.gravity-padding-left-xxxxxl{padding-left:12rem!important}.gravity-padding-right-xxxxxl{padding-right:12rem!important}.gravity-padding-block-xxxxxl{padding-block:12rem!important}.gravity-padding-inline-xxxxxl{padding-inline:12rem!important}.gravity-margin-none{margin:0!important}.gravity-margin-top-none{margin-top:0!important}.gravity-margin-bottom-none{margin-bottom:0!important}.gravity-margin-left-none{margin-left:0!important}.gravity-margin-right-none{margin-right:0!important}.gravity-margin-block-none{margin-block:0!important}.gravity-margin-inline-none{margin-inline:0!important}.gravity-margin-xxs{margin:.25rem!important}.gravity-margin-top-xxs{margin-top:.25rem!important}.gravity-margin-bottom-xxs{margin-bottom:.25rem!important}.gravity-margin-left-xxs{margin-left:.25rem!important}.gravity-margin-right-xxs{margin-right:.25rem!important}.gravity-margin-block-xxs{margin-block:.25rem!important}.gravity-margin-inline-xxs{margin-inline:.25rem!important}.gravity-margin-xs{margin:.5rem!important}.gravity-margin-top-xs{margin-top:.5rem!important}.gravity-margin-bottom-xs{margin-bottom:.5rem!important}.gravity-margin-left-xs{margin-left:.5rem!important}.gravity-margin-right-xs{margin-right:.5rem!important}.gravity-margin-block-xs{margin-block:.5rem!important}.gravity-margin-inline-xs{margin-inline:.5rem!important}.gravity-margin-sm{margin:1rem!important}.gravity-margin-top-sm{margin-top:1rem!important}.gravity-margin-bottom-sm{margin-bottom:1rem!important}.gravity-margin-left-sm{margin-left:1rem!important}.gravity-margin-right-sm{margin-right:1rem!important}.gravity-margin-block-sm{margin-block:1rem!important}.gravity-margin-inline-sm{margin-inline:1rem!important}.gravity-margin-md{margin:1.5rem!important}.gravity-margin-top-md{margin-top:1.5rem!important}.gravity-margin-bottom-md{margin-bottom:1.5rem!important}.gravity-margin-left-md{margin-left:1.5rem!important}.gravity-margin-right-md{margin-right:1.5rem!important}.gravity-margin-block-md{margin-block:1.5rem!important}.gravity-margin-inline-md{margin-inline:1.5rem!important}.gravity-margin-lg{margin:2rem!important}.gravity-margin-top-lg{margin-top:2rem!important}.gravity-margin-bottom-lg{margin-bottom:2rem!important}.gravity-margin-left-lg{margin-left:2rem!important}.gravity-margin-right-lg{margin-right:2rem!important}.gravity-margin-block-lg{margin-block:2rem!important}.gravity-margin-inline-lg{margin-inline:2rem!important}.gravity-margin-xl{margin:2.5rem!important}.gravity-margin-top-xl{margin-top:2.5rem!important}.gravity-margin-bottom-xl{margin-bottom:2.5rem!important}.gravity-margin-left-xl{margin-left:2.5rem!important}.gravity-margin-right-xl{margin-right:2.5rem!important}.gravity-margin-block-xl{margin-block:2.5rem!important}.gravity-margin-inline-xl{margin-inline:2.5rem!important}.gravity-margin-xxl{margin:3rem!important}.gravity-margin-top-xxl{margin-top:3rem!important}.gravity-margin-bottom-xxl{margin-bottom:3rem!important}.gravity-margin-left-xxl{margin-left:3rem!important}.gravity-margin-right-xxl{margin-right:3rem!important}.gravity-margin-block-xxl{margin-block:3rem!important}.gravity-margin-inline-xxl{margin-inline:3rem!important}.gravity-margin-xxxl{margin:4rem!important}.gravity-margin-top-xxxl{margin-top:4rem!important}.gravity-margin-bottom-xxxl{margin-bottom:4rem!important}.gravity-margin-left-xxxl{margin-left:4rem!important}.gravity-margin-right-xxxl{margin-right:4rem!important}.gravity-margin-block-xxxl{margin-block:4rem!important}.gravity-margin-inline-xxxl{margin-inline:4rem!important}.gravity-margin-xxxxl{margin:6rem!important}.gravity-margin-top-xxxxl{margin-top:6rem!important}.gravity-margin-bottom-xxxxl{margin-bottom:6rem!important}.gravity-margin-left-xxxxl{margin-left:6rem!important}.gravity-margin-right-xxxxl{margin-right:6rem!important}.gravity-margin-block-xxxxl{margin-block:6rem!important}.gravity-margin-inline-xxxxl{margin-inline:6rem!important}.gravity-margin-xxxxxl{margin:12rem!important}.gravity-margin-top-xxxxxl{margin-top:12rem!important}.gravity-margin-bottom-xxxxxl{margin-bottom:12rem!important}.gravity-margin-left-xxxxxl{margin-left:12rem!important}.gravity-margin-right-xxxxxl{margin-right:12rem!important}.gravity-margin-block-xxxxxl{margin-block:12rem!important}.gravity-margin-inline-xxxxxl{margin-inline:12rem!important}.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}.next-button,.previous-button{cursor:pointer;padding:var(--gravity-spacing-xs);border-radius:var(--gravity-spacing-xs)}.next-button:hover,.previous-button:hover{background:var(--bg-button-active-tertiary)}.separator-line{border-bottom:2px solid var(--divider-menu-active-primary)}.action-section{height:25px;display:flex;align-items:center;align-self:stretch;justify-content:space-between}.gravity-calendar-header{width:215px;height:40px;display:flex;align-self:stretch;align-items:center;flex-direction:column;justify-content:center;gap:var(--gravity-spacing-sm);padding-top:var(--gravity-spacing-xs)}.gravity-calendar-header .header-container{display:flex;align-items:center;align-self:stretch;justify-content:space-between;padding:0 var(--gravity-spacing-xs)}.gravity-calendar-header .separator-line{width:215px}.gravity-calendar-body{width:215px;display:flex;align-items:center;align-self:stretch;flex-direction:column;justify-content:center;gap:var(--gravity-spacing-sm);margin-top:var(--gravity-spacing-sm)}.gravity-calendar-body .items-table{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 var(--gravity-spacing-sm)}.gravity-calendar-body .items-table .item{width:37px;height:25px;display:flex;cursor:pointer;align-items:center;justify-content:center;border-radius:var(--gravity-spacing-xs);color:var(--on-bg-button-pressed-tertiary);border:2px solid var(--bg-calender-primary)}.gravity-calendar-body .items-table .item.current{border-color:var(--bg-number-calendar-hover-primary)}.gravity-calendar-body .items-table .item:not(.disabled):not(.selected):hover{color:var(--on-bg-button-pressed-tertiary);background:var(--bg-button-active-tertiary);border-color:var(--bg-button-active-tertiary)}.gravity-calendar-body .items-table .item.selected{color:var(--on-bg-button-pressed-primary);background:var(--bg-button-pressed-primary);border-color:var(--bg-button-pressed-primary)}\n"] }]
82
+ }], propDecorators: { restart: [{
83
+ type: Input
84
+ }], disabled: [{
85
+ type: Input
86
+ }], language: [{
87
+ type: Input
88
+ }], preSelectedDate: [{
89
+ type: Input
90
+ }], actionsSection: [{
91
+ type: Input
92
+ }], integratedMode: [{
93
+ type: Input
94
+ }], clearSelection: [{
95
+ type: Output
96
+ }], calendarResponse: [{
97
+ type: Output,
98
+ args: ['response']
99
+ }] } });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGgtY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LWNhbGVuZGFyLW5leHQvY29tcG9uZW50cy9tb250aC1jYWxlbmRhci9tb250aC1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2FsZW5kYXItbmV4dC9jb21wb25lbnRzL21vbnRoLWNhbGVuZGFyL21vbnRoLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxVQUFVLEVBQUUsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sR0FBaUIsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLGFBQWEsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7OztBQU90SCxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBT29CLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixhQUFRLEdBQWdCLElBQUksQ0FBQztRQUU3QixtQkFBYyxHQUFZLElBQUksQ0FBQztRQUMvQixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUUvQixtQkFBYyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3BELHFCQUFnQixHQUFnQyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUV0RyxnQkFBVyxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7UUFx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O1FBQ3BCLE1BQU0sTUFBTSxHQUFxQixFQUFFLENBQUM7UUFFcEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsRUFBQyxDQUFDLENBQUM7U0FDakU7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOytHQS9FUSxzQkFBc0I7bUdBQXRCLHNCQUFzQiw0VUNWbkMsazlEQStCVTs7NEZEckJHLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTVIsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBRVcsY0FBYztzQkFBOUIsTUFBTTtnQkFDb0IsZ0JBQWdCO3NCQUExQyxNQUFNO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NhbGVuZGFyUGVyaW9kfSBmcm9tIFwiLi4vLi4vc2hhcmVkL2NhbGVuZGFyLm1vZGFsXCI7XG5pbXBvcnQge2NoYW5nZURhdGUsIGdldFN0YXJ0RGF0ZX0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci51dGlsc1wiO1xuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NBTEVOREFSX0kxOE4sIE1PTlRIU19FTiwgTU9OVEhTX1NIT1JUX0VOLCBNT05USFNfRVMsIE1PTlRIU19TSE9SVF9FU30gZnJvbSBcIi4uLy4uL3NoYXJlZC9jYWxlbmRhci5jb25zdGFudHNcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbW9udGgtY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vbW9udGgtY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb250aC1jYWxlbmRhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vbnRoQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuXG4gICAgQElucHV0KCkgcHVibGljIHJlc3RhcnQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwdWJsaWMgbGFuZ3VhZ2U6ICdlcycgfCAnZW4nID0gJ2VuJztcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJlU2VsZWN0ZWREYXRlOiBEYXRlIHwgRGF0ZVtdO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb25zU2VjdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gICAgQElucHV0KCkgcHVibGljIGludGVncmF0ZWRNb2RlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgcHVibGljIGNsZWFyU2VsZWN0aW9uOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgncmVzcG9uc2UnKSBwdWJsaWMgY2FsZW5kYXJSZXNwb25zZTogRXZlbnRFbWl0dGVyPERhdGVbXSB8IERhdGU+ID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlW10gfCBEYXRlPigpO1xuXG4gICAgcHVibGljIGN1cnJlbnREYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgICBwdWJsaWMgc2VsZWN0ZWRNb250aDogQ2FsZW5kYXJQZXJpb2Q7XG5cbiAgICBwdWJsaWMgZ2V0IGkxOG4oKSB7IHJldHVybiBDQUxFTkRBUl9JMThOW3RoaXMubGFuZ3VhZ2VdOyB9XG4gICAgcHVibGljIGdldCBtb250aHNMaXN0KCkgeyByZXR1cm4gdGhpcy5sYW5ndWFnZSA9PT0gJ2VuJyA/IE1PTlRIU19FTiA6IE1PTlRIU19FUzsgfVxuICAgIHB1YmxpYyBnZXQgbW9udGhzU2hvcnRMaXN0KCkgeyByZXR1cm4gdGhpcy5sYW5ndWFnZSA9PT0gJ2VuJyA/IE1PTlRIU19TSE9SVF9FTiA6IE1PTlRIU19TSE9SVF9FUzsgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCBzaG91bGRSZXN0YXJ0ID0gY2hhbmdlc1sncmVzdGFydCddICYmIHRoaXMucmVzdGFydDtcbiAgICAgICAgY29uc3Qgc2hvdWxkUHJvY2Vzc1ByZVNlbGVjdGVkID0gY2hhbmdlc1sncHJlU2VsZWN0ZWREYXRlJ10gJiYgdGhpcy5wcmVTZWxlY3RlZERhdGU7XG4gICAgICAgIGlmIChzaG91bGRSZXN0YXJ0IHx8IHNob3VsZFByb2Nlc3NQcmVTZWxlY3RlZCkgeyB0aGlzLnByb2Nlc3NQcmVzZWxlY3RlZERhdGUoKTsgfVxuICAgIH1cblxuICAgIHB1YmxpYyB0cmFja0J5TW9udGgoXzogbnVtYmVyLCBtb250aDogQ2FsZW5kYXJQZXJpb2QpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7bW9udGgueWVhcn0tJHttb250aC5tb250aH1gO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1ByZXNlbGVjdGVkRGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucHJlU2VsZWN0ZWREYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0ZSA9IGdldFN0YXJ0RGF0ZSh0aGlzLnByZVNlbGVjdGVkRGF0ZSk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTW9udGggPSB7XG4gICAgICAgICAgICAgICAgbW9udGg6IHRoaXMucHJlU2VsZWN0ZWREYXRlLmdldE1vbnRoKCksXG4gICAgICAgICAgICAgICAgeWVhcjogdGhpcy5wcmVTZWxlY3RlZERhdGUuZ2V0RnVsbFllYXIoKVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblNlbGVjdE1vbnRoKG1vbnRoOiBDYWxlbmRhclBlcmlvZCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkTW9udGggPSBtb250aDtcbiAgICAgICAgdGhpcy5jdXJyZW50RGF0ZSA9IG5ldyBEYXRlKG1vbnRoLnllYXIsIG1vbnRoLm1vbnRoLCAxKTtcbiAgICAgICAgdGhpcy5jYWxlbmRhclJlc3BvbnNlLmVtaXQodGhpcy5jdXJyZW50RGF0ZSk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TW9udGhTZWxlY3Rpb25DbGFzcyhtb250aDogQ2FsZW5kYXJQZXJpb2QpOiBzdHJpbmcge1xuXG4gICAgICAgaWYodGhpcy5zZWxlY3RlZE1vbnRoICYmIHRoaXMuc2VsZWN0ZWRNb250aC5tb250aCA9PT0gbW9udGgubW9udGggJiZcbiAgICAgICAgICAgdGhpcy5zZWxlY3RlZE1vbnRoLnllYXIgPT09IG1vbnRoLnllYXIpIHtcbiAgICAgICAgICAgcmV0dXJuICdzZWxlY3RlZCdcbiAgICAgICB9XG5cbiAgICAgICBpZihuZXcgRGF0ZSgpLmdldE1vbnRoKCkgPT09IG1vbnRoLm1vbnRoICYmXG4gICAgICAgICAgbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpID09PSBtb250aC55ZWFyKSB7XG4gICAgICAgICAgIHJldHVybiAnY3VycmVudCdcbiAgICAgICB9XG5cbiAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgcHVibGljIGNsZWFyU2VsZWN0ZWRNb250aCgpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE1vbnRoID0gbnVsbDtcbiAgICAgICAgdGhpcy5jbGVhclNlbGVjdGlvbi5lbWl0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGFwcGx5U2VsZWN0ZWRNb250aCgpIHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKHRoaXMuc2VsZWN0ZWRNb250aC55ZWFyLCB0aGlzLnNlbGVjdGVkTW9udGgubW9udGgpXG4gICAgICAgIHRoaXMuY2FsZW5kYXJSZXNwb25zZS5lbWl0KGRhdGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRZZWFyTW9udGhzTGlzdCgpOiBDYWxlbmRhclBlcmlvZFtdIHtcbiAgICAgICAgY29uc3QgbW9udGhzOiBDYWxlbmRhclBlcmlvZFtdID0gW107XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMjsgaSsrKSB7XG4gICAgICAgICAgICBtb250aHMucHVzaCh7bW9udGg6IGksIHllYXI6IHRoaXMuY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKX0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1vbnRocztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2hhbmdlRGF0ZSA9IGNoYW5nZURhdGU7XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItaGVhZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlci1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIiFpbnRlZ3JhdGVkTW9kZVwiIGNsYXNzPVwicHJldmlvdXMtYnV0dG9uXCIgKGNsaWNrKT1cImN1cnJlbnREYXRlID0gY2hhbmdlRGF0ZSgtMSwgY3VycmVudERhdGUsIGZhbHNlKVwiPlxuICAgICAgICAgICAgPGdyYXZpdHktaWNvbiBbc3R5bGUuLS1pY29uLWNvbG9yXT1cIid2YXIoLS10ZXh0LWhpZ2hsaWdodC1wcmltYXJ5KSdcIiBbaWNvbk5hbWVdPVwiJ2Fycm93LWxlZnQnXCIgW2ljb25TaXplXT1cIidzbS0xMidcIiA+IDwvZ3Jhdml0eS1pY29uPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwieWVhci1sYWJlbFwiPlxuICAgICAgICAgICAgPGdyYXZpdHktZHJvcGRvd24tbGFiZWwgW3N0YXRlXT1cImludGVncmF0ZWRNb2RlID8gJ2FjdGl2ZScgOiAnaW5hY3RpdmUnXCIgW2ZvbnRDbGFzc109XCInaHItdGl0bGUgc20tYm9sZCdcIiBbc2l6ZV09XCInc20nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJpbnRlZ3JhdGVkTW9kZSA/IG1vbnRoc0xpc3RbY3VycmVudERhdGUuZ2V0TW9udGgoKV0gOiBjdXJyZW50RGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzT3Blbl09XCJpbnRlZ3JhdGVkTW9kZVwiIChvbkNsaWNrTGFiZWwpPVwiY2FsZW5kYXJSZXNwb25zZS5lbWl0KGN1cnJlbnREYXRlKVwiID4gPC9ncmF2aXR5LWRyb3Bkb3duLWxhYmVsPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWludGVncmF0ZWRNb2RlXCIgY2xhc3M9XCJuZXh0LWJ1dHRvblwiIChjbGljayk9XCJjdXJyZW50RGF0ZSA9IGNoYW5nZURhdGUoMSwgY3VycmVudERhdGUsIGZhbHNlKVwiPlxuICAgICAgICAgICAgPGdyYXZpdHktaWNvbiBbc3R5bGUuLS1pY29uLWNvbG9yXT1cIid2YXIoLS10ZXh0LWhpZ2hsaWdodC1wcmltYXJ5KSdcIiBbaWNvbk5hbWVdPVwiJ2Fycm93LXJpZ2h0J1wiIFtpY29uU2l6ZV09XCInc20tMTInXCI+IDwvZ3Jhdml0eS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJzZXBhcmF0b3ItbGluZVwiPjwvZGl2PlxuPC9zZWN0aW9uPlxuXG48c2VjdGlvbiBjbGFzcz1cImdyYXZpdHktY2FsZW5kYXItYm9keVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtcy10YWJsZVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaHItYm9keSBzbS1yZWd1bGFyIGl0ZW1cIiAqbmdGb3I9XCJsZXQgbW9udGggb2YgZ2V0WWVhck1vbnRoc0xpc3QoKSwgdHJhY2tCeTogdHJhY2tCeU1vbnRoXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJkaXNhYmxlZCA/ICdkaXNhYmxlZCcgOiBnZXRNb250aFNlbGVjdGlvbkNsYXNzKG1vbnRoKVwiIChjbGljayk9XCJvblNlbGVjdE1vbnRoKG1vbnRoKVwiPlxuICAgICAgICAgICAgICB7eyBtb250aHNTaG9ydExpc3RbbW9udGgubW9udGhdIH19IDwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCJhY3Rpb25zU2VjdGlvblwiIGNsYXNzPVwiYWN0aW9uLXNlY3Rpb25cIiA+XG4gICAgICAgIDxncmF2aXR5LWxpbmsgW2xpbmtUZXh0XT1cImkxOG4uY2xlYXJcIiBbc3RhdGVdPVwiIXNlbGVjdGVkTW9udGggPyAnZGlzYWJsZWQnIDogJ2FjdGl2ZSdcIiAoY2xpY2spPVwiY2xlYXJTZWxlY3RlZE1vbnRoKClcIj48L2dyYXZpdHktbGluaz5cbiAgICAgICAgPGdyYXZpdHktYnV0dG9uIFtzaXplXT1cIidzbSdcIiBbdHlwZV09XCIndGVydGlhcnknXCIgW2Rpc2FibGVkXT1cIiFzZWxlY3RlZE1vbnRoXCIgKGNsaWNrKT1cImFwcGx5U2VsZWN0ZWRNb250aCgpXCI+e3tpMThuLmFwcGx5fX08L2dyYXZpdHktYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9zZWN0aW9uPiJdfQ==