UNPKG

nornj

Version:

A powerful template engine that can works with React, JSX enhancement or alternative tools.

82 lines (63 loc) 3.12 kB
"use strict"; function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } Object.defineProperty(exports, "__esModule", { value: true }); exports.registerComponent = registerComponent; exports.getComponentConfig = getComponentConfig; exports.copyComponentConfig = copyComponentConfig; exports.componentConfig = exports.components = void 0; var _core = _interopRequireDefault(require("../core")); var tools = _interopRequireWildcard(require("../utils/tools")); function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; } function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var components = {}; exports.components = components; var componentConfig = new Map(); exports.componentConfig = componentConfig; function registerComponent(name, component, options) { var params = name, ret; if (!tools.isObject(name)) { params = {}; params[name] = { component: component, options: options }; } tools.each(params, function (v, k, i) { var comp; if (v != null) { var _component = v.component, _options = v.options; var _name = k.toLowerCase(); comp = _component ? _component : v; components[_name] = comp; componentConfig.set(comp, _options); } if (i == 0) { ret = comp; } else { if (i == 1) { ret = [ret]; } ret.push(comp); } }, false); return ret; } function getComponentConfig(name) { return componentConfig.get(tools.isString(name) ? components[name] || name : name); } function copyComponentConfig(component, from) { componentConfig.set(component, componentConfig.get(from)); return component; } tools.assign(_core["default"], { components: components, componentConfig: componentConfig, registerComponent: registerComponent, getComponentConfig: getComponentConfig, copyComponentConfig: copyComponentConfig });