angular/packages/platform-server
arturovt 624be2ef0c fix(core): prevent stash listener conflicts (#59635)
The stash event listener is a global function that might be unsafely overridden if multiple microfrontend applications exist on the page.

In this commit, we create a map of `APP_ID` to stash event listener functions. This map prevents conflicts because multiple applications might be bootstrapped simultaneously on the client (one rendered on the server and one rendering only on the client).

I.e., the code that might be used is:

```ts
// Given that `app-root` is rendered on the server
bootstrapApplication(AppComponent, appConfig);

bootstrapApplication(BlogRootComponent, appBlogConfig);
```

Two bootstrapped applications would conflict and override each other's code.

PR Close #59635
2025-04-30 08:53:06 -07:00
..
init feat(bazel): support bundling .d.ts with code splitting (#60321) 2025-03-11 13:03:08 -07:00
src refactor(platform-server): expose internal render method for extensibility (#60416) 2025-03-18 10:31:44 +01:00
test fix(core): prevent stash listener conflicts (#59635) 2025-04-30 08:53:06 -07:00
testing refactor(platform-server): deprecate the testing entry point (#60915) 2025-04-22 11:02:26 +02:00
BUILD.bazel feat(bazel): support shared chunks in ng_package (#60241) 2025-03-06 10:29:05 -08:00
index.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
package.json feat(core): update Node.js version support (#60545) 2025-03-26 20:42:16 -07:00
PACKAGE.md docs: drop glossary links (#55044) 2024-03-28 13:02:50 -07:00
public_api.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00