UNPKG

handsontable

Version:

Handsontable is a JavaScript Spreadsheet Component available for React, Angular and Vue.

56 lines (44 loc) 1.5 kB
"use strict"; exports.__esModule = true; exports.registerRenderer = _register; exports.getRenderer = _getItem; exports.getRegisteredRenderers = exports.getRegisteredRendererNames = exports.hasRenderer = void 0; var _staticRegister2 = _interopRequireDefault(require("../utils/staticRegister")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _staticRegister = (0, _staticRegister2.default)('renderers'), register = _staticRegister.register, getItem = _staticRegister.getItem, hasItem = _staticRegister.hasItem, getNames = _staticRegister.getNames, getValues = _staticRegister.getValues; /** * Retrieve renderer function. * * @param {string} name Renderer identification. * @returns {Function} Returns renderer function. */ exports.getRegisteredRenderers = getValues; exports.getRegisteredRendererNames = getNames; exports.hasRenderer = hasItem; function _getItem(name) { if (typeof name === 'function') { return name; } if (!hasItem(name)) { throw Error("No registered renderer found under \"".concat(name, "\" name")); } return getItem(name); } /** * Register renderer under its alias. * * @param {string|Function} name Renderer's alias or renderer function with its descriptor. * @param {Function} [renderer] Renderer function. */ function _register(name, renderer) { if (typeof name !== 'string') { renderer = name; name = renderer.RENDERER_TYPE; } register(name, renderer); }