@tramvai/module-child-app 2.24.1 → 2.25.1

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.
@@ -1,7 +1,2 @@
1
1
  import type { Provider } from '@tinkoff/dippy';
2
- declare global {
3
- interface Window {
4
- childAppInitialState: string;
5
- }
6
- }
7
2
  export declare const browserProviders: Provider[];
@@ -331,7 +331,7 @@ const RenderContext = createContext(null);
331
331
 
332
332
  const extendRender = ({ renderManager, }) => {
333
333
  return (render) => {
334
- return jsx(RenderContext.Provider, Object.assign({ value: renderManager }, { children: render }), void 0);
334
+ return jsx(RenderContext.Provider, { value: renderManager, children: render });
335
335
  };
336
336
  };
337
337
 
@@ -833,6 +833,8 @@ const runCommand = async ({ status, runner, preloader, }) => {
833
833
  }));
834
834
  };
835
835
 
836
+ const GLOBAL_CHILD_STATE = '__TRAMVAI_CHILD_STATE__';
837
+
836
838
  const browserProviders = [
837
839
  provide({
838
840
  provide: CHILD_APP_LOADER_TOKEN,
@@ -855,7 +857,7 @@ const browserProviders = [
855
857
  }),
856
858
  provide({
857
859
  provide: CHILD_APP_COMMON_INITIAL_STATE_TOKEN,
858
- useFactory: () => JSON.parse(window.childAppInitialState || '{}'),
860
+ useFactory: () => JSON.parse(document.getElementById(GLOBAL_CHILD_STATE).textContent || '{}'),
859
861
  }),
860
862
  provide({
861
863
  provide: CHILD_APP_RENDER_MANAGER_TOKEN,
package/lib/server.es.js CHANGED
@@ -13,7 +13,7 @@ import { jsx } from 'react/jsx-runtime';
13
13
  import { createContext, useContext, useMemo, useState, useEffect, createElement } from 'react';
14
14
  import applyOrReturn from '@tinkoff/utils/function/applyOrReturn';
15
15
  import { combineValidators, isUrl, endsWith } from '@tinkoff/env-validators';
16
- import { safeDehydrate } from '@tramvai/safe-strings';
16
+ import { safeStringify } from '@tramvai/safe-strings';
17
17
  import { ServerLoader as ServerLoader$1 } from '@tinkoff/module-loader-server';
18
18
  import noop from '@tinkoff/utils/function/noop';
19
19
 
@@ -269,7 +269,7 @@ const RenderContext = createContext(null);
269
269
 
270
270
  const extendRender = ({ renderManager, }) => {
271
271
  return (render) => {
272
- return jsx(RenderContext.Provider, Object.assign({ value: renderManager }, { children: render }), void 0);
272
+ return jsx(RenderContext.Provider, { value: renderManager, children: render });
273
273
  };
274
274
  };
275
275
 
@@ -838,6 +838,8 @@ const registerChildAppRenderSlots = ({ logger, diManager, resolveFullConfig, pre
838
838
  return result;
839
839
  };
840
840
 
841
+ const GLOBAL_CHILD_STATE = '__TRAMVAI_CHILD_STATE__';
842
+
841
843
  const serverProviders = [
842
844
  provide({
843
845
  provide: ENV_USED_TOKEN,
@@ -885,9 +887,9 @@ const serverProviders = [
885
887
  useFactory: ({ stateManager, preloader, store }) => {
886
888
  store.dispatch(setPreloaded(preloader.getPreloadedList()));
887
889
  return {
888
- type: ResourceType.inlineScript,
890
+ type: ResourceType.asIs,
889
891
  slot: ResourceSlot.BODY_END,
890
- payload: `var childAppInitialState = '${safeDehydrate(stateManager.getState())}'`,
892
+ payload: `<script id="${GLOBAL_CHILD_STATE}" type="application/json">${safeStringify(stateManager.getState())}</script>`,
891
893
  };
892
894
  },
893
895
  deps: {
package/lib/server.js CHANGED
@@ -278,7 +278,7 @@ const RenderContext = react.createContext(null);
278
278
 
279
279
  const extendRender = ({ renderManager, }) => {
280
280
  return (render) => {
281
- return jsxRuntime.jsx(RenderContext.Provider, Object.assign({ value: renderManager }, { children: render }), void 0);
281
+ return jsxRuntime.jsx(RenderContext.Provider, { value: renderManager, children: render });
282
282
  };
283
283
  };
284
284
 
@@ -847,6 +847,8 @@ const registerChildAppRenderSlots = ({ logger, diManager, resolveFullConfig, pre
847
847
  return result;
848
848
  };
849
849
 
850
+ const GLOBAL_CHILD_STATE = '__TRAMVAI_CHILD_STATE__';
851
+
850
852
  const serverProviders = [
851
853
  core.provide({
852
854
  provide: tokensCommon.ENV_USED_TOKEN,
@@ -894,9 +896,9 @@ const serverProviders = [
894
896
  useFactory: ({ stateManager, preloader, store }) => {
895
897
  store.dispatch(setPreloaded(preloader.getPreloadedList()));
896
898
  return {
897
- type: tokensRender.ResourceType.inlineScript,
899
+ type: tokensRender.ResourceType.asIs,
898
900
  slot: tokensRender.ResourceSlot.BODY_END,
899
- payload: `var childAppInitialState = '${safeStrings.safeDehydrate(stateManager.getState())}'`,
901
+ payload: `<script id="${GLOBAL_CHILD_STATE}" type="application/json">${safeStrings.safeStringify(stateManager.getState())}</script>`,
900
902
  };
901
903
  },
902
904
  deps: {
@@ -0,0 +1 @@
1
+ export declare const GLOBAL_CHILD_STATE = "__TRAMVAI_CHILD_STATE__";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/module-child-app",
3
- "version": "2.24.1",
3
+ "version": "2.25.1",
4
4
  "description": "Module for child apps",
5
5
  "browser": {
6
6
  "./lib/server.js": "./lib/browser.js",
@@ -28,27 +28,27 @@
28
28
  "registry": "https://registry.npmjs.org/"
29
29
  },
30
30
  "dependencies": {
31
- "@tinkoff/env-validators": "0.1.2",
32
- "@tinkoff/module-loader-client": "0.4.2",
33
- "@tinkoff/module-loader-server": "0.5.2",
34
- "@tramvai/child-app-core": "2.24.1",
35
- "@tramvai/safe-strings": "0.5.2",
36
- "@tramvai/tokens-child-app": "2.24.1"
31
+ "@tinkoff/env-validators": "0.1.3",
32
+ "@tinkoff/module-loader-client": "0.4.3",
33
+ "@tinkoff/module-loader-server": "0.5.3",
34
+ "@tramvai/child-app-core": "2.25.1",
35
+ "@tramvai/safe-strings": "0.5.4",
36
+ "@tramvai/tokens-child-app": "2.25.1"
37
37
  },
38
38
  "devDependencies": {},
39
39
  "peerDependencies": {
40
- "@tinkoff/dippy": "0.8.2",
40
+ "@tinkoff/dippy": "0.8.5",
41
41
  "@tinkoff/utils": "^2.1.2",
42
- "@tramvai/core": "2.24.1",
43
- "@tramvai/state": "2.24.1",
44
- "@tramvai/react": "2.24.1",
45
- "@tramvai/tokens-common": "2.24.1",
46
- "@tramvai/tokens-render": "2.24.1",
47
- "@tramvai/tokens-router": "2.24.1",
42
+ "@tramvai/core": "2.25.1",
43
+ "@tramvai/state": "2.25.1",
44
+ "@tramvai/react": "2.25.1",
45
+ "@tramvai/tokens-common": "2.25.1",
46
+ "@tramvai/tokens-render": "2.25.1",
47
+ "@tramvai/tokens-router": "2.25.1",
48
48
  "react": ">=16.14.0",
49
49
  "react-dom": ">=16.14.0",
50
50
  "object-assign": "^4.1.1",
51
- "tslib": "^2.0.3"
51
+ "tslib": "^2.4.0"
52
52
  },
53
53
  "module": "lib/server.es.js"
54
54
  }