@sigx/vite 0.1.6 → 0.1.8
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/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/islands.d.ts +99 -0
- package/dist/islands.d.ts.map +1 -0
- package/dist/islands.js +418 -0
- package/dist/islands.js.map +1 -0
- package/dist/lib.d.ts.map +1 -1
- package/dist/lib.js +0 -1
- package/dist/lib.js.map +1 -1
- package/package.json +9 -3
- package/dist/core/src/Component.d.ts +0 -131
- package/dist/core/src/Component.d.ts.map +0 -1
- package/dist/core/src/Component.js +0 -272
- package/dist/core/src/Component.js.map +0 -1
- package/dist/core/src/Signals.d.ts +0 -34
- package/dist/core/src/Signals.d.ts.map +0 -1
- package/dist/core/src/Signals.js +0 -222
- package/dist/core/src/Signals.js.map +0 -1
- package/dist/core/src/Templating.d.ts +0 -11
- package/dist/core/src/Templating.d.ts.map +0 -1
- package/dist/core/src/Templating.js +0 -81
- package/dist/core/src/Templating.js.map +0 -1
- package/dist/core/src/factory/index.d.ts +0 -20
- package/dist/core/src/factory/index.d.ts.map +0 -1
- package/dist/core/src/factory/index.js +0 -50
- package/dist/core/src/factory/index.js.map +0 -1
- package/dist/core/src/index.d.ts +0 -8
- package/dist/core/src/index.d.ts.map +0 -1
- package/dist/core/src/index.js +0 -9
- package/dist/core/src/index.js.map +0 -1
- package/dist/core/src/jsx-runtime.d.ts +0 -43
- package/dist/core/src/jsx-runtime.d.ts.map +0 -1
- package/dist/core/src/jsx-runtime.js +0 -469
- package/dist/core/src/jsx-runtime.js.map +0 -1
- package/dist/core/src/messaging/index.d.ts +0 -9
- package/dist/core/src/messaging/index.d.ts.map +0 -1
- package/dist/core/src/messaging/index.js +0 -37
- package/dist/core/src/messaging/index.js.map +0 -1
- package/dist/core/src/models/index.d.ts +0 -18
- package/dist/core/src/models/index.d.ts.map +0 -1
- package/dist/core/src/models/index.js +0 -12
- package/dist/core/src/models/index.js.map +0 -1
- package/dist/core/src/sheet.d.ts +0 -51
- package/dist/core/src/sheet.d.ts.map +0 -1
- package/dist/core/src/sheet.js +0 -151
- package/dist/core/src/sheet.js.map +0 -1
- package/dist/core/src/stores/DefineInjectable.d.ts +0 -5
- package/dist/core/src/stores/DefineInjectable.d.ts.map +0 -1
- package/dist/core/src/stores/DefineInjectable.js +0 -56
- package/dist/core/src/stores/DefineInjectable.js.map +0 -1
- package/dist/core/src/stores/Store.d.ts +0 -70
- package/dist/core/src/stores/Store.d.ts.map +0 -1
- package/dist/core/src/stores/Store.js +0 -180
- package/dist/core/src/stores/Store.js.map +0 -1
- package/dist/core/src/styled.d.ts +0 -15
- package/dist/core/src/styled.d.ts.map +0 -1
- package/dist/core/src/styled.js +0 -62
- package/dist/core/src/styled.js.map +0 -1
- package/dist/core/src/utils/index.d.ts +0 -5
- package/dist/core/src/utils/index.d.ts.map +0 -1
- package/dist/core/src/utils/index.js +0 -12
- package/dist/core/src/utils/index.js.map +0 -1
- package/dist/hmr-plugin/src/index.d.ts +0 -2
- package/dist/hmr-plugin/src/index.d.ts.map +0 -1
- package/dist/hmr-plugin/src/index.js +0 -59
- package/dist/hmr-plugin/src/index.js.map +0 -1
- package/dist/vite/src/index.d.ts +0 -2
- package/dist/vite/src/index.d.ts.map +0 -1
- package/dist/vite/src/index.js +0 -59
- 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
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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,
|
|
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":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,IAAI,MAAM,MAAM,CAAC;AAcxB,+EAA+E;AAC/E,4CAA4C;AAC5C,+EAA+E;AAE/E,SAAS,iBAAiB,CAAC,WAAmB;IAC1C,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,WAAW,eAAe,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,MAAM,UAAU,UAAU,CAAC,UAA6B,EAAE;IACtD,MAAM,EACF,GAAG,GAAG,IAAI,GACb,GAAG,OAAO,CAAC;IAEZ,IAAI,MAAsB,CAAC;IAE3B,OAAO;QACH,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QAEd,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE;YAC1B,4DAA4D;YAC5D,gEAAgE;YAChE,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACtB,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;gBAC1C,MAAM,aAAa,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;gBAC5D,MAAM,cAAc,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;gBAC/D,MAAM,aAAa,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;gBAC7D,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,CAAC;gBAErE,MAAM,KAAK,GAA2B,EAAE,CAAC;gBACzC,IAAI,OAAO;oBAAE,KAAK,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;gBACrC,IAAI,aAAa;oBAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,aAAa,CAAC;gBAC7D,IAAI,cAAc;oBAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,cAAc,CAAC;gBACjE,IAAI,aAAa;oBAAE,KAAK,CAAC,mBAAmB,CAAC,GAAG,aAAa,CAAC;gBAC9D,IAAI,iBAAiB;oBAAE,KAAK,CAAC,uBAAuB,CAAC,GAAG,iBAAiB,CAAC;
|
|
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"}
|
package/dist/islands.js
ADDED
|
@@ -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,
|
|
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
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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"}
|