Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 7 additions & 9 deletions generateIndices.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,24 @@ generate_indices() {
local dir="$1"
local index_file="$dir/index.ts"

local ts_files
ts_files=$(find "$dir" -maxdepth 1 -type f -name "*.ts" ! -name "index.ts")
if [[ -z "$ts_files" ]]; then
local -a ts_files
mapfile -t ts_files < <(find "$dir" -maxdepth 1 -type f -name "*.ts" ! -name "index.ts" | sort)
if [[ ${#ts_files[@]} -eq 0 ]]; then
return
fi

echo "Generating index.ts for $dir"

echo "/* Auto-generated by $(basename "$(test -L "$0" && readlink "$0" || echo "$0")") */" > "$index_file"
for file in $ts_files; do
for file in "${ts_files[@]}"; do
local module_name
module_name=$(basename "$file" .ts)
echo "export * from \"./$module_name.js\";" >> "$index_file"
done

for subdir in "$dir"/*; do
if [[ ! -d "$subdir" ]]; then
continue
fi

local -a subdirs
mapfile -t subdirs < <(find "$dir" -mindepth 1 -maxdepth 1 -type d | sort)
for subdir in "${subdirs[@]}"; do
generate_indices "$subdir"
done

Expand Down
2 changes: 1 addition & 1 deletion src/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* Auto-generated by generateIndices.sh */
export * from "./Server.js";
export * from "./Request.js";
export * from "./ServerErrorRegistry.js";
export * from "./Server.js";
export * from "./response/index.js";
export * from "./routing/index.js";
4 changes: 2 additions & 2 deletions src/response/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/* Auto-generated by generateIndices.sh */
export * from "./EmptyResponse.js";
export * from "./BufferResponse.js";
export * from "./TextResponse.js";
export * from "./EmptyResponse.js";
export * from "./JsonResponse.js";
export * from "./Response.js";
export * from "./TextResponse.js";
2 changes: 1 addition & 1 deletion src/routing/index.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
/* Auto-generated by generateIndices.sh */
export * from "./Route.js";
export * from "./RouteRegistry.js";
export * from "./Route.js";