devextreme
Version:
HTML5 JavaScript Component Suite for Responsive Web Development
46 lines (44 loc) • 1.36 kB
JavaScript
/**
* DevExtreme (cjs/__internal/core/r1/runtime/inferno/create_context.js)
* Version: 25.1.3
* Build date: Wed Jun 25 2025
*
* Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createContext = void 0;
var _inferno = require("inferno");
function _extends() {
return _extends = Object.assign ? Object.assign.bind() : function(n) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var r in t) {
({}).hasOwnProperty.call(t, r) && (n[r] = t[r])
}
}
return n
}, _extends.apply(null, arguments)
}
let contextId = 0;
const createContext = function(defaultValue) {
const id = contextId++;
return {
id: id,
defaultValue: defaultValue,
Provider: class extends _inferno.Component {
getChildContext() {
return _extends({}, this.context, {
[id]: this.props.value || defaultValue
})
}
render() {
return this.props.children
}
}
}
};
exports.createContext = createContext;