1 | "use strict";
|
2 |
|
3 | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4 |
|
5 | var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
6 |
|
7 | const localRequire = require('./localRequire');
|
8 |
|
9 | module.exports =
|
10 |
|
11 | function () {
|
12 | var _loadPlugins = (0, _asyncToGenerator2.default)(function* (plugins, relative) {
|
13 | if (Array.isArray(plugins)) {
|
14 | return Promise.all(plugins.map(p => loadPlugin(p, relative)).filter(Boolean));
|
15 | } else if (typeof plugins === 'object') {
|
16 | let mapPlugins = yield Promise.all(Object.keys(plugins).map(p => loadPlugin(p, relative, plugins[p])));
|
17 | return mapPlugins.filter(Boolean);
|
18 | } else {
|
19 | return [];
|
20 | }
|
21 | });
|
22 |
|
23 | return function loadPlugins(_x, _x2) {
|
24 | return _loadPlugins.apply(this, arguments);
|
25 | };
|
26 | }();
|
27 |
|
28 | function loadPlugin(_x3, _x4, _x5) {
|
29 | return _loadPlugin.apply(this, arguments);
|
30 | }
|
31 |
|
32 | function _loadPlugin() {
|
33 | _loadPlugin = (0, _asyncToGenerator2.default)(function* (plugin, relative, options) {
|
34 | if (typeof plugin === 'string') {
|
35 | plugin = yield localRequire(plugin, relative);
|
36 | plugin = plugin.default || plugin;
|
37 |
|
38 | if (typeof options !== 'object') {
|
39 | options = {};
|
40 | }
|
41 |
|
42 | if (Object.keys(options).length > 0) {
|
43 | plugin = plugin(options);
|
44 | }
|
45 |
|
46 | plugin = plugin.default || plugin;
|
47 | }
|
48 |
|
49 | return plugin;
|
50 | });
|
51 | return _loadPlugin.apply(this, arguments);
|
52 | } |
\ | No newline at end of file |