summaryrefslogtreecommitdiff
path: root/node_modules/@babel/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/@babel/core/src')
-rw-r--r--node_modules/@babel/core/src/config/files/index-browser.ts109
-rw-r--r--node_modules/@babel/core/src/config/files/index.ts29
-rw-r--r--node_modules/@babel/core/src/config/resolve-targets-browser.ts40
-rw-r--r--node_modules/@babel/core/src/config/resolve-targets.ts56
-rw-r--r--node_modules/@babel/core/src/transform-file-browser.ts31
-rw-r--r--node_modules/@babel/core/src/transform-file.ts55
6 files changed, 320 insertions, 0 deletions
diff --git a/node_modules/@babel/core/src/config/files/index-browser.ts b/node_modules/@babel/core/src/config/files/index-browser.ts
new file mode 100644
index 00000000..d2573632
--- /dev/null
+++ b/node_modules/@babel/core/src/config/files/index-browser.ts
@@ -0,0 +1,109 @@
+import type { Handler } from "gensync";
+
+import type {
+ ConfigFile,
+ IgnoreFile,
+ RelativeConfig,
+ FilePackageData,
+} from "./types.ts";
+
+import type { CallerMetadata } from "../validation/options.ts";
+
+export type { ConfigFile, IgnoreFile, RelativeConfig, FilePackageData };
+
+export function findConfigUpwards(
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ rootDir: string,
+): string | null {
+ return null;
+}
+
+// eslint-disable-next-line require-yield
+export function* findPackageData(filepath: string): Handler<FilePackageData> {
+ return {
+ filepath,
+ directories: [],
+ pkg: null,
+ isPackage: false,
+ };
+}
+
+// eslint-disable-next-line require-yield
+export function* findRelativeConfig(
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ pkgData: FilePackageData,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ envName: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ caller: CallerMetadata | undefined,
+): Handler<RelativeConfig> {
+ return { config: null, ignore: null };
+}
+
+// eslint-disable-next-line require-yield
+export function* findRootConfig(
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ dirname: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ envName: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ caller: CallerMetadata | undefined,
+): Handler<ConfigFile | null> {
+ return null;
+}
+
+// eslint-disable-next-line require-yield
+export function* loadConfig(
+ name: string,
+ dirname: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ envName: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ caller: CallerMetadata | undefined,
+): Handler<ConfigFile> {
+ throw new Error(`Cannot load ${name} relative to ${dirname} in a browser`);
+}
+
+// eslint-disable-next-line require-yield
+export function* resolveShowConfigPath(
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ dirname: string,
+): Handler<string | null> {
+ return null;
+}
+
+export const ROOT_CONFIG_FILENAMES: string[] = [];
+
+// eslint-disable-next-line @typescript-eslint/no-unused-vars
+export function resolvePlugin(name: string, dirname: string): string | null {
+ return null;
+}
+
+// eslint-disable-next-line @typescript-eslint/no-unused-vars
+export function resolvePreset(name: string, dirname: string): string | null {
+ return null;
+}
+
+export function loadPlugin(
+ name: string,
+ dirname: string,
+): Handler<{
+ filepath: string;
+ value: unknown;
+}> {
+ throw new Error(
+ `Cannot load plugin ${name} relative to ${dirname} in a browser`,
+ );
+}
+
+export function loadPreset(
+ name: string,
+ dirname: string,
+): Handler<{
+ filepath: string;
+ value: unknown;
+}> {
+ throw new Error(
+ `Cannot load preset ${name} relative to ${dirname} in a browser`,
+ );
+}
diff --git a/node_modules/@babel/core/src/config/files/index.ts b/node_modules/@babel/core/src/config/files/index.ts
new file mode 100644
index 00000000..b138e8da
--- /dev/null
+++ b/node_modules/@babel/core/src/config/files/index.ts
@@ -0,0 +1,29 @@
+type indexBrowserType = typeof import("./index-browser");
+type indexType = typeof import("./index");
+
+// Kind of gross, but essentially asserting that the exports of this module are the same as the
+// exports of index-browser, since this file may be replaced at bundle time with index-browser.
+({}) as any as indexBrowserType as indexType;
+
+export { findPackageData } from "./package.ts";
+
+export {
+ findConfigUpwards,
+ findRelativeConfig,
+ findRootConfig,
+ loadConfig,
+ resolveShowConfigPath,
+ ROOT_CONFIG_FILENAMES,
+} from "./configuration.ts";
+export type {
+ ConfigFile,
+ IgnoreFile,
+ RelativeConfig,
+ FilePackageData,
+} from "./types.ts";
+export {
+ loadPlugin,
+ loadPreset,
+ resolvePlugin,
+ resolvePreset,
+} from "./plugins.ts";
diff --git a/node_modules/@babel/core/src/config/resolve-targets-browser.ts b/node_modules/@babel/core/src/config/resolve-targets-browser.ts
new file mode 100644
index 00000000..f93294d2
--- /dev/null
+++ b/node_modules/@babel/core/src/config/resolve-targets-browser.ts
@@ -0,0 +1,40 @@
+import type { ValidatedOptions } from "./validation/options.ts";
+import getTargets, {
+ type InputTargets,
+} from "@babel/helper-compilation-targets";
+
+import type { Targets } from "@babel/helper-compilation-targets";
+
+export function resolveBrowserslistConfigFile(
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ browserslistConfigFile: string,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ configFilePath: string,
+): string | void {
+ return undefined;
+}
+
+export function resolveTargets(
+ options: ValidatedOptions,
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
+ root: string,
+): Targets {
+ const optTargets = options.targets;
+ let targets: InputTargets;
+
+ if (typeof optTargets === "string" || Array.isArray(optTargets)) {
+ targets = { browsers: optTargets };
+ } else if (optTargets) {
+ if ("esmodules" in optTargets) {
+ targets = { ...optTargets, esmodules: "intersect" };
+ } else {
+ // https://github.com/microsoft/TypeScript/issues/17002
+ targets = optTargets as InputTargets;
+ }
+ }
+
+ return getTargets(targets, {
+ ignoreBrowserslistConfig: true,
+ browserslistEnv: options.browserslistEnv,
+ });
+}
diff --git a/node_modules/@babel/core/src/config/resolve-targets.ts b/node_modules/@babel/core/src/config/resolve-targets.ts
new file mode 100644
index 00000000..6271c9f4
--- /dev/null
+++ b/node_modules/@babel/core/src/config/resolve-targets.ts
@@ -0,0 +1,56 @@
+type browserType = typeof import("./resolve-targets-browser");
+type nodeType = typeof import("./resolve-targets");
+
+// Kind of gross, but essentially asserting that the exports of this module are the same as the
+// exports of index-browser, since this file may be replaced at bundle time with index-browser.
+({}) as any as browserType as nodeType;
+
+import type { ValidatedOptions } from "./validation/options.ts";
+import path from "path";
+import getTargets, {
+ type InputTargets,
+} from "@babel/helper-compilation-targets";
+
+import type { Targets } from "@babel/helper-compilation-targets";
+
+export function resolveBrowserslistConfigFile(
+ browserslistConfigFile: string,
+ configFileDir: string,
+): string | undefined {
+ return path.resolve(configFileDir, browserslistConfigFile);
+}
+
+export function resolveTargets(
+ options: ValidatedOptions,
+ root: string,
+): Targets {
+ const optTargets = options.targets;
+ let targets: InputTargets;
+
+ if (typeof optTargets === "string" || Array.isArray(optTargets)) {
+ targets = { browsers: optTargets };
+ } else if (optTargets) {
+ if ("esmodules" in optTargets) {
+ targets = { ...optTargets, esmodules: "intersect" };
+ } else {
+ // https://github.com/microsoft/TypeScript/issues/17002
+ targets = optTargets as InputTargets;
+ }
+ }
+
+ const { browserslistConfigFile } = options;
+ let configFile;
+ let ignoreBrowserslistConfig = false;
+ if (typeof browserslistConfigFile === "string") {
+ configFile = browserslistConfigFile;
+ } else {
+ ignoreBrowserslistConfig = browserslistConfigFile === false;
+ }
+
+ return getTargets(targets, {
+ ignoreBrowserslistConfig,
+ configFile,
+ configPath: root,
+ browserslistEnv: options.browserslistEnv,
+ });
+}
diff --git a/node_modules/@babel/core/src/transform-file-browser.ts b/node_modules/@babel/core/src/transform-file-browser.ts
new file mode 100644
index 00000000..f316cb43
--- /dev/null
+++ b/node_modules/@babel/core/src/transform-file-browser.ts
@@ -0,0 +1,31 @@
+// duplicated from transform-file so we do not have to import anything here
+type TransformFile = {
+ (filename: string, callback: (error: Error, file: null) => void): void;
+ (
+ filename: string,
+ opts: any,
+ callback: (error: Error, file: null) => void,
+ ): void;
+};
+
+export const transformFile: TransformFile = function transformFile(
+ filename,
+ opts,
+ callback?: (error: Error, file: null) => void,
+) {
+ if (typeof opts === "function") {
+ callback = opts;
+ }
+
+ callback(new Error("Transforming files is not supported in browsers"), null);
+};
+
+export function transformFileSync(): never {
+ throw new Error("Transforming files is not supported in browsers");
+}
+
+export function transformFileAsync() {
+ return Promise.reject(
+ new Error("Transforming files is not supported in browsers"),
+ );
+}
diff --git a/node_modules/@babel/core/src/transform-file.ts b/node_modules/@babel/core/src/transform-file.ts
new file mode 100644
index 00000000..6bc2f836
--- /dev/null
+++ b/node_modules/@babel/core/src/transform-file.ts
@@ -0,0 +1,55 @@
+import gensync, { type Handler } from "gensync";
+
+import loadConfig from "./config/index.ts";
+import type { InputOptions, ResolvedConfig } from "./config/index.ts";
+import { run } from "./transformation/index.ts";
+import type { FileResult, FileResultCallback } from "./transformation/index.ts";
+import * as fs from "./gensync-utils/fs.ts";
+
+type transformFileBrowserType = typeof import("./transform-file-browser");
+type transformFileType = typeof import("./transform-file");
+
+// Kind of gross, but essentially asserting that the exports of this module are the same as the
+// exports of transform-file-browser, since this file may be replaced at bundle time with
+// transform-file-browser.
+({}) as any as transformFileBrowserType as transformFileType;
+
+const transformFileRunner = gensync(function* (
+ filename: string,
+ opts?: InputOptions,
+): Handler<FileResult | null> {
+ const options = { ...opts, filename };
+
+ const config: ResolvedConfig | null = yield* loadConfig(options);
+ if (config === null) return null;
+
+ const code = yield* fs.readFile(filename, "utf8");
+ return yield* run(config, code);
+});
+
+// @ts-expect-error TS doesn't detect that this signature is compatible
+export function transformFile(
+ filename: string,
+ callback: FileResultCallback,
+): void;
+export function transformFile(
+ filename: string,
+ opts: InputOptions | undefined | null,
+ callback: FileResultCallback,
+): void;
+export function transformFile(
+ ...args: Parameters<typeof transformFileRunner.errback>
+) {
+ transformFileRunner.errback(...args);
+}
+
+export function transformFileSync(
+ ...args: Parameters<typeof transformFileRunner.sync>
+) {
+ return transformFileRunner.sync(...args);
+}
+export function transformFileAsync(
+ ...args: Parameters<typeof transformFileRunner.async>
+) {
+ return transformFileRunner.async(...args);
+}