source: trip-planner-front/node_modules/@babel/core/lib/config/files/plugins.js@ 188ee53

Last change on this file since 188ee53 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 6.1 KB
Line 
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.resolvePlugin = resolvePlugin;
7exports.resolvePreset = resolvePreset;
8exports.loadPlugin = loadPlugin;
9exports.loadPreset = loadPreset;
10
11function _debug() {
12 const data = require("debug");
13
14 _debug = function () {
15 return data;
16 };
17
18 return data;
19}
20
21function _path() {
22 const data = require("path");
23
24 _path = function () {
25 return data;
26 };
27
28 return data;
29}
30
31var _moduleTypes = require("./module-types");
32
33function _module() {
34 const data = require("module");
35
36 _module = function () {
37 return data;
38 };
39
40 return data;
41}
42
43const debug = _debug()("babel:config:loading:files:plugins");
44
45const EXACT_RE = /^module:/;
46const BABEL_PLUGIN_PREFIX_RE = /^(?!@|module:|[^/]+\/|babel-plugin-)/;
47const BABEL_PRESET_PREFIX_RE = /^(?!@|module:|[^/]+\/|babel-preset-)/;
48const BABEL_PLUGIN_ORG_RE = /^(@babel\/)(?!plugin-|[^/]+\/)/;
49const BABEL_PRESET_ORG_RE = /^(@babel\/)(?!preset-|[^/]+\/)/;
50const OTHER_PLUGIN_ORG_RE = /^(@(?!babel\/)[^/]+\/)(?![^/]*babel-plugin(?:-|\/|$)|[^/]+\/)/;
51const OTHER_PRESET_ORG_RE = /^(@(?!babel\/)[^/]+\/)(?![^/]*babel-preset(?:-|\/|$)|[^/]+\/)/;
52const OTHER_ORG_DEFAULT_RE = /^(@(?!babel$)[^/]+)$/;
53
54function resolvePlugin(name, dirname) {
55 return resolveStandardizedName("plugin", name, dirname);
56}
57
58function resolvePreset(name, dirname) {
59 return resolveStandardizedName("preset", name, dirname);
60}
61
62function* loadPlugin(name, dirname) {
63 const filepath = resolvePlugin(name, dirname);
64
65 if (!filepath) {
66 throw new Error(`Plugin ${name} not found relative to ${dirname}`);
67 }
68
69 const value = yield* requireModule("plugin", filepath);
70 debug("Loaded plugin %o from %o.", name, dirname);
71 return {
72 filepath,
73 value
74 };
75}
76
77function* loadPreset(name, dirname) {
78 const filepath = resolvePreset(name, dirname);
79
80 if (!filepath) {
81 throw new Error(`Preset ${name} not found relative to ${dirname}`);
82 }
83
84 const value = yield* requireModule("preset", filepath);
85 debug("Loaded preset %o from %o.", name, dirname);
86 return {
87 filepath,
88 value
89 };
90}
91
92function standardizeName(type, name) {
93 if (_path().isAbsolute(name)) return name;
94 const isPreset = type === "preset";
95 return name.replace(isPreset ? BABEL_PRESET_PREFIX_RE : BABEL_PLUGIN_PREFIX_RE, `babel-${type}-`).replace(isPreset ? BABEL_PRESET_ORG_RE : BABEL_PLUGIN_ORG_RE, `$1${type}-`).replace(isPreset ? OTHER_PRESET_ORG_RE : OTHER_PLUGIN_ORG_RE, `$1babel-${type}-`).replace(OTHER_ORG_DEFAULT_RE, `$1/babel-${type}`).replace(EXACT_RE, "");
96}
97
98function resolveStandardizedName(type, name, dirname = process.cwd()) {
99 const standardizedName = standardizeName(type, name);
100
101 try {
102 return (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, {
103 paths: [b]
104 }, M = require("module")) => {
105 let f = M._findPath(r, M._nodeModulePaths(b).concat(b));
106
107 if (f) return f;
108 f = new Error(`Cannot resolve module '${r}'`);
109 f.code = "MODULE_NOT_FOUND";
110 throw f;
111 })(standardizedName, {
112 paths: [dirname]
113 });
114 } catch (e) {
115 if (e.code !== "MODULE_NOT_FOUND") throw e;
116
117 if (standardizedName !== name) {
118 let resolvedOriginal = false;
119
120 try {
121 (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, {
122 paths: [b]
123 }, M = require("module")) => {
124 let f = M._findPath(r, M._nodeModulePaths(b).concat(b));
125
126 if (f) return f;
127 f = new Error(`Cannot resolve module '${r}'`);
128 f.code = "MODULE_NOT_FOUND";
129 throw f;
130 })(name, {
131 paths: [dirname]
132 });
133 resolvedOriginal = true;
134 } catch (_unused) {}
135
136 if (resolvedOriginal) {
137 e.message += `\n- If you want to resolve "${name}", use "module:${name}"`;
138 }
139 }
140
141 let resolvedBabel = false;
142
143 try {
144 (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, {
145 paths: [b]
146 }, M = require("module")) => {
147 let f = M._findPath(r, M._nodeModulePaths(b).concat(b));
148
149 if (f) return f;
150 f = new Error(`Cannot resolve module '${r}'`);
151 f.code = "MODULE_NOT_FOUND";
152 throw f;
153 })(standardizeName(type, "@babel/" + name), {
154 paths: [dirname]
155 });
156 resolvedBabel = true;
157 } catch (_unused2) {}
158
159 if (resolvedBabel) {
160 e.message += `\n- Did you mean "@babel/${name}"?`;
161 }
162
163 let resolvedOppositeType = false;
164 const oppositeType = type === "preset" ? "plugin" : "preset";
165
166 try {
167 (((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, {
168 paths: [b]
169 }, M = require("module")) => {
170 let f = M._findPath(r, M._nodeModulePaths(b).concat(b));
171
172 if (f) return f;
173 f = new Error(`Cannot resolve module '${r}'`);
174 f.code = "MODULE_NOT_FOUND";
175 throw f;
176 })(standardizeName(oppositeType, name), {
177 paths: [dirname]
178 });
179 resolvedOppositeType = true;
180 } catch (_unused3) {}
181
182 if (resolvedOppositeType) {
183 e.message += `\n- Did you accidentally pass a ${oppositeType} as a ${type}?`;
184 }
185
186 throw e;
187 }
188}
189
190const LOADING_MODULES = new Set();
191
192function* requireModule(type, name) {
193 if (LOADING_MODULES.has(name)) {
194 throw new Error(`Reentrant ${type} detected trying to load "${name}". This module is not ignored ` + "and is trying to load itself while compiling itself, leading to a dependency cycle. " + 'We recommend adding it to your "ignore" list in your babelrc, or to a .babelignore.');
195 }
196
197 try {
198 LOADING_MODULES.add(name);
199 return yield* (0, _moduleTypes.default)(name, `You appear to be using a native ECMAScript module ${type}, ` + "which is only supported when running Babel asynchronously.", true);
200 } catch (err) {
201 err.message = `[BABEL]: ${err.message} (While processing: ${name})`;
202 throw err;
203 } finally {
204 LOADING_MODULES.delete(name);
205 }
206}
Note: See TracBrowser for help on using the repository browser.