@aihu/compiler 1.3.5 → 1.3.6

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/README.md CHANGED
@@ -18,6 +18,36 @@ import { migrateTemplateGrammar } from '@aihu/compiler/codemods/template-grammar
18
18
 
19
19
  <!-- END_HANDWRITTEN: prose -->
20
20
 
21
+ ### CSS providers
22
+
23
+ CSS integration is opt-in. The default plugin behavior continues to discover
24
+ `@aihu/css-engine` when it is installed. A project that uses another CSS
25
+ engine can provide its own complete stylesheet producer without importing the
26
+ legacy engine:
27
+
28
+ ```ts
29
+ import { aihuCompilerPlugin, type AihuCssProvider } from '@aihu/compiler'
30
+
31
+ const cssProvider: AihuCssProvider = ({ source, id, shadowMode, target, lightScopeId }) => {
32
+ return myCssEngine.compileAihu({ source, id, shadowMode, target, lightScopeId })
33
+ }
34
+
35
+ export default {
36
+ plugins: [aihuCompilerPlugin({ cssProvider })],
37
+ }
38
+ ```
39
+
40
+ The provider receives the source and file id plus the compiler's resolved
41
+ `shadowMode` (`'light'` or `'shadow'`), build `target`, and optional light-DOM
42
+ scope id. A non-empty result is authoritative: it must be the complete
43
+ stylesheet for that SFC, including utility rules, tokens, and authored
44
+ `@style` rules that should ship. The compiler replaces the component's shadow
45
+ stylesheet with it, or sends it through the Vite CSS pipeline for light DOM.
46
+ Return an empty string, `null`, or `undefined` to emit no provider stylesheet.
47
+
48
+ The explicit provider replaces automatic css-engine resolution for that plugin
49
+ instance, so alternate CSS engines remain independent and opt-in.
50
+
21
51
  ## Install
22
52
 
23
53
  <!-- BEGIN_AUTOGEN: install -->
@@ -29,7 +59,7 @@ npm install @aihu/compiler
29
59
  bun add @aihu/compiler
30
60
  ```
31
61
 
32
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
62
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
33
63
 
34
64
  <!-- END_AUTOGEN: install -->
35
65
 
@@ -40,12 +70,12 @@ bun add @aihu/compiler
40
70
 
41
71
  | | |
42
72
  |---|---|
43
- | **Version** | `1.3.5` |
73
+ | **Version** | `1.3.6` |
44
74
  | **Tier** | D — Compiler — Single-File Component (.aihu) → Web Component |
45
75
  | **Published files** | 4 entries |
46
76
  | **License** | MIT |
47
77
 
48
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
78
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
49
79
 
50
80
  <!-- END_AUTOGEN: stats -->
51
81
 
@@ -61,7 +91,7 @@ bun add @aihu/compiler
61
91
  | `./codemods/state-wrapper` | `./dist/codemods/state-wrapper.js` | `—` |
62
92
  | `./codemods/template-grammar-v2` | `./dist/codemods/template-grammar-v2.js` | `—` |
63
93
 
64
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
94
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
65
95
 
66
96
  <!-- END_AUTOGEN: exports -->
67
97
 
@@ -88,7 +118,7 @@ bun add @aihu/compiler
88
118
  - `@aihu/compiler-native-linux-arm64-gnu` — `1.3.4`
89
119
  - `@aihu/compiler-native-win32-x64-msvc` — `1.3.4`
90
120
 
91
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
121
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
92
122
 
93
123
  <!-- END_AUTOGEN: deps -->
94
124
 
@@ -102,7 +132,7 @@ bun add @aihu/compiler
102
132
  - [Macro Vocabulary spec](../../docs/superpowers/specs/2026-05-02-spec-macro-vocabulary.md)
103
133
  - [Aihu framework root](../../README.md)
104
134
 
105
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
135
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
106
136
 
107
137
  <!-- END_AUTOGEN: see-also -->
108
138
 
@@ -113,6 +143,6 @@ bun add @aihu/compiler
113
143
 
114
144
  MIT — see [LICENSE](../../LICENSE).
115
145
 
116
- <sub><i>Auto-generated against `@aihu/compiler@1.3.5`.</i></sub>
146
+ <sub><i>Auto-generated against `@aihu/compiler@1.3.6`.</i></sub>
117
147
 
118
148
  <!-- END_AUTOGEN: license -->
package/dist/index.d.ts CHANGED
@@ -178,6 +178,21 @@ interface VitePlugin {
178
178
  * Options for `aihuCompilerPlugin()` (Plan 3.3 — Islands).
179
179
  */
180
180
  interface AihuCompilerPluginOptions {
181
+ /**
182
+ * Optional CSS provider for the compiled SFC.
183
+ *
184
+ * When supplied, the provider is the sole source of generated component
185
+ * CSS. Its non-empty result must be the COMPLETE stylesheet for the SFC:
186
+ * include utility rules, design tokens, and any authored `@style` rules
187
+ * that should ship with the component. The compiler replaces its existing
188
+ * stylesheet body with this result (or routes it through the document CSS
189
+ * pipeline for `shadowMode: 'light'`). Returning an empty string, `null`,
190
+ * or `undefined` means that this SFC has no provider stylesheet.
191
+ *
192
+ * Without this option, the compiler preserves the legacy automatic,
193
+ * optional `@aihu/css-engine` integration.
194
+ */
195
+ cssProvider?: AihuCssProvider;
181
196
  /**
182
197
  * When `true` (default), components the compiler classified as `'static'`
183
198
  * (read from the `// @aihu:island` marker via `_parseIslandMarker()`) are
@@ -232,6 +247,30 @@ interface AihuCompilerPluginOptions {
232
247
  */
233
248
  layoutsDir?: string;
234
249
  }
250
+ /**
251
+ * Context passed to an explicit CSS provider for each compiled SFC.
252
+ *
253
+ * `shadowMode` and `target` are resolved compiler values, including their
254
+ * runtime defaults. A provider can therefore choose a light-DOM stylesheet
255
+ * strategy or emit target-specific CSS without parsing compiler markers.
256
+ */
257
+ interface AihuCssProviderContext {
258
+ source: string;
259
+ id: string;
260
+ shadowMode: 'light' | 'shadow';
261
+ target: 'client' | 'server' | 'universal';
262
+ lightScopeId?: string;
263
+ }
264
+ /**
265
+ * Explicit CSS provider contract for `aihuCompilerPlugin`.
266
+ *
267
+ * A non-empty return value is authoritative and must be a complete stylesheet
268
+ * for the SFC, including any authored styles the provider wants to preserve.
269
+ * It may be synchronous or asynchronous. Empty/absent results skip CSS
270
+ * folding for that SFC. The provider is an opt-in replacement for the
271
+ * automatic `@aihu/css-engine` fallback, not an additional stylesheet layer.
272
+ */
273
+ type AihuCssProvider = (context: AihuCssProviderContext) => string | null | undefined | Promise<string | null | undefined>;
235
274
  /**
236
275
  * Inject `shadowMode: '...'` (and, for light mode, `lightScopeId: '...'` in
237
276
  * the SAME options object) into the third argument of the emitted
@@ -615,7 +654,7 @@ declare function transform(source: string, id: string, options?: {
615
654
  /**
616
655
  * Fold css-engine utility CSS into the SERVER target's `__aihu_css__` export.
617
656
  *
618
- * The shadow-DOM sibling of `_foldCssEngineStyles`. That one rewrites the
657
+ * The shadow-DOM sibling of `_foldCssStyles`. That one rewrites the
619
658
  * client's `__style__.replaceSync(...)`; the server target has no `__style__`
620
659
  * (`CSSStyleSheet` is a DOM dependency and the Rust codegen elides it), it has
621
660
  * `export const __aihu_css__` — the string `__aihu_schild` inlines as `<style>`
@@ -631,15 +670,15 @@ declare function transform(source: string, id: string, options?: {
631
670
  * never wired to it.)
632
671
  *
633
672
  * REPLACES rather than appends, for the same reason shape 1 above does: the
634
- * css-engine output already contains the authored `@style` rules, so appending
673
+ * Provider output already contains the authored `@style` rules, so appending
635
674
  * would duplicate them.
636
675
  *
637
676
  * Light-DOM components never reach this — their utilities go through the global
638
- * cascade via `_foldCssEngineStylesGlobal`, and their prerendered markup is
677
+ * cascade via `_foldCssStylesGlobal`, and their prerendered markup is
639
678
  * covered by the app stylesheet's `@scope([data-a=…])` blocks.
640
679
  */
641
680
  declare function _foldSsrCssExport(compiledCode: string, css: string): string;
