UNPKG

@atlaskit/editor-common

Version:

A package that contains common classes and components for editor and renderer

123 lines (122 loc) 4.76 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _moduleHelpers = require("./module-helpers"); var DefaultExtensionProvider = exports.default = /*#__PURE__*/function () { function DefaultExtensionProvider(manifests, /** * Allows for an optional list of pre compiled auto convert handlers to be passed. * Useful for performance improvements or to support legacy converters. * * Warning: If this attribute is passed, this provider will ignore auto convert patterns from the manifests. */ autoConvertHandlers) { (0, _classCallCheck2.default)(this, DefaultExtensionProvider); this.manifestsPromise = Promise.resolve(manifests); this.autoConvertHandlers = autoConvertHandlers; } (0, _createClass2.default)(DefaultExtensionProvider, [{ key: "getExtensions", value: function getExtensions() { return this.manifestsPromise; } }, { key: "getExtension", value: function () { var _getExtension = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(type, key) { var extension; return _regenerator.default.wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _context.next = 2; return this.manifestsPromise; case 2: extension = _context.sent.find(function (manifest) { return manifest.type === type && manifest.key === key; }); if (extension) { _context.next = 5; break; } throw new Error("Extension with type \"".concat(type, "\" and key \"").concat(key, "\" not found!")); case 5: return _context.abrupt("return", extension); case 6: case "end": return _context.stop(); } }, _callee, this); })); function getExtension(_x, _x2) { return _getExtension.apply(this, arguments); } return getExtension; }() }, { key: "search", value: function () { var _search = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(keyword) { var extensions; return _regenerator.default.wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return this.manifestsPromise; case 2: extensions = _context2.sent.filter(function (manifest) { return manifest.title.toLowerCase().includes(keyword.toLowerCase()); }); return _context2.abrupt("return", extensions); case 4: case "end": return _context2.stop(); } }, _callee2, this); })); function search(_x3) { return _search.apply(this, arguments); } return search; }() }, { key: "getAutoConverter", value: function () { var _getAutoConverter = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() { var autoConverters; return _regenerator.default.wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: if (!this.autoConvertHandlers) { _context3.next = 2; break; } return _context3.abrupt("return", this.autoConvertHandlers); case 2: _context3.t0 = _moduleHelpers.getAutoConvertPatternsFromModule; _context3.next = 5; return this.manifestsPromise; case 5: _context3.t1 = _context3.sent; autoConverters = (0, _context3.t0)(_context3.t1); return _context3.abrupt("return", autoConverters); case 8: case "end": return _context3.stop(); } }, _callee3, this); })); function getAutoConverter() { return _getAutoConverter.apply(this, arguments); } return getAutoConverter; }() }]); return DefaultExtensionProvider; }();