@rangertechnologies/ngnxt 2.1.48 → 2.1.49
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/custom-calendar/custom-calendar.component.mjs +96 -25
- package/esm2022/lib/components/custom-model/custom-model.component.mjs +3 -3
- package/esm2022/lib/components/custom-time/custom-time.component.mjs +3 -2
- package/esm2022/lib/nxt-app.module.mjs +3 -1
- package/esm2022/lib/pages/booklet/booklet.component.mjs +82 -4
- package/esm2022/lib/pages/questionbook/questionbook.component.mjs +57 -44
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/rangertechnologies-ngnxt.mjs +434 -269
- package/fesm2022/rangertechnologies-ngnxt.mjs.map +1 -1
- package/lib/components/custom-calendar/custom-calendar.component.d.ts +8 -3
- package/lib/nxt-app.module.d.ts +1 -1
- package/lib/pages/booklet/booklet.component.d.ts +5 -1
- package/lib/pages/questionbook/questionbook.component.d.ts +4 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/rangertechnologies-ngnxt-2.1.49.tgz +0 -0
- package/rangertechnologies-ngnxt-2.1.48.tgz +0 -0
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "
|
|
4
|
+
import * as i2 from "../../pages/questionbook/questionbook.component";
|
|
5
|
+
import * as i3 from "../custom-model/custom-model.component";
|
|
5
6
|
export class CustomCalendarComponent {
|
|
6
7
|
eventSelected = new EventEmitter();
|
|
8
|
+
// VD 06Sep24 calendar changes
|
|
9
|
+
dateSelected = new EventEmitter();
|
|
7
10
|
allEvents = [];
|
|
8
11
|
question;
|
|
9
12
|
entries = [];
|
|
@@ -24,6 +27,8 @@ export class CustomCalendarComponent {
|
|
|
24
27
|
saveButtonValue = 'Save';
|
|
25
28
|
modalFooter = true;
|
|
26
29
|
editingEventId;
|
|
30
|
+
editingEntryGroup;
|
|
31
|
+
showAppoinmentSection = true;
|
|
27
32
|
ngOnInit() {
|
|
28
33
|
if (this.question?.input) {
|
|
29
34
|
this.allEvents = this.question.input;
|
|
@@ -79,9 +84,17 @@ export class CustomCalendarComponent {
|
|
|
79
84
|
day.events = this.allEvents.filter(event => event.date.toDateString() === day.date.toDateString());
|
|
80
85
|
});
|
|
81
86
|
this.eventSelected.emit(this.allEvents);
|
|
87
|
+
// VD 06Sep24 calendar changes
|
|
88
|
+
let calendar = {};
|
|
89
|
+
calendar['year'] = year;
|
|
90
|
+
calendar['month'] = month + 1;
|
|
91
|
+
console.log(calendar);
|
|
92
|
+
this.dateSelected.emit(calendar);
|
|
82
93
|
}
|
|
83
94
|
selectDay(day) {
|
|
84
95
|
console.log(day);
|
|
96
|
+
// VD 06Sep24 calendar changes
|
|
97
|
+
this.showAppoinmentSection = true;
|
|
85
98
|
this.selectedDay = day;
|
|
86
99
|
// this.eventSelected.emit(day?.events);
|
|
87
100
|
const previouslySelectedDay = this.calendarDays.find(d => d.isSelected);
|
|
@@ -92,11 +105,14 @@ export class CustomCalendarComponent {
|
|
|
92
105
|
day.isSelected = true;
|
|
93
106
|
}
|
|
94
107
|
previousMonth() {
|
|
108
|
+
this.showAppoinmentSection = false;
|
|
95
109
|
this.currentDate.setMonth(this.currentDate.getMonth() - 1);
|
|
96
110
|
this.currentDate = new Date(this.currentDate); // Ensure the date object is updated
|
|
97
111
|
this.generateCalendar();
|
|
98
112
|
}
|
|
99
113
|
nextMonth() {
|
|
114
|
+
// VD 06Sep24 calendar changes
|
|
115
|
+
this.showAppoinmentSection = false;
|
|
100
116
|
this.currentDate.setMonth(this.currentDate.getMonth() + 1);
|
|
101
117
|
this.currentDate = new Date(this.currentDate); // Ensure the date object is updated
|
|
102
118
|
this.generateCalendar();
|
|
@@ -106,7 +122,12 @@ export class CustomCalendarComponent {
|
|
|
106
122
|
this.calendarQuestion = this.referenceQuestions.map(q => ({ ...q, input: '' }));
|
|
107
123
|
this.referenceQuestions.forEach(ques => {
|
|
108
124
|
// clear the input
|
|
109
|
-
if (ques.
|
|
125
|
+
if (ques.Type__c == 'Dropdown') {
|
|
126
|
+
delete ques.input;
|
|
127
|
+
delete ques.selectedValue;
|
|
128
|
+
// VD 06Sep24 calendar changes
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
110
131
|
delete ques.input;
|
|
111
132
|
}
|
|
112
133
|
});
|
|
@@ -114,39 +135,79 @@ export class CustomCalendarComponent {
|
|
|
114
135
|
console.log(this.referenceQuestions);
|
|
115
136
|
this.editingEventId = null;
|
|
116
137
|
}
|
|
117
|
-
|
|
138
|
+
// VD 06Sep24 calendar changes
|
|
139
|
+
editEvent(event, entryGroup) {
|
|
118
140
|
this.isModalOpen = true;
|
|
119
|
-
|
|
120
|
-
this.
|
|
141
|
+
this.referenceQuestions = Object.values(entryGroup);
|
|
142
|
+
this.calendarQuestion = [...this.referenceQuestions]; // Make a copy of the current entries to edit
|
|
121
143
|
this.editingEventId = event.id;
|
|
122
|
-
this.
|
|
144
|
+
this.editingEntryGroup = entryGroup; // Store the entry group being edited
|
|
145
|
+
this.generateCalendar(); // Regenerate the calendar to reflect changes
|
|
123
146
|
}
|
|
124
|
-
deleteEvent(
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
147
|
+
deleteEvent(eventId, entryGroup) {
|
|
148
|
+
const event = this.allEvents.find(e => e.id === eventId);
|
|
149
|
+
if (event) {
|
|
150
|
+
// Find the index of the entryGroup to delete
|
|
151
|
+
const entryIndex = event.entries.indexOf(entryGroup);
|
|
152
|
+
if (entryIndex > -1) {
|
|
153
|
+
event.entries.splice(entryIndex, 1); // Remove the specific entry
|
|
154
|
+
}
|
|
155
|
+
// If the event has no more entries, remove the event entirely
|
|
156
|
+
if (event.entries.length === 0) {
|
|
157
|
+
const eventIndex = this.allEvents.indexOf(event);
|
|
158
|
+
if (eventIndex > -1) {
|
|
159
|
+
this.allEvents.splice(eventIndex, 1); // Remove the entire event
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
this.generateCalendar(); // Regenerate the calendar to reflect the changes
|
|
128
164
|
}
|
|
129
165
|
closeModal() {
|
|
130
166
|
this.isModalOpen = false;
|
|
131
167
|
}
|
|
168
|
+
// VD 06Sep24 calendar changes
|
|
132
169
|
addEvent(day, entryQues) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
};
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
170
|
+
// Transform new entries into the desired format
|
|
171
|
+
const newEntries = entryQues.reduce((acc, q) => {
|
|
172
|
+
acc[q.Id] = { ...q };
|
|
173
|
+
return acc;
|
|
174
|
+
}, {});
|
|
175
|
+
// Find an existing event for the given date
|
|
176
|
+
const existingEvent = day.events.find(event => event.date === day.date);
|
|
177
|
+
if (existingEvent) {
|
|
178
|
+
// Merge new entries into the existing event's entries array
|
|
179
|
+
// Check if the entries array already contains an object with the same ID
|
|
180
|
+
const existingEntries = existingEvent.entries.map(entry => ({ ...entry }));
|
|
181
|
+
// Append new entries to the existing entries
|
|
182
|
+
existingEntries.push(newEntries);
|
|
183
|
+
existingEvent.entries = existingEntries;
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
// Create a new event if it doesn't exist for the given date
|
|
187
|
+
const newEvent = {
|
|
188
|
+
id: this.generateId(),
|
|
189
|
+
date: day.date,
|
|
190
|
+
entries: [newEntries] // Wrap the new entries in an array
|
|
191
|
+
};
|
|
192
|
+
day.events.push(newEvent);
|
|
193
|
+
this.allEvents.push(newEvent);
|
|
194
|
+
}
|
|
143
195
|
this.generateCalendar();
|
|
196
|
+
console.log('allEvents', this.allEvents);
|
|
144
197
|
}
|
|
198
|
+
// VD 06Sep24 calendar changes
|
|
145
199
|
onSave() {
|
|
146
200
|
if (this.editingEventId !== null) {
|
|
147
201
|
const event = this.allEvents.find(e => e.id === this.editingEventId);
|
|
148
|
-
if (event) {
|
|
149
|
-
|
|
202
|
+
if (event && this.editingEntryGroup) {
|
|
203
|
+
// Update the specific entry group within the event
|
|
204
|
+
const entryIndex = event.entries.findIndex(entryGroup => entryGroup === this.editingEntryGroup);
|
|
205
|
+
if (entryIndex > -1) {
|
|
206
|
+
event.entries[entryIndex] = this.calendarQuestion.reduce((acc, q) => {
|
|
207
|
+
acc[q.Id] = { ...q };
|
|
208
|
+
return acc;
|
|
209
|
+
}, {});
|
|
210
|
+
}
|
|
150
211
|
}
|
|
151
212
|
}
|
|
152
213
|
else {
|
|
@@ -175,20 +236,30 @@ export class CustomCalendarComponent {
|
|
|
175
236
|
console.log('calender question');
|
|
176
237
|
console.log(this.calendarQuestion);
|
|
177
238
|
}
|
|
239
|
+
// VD 06Sep24 calendar changes
|
|
178
240
|
generateId() {
|
|
179
241
|
return '_' + Math.random().toString(36).substr(2, 9);
|
|
180
242
|
}
|
|
243
|
+
getEntryKeys(entryGroup) {
|
|
244
|
+
return Object.keys(entryGroup);
|
|
245
|
+
}
|
|
246
|
+
removeCharacters(questionText) {
|
|
247
|
+
let updatedText = questionText?.replace(/<[^>]*>/g, '');
|
|
248
|
+
return updatedText;
|
|
249
|
+
}
|
|
181
250
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
182
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCalendarComponent, selector: "app-custom-calendar", inputs: { allEvents: "allEvents", question: "question" }, outputs: { eventSelected: "eventSelected" }, ngImport: i0, template: "<div class=\"align-calendar\">\n <div class=\"calendar-container\">\n
|
|
251
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomCalendarComponent, selector: "app-custom-calendar", inputs: { allEvents: "allEvents", question: "question" }, outputs: { eventSelected: "eventSelected", dateSelected: "dateSelected" }, ngImport: i0, template: "<div class=\"align-calendar\">\n <div class=\"calendar-container\">\n <div class=\"calendar-header\">\n <button (click)=\"previousMonth()\"><< Previous >></button>\n <h3>{{ currentDate | date: 'MMMM yyyy' }}</h3>\n <button (click)=\"nextMonth()\"><< Next >></button>\n </div>\n <div class=\"calendar-grid\">\n <div class=\"day-of-week\" *ngFor=\"let day of daysOfWeek\">{{ day }}</div>\n\n <div\n class=\"calendar-day\"\n *ngFor=\"let day of calendarDays\"\n [class.not-current-month]=\"!day.isCurrentMonth\"\n [class.past]=\"day.isPast\"\n [class.today]=\"day.isToday\"\n [class.future]=\"day.isFuture\"\n [class.selected]=\"day.isSelected\"\n (click)=\"selectDay(day)\"\n >\n <div class=\"day-number\">{{ day.date.getDate() }}\n <span *ngIf=\"day.events.length > 0\" class=\"entry-indicator\" [class.select]=\"day.isSelected\"></span>\n </div>\n <!-- <div *ngFor=\"let event of day.events\" >\n <div *ngFor=\"let entryGroup of event.entries\" class=\"event\">\n <div *ngFor=\"let key of getEntryKeys(entryGroup)\">\n <div *ngIf=\"entryGroup[key].Type__c == 'Time'\">\n {{ entryGroup[key].input?.value | date: 'shortTime' }}\n </div>\n <div *ngIf=\"entryGroup[key].Type__c != 'Time'\">\n {{ entryGroup[key].input }}\n </div>\n </div>\n </div>\n </div> -->\n </div>\n </div>\n </div>\n <div class=\"appoinappointment\">\n <div class=\"appointments-container\">\n <h4>Add Appointment</h4>\n <button *ngIf=\"selectedDay\" (click)=\"addAppointment()\">Add</button>\n </div>\n <!--VD 06Sep24 calendar updates--> \n <div *ngIf=\"showAppoinmentSection && selectedDay?.events.length > 0\" class=\"appointments-container\">\n <h4>Appointments</h4>\n <div *ngFor=\"let event of selectedDay?.events\">\n <div class=\"event\" *ngFor=\"let entryGroup of event.entries\">\n <div class=\"event-info\">\n <div *ngFor=\"let key of getEntryKeys(entryGroup)\" class=\"entry-row\">\n <div *ngIf=\"entryGroup[key].Question_Text__c\" class=\"entry-text\">\n {{removeCharacters(entryGroup[key].Question_Text__c)}}:\n </div>\n <div class=\"entry-value\">\n <span *ngIf=\"entryGroup[key].Type__c != 'Time' && entryGroup[key].Type__c != 'Link'\">{{ entryGroup[key].input }}</span>\n <span *ngIf=\"entryGroup[key].Type__c == 'Time'\">{{ entryGroup[key].input | date: 'shortTime' }}</span>\n <span *ngIf=\"entryGroup[key].Type__c == 'Link'\">\n <a href=\"{{entryGroup[key].input}}\">{{removeCharacters(entryGroup[key].Question_Text__c)}}</a>\n </span>\n </div>\n </div>\n <div class=\"event-actions\">\n <button (click)=\"editEvent(event,entryGroup)\">Edit</button>\n <button (click)=\"deleteEvent(event.id,entryGroup)\">Delete</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<app-custom-model\n [modalTitle]=\"modalTitle\"\n [isModalOpen]=\"isModalOpen\"\n [modalSize]=\"modalSize\"\n [saveButtonValue]=\"saveButtonValue\"\n [modalFooter]=\"modalFooter\"\n (saveButtonEmit)=\"onSave()\"\n (cancelButtonEmit)=\"onCancel()\"\n>\n<lib-questionbook [qbItem]=\"qbRefrenceBook\" [questions]=\"referenceQuestions\" (handleQuestion)=\"handleQuestionEvent($event)\"></lib-questionbook>\n</app-custom-model>\n\n\n \n \n ", styles: [".calendar-container{flex:1}.appoinappointment{flex:1;margin-left:10px}.calendar-header{display:flex;justify-content:space-between;align-items:center}.selected{box-shadow:0 0 5px #00000080;background-color:green!important;color:#fff!important}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.day-of-week{text-align:center;font-weight:700;padding:5px;background-color:#f0f0f0;border:1px solid #ccc}.calendar-day{border:1px solid #ccc;padding:5px;display:flex;flex-direction:column;align-items:flex-start;background-color:#fff;position:relative;cursor:pointer}.calendar-day.not-current-month{background-color:#f0f0f0}.calendar-day.past{color:#aaa}.calendar-day.today{background-color:#e6ffe6;font-weight:700}.calendar-day.future{color:#000}.day-number{font-size:1.2em;margin-bottom:5px}.event{background-color:#d1e7dd;border-left:4px solid #0f5132;margin:5px 0;padding:2px 5px;border-radius:3px}.event-title{font-weight:700}.event-time{font-size:.8em}input[type=text],input[type=time]{width:100%;margin-top:5px;box-sizing:border-box}button{margin-top:5px;align-self:stretch;margin-left:0!important}.calendar-header button{margin-top:5px;align-self:stretch;margin-left:0!important;border:none;background:none}.align-calendar{display:flex;width:100%}.form-group.content-box{padding-bottom:0!important}.entry-indicator{position:absolute;top:5px;right:5px;width:10px;height:10px;background-color:#0f5132;border-radius:50%}.select{background-color:#fff}.entry-row{display:flex;align-items:center;margin-bottom:5px}.entry-text{font-weight:700;margin-right:10px;white-space:nowrap}.entry-value{flex:1;word-break:break-word}.entry-value a{color:#4caf50}\n"], dependencies: [{ 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.QuestionbookComponent, selector: "lib-questionbook", inputs: ["qbItem", "questionItem", "translatedQuestions", "questions", "errorFieldId", "labelValue", "token", "dropDownData"], outputs: ["handleDropDown", "handleQuestion", "hadleDropDownDependent", "handleCalendarDate"] }, { kind: "component", type: i3.CustomModelComponent, selector: "app-custom-model", inputs: ["modalTitle", "isModalOpen", "modalSize", "saveButtonValue", "modalFooter"], outputs: ["saveButtonEmit", "cancelButtonEmit"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
|
|
183
252
|
}
|
|
184
253
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomCalendarComponent, decorators: [{
|
|
185
254
|
type: Component,
|
|
186
|
-
args: [{ selector: 'app-custom-calendar', template: "<div class=\"align-calendar\">\n <div class=\"calendar-container\">\n
|
|
255
|
+
args: [{ selector: 'app-custom-calendar', template: "<div class=\"align-calendar\">\n <div class=\"calendar-container\">\n <div class=\"calendar-header\">\n <button (click)=\"previousMonth()\"><< Previous >></button>\n <h3>{{ currentDate | date: 'MMMM yyyy' }}</h3>\n <button (click)=\"nextMonth()\"><< Next >></button>\n </div>\n <div class=\"calendar-grid\">\n <div class=\"day-of-week\" *ngFor=\"let day of daysOfWeek\">{{ day }}</div>\n\n <div\n class=\"calendar-day\"\n *ngFor=\"let day of calendarDays\"\n [class.not-current-month]=\"!day.isCurrentMonth\"\n [class.past]=\"day.isPast\"\n [class.today]=\"day.isToday\"\n [class.future]=\"day.isFuture\"\n [class.selected]=\"day.isSelected\"\n (click)=\"selectDay(day)\"\n >\n <div class=\"day-number\">{{ day.date.getDate() }}\n <span *ngIf=\"day.events.length > 0\" class=\"entry-indicator\" [class.select]=\"day.isSelected\"></span>\n </div>\n <!-- <div *ngFor=\"let event of day.events\" >\n <div *ngFor=\"let entryGroup of event.entries\" class=\"event\">\n <div *ngFor=\"let key of getEntryKeys(entryGroup)\">\n <div *ngIf=\"entryGroup[key].Type__c == 'Time'\">\n {{ entryGroup[key].input?.value | date: 'shortTime' }}\n </div>\n <div *ngIf=\"entryGroup[key].Type__c != 'Time'\">\n {{ entryGroup[key].input }}\n </div>\n </div>\n </div>\n </div> -->\n </div>\n </div>\n </div>\n <div class=\"appoinappointment\">\n <div class=\"appointments-container\">\n <h4>Add Appointment</h4>\n <button *ngIf=\"selectedDay\" (click)=\"addAppointment()\">Add</button>\n </div>\n <!--VD 06Sep24 calendar updates--> \n <div *ngIf=\"showAppoinmentSection && selectedDay?.events.length > 0\" class=\"appointments-container\">\n <h4>Appointments</h4>\n <div *ngFor=\"let event of selectedDay?.events\">\n <div class=\"event\" *ngFor=\"let entryGroup of event.entries\">\n <div class=\"event-info\">\n <div *ngFor=\"let key of getEntryKeys(entryGroup)\" class=\"entry-row\">\n <div *ngIf=\"entryGroup[key].Question_Text__c\" class=\"entry-text\">\n {{removeCharacters(entryGroup[key].Question_Text__c)}}:\n </div>\n <div class=\"entry-value\">\n <span *ngIf=\"entryGroup[key].Type__c != 'Time' && entryGroup[key].Type__c != 'Link'\">{{ entryGroup[key].input }}</span>\n <span *ngIf=\"entryGroup[key].Type__c == 'Time'\">{{ entryGroup[key].input | date: 'shortTime' }}</span>\n <span *ngIf=\"entryGroup[key].Type__c == 'Link'\">\n <a href=\"{{entryGroup[key].input}}\">{{removeCharacters(entryGroup[key].Question_Text__c)}}</a>\n </span>\n </div>\n </div>\n <div class=\"event-actions\">\n <button (click)=\"editEvent(event,entryGroup)\">Edit</button>\n <button (click)=\"deleteEvent(event.id,entryGroup)\">Delete</button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<app-custom-model\n [modalTitle]=\"modalTitle\"\n [isModalOpen]=\"isModalOpen\"\n [modalSize]=\"modalSize\"\n [saveButtonValue]=\"saveButtonValue\"\n [modalFooter]=\"modalFooter\"\n (saveButtonEmit)=\"onSave()\"\n (cancelButtonEmit)=\"onCancel()\"\n>\n<lib-questionbook [qbItem]=\"qbRefrenceBook\" [questions]=\"referenceQuestions\" (handleQuestion)=\"handleQuestionEvent($event)\"></lib-questionbook>\n</app-custom-model>\n\n\n \n \n ", styles: [".calendar-container{flex:1}.appoinappointment{flex:1;margin-left:10px}.calendar-header{display:flex;justify-content:space-between;align-items:center}.selected{box-shadow:0 0 5px #00000080;background-color:green!important;color:#fff!important}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.day-of-week{text-align:center;font-weight:700;padding:5px;background-color:#f0f0f0;border:1px solid #ccc}.calendar-day{border:1px solid #ccc;padding:5px;display:flex;flex-direction:column;align-items:flex-start;background-color:#fff;position:relative;cursor:pointer}.calendar-day.not-current-month{background-color:#f0f0f0}.calendar-day.past{color:#aaa}.calendar-day.today{background-color:#e6ffe6;font-weight:700}.calendar-day.future{color:#000}.day-number{font-size:1.2em;margin-bottom:5px}.event{background-color:#d1e7dd;border-left:4px solid #0f5132;margin:5px 0;padding:2px 5px;border-radius:3px}.event-title{font-weight:700}.event-time{font-size:.8em}input[type=text],input[type=time]{width:100%;margin-top:5px;box-sizing:border-box}button{margin-top:5px;align-self:stretch;margin-left:0!important}.calendar-header button{margin-top:5px;align-self:stretch;margin-left:0!important;border:none;background:none}.align-calendar{display:flex;width:100%}.form-group.content-box{padding-bottom:0!important}.entry-indicator{position:absolute;top:5px;right:5px;width:10px;height:10px;background-color:#0f5132;border-radius:50%}.select{background-color:#fff}.entry-row{display:flex;align-items:center;margin-bottom:5px}.entry-text{font-weight:700;margin-right:10px;white-space:nowrap}.entry-value{flex:1;word-break:break-word}.entry-value a{color:#4caf50}\n"] }]
|
|
187
256
|
}], propDecorators: { eventSelected: [{
|
|
188
257
|
type: Output
|
|
258
|
+
}], dateSelected: [{
|
|
259
|
+
type: Output
|
|
189
260
|
}], allEvents: [{
|
|
190
261
|
type: Input
|
|
191
262
|
}], question: [{
|
|
192
263
|
type: Input
|
|
193
264
|
}] } });
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL254dC1hcHAvc3JjL2xpYi9jb21wb25lbnRzL2N1c3RvbS1jYWxlbmRhci9jdXN0b20tY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLWNhbGVuZGFyL2N1c3RvbS1jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7O0FBaUJ0RyxNQUFNLE9BQU8sdUJBQXVCO0lBRXhCLGFBQWEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3pDLFNBQVMsR0FBVSxFQUFFLENBQUM7SUFDdEIsUUFBUSxDQUFVO0lBRTNCLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDYixrQkFBa0IsR0FBRyxFQUFFLENBQUM7SUFDeEIsY0FBYyxDQUFLO0lBQ25CLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUV0QixXQUFXLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUMvQixZQUFZLEdBQWtCLEVBQUUsQ0FBQztJQUNqQyxVQUFVLEdBQWEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUV0RyxhQUFhLEdBQVcsRUFBRSxDQUFDO0lBQzNCLFlBQVksR0FBVyxFQUFFLENBQUM7SUFDMUIsY0FBYyxHQUFXLEVBQUUsQ0FBQztJQUM1QixPQUFPLEdBQVcsRUFBRSxDQUFDO0lBQ3JCLFdBQVcsR0FBdUIsSUFBSSxDQUFDO0lBRXZDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsVUFBVSxHQUFHLGNBQWMsQ0FBQztJQUM1QixTQUFTLEdBQUcsT0FBTyxDQUFDO0lBQ3BCLGVBQWUsR0FBRyxNQUFNLENBQUM7SUFDekIsV0FBVyxHQUFHLElBQUksQ0FBQztJQUNuQixjQUFjLENBQVM7SUFFdkIsUUFBUTtRQUNMLElBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUM7WUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztTQUNyQztRQUNGLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUM7UUFDN0UsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO1FBQ3hELElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUM7UUFDN0IsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQzNCLElBQUcsT0FBTyxDQUFDLGlCQUFpQixFQUFDO29CQUMzQixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO29CQUN2RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztpQkFDcEQ7WUFDTCxDQUFDLENBQUMsQ0FBQztTQUNMO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQixPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUUxQyxNQUFNLFlBQVksR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sVUFBVSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRWhELE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUM3QyxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFekMsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDekMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsY0FBYyxDQUFDLENBQUM7UUFFeEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDckMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUV4RCxNQUFNLEtBQUssR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRTtZQUMxRSxNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDckIsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsTUFBTSxFQUFFLEVBQUU7Z0JBQ1YsY0FBYyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsS0FBSyxLQUFLO2dCQUN0QyxNQUFNLEVBQUUsSUFBSSxHQUFHLEtBQUs7Z0JBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDM0MsUUFBUSxFQUFFLElBQUksR0FBRyxLQUFLO2FBQ3ZCLENBQUMsQ0FBQztTQUNKO1FBRUgscURBQXFEO1FBQ3JELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzlCLEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNyRyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBR0QsU0FBUyxDQUFDLEdBQWdCO1FBQ3hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7UUFDeEIsd0NBQXdDO1FBQ3ZDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEUsSUFBSSxxQkFBcUIsRUFBRTtZQUN6QixxQkFBcUIsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQzFDO1FBQ0QseUJBQXlCO1FBQ3pCLEdBQUcsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLG9DQUFvQztRQUNuRixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxvQ0FBb0M7UUFDbkYsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDckMsa0JBQWtCO1lBQ2xCLElBQUcsSUFBSSxDQUFDLEtBQUssRUFBQztnQkFDWixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDbkI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsd0NBQXdDLENBQUMsQ0FBQztRQUN0RCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO0lBQzdCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBSztRQUNiLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLDhEQUE4RDtRQUM3RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXLENBQUMsR0FBZ0IsRUFBRSxPQUFlO1FBQzNDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFnQixFQUFDLFNBQVM7UUFDakMsTUFBTSxRQUFRLEdBQUk7WUFDaEIsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDckIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1lBQ2QsT0FBTyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3hDLENBQUM7UUFDRixHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBRTFCLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLElBQUksRUFBRTtZQUNoQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3JFLElBQUksS0FBSyxFQUFFO2dCQUNULEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUM1RDtTQUNGO2FBQU07WUFDTCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUN4RDtTQUNGO1FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsSUFBSTtRQUNwQixtREFBbUQ7UUFDbkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2Qsd0NBQXdDO1lBQ3hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUM7U0FDckM7YUFBTTtZQUNMLGlEQUFpRDtZQUNqRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdkQsQ0FBQzt3R0ExTVEsdUJBQXVCOzRGQUF2Qix1QkFBdUIsa0tDakJwQyw0MkZBdUVFOzs0RkR0RFcsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLHFCQUFxQjs4QkFNckIsYUFBYTtzQkFBdEIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFF1ZXN0aW9uIH0gZnJvbSAnLi4vLi4vd3JhcHBlcic7XG5pbnRlcmZhY2UgQ2FsZW5kYXJEYXkge1xuICBkYXRlOiBEYXRlO1xuICBldmVudHM6IGFueVtdO1xuICBpc0N1cnJlbnRNb250aDogYm9vbGVhbjtcbiAgaXNQYXN0OiBib29sZWFuO1xuICBpc1RvZGF5OiBib29sZWFuO1xuICBpc0Z1dHVyZTogYm9vbGVhbjtcbiAgaXNTZWxlY3RlZD86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jdXN0b20tY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21DYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQE91dHB1dCgpIGV2ZW50U2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgYWxsRXZlbnRzOiBhbnlbXSA9IFtdOyBcbiAgQElucHV0KCkgcXVlc3Rpb246IFF1ZXN0aW9uXG5cbiAgZW50cmllcyA9IFtdO1xuICByZWZlcmVuY2VRdWVzdGlvbnMgPSBbXTtcbiAgcWJSZWZyZW5jZUJvb2s6YW55O1xuICBjYWxlbmRhclF1ZXN0aW9uID0gW107XG5cbiAgY3VycmVudERhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICBjYWxlbmRhckRheXM6IENhbGVuZGFyRGF5W10gPSBbXTtcbiAgZGF5c09mV2Vlazogc3RyaW5nW10gPSBbJ1N1bmRheScsICdNb25kYXknLCAnVHVlc2RheScsICdXZWRuZXNkYXknLCAnVGh1cnNkYXknLCAnRnJpZGF5JywgJ1NhdHVyZGF5J107XG5cbiAgbmV3RXZlbnRUaXRsZTogc3RyaW5nID0gJyc7XG4gIG5ld0V2ZW50VGltZTogc3RyaW5nID0gJyc7XG4gIG5ld0Rlc2NyaXB0aW9uOiBzdHJpbmcgPSAnJztcbiAgbmV3TGluazogc3RyaW5nID0gJyc7XG4gIHNlbGVjdGVkRGF5OiBDYWxlbmRhckRheSB8IG51bGwgPSBudWxsO1xuXG4gIGlzTW9kYWxPcGVuID0gZmFsc2U7XG4gIG1vZGFsVGl0bGUgPSAnQ3VzdG9tIE1vZGFsJztcbiAgbW9kYWxTaXplID0gJ2xhcmdlJztcbiAgc2F2ZUJ1dHRvblZhbHVlID0gJ1NhdmUnO1xuICBtb2RhbEZvb3RlciA9IHRydWU7XG4gIGVkaXRpbmdFdmVudElkOiBudW1iZXI7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgIGlmKHRoaXMucXVlc3Rpb24/LmlucHV0KXtcbiAgICAgIHRoaXMuYWxsRXZlbnRzID0gdGhpcy5xdWVzdGlvbi5pbnB1dDtcbiAgICAgfVxuICAgIHRoaXMucHJvY2Vzc1F1ZXN0aW9uKCk7XG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gIH1cblxuICBwcm9jZXNzUXVlc3Rpb24oKXtcbiAgICB0aGlzLmVudHJpZXMgPSBKU09OLnBhcnNlKHRoaXMucXVlc3Rpb25bJ0ZpZWxkc19NZXRhX19jJ10pO1xuICAgIHRoaXMucWJSZWZyZW5jZUJvb2sgPSBKU09OLnBhcnNlKHRoaXMucXVlc3Rpb25bJ1FCX1JlZmVyZW5jZV9RdWVzdGlvbnNfX2MnXSk7XG4gICAgbGV0IHRpdGxlID0gdGhpcy5xYlJlZnJlbmNlQm9vaz8ucXVlc3Rpb25ib29rPy5UaXRsZV9fYztcbiAgICB0aGlzLm1vZGFsVGl0bGUgPSB0aXRsZTtcbiAgICB0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyA9IFtdO1xuICAgIGlmKHRoaXMuZW50cmllcy5sZW5ndGggPiAwKXtcbiAgICAgICB0aGlzLmVudHJpZXMuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgICAgICAgaWYoZWxlbWVudC5xdWVzdGlvblJlZmVyZW5jZSl7XG4gICAgICAgICAgICAgbGV0IHFSZWZlcmVuY2UgPSBKU09OLnBhcnNlKGVsZW1lbnQucXVlc3Rpb25SZWZlcmVuY2UpO1xuICAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zLnB1c2gocVJlZmVyZW5jZT8ucXVlc3Rpb24pO1xuICAgICAgICAgICB9XG4gICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKCdlbnRyaWVzLS0+Jyk7XG4gICAgY29uc29sZS5sb2coJ3F1ZXN0aW9uLS0+Jyk7XG4gICAgY29uc29sZS5sb2codGhpcy5lbnRyaWVzKTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyk7XG4gIH1cblxuICBnZW5lcmF0ZUNhbGVuZGFyKCkge1xuICAgIGNvbnN0IHllYXIgPSB0aGlzLmN1cnJlbnREYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgbW9udGggPSB0aGlzLmN1cnJlbnREYXRlLmdldE1vbnRoKCk7XG5cbiAgICBjb25zdCBzdGFydE9mTW9udGggPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSk7XG4gICAgY29uc3QgZW5kT2ZNb250aCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgMCk7XG5cbiAgICBjb25zdCBzdGFydERheU9mV2VlayA9IHN0YXJ0T2ZNb250aC5nZXREYXkoKTtcbiAgICBjb25zdCBlbmREYXlPZldlZWsgPSBlbmRPZk1vbnRoLmdldERheSgpO1xuXG4gICAgY29uc3Qgc3RhcnREYXRlID0gbmV3IERhdGUoc3RhcnRPZk1vbnRoKTtcbiAgICBzdGFydERhdGUuc2V0RGF0ZShzdGFydERhdGUuZ2V0RGF0ZSgpIC0gc3RhcnREYXlPZldlZWspO1xuXG4gICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBEYXRlKGVuZE9mTW9udGgpO1xuICAgIGVuZERhdGUuc2V0RGF0ZShlbmREYXRlLmdldERhdGUoKSArICg2IC0gZW5kRGF5T2ZXZWVrKSk7XG5cbiAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuc2V0SG91cnMoMCwgMCwgMCwgMCkpO1xuICAgIFxuICAgICAgdGhpcy5jYWxlbmRhckRheXMgPSBbXTtcbiAgICAgIGZvciAobGV0IGQgPSBuZXcgRGF0ZShzdGFydERhdGUpOyBkIDw9IGVuZERhdGU7IGQuc2V0RGF0ZShkLmdldERhdGUoKSArIDEpKSB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShkKTtcbiAgICAgICAgdGhpcy5jYWxlbmRhckRheXMucHVzaCh7XG4gICAgICAgICAgZGF0ZTogZGF0ZSxcbiAgICAgICAgICBldmVudHM6IFtdLFxuICAgICAgICAgIGlzQ3VycmVudE1vbnRoOiBkLmdldE1vbnRoKCkgPT09IG1vbnRoLFxuICAgICAgICAgIGlzUGFzdDogZGF0ZSA8IHRvZGF5LFxuICAgICAgICAgIGlzVG9kYXk6IGRhdGUuZ2V0VGltZSgpID09PSB0b2RheS5nZXRUaW1lKCksXG4gICAgICAgICAgaXNGdXR1cmU6IGRhdGUgPiB0b2RheSxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAvLyBQb3B1bGF0ZSBjYWxlbmRhciB3aXRoIGV2ZW50cyBmcm9tIGFsbEV2ZW50cyBhcnJheVxuICAgIHRoaXMuY2FsZW5kYXJEYXlzLmZvckVhY2goZGF5ID0+IHtcbiAgICAgIGRheS5ldmVudHMgPSB0aGlzLmFsbEV2ZW50cy5maWx0ZXIoZXZlbnQgPT4gZXZlbnQuZGF0ZS50b0RhdGVTdHJpbmcoKSA9PT0gZGF5LmRhdGUudG9EYXRlU3RyaW5nKCkpO1xuICAgIH0pO1xuICAgIHRoaXMuZXZlbnRTZWxlY3RlZC5lbWl0KHRoaXMuYWxsRXZlbnRzKTtcbiAgfVxuXG5cbiAgc2VsZWN0RGF5KGRheTogQ2FsZW5kYXJEYXkpIHtcbiAgICBjb25zb2xlLmxvZyhkYXkpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXkgPSBkYXk7XG4gICAvLyB0aGlzLmV2ZW50U2VsZWN0ZWQuZW1pdChkYXk/LmV2ZW50cyk7XG4gICAgY29uc3QgcHJldmlvdXNseVNlbGVjdGVkRGF5ID0gdGhpcy5jYWxlbmRhckRheXMuZmluZChkID0+IGQuaXNTZWxlY3RlZCk7XG4gICAgaWYgKHByZXZpb3VzbHlTZWxlY3RlZERheSkge1xuICAgICAgcHJldmlvdXNseVNlbGVjdGVkRGF5LmlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gU2VsZWN0IHRoZSBjbGlja2VkIGRheVxuICAgIGRheS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByZXZpb3VzTW9udGgoKSB7XG4gICAgdGhpcy5jdXJyZW50RGF0ZS5zZXRNb250aCh0aGlzLmN1cnJlbnREYXRlLmdldE1vbnRoKCkgLSAxKTtcbiAgICB0aGlzLmN1cnJlbnREYXRlID0gbmV3IERhdGUodGhpcy5jdXJyZW50RGF0ZSk7IC8vIEVuc3VyZSB0aGUgZGF0ZSBvYmplY3QgaXMgdXBkYXRlZFxuICAgIHRoaXMuZ2VuZXJhdGVDYWxlbmRhcigpO1xuICB9XG5cbiAgbmV4dE1vbnRoKCkge1xuICAgIHRoaXMuY3VycmVudERhdGUuc2V0TW9udGgodGhpcy5jdXJyZW50RGF0ZS5nZXRNb250aCgpICsgMSk7XG4gICAgdGhpcy5jdXJyZW50RGF0ZSA9IG5ldyBEYXRlKHRoaXMuY3VycmVudERhdGUpOyAvLyBFbnN1cmUgdGhlIGRhdGUgb2JqZWN0IGlzIHVwZGF0ZWRcbiAgICB0aGlzLmdlbmVyYXRlQ2FsZW5kYXIoKTtcbiAgfVxuXG4gIGFkZEFwcG9pbnRtZW50KCkge1xuICAgIHRoaXMuaXNNb2RhbE9wZW4gPSB0cnVlO1xuICAgICB0aGlzLmNhbGVuZGFyUXVlc3Rpb24gPSB0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucy5tYXAocSA9PiAoeyAuLi5xLCBpbnB1dDogJycgfSkpO1xuICAgIHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zLmZvckVhY2gocXVlcyA9PiB7XG4gICAgICAvLyBjbGVhciB0aGUgaW5wdXRcbiAgICAgIGlmKHF1ZXMuaW5wdXQpe1xuICAgICAgICBkZWxldGUgcXVlcy5pbnB1dDtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZygnIGNvbnNvbGUubG9nKHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zKTsnKTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyk7XG4gICAgdGhpcy5lZGl0aW5nRXZlbnRJZCA9IG51bGw7XG4gIH1cblxuICBlZGl0RXZlbnQoZXZlbnQpIHtcbiAgICB0aGlzLmlzTW9kYWxPcGVuID0gdHJ1ZTtcbiAgIC8vIHRoaXMuY2FsZW5kYXJRdWVzdGlvbiA9IGV2ZW50LmVudHJpZXMubWFwKHEgPT4gKHsgLi4ucSB9KSk7XG4gICAgdGhpcy5yZWZlcmVuY2VRdWVzdGlvbnMgPSBldmVudC5lbnRyaWVzLm1hcChxID0+ICh7IC4uLnEgfSkpO1xuICAgIHRoaXMuZWRpdGluZ0V2ZW50SWQgPSBldmVudC5pZDtcbiAgICB0aGlzLmdlbmVyYXRlQ2FsZW5kYXIoKTtcbiAgfVxuICBcbiAgZGVsZXRlRXZlbnQoZGF5OiBDYWxlbmRhckRheSwgZXZlbnRJZDogc3RyaW5nKSB7XG4gICAgZGF5LmV2ZW50cyA9IGRheS5ldmVudHMuZmlsdGVyKGV2ZW50ID0+IGV2ZW50LmlkICE9PSBldmVudElkKTtcbiAgICB0aGlzLmFsbEV2ZW50cyA9IHRoaXMuYWxsRXZlbnRzLmZpbHRlcihldmVudCA9PiBldmVudC5pZCAhPT0gZXZlbnRJZCk7XG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gIH1cblxuICBjbG9zZU1vZGFsKCkge1xuICAgIHRoaXMuaXNNb2RhbE9wZW4gPSBmYWxzZTtcbiAgfVxuXG4gIGFkZEV2ZW50KGRheTogQ2FsZW5kYXJEYXksZW50cnlRdWVzKSB7XG4gICAgY29uc3QgbmV3RXZlbnQgID0ge1xuICAgICAgaWQ6IHRoaXMuZ2VuZXJhdGVJZCgpLFxuICAgICAgZGF0ZTogZGF5LmRhdGUsXG4gICAgICBlbnRyaWVzOiBlbnRyeVF1ZXMubWFwKHEgPT4gKHsgLi4ucSB9KSlcbiAgICB9O1xuICAgIGRheS5ldmVudHMucHVzaChuZXdFdmVudCk7XG4gICAgdGhpcy5hbGxFdmVudHMucHVzaChuZXdFdmVudCk7XG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gICAgY29uc29sZS5sb2coJ2FsbEV2ZW50cycpO1xuICAgIGNvbnNvbGUubG9nKHRoaXMuYWxsRXZlbnRzKTtcbiAgICB0aGlzLmdlbmVyYXRlQ2FsZW5kYXIoKTtcblxuICB9XG5cbiAgb25TYXZlKCkge1xuICAgIGlmICh0aGlzLmVkaXRpbmdFdmVudElkICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBldmVudCA9IHRoaXMuYWxsRXZlbnRzLmZpbmQoZSA9PiBlLmlkID09PSB0aGlzLmVkaXRpbmdFdmVudElkKTtcbiAgICAgIGlmIChldmVudCkge1xuICAgICAgICBldmVudC5lbnRyaWVzID0gdGhpcy5jYWxlbmRhclF1ZXN0aW9uLm1hcChxID0+ICh7IC4uLnEgfSkpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RlZERheSkge1xuICAgICAgICB0aGlzLmFkZEV2ZW50KHRoaXMuc2VsZWN0ZWREYXksIHRoaXMuY2FsZW5kYXJRdWVzdGlvbik7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuY2xvc2VNb2RhbCgpO1xuICAgIHRoaXMuZ2VuZXJhdGVDYWxlbmRhcigpO1xuICB9XG5cbiAgb25DYW5jZWwoKSB7XG4gICAgY29uc29sZS5sb2coJ0NhbmNlbCBidXR0b24gY2xpY2tlZCcpO1xuICAgIHRoaXMuY2xvc2VNb2RhbCgpO1xuICB9XG5cbiAgaGFuZGxlUXVlc3Rpb25FdmVudChxdWVzKXtcbiAgICAgIC8vIFVwZGF0ZSB0aGUgcXVlc3Rpb25zIGFycmF5IHdpdGggdGhlIG5ldyBxdWVzdGlvblxuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmNhbGVuZGFyUXVlc3Rpb24uZmluZEluZGV4KHEgPT4gcS5JZCA9PT0gcXVlcy5JZCk7XG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAvLyBJZiBxdWVzdGlvbiBhbHJlYWR5IGV4aXN0cywgdXBkYXRlIGl0XG4gICAgICAgIHRoaXMuY2FsZW5kYXJRdWVzdGlvbltpbmRleF0gPSBxdWVzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gSWYgcXVlc3Rpb24gZG9lc24ndCBleGlzdCwgYWRkIGl0IHRvIHRoZSBhcnJheVxuICAgICAgICB0aGlzLmNhbGVuZGFyUXVlc3Rpb24ucHVzaChxdWVzKTtcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKCdjYWxlbmRlciBxdWVzdGlvbicpO1xuICAgICAgY29uc29sZS5sb2codGhpcy5jYWxlbmRhclF1ZXN0aW9uKTtcbiAgICB9XG5cbiAgICBnZW5lcmF0ZUlkKCkge1xuICAgICAgcmV0dXJuICdfJyArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyLCA5KTtcbiAgICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJhbGlnbi1jYWxlbmRhclwiPlxuICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyLWhlYWRlclwiPlxuICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInByZXZpb3VzTW9udGgoKVwiPjw8IFByZXZpb3VzID4+PC9idXR0b24+XG4gICAgICAgICAgPGgzPnt7IGN1cnJlbnREYXRlIHwgZGF0ZTogJ01NTU0geXl5eScgfX08L2gzPlxuICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cIm5leHRNb250aCgpXCI+PDwgTmV4dCA+PjwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhbGVuZGFyLWdyaWRcIj5cbiAgICAgICAgICA8IS0tIERheXMgb2YgdGhlIFdlZWsgSGVhZGVyIC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXktb2Ytd2Vla1wiICpuZ0Zvcj1cImxldCBkYXkgb2YgZGF5c09mV2Vla1wiPnt7IGRheSB9fTwvZGl2PlxuICAgICAgXG4gICAgICAgICAgPCEtLSBDYWxlbmRhciBEYXlzIC0tPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiY2FsZW5kYXItZGF5XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXkgb2YgY2FsZW5kYXJEYXlzXCJcbiAgICAgICAgICAgIFtjbGFzcy5ub3QtY3VycmVudC1tb250aF09XCIhZGF5LmlzQ3VycmVudE1vbnRoXCJcbiAgICAgICAgICAgIFtjbGFzcy5wYXN0XT1cImRheS5pc1Bhc3RcIlxuICAgICAgICAgICAgW2NsYXNzLnRvZGF5XT1cImRheS5pc1RvZGF5XCJcbiAgICAgICAgICAgIFtjbGFzcy5mdXR1cmVdPVwiZGF5LmlzRnV0dXJlXCJcbiAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJkYXkuaXNTZWxlY3RlZFwiIFxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdERheShkYXkpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5LW51bWJlclwiPnt7IGRheS5kYXRlLmdldERhdGUoKSB9fTwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZXZlbnQgb2YgZGF5LmV2ZW50c1wiIGNsYXNzPVwiZXZlbnRcIj5cbiAgICAgICAgICAgICAgPGRpdiAgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGV2ZW50Py5lbnRyaWVzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImVudHJ5LlR5cGVfX2MgPT0gJ1RpbWUnXCI+e3sgZW50cnkuaW5wdXQ/LnZhbHVlIHwgZGF0ZTogJ3Nob3J0VGltZScgIH19PC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhcHBvaW5hcHBvaW50bWVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXBwb2ludG1lbnRzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGg0PkFkZCBBcHBvaW50bWVudDwvaDQ+XG4gICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2VsZWN0ZWREYXlcIiAoY2xpY2spPVwiYWRkQXBwb2ludG1lbnQoKVwiPkFkZDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcHBvaW50bWVudHMtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8aDQgKm5nSWY9XCJzZWxlY3RlZERheT8uZXZlbnRzLmxlbmd0aCA+IDBcIj5BcHBvaW50bWVudHM8L2g0PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50XCIgKm5nRm9yPVwibGV0IGV2ZW50IG9mIHNlbGVjdGVkRGF5Py5ldmVudHNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtaW5mb1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGV2ZW50Py5lbnRyaWVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImVudHJ5LlR5cGVfX2MgIT0gJ1RpbWUnXCI+e3sgZW50cnkuaW5wdXQgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW50cnkuVHlwZV9fYyA9PSAnVGltZSdcIj57eyBlbnRyeS5pbnB1dD8udmFsdWUgfCBkYXRlOiAnbWVkaXVtRGF0ZScgIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50LWFjdGlvbnNcIj5cbiAgICAgICAgICAgICAgICAgIDxidXR0b24gIChjbGljayk9XCJlZGl0RXZlbnQoZXZlbnQpXCI+RWRpdDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZGVsZXRlRXZlbnQoc2VsZWN0ZWREYXksIGV2ZW50LmlkKVwiPkRlbGV0ZTwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgXG4gICAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGFwcC1jdXN0b20tbW9kZWxcbiAgW21vZGFsVGl0bGVdPVwibW9kYWxUaXRsZVwiXG4gIFtpc01vZGFsT3Blbl09XCJpc01vZGFsT3BlblwiXG4gIFttb2RhbFNpemVdPVwibW9kYWxTaXplXCJcbiAgW3NhdmVCdXR0b25WYWx1ZV09XCJzYXZlQnV0dG9uVmFsdWVcIlxuICBbbW9kYWxGb290ZXJdPVwibW9kYWxGb290ZXJcIlxuICAoc2F2ZUJ1dHRvbkVtaXQpPVwib25TYXZlKClcIlxuICAoY2FuY2VsQnV0dG9uRW1pdCk9XCJvbkNhbmNlbCgpXCJcbj5cbjxhcHAtcXVlc3Rpb25ib29rIFtxYkl0ZW1dPVwicWJSZWZyZW5jZUJvb2tcIiBbcXVlc3Rpb25zXT1cInJlZmVyZW5jZVF1ZXN0aW9uc1wiIChoYW5kbGVRdWVzdGlvbik9XCJoYW5kbGVRdWVzdGlvbkV2ZW50KCRldmVudClcIj48L2FwcC1xdWVzdGlvbmJvb2s+XG48L2FwcC1jdXN0b20tbW9kZWw+XG5cblxuICBcbiAgXG4gICJdfQ==
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL254dC1hcHAvc3JjL2xpYi9jb21wb25lbnRzL2N1c3RvbS1jYWxlbmRhci9jdXN0b20tY2FsZW5kYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLWNhbGVuZGFyL2N1c3RvbS1jYWxlbmRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7OztBQWlCdEcsTUFBTSxPQUFPLHVCQUF1QjtJQUV4QixhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUNsRCw4QkFBOEI7SUFDcEIsWUFBWSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDeEMsU0FBUyxHQUFVLEVBQUUsQ0FBQztJQUN0QixRQUFRLENBQVU7SUFFM0IsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUNiLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztJQUN4QixjQUFjLENBQUs7SUFDbkIsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBRXRCLFdBQVcsR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQy9CLFlBQVksR0FBa0IsRUFBRSxDQUFDO0lBQ2pDLFVBQVUsR0FBYSxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBRXRHLGFBQWEsR0FBVyxFQUFFLENBQUM7SUFDM0IsWUFBWSxHQUFXLEVBQUUsQ0FBQztJQUMxQixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLE9BQU8sR0FBVyxFQUFFLENBQUM7SUFDckIsV0FB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VUFBVSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGdCQUFnQixDQUFDLFlBQW1CO1FBQ2xDLElBQUksV0FBVyxHQUFHLFlBQVksRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELE9BQU8sV0FBVyxDQUFDO0lBQ3RCLENBQUM7d0dBalJXLHVCQUF1Qjs0RkFBdkIsdUJBQXVCLGdNQ2pCcEMsd2lJQXVGRTs7NEZEdEVXLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxxQkFBcUI7OEJBTXJCLGFBQWE7c0JBQXRCLE1BQU07Z0JBRUcsWUFBWTtzQkFBckIsTUFBTTtnQkFDRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFF1ZXN0aW9uIH0gZnJvbSAnLi4vLi4vd3JhcHBlcic7XG5pbnRlcmZhY2UgQ2FsZW5kYXJEYXkge1xuICBkYXRlOiBEYXRlO1xuICBldmVudHM6IGFueVtdO1xuICBpc0N1cnJlbnRNb250aDogYm9vbGVhbjtcbiAgaXNQYXN0OiBib29sZWFuO1xuICBpc1RvZGF5OiBib29sZWFuO1xuICBpc0Z1dHVyZTogYm9vbGVhbjtcbiAgaXNTZWxlY3RlZD86IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jdXN0b20tY2FsZW5kYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tLWNhbGVuZGFyLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21DYWxlbmRhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQE91dHB1dCgpIGV2ZW50U2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgLy8gVkQgMDZTZXAyNCBjYWxlbmRhciBjaGFuZ2VzXG4gIEBPdXRwdXQoKSBkYXRlU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgYWxsRXZlbnRzOiBhbnlbXSA9IFtdOyBcbiAgQElucHV0KCkgcXVlc3Rpb246IFF1ZXN0aW9uXG5cbiAgZW50cmllcyA9IFtdO1xuICByZWZlcmVuY2VRdWVzdGlvbnMgPSBbXTtcbiAgcWJSZWZyZW5jZUJvb2s6YW55O1xuICBjYWxlbmRhclF1ZXN0aW9uID0gW107XG5cbiAgY3VycmVudERhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICBjYWxlbmRhckRheXM6IENhbGVuZGFyRGF5W10gPSBbXTtcbiAgZGF5c09mV2Vlazogc3RyaW5nW10gPSBbJ1N1bmRheScsICdNb25kYXknLCAnVHVlc2RheScsICdXZWRuZXNkYXknLCAnVGh1cnNkYXknLCAnRnJpZGF5JywgJ1NhdHVyZGF5J107XG5cbiAgbmV3RXZlbnRUaXRsZTogc3RyaW5nID0gJyc7XG4gIG5ld0V2ZW50VGltZTogc3RyaW5nID0gJyc7XG4gIG5ld0Rlc2NyaXB0aW9uOiBzdHJpbmcgPSAnJztcbiAgbmV3TGluazogc3RyaW5nID0gJyc7XG4gIHNlbGVjdGVkRGF5OiBDYWxlbmRhckRheSB8IG51bGwgPSBudWxsO1xuXG4gIGlzTW9kYWxPcGVuID0gZmFsc2U7XG4gIG1vZGFsVGl0bGUgPSAnQ3VzdG9tIE1vZGFsJztcbiAgbW9kYWxTaXplID0gJ2xhcmdlJztcbiAgc2F2ZUJ1dHRvblZhbHVlID0gJ1NhdmUnO1xuICBtb2RhbEZvb3RlciA9IHRydWU7XG4gIGVkaXRpbmdFdmVudElkOiBudW1iZXI7XG4gIGVkaXRpbmdFbnRyeUdyb3VwOiBhbnk7XG4gIHNob3dBcHBvaW5tZW50U2VjdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgIGlmKHRoaXMucXVlc3Rpb24/LmlucHV0KXtcbiAgICAgIHRoaXMuYWxsRXZlbnRzID0gdGhpcy5xdWVzdGlvbi5pbnB1dDtcbiAgICAgfVxuICAgIHRoaXMucHJvY2Vzc1F1ZXN0aW9uKCk7XG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gIH1cblxuICBwcm9jZXNzUXVlc3Rpb24oKXtcbiAgICB0aGlzLmVudHJpZXMgPSBKU09OLnBhcnNlKHRoaXMucXVlc3Rpb25bJ0ZpZWxkc19NZXRhX19jJ10pO1xuICAgIHRoaXMucWJSZWZyZW5jZUJvb2sgPSBKU09OLnBhcnNlKHRoaXMucXVlc3Rpb25bJ1FCX1JlZmVyZW5jZV9RdWVzdGlvbnNfX2MnXSk7XG4gICAgbGV0IHRpdGxlID0gdGhpcy5xYlJlZnJlbmNlQm9vaz8ucXVlc3Rpb25ib29rPy5UaXRsZV9fYztcbiAgICB0aGlzLm1vZGFsVGl0bGUgPSB0aXRsZTtcbiAgICB0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyA9IFtdO1xuICAgIGlmKHRoaXMuZW50cmllcy5sZW5ndGggPiAwKXtcbiAgICAgICB0aGlzLmVudHJpZXMuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgICAgICAgaWYoZWxlbWVudC5xdWVzdGlvblJlZmVyZW5jZSl7XG4gICAgICAgICAgICAgbGV0IHFSZWZlcmVuY2UgPSBKU09OLnBhcnNlKGVsZW1lbnQucXVlc3Rpb25SZWZlcmVuY2UpO1xuICAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zLnB1c2gocVJlZmVyZW5jZT8ucXVlc3Rpb24pO1xuICAgICAgICAgICB9XG4gICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnNvbGUubG9nKCdlbnRyaWVzLS0+Jyk7XG4gICAgY29uc29sZS5sb2coJ3F1ZXN0aW9uLS0+Jyk7XG4gICAgY29uc29sZS5sb2codGhpcy5lbnRyaWVzKTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyk7XG4gIH1cblxuICBnZW5lcmF0ZUNhbGVuZGFyKCkge1xuICAgIGNvbnN0IHllYXIgPSB0aGlzLmN1cnJlbnREYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgbW9udGggPSB0aGlzLmN1cnJlbnREYXRlLmdldE1vbnRoKCk7XG5cbiAgICBjb25zdCBzdGFydE9mTW9udGggPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgMSk7XG4gICAgY29uc3QgZW5kT2ZNb250aCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgMCk7XG5cbiAgICBjb25zdCBzdGFydERheU9mV2VlayA9IHN0YXJ0T2ZNb250aC5nZXREYXkoKTtcbiAgICBjb25zdCBlbmREYXlPZldlZWsgPSBlbmRPZk1vbnRoLmdldERheSgpO1xuXG4gICAgY29uc3Qgc3RhcnREYXRlID0gbmV3IERhdGUoc3RhcnRPZk1vbnRoKTtcbiAgICBzdGFydERhdGUuc2V0RGF0ZShzdGFydERhdGUuZ2V0RGF0ZSgpIC0gc3RhcnREYXlPZldlZWspO1xuXG4gICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBEYXRlKGVuZE9mTW9udGgpO1xuICAgIGVuZERhdGUuc2V0RGF0ZShlbmREYXRlLmdldERhdGUoKSArICg2IC0gZW5kRGF5T2ZXZWVrKSk7XG5cbiAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuc2V0SG91cnMoMCwgMCwgMCwgMCkpO1xuICAgIFxuICAgICAgdGhpcy5jYWxlbmRhckRheXMgPSBbXTtcbiAgICAgIGZvciAobGV0IGQgPSBuZXcgRGF0ZShzdGFydERhdGUpOyBkIDw9IGVuZERhdGU7IGQuc2V0RGF0ZShkLmdldERhdGUoKSArIDEpKSB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShkKTtcbiAgICAgICAgdGhpcy5jYWxlbmRhckRheXMucHVzaCh7XG4gICAgICAgICAgZGF0ZTogZGF0ZSxcbiAgICAgICAgICBldmVudHM6IFtdLFxuICAgICAgICAgIGlzQ3VycmVudE1vbnRoOiBkLmdldE1vbnRoKCkgPT09IG1vbnRoLFxuICAgICAgICAgIGlzUGFzdDogZGF0ZSA8IHRvZGF5LFxuICAgICAgICAgIGlzVG9kYXk6IGRhdGUuZ2V0VGltZSgpID09PSB0b2RheS5nZXRUaW1lKCksXG4gICAgICAgICAgaXNGdXR1cmU6IGRhdGUgPiB0b2RheSxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAvLyBQb3B1bGF0ZSBjYWxlbmRhciB3aXRoIGV2ZW50cyBmcm9tIGFsbEV2ZW50cyBhcnJheVxuICAgIHRoaXMuY2FsZW5kYXJEYXlzLmZvckVhY2goZGF5ID0+IHtcbiAgICAgIGRheS5ldmVudHMgPSB0aGlzLmFsbEV2ZW50cy5maWx0ZXIoZXZlbnQgPT4gZXZlbnQuZGF0ZS50b0RhdGVTdHJpbmcoKSA9PT0gZGF5LmRhdGUudG9EYXRlU3RyaW5nKCkpO1xuICAgIH0pO1xuICAgIHRoaXMuZXZlbnRTZWxlY3RlZC5lbWl0KHRoaXMuYWxsRXZlbnRzKTtcbiAgICAgLy8gVkQgMDZTZXAyNCBjYWxlbmRhciBjaGFuZ2VzXG4gICAgbGV0IGNhbGVuZGFyID0ge31cbiAgICBjYWxlbmRhclsneWVhciddID0geWVhcjtcbiAgICBjYWxlbmRhclsnbW9udGgnXSA9IG1vbnRoICsgMTtcbiAgICBjb25zb2xlLmxvZyhjYWxlbmRhcik7XG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdChjYWxlbmRhcik7XG4gIH1cblxuXG4gIHNlbGVjdERheShkYXk6IENhbGVuZGFyRGF5KSB7XG4gICAgY29uc29sZS5sb2coZGF5KTtcbiAgICAgLy8gVkQgMDZTZXAyNCBjYWxlbmRhciBjaGFuZ2VzXG4gICAgdGhpcy5zaG93QXBwb2lubWVudFNlY3Rpb24gPSB0cnVlO1xuICAgIHRoaXMuc2VsZWN0ZWREYXkgPSBkYXk7XG4gICAvLyB0aGlzLmV2ZW50U2VsZWN0ZWQuZW1pdChkYXk/LmV2ZW50cyk7XG4gICAgY29uc3QgcHJldmlvdXNseVNlbGVjdGVkRGF5ID0gdGhpcy5jYWxlbmRhckRheXMuZmluZChkID0+IGQuaXNTZWxlY3RlZCk7XG4gICAgaWYgKHByZXZpb3VzbHlTZWxlY3RlZERheSkge1xuICAgICAgcHJldmlvdXNseVNlbGVjdGVkRGF5LmlzU2VsZWN0ZWQgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gU2VsZWN0IHRoZSBjbGlja2VkIGRheVxuICAgIGRheS5pc1NlbGVjdGVkID0gdHJ1ZTtcbiAgfVxuXG4gIHByZXZpb3VzTW9udGgoKSB7XG4gICAgdGhpcy5zaG93QXBwb2lubWVudFNlY3Rpb24gPSBmYWxzZTtcbiAgICB0aGlzLmN1cnJlbnREYXRlLnNldE1vbnRoKHRoaXMuY3VycmVudERhdGUuZ2V0TW9udGgoKSAtIDEpO1xuICAgIHRoaXMuY3VycmVudERhdGUgPSBuZXcgRGF0ZSh0aGlzLmN1cnJlbnREYXRlKTsgLy8gRW5zdXJlIHRoZSBkYXRlIG9iamVjdCBpcyB1cGRhdGVkXG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gIH1cblxuICBuZXh0TW9udGgoKSB7XG4gICAgIC8vIFZEIDA2U2VwMjQgY2FsZW5kYXIgY2hhbmdlc1xuICAgIHRoaXMuc2hvd0FwcG9pbm1lbnRTZWN0aW9uID0gZmFsc2U7XG4gICAgdGhpcy5jdXJyZW50RGF0ZS5zZXRNb250aCh0aGlzLmN1cnJlbnREYXRlLmdldE1vbnRoKCkgKyAxKTtcbiAgICB0aGlzLmN1cnJlbnREYXRlID0gbmV3IERhdGUodGhpcy5jdXJyZW50RGF0ZSk7IC8vIEVuc3VyZSB0aGUgZGF0ZSBvYmplY3QgaXMgdXBkYXRlZFxuICAgIHRoaXMuZ2VuZXJhdGVDYWxlbmRhcigpO1xuICB9XG5cbiAgYWRkQXBwb2ludG1lbnQoKSB7XG4gICAgdGhpcy5pc01vZGFsT3BlbiA9IHRydWU7XG4gICAgIHRoaXMuY2FsZW5kYXJRdWVzdGlvbiA9IHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zLm1hcChxID0+ICh7IC4uLnEsIGlucHV0OiAnJyB9KSk7XG4gICAgdGhpcy5yZWZlcmVuY2VRdWVzdGlvbnMuZm9yRWFjaChxdWVzID0+IHtcbiAgICAgIC8vIGNsZWFyIHRoZSBpbnB1dFxuICAgICAgaWYocXVlcy5UeXBlX19jID09ICdEcm9wZG93bicpe1xuICAgICAgICBkZWxldGUgcXVlcy5pbnB1dDtcbiAgICAgICAgZGVsZXRlIHF1ZXMuc2VsZWN0ZWRWYWx1ZTtcbiAgICAgICAgIC8vIFZEIDA2U2VwMjQgY2FsZW5kYXIgY2hhbmdlc1xuICAgICAgfWVsc2Uge1xuICAgICAgICBkZWxldGUgcXVlcy5pbnB1dDtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBjb25zb2xlLmxvZygnIGNvbnNvbGUubG9nKHRoaXMucmVmZXJlbmNlUXVlc3Rpb25zKTsnKTtcbiAgICBjb25zb2xlLmxvZyh0aGlzLnJlZmVyZW5jZVF1ZXN0aW9ucyk7XG4gICAgdGhpcy5lZGl0aW5nRXZlbnRJZCA9IG51bGw7XG4gIH1cbiAvLyBWRCAwNlNlcDI0IGNhbGVuZGFyIGNoYW5nZXNcblxuZWRpdEV2ZW50KGV2ZW50OiBhbnksIGVudHJ5R3JvdXA6IGFueSkge1xuICB0aGlzLmlzTW9kYWxPcGVuID0gdHJ1ZTtcbiAgdGhpcy5yZWZlcmVuY2VRdWVzdGlvbnMgPSBPYmplY3QudmFsdWVzKGVudHJ5R3JvdXApO1xuICB0aGlzLmNhbGVuZGFyUXVlc3Rpb24gPSBbLi4udGhpcy5yZWZlcmVuY2VRdWVzdGlvbnNdOyAvLyBNYWtlIGEgY29weSBvZiB0aGUgY3VycmVudCBlbnRyaWVzIHRvIGVkaXRcbiAgdGhpcy5lZGl0aW5nRXZlbnRJZCA9IGV2ZW50LmlkO1xuICB0aGlzLmVkaXRpbmdFbnRyeUdyb3VwID0gZW50cnlHcm91cDsgLy8gU3RvcmUgdGhlIGVudHJ5IGdyb3VwIGJlaW5nIGVkaXRlZFxuICB0aGlzLmdlbmVyYXRlQ2FsZW5kYXIoKTsgLy8gUmVnZW5lcmF0ZSB0aGUgY2FsZW5kYXIgdG8gcmVmbGVjdCBjaGFuZ2VzXG59XG5cblxuZGVsZXRlRXZlbnQoIGV2ZW50SWQ6IG51bWJlciwgZW50cnlHcm91cDogYW55KSB7XG4gIGNvbnN0IGV2ZW50ID0gdGhpcy5hbGxFdmVudHMuZmluZChlID0+IGUuaWQgPT09IGV2ZW50SWQpO1xuICBpZiAoZXZlbnQpIHtcbiAgICAgIC8vIEZpbmQgdGhlIGluZGV4IG9mIHRoZSBlbnRyeUdyb3VwIHRvIGRlbGV0ZVxuICAgICAgY29uc3QgZW50cnlJbmRleCA9IGV2ZW50LmVudHJpZXMuaW5kZXhPZihlbnRyeUdyb3VwKTtcbiAgICAgIGlmIChlbnRyeUluZGV4ID4gLTEpIHtcbiAgICAgICAgICBldmVudC5lbnRyaWVzLnNwbGljZShlbnRyeUluZGV4LCAxKTsgLy8gUmVtb3ZlIHRoZSBzcGVjaWZpYyBlbnRyeVxuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgZXZlbnQgaGFzIG5vIG1vcmUgZW50cmllcywgcmVtb3ZlIHRoZSBldmVudCBlbnRpcmVseVxuICAgICAgaWYgKGV2ZW50LmVudHJpZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgY29uc3QgZXZlbnRJbmRleCA9IHRoaXMuYWxsRXZlbnRzLmluZGV4T2YoZXZlbnQpO1xuICAgICAgICAgIGlmIChldmVudEluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgdGhpcy5hbGxFdmVudHMuc3BsaWNlKGV2ZW50SW5kZXgsIDEpOyAvLyBSZW1vdmUgdGhlIGVudGlyZSBldmVudFxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfVxuICB0aGlzLmdlbmVyYXRlQ2FsZW5kYXIoKTsgLy8gUmVnZW5lcmF0ZSB0aGUgY2FsZW5kYXIgdG8gcmVmbGVjdCB0aGUgY2hhbmdlc1xufVxuXG5cbiAgY2xvc2VNb2RhbCgpIHtcbiAgICB0aGlzLmlzTW9kYWxPcGVuID0gZmFsc2U7XG4gIH1cbiAvLyBWRCAwNlNlcDI0IGNhbGVuZGFyIGNoYW5nZXNcbiAgYWRkRXZlbnQoZGF5OiBDYWxlbmRhckRheSwgZW50cnlRdWVzKSB7XG4gICAgLy8gVHJhbnNmb3JtIG5ldyBlbnRyaWVzIGludG8gdGhlIGRlc2lyZWQgZm9ybWF0XG4gICAgY29uc3QgbmV3RW50cmllcyA9IGVudHJ5UXVlcy5yZWR1Y2UoKGFjYywgcSkgPT4ge1xuICAgICAgICBhY2NbcS5JZF0gPSB7IC4uLnEgfTtcbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCB7fSk7XG5cbiAgICAvLyBGaW5kIGFuIGV4aXN0aW5nIGV2ZW50IGZvciB0aGUgZ2l2ZW4gZGF0ZVxuICAgIGNvbnN0IGV4aXN0aW5nRXZlbnQgPSBkYXkuZXZlbnRzLmZpbmQoZXZlbnQgPT4gZXZlbnQuZGF0ZSA9PT0gZGF5LmRhdGUpO1xuXG4gICAgaWYgKGV4aXN0aW5nRXZlbnQpIHtcbiAgICAgICAgLy8gTWVyZ2UgbmV3IGVudHJpZXMgaW50byB0aGUgZXhpc3RpbmcgZXZlbnQncyBlbnRyaWVzIGFycmF5XG4gICAgICAgIC8vIENoZWNrIGlmIHRoZSBlbnRyaWVzIGFycmF5IGFscmVhZHkgY29udGFpbnMgYW4gb2JqZWN0IHdpdGggdGhlIHNhbWUgSURcbiAgICAgICAgY29uc3QgZXhpc3RpbmdFbnRyaWVzID0gZXhpc3RpbmdFdmVudC5lbnRyaWVzLm1hcChlbnRyeSA9PiAoeyAuLi5lbnRyeSB9KSk7XG5cbiAgICAgICAgLy8gQXBwZW5kIG5ldyBlbnRyaWVzIHRvIHRoZSBleGlzdGluZyBlbnRyaWVzXG4gICAgICAgIGV4aXN0aW5nRW50cmllcy5wdXNoKG5ld0VudHJpZXMpO1xuICAgICAgICBleGlzdGluZ0V2ZW50LmVudHJpZXMgPSBleGlzdGluZ0VudHJpZXM7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQ3JlYXRlIGEgbmV3IGV2ZW50IGlmIGl0IGRvZXNuJ3QgZXhpc3QgZm9yIHRoZSBnaXZlbiBkYXRlXG4gICAgICAgIGNvbnN0IG5ld0V2ZW50ID0ge1xuICAgICAgICAgICAgaWQ6IHRoaXMuZ2VuZXJhdGVJZCgpLFxuICAgICAgICAgICAgZGF0ZTogZGF5LmRhdGUsXG4gICAgICAgICAgICBlbnRyaWVzOiBbbmV3RW50cmllc10gLy8gV3JhcCB0aGUgbmV3IGVudHJpZXMgaW4gYW4gYXJyYXlcbiAgICAgICAgfTtcbiAgICAgICAgZGF5LmV2ZW50cy5wdXNoKG5ld0V2ZW50KTtcbiAgICAgICAgdGhpcy5hbGxFdmVudHMucHVzaChuZXdFdmVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG4gICAgY29uc29sZS5sb2coJ2FsbEV2ZW50cycsIHRoaXMuYWxsRXZlbnRzKTtcbn1cbiAvLyBWRCAwNlNlcDI0IGNhbGVuZGFyIGNoYW5nZXNcbiAgb25TYXZlKCkge1xuICAgIGlmICh0aGlzLmVkaXRpbmdFdmVudElkICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGV2ZW50ID0gdGhpcy5hbGxFdmVudHMuZmluZChlID0+IGUuaWQgPT09IHRoaXMuZWRpdGluZ0V2ZW50SWQpO1xuICAgICAgICBpZiAoZXZlbnQgJiYgdGhpcy5lZGl0aW5nRW50cnlHcm91cCkge1xuICAgICAgICAgICAgLy8gVXBkYXRlIHRoZSBzcGVjaWZpYyBlbnRyeSBncm91cCB3aXRoaW4gdGhlIGV2ZW50XG4gICAgICAgICAgICBjb25zdCBlbnRyeUluZGV4ID0gZXZlbnQuZW50cmllcy5maW5kSW5kZXgoZW50cnlHcm91cCA9PiBlbnRyeUdyb3VwID09PSB0aGlzLmVkaXRpbmdFbnRyeUdyb3VwKTtcbiAgICAgICAgICAgIGlmIChlbnRyeUluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICBldmVudC5lbnRyaWVzW2VudHJ5SW5kZXhdID0gdGhpcy5jYWxlbmRhclF1ZXN0aW9uLnJlZHVjZSgoYWNjLCBxKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGFjY1txLklkXSA9IHsgLi4ucSB9O1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICAgICAgICAgIH0sIHt9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkRGF5KSB7XG4gICAgICAgICAgICB0aGlzLmFkZEV2ZW50KHRoaXMuc2VsZWN0ZWREYXksIHRoaXMuY2FsZW5kYXJRdWVzdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5jbG9zZU1vZGFsKCk7XG4gICAgdGhpcy5nZW5lcmF0ZUNhbGVuZGFyKCk7XG59XG5cbiAgb25DYW5jZWwoKSB7XG4gICAgY29uc29sZS5sb2coJ0NhbmNlbCBidXR0b24gY2xpY2tlZCcpO1xuICAgIHRoaXMuY2xvc2VNb2RhbCgpO1xuICB9XG5cbiAgaGFuZGxlUXVlc3Rpb25FdmVudChxdWVzKXtcbiAgICAgIC8vIFVwZGF0ZSB0aGUgcXVlc3Rpb25zIGFycmF5IHdpdGggdGhlIG5ldyBxdWVzdGlvblxuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmNhbGVuZGFyUXVlc3Rpb24uZmluZEluZGV4KHEgPT4gcS5JZCA9PT0gcXVlcy5JZCk7XG4gICAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgICAvLyBJZiBxdWVzdGlvbiBhbHJlYWR5IGV4aXN0cywgdXBkYXRlIGl0XG4gICAgICAgIHRoaXMuY2FsZW5kYXJRdWVzdGlvbltpbmRleF0gPSBxdWVzO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gSWYgcXVlc3Rpb24gZG9lc24ndCBleGlzdCwgYWRkIGl0IHRvIHRoZSBhcnJheVxuICAgICAgICB0aGlzLmNhbGVuZGFyUXVlc3Rpb24ucHVzaChxdWVzKTtcbiAgICAgIH1cbiAgICAgIGNvbnNvbGUubG9nKCdjYWxlbmRlciBxdWVzdGlvbicpO1xuICAgICAgY29uc29sZS5sb2codGhpcy5jYWxlbmRhclF1ZXN0aW9uKTtcbiAgICB9XG4gLy8gVkQgMDZTZXAyNCBjYWxlbmRhciBjaGFuZ2VzXG4gICAgZ2VuZXJhdGVJZCgpIHtcbiAgICAgIHJldHVybiAnXycgKyBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHIoMiwgOSk7XG4gICAgfVxuXG4gICAgZ2V0RW50cnlLZXlzKGVudHJ5R3JvdXA6IGFueSk6IHN0cmluZ1tdIHtcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRyeUdyb3VwKTtcbiAgfVxuXG4gIHJlbW92ZUNoYXJhY3RlcnMocXVlc3Rpb25UZXh0OnN0cmluZyl7XG4gICAgbGV0IHVwZGF0ZWRUZXh0ID0gcXVlc3Rpb25UZXh0Py5yZXBsYWNlKC88W14+XSo+L2csICcnKTtcbiAgICByZXR1cm4gdXBkYXRlZFRleHQ7XG4gfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiYWxpZ24tY2FsZW5kYXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2FsZW5kYXItaGVhZGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwicHJldmlvdXNNb250aCgpXCI+PDwgUHJldmlvdXMgPj48L2J1dHRvbj5cbiAgICAgICAgICA8aDM+e3sgY3VycmVudERhdGUgfCBkYXRlOiAnTU1NTSB5eXl5JyB9fTwvaDM+XG4gICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibmV4dE1vbnRoKClcIj48PCBOZXh0ID4+PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjYWxlbmRhci1ncmlkXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRheS1vZi13ZWVrXCIgKm5nRm9yPVwibGV0IGRheSBvZiBkYXlzT2ZXZWVrXCI+e3sgZGF5IH19PC9kaXY+XG5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiY2FsZW5kYXItZGF5XCJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGRheSBvZiBjYWxlbmRhckRheXNcIlxuICAgICAgICAgICAgICBbY2xhc3Mubm90LWN1cnJlbnQtbW9udGhdPVwiIWRheS5pc0N1cnJlbnRNb250aFwiXG4gICAgICAgICAgICAgIFtjbGFzcy5wYXN0XT1cImRheS5pc1Bhc3RcIlxuICAgICAgICAgICAgICBbY2xhc3MudG9kYXldPVwiZGF5LmlzVG9kYXlcIlxuICAgICAgICAgICAgICBbY2xhc3MuZnV0dXJlXT1cImRheS5pc0Z1dHVyZVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5zZWxlY3RlZF09XCJkYXkuaXNTZWxlY3RlZFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3REYXkoZGF5KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5LW51bWJlclwiPnt7IGRheS5kYXRlLmdldERhdGUoKSB9fVxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGF5LmV2ZW50cy5sZW5ndGggPiAwXCIgY2xhc3M9XCJlbnRyeS1pbmRpY2F0b3JcIiBbY2xhc3Muc2VsZWN0XT1cImRheS5pc1NlbGVjdGVkXCI+PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPCEtLSA8ZGl2ICpuZ0Zvcj1cImxldCBldmVudCBvZiBkYXkuZXZlbnRzXCIgPlxuICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgZW50cnlHcm91cCBvZiBldmVudC5lbnRyaWVzXCIgY2xhc3M9XCJldmVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGtleSBvZiBnZXRFbnRyeUtleXMoZW50cnlHcm91cClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImVudHJ5R3JvdXBba2V5XS5UeXBlX19jID09ICdUaW1lJ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgZW50cnlHcm91cFtrZXldLmlucHV0Py52YWx1ZSB8IGRhdGU6ICdzaG9ydFRpbWUnIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW50cnlHcm91cFtrZXldLlR5cGVfX2MgIT0gJ1RpbWUnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBlbnRyeUdyb3VwW2tleV0uaW5wdXQgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+IC0tPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJhcHBvaW5hcHBvaW50bWVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFwcG9pbnRtZW50cy1jb250YWluZXJcIj5cbiAgICAgICAgICA8aDQ+QWRkIEFwcG9pbnRtZW50PC9oND5cbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2VsZWN0ZWREYXlcIiAoY2xpY2spPVwiYWRkQXBwb2ludG1lbnQoKVwiPkFkZDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tVkQgMDZTZXAyNCBjYWxlbmRhciB1cGRhdGVzLS0+IFxuICAgICAgPGRpdiAqbmdJZj1cInNob3dBcHBvaW5tZW50U2VjdGlvbiAmJiBzZWxlY3RlZERheT8uZXZlbnRzLmxlbmd0aCA+IDBcIiBjbGFzcz1cImFwcG9pbnRtZW50cy1jb250YWluZXJcIj5cbiAgICAgICAgICA8aDQ+QXBwb2ludG1lbnRzPC9oND5cbiAgICAgICAgICA8ZGl2ICAqbmdGb3I9XCJsZXQgZXZlbnQgb2Ygc2VsZWN0ZWREYXk/LmV2ZW50c1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnRcIiAqbmdGb3I9XCJsZXQgZW50cnlHcm91cCBvZiBldmVudC5lbnRyaWVzXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1pbmZvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQga2V5IG9mIGdldEVudHJ5S2V5cyhlbnRyeUdyb3VwKVwiIGNsYXNzPVwiZW50cnktcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZW50cnlHcm91cFtrZXldLlF1ZXN0aW9uX1RleHRfX2NcIiBjbGFzcz1cImVudHJ5LXRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3JlbW92ZUNoYXJhY3RlcnMoZW50cnlHcm91cFtrZXldLlF1ZXN0aW9uX1RleHRfX2MpfX06XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlbnRyeS12YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZW50cnlHcm91cFtrZXldLlR5cGVfX2MgIT0gJ1RpbWUnICYmIGVudHJ5R3JvdXBba2V5XS5UeXBlX19jICE9ICdMaW5rJ1wiPnt7IGVudHJ5R3JvdXBba2V5XS5pbnB1dCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImVudHJ5R3JvdXBba2V5XS5UeXBlX19jID09ICdUaW1lJ1wiPnt7IGVudHJ5R3JvdXBba2V5XS5pbnB1dCB8IGRhdGU6ICdzaG9ydFRpbWUnIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZW50cnlHcm91cFtrZXldLlR5cGVfX2MgPT0gJ0xpbmsnXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCJ7e2VudHJ5R3JvdXBba2V5XS5pbnB1dH19XCI+e3tyZW1vdmVDaGFyYWN0ZXJzKGVudHJ5R3JvdXBba2V5XS5RdWVzdGlvbl9UZXh0X19jKX19PC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZWRpdEV2ZW50KGV2ZW50LGVudHJ5R3JvdXApXCI+RWRpdDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZGVsZXRlRXZlbnQoZXZlbnQuaWQsZW50cnlHcm91cClcIj5EZWxldGU8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxhcHAtY3VzdG9tLW1vZGVsXG4gIFttb2RhbFRpdGxlXT1cIm1vZGFsVGl0bGVcIlxuICBbaXNNb2RhbE9wZW5dPVwiaXNNb2RhbE9wZW5cIlxuICBbbW9kYWxTaXplXT1cIm1vZGFsU2l6ZVwiXG4gIFtzYXZlQnV0dG9uVmFsdWVdPVwic2F2ZUJ1dHRvblZhbHVlXCJcbiAgW21vZGFsRm9vdGVyXT1cIm1vZGFsRm9vdGVyXCJcbiAgKHNhdmVCdXR0b25FbWl0KT1cIm9uU2F2ZSgpXCJcbiAgKGNhbmNlbEJ1dHRvbkVtaXQpPVwib25DYW5jZWwoKVwiXG4+XG48bGliLXF1ZXN0aW9uYm9vayBbcWJJdGVtXT1cInFiUmVmcmVuY2VCb29rXCIgW3F1ZXN0aW9uc109XCJyZWZlcmVuY2VRdWVzdGlvbnNcIiAoaGFuZGxlUXVlc3Rpb24pPVwiaGFuZGxlUXVlc3Rpb25FdmVudCgkZXZlbnQpXCI+PC9saWItcXVlc3Rpb25ib29rPlxuPC9hcHAtY3VzdG9tLW1vZGVsPlxuXG5cbiAgXG4gIFxuICAiXX0=
|
|
@@ -25,11 +25,11 @@ export class CustomModelComponent {
|
|
|
25
25
|
this.saveButtonEmit.emit();
|
|
26
26
|
}
|
|
27
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomModelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomModelComponent, selector: "app-custom-model", inputs: { modalTitle: "modalTitle", isModalOpen: "isModalOpen", modalSize: "modalSize", saveButtonValue: "saveButtonValue", modalFooter: "modalFooter" }, outputs: { saveButtonEmit: "saveButtonEmit", cancelButtonEmit: "cancelButtonEmit" }, ngImport: i0, template: "<div *ngIf=\"isModalOpen\" class=\"modal\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <span class=\"close\" (click)=\"onCancel()\">×</span>\n <h2>{{ modalTitle }}</h2>\n </div>\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer\" *ngIf=\"modalFooter\">\n <button (click)=\"
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomModelComponent, selector: "app-custom-model", inputs: { modalTitle: "modalTitle", isModalOpen: "isModalOpen", modalSize: "modalSize", saveButtonValue: "saveButtonValue", modalFooter: "modalFooter" }, outputs: { saveButtonEmit: "saveButtonEmit", cancelButtonEmit: "cancelButtonEmit" }, ngImport: i0, template: "<div *ngIf=\"isModalOpen\" class=\"modal\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <span class=\"close\" (click)=\"onCancel()\">×</span>\n <h2>{{ modalTitle }}</h2>\n </div>\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <!-- /* VD 06Sep24 styling changes */-->\n <div class=\"modal-footer\" *ngIf=\"modalFooter\">\n <button (click)=\"onCancel()\">Cancel</button>\n <button (click)=\"onSave()\">{{ saveButtonValue }}</button>\n </div>\n </div>\n</div>\n ", styles: [".modal{display:block;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#0006}.modal-content{background-color:#fefefe;margin:5% auto;padding:20px;border:1px solid #888;width:70%;max-width:90%;max-height:80vh;overflow-y:auto}.modal-header,.modal-footer{padding:10px;text-align:center;display:block}.modal-body{max-height:60vh;overflow-y:auto}.close{color:#aaa;float:right;font-size:28px;font-weight:700}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer}.modal-footer button{padding:10px 20px;margin:5px;font-size:16px;border:1px solid #ccc;border-radius:4px;cursor:pointer;background-color:#f5f5f5;color:#333}.modal-footer button:hover{background-color:#e0e0e0;border-color:#bbb}@media (max-width: 768px){.modal-content{width:90%;margin:10% auto}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
29
29
|
}
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomModelComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
|
-
args: [{ selector: 'app-custom-model', template: "<div *ngIf=\"isModalOpen\" class=\"modal\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <span class=\"close\" (click)=\"onCancel()\">×</span>\n <h2>{{ modalTitle }}</h2>\n </div>\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"modal-footer\" *ngIf=\"modalFooter\">\n <button (click)=\"
|
|
32
|
+
args: [{ selector: 'app-custom-model', template: "<div *ngIf=\"isModalOpen\" class=\"modal\" [ngClass]=\"modalSize\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <span class=\"close\" (click)=\"onCancel()\">×</span>\n <h2>{{ modalTitle }}</h2>\n </div>\n <div class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <!-- /* VD 06Sep24 styling changes */-->\n <div class=\"modal-footer\" *ngIf=\"modalFooter\">\n <button (click)=\"onCancel()\">Cancel</button>\n <button (click)=\"onSave()\">{{ saveButtonValue }}</button>\n </div>\n </div>\n</div>\n ", styles: [".modal{display:block;position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#0006}.modal-content{background-color:#fefefe;margin:5% auto;padding:20px;border:1px solid #888;width:70%;max-width:90%;max-height:80vh;overflow-y:auto}.modal-header,.modal-footer{padding:10px;text-align:center;display:block}.modal-body{max-height:60vh;overflow-y:auto}.close{color:#aaa;float:right;font-size:28px;font-weight:700}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer}.modal-footer button{padding:10px 20px;margin:5px;font-size:16px;border:1px solid #ccc;border-radius:4px;cursor:pointer;background-color:#f5f5f5;color:#333}.modal-footer button:hover{background-color:#e0e0e0;border-color:#bbb}@media (max-width: 768px){.modal-content{width:90%;margin:10% auto}}\n"] }]
|
|
33
33
|
}], ctorParameters: function () { return []; }, propDecorators: { modalTitle: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}], isModalOpen: [{
|
|
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
45
45
|
}], cancelButtonEmit: [{
|
|
46
46
|
type: Output
|
|
47
47
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLW1vZGVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL254dC1hcHAvc3JjL2xpYi9jb21wb25lbnRzL2N1c3RvbS1tb2RlbC9jdXN0b20tbW9kZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLW1vZGVsL2N1c3RvbS1tb2RlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7QUFPdEcsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixnQkFBZ0IsQ0FBQztJQUNSLFVBQVUsQ0FBTTtJQUNoQixXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDZixlQUFlLEdBQUcsTUFBTSxDQUFDO0lBQ3pCLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDbEIsY0FBYyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDekMsZ0JBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVyRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBR0QsUUFBUTtJQUNSLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDN0IsQ0FBQzt3R0E3QlUsb0JBQW9COzRGQUFwQixvQkFBb0IsdVNDUGpDLGttQkFnQkU7OzRGRFRXLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxrQkFBa0I7MEVBT25CLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY3VzdG9tLW1vZGVsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1tb2RlbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N1c3RvbS1tb2RlbC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tTW9kZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIEBJbnB1dCgpIG1vZGFsVGl0bGU6IGFueTtcbiAgQElucHV0KCkgaXNNb2RhbE9wZW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbW9kYWxTaXplID0gJyc7XG4gIEBJbnB1dCgpIHNhdmVCdXR0b25WYWx1ZSA9ICdTYXZlJztcbiAgQElucHV0KCkgbW9kYWxGb290ZXIgPSB0cnVlO1xuICBAT3V0cHV0KCkgc2F2ZUJ1dHRvbkVtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIGNhbmNlbEJ1dHRvbkVtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBvblNhdmUoKSB7XG4gICAgdGhpcy5zYXZlQnV0dG9uRW1pdC5lbWl0KCk7XG4gIH1cblxuICBvbkNhbmNlbCgpIHtcbiAgICB0aGlzLmNhbmNlbEJ1dHRvbkVtaXQuZW1pdCgpO1xuICB9XG5cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIGNsb3NlTW9kYWwoKSB7XG4gICAgdGhpcy5jYW5jZWxCdXR0b25FbWl0LmVtaXQoZmFsc2UpO1xuICB9XG5cbiAgc2F2ZU1vZGFsKCkge1xuICAgIHRoaXMuc2F2ZUJ1dHRvbkVtaXQuZW1pdCgpO1xuICB9XG5cbn1cbiIsIjxkaXYgKm5nSWY9XCJpc01vZGFsT3BlblwiIGNsYXNzPVwibW9kYWxcIiBbbmdDbGFzc109XCJtb2RhbFNpemVcIj5cbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNsb3NlXCIgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj4mdGltZXM7PC9zcGFuPlxuICAgICAgICA8aDI+e3sgbW9kYWxUaXRsZSB9fTwvaDI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSAvKiBWRCAwNlNlcDI0IHN0eWxpbmcgY2hhbmdlcyAqLy0tPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiICpuZ0lmPVwibW9kYWxGb290ZXJcIj5cbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwib25DYW5jZWwoKVwiPkNhbmNlbDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIChjbGljayk9XCJvblNhdmUoKVwiPnt7IHNhdmVCdXR0b25WYWx1ZSB9fTwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiAgIl19
|
|
@@ -37,8 +37,9 @@ export class CustomTimeComponent {
|
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
|
+
// VD 06Sep24 emit exact time object
|
|
40
41
|
onTimeChange(event) {
|
|
41
|
-
this.timeChange.emit(event);
|
|
42
|
+
this.timeChange.emit(event?.value);
|
|
42
43
|
}
|
|
43
44
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CustomTimeComponent, deps: [{ token: i1.I18nService }], target: i0.ɵɵFactoryTarget.Component });
|
|
44
45
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: CustomTimeComponent, selector: "app-custom-time", inputs: { time: "time", readOnly: "readOnly", error: "error", errorMessage: "errorMessage" }, outputs: { timeChange: "timeChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- time component -->\n<!-- // VD 12Jun24 - readonly change-->\n<!-- VD 01Aug24 - validation change-->\n <p>\n <input\n [class]=\"error ? 'invalid' : ''\"\n [(ngModel)]=\"timeSelected\"\n [owlDateTimeTrigger]=\"dt2\"\n [owlDateTime]=\"dt2\"\n placeholder=\"HH:MM\"\n [readOnly]=\"readOnly\" \n style=\"width: 100%; height: 35px; border: none; box-shadow: none; border-bottom: 1px solid #ccc;\"\n (dateTimeChange)=\"onTimeChange($event)\"\n >\n <owl-date-time [pickerType]=\"'timer'\" #dt2></owl-date-time>\n </p>\n <span *ngIf=\"error\" class=\"error-msg\">{{errorMessage}}</span>", styles: [".invalid{border-color:red!important}\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: "directive", type: i4.OwlDateTimeTriggerDirective, selector: "[owlDateTimeTrigger]", inputs: ["disabled", "owlDateTimeTrigger"] }, { kind: "directive", type: i4.OwlDateTimeInputDirective, selector: "input[owlDateTime]", inputs: ["rangeSeparator", "owlDateTime", "owlDateTimeFilter", "min", "max", "selectMode", "value", "values", "_disabled"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { kind: "component", type: i4.OwlDateTimeComponent, selector: "owl-date-time", inputs: ["startAt", "pickerType", "pickerMode", "disabled", "opened", "backdropClass", "panelClass", "scrollStrategy"], outputs: ["afterPickerClosed", "afterPickerOpen", "yearSelected", "monthSelected"], exportAs: ["owlDateTime"] }] });
|
|
@@ -57,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
57
58
|
}], timeChange: [{
|
|
58
59
|
type: Output
|
|
59
60
|
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXRpbWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLXRpbWUvY3VzdG9tLXRpbWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnh0LWFwcC9zcmMvbGliL2NvbXBvbmVudHMvY3VzdG9tLXRpbWUvY3VzdG9tLXRpbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVE5RixNQUFNLE9BQU8sbUJBQW1CO0lBUVg7SUFQVixJQUFJLENBQVM7SUFDYixRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsK0JBQStCO0lBQ2pELEtBQUssQ0FBSztJQUNWLFlBQVksQ0FBUztJQUNwQixVQUFVLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFDbEUsWUFBWSxDQUFNO0lBRWxCLFlBQW1CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUksQ0FBQztJQUVoRCxRQUFRO1FBQ04sSUFBRyxJQUFJLENBQUMsSUFBSSxFQUFDO1lBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2hFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pDO2FBQUs7WUFDSiw0QkFBNEI7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7U0FDMUI7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXFCO1FBQy9CLG9CQUFvQjtRQUNwQixJQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBQztZQUNqQixJQUFHLElBQUksQ0FBQyxJQUFJLEVBQUM7Z0JBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNoRSxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN6QztpQkFBSztnQkFDSixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQzthQUMxQjtTQUNGO0lBQ0gsQ0FBQztJQUNELG9DQUFvQztJQUNwQyxZQUFZLENBQUMsS0FBVTtRQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzt3R0FsQ1UsbUJBQW1COzRGQUFuQixtQkFBbUIsaU5DUmhDLDRuQkFnQitEOzs0RkRSbEQsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGlCQUFpQjtrR0FLbEIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaTE4bi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWN1c3RvbS10aW1lJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS10aW1lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3VzdG9tLXRpbWUuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEN1c3RvbVRpbWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB0aW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHJlYWRPbmx5ID0gZmFsc2U7IC8vIFZEIDEySnVuMjQgLSByZWFkb25seSBjaGFuZ2VcbiAgQElucHV0KCkgZXJyb3I6YW55O1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgQE91dHB1dCgpIHRpbWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIHRpbWVTZWxlY3RlZDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBpMThuU2VydmljZTogSTE4blNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMudGltZSl7XG4gICAgICB0aGlzLnRpbWUgPSB0aGlzLnRpbWVbJ3ZhbHVlJ10gPyB0aGlzLnRpbWVbJ3ZhbHVlJ10gOiB0aGlzLnRpbWU7XG4gICAgICB0aGlzLnRpbWVTZWxlY3RlZCA9IG5ldyBEYXRlKHRoaXMudGltZSk7XG4gICAgfWVsc2Uge1xuICAgICAgLy8gaWYgbm8gdGltZSBzZXQgbnVsbCB2YWx1ZVxuICAgICAgdGhpcy50aW1lU2VsZWN0ZWQgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6U2ltcGxlQ2hhbmdlcyl7XG4gICAgLy8gdXBkYXRlIG9uIGNoYW5nZXNcbiAgICBpZihjaGFuZ2VzWyd0aW1lJ10pe1xuICAgICAgaWYodGhpcy50aW1lKXtcbiAgICAgICAgdGhpcy50aW1lID0gdGhpcy50aW1lWyd2YWx1ZSddID8gdGhpcy50aW1lWyd2YWx1ZSddIDogdGhpcy50aW1lO1xuICAgICAgICB0aGlzLnRpbWVTZWxlY3RlZCA9IG5ldyBEYXRlKHRoaXMudGltZSk7XG4gICAgICB9ZWxzZSB7XG4gICAgICAgIHRoaXMudGltZVNlbGVjdGVkID0gbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gVkQgMDZTZXAyNCBlbWl0IGV4YWN0IHRpbWUgb2JqZWN0XG4gIG9uVGltZUNoYW5nZShldmVudDogYW55KSB7XG4gICAgdGhpcy50aW1lQ2hhbmdlLmVtaXQoZXZlbnQ/LnZhbHVlKTtcbiAgfVxufVxuIiwiPCEtLSB0aW1lIGNvbXBvbmVudCAtLT5cbjwhLS0gLy8gVkQgMTJKdW4yNCAtIHJlYWRvbmx5IGNoYW5nZS0tPlxuPCEtLSBWRCAwMUF1ZzI0IC0gdmFsaWRhdGlvbiBjaGFuZ2UtLT5cbiAgPHA+XG4gICAgPGlucHV0XG4gICAgICBbY2xhc3NdPVwiZXJyb3IgPyAnaW52YWxpZCcgOiAnJ1wiXG4gICAgICBbKG5nTW9kZWwpXT1cInRpbWVTZWxlY3RlZFwiXG4gICAgICBbb3dsRGF0ZVRpbWVUcmlnZ2VyXT1cImR0MlwiXG4gICAgICBbb3dsRGF0ZVRpbWVdPVwiZHQyXCJcbiAgICAgIHBsYWNlaG9sZGVyPVwiSEg6TU1cIlxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRPbmx5XCIgXG4gICAgICBzdHlsZT1cIndpZHRoOiAxMDAlOyBoZWlnaHQ6IDM1cHg7IGJvcmRlcjogbm9uZTsgYm94LXNoYWRvdzogbm9uZTsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XCJcbiAgICAgIChkYXRlVGltZUNoYW5nZSk9XCJvblRpbWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgPlxuICAgIDxvd2wtZGF0ZS10aW1lIFtwaWNrZXJUeXBlXT1cIid0aW1lcidcIiAjZHQyPjwvb3dsLWRhdGUtdGltZT5cbiAgPC9wPlxuICA8c3BhbiAqbmdJZj1cImVycm9yXCIgY2xhc3M9XCJlcnJvci1tc2dcIj57e2Vycm9yTWVzc2FnZX19PC9zcGFuPiJdfQ==
|
|
@@ -104,6 +104,7 @@ export class NxtAppModule {
|
|
|
104
104
|
ReactiveFormsModule, NgxSpinnerModule, i1.I18nModule, i2.NgCircleProgressModule], exports: [NxtAppComponent,
|
|
105
105
|
QuestionnaireComponent,
|
|
106
106
|
BookletComponent,
|
|
107
|
+
QuestionbookComponent,
|
|
107
108
|
SummaryPageComponent,
|
|
108
109
|
I18nPipe,
|
|
109
110
|
I18nComponent] });
|
|
@@ -332,6 +333,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
332
333
|
exports: [NxtAppComponent,
|
|
333
334
|
QuestionnaireComponent,
|
|
334
335
|
BookletComponent,
|
|
336
|
+
QuestionbookComponent,
|
|
335
337
|
SummaryPageComponent,
|
|
336
338
|
I18nPipe,
|
|
337
339
|
I18nComponent,
|
|
@@ -346,4 +348,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
346
348
|
// ]
|
|
347
349
|
}]
|
|
348
350
|
}] });
|
|
349
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnh0LWFwcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ueHQtYXBwL3NyYy9saWIvbnh0LWFwcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUMsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUMsdUJBQXVCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU3RSwwSUFBMEk7QUFDMUksT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7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cEYscUVBQXFFO29CQUNyRSxJQUFJO2lCQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE54dEFwcENvbXBvbmVudCB9IGZyb20gJy4vbnh0LWFwcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUXVlc3Rpb25uYWlyZUNvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvcXVlc3Rpb25uYWlyZS9xdWVzdGlvbm5haXJlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSxSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTXlEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnbXlkYXRlcGlja2VyJztcbmltcG9ydCB7IE5nQ2lyY2xlUHJvZ3Jlc3NNb2R1bGUgfSBmcm9tICduZy1jaXJjbGUtcHJvZ3Jlc3MnO1xuaW1wb3J0IHsgTmd4U3Bpbm5lck1vZHVsZSB9IGZyb20gXCJuZ3gtc3Bpbm5lclwiO1xuLy9pbXBvcnQgeyBBZ21Db3JlTW9kdWxlIH0gZnJvbSAnQGFnbS9jb3JlJztcbmltcG9ydCB7IEdPT0dMRV9NQVBfQVBJX0tFWSB9IGZyb20gJy4uL2xpYi9zYW1wbGUnO1xuaW1wb3J0IHsgUGlja0xvY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BpY2stbG9jYXRpb24vcGljay1sb2NhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XG5pbXBvcnQgeyBDdXN0b21JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20taW5wdXQvY3VzdG9tLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21UZXh0QXJlYUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20tdGV4dC1hcmVhL2N1c3RvbS10ZXh0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS10YWJsZS9jdXN0b20tdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IERyb3Bkb3duV2l0aEZsYWdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZHJvcGRvd24td2l0aC1mbGFnL2Ryb3Bkb3duLXdpdGgtZmxhZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3dsRGF0ZVRpbWVNb2R1bGUsT3dsTmF0aXZlRGF0ZVRpbWVNb2R1bGUgfSBmcm9tICduZy1waWNrLWRhdGV0aW1lJztcblxuLy9pbXBvcnQgeyBPV0xfTU9NRU5UX0RBVEVfVElNRV9BREFQVEVSX09QVElPTlMgfSBmcm9tICduZy1waWNrLWRhdGV0aW1lL2RhdGUtdGltZS9hZGFwdGVyL21vbWVudC1hZGFwdGVyL21vbWVudC1kYXRlLXRpbWUtYWRhcHRlci5jbGFzcyc7XG5pbXBvcnQgeyBDdXN0b21EYXRlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kYXRlLXBpY2tlci9jdXN0b20tZGF0ZS1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kcm9wZG93bi9jdXN0b20tZHJvcGRvd24uY29tcG9uZW50Jztcbi8vIFZEIDIzSkFOMjQgcmVtb3ZlZCBIdHRwQ2xpZW50TW9kdWxlXG5pbXBvcnQgeyBCb29rbGV0Q29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9ib29rbGV0L2Jvb2tsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEdvb2dsZU1hcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9nb29nbGUtbWFwcyc7XG5pbXBvcnQgeyBTZWFyY2hCb3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VhcmNoLWJveC9zZWFyY2gtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBRdWVzdGlvbmJvb2tDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL3F1ZXN0aW9uYm9vay9xdWVzdGlvbmJvb2suY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IFN1bW1hcnlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9zdW1tYXJ5LXBhZ2Uvc3VtbWFyeS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9maWxlLXZpZXcvZmlsZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXBlbmRlbnRUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kZXBlbmRlbnQtdGFibGUvZGVwZW5kZW50LXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21MYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20tbGFiZWwvY3VzdG9tLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUFwcGVuZGl4Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWFwcGVuZGl4L3RhYmxlLWFwcGVuZGl4LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21EYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kYXRlL2N1c3RvbS1kYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21UaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS10aW1lL2N1c3RvbS10aW1lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWJ1dHRvbi9jdXN0b20tYnV0dG9uLmNvbXBvbmVudCc7XG4vLyBIQSAxOURFQzIzIEltcG9ydGluZyBmb3IgdHJhbnNsYXRpb25cbmltcG9ydCB7IEkxOG5Nb2R1bGUgfSBmcm9tICcuL2kxOG4ubW9kdWxlJ1xuaW1wb3J0IHsgSTE4bkNvbXBvbmVudCB9IGZyb20gJy4vaTE4bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSTE4blBpcGUgfSBmcm9tICcuL2kxOG4ucGlwZSc7XG5pbXBvcnQgKiBhcyBlbkkxOG4gZnJvbSAnLi9lbi5pMThuJztcbmltcG9ydCAqIGFzIGFySTE4biBmcm9tICcuL2FyLmkxOG4nO1xuaW1wb3J0ICogYXMgdGFtSTE4biBmcm9tICcuL3RhbS5pMThuJ1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7IC8vIFZEIDIwSlVOMjQgLSBoZWxwIHRleHQgY2hhbmdlc1xuaW1wb3J0IHsgR2V0VmFsdWVQaXBlIH0gZnJvbSAnLi9waXBlL2dldC12YWx1ZS5waXBlJzsgLy8gVkQgMjZKVU4yNCAtIHBpcGUgY2hhbmdlc1xuaW1wb3J0IHsgQ3VzdG9tQ2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWNhbGVuZGFyL2N1c3RvbS1jYWxlbmRhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tTW9kZWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLW1vZGVsL2N1c3RvbS1tb2RlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWltYWdlL2N1c3RvbS1pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLXJhZGlvL2N1c3RvbS1yYWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcblxuLy8gZXhwb3J0IGNvbnN0IE1ZX0NVU1RPTV9GT1JNQVRTID0ge1xuLy8gICBmdWxsUGlja2VySW5wdXQ6ICdERC9NTS9ZWVlZIEhIOm1tOnNzJyxcbi8vICAgdXNlVXRjOiB0cnVlLFxuLy8gfTtcblxuLy8gSEEgMTlERUMyMyB2YXJpYWJsZSBjcmVhdGVkIGZvciB0cmFuc2xhdGlvblxuY29uc3QgbGFuZ3VhZ2VzID0gW1xuICAvLyB7IGxhbmc6ICdFTicsIGZsYWc6ICdhc3NldHMvaW1hZ2VzL2VuLmkxOG4ucG5nJywgZmlsZTogZW5JMThuIH0sXG4gIHsgbGFuZzogJ0VOJywgZmlsZTogZW5JMThuIH0sXG4gIHsgbGFuZzogJ1RBTScsIGZpbGU6IHRhbUkxOG4gfSxcbiAgeyBsYW5nOiAnQVInLCBmaWxlOiBhckkxOG4gfVxuXVxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtOeHRBcHBDb21wb25lbnQsIFxuICAgIFF1ZXN0aW9ubmFpcmVDb21wb25lbnQsXG4gICAgUGlja0xvY2F0aW9uQ29tcG9uZW50LFxuICAgIEN1c3RvbUlucHV0Q29tcG9uZW50LFxuICAgIEN1c3RvbVRleHRBcmVhQ29tcG9uZW50LFxuICAgIEN1c3RvbVRhYmxlQ29tcG9uZW50LFxuICAgIEN1c3RvbUNhbGVuZGFyQ29tcG9uZW50LFxuICAgIEN1c3RvbURhdGVQaWNrZXJDb21wb25lbnQsXG4gICAgRHJvcGRvd25XaXRoRmxhZ0NvbXBvbmVudCxcbiAgICBDdXN0b21Ecm9wZG93bkNvbXBvbmVudCxcbiAgICBCb29rbGV0Q29tcG9uZW50LFxuICAgIFNlYXJjaEJveENvbXBvbmVudCxcbiAgICBRdWVzdGlvbmJvb2tDb21wb25lbnQsXG4gICAgRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBTdW1tYXJ5UGFnZUNvbXBvbmVudCxcbiAgICBGaWxlVmlld0NvbXBvbmVudCxcbiAgICBEZXBlbmRlbnRUYWJsZUNvbXBvbmVudCxcbiAgICBDdXN0b21MYWJlbENvbXBvbmVudCxcbiAgICBUYWJsZUFwcGVuZGl4Q29tcG9uZW50LFxuICAgIEN1c3RvbURhdGVDb21wb25lbnQsXG4gICAgQ3VzdG9tVGltZUNvbXBvbmVudCxcbiAgICBDdXN0b21CdXR0b25Db21wb25lbnQsXG4gICAgQ3VzdG9tTW9kZWxDb21wb25lbnQsXG4gICAgTG9hZGVyQ29tcG9uZW50LFxuICAgIEkxOG5Db21wb25lbnQsXG4gICAgSTE4blBpcGUsXG4gICAgQ3VzdG9tSW1hZ2VDb21wb25lbnQsXG4gICAgQ3VzdG9tUmFkaW9Db21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsXG4gICAgTXlEYXRlUGlja2VyTW9kdWxlLFxuICAgIE93bERhdGVUaW1lTW9kdWxlLFxuICAgIE93bE5hdGl2ZURhdGVUaW1lTW9kdWxlLFxuICAgIEdldFZhbHVlUGlwZSxcbiAgICAvLyAgICBWRCAyM0pBTjI0IHJlbW92ZWQgSHR0cENsaWVudE1vZHVsZVxuICAgIE5nU2VsZWN0TW9kdWxlLFxuICAgIEdvb2dsZU1hcHNNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICAvL0FnbUNvcmVNb2R1bGUuZm9yUm9vdCh7XG4gICAgLy8gIGFwaUtleTogR09PR0xFX01BUF9BUElfS0VZLFxuICAgIC8vICBsaWJyYXJpZXM6IFsnZ2VvbWV0cnknLCAncGxhY2VzJywgJ3Zpc3VhbGl6YXRpb24nLCAnZHJhd2luZyddXG4gIC8vICB9KSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ3hTcGlubmVyTW9kdWxlLFxuICAgIEkxOG5Nb2R1bGUuZm9yUm9vdChsYW5ndWFnZXMpLFxuICAgIC8qTmdDaXJjbGVQcm9ncmVzc01vZHVsZS5mb3JSb290KHtcbiAgICAgIFwiYmFja2dyb3VuZFBhZGRpbmdcIjogLTEwLFxuICAgICAgXCJyYWRpdXNcIjogNjAsXG4gICAgICBcInNwYWNlXCI6IC02LFxuICAgICAgXCJpbm5lclN0cm9rZUNvbG9yXCI6IFwiIzkxOTE5MVwiLFxuICAgICAgXCJvdXRlclN0cm9rZUNvbG9yXCI6IFwiI2RiOTU5NFwiLFxuICAgICAgXCJvdXRlclN0cm9rZUdyYWRpZW50U3RvcENvbG9yXCI6IFwiI2UwYjFiMFwiLFxuICAgICAgXCJpbm5lclN0cm9rZVdpZHRoXCI6IDIsXG4gICAgICBcImJhY2tncm91bmRHcmFkaWVudFwiOiB0cnVlLFxuICAgICAgXCJiYWNrZ3JvdW5kQ29sb3JcIjogXCIjZGQyZTEzXCIsXG4gICAgICBcImJhY2tncm91bmRHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNkZDJlMTNcIixcbiAgICAgIFwiYmFja2dyb3VuZFN0cm9rZVwiOiBcIiNkM2NmY2ZcIixcbiAgICAgIFwidGl0bGVcIjogW1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIFwiJVwiXG4gICAgICBdLFxuICAgICAgLy8gdGl0bGVGb250U2l6ZTogMTIsXG4gICAgICAvLyBcInN1YnRpdGxlRm9udFNpemVcIjogMjAsXG4gICAgICBcImFuaW1hdGVUaXRsZVwiOiBmYWxzZSxcbiAgICAgIFwiYW5pbWF0aW9uRHVyYXRpb25cIjogMTAwMCxcbiAgICAgIFwic2hvd1VuaXRzXCI6IGZhbHNlLFxuICAgICAgXCJjbG9ja3dpc2VcIjp0cnVlXG5cbiAgICAgIC8vXCJiYWNrZ3JvdW5kU3Ryb2tlV2lkdGhcIjogXCIwXCIsXG5cImJhY2tncm91bmRHcmFkaWVudFwiOiB0cnVlLFxuICAgICAgLy9cImJhY2tncm91bmRDb2xvclwiOiBcIiNkZDJlMTNcIixcbiAgICAgIFwiYmFja2dyb3VuZEdyYWRpZW50U3RvcENvbG9yXCI6IFwiI2RkMmUxM1wiLFxuICAgICAgXCJiYWNrZ3JvdW5kU3Ryb2tlXCI6IFwiIzAwMDAwMFwiLFxuICAgICAgXCJiYWNrZ3JvdW5kUGFkZGluZ1wiOiAtMTAsXG4gICAgICBcInJhZGl1c1wiOiA2MCxcbiAgICAgIFwidW5pdHNGb250V2VpZ2h0XCI6IFwiNjAwXCIsXG4gICAgICBcInVuaXRzQ29sb3JcIjogXCIjZjJmMmYyXCIsXG4gICAgICBcIm91dGVyU3Ryb2tlR3JhZGllbnRcIjogdHJ1ZSxcbiAgICAgIFwib3V0ZXJTdHJva2VDb2xvclwiOiBcIiNlMGIxYjBcIixcbiAgICAgIFwib3V0ZXJTdHJva2VHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNlMGIxYjBcIixcbiAgICAgIFwib3V0ZXJTdHJva2VMaW5lY2FwXCI6IFwiaW5oZXJpdFwiLFxuICAgICAgXCJpbm5lclN0cm9rZUNvbG9yXCI6IFwiI2Y2ZGZkZlwiLFxuICAgICAgXCJ0aXRsZVwiOiBbXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIFwiJVwiXG5dLFxuICAgICAgXCJ0aXRsZUNvbG9yXCI6IFwiI2U3ZDlkOVwiLFxuICAgICAgXCJ0aXRsZUZvbnRTaXplXCI6IFwiMzFcIixcbiAgICAgIFwidGl0bGVGb250V2VpZ2h0XCI6IFwiMTAwXCIsXG4gICAgICBcInN1YnRpdGxlQ29sb3JcIjogXCIjZjdmN2Y3XCIsXG4gICAgICBcInN1YnRpdGxlRm9udFNpemVcIjogXCIzNlwiLFxuICAgICAgXCJzdWJ0aXRsZUZvbnRXZWlnaHRcIjogXCI5MDBcIixcbiAgICAgIFwiYW5pbWF0ZVRpdGxlXCI6IGZhbHNlLFxuICAgICAgXCJhbmltYXRpb25EdXJhdGlvblwiOiAxMDAwLFxuICAgICAgXCJzaG93VGl0bGVcIjogdHJ1ZSxcbiAgICAgIFwic2hvd1VuaXRzXCI6IHRydWUsXG4gICAgICBcImNsb2Nrd2lzZVwiOiBmYWxzZSxcbiAgICAgIFwic3RhcnRGcm9tWmVyb1wiOiB0cnVlLFxuICAgICAgXCJzaG93WmVyb091dGVyU3Ryb2tlXCI6IGZhbHNlLFxuICAgICAgXCJsYXp5XCI6IHRydWV9KSovXG5cbiAgICAgIE5nQ2lyY2xlUHJvZ3Jlc3NNb2R1bGUuZm9yUm9vdCh7XG4gICAgICAgIFwiYmFja2dyb3VuZEdyYWRpZW50XCI6IHRydWUsXG4gICAgICAgIFwiYmFja2dyb3VuZENvbG9yXCI6IFwiI2UyOWQ5OFwiLFxuICAgICAgICBcImJhY2tncm91bmRHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNjNTI4MWNcIixcbiAgICAgICAgXCJiYWNrZ3JvdW5kU3Ryb2tlXCI6IFwiI2VjZTRlNFwiLFxuICAgICAgICBcImJhY2tncm91bmRTdHJva2VXaWR0aFwiOiAwLFxuICAgICAgICBcImJhY2tncm91bmRQYWRkaW5nXCI6IC0xMCxcbiAgICAgICAgXCJyYWRpdXNcIjogNjAsXG4gICAgICAgIFwic3BhY2VcIjogNCxcbiAgICAgICAgXCJtYXhQZXJjZW50XCI6IDEwMCxcbiAgICAgICAgXCJ1bml0c0ZvbnRTaXplXCI6IFwiMzVcIixcbiAgICAgICAgXCJ1bml0c0NvbG9yXCI6IFwiI2YwZWJlYlwiLFxuICAgICAgICBcIm91dGVyU3Ryb2tlR3JhZGllbnRcIjogdHJ1ZSxcbiAgICAgICAgXCJvdXRlclN0cm9rZVdpZHRoXCI6IDEwLFxuICAgICAgICBcIm91dGVyU3Ryb2tlQ29sb3JcIjogXCIjZjdjMGJmXCIsXG4gICAgICAgIFwib3V0ZXJTdHJva2VHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNmOWM5YzhcIixcbiAgICAgICAgXCJpbm5lclN0cm9rZVdpZHRoXCI6IDAsXG4gICAgICAgIFwidGl0bGVDb2xvclwiOiBcIiNmM2VkZWRcIixcbiAgICAgICAgXCJ0aXRsZUZvbnRTaXplXCI6IFwiNDBcIixcbiAgICAgICAgXCJzdWJ0aXRsZUNvbG9yXCI6IFwiIzQ0NDQ0NFwiLFxuICAgICAgICBcInNob3dTdWJ0aXRsZVwiOiBmYWxzZX0pXG4gIF0sXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbiAgZXhwb3J0czogW054dEFwcENvbXBvbmVudCwgXG4gICAgUXVlc3Rpb25uYWlyZUNvbXBvbmVudCxcbiAgICBCb29rbGV0Q29tcG9uZW50LFxuICAgIFN1bW1hcnlQYWdlQ29tcG9uZW50LFxuICAgIEkxOG5QaXBlLFxuICAgIEkxOG5Db21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIEkxOG5TZXJ2aWNlLFxuICAgIEkxOG5QaXBlXG4gIF1cbiAgLy8gcHJvdmlkZXJzOiBbXG4gIC8vICAgeyBwcm92aWRlOiBPV0xfTU9NRU5UX0RBVEVfVElNRV9BREFQVEVSX09QVElPTlMsIHVzZVZhbHVlOiB7IHVzZVV0YzogZmFsc2UgfSB9LFxuICAvLyAgIHsgcHJvdmlkZTogT1dMX0RBVEVfVElNRV9GT1JNQVRTLCB1c2VWYWx1ZTogTVlfQ1VTVE9NX0ZPUk1BVFMgfSxcbiAgLy8gXVxufSlcbmV4cG9ydCBjbGFzcyBOeHRBcHBNb2R1bGUgeyB9XG4iXX0=
|
|
351
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnh0LWFwcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9ueHQtYXBwL3NyYy9saWIvbnh0LWFwcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUMsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDbEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRy9DLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUMsdUJBQXVCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU3RSwwSUFBMEk7QUFDMUksT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsc0NBQXNDO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLHVDQUF1QztBQUN2QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3ZDLE9BQU8sS0FBSyxNQUFNLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxNQUFNLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sS0FBSyxPQUFPLE1BQU0sWUFBWSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQyxDQUFDLGlDQUFpQztBQUMvRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUMsQ0FBQyw0QkFBNEI7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7O0FBRXZFLHFDQUFxQztBQUNyQyw0Q0FBNEM7QUFDNUMsa0JBQWtCO0FBQ2xCLEtBQUs7QUFFTCw4Q0FBOEM7QUFDOUMsTUFBTSxTQUFTLEdBQUc7SUFDaEIsbUVBQW1FO0lBQ25FLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO0lBQzVCLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO0lBQzlCLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO0NBQzdCLENBQUE7QUFnSkQsTUFBTSxPQUFPLFlBQVk7d0dBQVosWUFBWTt5R0FBWixZQUFZLGlCQTdJUixlQUFlO1lBQzVCLHNCQUFzQjtZQUN0QixxQkFBcUI7WUFDckIsb0JBQW9CO1lBQ3BCLHVCQUF1QjtZQUN2QixvQkFBb0I7WUFDcEIsdUJBQXVCO1lBQ3ZCLHlCQUF5QjtZQUN6Qix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLGdCQUFnQjtZQUNoQixrQkFBa0I7WUFDbEIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQixvQkFBb0I7WUFDcEIsaUJBQWlCO1lBQ2pCLHVCQUF1QjtZQUN2QixvQkFBb0I7WUFDcEIsc0JBQXNCO1lBQ3RCLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2YsYUFBYTtZQUNiLFFBQVE7WUFDUixvQkFBb0I7WUFDcEIsb0JBQW9CLGFBR3BCLFlBQVksRUFBRSxXQUFXO1lBQ3pCLGtCQUFrQjtZQUNsQixpQkFBaUI7WUFDakIsdUJBQXVCO1lBQ3ZCLFlBQVk7WUFDWix5Q0FBeUM7WUFDekMsY0FBYztZQUNkLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIseUJBQXlCO1lBQ3pCLCtCQUErQjtZQUMvQixpRUFBaUU7WUFDbkUsT0FBTztZQUNMLG1CQUFtQixFQUFFLGdCQUFnQix1REFpRjdCLGVBQWU7WUFDdkIsc0JBQXNCO1lBQ3RCLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsb0JBQW9CO1lBQ2hCLFFBQVE7WUFDWixhQUFhO3lHQVdKLFlBQVksYUFUWjtZQUNULFdBQVc7WUFDWCxRQUFRO1NBQ1QsWUF6R0MsWUFBWSxFQUFFLFdBQVc7WUFDekIsa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQix1QkFBdUI7WUFFdkIseUNBQXlDO1lBQ3pDLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLHlCQUF5QjtZQUN6QiwrQkFBK0I7WUFDL0IsaUVBQWlFO1lBQ25FLE9BQU87WUFDTCxtQkFBbUIsRUFBRSxnQkFBZ0I7WUFDckMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFDN0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs4QkFzRGtCO1lBRWhCLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztnQkFDN0Isb0JBQW9CLEVBQUUsSUFBSTtnQkFDMUIsaUJBQWlCLEVBQUUsU0FBUztnQkFDNUIsNkJBQTZCLEVBQUUsU0FBUztnQkFDeEMsa0JBQWtCLEVBQUUsU0FBUztnQkFDN0IsdUJBQXVCLEVBQUUsQ0FBQztnQkFDMUIsbUJBQW1CLEVBQUUsQ0FBQyxFQUFFO2dCQUN4QixRQUFRLEVBQUUsRUFBRTtnQkFDWixPQUFPLEVBQUUsQ0FBQztnQkFDVixZQUFZLEVBQUUsR0FBRztnQkFDakIsZUFBZSxFQUFFLElBQUk7Z0JBQ3JCLFlBQVksRUFBRSxTQUFTO2dCQUN2QixxQkFBcUIsRUFBRSxJQUFJO2dCQUMzQixrQkFBa0IsRUFBRSxFQUFFO2dCQUN0QixrQkFBa0IsRUFBRSxTQUFTO2dCQUM3Qiw4QkFBOEIsRUFBRSxTQUFTO2dCQUN6QyxrQkFBa0IsRUFBRSxDQUFDO2dCQUNyQixZQUFZLEVBQUUsU0FBUztnQkFDdkIsZUFBZSxFQUFFLElBQUk7Z0JBQ3JCLGVBQWUsRUFBRSxTQUFTO2dCQUMxQixjQUFjLEVBQUUsS0FBSzthQUFDLENBQUM7OzRGQW9CbEIsWUFBWTtrQkE5SXhCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZUFBZTt3QkFDNUIsc0JBQXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsdUJBQXVCO3dCQUN2QixvQkFBb0I7d0JBQ3BCLHVCQUF1Qjt3QkFDdkIseUJBQXlCO3dCQUN6Qix5QkFBeUI7d0JBQ3pCLHVCQUF1Qjt3QkFDdkIsZ0JBQWdCO3dCQUNoQixrQkFBa0I7d0JBQ2xCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QixvQkFBb0I7d0JBQ3BCLHNCQUFzQjt3QkFDdEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsUUFBUTt3QkFDUixvQkFBb0I7d0JBQ3BCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVksRUFBRSxXQUFXO3dCQUN6QixrQkFBa0I7d0JBQ2xCLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QixZQUFZO3dCQUNaLHlDQUF5Qzt3QkFDekMsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIseUJBQXlCO3dCQUN6QiwrQkFBK0I7d0JBQy9CLGlFQUFpRTt3QkFDbkUsT0FBTzt3QkFDTCxtQkFBbUIsRUFBRSxnQkFBZ0I7d0JBQ3JDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO3dCQUM3Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzBDQXNEa0I7d0JBRWhCLHNCQUFzQixDQUFDLE9BQU8sQ0FBQzs0QkFDN0Isb0JBQW9CLEVBQUUsSUFBSTs0QkFDMUIsaUJBQWlCLEVBQUUsU0FBUzs0QkFDNUIsNkJBQTZCLEVBQUUsU0FBUzs0QkFDeEMsa0JBQWtCLEVBQUUsU0FBUzs0QkFDN0IsdUJBQXVCLEVBQUUsQ0FBQzs0QkFDMUIsbUJBQW1CLEVBQUUsQ0FBQyxFQUFFOzRCQUN4QixRQUFRLEVBQUUsRUFBRTs0QkFDWixPQUFPLEVBQUUsQ0FBQzs0QkFDVixZQUFZLEVBQUUsR0FBRzs0QkFDakIsZUFBZSxFQUFFLElBQUk7NEJBQ3JCLFlBQVksRUFBRSxTQUFTOzRCQUN2QixxQkFBcUIsRUFBRSxJQUFJOzRCQUMzQixrQkFBa0IsRUFBRSxFQUFFOzRCQUN0QixrQkFBa0IsRUFBRSxTQUFTOzRCQUM3Qiw4QkFBOEIsRUFBRSxTQUFTOzRCQUN6QyxrQkFBa0IsRUFBRSxDQUFDOzRCQUNyQixZQUFZLEVBQUUsU0FBUzs0QkFDdkIsZUFBZSxFQUFFLElBQUk7NEJBQ3JCLGVBQWUsRUFBRSxTQUFTOzRCQUMxQixjQUFjLEVBQUUsS0FBSzt5QkFBQyxDQUFDO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsZUFBZTt3QkFDdkIsc0JBQXNCO3dCQUN0QixnQkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNoQixRQUFRO3dCQUNaLGFBQWE7cUJBQ2Q7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFdBQVc7d0JBQ1gsUUFBUTtxQkFDVDtvQkFDRCxlQUFlO29CQUNmLG9GQUFvRjtvQkFDcEYscUVBQXFFO29CQUNyRSxJQUFJO2lCQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE54dEFwcENvbXBvbmVudCB9IGZyb20gJy4vbnh0LWFwcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUXVlc3Rpb25uYWlyZUNvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvcXVlc3Rpb25uYWlyZS9xdWVzdGlvbm5haXJlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSxSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTXlEYXRlUGlja2VyTW9kdWxlIH0gZnJvbSAnbXlkYXRlcGlja2VyJztcbmltcG9ydCB7IE5nQ2lyY2xlUHJvZ3Jlc3NNb2R1bGUgfSBmcm9tICduZy1jaXJjbGUtcHJvZ3Jlc3MnO1xuaW1wb3J0IHsgTmd4U3Bpbm5lck1vZHVsZSB9IGZyb20gXCJuZ3gtc3Bpbm5lclwiO1xuLy9pbXBvcnQgeyBBZ21Db3JlTW9kdWxlIH0gZnJvbSAnQGFnbS9jb3JlJztcbmltcG9ydCB7IEdPT0dMRV9NQVBfQVBJX0tFWSB9IGZyb20gJy4uL2xpYi9zYW1wbGUnO1xuaW1wb3J0IHsgUGlja0xvY2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BpY2stbG9jYXRpb24vcGljay1sb2NhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XG5pbXBvcnQgeyBDdXN0b21JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20taW5wdXQvY3VzdG9tLWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21UZXh0QXJlYUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20tdGV4dC1hcmVhL2N1c3RvbS10ZXh0LWFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbVRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS10YWJsZS9jdXN0b20tdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IERyb3Bkb3duV2l0aEZsYWdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZHJvcGRvd24td2l0aC1mbGFnL2Ryb3Bkb3duLXdpdGgtZmxhZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3dsRGF0ZVRpbWVNb2R1bGUsT3dsTmF0aXZlRGF0ZVRpbWVNb2R1bGUgfSBmcm9tICduZy1waWNrLWRhdGV0aW1lJztcblxuLy9pbXBvcnQgeyBPV0xfTU9NRU5UX0RBVEVfVElNRV9BREFQVEVSX09QVElPTlMgfSBmcm9tICduZy1waWNrLWRhdGV0aW1lL2RhdGUtdGltZS9hZGFwdGVyL21vbWVudC1hZGFwdGVyL21vbWVudC1kYXRlLXRpbWUtYWRhcHRlci5jbGFzcyc7XG5pbXBvcnQgeyBDdXN0b21EYXRlUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kYXRlLXBpY2tlci9jdXN0b20tZGF0ZS1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kcm9wZG93bi9jdXN0b20tZHJvcGRvd24uY29tcG9uZW50Jztcbi8vIFZEIDIzSkFOMjQgcmVtb3ZlZCBIdHRwQ2xpZW50TW9kdWxlXG5pbXBvcnQgeyBCb29rbGV0Q29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9ib29rbGV0L2Jvb2tsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEdvb2dsZU1hcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9nb29nbGUtbWFwcyc7XG5pbXBvcnQgeyBTZWFyY2hCb3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VhcmNoLWJveC9zZWFyY2gtYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBRdWVzdGlvbmJvb2tDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL3F1ZXN0aW9uYm9vay9xdWVzdGlvbmJvb2suY29tcG9uZW50JztcbmltcG9ydCB7IEZpbGVVcGxvYWRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IFN1bW1hcnlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdlcy9zdW1tYXJ5LXBhZ2Uvc3VtbWFyeS1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9maWxlLXZpZXcvZmlsZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEZXBlbmRlbnRUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kZXBlbmRlbnQtdGFibGUvZGVwZW5kZW50LXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21MYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jdXN0b20tbGFiZWwvY3VzdG9tLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZUFwcGVuZGl4Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RhYmxlLWFwcGVuZGl4L3RhYmxlLWFwcGVuZGl4LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21EYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS1kYXRlL2N1c3RvbS1kYXRlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21UaW1lQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2N1c3RvbS10aW1lL2N1c3RvbS10aW1lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWJ1dHRvbi9jdXN0b20tYnV0dG9uLmNvbXBvbmVudCc7XG4vLyBIQSAxOURFQzIzIEltcG9ydGluZyBmb3IgdHJhbnNsYXRpb25cbmltcG9ydCB7IEkxOG5Nb2R1bGUgfSBmcm9tICcuL2kxOG4ubW9kdWxlJ1xuaW1wb3J0IHsgSTE4bkNvbXBvbmVudCB9IGZyb20gJy4vaTE4bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgSTE4blBpcGUgfSBmcm9tICcuL2kxOG4ucGlwZSc7XG5pbXBvcnQgKiBhcyBlbkkxOG4gZnJvbSAnLi9lbi5pMThuJztcbmltcG9ydCAqIGFzIGFySTE4biBmcm9tICcuL2FyLmkxOG4nO1xuaW1wb3J0ICogYXMgdGFtSTE4biBmcm9tICcuL3RhbS5pMThuJ1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7IC8vIFZEIDIwSlVOMjQgLSBoZWxwIHRleHQgY2hhbmdlc1xuaW1wb3J0IHsgR2V0VmFsdWVQaXBlIH0gZnJvbSAnLi9waXBlL2dldC12YWx1ZS5waXBlJzsgLy8gVkQgMjZKVU4yNCAtIHBpcGUgY2hhbmdlc1xuaW1wb3J0IHsgQ3VzdG9tQ2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWNhbGVuZGFyL2N1c3RvbS1jYWxlbmRhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tTW9kZWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLW1vZGVsL2N1c3RvbS1tb2RlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLWltYWdlL2N1c3RvbS1pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY3VzdG9tLXJhZGlvL2N1c3RvbS1yYWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcblxuLy8gZXhwb3J0IGNvbnN0IE1ZX0NVU1RPTV9GT1JNQVRTID0ge1xuLy8gICBmdWxsUGlja2VySW5wdXQ6ICdERC9NTS9ZWVlZIEhIOm1tOnNzJyxcbi8vICAgdXNlVXRjOiB0cnVlLFxuLy8gfTtcblxuLy8gSEEgMTlERUMyMyB2YXJpYWJsZSBjcmVhdGVkIGZvciB0cmFuc2xhdGlvblxuY29uc3QgbGFuZ3VhZ2VzID0gW1xuICAvLyB7IGxhbmc6ICdFTicsIGZsYWc6ICdhc3NldHMvaW1hZ2VzL2VuLmkxOG4ucG5nJywgZmlsZTogZW5JMThuIH0sXG4gIHsgbGFuZzogJ0VOJywgZmlsZTogZW5JMThuIH0sXG4gIHsgbGFuZzogJ1RBTScsIGZpbGU6IHRhbUkxOG4gfSxcbiAgeyBsYW5nOiAnQVInLCBmaWxlOiBhckkxOG4gfVxuXVxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtOeHRBcHBDb21wb25lbnQsIFxuICAgIFF1ZXN0aW9ubmFpcmVDb21wb25lbnQsXG4gICAgUGlja0xvY2F0aW9uQ29tcG9uZW50LFxuICAgIEN1c3RvbUlucHV0Q29tcG9uZW50LFxuICAgIEN1c3RvbVRleHRBcmVhQ29tcG9uZW50LFxuICAgIEN1c3RvbVRhYmxlQ29tcG9uZW50LFxuICAgIEN1c3RvbUNhbGVuZGFyQ29tcG9uZW50LFxuICAgIEN1c3RvbURhdGVQaWNrZXJDb21wb25lbnQsXG4gICAgRHJvcGRvd25XaXRoRmxhZ0NvbXBvbmVudCxcbiAgICBDdXN0b21Ecm9wZG93bkNvbXBvbmVudCxcbiAgICBCb29rbGV0Q29tcG9uZW50LFxuICAgIFNlYXJjaEJveENvbXBvbmVudCxcbiAgICBRdWVzdGlvbmJvb2tDb21wb25lbnQsXG4gICAgRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICBTdW1tYXJ5UGFnZUNvbXBvbmVudCxcbiAgICBGaWxlVmlld0NvbXBvbmVudCxcbiAgICBEZXBlbmRlbnRUYWJsZUNvbXBvbmVudCxcbiAgICBDdXN0b21MYWJlbENvbXBvbmVudCxcbiAgICBUYWJsZUFwcGVuZGl4Q29tcG9uZW50LFxuICAgIEN1c3RvbURhdGVDb21wb25lbnQsXG4gICAgQ3VzdG9tVGltZUNvbXBvbmVudCxcbiAgICBDdXN0b21CdXR0b25Db21wb25lbnQsXG4gICAgQ3VzdG9tTW9kZWxDb21wb25lbnQsXG4gICAgTG9hZGVyQ29tcG9uZW50LFxuICAgIEkxOG5Db21wb25lbnQsXG4gICAgSTE4blBpcGUsXG4gICAgQ3VzdG9tSW1hZ2VDb21wb25lbnQsXG4gICAgQ3VzdG9tUmFkaW9Db21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsXG4gICAgTXlEYXRlUGlja2VyTW9kdWxlLFxuICAgIE93bERhdGVUaW1lTW9kdWxlLFxuICAgIE93bE5hdGl2ZURhdGVUaW1lTW9kdWxlLFxuICAgIEdldFZhbHVlUGlwZSxcbiAgICAvLyAgICBWRCAyM0pBTjI0IHJlbW92ZWQgSHR0cENsaWVudE1vZHVsZVxuICAgIE5nU2VsZWN0TW9kdWxlLFxuICAgIEdvb2dsZU1hcHNNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICAvL0FnbUNvcmVNb2R1bGUuZm9yUm9vdCh7XG4gICAgLy8gIGFwaUtleTogR09PR0xFX01BUF9BUElfS0VZLFxuICAgIC8vICBsaWJyYXJpZXM6IFsnZ2VvbWV0cnknLCAncGxhY2VzJywgJ3Zpc3VhbGl6YXRpb24nLCAnZHJhd2luZyddXG4gIC8vICB9KSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ3hTcGlubmVyTW9kdWxlLFxuICAgIEkxOG5Nb2R1bGUuZm9yUm9vdChsYW5ndWFnZXMpLFxuICAgIC8qTmdDaXJjbGVQcm9ncmVzc01vZHVsZS5mb3JSb290KHtcbiAgICAgIFwiYmFja2dyb3VuZFBhZGRpbmdcIjogLTEwLFxuICAgICAgXCJyYWRpdXNcIjogNjAsXG4gICAgICBcInNwYWNlXCI6IC02LFxuICAgICAgXCJpbm5lclN0cm9rZUNvbG9yXCI6IFwiIzkxOTE5MVwiLFxuICAgICAgXCJvdXRlclN0cm9rZUNvbG9yXCI6IFwiI2RiOTU5NFwiLFxuICAgICAgXCJvdXRlclN0cm9rZUdyYWRpZW50U3RvcENvbG9yXCI6IFwiI2UwYjFiMFwiLFxuICAgICAgXCJpbm5lclN0cm9rZVdpZHRoXCI6IDIsXG4gICAgICBcImJhY2tncm91bmRHcmFkaWVudFwiOiB0cnVlLFxuICAgICAgXCJiYWNrZ3JvdW5kQ29sb3JcIjogXCIjZGQyZTEzXCIsXG4gICAgICBcImJhY2tncm91bmRHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNkZDJlMTNcIixcbiAgICAgIFwiYmFja2dyb3VuZFN0cm9rZVwiOiBcIiNkM2NmY2ZcIixcbiAgICAgIFwidGl0bGVcIjogW1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIFwiJVwiXG4gICAgICBdLFxuICAgICAgLy8gdGl0bGVGb250U2l6ZTogMTIsXG4gICAgICAvLyBcInN1YnRpdGxlRm9udFNpemVcIjogMjAsXG4gICAgICBcImFuaW1hdGVUaXRsZVwiOiBmYWxzZSxcbiAgICAgIFwiYW5pbWF0aW9uRHVyYXRpb25cIjogMTAwMCxcbiAgICAgIFwic2hvd1VuaXRzXCI6IGZhbHNlLFxuICAgICAgXCJjbG9ja3dpc2VcIjp0cnVlXG5cbiAgICAgIC8vXCJiYWNrZ3JvdW5kU3Ryb2tlV2lkdGhcIjogXCIwXCIsXG5cImJhY2tncm91bmRHcmFkaWVudFwiOiB0cnVlLFxuICAgICAgLy9cImJhY2tncm91bmRDb2xvclwiOiBcIiNkZDJlMTNcIixcbiAgICAgIFwiYmFja2dyb3VuZEdyYWRpZW50U3RvcENvbG9yXCI6IFwiI2RkMmUxM1wiLFxuICAgICAgXCJiYWNrZ3JvdW5kU3Ryb2tlXCI6IFwiIzAwMDAwMFwiLFxuICAgICAgXCJiYWNrZ3JvdW5kUGFkZGluZ1wiOiAtMTAsXG4gICAgICBcInJhZGl1c1wiOiA2MCxcbiAgICAgIFwidW5pdHNGb250V2VpZ2h0XCI6IFwiNjAwXCIsXG4gICAgICBcInVuaXRzQ29sb3JcIjogXCIjZjJmMmYyXCIsXG4gICAgICBcIm91dGVyU3Ryb2tlR3JhZGllbnRcIjogdHJ1ZSxcbiAgICAgIFwib3V0ZXJTdHJva2VDb2xvclwiOiBcIiNlMGIxYjBcIixcbiAgICAgIFwib3V0ZXJTdHJva2VHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNlMGIxYjBcIixcbiAgICAgIFwib3V0ZXJTdHJva2VMaW5lY2FwXCI6IFwiaW5oZXJpdFwiLFxuICAgICAgXCJpbm5lclN0cm9rZUNvbG9yXCI6IFwiI2Y2ZGZkZlwiLFxuICAgICAgXCJ0aXRsZVwiOiBbXG4gICAgICAgICAgICAgICAgXG4gICAgICAgIFwiJVwiXG5dLFxuICAgICAgXCJ0aXRsZUNvbG9yXCI6IFwiI2U3ZDlkOVwiLFxuICAgICAgXCJ0aXRsZUZvbnRTaXplXCI6IFwiMzFcIixcbiAgICAgIFwidGl0bGVGb250V2VpZ2h0XCI6IFwiMTAwXCIsXG4gICAgICBcInN1YnRpdGxlQ29sb3JcIjogXCIjZjdmN2Y3XCIsXG4gICAgICBcInN1YnRpdGxlRm9udFNpemVcIjogXCIzNlwiLFxuICAgICAgXCJzdWJ0aXRsZUZvbnRXZWlnaHRcIjogXCI5MDBcIixcbiAgICAgIFwiYW5pbWF0ZVRpdGxlXCI6IGZhbHNlLFxuICAgICAgXCJhbmltYXRpb25EdXJhdGlvblwiOiAxMDAwLFxuICAgICAgXCJzaG93VGl0bGVcIjogdHJ1ZSxcbiAgICAgIFwic2hvd1VuaXRzXCI6IHRydWUsXG4gICAgICBcImNsb2Nrd2lzZVwiOiBmYWxzZSxcbiAgICAgIFwic3RhcnRGcm9tWmVyb1wiOiB0cnVlLFxuICAgICAgXCJzaG93WmVyb091dGVyU3Ryb2tlXCI6IGZhbHNlLFxuICAgICAgXCJsYXp5XCI6IHRydWV9KSovXG5cbiAgICAgIE5nQ2lyY2xlUHJvZ3Jlc3NNb2R1bGUuZm9yUm9vdCh7XG4gICAgICAgIFwiYmFja2dyb3VuZEdyYWRpZW50XCI6IHRydWUsXG4gICAgICAgIFwiYmFja2dyb3VuZENvbG9yXCI6IFwiI2UyOWQ5OFwiLFxuICAgICAgICBcImJhY2tncm91bmRHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNjNTI4MWNcIixcbiAgICAgICAgXCJiYWNrZ3JvdW5kU3Ryb2tlXCI6IFwiI2VjZTRlNFwiLFxuICAgICAgICBcImJhY2tncm91bmRTdHJva2VXaWR0aFwiOiAwLFxuICAgICAgICBcImJhY2tncm91bmRQYWRkaW5nXCI6IC0xMCxcbiAgICAgICAgXCJyYWRpdXNcIjogNjAsXG4gICAgICAgIFwic3BhY2VcIjogNCxcbiAgICAgICAgXCJtYXhQZXJjZW50XCI6IDEwMCxcbiAgICAgICAgXCJ1bml0c0ZvbnRTaXplXCI6IFwiMzVcIixcbiAgICAgICAgXCJ1bml0c0NvbG9yXCI6IFwiI2YwZWJlYlwiLFxuICAgICAgICBcIm91dGVyU3Ryb2tlR3JhZGllbnRcIjogdHJ1ZSxcbiAgICAgICAgXCJvdXRlclN0cm9rZVdpZHRoXCI6IDEwLFxuICAgICAgICBcIm91dGVyU3Ryb2tlQ29sb3JcIjogXCIjZjdjMGJmXCIsXG4gICAgICAgIFwib3V0ZXJTdHJva2VHcmFkaWVudFN0b3BDb2xvclwiOiBcIiNmOWM5YzhcIixcbiAgICAgICAgXCJpbm5lclN0cm9rZVdpZHRoXCI6IDAsXG4gICAgICAgIFwidGl0bGVDb2xvclwiOiBcIiNmM2VkZWRcIixcbiAgICAgICAgXCJ0aXRsZUZvbnRTaXplXCI6IFwiNDBcIixcbiAgICAgICAgXCJzdWJ0aXRsZUNvbG9yXCI6IFwiIzQ0NDQ0NFwiLFxuICAgICAgICBcInNob3dTdWJ0aXRsZVwiOiBmYWxzZX0pXG4gIF0sXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbiAgZXhwb3J0czogW054dEFwcENvbXBvbmVudCwgXG4gICAgUXVlc3Rpb25uYWlyZUNvbXBvbmVudCxcbiAgICBCb29rbGV0Q29tcG9uZW50LFxuICAgIFF1ZXN0aW9uYm9va0NvbXBvbmVudCxcbiAgICBTdW1tYXJ5UGFnZUNvbXBvbmVudCxcbiAgICAgICAgSTE4blBpcGUsXG4gICAgSTE4bkNvbXBvbmVudCxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgSTE4blNlcnZpY2UsXG4gICAgSTE4blBpcGVcbiAgXVxuICAvLyBwcm92aWRlcnM6IFtcbiAgLy8gICB7IHByb3ZpZGU6IE9XTF9NT01FTlRfREFURV9USU1FX0FEQVBURVJfT1BUSU9OUywgdXNlVmFsdWU6IHsgdXNlVXRjOiBmYWxzZSB9IH0sXG4gIC8vICAgeyBwcm92aWRlOiBPV0xfREFURV9USU1FX0ZPUk1BVFMsIHVzZVZhbHVlOiBNWV9DVVNUT01fRk9STUFUUyB9LFxuICAvLyBdXG59KVxuZXhwb3J0IGNsYXNzIE54dEFwcE1vZHVsZSB7IH1cbiJdfQ==
|