642
- declare function _foldCssEngineStyles(compiledCode: string, css: string): string;
681
+ declare function _foldCssStyles(compiledCode: string, css: string): string;
643
682
  /**
644
683
  * Virtual-module prefix used by the `shadowMode === 'light'` branch to route
645
684
  * per-SFC utility CSS through Vite's built-in CSS pipeline. The plugin
@@ -698,10 +737,14 @@ declare function _lightScopeId(id: string): string;
698
737
  *
699
738
  * @internal
700
739
  */
701
- declare function _foldCssEngineStylesGlobal(compiledCode: string, css: string, id: string): {
740
+ declare function _foldCssStylesGlobal(compiledCode: string, css: string, id: string): {
702
741
  code: string;
703
742
  virtualId: string;
704
743
  } | null;
744
+ /** @deprecated Use `_foldCssStyles`; retained for internal consumers during the seam rollout. */
745
+ declare const _foldCssEngineStyles: typeof _foldCssStyles;
746
+ /** @deprecated Use `_foldCssStylesGlobal`; retained for internal consumers during the seam rollout. */
747
+ declare const _foldCssEngineStylesGlobal: typeof _foldCssStylesGlobal;
705
748
  /** Top-level AST export — one per .aihu SFC. */
706
749
  interface SfcAst {
707
750
  /** Resolved custom-element tag name (meta.name → route.name → file stem). */
@@ -898,5 +941,5 @@ declare function compileRouteMeta(source: string, id?: string): RouteMeta | null
898
941
  declare function _injectAutoWiring(code: string): string;
899
942
  declare function aihuCompilerPlugin(options?: AihuCompilerPluginOptions): VitePlugin;
900
943
  //#endregion
901
- export { AihuCompilerPluginOptions, type CompileEnvelope, type CompileEnvelopeOptions, RouteMeta, SfcAst, SfcAttr, SfcMacroValue, SfcMeta, SfcNode, SfcStyleBlock, StripTypesResult, VIRTUAL_UTILITY_PREFIX, ViteStripApi, _MEMO_MAX_ENTRIES, _buildDeferredHydration, _buildStaticIsland, _clearTransformMemo, _compileViaBackend, _deriveChildTags, _errMessage, _foldCssEngineStyles, _foldCssEngineStylesGlobal, _foldSsrCssExport, _formatExtractCensus, _getCompilerNativeStateKind, _globalizeAuthoredStyle, _hashIdForUtilityCss, _injectAutoWiring, _injectLightScopeId, _injectShadowMode, _isLayoutFile, _isViteMissing, _layoutTag, _lightScopeId, _parseComponentTagsMarker, _parseExtractMarker, _parseIslandMarker, _passivizeOutlet, _resetCompileBackend, _resetCompilerNative, _resolveCompileBackend, _stripFailure, _stripTypes, _transformMemoStats, aihuCompilerPlugin, compileRouteMeta, compileSidecar, compileToAst, kebabComponentTag, loadCompilerNative, resolveCompilerBinary, transform };
944
+ export { AihuCompilerPluginOptions, AihuCssProvider, AihuCssProviderContext, type CompileEnvelope, type CompileEnvelopeOptions, RouteMeta, SfcAst, SfcAttr, SfcMacroValue, SfcMeta, SfcNode, SfcStyleBlock, StripTypesResult, VIRTUAL_UTILITY_PREFIX, ViteStripApi, _MEMO_MAX_ENTRIES, _buildDeferredHydration, _buildStaticIsland, _clearTransformMemo, _compileViaBackend, _deriveChildTags, _errMessage, _foldCssEngineStyles, _foldCssEngineStylesGlobal, _foldCssStyles, _foldCssStylesGlobal, _foldSsrCssExport, _formatExtractCensus, _getCompilerNativeStateKind, _globalizeAuthoredStyle, _hashIdForUtilityCss, _injectAutoWiring, _injectLightScopeId, _injectShadowMode, _isLayoutFile, _isViteMissing, _layoutTag, _lightScopeId, _parseComponentTagsMarker, _parseExtractMarker, _parseIslandMarker, _passivizeOutlet, _resetCompileBackend, _resetCompilerNative, _resolveCompileBackend, _stripFailure, _stripTypes, _transformMemoStats, aihuCompilerPlugin, compileRouteMeta, compileSidecar, compileToAst, kebabComponentTag, loadCompilerNative, resolveCompilerBinary, transform };
902
945
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../js/native.ts","../js/envelope.ts","../js/transform-memo.ts","../js/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../js/native.ts","../js/envelope.ts","../js/transform-memo.ts","../js/index.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import{resolveCompilerBinary as e}from"./resolve-binary.js";import{execFileSync as t}from"node:child_process";import{createRequire as n}from"node:module";import{basename as r,dirname as i,join as a,resolve as o}from"node:path";import{fileURLToPath as s,pathToFileURL as c}from"node:url";import{existsSync as l,readFileSync as u,statSync as d}from"node:fs";import{createHash as f}from"node:crypto";const p=i(s(import.meta.url));function m(){if(typeof process>`u`||!process.platform||!process.arch)return null;switch(`${process.platform}-${process.arch}`){case`darwin-arm64`:return{platformId:`darwin-arm64`,packageName:`@aihu/compiler-native-darwin-arm64`,nodeFile:`aihu-compiler-native.darwin-arm64.node`};case`darwin-x64`:return{platformId:`darwin-x64`,packageName:`@aihu/compiler-native-darwin-x64`,nodeFile:`aihu-compiler-native.darwin-x64.node`};case`linux-x64`:return{platformId:`linux-x64-gnu`,packageName:`@aihu/compiler-native-linux-x64-gnu`,nodeFile:`aihu-compiler-native.linux-x64-gnu.node`};case`linux-arm64`:return{platformId:`linux-arm64-gnu`,packageName:`@aihu/compiler-native-linux-arm64-gnu`,nodeFile:`aihu-compiler-native.linux-arm64-gnu.node`};case`win32-x64`:return{platformId:`win32-x64-msvc`,packageName:`@aihu/compiler-native-win32-x64-msvc`,nodeFile:`aihu-compiler-native.win32-x64-msvc.node`};default:return null}}let h=null,g=!1;function _(e){try{let t=a(i(e),`package.json`);if(!l(t))return null;let n=JSON.parse(u(t,`utf8`));return typeof n.name!=`string`||!n.name.startsWith(`@aihu/compiler-native-`)?null:typeof n.version==`string`?n.version:null}catch{return null}}function v(){return m()}function y(e){return typeof e==`object`&&!!e&&typeof e.compileEnvelope==`function`}function b(){if(h!==null)return h;if(typeof process<`u`&&process.env?.AIHU_COMPILER_NATIVE===`0`)return h={kind:`disabled`},h;let e=n(import.meta.url),t=process.env?.AIHU_COMPILER_NATIVE_ADDON;if(t){let n;try{n=e(t)}catch(e){throw Error(`[@aihu/compiler] AIHU_COMPILER_NATIVE_ADDON is set to '${t}', which failed to load: ${e.message}`)}if(!y(n))throw Error(`[@aihu/compiler] AIHU_COMPILER_NATIVE_ADDON module at '${t}' does not export compileEnvelope()`);return h={kind:`loaded`,addon:n,addonPath:t,origin:`override`,packageVersion:_(t)},h}let r=m();if(r===null)return h={kind:`unavailable`},h;let i=null;try{i=e.resolve(r.packageName)}catch{}let a=[o(p,`../src-native/aihu-compiler-native.node`),o(p,`../src-native/target/release/aihu-compiler-native.node`)],s=i?[i]:a.filter(e=>l(e)),c=i?`package`:`dev-build`;for(let t of s)try{let n=e(t);if(y(n))return h={kind:`loaded`,addon:n,addonPath:t,origin:c,packageVersion:_(t)},h;throw Error(`module at ${t} does not export compileEnvelope()`)}catch(e){return g||(g=!0,console.warn(`[@aihu/compiler] native addon found but failed to load; falling back to the aihu-compile spawn path (identical output, slower).
2
- Candidate: ${t}\n Error: ${e.message}\n Reinstall @aihu/compiler (or rebuild: cargo build --release --manifest-path packages/compiler/src-native/Cargo.toml), or set AIHU_COMPILER_NATIVE=0 to silence this warning.`)),h={kind:`unavailable`,error:e},h}return h={kind:`unavailable`},h}function x(){return b().kind}function S(){h=null,g=!1}const C=67108864;function w(e=0){let t=Math.ceil(e/1024)*2,n=process.env.AIHU_COMPILE_TIMEOUT_MS;if(n!==void 0&&n!==``){let e=Number(n);if(Number.isFinite(e)&&e>0)return Math.max(e,t)}return Math.max(12e4,t)}function T(e=0){return{timeout:w(e),maxBuffer:C,killSignal:`SIGKILL`}}function E(e,t,n,r,i){let a=e,o=` binary: ${t}\n args: ${n.length>0?n.join(` `):`(none)`}\n stdin: ${r} bytes\n elapsed: ${i} ms`;if(a.code===`ETIMEDOUT`){let e=w(r);return Error(`[@aihu/compiler] aihu-compile TIMED OUT after ${e} ms and the child was killed.\n\n${o}\n\n This is the known spawn stall, not a slow compile: the compiler normally\n finishes in single-digit milliseconds. The child parks in read() waiting for\n an EOF on stdin that the parent's spawnSync loop never delivers, so without\n this timeout the build would hang at 0% CPU indefinitely (two such children\n were once found still running after 2.5 days).\n\n What to do next:\n - Re-run the build. The stall is intermittent and load-dependent; a retry\n normally succeeds.\n - If it reproduces every time, check the binary directly: ${t} --help\n and rebuild it: cargo build --release -p aihu-compiler\n - If a payload genuinely needs longer than ${e} ms, raise the bound with\n AIHU_COMPILE_TIMEOUT_MS=<milliseconds>. Do not remove it.`)}return a.code===`ENOBUFS`?Error(`[@aihu/compiler] aihu-compile produced more than the ${C} byte\n stdout/stderr limit and the child was killed.\n\n${o}\n\n An emit this large almost certainly means the input is wrong rather than a\n real component. Check what is being passed in before raising the cap.`):null}const ee=i(s(import.meta.url));let D=null;function te(){let e=v();if(e===null)return null;try{let t=JSON.parse(u(o(ee,`../package.json`),`utf8`)).optionalDependencies?.[e.packageName];return typeof t==`string`?t:null}catch{return null}}function ne(e){let t=te();if(t===null)return{ok:!0};if(typeof e.addon.compilerVersion!=`function`)return{ok:!1,reason:`missing-method`,actual:`<no compilerVersion()>`,expected:t};let n;try{n=String(e.addon.compilerVersion())}catch(e){return{ok:!1,reason:`missing-method`,actual:`<compilerVersion() threw: ${e.message}>`,expected:t}}return e.packageVersion===null||e.packageVersion===t?{ok:!0}:{ok:!1,reason:`version-mismatch`,actual:`${e.packageVersion} (reports: ${n})`,expected:t}}function re(e,t){return`[@aihu/compiler] native addon version mismatch — ${t.reason===`missing-method`?`the addon does not implement compilerVersion(), so it predates this handshake`:`the installed addon is not the build this source requires`}.\n Required (packages/compiler/package.json pin): ${t.expected}\n Loaded addon: ${t.actual}\n Addon path: ${e.addonPath}\n Cause: the addon is a PUBLISHED artifact, so a branch that changes Rust\n is stale by construction — the pinned version is not on npm yet and\n \`bun install\` cannot fix it. Using it would silently compile with\n pre-change codegen.`}function O(){if(D!==null)return D;let e=typeof process<`u`?process.env:void 0;if(e?.AIHU_COMPILER_NATIVE===`0`||e?.AIHU_COMPILE_BIN)return D={kind:`spawn`},D;let t=b();if(t.kind!==`loaded`)return D={kind:`spawn`},D;let n=ne(t);if(!n.ok){if(t.origin===`override`)throw Error(`${re(t,n)}\n AIHU_COMPILER_NATIVE_ADDON pinned this addon explicitly, so this fails\n rather than falling back. Unset it (the CLI spawn path is byte-identical),\n set AIHU_COMPILER_NATIVE=0, or rebuild:\n bun packages/compiler/scripts/build-native.ts`);return console.warn(`${re(t,n)}\n Falling back to the aihu-compile spawn path (built from source,\n byte-identical output, slower). Set AIHU_COMPILER_NATIVE=0 to silence\n this, or build the addon from source:\n bun packages/compiler/scripts/build-native.ts`),D={kind:`spawn`},D}return D={kind:`native`,compileEnvelope:t.addon.compileEnvelope.bind(t.addon),stampPath:t.addonPath},D}function ie(){D=null}function k(){let e=O();return e.kind===`native`?e.stampPath:A()}function A(){return process.env.AIHU_COMPILE_BIN??e()}function ae(e){let t=e.trim();if(t.startsWith(`{`))try{let e=JSON.parse(t);if(typeof e==`object`&&e&&e.envelope===1)return{kind:`envelope`,envelope:e}}catch{}return{kind:`legacy`,output:e}}function j(e,n,r){let i=O(),a=JSON.stringify(r);if(i.kind===`native`)return{kind:`envelope`,envelope:JSON.parse(i.compileEnvelope(e,a))};let o=A(),s=[...n,`--envelope`,a],c=Date.now(),l;try{l=t(o,s,{input:e,encoding:`utf8`,...T(e.length)})}catch(t){throw E(t,o,s,e.length,Date.now()-c)??t}return ae(l)}const oe=1024,M=new Map;let N=0,P=0,F=0;function se(e){try{let t=d(e);return`${e}:${t.mtimeMs}:${t.size}`}catch{return e}}function I(e,t,n,r,i){return f(`sha256`).update(e).update(`\0`).update(n).update(`\0`).update(r).update(`\0`).update(se(i)).update(`\0`).update(t).digest(`hex`)}function L(e,t,n,r,i,a){let o=I(e,t,n,r,i),s=M.get(o);if(s!==void 0)return N++,s;let c=a();if(P++,M.size>=1024){let e=M.keys().next().value;e!==void 0&&M.delete(e)}return M.set(o,c),c}function R(e,t,n,r,i,a){let o=I(e,t,n,r,i);if(!M.has(o)){if(M.size>=1024){let e=M.keys().next().value;e!==void 0&&M.delete(e)}M.set(o,a),F++}}function ce(){M.clear(),N=0,P=0,F=0}function le(){return{size:M.size,hits:N,misses:P,seeds:F}}function z(){return process.env.AIHU_COMPILE_BIN??e()}function ue(e,t){let n=[{kind:`code`,brace:0}],r=0;for(let i=t;i<e.length;i++){let t=n[n.length-1];if(t===void 0)return-1;let a=e[i];if(t.kind===`tpl`){a===`\\`?i++:a==="`"?n.pop():a===`$`&&e[i+1]===`{`&&(n.push({kind:`code`,brace:0}),i++);continue}if(a===`'`||a===`"`)for(i++;i<e.length&&e[i]!==a;)e[i]===`\\`&&i++,i++;else if(a==="`")n.push({kind:`tpl`});else if(a===`/`&&e[i+1]===`/`)for(;i<e.length&&e[i]!==`
3
- `;)i++;else if(a===`/`&&e[i+1]===`*`){for(i+=2;i<e.length&&(e[i]!==`*`||e[i+1]!==`/`);)i++;i++}else if(a===`(`)r++;else if(a===`)`){if(r--,r===0)return i}else a===`{`?t.brace++:a===`}`&&(t.brace===0&&n.length>1?n.pop():t.brace--)}return-1}function B(e,t,n){let r=/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/.exec(e);if(r==null)return e;let i=ue(e,r.index+r[0].length-1);if(i===-1)return e;let a=`shadowMode: '${t}'${n?`, lightScopeId: '${n}'`:``}`,o=e.slice(i+1);if(/^\s*\)/.test(o))return`${e.slice(0,i+1)}, { ${a} }${o}`;let s=/^\s*,\s*\{/.exec(o);if(s&&!/^\s*,\s*\{[^}]*\bshadowMode\b/.test(o)){let t=i+1+s[0].length;return`${e.slice(0,t)} ${a},${e.slice(t)}`}return e}function V(e,t){return e.replace(`const __AIHU_LIGHT_SCOPE_ID__: string | undefined = undefined`,`const __AIHU_LIGHT_SCOPE_ID__: string | undefined = '${t}'`)}function H(e){return e.replace(/\(ctx\.host as ShadowRoot\)\.adoptedStyleSheets\s*=\s*\[__style__\];?/,`if (!document.adoptedStyleSheets.includes(__style__)) document.adoptedStyleSheets = [...document.adoptedStyleSheets, __style__];`)}function U(e){return/^\/\/ @aihu:island (static|interactive)$/m.exec(e)?.[1]===`static`?`static`:`interactive`}function W(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;let t=e?.message;return typeof t==`string`?t:String(e)}function G(e){let t=W(e),n=e?.code;return n===`ERR_MODULE_NOT_FOUND`||n===`MODULE_NOT_FOUND`||/cannot find (module|package)/i.test(t)?/['"`]vite['"`]/.test(t):!1}function K(e,t,n,r,i){return`[@aihu/compiler] TypeScript strip failed for ${t} — vite ${n} \`${e}\` (${r?`server`:`client`} environment) threw. Returning the un-stripped TypeScript would corrupt the build silently and resurface as an unrelated bundler PARSE_ERROR on this file, so it fails here instead. Underlying error: ${W(i)}`}async function q(e,t,n,r){let i=e.version??`unknown`;if(typeof e.transformWithOxc==`function`)try{return{code:(await e.transformWithOxc(t,`component.ts`,{lang:`ts`,sourcemap:!1})).code,map:null}}catch(e){throw Error(K(`transformWithOxc`,n,i,r,e),{cause:e})}if(typeof e.transformWithEsbuild==`function`)try{return{code:(await e.transformWithEsbuild(t,`component.ts`,{target:`esnext`,sourcemap:!1})).code,map:null}}catch(e){throw Error(K(`transformWithEsbuild`,n,i,r,e),{cause:e})}return{code:t,moduleType:`ts`,map:null}}function J(e){let t=/^\/\/ @aihu:component-tags (.+)$/m.exec(e);return t===null?[]:t[1].split(`,`)}function Y(e){return[...new Set(Array.from(e.matchAll(/__aihu_schild\('([^']+)'/g),e=>e[1]))].sort()}function de(e){let t=/^\/\/ @aihu:extract read=(\S+) call=(\S+)$/m.exec(e);return t?{read:t[1],call:t[2]}:null}function fe(e){if(e.size===0)return[];let t=new Map,n=new Map;for(let{read:r,call:i}of e.values())t.set(r,(t.get(r)??0)+1),n.set(i,(n.get(i)??0)+1);let r=[`[aihu] extract census — ${e.size} surface(s)`];for(let[e,n]of[...t.entries()].sort())r.push(` read=${e}: ${n}`);for(let[e,t]of[...n.entries()].sort())r.push(` call=${e}: ${t}`);return r}function pe(e){let t=/defineElement\(\s*['"]([^'"]+)['"]/m.exec(e);return t?t[1]??null:null}function me(e){let t=/defineComponent\(\s*\{/.exec(e);if(t===null)return!1;let n=/\bbase\s*:/g;return n.lastIndex=t.index+t[0].length,n.test(e)}function he(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function ge(e,t){let n=he(t.replace(/\\/g,`/`).replace(/^\.?\//,``));return n?e.replace(/\\/g,`/`).includes(`/${n}/`):!1}function _e(e){return`aihu-layout-${e.toLowerCase()}`}function ve(e){let t=``;for(let n=0;n<e.length;n++){let r=e.charAt(n);if(n>0&&r>=`A`&&r<=`Z`){let r=e.charAt(n-1),i=e.charAt(n+1);(r>=`a`&&r<=`z`||r>=`0`&&r<=`9`||r>=`A`&&r<=`Z`&&i>=`a`&&i<=`z`)&&(t+=`-`)}t+=r.toLowerCase()}return t}function ye(e){let t=e.indexOf(`const createOutletBoundary = () => {`);if(t===-1)return e;let n=/return host;[^\S\n]*\n\};/g;n.lastIndex=t+36;let r=n.exec(e);return r===null?e:e.slice(0,t)+`const createOutletBoundary = () => branch('div', { 'data-aihu-outlet': '' }, []);`+e.slice(r.index+r[0].length)}function be(e,t){let n=e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_hmrReplace`)||n.push(`_hmrReplace`),`import { ${n.join(`, `)} } from '@aihu/runtime'`}).replace(/\bdefineComponent\(/,`defineComponent(__aihu_setup__ = `),r=`
2
+ Candidate: ${t}\n Error: ${e.message}\n Reinstall @aihu/compiler (or rebuild: cargo build --release --manifest-path packages/compiler/src-native/Cargo.toml), or set AIHU_COMPILER_NATIVE=0 to silence this warning.`)),h={kind:`unavailable`,error:e},h}return h={kind:`unavailable`},h}function x(){return b().kind}function S(){h=null,g=!1}const C=67108864;function w(e=0){let t=Math.ceil(e/1024)*2,n=process.env.AIHU_COMPILE_TIMEOUT_MS;if(n!==void 0&&n!==``){let e=Number(n);if(Number.isFinite(e)&&e>0)return Math.max(e,t)}return Math.max(12e4,t)}function T(e=0){return{timeout:w(e),maxBuffer:C,killSignal:`SIGKILL`}}function E(e,t,n,r,i){let a=e,o=` binary: ${t}\n args: ${n.length>0?n.join(` `):`(none)`}\n stdin: ${r} bytes\n elapsed: ${i} ms`;if(a.code===`ETIMEDOUT`){let e=w(r);return Error(`[@aihu/compiler] aihu-compile TIMED OUT after ${e} ms and the child was killed.\n\n${o}\n\n This is the known spawn stall, not a slow compile: the compiler normally\n finishes in single-digit milliseconds. The child parks in read() waiting for\n an EOF on stdin that the parent's spawnSync loop never delivers, so without\n this timeout the build would hang at 0% CPU indefinitely (two such children\n were once found still running after 2.5 days).\n\n What to do next:\n - Re-run the build. The stall is intermittent and load-dependent; a retry\n normally succeeds.\n - If it reproduces every time, check the binary directly: ${t} --help\n and rebuild it: cargo build --release -p aihu-compiler\n - If a payload genuinely needs longer than ${e} ms, raise the bound with\n AIHU_COMPILE_TIMEOUT_MS=<milliseconds>. Do not remove it.`)}return a.code===`ENOBUFS`?Error(`[@aihu/compiler] aihu-compile produced more than the ${C} byte\n stdout/stderr limit and the child was killed.\n\n${o}\n\n An emit this large almost certainly means the input is wrong rather than a\n real component. Check what is being passed in before raising the cap.`):null}const ee=i(s(import.meta.url));let D=null;function te(){let e=v();if(e===null)return null;try{let t=JSON.parse(u(o(ee,`../package.json`),`utf8`)).optionalDependencies?.[e.packageName];return typeof t==`string`?t:null}catch{return null}}function ne(e){let t=te();if(t===null)return{ok:!0};if(typeof e.addon.compilerVersion!=`function`)return{ok:!1,reason:`missing-method`,actual:`<no compilerVersion()>`,expected:t};let n;try{n=String(e.addon.compilerVersion())}catch(e){return{ok:!1,reason:`missing-method`,actual:`<compilerVersion() threw: ${e.message}>`,expected:t}}return e.packageVersion===null||e.packageVersion===t?{ok:!0}:{ok:!1,reason:`version-mismatch`,actual:`${e.packageVersion} (reports: ${n})`,expected:t}}function re(e,t){return`[@aihu/compiler] native addon version mismatch — ${t.reason===`missing-method`?`the addon does not implement compilerVersion(), so it predates this handshake`:`the installed addon is not the build this source requires`}.\n Required (packages/compiler/package.json pin): ${t.expected}\n Loaded addon: ${t.actual}\n Addon path: ${e.addonPath}\n Cause: the addon is a PUBLISHED artifact, so a branch that changes Rust\n is stale by construction — the pinned version is not on npm yet and\n \`bun install\` cannot fix it. Using it would silently compile with\n pre-change codegen.`}function O(){if(D!==null)return D;let e=typeof process<`u`?process.env:void 0;if(e?.AIHU_COMPILER_NATIVE===`0`||e?.AIHU_COMPILE_BIN)return D={kind:`spawn`},D;let t=b();if(t.kind!==`loaded`)return D={kind:`spawn`},D;let n=ne(t);if(!n.ok){if(t.origin===`override`)throw Error(`${re(t,n)}\n AIHU_COMPILER_NATIVE_ADDON pinned this addon explicitly, so this fails\n rather than falling back. Unset it (the CLI spawn path is byte-identical),\n set AIHU_COMPILER_NATIVE=0, or rebuild:\n bun packages/compiler/scripts/build-native.ts`);return console.warn(`${re(t,n)}\n Falling back to the aihu-compile spawn path (built from source,\n byte-identical output, slower). Set AIHU_COMPILER_NATIVE=0 to silence\n this, or build the addon from source:\n bun packages/compiler/scripts/build-native.ts`),D={kind:`spawn`},D}return D={kind:`native`,compileEnvelope:t.addon.compileEnvelope.bind(t.addon),stampPath:t.addonPath},D}function ie(){D=null}function k(){let e=O();return e.kind===`native`?e.stampPath:A()}function A(){return process.env.AIHU_COMPILE_BIN??e()}function ae(e){let t=e.trim();if(t.startsWith(`{`))try{let e=JSON.parse(t);if(typeof e==`object`&&e&&e.envelope===1)return{kind:`envelope`,envelope:e}}catch{}return{kind:`legacy`,output:e}}function j(e,n,r){let i=O(),a=JSON.stringify(r);if(i.kind===`native`)return{kind:`envelope`,envelope:JSON.parse(i.compileEnvelope(e,a))};let o=A(),s=[...n,`--envelope`,a],c=Date.now(),l;try{l=t(o,s,{input:e,encoding:`utf8`,...T(e.length)})}catch(t){throw E(t,o,s,e.length,Date.now()-c)??t}return ae(l)}const oe=1024,M=new Map;let N=0,P=0,F=0;function se(e){try{let t=d(e);return`${e}:${t.mtimeMs}:${t.size}`}catch{return e}}function ce(e,t,n,r,i){return f(`sha256`).update(e).update(`\0`).update(n).update(`\0`).update(r).update(`\0`).update(se(i)).update(`\0`).update(t).digest(`hex`)}function I(e,t,n,r,i,a){let o=ce(e,t,n,r,i),s=M.get(o);if(s!==void 0)return N++,s;let c=a();if(P++,M.size>=1024){let e=M.keys().next().value;e!==void 0&&M.delete(e)}return M.set(o,c),c}function L(e,t,n,r,i,a){let o=ce(e,t,n,r,i);if(!M.has(o)){if(M.size>=1024){let e=M.keys().next().value;e!==void 0&&M.delete(e)}M.set(o,a),F++}}function le(){M.clear(),N=0,P=0,F=0}function ue(){return{size:M.size,hits:N,misses:P,seeds:F}}function R(){return process.env.AIHU_COMPILE_BIN??e()}function de(e,t){let n=[{kind:`code`,brace:0}],r=0;for(let i=t;i<e.length;i++){let t=n[n.length-1];if(t===void 0)return-1;let a=e[i];if(t.kind===`tpl`){a===`\\`?i++:a==="`"?n.pop():a===`$`&&e[i+1]===`{`&&(n.push({kind:`code`,brace:0}),i++);continue}if(a===`'`||a===`"`)for(i++;i<e.length&&e[i]!==a;)e[i]===`\\`&&i++,i++;else if(a==="`")n.push({kind:`tpl`});else if(a===`/`&&e[i+1]===`/`)for(;i<e.length&&e[i]!==`
3
+ `;)i++;else if(a===`/`&&e[i+1]===`*`){for(i+=2;i<e.length&&(e[i]!==`*`||e[i+1]!==`/`);)i++;i++}else if(a===`(`)r++;else if(a===`)`){if(r--,r===0)return i}else a===`{`?t.brace++:a===`}`&&(t.brace===0&&n.length>1?n.pop():t.brace--)}return-1}function z(e,t,n){let r=/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/.exec(e);if(r==null)return e;let i=de(e,r.index+r[0].length-1);if(i===-1)return e;let a=`shadowMode: '${t}'${n?`, lightScopeId: '${n}'`:``}`,o=e.slice(i+1);if(/^\s*\)/.test(o))return`${e.slice(0,i+1)}, { ${a} }${o}`;let s=/^\s*,\s*\{/.exec(o);if(s&&!/^\s*,\s*\{[^}]*\bshadowMode\b/.test(o)){let t=i+1+s[0].length;return`${e.slice(0,t)} ${a},${e.slice(t)}`}return e}function B(e,t){return e.replace(`const __AIHU_LIGHT_SCOPE_ID__: string | undefined = undefined`,`const __AIHU_LIGHT_SCOPE_ID__: string | undefined = '${t}'`)}function V(e){return e.replace(/\(ctx\.host as ShadowRoot\)\.adoptedStyleSheets\s*=\s*\[__style__\];?/,`if (!document.adoptedStyleSheets.includes(__style__)) document.adoptedStyleSheets = [...document.adoptedStyleSheets, __style__];`)}function H(e){return/^\/\/ @aihu:island (static|interactive)$/m.exec(e)?.[1]===`static`?`static`:`interactive`}function U(e){if(e instanceof Error)return e.message;if(typeof e==`string`)return e;let t=e?.message;return typeof t==`string`?t:String(e)}function W(e){let t=U(e),n=e?.code;return n===`ERR_MODULE_NOT_FOUND`||n===`MODULE_NOT_FOUND`||/cannot find (module|package)/i.test(t)?/['"`]vite['"`]/.test(t):!1}function G(e,t,n,r,i){return`[@aihu/compiler] TypeScript strip failed for ${t} — vite ${n} \`${e}\` (${r?`server`:`client`} environment) threw. Returning the un-stripped TypeScript would corrupt the build silently and resurface as an unrelated bundler PARSE_ERROR on this file, so it fails here instead. Underlying error: ${U(i)}`}async function K(e,t,n,r){let i=e.version??`unknown`;if(typeof e.transformWithOxc==`function`)try{return{code:(await e.transformWithOxc(t,`component.ts`,{lang:`ts`,sourcemap:!1})).code,map:null}}catch(e){throw Error(G(`transformWithOxc`,n,i,r,e),{cause:e})}if(typeof e.transformWithEsbuild==`function`)try{return{code:(await e.transformWithEsbuild(t,`component.ts`,{target:`esnext`,sourcemap:!1})).code,map:null}}catch(e){throw Error(G(`transformWithEsbuild`,n,i,r,e),{cause:e})}return{code:t,moduleType:`ts`,map:null}}function q(e){let t=/^\/\/ @aihu:component-tags (.+)$/m.exec(e);return t===null?[]:t[1].split(`,`)}function J(e){return[...new Set(Array.from(e.matchAll(/__aihu_schild\('([^']+)'/g),e=>e[1]))].sort()}function fe(e){let t=/^\/\/ @aihu:extract read=(\S+) call=(\S+)$/m.exec(e);return t?{read:t[1],call:t[2]}:null}function pe(e){if(e.size===0)return[];let t=new Map,n=new Map;for(let{read:r,call:i}of e.values())t.set(r,(t.get(r)??0)+1),n.set(i,(n.get(i)??0)+1);let r=[`[aihu] extract census — ${e.size} surface(s)`];for(let[e,n]of[...t.entries()].sort())r.push(` read=${e}: ${n}`);for(let[e,t]of[...n.entries()].sort())r.push(` call=${e}: ${t}`);return r}function me(e){let t=/defineElement\(\s*['"]([^'"]+)['"]/m.exec(e);return t?t[1]??null:null}function he(e){let t=/defineComponent\(\s*\{/.exec(e);if(t===null)return!1;let n=/\bbase\s*:/g;return n.lastIndex=t.index+t[0].length,n.test(e)}function ge(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function _e(e,t){let n=ge(t.replace(/\\/g,`/`).replace(/^\.?\//,``));return n?e.replace(/\\/g,`/`).includes(`/${n}/`):!1}function ve(e){return`aihu-layout-${e.toLowerCase()}`}function ye(e){let t=``;for(let n=0;n<e.length;n++){let r=e.charAt(n);if(n>0&&r>=`A`&&r<=`Z`){let r=e.charAt(n-1),i=e.charAt(n+1);(r>=`a`&&r<=`z`||r>=`0`&&r<=`9`||r>=`A`&&r<=`Z`&&i>=`a`&&i<=`z`)&&(t+=`-`)}t+=r.toLowerCase()}return t}function be(e){let t=e.indexOf(`const createOutletBoundary = () => {`);if(t===-1)return e;let n=/return host;[^\S\n]*\n\};/g;n.lastIndex=t+36;let r=n.exec(e);return r===null?e:e.slice(0,t)+`const createOutletBoundary = () => branch('div', { 'data-aihu-outlet': '' }, []);`+e.slice(r.index+r[0].length)}function xe(e,t){let n=e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_hmrReplace`)||n.push(`_hmrReplace`),`import { ${n.join(`, `)} } from '@aihu/runtime'`}).replace(/\bdefineComponent\(/,`defineComponent(__aihu_setup__ = `),r=`
4
4
  export { __aihu_setup__ as default }
5
5
 
6
6
  if (typeof __DEV__ !== 'undefined' && __DEV__ && import.meta.hot) {
@@ -15,7 +15,7 @@ if (typeof __DEV__ !== 'undefined' && __DEV__ && import.meta.hot) {
15
15
  })
16
16
  }
17
17
  `;return`let __aihu_setup__: ((ctx: any) => any) | undefined
18
- `+n+r}function xe(e,t){let n=e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_hydrateOnVisible`)||n.push(`_hydrateOnVisible`),`import { ${n.join(`, `)} } from '@aihu/runtime'`}),r=n.replace(/defineElement\(\s*('[^']+'|"[^"]+")\s*,\s*defineComponent\(/,(e,t)=>`defineElement(${t}, __aihu_wrap_defer__(defineComponent(`);if(r===n)return e;let i=r.replace(/\)\s*\)\s*\nexport\s/,`)))
18
+ `+n+r}function Se(e,t){let n=e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_hydrateOnVisible`)||n.push(`_hydrateOnVisible`),`import { ${n.join(`, `)} } from '@aihu/runtime'`}),r=n.replace(/defineElement\(\s*('[^']+'|"[^"]+")\s*,\s*defineComponent\(/,(e,t)=>`defineElement(${t}, __aihu_wrap_defer__(defineComponent(`);if(r===n)return e;let i=r.replace(/\)\s*\)\s*\nexport\s/,`)))
19
19
  export `);return i===r&&(i=r.replace(/\)\s*\)\s*$/,`)))
20
20
  `)),i===r?e:`
21
21
  // Plan 3.3 (Islands) — defer attribute support. Wraps the constructor
@@ -34,13 +34,13 @@ function __aihu_wrap_defer__<T extends typeof HTMLElement>(Ctor: T): T {
34
34
  }
35
35
  return Ctor
36
36
  }
37
- `+i}function Se(e,t){if(!/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/.test(e))return e;let n=e.replace(/^[^\S\r\n]*import\s*\{[^{}]*\}\s*from\s*'@aihu\/runtime'(?:\s*;)?\s*$/m,``).replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/arbor'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`mount`)||n.push(`mount`),`import { ${n.join(`, `)} } from '@aihu/arbor'`}),r=/\)\s*\)\s*$/,i=/\),\s*\{\s*shadowMode:\s*'shadow'\s*\}\)\s*$/,a=r.test(n)?r:i.test(n)?i:null;if(a===null)return e;let o=JSON.stringify(t);return`// AIHU_STATIC_ISLAND — zero @aihu/runtime references\n${n.replace(/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/,`customElements.define(${o}, class extends HTMLElement {\n connectedCallback() {\n const root = this.attachShadow({ mode: 'open' })\n const __aihu_setup__ = (`).replace(a,`)
37
+ `+i}function Ce(e,t){if(!/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/.test(e))return e;let n=e.replace(/^[^\S\r\n]*import\s*\{[^{}]*\}\s*from\s*'@aihu\/runtime'(?:\s*;)?\s*$/m,``).replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/arbor'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`mount`)||n.push(`mount`),`import { ${n.join(`, `)} } from '@aihu/arbor'`}),r=/\)\s*\)\s*$/,i=/\),\s*\{\s*shadowMode:\s*'shadow'\s*\}\)\s*$/,a=r.test(n)?r:i.test(n)?i:null;if(a===null)return e;let o=JSON.stringify(t);return`// AIHU_STATIC_ISLAND — zero @aihu/runtime references\n${n.replace(/defineElement\(\s*['"][^'"]+['"]\s*,\s*defineComponent\(/,`customElements.define(${o}, class extends HTMLElement {\n connectedCallback() {\n const root = this.attachShadow({ mode: 'open' })\n const __aihu_setup__ = (`).replace(a,`)
38
38
  mount(__aihu_setup__({ host: root, element: this }), root)
39
39
  }
40
40
  })
41
- `)}`}function Ce(e,n,i){let a=r(n,`.aihu`),o=ve(a),s=/^[A-Z]/.test(a)&&!o.includes(`-`)?a:o,c=[`--stdin`,`--tag`,i?.tag??s,`--path`,n];if(i?.sidecarOut&&c.push(`--sidecar-out`,i.sidecarOut),i?.target&&c.push(`--target`,i.target),i?.strictTemplates&&c.push(`--strict-templates`),i?.sidecarOut){let n=z(),r=Date.now();try{return{code:t(n,c,{input:e,encoding:`utf8`,...T(e.length)}),map:null}}catch(t){throw E(t,n,c,e.length,Date.now()-r)??t}}let l=k(),u=i?.target??`universal`,d=i?.tag===void 0;return{code:L(`transform`,e,n,`target=${i?.target??``}|tag=${i?.tag??``}|strict=${i?.strictTemplates===!0}`,l,()=>{let t=j(e,c,{tag:i?.tag??s,path:n,targets:[u],emits:d?[`js`,`ast`,`route`]:[`js`],...i?.strictTemplates?{strictTemplates:!0}:{}});if(t.kind===`legacy`)return t.output;let r=t.envelope;d&&(r.astJson!==void 0&&R(`ast`,e,n,``,l,r.astJson),R(`route`,e,n,``,l,r.routeJson??`null`));let a=r.targets[u]?.js;if(a===void 0)throw Error(`[@aihu/compiler] envelope reply missing js for target '${u}'`);return a}),map:null}}function we(e){return e.replace(/\\/g,`\\\\`).replace(/`/g,"\\`").replace(/\$\{/g,"\\${")}function Te(e,t,n,r){let i=e.indexOf(t);if(i===-1)return null;let a=i+t.length,o=e.indexOf(n,a);return o===-1?null:e.slice(0,a)+r+e.slice(o)}function Ee(e,t){if(!t.trim())return e;let n=we(t),r=Te(e,"export const __aihu_css__ = `","`",n);return r===null?`${e}\nexport const __aihu_css__ = \`${n}\`\n`:r}function X(e,t){if(!t.trim())return e;let n=we(t),r=Te(e,"__style__.replaceSync(`","`);",n);if(r!==null)return r;let i=/defineComponent\(\s*\((__?[A-Za-z0-9_]+)\)\s*=>\s*\{/,a=i.exec(e);if(a==null)return e;let o=a[1]===`_ctx`?`ctx`:a[1],s=e.split(`
41
+ `)}`}function we(e,n,i){let a=r(n,`.aihu`),o=ye(a),s=/^[A-Z]/.test(a)&&!o.includes(`-`)?a:o,c=[`--stdin`,`--tag`,i?.tag??s,`--path`,n];if(i?.sidecarOut&&c.push(`--sidecar-out`,i.sidecarOut),i?.target&&c.push(`--target`,i.target),i?.strictTemplates&&c.push(`--strict-templates`),i?.sidecarOut){let n=R(),r=Date.now();try{return{code:t(n,c,{input:e,encoding:`utf8`,...T(e.length)}),map:null}}catch(t){throw E(t,n,c,e.length,Date.now()-r)??t}}let l=k(),u=i?.target??`universal`,d=i?.tag===void 0;return{code:I(`transform`,e,n,`target=${i?.target??``}|tag=${i?.tag??``}|strict=${i?.strictTemplates===!0}`,l,()=>{let t=j(e,c,{tag:i?.tag??s,path:n,targets:[u],emits:d?[`js`,`ast`,`route`]:[`js`],...i?.strictTemplates?{strictTemplates:!0}:{}});if(t.kind===`legacy`)return t.output;let r=t.envelope;d&&(r.astJson!==void 0&&L(`ast`,e,n,``,l,r.astJson),L(`route`,e,n,``,l,r.routeJson??`null`));let a=r.targets[u]?.js;if(a===void 0)throw Error(`[@aihu/compiler] envelope reply missing js for target '${u}'`);return a}),map:null}}function Te(e){return e.replace(/\\/g,`\\\\`).replace(/`/g,"\\`").replace(/\$\{/g,"\\${")}function Ee(e,t,n,r){let i=e.indexOf(t);if(i===-1)return null;let a=i+t.length,o=e.indexOf(n,a);return o===-1?null:e.slice(0,a)+r+e.slice(o)}function De(e,t){if(!t.trim())return e;let n=Te(t),r=Ee(e,"export const __aihu_css__ = `","`",n);return r===null?`${e}\nexport const __aihu_css__ = \`${n}\`\n`:r}function Y(e,t){if(!t.trim())return e;let n=Te(t),r=Ee(e,"__style__.replaceSync(`","`);",n);if(r!==null)return r;let i=/defineComponent\(\s*\((__?[A-Za-z0-9_]+)\)\s*=>\s*\{/,a=i.exec(e);if(a==null)return e;let o=a[1]===`_ctx`?`ctx`:a[1],s=e.split(`
42
42
  `),c=-1;for(let e=s.length-1;e>=0;e--){let t=(s[e]??``).trim();if(t.startsWith(`import `)||t.startsWith(`import{`)){c=e;break}}let l=`const __style__ = new CSSStyleSheet();\n__style__.replaceSync(\`${n}\`);`;c===-1?s.unshift(l):s.splice(c+1,0,l);let u=s.join(`
43
- `);return u=u.replace(i,`defineComponent((${o}) => {\n (${o}.host as ShadowRoot).adoptedStyleSheets = [__style__];`),u}const De=`\0virtual:aihu-utility/`;function Oe(e){let t=5381;for(let n=0;n<e.length;n++)t=(t*33^e.charCodeAt(n))>>>0;return t}function ke(e){return Oe(e).toString(36)}function Ae(e){return Oe(e).toString(16).padStart(8,`0`)}function je(e,t,n){if(!t.trim())return null;let r=ke(n),i=`${De}${r}.css`;return{code:`import ${JSON.stringify(i)};\n`+e,virtualId:i}}function Me(e,n,i){let a=[`--stdin`,`--tag`,n?r(n,`.aihu`):`Component`,`--sidecar-stdout`];n&&a.push(`--path`,n),i?.strictTemplates&&a.push(`--strict-templates`),i?.target&&a.push(`--target`,i.target);let o=z(),s=Date.now();try{return t(o,a,{input:e,encoding:`utf8`,stdio:[`pipe`,`pipe`,`pipe`],...T(e.length)})}catch(t){throw E(t,o,a,e.length,Date.now()-s)??t}}function Ne(e,t){let n=t?r(t,`.aihu`):`Component`,i=[`--stdin`,`--tag`,n,`--ast-json`];t&&i.push(`--path`,t);let a=k(),o=L(`ast`,e,t??``,``,a,()=>{let r=j(e,i,{tag:n,...t?{path:t}:{},emits:[`ast`]});if(r.kind===`legacy`)return r.output;let a=r.envelope.astJson;if(a===void 0)throw Error(`[@aihu/compiler] envelope reply missing astJson`);return a});return JSON.parse(o)}function Pe(e,t){let n=t?r(t,`.aihu`):`Component`,i=[`--stdin`,`--tag`,n,`--route-json`];t&&i.push(`--path`,t);let a=k(),o=L(`route`,e,t??``,``,a,()=>{let r=j(e,i,{tag:n,...t?{path:t}:{},emits:[`route`]});return r.kind===`legacy`?r.output:r.envelope.routeJson??`null`}).trim();return o===``||o===`null`?null:JSON.parse(o)}function Z(e){let t;t=e.includes(`from '@aihu/arbor'`)?e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/arbor'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`mount`)||n.push(`mount`),`import { ${n.join(`, `)} } from '@aihu/arbor'`}):`import { mount } from '@aihu/arbor'\n${e}`,/import\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/.test(t)?t=t.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/signals'/,(e,t)=>{if(e.startsWith(`import type`))return e;let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`signal`)||n.push(`signal`),`import { ${n.join(`, `)} } from '@aihu/signals'`}):/^[^\S\n]*import\b[^\n]*from[^\S\n]*'@aihu\/signals'/m.test(t)?/import\s+type\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/.test(t)&&!t.match(/import\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/)&&(t=t.replace(/(import\s+type\s+\{[^{}]*\}\s+from\s+'@aihu\/signals')/,(e,t)=>`${t}\nimport { signal } from '@aihu/signals'`)):t=t.replace(/import\s*\{[^{}]*\}\s*from\s*'@aihu\/arbor'/,e=>`${e}\nimport { signal } from '@aihu/signals'`),t=t.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_setMount`)||n.push(`_setMount`),n.includes(`_setSignal`)||n.push(`_setSignal`),`import { ${n.join(`, `)} } from '@aihu/runtime'`});let n=t.split(`
43
+ `);return u=u.replace(i,`defineComponent((${o}) => {\n (${o}.host as ShadowRoot).adoptedStyleSheets = [__style__];`),u}const Oe=`\0virtual:aihu-utility/`;function ke(e){let t=5381;for(let n=0;n<e.length;n++)t=(t*33^e.charCodeAt(n))>>>0;return t}function Ae(e){return ke(e).toString(36)}function je(e){return ke(e).toString(16).padStart(8,`0`)}function X(e,t,n){if(!t.trim())return null;let r=Ae(n),i=`${Oe}${r}.css`;return{code:`import ${JSON.stringify(i)};\n`+e,virtualId:i}}const Me=Y,Ne=X;function Pe(e,n,i){let a=[`--stdin`,`--tag`,n?r(n,`.aihu`):`Component`,`--sidecar-stdout`];n&&a.push(`--path`,n),i?.strictTemplates&&a.push(`--strict-templates`),i?.target&&a.push(`--target`,i.target);let o=R(),s=Date.now();try{return t(o,a,{input:e,encoding:`utf8`,stdio:[`pipe`,`pipe`,`pipe`],...T(e.length)})}catch(t){throw E(t,o,a,e.length,Date.now()-s)??t}}function Fe(e,t){let n=t?r(t,`.aihu`):`Component`,i=[`--stdin`,`--tag`,n,`--ast-json`];t&&i.push(`--path`,t);let a=k(),o=I(`ast`,e,t??``,``,a,()=>{let r=j(e,i,{tag:n,...t?{path:t}:{},emits:[`ast`]});if(r.kind===`legacy`)return r.output;let a=r.envelope.astJson;if(a===void 0)throw Error(`[@aihu/compiler] envelope reply missing astJson`);return a});return JSON.parse(o)}function Ie(e,t){let n=t?r(t,`.aihu`):`Component`,i=[`--stdin`,`--tag`,n,`--route-json`];t&&i.push(`--path`,t);let a=k(),o=I(`route`,e,t??``,``,a,()=>{let r=j(e,i,{tag:n,...t?{path:t}:{},emits:[`route`]});return r.kind===`legacy`?r.output:r.envelope.routeJson??`null`}).trim();return o===``||o===`null`?null:JSON.parse(o)}function Z(e){let t;t=e.includes(`from '@aihu/arbor'`)?e.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/arbor'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`mount`)||n.push(`mount`),`import { ${n.join(`, `)} } from '@aihu/arbor'`}):`import { mount } from '@aihu/arbor'\n${e}`,/import\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/.test(t)?t=t.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/signals'/,(e,t)=>{if(e.startsWith(`import type`))return e;let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`signal`)||n.push(`signal`),`import { ${n.join(`, `)} } from '@aihu/signals'`}):/^[^\S\n]*import\b[^\n]*from[^\S\n]*'@aihu\/signals'/m.test(t)?/import\s+type\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/.test(t)&&!t.match(/import\s+\{[^{}]*\}\s+from\s+'@aihu\/signals'/)&&(t=t.replace(/(import\s+type\s+\{[^{}]*\}\s+from\s+'@aihu\/signals')/,(e,t)=>`${t}\nimport { signal } from '@aihu/signals'`)):t=t.replace(/import\s*\{[^{}]*\}\s*from\s*'@aihu\/arbor'/,e=>`${e}\nimport { signal } from '@aihu/signals'`),t=t.replace(/import\s*\{([^{}]*)\}\s*from\s*'@aihu\/runtime'/,(e,t)=>{let n=t.split(`,`).map(e=>e.trim()).filter(Boolean);return n.includes(`_setMount`)||n.push(`_setMount`),n.includes(`_setSignal`)||n.push(`_setSignal`),`import { ${n.join(`, `)} } from '@aihu/runtime'`});let n=t.split(`
44
44
  `),r=-1;for(let e=n.length-1;e>=0;e--){let t=(n[e]??``).trim();if(t.startsWith(`import `)||t.startsWith(`import{`)){r=e;break}}return r!==-1&&(n.splice(r+1,0,`_setMount(mount)`,`_setSignal(signal)`,``),t=n.join(`
45
- `)),t}let Q,Fe=!1;const $=`@aihu/css-engine`;async function Ie(){try{return await import($)}catch{try{let e=n(a(process.cwd(),`package.json`)).resolve($);return await import(c(e).href)}catch{return null}}}async function Le(e,t,n){if(Q===null)return``;if(process.env.AIHU_COMPILE_BIN==null)try{process.env.AIHU_COMPILE_BIN=z()}catch{}if(Q===void 0&&(Q=await Ie(),Q===null))return``;try{return Q.compileSfc(e,t,n)}catch(e){if(!Fe){Fe=!0;let t=e instanceof Error?e.message:String(e);console.warn(`[@aihu/compiler] @aihu/css-engine is installed but compileSfc() failed; utility classes will not emit. Original error: ${t}\nHint: ensure the native css-core binary is installed (install/upgrade @aihu/css-engine + its per-platform optional dep, or run \`cargo build --release -p aihu-css-core\` in a dev clone).`)}return``}}function Re(e){let t=e?.islands!==!1,n=e?.shadowMode,i=e?.target,a=e?.layoutsDir??`src/layouts`,o=new Map,s=new Map;return{name:`aihu-compiler`,enforce:`pre`,buildEnd(){for(let e of fe(s))console.info(e)},resolveId(e){return e.startsWith(`\0virtual:aihu-utility/`)?e:null},load(e){return e.startsWith(`\0virtual:aihu-utility/`)?o.get(e)??null:null},transform(e,c){let l=c.split(`?`)[0];if(!l.endsWith(`.aihu`))return;let u=this?.environment?.config?.consumer===`server`,d=i??(u?`server`:void 0);return(async()=>{let i=ge(l,a),c=i?_e(r(l,`.aihu`)):void 0,f={...d?{target:d}:{},...c?{tag:c}:{}},p=Ce(e,l,f),m=de(p.code);m&&s.set(l,m);let h=/^\/\/ @aihu:shadow (light|shadow)\b/m.exec(p.code)?.[1],g=/^\/\/ @aihu:shadow-default (light|shadow)\b/m.exec(p.code)?.[1]??(i?`light`:void 0),_=h??n??g,v=_===`light`?Ae(l):void 0,y=_==null?p.code:B(p.code,_,v);v&&(y=V(y,v)),_===`light`&&(y=H(y)),i&&(y=ye(y));let b=await Le(e,l,v);if(b){if(_===`light`){let e=je(y,b,l);e&&(o.set(e.virtualId,b),y=e.code)}else y=X(y,b),u&&(y=Ee(y,b))}let x=pe(y),S,C=me(y);if(u){S=y,v&&(S+=`\nexport const __aihu_light_scope__ = '${v}'\n`),x!==null&&(S+=`\nexport const __aihu_tag__ = '${x}'\n`),_!=null&&(S+=`\nexport const __aihu_shadow__ = '${_}'\n`);let e=Y(S);e.length>0&&(S+=`\nexport const __aihu_child_tags__ = ${JSON.stringify(e)}\n`);let t=J(y);t.length>0&&(S+=`\nexport const __aihu_referenced_tags__ = ${JSON.stringify(t)}\n`)}else t&&x!==null&&!C&&_!==`light`&&U(y)===`static`?S=Se(y,x):x===null?(S=y,S=Z(S)):(S=be(y,x),S=xe(S,x),S=Z(S));let w;try{w=await import(`vite`)}catch(e){if(G(e))return{code:S,map:null};throw Error(`[@aihu/compiler] Could not load \`vite\` to strip TypeScript from ${l}. Vite appears to be installed but failed to load, so this is NOT the "running outside Vite" case and the TypeScript must not be handed back un-stripped. Underlying error: ${W(e)}`,{cause:e})}return await q(w,S,l,u)})()}}}export{De as VIRTUAL_UTILITY_PREFIX,oe as _MEMO_MAX_ENTRIES,xe as _buildDeferredHydration,Se as _buildStaticIsland,ce as _clearTransformMemo,j as _compileViaBackend,Y as _deriveChildTags,W as _errMessage,X as _foldCssEngineStyles,je as _foldCssEngineStylesGlobal,Ee as _foldSsrCssExport,fe as _formatExtractCensus,x as _getCompilerNativeStateKind,H as _globalizeAuthoredStyle,ke as _hashIdForUtilityCss,Z as _injectAutoWiring,V as _injectLightScopeId,B as _injectShadowMode,ge as _isLayoutFile,G as _isViteMissing,_e as _layoutTag,Ae as _lightScopeId,J as _parseComponentTagsMarker,de as _parseExtractMarker,U as _parseIslandMarker,ye as _passivizeOutlet,ie as _resetCompileBackend,S as _resetCompilerNative,O as _resolveCompileBackend,K as _stripFailure,q as _stripTypes,le as _transformMemoStats,Re as aihuCompilerPlugin,Pe as compileRouteMeta,Me as compileSidecar,Ne as compileToAst,ve as kebabComponentTag,b as loadCompilerNative,e as resolveCompilerBinary,Ce as transform};
45
+ `)),t}let Q,Le=!1;const $=`@aihu/css-engine`;async function Re(){try{return await import($)}catch{try{let e=n(a(process.cwd(),`package.json`)).resolve($);return await import(c(e).href)}catch{return null}}}async function ze(e,t,n){if(Q===null)return``;if(process.env.AIHU_COMPILE_BIN==null)try{process.env.AIHU_COMPILE_BIN=R()}catch{}if(Q===void 0&&(Q=await Re(),Q===null))return``;try{return Q.compileSfc(e,t,n)}catch(e){if(!Le){Le=!0;let t=e instanceof Error?e.message:String(e);console.warn(`[@aihu/compiler] @aihu/css-engine is installed but compileSfc() failed; utility classes will not emit. Original error: ${t}\nHint: ensure the native css-core binary is installed (install/upgrade @aihu/css-engine + its per-platform optional dep, or run \`cargo build --release -p aihu-css-core\` in a dev clone).`)}return``}}async function Be(e,t){return e===void 0?ze(t.source,t.id,t.lightScopeId):await e(t)??``}function Ve(e){let t=e?.islands!==!1,n=e?.shadowMode,i=e?.cssProvider,a=e?.target,o=e?.layoutsDir??`src/layouts`,s=new Map,c=new Map;return{name:`aihu-compiler`,enforce:`pre`,buildEnd(){for(let e of pe(c))console.info(e)},resolveId(e){return e.startsWith(`\0virtual:aihu-utility/`)?e:null},load(e){return e.startsWith(`\0virtual:aihu-utility/`)?s.get(e)??null:null},transform(e,l){let u=l.split(`?`)[0];if(!u.endsWith(`.aihu`))return;let d=this?.environment?.config?.consumer===`server`,f=a??(d?`server`:void 0);return(async()=>{let a=_e(u,o),l=a?ve(r(u,`.aihu`)):void 0,p={...f?{target:f}:{},...l?{tag:l}:{}},m=we(e,u,p),h=fe(m.code);h&&c.set(u,h);let g=/^\/\/ @aihu:shadow (light|shadow)\b/m.exec(m.code)?.[1],_=/^\/\/ @aihu:shadow-default (light|shadow)\b/m.exec(m.code)?.[1]??(a?`light`:void 0),v=g??n??_,y=v??`shadow`,b=v===`light`?je(u):void 0,x=v==null?m.code:z(m.code,v,b);b&&(x=B(x,b)),v===`light`&&(x=V(x)),a&&(x=be(x));let S=await Be(i,{source:e,id:u,shadowMode:y,target:f??`universal`,...b?{lightScopeId:b}:{}});if(S){if(v===`light`){let e=X(x,S,u);e&&(s.set(e.virtualId,S),x=e.code)}else x=Y(x,S),d&&(x=De(x,S))}let C=me(x),w,T=he(x);if(d){w=x,b&&(w+=`\nexport const __aihu_light_scope__ = '${b}'\n`),C!==null&&(w+=`\nexport const __aihu_tag__ = '${C}'\n`),v!=null&&(w+=`\nexport const __aihu_shadow__ = '${v}'\n`);let e=J(w);e.length>0&&(w+=`\nexport const __aihu_child_tags__ = ${JSON.stringify(e)}\n`);let t=q(x);t.length>0&&(w+=`\nexport const __aihu_referenced_tags__ = ${JSON.stringify(t)}\n`)}else t&&C!==null&&!T&&v!==`light`&&H(x)===`static`?w=Ce(x,C):C===null?(w=x,w=Z(w)):(w=xe(x,C),w=Se(w,C),w=Z(w));let E;try{E=await import(`vite`)}catch(e){if(W(e))return{code:w,map:null};throw Error(`[@aihu/compiler] Could not load \`vite\` to strip TypeScript from ${u}. Vite appears to be installed but failed to load, so this is NOT the "running outside Vite" case and the TypeScript must not be handed back un-stripped. Underlying error: ${U(e)}`,{cause:e})}return await K(E,w,u,d)})()}}}export{Oe as VIRTUAL_UTILITY_PREFIX,oe as _MEMO_MAX_ENTRIES,Se as _buildDeferredHydration,Ce as _buildStaticIsland,le as _clearTransformMemo,j as _compileViaBackend,J as _deriveChildTags,U as _errMessage,Me as _foldCssEngineStyles,Ne as _foldCssEngineStylesGlobal,Y as _foldCssStyles,X as _foldCssStylesGlobal,De as _foldSsrCssExport,pe as _formatExtractCensus,x as _getCompilerNativeStateKind,V as _globalizeAuthoredStyle,Ae as _hashIdForUtilityCss,Z as _injectAutoWiring,B as _injectLightScopeId,z as _injectShadowMode,_e as _isLayoutFile,W as _isViteMissing,ve as _layoutTag,je as _lightScopeId,q as _parseComponentTagsMarker,fe as _parseExtractMarker,H as _parseIslandMarker,be as _passivizeOutlet,ie as _resetCompileBackend,S as _resetCompilerNative,O as _resolveCompileBackend,G as _stripFailure,K as _stripTypes,ue as _transformMemoStats,Ve as aihuCompilerPlugin,Ie as compileRouteMeta,Pe as compileSidecar,Fe as compileToAst,ye as kebabComponentTag,b as loadCompilerNative,e as resolveCompilerBinary,we as transform};
46
46
  //# sourceMappingURL=index.js.map