UNPKG

devextreme-angular

Version:

Angular UI and visualization components based on DevExtreme widgets

83 lines 9.46 kB
/*! * devextreme-angular * Version: 20.2.5 * Build date: Fri Jan 15 2021 * * Copyright (c) 2012 - 2021 Developer Express Inc. ALL RIGHTS RESERVED * * This software may be modified and distributed under the terms * of the MIT license. See the LICENSE file in the root of the project for details. * * https://github.com/DevExpress/devextreme-angular */ import * as tslib_1 from "tslib"; import { PLATFORM_ID, Inject, NgModule } from '@angular/core'; import { isPlatformServer } from '@angular/common'; import * as ajax from 'devextreme/core/utils/ajax'; import { Deferred } from 'devextreme/core/utils/deferred'; import { TransferState, makeStateKey, BrowserTransferStateModule } from '@angular/platform-browser'; var DxServerTransferStateModule = /** @class */ (function () { function DxServerTransferStateModule(state, platformId) { this.state = state; this.platformId = platformId; var that = this; ajax.inject({ sendRequest: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var key = makeStateKey(that.generateKey(args)), cachedData = that.state.get(key, null); if (isPlatformServer(that.platformId)) { var result = this.callBase.apply(this, args); result.always(function (data, status) { var dataForCache = { data: data, status: status }; that.state.set(key, dataForCache); }); return result; } else { if (cachedData) { var d = Deferred(); d.resolve(cachedData.data, cachedData.status); that.state.set(key, null); return d.promise(); } return this.callBase.apply(this, args); } } }); } DxServerTransferStateModule.prototype.generateKey = function (args) { var keyValue = ''; for (var key in args) { if (typeof args[key] === 'object') { var objKey = this.generateKey(args[key]); keyValue += key + objKey; } else { keyValue += key + args[key]; } } return keyValue; }; DxServerTransferStateModule.ctorParameters = function () { return [ { type: TransferState }, { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] } ]; }; DxServerTransferStateModule = tslib_1.__decorate([ NgModule({ imports: [ BrowserTransferStateModule ] }), tslib_1.__param(1, Inject(PLATFORM_ID)), tslib_1.__metadata("design:paramtypes", [TransferState, Object]) ], DxServerTransferStateModule); return DxServerTransferStateModule; }()); export { DxServerTransferStateModule }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXItc3RhdGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9kZXZleHRyZW1lLWFuZ3VsYXIvY29yZS8iLCJzb3VyY2VzIjpbInRyYW5zZmVyLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztHQVdHOztBQUVILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEtBQUssSUFBSSxNQUFNLDRCQUE0QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUXBHO0lBQ0kscUNBQW9CLEtBQW9CLEVBQStCLFVBQWU7UUFBbEUsVUFBSyxHQUFMLEtBQUssQ0FBZTtRQUErQixlQUFVLEdBQVYsVUFBVSxDQUFLO1FBQ2xGLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUVoQixJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ1IsV0FBVyxFQUFFO2dCQUFTLGNBQU87cUJBQVAsVUFBTyxFQUFQLHFCQUFPLEVBQVAsSUFBTztvQkFBUCx5QkFBTzs7Z0JBQ3pCLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzFDLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsSUFBVyxDQUFDLENBQUM7Z0JBRWxELElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO29CQUNuQyxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQzdDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBQyxJQUFJLEVBQUUsTUFBTTt3QkFDdkIsSUFBSSxZQUFZLEdBQUc7NEJBQ2YsSUFBSSxFQUFFLElBQUk7NEJBQ1YsTUFBTSxFQUFFLE1BQU07eUJBQ2pCLENBQUM7d0JBQ0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLFlBQW1CLENBQUMsQ0FBQztvQkFDN0MsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsT0FBTyxNQUFNLENBQUM7aUJBQ2pCO3FCQUFNO29CQUNILElBQUksVUFBVSxFQUFFO3dCQUNaLElBQUksQ0FBQyxHQUFJLFFBQWdCLEVBQUUsQ0FBQzt3QkFDNUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDOUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLElBQVcsQ0FBQyxDQUFDO3dCQUVqQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztxQkFDdEI7b0JBQ0QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7aUJBQzFDO1lBQ0wsQ0FBQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxpREFBVyxHQUFYLFVBQVksSUFBSTtRQUNaLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixLQUFLLElBQUksR0FBRyxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsRUFBRTtnQkFDL0IsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDekMsUUFBUSxJQUFJLEdBQUcsR0FBRyxNQUFNLENBQUM7YUFDNUI7aUJBQU07Z0JBQ0gsUUFBUSxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDL0I7U0FDSjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7O2dCQTVDMEIsYUFBYTtnREFBRyxNQUFNLFNBQUMsV0FBVzs7SUFEcEQsMkJBQTJCO1FBTnZDLFFBQVEsQ0FBQztZQUNSLE9BQU8sRUFBRTtnQkFDUCwwQkFBMEI7YUFDM0I7U0FDRixDQUFDO1FBRzZDLG1CQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtpREFBbkMsYUFBYTtPQUQvQiwyQkFBMkIsQ0E4Q3RDO0lBQUQsa0NBQUM7Q0FBQSxBQTlDRixJQThDRTtTQTlDVywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIGRldmV4dHJlbWUtYW5ndWxhclxuICogVmVyc2lvbjogMjAuMi41XG4gKiBCdWlsZCBkYXRlOiBGcmkgSmFuIDE1IDIwMjFcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTIgLSAyMDIxIERldmVsb3BlciBFeHByZXNzIEluYy4gQUxMIFJJR0hUUyBSRVNFUlZFRFxuICpcbiAqIFRoaXMgc29mdHdhcmUgbWF5IGJlIG1vZGlmaWVkIGFuZCBkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXNcbiAqIG9mIHRoZSBNSVQgbGljZW5zZS4gU2VlIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QgZm9yIGRldGFpbHMuXG4gKlxuICogaHR0cHM6Ly9naXRodWIuY29tL0RldkV4cHJlc3MvZGV2ZXh0cmVtZS1hbmd1bGFyXG4gKi9cblxuaW1wb3J0IHsgUExBVEZPUk1fSUQsIEluamVjdCwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCAqIGFzIGFqYXggZnJvbSAnZGV2ZXh0cmVtZS9jb3JlL3V0aWxzL2FqYXgnO1xyXG5pbXBvcnQgeyBEZWZlcnJlZCB9IGZyb20gJ2RldmV4dHJlbWUvY29yZS91dGlscy9kZWZlcnJlZCc7XHJcbmltcG9ydCB7IFRyYW5zZmVyU3RhdGUsIG1ha2VTdGF0ZUtleSwgQnJvd3NlclRyYW5zZmVyU3RhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQnJvd3NlclRyYW5zZmVyU3RhdGVNb2R1bGVcclxuICBdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRHhTZXJ2ZXJUcmFuc2ZlclN0YXRlTW9kdWxlIHtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RhdGU6IFRyYW5zZmVyU3RhdGUsIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogYW55KSB7XHJcbiAgICAgICAgbGV0IHRoYXQgPSB0aGlzO1xyXG5cclxuICAgICAgICBhamF4LmluamVjdCh7XHJcbiAgICAgICAgICAgIHNlbmRSZXF1ZXN0OiBmdW5jdGlvbiguLi5hcmdzKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQga2V5ID0gbWFrZVN0YXRlS2V5KHRoYXQuZ2VuZXJhdGVLZXkoYXJncykpLFxyXG4gICAgICAgICAgICAgICAgICAgIGNhY2hlZERhdGEgPSB0aGF0LnN0YXRlLmdldChrZXksIG51bGwgYXMgYW55KTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcih0aGF0LnBsYXRmb3JtSWQpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHRoaXMuY2FsbEJhc2UuYXBwbHkodGhpcywgYXJncyk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmFsd2F5cygoZGF0YSwgc3RhdHVzKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkYXRhRm9yQ2FjaGUgPSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiBkYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBzdGF0dXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zdGF0ZS5zZXQoa2V5LCBkYXRhRm9yQ2FjaGUgYXMgYW55KTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoY2FjaGVkRGF0YSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZCA9IChEZWZlcnJlZCBhcyBhbnkpKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGQucmVzb2x2ZShjYWNoZWREYXRhLmRhdGEsIGNhY2hlZERhdGEuc3RhdHVzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhhdC5zdGF0ZS5zZXQoa2V5LCBudWxsIGFzIGFueSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZC5wcm9taXNlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNhbGxCYXNlLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2VuZXJhdGVLZXkoYXJncykge1xyXG4gICAgICAgIGxldCBrZXlWYWx1ZSA9ICcnO1xyXG4gICAgICAgIGZvciAobGV0IGtleSBpbiBhcmdzKSB7XHJcbiAgICAgICAgICAgIGlmICh0eXBlb2YgYXJnc1trZXldID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgICAgICAgbGV0IG9iaktleSA9IHRoaXMuZ2VuZXJhdGVLZXkoYXJnc1trZXldKTtcclxuICAgICAgICAgICAgICAgIGtleVZhbHVlICs9IGtleSArIG9iaktleTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGtleVZhbHVlICs9IGtleSArIGFyZ3Nba2V5XTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGtleVZhbHVlO1xyXG4gICAgfVxyXG4gfVxyXG4iXX0=