Skip to content

Commit 9949ab4

Browse files
authored
Fixup JS (#21922)
* Fixup JS * Avoid monkey patching
1 parent 8efeefb commit 9949ab4

File tree

6 files changed

+13
-8
lines changed

6 files changed

+13
-8
lines changed

src/Components/Shared/src/BrowserNavigationManagerInterop.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ internal static class BrowserNavigationManagerInterop
1010

1111
public static readonly string EnableNavigationInterception = Prefix + "enableNavigationInterception";
1212

13-
public static readonly string GetLocationHref = Prefix + "getLocationHref";
13+
public static readonly string GetLocationHref = Prefix + "getUnmarshalledLocationHref";
1414

15-
public static readonly string GetBaseUri = Prefix + "getBaseURI";
15+
public static readonly string GetBaseUri = Prefix + "getUnmarshalledBaseURI";
1616

1717
public static readonly string NavigateTo = Prefix + "navigateTo";
1818
}

src/Components/Web.JS/dist/Release/blazor.server.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Components/Web.JS/dist/Release/blazor.webassembly.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Components/Web.JS/src/Boot.WebAssembly.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ async function boot(options?: Partial<WebAssemblyStartOptions>): Promise<void> {
3131
};
3232

3333
// Configure navigation via JS Interop
34+
const getBaseUri = window['Blazor']._internal.navigationManager.getBaseURI;
35+
const getLocationHref = window['Blazor']._internal.navigationManager.getLocationHref;
36+
window['Blazor']._internal.navigationManager.getUnmarshalledBaseURI = () => BINDING.js_string_to_mono_string(getBaseUri());
37+
window['Blazor']._internal.navigationManager.getUnmarshalledLocationHref = () => BINDING.js_string_to_mono_string(getLocationHref());
38+
3439
window['Blazor']._internal.navigationManager.listenForNavigationEvents(async (uri: string, intercepted: boolean): Promise<void> => {
3540
await DotNet.invokeMethodAsync(
3641
'Microsoft.AspNetCore.Components.WebAssembly',

src/Components/Web.JS/src/Services/NavigationManager.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ export const internalFunctions = {
1313
listenForNavigationEvents,
1414
enableNavigationInterception,
1515
navigateTo,
16-
getBaseURI: () => BINDING.js_string_to_mono_string(document.baseURI),
17-
getLocationHref: () => BINDING.js_string_to_mono_string(location.href),
16+
getBaseURI: () => document.baseURI,
17+
getLocationHref: () => location.href,
1818
};
1919

2020
function listenForNavigationEvents(callback: (uri: string, intercepted: boolean) => Promise<void>) {

src/Components/Web.JS/tests/DefaultReconnectionHandler.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import '../src/GlobalExports';
22
import { UserSpecifiedDisplay } from '../src/Platform/Circuits/UserSpecifiedDisplay';
33
import { DefaultReconnectionHandler } from '../src/Platform/Circuits/DefaultReconnectionHandler';
44
import { NullLogger} from '../src/Platform/Logging/Loggers';
5-
import { resolveOptions, ReconnectionOptions } from "../src/Platform/Circuits/BlazorOptions";
5+
import { resolveOptions, ReconnectionOptions } from "../src/Platform/Circuits/CircuitStartOptions";
66
import { ReconnectDisplay } from '../src/Platform/Circuits/ReconnectDisplay';
77

88
const defaultReconnectionOptions = resolveOptions().reconnectionOptions;

0 commit comments

Comments
 (0)