diff hg-web/BUILD @ 195:f8f5004a920a

Merging back hg-web-tip
author MrJuneJune <me@mrjunejune.com>
date Tue, 27 Jan 2026 06:51:44 -0800
parents 9f4429c49733
children
line wrap: on
line diff
--- a/hg-web/BUILD	Sat Jan 24 06:37:43 2026 -0800
+++ b/hg-web/BUILD	Tue Jan 27 06:51:44 2026 -0800
@@ -1,38 +1,73 @@
 load("@rules_cc//cc:cc_binary.bzl", "cc_binary")
-load("//gui_ze:gui_ze.bzl", "move_files_into_dir", "bundle")
+load("//gui_ze:gui_ze.bzl", "move_files_into_dir", "bundle", "bun_bundle")
+
+# Source files
+filegroup(
+  name = "src_ts_files",
+  srcs = glob([
+    "src/**/*.ts",
+    "src/**/*.tsx",
+    "src/**/*.js",
+    "src/**/*.jsx",
+  ], allow_empty = True),
+)
 
+# Bundle TypeScript with Bun
+bun_bundle(
+  name = "page",
+  src = "src/main.tsx",
+  deps = [
+    ":src_ts_files",
+    "//markdown_converter:markdown_to_html_wasm",
+    "//third_party/highlight:js",
+  ],
+  visibility = ["//visibility:public"],
+)
+
+# Prepare compiled assets
 move_files_into_dir(
-  name = "compiled_ts",
+  name = "compiled_js",
   srcs = [
-    "//markdown_converter:markdown_to_html",
+    ":page",
+    "//markdown_converter:markdown_to_html_wasm",
+    "//third_party/highlight:js",
   ],
   dest = "src",
 )
 
+move_files_into_dir(
+  name = "public_files",
+  srcs = ["//mrjunejune:public_files"],
+  dest = "src/public",
+)
+
+move_files_into_dir(
+  name = "public_fonts_files",
+  srcs = ["//mrjunejune:public_fonts_files"],
+  dest = "src/public/fonts",
+)
+
 filegroup(
-  name = "src_files",
-  srcs = glob(["src/**"]) + [":compiled_ts"],
+  name = "all_assets",
+  srcs = glob(["src/**"]) + [":compiled_js", ":public_files", ":public_fonts_files"],
+)
+
+# Server binaries
+cc_binary(
+  name = "hg_web_server",
+  srcs = ["main.c"],
+  deps = ["//seobeo:seobeo"],
+  data = [":all_assets"],
 )
 
 cc_binary(
-  name = "hg_web_server",
+  name = "hg_web_server_debug",
   srcs = ["main.c"],
-  deps = ["//seobeo:seobeo_server"],
-  data = [":src_files"],
-  defines = ["REPO_ROOT=\\\"\"/home/mrjunejune/zenbu\"\\\""],
+  deps = ["//seobeo:seobeo"],
+  data = [":all_assets"],
 )
 
 bundle(
   name = "hg_web_server_bundle",
   binary = ":hg_web_server",
 )
-
-
-cc_binary(
-  name = "hg_web_server_debug",
-  srcs = ["main.c"],
-  deps = ["//seobeo:seobeo_tcp_server_ws_debug"],
-  data = [":src_files"],
-  defines = ["REPO_ROOT=\\\"\"/home/mrjunejune/zenbu\"\\\""],
-)
-