summaryrefslogtreecommitdiff
path: root/cli/tools/repl
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tools/repl')
-rw-r--r--cli/tools/repl/session.rs23
1 files changed, 16 insertions, 7 deletions
diff --git a/cli/tools/repl/session.rs b/cli/tools/repl/session.rs
index 484664dae..8e05c4abb 100644
--- a/cli/tools/repl/session.rs
+++ b/cli/tools/repl/session.rs
@@ -7,7 +7,7 @@ use crate::cdp;
use crate::colors;
use crate::lsp::ReplLanguageServer;
use crate::npm::CliNpmResolver;
-use crate::resolver::CliGraphResolver;
+use crate::resolver::CliResolver;
use crate::tools::test::report_tests;
use crate::tools::test::reporters::PrettyTestReporter;
use crate::tools::test::reporters::TestReporter;
@@ -25,6 +25,7 @@ use deno_ast::swc::visit::noop_visit_type;
use deno_ast::swc::visit::Visit;
use deno_ast::swc::visit::VisitWith;
use deno_ast::ImportsNotUsedAsValues;
+use deno_ast::ModuleKind;
use deno_ast::ModuleSpecifier;
use deno_ast::ParseDiagnosticsError;
use deno_ast::ParsedSource;
@@ -43,12 +44,12 @@ use deno_core::url::Url;
use deno_core::LocalInspectorSession;
use deno_core::PollEventLoopOptions;
use deno_graph::source::ResolutionMode;
-use deno_graph::source::Resolver;
use deno_graph::Position;
use deno_graph::PositionRange;
use deno_graph::SpecifierWithRange;
use deno_runtime::worker::MainWorker;
use deno_semver::npm::NpmPackageReqReference;
+use node_resolver::NodeModuleKind;
use once_cell::sync::Lazy;
use regex::Match;
use regex::Regex;
@@ -179,7 +180,7 @@ struct ReplJsxState {
pub struct ReplSession {
npm_resolver: Arc<dyn CliNpmResolver>,
- resolver: Arc<CliGraphResolver>,
+ resolver: Arc<CliResolver>,
pub worker: MainWorker,
session: LocalInspectorSession,
pub context_id: u64,
@@ -198,7 +199,7 @@ impl ReplSession {
pub async fn initialize(
cli_options: &CliOptions,
npm_resolver: Arc<dyn CliNpmResolver>,
- resolver: Arc<CliGraphResolver>,
+ resolver: Arc<CliResolver>,
mut worker: MainWorker,
main_module: ModuleSpecifier,
test_event_receiver: TestEventReceiver,
@@ -244,7 +245,7 @@ impl ReplSession {
assert_ne!(context_id, 0);
let referrer =
- deno_core::resolve_path("./$deno$repl.ts", cli_options.initial_cwd())
+ deno_core::resolve_path("./$deno$repl.mts", cli_options.initial_cwd())
.unwrap();
let cwd_url =
@@ -641,6 +642,10 @@ impl ReplSession {
jsx_fragment_factory: self.jsx.frag_factory.clone(),
jsx_import_source: self.jsx.import_source.clone(),
var_decl_imports: true,
+ verbatim_module_syntax: false,
+ },
+ &deno_ast::TranspileModuleOptions {
+ module_kind: Some(ModuleKind::Esm),
},
&deno_ast::EmitOptions {
source_map: deno_ast::SourceMapOption::None,
@@ -651,7 +656,6 @@ impl ReplSession {
},
)?
.into_source()
- .into_string()?
.text;
let value = self
@@ -708,7 +712,12 @@ impl ReplSession {
.flat_map(|i| {
self
.resolver
- .resolve(i, &referrer_range, ResolutionMode::Execution)
+ .resolve(
+ i,
+ &referrer_range,
+ NodeModuleKind::Esm,
+ ResolutionMode::Execution,
+ )
.ok()
.or_else(|| ModuleSpecifier::parse(i).ok())
})