@alilc/lowcode-renderer-core
Version:
renderer core
95 lines • 2.96 kB
JavaScript
export var Env = /*#__PURE__*/function (Env) {
Env["React"] = "react";
return Env;
}({});
var Adapter = /*#__PURE__*/function () {
function Adapter() {
this.runtime = void 0;
this.builtinModules = ['Component', 'PureComponent', 'createElement', 'createContext', 'forwardRef', 'findDOMNode'];
this.env = void 0;
this.renderers = void 0;
this.configProvider = void 0;
this.initRuntime();
}
var _proto = Adapter.prototype;
_proto.initRuntime = function initRuntime() {
var Component = /*#__PURE__*/function () {
function Component() {
this.state = void 0;
this.props = void 0;
this.refs = void 0;
this.context = void 0;
}
var _proto2 = Component.prototype;
_proto2.setState = function setState() {};
_proto2.forceUpdate = function forceUpdate() {};
_proto2.render = function render() {};
return Component;
}();
var PureComponent = /*#__PURE__*/function () {
function PureComponent() {
this.state = void 0;
this.props = void 0;
this.refs = void 0;
this.context = void 0;
}
var _proto3 = PureComponent.prototype;
_proto3.setState = function setState() {};
_proto3.forceUpdate = function forceUpdate() {};
_proto3.render = function render() {};
return PureComponent;
}();
var createElement = function createElement() {};
var createContext = function createContext() {};
var forwardRef = function forwardRef() {};
var findDOMNode = function findDOMNode() {};
this.runtime = {
Component: Component,
PureComponent: PureComponent,
createElement: createElement,
createContext: createContext,
forwardRef: forwardRef,
findDOMNode: findDOMNode
};
};
_proto.setRuntime = function setRuntime(runtime) {
if (this.isValidRuntime(runtime)) {
this.runtime = runtime;
}
};
_proto.isValidRuntime = function isValidRuntime(runtime) {
if (typeof runtime !== 'object' || Array.isArray(runtime)) {
return false;
}
return this.builtinModules.every(function (m) {
var flag = !!runtime[m];
if (!flag) {
throw new Error("runtime is invalid, module '" + m + "' does not exist");
}
return flag;
});
};
_proto.getRuntime = function getRuntime() {
return this.runtime;
};
_proto.setEnv = function setEnv(env) {
this.env = env;
};
_proto.isReact = function isReact() {
return this.env === Env.React;
};
_proto.setRenderers = function setRenderers(renderers) {
this.renderers = renderers;
};
_proto.getRenderers = function getRenderers() {
return this.renderers || {};
};
_proto.setConfigProvider = function setConfigProvider(Comp) {
this.configProvider = Comp;
};
_proto.getConfigProvider = function getConfigProvider() {
return this.configProvider;
};
return Adapter;
}();
export default new Adapter();