@absolutejs/absolute 0.19.0-beta.734 → 0.19.0-beta.736

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.
@@ -3962,6 +3962,11 @@ var propProviders = Object.entries(pageProps).map(function(entry) {
3962
3962
  var token = pageModule[toScreamingSnake(propName)];
3963
3963
  return isInjectionToken(token) ? { provide: token, useValue: propValue } : null;
3964
3964
  }).filter(Boolean);
3965
+ // Page-level providers, opt-in via \`export const providers = [...]\` in the
3966
+ // page module. Required so DI tokens that the component (or any service it
3967
+ // injects) needs are available client-side too \u2014 without these, services
3968
+ // that worked in SSR fail with NG0201 after hydration.
3969
+ var pageProviders = Array.isArray(pageModule.providers) ? pageModule.providers : [];
3965
3970
 
3966
3971
  // Re-Bootstrap HMR with View Transitions API
3967
3972
  if (window.__ANGULAR_APP__) {
@@ -3980,6 +3985,7 @@ if (!window.__HMR_SKIP_HYDRATION__ && !pageHasIslands) {
3980
3985
  providers.push(provideClientHydration());
3981
3986
  }
3982
3987
  delete window.__HMR_SKIP_HYDRATION__;
3988
+ providers.push.apply(providers, pageProviders);
3983
3989
  providers.push.apply(providers, propProviders);
3984
3990
  window.__ABS_SLOT_HYDRATION_PENDING__ = pageHasRawStreamingSlots;
3985
3991
 
@@ -4027,10 +4033,15 @@ var propProviders = Object.entries(pageProps).map(function(entry) {
4027
4033
  var token = pageModule[toScreamingSnake(propName)];
4028
4034
  return isInjectionToken(token) ? { provide: token, useValue: propValue } : null;
4029
4035
  }).filter(Boolean);
4036
+ // Page-level providers, opt-in via \`export const providers = [...]\` in the
4037
+ // page module. Required so DI tokens that the component (or any service it
4038
+ // injects) needs are available client-side too \u2014 without these, services
4039
+ // that worked in SSR fail with NG0201 after hydration.
4040
+ var pageProviders = Array.isArray(pageModule.providers) ? pageModule.providers : [];
4030
4041
 
4031
4042
  enableProdMode();
4032
4043
 
4033
- var providers = [provideZonelessChangeDetection()].concat(propProviders);
4044
+ var providers = [provideZonelessChangeDetection()].concat(pageProviders).concat(propProviders);
4034
4045
  if (!pageHasIslands) {
4035
4046
  providers.unshift(provideClientHydration());
4036
4047
  }
@@ -14310,5 +14321,5 @@ export {
14310
14321
  Island
14311
14322
  };
14312
14323
 
14313
- //# debugId=F8A760DCE8615D8764756E2164756E21
14324
+ //# debugId=CF6C34DE29113CA964756E2164756E21
14314
14325
  //# sourceMappingURL=index.js.map