UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

44 lines (43 loc) 1.32 kB
/** * DevExtreme (esm/__internal/core/r1/config_provider.js) * Version: 25.2.7 * Build date: Tue May 05 2026 * * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import { BaseInfernoComponent } from "../../core/r1/runtime/inferno/index"; import { ConfigContext } from "./config_context"; export const ConfigProviderDefaultProps = {}; export class ConfigProvider extends BaseInfernoComponent { constructor() { super(...arguments); this.__getterCache = {} } get config() { if (void 0 !== this.__getterCache.config) { return this.__getterCache.config } return this.__getterCache.config = (() => ({ rtlEnabled: this.props.rtlEnabled }))() } componentWillUpdate(nextProps) { if (this.props.rtlEnabled !== nextProps.rtlEnabled) { this.__getterCache.config = void 0 } } getChildContext() { return Object.assign({}, this.context, { [ConfigContext.id]: this.config || ConfigContext.defaultValue }) } render() { return this.props.children } } ConfigProvider.defaultProps = ConfigProviderDefaultProps;