barsa-sap-ui 1.0.287 → 1.0.289
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/barsa-asp-viewer/barsa-asp-viewer.component.mjs +20 -8
- package/esm2020/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +2 -2
- package/esm2020/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +3 -3
- package/esm2020/lib/constants.mjs +3 -3
- package/esm2020/lib/models/grid-data-provider.mjs +9 -6
- package/esm2020/lib/report-view-renderer.directive.mjs +5 -2
- package/esm2020/lib/sap-ui-report-base.component.mjs +6 -4
- package/esm2020/lib/ui-calendar/ui-calendar.component.mjs +3 -3
- package/esm2020/lib/ui-grid/ui-grid.component.mjs +3 -3
- package/esm2020/lib/ui-list-view/ui-list-view.component.mjs +3 -3
- package/esm2020/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +22 -18
- package/esm2020/lib/ui-report-container/ui-report-container.component.mjs +3 -3
- package/esm2020/lib/ui-tree/ui-tree.component.mjs +3 -3
- package/esm2020/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +3 -3
- package/esm2020/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +5 -2
- package/fesm2015/barsa-sap-ui.mjs +85 -54
- package/fesm2015/barsa-sap-ui.mjs.map +1 -1
- package/fesm2020/barsa-sap-ui.mjs +79 -52
- package/fesm2020/barsa-sap-ui.mjs.map +1 -1
- package/lib/barsa-asp-viewer/barsa-asp-viewer.component.d.ts +5 -3
- package/lib/constants.d.ts +1 -1
- package/lib/report-view-renderer.directive.d.ts +2 -1
- package/lib/sap-ui-report-base.component.d.ts +4 -3
- package/package.json +1 -1
|
@@ -20,12 +20,12 @@ export function insertAvatar(elementRef, headerAvatarRef, titleRef, avatar) {
|
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
export const sort = (a, b, key) => {
|
|
23
|
+
export const sort = (a, b, key, isNumber) => {
|
|
24
24
|
if (key) {
|
|
25
25
|
a = getNestedValue(key, a);
|
|
26
26
|
b = getNestedValue(key, b);
|
|
27
27
|
}
|
|
28
|
-
if (key === 'Rownumber') {
|
|
28
|
+
if (key === 'Rownumber' || isNumber) {
|
|
29
29
|
return Number(a) > Number(b) ? 1 : -1;
|
|
30
30
|
}
|
|
31
31
|
else if (typeof a === 'string' && typeof b === 'string') {
|
|
@@ -410,4 +410,4 @@ export const IconBusinessSuite = [
|
|
|
410
410
|
'stages-warning',
|
|
411
411
|
'empty-warning'
|
|
412
412
|
];
|
|
413
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTTtJQUN0RSxJQUFJLE1BQU0sRUFBRTtRQUNSLE1BQU0sV0FBVyxHQUFHLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3JFLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQztZQUNyRCxTQUFTLEVBQUUsTUFBTTtZQUNqQixNQUFNLEVBQUUsT0FBTyxNQUFNLEtBQUssUUFBUTtZQUNsQyxXQUFXO1NBQ2QsQ0FBQyxDQUFDO1FBQ0gsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDL0IsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLGFBQTRCLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBZ0IsQ0FBQztRQUUzRSxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUNBQW1DLENBQWdCLENBQUM7UUFDOUYsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQywwQkFBMEIsQ0FBZ0IsQ0FBQztRQUM3RSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsNEJBQTRCLENBQWdCLENBQUM7UUFDakYsSUFBSSxVQUFVLEVBQUU7WUFDWix3Q0FBd0M7WUFDeEMsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsUUFBUSxHQUFHLGFB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akIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixPQUFPO0lBQ1AsVUFBVTtJQUNWLG1DQUFtQztJQUNuQyxRQUFRO0lBQ1IsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixVQUFVO0lBQ1YsV0FBVztJQUNYLE1BQU07SUFDTixPQUFPO0lBQ1AsS0FBSztJQUNMLFFBQVE7SUFDUixjQUFjO0lBQ2QscUNBQXFDO0lBQ3JDLFlBQVk7SUFDWixjQUFjO0lBQ2QsbUJBQW1CO0lBQ25CLFVBQVU7SUFDVixnQkFBZ0I7SUFDaEIsVUFBVTtJQUNWLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLFlBQVk7SUFDWixRQUFRO0lBQ1IsaUJBQWlCO0lBQ2pCLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7SUFDZixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYixlQUFlO0lBQ2YsZUFBZTtJQUNmLFFBQVE7SUFDUixTQUFTO0lBQ1QsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixNQUFNO0lBQ04sT0FBTztJQUNQLGVBQWU7SUFDZixjQUFjO0lBQ2QsdUJBQXVCO0lBQ3ZCLFlBQVk7SUFDWixhQUFhO0lBQ2IsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsT0FBTztJQUNQLFVBQVU7SUFDVixZQUFZO0lBQ1osVUFBVTtJQUNWLHVCQUF1QjtJQUN2QixLQUFLO0lBQ0wsZUFBZTtJQUNmLE1BQU07SUFDTixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLE1BQU07SUFDTiw0QkFBNEI7SUFDNUIsZ0JBQWdCO0lBQ2hCLGVBQWU7Q0FDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBpbnNlcnRBdmF0YXIoZWxlbWVudFJlZiwgaGVhZGVyQXZhdGFyUmVmLCB0aXRsZVJlZiwgYXZhdGFyKTogdm9pZCB7XHJcbiAgICBpZiAoYXZhdGFyKSB7XHJcbiAgICAgICAgY29uc3QgaXNOdWxsSW1hZ2UgPSB0eXBlb2YgYXZhdGFyID09PSAnb2JqZWN0JyAmJiBhdmF0YXIuSXNOdWxsSW1hZ2U7XHJcbiAgICAgICAgY29uc3QgYXZhdGFyVmlld1JlZiA9IGhlYWRlckF2YXRhclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoe1xyXG4gICAgICAgICAgICAkaW1wbGljaXQ6IGF2YXRhcixcclxuICAgICAgICAgICAgaXNJY29uOiB0eXBlb2YgYXZhdGFyID09PSAnc3RyaW5nJyxcclxuICAgICAgICAgICAgaXNOdWxsSW1hZ2VcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aXRsZVJlZi5jbGVhcigpO1xyXG4gICAgICAgIHRpdGxlUmVmLmluc2VydChhdmF0YXJWaWV3UmVmKTtcclxuICAgICAgICBjb25zdCBlbCA9IGVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICBjb25zdCB0aXRsZUVsID0gZWwucXVlcnlTZWxlY3RvcignLmZkLWR5bmFtaWMtcGFnZV9fdGl0bGUnKSBhcyBIVE1MRWxlbWVudDtcclxuXHJcbiAgICAgICAgY29uc3QgdGl0bGVDb250YWluZXJFbCA9IGVsLnF1ZXJ5U2VsZWN0b3IoJy5mZC1keW5hbWljLXBhZ2VfX3RpdGxlLWNvbnRhaW5lcicpIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IGF2YXRhckVsID0gZWwucXVlcnlTZWxlY3RvcignLmZkLWR5bmFtaWMtcGFnZV9fYXZhdGFyJykgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgICAgdGl0bGVDb250YWluZXJFbC5pbnNlcnRCZWZvcmUoYXZhdGFyRWwsIHRpdGxlRWwpO1xyXG4gICAgICAgIGNvbnN0IHN1YlRpdGxlRWwgPSBlbC5xdWVyeVNlbGVjdG9yKCcuZmQtZHluYW1pYy1wYWdlX19zdWJ0aXRsZScpIGFzIEhUTUxFbGVtZW50O1xyXG4gICAgICAgIGlmIChzdWJUaXRsZUVsKSB7XHJcbiAgICAgICAgICAgIC8vIGNvbnN0IGluTW9iaWxlID0gZ2V0RGV2aWNlSXNNb2JpbGUoKTtcclxuICAgICAgICAgICAgc3ViVGl0bGVFbC5zdHlsZS5wYWRkaW5nUmlnaHQgPSBgY2FsYygkezEuNX1yZW0gKyAxMHB4KWA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3Qgc29ydCA9IDxUIGV4dGVuZHMgb2JqZWN0PihhOiBULCBiOiBULCBrZXk6IHN0cmluZyB8IG51bGwpOiBudW1iZXIgPT4ge1xyXG4gICAgaWYgKGtleSkge1xyXG4gICAgICAgIGEgPSBnZXROZXN0ZWRWYWx1ZShrZXksIGEpO1xyXG4gICAgICAgIGIgPSBnZXROZXN0ZWRWYWx1ZShrZXksIGIpO1xyXG4gICAgfVxyXG4gICAgaWYgKGtleSA9PT0gJ1Jvd251bWJlcicpIHtcclxuICAgICAgICByZXR1cm4gTnVtYmVyKGEpID4gTnVtYmVyKGIpID8gMSA6IC0xO1xyXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgYSA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGIgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgcmV0dXJuIF90cmltRW5kKGEgYXMgc3RyaW5nKS5sb2NhbGVDb21wYXJlKF90cmltRW5kKGIgYXMgc3RyaW5nKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYSA+IGIgPyAxIDogYSA9PT0gYiA/IDAgOiAtMTtcclxufTtcclxuZXhwb3J0IGZ1bmN0aW9uIF90cmltRW5kKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgY2FjaGUgPSBuZXcgU2V0KFN0cmluZyh2YWx1ZSkpO1xyXG4gICAgbGV0IGVuZCA9IHZhbHVlLmxlbmd0aDtcclxuICAgIGZvciAobGV0IGkgPSB2YWx1ZS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgICAgIGlmICghY2FjaGUuaGFzKHZhbHVlW2ldKSkge1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgZW5kLS07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdmFsdWUuc2xpY2UoMCwgZW5kKTtcclxufVxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmVzdGVkVmFsdWU8VCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIGFueT4+KGtleTogc3RyaW5nLCBvYmplY3Q6IFQpOiBhbnkge1xyXG4gICAgcmV0dXJuIGtleS5zcGxpdCgnLicpLnJlZHVjZSgoYSwgYikgPT4gYVtiXSwgb2JqZWN0KTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IEljb25UTlQgPSBbXHJcbiAgICAndGVjaG5pY2Fsc3lzdGVtJyxcclxuICAgICdzeXN0ZW1qYXZhJyxcclxuICAgICdzeXN0ZW1hYmFwJyxcclxuICAgICdzeXN0ZW1yZWNvbW1lbmRhdGlvbnMnLFxyXG4gICAgJ3N5c3RlbScsXHJcbiAgICAnc3lzdGVtdHJleCcsXHJcbiAgICAnc3lzdGVtdHJhY2tzJyxcclxuICAgICd0ZWNobmljYWxzY2VuYXJpbycsXHJcbiAgICAndGVjaG5pY2FsaW5zdGFuY2UnLFxyXG4gICAgJ3Rocm91Z2hwdXQtYmFja2xvZycsXHJcbiAgICAnYmF0Y2gtcHJvY2Vzc2luZycsXHJcbiAgICAnZGF0YWJhc2UtY29uc2lzdGVuY3knLFxyXG4gICAgJ2ludGVybWVkaWF0ZS1tZXNzYWdlJyxcclxuICAgICdleGNlcHRpb25zJyxcclxuICAgICdzeXN0ZW0tSEFOQScsXHJcbiAgICAncHl0aG9uJyxcclxuICAgICdyYWlzZS1mYXVsdCcsXHJcbiAgICAnY29kZTEnLFxyXG4gICAgJ2NvZGUyJyxcclxuICAgICdzcGlrZS1hcnJlc3QnLFxyXG4gICAgJ3ZlcmlmeS1BUEknLFxyXG4gICAgJ3VzZXInLFxyXG4gICAgJ25vdGUnLFxyXG4gICAgJ3Rocm93aW5nLW1lc3NhZ2UnLFxyXG4gICAgJ2NhdGNoaW5nLW1lc3NhZ2UnLFxyXG4gICAgJ3N0YXJ0LWV2ZW50JyxcclxuICAgICdlbmQtZXZlbnQnLFxyXG4gICAgJ2dhdGV3YXknLFxyXG4gICAgJ3N1Yi1wcm9jZXNzLW1hcmtlcicsXHJcbiAgICAnYWQtaG9jLW1hcmtlcicsXHJcbiAgICAnbWFudWFsLXRhc2snLFxyXG4gICAgJ3NlbmQtdGFzaycsXHJcbiAgICAncmVjZWl2ZS10YXNrJyxcclxuICAgICdzY3JpcHQtdGFzaycsXHJcbiAgICAnbWFycXVlZScsXHJcbiAgICAnZGF0YS1pbnB1dC1hcnJvdycsXHJcbiAgICAnZGF0YS1vdXRwdXQtYXJyb3cnLFxyXG4gICAgJ21vcmUnLFxyXG4gICAgJ3BhdHRlcm4nLFxyXG4gICAgJ3Rhc2snLFxyXG4gICAgJ2Fycm93JyxcclxuICAgICdkYXRhJyxcclxuICAgICdkYXRhLXN0b3JlJyxcclxuICAgICdwb29sJyxcclxuICAgICdzd2ltbGFuZScsXHJcbiAgICAnc2VsZWN0JyxcclxuICAgICdjdXJzb3InLFxyXG4gICAgJ2FwaScsXHJcbiAgICAnby1kYXRhJyxcclxuICAgICdqYXZhc2NyaXB0JyxcclxuICAgICd2YWx1ZS1tYXBwaW5nJyxcclxuICAgICd0ZXJtaW5hdGUtZW5kLWV2ZW50JyxcclxuICAgICdwYXJhbGxlbC1nYXRld2F5JyxcclxuICAgICdleGNsdXNpdmUtZ2F0ZXdheScsXHJcbiAgICAnc2VydmljZS10YXNrJyxcclxuICAgICd3b3JrZmxvdy1lZGl0b3InLFxyXG4gICAgJ2JvdW5kYXJ5LWludGVycnVwdGluZycsXHJcbiAgICAnYm91bmRhcnktbm9uLWludGVycnVwdGluZycsXHJcbiAgICAnYmxvY2snLFxyXG4gICAgJ2NvbnN0cmFpbi1ibG9jaycsXHJcbiAgICAnYWN0b3InLFxyXG4gICAgJ2luc3RhbmNlLXNwZWNpZmljYXRpb24nLFxyXG4gICAgJ3ZhbHVlLXR5cGUnLFxyXG4gICAgJ2ludGVyZmFjZS1ibG9jaycsXHJcbiAgICAndW5pdCcsXHJcbiAgICAnc2lnbmFsJyxcclxuICAgICdxdWFudGl0eS1raW5kJyxcclxuICAgICdpdGVtLWZsb3cnLFxyXG4gICAgJ2RlcGVuZGVuY3knLFxyXG4gICAgJ2dlbmVyYWxpemF0aW9uJyxcclxuICAgICdhZ2dyZWdhdGlvbicsXHJcbiAgICAnY29tcG9zaXRpb24nLFxyXG4gICAgJ2Fzc29jaWF0aW9uJyxcclxuICAgICdwb3J0JyxcclxuICAgICdwcm94eS1wb3J0JyxcclxuICAgICdmdWxsLXBvcnQnLFxyXG4gICAgJ29wZXJhdGlvbnMnLFxyXG4gICAgJ2NvbnN0cmFpbnMnLFxyXG4gICAgJ3JlY2VwdGlvbnMnLFxyXG4gICAgJ3JlZmVyZW5jZXMnLFxyXG4gICAgJ3BhcnRzJyxcclxuICAgICdmbG93JyxcclxuICAgICd2YWx1ZXMnLFxyXG4gICAgJ2JpbGwtb2YtbWF0ZXJpYWwnLFxyXG4gICAgJ2RvY3VtZW50LWluZm8tcmVjb3JkaW5nJyxcclxuICAgICd1c2UtY2FzZS1kaWFncmFtJyxcclxuICAgICdiZGQtZGlhZ3JhbScsXHJcbiAgICAncmVxdWlyZW1lbnQtZGlhZ3JhbScsXHJcbiAgICAncGFja2FnZS1kaWFncmFtJyxcclxuICAgICdpbnRlcm5hbC1ibG9jay1kaWFncmFtJyxcclxuICAgICdyZXF1aXJlbWVudC1jb250YWlubWVudC1yZWxhdGlvbnNoaXAnLFxyXG4gICAgJ3VzZS1jYXNlJyxcclxuICAgICd1c2UtY2FzZS1leHRlbnNpb24tcG9pbnQnLFxyXG4gICAgJ2NvbW11bmljYXRpb24tcGF0aCcsXHJcbiAgICAnbm90ZS1jb25uZWN0aW9uJyxcclxuICAgICdzdWJqZWN0JyxcclxuICAgICdhdXRvLWxheW91dCcsXHJcbiAgICAncmVxdWlyZWQtaW50ZXJmYWNlJyxcclxuICAgICdwcm92aWRlZC1pbnRlcmZhY2UnLFxyXG4gICAgJ3N1Yi1jb250ZW50JyxcclxuICAgICdjb25uZWN0b3InLFxyXG4gICAgJ2xvY2FsLXByb2Nlc3MtY2FsbCcsXHJcbiAgICAnYWdncmVnYXRvcicsXHJcbiAgICAnc3BsaXR0ZXInLFxyXG4gICAgJ2NvbnZlcnRlcicsXHJcbiAgICAnY29udGVudC1tb2RpZmllcicsXHJcbiAgICAnbWVzc2FnZS1zdGFydC1ldmVudCcsXHJcbiAgICAnbWVzc2FnZS1lbmQtZXZlbnQnLFxyXG4gICAgJ2VzY2FsYXRpb24tZW5kLWV2ZW50JyxcclxuICAgICdzdGFydC10aW1lci1ldmVudCcsXHJcbiAgICAnZXJyb3Itc3RhcnQtZXZlbnQnLFxyXG4gICAgJ2Vycm9yLWVuZC1ldmVudCcsXHJcbiAgICAnY29udGVudC1lbnJpY2hlcicsXHJcbiAgICAncmVhbGl6YXRpb24nLFxyXG4gICAgJ2ludGVyZmFjZScsXHJcbiAgICAndXNpbmVzcy1jYXBhYmlsaXR5JyxcclxuICAgICdwcm9ncmVzcy1ncm91cCcsXHJcbiAgICAndmFsdWUtc3RyZWFtJyxcclxuICAgICd2YWx1ZS1mbG93JyxcclxuICAgICdhcHBsaWNhdGlvbicsXHJcbiAgICAnZXRsLWpvYicsXHJcbiAgICAnYnVzaW5lc3Mtc2VydmljZScsXHJcbiAgICAnYXBwbGljYXRpb24tc2VydmljZScsXHJcbiAgICAnbmV0d29yay1ub2RlJyxcclxuICAgICduZXR3b3JrJyxcclxuICAgICdkZXBsb3ltZW50LWluc3RhbmNlJyxcclxuICAgICdpbnRyYW5ldCcsXHJcbiAgICAnbW9iaWxlLW5ldHdvcmsnLFxyXG4gICAgJ3ByaXZhdGUtY2xvdWQnLFxyXG4gICAgJ2FudGVubmEnLFxyXG4gICAgJ2ZpcmV3YWxsJyxcclxuICAgICdodWInLFxyXG4gICAgJ21vZGVtJyxcclxuICAgICdyZXBlYXRlcicsXHJcbiAgICAncm91dGVyJyxcclxuICAgICdzd2l0Y2gnLFxyXG4gICAgJ3NhdGVsbGl0ZScsXHJcbiAgICAnc3lzdGVtLTInLFxyXG4gICAgJ3N0YXR1cy1hY3RpdmF0aW5nJyxcclxuICAgICdzdGF0dXMtc3VzcGVuZGVkJyxcclxuICAgICdzdGF0dXMtc3VzcGVuZGluZycsXHJcbiAgICAnc3RhdHVzLXRlcm1pbmF0ZWQnLFxyXG4gICAgJ3N0YXR1cy10ZXJtaW5hdGluZycsXHJcbiAgICAnc29sdXRpb24tbm90LWxpY2Vuc2VkJyxcclxuICAgICdjbGVhci1hbGwtbWFwcGluZycsXHJcbiAgICAnbWFwLWFsbC1maWVsZHMnXHJcbl07XHJcbmV4cG9ydCBjb25zdCBJY29uQnVzaW5lc3NTdWl0ZSA9IFtcclxuICAgICdoZWFydCcsXHJcbiAgICAncXVhcnRlcicsXHJcbiAgICAneWVhcicsXHJcbiAgICAnZXF1YWxpemVyJyxcclxuICAgICdjb21wb25lbnQnLFxyXG4gICAgJ2NvbXBvbmVudC1wcml2YXRlJyxcclxuICAgICdyYXctbWF0ZXJpYWwnLFxyXG4gICAgJ3NtcycsXHJcbiAgICAnYWRkLW5vdGUnLFxyXG4gICAgJ2NoYW5nZS10aW1lLWhvcml6b24nLFxyXG4gICAgJ3RhYmxlLWNoYXJ0LWN1c3RvbWl6YXRpb24nLFxyXG4gICAgJ2RlbGVnYXRlZC1pbXBvcnRhbnQtdGFzaycsXHJcbiAgICAnZm9ya2xpZnQnLFxyXG4gICAgJ2NvaW5zJyxcclxuICAgICdmaWx0ZXItbWVudScsXHJcbiAgICAndGFyZ2V0LXRvLWRhdGUnLFxyXG4gICAgJ3Byb2dyYW0nLFxyXG4gICAgJ3BoYXNlJyxcclxuICAgICdjaGVja2xpc3QnLFxyXG4gICAgJ21pcnJvcmVkLXRhc2snLFxyXG4gICAgJ3N1Yi1wcm9qZWN0JyxcclxuICAgICdjaGVja2xpc3QtaXRlbScsXHJcbiAgICAnYWRob2MtYW5hbHlzaXMnLFxyXG4gICAgJ2NoYW5nZS1hbmFseXNpcycsXHJcbiAgICAncmV2aWV3LWRlbWFuZHMnLFxyXG4gICAgJ3Byb2plY3QtZGVmaW5pdGlvbicsXHJcbiAgICAnZGF0YS1hY2Nlc3MnLFxyXG4gICAgJ2RlZmluZS1zaG9ydGFnZScsXHJcbiAgICAncmV2aWV3LXN1cHBsaWVzJyxcclxuICAgICdjaGFuZ2UtbG9nJyxcclxuICAgICdwcmlvcml0eS0xJyxcclxuICAgICdwcmlvcml0eS0yJyxcclxuICAgICdqYW0nLFxyXG4gICAgJ21pbGVzdG9uZScsXHJcbiAgICAnYnVsbGV0aW5nLXdpdGgtbnVtYmVycycsXHJcbiAgICAnZGVjcmVhc2UtaW5kZW50JyxcclxuICAgICdpbmNyZWFzZS1pbmRlbnQnLFxyXG4gICAgJ2JvbGQnLFxyXG4gICAgJ2l0YWxpYycsXHJcbiAgICAnc3RyaWtlLXRocm91Z2gnLFxyXG4gICAgJ3VuZGVybGluZScsXHJcbiAgICAnc2F2ZS1hcycsXHJcbiAgICAnc2VnbWVudGF0aW9uJyxcclxuICAgICdjb250ZXh0LW1lbnUnLFxyXG4gICAgJ3NuYXBzaG90JyxcclxuICAgICdzdWJ0cmFjdGlvbi1iLWEnLFxyXG4gICAgJ3N1YnRyYWN0aW9uLWEtYicsXHJcbiAgICAnaW50ZXJzZWN0aW9uJyxcclxuICAgICd1bmlvbicsXHJcbiAgICAndG9wJyxcclxuICAgICdib3R0b20nLFxyXG4gICAgJ3BhZ2UtdXAnLFxyXG4gICAgJ3BhZ2UtZG93bicsXHJcbiAgICAnY3JlYXRlLWRhc2hib2FyZCcsXHJcbiAgICAneGNlbHNpdXMtZmlsZScsXHJcbiAgICAnb3Blbi1mb2xkZXInLFxyXG4gICAgJ25ldXRyYWwnLFxyXG4gICAgJ3NwbGl0LXNlZ21lbnRhdGlvbicsXHJcbiAgICAnbWFuYWdlLWJ1ZGdldCcsXHJcbiAgICAnYmxvY2tlZCcsXHJcbiAgICAncGlwZXR0ZScsXHJcbiAgICAndG9wLXJlY2lwZScsXHJcbiAgICAncmVjaXBlJyxcclxuICAgICdpbmdyZWRpZW50cycsXHJcbiAgICAnbXVsdGlwbGUtY2hhcnRzJyxcclxuICAgICdkZXNjZW5kaW5nLWJhcnMnLFxyXG4gICAgJ2Rlc2NlbmRpbmctc3RhY2tlZC1iYXJzJyxcclxuICAgICdzY2F0dGVyLXBsb3QnLFxyXG4gICAgJ3NwaWxsJyxcclxuICAgICdmaXJlJyxcclxuICAgICdzdHJhdGlmaWNhdGlvbicsXHJcbiAgICAncmVsYXRpb25zaGlwJyxcclxuICAgICdtYXJnaW4tZGVjb21wb3NpdGlvbicsXHJcbiAgICAnY29udHJvbC1ncm91cCcsXHJcbiAgICAnY29tcGFyaXNvbi1jaGFydCcsXHJcbiAgICAncmVzcG9uc2libGUtYXJlYScsXHJcbiAgICAnaW5jcmVhc2UnLFxyXG4gICAgJ2RlY3JlYXNlJyxcclxuICAgICdjdXJyZW50LXN0b2NrJyxcclxuICAgICdleHBlZGl0ZScsXHJcbiAgICAncG9zdHBvbmUnLFxyXG4gICAgJ2FwcHJvdmVkJyxcclxuICAgICdwYXJ0aWFsbHktZGVsaXZlcmVkJyxcclxuICAgICdsaW5lLWJhci1jaGFydCcsXHJcbiAgICAnZXhwYW5kLWFsbCcsXHJcbiAgICAnc3VibWlzc2lvbicsXHJcbiAgICAnY2hhbmdlLXJlcXVlc3QnLFxyXG4gICAgJ2NvbHVtbi11bnNlbGVjdGVkJyxcclxuICAgICdjb2x1bW4tc2VsZWN0ZWQnLFxyXG4gICAgJ3Jvdy11bnNlbGVjdGVkJyxcclxuICAgICdyb3ctc2VsZWN0ZWQnLFxyXG4gICAgJ3N0b2NrLXJlcXVpcmVtZW50cycsXHJcbiAgICAnZ2VuZGVyLW1hbGUtYW5kLWZlbWFsZScsXHJcbiAgICAnbWFyaXRhbC1zdGF0dXMnLFxyXG4gICAgJ2JpcnRoZGF5JyxcclxuICAgICdjbGFzc2lmaWNhdGlvbicsXHJcbiAgICAnbWFya2VkLWZvci1kZWxldGlvbicsXHJcbiAgICAnYnVsbGV0LWNoYXJ0JyxcclxuICAgICdyZW1vdmUtZmlsdGVyJyxcclxuICAgICdiYW5rLWFjY291bnQnLFxyXG4gICAgJ3NhdmluZ3MtYWNjb3VudCcsXHJcbiAgICAnZGViaXQtY2FyZCcsXHJcbiAgICAndmlwLWN1c3RvbWVyJyxcclxuICAgICd1bmRlc2lyYWJsZS1jdXN0b21lcicsXHJcbiAgICAnYW5zd2VyZWQtY2hhbmdlLXJlcXVlc3QnLFxyXG4gICAgJ2NvbGxlY3RlZC1jaGFuZ2UtcmVxdWVzdCcsXHJcbiAgICAnZHJhdy1mcmVlaGFuZCcsXHJcbiAgICAnZHJhdy1jaXJjbGUnLFxyXG4gICAgJ2NvbXBsZXRlZCcsXHJcbiAgICAnYW5zd2VyZWQnLFxyXG4gICAgJ3RyYWZmaWMtY29uZScsXHJcbiAgICAndHJhZmZpYy1saWdodHMnLFxyXG4gICAgJ2NvbnRhaW5lcicsXHJcbiAgICAnY29udGFpbmVyLWxvYWRpbmcnLFxyXG4gICAgJ3RyYWZmaWMtamFtJyxcclxuICAgICdwcm9kdWN0cycsXHJcbiAgICAnc2lkZXBhbmVsJyxcclxuICAgICdzcGxpdC1zY3JlZW4nLFxyXG4gICAgJ3RydWNrLWRyaXZlcicsXHJcbiAgICAna2VlcC1zZWdtZW50JyxcclxuICAgICdleGNsdWRlLXNlZ21lbnQnLFxyXG4gICAgJ3NlcGFyYXRlLXNlZ21lbnRzJyxcclxuICAgICdkaXN0cmlidXRlLXNlZ21lbnRzJyxcclxuICAgICduZXh0LW9wZW4taXRlbScsXHJcbiAgICAnd2hlcmUtdXNlZCcsXHJcbiAgICAnb3V0Ym91bmQtZGVsaXZlcnknLFxyXG4gICAgJ291dGJvdW5kLWRlbGl2ZXJ5LWluYWN0aXZlJyxcclxuICAgICdvdXRib3VuZC1kZWxpdmVyeS1hY3RpdmUnLFxyXG4gICAgJ3RhcmdldCcsXHJcbiAgICAnc291cmNlJyxcclxuICAgICdtYXRlcmlhbCcsXHJcbiAgICAnZHVlLWRhdGUnLFxyXG4gICAgJ292ZXJkdWUnLFxyXG4gICAgJ3NldC1hcy1kZWZhdWx0JyxcclxuICAgICdmYWNlLXZlcnktYmFkJyxcclxuICAgICdmYWNlLWJhZCcsXHJcbiAgICAnZmFjZS1za2VwdGljYWwnLFxyXG4gICAgJ2ZhY2UtbmV1dHJhbCcsXHJcbiAgICAnZmFjZS1hc3RvbmlzaGVkJyxcclxuICAgICdmYWNlLWhhcHB5JyxcclxuICAgICdmYWNlLXZlcnktaGFwcHknLFxyXG4gICAgJ2ZhY2UtYXdmdWwnLFxyXG4gICAgJ2ZhY2UtZGV2YXN0YXRlZCcsXHJcbiAgICAnZmFjZS1va2V5LWRva2V5JyxcclxuICAgICdhbGFybScsXHJcbiAgICAnYWN0aXZhdGUnLFxyXG4gICAgJ3NlZ21lbnQtcHJldmlldy1yZWZlcmVuY2Utb2JqZWN0cycsXHJcbiAgICAncmFkaXVzJyxcclxuICAgICdwb2x5Z29uZS1ibGFjaycsXHJcbiAgICAncG9seWdvbmUtd2hpdGUnLFxyXG4gICAgJ3Bsb3lnb25lJyxcclxuICAgICduby1maWx0ZXInLFxyXG4gICAgJ2dyaXAnLFxyXG4gICAgJ3dhdGVyJyxcclxuICAgICdnYXMnLFxyXG4gICAgJ2xpcXVpZCcsXHJcbiAgICAndGltZS1kZXBvc2l0JyxcclxuICAgICdlYXJseS13aWR0aGRyYXdhbC1mb3ItdGltZS1kZXBvc2l0cycsXHJcbiAgICAndHJ1Y2stbG9hZCcsXHJcbiAgICAndHJ1Y2stdW5sb2FkJyxcclxuICAgICd0cnVjay1sb2FkLXVubG9hZCcsXHJcbiAgICAncGhhcm1hY3knLFxyXG4gICAgJ21lZGljaW5lLXN5cnVwJyxcclxuICAgICdyZW1pbmRlcicsXHJcbiAgICAnbWVkaWNpbmUtcGlsbCcsXHJcbiAgICAnbWVkaWNpbmUtb2ludG1lbnQnLFxyXG4gICAgJ21lZGljaW5lLWRyb3BzJyxcclxuICAgICdibG9vZC10ZXN0JyxcclxuICAgICd0ZW1wZXJhdHVyZScsXHJcbiAgICAnbWVkaWNpbmUtaW5oYWxlcicsXHJcbiAgICAnZm9vdC1zdGVwcycsXHJcbiAgICAnd2VpZ2h0JyxcclxuICAgICdoZWFsdGgtdHJhY2tpbmcnLFxyXG4gICAgJ2Jsb29kLXByZXNzdXJlJyxcclxuICAgICdpbW11bml6YXRpb24nLFxyXG4gICAgJ2FsbGVyZ2llcycsXHJcbiAgICAncmVzY2hlZHVsaW5nMicsXHJcbiAgICAncmVzZXF1ZW5jaW5nMicsXHJcbiAgICAnbm8tdGltZS1jaGFuZ2UnLFxyXG4gICAgJ3RpbWUtY2hhbmdlJyxcclxuICAgICdzbWFydC1tYXRjaGVyJyxcclxuICAgICdsZWdhbC1zZWN0aW9uJyxcclxuICAgICdjYXVzZXMnLFxyXG4gICAgJ2VmZmVjdHMnLFxyXG4gICAgJ3NoYXJlZC1ieS1tZScsXHJcbiAgICAnc2hhcmVkLXdpdGgtbWUnLFxyXG4gICAgJ2FsZXJ0LWdyb3VwcycsXHJcbiAgICAnZnVuY3Rpb24tYWxlcnQnLFxyXG4gICAgJ2Z1bmN0aW9uLWhpZXJhcmNoeScsXHJcbiAgICAncmZpZCcsXHJcbiAgICAnaW5wdXQnLFxyXG4gICAgJ3NvZnR3YXJlLWl0ZW0nLFxyXG4gICAgJ3Byb2R1Y3QtdmlldycsXHJcbiAgICAnc29mdHdhcmUtaXRlbS12YXJpYW50JyxcclxuICAgICdsaWdodGhvdXNlJyxcclxuICAgICdkZW1hbmQtdW5pdCcsXHJcbiAgICAnZm1hLW1hbmFnZW1lbnQnLFxyXG4gICAgJ2ZtYS12YWxpZGF0aW9uJyxcclxuICAgICdmbWEtYW5hbHl0aWNzJyxcclxuICAgICdjbGFzcycsXHJcbiAgICAnb3ZlcnZpZXcnLFxyXG4gICAgJ3Byb2R1Y3Rpb24nLFxyXG4gICAgJ3N1YmNsYXNzJyxcclxuICAgICd2YXJpYW50LWNvbmZpZ3VyYXRpb24nLFxyXG4gICAgJ3N1bScsXHJcbiAgICAnZW1wdHktdHJhaWxlcicsXHJcbiAgICAnZG9vcicsXHJcbiAgICAnbG9hZGluZy1wb2ludCcsXHJcbiAgICAnc3RvY2std2FyZWhvdXNlJyxcclxuICAgICdnYXRlJyxcclxuICAgICd0aW1lc2VyaWVzLXdhdGVyZmFsbC1jaGFydCcsXHJcbiAgICAnc3RhZ2VzLXdhcm5pbmcnLFxyXG4gICAgJ2VtcHR5LXdhcm5pbmcnXHJcbl07XHJcbiJdfQ==
|
|
413
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsVUFBVSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsTUFBTTtJQUN0RSxJQUFJLE1BQU0sRUFBRTtRQUNSLE1BQU0sV0FBVyxHQUFHLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3JFLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxrQkFBa0IsQ0FBQztZQUNyRCxTQUFTLEVBQUUsTUFBTTtZQUNqQixNQUFNLEVBQUUsT0FBTyxNQUFNLEtBQUssUUFBUTtZQUNsQyxXQUFXO1NBQ2QsQ0FBQyxDQUFDO1FBQ0gsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDL0IsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLGFBQTRCLENBQUM7UUFDbkQsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyx5QkFBeUIsQ0FBZ0IsQ0FBQztRQUUzRSxNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUNBQW1DLENBQWdCLENBQUM7UUFDOUYsTUFBTSxRQUFRLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQywwQkFBMEIsQ0FBZ0IsQ0FBQztRQUM3RSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsNEJBQTRCLENBQWdCLENBQUM7UUFDakYsSUFBSSxVQUFVLEVBQUU7WUFDWix3Q0FBd0M7WUFDeEMsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsUUFBUSxHQUFHLGFB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dFJlZiwgaGVhZGVyQXZhdGFyUmVmLCB0aXRsZVJlZiwgYXZhdGFyKTogdm9pZCB7XG4gICAgaWYgKGF2YXRhcikge1xuICAgICAgICBjb25zdCBpc051bGxJbWFnZSA9IHR5cGVvZiBhdmF0YXIgPT09ICdvYmplY3QnICYmIGF2YXRhci5Jc051bGxJbWFnZTtcbiAgICAgICAgY29uc3QgYXZhdGFyVmlld1JlZiA9IGhlYWRlckF2YXRhclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcoe1xuICAgICAgICAgICAgJGltcGxpY2l0OiBhdmF0YXIsXG4gICAgICAgICAgICBpc0ljb246IHR5cGVvZiBhdmF0YXIgPT09ICdzdHJpbmcnLFxuICAgICAgICAgICAgaXNOdWxsSW1hZ2VcbiAgICAgICAgfSk7XG4gICAgICAgIHRpdGxlUmVmLmNsZWFyKCk7XG4gICAgICAgIHRpdGxlUmVmLmluc2VydChhdmF0YXJWaWV3UmVmKTtcbiAgICAgICAgY29uc3QgZWwgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHRpdGxlRWwgPSBlbC5xdWVyeVNlbGVjdG9yKCcuZmQtZHluYW1pYy1wYWdlX190aXRsZScpIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGNvbnN0IHRpdGxlQ29udGFpbmVyRWwgPSBlbC5xdWVyeVNlbGVjdG9yKCcuZmQtZHluYW1pYy1wYWdlX190aXRsZS1jb250YWluZXInKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgY29uc3QgYXZhdGFyRWwgPSBlbC5xdWVyeVNlbGVjdG9yKCcuZmQtZHluYW1pYy1wYWdlX19hdmF0YXInKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgdGl0bGVDb250YWluZXJFbC5pbnNlcnRCZWZvcmUoYXZhdGFyRWwsIHRpdGxlRWwpO1xuICAgICAgICBjb25zdCBzdWJUaXRsZUVsID0gZWwucXVlcnlTZWxlY3RvcignLmZkLWR5bmFtaWMtcGFnZV9fc3VidGl0bGUnKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgaWYgKHN1YlRpdGxlRWwpIHtcbiAgICAgICAgICAgIC8vIGNvbnN0IGluTW9iaWxlID0gZ2V0RGV2aWNlSXNNb2JpbGUoKTtcbiAgICAgICAgICAgIHN1YlRpdGxlRWwuc3R5bGUucGFkZGluZ1JpZ2h0ID0gYGNhbGMoJHsxLjV9cmVtICsgMTBweClgO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3Qgc29ydCA9IDxUIGV4dGVuZHMgb2JqZWN0PihhOiBULCBiOiBULCBrZXk6IHN0cmluZyB8IG51bGwsIGlzTnVtYmVyPzogYm9vbGVhbik6IG51bWJlciA9PiB7XG4gICAgaWYgKGtleSkge1xuICAgICAgICBhID0gZ2V0TmVzdGVkVmFsdWUoa2V5LCBhKTtcbiAgICAgICAgYiA9IGdldE5lc3RlZFZhbHVlKGtleSwgYik7XG4gICAgfVxuICAgIGlmIChrZXkgPT09ICdSb3dudW1iZXInIHx8IGlzTnVtYmVyKSB7XG4gICAgICAgIHJldHVybiBOdW1iZXIoYSkgPiBOdW1iZXIoYikgPyAxIDogLTE7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgYSA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGIgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBfdHJpbUVuZChhIGFzIHN0cmluZykubG9jYWxlQ29tcGFyZShfdHJpbUVuZChiIGFzIHN0cmluZykpO1xuICAgIH1cbiAgICByZXR1cm4gYSA+IGIgPyAxIDogYSA9PT0gYiA/IDAgOiAtMTtcbn07XG5leHBvcnQgZnVuY3Rpb24gX3RyaW1FbmQodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgY2FjaGUgPSBuZXcgU2V0KFN0cmluZyh2YWx1ZSkpO1xuICAgIGxldCBlbmQgPSB2YWx1ZS5sZW5ndGg7XG4gICAgZm9yIChsZXQgaSA9IHZhbHVlLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7XG4gICAgICAgIGlmICghY2FjaGUuaGFzKHZhbHVlW2ldKSkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgZW5kLS07XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZS5zbGljZSgwLCBlbmQpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGdldE5lc3RlZFZhbHVlPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBhbnk+PihrZXk6IHN0cmluZywgb2JqZWN0OiBUKTogYW55IHtcbiAgICByZXR1cm4ga2V5LnNwbGl0KCcuJykucmVkdWNlKChhLCBiKSA9PiBhW2JdLCBvYmplY3QpO1xufVxuXG5leHBvcnQgY29uc3QgSWNvblROVCA9IFtcbiAgICAndGVjaG5pY2Fsc3lzdGVtJyxcbiAgICAnc3lzdGVtamF2YScsXG4gICAgJ3N5c3RlbWFiYXAnLFxuICAgICdzeXN0ZW1yZWNvbW1lbmRhdGlvbnMnLFxuICAgICdzeXN0ZW0nLFxuICAgICdzeXN0ZW10cmV4JyxcbiAgICAnc3lzdGVtdHJhY2tzJyxcbiAgICAndGVjaG5pY2Fsc2NlbmFyaW8nLFxuICAgICd0ZWNobmljYWxpbnN0YW5jZScsXG4gICAgJ3Rocm91Z2hwdXQtYmFja2xvZycsXG4gICAgJ2JhdGNoLXByb2Nlc3NpbmcnLFxuICAgICdkYXRhYmFzZS1jb25zaXN0ZW5jeScsXG4gICAgJ2ludGVybWVkaWF0ZS1tZXNzYWdlJyxcbiAgICAnZXhjZXB0aW9ucycsXG4gICAgJ3N5c3RlbS1IQU5BJyxcbiAgICAncHl0aG9uJyxcbiAgICAncmFpc2UtZmF1bHQnLFxuICAgICdjb2RlMScsXG4gICAgJ2NvZGUyJyxcbiAgICAnc3Bpa2UtYXJyZXN0JyxcbiAgICAndmVyaWZ5LUFQSScsXG4gICAgJ3VzZXInLFxuICAgICdub3RlJyxcbiAgICAndGhyb3dpbmctbWVzc2FnZScsXG4gICAgJ2NhdGNoaW5nLW1lc3NhZ2UnLFxuICAgICdzdGFydC1ldmVudCcsXG4gICAgJ2VuZC1ldmVudCcsXG4gICAgJ2dhdGV3YXknLFxuICAgICdzdWItcHJvY2Vzcy1tYXJrZXInLFxuICAgICdhZC1ob2MtbWFya2VyJyxcbiAgICAnbWFudWFsLXRhc2snLFxuICAgICdzZW5kLXRhc2snLFxuICAgICdyZWNlaXZlLXRhc2snLFxuICAgICdzY3JpcHQtdGFzaycsXG4gICAgJ21hcnF1ZWUnLFxuICAgICdkYXRhLWlucHV0LWFycm93JyxcbiAgICAnZGF0YS1vdXRwdXQtYXJyb3cnLFxuICAgICdtb3JlJyxcbiAgICAncGF0dGVybicsXG4gICAgJ3Rhc2snLFxuICAgICdhcnJvdycsXG4gICAgJ2RhdGEnLFxuICAgICdkYXRhLXN0b3JlJyxcbiAgICAncG9vbCcsXG4gICAgJ3N3aW1sYW5lJyxcbiAgICAnc2VsZWN0JyxcbiAgICAnY3Vyc29yJyxcbiAgICAnYXBpJyxcbiAgICAnby1kYXRhJyxcbiAgICAnamF2YXNjcmlwdCcsXG4gICAgJ3ZhbHVlLW1hcHBpbmcnLFxuICAgICd0ZXJtaW5hdGUtZW5kLWV2ZW50JyxcbiAgICAncGFyYWxsZWwtZ2F0ZXdheScsXG4gICAgJ2V4Y2x1c2l2ZS1nYXRld2F5JyxcbiAgICAnc2VydmljZS10YXNrJyxcbiAgICAnd29ya2Zsb3ctZWRpdG9yJyxcbiAgICAnYm91bmRhcnktaW50ZXJydXB0aW5nJyxcbiAgICAnYm91bmRhcnktbm9uLWludGVycnVwdGluZycsXG4gICAgJ2Jsb2NrJyxcbiAgICAnY29uc3RyYWluLWJsb2NrJyxcbiAgICAnYWN0b3InLFxuICAgICdpbnN0YW5jZS1zcGVjaWZpY2F0aW9uJyxcbiAgICAndmFsdWUtdHlwZScsXG4gICAgJ2ludGVyZmFjZS1ibG9jaycsXG4gICAgJ3VuaXQnLFxuICAgICdzaWduYWwnLFxuICAgICdxdWFudGl0eS1raW5kJyxcbiAgICAnaXRlbS1mbG93JyxcbiAgICAnZGVwZW5kZW5jeScsXG4gICAgJ2dlbmVyYWxpemF0aW9uJyxcbiAgICAnYWdncmVnYXRpb24nLFxuICAgICdjb21wb3NpdGlvbicsXG4gICAgJ2Fzc29jaWF0aW9uJyxcbiAgICAncG9ydCcsXG4gICAgJ3Byb3h5LXBvcnQnLFxuICAgICdmdWxsLXBvcnQnLFxuICAgICdvcGVyYXRpb25zJyxcbiAgICAnY29uc3RyYWlucycsXG4gICAgJ3JlY2VwdGlvbnMnLFxuICAgICdyZWZlcmVuY2VzJyxcbiAgICAncGFydHMnLFxuICAgICdmbG93JyxcbiAgICAndmFsdWVzJyxcbiAgICAnYmlsbC1vZi1tYXRlcmlhbCcsXG4gICAgJ2RvY3VtZW50LWluZm8tcmVjb3JkaW5nJyxcbiAgICAndXNlLWNhc2UtZGlhZ3JhbScsXG4gICAgJ2JkZC1kaWFncmFtJyxcbiAgICAncmVxdWlyZW1lbnQtZGlhZ3JhbScsXG4gICAgJ3BhY2thZ2UtZGlhZ3JhbScsXG4gICAgJ2ludGVybmFsLWJsb2NrLWRpYWdyYW0nLFxuICAgICdyZXF1aXJlbWVudC1jb250YWlubWVudC1yZWxhdGlvbnNoaXAnLFxuICAgICd1c2UtY2FzZScsXG4gICAgJ3VzZS1jYXNlLWV4dGVuc2lvbi1wb2ludCcsXG4gICAgJ2NvbW11bmljYXRpb24tcGF0aCcsXG4gICAgJ25vdGUtY29ubmVjdGlvbicsXG4gICAgJ3N1YmplY3QnLFxuICAgICdhdXRvLWxheW91dCcsXG4gICAgJ3JlcXVpcmVkLWludGVyZmFjZScsXG4gICAgJ3Byb3ZpZGVkLWludGVyZmFjZScsXG4gICAgJ3N1Yi1jb250ZW50JyxcbiAgICAnY29ubmVjdG9yJyxcbiAgICAnbG9jYWwtcHJvY2Vzcy1jYWxsJyxcbiAgICAnYWdncmVnYXRvcicsXG4gICAgJ3NwbGl0dGVyJyxcbiAgICAnY29udmVydGVyJyxcbiAgICAnY29udGVudC1tb2RpZmllcicsXG4gICAgJ21lc3NhZ2Utc3RhcnQtZXZlbnQnLFxuICAgICdtZXNzYWdlLWVuZC1ldmVudCcsXG4gICAgJ2VzY2FsYXRpb24tZW5kLWV2ZW50JyxcbiAgICAnc3RhcnQtdGltZXItZXZlbnQnLFxuICAgICdlcnJvci1zdGFydC1ldmVudCcsXG4gICAgJ2Vycm9yLWVuZC1ldmVudCcsXG4gICAgJ2NvbnRlbnQtZW5yaWNoZXInLFxuICAgICdyZWFsaXphdGlvbicsXG4gICAgJ2ludGVyZmFjZScsXG4gICAgJ3VzaW5lc3MtY2FwYWJpbGl0eScsXG4gICAgJ3Byb2dyZXNzLWdyb3VwJyxcbiAgICAndmFsdWUtc3RyZWFtJyxcbiAgICAndmFsdWUtZmxvdycsXG4gICAgJ2FwcGxpY2F0aW9uJyxcbiAgICAnZXRsLWpvYicsXG4gICAgJ2J1c2luZXNzLXNlcnZpY2UnLFxuICAgICdhcHBsaWNhdGlvbi1zZXJ2aWNlJyxcbiAgICAnbmV0d29yay1ub2RlJyxcbiAgICAnbmV0d29yaycsXG4gICAgJ2RlcGxveW1lbnQtaW5zdGFuY2UnLFxuICAgICdpbnRyYW5ldCcsXG4gICAgJ21vYmlsZS1uZXR3b3JrJyxcbiAgICAncHJpdmF0ZS1jbG91ZCcsXG4gICAgJ2FudGVubmEnLFxuICAgICdmaXJld2FsbCcsXG4gICAgJ2h1YicsXG4gICAgJ21vZGVtJyxcbiAgICAncmVwZWF0ZXInLFxuICAgICdyb3V0ZXInLFxuICAgICdzd2l0Y2gnLFxuICAgICdzYXRlbGxpdGUnLFxuICAgICdzeXN0ZW0tMicsXG4gICAgJ3N0YXR1cy1hY3RpdmF0aW5nJyxcbiAgICAnc3RhdHVzLXN1c3BlbmRlZCcsXG4gICAgJ3N0YXR1cy1zdXNwZW5kaW5nJyxcbiAgICAnc3RhdHVzLXRlcm1pbmF0ZWQnLFxuICAgICdzdGF0dXMtdGVybWluYXRpbmcnLFxuICAgICdzb2x1dGlvbi1ub3QtbGljZW5zZWQnLFxuICAgICdjbGVhci1hbGwtbWFwcGluZycsXG4gICAgJ21hcC1hbGwtZmllbGRzJ1xuXTtcbmV4cG9ydCBjb25zdCBJY29uQnVzaW5lc3NTdWl0ZSA9IFtcbiAgICAnaGVhcnQnLFxuICAgICdxdWFydGVyJyxcbiAgICAneWVhcicsXG4gICAgJ2VxdWFsaXplcicsXG4gICAgJ2NvbXBvbmVudCcsXG4gICAgJ2NvbXBvbmVudC1wcml2YXRlJyxcbiAgICAncmF3LW1hdGVyaWFsJyxcbiAgICAnc21zJyxcbiAgICAnYWRkLW5vdGUnLFxuICAgICdjaGFuZ2UtdGltZS1ob3Jpem9uJyxcbiAgICAndGFibGUtY2hhcnQtY3VzdG9taXphdGlvbicsXG4gICAgJ2RlbGVnYXRlZC1pbXBvcnRhbnQtdGFzaycsXG4gICAgJ2ZvcmtsaWZ0JyxcbiAgICAnY29pbnMnLFxuICAgICdmaWx0ZXItbWVudScsXG4gICAgJ3RhcmdldC10by1kYXRlJyxcbiAgICAncHJvZ3JhbScsXG4gICAgJ3BoYXNlJyxcbiAgICAnY2hlY2tsaXN0JyxcbiAgICAnbWlycm9yZWQtdGFzaycsXG4gICAgJ3N1Yi1wcm9qZWN0JyxcbiAgICAnY2hlY2tsaXN0LWl0ZW0nLFxuICAgICdhZGhvYy1hbmFseXNpcycsXG4gICAgJ2NoYW5nZS1hbmFseXNpcycsXG4gICAgJ3Jldmlldy1kZW1hbmRzJyxcbiAgICAncHJvamVjdC1kZWZpbml0aW9uJyxcbiAgICAnZGF0YS1hY2Nlc3MnLFxuICAgICdkZWZpbmUtc2hvcnRhZ2UnLFxuICAgICdyZXZpZXctc3VwcGxpZXMnLFxuICAgICdjaGFuZ2UtbG9nJyxcbiAgICAncHJpb3JpdHktMScsXG4gICAgJ3ByaW9yaXR5LTInLFxuICAgICdqYW0nLFxuICAgICdtaWxlc3RvbmUnLFxuICAgICdidWxsZXRpbmctd2l0aC1udW1iZXJzJyxcbiAgICAnZGVjcmVhc2UtaW5kZW50JyxcbiAgICAnaW5jcmVhc2UtaW5kZW50JyxcbiAgICAnYm9sZCcsXG4gICAgJ2l0YWxpYycsXG4gICAgJ3N0cmlrZS10aHJvdWdoJyxcbiAgICAndW5kZXJsaW5lJyxcbiAgICAnc2F2ZS1hcycsXG4gICAgJ3NlZ21lbnRhdGlvbicsXG4gICAgJ2NvbnRleHQtbWVudScsXG4gICAgJ3NuYXBzaG90JyxcbiAgICAnc3VidHJhY3Rpb24tYi1hJyxcbiAgICAnc3VidHJhY3Rpb24tYS1iJyxcbiAgICAnaW50ZXJzZWN0aW9uJyxcbiAgICAndW5pb24nLFxuICAgICd0b3AnLFxuICAgICdib3R0b20nLFxuICAgICdwYWdlLXVwJyxcbiAgICAncGFnZS1kb3duJyxcbiAgICAnY3JlYXRlLWRhc2hib2FyZCcsXG4gICAgJ3hjZWxzaXVzLWZpbGUnLFxuICAgICdvcGVuLWZvbGRlcicsXG4gICAgJ25ldXRyYWwnLFxuICAgICdzcGxpdC1zZWdtZW50YXRpb24nLFxuICAgICdtYW5hZ2UtYnVkZ2V0JyxcbiAgICAnYmxvY2tlZCcsXG4gICAgJ3BpcGV0dGUnLFxuICAgICd0b3AtcmVjaXBlJyxcbiAgICAncmVjaXBlJyxcbiAgICAnaW5ncmVkaWVudHMnLFxuICAgICdtdWx0aXBsZS1jaGFydHMnLFxuICAgICdkZXNjZW5kaW5nLWJhcnMnLFxuICAgICdkZXNjZW5kaW5nLXN0YWNrZWQtYmFycycsXG4gICAgJ3NjYXR0ZXItcGxvdCcsXG4gICAgJ3NwaWxsJyxcbiAgICAnZmlyZScsXG4gICAgJ3N0cmF0aWZpY2F0aW9uJyxcbiAgICAncmVsYXRpb25zaGlwJyxcbiAgICAnbWFyZ2luLWRlY29tcG9zaXRpb24nLFxuICAgICdjb250cm9sLWdyb3VwJyxcbiAgICAnY29tcGFyaXNvbi1jaGFydCcsXG4gICAgJ3Jlc3BvbnNpYmxlLWFyZWEnLFxuICAgICdpbmNyZWFzZScsXG4gICAgJ2RlY3JlYXNlJyxcbiAgICAnY3VycmVudC1zdG9jaycsXG4gICAgJ2V4cGVkaXRlJyxcbiAgICAncG9zdHBvbmUnLFxuICAgICdhcHByb3ZlZCcsXG4gICAgJ3BhcnRpYWxseS1kZWxpdmVyZWQnLFxuICAgICdsaW5lLWJhci1jaGFydCcsXG4gICAgJ2V4cGFuZC1hbGwnLFxuICAgICdzdWJtaXNzaW9uJyxcbiAgICAnY2hhbmdlLXJlcXVlc3QnLFxuICAgICdjb2x1bW4tdW5zZWxlY3RlZCcsXG4gICAgJ2NvbHVtbi1zZWxlY3RlZCcsXG4gICAgJ3Jvdy11bnNlbGVjdGVkJyxcbiAgICAncm93LXNlbGVjdGVkJyxcbiAgICAnc3RvY2stcmVxdWlyZW1lbnRzJyxcbiAgICAnZ2VuZGVyLW1hbGUtYW5kLWZlbWFsZScsXG4gICAgJ21hcml0YWwtc3RhdHVzJyxcbiAgICAnYmlydGhkYXknLFxuICAgICdjbGFzc2lmaWNhdGlvbicsXG4gICAgJ21hcmtlZC1mb3ItZGVsZXRpb24nLFxuICAgICdidWxsZXQtY2hhcnQnLFxuICAgICdyZW1vdmUtZmlsdGVyJyxcbiAgICAnYmFuay1hY2NvdW50JyxcbiAgICAnc2F2aW5ncy1hY2NvdW50JyxcbiAgICAnZGViaXQtY2FyZCcsXG4gICAgJ3ZpcC1jdXN0b21lcicsXG4gICAgJ3VuZGVzaXJhYmxlLWN1c3RvbWVyJyxcbiAgICAnYW5zd2VyZWQtY2hhbmdlLXJlcXVlc3QnLFxuICAgICdjb2xsZWN0ZWQtY2hhbmdlLXJlcXVlc3QnLFxuICAgICdkcmF3LWZyZWVoYW5kJyxcbiAgICAnZHJhdy1jaXJjbGUnLFxuICAgICdjb21wbGV0ZWQnLFxuICAgICdhbnN3ZXJlZCcsXG4gICAgJ3RyYWZmaWMtY29uZScsXG4gICAgJ3RyYWZmaWMtbGlnaHRzJyxcbiAgICAnY29udGFpbmVyJyxcbiAgICAnY29udGFpbmVyLWxvYWRpbmcnLFxuICAgICd0cmFmZmljLWphbScsXG4gICAgJ3Byb2R1Y3RzJyxcbiAgICAnc2lkZXBhbmVsJyxcbiAgICAnc3BsaXQtc2NyZWVuJyxcbiAgICAndHJ1Y2stZHJpdmVyJyxcbiAgICAna2VlcC1zZWdtZW50JyxcbiAgICAnZXhjbHVkZS1zZWdtZW50JyxcbiAgICAnc2VwYXJhdGUtc2VnbWVudHMnLFxuICAgICdkaXN0cmlidXRlLXNlZ21lbnRzJyxcbiAgICAnbmV4dC1vcGVuLWl0ZW0nLFxuICAgICd3aGVyZS11c2VkJyxcbiAgICAnb3V0Ym91bmQtZGVsaXZlcnknLFxuICAgICdvdXRib3VuZC1kZWxpdmVyeS1pbmFjdGl2ZScsXG4gICAgJ291dGJvdW5kLWRlbGl2ZXJ5LWFjdGl2ZScsXG4gICAgJ3RhcmdldCcsXG4gICAgJ3NvdXJjZScsXG4gICAgJ21hdGVyaWFsJyxcbiAgICAnZHVlLWRhdGUnLFxuICAgICdvdmVyZHVlJyxcbiAgICAnc2V0LWFzLWRlZmF1bHQnLFxuICAgICdmYWNlLXZlcnktYmFkJyxcbiAgICAnZmFjZS1iYWQnLFxuICAgICdmYWNlLXNrZXB0aWNhbCcsXG4gICAgJ2ZhY2UtbmV1dHJhbCcsXG4gICAgJ2ZhY2UtYXN0b25pc2hlZCcsXG4gICAgJ2ZhY2UtaGFwcHknLFxuICAgICdmYWNlLXZlcnktaGFwcHknLFxuICAgICdmYWNlLWF3ZnVsJyxcbiAgICAnZmFjZS1kZXZhc3RhdGVkJyxcbiAgICAnZmFjZS1va2V5LWRva2V5JyxcbiAgICAnYWxhcm0nLFxuICAgICdhY3RpdmF0ZScsXG4gICAgJ3NlZ21lbnQtcHJldmlldy1yZWZlcmVuY2Utb2JqZWN0cycsXG4gICAgJ3JhZGl1cycsXG4gICAgJ3BvbHlnb25lLWJsYWNrJyxcbiAgICAncG9seWdvbmUtd2hpdGUnLFxuICAgICdwbG95Z29uZScsXG4gICAgJ25vLWZpbHRlcicsXG4gICAgJ2dyaXAnLFxuICAgICd3YXRlcicsXG4gICAgJ2dhcycsXG4gICAgJ2xpcXVpZCcsXG4gICAgJ3RpbWUtZGVwb3NpdCcsXG4gICAgJ2Vhcmx5LXdpZHRoZHJhd2FsLWZvci10aW1lLWRlcG9zaXRzJyxcbiAgICAndHJ1Y2stbG9hZCcsXG4gICAgJ3RydWNrLXVubG9hZCcsXG4gICAgJ3RydWNrLWxvYWQtdW5sb2FkJyxcbiAgICAncGhhcm1hY3knLFxuICAgICdtZWRpY2luZS1zeXJ1cCcsXG4gICAgJ3JlbWluZGVyJyxcbiAgICAnbWVkaWNpbmUtcGlsbCcsXG4gICAgJ21lZGljaW5lLW9pbnRtZW50JyxcbiAgICAnbWVkaWNpbmUtZHJvcHMnLFxuICAgICdibG9vZC10ZXN0JyxcbiAgICAndGVtcGVyYXR1cmUnLFxuICAgICdtZWRpY2luZS1pbmhhbGVyJyxcbiAgICAnZm9vdC1zdGVwcycsXG4gICAgJ3dlaWdodCcsXG4gICAgJ2hlYWx0aC10cmFja2luZycsXG4gICAgJ2Jsb29kLXByZXNzdXJlJyxcbiAgICAnaW1tdW5pemF0aW9uJyxcbiAgICAnYWxsZXJnaWVzJyxcbiAgICAncmVzY2hlZHVsaW5nMicsXG4gICAgJ3Jlc2VxdWVuY2luZzInLFxuICAgICduby10aW1lLWNoYW5nZScsXG4gICAgJ3RpbWUtY2hhbmdlJyxcbiAgICAnc21hcnQtbWF0Y2hlcicsXG4gICAgJ2xlZ2FsLXNlY3Rpb24nLFxuICAgICdjYXVzZXMnLFxuICAgICdlZmZlY3RzJyxcbiAgICAnc2hhcmVkLWJ5LW1lJyxcbiAgICAnc2hhcmVkLXdpdGgtbWUnLFxuICAgICdhbGVydC1ncm91cHMnLFxuICAgICdmdW5jdGlvbi1hbGVydCcsXG4gICAgJ2Z1bmN0aW9uLWhpZXJhcmNoeScsXG4gICAgJ3JmaWQnLFxuICAgICdpbnB1dCcsXG4gICAgJ3NvZnR3YXJlLWl0ZW0nLFxuICAgICdwcm9kdWN0LXZpZXcnLFxuICAgICdzb2Z0d2FyZS1pdGVtLXZhcmlhbnQnLFxuICAgICdsaWdodGhvdXNlJyxcbiAgICAnZGVtYW5kLXVuaXQnLFxuICAgICdmbWEtbWFuYWdlbWVudCcsXG4gICAgJ2ZtYS12YWxpZGF0aW9uJyxcbiAgICAnZm1hLWFuYWx5dGljcycsXG4gICAgJ2NsYXNzJyxcbiAgICAnb3ZlcnZpZXcnLFxuICAgICdwcm9kdWN0aW9uJyxcbiAgICAnc3ViY2xhc3MnLFxuICAgICd2YXJpYW50LWNvbmZpZ3VyYXRpb24nLFxuICAgICdzdW0nLFxuICAgICdlbXB0eS10cmFpbGVyJyxcbiAgICAnZG9vcicsXG4gICAgJ2xvYWRpbmctcG9pbnQnLFxuICAgICdzdG9jay13YXJlaG91c2UnLFxuICAgICdnYXRlJyxcbiAgICAndGltZXNlcmllcy13YXRlcmZhbGwtY2hhcnQnLFxuICAgICdzdGFnZXMtd2FybmluZycsXG4gICAgJ2VtcHR5LXdhcm5pbmcnXG5dO1xuIl19
|
|
@@ -11,13 +11,16 @@ export class GridMoDataList {
|
|
|
11
11
|
// items.forEach((item) => (item.$Visibility = true));
|
|
12
12
|
// return items;
|
|
13
13
|
// }),
|
|
14
|
-
tap((items) => (this.resultItems = items))
|
|
14
|
+
tap((items) => (this.resultItems = items))
|
|
15
|
+
// tap((items) => console.log(items))
|
|
16
|
+
);
|
|
15
17
|
}
|
|
16
18
|
getSortby() {
|
|
17
19
|
return this.gridSetting.SortSettingList.map((c) => ({
|
|
18
20
|
field: c.Name,
|
|
19
|
-
direction: this.getSortDirection(c.SortDirection)
|
|
20
|
-
|
|
21
|
+
direction: this.getSortDirection(c.SortDirection),
|
|
22
|
+
isNumber: this.visibleColumns?.find((d) => d.Name === c.Name)?.FieldType === 'عدد'
|
|
23
|
+
})).concat({ field: '$NewInlineMo', direction: SortDirection.DESC, isNumber: false });
|
|
21
24
|
}
|
|
22
25
|
getSortDirection(direction) {
|
|
23
26
|
switch (direction) {
|
|
@@ -80,9 +83,9 @@ const sortEx = (sortBy, moDataList) => {
|
|
|
80
83
|
return items.sort((a, b) =>
|
|
81
84
|
/* eslint-disable */
|
|
82
85
|
newSortBy
|
|
83
|
-
.map(({ field, direction }) => {
|
|
86
|
+
.map(({ field, direction, isNumber }) => {
|
|
84
87
|
const ascModifier = direction === SortDirection.ASC ? 1 : -1;
|
|
85
|
-
return Constants.sort(a, b, field) * ascModifier;
|
|
88
|
+
return Constants.sort(a, b, field, isNumber) * ascModifier;
|
|
86
89
|
})
|
|
87
90
|
.find((result, index, list) => result !== 0 || index === list.length - 1));
|
|
88
91
|
};
|
|
@@ -216,4 +219,4 @@ const filterBySelect = (item, collectionSelectFilter) => {
|
|
|
216
219
|
}
|
|
217
220
|
return !filterValues.length || collectionSelectFilter.exclude ? !result : result;
|
|
218
221
|
};
|
|
219
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1kYXRhLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbW9kZWxzL2dyaWQtZGF0YS1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBT0gsYUFBYSxFQUNiLGlCQUFpQixFQUVwQixNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xELE9BQU8sS0FBSyxTQUFTLE1BQU0sY0FBYyxDQUFDO0FBRTFDLE1BQU0sT0FBTyxjQUFjO0lBT3ZCLFlBQ0ksV0FBOEMsRUFDOUMsWUFBcUMsRUFDckMsZUFBK0MsRUFDL0MsV0FBK0I7UUFFL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQ2QsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3RELFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUN6RSxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFDckUsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUMsQ0FBQyxD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UyxHQUFHLFNBQVMsQ0FBQyxjQUFjLENBQUMsdUJBQXVCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hGLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQztJQUVuQixRQUFRLHVCQUF1QixDQUFDLFFBQVEsRUFBRTtRQUN0QyxLQUFLLFNBQVMsQ0FBQztRQUNmO1lBQ0ksTUFBTSxHQUFHLFNBQVMsS0FBSyxXQUFXLENBQUM7S0FDMUM7SUFFRCxPQUFPLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUM5RCxDQUFDLENBQUM7QUFFRixNQUFNLGNBQWMsR0FBRyxDQUFDLElBQXlCLEVBQUUsc0JBQThDLEVBQVcsRUFBRTtJQUMxRyxNQUFNLFlBQVksR0FBRyxzQkFBc0IsQ0FBQyxLQUFLLENBQUM7SUFDbEQsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0UsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBRW5CLFFBQVEsc0JBQXNCLENBQUMsUUFBUSxFQUFFO1FBQ3JDLEtBQUssU0FBUyxDQUFDO1FBQ2Y7WUFDSSxNQUFNLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUNqRDtJQUVELE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxJQUFJLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUNyRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29sbGVjdGlvbkJvb2xlYW5GaWx0ZXIsXHJcbiAgICBDb2xsZWN0aW9uRGF0ZUZpbHRlcixcclxuICAgIENvbGxlY3Rpb25OdW1iZXJGaWx0ZXIsXHJcbiAgICBDb2xsZWN0aW9uU2VsZWN0RmlsdGVyLFxyXG4gICAgQ29sbGVjdGlvblNvcnQsXHJcbiAgICBDb2xsZWN0aW9uU3RyaW5nRmlsdGVyLFxyXG4gICAgU29ydERpcmVjdGlvbixcclxuICAgIFRhYmxlRGF0YVByb3ZpZGVyLFxyXG4gICAgVGFibGVTdGF0ZVxyXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0nO1xyXG5pbXBvcnQgeyBEYXRldGltZUFkYXB0ZXIsIEZkRGF0ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgR3JpZFNldHRpbmcsIE1ldGFvYmplY3REYXRhTW9kZWwsIFJlcG9ydFZpZXdDb2x1bW4gfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCAqIGFzIENvbnN0YW50cyBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEdyaWRNb0RhdGFMaXN0IHtcclxuICAgIGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW107XHJcbiAgICByZXN1bHRJdGVtczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xyXG4gICAgZ3JpZFNldHRpbmc6IEdyaWRTZXR0aW5nO1xyXG4gICAgdmlzaWJsZUNvbHVtbnM6IFJlcG9ydFZpZXdDb2x1bW5bXTtcclxuICAgIHNlYXJjaFRlcm06IHN0cmluZztcclxuICAgIGRhdGEkOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWxbXT47XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBtb0RhdGFMaXN0JDogT2JzZXJ2YWJsZTxNZXRhb2JqZWN0RGF0YU1vZGVsW10+LFxyXG4gICAgICAgIGdyaWRTZXR0aW5nJDogT2JzZXJ2YWJsZTxHcmlkU2V0dGluZz4sXHJcbiAgICAgICAgdmlzaWJsZUNvbHVtbnMkOiBPYnNlcnZhYmxlPFJlcG9ydFZpZXdDb2x1bW5bXT4sXHJcbiAgICAgICAgc2VhcmNoVGVybSQ6IE9ic2VydmFibGU8c3RyaW5nPlxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5kYXRhJCA9IG1lcmdlKFxyXG4gICAgICAgICAgICBtb0RhdGFMaXN0JC5waXBlKHRhcCgoaXRlbXMpID0+ICh0aGlzLml0ZW1zID0gaXRlbXMpKSksXHJcbiAgICAgICAgICAgIGdyaWRTZXR0aW5nJC5waXBlKHRhcCgoZ3JpZFNldHRpbmcpID0+ICh0aGlzLmdyaWRTZXR0aW5nID0gZ3JpZFNldHRpbmcpKSksXHJcbiAgICAgICAgICAgIHNlYXJjaFRlcm0kLnBpcGUodGFwKChzZWFyY2hUZXJtKSA9PiAodGhpcy5zZWFyY2hUZXJtID0gc2VhcmNoVGVybSkpKSxcclxuICAgICAgICAgICAgdmlzaWJsZUNvbHVtbnMkLnBpcGUodGFwKCh2aXNpYmxlQ29sdW1ucykgPT4gKHRoaXMudmlzaWJsZUNvbHVtbnMgPSB2aXNpYmxlQ29sdW1ucykpKVxyXG4gICAgICAgICkucGlwZShcclxuICAgICAgICAgICAgZmlsdGVyKCgpID0+ICEhdGhpcy5pdGVtcyksXHJcbiAgICAgICAgICAgIG1hcCgoKSA9PlxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZWFyY2hUZXJtXHJcbiAgICAgICAgICAgICAgICAgICAgPyBzZWFyY2hFeChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlYXJjaFRlcm0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy52aXNpYmxlQ29sdW1ucy5tYXAoKGMpID0+IGMuTmFtZSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pdGVtc1xyXG4gICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgIDogdGhpcy5pdGVtc1xyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICBtYXAoKCkgPT4gKHRoaXMuZ3JpZFNldHRpbmc/LlNvcnRTZXR0aW5nTGlzdCA/IHNvcnRFeCh0aGlzLmdldFNvcnRieSgpLCB0aGlzLml0ZW1zKSA6IHRoaXMuaXRlbXMpKSxcclxuICAgICAgICAgICAgLy8gbWFwKChpdGVtcykgPT4ge1xyXG4gICAgICAgICAgICAvLyAgICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gKGl0ZW0uJFZpc2liaWxpdHkgPSB0cnVlKSk7XHJcbiAgICAgICAgICAgIC8vICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICAgICAgICAgIC8vIH0pLFxyXG4gICAgICAgICAgICB0YXAoKGl0ZW1zKSA9PiAodGhpcy5yZXN1bHRJdGVtcyA9IGl0ZW1zKSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gICAgZ2V0U29ydGJ5KCk6IENvbGxlY3Rpb25Tb3J0W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRTZXR0aW5nLlNvcnRTZXR0aW5nTGlzdC5tYXAoKGMpID0+ICh7XHJcbiAgICAgICAgICAgIGZpZWxkOiBjLk5hbWUsXHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogdGhpcy5nZXRTb3J0RGlyZWN0aW9uKGMuU29ydERpcmVjdGlvbilcclxuICAgICAgICB9KSkuY29uY2F0KHsgZmllbGQ6ICckTmV3SW5saW5lTW8nLCBkaXJlY3Rpb246IFNvcnREaXJlY3Rpb24uREVTQyB9KTtcclxuICAgIH1cclxuICAgIGdldFNvcnREaXJlY3Rpb24oZGlyZWN0aW9uKTogU29ydERpcmVjdGlvbiB7XHJcbiAgICAgICAgc3dpdGNoIChkaXJlY3Rpb24pIHtcclxuICAgICAgICAgICAgY2FzZSAnQVNDJzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBTb3J0RGlyZWN0aW9uLkFTQztcclxuICAgICAgICAgICAgY2FzZSAnREVTQyc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gU29ydERpcmVjdGlvbi5ERVNDO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gU29ydERpcmVjdGlvbi5OT05FO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgR3JpZERhdGFQcm92aWRlciBleHRlbmRzIFRhYmxlRGF0YVByb3ZpZGVyPE1ldGFvYmplY3REYXRhTW9kZWw+IHtcclxuICAgIGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10gPSBbXTtcclxuICAgIG1vRGF0YUxpc3QkOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWxbXT47XHJcbiAgICB0b3RhbEl0ZW1zID0gMDtcclxuICAgIGxhc3RTdGF0ZTogVGFibGVTdGF0ZTtcclxuICAgIGRhdGVUaW1lQWRhcHRlcjogRGF0ZXRpbWVBZGFwdGVyPEZkRGF0ZT47XHJcbiAgICBjb25zdHJ1Y3Rvcihtb0RhdGFMaXN0OiBNZXRhb2JqZWN0RGF0YU1vZGVsW10pIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIHRoaXMuaXRlbXMgPSBtb0RhdGFMaXN0O1xyXG4gICAgfVxyXG4gICAgZmV0Y2godGFibGVTdGF0ZTogVGFibGVTdGF0ZSk6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbFtdPiB7XHJcbiAgICAgICAgdGhpcy5sYXN0U3RhdGUgPSB0YWJsZVN0YXRlO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldE1vRGF0YUxpc3QodGFibGVTdGF0ZSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIGdldE1vRGF0YUxpc3QodGFibGVTdGF0ZTogVGFibGVTdGF0ZSk6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgICAgICB0aGlzLnRvdGFsSXRlbXMgPSB0aGlzLml0ZW1zLmxlbmd0aDtcclxuICAgICAgICByZXR1cm4gb2YodGhpcy5pdGVtcykucGlwZShcclxuICAgICAgICAgICAgbWFwKChpdGVtcykgPT4gKHRhYmxlU3RhdGUuc2VhcmNoSW5wdXQgPyBzZWFyY2godGFibGVTdGF0ZSwgaXRlbXMpIDogaXRlbXMpKSxcclxuICAgICAgICAgICAgbWFwKChpdGVtcykgPT4gKHRhYmxlU3RhdGUuc29ydEJ5ID8gc29ydCh0YWJsZVN0YXRlLCBpdGVtcykgOiBpdGVtcykpXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZpbHRlcih7IGZpbHRlckJ5IH06IFRhYmxlU3RhdGUpOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10ge1xyXG4gICAgICAgIGxldCBpdGVtcyA9IHRoaXMuaXRlbXM7XHJcblxyXG4gICAgICAgIGZpbHRlckJ5XHJcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgZmllbGQgfSkgPT4gISFmaWVsZClcclxuICAgICAgICAgICAgLmZvckVhY2goKHJ1bGUpID0+IHtcclxuICAgICAgICAgICAgICAgIGl0ZW1zID0gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChydWxlLmZpZWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ25hbWUnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdkZXNjcmlwdGlvbic6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ3N0YXR1cyc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ3N0YXR1c0NvbG9yJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJCeVN0cmluZyhpdGVtLCBydWxlIGFzIENvbGxlY3Rpb25TdHJpbmdGaWx0ZXIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdwcmljZS52YWx1ZSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyQnlOdW1iZXIoaXRlbSwgcnVsZSBhcyBDb2xsZWN0aW9uTnVtYmVyRmlsdGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAndmVyaWZpZWQnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlckJ5Qm9vbGVhbihpdGVtLCBydWxlIGFzIENvbGxlY3Rpb25Cb29sZWFuRmlsdGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnZGF0ZSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyQnlEYXRlKGl0ZW0sIHJ1bGUgYXMgQ29sbGVjdGlvbkJvb2xlYW5GaWx0ZXIsIHRoaXMuZGF0ZVRpbWVBZGFwdGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBpdGVtcztcclxuICAgIH1cclxufVxyXG5jb25zdCBzb3J0ID0gKHsgc29ydEJ5IH06IFRhYmxlU3RhdGUsIG1vRGF0YUxpc3Q6IE1ldGFvYmplY3REYXRhTW9kZWxbXSk6IE1ldGFvYmplY3REYXRhTW9kZWxbXSA9PlxyXG4gICAgc29ydEV4KHNvcnRCeSwgbW9EYXRhTGlzdCk7XHJcblxyXG5jb25zdCBzb3J0RXggPSAoXHJcbiAgICBzb3J0Qnk6IHsgZmllbGQ6IHN0cmluZyB8IG51bGw7IGRpcmVjdGlvbjogc3RyaW5nIH1bXSxcclxuICAgIG1vRGF0YUxpc3Q6IE1ldGFvYmplY3REYXRhTW9kZWxbXVxyXG4pOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10gPT4ge1xyXG4gICAgY29uc3QgaXRlbXMgPSBtb0RhdGFMaXN0LnNsaWNlKCk7XHJcblxyXG4gICAgY29uc3QgbmV3U29ydEJ5ID0gc29ydEJ5LmZpbHRlcigoeyBmaWVsZCB9KSA9PiAhIWZpZWxkKTtcclxuXHJcbiAgICBpZiAobmV3U29ydEJ5Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybiBpdGVtcztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gaXRlbXMuc29ydChcclxuICAgICAgICAoYSwgYikgPT5cclxuICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cclxuICAgICAgICAgICAgbmV3U29ydEJ5XHJcbiAgICAgICAgICAgICAgICAubWFwKCh7IGZpZWxkLCBkaXJlY3Rpb24gfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFzY01vZGlmaWVyID0gZGlyZWN0aW9uID09PSBTb3J0RGlyZWN0aW9uLkFTQyA/IDEgOiAtMTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ29uc3RhbnRzLnNvcnQoYSwgYiwgZmllbGQpICogYXNjTW9kaWZpZXI7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLmZpbmQoKHJlc3VsdCwgaW5kZXgsIGxpc3QpID0+IHJlc3VsdCAhPT0gMCB8fCBpbmRleCA9PT0gbGlzdC5sZW5ndGggLSAxKSFcclxuICAgICk7XHJcbn07XHJcbmNvbnN0IHNlYXJjaCA9ICh7IHNlYXJjaElucHV0LCBjb2x1bW5zIH06IFRhYmxlU3RhdGUsIGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10pOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10gPT4ge1xyXG4gICAgcmV0dXJuIHNlYXJjaEV4KHNlYXJjaElucHV0Py50ZXh0LCBjb2x1bW5zLCBpdGVtcyk7XHJcbn07XHJcbmNvbnN0IHNlYXJjaEV4ID0gKHNlYXJjaFRlcm0sIGNvbHVtbnM6IHN0cmluZ1tdLCBpdGVtczogTWV0YW9iamVjdERhdGFNb2RlbFtdKTogTWV0YW9iamVjdERhdGFNb2RlbFtdID0+IHtcclxuICAgIGNvbnN0IHNlYXJjaFRleHQgPSBzZWFyY2hUZXJtIHx8ICcnO1xyXG4gICAgY29uc3Qga2V5c1RvU2VhcmNoQnkgPSBjb2x1bW5zO1xyXG5cclxuICAgIGlmIChzZWFyY2hUZXh0LnRyaW0oKSA9PT0gJycgfHwga2V5c1RvU2VhcmNoQnkubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlc0ZvclNlYXJjaCA9IGtleXNUb1NlYXJjaEJ5Lm1hcCgoa2V5KSA9PiBDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoa2V5LCBpdGVtKSk7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlc0ZvclNlYXJjaFxyXG4gICAgICAgICAgICAuZmlsdGVyKCh2YWx1ZSkgPT4gISF2YWx1ZSlcclxuICAgICAgICAgICAgLm1hcCgodmFsdWUpOiBzdHJpbmcgPT4gdmFsdWUudG9TdHJpbmcoKSlcclxuICAgICAgICAgICAgLnNvbWUoKHZhbHVlKSA9PiB2YWx1ZS50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRleHQudG9Mb2NhbGVMb3dlckNhc2UoKSkpO1xyXG4gICAgfSk7XHJcbn07XHJcbmNvbnN0IGZpbHRlckJ5U3RyaW5nID0gKGl0ZW06IE1ldGFvYmplY3REYXRhTW9kZWwsIGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXI6IENvbGxlY3Rpb25TdHJpbmdGaWx0ZXIpOiBib29sZWFuID0+IHtcclxuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gY29sbGVjdGlvblN0cmluZ0ZpbHRlci52YWx1ZSAmJiBjb2xsZWN0aW9uU3RyaW5nRmlsdGVyLnZhbHVlLnRvTG9jYWxlTG93ZXJDYXNlKCk7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZTIgPSAoY29sbGVjdGlvblN0cmluZ0ZpbHRlci52YWx1ZTIgJiYgY29sbGVjdGlvblN0cmluZ0ZpbHRlci52YWx1ZTIudG9Mb2NhbGVMb3dlckNhc2UoKSkgfHwgJyc7XHJcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdGlvblN0cmluZ0ZpbHRlci5maWVsZCwgaXRlbSkudG9Mb2NhbGVMb3dlckNhc2UoKTtcclxuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcclxuXHJcbiAgICBzd2l0Y2ggKGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXIuc3RyYXRlZ3kpIHtcclxuICAgICAgICBjYXNlICdlcXVhbFRvJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID09PSBmaWx0ZXJWYWx1ZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnZ3JlYXRlclRoYW4nOlxyXG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPiBmaWx0ZXJWYWx1ZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnZ3JlYXRlclRoYW5PckVxdWFsVG8nOlxyXG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPj0gZmlsdGVyVmFsdWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2xlc3NUaGFuJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlIDwgZmlsdGVyVmFsdWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2xlc3NUaGFuT3JFcXVhbFRvJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlIDw9IGZpbHRlclZhbHVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdiZXR3ZWVuJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID49IGZpbHRlclZhbHVlICYmIGl0ZW1WYWx1ZSA8PSBmaWx0ZXJWYWx1ZTI7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2JlZ2luc1dpdGgnOlxyXG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUuc3RhcnRzV2l0aChmaWx0ZXJWYWx1ZSk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2VuZHNXaXRoJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlLmVuZHNXaXRoKGZpbHRlclZhbHVlKTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnY29udGFpbnMnOlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZS5pbmNsdWRlcyhmaWx0ZXJWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXIuZXhjbHVkZSA/ICFyZXN1bHQgOiByZXN1bHQ7XHJcbn07XHJcblxyXG5jb25zdCBmaWx0ZXJCeU51bWJlciA9IChpdGVtOiBNZXRhb2JqZWN0RGF0YU1vZGVsLCBjb2xsZWN0aW9uTnVtYmVyRmlsdGVyOiBDb2xsZWN0aW9uTnVtYmVyRmlsdGVyKTogYm9vbGVhbiA9PiB7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IE51bWJlci5wYXJzZUZsb2F0KGNvbGxlY3Rpb25OdW1iZXJGaWx0ZXIudmFsdWUgYXMgdW5rbm93biBhcyBzdHJpbmcpO1xyXG4gICAgY29uc3QgZmlsdGVyVmFsdWUyID0gTnVtYmVyLnBhcnNlRmxvYXQoY29sbGVjdGlvbk51bWJlckZpbHRlci52YWx1ZTIgYXMgdW5rbm93biBhcyBzdHJpbmcpIHx8IDA7XHJcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBOdW1iZXIucGFyc2VGbG9hdChDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdGlvbk51bWJlckZpbHRlci5maWVsZCwgaXRlbSkpO1xyXG4gICAgbGV0IHJlc3VsdCA9IGZhbHNlO1xyXG5cclxuICAgIHN3aXRjaCAoY29sbGVjdGlvbk51bWJlckZpbHRlci5zdHJhdGVneSkge1xyXG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID4gZmlsdGVyVmFsdWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuT3JFcXVhbFRvJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID49IGZpbHRlclZhbHVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdsZXNzVGhhbic6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZSA8IGZpbHRlclZhbHVlO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdsZXNzVGhhbk9yRXF1YWxUbyc6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZSA8PSBmaWx0ZXJWYWx1ZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYmV0d2Vlbic6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZSA+PSBmaWx0ZXJWYWx1ZSAmJiBpdGVtVmFsdWUgPD0gZmlsdGVyVmFsdWUyO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdlcXVhbFRvJzpcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPT09IGZpbHRlclZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjb2xsZWN0aW9uTnVtYmVyRmlsdGVyLmV4Y2x1ZGUgPyAhcmVzdWx0IDogcmVzdWx0O1xyXG59O1xyXG5cclxuY29uc3QgZmlsdGVyQnlEYXRlID0gPEQgPSBGZERhdGU+KFxyXG4gICAgaXRlbTogTWV0YW9iamVjdERhdGFNb2RlbCxcclxuICAgIGNvbGxlY3RvaW5EYXRlRmlsdGVyOiBDb2xsZWN0aW9uRGF0ZUZpbHRlcixcclxuICAgIGFkYXB0ZXI6IERhdGV0aW1lQWRhcHRlcjxEPlxyXG4pOiBib29sZWFuID0+IHtcclxuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gY29sbGVjdG9pbkRhdGVGaWx0ZXIudmFsdWU7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZTIgPSBjb2xsZWN0b2luRGF0ZUZpbHRlci52YWx1ZTI7XHJcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdG9pbkRhdGVGaWx0ZXIuZmllbGQsIGl0ZW0pO1xyXG4gICAgY29uc3QgZGlmZiA9IGFkYXB0ZXIuY29tcGFyZURhdGUoaXRlbVZhbHVlLCBmaWx0ZXJWYWx1ZSk7XHJcbiAgICBsZXQgcmVzdWx0ID0gZmFsc2U7XHJcblxyXG4gICAgc3dpdGNoIChjb2xsZWN0b2luRGF0ZUZpbHRlci5zdHJhdGVneSkge1xyXG4gICAgICAgIGNhc2UgJ2FmdGVyJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gZGlmZiA+IDA7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ29uT3JBZnRlcic6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGRpZmYgPj0gMDtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYmVmb3JlJzpcclxuICAgICAgICAgICAgcmVzdWx0ID0gZGlmZiA8IDA7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2JlZm9yZU9yT24nOlxyXG4gICAgICAgICAgICByZXN1bHQgPSBkaWZmIDw9IDA7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2JldHdlZW4nOlxyXG4gICAgICAgICAgICByZXN1bHQgPSBhZGFwdGVyLmlzQmV0d2VlbihpdGVtVmFsdWUsIGZpbHRlclZhbHVlLCBmaWx0ZXJWYWx1ZTIpO1xyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmVzdWx0ID0gYWRhcHRlci5kYXRlVGltZXNFcXVhbChpdGVtVmFsdWUsIGZpbHRlclZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY29sbGVjdG9pbkRhdGVGaWx0ZXIuZXhjbHVkZSA/ICFyZXN1bHQgOiByZXN1bHQ7XHJcbn07XHJcblxyXG5jb25zdCBmaWx0ZXJCeUJvb2xlYW4gPSAoaXRlbTogTWV0YW9iamVjdERhdGFNb2RlbCwgY29sbGVjdGlvbkJvb2xlYW5GaWx0ZXI6IENvbGxlY3Rpb25Cb29sZWFuRmlsdGVyKTogYm9vbGVhbiA9PiB7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGNvbGxlY3Rpb25Cb29sZWFuRmlsdGVyLnZhbHVlO1xyXG4gICAgY29uc3QgaXRlbVZhbHVlID0gQ29uc3RhbnRzLmdldE5lc3RlZFZhbHVlKGNvbGxlY3Rpb25Cb29sZWFuRmlsdGVyLmZpZWxkLCBpdGVtKTtcclxuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcclxuXHJcbiAgICBzd2l0Y2ggKGNvbGxlY3Rpb25Cb29sZWFuRmlsdGVyLnN0cmF0ZWd5KSB7XHJcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID09PSBmaWx0ZXJWYWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY29sbGVjdGlvbkJvb2xlYW5GaWx0ZXIuZXhjbHVkZSA/ICFyZXN1bHQgOiByZXN1bHQ7XHJcbn07XHJcblxyXG5jb25zdCBmaWx0ZXJCeVNlbGVjdCA9IChpdGVtOiBNZXRhb2JqZWN0RGF0YU1vZGVsLCBjb2xsZWN0aW9uU2VsZWN0RmlsdGVyOiBDb2xsZWN0aW9uU2VsZWN0RmlsdGVyKTogYm9vbGVhbiA9PiB7XHJcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZXMgPSBjb2xsZWN0aW9uU2VsZWN0RmlsdGVyLnZhbHVlO1xyXG4gICAgY29uc3QgaXRlbVZhbHVlID0gQ29uc3RhbnRzLmdldE5lc3RlZFZhbHVlKGNvbGxlY3Rpb25TZWxlY3RGaWx0ZXIuZmllbGQsIGl0ZW0pO1xyXG4gICAgbGV0IHJlc3VsdCA9IGZhbHNlO1xyXG5cclxuICAgIHN3aXRjaCAoY29sbGVjdGlvblNlbGVjdEZpbHRlci5zdHJhdGVneSkge1xyXG4gICAgICAgIGNhc2UgJ2VxdWFsVG8nOlxyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGZpbHRlclZhbHVlcy5pbmNsdWRlcyhpdGVtVmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiAhZmlsdGVyVmFsdWVzLmxlbmd0aCB8fCBjb2xsZWN0aW9uU2VsZWN0RmlsdGVyLmV4Y2x1ZGUgPyAhcmVzdWx0IDogcmVzdWx0O1xyXG59O1xyXG4iXX0=
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1kYXRhLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbW9kZWxzL2dyaWQtZGF0YS1wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBT0gsYUFBYSxFQUNiLGlCQUFpQixFQUVwQixNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xELE9BQU8sS0FBSyxTQUFTLE1BQU0sY0FBYyxDQUFDO0FBRTFDLE1BQU0sT0FBTyxjQUFjO0lBT3ZCLFlBQ0ksV0FBOEMsRUFDOUMsWUFBcUMsRUFDckMsZUFBK0MsRUFDL0MsV0FBK0I7UUFFL0IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQ2QsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ3RELFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUN6RSxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFDckUsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUMsQ0FBQyxD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Q0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb2xsZWN0aW9uQm9vbGVhbkZpbHRlcixcbiAgICBDb2xsZWN0aW9uRGF0ZUZpbHRlcixcbiAgICBDb2xsZWN0aW9uTnVtYmVyRmlsdGVyLFxuICAgIENvbGxlY3Rpb25TZWxlY3RGaWx0ZXIsXG4gICAgQ29sbGVjdGlvblNvcnQsXG4gICAgQ29sbGVjdGlvblN0cmluZ0ZpbHRlcixcbiAgICBTb3J0RGlyZWN0aW9uLFxuICAgIFRhYmxlRGF0YVByb3ZpZGVyLFxuICAgIFRhYmxlU3RhdGVcbn0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBEYXRldGltZUFkYXB0ZXIsIEZkRGF0ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEdyaWRTZXR0aW5nLCBNZXRhb2JqZWN0RGF0YU1vZGVsLCBSZXBvcnRWaWV3Q29sdW1uIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0ICogYXMgQ29uc3RhbnRzIGZyb20gJy4uL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBHcmlkTW9EYXRhTGlzdCB7XG4gICAgaXRlbXM6IE1ldGFvYmplY3REYXRhTW9kZWxbXTtcbiAgICByZXN1bHRJdGVtczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xuICAgIGdyaWRTZXR0aW5nOiBHcmlkU2V0dGluZztcbiAgICB2aXNpYmxlQ29sdW1uczogUmVwb3J0Vmlld0NvbHVtbltdO1xuICAgIHNlYXJjaFRlcm06IHN0cmluZztcbiAgICBkYXRhJDogT2JzZXJ2YWJsZTxNZXRhb2JqZWN0RGF0YU1vZGVsW10+O1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBtb0RhdGFMaXN0JDogT2JzZXJ2YWJsZTxNZXRhb2JqZWN0RGF0YU1vZGVsW10+LFxuICAgICAgICBncmlkU2V0dGluZyQ6IE9ic2VydmFibGU8R3JpZFNldHRpbmc+LFxuICAgICAgICB2aXNpYmxlQ29sdW1ucyQ6IE9ic2VydmFibGU8UmVwb3J0Vmlld0NvbHVtbltdPixcbiAgICAgICAgc2VhcmNoVGVybSQ6IE9ic2VydmFibGU8c3RyaW5nPlxuICAgICkge1xuICAgICAgICB0aGlzLmRhdGEkID0gbWVyZ2UoXG4gICAgICAgICAgICBtb0RhdGFMaXN0JC5waXBlKHRhcCgoaXRlbXMpID0+ICh0aGlzLml0ZW1zID0gaXRlbXMpKSksXG4gICAgICAgICAgICBncmlkU2V0dGluZyQucGlwZSh0YXAoKGdyaWRTZXR0aW5nKSA9PiAodGhpcy5ncmlkU2V0dGluZyA9IGdyaWRTZXR0aW5nKSkpLFxuICAgICAgICAgICAgc2VhcmNoVGVybSQucGlwZSh0YXAoKHNlYXJjaFRlcm0pID0+ICh0aGlzLnNlYXJjaFRlcm0gPSBzZWFyY2hUZXJtKSkpLFxuICAgICAgICAgICAgdmlzaWJsZUNvbHVtbnMkLnBpcGUodGFwKCh2aXNpYmxlQ29sdW1ucykgPT4gKHRoaXMudmlzaWJsZUNvbHVtbnMgPSB2aXNpYmxlQ29sdW1ucykpKVxuICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKCkgPT4gISF0aGlzLml0ZW1zKSxcbiAgICAgICAgICAgIG1hcCgoKSA9PlxuICAgICAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybVxuICAgICAgICAgICAgICAgICAgICA/IHNlYXJjaEV4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlYXJjaFRlcm0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmlzaWJsZUNvbHVtbnMubWFwKChjKSA9PiBjLk5hbWUpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLml0ZW1zXG4gICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICA6IHRoaXMuaXRlbXNcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBtYXAoKCkgPT4gKHRoaXMuZ3JpZFNldHRpbmc/LlNvcnRTZXR0aW5nTGlzdCA/IHNvcnRFeCh0aGlzLmdldFNvcnRieSgpLCB0aGlzLml0ZW1zKSA6IHRoaXMuaXRlbXMpKSxcbiAgICAgICAgICAgIC8vIG1hcCgoaXRlbXMpID0+IHtcbiAgICAgICAgICAgIC8vICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiAoaXRlbS4kVmlzaWJpbGl0eSA9IHRydWUpKTtcbiAgICAgICAgICAgIC8vICAgICByZXR1cm4gaXRlbXM7XG4gICAgICAgICAgICAvLyB9KSxcbiAgICAgICAgICAgIHRhcCgoaXRlbXMpID0+ICh0aGlzLnJlc3VsdEl0ZW1zID0gaXRlbXMpKVxuICAgICAgICAgICAgLy8gdGFwKChpdGVtcykgPT4gY29uc29sZS5sb2coaXRlbXMpKVxuICAgICAgICApO1xuICAgIH1cbiAgICBnZXRTb3J0YnkoKTogQ29sbGVjdGlvblNvcnRbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRTZXR0aW5nLlNvcnRTZXR0aW5nTGlzdC5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICBmaWVsZDogYy5OYW1lLFxuICAgICAgICAgICAgZGlyZWN0aW9uOiB0aGlzLmdldFNvcnREaXJlY3Rpb24oYy5Tb3J0RGlyZWN0aW9uKSxcbiAgICAgICAgICAgIGlzTnVtYmVyOiB0aGlzLnZpc2libGVDb2x1bW5zPy5maW5kKChkKSA9PiBkLk5hbWUgPT09IGMuTmFtZSk/LkZpZWxkVHlwZSA9PT0gJ9i52K/YrydcbiAgICAgICAgfSkpLmNvbmNhdCh7IGZpZWxkOiAnJE5ld0lubGluZU1vJywgZGlyZWN0aW9uOiBTb3J0RGlyZWN0aW9uLkRFU0MsIGlzTnVtYmVyOiBmYWxzZSB9KTtcbiAgICB9XG4gICAgZ2V0U29ydERpcmVjdGlvbihkaXJlY3Rpb24pOiBTb3J0RGlyZWN0aW9uIHtcbiAgICAgICAgc3dpdGNoIChkaXJlY3Rpb24pIHtcbiAgICAgICAgICAgIGNhc2UgJ0FTQyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFNvcnREaXJlY3Rpb24uQVNDO1xuICAgICAgICAgICAgY2FzZSAnREVTQyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFNvcnREaXJlY3Rpb24uREVTQztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gU29ydERpcmVjdGlvbi5OT05FO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEdyaWREYXRhUHJvdmlkZXIgZXh0ZW5kcyBUYWJsZURhdGFQcm92aWRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPiB7XG4gICAgaXRlbXM6IE1ldGFvYmplY3REYXRhTW9kZWxbXSA9IFtdO1xuICAgIG1vRGF0YUxpc3QkOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWxbXT47XG4gICAgdG90YWxJdGVtcyA9IDA7XG4gICAgbGFzdFN0YXRlOiBUYWJsZVN0YXRlO1xuICAgIGRhdGVUaW1lQWRhcHRlcjogRGF0ZXRpbWVBZGFwdGVyPEZkRGF0ZT47XG4gICAgY29uc3RydWN0b3IobW9EYXRhTGlzdDogTWV0YW9iamVjdERhdGFNb2RlbFtdKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuaXRlbXMgPSBtb0RhdGFMaXN0O1xuICAgIH1cbiAgICBmZXRjaCh0YWJsZVN0YXRlOiBUYWJsZVN0YXRlKTogT2JzZXJ2YWJsZTxNZXRhb2JqZWN0RGF0YU1vZGVsW10+IHtcbiAgICAgICAgdGhpcy5sYXN0U3RhdGUgPSB0YWJsZVN0YXRlO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRNb0RhdGFMaXN0KHRhYmxlU3RhdGUpO1xuICAgIH1cbiAgICBwcml2YXRlIGdldE1vRGF0YUxpc3QodGFibGVTdGF0ZTogVGFibGVTdGF0ZSk6IE9ic2VydmFibGU8YW55W10+IHtcbiAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gdGhpcy5pdGVtcy5sZW5ndGg7XG4gICAgICAgIHJldHVybiBvZih0aGlzLml0ZW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChpdGVtcykgPT4gKHRhYmxlU3RhdGUuc2VhcmNoSW5wdXQgPyBzZWFyY2godGFibGVTdGF0ZSwgaXRlbXMpIDogaXRlbXMpKSxcbiAgICAgICAgICAgIG1hcCgoaXRlbXMpID0+ICh0YWJsZVN0YXRlLnNvcnRCeSA/IHNvcnQodGFibGVTdGF0ZSwgaXRlbXMpIDogaXRlbXMpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmlsdGVyKHsgZmlsdGVyQnkgfTogVGFibGVTdGF0ZSk6IE1ldGFvYmplY3REYXRhTW9kZWxbXSB7XG4gICAgICAgIGxldCBpdGVtcyA9IHRoaXMuaXRlbXM7XG5cbiAgICAgICAgZmlsdGVyQnlcbiAgICAgICAgICAgIC5maWx0ZXIoKHsgZmllbGQgfSkgPT4gISFmaWVsZClcbiAgICAgICAgICAgIC5mb3JFYWNoKChydWxlKSA9PiB7XG4gICAgICAgICAgICAgICAgaXRlbXMgPSBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChydWxlLmZpZWxkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICduYW1lJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ2Rlc2NyaXB0aW9uJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ3N0YXR1cyc6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdzdGF0dXNDb2xvcic6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlckJ5U3RyaW5nKGl0ZW0sIHJ1bGUgYXMgQ29sbGVjdGlvblN0cmluZ0ZpbHRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdwcmljZS52YWx1ZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlckJ5TnVtYmVyKGl0ZW0sIHJ1bGUgYXMgQ29sbGVjdGlvbk51bWJlckZpbHRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICd2ZXJpZmllZCc6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlckJ5Qm9vbGVhbihpdGVtLCBydWxlIGFzIENvbGxlY3Rpb25Cb29sZWFuRmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmaWx0ZXJCeURhdGUoaXRlbSwgcnVsZSBhcyBDb2xsZWN0aW9uQm9vbGVhbkZpbHRlciwgdGhpcy5kYXRlVGltZUFkYXB0ZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBpdGVtcztcbiAgICB9XG59XG5jb25zdCBzb3J0ID0gKHsgc29ydEJ5IH06IFRhYmxlU3RhdGUsIG1vRGF0YUxpc3Q6IE1ldGFvYmplY3REYXRhTW9kZWxbXSk6IE1ldGFvYmplY3REYXRhTW9kZWxbXSA9PlxuICAgIHNvcnRFeChzb3J0QnksIG1vRGF0YUxpc3QpO1xuXG5jb25zdCBzb3J0RXggPSAoXG4gICAgc29ydEJ5OiB7IGZpZWxkOiBzdHJpbmcgfCBudWxsOyBkaXJlY3Rpb246IHN0cmluZzsgaXNOdW1iZXI/OiBib29sZWFuIH1bXSxcbiAgICBtb0RhdGFMaXN0OiBNZXRhb2JqZWN0RGF0YU1vZGVsW11cbik6IE1ldGFvYmplY3REYXRhTW9kZWxbXSA9PiB7XG4gICAgY29uc3QgaXRlbXMgPSBtb0RhdGFMaXN0LnNsaWNlKCk7XG5cbiAgICBjb25zdCBuZXdTb3J0QnkgPSBzb3J0QnkuZmlsdGVyKCh7IGZpZWxkIH0pID0+ICEhZmllbGQpO1xuXG4gICAgaWYgKG5ld1NvcnRCeS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgIH1cblxuICAgIHJldHVybiBpdGVtcy5zb3J0KFxuICAgICAgICAoYSwgYikgPT5cbiAgICAgICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXG4gICAgICAgICAgICBuZXdTb3J0QnlcbiAgICAgICAgICAgICAgICAubWFwKCh7IGZpZWxkLCBkaXJlY3Rpb24sIGlzTnVtYmVyIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYXNjTW9kaWZpZXIgPSBkaXJlY3Rpb24gPT09IFNvcnREaXJlY3Rpb24uQVNDID8gMSA6IC0xO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ29uc3RhbnRzLnNvcnQoYSwgYiwgZmllbGQsIGlzTnVtYmVyKSAqIGFzY01vZGlmaWVyO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmZpbmQoKHJlc3VsdCwgaW5kZXgsIGxpc3QpID0+IHJlc3VsdCAhPT0gMCB8fCBpbmRleCA9PT0gbGlzdC5sZW5ndGggLSAxKSFcbiAgICApO1xufTtcbmNvbnN0IHNlYXJjaCA9ICh7IHNlYXJjaElucHV0LCBjb2x1bW5zIH06IFRhYmxlU3RhdGUsIGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10pOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10gPT4ge1xuICAgIHJldHVybiBzZWFyY2hFeChzZWFyY2hJbnB1dD8udGV4dCwgY29sdW1ucywgaXRlbXMpO1xufTtcbmNvbnN0IHNlYXJjaEV4ID0gKHNlYXJjaFRlcm0sIGNvbHVtbnM6IHN0cmluZ1tdLCBpdGVtczogTWV0YW9iamVjdERhdGFNb2RlbFtdKTogTWV0YW9iamVjdERhdGFNb2RlbFtdID0+IHtcbiAgICBjb25zdCBzZWFyY2hUZXh0ID0gc2VhcmNoVGVybSB8fCAnJztcbiAgICBjb25zdCBrZXlzVG9TZWFyY2hCeSA9IGNvbHVtbnM7XG5cbiAgICBpZiAoc2VhcmNoVGV4dC50cmltKCkgPT09ICcnIHx8IGtleXNUb1NlYXJjaEJ5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWVzRm9yU2VhcmNoID0ga2V5c1RvU2VhcmNoQnkubWFwKChrZXkpID0+IENvbnN0YW50cy5nZXROZXN0ZWRWYWx1ZShrZXksIGl0ZW0pKTtcbiAgICAgICAgcmV0dXJuIHZhbHVlc0ZvclNlYXJjaFxuICAgICAgICAgICAgLmZpbHRlcigodmFsdWUpID0+ICEhdmFsdWUpXG4gICAgICAgICAgICAubWFwKCh2YWx1ZSk6IHN0cmluZyA9PiB2YWx1ZS50b1N0cmluZygpKVxuICAgICAgICAgICAgLnNvbWUoKHZhbHVlKSA9PiB2YWx1ZS50b0xvY2FsZUxvd2VyQ2FzZSgpLmluY2x1ZGVzKHNlYXJjaFRleHQudG9Mb2NhbGVMb3dlckNhc2UoKSkpO1xuICAgIH0pO1xufTtcbmNvbnN0IGZpbHRlckJ5U3RyaW5nID0gKGl0ZW06IE1ldGFvYmplY3REYXRhTW9kZWwsIGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXI6IENvbGxlY3Rpb25TdHJpbmdGaWx0ZXIpOiBib29sZWFuID0+IHtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXIudmFsdWUgJiYgY29sbGVjdGlvblN0cmluZ0ZpbHRlci52YWx1ZS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xuICAgIGNvbnN0IGZpbHRlclZhbHVlMiA9IChjb2xsZWN0aW9uU3RyaW5nRmlsdGVyLnZhbHVlMiAmJiBjb2xsZWN0aW9uU3RyaW5nRmlsdGVyLnZhbHVlMi50b0xvY2FsZUxvd2VyQ2FzZSgpKSB8fCAnJztcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdGlvblN0cmluZ0ZpbHRlci5maWVsZCwgaXRlbSkudG9Mb2NhbGVMb3dlckNhc2UoKTtcbiAgICBsZXQgcmVzdWx0ID0gZmFsc2U7XG5cbiAgICBzd2l0Y2ggKGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXIuc3RyYXRlZ3kpIHtcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPT09IGZpbHRlclZhbHVlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuJzpcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZSA+IGZpbHRlclZhbHVlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2dyZWF0ZXJUaGFuT3JFcXVhbFRvJzpcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZSA+PSBmaWx0ZXJWYWx1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZXNzVGhhbic6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPCBmaWx0ZXJWYWx1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdsZXNzVGhhbk9yRXF1YWxUbyc6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPD0gZmlsdGVyVmFsdWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnYmV0d2Vlbic6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPj0gZmlsdGVyVmFsdWUgJiYgaXRlbVZhbHVlIDw9IGZpbHRlclZhbHVlMjtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdiZWdpbnNXaXRoJzpcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZS5zdGFydHNXaXRoKGZpbHRlclZhbHVlKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdlbmRzV2l0aCc6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUuZW5kc1dpdGgoZmlsdGVyVmFsdWUpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2NvbnRhaW5zJzpcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJlc3VsdCA9IGl0ZW1WYWx1ZS5pbmNsdWRlcyhmaWx0ZXJWYWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbGxlY3Rpb25TdHJpbmdGaWx0ZXIuZXhjbHVkZSA/ICFyZXN1bHQgOiByZXN1bHQ7XG59O1xuXG5jb25zdCBmaWx0ZXJCeU51bWJlciA9IChpdGVtOiBNZXRhb2JqZWN0RGF0YU1vZGVsLCBjb2xsZWN0aW9uTnVtYmVyRmlsdGVyOiBDb2xsZWN0aW9uTnVtYmVyRmlsdGVyKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSBOdW1iZXIucGFyc2VGbG9hdChjb2xsZWN0aW9uTnVtYmVyRmlsdGVyLnZhbHVlIGFzIHVua25vd24gYXMgc3RyaW5nKTtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZTIgPSBOdW1iZXIucGFyc2VGbG9hdChjb2xsZWN0aW9uTnVtYmVyRmlsdGVyLnZhbHVlMiBhcyB1bmtub3duIGFzIHN0cmluZykgfHwgMDtcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBOdW1iZXIucGFyc2VGbG9hdChDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdGlvbk51bWJlckZpbHRlci5maWVsZCwgaXRlbSkpO1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcblxuICAgIHN3aXRjaCAoY29sbGVjdGlvbk51bWJlckZpbHRlci5zdHJhdGVneSkge1xuICAgICAgICBjYXNlICdncmVhdGVyVGhhbic6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPiBmaWx0ZXJWYWx1ZTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdncmVhdGVyVGhhbk9yRXF1YWxUbyc6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPj0gZmlsdGVyVmFsdWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbGVzc1RoYW4nOlxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlIDwgZmlsdGVyVmFsdWU7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbGVzc1RoYW5PckVxdWFsVG8nOlxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlIDw9IGZpbHRlclZhbHVlO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JldHdlZW4nOlxuICAgICAgICAgICAgcmVzdWx0ID0gaXRlbVZhbHVlID49IGZpbHRlclZhbHVlICYmIGl0ZW1WYWx1ZSA8PSBmaWx0ZXJWYWx1ZTI7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPT09IGZpbHRlclZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiBjb2xsZWN0aW9uTnVtYmVyRmlsdGVyLmV4Y2x1ZGUgPyAhcmVzdWx0IDogcmVzdWx0O1xufTtcblxuY29uc3QgZmlsdGVyQnlEYXRlID0gPEQgPSBGZERhdGU+KFxuICAgIGl0ZW06IE1ldGFvYmplY3REYXRhTW9kZWwsXG4gICAgY29sbGVjdG9pbkRhdGVGaWx0ZXI6IENvbGxlY3Rpb25EYXRlRmlsdGVyLFxuICAgIGFkYXB0ZXI6IERhdGV0aW1lQWRhcHRlcjxEPlxuKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSBjb2xsZWN0b2luRGF0ZUZpbHRlci52YWx1ZTtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZTIgPSBjb2xsZWN0b2luRGF0ZUZpbHRlci52YWx1ZTI7XG4gICAgY29uc3QgaXRlbVZhbHVlID0gQ29uc3RhbnRzLmdldE5lc3RlZFZhbHVlKGNvbGxlY3RvaW5EYXRlRmlsdGVyLmZpZWxkLCBpdGVtKTtcbiAgICBjb25zdCBkaWZmID0gYWRhcHRlci5jb21wYXJlRGF0ZShpdGVtVmFsdWUsIGZpbHRlclZhbHVlKTtcbiAgICBsZXQgcmVzdWx0ID0gZmFsc2U7XG5cbiAgICBzd2l0Y2ggKGNvbGxlY3RvaW5EYXRlRmlsdGVyLnN0cmF0ZWd5KSB7XG4gICAgICAgIGNhc2UgJ2FmdGVyJzpcbiAgICAgICAgICAgIHJlc3VsdCA9IGRpZmYgPiAwO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ29uT3JBZnRlcic6XG4gICAgICAgICAgICByZXN1bHQgPSBkaWZmID49IDA7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgICAgICAgIHJlc3VsdCA9IGRpZmYgPCAwO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JlZm9yZU9yT24nOlxuICAgICAgICAgICAgcmVzdWx0ID0gZGlmZiA8PSAwO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2JldHdlZW4nOlxuICAgICAgICAgICAgcmVzdWx0ID0gYWRhcHRlci5pc0JldHdlZW4oaXRlbVZhbHVlLCBmaWx0ZXJWYWx1ZSwgZmlsdGVyVmFsdWUyKTtcbiAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ2VxdWFsVG8nOlxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmVzdWx0ID0gYWRhcHRlci5kYXRlVGltZXNFcXVhbChpdGVtVmFsdWUsIGZpbHRlclZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29sbGVjdG9pbkRhdGVGaWx0ZXIuZXhjbHVkZSA/ICFyZXN1bHQgOiByZXN1bHQ7XG59O1xuXG5jb25zdCBmaWx0ZXJCeUJvb2xlYW4gPSAoaXRlbTogTWV0YW9iamVjdERhdGFNb2RlbCwgY29sbGVjdGlvbkJvb2xlYW5GaWx0ZXI6IENvbGxlY3Rpb25Cb29sZWFuRmlsdGVyKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSBjb2xsZWN0aW9uQm9vbGVhbkZpbHRlci52YWx1ZTtcbiAgICBjb25zdCBpdGVtVmFsdWUgPSBDb25zdGFudHMuZ2V0TmVzdGVkVmFsdWUoY29sbGVjdGlvbkJvb2xlYW5GaWx0ZXIuZmllbGQsIGl0ZW0pO1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcblxuICAgIHN3aXRjaCAoY29sbGVjdGlvbkJvb2xlYW5GaWx0ZXIuc3RyYXRlZ3kpIHtcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXN1bHQgPSBpdGVtVmFsdWUgPT09IGZpbHRlclZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiBjb2xsZWN0aW9uQm9vbGVhbkZpbHRlci5leGNsdWRlID8gIXJlc3VsdCA6IHJlc3VsdDtcbn07XG5cbmNvbnN0IGZpbHRlckJ5U2VsZWN0ID0gKGl0ZW06IE1ldGFvYmplY3REYXRhTW9kZWwsIGNvbGxlY3Rpb25TZWxlY3RGaWx0ZXI6IENvbGxlY3Rpb25TZWxlY3RGaWx0ZXIpOiBib29sZWFuID0+IHtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZXMgPSBjb2xsZWN0aW9uU2VsZWN0RmlsdGVyLnZhbHVlO1xuICAgIGNvbnN0IGl0ZW1WYWx1ZSA9IENvbnN0YW50cy5nZXROZXN0ZWRWYWx1ZShjb2xsZWN0aW9uU2VsZWN0RmlsdGVyLmZpZWxkLCBpdGVtKTtcbiAgICBsZXQgcmVzdWx0ID0gZmFsc2U7XG5cbiAgICBzd2l0Y2ggKGNvbGxlY3Rpb25TZWxlY3RGaWx0ZXIuc3RyYXRlZ3kpIHtcbiAgICAgICAgY2FzZSAnZXF1YWxUbyc6XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXN1bHQgPSBmaWx0ZXJWYWx1ZXMuaW5jbHVkZXMoaXRlbVZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gIWZpbHRlclZhbHVlcy5sZW5ndGggfHwgY29sbGVjdGlvblNlbGVjdEZpbHRlci5leGNsdWRlID8gIXJlc3VsdCA6IHJlc3VsdDtcbn07XG4iXX0=
|
|
@@ -100,6 +100,7 @@ export class ReportViewRendererDirective extends BaseDirective {
|
|
|
100
100
|
instance.allowInlineEdit = this.allowInlineEdit;
|
|
101
101
|
instance.formSetting = this.formSetting;
|
|
102
102
|
instance.navigationArrow = this.navigationArrow;
|
|
103
|
+
instance.selectedMo = this.selectedMo;
|
|
103
104
|
instance.editFormPanelValueChange?.pipe(takeUntil(this._onDestroy$)).subscribe((mo) => {
|
|
104
105
|
this.editFormPanelValueChange.emit(mo);
|
|
105
106
|
});
|
|
@@ -165,7 +166,7 @@ export class ReportViewRendererDirective extends BaseDirective {
|
|
|
165
166
|
}
|
|
166
167
|
}
|
|
167
168
|
ReportViewRendererDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ReportViewRendererDirective, deps: [{ token: i1.PortalService }, { token: i0.ViewContainerRef }, { token: i0.Injector }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
168
|
-
ReportViewRendererDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ReportViewRendererDirective, selector: "[reportViewRenderer]", inputs: { view: "view", moDataList: "moDataList", allChecked: "allChecked", groupby: "groupby", isCheckList: "isCheckList", hasSummary: "hasSummary", relationList: "relationList", columns: "columns", columnsCount: "columnsCount", secondaryColumns: "secondaryColumns", contextMenuItems: "contextMenuItems", conditionalFormats: "conditionalFormats", deviceName: "deviceName", deviceSize: "deviceSize", mobileOrTablet: "mobileOrTablet", access: "access", title: "title", customFieldInfo: "customFieldInfo", allColumns: "allColumns", viewSetting: "viewSetting", inlineEditMode: "inlineEditMode", onlyInlineEdit: "onlyInlineEdit", allowInlineEdit: "allowInlineEdit", popin: "popin", formSetting: "formSetting", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", typeDefId: "typeDefId", containerWidth: "containerWidth", extraRelation: "extraRelation", contextView: "contextView", contentDensity: "contentDensity", hideOpenIcon: "hideOpenIcon", openOnClick: "openOnClick", inDialog: "inDialog", isMultiSelect: "isMultiSelect", disableResponsive: "disableResponsive", cartableTemplates: "cartableTemplates", cartableChildsMo: "cartableChildsMo" }, outputs: { editFormPanelCancel: "editFormPanelCancel", editFormPanelValueChange: "editFormPanelValueChange", ulvCommandClick: "ulvCommandClick", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter", deselectAll: "deselectAll", rowCheck: "rowCheck", rowClick: "rowClick", expandClick: "expandClick", trackBySelectedFn: "trackBySelectedFn", cartableFormClosed: "cartableFormClosed", createNewMo: "createNewMo", updateMo: "updateMo", allCheckbox: "allCheckbox", mandatory: "mandatory", editFormPanelSave: "editFormPanelSave", columnResized: "columnResized", selectNextInlineRecord: "selectNextInlineRecord", workflowShareButtons: "workflowShareButtons" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
|
169
|
+
ReportViewRendererDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: ReportViewRendererDirective, selector: "[reportViewRenderer]", inputs: { view: "view", moDataList: "moDataList", allChecked: "allChecked", groupby: "groupby", isCheckList: "isCheckList", hasSummary: "hasSummary", relationList: "relationList", columns: "columns", columnsCount: "columnsCount", secondaryColumns: "secondaryColumns", contextMenuItems: "contextMenuItems", conditionalFormats: "conditionalFormats", deviceName: "deviceName", deviceSize: "deviceSize", mobileOrTablet: "mobileOrTablet", access: "access", title: "title", customFieldInfo: "customFieldInfo", selectedMo: "selectedMo", allColumns: "allColumns", viewSetting: "viewSetting", inlineEditMode: "inlineEditMode", onlyInlineEdit: "onlyInlineEdit", allowInlineEdit: "allowInlineEdit", popin: "popin", formSetting: "formSetting", disableOverflowContextMenu: "disableOverflowContextMenu", navigationArrow: "navigationArrow", typeDefId: "typeDefId", containerWidth: "containerWidth", extraRelation: "extraRelation", contextView: "contextView", contentDensity: "contentDensity", hideOpenIcon: "hideOpenIcon", openOnClick: "openOnClick", inDialog: "inDialog", isMultiSelect: "isMultiSelect", disableResponsive: "disableResponsive", cartableTemplates: "cartableTemplates", cartableChildsMo: "cartableChildsMo" }, outputs: { editFormPanelCancel: "editFormPanelCancel", editFormPanelValueChange: "editFormPanelValueChange", ulvCommandClick: "ulvCommandClick", sortAscending: "sortAscending", sortDescending: "sortDescending", filter: "filter", deselectAll: "deselectAll", rowCheck: "rowCheck", rowClick: "rowClick", expandClick: "expandClick", trackBySelectedFn: "trackBySelectedFn", cartableFormClosed: "cartableFormClosed", createNewMo: "createNewMo", updateMo: "updateMo", allCheckbox: "allCheckbox", mandatory: "mandatory", editFormPanelSave: "editFormPanelSave", columnResized: "columnResized", selectNextInlineRecord: "selectNextInlineRecord", workflowShareButtons: "workflowShareButtons" }, usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
|
169
170
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ReportViewRendererDirective, decorators: [{
|
|
170
171
|
type: Directive,
|
|
171
172
|
args: [{
|
|
@@ -207,6 +208,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
|
|
|
207
208
|
type: Input
|
|
208
209
|
}], customFieldInfo: [{
|
|
209
210
|
type: Input
|
|
211
|
+
}], selectedMo: [{
|
|
212
|
+
type: Input
|
|
210
213
|
}], allColumns: [{
|
|
211
214
|
type: Input
|
|
212
215
|
}], viewSetting: [{
|
|
@@ -290,4 +293,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
|
|
|
290
293
|
}], workflowShareButtons: [{
|
|
291
294
|
type: Output
|
|
292
295
|
}] } });
|
|
293
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvcmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBR1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVILGFBQWEsRUFlaEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUszQyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsYUFBYTtJQWdFMUQsWUFDWSxjQUE2QixFQUM3QixJQUFzQixFQUN0QixTQUFtQixFQUNqQixHQUFlO1FBRXpCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUxILG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFNBQUksR0FBSixJQUFJLENBQWtCO1FBQ3RCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQTNCbkIsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFDOUQsNkJBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFFbkUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQzFDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN4QyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDekMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBeUIsQ0FBQztRQUNyRCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENB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c0I7c0JBQS9CLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdG9yLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQge1xuICAgIEFiYnJldmF0aW9uRGV2aWNlU2l6ZSxcbiAgICBCYXNlRGlyZWN0aXZlLFxuICAgIGNvbHVtbnNSZXNpemVkRXZlbnRBcmdzLFxuICAgIERlZmF1bHRDb21tYW5kc0FjY2VzcyxcbiAgICBEZXZpY2VTaXplLFxuICAgIEZvcm1TZXR0aW5nLFxuICAgIE1lbnVJdGVtLFxuICAgIE1ldGFvYmplY3REYXRhTW9kZWwsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBSZWxhdGlvbkl0ZW1UeXBlLFxuICAgIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50LFxuICAgIFJlcG9ydFZpZXdDb2x1bW4sXG4gICAgU29ydFNldHRpbmcsXG4gICAgVWlSZXBvcnRWaWV3QmFzZSxcbiAgICBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyxcbiAgICBTaGFyZUJ1dHRvbnNDaG9pY2VEZWZcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZXBvcnRWaWV3UmVuZGVyZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgdmlldzogVWlSZXBvcnRWaWV3QmFzZTtcbiAgICBASW5wdXQoKSBtb0RhdGFMaXN0OiBNZXRhb2JqZWN0RGF0YU1vZGVsW107XG4gICAgQElucHV0KCkgYWxsQ2hlY2tlZDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBncm91cGJ5OiBTb3J0U2V0dGluZ1tdO1xuICAgIEBJbnB1dCgpIGlzQ2hlY2tMaXN0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhhc1N1bW1hcnk6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcmVsYXRpb25MaXN0OiBBcnJheTxSZWxhdGlvbkl0ZW1UeXBlPjtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XG4gICAgQElucHV0KCkgY29sdW1uc0NvdW50OiBudW1iZXI7XG4gICAgQElucHV0KCkgc2Vjb25kYXJ5Q29sdW1uczogUmVwb3J0Vmlld0NvbHVtbltdO1xuICAgIEBJbnB1dCgpIGNvbnRleHRNZW51SXRlbXM6IE1lbnVJdGVtW107XG4gICAgQElucHV0KCkgY29uZGl0aW9uYWxGb3JtYXRzOiBhbnlbXTtcbiAgICBASW5wdXQoKSBkZXZpY2VOYW1lOiBEZXZpY2VTaXplO1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBASW5wdXQoKSBtb2JpbGVPclRhYmxldDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBhY2Nlc3M6IERlZmF1bHRDb21tYW5kc0FjY2VzcztcbiAgICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGN1c3RvbUZpZWxkSW5mbzogTWV0YW9iamVjdERhdGFNb2RlbCB8IGFueTtcbiAgICBASW5wdXQoKSBhbGxDb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XG4gICAgQElucHV0KCkgdmlld1NldHRpbmc6IFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nO1xuICAgIEBJbnB1dCgpIGlubGluZUVkaXRNb2RlOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG9ubHlJbmxpbmVFZGl0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGFsbG93SW5saW5lRWRpdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBwb3BpbjogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBmb3JtU2V0dGluZzogRm9ybVNldHRpbmc7XG4gICAgQElucHV0KCkgZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbmF2aWdhdGlvbkFycm93OiBzdHJpbmc7XG4gICAgQElucHV0KCkgdHlwZURlZklkOiBzdHJpbmc7XG4gICAgQElucHV0KCkgY29udGFpbmVyV2lkdGg6IG51bWJlcjtcbiAgICBASW5wdXQoKSBleHRyYVJlbGF0aW9uOiBhbnk7XG4gICAgQElucHV0KCkgY29udGV4dFZpZXc6IGFueTtcbiAgICBASW5wdXQoKSBjb250ZW50RGVuc2l0eTogQ29udGVudERlbnNpdHk7XG4gICAgQElucHV0KCkgaGlkZU9wZW5JY29uOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG9wZW5PbkNsaWNrOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGluRGlhbG9nOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGlzTXVsdGlTZWxlY3Q6IGJvb2xlYW47XG4gICAgQElucHV0KCkgZGlzYWJsZVJlc3BvbnNpdmU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgY2FydGFibGVUZW1wbGF0ZXM6IHsgW2tleTogc3RyaW5nXTogRm9ybVNldHRpbmcgfTtcbiAgICBASW5wdXQoKSBjYXJ0YWJsZUNoaWxkc01vOiB7IFtrZXk6IHN0cmluZ106IE1ldGFvYmplY3REYXRhTW9kZWwgfTtcblxuICAgIEBPdXRwdXQoKSBlZGl0Rm9ybVBhbmVsQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPigpO1xuICAgIEBPdXRwdXQoKSBlZGl0Rm9ybVBhbmVsVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG5cbiAgICBAT3V0cHV0KCkgdWx2Q29tbWFuZENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIHNvcnRBc2NlbmRpbmcgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgc29ydERlc2NlbmRpbmcgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgZmlsdGVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgQE91dHB1dCgpIGRlc2VsZWN0QWxsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSByb3dDaGVjayA9IG5ldyBFdmVudEVtaXR0ZXI8eyBtbzsgaW5kZXg7IGNhdXNlPyB9PigpO1xuICAgIEBPdXRwdXQoKSByb3dDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8eyBtbzsgaW5kZXggfT4oKTtcbiAgICBAT3V0cHV0KCkgZXhwYW5kQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIHRyYWNrQnlTZWxlY3RlZEZuID0gbmV3IEV2ZW50RW1pdHRlcjx7IGluZGV4OyByZWNvcmQgfT4oKTtcbiAgICBAT3V0cHV0KCkgY2FydGFibGVGb3JtQ2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx7IGluZGV4OyBtbyB9PigpO1xuICAgIEBPdXRwdXQoKSBjcmVhdGVOZXdNbyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgICBAT3V0cHV0KCkgdXBkYXRlTW8gPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIGFsbENoZWNrYm94ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICAgIEBPdXRwdXQoKSBtYW5kYXRvcnkgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gICAgQE91dHB1dCgpIGVkaXRGb3JtUGFuZWxTYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPigpO1xuICAgIEBPdXRwdXQoKSBjb2x1bW5SZXNpemVkID0gbmV3IEV2ZW50RW1pdHRlcjxjb2x1bW5zUmVzaXplZEV2ZW50QXJncz4oKTtcbiAgICBAT3V0cHV0KCkgc2VsZWN0TmV4dElubGluZVJlY29yZCA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgd29ya2Zsb3dTaGFyZUJ1dHRvbnMgPSBuZXcgRXZlbnRFbWl0dGVyPFNoYXJlQnV0dG9uc0Nob2ljZURlZj4oKTtcblxuICAgIF9yZXBvcnRWaWV3UmVmOiBDb21wb25lbnRSZWY8UmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8VWlSZXBvcnRWaWV3QmFzZVNldHRpbmc+PjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCBfZWw6IEVsZW1lbnRSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoX2VsKTtcbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHZpZXcgfSA9IGNoYW5nZXM7XG5cbiAgICAgICAgaWYgKHZpZXcgJiYgIXZpZXcuZmlyc3RDaGFuZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlcG9ydFZpZXdSZWYuZGVzdHJveSgpO1xuICAgICAgICAgICAgdGhpcy5fdmNyLmNsZWFyKCk7XG4gICAgICAgICAgICB0aGlzLl9pbnNlcnRWaWV3KHZpZXcuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9yZXBvcnRWaWV3UmVmKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVwb3J0Vmlld1JlZi5pbnN0YW5jZS5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5faW5zZXJ0Vmlldyh0aGlzLnZpZXcpO1xuICAgIH1cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fcmVwb3J0Vmlld1JlZj8uZGVzdHJveSgpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pbnNlcnRWaWV3KHZpZXcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF2aWV3KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgeyBNb2R1bGUsIE1vZHVsZUZpbGVOYW1lLCBOYW1lLCBTZWxlY3RvciB9ID0gdmlldy5VaUNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZVxuICAgICAgICAgICAgLmdldENvbXBvbmVudChNb2R1bGUsIE1vZHVsZUZpbGVOYW1lLCBOYW1lLCBTZWxlY3RvciwgdGhpcy5faW5qZWN0b3IpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4+KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY2FydGFibGVUZW1wbGF0ZXMgPSB0aGlzLmNhcnRhYmxlVGVtcGxhdGVzO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNhcnRhYmxlQ2hpbGRzTW8gPSB0aGlzLmNhcnRhYmxlQ2hpbGRzTW87XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UubW9EYXRhTGlzdCA9IHRoaXMubW9EYXRhTGlzdDtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5ncm91cGJ5ID0gdGhpcy5ncm91cGJ5O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmN1c3RvbUZpZWxkSW5mbyA9IHRoaXMuY3VzdG9tRmllbGRJbmZvO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRpc2FibGVSZXNwb25zaXZlID0gdGhpcy5kaXNhYmxlUmVzcG9uc2l2ZTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5wb3BpbiA9IHRoaXMucG9waW47XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29udGV4dFZpZXcgPSB0aGlzLmNvbnRleHRWaWV3O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmlzQ2hlY2tMaXN0ID0gdGhpcy5pc0NoZWNrTGlzdDtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb2x1bW5zID0gdGhpcy5jb2x1bW5zO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmluRGlhbG9nID0gdGhpcy5pbkRpYWxvZztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5pc011bHRpU2VsZWN0ID0gdGhpcy5pc011bHRpU2VsZWN0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbHVtbnNDb3VudCA9IHRoaXMuY29sdW1uc0NvdW50O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmV4dHJhUmVsYXRpb24gPSB0aGlzLmV4dHJhUmVsYXRpb247XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uuc2Vjb25kYXJ5Q29sdW1ucyA9IHRoaXMuc2Vjb25kYXJ5Q29sdW1ucztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb250ZXh0TWVudUl0ZW1zID0gdGhpcy5jb250ZXh0TWVudUl0ZW1zO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbmRpdGlvbmFsRm9ybWF0cyA9IHRoaXMuY29uZGl0aW9uYWxGb3JtYXRzO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51ID0gdGhpcy5kaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS50eXBlRGVmSWQgPSB0aGlzLnR5cGVEZWZJZDtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5kZXZpY2VOYW1lID0gdGhpcy5kZXZpY2VOYW1lO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRldmljZVNpemUgPSB0aGlzLmRldmljZVNpemU7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UubW9iaWxlT3JUYWJsZXQgPSB0aGlzLm1vYmlsZU9yVGFibGV0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbnRhaW5lcldpZHRoID0gdGhpcy5jb250YWluZXJXaWR0aDtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb2x1bW5zQ291bnQgPSB0aGlzLmNvbHVtbnNDb3VudDtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5oaWRlT3Blbkljb24gPSB0aGlzLmhpZGVPcGVuSWNvbjtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5vcGVuT25DbGljayA9IHRoaXMub3Blbk9uQ2xpY2s7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuYWNjZXNzID0gdGhpcy5hY2Nlc3M7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UudGl0bGUgPSB0aGlzLnRpdGxlO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmhhc1N1bW1hcnkgPSB0aGlzLmhhc1N1bW1hcnk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29udGVudERlbnNpdHkgPSB0aGlzLmNvbnRlbnREZW5zaXR5O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnJlbGF0aW9uTGlzdCA9IHRoaXMucmVsYXRpb25MaXN0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmFsbENvbHVtbnMgPSB0aGlzLmFsbENvbHVtbnMgPz8gdGhpcy5jb2x1bW5zO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnZpZXdTZXR0aW5nID0gdmlldy5VaUNvbXBvbmVudC5TZXR0aW5ncztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5pbmxpbmVFZGl0TW9kZSA9IHRoaXMuaW5saW5lRWRpdE1vZGU7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uub25seUlubGluZUVkaXQgPSB0aGlzLm9ubHlJbmxpbmVFZGl0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmFsbG93SW5saW5lRWRpdCA9IHRoaXMuYWxsb3dJbmxpbmVFZGl0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmZvcm1TZXR0aW5nID0gdGhpcy5mb3JtU2V0dGluZztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5uYXZpZ2F0aW9uQXJyb3cgPSB0aGlzLm5hdmlnYXRpb25BcnJvdztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5lZGl0Rm9ybVBhbmVsVmFsdWVDaGFuZ2U/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdEZvcm1QYW5lbFZhbHVlQ2hhbmdlLmVtaXQobW8pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnNlbGVjdE5leHRJbmxpbmVSZWNvcmQ/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0TmV4dElubGluZVJlY29yZC5lbWl0KG1vKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5lZGl0Rm9ybVBhbmVsQ2FuY2VsPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChtbykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVkaXRGb3JtUGFuZWxDYW5jZWwuZW1pdChtbyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UudWx2Q29tbWFuZENsaWNrPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudWx2Q29tbWFuZENsaWNrLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uuc29ydEFzY2VuZGluZz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNvcnRBc2NlbmRpbmcuZW1pdChlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5zb3J0RGVzY2VuZGluZz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNvcnREZXNjZW5kaW5nLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZmlsdGVyPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb2x1bW5SZXNpemVkPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29sdW1uUmVzaXplZC5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uucm93Q2hlY2s/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGU6IHsgbW87IGluZGV4OyBjYXVzZT8gfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvd0NoZWNrLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGVzZWxlY3RBbGw/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmRlc2VsZWN0QWxsLmVtaXQoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5yb3dDbGljaz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZTogeyBtbzsgaW5kZXggfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJvd0NsaWNrLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZXhwYW5kQ2xpY2s/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGU6IE1ldGFvYmplY3REYXRhTW9kZWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5leHBhbmRDbGljay5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmFsbENoZWNrYm94Py5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWxsQ2hlY2tib3guZW1pdChlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5lZGl0Rm9ybVBhbmVsU2F2ZT8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobW8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lZGl0Rm9ybVBhbmVsU2F2ZS5lbWl0KG1vKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jYXJ0YWJsZUZvcm1DbG9zZWQ/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGU6IHsgbW87IGluZGV4IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jYXJ0YWJsZUZvcm1DbG9zZWQuZW1pdChlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jcmVhdGVOZXdNbz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTmV3TW8uZW1pdCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnVwZGF0ZU1vPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChtbykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZU1vLmVtaXQobW8pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLm1hbmRhdG9yeT8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoaXNWYWxpZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1hbmRhdG9yeS5lbWl0KGlzVmFsaWQpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLndvcmtmbG93U2hhcmVCdXR0b25zXG4gICAgICAgICAgICAgICAgICAgID8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGU6IFNoYXJlQnV0dG9uc0Nob2ljZURlZikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy53b3JrZmxvd1NoYXJlQnV0dG9ucy5lbWl0KGUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLl92Y3IuaW5zZXJ0KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVwb3J0Vmlld1JlZiA9IGNvbXBvbmVudFJlZjtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
296
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvcmVwb3J0LXZpZXctcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBR1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUVILGFBQWEsRUFlaEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUszQyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsYUFBYTtJQWlFMUQsWUFDWSxjQUE2QixFQUM3QixJQUFzQixFQUN0QixTQUFtQixFQUNqQixHQUFlO1FBRXpCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUxILG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLFNBQUksR0FBSixJQUFJLENBQWtCO1FBQ3RCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQTNCbkIsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFDOUQsNkJBQXdCLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFFbkUsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQzFDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN4QyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDekMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBeUIsQ0FBQztRQUNyRCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENB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QkFBbEIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxzQkFBc0I7c0JBQS9CLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEluamVjdG9yLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDb250YWluZXJSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQge1xuICAgIEFiYnJldmF0aW9uRGV2aWNlU2l6ZSxcbiAgICBCYXNlRGlyZWN0aXZlLFxuICAgIGNvbHVtbnNSZXNpemVkRXZlbnRBcmdzLFxuICAgIERlZmF1bHRDb21tYW5kc0FjY2VzcyxcbiAgICBEZXZpY2VTaXplLFxuICAgIEZvcm1TZXR0aW5nLFxuICAgIE1lbnVJdGVtLFxuICAgIE1ldGFvYmplY3REYXRhTW9kZWwsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBSZWxhdGlvbkl0ZW1UeXBlLFxuICAgIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50LFxuICAgIFJlcG9ydFZpZXdDb2x1bW4sXG4gICAgU29ydFNldHRpbmcsXG4gICAgVWlSZXBvcnRWaWV3QmFzZSxcbiAgICBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyxcbiAgICBTaGFyZUJ1dHRvbnNDaG9pY2VEZWZcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tyZXBvcnRWaWV3UmVuZGVyZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBSZXBvcnRWaWV3UmVuZGVyZXJEaXJlY3RpdmUgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgdmlldzogVWlSZXBvcnRWaWV3QmFzZTtcbiAgICBASW5wdXQoKSBtb0RhdGFMaXN0OiBNZXRhb2JqZWN0RGF0YU1vZGVsW107XG4gICAgQElucHV0KCkgYWxsQ2hlY2tlZDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBncm91cGJ5OiBTb3J0U2V0dGluZ1tdO1xuICAgIEBJbnB1dCgpIGlzQ2hlY2tMaXN0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGhhc1N1bW1hcnk6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcmVsYXRpb25MaXN0OiBBcnJheTxSZWxhdGlvbkl0ZW1UeXBlPjtcbiAgICBASW5wdXQoKSBjb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XG4gICAgQElucHV0KCkgY29sdW1uc0NvdW50OiBudW1iZXI7XG4gICAgQElucHV0KCkgc2Vjb25kYXJ5Q29sdW1uczogUmVwb3J0Vmlld0NvbHVtbltdO1xuICAgIEBJbnB1dCgpIGNvbnRleHRNZW51SXRlbXM6IE1lbnVJdGVtW107XG4gICAgQElucHV0KCkgY29uZGl0aW9uYWxGb3JtYXRzOiBhbnlbXTtcbiAgICBASW5wdXQoKSBkZXZpY2VOYW1lOiBEZXZpY2VTaXplO1xuICAgIEBJbnB1dCgpIGRldmljZVNpemU6IEFiYnJldmF0aW9uRGV2aWNlU2l6ZTtcbiAgICBASW5wdXQoKSBtb2JpbGVPclRhYmxldDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBhY2Nlc3M6IERlZmF1bHRDb21tYW5kc0FjY2VzcztcbiAgICBASW5wdXQoKSB0aXRsZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGN1c3RvbUZpZWxkSW5mbzogTWV0YW9iamVjdERhdGFNb2RlbCB8IGFueTtcbiAgICBASW5wdXQoKSBzZWxlY3RlZE1vOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIEBJbnB1dCgpIGFsbENvbHVtbnM6IFJlcG9ydFZpZXdDb2x1bW5bXTtcbiAgICBASW5wdXQoKSB2aWV3U2V0dGluZzogVWlSZXBvcnRWaWV3QmFzZVNldHRpbmc7XG4gICAgQElucHV0KCkgaW5saW5lRWRpdE1vZGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgb25seUlubGluZUVkaXQ6IGJvb2xlYW47XG4gICAgQElucHV0KCkgYWxsb3dJbmxpbmVFZGl0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHBvcGluOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGZvcm1TZXR0aW5nOiBGb3JtU2V0dGluZztcbiAgICBASW5wdXQoKSBkaXNhYmxlT3ZlcmZsb3dDb250ZXh0TWVudTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBuYXZpZ2F0aW9uQXJyb3c6IHN0cmluZztcbiAgICBASW5wdXQoKSB0eXBlRGVmSWQ6IHN0cmluZztcbiAgICBASW5wdXQoKSBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuICAgIEBJbnB1dCgpIGV4dHJhUmVsYXRpb246IGFueTtcbiAgICBASW5wdXQoKSBjb250ZXh0VmlldzogYW55O1xuICAgIEBJbnB1dCgpIGNvbnRlbnREZW5zaXR5OiBDb250ZW50RGVuc2l0eTtcbiAgICBASW5wdXQoKSBoaWRlT3Blbkljb246IGJvb2xlYW47XG4gICAgQElucHV0KCkgb3Blbk9uQ2xpY2s6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaW5EaWFsb2c6IGJvb2xlYW47XG4gICAgQElucHV0KCkgaXNNdWx0aVNlbGVjdDogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBkaXNhYmxlUmVzcG9uc2l2ZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBjYXJ0YWJsZVRlbXBsYXRlczogeyBba2V5OiBzdHJpbmddOiBGb3JtU2V0dGluZyB9O1xuICAgIEBJbnB1dCgpIGNhcnRhYmxlQ2hpbGRzTW86IHsgW2tleTogc3RyaW5nXTogTWV0YW9iamVjdERhdGFNb2RlbCB9O1xuXG4gICAgQE91dHB1dCgpIGVkaXRGb3JtUGFuZWxDYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIGVkaXRGb3JtUGFuZWxWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcblxuICAgIEBPdXRwdXQoKSB1bHZDb21tYW5kQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgc29ydEFzY2VuZGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBzb3J0RGVzY2VuZGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBmaWx0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgZGVzZWxlY3RBbGwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIHJvd0NoZWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vOyBpbmRleDsgY2F1c2U/IH0+KCk7XG4gICAgQE91dHB1dCgpIHJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx7IG1vOyBpbmRleCB9PigpO1xuICAgIEBPdXRwdXQoKSBleHBhbmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgdHJhY2tCeVNlbGVjdGVkRm4gPSBuZXcgRXZlbnRFbWl0dGVyPHsgaW5kZXg7IHJlY29yZCB9PigpO1xuICAgIEBPdXRwdXQoKSBjYXJ0YWJsZUZvcm1DbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgaW5kZXg7IG1vIH0+KCk7XG4gICAgQE91dHB1dCgpIGNyZWF0ZU5ld01vID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKSB1cGRhdGVNbyA9IG5ldyBFdmVudEVtaXR0ZXI8TWV0YW9iamVjdERhdGFNb2RlbD4oKTtcbiAgICBAT3V0cHV0KCkgYWxsQ2hlY2tib3ggPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gICAgQE91dHB1dCgpIG1hbmRhdG9yeSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgICBAT3V0cHV0KCkgZWRpdEZvcm1QYW5lbFNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPE1ldGFvYmplY3REYXRhTW9kZWw+KCk7XG4gICAgQE91dHB1dCgpIGNvbHVtblJlc2l6ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGNvbHVtbnNSZXNpemVkRXZlbnRBcmdzPigpO1xuICAgIEBPdXRwdXQoKSBzZWxlY3ROZXh0SW5saW5lUmVjb3JkID0gbmV3IEV2ZW50RW1pdHRlcjxNZXRhb2JqZWN0RGF0YU1vZGVsPigpO1xuICAgIEBPdXRwdXQoKSB3b3JrZmxvd1NoYXJlQnV0dG9ucyA9IG5ldyBFdmVudEVtaXR0ZXI8U2hhcmVCdXR0b25zQ2hvaWNlRGVmPigpO1xuXG4gICAgX3JlcG9ydFZpZXdSZWY6IENvbXBvbmVudFJlZjxSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxVaVJlcG9ydFZpZXdCYXNlU2V0dGluZz4+O1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF92Y3I6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJvdGVjdGVkIF9lbDogRWxlbWVudFJlZlxuICAgICkge1xuICAgICAgICBzdXBlcihfZWwpO1xuICAgIH1cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgdmlldyB9ID0gY2hhbmdlcztcblxuICAgICAgICBpZiAodmlldyAmJiAhdmlldy5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5fcmVwb3J0Vmlld1JlZi5kZXN0cm95KCk7XG4gICAgICAgICAgICB0aGlzLl92Y3IuY2xlYXIoKTtcbiAgICAgICAgICAgIHRoaXMuX2luc2VydFZpZXcodmlldy5jdXJyZW50VmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3JlcG9ydFZpZXdSZWYpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9yZXBvcnRWaWV3UmVmLmluc3RhbmNlLm5nT25DaGFuZ2VzKGNoYW5nZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLl9pbnNlcnRWaWV3KHRoaXMudmlldyk7XG4gICAgfVxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9yZXBvcnRWaWV3UmVmPy5kZXN0cm95KCk7XG4gICAgfVxuICAgIHByaXZhdGUgX2luc2VydFZpZXcodmlldyk6IHZvaWQge1xuICAgICAgICBpZiAoIXZpZXcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB7IE1vZHVsZSwgTW9kdWxlRmlsZU5hbWUsIE5hbWUsIFNlbGVjdG9yIH0gPSB2aWV3LlVpQ29tcG9uZW50O1xuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KE1vZHVsZSwgTW9kdWxlRmlsZU5hbWUsIE5hbWUsIFNlbGVjdG9yLCB0aGlzLl9pbmplY3RvcilcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50PFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nPj4pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbnN0YW5jZSA9IGNvbXBvbmVudFJlZi5pbnN0YW5jZTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jYXJ0YWJsZVRlbXBsYXRlcyA9IHRoaXMuY2FydGFibGVUZW1wbGF0ZXM7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY2FydGFibGVDaGlsZHNNbyA9IHRoaXMuY2FydGFibGVDaGlsZHNNbztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5tb0RhdGFMaXN0ID0gdGhpcy5tb0RhdGFMaXN0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmdyb3VwYnkgPSB0aGlzLmdyb3VwYnk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY3VzdG9tRmllbGRJbmZvID0gdGhpcy5jdXN0b21GaWVsZEluZm87XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGlzYWJsZVJlc3BvbnNpdmUgPSB0aGlzLmRpc2FibGVSZXNwb25zaXZlO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnBvcGluID0gdGhpcy5wb3BpbjtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb250ZXh0VmlldyA9IHRoaXMuY29udGV4dFZpZXc7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuaXNDaGVja0xpc3QgPSB0aGlzLmlzQ2hlY2tMaXN0O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbHVtbnMgPSB0aGlzLmNvbHVtbnM7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuaW5EaWFsb2cgPSB0aGlzLmluRGlhbG9nO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmlzTXVsdGlTZWxlY3QgPSB0aGlzLmlzTXVsdGlTZWxlY3Q7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29sdW1uc0NvdW50ID0gdGhpcy5jb2x1bW5zQ291bnQ7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZXh0cmFSZWxhdGlvbiA9IHRoaXMuZXh0cmFSZWxhdGlvbjtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5zZWNvbmRhcnlDb2x1bW5zID0gdGhpcy5zZWNvbmRhcnlDb2x1bW5zO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbnRleHRNZW51SXRlbXMgPSB0aGlzLmNvbnRleHRNZW51SXRlbXM7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29uZGl0aW9uYWxGb3JtYXRzID0gdGhpcy5jb25kaXRpb25hbEZvcm1hdHM7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGlzYWJsZU92ZXJmbG93Q29udGV4dE1lbnUgPSB0aGlzLmRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnR5cGVEZWZJZCA9IHRoaXMudHlwZURlZklkO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRldmljZU5hbWUgPSB0aGlzLmRldmljZU5hbWU7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGV2aWNlU2l6ZSA9IHRoaXMuZGV2aWNlU2l6ZTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5tb2JpbGVPclRhYmxldCA9IHRoaXMubW9iaWxlT3JUYWJsZXQ7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29udGFpbmVyV2lkdGggPSB0aGlzLmNvbnRhaW5lcldpZHRoO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmNvbHVtbnNDb3VudCA9IHRoaXMuY29sdW1uc0NvdW50O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmhpZGVPcGVuSWNvbiA9IHRoaXMuaGlkZU9wZW5JY29uO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLm9wZW5PbkNsaWNrID0gdGhpcy5vcGVuT25DbGljaztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5hY2Nlc3MgPSB0aGlzLmFjY2VzcztcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS50aXRsZSA9IHRoaXMudGl0bGU7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuaGFzU3VtbWFyeSA9IHRoaXMuaGFzU3VtbWFyeTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5jb250ZW50RGVuc2l0eSA9IHRoaXMuY29udGVudERlbnNpdHk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UucmVsYXRpb25MaXN0ID0gdGhpcy5yZWxhdGlvbkxpc3Q7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuYWxsQ29sdW1ucyA9IHRoaXMuYWxsQ29sdW1ucyA/PyB0aGlzLmNvbHVtbnM7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uudmlld1NldHRpbmcgPSB2aWV3LlVpQ29tcG9uZW50LlNldHRpbmdzO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmlubGluZUVkaXRNb2RlID0gdGhpcy5pbmxpbmVFZGl0TW9kZTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5vbmx5SW5saW5lRWRpdCA9IHRoaXMub25seUlubGluZUVkaXQ7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuYWxsb3dJbmxpbmVFZGl0ID0gdGhpcy5hbGxvd0lubGluZUVkaXQ7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZm9ybVNldHRpbmcgPSB0aGlzLmZvcm1TZXR0aW5nO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLm5hdmlnYXRpb25BcnJvdyA9IHRoaXMubmF2aWdhdGlvbkFycm93O1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnNlbGVjdGVkTW8gPSB0aGlzLnNlbGVjdGVkTW87XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZWRpdEZvcm1QYW5lbFZhbHVlQ2hhbmdlPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChtbykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVkaXRGb3JtUGFuZWxWYWx1ZUNoYW5nZS5lbWl0KG1vKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5zZWxlY3ROZXh0SW5saW5lUmVjb3JkPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChtbykgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdE5leHRJbmxpbmVSZWNvcmQuZW1pdChtbyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZWRpdEZvcm1QYW5lbENhbmNlbD8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobW8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lZGl0Rm9ybVBhbmVsQ2FuY2VsLmVtaXQobW8pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnVsdkNvbW1hbmRDbGljaz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVsdkNvbW1hbmRDbGljay5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnNvcnRBc2NlbmRpbmc/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0QXNjZW5kaW5nLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uuc29ydERlc2NlbmRpbmc/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zb3J0RGVzY2VuZGluZy5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmZpbHRlcj8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlci5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY29sdW1uUmVzaXplZD8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbHVtblJlc2l6ZWQuZW1pdChlKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGluc3RhbmNlLnJvd0NoZWNrPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlOiB7IG1vOyBpbmRleDsgY2F1c2U/IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3dDaGVjay5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRlc2VsZWN0QWxsPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5kZXNlbGVjdEFsbC5lbWl0KCk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2Uucm93Q2xpY2s/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGU6IHsgbW87IGluZGV4IH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yb3dDbGljay5lbWl0KGUpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmV4cGFuZENsaWNrPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlOiBNZXRhb2JqZWN0RGF0YU1vZGVsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXhwYW5kQ2xpY2suZW1pdChlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5hbGxDaGVja2JveD8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFsbENoZWNrYm94LmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZWRpdEZvcm1QYW5lbFNhdmU/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZWRpdEZvcm1QYW5lbFNhdmUuZW1pdChtbyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY2FydGFibGVGb3JtQ2xvc2VkPy5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlOiB7IG1vOyBpbmRleCB9KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2FydGFibGVGb3JtQ2xvc2VkLmVtaXQoZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuY3JlYXRlTmV3TW8/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU5ld01vLmVtaXQoKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS51cGRhdGVNbz8ucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobW8pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVNby5lbWl0KG1vKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5tYW5kYXRvcnk/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGlzVmFsaWQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tYW5kYXRvcnkuZW1pdChpc1ZhbGlkKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS53b3JrZmxvd1NoYXJlQnV0dG9uc1xuICAgICAgICAgICAgICAgICAgICA/LnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChlOiBTaGFyZUJ1dHRvbnNDaG9pY2VEZWYpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMud29ya2Zsb3dTaGFyZUJ1dHRvbnMuZW1pdChlKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmNyLmluc2VydChjb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlcG9ydFZpZXdSZWYgPSBjb21wb25lbnRSZWY7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|