@sigx/vite 0.1.6 → 0.1.7

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.
Files changed (72) hide show
  1. package/dist/index.d.ts +2 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +6 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/islands.d.ts +99 -0
  6. package/dist/islands.d.ts.map +1 -0
  7. package/dist/islands.js +418 -0
  8. package/dist/islands.js.map +1 -0
  9. package/dist/lib.d.ts.map +1 -1
  10. package/dist/lib.js +0 -1
  11. package/dist/lib.js.map +1 -1
  12. package/package.json +9 -3
  13. package/dist/core/src/Component.d.ts +0 -131
  14. package/dist/core/src/Component.d.ts.map +0 -1
  15. package/dist/core/src/Component.js +0 -272
  16. package/dist/core/src/Component.js.map +0 -1
  17. package/dist/core/src/Signals.d.ts +0 -34
  18. package/dist/core/src/Signals.d.ts.map +0 -1
  19. package/dist/core/src/Signals.js +0 -222
  20. package/dist/core/src/Signals.js.map +0 -1
  21. package/dist/core/src/Templating.d.ts +0 -11
  22. package/dist/core/src/Templating.d.ts.map +0 -1
  23. package/dist/core/src/Templating.js +0 -81
  24. package/dist/core/src/Templating.js.map +0 -1
  25. package/dist/core/src/factory/index.d.ts +0 -20
  26. package/dist/core/src/factory/index.d.ts.map +0 -1
  27. package/dist/core/src/factory/index.js +0 -50
  28. package/dist/core/src/factory/index.js.map +0 -1
  29. package/dist/core/src/index.d.ts +0 -8
  30. package/dist/core/src/index.d.ts.map +0 -1
  31. package/dist/core/src/index.js +0 -9
  32. package/dist/core/src/index.js.map +0 -1
  33. package/dist/core/src/jsx-runtime.d.ts +0 -43
  34. package/dist/core/src/jsx-runtime.d.ts.map +0 -1
  35. package/dist/core/src/jsx-runtime.js +0 -469
  36. package/dist/core/src/jsx-runtime.js.map +0 -1
  37. package/dist/core/src/messaging/index.d.ts +0 -9
  38. package/dist/core/src/messaging/index.d.ts.map +0 -1
  39. package/dist/core/src/messaging/index.js +0 -37
  40. package/dist/core/src/messaging/index.js.map +0 -1
  41. package/dist/core/src/models/index.d.ts +0 -18
  42. package/dist/core/src/models/index.d.ts.map +0 -1
  43. package/dist/core/src/models/index.js +0 -12
  44. package/dist/core/src/models/index.js.map +0 -1
  45. package/dist/core/src/sheet.d.ts +0 -51
  46. package/dist/core/src/sheet.d.ts.map +0 -1
  47. package/dist/core/src/sheet.js +0 -151
  48. package/dist/core/src/sheet.js.map +0 -1
  49. package/dist/core/src/stores/DefineInjectable.d.ts +0 -5
  50. package/dist/core/src/stores/DefineInjectable.d.ts.map +0 -1
  51. package/dist/core/src/stores/DefineInjectable.js +0 -56
  52. package/dist/core/src/stores/DefineInjectable.js.map +0 -1
  53. package/dist/core/src/stores/Store.d.ts +0 -70
  54. package/dist/core/src/stores/Store.d.ts.map +0 -1
  55. package/dist/core/src/stores/Store.js +0 -180
  56. package/dist/core/src/stores/Store.js.map +0 -1
  57. package/dist/core/src/styled.d.ts +0 -15
  58. package/dist/core/src/styled.d.ts.map +0 -1
  59. package/dist/core/src/styled.js +0 -62
  60. package/dist/core/src/styled.js.map +0 -1
  61. package/dist/core/src/utils/index.d.ts +0 -5
  62. package/dist/core/src/utils/index.d.ts.map +0 -1
  63. package/dist/core/src/utils/index.js +0 -12
  64. package/dist/core/src/utils/index.js.map +0 -1
  65. package/dist/hmr-plugin/src/index.d.ts +0 -2
  66. package/dist/hmr-plugin/src/index.d.ts.map +0 -1
  67. package/dist/hmr-plugin/src/index.js +0 -59
  68. package/dist/hmr-plugin/src/index.js.map +0 -1
  69. package/dist/vite/src/index.d.ts +0 -2
  70. package/dist/vite/src/index.d.ts.map +0 -1
  71. package/dist/vite/src/index.js +0 -59
  72. package/dist/vite/src/index.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -8,5 +8,7 @@ interface SigxPluginOptions {
8
8
  }
