@hypen-space/cli 0.3.8 → 0.3.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/bin/hypen.js CHANGED
@@ -1,21 +1,6 @@
1
1
  #!/usr/bin/env node
2
- import { createRequire } from "node:module";
3
- var __create = Object.create;
4
- var __getProtoOf = Object.getPrototypeOf;
2
+ // @bun
5
3
  var __defProp = Object.defineProperty;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __toESM = (mod, isNodeMode, target) => {
9
- target = mod != null ? __create(__getProtoOf(mod)) : {};
10
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
11
- for (let key of __getOwnPropNames(mod))
12
- if (!__hasOwnProp.call(to, key))
13
- __defProp(to, key, {
14
- get: () => mod[key],
15
- enumerable: true
16
- });
17
- return to;
18
- };
19
4
  var __export = (target, all) => {
20
5
  for (var name in all)
21
6
  __defProp(target, name, {
@@ -26,7 +11,7 @@ var __export = (target, all) => {
26
11
  });
27
12
  };
28
13
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
29
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
14
+ var __require = import.meta.require;
30
15
 
31
16
  // src/dev-bun.ts
32
17
  var exports_dev_bun = {};
@@ -566,10 +551,85 @@ var init_dev = __esm(() => {
566
551
  dev_default = hypen3;
567
552
  });
568
553
 
554
+ // src/studio/server.ts
555
+ var exports_server = {};
556
+ __export(exports_server, {
557
+ studio: () => studio
558
+ });
559
+ import { resolve as resolve3, dirname } from "path";
560
+ var {spawn } = globalThis.Bun;
561
+ import { writeFileSync as writeFileSync3, mkdirSync as mkdirSync3, existsSync as existsSync3 } from "fs";
562
+ import { tmpdir } from "os";
563
+ async function studio(options) {
564
+ const cwd = process.cwd();
565
+ console.log(`
566
+ \u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557
567
+ \u2551 \u2551
568
+ \u2551 \u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557 \u2551
569
+ \u2551 \u2588\u2588\u2551 \u2588\u2588\u2551\u255A\u2588\u2588\u2557 \u2588\u2588\u2554\u255D\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551 \u2551
570
+ \u2551 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2554\u255D \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551 \u2551
571
+ \u2551 \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2551 \u255A\u2588\u2588\u2554\u255D \u2588\u2588\u2554\u2550\u2550\u2550\u255D \u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551 \u2551
572
+ \u2551 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551 \u2551
573
+ \u2551 \u255A\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D \u2551
574
+ \u2551 \u2551
575
+ \u2551 S T U D I O \u2551
576
+ \u2551 \u2551
577
+ \u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D
578
+ `);
579
+ const studioUiPath = resolve3(dirname(import.meta.dir), "../studio-ui");
580
+ const studioServerPath = resolve3(studioUiPath, "src/index.tsx");
581
+ console.log(` Project: ${cwd}`);
582
+ console.log(` Components: ${options.components}`);
583
+ console.log(` Entry: ${options.entry}`);
584
+ console.log(` Port: ${options.port}`);
585
+ if (options.session) {
586
+ console.log(` Session: loaded from teleport`);
587
+ }
588
+ console.log("");
589
+ let sessionFilePath = "";
590
+ if (options.session) {
591
+ const sessionDir = resolve3(tmpdir(), "hypen-studio");
592
+ if (!existsSync3(sessionDir)) {
593
+ mkdirSync3(sessionDir, { recursive: true });
594
+ }
595
+ sessionFilePath = resolve3(sessionDir, `session-${Date.now()}.json`);
596
+ writeFileSync3(sessionFilePath, JSON.stringify(options.session, null, 2));
597
+ console.log(` Session file: ${sessionFilePath}`);
598
+ }
599
+ const proc = spawn({
600
+ cmd: ["bun", "--hot", studioServerPath],
601
+ cwd: studioUiPath,
602
+ env: {
603
+ ...process.env,
604
+ HYPEN_PROJECT_DIR: cwd,
605
+ HYPEN_COMPONENTS_DIR: options.components,
606
+ HYPEN_ENTRY: options.entry,
607
+ PORT: String(options.port),
608
+ HYPEN_SESSION_FILE: sessionFilePath || ""
609
+ },
610
+ stdout: "inherit",
611
+ stderr: "inherit"
612
+ });
613
+ const studioUrl = `http://localhost:${options.port}`;
614
+ console.log(` Studio running at: ${studioUrl}`);
615
+ console.log(` Press Ctrl+C to stop
616
+ `);
617
+ if (options.open !== false) {
618
+ const openCmd = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
619
+ try {
620
+ spawn([openCmd, studioUrl]);
621
+ } catch (e) {
622
+ console.log(` Open ${studioUrl} in your browser`);
623
+ }
624
+ }
625
+ await proc.exited;
626
+ }
627
+ var init_server = () => {};
628
+
569
629
  // bin/hypen.ts
570
630
  import { parseArgs } from "util";
571
- import { existsSync as existsSync3, mkdirSync as mkdirSync3, writeFileSync as writeFileSync3 } from "fs";
572
- import { join as join3, resolve as resolve3 } from "path";
631
+ import { existsSync as existsSync4, mkdirSync as mkdirSync4, writeFileSync as writeFileSync4 } from "fs";
632
+ import { join as join3, resolve as resolve4 } from "path";
573
633
  var isBun2 = typeof globalThis.Bun !== "undefined";
574
634
  var VERSION = "0.2.12";
575
635
  var HELP = `
@@ -583,6 +643,7 @@ var HELP = `
583
643
  dev Start development server
584
644
  build Build for production
585
645
  generate Generate component imports
646
+ studio Open Hypen Studio IDE
586
647
 
587
648
  Options:
588
649
  -h, --help Show this help message
@@ -592,10 +653,11 @@ var HELP = `
592
653
  hypen init my-app
593
654
  hypen dev --port 3000
594
655
  hypen build --minify
656
+ hypen studio --port 5173
595
657
  `;
596
658
  async function loadConfig() {
597
- const configPath = resolve3("hypen.config.ts");
598
- if (existsSync3(configPath)) {
659
+ const configPath = resolve4("hypen.config.ts");
660
+ if (existsSync4(configPath)) {
599
661
  const config = await import(configPath);
600
662
  return config.default || config;
601
663
  }
@@ -607,7 +669,7 @@ async function loadConfig() {
607
669
  };
608
670
  }
609
671
  async function initProject(name) {
610
- const projectDir = name ? resolve3(name) : process.cwd();
672
+ const projectDir = name ? resolve4(name) : process.cwd();
611
673
  const projectName = name || "hypen-app";
612
674
  console.log(`
613
675
  Creating Hypen project: ${projectName}
@@ -619,8 +681,8 @@ async function initProject(name) {
619
681
  join3(projectDir, "src/components/App")
620
682
  ];
621
683
  for (const dir of dirs) {
622
- if (!existsSync3(dir)) {
623
- mkdirSync3(dir, { recursive: true });
684
+ if (!existsSync4(dir)) {
685
+ mkdirSync4(dir, { recursive: true });
624
686
  console.log(` Created: ${dir}`);
625
687
  }
626
688
  }
@@ -643,7 +705,7 @@ async function initProject(name) {
643
705
  typescript: "^5.0.0"
644
706
  }
645
707
  };
646
- writeFileSync3(join3(projectDir, "package.json"), JSON.stringify(packageJson, null, 2));
708
+ writeFileSync4(join3(projectDir, "package.json"), JSON.stringify(packageJson, null, 2));
647
709
  console.log(` Created: package.json`);
648
710
  const configTs = `/**
649
711
  * Hypen configuration
@@ -655,7 +717,7 @@ export default {
655
717
  outDir: "dist",
656
718
  };
657
719
  `;
658
- writeFileSync3(join3(projectDir, "hypen.config.ts"), configTs);
720
+ writeFileSync4(join3(projectDir, "hypen.config.ts"), configTs);
659
721
  console.log(` Created: hypen.config.ts`);
660
722
  const tsConfig = {
661
723
  compilerOptions: {
@@ -669,7 +731,7 @@ export default {
669
731
  },
670
732
  include: ["src/**/*", "hypen.config.ts"]
671
733
  };
672
- writeFileSync3(join3(projectDir, "tsconfig.json"), JSON.stringify(tsConfig, null, 2));
734
+ writeFileSync4(join3(projectDir, "tsconfig.json"), JSON.stringify(tsConfig, null, 2));
673
735
  console.log(` Created: tsconfig.json`);
674
736
  const appModule = `import { app } from "@hypen-space/core";
675
737
 
@@ -687,7 +749,7 @@ export default app
687
749
  })
688
750
  .build();
689
751
  `;
690
- writeFileSync3(join3(projectDir, "src/components/App/component.ts"), appModule);
752
+ writeFileSync4(join3(projectDir, "src/components/App/component.ts"), appModule);
691
753
  console.log(` Created: src/components/App/component.ts`);
692
754
  const appTemplate = `module App {
693
755
  Column {
@@ -723,7 +785,7 @@ export default app
723
785
  .alignItems("center")
724
786
  }
725
787
  `;
726
- writeFileSync3(join3(projectDir, "src/components/App/component.hypen"), appTemplate);
788
+ writeFileSync4(join3(projectDir, "src/components/App/component.hypen"), appTemplate);
727
789
  console.log(` Created: src/components/App/component.hypen`);
728
790
  const pm = isBun2 ? "bun" : "npm";
729
791
  console.log(`
@@ -761,16 +823,50 @@ async function generateComponents() {
761
823
  const config = await loadConfig();
762
824
  const { generateComponentsCode: generateComponentsCode3 } = await import("@hypen-space/core/discovery");
763
825
  const code = await generateComponentsCode3(config.components);
764
- const outputPath = resolve3(".hypen/components.generated.ts");
765
- const outputDir = resolve3(".hypen");
766
- if (!existsSync3(outputDir)) {
767
- mkdirSync3(outputDir, { recursive: true });
826
+ const outputPath = resolve4(".hypen/components.generated.ts");
827
+ const outputDir = resolve4(".hypen");
828
+ if (!existsSync4(outputDir)) {
829
+ mkdirSync4(outputDir, { recursive: true });
768
830
  }
769
- writeFileSync3(outputPath, code);
831
+ writeFileSync4(outputPath, code);
770
832
  console.log(`
771
833
  Generated: ${outputPath}
772
834
  `);
773
835
  }
836
+ async function fetchSession(sessionId) {
837
+ try {
838
+ const res = await fetch(`https://hypen.space/api/sessions?id=${sessionId}`);
839
+ const data = await res.json();
840
+ if (data.success && data.data) {
841
+ return data.data;
842
+ }
843
+ console.error(` Session not found or expired: ${sessionId}`);
844
+ return null;
845
+ } catch (e) {
846
+ console.error(` Failed to fetch session: ${e.message}`);
847
+ return null;
848
+ }
849
+ }
850
+ async function startStudio(options) {
851
+ const config = await loadConfig();
852
+ const { studio: studio2 } = await Promise.resolve().then(() => (init_server(), exports_server));
853
+ let sessionData = null;
854
+ if (options.session) {
855
+ console.log(`
856
+ Fetching session: ${options.session}...`);
857
+ sessionData = await fetchSession(options.session);
858
+ if (sessionData) {
859
+ console.log(` Session loaded: ${sessionData.example} example`);
860
+ }
861
+ }
862
+ await studio2({
863
+ components: config.components,
864
+ entry: config.entry,
865
+ port: options.port || 5173,
866
+ open: options.open ?? true,
867
+ session: sessionData
868
+ });
869
+ }
774
870
  var { values, positionals } = parseArgs({
775
871
  args: process.argv.slice(2),
776
872
  options: {
@@ -780,7 +876,9 @@ var { values, positionals } = parseArgs({
780
876
  debug: { type: "boolean", short: "d" },
781
877
  outDir: { type: "string", short: "o" },
782
878
  minify: { type: "boolean", short: "m" },
783
- sourcemap: { type: "boolean", short: "s" }
879
+ sourcemap: { type: "boolean", short: "s" },
880
+ open: { type: "boolean" },
881
+ session: { type: "string" }
784
882
  },
785
883
  allowPositionals: true
786
884
  });
@@ -813,6 +911,13 @@ switch (command) {
813
911
  case "generate":
814
912
  await generateComponents();
815
913
  break;
914
+ case "studio":
915
+ await startStudio({
916
+ port: values.port ? parseInt(values.port) : undefined,
917
+ open: values.open,
918
+ session: values.session
919
+ });
920
+ break;
816
921
  default:
817
922
  if (command) {
818
923
  console.error(`
@@ -823,4 +928,4 @@ switch (command) {
823
928
  process.exit(command ? 1 : 0);
824
929
  }
825
930
 
826
- //# debugId=262C8CA5981C00C264756E2164756E21
931
+ //# debugId=6FDDB5F9D875099564756E2164756E21
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/dev-bun.ts", "../src/dev-node.ts", "../src/dev.ts", "../bin/hypen.ts"],
3
+ "sources": ["../src/dev-bun.ts", "../src/dev-node.ts", "../src/dev.ts", "../src/studio/server.ts", "../bin/hypen.ts"],
4
4
  "sourcesContent": [
5
5
  "/**\n * Zero-Config Development Server\n *\n * Simple API for starting a Hypen development server.\n *\n * Usage:\n * import { dev } from \"@hypen-space/cli/dev\";\n *\n * await dev({\n * components: \"./src/components\",\n * entry: \"App\",\n * });\n */\n\nimport { join, resolve } from \"path\";\nimport { existsSync, readFileSync, writeFileSync, mkdirSync } from \"fs\";\nimport {\n discoverComponents,\n watchComponents,\n generateComponentsCode,\n type DiscoveredComponent,\n} from \"@hypen-space/core/discovery\";\n\nexport interface DevOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name (e.g., \"App\")\n */\n entry: string;\n\n /**\n * Development server port\n * Default: 3000\n */\n port?: number;\n\n /**\n * Enable hot module reloading\n * Default: true\n */\n hot?: boolean;\n\n /**\n * Enable debug logging\n * Default: false\n */\n debug?: boolean;\n\n /**\n * Custom HTML template path\n */\n htmlTemplate?: string;\n\n /**\n * Output directory for generated files\n * Default: \".hypen\"\n */\n outDir?: string;\n\n /**\n * Callback when server starts\n */\n onStart?: (url: string) => void;\n\n /**\n * Callback when components change\n */\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name\n */\n entry: string;\n\n /**\n * Output directory\n * Default: \"dist\"\n */\n outDir?: string;\n\n /**\n * Enable minification\n * Default: true\n */\n minify?: boolean;\n\n /**\n * Enable source maps\n * Default: false\n */\n sourcemap?: boolean;\n}\n\n/**\n * Default HTML template for development\n */\nfunction getDefaultHtmlTemplate(entry: string): string {\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Hypen App</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body { font-family: system-ui, -apple-system, sans-serif; }\n </style>\n</head>\n<body>\n <div id=\"app\"></div>\n <script type=\"module\" src=\"/__hypen__/main.js\"></script>\n</body>\n</html>\n`;\n}\n\n/**\n * Generate the main entry file\n */\nfunction generateMainEntry(\n entry: string,\n componentsPath: string,\n debug: boolean\n): string {\n return `/**\n * Auto-generated Hypen entry point\n */\nimport { renderWithComponents } from \"@hypen-space/core\";\nimport * as components from \"${componentsPath}\";\n\nconst app = await renderWithComponents(\n components,\n \"${entry}\",\n \"#app\",\n { debug: ${debug} }\n);\n\n// Hot reload support\nif (import.meta.hot) {\n import.meta.hot.accept();\n}\n\nexport default app;\n`;\n}\n\n/**\n * Start a development server\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const {\n components: componentsDir,\n entry,\n port = 3000,\n hot = true,\n debug = false,\n htmlTemplate,\n outDir = \".hypen\",\n onStart,\n onComponentsChange,\n } = options;\n\n const log = debug\n ? (...args: unknown[]) => console.log(\"[hypen:dev]\", ...args)\n : () => {};\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n log(\"Components directory:\", resolvedComponentsDir);\n log(\"Output directory:\", resolvedOutDir);\n\n // Generate initial components\n const generateComponents = async () => {\n log(\"Generating components...\");\n const code = await generateComponentsCode(resolvedComponentsDir, { debug });\n const componentsPath = join(resolvedOutDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n log(\"Generated:\", componentsPath);\n return componentsPath;\n };\n\n // Generate main entry\n const generateMain = (componentsPath: string) => {\n log(\"Generating main entry...\");\n const code = generateMainEntry(entry, componentsPath, debug);\n const mainPath = join(resolvedOutDir, \"main.ts\");\n writeFileSync(mainPath, code);\n log(\"Generated:\", mainPath);\n return mainPath;\n };\n\n // Initial generation\n const componentsPath = await generateComponents();\n const mainPath = generateMain(componentsPath);\n\n // Watch for changes\n let watcher: { stop: () => void } | null = null;\n\n if (hot) {\n watcher = watchComponents(resolvedComponentsDir, {\n debug,\n onChange: async (components) => {\n log(\"Components changed, regenerating...\");\n await generateComponents();\n onComponentsChange?.(components);\n },\n });\n }\n\n // Get HTML template\n const html = htmlTemplate\n ? readFileSync(htmlTemplate, \"utf-8\")\n : getDefaultHtmlTemplate(entry);\n\n // Create Bun server\n const server = Bun.serve({\n port,\n async fetch(req) {\n const url = new URL(req.url);\n const pathname = url.pathname;\n\n log(\"Request:\", pathname);\n\n // Serve HTML for root\n if (pathname === \"/\" || pathname === \"/index.html\") {\n return new Response(html, {\n headers: { \"Content-Type\": \"text/html\" },\n });\n }\n\n // Serve generated files\n if (pathname.startsWith(\"/__hypen__/\")) {\n const fileName = pathname.replace(\"/__hypen__/\", \"\");\n const filePath = join(resolvedOutDir, fileName.replace(/\\.js$/, \".ts\"));\n\n if (existsSync(filePath)) {\n // Transpile TypeScript on-the-fly\n const transpiler = new Bun.Transpiler({ loader: \"ts\" });\n const code = readFileSync(filePath, \"utf-8\");\n const js = transpiler.transformSync(code);\n\n return new Response(js, {\n headers: { \"Content-Type\": \"application/javascript\" },\n });\n }\n }\n\n // Serve static files from components directory\n if (pathname.endsWith(\".ts\") || pathname.endsWith(\".js\")) {\n // Try to resolve from components directory\n const possiblePaths = [\n join(resolvedComponentsDir, pathname),\n join(process.cwd(), pathname.slice(1)),\n ];\n\n for (const filePath of possiblePaths) {\n if (existsSync(filePath)) {\n const transpiler = new Bun.Transpiler({ loader: \"ts\" });\n const code = readFileSync(filePath, \"utf-8\");\n const js = transpiler.transformSync(code);\n\n return new Response(js, {\n headers: { \"Content-Type\": \"application/javascript\" },\n });\n }\n }\n }\n\n // 404\n return new Response(\"Not Found\", { status: 404 });\n },\n });\n\n const serverUrl = `http://localhost:${port}`;\n\n console.log(`\\n Hypen Dev Server\\n`);\n console.log(` Local: ${serverUrl}`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}\\n`);\n\n onStart?.(serverUrl);\n\n return {\n url: serverUrl,\n stop: () => {\n watcher?.stop();\n server.stop();\n },\n };\n}\n\n/**\n * Build for production\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const {\n components: componentsDir,\n entry,\n outDir = \"dist\",\n minify = true,\n sourcemap = false,\n } = options;\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n console.log(`\\n Hypen Build\\n`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}`);\n console.log(` Output: ${resolvedOutDir}\\n`);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n // Generate components\n const code = await generateComponentsCode(resolvedComponentsDir);\n const tempDir = join(resolvedOutDir, \".temp\");\n\n if (!existsSync(tempDir)) {\n mkdirSync(tempDir, { recursive: true });\n }\n\n const componentsPath = join(tempDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n\n // Generate main entry\n const mainCode = generateMainEntry(entry, componentsPath, false);\n const mainPath = join(tempDir, \"main.ts\");\n writeFileSync(mainPath, mainCode);\n\n // Bundle with Bun\n const result = await Bun.build({\n entrypoints: [mainPath],\n outdir: resolvedOutDir,\n minify,\n sourcemap: sourcemap ? \"external\" : \"none\",\n target: \"browser\",\n format: \"esm\",\n });\n\n if (!result.success) {\n console.error(\"Build failed:\");\n for (const log of result.logs) {\n console.error(log);\n }\n process.exit(1);\n }\n\n // Generate HTML\n const html = getDefaultHtmlTemplate(entry).replace(\n \"/__hypen__/main.js\",\n \"./main.js\"\n );\n writeFileSync(join(resolvedOutDir, \"index.html\"), html);\n\n console.log(` Build complete!\\n`);\n console.log(` Files:`);\n for (const output of result.outputs) {\n console.log(` ${output.path}`);\n }\n console.log();\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n",
6
6
  "/**\n * Node.js-compatible Development Server\n *\n * Uses http.createServer() and esbuild for Node.js environments.\n */\n\nimport { createServer, type IncomingMessage, type ServerResponse } from \"http\";\nimport { join, resolve, extname } from \"path\";\nimport { existsSync, readFileSync, writeFileSync, mkdirSync, watch } from \"fs\";\nimport {\n discoverComponents,\n generateComponentsCode,\n type DiscoveredComponent,\n} from \"@hypen-space/core/discovery\";\n\n// Lazy load esbuild to avoid issues if not installed\nlet esbuild: typeof import(\"esbuild\") | null = null;\n\nasync function getEsbuild() {\n if (!esbuild) {\n try {\n esbuild = await import(\"esbuild\");\n } catch {\n throw new Error(\n \"esbuild is required for Node.js support. Install it with: npm install esbuild\"\n );\n }\n }\n return esbuild;\n}\n\nexport interface DevOptions {\n components: string;\n entry: string;\n port?: number;\n hot?: boolean;\n debug?: boolean;\n htmlTemplate?: string;\n outDir?: string;\n onStart?: (url: string) => void;\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n components: string;\n entry: string;\n outDir?: string;\n minify?: boolean;\n sourcemap?: boolean;\n}\n\n/**\n * Default HTML template for development\n */\nfunction getDefaultHtmlTemplate(entry: string): string {\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Hypen App</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body { font-family: system-ui, -apple-system, sans-serif; }\n </style>\n</head>\n<body>\n <div id=\"app\"></div>\n <script type=\"module\" src=\"/__hypen__/main.js\"></script>\n</body>\n</html>\n`;\n}\n\n/**\n * Generate the main entry file\n */\nfunction generateMainEntry(\n entry: string,\n componentsPath: string,\n debug: boolean\n): string {\n return `/**\n * Auto-generated Hypen entry point\n */\nimport { renderWithComponents } from \"@hypen-space/core\";\nimport * as components from \"${componentsPath}\";\n\nconst app = await renderWithComponents(\n components,\n \"${entry}\",\n \"#app\",\n { debug: ${debug} }\n);\n\n// Hot reload support\nif (import.meta.hot) {\n import.meta.hot.accept();\n}\n\nexport default app;\n`;\n}\n\n/**\n * MIME types for common file extensions\n */\nconst MIME_TYPES: Record<string, string> = {\n \".html\": \"text/html\",\n \".js\": \"application/javascript\",\n \".mjs\": \"application/javascript\",\n \".ts\": \"application/javascript\",\n \".css\": \"text/css\",\n \".json\": \"application/json\",\n \".wasm\": \"application/wasm\",\n \".png\": \"image/png\",\n \".jpg\": \"image/jpeg\",\n \".svg\": \"image/svg+xml\",\n};\n\n/**\n * Transpile TypeScript to JavaScript using esbuild\n */\nasync function transpileTS(code: string, filename: string): Promise<string> {\n const es = await getEsbuild();\n const result = await es.transform(code, {\n loader: \"ts\",\n sourcefile: filename,\n format: \"esm\",\n target: \"es2020\",\n });\n return result.code;\n}\n\n/**\n * Start a development server (Node.js version)\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const {\n components: componentsDir,\n entry,\n port = 3000,\n hot = true,\n debug = false,\n htmlTemplate,\n outDir = \".hypen\",\n onStart,\n onComponentsChange,\n } = options;\n\n // Verify esbuild is available\n await getEsbuild();\n\n const log = debug\n ? (...args: unknown[]) => console.log(\"[hypen:dev]\", ...args)\n : () => {};\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n log(\"Components directory:\", resolvedComponentsDir);\n log(\"Output directory:\", resolvedOutDir);\n\n // Generate initial components\n const generateComponents = async () => {\n log(\"Generating components...\");\n const code = await generateComponentsCode(resolvedComponentsDir, { debug });\n const componentsPath = join(resolvedOutDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n log(\"Generated:\", componentsPath);\n return componentsPath;\n };\n\n // Generate main entry\n const generateMain = (componentsPath: string) => {\n log(\"Generating main entry...\");\n const code = generateMainEntry(entry, componentsPath, debug);\n const mainPath = join(resolvedOutDir, \"main.ts\");\n writeFileSync(mainPath, code);\n log(\"Generated:\", mainPath);\n return mainPath;\n };\n\n // Initial generation\n const componentsPath = await generateComponents();\n generateMain(componentsPath);\n\n // Watch for changes\n let watcher: ReturnType<typeof watch> | null = null;\n\n if (hot && existsSync(resolvedComponentsDir)) {\n watcher = watch(\n resolvedComponentsDir,\n { recursive: true },\n async (eventType, filename) => {\n if (\n filename &&\n (filename.endsWith(\".hypen\") || filename.endsWith(\".ts\"))\n ) {\n log(\"File changed:\", filename);\n await generateComponents();\n const components = await discoverComponents(resolvedComponentsDir);\n onComponentsChange?.(components);\n }\n }\n );\n }\n\n // Get HTML template\n const html = htmlTemplate\n ? readFileSync(htmlTemplate, \"utf-8\")\n : getDefaultHtmlTemplate(entry);\n\n // Create Node.js HTTP server\n const server = createServer(async (req: IncomingMessage, res: ServerResponse) => {\n const url = new URL(req.url || \"/\", `http://localhost:${port}`);\n const pathname = url.pathname;\n\n log(\"Request:\", pathname);\n\n try {\n // Serve HTML for root\n if (pathname === \"/\" || pathname === \"/index.html\") {\n res.writeHead(200, { \"Content-Type\": \"text/html\" });\n res.end(html);\n return;\n }\n\n // Serve generated files\n if (pathname.startsWith(\"/__hypen__/\")) {\n const fileName = pathname.replace(\"/__hypen__/\", \"\");\n const filePath = join(resolvedOutDir, fileName.replace(/\\.js$/, \".ts\"));\n\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n\n // Serve static files from components directory\n if (pathname.endsWith(\".ts\") || pathname.endsWith(\".js\")) {\n const possiblePaths = [\n join(resolvedComponentsDir, pathname),\n join(process.cwd(), pathname.slice(1)),\n ];\n\n for (const filePath of possiblePaths) {\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n }\n\n // Serve other static files\n const ext = extname(pathname);\n if (ext && MIME_TYPES[ext]) {\n const filePath = join(process.cwd(), pathname.slice(1));\n if (existsSync(filePath)) {\n const content = readFileSync(filePath);\n res.writeHead(200, { \"Content-Type\": MIME_TYPES[ext] });\n res.end(content);\n return;\n }\n }\n\n // 404\n res.writeHead(404, { \"Content-Type\": \"text/plain\" });\n res.end(\"Not Found\");\n } catch (error) {\n log(\"Error:\", error);\n res.writeHead(500, { \"Content-Type\": \"text/plain\" });\n res.end(`Server Error: ${error}`);\n }\n });\n\n server.listen(port);\n\n const serverUrl = `http://localhost:${port}`;\n\n console.log(`\\n Hypen Dev Server (Node.js)\\n`);\n console.log(` Local: ${serverUrl}`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}\\n`);\n\n onStart?.(serverUrl);\n\n return {\n url: serverUrl,\n stop: () => {\n watcher?.close();\n server.close();\n },\n };\n}\n\n/**\n * Build for production (Node.js version)\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const {\n components: componentsDir,\n entry,\n outDir = \"dist\",\n minify = true,\n sourcemap = false,\n } = options;\n\n const es = await getEsbuild();\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n console.log(`\\n Hypen Build (Node.js)\\n`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}`);\n console.log(` Output: ${resolvedOutDir}\\n`);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n // Generate components\n const code = await generateComponentsCode(resolvedComponentsDir);\n const tempDir = join(resolvedOutDir, \".temp\");\n\n if (!existsSync(tempDir)) {\n mkdirSync(tempDir, { recursive: true });\n }\n\n const componentsPath = join(tempDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n\n // Generate main entry\n const mainCode = generateMainEntry(entry, componentsPath, false);\n const mainPath = join(tempDir, \"main.ts\");\n writeFileSync(mainPath, mainCode);\n\n // Bundle with esbuild\n try {\n await es.build({\n entryPoints: [mainPath],\n bundle: true,\n outdir: resolvedOutDir,\n minify,\n sourcemap,\n format: \"esm\",\n target: \"es2020\",\n platform: \"browser\",\n });\n } catch (error) {\n console.error(\"Build failed:\", error);\n process.exit(1);\n }\n\n // Generate HTML\n const html = getDefaultHtmlTemplate(entry).replace(\n \"/__hypen__/main.js\",\n \"./main.js\"\n );\n writeFileSync(join(resolvedOutDir, \"index.html\"), html);\n\n console.log(` Build complete!\\n`);\n console.log(` Files:`);\n console.log(` ${join(resolvedOutDir, \"main.js\")}`);\n console.log(` ${join(resolvedOutDir, \"index.html\")}`);\n console.log();\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n",
7
7
  "/**\n * Unified Development Server\n *\n * Automatically detects runtime (Bun vs Node.js) and uses the appropriate implementation.\n *\n * Usage:\n * import { dev, build } from \"@hypen-space/cli/dev\";\n *\n * await dev({\n * components: \"./src/components\",\n * entry: \"App\",\n * });\n */\n\nimport type { DiscoveredComponent } from \"@hypen-space/core/discovery\";\n\nexport interface DevOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name (e.g., \"App\")\n */\n entry: string;\n\n /**\n * Development server port\n * Default: 3000\n */\n port?: number;\n\n /**\n * Enable hot module reloading\n * Default: true\n */\n hot?: boolean;\n\n /**\n * Enable debug logging\n * Default: false\n */\n debug?: boolean;\n\n /**\n * Custom HTML template path\n */\n htmlTemplate?: string;\n\n /**\n * Output directory for generated files\n * Default: \".hypen\"\n */\n outDir?: string;\n\n /**\n * Callback when server starts\n */\n onStart?: (url: string) => void;\n\n /**\n * Callback when components change\n */\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name\n */\n entry: string;\n\n /**\n * Output directory\n * Default: \"dist\"\n */\n outDir?: string;\n\n /**\n * Enable minification\n * Default: true\n */\n minify?: boolean;\n\n /**\n * Enable source maps\n * Default: false\n */\n sourcemap?: boolean;\n}\n\n/**\n * Detect if running in Bun\n */\nfunction isBun(): boolean {\n return typeof globalThis.Bun !== \"undefined\";\n}\n\n/**\n * Get the appropriate implementation based on runtime\n */\nasync function getImplementation() {\n if (isBun()) {\n return import(\"./dev-bun.js\");\n } else {\n return import(\"./dev-node.js\");\n }\n}\n\n/**\n * Start a development server\n *\n * Automatically uses Bun.serve() in Bun or http.createServer() in Node.js\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const impl = await getImplementation();\n return impl.dev(options);\n}\n\n/**\n * Build for production\n *\n * Automatically uses Bun.build() in Bun or esbuild in Node.js\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const impl = await getImplementation();\n return impl.build(options);\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n",
8
- "#!/usr/bin/env node\n/**\n * Hypen CLI\n *\n * Works with both Bun and Node.js runtimes.\n *\n * Commands:\n * hypen init [name] Initialize a new Hypen project\n * hypen dev Start development server\n * hypen build Build for production\n * hypen generate Generate component imports\n */\n\nimport { parseArgs } from \"util\";\nimport { existsSync, mkdirSync, writeFileSync } from \"fs\";\nimport { join, resolve } from \"path\";\n\n/**\n * Detect runtime\n */\nconst isBun = typeof globalThis.Bun !== \"undefined\";\n\nconst VERSION = \"0.2.12\";\n\nconst HELP = `\n hypen - Declarative UI framework CLI\n\n Usage:\n hypen <command> [options]\n\n Commands:\n init [name] Create a new Hypen project\n dev Start development server\n build Build for production\n generate Generate component imports\n\n Options:\n -h, --help Show this help message\n -v, --version Show version number\n\n Examples:\n hypen init my-app\n hypen dev --port 3000\n hypen build --minify\n`;\n\ninterface Config {\n components: string;\n entry: string;\n port?: number;\n outDir?: string;\n}\n\n/**\n * Load hypen.config.ts or use defaults\n */\nasync function loadConfig(): Promise<Config> {\n const configPath = resolve(\"hypen.config.ts\");\n\n if (existsSync(configPath)) {\n const config = await import(configPath);\n return config.default || config;\n }\n\n // Default config\n return {\n components: \"./src/components\",\n entry: \"App\",\n port: 3000,\n outDir: \"dist\",\n };\n}\n\n/**\n * Initialize a new project\n */\nasync function initProject(name?: string) {\n const projectDir = name ? resolve(name) : process.cwd();\n const projectName = name || \"hypen-app\";\n\n console.log(`\\n Creating Hypen project: ${projectName}\\n`);\n\n // Create directories\n const dirs = [\n projectDir,\n join(projectDir, \"src\"),\n join(projectDir, \"src/components\"),\n join(projectDir, \"src/components/App\"),\n ];\n\n for (const dir of dirs) {\n if (!existsSync(dir)) {\n mkdirSync(dir, { recursive: true });\n console.log(` Created: ${dir}`);\n }\n }\n\n // Create package.json (works with both npm and bun)\n const packageJson = {\n name: projectName,\n version: \"0.1.0\",\n type: \"module\",\n scripts: {\n dev: \"hypen dev\",\n build: \"hypen build\",\n start: \"node dist/main.js\",\n },\n dependencies: {\n \"@hypen-space/core\": \"^0.2.12\",\n \"@hypen-space/web\": \"^0.2.12\",\n },\n devDependencies: {\n \"@hypen-space/cli\": \"^0.2.12\",\n esbuild: \"^0.20.0\",\n typescript: \"^5.0.0\",\n },\n };\n\n writeFileSync(\n join(projectDir, \"package.json\"),\n JSON.stringify(packageJson, null, 2)\n );\n console.log(` Created: package.json`);\n\n // Create hypen.config.ts\n const configTs = `/**\n * Hypen configuration\n */\nexport default {\n components: \"./src/components\",\n entry: \"App\",\n port: 3000,\n outDir: \"dist\",\n};\n`;\n\n writeFileSync(join(projectDir, \"hypen.config.ts\"), configTs);\n console.log(` Created: hypen.config.ts`);\n\n // Create tsconfig.json\n const tsConfig = {\n compilerOptions: {\n target: \"ESNext\",\n module: \"ESNext\",\n moduleResolution: \"bundler\",\n strict: true,\n esModuleInterop: true,\n skipLibCheck: true,\n noEmit: true,\n },\n include: [\"src/**/*\", \"hypen.config.ts\"],\n };\n\n writeFileSync(\n join(projectDir, \"tsconfig.json\"),\n JSON.stringify(tsConfig, null, 2)\n );\n console.log(` Created: tsconfig.json`);\n\n // Create App component\n const appModule = `import { app } from \"@hypen-space/core\";\n\ntype AppState = {\n count: number;\n};\n\nexport default app\n .defineState<AppState>({ count: 0 })\n .onAction(\"increment\", ({ state }) => {\n state.count++;\n })\n .onAction(\"decrement\", ({ state }) => {\n state.count--;\n })\n .build();\n`;\n\n writeFileSync(join(projectDir, \"src/components/App/component.ts\"), appModule);\n console.log(` Created: src/components/App/component.ts`);\n\n const appTemplate = `module App {\n Column {\n Text(\"Hypen Counter\")\n .fontSize(24)\n .fontWeight(\"bold\")\n .color(\"#333\")\n\n Text(\"Count: \\${state.count}\")\n .fontSize(48)\n .fontWeight(\"bold\")\n .color(\"#007bff\")\n\n Row {\n Button {\n Text(\"-\")\n }\n .onClick(\"@actions.decrement\")\n .padding(16)\n .fontSize(24)\n\n Button {\n Text(\"+\")\n }\n .onClick(\"@actions.increment\")\n .padding(16)\n .fontSize(24)\n }\n .gap(16)\n }\n .padding(32)\n .gap(24)\n .alignItems(\"center\")\n}\n`;\n\n writeFileSync(\n join(projectDir, \"src/components/App/component.hypen\"),\n appTemplate\n );\n console.log(` Created: src/components/App/component.hypen`);\n\n const pm = isBun ? \"bun\" : \"npm\";\n console.log(`\n Done! To get started:\n\n ${name ? `cd ${name}` : \"\"}\n ${pm} install\n ${pm} run dev\n\n`);\n}\n\n/**\n * Start development server\n */\nasync function devServer(options: { port?: number; debug?: boolean }) {\n const config = await loadConfig();\n const { dev } = await import(\"../src/dev.js\");\n\n await dev({\n components: config.components,\n entry: config.entry,\n port: options.port || config.port || 3000,\n debug: options.debug || false,\n hot: true,\n });\n}\n\n/**\n * Build for production\n */\nasync function buildProject(options: {\n outDir?: string;\n minify?: boolean;\n sourcemap?: boolean;\n}) {\n const config = await loadConfig();\n const { build } = await import(\"../src/dev.js\");\n\n await build({\n components: config.components,\n entry: config.entry,\n outDir: options.outDir || config.outDir || \"dist\",\n minify: options.minify ?? true,\n sourcemap: options.sourcemap ?? false,\n });\n}\n\n/**\n * Generate component imports\n */\nasync function generateComponents() {\n const config = await loadConfig();\n const { generateComponentsCode } = await import(\n \"@hypen-space/core/discovery\"\n );\n\n const code = await generateComponentsCode(config.components);\n const outputPath = resolve(\".hypen/components.generated.ts\");\n\n const outputDir = resolve(\".hypen\");\n if (!existsSync(outputDir)) {\n mkdirSync(outputDir, { recursive: true });\n }\n\n writeFileSync(outputPath, code);\n console.log(`\\n Generated: ${outputPath}\\n`);\n}\n\n// Parse command line arguments\nconst { values, positionals } = parseArgs({\n args: process.argv.slice(2),\n options: {\n help: { type: \"boolean\", short: \"h\" },\n version: { type: \"boolean\", short: \"v\" },\n port: { type: \"string\", short: \"p\" },\n debug: { type: \"boolean\", short: \"d\" },\n outDir: { type: \"string\", short: \"o\" },\n minify: { type: \"boolean\", short: \"m\" },\n sourcemap: { type: \"boolean\", short: \"s\" },\n },\n allowPositionals: true,\n});\n\n// Handle global flags\nif (values.help) {\n console.log(HELP);\n process.exit(0);\n}\n\nif (values.version) {\n console.log(`hypen v${VERSION}`);\n process.exit(0);\n}\n\n// Execute command\nconst command = positionals[0];\n\nswitch (command) {\n case \"init\":\n await initProject(positionals[1]);\n break;\n\n case \"dev\":\n await devServer({\n port: values.port ? parseInt(values.port) : undefined,\n debug: values.debug,\n });\n break;\n\n case \"build\":\n await buildProject({\n outDir: values.outDir,\n minify: values.minify,\n sourcemap: values.sourcemap,\n });\n break;\n\n case \"generate\":\n await generateComponents();\n break;\n\n default:\n if (command) {\n console.error(`\\n Unknown command: ${command}\\n`);\n }\n console.log(HELP);\n process.exit(command ? 1 : 0);\n}\n"
8
+ "/**\n * Hypen Studio Server\n *\n * A local development IDE with file browser, code editor, live preview,\n * state inspector, action log, and time-travel debugging.\n */\n\nimport { resolve, dirname } from \"path\";\nimport { spawn } from \"bun\";\nimport { writeFileSync, mkdirSync, existsSync } from \"fs\";\nimport { tmpdir } from \"os\";\n\ninterface SessionData {\n example: string;\n hypenCode: string;\n moduleCode: string;\n state: Record<string, any>;\n stateHistory: any[];\n}\n\ninterface StudioOptions {\n components: string;\n entry: string;\n port: number;\n open?: boolean;\n session?: SessionData | null;\n}\n\n/**\n * Start Hypen Studio server\n */\nexport async function studio(options: StudioOptions) {\n const cwd = process.cwd();\n\n console.log(`\n ╔═══════════════════════════════════════════════════════════╗\n ║ ║\n ║ ██╗ ██╗██╗ ██╗██████╗ ███████╗███╗ ██╗ ║\n ║ ██║ ██║╚██╗ ██╔╝██╔══██╗██╔════╝████╗ ██║ ║\n ║ ███████║ ╚████╔╝ ██████╔╝█████╗ ██╔██╗ ██║ ║\n ║ ██╔══██║ ╚██╔╝ ██╔═══╝ ██╔══╝ ██║╚██╗██║ ║\n ║ ██║ ██║ ██║ ██║ ███████╗██║ ╚████║ ║\n ║ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═══╝ ║\n ║ ║\n ║ S T U D I O ║\n ║ ║\n ╚═══════════════════════════════════════════════════════════╝\n `);\n\n // Path to studio-ui\n const studioUiPath = resolve(dirname(import.meta.dir), \"../studio-ui\");\n const studioServerPath = resolve(studioUiPath, \"src/index.tsx\");\n\n console.log(` Project: ${cwd}`);\n console.log(` Components: ${options.components}`);\n console.log(` Entry: ${options.entry}`);\n console.log(` Port: ${options.port}`);\n if (options.session) {\n console.log(` Session: loaded from teleport`);\n }\n console.log(\"\");\n\n // If session data exists, write it to a temp file\n let sessionFilePath = \"\";\n if (options.session) {\n const sessionDir = resolve(tmpdir(), \"hypen-studio\");\n if (!existsSync(sessionDir)) {\n mkdirSync(sessionDir, { recursive: true });\n }\n sessionFilePath = resolve(sessionDir, `session-${Date.now()}.json`);\n writeFileSync(sessionFilePath, JSON.stringify(options.session, null, 2));\n console.log(` Session file: ${sessionFilePath}`);\n }\n\n // Spawn the studio-ui server with environment variables\n const proc = spawn({\n cmd: [\"bun\", \"--hot\", studioServerPath],\n cwd: studioUiPath,\n env: {\n ...process.env,\n HYPEN_PROJECT_DIR: cwd,\n HYPEN_COMPONENTS_DIR: options.components,\n HYPEN_ENTRY: options.entry,\n PORT: String(options.port),\n HYPEN_SESSION_FILE: sessionFilePath || \"\",\n },\n stdout: \"inherit\",\n stderr: \"inherit\",\n });\n\n const studioUrl = `http://localhost:${options.port}`;\n console.log(` Studio running at: ${studioUrl}`);\n console.log(` Press Ctrl+C to stop\\n`);\n\n // Open browser\n if (options.open !== false) {\n const openCmd = process.platform === \"darwin\"\n ? \"open\"\n : process.platform === \"win32\"\n ? \"start\"\n : \"xdg-open\";\n\n try {\n spawn([openCmd, studioUrl]);\n } catch (e) {\n console.log(` Open ${studioUrl} in your browser`);\n }\n }\n\n // Wait for the process\n await proc.exited;\n}\n",
9
+ "#!/usr/bin/env node\n/**\n * Hypen CLI\n *\n * Works with both Bun and Node.js runtimes.\n *\n * Commands:\n * hypen init [name] Initialize a new Hypen project\n * hypen dev Start development server\n * hypen build Build for production\n * hypen generate Generate component imports\n */\n\nimport { parseArgs } from \"util\";\nimport { existsSync, mkdirSync, writeFileSync } from \"fs\";\nimport { join, resolve } from \"path\";\n\n/**\n * Detect runtime\n */\nconst isBun = typeof globalThis.Bun !== \"undefined\";\n\nconst VERSION = \"0.2.12\";\n\nconst HELP = `\n hypen - Declarative UI framework CLI\n\n Usage:\n hypen <command> [options]\n\n Commands:\n init [name] Create a new Hypen project\n dev Start development server\n build Build for production\n generate Generate component imports\n studio Open Hypen Studio IDE\n\n Options:\n -h, --help Show this help message\n -v, --version Show version number\n\n Examples:\n hypen init my-app\n hypen dev --port 3000\n hypen build --minify\n hypen studio --port 5173\n`;\n\ninterface Config {\n components: string;\n entry: string;\n port?: number;\n outDir?: string;\n}\n\n/**\n * Load hypen.config.ts or use defaults\n */\nasync function loadConfig(): Promise<Config> {\n const configPath = resolve(\"hypen.config.ts\");\n\n if (existsSync(configPath)) {\n const config = await import(configPath);\n return config.default || config;\n }\n\n // Default config\n return {\n components: \"./src/components\",\n entry: \"App\",\n port: 3000,\n outDir: \"dist\",\n };\n}\n\n/**\n * Initialize a new project\n */\nasync function initProject(name?: string) {\n const projectDir = name ? resolve(name) : process.cwd();\n const projectName = name || \"hypen-app\";\n\n console.log(`\\n Creating Hypen project: ${projectName}\\n`);\n\n // Create directories\n const dirs = [\n projectDir,\n join(projectDir, \"src\"),\n join(projectDir, \"src/components\"),\n join(projectDir, \"src/components/App\"),\n ];\n\n for (const dir of dirs) {\n if (!existsSync(dir)) {\n mkdirSync(dir, { recursive: true });\n console.log(` Created: ${dir}`);\n }\n }\n\n // Create package.json (works with both npm and bun)\n const packageJson = {\n name: projectName,\n version: \"0.1.0\",\n type: \"module\",\n scripts: {\n dev: \"hypen dev\",\n build: \"hypen build\",\n start: \"node dist/main.js\",\n },\n dependencies: {\n \"@hypen-space/core\": \"^0.2.12\",\n \"@hypen-space/web\": \"^0.2.12\",\n },\n devDependencies: {\n \"@hypen-space/cli\": \"^0.2.12\",\n esbuild: \"^0.20.0\",\n typescript: \"^5.0.0\",\n },\n };\n\n writeFileSync(\n join(projectDir, \"package.json\"),\n JSON.stringify(packageJson, null, 2)\n );\n console.log(` Created: package.json`);\n\n // Create hypen.config.ts\n const configTs = `/**\n * Hypen configuration\n */\nexport default {\n components: \"./src/components\",\n entry: \"App\",\n port: 3000,\n outDir: \"dist\",\n};\n`;\n\n writeFileSync(join(projectDir, \"hypen.config.ts\"), configTs);\n console.log(` Created: hypen.config.ts`);\n\n // Create tsconfig.json\n const tsConfig = {\n compilerOptions: {\n target: \"ESNext\",\n module: \"ESNext\",\n moduleResolution: \"bundler\",\n strict: true,\n esModuleInterop: true,\n skipLibCheck: true,\n noEmit: true,\n },\n include: [\"src/**/*\", \"hypen.config.ts\"],\n };\n\n writeFileSync(\n join(projectDir, \"tsconfig.json\"),\n JSON.stringify(tsConfig, null, 2)\n );\n console.log(` Created: tsconfig.json`);\n\n // Create App component\n const appModule = `import { app } from \"@hypen-space/core\";\n\ntype AppState = {\n count: number;\n};\n\nexport default app\n .defineState<AppState>({ count: 0 })\n .onAction(\"increment\", ({ state }) => {\n state.count++;\n })\n .onAction(\"decrement\", ({ state }) => {\n state.count--;\n })\n .build();\n`;\n\n writeFileSync(join(projectDir, \"src/components/App/component.ts\"), appModule);\n console.log(` Created: src/components/App/component.ts`);\n\n const appTemplate = `module App {\n Column {\n Text(\"Hypen Counter\")\n .fontSize(24)\n .fontWeight(\"bold\")\n .color(\"#333\")\n\n Text(\"Count: \\${state.count}\")\n .fontSize(48)\n .fontWeight(\"bold\")\n .color(\"#007bff\")\n\n Row {\n Button {\n Text(\"-\")\n }\n .onClick(\"@actions.decrement\")\n .padding(16)\n .fontSize(24)\n\n Button {\n Text(\"+\")\n }\n .onClick(\"@actions.increment\")\n .padding(16)\n .fontSize(24)\n }\n .gap(16)\n }\n .padding(32)\n .gap(24)\n .alignItems(\"center\")\n}\n`;\n\n writeFileSync(\n join(projectDir, \"src/components/App/component.hypen\"),\n appTemplate\n );\n console.log(` Created: src/components/App/component.hypen`);\n\n const pm = isBun ? \"bun\" : \"npm\";\n console.log(`\n Done! To get started:\n\n ${name ? `cd ${name}` : \"\"}\n ${pm} install\n ${pm} run dev\n\n`);\n}\n\n/**\n * Start development server\n */\nasync function devServer(options: { port?: number; debug?: boolean }) {\n const config = await loadConfig();\n const { dev } = await import(\"../src/dev.js\");\n\n await dev({\n components: config.components,\n entry: config.entry,\n port: options.port || config.port || 3000,\n debug: options.debug || false,\n hot: true,\n });\n}\n\n/**\n * Build for production\n */\nasync function buildProject(options: {\n outDir?: string;\n minify?: boolean;\n sourcemap?: boolean;\n}) {\n const config = await loadConfig();\n const { build } = await import(\"../src/dev.js\");\n\n await build({\n components: config.components,\n entry: config.entry,\n outDir: options.outDir || config.outDir || \"dist\",\n minify: options.minify ?? true,\n sourcemap: options.sourcemap ?? false,\n });\n}\n\n/**\n * Generate component imports\n */\nasync function generateComponents() {\n const config = await loadConfig();\n const { generateComponentsCode } = await import(\n \"@hypen-space/core/discovery\"\n );\n\n const code = await generateComponentsCode(config.components);\n const outputPath = resolve(\".hypen/components.generated.ts\");\n\n const outputDir = resolve(\".hypen\");\n if (!existsSync(outputDir)) {\n mkdirSync(outputDir, { recursive: true });\n }\n\n writeFileSync(outputPath, code);\n console.log(`\\n Generated: ${outputPath}\\n`);\n}\n\n/**\n * Fetch session data from API\n */\nasync function fetchSession(sessionId: string): Promise<any | null> {\n try {\n const res = await fetch(`https://hypen.space/api/sessions?id=${sessionId}`);\n const data = await res.json();\n if (data.success && data.data) {\n return data.data;\n }\n console.error(` Session not found or expired: ${sessionId}`);\n return null;\n } catch (e: any) {\n console.error(` Failed to fetch session: ${e.message}`);\n return null;\n }\n}\n\n/**\n * Start Hypen Studio\n */\nasync function startStudio(options: { port?: number; open?: boolean; session?: string }) {\n const config = await loadConfig();\n const { studio } = await import(\"../src/studio/server.js\");\n\n // Fetch session data if provided\n let sessionData = null;\n if (options.session) {\n console.log(`\\n Fetching session: ${options.session}...`);\n sessionData = await fetchSession(options.session);\n if (sessionData) {\n console.log(` Session loaded: ${sessionData.example} example`);\n }\n }\n\n await studio({\n components: config.components,\n entry: config.entry,\n port: options.port || 5173,\n open: options.open ?? true,\n session: sessionData,\n });\n}\n\n// Parse command line arguments\nconst { values, positionals } = parseArgs({\n args: process.argv.slice(2),\n options: {\n help: { type: \"boolean\", short: \"h\" },\n version: { type: \"boolean\", short: \"v\" },\n port: { type: \"string\", short: \"p\" },\n debug: { type: \"boolean\", short: \"d\" },\n outDir: { type: \"string\", short: \"o\" },\n minify: { type: \"boolean\", short: \"m\" },\n sourcemap: { type: \"boolean\", short: \"s\" },\n open: { type: \"boolean\" },\n session: { type: \"string\" },\n },\n allowPositionals: true,\n});\n\n// Handle global flags\nif (values.help) {\n console.log(HELP);\n process.exit(0);\n}\n\nif (values.version) {\n console.log(`hypen v${VERSION}`);\n process.exit(0);\n}\n\n// Execute command\nconst command = positionals[0];\n\nswitch (command) {\n case \"init\":\n await initProject(positionals[1]);\n break;\n\n case \"dev\":\n await devServer({\n port: values.port ? parseInt(values.port) : undefined,\n debug: values.debug,\n });\n break;\n\n case \"build\":\n await buildProject({\n outDir: values.outDir,\n minify: values.minify,\n sourcemap: values.sourcemap,\n });\n break;\n\n case \"generate\":\n await generateComponents();\n break;\n\n case \"studio\":\n await startStudio({\n port: values.port ? parseInt(values.port) : undefined,\n open: values.open,\n session: values.session,\n });\n break;\n\n default:\n if (command) {\n console.error(`\\n Unknown command: ${command}\\n`);\n }\n console.log(HELP);\n process.exit(command ? 1 : 0);\n}\n"
9
10
  ],
10
- "mappings": "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",
11
- "debugId": "262C8CA5981C00C264756E2164756E21",
11
+ "mappings": "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",
12
+ "debugId": "6FDDB5F9D875099564756E2164756E21",
12
13
  "names": []
13
14
  }
@@ -1,20 +1,5 @@
1
- import { createRequire } from "node:module";
2
- var __create = Object.create;
3
- var __getProtoOf = Object.getPrototypeOf;
1
+ // @bun
4
2
  var __defProp = Object.defineProperty;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __toESM = (mod, isNodeMode, target) => {
8
- target = mod != null ? __create(__getProtoOf(mod)) : {};
9
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
- for (let key of __getOwnPropNames(mod))
11
- if (!__hasOwnProp.call(to, key))
12
- __defProp(to, key, {
13
- get: () => mod[key],
14
- enumerable: true
15
- });
16
- return to;
17
- };
18
3
  var __export = (target, all) => {
19
4
  for (var name in all)
20
5
  __defProp(target, name, {
@@ -25,7 +10,7 @@ var __export = (target, all) => {
25
10
  });
26
11
  };
27
12
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
13
+ var __require = import.meta.require;
29
14
 
30
15
  // src/dev-bun.ts
31
16
  var exports_dev_bun = {};
@@ -263,4 +248,4 @@ export {
263
248
  build
264
249
  };
265
250
 
266
- //# debugId=FC5FB7CE08C2B09464756E2164756E21
251
+ //# debugId=4A2A2C5DA6803F8464756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "/**\n * Zero-Config Development Server\n *\n * Simple API for starting a Hypen development server.\n *\n * Usage:\n * import { dev } from \"@hypen-space/cli/dev\";\n *\n * await dev({\n * components: \"./src/components\",\n * entry: \"App\",\n * });\n */\n\nimport { join, resolve } from \"path\";\nimport { existsSync, readFileSync, writeFileSync, mkdirSync } from \"fs\";\nimport {\n discoverComponents,\n watchComponents,\n generateComponentsCode,\n type DiscoveredComponent,\n} from \"@hypen-space/core/discovery\";\n\nexport interface DevOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name (e.g., \"App\")\n */\n entry: string;\n\n /**\n * Development server port\n * Default: 3000\n */\n port?: number;\n\n /**\n * Enable hot module reloading\n * Default: true\n */\n hot?: boolean;\n\n /**\n * Enable debug logging\n * Default: false\n */\n debug?: boolean;\n\n /**\n * Custom HTML template path\n */\n htmlTemplate?: string;\n\n /**\n * Output directory for generated files\n * Default: \".hypen\"\n */\n outDir?: string;\n\n /**\n * Callback when server starts\n */\n onStart?: (url: string) => void;\n\n /**\n * Callback when components change\n */\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name\n */\n entry: string;\n\n /**\n * Output directory\n * Default: \"dist\"\n */\n outDir?: string;\n\n /**\n * Enable minification\n * Default: true\n */\n minify?: boolean;\n\n /**\n * Enable source maps\n * Default: false\n */\n sourcemap?: boolean;\n}\n\n/**\n * Default HTML template for development\n */\nfunction getDefaultHtmlTemplate(entry: string): string {\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Hypen App</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body { font-family: system-ui, -apple-system, sans-serif; }\n </style>\n</head>\n<body>\n <div id=\"app\"></div>\n <script type=\"module\" src=\"/__hypen__/main.js\"></script>\n</body>\n</html>\n`;\n}\n\n/**\n * Generate the main entry file\n */\nfunction generateMainEntry(\n entry: string,\n componentsPath: string,\n debug: boolean\n): string {\n return `/**\n * Auto-generated Hypen entry point\n */\nimport { renderWithComponents } from \"@hypen-space/core\";\nimport * as components from \"${componentsPath}\";\n\nconst app = await renderWithComponents(\n components,\n \"${entry}\",\n \"#app\",\n { debug: ${debug} }\n);\n\n// Hot reload support\nif (import.meta.hot) {\n import.meta.hot.accept();\n}\n\nexport default app;\n`;\n}\n\n/**\n * Start a development server\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const {\n components: componentsDir,\n entry,\n port = 3000,\n hot = true,\n debug = false,\n htmlTemplate,\n outDir = \".hypen\",\n onStart,\n onComponentsChange,\n } = options;\n\n const log = debug\n ? (...args: unknown[]) => console.log(\"[hypen:dev]\", ...args)\n : () => {};\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n log(\"Components directory:\", resolvedComponentsDir);\n log(\"Output directory:\", resolvedOutDir);\n\n // Generate initial components\n const generateComponents = async () => {\n log(\"Generating components...\");\n const code = await generateComponentsCode(resolvedComponentsDir, { debug });\n const componentsPath = join(resolvedOutDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n log(\"Generated:\", componentsPath);\n return componentsPath;\n };\n\n // Generate main entry\n const generateMain = (componentsPath: string) => {\n log(\"Generating main entry...\");\n const code = generateMainEntry(entry, componentsPath, debug);\n const mainPath = join(resolvedOutDir, \"main.ts\");\n writeFileSync(mainPath, code);\n log(\"Generated:\", mainPath);\n return mainPath;\n };\n\n // Initial generation\n const componentsPath = await generateComponents();\n const mainPath = generateMain(componentsPath);\n\n // Watch for changes\n let watcher: { stop: () => void } | null = null;\n\n if (hot) {\n watcher = watchComponents(resolvedComponentsDir, {\n debug,\n onChange: async (components) => {\n log(\"Components changed, regenerating...\");\n await generateComponents();\n onComponentsChange?.(components);\n },\n });\n }\n\n // Get HTML template\n const html = htmlTemplate\n ? readFileSync(htmlTemplate, \"utf-8\")\n : getDefaultHtmlTemplate(entry);\n\n // Create Bun server\n const server = Bun.serve({\n port,\n async fetch(req) {\n const url = new URL(req.url);\n const pathname = url.pathname;\n\n log(\"Request:\", pathname);\n\n // Serve HTML for root\n if (pathname === \"/\" || pathname === \"/index.html\") {\n return new Response(html, {\n headers: { \"Content-Type\": \"text/html\" },\n });\n }\n\n // Serve generated files\n if (pathname.startsWith(\"/__hypen__/\")) {\n const fileName = pathname.replace(\"/__hypen__/\", \"\");\n const filePath = join(resolvedOutDir, fileName.replace(/\\.js$/, \".ts\"));\n\n if (existsSync(filePath)) {\n // Transpile TypeScript on-the-fly\n const transpiler = new Bun.Transpiler({ loader: \"ts\" });\n const code = readFileSync(filePath, \"utf-8\");\n const js = transpiler.transformSync(code);\n\n return new Response(js, {\n headers: { \"Content-Type\": \"application/javascript\" },\n });\n }\n }\n\n // Serve static files from components directory\n if (pathname.endsWith(\".ts\") || pathname.endsWith(\".js\")) {\n // Try to resolve from components directory\n const possiblePaths = [\n join(resolvedComponentsDir, pathname),\n join(process.cwd(), pathname.slice(1)),\n ];\n\n for (const filePath of possiblePaths) {\n if (existsSync(filePath)) {\n const transpiler = new Bun.Transpiler({ loader: \"ts\" });\n const code = readFileSync(filePath, \"utf-8\");\n const js = transpiler.transformSync(code);\n\n return new Response(js, {\n headers: { \"Content-Type\": \"application/javascript\" },\n });\n }\n }\n }\n\n // 404\n return new Response(\"Not Found\", { status: 404 });\n },\n });\n\n const serverUrl = `http://localhost:${port}`;\n\n console.log(`\\n Hypen Dev Server\\n`);\n console.log(` Local: ${serverUrl}`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}\\n`);\n\n onStart?.(serverUrl);\n\n return {\n url: serverUrl,\n stop: () => {\n watcher?.stop();\n server.stop();\n },\n };\n}\n\n/**\n * Build for production\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const {\n components: componentsDir,\n entry,\n outDir = \"dist\",\n minify = true,\n sourcemap = false,\n } = options;\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n console.log(`\\n Hypen Build\\n`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}`);\n console.log(` Output: ${resolvedOutDir}\\n`);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n // Generate components\n const code = await generateComponentsCode(resolvedComponentsDir);\n const tempDir = join(resolvedOutDir, \".temp\");\n\n if (!existsSync(tempDir)) {\n mkdirSync(tempDir, { recursive: true });\n }\n\n const componentsPath = join(tempDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n\n // Generate main entry\n const mainCode = generateMainEntry(entry, componentsPath, false);\n const mainPath = join(tempDir, \"main.ts\");\n writeFileSync(mainPath, mainCode);\n\n // Bundle with Bun\n const result = await Bun.build({\n entrypoints: [mainPath],\n outdir: resolvedOutDir,\n minify,\n sourcemap: sourcemap ? \"external\" : \"none\",\n target: \"browser\",\n format: \"esm\",\n });\n\n if (!result.success) {\n console.error(\"Build failed:\");\n for (const log of result.logs) {\n console.error(log);\n }\n process.exit(1);\n }\n\n // Generate HTML\n const html = getDefaultHtmlTemplate(entry).replace(\n \"/__hypen__/main.js\",\n \"./main.js\"\n );\n writeFileSync(join(resolvedOutDir, \"index.html\"), html);\n\n console.log(` Build complete!\\n`);\n console.log(` Files:`);\n for (const output of result.outputs) {\n console.log(` ${output.path}`);\n }\n console.log();\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "FC5FB7CE08C2B09464756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "4A2A2C5DA6803F8464756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,20 +1,5 @@
1
- import { createRequire } from "node:module";
2
- var __create = Object.create;
3
- var __getProtoOf = Object.getPrototypeOf;
1
+ // @bun
4
2
  var __defProp = Object.defineProperty;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __toESM = (mod, isNodeMode, target) => {
8
- target = mod != null ? __create(__getProtoOf(mod)) : {};
9
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
- for (let key of __getOwnPropNames(mod))
11
- if (!__hasOwnProp.call(to, key))
12
- __defProp(to, key, {
13
- get: () => mod[key],
14
- enumerable: true
15
- });
16
- return to;
17
- };
18
3
  var __export = (target, all) => {
19
4
  for (var name in all)
20
5
  __defProp(target, name, {
@@ -25,7 +10,7 @@ var __export = (target, all) => {
25
10
  });
26
11
  };
27
12
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
13
+ var __require = import.meta.require;
29
14
 
30
15
  // src/dev-node.ts
31
16
  var exports_dev_node = {};
@@ -310,4 +295,4 @@ export {
310
295
  build
311
296
  };
312
297
 
313
- //# debugId=79792657E664B9DE64756E2164756E21
298
+ //# debugId=81631C6FC89BA3B264756E2164756E21
@@ -4,7 +4,7 @@
4
4
  "sourcesContent": [
5
5
  "/**\n * Node.js-compatible Development Server\n *\n * Uses http.createServer() and esbuild for Node.js environments.\n */\n\nimport { createServer, type IncomingMessage, type ServerResponse } from \"http\";\nimport { join, resolve, extname } from \"path\";\nimport { existsSync, readFileSync, writeFileSync, mkdirSync, watch } from \"fs\";\nimport {\n discoverComponents,\n generateComponentsCode,\n type DiscoveredComponent,\n} from \"@hypen-space/core/discovery\";\n\n// Lazy load esbuild to avoid issues if not installed\nlet esbuild: typeof import(\"esbuild\") | null = null;\n\nasync function getEsbuild() {\n if (!esbuild) {\n try {\n esbuild = await import(\"esbuild\");\n } catch {\n throw new Error(\n \"esbuild is required for Node.js support. Install it with: npm install esbuild\"\n );\n }\n }\n return esbuild;\n}\n\nexport interface DevOptions {\n components: string;\n entry: string;\n port?: number;\n hot?: boolean;\n debug?: boolean;\n htmlTemplate?: string;\n outDir?: string;\n onStart?: (url: string) => void;\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n components: string;\n entry: string;\n outDir?: string;\n minify?: boolean;\n sourcemap?: boolean;\n}\n\n/**\n * Default HTML template for development\n */\nfunction getDefaultHtmlTemplate(entry: string): string {\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Hypen App</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body { font-family: system-ui, -apple-system, sans-serif; }\n </style>\n</head>\n<body>\n <div id=\"app\"></div>\n <script type=\"module\" src=\"/__hypen__/main.js\"></script>\n</body>\n</html>\n`;\n}\n\n/**\n * Generate the main entry file\n */\nfunction generateMainEntry(\n entry: string,\n componentsPath: string,\n debug: boolean\n): string {\n return `/**\n * Auto-generated Hypen entry point\n */\nimport { renderWithComponents } from \"@hypen-space/core\";\nimport * as components from \"${componentsPath}\";\n\nconst app = await renderWithComponents(\n components,\n \"${entry}\",\n \"#app\",\n { debug: ${debug} }\n);\n\n// Hot reload support\nif (import.meta.hot) {\n import.meta.hot.accept();\n}\n\nexport default app;\n`;\n}\n\n/**\n * MIME types for common file extensions\n */\nconst MIME_TYPES: Record<string, string> = {\n \".html\": \"text/html\",\n \".js\": \"application/javascript\",\n \".mjs\": \"application/javascript\",\n \".ts\": \"application/javascript\",\n \".css\": \"text/css\",\n \".json\": \"application/json\",\n \".wasm\": \"application/wasm\",\n \".png\": \"image/png\",\n \".jpg\": \"image/jpeg\",\n \".svg\": \"image/svg+xml\",\n};\n\n/**\n * Transpile TypeScript to JavaScript using esbuild\n */\nasync function transpileTS(code: string, filename: string): Promise<string> {\n const es = await getEsbuild();\n const result = await es.transform(code, {\n loader: \"ts\",\n sourcefile: filename,\n format: \"esm\",\n target: \"es2020\",\n });\n return result.code;\n}\n\n/**\n * Start a development server (Node.js version)\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const {\n components: componentsDir,\n entry,\n port = 3000,\n hot = true,\n debug = false,\n htmlTemplate,\n outDir = \".hypen\",\n onStart,\n onComponentsChange,\n } = options;\n\n // Verify esbuild is available\n await getEsbuild();\n\n const log = debug\n ? (...args: unknown[]) => console.log(\"[hypen:dev]\", ...args)\n : () => {};\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n log(\"Components directory:\", resolvedComponentsDir);\n log(\"Output directory:\", resolvedOutDir);\n\n // Generate initial components\n const generateComponents = async () => {\n log(\"Generating components...\");\n const code = await generateComponentsCode(resolvedComponentsDir, { debug });\n const componentsPath = join(resolvedOutDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n log(\"Generated:\", componentsPath);\n return componentsPath;\n };\n\n // Generate main entry\n const generateMain = (componentsPath: string) => {\n log(\"Generating main entry...\");\n const code = generateMainEntry(entry, componentsPath, debug);\n const mainPath = join(resolvedOutDir, \"main.ts\");\n writeFileSync(mainPath, code);\n log(\"Generated:\", mainPath);\n return mainPath;\n };\n\n // Initial generation\n const componentsPath = await generateComponents();\n generateMain(componentsPath);\n\n // Watch for changes\n let watcher: ReturnType<typeof watch> | null = null;\n\n if (hot && existsSync(resolvedComponentsDir)) {\n watcher = watch(\n resolvedComponentsDir,\n { recursive: true },\n async (eventType, filename) => {\n if (\n filename &&\n (filename.endsWith(\".hypen\") || filename.endsWith(\".ts\"))\n ) {\n log(\"File changed:\", filename);\n await generateComponents();\n const components = await discoverComponents(resolvedComponentsDir);\n onComponentsChange?.(components);\n }\n }\n );\n }\n\n // Get HTML template\n const html = htmlTemplate\n ? readFileSync(htmlTemplate, \"utf-8\")\n : getDefaultHtmlTemplate(entry);\n\n // Create Node.js HTTP server\n const server = createServer(async (req: IncomingMessage, res: ServerResponse) => {\n const url = new URL(req.url || \"/\", `http://localhost:${port}`);\n const pathname = url.pathname;\n\n log(\"Request:\", pathname);\n\n try {\n // Serve HTML for root\n if (pathname === \"/\" || pathname === \"/index.html\") {\n res.writeHead(200, { \"Content-Type\": \"text/html\" });\n res.end(html);\n return;\n }\n\n // Serve generated files\n if (pathname.startsWith(\"/__hypen__/\")) {\n const fileName = pathname.replace(\"/__hypen__/\", \"\");\n const filePath = join(resolvedOutDir, fileName.replace(/\\.js$/, \".ts\"));\n\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n\n // Serve static files from components directory\n if (pathname.endsWith(\".ts\") || pathname.endsWith(\".js\")) {\n const possiblePaths = [\n join(resolvedComponentsDir, pathname),\n join(process.cwd(), pathname.slice(1)),\n ];\n\n for (const filePath of possiblePaths) {\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n }\n\n // Serve other static files\n const ext = extname(pathname);\n if (ext && MIME_TYPES[ext]) {\n const filePath = join(process.cwd(), pathname.slice(1));\n if (existsSync(filePath)) {\n const content = readFileSync(filePath);\n res.writeHead(200, { \"Content-Type\": MIME_TYPES[ext] });\n res.end(content);\n return;\n }\n }\n\n // 404\n res.writeHead(404, { \"Content-Type\": \"text/plain\" });\n res.end(\"Not Found\");\n } catch (error) {\n log(\"Error:\", error);\n res.writeHead(500, { \"Content-Type\": \"text/plain\" });\n res.end(`Server Error: ${error}`);\n }\n });\n\n server.listen(port);\n\n const serverUrl = `http://localhost:${port}`;\n\n console.log(`\\n Hypen Dev Server (Node.js)\\n`);\n console.log(` Local: ${serverUrl}`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}\\n`);\n\n onStart?.(serverUrl);\n\n return {\n url: serverUrl,\n stop: () => {\n watcher?.close();\n server.close();\n },\n };\n}\n\n/**\n * Build for production (Node.js version)\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const {\n components: componentsDir,\n entry,\n outDir = \"dist\",\n minify = true,\n sourcemap = false,\n } = options;\n\n const es = await getEsbuild();\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n console.log(`\\n Hypen Build (Node.js)\\n`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}`);\n console.log(` Output: ${resolvedOutDir}\\n`);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n // Generate components\n const code = await generateComponentsCode(resolvedComponentsDir);\n const tempDir = join(resolvedOutDir, \".temp\");\n\n if (!existsSync(tempDir)) {\n mkdirSync(tempDir, { recursive: true });\n }\n\n const componentsPath = join(tempDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n\n // Generate main entry\n const mainCode = generateMainEntry(entry, componentsPath, false);\n const mainPath = join(tempDir, \"main.ts\");\n writeFileSync(mainPath, mainCode);\n\n // Bundle with esbuild\n try {\n await es.build({\n entryPoints: [mainPath],\n bundle: true,\n outdir: resolvedOutDir,\n minify,\n sourcemap,\n format: \"esm\",\n target: \"es2020\",\n platform: \"browser\",\n });\n } catch (error) {\n console.error(\"Build failed:\", error);\n process.exit(1);\n }\n\n // Generate HTML\n const html = getDefaultHtmlTemplate(entry).replace(\n \"/__hypen__/main.js\",\n \"./main.js\"\n );\n writeFileSync(join(resolvedOutDir, \"index.html\"), html);\n\n console.log(` Build complete!\\n`);\n console.log(` Files:`);\n console.log(` ${join(resolvedOutDir, \"main.js\")}`);\n console.log(` ${join(resolvedOutDir, \"index.html\")}`);\n console.log();\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "79792657E664B9DE64756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "81631C6FC89BA3B264756E2164756E21",
9
9
  "names": []
10
10
  }
package/dist/src/dev.js CHANGED
@@ -1,20 +1,5 @@
1
- import { createRequire } from "node:module";
2
- var __create = Object.create;
3
- var __getProtoOf = Object.getPrototypeOf;
1
+ // @bun
4
2
  var __defProp = Object.defineProperty;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __toESM = (mod, isNodeMode, target) => {
8
- target = mod != null ? __create(__getProtoOf(mod)) : {};
9
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
- for (let key of __getOwnPropNames(mod))
11
- if (!__hasOwnProp.call(to, key))
12
- __defProp(to, key, {
13
- get: () => mod[key],
14
- enumerable: true
15
- });
16
- return to;
17
- };
18
3
  var __export = (target, all) => {
19
4
  for (var name in all)
20
5
  __defProp(target, name, {
@@ -25,7 +10,7 @@ var __export = (target, all) => {
25
10
  });
26
11
  };
27
12
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
13
+ var __require = import.meta.require;
29
14
 
30
15
  // src/dev-bun.ts
31
16
  var exports_dev_bun = {};
@@ -573,4 +558,4 @@ export {
573
558
  build3 as build
574
559
  };
575
560
 
576
- //# debugId=479AFE4ECDF1D4C364756E2164756E21
561
+ //# debugId=28265FB3E916B0FA64756E2164756E21
@@ -6,7 +6,7 @@
6
6
  "/**\n * Node.js-compatible Development Server\n *\n * Uses http.createServer() and esbuild for Node.js environments.\n */\n\nimport { createServer, type IncomingMessage, type ServerResponse } from \"http\";\nimport { join, resolve, extname } from \"path\";\nimport { existsSync, readFileSync, writeFileSync, mkdirSync, watch } from \"fs\";\nimport {\n discoverComponents,\n generateComponentsCode,\n type DiscoveredComponent,\n} from \"@hypen-space/core/discovery\";\n\n// Lazy load esbuild to avoid issues if not installed\nlet esbuild: typeof import(\"esbuild\") | null = null;\n\nasync function getEsbuild() {\n if (!esbuild) {\n try {\n esbuild = await import(\"esbuild\");\n } catch {\n throw new Error(\n \"esbuild is required for Node.js support. Install it with: npm install esbuild\"\n );\n }\n }\n return esbuild;\n}\n\nexport interface DevOptions {\n components: string;\n entry: string;\n port?: number;\n hot?: boolean;\n debug?: boolean;\n htmlTemplate?: string;\n outDir?: string;\n onStart?: (url: string) => void;\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n components: string;\n entry: string;\n outDir?: string;\n minify?: boolean;\n sourcemap?: boolean;\n}\n\n/**\n * Default HTML template for development\n */\nfunction getDefaultHtmlTemplate(entry: string): string {\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>Hypen App</title>\n <style>\n * { margin: 0; padding: 0; box-sizing: border-box; }\n body { font-family: system-ui, -apple-system, sans-serif; }\n </style>\n</head>\n<body>\n <div id=\"app\"></div>\n <script type=\"module\" src=\"/__hypen__/main.js\"></script>\n</body>\n</html>\n`;\n}\n\n/**\n * Generate the main entry file\n */\nfunction generateMainEntry(\n entry: string,\n componentsPath: string,\n debug: boolean\n): string {\n return `/**\n * Auto-generated Hypen entry point\n */\nimport { renderWithComponents } from \"@hypen-space/core\";\nimport * as components from \"${componentsPath}\";\n\nconst app = await renderWithComponents(\n components,\n \"${entry}\",\n \"#app\",\n { debug: ${debug} }\n);\n\n// Hot reload support\nif (import.meta.hot) {\n import.meta.hot.accept();\n}\n\nexport default app;\n`;\n}\n\n/**\n * MIME types for common file extensions\n */\nconst MIME_TYPES: Record<string, string> = {\n \".html\": \"text/html\",\n \".js\": \"application/javascript\",\n \".mjs\": \"application/javascript\",\n \".ts\": \"application/javascript\",\n \".css\": \"text/css\",\n \".json\": \"application/json\",\n \".wasm\": \"application/wasm\",\n \".png\": \"image/png\",\n \".jpg\": \"image/jpeg\",\n \".svg\": \"image/svg+xml\",\n};\n\n/**\n * Transpile TypeScript to JavaScript using esbuild\n */\nasync function transpileTS(code: string, filename: string): Promise<string> {\n const es = await getEsbuild();\n const result = await es.transform(code, {\n loader: \"ts\",\n sourcefile: filename,\n format: \"esm\",\n target: \"es2020\",\n });\n return result.code;\n}\n\n/**\n * Start a development server (Node.js version)\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const {\n components: componentsDir,\n entry,\n port = 3000,\n hot = true,\n debug = false,\n htmlTemplate,\n outDir = \".hypen\",\n onStart,\n onComponentsChange,\n } = options;\n\n // Verify esbuild is available\n await getEsbuild();\n\n const log = debug\n ? (...args: unknown[]) => console.log(\"[hypen:dev]\", ...args)\n : () => {};\n\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n log(\"Components directory:\", resolvedComponentsDir);\n log(\"Output directory:\", resolvedOutDir);\n\n // Generate initial components\n const generateComponents = async () => {\n log(\"Generating components...\");\n const code = await generateComponentsCode(resolvedComponentsDir, { debug });\n const componentsPath = join(resolvedOutDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n log(\"Generated:\", componentsPath);\n return componentsPath;\n };\n\n // Generate main entry\n const generateMain = (componentsPath: string) => {\n log(\"Generating main entry...\");\n const code = generateMainEntry(entry, componentsPath, debug);\n const mainPath = join(resolvedOutDir, \"main.ts\");\n writeFileSync(mainPath, code);\n log(\"Generated:\", mainPath);\n return mainPath;\n };\n\n // Initial generation\n const componentsPath = await generateComponents();\n generateMain(componentsPath);\n\n // Watch for changes\n let watcher: ReturnType<typeof watch> | null = null;\n\n if (hot && existsSync(resolvedComponentsDir)) {\n watcher = watch(\n resolvedComponentsDir,\n { recursive: true },\n async (eventType, filename) => {\n if (\n filename &&\n (filename.endsWith(\".hypen\") || filename.endsWith(\".ts\"))\n ) {\n log(\"File changed:\", filename);\n await generateComponents();\n const components = await discoverComponents(resolvedComponentsDir);\n onComponentsChange?.(components);\n }\n }\n );\n }\n\n // Get HTML template\n const html = htmlTemplate\n ? readFileSync(htmlTemplate, \"utf-8\")\n : getDefaultHtmlTemplate(entry);\n\n // Create Node.js HTTP server\n const server = createServer(async (req: IncomingMessage, res: ServerResponse) => {\n const url = new URL(req.url || \"/\", `http://localhost:${port}`);\n const pathname = url.pathname;\n\n log(\"Request:\", pathname);\n\n try {\n // Serve HTML for root\n if (pathname === \"/\" || pathname === \"/index.html\") {\n res.writeHead(200, { \"Content-Type\": \"text/html\" });\n res.end(html);\n return;\n }\n\n // Serve generated files\n if (pathname.startsWith(\"/__hypen__/\")) {\n const fileName = pathname.replace(\"/__hypen__/\", \"\");\n const filePath = join(resolvedOutDir, fileName.replace(/\\.js$/, \".ts\"));\n\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n\n // Serve static files from components directory\n if (pathname.endsWith(\".ts\") || pathname.endsWith(\".js\")) {\n const possiblePaths = [\n join(resolvedComponentsDir, pathname),\n join(process.cwd(), pathname.slice(1)),\n ];\n\n for (const filePath of possiblePaths) {\n if (existsSync(filePath)) {\n const code = readFileSync(filePath, \"utf-8\");\n const js = await transpileTS(code, filePath);\n\n res.writeHead(200, { \"Content-Type\": \"application/javascript\" });\n res.end(js);\n return;\n }\n }\n }\n\n // Serve other static files\n const ext = extname(pathname);\n if (ext && MIME_TYPES[ext]) {\n const filePath = join(process.cwd(), pathname.slice(1));\n if (existsSync(filePath)) {\n const content = readFileSync(filePath);\n res.writeHead(200, { \"Content-Type\": MIME_TYPES[ext] });\n res.end(content);\n return;\n }\n }\n\n // 404\n res.writeHead(404, { \"Content-Type\": \"text/plain\" });\n res.end(\"Not Found\");\n } catch (error) {\n log(\"Error:\", error);\n res.writeHead(500, { \"Content-Type\": \"text/plain\" });\n res.end(`Server Error: ${error}`);\n }\n });\n\n server.listen(port);\n\n const serverUrl = `http://localhost:${port}`;\n\n console.log(`\\n Hypen Dev Server (Node.js)\\n`);\n console.log(` Local: ${serverUrl}`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}\\n`);\n\n onStart?.(serverUrl);\n\n return {\n url: serverUrl,\n stop: () => {\n watcher?.close();\n server.close();\n },\n };\n}\n\n/**\n * Build for production (Node.js version)\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const {\n components: componentsDir,\n entry,\n outDir = \"dist\",\n minify = true,\n sourcemap = false,\n } = options;\n\n const es = await getEsbuild();\n const resolvedComponentsDir = resolve(componentsDir);\n const resolvedOutDir = resolve(outDir);\n\n console.log(`\\n Hypen Build (Node.js)\\n`);\n console.log(` Entry: ${entry}`);\n console.log(` Components: ${resolvedComponentsDir}`);\n console.log(` Output: ${resolvedOutDir}\\n`);\n\n // Ensure output directory exists\n if (!existsSync(resolvedOutDir)) {\n mkdirSync(resolvedOutDir, { recursive: true });\n }\n\n // Generate components\n const code = await generateComponentsCode(resolvedComponentsDir);\n const tempDir = join(resolvedOutDir, \".temp\");\n\n if (!existsSync(tempDir)) {\n mkdirSync(tempDir, { recursive: true });\n }\n\n const componentsPath = join(tempDir, \"components.generated.ts\");\n writeFileSync(componentsPath, code);\n\n // Generate main entry\n const mainCode = generateMainEntry(entry, componentsPath, false);\n const mainPath = join(tempDir, \"main.ts\");\n writeFileSync(mainPath, mainCode);\n\n // Bundle with esbuild\n try {\n await es.build({\n entryPoints: [mainPath],\n bundle: true,\n outdir: resolvedOutDir,\n minify,\n sourcemap,\n format: \"esm\",\n target: \"es2020\",\n platform: \"browser\",\n });\n } catch (error) {\n console.error(\"Build failed:\", error);\n process.exit(1);\n }\n\n // Generate HTML\n const html = getDefaultHtmlTemplate(entry).replace(\n \"/__hypen__/main.js\",\n \"./main.js\"\n );\n writeFileSync(join(resolvedOutDir, \"index.html\"), html);\n\n console.log(` Build complete!\\n`);\n console.log(` Files:`);\n console.log(` ${join(resolvedOutDir, \"main.js\")}`);\n console.log(` ${join(resolvedOutDir, \"index.html\")}`);\n console.log();\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n",
7
7
  "/**\n * Unified Development Server\n *\n * Automatically detects runtime (Bun vs Node.js) and uses the appropriate implementation.\n *\n * Usage:\n * import { dev, build } from \"@hypen-space/cli/dev\";\n *\n * await dev({\n * components: \"./src/components\",\n * entry: \"App\",\n * });\n */\n\nimport type { DiscoveredComponent } from \"@hypen-space/core/discovery\";\n\nexport interface DevOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name (e.g., \"App\")\n */\n entry: string;\n\n /**\n * Development server port\n * Default: 3000\n */\n port?: number;\n\n /**\n * Enable hot module reloading\n * Default: true\n */\n hot?: boolean;\n\n /**\n * Enable debug logging\n * Default: false\n */\n debug?: boolean;\n\n /**\n * Custom HTML template path\n */\n htmlTemplate?: string;\n\n /**\n * Output directory for generated files\n * Default: \".hypen\"\n */\n outDir?: string;\n\n /**\n * Callback when server starts\n */\n onStart?: (url: string) => void;\n\n /**\n * Callback when components change\n */\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name\n */\n entry: string;\n\n /**\n * Output directory\n * Default: \"dist\"\n */\n outDir?: string;\n\n /**\n * Enable minification\n * Default: true\n */\n minify?: boolean;\n\n /**\n * Enable source maps\n * Default: false\n */\n sourcemap?: boolean;\n}\n\n/**\n * Detect if running in Bun\n */\nfunction isBun(): boolean {\n return typeof globalThis.Bun !== \"undefined\";\n}\n\n/**\n * Get the appropriate implementation based on runtime\n */\nasync function getImplementation() {\n if (isBun()) {\n return import(\"./dev-bun.js\");\n } else {\n return import(\"./dev-node.js\");\n }\n}\n\n/**\n * Start a development server\n *\n * Automatically uses Bun.serve() in Bun or http.createServer() in Node.js\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const impl = await getImplementation();\n return impl.dev(options);\n}\n\n/**\n * Build for production\n *\n * Automatically uses Bun.build() in Bun or esbuild in Node.js\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const impl = await getImplementation();\n return impl.build(options);\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n"
8
8
  ],
9
- "mappings": "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",
10
- "debugId": "479AFE4ECDF1D4C364756E2164756E21",
9
+ "mappings": "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",
10
+ "debugId": "28265FB3E916B0FA64756E2164756E21",
11
11
  "names": []
12
12
  }
package/dist/src/index.js CHANGED
@@ -1,20 +1,5 @@
1
- import { createRequire } from "node:module";
2
- var __create = Object.create;
3
- var __getProtoOf = Object.getPrototypeOf;
1
+ // @bun
4
2
  var __defProp = Object.defineProperty;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __toESM = (mod, isNodeMode, target) => {
8
- target = mod != null ? __create(__getProtoOf(mod)) : {};
9
- const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
- for (let key of __getOwnPropNames(mod))
11
- if (!__hasOwnProp.call(to, key))
12
- __defProp(to, key, {
13
- get: () => mod[key],
14
- enumerable: true
15
- });
16
- return to;
17
- };
18
3
  var __export = (target, all) => {
19
4
  for (var name in all)
20
5
  __defProp(target, name, {
@@ -25,7 +10,7 @@ var __export = (target, all) => {
25
10
  });
26
11
  };
27
12
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
28
- var __require = /* @__PURE__ */ createRequire(import.meta.url);
13
+ var __require = import.meta.require;
29
14
 
30
15
  // src/dev-bun.ts
31
16
  var exports_dev_bun = {};
@@ -577,4 +562,4 @@ export {
577
562
  build3 as build
578
563
  };
579
564
 
580
- //# debugId=D24177954522F39064756E2164756E21
565
+ //# debugId=D610928315ACC7AE64756E2164756E21
@@ -7,7 +7,7 @@
7
7
  "/**\n * Unified Development Server\n *\n * Automatically detects runtime (Bun vs Node.js) and uses the appropriate implementation.\n *\n * Usage:\n * import { dev, build } from \"@hypen-space/cli/dev\";\n *\n * await dev({\n * components: \"./src/components\",\n * entry: \"App\",\n * });\n */\n\nimport type { DiscoveredComponent } from \"@hypen-space/core/discovery\";\n\nexport interface DevOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name (e.g., \"App\")\n */\n entry: string;\n\n /**\n * Development server port\n * Default: 3000\n */\n port?: number;\n\n /**\n * Enable hot module reloading\n * Default: true\n */\n hot?: boolean;\n\n /**\n * Enable debug logging\n * Default: false\n */\n debug?: boolean;\n\n /**\n * Custom HTML template path\n */\n htmlTemplate?: string;\n\n /**\n * Output directory for generated files\n * Default: \".hypen\"\n */\n outDir?: string;\n\n /**\n * Callback when server starts\n */\n onStart?: (url: string) => void;\n\n /**\n * Callback when components change\n */\n onComponentsChange?: (components: DiscoveredComponent[]) => void;\n}\n\nexport interface BuildOptions {\n /**\n * Path to components directory\n */\n components: string;\n\n /**\n * Entry component name\n */\n entry: string;\n\n /**\n * Output directory\n * Default: \"dist\"\n */\n outDir?: string;\n\n /**\n * Enable minification\n * Default: true\n */\n minify?: boolean;\n\n /**\n * Enable source maps\n * Default: false\n */\n sourcemap?: boolean;\n}\n\n/**\n * Detect if running in Bun\n */\nfunction isBun(): boolean {\n return typeof globalThis.Bun !== \"undefined\";\n}\n\n/**\n * Get the appropriate implementation based on runtime\n */\nasync function getImplementation() {\n if (isBun()) {\n return import(\"./dev-bun.js\");\n } else {\n return import(\"./dev-node.js\");\n }\n}\n\n/**\n * Start a development server\n *\n * Automatically uses Bun.serve() in Bun or http.createServer() in Node.js\n */\nexport async function dev(options: DevOptions): Promise<{\n url: string;\n stop: () => void;\n}> {\n const impl = await getImplementation();\n return impl.dev(options);\n}\n\n/**\n * Build for production\n *\n * Automatically uses Bun.build() in Bun or esbuild in Node.js\n */\nexport async function build(options: BuildOptions): Promise<void> {\n const impl = await getImplementation();\n return impl.build(options);\n}\n\n/**\n * Main hypen object for easy imports\n */\nexport const hypen = {\n dev,\n build,\n};\n\nexport default hypen;\n",
8
8
  "/**\n * @hypen-space/cli\n *\n * CLI tools for creating and managing Hypen applications.\n * Works with both Bun and Node.js runtimes.\n */\n\n// Unified API (auto-detects runtime)\nexport { dev, build, hypen } from \"./dev.js\";\nexport type { DevOptions, BuildOptions } from \"./dev.js\";\n\n// Direct access to runtime-specific implementations\nexport * as bun from \"./dev-bun.js\";\nexport * as node from \"./dev-node.js\";\n"
9
9
  ],
10
- "mappings": "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",
11
- "debugId": "D24177954522F39064756E2164756E21",
10
+ "mappings": "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",
11
+ "debugId": "D610928315ACC7AE64756E2164756E21",
12
12
  "names": []
13
13
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hypen-space/cli",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
4
4
  "description": "Hypen CLI - Create and manage Hypen applications",
5
5
  "type": "module",
6
6
  "bin": {
@@ -30,9 +30,12 @@
30
30
  "typecheck": "tsc --noEmit"
31
31
  },
32
32
  "dependencies": {
33
- "@hypen-space/core": "^0.3.8",
34
- "@hypen-space/web": "^0.3.8",
35
- "esbuild": "^0.20.0"
33
+ "@hypen-space/core": "^0.3.10",
34
+ "@hypen-space/web": "^0.3.10",
35
+ "bun-plugin-tailwind": "^0.1.2",
36
+ "esbuild": "^0.20.0",
37
+ "tailwindcss": "^4.1.11",
38
+ "tw-animate-css": "^1.4.0"
36
39
  },
37
40
  "devDependencies": {
38
41
  "@types/bun": "latest",