@coreui/angular-pro 4.2.38 → 4.2.40
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/esm2020/lib/calendar/calendar.utils.mjs +12 -4
- package/esm2020/lib/form/form-check/form-check-input.directive.mjs +19 -6
- package/esm2020/lib/form/form-check/form-check.component.mjs +23 -7
- package/esm2020/lib/multi-select/multi-select/multi-select.component.mjs +3 -3
- package/esm2020/lib/popover/popover.directive.mjs +28 -6
- package/esm2020/lib/shared/html-attr.directive.mjs +1 -1
- package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +31 -17
- package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +35 -3
- package/esm2020/lib/smart-table/smart-table-items-per-page-selector/smart-table-items-per-page-selector.component.mjs +2 -2
- package/esm2020/lib/smart-table/smart-table.type.mjs +1 -1
- package/fesm2015/coreui-angular-pro.mjs +169 -69
- package/fesm2015/coreui-angular-pro.mjs.map +1 -1
- package/fesm2020/coreui-angular-pro.mjs +165 -67
- package/fesm2020/coreui-angular-pro.mjs.map +1 -1
- package/lib/form/form-check/form-check-input.directive.d.ts +3 -1
- package/lib/form/form-check/form-check.component.d.ts +16 -6
- package/lib/popover/popover.directive.d.ts +8 -3
- package/lib/shared/html-attr.directive.d.ts +1 -1
- package/lib/smart-table/smart-table/smart-table.component.d.ts +14 -11
- package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +12 -6
- package/lib/smart-table/smart-table.type.d.ts +6 -0
- package/package.json +5 -2
|
@@ -26,8 +26,9 @@ export const getLocalDateFromString = (string, locale, time) => {
|
|
|
26
26
|
}
|
|
27
27
|
const rgx = RegExp(`${regex}`);
|
|
28
28
|
const partials = string.match(rgx);
|
|
29
|
-
if (partials === null)
|
|
29
|
+
if (partials === null) {
|
|
30
30
|
return;
|
|
31
|
+
}
|
|
31
32
|
const newDate = partials.groups && (time ? new Date(Number(partials.groups['year']), Number(partials.groups['month']) - 1, Number(partials.groups['day']), partials.groups['ampm'] ? partials.groups['ampm'] === 'PM' ? Number(partials.groups['hour']) + 12 : Number(partials.groups['hour']) : Number(partials.groups['hour']), Number(partials.groups['minute']), Number(partials.groups['second'])) : new Date(Number(partials.groups['year']), Number(partials.groups['month']) - 1, Number(partials.groups['day'])));
|
|
32
33
|
return newDate;
|
|
33
34
|
};
|
|
@@ -108,8 +109,12 @@ export const getMonthDetails = (year, month, firstDayOfWeek) => {
|
|
|
108
109
|
return weeks;
|
|
109
110
|
};
|
|
110
111
|
export const isDateDisabled = (date, min, max, dates) => {
|
|
111
|
-
if (!date)
|
|
112
|
-
return;
|
|
112
|
+
if (!date) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
if (!min && !max && (!dates || !dates.length)) {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
113
118
|
let disabled;
|
|
114
119
|
if (dates) {
|
|
115
120
|
dates.forEach((_date) => {
|
|
@@ -187,6 +192,9 @@ export const tryDate = (value, propName = 'date') => {
|
|
|
187
192
|
return _value;
|
|
188
193
|
};
|
|
189
194
|
export const isDateInRangeDisabled = (startDate, endDate, dates) => {
|
|
195
|
+
if (!dates || !dates.length) {
|
|
196
|
+
return false;
|
|
197
|
+
}
|
|
190
198
|
if (startDate && endDate) {
|
|
191
199
|
const date = new Date(startDate);
|
|
192
200
|
let disabled = false;
|
|
@@ -272,4 +280,4 @@ export const isDateInRangeDisabled = (startDate, endDate, dates) => {
|
|
|
272
280
|
// // }
|
|
273
281
|
//
|
|
274
282
|
// // getDate('12/07/1997');
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL2NhbGVuZGFyLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFPLEVBQUUsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFbkgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFPLEVBQUUsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFbkgsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUFVLEVBQUUsY0FBc0IsRUFBRSxFQUFFO0lBQ3hFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsQ0FBQztJQUN4RCxPQUFPLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztTQUM3QixJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ1IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFDaEUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7QUFFN0QsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7QUFFM0QsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsTUFBYyxFQUFFLElBQWMsRUFBRSxFQUFFO0lBQ3ZGLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEQsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakYsS0FBSyxHQUFHLEtBQUs7U0FDVixPQUFPLENBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFDO1NBQ3RDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLENBQUM7U0FDckMsT0FBTyxDQUFDLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBRXZDLElBQUksSUFBSSxFQUFFO1FBQ1IsS0FBSyxHQUFHLEtBQUs7YUFDVixPQUFPLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDO2FBQ25DLE9BQU8sQ0FBQyxJQUFJLEVBQUUscUJBQXFCLENBQUM7YUFDcEMsT0FBTyxDQUFDLElBQUksRUFBRSx1QkFBdUIsQ0FBQzthQUN0QyxPQUFPLENBQUMsSUFBSSxFQUFFLHVCQUF1QixDQUFDO2FBQ3RDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztLQUN2QztJQUVELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDL0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVuQyxJQUFJLFFBQVEsS0FBSyxJQUFJO1FBQUUsT0FBTztJQUU5QixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTNmLE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlB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QjtBQUNwQix5Q0FBeUM7QUFDekMsUUFBUTtBQUNSLEVBQUU7QUFDRixxQkFBcUI7QUFDckIsRUFBRTtBQUNGLHNDQUFzQztBQUN0QyxrQkFBa0I7QUFDbEIsbUJBQW1CO0FBQ25CLGlCQUFpQjtBQUNqQixzQkFBc0I7QUFDdEIsVUFBVTtBQUNWLE9BQU87QUFDUCxrRkFBa0Y7QUFDbEYseUZBQXlGO0FBQ3pGLDBGQUEwRjtBQUMxRix3RkFBd0Y7QUFDeEYsT0FBTztBQUNQLG9EQUFvRDtBQUNwRCxPQUFPO0FBQ1AsK0JBQStCO0FBQy9CLDBDQUEwQztBQUMxQywrQkFBK0I7QUFDL0IsT0FBTztBQUNQLFdBQVc7QUFDWCxVQUFVO0FBQ1YsT0FBTztBQUNQLGtFQUFrRTtBQUNsRSwwQ0FBMEM7QUFDMUMsdUJBQXVCO0FBQ3ZCLGlEQUFpRDtBQUNqRCxZQUFZO0FBQ1osNEJBQTRCO0FBQzVCLDBCQUEwQjtBQUMxQix1Q0FBdUM7QUFDdkMsdUJBQXVCO0FBQ3ZCLDRCQUE0QjtBQUM1Qix5Q0FBeUM7QUFDekMsdUJBQXVCO0FBQ3ZCLDJCQUEyQjtBQUMzQix3Q0FBd0M7QUFDeEMsdUJBQXVCO0FBQ3ZCLGNBQWM7QUFDZCxVQUFVO0FBQ1Ysc0RBQXNEO0FBQ3RELDhDQUE4QztBQUM5QyxLQUFLO0FBQ0wsRUFBRTtBQUNGLHVDQUF1QztBQUN2QywyREFBMkQ7QUFDM0QsOENBQThDO0FBQzlDLE9BQU87QUFDUCxFQUFFO0FBQ0YsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNWYWxpZCB9IGZyb20gJ2RhdGUtZm5zJztcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRUb0xvY2FsRGF0ZSA9IChkOiBEYXRlLCBsb2NhbGU6IHN0cmluZywgb3B0aW9ucyA9IHt9KSA9PiBkLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUsIG9wdGlvbnMpO1xuXG5leHBvcnQgY29uc3QgY29udmVydFRvTG9jYWxUaW1lID0gKGQ6IERhdGUsIGxvY2FsZTogc3RyaW5nLCBvcHRpb25zID0ge30pID0+IGQudG9Mb2NhbGVUaW1lU3RyaW5nKGxvY2FsZSwgb3B0aW9ucyk7XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVHcm91cHNJbkFycmF5ID0gKGFycjogYW55W10sIG51bWJlck9mR3JvdXBzOiBudW1iZXIpID0+IHtcbiAgY29uc3QgcGVyR3JvdXAgPSBNYXRoLmNlaWwoYXJyLmxlbmd0aCAvIG51bWJlck9mR3JvdXBzKTtcbiAgcmV0dXJuIG5ldyBBcnJheShudW1iZXJPZkdyb3VwcylcbiAgICAuZmlsbCgnJylcbiAgICAubWFwKChfLCBpKSA9PiBhcnIuc2xpY2UoaSAqIHBlckdyb3VwLCAoaSArIDEpICogcGVyR3JvdXApKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDdXJyZW50WWVhciA9ICgpID0+IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTtcblxuZXhwb3J0IGNvbnN0IGdldEN1cnJlbnRNb250aCA9ICgpID0+IG5ldyBEYXRlKCkuZ2V0TW9udGgoKTtcblxuZXhwb3J0IGNvbnN0IGdldExvY2FsRGF0ZUZyb21TdHJpbmcgPSAoc3RyaW5nOiBzdHJpbmcsIGxvY2FsZTogc3RyaW5nLCB0aW1lPzogYm9vbGVhbikgPT4ge1xuICBjb25zdCBkYXRlID0gbmV3IERhdGUoMjAxMywgMTEsIDMxLCAxNywgMTksIDIyKTtcbiAgbGV0IHJlZ2V4ID0gdGltZSA/IGRhdGUudG9Mb2NhbGVTdHJpbmcobG9jYWxlKSA6IGRhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSk7XG4gIHJlZ2V4ID0gcmVnZXhcbiAgICAucmVwbGFjZSgnMjAxMycsICcoPzx5ZWFyPlswLTldezIsNH0pJylcbiAgICAucmVwbGFjZSgnMTInLCAnKD88bW9udGg+WzAtOV17MSwyfSknKVxuICAgIC5yZXBsYWNlKCczMScsICcoPzxkYXk+WzAtOV17MSwyfSknKTtcblxuICBpZiAodGltZSkge1xuICAgIHJlZ2V4ID0gcmVnZXhcbiAgICAgIC5yZXBsYWNlKCc1JywgJyg/PGhvdXI+WzAtOV17MSwyfSknKVxuICAgICAgLnJlcGxhY2UoJzE3JywgJyg/PGhvdXI+WzAtOV17MSwyfSknKVxuICAgICAgLnJlcGxhY2UoJzE5JywgJyg/PG1pbnV0ZT5bMC05XXsxLDJ9KScpXG4gICAgICAucmVwbGFjZSgnMjInLCAnKD88c2Vjb25kPlswLTldezEsMn0pJylcbiAgICAgIC5yZXBsYWNlKCdQTScsICcoPzxhbXBtPltBLVpdezJ9KScpO1xuICB9XG5cbiAgY29uc3Qgcmd4ID0gUmVnRXhwKGAke3JlZ2V4fWApO1xuICBjb25zdCBwYXJ0aWFscyA9IHN0cmluZy5tYXRjaChyZ3gpO1xuXG4gIGlmIChwYXJ0aWFscyA9PT0gbnVsbCkgcmV0dXJuO1xuXG4gIGNvbnN0IG5ld0RhdGUgPSBwYXJ0aWFscy5ncm91cHMgJiYgKHRpbWUgPyBuZXcgRGF0ZShOdW1iZXIocGFydGlhbHMuZ3JvdXBzWyd5ZWFyJ10pLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydtb250aCddKSAtIDEsIE51bWJlcihwYXJ0aWFscy5ncm91cHNbJ2RheSddKSwgcGFydGlhbHMuZ3JvdXBzWydhbXBtJ10gPyBwYXJ0aWFscy5ncm91cHNbJ2FtcG0nXSA9PT0gJ1BNJyA/IE51bWJlcihwYXJ0aWFscy5ncm91cHNbJ2hvdXInXSkgKyAxMiA6IE51bWJlcihwYXJ0aWFscy5ncm91cHNbJ2hvdXInXSkgOiBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydob3VyJ10pLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydtaW51dGUnXSksIE51bWJlcihwYXJ0aWFscy5ncm91cHNbJ3NlY29uZCddKSkgOiBuZXcgRGF0ZShOdW1iZXIocGFydGlhbHMuZ3JvdXBzWyd5ZWFyJ10pLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydtb250aCddKSAtIDEsIE51bWJlcihwYXJ0aWFscy5ncm91cHNbJ2RheSddKSkpO1xuXG4gIHJldHVybiBuZXdEYXRlO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldE1vbnRoTmFtZSA9IChtb250aDogbnVtYmVyLCBsb2NhbGU6IHN0cmluZykgPT4ge1xuICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgZC5zZXREYXRlKDEpO1xuICBkLnNldE1vbnRoKG1vbnRoKTtcbiAgcmV0dXJuIGQudG9Mb2NhbGVTdHJpbmcobG9jYWxlLCB7IG1vbnRoOiAnbG9uZycgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TW9udGhzTmFtZXMgPSAobG9jYWxlOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgbW9udGhzID0gW107XG4gIGNvbnN0IGQgPSBuZXcgRGF0ZSgpO1xuICBkLnNldERhdGUoMSk7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCAxMjsgaSsrKSB7XG4gICAgZC5zZXRNb250aChpKTtcbiAgICBtb250aHMucHVzaChkLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUsIHsgbW9udGg6ICdzaG9ydCcgfSkpO1xuICB9XG5cbiAgcmV0dXJuIG1vbnRocztcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRZZWFycyA9ICh5ZWFyOiBudW1iZXIpID0+IHtcbiAgY29uc3QgeWVhcnMgPSBbXTtcbiAgZm9yIChsZXQgX3llYXIgPSB5ZWFyIC0gNjsgX3llYXIgPCB5ZWFyICsgNjsgX3llYXIrKykge1xuICAgIHllYXJzLnB1c2goX3llYXIpO1xuICB9XG5cbiAgcmV0dXJuIHllYXJzO1xufTtcblxuY29uc3QgZ2V0TGVhZGluZ0RheXMgPSAoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBmaXJzdERheU9mV2VlazogbnVtYmVyKSA9PiB7XG4gIC8vIDA6IHN1bmRheVxuICAvLyAxOiBtb25kYXlcbiAgY29uc3QgZGF0ZXMgPSBbXTtcbiAgY29uc3QgZCA9IG5ldyBEYXRlKHllYXIsIG1vbnRoKTtcbiAgY29uc3QgeSA9IGQuZ2V0RnVsbFllYXIoKTtcbiAgY29uc3QgbSA9IGQuZ2V0TW9udGgoKTtcbiAgY29uc3QgZmlyc3RXZWVrZGF5ID0gbmV3IERhdGUoeSwgbSwgMSkuZ2V0RGF5KCk7XG4gIGxldCBsZWFkaW5nRGF5cyA9IDYgLSAoNiAtIGZpcnN0V2Vla2RheSkgLSBmaXJzdERheU9mV2VlaztcblxuICBpZiAoZmlyc3REYXlPZldlZWspIHtcbiAgICBsZWFkaW5nRGF5cyA9IGxlYWRpbmdEYXlzIDwgMCA/IDcgKyBsZWFkaW5nRGF5cyA6IGxlYWRpbmdEYXlzO1xuICB9XG5cbiAgZm9yIChsZXQgaSA9IGxlYWRpbmdEYXlzICogLTE7IGkgPCAwOyBpKyspIHtcbiAgICBkYXRlcy5wdXNoKHtcbiAgICAgIGRhdGU6IG5ldyBEYXRlKHksIG0sIGkgKyAxKSwgbW9udGg6ICdwcmV2aW91cydcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBkYXRlcztcbn07XG5cbmNvbnN0IGdldE1vbnRoRGF5cyA9ICh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIpID0+IHtcbiAgY29uc3QgZGF0ZXMgPSBbXTtcbiAgY29uc3QgbGFzdERheSA9IG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgMCkuZ2V0RGF0ZSgpO1xuICBmb3IgKGxldCBpID0gMTsgaSA8PSBsYXN0RGF5OyBpKyspIHtcbiAgICBkYXRlcy5wdXNoKHtcbiAgICAgIGRhdGU6IG5ldyBEYXRlKHllYXIsIG1vbnRoLCBpKSwgbW9udGg6ICdjdXJyZW50J1xuICAgIH0pO1xuICB9XG4gIHJldHVybiBkYXRlcztcbn07XG5cbmNvbnN0IGdldFRyYWlsaW5nRGF5cyA9ICh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGxlYWRpbmdEYXlzOiB7IGRhdGU6IERhdGU7IG1vbnRoOiBzdHJpbmcgfVtdLCBtb250aERheXM6IHsgZGF0ZTogRGF0ZTsgbW9udGg6IHN0cmluZyB9W10pID0+IHtcbiAgY29uc3QgZGF0ZXMgPSBbXTtcbiAgY29uc3QgZGF5cyA9IDQyIC0gKGxlYWRpbmdEYXlzLmxlbmd0aCArIG1vbnRoRGF5cy5sZW5ndGgpO1xuICBmb3IgKGxldCBpID0gMTsgaSA8PSBkYXlzOyBpKyspIHtcbiAgICBkYXRlcy5wdXNoKHtcbiAgICAgIGRhdGU6IG5ldyBEYXRlKHllYXIsIG1vbnRoICsgMSwgaSksIG1vbnRoOiAnbmV4dCdcbiAgICB9KTtcbiAgfVxuICByZXR1cm4gZGF0ZXM7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TW9udGhEZXRhaWxzID0gKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZmlyc3REYXlPZldlZWs6IG51bWJlcikgPT4ge1xuICBjb25zdCBkYXlzUHJldk1vbnRoID0gZ2V0TGVhZGluZ0RheXMoeWVhciwgbW9udGgsIGZpcnN0RGF5T2ZXZWVrKTtcbiAgY29uc3QgZGF5c1RoaXNNb250aCA9IGdldE1vbnRoRGF5cyh5ZWFyLCBtb250aCk7XG4gIGNvbnN0IGRheXNOZXh0TW9udGggPSBnZXRUcmFpbGluZ0RheXMoeWVhciwgbW9udGgsIGRheXNQcmV2TW9udGgsIGRheXNUaGlzTW9udGgpO1xuICBjb25zdCBkYXlzID0gWy4uLmRheXNQcmV2TW9udGgsIC4uLmRheXNUaGlzTW9udGgsIC4uLmRheXNOZXh0TW9udGhdO1xuXG4gIGNvbnN0IHdlZWtzOiB7IGRhdGU6IERhdGU7IG1vbnRoOiBzdHJpbmcgfVtdW10gPSBbXTtcblxuICBkYXlzLmZvckVhY2goKGRheSwgaW5kZXgpID0+IHtcbiAgICBpZiAoaW5kZXggJSA3ID09PSAwIHx8IHdlZWtzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgd2Vla3MucHVzaChbXSk7XG4gICAgfVxuICAgIHdlZWtzW3dlZWtzLmxlbmd0aCAtIDFdLnB1c2goZGF5KTtcbiAgfSk7XG5cbiAgcmV0dXJuIHdlZWtzO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRGF0ZURpc2FibGVkID0gKGRhdGU6IERhdGUgfCBudWxsLCBtaW4/OiBEYXRlIHwgbnVsbCwgbWF4PzogRGF0ZSB8IG51bGwsIGRhdGVzPzogKERhdGUgfCBEYXRlW10pW10pID0+IHtcbiAgaWYgKCFkYXRlKSByZXR1cm47XG4gIGxldCBkaXNhYmxlZDtcbiAgaWYgKGRhdGVzKSB7XG4gICAgZGF0ZXMuZm9yRWFjaCgoX2RhdGU6IERhdGUgfCBEYXRlW10pID0+IHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KF9kYXRlKSkge1xuICAgICAgICBpZiAoaXNEYXRlSW5SYW5nZShkYXRlLCBfZGF0ZVswXSwgX2RhdGVbMV0pKSB7XG4gICAgICAgICAgZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoX2RhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICAgIGlmIChpc1NhbWVEYXRlQXMoZGF0ZSwgX2RhdGUpKSB7XG4gICAgICAgICAgZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgaWYgKG1pbiAmJiBkYXRlIDwgbWluKSB7XG4gICAgZGlzYWJsZWQgPSB0cnVlO1xuICB9XG5cbiAgaWYgKG1heCAmJiBkYXRlID4gbWF4KSB7XG4gICAgZGlzYWJsZWQgPSB0cnVlO1xuICB9XG4gIHJldHVybiBkaXNhYmxlZDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVJblJhbmdlID0gKGRhdGU6IERhdGUgfCBudWxsLCBzdGFydDogRGF0ZSB8IG51bGwsIGVuZDogRGF0ZSB8IG51bGwpID0+IHtcbiAgcmV0dXJuIGRhdGUgJiYgc3RhcnQgJiYgZW5kICYmIHN0YXJ0IDw9IGRhdGUgJiYgZGF0ZSA8PSBlbmQ7XG59O1xuXG5leHBvcnQgY29uc3QgaXNEYXRlU2VsZWN0ZWQgPSAoZGF0ZTogRGF0ZSB8IG51bGwsIHN0YXJ0OiBEYXRlIHwgbnVsbCwgZW5kOiBEYXRlIHwgbnVsbCkgPT4ge1xuICByZXR1cm4gZGF0ZSAmJiAoKHN0YXJ0ICYmIGlzU2FtZURhdGVBcyhzdGFydCwgZGF0ZSkpIHx8IChlbmQgJiYgaXNTYW1lRGF0ZUFzKGVuZCwgZGF0ZSkpKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0VuZERhdGUgPSAoZGF0ZTogRGF0ZSB8IG51bGwsIHN0YXJ0OiBEYXRlIHwgbnVsbCwgZW5kOiBEYXRlIHwgbnVsbCkgPT4ge1xuICByZXR1cm4gZGF0ZSAmJiBzdGFydCAmJiBlbmQgJiYgaXNTYW1lRGF0ZUFzKGVuZCwgZGF0ZSkgJiYgc3RhcnQgPCBlbmQ7XG59O1xuXG5leHBvcnQgY29uc3QgaXNMYXN0RGF5T2ZNb250aCA9IChkYXRlOiBEYXRlKSA9PiB7XG4gIGNvbnN0IHRlc3QgPSBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSk7XG4gIGNvbnN0IG1vbnRoID0gdGVzdC5nZXRNb250aCgpO1xuXG4gIHRlc3Quc2V0RGF0ZSh0ZXN0LmdldERhdGUoKSArIDEpO1xuICByZXR1cm4gdGVzdC5nZXRNb250aCgpICE9PSBtb250aDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc1NhbWVEYXRlQXMgPSAoZGF0ZTogRGF0ZSwgZGF0ZTI6IERhdGUpID0+IHtcbiAgcmV0dXJuIChkYXRlLmdldERhdGUoKSA9PSBkYXRlMi5nZXREYXRlKCkgJiYgZGF0ZS5nZXRNb250aCgpID09IGRhdGUyLmdldE1vbnRoKCkgJiYgZGF0ZS5nZXRGdWxsWWVhcigpID09IGRhdGUyLmdldEZ1bGxZZWFyKCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzU3RhcnREYXRlID0gKGRhdGU6IERhdGUgfCBudWxsLCBzdGFydDogRGF0ZSB8IG51bGwsIGVuZDogRGF0ZSB8IG51bGwpID0+IHtcbiAgcmV0dXJuIGRhdGUgJiYgc3RhcnQgJiYgZW5kICYmIGlzU2FtZURhdGVBcyhzdGFydCwgZGF0ZSkgJiYgc3RhcnQgPCBlbmQ7XG59O1xuXG5leHBvcnQgY29uc3QgaXNUb2RheSA9IChkYXRlOiBEYXRlKSA9PiB7XG4gIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgcmV0dXJuIChkYXRlLmdldERhdGUoKSA9PSB0b2RheS5nZXREYXRlKCkgJiYgZGF0ZS5nZXRNb250aCgpID09IHRvZGF5LmdldE1vbnRoKCkgJiYgZGF0ZS5nZXRGdWxsWWVhcigpID09IHRvZGF5LmdldEZ1bGxZZWFyKCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVGhpc01vbnRoID0gKGRhdGU6IERhdGUsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICByZXR1cm4gKGluZGV4ID09IHRvZGF5LmdldE1vbnRoKCkgJiYgZGF0ZS5nZXRGdWxsWWVhcigpID09IHRvZGF5LmdldEZ1bGxZZWFyKCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVGhpc1llYXIgPSAoeWVhcjogbnVtYmVyKSA9PiB7XG4gIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgcmV0dXJuICh5ZWFyID09IHRvZGF5LmdldEZ1bGxZZWFyKCkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWREYXRlID0gKGRhdGU6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIpID0+IHtcbiAgY29uc3QgZCA9IG5ldyBEYXRlKGRhdGUpO1xuICAvLyBjb25zb2xlLmxvZygnaXNWYWxpZERhdGUnLCBkYXRlLCBkLmdldFRpbWUoKSwgISFkLmdldFRpbWUoKSlcbiAgcmV0dXJuICEhZC5nZXRUaW1lKCk7XG59O1xuXG5leHBvcnQgY29uc3QgdHJ5RGF0ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgRGF0ZSwgcHJvcE5hbWU6IHN0cmluZyA9ICdkYXRlJykgPT4ge1xuICBsZXQgX3ZhbHVlO1xuICB0cnkge1xuICAgIGlmICghaXNWYWxpZCh2YWx1ZSkpIHtcbiAgICAgIHRocm93IHZhbHVlO1xuICAgIH1cbiAgICBfdmFsdWUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIGNvbnNvbGUud2FybihgSW52YWxpZCAke3Byb3BOYW1lfWAsIGVycik7XG4gICAgX3ZhbHVlID0gbmV3IERhdGUoKTtcbiAgICBfdmFsdWUuc2V0SG91cnMoMCwgMCwgMCwgMCk7XG4gIH1cbiAgcmV0dXJuIF92YWx1ZTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVJblJhbmdlRGlzYWJsZWQgPSAoc3RhcnREYXRlPzogRGF0ZSB8IG51bGwsIGVuZERhdGU/OiBEYXRlIHwgbnVsbCwgZGF0ZXM/OiAoRGF0ZSB8IERhdGVbXSlbXSkgPT4ge1xuICBpZiAoc3RhcnREYXRlICYmIGVuZERhdGUpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoc3RhcnREYXRlKTtcbiAgICBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIHdoaWxlIChkYXRlIDwgZW5kRGF0ZSkge1xuICAgICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgMSk7XG4gICAgICBpZiAoaXNEYXRlRGlzYWJsZWQoZGF0ZSwgbnVsbCwgbnVsbCwgZGF0ZXMpKSB7XG4gICAgICAgIGRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkaXNhYmxlZDtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59O1xuXG4vLyBleHBvcnQgY29uc3Qgc3RyaW5nVG9EYXRlQ29udmVydCA9IChkYXRlOiBzdHJpbmcsIGxvY2FsZXM6IHN0cmluZykgPT4ge1xuLy8gICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgnZnItRlInKTtcbi8vICAgY29uc3QgcGFydHMgPSBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cygpO1xuLy8gICBjb25zb2xlLmxvZyhkYXRlLCBwYXJ0cywgZm9ybWF0dGVyLmZvcm1hdCgpLCBmb3JtYXR0ZXIucmVzb2x2ZWRPcHRpb25zKCksIGZvcm1hdHRlci5mb3JtYXQoKSk7XG4vLyB9O1xuXG4vLyBkZWNsYXJlIG5hbWVzcGFjZSBJbnRsIHtcbi8vICAgdHlwZSBEYXRlVGltZUZvcm1hdFBhcnRUeXBlcyA9IFwiZGF5XCIgfCBcImRheVBlcmlvZFwiIHwgXCJlcmFcIiB8IFwiZnJhY3Rpb25hbFNlY29uZFwiIHwgXCJob3VyXCIgfCBcImxpdGVyYWxcIiB8IFwibWludXRlXCIgfCBcIm1vbnRoXCIgfCBcInNlY29uZFwiIHwgXCJ0aW1lWm9uZU5hbWVcIiB8IFwid2Vla2RheVwiIHwgXCJ5ZWFyXCI7XG4vL1xuLy8gICBpbnRlcmZhY2UgRGF0ZVRpbWVGb3JtYXRQYXJ0IHtcbi8vICAgICB0eXBlOiBEYXRlVGltZUZvcm1hdFBhcnRUeXBlcztcbi8vICAgICB2YWx1ZTogc3RyaW5nO1xuLy8gICB9XG4vL1xuLy8gICBpbnRlcmZhY2UgRGF0ZVRpbWVGb3JtYXQge1xuLy8gICAgIGZvcm1hdFRvUGFydHMoZGF0ZT86IERhdGUgfCBudW1iZXIpOiBEYXRlVGltZUZvcm1hdFBhcnRbXTtcbi8vICAgfVxuLy8gfVxuXG50eXBlIERhdGVUaW1lRm9ybWF0UGFydFR5cGVzID1cbiAgJ2RheSdcbiAgfCAnZGF5UGVyaW9kJ1xuICB8ICdlcmEnXG4gIHwgJ2ZyYWN0aW9uYWxTZWNvbmQnXG4gIHwgJ2hvdXInXG4gIHwgJ2xpdGVyYWwnXG4gIHwgJ21pbnV0ZSdcbiAgfCAnbW9udGgnXG4gIHwgJ3NlY29uZCdcbiAgfCAndGltZVpvbmVOYW1lJ1xuICB8ICd3ZWVrZGF5J1xuICB8ICd5ZWFyJztcbnR5cGUgRGF0ZUZvcm1hdFBhcnRUeXBlcyA9ICdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJyB8ICdsaXRlcmFsJztcblxuLy8gdHlwZSBEYXRlUGFydHMgPSB7XG4vLyAgIFtrZXkgaW4gRGF0ZVRpbWVGb3JtYXRQYXJ0VHlwZXNdPzogc3RyaW5nO1xuLy8gfTtcblxuLy8gdHlwZSBEYXRlUGFydHMgPSB7XG4vLyAgIHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF5OiBudW1iZXIsIGxpdGVyYWw6IHN0cmluZ1xuLy8gfTtcbi8vXG4vLyBleHBvcnQgY29uc3QgY3Z0RGF0ZSA9IChkYXRlQXNTdHJpbmc6IHN0cmluZywgbG9jYWxlID0gJ3BsLVBMJykgPT4ge1xuLy8gICBjb25zdCBkYXRlU3RyaW5nID0gZGF0ZUFzU3RyaW5nID8/IG5ldyBEYXRlKCkudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSk7XG4vLyAgIGNvbnN0IGRhdGVTcGxpdCA9IGRhdGVTdHJpbmcuc3BsaXQoL1suXFwtXFwvXFxzXFxEXS9naSkuZmlsdGVyKGl0ZW0gPT4gISFpdGVtLmxlbmd0aCk7XG4vLyAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KGxvY2FsZSk7XG4vLyAgIGNvbnN0IHBhcnRzID0gZm9ybWF0dGVyLmZvcm1hdFRvUGFydHMoKS5maWx0ZXIocGFydCA9PiBbJ3llYXInLCAnbW9udGgnLCAnZGF5J10uaW5jbHVkZXMocGFydC50eXBlKSk7XG4vLyAgIGNvbnN0IGRhdGVTaGltID0ge1xuLy8gICAgIGRheTogdW5kZWZpbmVkLCBtb250aDogdW5kZWZpbmVkLCB5ZWFyOiB1bmRlZmluZWRcbi8vICAgfTtcbi8vICAgcGFydHMuZm9yRWFjaCgocGFydCwgaW5kZXgpID0+IHtcbi8vICAgICBjb25zdCB7IHR5cGUsIHZhbHVlIH0gPSB7IC4uLnBhcnQgfTtcbi8vICAgICAvLyBAdHMtaWdub3JlXG4vLyAgICAgZGF0ZVNoaW1bdHlwZV0gPSBkYXRlU3BsaXRbaW5kZXhdO1xuLy8gICB9KTtcbi8vXG4vLyAgIHJldHVybiBkYXRlU2hpbTtcbi8vXG4vLyAgIC8vIGNvbnN0IGRhdGVQYXJ0czogRGF0ZVBhcnRzID0ge1xuLy8gICAvLyAgIHllYXI6IDAsXG4vLyAgIC8vICAgbW9udGg6IDAsXG4vLyAgIC8vICAgZGF5OiAwLFxuLy8gICAvLyAgIGxpdGVyYWw6ICcvJ1xuLy8gICAvLyB9O1xuLy8gICAvL1xuLy8gICAvLyBjb25zdCBsaXRlcmFsID0gcGFydHMuZmluZChwYXJ0ID0+IHBhcnQudHlwZSA9PT0gJ2xpdGVyYWwnKT8udmFsdWUgPz8gJy8nO1xuLy8gICAvLyAvLyBjb25zdCB5ZWFyID0gcGFyc2VJbnQocGFydHMuZmluZChwYXJ0ID0+IHBhcnQudHlwZSA9PT0gJ3llYXInKT8udmFsdWUgPz8gJzAnKTtcbi8vICAgLy8gLy8gY29uc3QgbW9udGggPSBwYXJzZUludChwYXJ0cy5maW5kKHBhcnQgPT4gcGFydC50eXBlID09PSAneWVhcicpPy52YWx1ZSA/PyAnMCcpO1xuLy8gICAvLyAvLyBjb25zdCBkYXkgPSBwYXJzZUludChwYXJ0cy5maW5kKHBhcnQgPT4gcGFydC50eXBlID09PSAneWVhcicpPy52YWx1ZSA/PyAnMCcpO1xuLy8gICAvL1xuLy8gICAvLyBjb25zdCBkYXRlQXJyYXkgPSBkYXRlU3RyaW5nLnNwbGl0KGxpdGVyYWwpO1xuLy8gICAvL1xuLy8gICAvLyBwYXJ0cy5mb3JFYWNoKHBhcnQgPT4ge1xuLy8gICAvLyAgIGNvbnN0IHt0eXBlLCB2YWx1ZX0gPSB7Li4ucGFydH07XG4vLyAgIC8vICAgaWYgKHR5cGUgPT09ICdkYXknKSB7XG4vLyAgIC8vXG4vLyAgIC8vICAgfVxuLy8gICAvLyB9KVxuLy8gICAvL1xuLy8gICAvLyBwYXJ0cy5maWx0ZXIocGFydCA9PiBwYXJ0LnR5cGUgaW4gZGF0ZVBhcnRzKS5tYXAocGFydCA9PiB7XG4vLyAgIC8vICAgY29uc3Qge3R5cGUsIHZhbHVlfSA9IHsuLi5wYXJ0fTtcbi8vICAgLy8gICAvLyBAdHMtaWdub3JlXG4vLyAgIC8vICAgZGF0ZVBhcnRzW3R5cGVdID0gcGFyc2VJbnQocGFydC52YWx1ZSk7XG4vLyAgIC8vICAgLy9cbi8vICAgLy8gICAvLyBzd2l0Y2ggKHR5cGUpIHtcbi8vICAgLy8gICAvLyAgIGNhc2UgJ2RheSc6XG4vLyAgIC8vICAgLy8gICAgIGRheSA9IHBhcnNlSW50KHZhbHVlKTtcbi8vICAgLy8gICAvLyAgICAgYnJlYWs7XG4vLyAgIC8vICAgLy8gICBjYXNlICdtb250aCc6XG4vLyAgIC8vICAgLy8gICAgIG1vbnRoID0gcGFyc2VJbnQodmFsdWUpO1xuLy8gICAvLyAgIC8vICAgICBicmVhaztcbi8vICAgLy8gICAvLyAgIGNhc2UgJ3llYXInOlxuLy8gICAvLyAgIC8vICAgICB5ZWFyID0gcGFyc2VJbnQodmFsdWUpO1xuLy8gICAvLyAgIC8vICAgICBicmVhaztcbi8vICAgLy8gICAvLyB9XG4vLyAgIC8vIH0pXG4vLyAgIC8vIC8vIGNvbnN0IHsgeWVhciwgbW9udGgsIGRheSB9ID0gey4uLmRhdGVQYXJ0c31cbi8vICAgLy8gcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoIC0gMSwgZGF5KTtcbi8vIH07XG4vL1xuLy8gLy8gZnVuY3Rpb24gZ2V0RGF0ZVgoZGF0ZUFzU3RyaW5nKSB7XG4vLyAvLyAgIGNvbnN0IFtkYXksIG1vbnRoLCB5ZWFyXSA9IGRhdGVBc1N0cmluZy5zcGxpdCgnLycpO1xuLy8gLy8gICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpO1xuLy8gLy8gfVxuLy9cbi8vIC8vIGdldERhdGUoJzEyLzA3LzE5OTcnKTtcbiJdfQ==
|
|
283
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2NhbGVuZGFyL2NhbGVuZGFyLnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFbkMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFPLEVBQUUsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFbkgsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFPLEVBQUUsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFbkgsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUFVLEVBQUUsY0FBc0IsRUFBRSxFQUFFO0lBQ3hFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsQ0FBQztJQUN4RCxPQUFPLElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQztTQUM3QixJQUFJLENBQUMsRUFBRSxDQUFDO1NBQ1IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFDaEUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7QUFFN0QsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7QUFFM0QsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxNQUFjLEVBQUUsTUFBYyxFQUFFLElBQWMsRUFBRSxFQUFFO0lBQ3ZGLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDaEQsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakYsS0FBSyxHQUFHLEtBQUs7U0FDVixPQUFPLENBQUMsTUFBTSxFQUFFLHFCQUFxQixDQUFDO1NBQ3RDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLENBQUM7U0FDckMsT0FBTyxDQUFDLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBRXZDLElBQUksSUFBSSxFQUFFO1FBQ1IsS0FBSyxHQUFHLEtBQUs7YUFDVixPQUFPLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDO2FBQ25DLE9BQU8sQ0FBQyxJQUFJLEVBQUUscUJBQXFCLENBQUM7YUFDcEMsT0FBTyxDQUFDLElBQUksRUFBRSx1QkFBdUIsQ0FBQzthQUN0QyxPQUFPLENBQUMsSUFBSSxFQUFFLHVCQUF1QixDQUFDO2FBQ3RDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztLQUN2QztJQUVELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDL0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVuQyxJQUFJLFFBQVEsS0FBSyxJQUFJLEVBQUU7UUFDckIsT0FBTztLQUNSO0lBRUQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUUzZixPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFFRixNQUFNLENB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cm9tICdkYXRlLWZucyc7XG5cbmV4cG9ydCBjb25zdCBjb252ZXJ0VG9Mb2NhbERhdGUgPSAoZDogRGF0ZSwgbG9jYWxlOiBzdHJpbmcsIG9wdGlvbnMgPSB7fSkgPT4gZC50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlLCBvcHRpb25zKTtcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRUb0xvY2FsVGltZSA9IChkOiBEYXRlLCBsb2NhbGU6IHN0cmluZywgb3B0aW9ucyA9IHt9KSA9PiBkLnRvTG9jYWxlVGltZVN0cmluZyhsb2NhbGUsIG9wdGlvbnMpO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlR3JvdXBzSW5BcnJheSA9IChhcnI6IGFueVtdLCBudW1iZXJPZkdyb3VwczogbnVtYmVyKSA9PiB7XG4gIGNvbnN0IHBlckdyb3VwID0gTWF0aC5jZWlsKGFyci5sZW5ndGggLyBudW1iZXJPZkdyb3Vwcyk7XG4gIHJldHVybiBuZXcgQXJyYXkobnVtYmVyT2ZHcm91cHMpXG4gICAgLmZpbGwoJycpXG4gICAgLm1hcCgoXywgaSkgPT4gYXJyLnNsaWNlKGkgKiBwZXJHcm91cCwgKGkgKyAxKSAqIHBlckdyb3VwKSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Q3VycmVudFllYXIgPSAoKSA9PiBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7XG5cbmV4cG9ydCBjb25zdCBnZXRDdXJyZW50TW9udGggPSAoKSA9PiBuZXcgRGF0ZSgpLmdldE1vbnRoKCk7XG5cbmV4cG9ydCBjb25zdCBnZXRMb2NhbERhdGVGcm9tU3RyaW5nID0gKHN0cmluZzogc3RyaW5nLCBsb2NhbGU6IHN0cmluZywgdGltZT86IGJvb2xlYW4pID0+IHtcbiAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKDIwMTMsIDExLCAzMSwgMTcsIDE5LCAyMik7XG4gIGxldCByZWdleCA9IHRpbWUgPyBkYXRlLnRvTG9jYWxlU3RyaW5nKGxvY2FsZSkgOiBkYXRlLnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUpO1xuICByZWdleCA9IHJlZ2V4XG4gICAgLnJlcGxhY2UoJzIwMTMnLCAnKD88eWVhcj5bMC05XXsyLDR9KScpXG4gICAgLnJlcGxhY2UoJzEyJywgJyg/PG1vbnRoPlswLTldezEsMn0pJylcbiAgICAucmVwbGFjZSgnMzEnLCAnKD88ZGF5PlswLTldezEsMn0pJyk7XG5cbiAgaWYgKHRpbWUpIHtcbiAgICByZWdleCA9IHJlZ2V4XG4gICAgICAucmVwbGFjZSgnNScsICcoPzxob3VyPlswLTldezEsMn0pJylcbiAgICAgIC5yZXBsYWNlKCcxNycsICcoPzxob3VyPlswLTldezEsMn0pJylcbiAgICAgIC5yZXBsYWNlKCcxOScsICcoPzxtaW51dGU+WzAtOV17MSwyfSknKVxuICAgICAgLnJlcGxhY2UoJzIyJywgJyg/PHNlY29uZD5bMC05XXsxLDJ9KScpXG4gICAgICAucmVwbGFjZSgnUE0nLCAnKD88YW1wbT5bQS1aXXsyfSknKTtcbiAgfVxuXG4gIGNvbnN0IHJneCA9IFJlZ0V4cChgJHtyZWdleH1gKTtcbiAgY29uc3QgcGFydGlhbHMgPSBzdHJpbmcubWF0Y2gocmd4KTtcblxuICBpZiAocGFydGlhbHMgPT09IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBuZXdEYXRlID0gcGFydGlhbHMuZ3JvdXBzICYmICh0aW1lID8gbmV3IERhdGUoTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1sneWVhciddKSwgTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1snbW9udGgnXSkgLSAxLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydkYXknXSksIHBhcnRpYWxzLmdyb3Vwc1snYW1wbSddID8gcGFydGlhbHMuZ3JvdXBzWydhbXBtJ10gPT09ICdQTScgPyBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydob3VyJ10pICsgMTIgOiBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydob3VyJ10pIDogTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1snaG91ciddKSwgTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1snbWludXRlJ10pLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydzZWNvbmQnXSkpIDogbmV3IERhdGUoTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1sneWVhciddKSwgTnVtYmVyKHBhcnRpYWxzLmdyb3Vwc1snbW9udGgnXSkgLSAxLCBOdW1iZXIocGFydGlhbHMuZ3JvdXBzWydkYXknXSkpKTtcblxuICByZXR1cm4gbmV3RGF0ZTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRNb250aE5hbWUgPSAobW9udGg6IG51bWJlciwgbG9jYWxlOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgZCA9IG5ldyBEYXRlKCk7XG4gIGQuc2V0RGF0ZSgxKTtcbiAgZC5zZXRNb250aChtb250aCk7XG4gIHJldHVybiBkLnRvTG9jYWxlU3RyaW5nKGxvY2FsZSwgeyBtb250aDogJ2xvbmcnIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldE1vbnRoc05hbWVzID0gKGxvY2FsZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IG1vbnRocyA9IFtdO1xuICBjb25zdCBkID0gbmV3IERhdGUoKTtcbiAgZC5zZXREYXRlKDEpO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgMTI7IGkrKykge1xuICAgIGQuc2V0TW9udGgoaSk7XG4gICAgbW9udGhzLnB1c2goZC50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlLCB7IG1vbnRoOiAnc2hvcnQnIH0pKTtcbiAgfVxuXG4gIHJldHVybiBtb250aHM7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0WWVhcnMgPSAoeWVhcjogbnVtYmVyKSA9PiB7XG4gIGNvbnN0IHllYXJzID0gW107XG4gIGZvciAobGV0IF95ZWFyID0geWVhciAtIDY7IF95ZWFyIDwgeWVhciArIDY7IF95ZWFyKyspIHtcbiAgICB5ZWFycy5wdXNoKF95ZWFyKTtcbiAgfVxuXG4gIHJldHVybiB5ZWFycztcbn07XG5cbmNvbnN0IGdldExlYWRpbmdEYXlzID0gKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZmlyc3REYXlPZldlZWs6IG51bWJlcikgPT4ge1xuICAvLyAwOiBzdW5kYXlcbiAgLy8gMTogbW9uZGF5XG4gIGNvbnN0IGRhdGVzID0gW107XG4gIGNvbnN0IGQgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCk7XG4gIGNvbnN0IHkgPSBkLmdldEZ1bGxZZWFyKCk7XG4gIGNvbnN0IG0gPSBkLmdldE1vbnRoKCk7XG4gIGNvbnN0IGZpcnN0V2Vla2RheSA9IG5ldyBEYXRlKHksIG0sIDEpLmdldERheSgpO1xuICBsZXQgbGVhZGluZ0RheXMgPSA2IC0gKDYgLSBmaXJzdFdlZWtkYXkpIC0gZmlyc3REYXlPZldlZWs7XG5cbiAgaWYgKGZpcnN0RGF5T2ZXZWVrKSB7XG4gICAgbGVhZGluZ0RheXMgPSBsZWFkaW5nRGF5cyA8IDAgPyA3ICsgbGVhZGluZ0RheXMgOiBsZWFkaW5nRGF5cztcbiAgfVxuXG4gIGZvciAobGV0IGkgPSBsZWFkaW5nRGF5cyAqIC0xOyBpIDwgMDsgaSsrKSB7XG4gICAgZGF0ZXMucHVzaCh7XG4gICAgICBkYXRlOiBuZXcgRGF0ZSh5LCBtLCBpICsgMSksIG1vbnRoOiAncHJldmlvdXMnXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gZGF0ZXM7XG59O1xuXG5jb25zdCBnZXRNb250aERheXMgPSAoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyKSA9PiB7XG4gIGNvbnN0IGRhdGVzID0gW107XG4gIGNvbnN0IGxhc3REYXkgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIDApLmdldERhdGUoKTtcbiAgZm9yIChsZXQgaSA9IDE7IGkgPD0gbGFzdERheTsgaSsrKSB7XG4gICAgZGF0ZXMucHVzaCh7XG4gICAgICBkYXRlOiBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgaSksIG1vbnRoOiAnY3VycmVudCdcbiAgICB9KTtcbiAgfVxuICByZXR1cm4gZGF0ZXM7XG59O1xuXG5jb25zdCBnZXRUcmFpbGluZ0RheXMgPSAoXG4gIHllYXI6IG51bWJlcixcbiAgbW9udGg6IG51bWJlcixcbiAgbGVhZGluZ0RheXM6IHsgZGF0ZTogRGF0ZTsgbW9udGg6IHN0cmluZyB9W10sXG4gIG1vbnRoRGF5czogeyBkYXRlOiBEYXRlOyBtb250aDogc3RyaW5nIH1bXVxuKSA9PiB7XG4gIGNvbnN0IGRhdGVzID0gW107XG4gIGNvbnN0IGRheXMgPSA0MiAtIChsZWFkaW5nRGF5cy5sZW5ndGggKyBtb250aERheXMubGVuZ3RoKTtcbiAgZm9yIChsZXQgaSA9IDE7IGkgPD0gZGF5czsgaSsrKSB7XG4gICAgZGF0ZXMucHVzaCh7XG4gICAgICBkYXRlOiBuZXcgRGF0ZSh5ZWFyLCBtb250aCArIDEsIGkpLCBtb250aDogJ25leHQnXG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIGRhdGVzO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldE1vbnRoRGV0YWlscyA9ICh5ZWFyOiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIGZpcnN0RGF5T2ZXZWVrOiBudW1iZXIpID0+IHtcbiAgY29uc3QgZGF5c1ByZXZNb250aCA9IGdldExlYWRpbmdEYXlzKHllYXIsIG1vbnRoLCBmaXJzdERheU9mV2Vlayk7XG4gIGNvbnN0IGRheXNUaGlzTW9udGggPSBnZXRNb250aERheXMoeWVhciwgbW9udGgpO1xuICBjb25zdCBkYXlzTmV4dE1vbnRoID0gZ2V0VHJhaWxpbmdEYXlzKHllYXIsIG1vbnRoLCBkYXlzUHJldk1vbnRoLCBkYXlzVGhpc01vbnRoKTtcbiAgY29uc3QgZGF5cyA9IFsuLi5kYXlzUHJldk1vbnRoLCAuLi5kYXlzVGhpc01vbnRoLCAuLi5kYXlzTmV4dE1vbnRoXTtcblxuICBjb25zdCB3ZWVrczogeyBkYXRlOiBEYXRlOyBtb250aDogc3RyaW5nIH1bXVtdID0gW107XG5cbiAgZGF5cy5mb3JFYWNoKChkYXksIGluZGV4KSA9PiB7XG4gICAgaWYgKGluZGV4ICUgNyA9PT0gMCB8fCB3ZWVrcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHdlZWtzLnB1c2goW10pO1xuICAgIH1cbiAgICB3ZWVrc1t3ZWVrcy5sZW5ndGggLSAxXS5wdXNoKGRheSk7XG4gIH0pO1xuXG4gIHJldHVybiB3ZWVrcztcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVEaXNhYmxlZCA9IChkYXRlOiBEYXRlIHwgbnVsbCwgbWluPzogRGF0ZSB8IG51bGwsIG1heD86IERhdGUgfCBudWxsLCBkYXRlcz86IChEYXRlIHwgRGF0ZVtdKVtdKSA9PiB7XG4gIGlmICghZGF0ZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBpZiAoIW1pbiAmJiAhbWF4ICYmICghZGF0ZXMgfHwgIWRhdGVzLmxlbmd0aCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgbGV0IGRpc2FibGVkO1xuICBpZiAoZGF0ZXMpIHtcbiAgICBkYXRlcy5mb3JFYWNoKChfZGF0ZTogRGF0ZSB8IERhdGVbXSkgPT4ge1xuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoX2RhdGUpKSB7XG4gICAgICAgIGlmIChpc0RhdGVJblJhbmdlKGRhdGUsIF9kYXRlWzBdLCBfZGF0ZVsxXSkpIHtcbiAgICAgICAgICBkaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChfZGF0ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgaWYgKGlzU2FtZURhdGVBcyhkYXRlLCBfZGF0ZSkpIHtcbiAgICAgICAgICBkaXNhYmxlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBpZiAobWluICYmIGRhdGUgPCBtaW4pIHtcbiAgICBkaXNhYmxlZCA9IHRydWU7XG4gIH1cblxuICBpZiAobWF4ICYmIGRhdGUgPiBtYXgpIHtcbiAgICBkaXNhYmxlZCA9IHRydWU7XG4gIH1cbiAgcmV0dXJuIGRpc2FibGVkO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRGF0ZUluUmFuZ2UgPSAoZGF0ZTogRGF0ZSB8IG51bGwsIHN0YXJ0OiBEYXRlIHwgbnVsbCwgZW5kOiBEYXRlIHwgbnVsbCkgPT4ge1xuICByZXR1cm4gZGF0ZSAmJiBzdGFydCAmJiBlbmQgJiYgc3RhcnQgPD0gZGF0ZSAmJiBkYXRlIDw9IGVuZDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0RhdGVTZWxlY3RlZCA9IChkYXRlOiBEYXRlIHwgbnVsbCwgc3RhcnQ6IERhdGUgfCBudWxsLCBlbmQ6IERhdGUgfCBudWxsKSA9PiB7XG4gIHJldHVybiBkYXRlICYmICgoc3RhcnQgJiYgaXNTYW1lRGF0ZUFzKHN0YXJ0LCBkYXRlKSkgfHwgKGVuZCAmJiBpc1NhbWVEYXRlQXMoZW5kLCBkYXRlKSkpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRW5kRGF0ZSA9IChkYXRlOiBEYXRlIHwgbnVsbCwgc3RhcnQ6IERhdGUgfCBudWxsLCBlbmQ6IERhdGUgfCBudWxsKSA9PiB7XG4gIHJldHVybiBkYXRlICYmIHN0YXJ0ICYmIGVuZCAmJiBpc1NhbWVEYXRlQXMoZW5kLCBkYXRlKSAmJiBzdGFydCA8IGVuZDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0xhc3REYXlPZk1vbnRoID0gKGRhdGU6IERhdGUpID0+IHtcbiAgY29uc3QgdGVzdCA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtcbiAgY29uc3QgbW9udGggPSB0ZXN0LmdldE1vbnRoKCk7XG5cbiAgdGVzdC5zZXREYXRlKHRlc3QuZ2V0RGF0ZSgpICsgMSk7XG4gIHJldHVybiB0ZXN0LmdldE1vbnRoKCkgIT09IG1vbnRoO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzU2FtZURhdGVBcyA9IChkYXRlOiBEYXRlLCBkYXRlMjogRGF0ZSkgPT4ge1xuICByZXR1cm4gKGRhdGUuZ2V0RGF0ZSgpID09IGRhdGUyLmdldERhdGUoKSAmJiBkYXRlLmdldE1vbnRoKCkgPT0gZGF0ZTIuZ2V0TW9udGgoKSAmJiBkYXRlLmdldEZ1bGxZZWFyKCkgPT0gZGF0ZTIuZ2V0RnVsbFllYXIoKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNTdGFydERhdGUgPSAoZGF0ZTogRGF0ZSB8IG51bGwsIHN0YXJ0OiBEYXRlIHwgbnVsbCwgZW5kOiBEYXRlIHwgbnVsbCkgPT4ge1xuICByZXR1cm4gZGF0ZSAmJiBzdGFydCAmJiBlbmQgJiYgaXNTYW1lRGF0ZUFzKHN0YXJ0LCBkYXRlKSAmJiBzdGFydCA8IGVuZDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc1RvZGF5ID0gKGRhdGU6IERhdGUpID0+IHtcbiAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICByZXR1cm4gKGRhdGUuZ2V0RGF0ZSgpID09IHRvZGF5LmdldERhdGUoKSAmJiBkYXRlLmdldE1vbnRoKCkgPT0gdG9kYXkuZ2V0TW9udGgoKSAmJiBkYXRlLmdldEZ1bGxZZWFyKCkgPT0gdG9kYXkuZ2V0RnVsbFllYXIoKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNUaGlzTW9udGggPSAoZGF0ZTogRGF0ZSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XG4gIHJldHVybiAoaW5kZXggPT0gdG9kYXkuZ2V0TW9udGgoKSAmJiBkYXRlLmdldEZ1bGxZZWFyKCkgPT0gdG9kYXkuZ2V0RnVsbFllYXIoKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNUaGlzWWVhciA9ICh5ZWFyOiBudW1iZXIpID0+IHtcbiAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xuICByZXR1cm4gKHllYXIgPT0gdG9kYXkuZ2V0RnVsbFllYXIoKSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNWYWxpZERhdGUgPSAoZGF0ZTogRGF0ZSB8IHN0cmluZyB8IG51bWJlcikgPT4ge1xuICBjb25zdCBkID0gbmV3IERhdGUoZGF0ZSk7XG4gIC8vIGNvbnNvbGUubG9nKCdpc1ZhbGlkRGF0ZScsIGRhdGUsIGQuZ2V0VGltZSgpLCAhIWQuZ2V0VGltZSgpKVxuICByZXR1cm4gISFkLmdldFRpbWUoKTtcbn07XG5cbmV4cG9ydCBjb25zdCB0cnlEYXRlID0gKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlLCBwcm9wTmFtZTogc3RyaW5nID0gJ2RhdGUnKSA9PiB7XG4gIGxldCBfdmFsdWU7XG4gIHRyeSB7XG4gICAgaWYgKCFpc1ZhbGlkKHZhbHVlKSkge1xuICAgICAgdGhyb3cgdmFsdWU7XG4gICAgfVxuICAgIF92YWx1ZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgY29uc29sZS53YXJuKGBJbnZhbGlkICR7cHJvcE5hbWV9YCwgZXJyKTtcbiAgICBfdmFsdWUgPSBuZXcgRGF0ZSgpO1xuICAgIF92YWx1ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgfVxuICByZXR1cm4gX3ZhbHVlO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRGF0ZUluUmFuZ2VEaXNhYmxlZCA9IChzdGFydERhdGU/OiBEYXRlIHwgbnVsbCwgZW5kRGF0ZT86IERhdGUgfCBudWxsLCBkYXRlcz86IChEYXRlIHwgRGF0ZVtdKVtdKSA9PiB7XG4gIGlmICghZGF0ZXMgfHwgIWRhdGVzLmxlbmd0aCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBpZiAoc3RhcnREYXRlICYmIGVuZERhdGUpIHtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoc3RhcnREYXRlKTtcbiAgICBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIHdoaWxlIChkYXRlIDwgZW5kRGF0ZSkge1xuICAgICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgMSk7XG4gICAgICBpZiAoaXNEYXRlRGlzYWJsZWQoZGF0ZSwgbnVsbCwgbnVsbCwgZGF0ZXMpKSB7XG4gICAgICAgIGRpc2FibGVkID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkaXNhYmxlZDtcbiAgfVxuICByZXR1cm4gZmFsc2U7XG59O1xuXG4vLyBleHBvcnQgY29uc3Qgc3RyaW5nVG9EYXRlQ29udmVydCA9IChkYXRlOiBzdHJpbmcsIGxvY2FsZXM6IHN0cmluZykgPT4ge1xuLy8gICBjb25zdCBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCgnZnItRlInKTtcbi8vICAgY29uc3QgcGFydHMgPSBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cygpO1xuLy8gICBjb25zb2xlLmxvZyhkYXRlLCBwYXJ0cywgZm9ybWF0dGVyLmZvcm1hdCgpLCBmb3JtYXR0ZXIucmVzb2x2ZWRPcHRpb25zKCksIGZvcm1hdHRlci5mb3JtYXQoKSk7XG4vLyB9O1xuXG4vLyBkZWNsYXJlIG5hbWVzcGFjZSBJbnRsIHtcbi8vICAgdHlwZSBEYXRlVGltZUZvcm1hdFBhcnRUeXBlcyA9IFwiZGF5XCIgfCBcImRheVBlcmlvZFwiIHwgXCJlcmFcIiB8IFwiZnJhY3Rpb25hbFNlY29uZFwiIHwgXCJob3VyXCIgfCBcImxpdGVyYWxcIiB8IFwibWludXRlXCIgfCBcIm1vbnRoXCIgfCBcInNlY29uZFwiIHwgXCJ0aW1lWm9uZU5hbWVcIiB8IFwid2Vla2RheVwiIHwgXCJ5ZWFyXCI7XG4vL1xuLy8gICBpbnRlcmZhY2UgRGF0ZVRpbWVGb3JtYXRQYXJ0IHtcbi8vICAgICB0eXBlOiBEYXRlVGltZUZvcm1hdFBhcnRUeXBlcztcbi8vICAgICB2YWx1ZTogc3RyaW5nO1xuLy8gICB9XG4vL1xuLy8gICBpbnRlcmZhY2UgRGF0ZVRpbWVGb3JtYXQge1xuLy8gICAgIGZvcm1hdFRvUGFydHMoZGF0ZT86IERhdGUgfCBudW1iZXIpOiBEYXRlVGltZUZvcm1hdFBhcnRbXTtcbi8vICAgfVxuLy8gfVxuXG50eXBlIERhdGVUaW1lRm9ybWF0UGFydFR5cGVzID1cbiAgJ2RheSdcbiAgfCAnZGF5UGVyaW9kJ1xuICB8ICdlcmEnXG4gIHwgJ2ZyYWN0aW9uYWxTZWNvbmQnXG4gIHwgJ2hvdXInXG4gIHwgJ2xpdGVyYWwnXG4gIHwgJ21pbnV0ZSdcbiAgfCAnbW9udGgnXG4gIHwgJ3NlY29uZCdcbiAgfCAndGltZVpvbmVOYW1lJ1xuICB8ICd3ZWVrZGF5J1xuICB8ICd5ZWFyJztcbnR5cGUgRGF0ZUZvcm1hdFBhcnRUeXBlcyA9ICdkYXknIHwgJ21vbnRoJyB8ICd5ZWFyJyB8ICdsaXRlcmFsJztcblxuLy8gdHlwZSBEYXRlUGFydHMgPSB7XG4vLyAgIFtrZXkgaW4gRGF0ZVRpbWVGb3JtYXRQYXJ0VHlwZXNdPzogc3RyaW5nO1xuLy8gfTtcblxuLy8gdHlwZSBEYXRlUGFydHMgPSB7XG4vLyAgIHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF5OiBudW1iZXIsIGxpdGVyYWw6IHN0cmluZ1xuLy8gfTtcbi8vXG4vLyBleHBvcnQgY29uc3QgY3Z0RGF0ZSA9IChkYXRlQXNTdHJpbmc6IHN0cmluZywgbG9jYWxlID0gJ3BsLVBMJykgPT4ge1xuLy8gICBjb25zdCBkYXRlU3RyaW5nID0gZGF0ZUFzU3RyaW5nID8/IG5ldyBEYXRlKCkudG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSk7XG4vLyAgIGNvbnN0IGRhdGVTcGxpdCA9IGRhdGVTdHJpbmcuc3BsaXQoL1suXFwtXFwvXFxzXFxEXS9naSkuZmlsdGVyKGl0ZW0gPT4gISFpdGVtLmxlbmd0aCk7XG4vLyAgIGNvbnN0IGZvcm1hdHRlciA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KGxvY2FsZSk7XG4vLyAgIGNvbnN0IHBhcnRzID0gZm9ybWF0dGVyLmZvcm1hdFRvUGFydHMoKS5maWx0ZXIocGFydCA9PiBbJ3llYXInLCAnbW9udGgnLCAnZGF5J10uaW5jbHVkZXMocGFydC50eXBlKSk7XG4vLyAgIGNvbnN0IGRhdGVTaGltID0ge1xuLy8gICAgIGRheTogdW5kZWZpbmVkLCBtb250aDogdW5kZWZpbmVkLCB5ZWFyOiB1bmRlZmluZWRcbi8vICAgfTtcbi8vICAgcGFydHMuZm9yRWFjaCgocGFydCwgaW5kZXgpID0+IHtcbi8vICAgICBjb25zdCB7IHR5cGUsIHZhbHVlIH0gPSB7IC4uLnBhcnQgfTtcbi8vICAgICAvLyBAdHMtaWdub3JlXG4vLyAgICAgZGF0ZVNoaW1bdHlwZV0gPSBkYXRlU3BsaXRbaW5kZXhdO1xuLy8gICB9KTtcbi8vXG4vLyAgIHJldHVybiBkYXRlU2hpbTtcbi8vXG4vLyAgIC8vIGNvbnN0IGRhdGVQYXJ0czogRGF0ZVBhcnRzID0ge1xuLy8gICAvLyAgIHllYXI6IDAsXG4vLyAgIC8vICAgbW9udGg6IDAsXG4vLyAgIC8vICAgZGF5OiAwLFxuLy8gICAvLyAgIGxpdGVyYWw6ICcvJ1xuLy8gICAvLyB9O1xuLy8gICAvL1xuLy8gICAvLyBjb25zdCBsaXRlcmFsID0gcGFydHMuZmluZChwYXJ0ID0+IHBhcnQudHlwZSA9PT0gJ2xpdGVyYWwnKT8udmFsdWUgPz8gJy8nO1xuLy8gICAvLyAvLyBjb25zdCB5ZWFyID0gcGFyc2VJbnQocGFydHMuZmluZChwYXJ0ID0+IHBhcnQudHlwZSA9PT0gJ3llYXInKT8udmFsdWUgPz8gJzAnKTtcbi8vICAgLy8gLy8gY29uc3QgbW9udGggPSBwYXJzZUludChwYXJ0cy5maW5kKHBhcnQgPT4gcGFydC50eXBlID09PSAneWVhcicpPy52YWx1ZSA/PyAnMCcpO1xuLy8gICAvLyAvLyBjb25zdCBkYXkgPSBwYXJzZUludChwYXJ0cy5maW5kKHBhcnQgPT4gcGFydC50eXBlID09PSAneWVhcicpPy52YWx1ZSA/PyAnMCcpO1xuLy8gICAvL1xuLy8gICAvLyBjb25zdCBkYXRlQXJyYXkgPSBkYXRlU3RyaW5nLnNwbGl0KGxpdGVyYWwpO1xuLy8gICAvL1xuLy8gICAvLyBwYXJ0cy5mb3JFYWNoKHBhcnQgPT4ge1xuLy8gICAvLyAgIGNvbnN0IHt0eXBlLCB2YWx1ZX0gPSB7Li4ucGFydH07XG4vLyAgIC8vICAgaWYgKHR5cGUgPT09ICdkYXknKSB7XG4vLyAgIC8vXG4vLyAgIC8vICAgfVxuLy8gICAvLyB9KVxuLy8gICAvL1xuLy8gICAvLyBwYXJ0cy5maWx0ZXIocGFydCA9PiBwYXJ0LnR5cGUgaW4gZGF0ZVBhcnRzKS5tYXAocGFydCA9PiB7XG4vLyAgIC8vICAgY29uc3Qge3R5cGUsIHZhbHVlfSA9IHsuLi5wYXJ0fTtcbi8vICAgLy8gICAvLyBAdHMtaWdub3JlXG4vLyAgIC8vICAgZGF0ZVBhcnRzW3R5cGVdID0gcGFyc2VJbnQocGFydC52YWx1ZSk7XG4vLyAgIC8vICAgLy9cbi8vICAgLy8gICAvLyBzd2l0Y2ggKHR5cGUpIHtcbi8vICAgLy8gICAvLyAgIGNhc2UgJ2RheSc6XG4vLyAgIC8vICAgLy8gICAgIGRheSA9IHBhcnNlSW50KHZhbHVlKTtcbi8vICAgLy8gICAvLyAgICAgYnJlYWs7XG4vLyAgIC8vICAgLy8gICBjYXNlICdtb250aCc6XG4vLyAgIC8vICAgLy8gICAgIG1vbnRoID0gcGFyc2VJbnQodmFsdWUpO1xuLy8gICAvLyAgIC8vICAgICBicmVhaztcbi8vICAgLy8gICAvLyAgIGNhc2UgJ3llYXInOlxuLy8gICAvLyAgIC8vICAgICB5ZWFyID0gcGFyc2VJbnQodmFsdWUpO1xuLy8gICAvLyAgIC8vICAgICBicmVhaztcbi8vICAgLy8gICAvLyB9XG4vLyAgIC8vIH0pXG4vLyAgIC8vIC8vIGNvbnN0IHsgeWVhciwgbW9udGgsIGRheSB9ID0gey4uLmRhdGVQYXJ0c31cbi8vICAgLy8gcmV0dXJuIG5ldyBEYXRlKHllYXIsIG1vbnRoIC0gMSwgZGF5KTtcbi8vIH07XG4vL1xuLy8gLy8gZnVuY3Rpb24gZ2V0RGF0ZVgoZGF0ZUFzU3RyaW5nKSB7XG4vLyAvLyAgIGNvbnN0IFtkYXksIG1vbnRoLCB5ZWFyXSA9IGRhdGVBc1N0cmluZy5zcGxpdCgnLycpO1xuLy8gLy8gICByZXR1cm4gbmV3IERhdGUoeWVhciwgbW9udGggLSAxLCBkYXkpO1xuLy8gLy8gfVxuLy9cbi8vIC8vIGdldERhdGUoJzEyLzA3LzE5OTcnKTtcbiJdfQ==
|
|
@@ -18,10 +18,14 @@ export class FormCheckInputDirective {
|
|
|
18
18
|
* @type boolean
|
|
19
19
|
*/
|
|
20
20
|
set indeterminate(value) {
|
|
21
|
-
const
|
|
22
|
-
if (this._indeterminate !==
|
|
23
|
-
this._indeterminate =
|
|
24
|
-
this.
|
|
21
|
+
const indeterminate = coerceBooleanProperty(value);
|
|
22
|
+
if (this._indeterminate !== indeterminate) {
|
|
23
|
+
this._indeterminate = indeterminate;
|
|
24
|
+
const htmlInputElement = this.hostElement.nativeElement;
|
|
25
|
+
if (indeterminate) {
|
|
26
|
+
this.renderer.setProperty(htmlInputElement, 'checked', false);
|
|
27
|
+
}
|
|
28
|
+
this.renderer.setProperty(htmlInputElement, 'indeterminate', indeterminate);
|
|
25
29
|
}
|
|
26
30
|
}
|
|
27
31
|
;
|
|
@@ -35,12 +39,19 @@ export class FormCheckInputDirective {
|
|
|
35
39
|
'is-invalid': this.valid === false
|
|
36
40
|
};
|
|
37
41
|
}
|
|
42
|
+
set checked(value) {
|
|
43
|
+
const checked = coerceBooleanProperty(value);
|
|
44
|
+
const htmlInputElement = this.hostElement?.nativeElement;
|
|
45
|
+
if (htmlInputElement) {
|
|
46
|
+
this.renderer.setProperty(htmlInputElement, 'checked', checked);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
38
49
|
get checked() {
|
|
39
50
|
return this.hostElement?.nativeElement?.checked;
|
|
40
51
|
}
|
|
41
52
|
}
|
|
42
53
|
FormCheckInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckInputDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
43
|
-
FormCheckInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: { type: "type", indeterminate: "indeterminate", valid: "valid" }, host: { properties: { "attr.type": "this.type", "class": "this.hostClasses" } }, ngImport: i0 });
|
|
54
|
+
FormCheckInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: { type: "type", indeterminate: "indeterminate", valid: "valid", checked: "checked" }, host: { properties: { "attr.type": "this.type", "class": "this.hostClasses" } }, ngImport: i0 });
|
|
44
55
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckInputDirective, decorators: [{
|
|
45
56
|
type: Directive,
|
|
46
57
|
args: [{
|
|
@@ -58,5 +69,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
58
69
|
}], hostClasses: [{
|
|
59
70
|
type: HostBinding,
|
|
60
71
|
args: ['class']
|
|
72
|
+
}], checked: [{
|
|
73
|
+
type: Input
|
|
61
74
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jaGVjay1pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2Zvcm0vZm9ybS1jaGVjay9mb3JtLWNoZWNrLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUs1RSxNQUFNLE9BQU8sdUJBQXVCO0lBZ0VsQyxZQUNVLFFBQW1CLEVBQ25CLFdBQXVCO1FBRHZCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUE3RGpDOzs7O1dBSUc7UUFFTSxTQUFJLEdBQTJCLFVBQVUsQ0FBQztRQXVCM0MsbUJBQWMsR0FBRyxLQUFLLENBQUM7SUFpQzNCLENBQUM7SUF0REw7OztPQUdHO0lBQ0gsSUFDSSxhQUFhLENBQUMsS0FBYztRQUM5QixNQUFNLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssYUFBYSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxjQUFjLEdBQUcsYUFBYSxDQUFDO1lBQ3BDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFpQyxDQUFDO1lBQzVFLElBQUksYUFBYSxFQUFFO2dCQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDL0Q7WUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDN0U7SUFDSCxDQUFDO0lBQUEsQ0FBQztJQUVGLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBVUQsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLGtCQUFrQixFQUFFLElBQUk7WUFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSTtZQUMvQixZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLO1NBQ25DLENBQUM7SUFDSixDQUFDO0lBRUQsSUFDSSxPQUFPLENBQUMsS0FBYztRQUN4QixNQUFNLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBaUMsQ0FBQztRQUM3RSxJQUFJLGdCQUFnQixFQUFFO1lBQ3BCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQztJQUNsRCxDQUFDOztvSEE5RFUsdUJBQXVCO3dHQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2lCQUNuQzt5SEFZVSxJQUFJO3NCQURaLFdBQVc7dUJBQUMsV0FBVzs7c0JBQ3ZCLEtBQUs7Z0JBT0YsYUFBYTtzQkFEaEIsS0FBSztnQkF1QkcsS0FBSztzQkFBYixLQUFLO2dCQUdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPO2dCQVVoQixPQUFPO3NCQURWLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2lucHV0W2NGb3JtQ2hlY2tJbnB1dF0nXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1DaGVja0lucHV0RGlyZWN0aXZlIHtcblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfY2hlY2tlZDogQm9vbGVhbklucHV0O1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5kZXRlcm1pbmF0ZTogQm9vbGVhbklucHV0O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIHR5cGUgb2YgY29tcG9uZW50LlxuICAgKiBAdHlwZSB7J2NoZWNrYm94JyB8ICdyYWRpbyd9XG4gICAqIEBkZWZhdWx0ICdjaGVja2JveCdcbiAgICovXG4gIEBIb3N0QmluZGluZygnYXR0ci50eXBlJylcbiAgQElucHV0KCkgdHlwZTogKCdjaGVja2JveCcgfCAncmFkaW8nKSA9ICdjaGVja2JveCc7XG5cbiAgLyoqXG4gICAqIFNldCBjb21wb25lbnQgaW5kZXRlcm1pbmF0ZSBzdGF0ZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IGluZGV0ZXJtaW5hdGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBpbmRldGVybWluYXRlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICBpZiAodGhpcy5faW5kZXRlcm1pbmF0ZSAhPT0gaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgdGhpcy5faW5kZXRlcm1pbmF0ZSA9IGluZGV0ZXJtaW5hdGU7XG4gICAgICBjb25zdCBodG1sSW5wdXRFbGVtZW50ID0gdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgICBpZiAoaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KGh0bWxJbnB1dEVsZW1lbnQsICdjaGVja2VkJywgZmFsc2UpO1xuICAgICAgfVxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eShodG1sSW5wdXRFbGVtZW50LCAnaW5kZXRlcm1pbmF0ZScsIGluZGV0ZXJtaW5hdGUpO1xuICAgIH1cbiAgfTtcblxuICBnZXQgaW5kZXRlcm1pbmF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5faW5kZXRlcm1pbmF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2luZGV0ZXJtaW5hdGUgPSBmYWxzZTtcblxuICAvKipcbiAgICogU2V0IGNvbXBvbmVudCB2YWxpZGF0aW9uIHN0YXRlIHRvIHZhbGlkLlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqL1xuICBASW5wdXQoKSB2YWxpZD86IGJvb2xlYW47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICAnZm9ybS1jaGVjay1pbnB1dCc6IHRydWUsXG4gICAgICAnaXMtdmFsaWQnOiB0aGlzLnZhbGlkID09PSB0cnVlLFxuICAgICAgJ2lzLWludmFsaWQnOiB0aGlzLnZhbGlkID09PSBmYWxzZVxuICAgIH07XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IGNoZWNrZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIGNvbnN0IGh0bWxJbnB1dEVsZW1lbnQgPSB0aGlzLmhvc3RFbGVtZW50Py5uYXRpdmVFbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgaWYgKGh0bWxJbnB1dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkoaHRtbElucHV0RWxlbWVudCwgJ2NoZWNrZWQnLCBjaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICBnZXQgY2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0RWxlbWVudD8ubmF0aXZlRWxlbWVudD8uY2hlY2tlZDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmXG4gICkgeyB9XG5cbn1cbiJdfQ==
|
|
@@ -5,6 +5,7 @@ import * as i0 from "@angular/core";
|
|
|
5
5
|
export class FormCheckComponent {
|
|
6
6
|
constructor() {
|
|
7
7
|
this._inline = false;
|
|
8
|
+
this._reverse = false;
|
|
8
9
|
/**
|
|
9
10
|
* Size the component large or extra large. Works only with `[switch]="true"` [docs]
|
|
10
11
|
* @type {'lg' | 'xl' | ''}
|
|
@@ -25,10 +26,22 @@ export class FormCheckComponent {
|
|
|
25
26
|
return this._inline;
|
|
26
27
|
}
|
|
27
28
|
/**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
* Put checkboxes or radios on the opposite side.
|
|
30
|
+
* @type boolean
|
|
31
|
+
* @default false
|
|
32
|
+
* @since 4.4.7
|
|
33
|
+
*/
|
|
34
|
+
set reverse(value) {
|
|
35
|
+
this._reverse = coerceBooleanProperty(value);
|
|
36
|
+
}
|
|
37
|
+
get reverse() {
|
|
38
|
+
return this._reverse;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Render a toggle switch on for checkbox.
|
|
42
|
+
* @type boolean
|
|
43
|
+
* @default false
|
|
44
|
+
*/
|
|
32
45
|
set switch(value) {
|
|
33
46
|
this._switch = coerceBooleanProperty(value);
|
|
34
47
|
}
|
|
@@ -40,7 +53,8 @@ export class FormCheckComponent {
|
|
|
40
53
|
'form-check': this.formCheckClass,
|
|
41
54
|
'form-switch': this.switch,
|
|
42
55
|
[`form-switch-${this.sizing}`]: this.switch && !!this.sizing,
|
|
43
|
-
'form-check-inline': this.inline
|
|
56
|
+
'form-check-inline': this.inline,
|
|
57
|
+
'form-check-reverse': this.reverse
|
|
44
58
|
};
|
|
45
59
|
}
|
|
46
60
|
get formCheckClass() {
|
|
@@ -51,7 +65,7 @@ export class FormCheckComponent {
|
|
|
51
65
|
}
|
|
52
66
|
}
|
|
53
67
|
FormCheckComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
-
FormCheckComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckComponent, selector: "c-form-check", inputs: { inline: "inline", sizing: "sizing", switch: "switch" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "formCheckLabel", first: true, predicate: FormCheckLabelDirective, descendants: true }], exportAs: ["cFormCheck"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
|
|
68
|
+
FormCheckComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: FormCheckComponent, selector: "c-form-check", inputs: { inline: "inline", reverse: "reverse", sizing: "sizing", switch: "switch" }, host: { properties: { "class": "this.hostClasses" } }, queries: [{ propertyName: "formCheckLabel", first: true, predicate: FormCheckLabelDirective, descendants: true }], exportAs: ["cFormCheck"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true });
|
|
55
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: FormCheckComponent, decorators: [{
|
|
56
70
|
type: Component,
|
|
57
71
|
args: [{
|
|
@@ -61,6 +75,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
61
75
|
}]
|
|
62
76
|
}], propDecorators: { inline: [{
|
|
63
77
|
type: Input
|
|
78
|
+
}], reverse: [{
|
|
79
|
+
type: Input
|
|
64
80
|
}], sizing: [{
|
|
65
81
|
type: Input
|
|
66
82
|
}], switch: [{
|
|
@@ -72,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
72
88
|
type: ContentChild,
|
|
73
89
|
args: [FormCheckLabelDirective]
|
|
74
90
|
}] } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jaGVjay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL2Zvcm0vZm9ybS1jaGVjay9mb3JtLWNoZWNrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBT3ZFLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUF5QlUsWUFBTyxHQUFHLEtBQUssQ0FBQztRQWlCaEIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUVsQzs7O1dBR0c7UUFDTSxXQUFNLEdBQXNCLEVBQUUsQ0FBQztRQWdCaEMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQWdCaEIsb0JBQWUsR0FBRyxJQUFJLENBQUM7S0FRaEM7SUE3RUM7Ozs7T0FJRztJQUNILElBQ0ksTUFBTSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFJRDs7Ozs7T0FLRztJQUNILElBQ0ksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFVRDs7OztPQUlHO0lBQ0gsSUFDSSxNQUFNLENBQUMsS0FBYztRQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUlELElBQ0ksV0FBVztRQUViLE9BQU87WUFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDakMsYUFBYSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQzFCLENBQUMsZUFBZSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTTtZQUM1RCxtQkFBbUIsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNoQyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsT0FBTztTQUNuQyxDQUFDO0lBQ0osQ0FBQztJQUtELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsZUFBZSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQy9DLENBQUM7OytHQWxGVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw2T0F5RWYsdUJBQXVCLDBFQTVFM0IsMkJBQTJCOzJGQUcxQixrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRSxZQUFZO2lCQUN2Qjs4QkFhSyxNQUFNO3NCQURULEtBQUs7Z0JBa0JGLE9BQU87c0JBRFYsS0FBSztnQkFlRyxNQUFNO3NCQUFkLEtBQUs7Z0JBUUYsTUFBTTtzQkFEVCxLQUFLO2dCQVlGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPO2dCQVltQixjQUFjO3NCQUFwRCxZQUFZO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuaW1wb3J0IHsgRm9ybUNoZWNrTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2Zvcm0tY2hlY2stbGFiZWwuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1mb3JtLWNoZWNrJyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgZXhwb3J0QXM6ICdjRm9ybUNoZWNrJ1xufSlcbmV4cG9ydCBjbGFzcyBGb3JtQ2hlY2tDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5saW5lOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9yZXZlcnNlOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zd2l0Y2g6IEJvb2xlYW5JbnB1dDtcblxuICAvKipcbiAgICogR3JvdXAgY2hlY2tib3hlcyBvciByYWRpb3Mgb24gdGhlIHNhbWUgaG9yaXpvbnRhbCByb3cuXG4gICAqIEB0eXBlIGJvb2xlYW5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBpbmxpbmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9pbmxpbmUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICB9XG5cbiAgZ2V0IGlubGluZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faW5saW5lO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5saW5lID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFB1dCBjaGVja2JveGVzIG9yIHJhZGlvcyBvbiB0aGUgb3Bwb3NpdGUgc2lkZS5cbiAgICogQHR5cGUgYm9vbGVhblxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc2luY2UgNC40LjdcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCByZXZlcnNlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fcmV2ZXJzZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBnZXQgcmV2ZXJzZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcmV2ZXJzZTtcbiAgfVxuXG4gIHByaXZhdGUgX3JldmVyc2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogU2l6ZSB0aGUgY29tcG9uZW50IGxhcmdlIG9yIGV4dHJhIGxhcmdlLiBXb3JrcyBvbmx5IHdpdGggYFtzd2l0Y2hdPVwidHJ1ZVwiYCBbZG9jc11cbiAgICogQHR5cGUgeydsZycgfCAneGwnIHwgJyd9XG4gICAqL1xuICBASW5wdXQoKSBzaXppbmc/OiAnbGcnIHwgJ3hsJyB8ICcnID0gJyc7XG5cbiAgLyoqXG4gICAqIFJlbmRlciBhIHRvZ2dsZSBzd2l0Y2ggb24gZm9yIGNoZWNrYm94LlxuICAgKiBAdHlwZSBib29sZWFuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgc3dpdGNoKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc3dpdGNoID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgfVxuXG4gIGdldCBzd2l0Y2goKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3N3aXRjaDtcbiAgfVxuXG4gIHByaXZhdGUgX3N3aXRjaCA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcblxuICAgIHJldHVybiB7XG4gICAgICAnZm9ybS1jaGVjayc6IHRoaXMuZm9ybUNoZWNrQ2xhc3MsXG4gICAgICAnZm9ybS1zd2l0Y2gnOiB0aGlzLnN3aXRjaCxcbiAgICAgIFtgZm9ybS1zd2l0Y2gtJHt0aGlzLnNpemluZ31gXTogdGhpcy5zd2l0Y2ggJiYgISF0aGlzLnNpemluZyxcbiAgICAgICdmb3JtLWNoZWNrLWlubGluZSc6IHRoaXMuaW5saW5lLFxuICAgICAgJ2Zvcm0tY2hlY2stcmV2ZXJzZSc6IHRoaXMucmV2ZXJzZVxuICAgIH07XG4gIH1cblxuICBAQ29udGVudENoaWxkKEZvcm1DaGVja0xhYmVsRGlyZWN0aXZlKSBmb3JtQ2hlY2tMYWJlbCE6IEZvcm1DaGVja0xhYmVsRGlyZWN0aXZlO1xuXG4gIHByaXZhdGUgX2Zvcm1DaGVja0NsYXNzID0gdHJ1ZTtcbiAgZ2V0IGZvcm1DaGVja0NsYXNzKCkge1xuICAgIHJldHVybiB0aGlzLl9mb3JtQ2hlY2tDbGFzcztcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9mb3JtQ2hlY2tDbGFzcyA9ICEhdGhpcy5mb3JtQ2hlY2tMYWJlbDtcbiAgfVxufVxuIl19
|