Switch igSendMessage, igWaitForLoaded, igRequestLoad, etc, defined globally on (window as any) to JS Modules
Is your feature request related to a problem?
The current JavaScript interop used by the full IgniteUI.Blazor package still relies on globally attached functions such as igSendMessage, igWaitForLoaded, and igRequestLoad. This makes the integration harder to evolve alongside modern Blazor JS isolation patterns and increases coupling between bootstrap logic and runtime script loading.
Describe the solution you'd like
Migrate the remaining global window-based interop hooks used by the full IgniteUI.Blazor & this package's integration to Blazor JavaScript modules / isolated JS interop. The goal is to preserve current behavior while moving package runtime interactions to module-based imports so the public package can work cleanly with the broader full-package setup and modern Blazor guidance.
Scope should include:
- identifying all remaining globally registered interop functions used by package bootstrapping and runtime communication
- replacing them with module exports and module import usage from Blazor
- verifying equivalent behavior for message dispatch, load coordination, and deferred resource loading
- ensuring the resulting design is compatible with the full IgniteUI.Blazor packaging model without exposing internal implementation details
- validating both Server and WASM scenarios if applicable
Proposed API or Usage
// Illustrative only
var module = await JS.InvokeAsync<IJSObjectReference>("import", "./_content/IgniteUI.Blazor/interop.js");
await module.InvokeVoidAsync("requestLoad", options);
await module.InvokeVoidAsync("sendMessage", payload);
Describe alternatives you've considered
No response
How important is this feature to you?
Critical — blocking my project
Additional context
This task comes from follow-up work needed to ensure the public IgniteUI/igniteui-blazor package aligns with changes required for the complete IgniteUI.Blazor distribution. The task should cover the JS interop modernization needed for compatibility.
Related context:
Switch
igSendMessage,igWaitForLoaded,igRequestLoad, etc, defined globally on(window as any)to JS ModulesIs your feature request related to a problem?
The current JavaScript interop used by the full IgniteUI.Blazor package still relies on globally attached functions such as
igSendMessage,igWaitForLoaded, andigRequestLoad. This makes the integration harder to evolve alongside modern Blazor JS isolation patterns and increases coupling between bootstrap logic and runtime script loading.Describe the solution you'd like
Migrate the remaining global window-based interop hooks used by the full IgniteUI.Blazor & this package's integration to Blazor JavaScript modules / isolated JS interop. The goal is to preserve current behavior while moving package runtime interactions to module-based imports so the public package can work cleanly with the broader full-package setup and modern Blazor guidance.
Scope should include:
Proposed API or Usage
Describe alternatives you've considered
No response
How important is this feature to you?
Critical — blocking my project
Additional context
This task comes from follow-up work needed to ensure the public
IgniteUI/igniteui-blazorpackage aligns with changes required for the complete IgniteUI.Blazor distribution. The task should cover the JS interop modernization needed for compatibility.Related context: