devextreme-angular
Version:
Angular UI and visualization components based on DevExtreme widgets
53 lines • 6.57 kB
JavaScript
/*!
* devextreme-angular
* Version: 22.1.14
* Build date: Mon Apr 29 2024
*
* Copyright (c) 2012 - 2024 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 { NgModule, Inject, PLATFORM_ID } from '@angular/core';
import { isPlatformServer } from '@angular/common';
import infernoRenderer from 'devextreme/core/inferno_renderer';
import { renderToString } from 'inferno-server';
import * as i0 from "@angular/core";
export class DxServerModule {
constructor(platformId) {
if (isPlatformServer(platformId)) {
infernoRenderer.inject({
render: (component, props, container) => {
const el = infernoRenderer.createElement(component, props);
const document = container.ownerDocument;
const temp = document.createElement(container.tagName);
temp.innerHTML = renderToString(el);
const mainElement = temp.childNodes[0];
const childString = mainElement.innerHTML;
for (let i = 0; i < mainElement.attributes.length; i++) {
temp.setAttribute(mainElement.attributes[i].name, mainElement.attributes[i].value);
}
temp.innerHTML = childString;
container.outerHTML = temp.outerHTML;
}
});
}
}
}
/** @nocollapse */ DxServerModule.ɵfac = function DxServerModule_Factory(t) { return new (t || DxServerModule)(i0.ɵɵinject(PLATFORM_ID)); };
/** @nocollapse */ DxServerModule.ɵmod = /** @pureOrBreakMyCode */ i0.ɵɵdefineNgModule({ type: DxServerModule });
/** @nocollapse */ DxServerModule.ɵinj = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjector({ providers: [], imports: [[]] });
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DxServerModule, [{
type: NgModule,
args: [{
exports: [],
imports: [],
providers: []
}]
}], function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [PLATFORM_ID]
}] }]; }, null); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vZGlzdC9zZXJ2ZXIvcmVuZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7OztHQVdHO0FBRUgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRW5ELE9BQU8sZUFBZSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFPaEQsTUFBTSxPQUFPLGNBQWM7SUFDdkIsWUFBaUMsVUFBZTtRQUM1QyxJQUFJLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzlCLGVBQWUsQ0FBQyxNQUFNLENBQUM7Z0JBQ25CLE1BQU0sRUFBRSxDQUNSLFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNYLEVBQUU7b0JBQ0EsTUFBTSxFQUFFLEdBQUcsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7b0JBQzNELE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxhQUFhLENBQUM7b0JBQ3pDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN2RCxJQUFJLENBQUMsU0FBUyxHQUFHLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDcEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDdkMsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQztvQkFFMUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO3dCQUNwRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQ3RGO29CQUNELElBQUksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDO29CQUM3QixTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ3pDLENBQUM7YUFBQyxDQUFDLENBQUM7U0FDUDtJQUNMLENBQUM7OytGQXZCUSxjQUFjLGNBQ0gsV0FBVzsrRkFEdEIsY0FBYztvR0FGWixFQUFFLFlBREosRUFBRTt1RkFHRixjQUFjO2NBTDFCLFFBQVE7ZUFBQztnQkFDTixPQUFPLEVBQUUsRUFBRTtnQkFDWCxPQUFPLEVBQUUsRUFBRTtnQkFDWCxTQUFTLEVBQUUsRUFBRTthQUNoQjs7c0JBRWdCLE1BQU07dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogZGV2ZXh0cmVtZS1hbmd1bGFyXG4gKiBWZXJzaW9uOiAyMi4xLjE0XG4gKiBCdWlsZCBkYXRlOiBNb24gQXByIDI5IDIwMjRcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTIgLSAyMDI0IERldmVsb3BlciBFeHByZXNzIEluYy4gQUxMIFJJR0hUUyBSRVNFUlZFRFxuICpcbiAqIFRoaXMgc29mdHdhcmUgbWF5IGJlIG1vZGlmaWVkIGFuZCBkaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXNcbiAqIG9mIHRoZSBNSVQgbGljZW5zZS4gU2VlIHRoZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3Qgb2YgdGhlIHByb2plY3QgZm9yIGRldGFpbHMuXG4gKlxuICogaHR0cHM6Ly9naXRodWIuY29tL0RldkV4cHJlc3MvZGV2ZXh0cmVtZS1hbmd1bGFyXG4gKi9cblxuaW1wb3J0IHsgTmdNb2R1bGUsIEluamVjdCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgaW5mZXJub1JlbmRlcmVyIGZyb20gJ2RldmV4dHJlbWUvY29yZS9pbmZlcm5vX3JlbmRlcmVyJztcbmltcG9ydCB7IHJlbmRlclRvU3RyaW5nIH0gZnJvbSAnaW5mZXJuby1zZXJ2ZXInO1xuXG5ATmdNb2R1bGUoe1xuICAgIGV4cG9ydHM6IFtdLFxuICAgIGltcG9ydHM6IFtdLFxuICAgIHByb3ZpZGVyczogW11cbn0pXG5leHBvcnQgY2xhc3MgRHhTZXJ2ZXJNb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IGFueSkge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybVNlcnZlcihwbGF0Zm9ybUlkKSkge1xuICAgICAgICAgICAgaW5mZXJub1JlbmRlcmVyLmluamVjdCh7XG4gICAgICAgICAgICAgICAgcmVuZGVyOiAoXG4gICAgICAgICAgICAgICAgY29tcG9uZW50LFxuICAgICAgICAgICAgICAgIHByb3BzLFxuICAgICAgICAgICAgICAgIGNvbnRhaW5lcixcbiAgICAgICAgICAgICkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGVsID0gaW5mZXJub1JlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoY29tcG9uZW50LCBwcm9wcyk7XG4gICAgICAgICAgICAgICAgY29uc3QgZG9jdW1lbnQgPSBjb250YWluZXIub3duZXJEb2N1bWVudDtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZW1wID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChjb250YWluZXIudGFnTmFtZSk7XG4gICAgICAgICAgICAgICAgdGVtcC5pbm5lckhUTUwgPSByZW5kZXJUb1N0cmluZyhlbCk7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFpbkVsZW1lbnQgPSB0ZW1wLmNoaWxkTm9kZXNbMF07XG4gICAgICAgICAgICAgICAgY29uc3QgY2hpbGRTdHJpbmcgPSBtYWluRWxlbWVudC5pbm5lckhUTUw7XG5cbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1haW5FbGVtZW50LmF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgdGVtcC5zZXRBdHRyaWJ1dGUobWFpbkVsZW1lbnQuYXR0cmlidXRlc1tpXS5uYW1lLCBtYWluRWxlbWVudC5hdHRyaWJ1dGVzW2ldLnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGVtcC5pbm5lckhUTUwgPSBjaGlsZFN0cmluZztcbiAgICAgICAgICAgICAgICBjb250YWluZXIub3V0ZXJIVE1MID0gdGVtcC5vdXRlckhUTUw7XG4gICAgICAgICAgICB9fSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=