9
9
  export declare function sigxPlugin(options?: SigxPluginOptions): Plugin;
10
10
  export { installHMRPlugin, registerHMRModule } from './hmr.js';
11
+ export { sigxIslandsPlugin } from './islands.js';
12
+ export type { SigxIslandsPluginOptions } from './islands.js';
11
13
  export default sigxPlugin;
12
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAA6C,MAAM,MAAM,CAAC;AAQ9E,UAAU,iBAAiB;IACvB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAqBD,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAiFlE;AAOD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG/D,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAA6C,MAAM,MAAM,CAAC;AAQ9E,UAAU,iBAAiB;IACvB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACjB;AAqBD,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,MAAM,CAoFlE;AAOD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,YAAY,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAG7D,eAAe,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -32,6 +32,7 @@ export function sigxPlugin(options = {}) {
32
32
  const runtimeCoreSrc = resolvePackageSrc('@sigx/runtime-core');
33
33
  const runtimeDomSrc = resolvePackageSrc('@sigx/runtime-dom');
34
34
  const serverRendererSrc = resolvePackageSrc('@sigx/server-renderer');
35
+ const storeSrc = resolvePackageSrc('@sigx/store');
35
36
  const alias = {};
36
37
  if (sigxSrc)
37
38
  alias['sigx'] = sigxSrc;
@@ -43,13 +44,15 @@ export function sigxPlugin(options = {}) {
43
44
  alias['@sigx/runtime-dom'] = runtimeDomSrc;
44
45
  if (serverRendererSrc)
45
46
  alias['@sigx/server-renderer'] = serverRendererSrc;
47
+ if (storeSrc)
48
+ alias['@sigx/store'] = storeSrc;
46
49
  return {
47
50
  resolve: {
48
51
  alias
49
52
  },
50
53
  optimizeDeps: {
51
54
  // Exclude sigx packages from pre-bundling - they're ESM and aliased to source
52
- exclude: ['sigx', '@sigx/reactivity', '@sigx/runtime-core', '@sigx/runtime-dom', '@sigx/server-renderer']
55
+ exclude: ['sigx', '@sigx/reactivity', '@sigx/runtime-core', '@sigx/runtime-dom', '@sigx/server-renderer', '@sigx/store']
53
56
  }
54
57
  };
55
58
  }
@@ -94,6 +97,8 @@ if (import.meta.hot) {
94
97
  // ============================================================================
95
98
  // Re-export the HMR runtime functions for manual use if needed
96
99
  export { installHMRPlugin, registerHMRModule } from './hmr.js';
100
+ // Re-export islands plugin
101
+ export { sigxIslandsPlugin } from './islands.js';
97
102
  // Default export for convenience
98
103
  export default sigxPlugin;
99
104
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Vite plugin for automatic island code splitting
3
+ *
4
+ * Provides a `virtual:sigx-islands` module that auto-discovers all components
5
+ * used with `client:*` directives and registers lazy loaders for them.
6
+ *
7
+ * IMPORTANT: This plugin does NOT modify source files. Source files keep their
8
+ * static imports intact so they work correctly in SPA hydration mode. Code
9
+ * splitting only happens in islands mode, where the client entry imports the
10
+ * virtual module instead of the page modules.
11
+ *
12
+ * Two hydration modes:
13
+ *
14
+ * 1. **SPA mode** (`defineApp(<App/>).hydrate('#root')`)
15
+ * - Full component tree re-rendered on client
16
+ * - All component code bundled together (static imports)
17
+ * - `client:*` directives control WHEN hydration fires, but all JS is loaded
18
+ * - No per-island code splitting (the whole tree is needed)
19
+ *
20
+ * 2. **Islands mode** (`import 'virtual:sigx-islands'` + `hydrateIslands()`)
21
+ * - No component tree on client — only island markers in the DOM
22
+ * - Each island's code loaded lazily via dynamic import()
23
+ * - `client:*` controls both WHEN the chunk loads AND when hydration runs
24
+ * - True per-island code splitting
25
+ *
26
+ * @example
27
+ * ```ts
28
+ * // vite.config.ts
29
+ * import { sigxPlugin, sigxIslandsPlugin } from '@sigx/vite';
30
+ *
31
+ * export default defineConfig({
32
+ * plugins: [sigxPlugin(), sigxIslandsPlugin()]
33
+ * });
34
+ * ```
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * // entry-islands.ts (islands mode with per-island code splitting)
39
+ * import 'virtual:sigx-islands';
40
+ * import { hydrateIslands } from '@sigx/ssr-islands/client';
41
+ * hydrateIslands();
42
+ * ```
43
+ */
44
+ import type { Plugin } from 'vite';
45
+ export interface SigxIslandsPluginOptions {
46
+ /**
47
+ * Directories to scan for island components (relative to Vite root).
48
+ * @default ['src']
49
+ */
50
+ scanDirs?: string[];
51
+ /**
52
+ * Directory names to skip during scanning.
53
+ * @default ['node_modules', 'dist', '.git', '.vite']
54
+ */
55
+ excludeDirs?: string[];
56
+ /**
57
+ * Name of the manifest file emitted during build.
58
+ * @default 'island-manifest.json'
59
+ */
60
+ manifestFileName?: string;
61
+ }
62
+ export declare function sigxIslandsPlugin(options?: SigxIslandsPluginOptions): Plugin;
63
+ /**
64
+ * Scan the project for components used with client:* directives and generate
65
+ * a virtual module that registers lazy loaders for each one.
66
+ *
67
+ * The generated module contains ONLY dynamic import() calls — no static imports
68
+ * to component files. This is what enables per-island code splitting.
69
+ *
70
+ * @param scanRoots - Absolute paths to directories to scan
71
+ * @param excludeDirs - Directory names to skip
72
+ * @param projectRoot - Vite project root for relative path calculation
73
+ * @returns The virtual module source code
74
+ */
75
+ export declare function generateIslandRegistry(scanRoots: string[], excludeDirs: string[], projectRoot: string): string;
76
+ /**
77
+ * Generate a stable island ID from a file path and export name.
78
+ *
79
+ * Format: `relative/path/to/File#ExportName`
80
+ *
81
+ * Examples:
82
+ * - `src/components/Counter#Counter` (named export)
83
+ * - `src/components/Counter#default` (default export)
84
+ *
85
+ * The path is relative to the project root, forward-slashed, without extension.
86
+ */
87
+ export declare function normalizeIslandId(absolutePath: string, exportName: string, projectRoot: string): string;
88
+ interface ImportInfo {
89
+ source: string;
90
+ exportName: string;
91
+ localName: string;
92
+ }
93
+ /**
94
+ * Parse all import declarations in a file and build a map of
95
+ * local name → { source, exportName }.
96
+ */
97
+ export declare function parseImports(code: string): Map<string, ImportInfo>;
98
+ export {};
99
+ //# sourceMappingURL=islands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"islands.d.ts","sourceRoot":"","sources":["../src/islands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAiC,MAAM,MAAM,CAAC;AAQlE,MAAM,WAAW,wBAAwB;IACrC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AA6DD,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,CAgJhF;AAaD;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,MAAM,EAAE,EACnB,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,EAAE,MAAM,GACpB,MAAM,CAqCR;AA6ED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAIvG;AAqDD,UAAU,UAAU;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CA8BlE"}
@@ -0,0 +1,418 @@
1
+ /**
2
+ * Vite plugin for automatic island code splitting
3
+ *
4
+ * Provides a `virtual:sigx-islands` module that auto-discovers all components
5
+ * used with `client:*` directives and registers lazy loaders for them.
6
+ *
7
+ * IMPORTANT: This plugin does NOT modify source files. Source files keep their
8
+ * static imports intact so they work correctly in SPA hydration mode. Code
9
+ * splitting only happens in islands mode, where the client entry imports the
10
+ * virtual module instead of the page modules.
11
+ *
12
+ * Two hydration modes:
13
+ *
14
+ * 1. **SPA mode** (`defineApp(<App/>).hydrate('#root')`)
15
+ * - Full component tree re-rendered on client
16
+ * - All component code bundled together (static imports)
17
+ * - `client:*` directives control WHEN hydration fires, but all JS is loaded
18
+ * - No per-island code splitting (the whole tree is needed)
19
+ *
20
+ * 2. **Islands mode** (`import 'virtual:sigx-islands'` + `hydrateIslands()`)
21
+ * - No component tree on client — only island markers in the DOM
22
+ * - Each island's code loaded lazily via dynamic import()
23
+ * - `client:*` controls both WHEN the chunk loads AND when hydration runs
24
+ * - True per-island code splitting
25
+ *
26
+ * @example
27
+ * ```ts
28
+ * // vite.config.ts
29
+ * import { sigxPlugin, sigxIslandsPlugin } from '@sigx/vite';
30
+ *
31
+ * export default defineConfig({
32
+ * plugins: [sigxPlugin(), sigxIslandsPlugin()]
33
+ * });
34
+ * ```
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * // entry-islands.ts (islands mode with per-island code splitting)
39
+ * import 'virtual:sigx-islands';
40
+ * import { hydrateIslands } from '@sigx/ssr-islands/client';
41
+ * hydrateIslands();
42
+ * ```
43
+ */
44
+ import path from 'path';
45
+ import fs from 'fs';
46
+ // ============================================================================
47
+ // Constants
48
+ // ============================================================================
49
+ const VIRTUAL_MODULE_ID = 'virtual:sigx-islands';
50
+ const RESOLVED_VIRTUAL_ID = '\0' + VIRTUAL_MODULE_ID;
51
+ /**
52
+ * Regex to match JSX usage of components with client:* directives.
53
+ *
54
+ * Captures:
55
+ * - Group 1: Component name (PascalCase identifier like `Counter`, `AsyncUser`)
56
+ *
57
+ * Matches patterns like:
58
+ * <Counter client:load />
59
+ * <Counter client:idle>...</Counter>
60
+ * <AsyncUser client:visible />
61
+ * <MyWidget client:media="(min-width: 768px)" />
62
+ *
63
+ * Does NOT match:
64
+ * - HTML elements (<div client:load /> — lowercase first char)
65
+ * - Components without client: directives
66
+ */
67
+ const ISLAND_USAGE_RE = /<([A-Z][A-Za-z0-9_$]*)\s[^>]*client:/g;
68
+ /**
69
+ * Matches import declarations to extract imported names and source.
70
+ */
71
+ const IMPORT_RE = /import\s+({[^}]+}|[A-Za-z_$][\w$]*(?:\s*,\s*{[^}]+})?)\s+from\s+['"]([^'"]+)['"]/g;
72
+ /**
73
+ * Matches a named import within braces: `{ Counter, Widget as W }`
74
+ */
75
+ const NAMED_IMPORT_RE = /\b([A-Z][A-Za-z0-9_$]*)(?:\s+as\s+([A-Z][A-Za-z0-9_$]*))?\b/g;
76
+ /**
77
+ * Matches component definitions assigned to a variable AT THE TOP LEVEL.
78
+ * Captures group 1: the variable name.
79
+ *
80
+ * The `^` anchor with `m` flag ensures we only match lines that start at
81
+ * column 0 (no indentation), avoiding component() calls inside function bodies.
82
+ *
83
+ * Handles:
84
+ * const Counter = component(...)
85
+ * export const Counter = component(...)
86
+ * const Counter = component<Props>(...)
87
+ */
88
+ const COMPONENT_DEF_RE = /^(?:export\s+)?(?:const|let|var)\s+([A-Z][A-Za-z0-9_$]*)\s*(?::\s*[^=]+)?\s*=\s*component\s*[<(]/gm;
89
+ /**
90
+ * Matches `export default component(` or `export default component<`
91
+ * at the start of a line (top level only).
92
+ */
93
+ const COMPONENT_DEFAULT_RE = /^export\s+default\s+(component\s*[<(])/m;
94
+ // ============================================================================
95
+ // Plugin
96
+ // ============================================================================
97
+ export function sigxIslandsPlugin(options = {}) {
98
+ const { scanDirs = ['src'], excludeDirs = ['node_modules', 'dist', '.git', '.vite'], manifestFileName = 'island-manifest.json', } = options;
99
+ let config;
100
+ /**
101
+ * Track discovered island components during build (passive collection).
102
+ * Used by generateBundle to emit the manifest.
103
+ */
104
+ const discoveredIslands = new Map();
105
+ /**
106
+ * Cached virtual module content — invalidated when TSX/JSX files change.
107
+ */
108
+ let virtualModuleCache = null;
109
+ return {
110
+ name: 'sigx:islands',
111
+ enforce: 'pre',
112
+ configResolved(resolvedConfig) {
113
+ config = resolvedConfig;
114
+ },
115
+ // ── Virtual module: virtual:sigx-islands ──────────────────────
116
+ resolveId(id) {
117
+ if (id === VIRTUAL_MODULE_ID) {
118
+ return RESOLVED_VIRTUAL_ID;
119
+ }
120
+ },
121
+ load(id) {
122
+ if (id === RESOLVED_VIRTUAL_ID) {
123
+ if (!virtualModuleCache) {
124
+ const roots = scanDirs.map(d => path.resolve(config.root, d));
125
+ virtualModuleCache = generateIslandRegistry(roots, excludeDirs, config.root);
126
+ }
127
+ return virtualModuleCache;
128
+ }
129
+ },
130
+ // ── Dev server: invalidate virtual module on file changes ─────
131
+ configureServer(server) {
132
+ server.watcher.on('change', (file) => {
133
+ if (/\.[jt]sx$/.test(file)) {
134
+ virtualModuleCache = null;
135
+ try {
136
+ const mod = server.moduleGraph.getModuleById(RESOLVED_VIRTUAL_ID);
137
+ if (mod) {
138
+ server.moduleGraph.invalidateModule(mod);
139
+ }
140
+ }
141
+ catch {
142
+ // Vite version compatibility fallback
143
+ }
144
+ }
145
+ });
146
+ },
147
+ // ── Transform: inject __islandId + passively collect ───────
148
+ transform(code, id) {
149
+ // Only process TSX/JSX files
150
+ if (!/\.[jt]sx$/.test(id))
151
+ return null;
152
+ if (id.includes('node_modules') || id.includes('/dist/') || id.includes('\\dist\\'))
153
+ return null;
154
+ let modified = false;
155
+ let result = code;
156
+ // 1. Inject __islandId into component definitions
157
+ // This runs on ALL component files so the SSR plugin can
158
+ // identify components by stable path-based IDs.
159
+ if (code.includes('component(') || code.includes('component<')) {
160
+ const injected = injectIslandIds(code, id, config.root);
161
+ if (injected) {
162
+ result = injected;
163
+ modified = true;
164
+ }
165
+ }
166
+ // 2. Passively collect island info for build manifest
167
+ if (result.includes('client:')) {
168
+ const islandNames = new Set();
169
+ let match;
170
+ ISLAND_USAGE_RE.lastIndex = 0;
171
+ while ((match = ISLAND_USAGE_RE.exec(result)) !== null) {
172
+ islandNames.add(match[1]);
173
+ }
174
+ if (islandNames.size > 0) {
175
+ const importMap = parseImports(result);
176
+ for (const name of islandNames) {
177
+ const imp = importMap.get(name);
178
+ if (!imp)
179
+ continue;
180
+ // Resolve to path-based ID for the manifest
181
+ const importDir = path.dirname(id);
182
+ const resolved = path.resolve(importDir, imp.source);
183
+ const islandId = normalizeIslandId(resolved, imp.exportName, config.root);
184
+ discoveredIslands.set(islandId, {
185
+ source: imp.source,
186
+ exportName: imp.exportName,
187
+ fileId: id
188
+ });
189
+ }
190
+ }
191
+ }
192
+ return modified ? { code: result, map: null } : null;
193
+ },
194
+ // ── Build: emit island manifest ───────────────────────────────
195
+ generateBundle() {
196
+ if (discoveredIslands.size === 0)
197
+ return;
198
+ const manifest = {};
199
+ for (const [name, info] of discoveredIslands) {
200
+ manifest[name] = {
201
+ source: info.source,
202
+ exportName: info.exportName
203
+ };
204
+ }
205
+ this.emitFile({
206
+ type: 'asset',
207
+ fileName: manifestFileName,
208
+ source: JSON.stringify(manifest, null, 2)
209
+ });
210
+ }
211
+ };
212
+ }
213
+ /**
214
+ * Scan the project for components used with client:* directives and generate
215
+ * a virtual module that registers lazy loaders for each one.
216
+ *
217
+ * The generated module contains ONLY dynamic import() calls — no static imports
218
+ * to component files. This is what enables per-island code splitting.
219
+ *
220
+ * @param scanRoots - Absolute paths to directories to scan
221
+ * @param excludeDirs - Directory names to skip
222
+ * @param projectRoot - Vite project root for relative path calculation
223
+ * @returns The virtual module source code
224
+ */
225
+ export function generateIslandRegistry(scanRoots, excludeDirs, projectRoot) {
226
+ const islands = new Map();
227
+ for (const root of scanRoots) {
228
+ scanDirectoryForIslands(root, excludeDirs, projectRoot, islands);
229
+ }
230
+ if (islands.size === 0) {
231
+ return [
232
+ '// No island components found',
233
+ 'export const islandNames = [];',
234
+ ''
235
+ ].join('\n');
236
+ }
237
+ const lines = [
238
+ `import { __registerIslandChunk } from '@sigx/ssr-islands/client';`,
239
+ '',
240
+ ];
241
+ for (const [islandId, info] of islands) {
242
+ if (info.exportName === 'default') {
243
+ lines.push(`__registerIslandChunk('${islandId}', () => import('${info.source}').then(m => m.default));`);
244
+ }
245
+ else {
246
+ lines.push(`__registerIslandChunk('${islandId}', () => import('${info.source}').then(m => m.${info.exportName} || m.default));`);
247
+ }
248
+ }
249
+ lines.push('');
250
+ lines.push(`export const islandNames = ${JSON.stringify([...islands.keys()])};`);
251
+ lines.push('');
252
+ return lines.join('\n');
253
+ }
254
+ /**
255
+ * Recursively scan a directory for TSX/JSX files containing client:* directives.
256
+ */
257
+ function scanDirectoryForIslands(dir, excludeDirs, projectRoot, islands) {
258
+ let entries;
259
+ try {
260
+ entries = fs.readdirSync(dir, { withFileTypes: true });
261
+ }
262
+ catch {
263
+ return; // Directory doesn't exist or isn't readable
264
+ }
265
+ for (const entry of entries) {
266
+ if (excludeDirs.includes(entry.name))
267
+ continue;
268
+ const fullPath = path.join(dir, entry.name);
269
+ if (entry.isDirectory()) {
270
+ scanDirectoryForIslands(fullPath, excludeDirs, projectRoot, islands);
271
+ continue;
272
+ }
273
+ if (!/\.[jt]sx$/.test(entry.name))
274
+ continue;
275
+ let content;
276
+ try {
277
+ content = fs.readFileSync(fullPath, 'utf-8');
278
+ }
279
+ catch {
280
+ continue;
281
+ }
282
+ if (!content.includes('client:'))
283
+ continue;
284
+ // Find component names used with client:* directives
285
+ const islandNames = new Set();
286
+ ISLAND_USAGE_RE.lastIndex = 0;
287
+ let match;
288
+ while ((match = ISLAND_USAGE_RE.exec(content)) !== null) {
289
+ islandNames.add(match[1]);
290
+ }
291
+ if (islandNames.size === 0)
292
+ continue;
293
+ // Parse the file's imports
294
+ const importMap = parseImports(content);
295
+ for (const name of islandNames) {
296
+ const imp = importMap.get(name);
297
+ if (!imp)
298
+ continue; // Defined in same file
299
+ // Resolve the import to a path relative to the project root
300
+ const importDir = path.dirname(fullPath);
301
+ const resolved = path.resolve(importDir, imp.source);
302
+ const relativePath = './' + path.relative(projectRoot, resolved).replace(/\\/g, '/');
303
+ // Generate a stable island ID from the resolved path + export name
304
+ const islandId = normalizeIslandId(resolved, imp.exportName, projectRoot);
305
+ if (islands.has(islandId))
306
+ continue; // Already discovered
307
+ islands.set(islandId, {
308
+ source: relativePath,
309
+ exportName: imp.exportName,
310
+ });
311
+ }
312
+ }
313
+ }
314
+ // ============================================================================
315
+ // Island ID helpers
316
+ // ============================================================================
317
+ /**
318
+ * Generate a stable island ID from a file path and export name.
319
+ *
320
+ * Format: `relative/path/to/File#ExportName`
321
+ *
322
+ * Examples:
323
+ * - `src/components/Counter#Counter` (named export)
324
+ * - `src/components/Counter#default` (default export)
325
+ *
326
+ * The path is relative to the project root, forward-slashed, without extension.
327
+ */
328
+ export function normalizeIslandId(absolutePath, exportName, projectRoot) {
329
+ const relative = path.relative(projectRoot, absolutePath).replace(/\\/g, '/');
330
+ const withoutExt = relative.replace(/\.[jt]sx?$/, '');
331
+ return `${withoutExt}#${exportName}`;
332
+ }
333
+ /**
334
+ * Inject `__islandId` property assignments into component definition files.
335
+ *
336
+ * For named exports:
337
+ * ```ts
338
+ * const Counter = component(() => { ... });
339
+ * // Appended:
340
+ * Counter.__islandId = 'src/components/Counter#Counter';
341
+ * ```
342
+ *
343
+ * For default exports:
344
+ * ```ts
345
+ * export default component(() => { ... });
346
+ * // Rewritten to:
347
+ * const __island_default__ = component(() => { ... });
348
+ * __island_default__.__islandId = 'src/components/Counter#default';
349
+ * export default __island_default__;
350
+ * ```
351
+ */
352
+ function injectIslandIds(code, fileId, projectRoot) {
353
+ const normalizedPath = path.relative(projectRoot, fileId).replace(/\\/g, '/').replace(/\.[jt]sx?$/, '');
354
+ const assignments = [];
355
+ // 1. Named component definitions: const/let/var X = component(...)
356
+ COMPONENT_DEF_RE.lastIndex = 0;
357
+ let match;
358
+ while ((match = COMPONENT_DEF_RE.exec(code)) !== null) {
359
+ const varName = match[1];
360
+ const islandId = `${normalizedPath}#${varName}`;
361
+ assignments.push(`${varName}.__islandId = '${islandId}';`);
362
+ }
363
+ // 2. Default export: export default component(...)
364
+ let modifiedCode = code;
365
+ if (COMPONENT_DEFAULT_RE.test(code)) {
366
+ modifiedCode = code.replace(COMPONENT_DEFAULT_RE, 'const __island_default__ = $1');
367
+ const islandId = `${normalizedPath}#default`;
368
+ assignments.push(`__island_default__.__islandId = '${islandId}';`);
369
+ assignments.push('export default __island_default__;');
370
+ }
371
+ if (assignments.length === 0)
372
+ return null;
373
+ return modifiedCode + '\n' + assignments.join('\n') + '\n';
374
+ }
375
+ /**
376
+ * Parse all import declarations in a file and build a map of
377
+ * local name → { source, exportName }.
378
+ */
379
+ export function parseImports(code) {
380
+ const map = new Map();
381
+ IMPORT_RE.lastIndex = 0;
382
+ let match;
383
+ while ((match = IMPORT_RE.exec(code)) !== null) {
384
+ const clause = match[1].trim();
385
+ const source = match[2];
386
+ const commaIdx = clause.indexOf(',');
387
+ const hasBraces = clause.includes('{');
388
+ if (!hasBraces) {
389
+ if (/^[A-Z]/.test(clause)) {
390
+ map.set(clause, { source, exportName: 'default', localName: clause });
391
+ }
392
+ }
393
+ else if (commaIdx > 0 && !clause.startsWith('{')) {
394
+ const defaultName = clause.slice(0, commaIdx).trim();
395
+ if (/^[A-Z]/.test(defaultName)) {
396
+ map.set(defaultName, { source, exportName: 'default', localName: defaultName });
397
+ }
398
+ const bracePart = clause.slice(clause.indexOf('{'));
399
+ parseNamedImports(bracePart, source, map);
400
+ }
401
+ else {
402
+ parseNamedImports(clause, source, map);
403
+ }
404
+ }
405
+ return map;
406
+ }
407
+ function parseNamedImports(bracePart, source, map) {
408
+ NAMED_IMPORT_RE.lastIndex = 0;
409
+ let m;
410
+ while ((m = NAMED_IMPORT_RE.exec(bracePart)) !== null) {
411
+ const exportName = m[1];
412
+ const localName = m[2] || m[1];
413
+ if (/^[A-Z]/.test(localName)) {
414
+ map.set(localName, { source, exportName, localName });
415
+ }
416
+ }
417
+ }
418
+ //# sourceMappingURL=islands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"islands.js","sourceRoot":"","sources":["../src/islands.ts"],"names":[],"mappings":"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"}
package/dist/lib.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAgC,MAAM,MAAM,CAAC;AAQnF,MAAM,WAAW,QAAQ;IACrB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IAEpD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAE/B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IAE1C;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAiCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,UAAU,CAgFpE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAgC,MAAM,MAAM,CAAC;AAQnF,MAAM,WAAW,QAAQ;IACrB,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ,EAAE,CAAC;IAEpD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAE/B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;OAGG;IACH,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IAE1C;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAiCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,UAAU,CA+EpE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC"}
package/dist/lib.js CHANGED
@@ -116,7 +116,6 @@ export function defineLibConfig(options) {
116
116
  },
117
117
  // Platform-specific settings
118
118
  ...(platform === 'node' && {
119
- ssr: true,
120
119
  target: 'node18'
121
120
  }),
122
121
  // Minification handled by Vite 8's Oxc minifier
package/dist/lib.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"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"}