mirror of
https://github.com/danbulant/oxc
synced 2026-05-24 12:21:58 +00:00
refactor(transformer): reorder imports (#6582)
Re-order `use` statements in order: 1. `std` 2. External crates 3. `oxc_*` crates 4. Current crate `use crate::...` 5. Super `use super::...` 6. Local modules This order is from "furthest away" to "closest". This makes it clearer to see what is coming from where.
This commit is contained in:
parent
c5e66e108f
commit
8c6afe05f3
30 changed files with 112 additions and 84 deletions
|
|
@ -59,15 +59,17 @@
|
||||||
//! ```
|
//! ```
|
||||||
//!
|
//!
|
||||||
//! Based on [@babel/helper](https://github.com/babel/babel/tree/main/packages/babel-helpers).
|
//! Based on [@babel/helper](https://github.com/babel/babel/tree/main/packages/babel-helpers).
|
||||||
|
|
||||||
use std::{borrow::Cow, cell::RefCell};
|
use std::{borrow::Cow, cell::RefCell};
|
||||||
|
|
||||||
|
use rustc_hash::FxHashMap;
|
||||||
|
use serde::Deserialize;
|
||||||
|
|
||||||
use oxc_allocator::Vec;
|
use oxc_allocator::Vec;
|
||||||
use oxc_ast::ast::{Argument, CallExpression, Expression, Program, TSTypeParameterInstantiation};
|
use oxc_ast::ast::{Argument, CallExpression, Expression, Program, TSTypeParameterInstantiation};
|
||||||
use oxc_semantic::{ReferenceFlags, SymbolFlags};
|
use oxc_semantic::{ReferenceFlags, SymbolFlags};
|
||||||
use oxc_span::{Atom, SPAN};
|
use oxc_span::{Atom, SPAN};
|
||||||
use oxc_traverse::{BoundIdentifier, Traverse, TraverseCtx};
|
use oxc_traverse::{BoundIdentifier, Traverse, TraverseCtx};
|
||||||
use rustc_hash::FxHashMap;
|
|
||||||
use serde::Deserialize;
|
|
||||||
|
|
||||||
use crate::TransformCtx;
|
use crate::TransformCtx;
|
||||||
|
|
||||||
|
|
|
||||||
2
crates/oxc_transformer/src/env/data/mod.rs
vendored
2
crates/oxc_transformer/src/env/data/mod.rs
vendored
|
|
@ -1,3 +1,3 @@
|
||||||
mod babel;
|
mod babel;
|
||||||
|
|
||||||
pub use self::babel::can_enable_plugin;
|
pub use babel::can_enable_plugin;
|
||||||
|
|
|
||||||
8
crates/oxc_transformer/src/env/mod.rs
vendored
8
crates/oxc_transformer/src/env/mod.rs
vendored
|
|
@ -2,8 +2,6 @@ mod data;
|
||||||
mod options;
|
mod options;
|
||||||
mod targets;
|
mod targets;
|
||||||
|
|
||||||
pub use self::{
|
pub use data::can_enable_plugin;
|
||||||
data::can_enable_plugin,
|
pub use options::EnvOptions;
|
||||||
options::EnvOptions,
|
pub use targets::{Targets, Versions};
|
||||||
targets::{Targets, Versions},
|
|
||||||
};
|
|
||||||
|
|
|
||||||
3
crates/oxc_transformer/src/env/options.rs
vendored
3
crates/oxc_transformer/src/env/options.rs
vendored
|
|
@ -1,7 +1,8 @@
|
||||||
use oxc_diagnostics::Error;
|
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
use serde_json::Value;
|
use serde_json::Value;
|
||||||
|
|
||||||
|
use oxc_diagnostics::Error;
|
||||||
|
|
||||||
use super::targets::{query::Targets, Versions};
|
use super::targets::{query::Targets, Versions};
|
||||||
|
|
||||||
fn default_as_true() -> bool {
|
fn default_as_true() -> bool {
|
||||||
|
|
|
||||||
|
|
@ -10,10 +10,10 @@ use std::ops::{Deref, DerefMut};
|
||||||
use rustc_hash::FxHashMap;
|
use rustc_hash::FxHashMap;
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
pub use self::query::Targets;
|
|
||||||
use self::version::Version;
|
|
||||||
pub mod query;
|
pub mod query;
|
||||||
pub mod version;
|
pub mod version;
|
||||||
|
pub use query::Targets;
|
||||||
|
use version::Version;
|
||||||
|
|
||||||
/// A map of browser names to data for feature support in browser.
|
/// A map of browser names to data for feature support in browser.
|
||||||
///
|
///
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,11 @@
|
||||||
use std::sync::OnceLock;
|
use std::sync::OnceLock;
|
||||||
|
|
||||||
use dashmap::DashMap;
|
use dashmap::DashMap;
|
||||||
use oxc_diagnostics::{Error, OxcDiagnostic};
|
|
||||||
use rustc_hash::FxHashMap;
|
use rustc_hash::FxHashMap;
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
|
use oxc_diagnostics::{Error, OxcDiagnostic};
|
||||||
|
|
||||||
use super::{version::Version, Versions};
|
use super::{version::Version, Versions};
|
||||||
|
|
||||||
#[derive(Debug, Clone, Deserialize)]
|
#[derive(Debug, Clone, Deserialize)]
|
||||||
|
|
|
||||||
|
|
@ -124,6 +124,8 @@
|
||||||
//! * Babel plugin implementation: <https://github.com/babel/babel/blob/main/packages/babel-plugin-transform-arrow-functions>
|
//! * Babel plugin implementation: <https://github.com/babel/babel/blob/main/packages/babel-plugin-transform-arrow-functions>
|
||||||
//! * Arrow function specification: <https://tc39.es/ecma262/#sec-arrow-function-definitions>
|
//! * Arrow function specification: <https://tc39.es/ecma262/#sec-arrow-function-definitions>
|
||||||
|
|
||||||
|
use serde::Deserialize;
|
||||||
|
|
||||||
use oxc_allocator::Vec;
|
use oxc_allocator::Vec;
|
||||||
use oxc_ast::{ast::*, NONE};
|
use oxc_ast::{ast::*, NONE};
|
||||||
use oxc_data_structures::stack::SparseStack;
|
use oxc_data_structures::stack::SparseStack;
|
||||||
|
|
@ -134,8 +136,6 @@ use oxc_syntax::{
|
||||||
};
|
};
|
||||||
use oxc_traverse::{Ancestor, BoundIdentifier, Traverse, TraverseCtx};
|
use oxc_traverse::{Ancestor, BoundIdentifier, Traverse, TraverseCtx};
|
||||||
|
|
||||||
use serde::Deserialize;
|
|
||||||
|
|
||||||
#[derive(Debug, Default, Clone, Deserialize)]
|
#[derive(Debug, Default, Clone, Deserialize)]
|
||||||
pub struct ArrowFunctionsOptions {
|
pub struct ArrowFunctionsOptions {
|
||||||
/// This option enables the following:
|
/// This option enables the following:
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
mod arrow_functions;
|
mod arrow_functions;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use arrow_functions::{ArrowFunctions, ArrowFunctionsOptions};
|
pub use arrow_functions::{ArrowFunctions, ArrowFunctionsOptions};
|
||||||
pub use options::ES2015Options;
|
pub use options::ES2015Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
pub struct ES2015<'a> {
|
pub struct ES2015<'a> {
|
||||||
options: ES2015Options,
|
options: ES2015Options,
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
use super::ArrowFunctionsOptions;
|
|
||||||
use crate::env::{can_enable_plugin, Versions};
|
use crate::env::{can_enable_plugin, Versions};
|
||||||
|
|
||||||
|
use super::ArrowFunctionsOptions;
|
||||||
|
|
||||||
#[derive(Debug, Default, Clone, Deserialize)]
|
#[derive(Debug, Default, Clone, Deserialize)]
|
||||||
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
||||||
pub struct ES2015Options {
|
pub struct ES2015Options {
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod exponentiation_operator;
|
mod exponentiation_operator;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use exponentiation_operator::ExponentiationOperator;
|
pub use exponentiation_operator::ExponentiationOperator;
|
||||||
pub use options::ES2016Options;
|
pub use options::ES2016Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
pub struct ES2016<'a, 'ctx> {
|
pub struct ES2016<'a, 'ctx> {
|
||||||
options: ES2016Options,
|
options: ES2016Options,
|
||||||
|
|
|
||||||
|
|
@ -42,13 +42,15 @@
|
||||||
//! * Async / Await TC39 proposal: <https://github.com/tc39/proposal-async-await>
|
//! * Async / Await TC39 proposal: <https://github.com/tc39/proposal-async-await>
|
||||||
//!
|
//!
|
||||||
|
|
||||||
use oxc_ast::ast::{
|
use oxc_ast::{
|
||||||
ArrowFunctionExpression, Expression, Function, FunctionType, Statement, VariableDeclarationKind,
|
ast::{
|
||||||
|
ArrowFunctionExpression, Expression, Function, FunctionType, Statement,
|
||||||
|
VariableDeclarationKind,
|
||||||
|
},
|
||||||
|
NONE,
|
||||||
};
|
};
|
||||||
use oxc_ast::NONE;
|
|
||||||
use oxc_span::{Atom, SPAN};
|
use oxc_span::{Atom, SPAN};
|
||||||
use oxc_syntax::reference::ReferenceFlags;
|
use oxc_syntax::{reference::ReferenceFlags, symbol::SymbolId};
|
||||||
use oxc_syntax::symbol::SymbolId;
|
|
||||||
use oxc_traverse::{Ancestor, Traverse, TraverseCtx};
|
use oxc_traverse::{Ancestor, Traverse, TraverseCtx};
|
||||||
|
|
||||||
pub struct AsyncToGenerator;
|
pub struct AsyncToGenerator;
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
mod async_to_generator;
|
use oxc_ast::ast::{ArrowFunctionExpression, Expression, Statement};
|
||||||
pub mod options;
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
use crate::es2017::async_to_generator::AsyncToGenerator;
|
use crate::es2017::async_to_generator::AsyncToGenerator;
|
||||||
use crate::es2017::options::ES2017Options;
|
use crate::es2017::options::ES2017Options;
|
||||||
use oxc_ast::ast::{ArrowFunctionExpression, Expression, Statement};
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
mod async_to_generator;
|
||||||
|
pub mod options;
|
||||||
|
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
pub struct ES2017 {
|
pub struct ES2017 {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
use crate::env::{can_enable_plugin, Versions};
|
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
|
use crate::env::{can_enable_plugin, Versions};
|
||||||
|
|
||||||
#[derive(Debug, Default, Clone, Deserialize)]
|
#[derive(Debug, Default, Clone, Deserialize)]
|
||||||
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
||||||
pub struct ES2017Options {
|
pub struct ES2017Options {
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::context::TransformCtx;
|
||||||
|
|
||||||
mod object_rest_spread;
|
mod object_rest_spread;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use object_rest_spread::{ObjectRestSpread, ObjectRestSpreadOptions};
|
pub use object_rest_spread::{ObjectRestSpread, ObjectRestSpreadOptions};
|
||||||
pub use options::ES2018Options;
|
pub use options::ES2018Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
use crate::context::TransformCtx;
|
|
||||||
|
|
||||||
pub struct ES2018<'a, 'ctx> {
|
pub struct ES2018<'a, 'ctx> {
|
||||||
options: ES2018Options,
|
options: ES2018Options,
|
||||||
|
|
|
||||||
|
|
@ -26,16 +26,17 @@
|
||||||
//! * Babel plugin implementation: <https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-object-rest-spread>
|
//! * Babel plugin implementation: <https://github.com/babel/babel/tree/main/packages/babel-plugin-transform-object-rest-spread>
|
||||||
//! * Object rest/spread TC39 proposal: <https://github.com/tc39/proposal-object-rest-spread>
|
//! * Object rest/spread TC39 proposal: <https://github.com/tc39/proposal-object-rest-spread>
|
||||||
|
|
||||||
use object_rest::ObjectRest;
|
use serde::Deserialize;
|
||||||
use object_spread::ObjectSpread;
|
|
||||||
use oxc_ast::ast::*;
|
use oxc_ast::ast::*;
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
use serde::Deserialize;
|
|
||||||
|
|
||||||
use crate::context::TransformCtx;
|
use crate::context::TransformCtx;
|
||||||
|
|
||||||
mod object_rest;
|
mod object_rest;
|
||||||
mod object_spread;
|
mod object_spread;
|
||||||
|
use object_rest::ObjectRest;
|
||||||
|
use object_spread::ObjectSpread;
|
||||||
|
|
||||||
#[derive(Debug, Default, Clone, Copy, Deserialize)]
|
#[derive(Debug, Default, Clone, Copy, Deserialize)]
|
||||||
#[serde(default, rename_all = "camelCase")]
|
#[serde(default, rename_all = "camelCase")]
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
use serde::Deserialize;
|
use serde::Deserialize;
|
||||||
|
|
||||||
use super::ObjectRestSpreadOptions;
|
|
||||||
use crate::env::{can_enable_plugin, Versions};
|
use crate::env::{can_enable_plugin, Versions};
|
||||||
|
|
||||||
|
use super::ObjectRestSpreadOptions;
|
||||||
|
|
||||||
#[derive(Debug, Default, Clone, Deserialize)]
|
#[derive(Debug, Default, Clone, Deserialize)]
|
||||||
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
#[serde(default, rename_all = "camelCase", deny_unknown_fields)]
|
||||||
pub struct ES2018Options {
|
pub struct ES2018Options {
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,11 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
mod optional_catch_binding;
|
mod optional_catch_binding;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use optional_catch_binding::OptionalCatchBinding;
|
pub use optional_catch_binding::OptionalCatchBinding;
|
||||||
pub use options::ES2019Options;
|
pub use options::ES2019Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
pub struct ES2019 {
|
pub struct ES2019 {
|
||||||
options: ES2019Options,
|
options: ES2019Options,
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod nullish_coalescing_operator;
|
mod nullish_coalescing_operator;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use nullish_coalescing_operator::NullishCoalescingOperator;
|
pub use nullish_coalescing_operator::NullishCoalescingOperator;
|
||||||
pub use options::ES2020Options;
|
pub use options::ES2020Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
pub struct ES2020<'a, 'ctx> {
|
pub struct ES2020<'a, 'ctx> {
|
||||||
options: ES2020Options,
|
options: ES2020Options,
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod logical_assignment_operators;
|
mod logical_assignment_operators;
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use logical_assignment_operators::LogicalAssignmentOperators;
|
pub use logical_assignment_operators::LogicalAssignmentOperators;
|
||||||
pub use options::ES2021Options;
|
pub use options::ES2021Options;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
|
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
pub struct ES2021<'a, 'ctx> {
|
pub struct ES2021<'a, 'ctx> {
|
||||||
options: ES2021Options,
|
options: ES2021Options,
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,14 @@
|
||||||
//! * <https://babel.dev/docs/presets>
|
//! * <https://babel.dev/docs/presets>
|
||||||
//! * <https://github.com/microsoft/TypeScript/blob/main/src/compiler/transformer.ts>
|
//! * <https://github.com/microsoft/TypeScript/blob/main/src/compiler/transformer.ts>
|
||||||
|
|
||||||
use oxc_ast::AstBuilder;
|
use std::path::Path;
|
||||||
|
|
||||||
|
use oxc_allocator::{Allocator, Vec};
|
||||||
|
use oxc_ast::{ast::*, AstBuilder};
|
||||||
|
use oxc_diagnostics::OxcDiagnostic;
|
||||||
|
use oxc_semantic::{ScopeTree, SymbolTable};
|
||||||
|
use oxc_span::SPAN;
|
||||||
|
use oxc_traverse::{traverse_mut, Traverse, TraverseCtx};
|
||||||
|
|
||||||
// Core
|
// Core
|
||||||
mod common;
|
mod common;
|
||||||
|
|
@ -30,22 +37,18 @@ mod typescript;
|
||||||
|
|
||||||
mod plugins;
|
mod plugins;
|
||||||
|
|
||||||
use std::path::Path;
|
|
||||||
|
|
||||||
use common::Common;
|
use common::Common;
|
||||||
|
use context::TransformCtx;
|
||||||
|
use es2015::ES2015;
|
||||||
use es2016::ES2016;
|
use es2016::ES2016;
|
||||||
use es2017::ES2017;
|
use es2017::ES2017;
|
||||||
use es2018::ES2018;
|
use es2018::ES2018;
|
||||||
use es2019::ES2019;
|
use es2019::ES2019;
|
||||||
use es2020::ES2020;
|
use es2020::ES2020;
|
||||||
use es2021::ES2021;
|
use es2021::ES2021;
|
||||||
use oxc_allocator::{Allocator, Vec};
|
use react::React;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_diagnostics::OxcDiagnostic;
|
|
||||||
use oxc_semantic::{ScopeTree, SymbolTable};
|
|
||||||
use oxc_span::SPAN;
|
|
||||||
use oxc_traverse::{traverse_mut, Traverse, TraverseCtx};
|
|
||||||
use regexp::RegExp;
|
use regexp::RegExp;
|
||||||
|
use typescript::TypeScript;
|
||||||
|
|
||||||
pub use crate::{
|
pub use crate::{
|
||||||
compiler_assumptions::CompilerAssumptions,
|
compiler_assumptions::CompilerAssumptions,
|
||||||
|
|
@ -56,7 +59,6 @@ pub use crate::{
|
||||||
react::{JsxOptions, JsxRuntime, ReactRefreshOptions},
|
react::{JsxOptions, JsxRuntime, ReactRefreshOptions},
|
||||||
typescript::{RewriteExtensionsMode, TypeScriptOptions},
|
typescript::{RewriteExtensionsMode, TypeScriptOptions},
|
||||||
};
|
};
|
||||||
use crate::{context::TransformCtx, es2015::ES2015, react::React, typescript::TypeScript};
|
|
||||||
|
|
||||||
pub struct TransformerReturn {
|
pub struct TransformerReturn {
|
||||||
pub errors: std::vec::Vec<OxcDiagnostic>,
|
pub errors: std::vec::Vec<OxcDiagnostic>,
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,5 @@
|
||||||
mod babel;
|
mod babel;
|
||||||
mod transformer;
|
mod transformer;
|
||||||
|
|
||||||
pub use self::{babel::BabelOptions, transformer::TransformOptions};
|
pub use babel::BabelOptions;
|
||||||
|
pub use transformer::TransformOptions;
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,9 @@
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
|
|
||||||
use oxc_diagnostics::{Error, OxcDiagnostic};
|
|
||||||
use serde_json::{from_value, json, Value};
|
use serde_json::{from_value, json, Value};
|
||||||
|
|
||||||
|
use oxc_diagnostics::{Error, OxcDiagnostic};
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
common::helper_loader::{HelperLoaderMode, HelperLoaderOptions},
|
common::helper_loader::{HelperLoaderMode, HelperLoaderOptions},
|
||||||
compiler_assumptions::CompilerAssumptions,
|
compiler_assumptions::CompilerAssumptions,
|
||||||
|
|
|
||||||
|
|
@ -103,6 +103,7 @@ use oxc_traverse::{BoundIdentifier, Traverse, TraverseCtx};
|
||||||
use crate::TransformCtx;
|
use crate::TransformCtx;
|
||||||
|
|
||||||
use super::diagnostics;
|
use super::diagnostics;
|
||||||
|
|
||||||
pub use super::{
|
pub use super::{
|
||||||
jsx_self::ReactJsxSelf,
|
jsx_self::ReactJsxSelf,
|
||||||
jsx_source::ReactJsxSource,
|
jsx_source::ReactJsxSource,
|
||||||
|
|
|
||||||
|
|
@ -33,12 +33,13 @@
|
||||||
//!
|
//!
|
||||||
//! * Babel plugin implementation: <https://github.com/babel/babel/blob/main/packages/babel-plugin-transform-react-jsx-source/src/index.ts>
|
//! * Babel plugin implementation: <https://github.com/babel/babel/blob/main/packages/babel-plugin-transform-react-jsx-source/src/index.ts>
|
||||||
|
|
||||||
|
use ropey::Rope;
|
||||||
|
|
||||||
use oxc_ast::{ast::*, NONE};
|
use oxc_ast::{ast::*, NONE};
|
||||||
use oxc_diagnostics::OxcDiagnostic;
|
use oxc_diagnostics::OxcDiagnostic;
|
||||||
use oxc_span::{Span, SPAN};
|
use oxc_span::{Span, SPAN};
|
||||||
use oxc_syntax::{number::NumberBase, symbol::SymbolFlags};
|
use oxc_syntax::{number::NumberBase, symbol::SymbolFlags};
|
||||||
use oxc_traverse::{BoundIdentifier, Traverse, TraverseCtx};
|
use oxc_traverse::{BoundIdentifier, Traverse, TraverseCtx};
|
||||||
use ropey::Rope;
|
|
||||||
|
|
||||||
use crate::TransformCtx;
|
use crate::TransformCtx;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,9 @@
|
||||||
|
use oxc_allocator::Vec;
|
||||||
|
use oxc_ast::{ast::*, AstBuilder};
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod comments;
|
mod comments;
|
||||||
mod diagnostics;
|
mod diagnostics;
|
||||||
mod display_name;
|
mod display_name;
|
||||||
|
|
@ -7,18 +13,11 @@ mod jsx_source;
|
||||||
mod options;
|
mod options;
|
||||||
mod refresh;
|
mod refresh;
|
||||||
mod utils;
|
mod utils;
|
||||||
|
|
||||||
use oxc_allocator::Vec;
|
|
||||||
use oxc_ast::{ast::*, AstBuilder};
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
use refresh::ReactRefresh;
|
use refresh::ReactRefresh;
|
||||||
|
|
||||||
pub use self::{
|
pub use display_name::ReactDisplayName;
|
||||||
display_name::ReactDisplayName,
|
pub use jsx::ReactJsx;
|
||||||
jsx::ReactJsx,
|
pub use options::{JsxOptions, JsxRuntime, ReactRefreshOptions};
|
||||||
options::{JsxOptions, JsxRuntime, ReactRefreshOptions},
|
|
||||||
};
|
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
pub(crate) use comments::update_options_with_comments;
|
pub(crate) use comments::update_options_with_comments;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,19 @@
|
||||||
use std::iter::once;
|
use std::iter::once;
|
||||||
|
|
||||||
use base64::prelude::{Engine, BASE64_STANDARD};
|
use base64::prelude::{Engine, BASE64_STANDARD};
|
||||||
|
use rustc_hash::FxHashMap;
|
||||||
|
use sha1::{Digest, Sha1};
|
||||||
|
|
||||||
use oxc_allocator::CloneIn;
|
use oxc_allocator::CloneIn;
|
||||||
use oxc_ast::{ast::*, match_expression, AstBuilder, NONE};
|
use oxc_ast::{ast::*, match_expression, AstBuilder, NONE};
|
||||||
use oxc_semantic::{Reference, ReferenceFlags, ScopeFlags, ScopeId, SymbolFlags, SymbolId};
|
use oxc_semantic::{Reference, ReferenceFlags, ScopeFlags, ScopeId, SymbolFlags, SymbolId};
|
||||||
use oxc_span::{Atom, GetSpan, SPAN};
|
use oxc_span::{Atom, GetSpan, SPAN};
|
||||||
use oxc_syntax::operator::AssignmentOperator;
|
use oxc_syntax::operator::AssignmentOperator;
|
||||||
use oxc_traverse::{Ancestor, Traverse, TraverseCtx};
|
use oxc_traverse::{Ancestor, Traverse, TraverseCtx};
|
||||||
use rustc_hash::FxHashMap;
|
|
||||||
use sha1::{Digest, Sha1};
|
use crate::TransformCtx;
|
||||||
|
|
||||||
use super::options::ReactRefreshOptions;
|
use super::options::ReactRefreshOptions;
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
/// Parse a string into a `RefreshIdentifierResolver` and convert it into an `Expression`
|
/// Parse a string into a `RefreshIdentifierResolver` and convert it into an `Expression`
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
|
|
||||||
|
|
@ -58,6 +58,7 @@ use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
use crate::TransformCtx;
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod options;
|
mod options;
|
||||||
|
|
||||||
pub use options::RegExpOptions;
|
pub use options::RegExpOptions;
|
||||||
|
|
||||||
pub struct RegExp<'a, 'ctx> {
|
pub struct RegExp<'a, 'ctx> {
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
use std::cell::Cell;
|
use std::cell::Cell;
|
||||||
|
|
||||||
|
use rustc_hash::FxHashSet;
|
||||||
|
|
||||||
use oxc_allocator::Vec as ArenaVec;
|
use oxc_allocator::Vec as ArenaVec;
|
||||||
use oxc_ast::ast::*;
|
use oxc_ast::ast::*;
|
||||||
use oxc_diagnostics::OxcDiagnostic;
|
use oxc_diagnostics::OxcDiagnostic;
|
||||||
|
|
@ -14,7 +16,6 @@ use oxc_syntax::{
|
||||||
symbol::SymbolId,
|
symbol::SymbolId,
|
||||||
};
|
};
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
use rustc_hash::FxHashSet;
|
|
||||||
|
|
||||||
use crate::{TransformCtx, TypeScriptOptions};
|
use crate::{TransformCtx, TypeScriptOptions};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,9 @@
|
||||||
|
use oxc_allocator::Vec;
|
||||||
|
use oxc_ast::ast::*;
|
||||||
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
|
use crate::TransformCtx;
|
||||||
|
|
||||||
mod annotations;
|
mod annotations;
|
||||||
mod diagnostics;
|
mod diagnostics;
|
||||||
mod r#enum;
|
mod r#enum;
|
||||||
|
|
@ -6,16 +12,13 @@ mod namespace;
|
||||||
mod options;
|
mod options;
|
||||||
mod rewrite_extensions;
|
mod rewrite_extensions;
|
||||||
|
|
||||||
|
use annotations::TypeScriptAnnotations;
|
||||||
use module::TypeScriptModule;
|
use module::TypeScriptModule;
|
||||||
use namespace::TypeScriptNamespace;
|
use namespace::TypeScriptNamespace;
|
||||||
use oxc_allocator::Vec;
|
use r#enum::TypeScriptEnum;
|
||||||
use oxc_ast::ast::*;
|
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
|
||||||
use rewrite_extensions::TypeScriptRewriteExtensions;
|
use rewrite_extensions::TypeScriptRewriteExtensions;
|
||||||
|
|
||||||
pub use self::options::{RewriteExtensionsMode, TypeScriptOptions};
|
pub use options::{RewriteExtensionsMode, TypeScriptOptions};
|
||||||
use self::{annotations::TypeScriptAnnotations, r#enum::TypeScriptEnum};
|
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
/// [Preset TypeScript](https://babeljs.io/docs/babel-preset-typescript)
|
/// [Preset TypeScript](https://babeljs.io/docs/babel-preset-typescript)
|
||||||
///
|
///
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
use rustc_hash::FxHashSet;
|
||||||
|
|
||||||
use oxc_allocator::{Box, Vec};
|
use oxc_allocator::{Box, Vec};
|
||||||
use oxc_ast::{ast::*, NONE};
|
use oxc_ast::{ast::*, NONE};
|
||||||
use oxc_ecmascript::BoundNames;
|
use oxc_ecmascript::BoundNames;
|
||||||
|
|
@ -9,13 +11,12 @@ use oxc_syntax::{
|
||||||
};
|
};
|
||||||
use oxc_traverse::{Traverse, TraverseCtx};
|
use oxc_traverse::{Traverse, TraverseCtx};
|
||||||
|
|
||||||
use rustc_hash::FxHashSet;
|
use crate::TransformCtx;
|
||||||
|
|
||||||
use super::{
|
use super::{
|
||||||
diagnostics::{ambient_module_nested, namespace_exporting_non_const, namespace_not_supported},
|
diagnostics::{ambient_module_nested, namespace_exporting_non_const, namespace_not_supported},
|
||||||
TypeScriptOptions,
|
TypeScriptOptions,
|
||||||
};
|
};
|
||||||
use crate::TransformCtx;
|
|
||||||
|
|
||||||
pub struct TypeScriptNamespace<'a, 'ctx> {
|
pub struct TypeScriptNamespace<'a, 'ctx> {
|
||||||
ctx: &'ctx TransformCtx<'a>,
|
ctx: &'ctx TransformCtx<'a>,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue