@absolutejs/absolute 0.19.0-beta.805 → 0.19.0-beta.807
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/angular/index.js +5 -5
- package/dist/angular/server.js +5 -5
- package/dist/build.js +4 -4
- package/dist/{chunk-gxrsf71e.js → chunk-1rfh7hw9.js} +29 -15
- package/dist/chunk-1rfh7hw9.js.map +11 -0
- package/dist/{chunk-f8k0tb5z.js → chunk-1x4fxm57.js} +5 -5
- package/dist/{chunk-n5a5nxnt.js → chunk-3rea1gam.js} +20 -14
- package/dist/chunk-3rea1gam.js.map +28 -0
- package/dist/{chunk-pevt15h0.js → chunk-629x0yh4.js} +5 -5
- package/dist/{chunk-a0x4bf8d.js → chunk-92fsjfpp.js} +2 -14
- package/dist/{chunk-a0x4bf8d.js.map → chunk-92fsjfpp.js.map} +3 -3
- package/dist/{chunk-z6c8qcmw.js → chunk-9j59emg3.js} +2 -2
- package/dist/{chunk-r0w678ve.js → chunk-bgb8k1qs.js} +2 -2
- package/dist/{chunk-by7t1d3r.js → chunk-cm0g4q6w.js} +2 -2
- package/dist/{chunk-hf5fjykx.js → chunk-jpkjdgsk.js} +13 -53
- package/dist/chunk-jpkjdgsk.js.map +11 -0
- package/dist/{chunk-8zz4g25g.js → chunk-kwgh8rmg.js} +14 -17
- package/dist/chunk-kwgh8rmg.js.map +14 -0
- package/dist/{chunk-0r32762k.js → chunk-m97ze5hz.js} +3 -3
- package/dist/{chunk-0r32762k.js.map → chunk-m97ze5hz.js.map} +1 -1
- package/dist/{chunk-ccz4x8vr.js → chunk-p5zgj77m.js} +3 -3
- package/dist/chunk-pnscgw95.js +90 -0
- package/dist/chunk-pnscgw95.js.map +10 -0
- package/dist/{chunk-0fsxp5gc.js → chunk-r6e8pytx.js} +2 -2
- package/dist/client/index.js +4 -4
- package/dist/index.js +5 -6
- package/dist/index.js.map +2 -2
- package/dist/islands/index.js +1 -1
- package/dist/react/index.js +1 -1
- package/dist/src/angular/ssrRender.d.ts +1 -3
- package/dist/src/build/buildAngularVendor.d.ts +2 -2
- package/dist/src/index.d.ts +0 -1
- package/dist/svelte/index.js +1 -1
- package/dist/types/angular.d.ts +0 -6
- package/dist/vue/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-8zz4g25g.js.map +0 -14
- package/dist/chunk-gxrsf71e.js.map +0 -11
- package/dist/chunk-hf5fjykx.js.map +0 -11
- package/dist/chunk-n5a5nxnt.js.map +0 -28
- package/dist/chunk-r8dzkm4s.js +0 -194
- package/dist/chunk-r8dzkm4s.js.map +0 -11
- package/dist/src/angular/injectorPatch.d.ts +0 -1
- /package/dist/{chunk-f8k0tb5z.js.map → chunk-1x4fxm57.js.map} +0 -0
- /package/dist/{chunk-pevt15h0.js.map → chunk-629x0yh4.js.map} +0 -0
- /package/dist/{chunk-z6c8qcmw.js.map → chunk-9j59emg3.js.map} +0 -0
- /package/dist/{chunk-r0w678ve.js.map → chunk-bgb8k1qs.js.map} +0 -0
- /package/dist/{chunk-by7t1d3r.js.map → chunk-cm0g4q6w.js.map} +0 -0
- /package/dist/{chunk-ccz4x8vr.js.map → chunk-p5zgj77m.js.map} +0 -0
- /package/dist/{chunk-0fsxp5gc.js.map → chunk-r6e8pytx.js.map} +0 -0
package/dist/chunk-r8dzkm4s.js
DELETED
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
resolveAngularPackageDir
|
|
4
|
-
} from "./chunk-0r32762k.js";
|
|
5
|
-
import {
|
|
6
|
-
__require
|
|
7
|
-
} from "./chunk-bmgqm774.js";
|
|
8
|
-
|
|
9
|
-
// src/angular/injectorPatch.ts
|
|
10
|
-
import { existsSync, readFileSync, writeFileSync } from "fs";
|
|
11
|
-
import { dirname, join } from "path";
|
|
12
|
-
var applyInjectorPatch = (chunkPath, content) => {
|
|
13
|
-
if (content.includes('Symbol.for("angular.currentInjector")')) {
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
const original = [
|
|
17
|
-
"let _currentInjector = undefined;",
|
|
18
|
-
"function getCurrentInjector() {",
|
|
19
|
-
" return _currentInjector;",
|
|
20
|
-
"}",
|
|
21
|
-
"function setCurrentInjector(injector) {",
|
|
22
|
-
" const former = _currentInjector;",
|
|
23
|
-
" _currentInjector = injector;",
|
|
24
|
-
" return former;",
|
|
25
|
-
"}"
|
|
26
|
-
].join(`
|
|
27
|
-
`);
|
|
28
|
-
const replacement = [
|
|
29
|
-
'const _injSym = Symbol.for("angular.currentInjector");',
|
|
30
|
-
"if (!globalThis[_injSym]) globalThis[_injSym] = { v: undefined };",
|
|
31
|
-
"function getCurrentInjector() {",
|
|
32
|
-
" return globalThis[_injSym].v;",
|
|
33
|
-
"}",
|
|
34
|
-
"function setCurrentInjector(injector) {",
|
|
35
|
-
" const former = globalThis[_injSym].v;",
|
|
36
|
-
" globalThis[_injSym].v = injector;",
|
|
37
|
-
" return former;",
|
|
38
|
-
"}"
|
|
39
|
-
].join(`
|
|
40
|
-
`);
|
|
41
|
-
const patched = content.replace(original, replacement);
|
|
42
|
-
if (patched === content) {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
writeFileSync(chunkPath, patched, "utf-8");
|
|
46
|
-
};
|
|
47
|
-
var resolveAngularCoreDir = () => {
|
|
48
|
-
const resolved = resolveAngularPackageDir("@angular/core");
|
|
49
|
-
if (resolved && existsSync(join(resolved, "package.json"))) {
|
|
50
|
-
return resolved;
|
|
51
|
-
}
|
|
52
|
-
return dirname(__require.resolve("@angular/core/package.json"));
|
|
53
|
-
};
|
|
54
|
-
var applyCompilerFacadePatch = (chunkPath, content) => {
|
|
55
|
-
const marker = "absolutejs.compilerFacadeAutoload";
|
|
56
|
-
if (content.includes(marker))
|
|
57
|
-
return;
|
|
58
|
-
const original = [
|
|
59
|
-
"function getCompilerFacade(request) {",
|
|
60
|
-
" const globalNg = _global['ng'];",
|
|
61
|
-
" if (globalNg && globalNg.\u0275compilerFacade) {",
|
|
62
|
-
" return globalNg.\u0275compilerFacade;",
|
|
63
|
-
" }"
|
|
64
|
-
].join(`
|
|
65
|
-
`);
|
|
66
|
-
const replacement = [
|
|
67
|
-
"function getCompilerFacade(request) {",
|
|
68
|
-
" let globalNg = _global['ng'];",
|
|
69
|
-
" if (globalNg && globalNg.\u0275compilerFacade) {",
|
|
70
|
-
" return globalNg.\u0275compilerFacade;",
|
|
71
|
-
" }",
|
|
72
|
-
` /* ${marker} */`,
|
|
73
|
-
" try {",
|
|
74
|
-
' const { createRequire } = globalThis.process?.getBuiltinModule?.("module") ?? require("module");',
|
|
75
|
-
' const projectRequire = createRequire(globalThis.process.cwd() + "/package.json");',
|
|
76
|
-
' projectRequire("@angular/compiler");',
|
|
77
|
-
" globalNg = _global['ng'];",
|
|
78
|
-
" if (globalNg && globalNg.\u0275compilerFacade) {",
|
|
79
|
-
" return globalNg.\u0275compilerFacade;",
|
|
80
|
-
" }",
|
|
81
|
-
" } catch {",
|
|
82
|
-
" /* fall through to original error */",
|
|
83
|
-
" }"
|
|
84
|
-
].join(`
|
|
85
|
-
`);
|
|
86
|
-
const patched = content.replace(original, replacement);
|
|
87
|
-
if (patched === content)
|
|
88
|
-
return;
|
|
89
|
-
writeFileSync(chunkPath, patched, "utf-8");
|
|
90
|
-
};
|
|
91
|
-
var tryApplyChunkPatch = (chunkPath, apply) => {
|
|
92
|
-
if (!existsSync(chunkPath))
|
|
93
|
-
return;
|
|
94
|
-
apply(chunkPath, readFileSync(chunkPath, "utf-8"));
|
|
95
|
-
};
|
|
96
|
-
var patchAngularInjectorSingleton = () => {
|
|
97
|
-
try {
|
|
98
|
-
const coreDir = resolveAngularCoreDir();
|
|
99
|
-
const fesmDir = join(coreDir, "fesm2022");
|
|
100
|
-
tryApplyChunkPatch(join(fesmDir, "_not_found-chunk.mjs"), applyInjectorPatch);
|
|
101
|
-
tryApplyChunkPatch(join(fesmDir, "_debug_node-chunk.mjs"), applyCompilerFacadePatch);
|
|
102
|
-
} catch {}
|
|
103
|
-
};
|
|
104
|
-
patchAngularInjectorSingleton();
|
|
105
|
-
|
|
106
|
-
// src/utils/registerClientScript.ts
|
|
107
|
-
var scriptRegistry = new Map;
|
|
108
|
-
var requestCounter = 0;
|
|
109
|
-
var getRequestId = () => `req_${Date.now()}_${++requestCounter}`;
|
|
110
|
-
var ssrContextGetter = null;
|
|
111
|
-
var getSsrContextId = () => ssrContextGetter?.() || Object.getOwnPropertyDescriptor(globalThis, "__absolutejs_requestId")?.value;
|
|
112
|
-
var registerClientScript = (script, requestId) => {
|
|
113
|
-
const id = requestId || getSsrContextId() || getRequestId();
|
|
114
|
-
if (!scriptRegistry.has(id)) {
|
|
115
|
-
scriptRegistry.set(id, new Set);
|
|
116
|
-
}
|
|
117
|
-
scriptRegistry.get(id)?.add(script);
|
|
118
|
-
return id;
|
|
119
|
-
};
|
|
120
|
-
var setSsrContextGetter = (getter) => {
|
|
121
|
-
ssrContextGetter = getter;
|
|
122
|
-
};
|
|
123
|
-
if (typeof globalThis !== "undefined") {
|
|
124
|
-
Object.assign(globalThis, { registerClientScript });
|
|
125
|
-
}
|
|
126
|
-
var clearAllClientScripts = () => {
|
|
127
|
-
scriptRegistry.clear();
|
|
128
|
-
};
|
|
129
|
-
var generateClientScriptCode = (scripts) => {
|
|
130
|
-
if (scripts.length === 0) {
|
|
131
|
-
return "";
|
|
132
|
-
}
|
|
133
|
-
const scriptCode = scripts.map((script, index) => {
|
|
134
|
-
const funcString = script.toString();
|
|
135
|
-
const bodyMatch = funcString.match(/\{([\s\S]*)\}/);
|
|
136
|
-
if (!bodyMatch || !bodyMatch[1]) {
|
|
137
|
-
return "";
|
|
138
|
-
}
|
|
139
|
-
const body = bodyMatch[1].trim();
|
|
140
|
-
return `
|
|
141
|
-
(function() {
|
|
142
|
-
var executed = false;
|
|
143
|
-
function executeScript_${index}() {
|
|
144
|
-
if (executed) return;
|
|
145
|
-
executed = true;
|
|
146
|
-
${body}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
if (document.readyState === 'complete' || document.readyState === 'interactive') {
|
|
150
|
-
executeScript_${index}();
|
|
151
|
-
} else {
|
|
152
|
-
document.addEventListener('DOMContentLoaded', executeScript_${index});
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
// Watch for hydration-added elements
|
|
156
|
-
var observer = new MutationObserver(function() {
|
|
157
|
-
executeScript_${index}();
|
|
158
|
-
if (executed) observer.disconnect();
|
|
159
|
-
});
|
|
160
|
-
if (!executed) {
|
|
161
|
-
observer.observe(document.body || document.documentElement, { childList: true, subtree: true });
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
// Single fallback timeout
|
|
165
|
-
setTimeout(function() {
|
|
166
|
-
executeScript_${index}();
|
|
167
|
-
observer.disconnect();
|
|
168
|
-
}, 1000);
|
|
169
|
-
})();`;
|
|
170
|
-
}).join(`
|
|
171
|
-
`);
|
|
172
|
-
return `<script>
|
|
173
|
-
(function() {
|
|
174
|
-
${scriptCode}
|
|
175
|
-
})();
|
|
176
|
-
</script>`;
|
|
177
|
-
};
|
|
178
|
-
var getAndClearClientScripts = (requestId) => {
|
|
179
|
-
const id = requestId || ssrContextGetter?.();
|
|
180
|
-
if (!id)
|
|
181
|
-
return [];
|
|
182
|
-
const scripts = scriptRegistry.get(id);
|
|
183
|
-
if (!scripts) {
|
|
184
|
-
return [];
|
|
185
|
-
}
|
|
186
|
-
const scriptArray = Array.from(scripts);
|
|
187
|
-
scriptRegistry.delete(id);
|
|
188
|
-
return scriptArray;
|
|
189
|
-
};
|
|
190
|
-
|
|
191
|
-
export { patchAngularInjectorSingleton, getSsrContextId, registerClientScript, setSsrContextGetter, clearAllClientScripts, generateClientScriptCode, getAndClearClientScripts };
|
|
192
|
-
|
|
193
|
-
//# debugId=7DE0E2AE7CE02C0664756E2164756E21
|
|
194
|
-
//# sourceMappingURL=chunk-r8dzkm4s.js.map
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/angular/injectorPatch.ts", "../src/utils/registerClientScript.ts"],
|
|
4
|
-
"sourcesContent": [
|
|
5
|
-
"import { existsSync, readFileSync, writeFileSync } from 'node:fs';\nimport { dirname, join } from 'node:path';\nimport { resolveAngularPackageDir } from './resolveAngularPackage';\n\n// --- Patch Angular injector singleton for HMR compatibility ---\n// Bun's --hot mode can create duplicate Angular module instances during\n// HMR rebuilds. Angular's _currentInjector is a module-level variable in\n// _not_found-chunk.mjs — when duplicated, R3Injector.get() sets it in\n// instance A while the factory's inject() reads from instance B (undefined),\n// causing NG0203. This patch stores _currentInjector on globalThis so all\n// instances share the same value.\n//\n// We additionally patch `_debug_node-chunk.mjs::getCompilerFacade` to\n// auto-require `@angular/compiler` when partial-AOT chunks like\n// `_platform_location-chunk.mjs` invoke `ɵɵngDeclareFactory` *before*\n// userland code has explicitly imported `@angular/compiler`. Without\n// this, partial chunks throw \"JIT compilation failed for [class\n// PlatformLocation]\" the very first time they execute under Bun's\n// `--hot` runtime, because the import order isn't guaranteed.\n\nconst applyInjectorPatch = (chunkPath: string, content: string) => {\n\tif (content.includes('Symbol.for(\"angular.currentInjector\")')) {\n\t\treturn;\n\t}\n\n\tconst original = [\n\t\t'let _currentInjector = undefined;',\n\t\t'function getCurrentInjector() {',\n\t\t' return _currentInjector;',\n\t\t'}',\n\t\t'function setCurrentInjector(injector) {',\n\t\t' const former = _currentInjector;',\n\t\t' _currentInjector = injector;',\n\t\t' return former;',\n\t\t'}'\n\t].join('\\n');\n\n\tconst replacement = [\n\t\t'const _injSym = Symbol.for(\"angular.currentInjector\");',\n\t\t'if (!globalThis[_injSym]) globalThis[_injSym] = { v: undefined };',\n\t\t'function getCurrentInjector() {',\n\t\t' return globalThis[_injSym].v;',\n\t\t'}',\n\t\t'function setCurrentInjector(injector) {',\n\t\t' const former = globalThis[_injSym].v;',\n\t\t' globalThis[_injSym].v = injector;',\n\t\t' return former;',\n\t\t'}'\n\t].join('\\n');\n\n\tconst patched = content.replace(original, replacement);\n\n\tif (patched === content) {\n\t\treturn;\n\t}\n\n\twriteFileSync(chunkPath, patched, 'utf-8');\n};\n\nconst resolveAngularCoreDir = () => {\n\tconst resolved = resolveAngularPackageDir('@angular/core');\n\n\tif (resolved && existsSync(join(resolved, 'package.json'))) {\n\t\treturn resolved;\n\t}\n\n\treturn dirname(require.resolve('@angular/core/package.json'));\n};\n\n/* Make `getCompilerFacade` self-bootstrap. The shipped implementation reads\n `globalThis.ng.ɵcompilerFacade` and throws if it's missing. We rewrite it\n to first attempt a synchronous `require('@angular/compiler')` (which sets\n the facade as a side-effect of its top-level `publishFacade` call) and\n then check again before falling through to the original error path.\n\n Idempotent: if the patched marker is already present we skip. The\n pattern is anchored on the original Angular source so it no-ops if\n Angular changes the function shape in a future minor release. */\nconst applyCompilerFacadePatch = (chunkPath: string, content: string) => {\n\tconst marker = 'absolutejs.compilerFacadeAutoload';\n\tif (content.includes(marker)) return;\n\n\tconst original = [\n\t\t'function getCompilerFacade(request) {',\n\t\t\" const globalNg = _global['ng'];\",\n\t\t' if (globalNg && globalNg.ɵcompilerFacade) {',\n\t\t' return globalNg.ɵcompilerFacade;',\n\t\t' }'\n\t].join('\\n');\n\n\tconst replacement = [\n\t\t'function getCompilerFacade(request) {',\n\t\t\" let globalNg = _global['ng'];\",\n\t\t' if (globalNg && globalNg.ɵcompilerFacade) {',\n\t\t' return globalNg.ɵcompilerFacade;',\n\t\t' }',\n\t\t` /* ${marker} */`,\n\t\t' try {',\n\t\t' const { createRequire } = globalThis.process?.getBuiltinModule?.(\"module\") ?? require(\"module\");',\n\t\t' const projectRequire = createRequire(globalThis.process.cwd() + \"/package.json\");',\n\t\t' projectRequire(\"@angular/compiler\");',\n\t\t\" globalNg = _global['ng'];\",\n\t\t' if (globalNg && globalNg.ɵcompilerFacade) {',\n\t\t' return globalNg.ɵcompilerFacade;',\n\t\t' }',\n\t\t' } catch {',\n\t\t' /* fall through to original error */',\n\t\t' }'\n\t].join('\\n');\n\n\tconst patched = content.replace(original, replacement);\n\tif (patched === content) return;\n\twriteFileSync(chunkPath, patched, 'utf-8');\n};\n\nconst tryApplyChunkPatch = (\n\tchunkPath: string,\n\tapply: (path: string, content: string) => void\n) => {\n\tif (!existsSync(chunkPath)) return;\n\tapply(chunkPath, readFileSync(chunkPath, 'utf-8'));\n};\n\nexport const patchAngularInjectorSingleton = () => {\n\ttry {\n\t\tconst coreDir = resolveAngularCoreDir();\n\t\tconst fesmDir = join(coreDir, 'fesm2022');\n\t\ttryApplyChunkPatch(\n\t\t\tjoin(fesmDir, '_not_found-chunk.mjs'),\n\t\t\tapplyInjectorPatch\n\t\t);\n\t\ttryApplyChunkPatch(\n\t\t\tjoin(fesmDir, '_debug_node-chunk.mjs'),\n\t\t\tapplyCompilerFacadePatch\n\t\t);\n\t} catch {\n\t\t// Non-fatal — HMR may see NG0203 on second+ edits\n\t}\n};\n\n// Apply immediately at module load so the file is patched before any\n// Angular module is first evaluated by Bun's --hot mode or linker plugin.\npatchAngularInjectorSingleton();\n",
|
|
6
|
-
"/**\n * Utility for registering client-side scripts that need to run after Angular SSR hydration.\n *\n * This is necessary because Angular's lifecycle hooks don't always run reliably on the client\n * after SSR hydration, especially for event listeners attached to DOM elements.\n *\n * Usage in Angular components:\n * ```typescript\n * import { registerClientScript } from '@absolutejs/absolute';\n *\n * // Register an event listener script\n * registerClientScript(() => {\n * const element = document.querySelector('.my-element');\n * if (element) {\n * element.addEventListener('click', () => {\n * console.log('Clicked!');\n * });\n * }\n * });\n * ```\n *\n * The script will be automatically injected into the HTML response and executed on the client.\n */\n\n// Request-scoped registry for client scripts\n// Each request gets its own set of scripts to inject\nconst scriptRegistry = new Map<string, Set<() => void>>();\n\n// Generate a unique request ID for tracking scripts per request\nlet requestCounter = 0;\nconst getRequestId = () => `req_${Date.now()}_${++requestCounter}`;\n\n// Allow SSR frameworks to inject a request context getter (e.g. AsyncLocalStorage)\nlet ssrContextGetter: (() => string | undefined) | null = null;\nexport const getSsrContextId = () =>\n\tssrContextGetter?.() ||\n\tObject.getOwnPropertyDescriptor(globalThis, '__absolutejs_requestId')\n\t\t?.value;\nexport const registerClientScript = (\n\tscript: () => void,\n\trequestId?: string\n) => {\n\t// Try to get requestId from explicit arg, then Async Context, then global fallback\n\tconst id = requestId || getSsrContextId() || getRequestId();\n\n\tif (!scriptRegistry.has(id)) {\n\t\tscriptRegistry.set(id, new Set());\n\t}\n\n\tscriptRegistry.get(id)?.add(script);\n\n\treturn id;\n};\nexport const setSsrContextGetter = (getter: () => string | undefined) => {\n\tssrContextGetter = getter;\n};\n\n// Make registerClientScript available globally during SSR for Angular components\n// Using type assertion for globalThis extension\nif (typeof globalThis !== 'undefined') {\n\tObject.assign(globalThis, { registerClientScript });\n}\n\n/**\n * Get all registered scripts for a request and clear them.\n * This is called by the page handler after rendering.\n *\n * @param requestId - The request ID to get scripts for\n * @returns Array of script functions, or empty array if none registered\n */\nexport const clearAllClientScripts = () => {\n\tscriptRegistry.clear();\n};\nexport const generateClientScriptCode = (scripts: (() => void)[]) => {\n\tif (scripts.length === 0) {\n\t\treturn '';\n\t}\n\n\t// Convert functions to strings and wrap in IIFE\n\tconst scriptCode = scripts\n\t\t.map((script, index) => {\n\t\t\t// Get the function body as a string\n\t\t\tconst funcString = script.toString();\n\n\t\t\t// Extract the body (everything between { and })\n\t\t\tconst bodyMatch = funcString.match(/\\{([\\s\\S]*)\\}/);\n\t\t\tif (!bodyMatch || !bodyMatch[1]) {\n\t\t\t\treturn '';\n\t\t\t}\n\n\t\t\tconst body = bodyMatch[1].trim();\n\n\t\t\t// Wrap in IIFE with MutationObserver for DOM readiness\n\t\t\treturn `\n\t(function() {\n\t\tvar executed = false;\n\t\tfunction executeScript_${index}() {\n\t\t\tif (executed) return;\n\t\t\texecuted = true;\n\t\t\t${body}\n\t\t}\n\n\t\tif (document.readyState === 'complete' || document.readyState === 'interactive') {\n\t\t\texecuteScript_${index}();\n\t\t} else {\n\t\t\tdocument.addEventListener('DOMContentLoaded', executeScript_${index});\n\t\t}\n\n\t\t// Watch for hydration-added elements\n\t\tvar observer = new MutationObserver(function() {\n\t\t\texecuteScript_${index}();\n\t\t\tif (executed) observer.disconnect();\n\t\t});\n\t\tif (!executed) {\n\t\t\tobserver.observe(document.body || document.documentElement, { childList: true, subtree: true });\n\t\t}\n\n\t\t// Single fallback timeout\n\t\tsetTimeout(function() {\n\t\t\texecuteScript_${index}();\n\t\t\tobserver.disconnect();\n\t\t}, 1000);\n\t})();`;\n\t\t})\n\t\t.join('\\n');\n\n\treturn `<script>\n(function() {\n${scriptCode}\n})();\n</script>`;\n};\nexport const getAndClearClientScripts = (requestId?: string) => {\n\tconst id = requestId || ssrContextGetter?.();\n\tif (!id) return [];\n\n\tconst scripts = scriptRegistry.get(id);\n\tif (!scripts) {\n\t\treturn [];\n\t}\n\n\tconst scriptArray = Array.from(scripts);\n\tscriptRegistry.delete(id);\n\n\treturn scriptArray;\n};\n"
|
|
7
|
-
],
|
|
8
|
-
"mappings": "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",
|
|
9
|
-
"debugId": "7DE0E2AE7CE02C0664756E2164756E21",
|
|
10
|
-
"names": []
|
|
11
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const patchAngularInjectorSingleton: () => void;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|