Skip to content

Commit 3db4c54

Browse files
committed
Include nested modules
1 parent e201994 commit 3db4c54

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/playground.gleam

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,14 +126,15 @@ fn make_prelude_available() -> snag.Result(Nil) {
126126

127127
fn make_stdlib_available() -> snag.Result(Nil) {
128128
use files <- result.try(
129-
simplifile.read_directory(stdlib_sources)
129+
simplifile.get_files(stdlib_sources)
130130
|> file_error("Failed to read stdlib directory"),
131131
)
132132

133133
let modules =
134134
files
135135
|> list.filter(fn(file) { string.ends_with(file, ".gleam") })
136136
|> list.map(string.replace(_, ".gleam", ""))
137+
|> list.map(string.replace(_, stdlib_sources <> "/", ""))
137138

138139
use _ <- result.try(
139140
generate_stdlib_bundle(modules)
@@ -179,15 +180,16 @@ fn copy_compiled_stdlib(modules: List(String)) -> snag.Result(Nil) {
179180
)
180181

181182
let dest = public_precompiled <> "/gleam"
182-
use _ <- result.try(
183-
simplifile.create_directory_all(dest)
184-
|> file_error("Failed to make " <> dest),
185-
)
186183

187184
use _ <- result.try(
188185
list.try_each(modules, fn(name) {
189186
let from = stdlib_compiled <> "/" <> name <> ".mjs"
190187
let to = dest <> "/" <> name <> ".mjs"
188+
let parent = filepath.directory_name(to)
189+
use _ <- result.try(
190+
simplifile.create_directory_all(parent)
191+
|> file_error("Failed to make " <> parent),
192+
)
191193
simplifile.copy_file(from, to)
192194
|> file_error("Failed to copy stdlib module " <> from)
193195
}),

0 commit comments

Comments
 (0)