@noego/wood 0.7.2 → 0.7.3
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.
|
@@ -394,6 +394,12 @@ declare function createBrowserBridgeFixture(input: WoodBridgeFixtureInput | unde
|
|
|
394
394
|
manifest: RuntimeBridgeManifestEntry[];
|
|
395
395
|
bridgeInit: string;
|
|
396
396
|
};
|
|
397
|
+
/**
|
|
398
|
+
* Whether a Vite importer id belongs to the runner project. Vite hands the
|
|
399
|
+
* resolver either a filesystem path or a `/@fs/<path>` URL, possibly with a
|
|
400
|
+
* query; both forms are normalised before the ancestry check.
|
|
401
|
+
*/
|
|
402
|
+
declare function isInsideRoot(rootDir: string, importer: string): boolean;
|
|
397
403
|
declare function createWoodBrowserResolver(rootDir: string): any;
|
|
398
404
|
declare function loadSveltePlugin(rootDir: string): Promise<any | null>;
|
|
399
405
|
declare function startSharedBrowserViteServer(input: {
|
|
@@ -420,4 +426,4 @@ declare global {
|
|
|
420
426
|
}
|
|
421
427
|
}
|
|
422
428
|
|
|
423
|
-
export { type MountComponentOptions, type MountRouteOptions, type MountTreeOptions, type MountedWoodBridge, type MountedWoodComponent, type MountedWoodNavigation, type MountedWoodRoute, type MountedWoodSurface, type MountedWoodTree, type WoodBridgeFixtureContext, type WoodBridgeFixtureInput, type WoodBridgeRecordedCall, type WoodBridgeRecordedEvent, type WoodBrowserExpect, type WoodBrowserFixture, type WoodBrowserHarnessConfig, type WoodBrowserPageContext, type WoodBrowserTraceConfig, type WoodHitTestResult, type WoodRectSnapshot, type WoodRpcManifestEntryInput, type WoodSpacingAxis, type WoodViewport, browserAssertions, createBrowserBridgeFixture, createBrowserFixture, createWoodBrowserResolver, loadSveltePlugin, startSharedBrowserViteServer };
|
|
429
|
+
export { type MountComponentOptions, type MountRouteOptions, type MountTreeOptions, type MountedWoodBridge, type MountedWoodComponent, type MountedWoodNavigation, type MountedWoodRoute, type MountedWoodSurface, type MountedWoodTree, type WoodBridgeFixtureContext, type WoodBridgeFixtureInput, type WoodBridgeRecordedCall, type WoodBridgeRecordedEvent, type WoodBrowserExpect, type WoodBrowserFixture, type WoodBrowserHarnessConfig, type WoodBrowserPageContext, type WoodBrowserTraceConfig, type WoodHitTestResult, type WoodRectSnapshot, type WoodRpcManifestEntryInput, type WoodSpacingAxis, type WoodViewport, browserAssertions, createBrowserBridgeFixture, createBrowserFixture, createWoodBrowserResolver, isInsideRoot, loadSveltePlugin, startSharedBrowserViteServer };
|
|
@@ -394,6 +394,12 @@ declare function createBrowserBridgeFixture(input: WoodBridgeFixtureInput | unde
|
|
|
394
394
|
manifest: RuntimeBridgeManifestEntry[];
|
|
395
395
|
bridgeInit: string;
|
|
396
396
|
};
|
|
397
|
+
/**
|
|
398
|
+
* Whether a Vite importer id belongs to the runner project. Vite hands the
|
|
399
|
+
* resolver either a filesystem path or a `/@fs/<path>` URL, possibly with a
|
|
400
|
+
* query; both forms are normalised before the ancestry check.
|
|
401
|
+
*/
|
|
402
|
+
declare function isInsideRoot(rootDir: string, importer: string): boolean;
|
|
397
403
|
declare function createWoodBrowserResolver(rootDir: string): any;
|
|
398
404
|
declare function loadSveltePlugin(rootDir: string): Promise<any | null>;
|
|
399
405
|
declare function startSharedBrowserViteServer(input: {
|
|
@@ -420,4 +426,4 @@ declare global {
|
|
|
420
426
|
}
|
|
421
427
|
}
|
|
422
428
|
|
|
423
|
-
export { type MountComponentOptions, type MountRouteOptions, type MountTreeOptions, type MountedWoodBridge, type MountedWoodComponent, type MountedWoodNavigation, type MountedWoodRoute, type MountedWoodSurface, type MountedWoodTree, type WoodBridgeFixtureContext, type WoodBridgeFixtureInput, type WoodBridgeRecordedCall, type WoodBridgeRecordedEvent, type WoodBrowserExpect, type WoodBrowserFixture, type WoodBrowserHarnessConfig, type WoodBrowserPageContext, type WoodBrowserTraceConfig, type WoodHitTestResult, type WoodRectSnapshot, type WoodRpcManifestEntryInput, type WoodSpacingAxis, type WoodViewport, browserAssertions, createBrowserBridgeFixture, createBrowserFixture, createWoodBrowserResolver, loadSveltePlugin, startSharedBrowserViteServer };
|
|
429
|
+
export { type MountComponentOptions, type MountRouteOptions, type MountTreeOptions, type MountedWoodBridge, type MountedWoodComponent, type MountedWoodNavigation, type MountedWoodRoute, type MountedWoodSurface, type MountedWoodTree, type WoodBridgeFixtureContext, type WoodBridgeFixtureInput, type WoodBridgeRecordedCall, type WoodBridgeRecordedEvent, type WoodBrowserExpect, type WoodBrowserFixture, type WoodBrowserHarnessConfig, type WoodBrowserPageContext, type WoodBrowserTraceConfig, type WoodHitTestResult, type WoodRectSnapshot, type WoodRpcManifestEntryInput, type WoodSpacingAxis, type WoodViewport, browserAssertions, createBrowserBridgeFixture, createBrowserFixture, createWoodBrowserResolver, isInsideRoot, loadSveltePlugin, startSharedBrowserViteServer };
|
package/dist/testing/browser.js
CHANGED
|
@@ -232,6 +232,13 @@ function resolvePackageDir(rootDir, packageName) {
|
|
|
232
232
|
const packageJson = resolvePackageModule(rootDir, `${packageName}/package.json`);
|
|
233
233
|
return packageJson ? path.dirname(packageJson) : null;
|
|
234
234
|
}
|
|
235
|
+
function isInsideRoot(rootDir, importer) {
|
|
236
|
+
const withoutQuery = importer.split("?")[0] ?? importer;
|
|
237
|
+
const fsPath = withoutQuery.startsWith("/@fs/") ? `/${withoutQuery.slice("/@fs/".length).replace(/^\/+/, "")}` : withoutQuery;
|
|
238
|
+
const root = path.resolve(rootDir).replace(/\\/g, "/");
|
|
239
|
+
const candidate = path.resolve(fsPath).replace(/\\/g, "/");
|
|
240
|
+
return candidate === root || candidate.startsWith(`${root}/`);
|
|
241
|
+
}
|
|
235
242
|
function createWoodBrowserResolver(rootDir) {
|
|
236
243
|
const sveltePackageDir = resolvePackageDir(rootDir, "svelte");
|
|
237
244
|
const svelteClientEntry = sveltePackageDir ? path.join(sveltePackageDir, "src", "index-client.js") : null;
|
|
@@ -240,8 +247,9 @@ function createWoodBrowserResolver(rootDir) {
|
|
|
240
247
|
return {
|
|
241
248
|
name: "wood-browser-resolver",
|
|
242
249
|
enforce: "pre",
|
|
243
|
-
resolveId(source) {
|
|
250
|
+
resolveId(source, importer) {
|
|
244
251
|
if (source.startsWith("@noego/wood/")) {
|
|
252
|
+
if (importer && isInsideRoot(rootDir, importer)) return null;
|
|
245
253
|
const resolved = resolvePackageModule(rootDir, source);
|
|
246
254
|
const esm = resolved?.endsWith(".cjs") ? resolved.replace(/\.cjs$/, ".js") : resolved;
|
|
247
255
|
return esm && fs.existsSync(esm) ? esm : null;
|
|
@@ -1539,6 +1547,7 @@ export {
|
|
|
1539
1547
|
createBrowserBridgeFixture,
|
|
1540
1548
|
createBrowserFixture,
|
|
1541
1549
|
createWoodBrowserResolver,
|
|
1550
|
+
isInsideRoot,
|
|
1542
1551
|
loadSveltePlugin,
|
|
1543
1552
|
startSharedBrowserViteServer
|
|
1544
1553
|
};
|