@sd-angular/core 1.3.108 → 1.3.109
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/bundles/sd-angular-core-grid-material.umd.js +2 -2
- package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
- package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
- package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.service.js +3 -3
- package/fesm2015/sd-angular-core-grid-material.js +2 -2
- package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.3.108.tgz → sd-angular-core-1.3.109.tgz} +0 -0
|
@@ -16,8 +16,8 @@ export class SdGridFilterService {
|
|
|
16
16
|
const { id, columns, externalFilters } = args;
|
|
17
17
|
key = hash({
|
|
18
18
|
id,
|
|
19
|
-
columns: columns.map(e => e.field).filter(field => !!field),
|
|
20
|
-
externalFilters: externalFilters.map(e => e.field).filter(field => !!field),
|
|
19
|
+
columns: (columns === null || columns === void 0 ? void 0 : columns.map(e => e.field).filter(field => !!field)) || [],
|
|
20
|
+
externalFilters: (externalFilters === null || externalFilters === void 0 ? void 0 : externalFilters.map(e => e.field).filter(field => !!field)) || [],
|
|
21
21
|
});
|
|
22
22
|
cacheSession = true; // Nếu không có key thì chỉ lưu theo session
|
|
23
23
|
}
|
|
@@ -222,4 +222,4 @@ SdGridFilterService.decorators = [
|
|
|
222
222
|
SdGridFilterService.ctorParameters = () => [
|
|
223
223
|
{ type: SdSettingService }
|
|
224
224
|
];
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1maWx0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2dyaWQtbWF0ZXJpYWwvIiwic291cmNlcyI6WyJzcmMvbGliL3NlcnZpY2VzL2dyaWQtZmlsdGVyL2dyaWQtZmlsdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVM1RCxPQUFPLEVBQWdCLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5RCxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQW9CLGNBQWdDO1FBQWhDLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUhwRCwrQkFBdUIsMkJBQTJCLEVBQUM7UUFDbkQsdUJBQWUsbUJBQW1CLEVBQUM7UUFDbkMsaUJBQXVELEVBQUUsRUFBQztRQUUxRCxhQUFRLEdBQUcsQ0FDVCxHQUFXLEVBQ1gsSUFLQyxFQUNELEVBQUU7WUFDRixJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDUixNQUFNLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUM7Z0JBQzlDLEdBQUcsR0FBRyxJQUFJLENBQUM7b0JBQ1QsRUFBRTtvQkFDRixPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO29CQUMzRCxlQUFlLEVBQUUsZUFBZSxDQUFDLEdBQUcsQ0FBQyxD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UyxDQUFDO2FBQ2pHO1lBQ0QsT0FBTztnQkFDTCxnQkFBZ0I7Z0JBQ2hCLFlBQVk7Z0JBQ1osa0JBQWtCO2dCQUNsQixjQUFjO2dCQUNkLGFBQWE7Z0JBQ2IsU0FBUzthQUNWLENBQUM7UUFDSixDQUFDLEVBQUM7SUFsUHNELENBQUM7Ozs7WUFMMUQsVUFBVTs7O1lBWEYsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgaGFzaCBmcm9tICdvYmplY3QtaGFzaCc7XHJcbmltcG9ydCB7IFNkU2V0dGluZ1NlcnZpY2UgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3NldHRpbmcnO1xyXG5pbXBvcnQge1xyXG4gIFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXIsXHJcbiAgU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uLFxyXG4gIFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXIsXHJcbiAgU2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZSxcclxufSBmcm9tICcuL2dyaWQtZmlsdGVyLm1vZGVsJztcclxuaW1wb3J0IHsgU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvZ3JpZC1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZE1hdGVyaWFsRmlsdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1maWx0ZXItZGVmLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTZEdyaWRGaWx0ZXJTZXJ2aWNlIHtcclxuICAjZmlsdGVyQ29uZmlndXJhdGlvbiA9ICdHUklELUZJTFRFUi1DT05GSUdVUkFUSU9OJztcclxuICAjZmlsdGVyVmFsdWUgPSAnR1JJRC1GSUxURVItVkFMVUUnO1xyXG4gICNjYWNoZTogUmVjb3JkPHN0cmluZywgU2RHcmlkTWF0ZXJpYWxGaWx0ZXJSZWdpc3Rlcj4gPSB7fTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNldHRpbmdTZXJ2aWNlOiBTZFNldHRpbmdTZXJ2aWNlKSB7IH1cclxuICByZWdpc3RlciA9IChcclxuICAgIGtleTogc3RyaW5nLFxyXG4gICAgYXJnczoge1xyXG4gICAgICBpZDogc3RyaW5nO1xyXG4gICAgICBjb2x1bW5zOiBTZEdyaWRNYXRlcmlhbENvbHVtbltdO1xyXG4gICAgICBleHRlcm5hbEZpbHRlcnM6IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXJbXTtcclxuICAgICAgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdO1xyXG4gICAgfVxyXG4gICkgPT4ge1xyXG4gICAgbGV0IGNhY2hlU2Vzc2lvbiA9IGZhbHNlO1xyXG4gICAgaWYgKCFrZXkpIHtcclxuICAgICAgY29uc3QgeyBpZCwgY29sdW1ucywgZXh0ZXJuYWxGaWx0ZXJzIH0gPSBhcmdzO1xyXG4gICAgICBrZXkgPSBoYXNoKHtcclxuICAgICAgICBpZCxcclxuICAgICAgICBjb2x1bW5zOiBjb2x1bW5zLm1hcChlID0+IGUuZmllbGQpLmZpbHRlcihmaWVsZCA9PiAhIWZpZWxkKSxcclxuICAgICAgICBleHRlcm5hbEZpbHRlcnM6IGV4dGVybmFsRmlsdGVycy5tYXAoZSA9PiBlLmZpZWxkKS5maWx0ZXIoZmllbGQgPT4gISFmaWVsZCksXHJcbiAgICAgIH0pO1xyXG4gICAgICBjYWNoZVNlc3Npb24gPSB0cnVlOyAvLyBO4bq/dSBraMO0bmcgY8OzIGtleSB0aMOsIGNo4buJIGzGsHUgdGhlbyBzZXNzaW9uXHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuI2NhY2hlW2tleV0pIHtcclxuICAgICAgLy8gU2V0dGluZyBj4bunYSBmaWx0ZXIgY29uZmlndXJhdGlvblxyXG4gICAgICBjb25zdCBmaWx0ZXJDb25maWd1cmF0aW9uID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGU8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uPihcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcmVmaXg6IHRoaXMuI2ZpbHRlckNvbmZpZ3VyYXRpb24sXHJcbiAgICAgICAgICBrZXksXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkZWZhdWx0OiB0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSxcclxuICAgICAgICAgIHR5cGU6IGNhY2hlU2Vzc2lvbiA/ICdzZXNzaW9uJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIC8vIEzhuqV5IGdpw6EgdHLhu4sgY29uZmlndXJhdGlvbiBtZXJnZSB24bubaSBnacOhIHRy4buLIGRlZmF1bHRTaG93aW5nIGPhu6dhIGFyZ3MgbuG6v3UgbmjGsCBhcmdzIGPDsyB0aGF5IMSR4buVaVxyXG4gICAgICBmaWx0ZXJDb25maWd1cmF0aW9uLnNldCh0aGlzLiNpbml0Q29uZmlndXJhdGlvbihhcmdzLCBmaWx0ZXJDb25maWd1cmF0aW9uLmdldCgpKSk7XHJcbiAgICAgIC8vIFNldHRpbmcgY+G7p2EgZmlsdGVyIHZhbHVlXHJcbiAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGU8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZT4oXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJlZml4OiB0aGlzLiNmaWx0ZXJWYWx1ZSxcclxuICAgICAgICAgIGtleSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGRlZmF1bHQ6IHRoaXMuI2RlZmF1bHRWYWx1ZShhcmdzKSxcclxuICAgICAgICAgIHR5cGU6IGNhY2hlU2Vzc2lvbiA/ICdzZXNzaW9uJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIC8vIEzhuqV5IGdpw6EgdHLhu4sgdmFsdWUgbWVyZ2UgduG7m2kgZ2nDoSB0cuG7iyBkZWZhdWx0IGPhu6dhIGFyZ3MgbuG6v3UgbmjGsCBhcmdzIGPDsyB0aGF5IMSR4buVaVxyXG4gICAgICBmaWx0ZXJWYWx1ZS5zZXQodGhpcy4jaW5pdFZhbHVlKGFyZ3MsIGZpbHRlclZhbHVlLmdldCgpKSk7XHJcbiAgICAgIHRoaXMuI2NhY2hlW2tleV0gPSB7XHJcbiAgICAgICAgY29uZmlndXJhdGlvbjoge1xyXG4gICAgICAgICAgZ2V0OiAoKTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGZpbHRlckNvbmZpZ3VyYXRpb24uZ2V0KCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgc2V0OiAoY29uZmlndXJhdGlvbjogUGFydGlhbDxTZEdyaWRNYXRlcmlhbEZpbHRlckNvbmZpZ3VyYXRpb24+KTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgICAgICAgY29uc3QgeyBpbmxpbmVDb2x1bW4sIGlubGluZUV4dGVybmFsLCBpbmxpbmVGaWx0ZXJEZWYgfSA9IGNvbmZpZ3VyYXRpb247XHJcbiAgICAgICAgICAgIGZpbHRlckNvbmZpZ3VyYXRpb24uc2V0KHtcclxuICAgICAgICAgICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgICAgICAgICAgaW5saW5lRXh0ZXJuYWwsXHJcbiAgICAgICAgICAgICAgaW5saW5lRmlsdGVyRGVmLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgICAgICAgICAgaW5saW5lRXh0ZXJuYWwsXHJcbiAgICAgICAgICAgICAgaW5saW5lRmlsdGVyRGVmLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHJlbW92ZTogKCkgPT4ge1xyXG4gICAgICAgICAgICBmaWx0ZXJDb25maWd1cmF0aW9uLnNldCh0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JzZXJ2ZXI6IGZpbHRlckNvbmZpZ3VyYXRpb24ub2JzZXJ2ZXIucGlwZShcclxuICAgICAgICAgICAgc3RhcnRXaXRoKGZpbHRlckNvbmZpZ3VyYXRpb24uZ2V0KCkpLFxyXG4gICAgICAgICAgICAvLyBT4butIGThu6VuZyBt4bq3YyDEkeG7i25oIG7hur91IGLhu4sgcmVzZXRcclxuICAgICAgICAgICAgbWFwKGNvbmZpZ3VyYXRpb24gPT4gY29uZmlndXJhdGlvbiB8fCB0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSlcclxuICAgICAgICAgICksXHJcbiAgICAgICAgfSxcclxuICAgICAgICB2YWx1ZToge1xyXG4gICAgICAgICAgZ2V0OiAoKTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJWYWx1ZS5nZXQoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBzZXQ6ICh2YWx1ZTogUGFydGlhbDxTZEdyaWRNYXRlcmlhbEZpbHRlclZhbHVlPik6IFNkR3JpZE1hdGVyaWFsRmlsdGVyVmFsdWUgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModmFsdWUgfHwge30pO1xyXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50ID0gZmlsdGVyVmFsdWUuZ2V0KCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgY29sdW1uRmlsdGVyLCBleHRlcm5hbEZpbHRlciwgZmlsdGVyRGVmIH0gPSBjdXJyZW50O1xyXG4gICAgICAgICAgICBjb25zdCB1cGRhdGVkRmlsdGVyID0ge1xyXG4gICAgICAgICAgICAgIC8vIEZpbHRlciBjb2x1bW5cclxuICAgICAgICAgICAgICBjb2x1bW5GaWx0ZXI6IGtleXMuaW5jbHVkZXMoJ2NvbHVtbkZpbHRlcicpID8gdmFsdWU/LmNvbHVtbkZpbHRlciB8fCB7fSA6IGNvbHVtbkZpbHRlcixcclxuICAgICAgICAgICAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgICAgICAgICAgICBleHRlcm5hbEZpbHRlcjoga2V5cy5pbmNsdWRlcygnZXh0ZXJuYWxGaWx0ZXInKSA/IHZhbHVlPy5leHRlcm5hbEZpbHRlciB8fCB7fSA6IGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAgICAgICAgIC8vIEZpbHRlciBkZWZcclxuICAgICAgICAgICAgICBmaWx0ZXJEZWY6IGtleXMuaW5jbHVkZXMoJ2ZpbHRlckRlZicpID8gdmFsdWU/LmZpbHRlckRlZiB8fCB7fSA6IGZpbHRlckRlZixcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgZmlsdGVyVmFsdWUuc2V0KHVwZGF0ZWRGaWx0ZXIpO1xyXG4gICAgICAgICAgICByZXR1cm4gdXBkYXRlZEZpbHRlcjtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICByZW1vdmU6ICgpID0+IHtcclxuICAgICAgICAgICAgZmlsdGVyVmFsdWUuc2V0KHRoaXMuI2RlZmF1bHRWYWx1ZShhcmdzKSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JzZXJ2ZXI6IGZpbHRlclZhbHVlLm9ic2VydmVyLnBpcGUoXHJcbiAgICAgICAgICAgIHN0YXJ0V2l0aChmaWx0ZXJWYWx1ZS5nZXQoKSksXHJcbiAgICAgICAgICAgIC8vIFPhu60gZOG7pW5nIG3hurdjIMSR4buLbmggbuG6v3UgYuG7iyByZXNldFxyXG4gICAgICAgICAgICBtYXAodmFsdWUgPT4gdmFsdWUgfHwgdGhpcy4jZGVmYXVsdFZhbHVlKGFyZ3MpKVxyXG4gICAgICAgICAgKSxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuI2NhY2hlW2tleV07XHJcbiAgfTtcclxuXHJcbiAgI2RlZmF1bHRDb25maWd1cmF0aW9uID0gKGFyZ3M6IHtcclxuICAgIGNvbHVtbnM6IFNkR3JpZE1hdGVyaWFsQ29sdW1uW107XHJcbiAgICBleHRlcm5hbEZpbHRlcnM6IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXJbXTtcclxuICAgIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXTtcclxuICB9KTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgIGNvbnN0IHsgY29sdW1ucywgZXh0ZXJuYWxGaWx0ZXJzLCBmaWx0ZXJEZWZzIH0gPSBhcmdzO1xyXG4gICAgY29uc3QgaW5saW5lQ29sdW1uOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgY29uc3QgaW5saW5lRXh0ZXJuYWw6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgICBjb25zdCBpbmxpbmVGaWx0ZXJEZWY6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgY29sdW1ucyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVDb2x1bW5baXRlbS5maWVsZF0gPSBpdGVtPy5maWx0ZXI/LmRlZmF1bHRTaG93aW5nO1xyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZXh0ZXJuYWxGaWx0ZXJzIHx8IFtdKSB7XHJcbiAgICAgIGlubGluZUV4dGVybmFsW2l0ZW0uZmllbGRdID0gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZmlsdGVyRGVmcyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWZbaXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA9IGl0ZW0/LmRlZmF1bHRTaG93aW5nO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgLy8gRmlsdGVyIGNvbHVtblxyXG4gICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgIC8vIEZpbHRlciBleHRlcm5hbFxyXG4gICAgICBpbmxpbmVFeHRlcm5hbCxcclxuICAgICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWYsXHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gICNkZWZhdWx0VmFsdWUgPSAoYXJnczoge1xyXG4gICAgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXTtcclxuICAgIGV4dGVybmFsRmlsdGVyczogU2RHcmlkTWF0ZXJpYWxFeHRlcm5hbEZpbHRlcltdO1xyXG4gICAgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdO1xyXG4gIH0pOiBTZEdyaWRNYXRlcmlhbEZpbHRlclZhbHVlID0+IHtcclxuICAgIGNvbnN0IGNvbHVtbkZpbHRlcjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgZXh0ZXJuYWxGaWx0ZXI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuICAgIGNvbnN0IGZpbHRlckRlZjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgeyBjb2x1bW5zLCBleHRlcm5hbEZpbHRlcnMsIGZpbHRlckRlZnMgfSA9IGFyZ3M7XHJcbiAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgY29sdW1ucyB8fCBbXSkge1xyXG4gICAgICBjb2x1bW5GaWx0ZXJbaXRlbS5maWVsZF0gPSBpdGVtPy5maWx0ZXI/LmRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBleHRlcm5hbEZpbHRlcnMgfHwgW10pIHtcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXJbaXRlbS5maWVsZF0gPSBpdGVtPy5kZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGZpbHRlckRlZnMgfHwgW10pIHtcclxuICAgICAgZmlsdGVyRGVmW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGNvbHVtbkZpbHRlcixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgI2luaXRDb25maWd1cmF0aW9uID0gKFxyXG4gICAgYXJnczoge1xyXG4gICAgICBjb2x1bW5zOiBTZEdyaWRNYXRlcmlhbENvbHVtbltdO1xyXG4gICAgICBleHRlcm5hbEZpbHRlcnM6IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXJbXTtcclxuICAgICAgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdO1xyXG4gICAgfSxcclxuICAgIGNvbmZpZ3VyYXRpb246IFNkR3JpZE1hdGVyaWFsRmlsdGVyQ29uZmlndXJhdGlvblxyXG4gICk6IFNkR3JpZE1hdGVyaWFsRmlsdGVyQ29uZmlndXJhdGlvbiA9PiB7XHJcbiAgICBjb25zdCB7IGNvbHVtbnMsIGV4dGVybmFsRmlsdGVycywgZmlsdGVyRGVmcyB9ID0gYXJncztcclxuICAgIGNvbnN0IGlubGluZUNvbHVtbjogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSB7fTtcclxuICAgIGNvbnN0IGlubGluZUV4dGVybmFsOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgY29uc3QgaW5saW5lRmlsdGVyRGVmOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgLy8gRmlsdGVyIGNvbHVtblxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGNvbHVtbnMgfHwgW10pIHtcclxuICAgICAgaW5saW5lQ29sdW1uW2l0ZW0uZmllbGRdID0gY29uZmlndXJhdGlvbj8uaW5saW5lQ29sdW1uPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZmlsdGVyPy5kZWZhdWx0U2hvd2luZztcclxuICAgIH1cclxuICAgIC8vIEZpbHRlciBleHRlcm5hbFxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGV4dGVybmFsRmlsdGVycyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVFeHRlcm5hbFtpdGVtLmZpZWxkXSA9IGNvbmZpZ3VyYXRpb24/LmlubGluZUV4dGVybmFsPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZmlsdGVyRGVmcyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWZbaXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA9IGNvbmZpZ3VyYXRpb24/LmlubGluZUZpbHRlckRlZj8uW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPz8gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGlubGluZUNvbHVtbixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGlubGluZUV4dGVybmFsLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGlubGluZUZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgI2luaXRWYWx1ZSA9IChcclxuICAgIGFyZ3M6IHtcclxuICAgICAgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXTtcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXJzOiBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyW107XHJcbiAgICAgIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXTtcclxuICAgIH0sXHJcbiAgICB2YWx1ZTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZVxyXG4gICk6IFNkR3JpZE1hdGVyaWFsRmlsdGVyVmFsdWUgPT4ge1xyXG4gICAgY29uc3QgY29sdW1uRmlsdGVyOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcbiAgICBjb25zdCBleHRlcm5hbEZpbHRlcjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgZmlsdGVyRGVmOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcbiAgICBjb25zdCB7IGNvbHVtbnMsIGV4dGVybmFsRmlsdGVycywgZmlsdGVyRGVmcyB9ID0gYXJncztcclxuICAgIC8vIEZpbHRlciBjb2x1bW5cclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBjb2x1bW5zIHx8IFtdKSB7XHJcbiAgICAgIGNvbHVtbkZpbHRlcltpdGVtLmZpZWxkXSA9IHZhbHVlPy5jb2x1bW5GaWx0ZXI/LltpdGVtLmZpZWxkXSA/PyBpdGVtPy5maWx0ZXI/LmRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBleHRlcm5hbEZpbHRlcnMgfHwgW10pIHtcclxuICAgICAgaWYgKGl0ZW0udHlwZSA9PT0gJ2RhdGVyYW5nZScpIHtcclxuICAgICAgICBleHRlcm5hbEZpbHRlcltpdGVtLmZpZWxkXSA9IHtcclxuICAgICAgICAgIGZyb206IHZhbHVlPy5leHRlcm5hbEZpbHRlcj8uW2l0ZW0uZmllbGRdPy5mcm9tID8/IGl0ZW0uZGVmYXVsdD8uZnJvbSxcclxuICAgICAgICAgIHRvOiB2YWx1ZT8uZXh0ZXJuYWxGaWx0ZXI/LltpdGVtLmZpZWxkXT8udG8gPz8gaXRlbS5kZWZhdWx0Py50byxcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGV4dGVybmFsRmlsdGVyW2l0ZW0uZmllbGRdID0gdmFsdWU/LmV4dGVybmFsRmlsdGVyPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGZpbHRlckRlZnMgfHwgW10pIHtcclxuICAgICAgZmlsdGVyRGVmW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPSB2YWx1ZT8uZmlsdGVyRGVmPy5baXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGNvbHVtbkZpbHRlcixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1maWx0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy91c2VyL0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2dyaWQtbWF0ZXJpYWwvIiwic291cmNlcyI6WyJzcmMvbGliL3NlcnZpY2VzL2dyaWQtZmlsdGVyL2dyaWQtZmlsdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVM1RCxPQUFPLEVBQWdCLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUc5RCxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQW9CLGNBQWdDO1FBQWhDLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUhwRCwrQkFBdUIsMkJBQTJCLEVBQUM7UUFDbkQsdUJBQWUsbUJBQW1CLEVBQUM7UUFDbkMsaUJBQXVELEVBQUUsRUFBQztRQUUxRCxhQUFRLEdBQUcsQ0FDVCxHQUFXLEVBQ1gsSUFLQyxFQUNELEVBQUU7WUFDRixJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDekIsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDUixNQUFNLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUM7Z0JBQzlDLEdBQUcsR0FBRyxJQUFJLENBQUM7b0JBQ1QsRUFBRTtvQkFDRixPQUFPLEVBQUUsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxNQUFLLEVBQUU7b0JBQ2xFLGVBQWUs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QkFBTCxLQUFLLENBQUUsU0FBUywwQ0FBRyxJQUFJLENBQUMsbUJBQW1CLG9DQUFLLFNBQVMsQ0FBQzthQUNqRztZQUNELE9BQU87Z0JBQ0wsZ0JBQWdCO2dCQUNoQixZQUFZO2dCQUNaLGtCQUFrQjtnQkFDbEIsY0FBYztnQkFDZCxhQUFhO2dCQUNiLFNBQVM7YUFDVixDQUFDO1FBQ0osQ0FBQyxFQUFDO0lBbFBzRCxDQUFDOzs7O1lBTDFELFVBQVU7OztZQVhGLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGhhc2ggZnJvbSAnb2JqZWN0LWhhc2gnO1xyXG5pbXBvcnQgeyBTZFNldHRpbmdTZXJ2aWNlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9zZXR0aW5nJztcclxuaW1wb3J0IHtcclxuICBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyLFxyXG4gIFNkR3JpZE1hdGVyaWFsRmlsdGVyQ29uZmlndXJhdGlvbixcclxuICBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyLFxyXG4gIFNkR3JpZE1hdGVyaWFsRmlsdGVyVmFsdWUsXHJcbn0gZnJvbSAnLi9ncmlkLWZpbHRlci5tb2RlbCc7XHJcbmltcG9ydCB7IFNkR3JpZE1hdGVyaWFsQ29sdW1uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dyaWQtY29sdW1uLm1vZGVsJztcclxuaW1wb3J0IHsgU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvc2QtbWF0ZXJpYWwtZmlsdGVyLWRlZi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIG1hcCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgU2RHcmlkRmlsdGVyU2VydmljZSB7XHJcbiAgI2ZpbHRlckNvbmZpZ3VyYXRpb24gPSAnR1JJRC1GSUxURVItQ09ORklHVVJBVElPTic7XHJcbiAgI2ZpbHRlclZhbHVlID0gJ0dSSUQtRklMVEVSLVZBTFVFJztcclxuICAjY2FjaGU6IFJlY29yZDxzdHJpbmcsIFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXI+ID0ge307XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzZXR0aW5nU2VydmljZTogU2RTZXR0aW5nU2VydmljZSkgeyB9XHJcbiAgcmVnaXN0ZXIgPSAoXHJcbiAgICBrZXk6IHN0cmluZyxcclxuICAgIGFyZ3M6IHtcclxuICAgICAgaWQ6IHN0cmluZztcclxuICAgICAgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXTtcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXJzOiBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyW107XHJcbiAgICAgIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXTtcclxuICAgIH1cclxuICApID0+IHtcclxuICAgIGxldCBjYWNoZVNlc3Npb24gPSBmYWxzZTtcclxuICAgIGlmICgha2V5KSB7XHJcbiAgICAgIGNvbnN0IHsgaWQsIGNvbHVtbnMsIGV4dGVybmFsRmlsdGVycyB9ID0gYXJncztcclxuICAgICAga2V5ID0gaGFzaCh7XHJcbiAgICAgICAgaWQsXHJcbiAgICAgICAgY29sdW1uczogY29sdW1ucz8ubWFwKGUgPT4gZS5maWVsZCkuZmlsdGVyKGZpZWxkID0+ICEhZmllbGQpIHx8IFtdLFxyXG4gICAgICAgIGV4dGVybmFsRmlsdGVyczogZXh0ZXJuYWxGaWx0ZXJzPy5tYXAoZSA9PiBlLmZpZWxkKS5maWx0ZXIoZmllbGQgPT4gISFmaWVsZCkgfHwgW10sXHJcbiAgICAgIH0pO1xyXG4gICAgICBjYWNoZVNlc3Npb24gPSB0cnVlOyAvLyBO4bq/dSBraMO0bmcgY8OzIGtleSB0aMOsIGNo4buJIGzGsHUgdGhlbyBzZXNzaW9uXHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMuI2NhY2hlW2tleV0pIHtcclxuICAgICAgLy8gU2V0dGluZyBj4bunYSBmaWx0ZXIgY29uZmlndXJhdGlvblxyXG4gICAgICBjb25zdCBmaWx0ZXJDb25maWd1cmF0aW9uID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGU8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uPihcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcmVmaXg6IHRoaXMuI2ZpbHRlckNvbmZpZ3VyYXRpb24sXHJcbiAgICAgICAgICBrZXksXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkZWZhdWx0OiB0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSxcclxuICAgICAgICAgIHR5cGU6IGNhY2hlU2Vzc2lvbiA/ICdzZXNzaW9uJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIC8vIEzhuqV5IGdpw6EgdHLhu4sgY29uZmlndXJhdGlvbiBtZXJnZSB24bubaSBnacOhIHRy4buLIGRlZmF1bHRTaG93aW5nIGPhu6dhIGFyZ3MgbuG6v3UgbmjGsCBhcmdzIGPDsyB0aGF5IMSR4buVaVxyXG4gICAgICBmaWx0ZXJDb25maWd1cmF0aW9uLnNldCh0aGlzLiNpbml0Q29uZmlndXJhdGlvbihhcmdzLCBmaWx0ZXJDb25maWd1cmF0aW9uLmdldCgpKSk7XHJcbiAgICAgIC8vIFNldHRpbmcgY+G7p2EgZmlsdGVyIHZhbHVlXHJcbiAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGU8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZT4oXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJlZml4OiB0aGlzLiNmaWx0ZXJWYWx1ZSxcclxuICAgICAgICAgIGtleSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGRlZmF1bHQ6IHRoaXMuI2RlZmF1bHRWYWx1ZShhcmdzKSxcclxuICAgICAgICAgIHR5cGU6IGNhY2hlU2Vzc2lvbiA/ICdzZXNzaW9uJyA6IHVuZGVmaW5lZCxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICAgIC8vIEzhuqV5IGdpw6EgdHLhu4sgdmFsdWUgbWVyZ2UgduG7m2kgZ2nDoSB0cuG7iyBkZWZhdWx0IGPhu6dhIGFyZ3MgbuG6v3UgbmjGsCBhcmdzIGPDsyB0aGF5IMSR4buVaVxyXG4gICAgICBmaWx0ZXJWYWx1ZS5zZXQodGhpcy4jaW5pdFZhbHVlKGFyZ3MsIGZpbHRlclZhbHVlLmdldCgpKSk7XHJcbiAgICAgIHRoaXMuI2NhY2hlW2tleV0gPSB7XHJcbiAgICAgICAgY29uZmlndXJhdGlvbjoge1xyXG4gICAgICAgICAgZ2V0OiAoKTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGZpbHRlckNvbmZpZ3VyYXRpb24uZ2V0KCk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgc2V0OiAoY29uZmlndXJhdGlvbjogUGFydGlhbDxTZEdyaWRNYXRlcmlhbEZpbHRlckNvbmZpZ3VyYXRpb24+KTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgICAgICAgICAgY29uc3QgeyBpbmxpbmVDb2x1bW4sIGlubGluZUV4dGVybmFsLCBpbmxpbmVGaWx0ZXJEZWYgfSA9IGNvbmZpZ3VyYXRpb247XHJcbiAgICAgICAgICAgIGZpbHRlckNvbmZpZ3VyYXRpb24uc2V0KHtcclxuICAgICAgICAgICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgICAgICAgICAgaW5saW5lRXh0ZXJuYWwsXHJcbiAgICAgICAgICAgICAgaW5saW5lRmlsdGVyRGVmLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgICAgICAgICAgaW5saW5lRXh0ZXJuYWwsXHJcbiAgICAgICAgICAgICAgaW5saW5lRmlsdGVyRGVmLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHJlbW92ZTogKCkgPT4ge1xyXG4gICAgICAgICAgICBmaWx0ZXJDb25maWd1cmF0aW9uLnNldCh0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JzZXJ2ZXI6IGZpbHRlckNvbmZpZ3VyYXRpb24ub2JzZXJ2ZXIucGlwZShcclxuICAgICAgICAgICAgc3RhcnRXaXRoKGZpbHRlckNvbmZpZ3VyYXRpb24uZ2V0KCkpLFxyXG4gICAgICAgICAgICAvLyBT4butIGThu6VuZyBt4bq3YyDEkeG7i25oIG7hur91IGLhu4sgcmVzZXRcclxuICAgICAgICAgICAgbWFwKGNvbmZpZ3VyYXRpb24gPT4gY29uZmlndXJhdGlvbiB8fCB0aGlzLiNkZWZhdWx0Q29uZmlndXJhdGlvbihhcmdzKSlcclxuICAgICAgICAgICksXHJcbiAgICAgICAgfSxcclxuICAgICAgICB2YWx1ZToge1xyXG4gICAgICAgICAgZ2V0OiAoKTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBmaWx0ZXJWYWx1ZS5nZXQoKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBzZXQ6ICh2YWx1ZTogUGFydGlhbDxTZEdyaWRNYXRlcmlhbEZpbHRlclZhbHVlPik6IFNkR3JpZE1hdGVyaWFsRmlsdGVyVmFsdWUgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModmFsdWUgfHwge30pO1xyXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50ID0gZmlsdGVyVmFsdWUuZ2V0KCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgY29sdW1uRmlsdGVyLCBleHRlcm5hbEZpbHRlciwgZmlsdGVyRGVmIH0gPSBjdXJyZW50O1xyXG4gICAgICAgICAgICBjb25zdCB1cGRhdGVkRmlsdGVyID0ge1xyXG4gICAgICAgICAgICAgIC8vIEZpbHRlciBjb2x1bW5cclxuICAgICAgICAgICAgICBjb2x1bW5GaWx0ZXI6IGtleXMuaW5jbHVkZXMoJ2NvbHVtbkZpbHRlcicpID8gdmFsdWU/LmNvbHVtbkZpbHRlciB8fCB7fSA6IGNvbHVtbkZpbHRlcixcclxuICAgICAgICAgICAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgICAgICAgICAgICBleHRlcm5hbEZpbHRlcjoga2V5cy5pbmNsdWRlcygnZXh0ZXJuYWxGaWx0ZXInKSA/IHZhbHVlPy5leHRlcm5hbEZpbHRlciB8fCB7fSA6IGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAgICAgICAgIC8vIEZpbHRlciBkZWZcclxuICAgICAgICAgICAgICBmaWx0ZXJEZWY6IGtleXMuaW5jbHVkZXMoJ2ZpbHRlckRlZicpID8gdmFsdWU/LmZpbHRlckRlZiB8fCB7fSA6IGZpbHRlckRlZixcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgZmlsdGVyVmFsdWUuc2V0KHVwZGF0ZWRGaWx0ZXIpO1xyXG4gICAgICAgICAgICByZXR1cm4gdXBkYXRlZEZpbHRlcjtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICByZW1vdmU6ICgpID0+IHtcclxuICAgICAgICAgICAgZmlsdGVyVmFsdWUuc2V0KHRoaXMuI2RlZmF1bHRWYWx1ZShhcmdzKSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JzZXJ2ZXI6IGZpbHRlclZhbHVlLm9ic2VydmVyLnBpcGUoXHJcbiAgICAgICAgICAgIHN0YXJ0V2l0aChmaWx0ZXJWYWx1ZS5nZXQoKSksXHJcbiAgICAgICAgICAgIC8vIFPhu60gZOG7pW5nIG3hurdjIMSR4buLbmggbuG6v3UgYuG7iyByZXNldFxyXG4gICAgICAgICAgICBtYXAodmFsdWUgPT4gdmFsdWUgfHwgdGhpcy4jZGVmYXVsdFZhbHVlKGFyZ3MpKVxyXG4gICAgICAgICAgKSxcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuI2NhY2hlW2tleV07XHJcbiAgfTtcclxuXHJcbiAgI2RlZmF1bHRDb25maWd1cmF0aW9uID0gKGFyZ3M6IHtcclxuICAgIGNvbHVtbnM6IFNkR3JpZE1hdGVyaWFsQ29sdW1uW107XHJcbiAgICBleHRlcm5hbEZpbHRlcnM6IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXJbXTtcclxuICAgIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXTtcclxuICB9KTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uID0+IHtcclxuICAgIGNvbnN0IHsgY29sdW1ucywgZXh0ZXJuYWxGaWx0ZXJzLCBmaWx0ZXJEZWZzIH0gPSBhcmdzO1xyXG4gICAgY29uc3QgaW5saW5lQ29sdW1uOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgY29uc3QgaW5saW5lRXh0ZXJuYWw6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgICBjb25zdCBpbmxpbmVGaWx0ZXJEZWY6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgY29sdW1ucyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVDb2x1bW5baXRlbS5maWVsZF0gPSBpdGVtPy5maWx0ZXI/LmRlZmF1bHRTaG93aW5nO1xyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZXh0ZXJuYWxGaWx0ZXJzIHx8IFtdKSB7XHJcbiAgICAgIGlubGluZUV4dGVybmFsW2l0ZW0uZmllbGRdID0gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZmlsdGVyRGVmcyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWZbaXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA9IGl0ZW0/LmRlZmF1bHRTaG93aW5nO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgLy8gRmlsdGVyIGNvbHVtblxyXG4gICAgICBpbmxpbmVDb2x1bW4sXHJcbiAgICAgIC8vIEZpbHRlciBleHRlcm5hbFxyXG4gICAgICBpbmxpbmVFeHRlcm5hbCxcclxuICAgICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWYsXHJcbiAgICB9O1xyXG4gIH07XHJcblxyXG4gICNkZWZhdWx0VmFsdWUgPSAoYXJnczoge1xyXG4gICAgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXTtcclxuICAgIGV4dGVybmFsRmlsdGVyczogU2RHcmlkTWF0ZXJpYWxFeHRlcm5hbEZpbHRlcltdO1xyXG4gICAgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdO1xyXG4gIH0pOiBTZEdyaWRNYXRlcmlhbEZpbHRlclZhbHVlID0+IHtcclxuICAgIGNvbnN0IGNvbHVtbkZpbHRlcjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgZXh0ZXJuYWxGaWx0ZXI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuICAgIGNvbnN0IGZpbHRlckRlZjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgeyBjb2x1bW5zLCBleHRlcm5hbEZpbHRlcnMsIGZpbHRlckRlZnMgfSA9IGFyZ3M7XHJcbiAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgY29sdW1ucyB8fCBbXSkge1xyXG4gICAgICBjb2x1bW5GaWx0ZXJbaXRlbS5maWVsZF0gPSBpdGVtPy5maWx0ZXI/LmRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBleHRlcm5hbEZpbHRlcnMgfHwgW10pIHtcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXJbaXRlbS5maWVsZF0gPSBpdGVtPy5kZWZhdWx0O1xyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGZpbHRlckRlZnMgfHwgW10pIHtcclxuICAgICAgZmlsdGVyRGVmW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGNvbHVtbkZpbHRlcixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgI2luaXRDb25maWd1cmF0aW9uID0gKFxyXG4gICAgYXJnczoge1xyXG4gICAgICBjb2x1bW5zOiBTZEdyaWRNYXRlcmlhbENvbHVtbltdO1xyXG4gICAgICBleHRlcm5hbEZpbHRlcnM6IFNkR3JpZE1hdGVyaWFsRXh0ZXJuYWxGaWx0ZXJbXTtcclxuICAgICAgZmlsdGVyRGVmczogU2RNYXRlcmlhbEZpbHRlckRlZkRpcmVjdGl2ZVtdO1xyXG4gICAgfSxcclxuICAgIGNvbmZpZ3VyYXRpb246IFNkR3JpZE1hdGVyaWFsRmlsdGVyQ29uZmlndXJhdGlvblxyXG4gICk6IFNkR3JpZE1hdGVyaWFsRmlsdGVyQ29uZmlndXJhdGlvbiA9PiB7XHJcbiAgICBjb25zdCB7IGNvbHVtbnMsIGV4dGVybmFsRmlsdGVycywgZmlsdGVyRGVmcyB9ID0gYXJncztcclxuICAgIGNvbnN0IGlubGluZUNvbHVtbjogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSB7fTtcclxuICAgIGNvbnN0IGlubGluZUV4dGVybmFsOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgY29uc3QgaW5saW5lRmlsdGVyRGVmOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gICAgLy8gRmlsdGVyIGNvbHVtblxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGNvbHVtbnMgfHwgW10pIHtcclxuICAgICAgaW5saW5lQ29sdW1uW2l0ZW0uZmllbGRdID0gY29uZmlndXJhdGlvbj8uaW5saW5lQ29sdW1uPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZmlsdGVyPy5kZWZhdWx0U2hvd2luZztcclxuICAgIH1cclxuICAgIC8vIEZpbHRlciBleHRlcm5hbFxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGV4dGVybmFsRmlsdGVycyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVFeHRlcm5hbFtpdGVtLmZpZWxkXSA9IGNvbmZpZ3VyYXRpb24/LmlubGluZUV4dGVybmFsPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZmlsdGVyRGVmcyB8fCBbXSkge1xyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWZbaXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA9IGNvbmZpZ3VyYXRpb24/LmlubGluZUZpbHRlckRlZj8uW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPz8gaXRlbT8uZGVmYXVsdFNob3dpbmc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGlubGluZUNvbHVtbixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGlubGluZUV4dGVybmFsLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGlubGluZUZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgI2luaXRWYWx1ZSA9IChcclxuICAgIGFyZ3M6IHtcclxuICAgICAgY29sdW1uczogU2RHcmlkTWF0ZXJpYWxDb2x1bW5bXTtcclxuICAgICAgZXh0ZXJuYWxGaWx0ZXJzOiBTZEdyaWRNYXRlcmlhbEV4dGVybmFsRmlsdGVyW107XHJcbiAgICAgIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXTtcclxuICAgIH0sXHJcbiAgICB2YWx1ZTogU2RHcmlkTWF0ZXJpYWxGaWx0ZXJWYWx1ZVxyXG4gICk6IFNkR3JpZE1hdGVyaWFsRmlsdGVyVmFsdWUgPT4ge1xyXG4gICAgY29uc3QgY29sdW1uRmlsdGVyOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcbiAgICBjb25zdCBleHRlcm5hbEZpbHRlcjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gICAgY29uc3QgZmlsdGVyRGVmOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge307XHJcbiAgICBjb25zdCB7IGNvbHVtbnMsIGV4dGVybmFsRmlsdGVycywgZmlsdGVyRGVmcyB9ID0gYXJncztcclxuICAgIC8vIEZpbHRlciBjb2x1bW5cclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBjb2x1bW5zIHx8IFtdKSB7XHJcbiAgICAgIGNvbHVtbkZpbHRlcltpdGVtLmZpZWxkXSA9IHZhbHVlPy5jb2x1bW5GaWx0ZXI/LltpdGVtLmZpZWxkXSA/PyBpdGVtPy5maWx0ZXI/LmRlZmF1bHQ7XHJcbiAgICB9XHJcbiAgICAvLyBGaWx0ZXIgZXh0ZXJuYWxcclxuICAgIGZvciAoY29uc3QgaXRlbSBvZiBleHRlcm5hbEZpbHRlcnMgfHwgW10pIHtcclxuICAgICAgaWYgKGl0ZW0udHlwZSA9PT0gJ2RhdGVyYW5nZScpIHtcclxuICAgICAgICBleHRlcm5hbEZpbHRlcltpdGVtLmZpZWxkXSA9IHtcclxuICAgICAgICAgIGZyb206IHZhbHVlPy5leHRlcm5hbEZpbHRlcj8uW2l0ZW0uZmllbGRdPy5mcm9tID8/IGl0ZW0uZGVmYXVsdD8uZnJvbSxcclxuICAgICAgICAgIHRvOiB2YWx1ZT8uZXh0ZXJuYWxGaWx0ZXI/LltpdGVtLmZpZWxkXT8udG8gPz8gaXRlbS5kZWZhdWx0Py50byxcclxuICAgICAgICB9O1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGV4dGVybmFsRmlsdGVyW2l0ZW0uZmllbGRdID0gdmFsdWU/LmV4dGVybmFsRmlsdGVyPy5baXRlbS5maWVsZF0gPz8gaXRlbT8uZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gRmlsdGVyIGRlZlxyXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIGZpbHRlckRlZnMgfHwgW10pIHtcclxuICAgICAgZmlsdGVyRGVmW2l0ZW0uc2RNYXRlcmlhbEZpbHRlckRlZl0gPSB2YWx1ZT8uZmlsdGVyRGVmPy5baXRlbS5zZE1hdGVyaWFsRmlsdGVyRGVmXSA/PyB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAvLyBGaWx0ZXIgY29sdW1uXHJcbiAgICAgIGNvbHVtbkZpbHRlcixcclxuICAgICAgLy8gRmlsdGVyIGV4dGVybmFsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyLFxyXG4gICAgICAvLyBGaWx0ZXIgZGVmXHJcbiAgICAgIGZpbHRlckRlZixcclxuICAgIH07XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -1138,8 +1138,8 @@ class SdGridFilterService {
|
|
|
1138
1138
|
const { id, columns, externalFilters } = args;
|
|
1139
1139
|
key = hash({
|
|
1140
1140
|
id,
|
|
1141
|
-
columns: columns.map(e => e.field).filter(field => !!field),
|
|
1142
|
-
externalFilters: externalFilters.map(e => e.field).filter(field => !!field),
|
|
1141
|
+
columns: (columns === null || columns === void 0 ? void 0 : columns.map(e => e.field).filter(field => !!field)) || [],
|
|
1142
|
+
externalFilters: (externalFilters === null || externalFilters === void 0 ? void 0 : externalFilters.map(e => e.field).filter(field => !!field)) || [],
|
|
1143
1143
|
});
|
|
1144
1144
|
cacheSession = true; // Nếu không có key thì chỉ lưu theo session
|
|
1145
1145
|
}
|