@modern-js/runtime 2.3.1-alpha.0 → 2.4.1-beta.0
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.
- package/CHANGELOG.md +29 -0
- package/README.md +14 -18
- package/dist/js/modern/core/compatible.js +1 -0
- package/dist/js/modern/document/Body.js +2 -2
- package/dist/js/modern/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +2 -2
- package/dist/js/modern/document/Head.js +2 -2
- package/dist/js/modern/document/Html.js +2 -2
- package/dist/js/modern/document/index.js +1 -1
- package/dist/js/modern/router/runtime/fetch.js +5 -0
- package/dist/js/modern/router/runtime/fetch.node.js +4 -0
- package/dist/js/modern/router/runtime/fetch.worker.js +5 -0
- package/dist/js/modern/router/runtime/plugin.node.js +2 -14
- package/dist/js/modern/ssr/cli/index.js +2 -2
- package/dist/js/modern/ssr/prefetch.worker.js +66 -0
- package/dist/js/modern/ssr/react/nossr/index.js +6 -2
- package/dist/js/modern/ssr/serverRender/renderToStream/index.js +1 -1
- package/dist/js/modern/ssr/serverRender/renderToStream/index.worker.js +35 -0
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.js +5 -3
- package/dist/js/modern/ssr/serverRender/renderToStream/renderToPipe.worker.js +110 -0
- package/dist/js/modern/ssr/serverRender/renderToString/entry.js +6 -7
- package/dist/js/modern/ssr/serverRender/renderToString/index.js +1 -1
- package/dist/js/modern/ssr/serverRender/renderToString/index.worker.js +49 -0
- package/dist/js/modern/ssr/serverRender/time.js +13 -0
- package/dist/js/modern/ssr/serverRender/time.worker.js +28 -0
- package/dist/js/modern/ssr/serverRender/utils.js +1 -12
- package/dist/js/node/core/compatible.js +1 -0
- package/dist/js/node/document/Body.js +2 -2
- package/dist/js/node/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +6 -6
- package/dist/js/node/document/Head.js +2 -2
- package/dist/js/node/document/Html.js +2 -2
- package/dist/js/node/document/index.js +1 -1
- package/dist/js/node/router/runtime/fetch.js +28 -0
- package/dist/js/node/router/runtime/fetch.node.js +27 -0
- package/dist/js/node/router/runtime/fetch.worker.js +28 -0
- package/dist/js/node/router/runtime/plugin.node.js +3 -15
- package/dist/js/node/ssr/cli/index.js +2 -2
- package/dist/js/node/ssr/prefetch.worker.js +87 -0
- package/dist/js/node/ssr/react/nossr/index.js +6 -2
- package/dist/js/node/ssr/serverRender/renderToStream/index.js +2 -2
- package/dist/js/node/ssr/serverRender/renderToStream/index.worker.js +64 -0
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.js +6 -2
- package/dist/js/node/ssr/serverRender/renderToStream/renderToPipe.worker.js +129 -0
- package/dist/js/node/ssr/serverRender/renderToString/entry.js +8 -9
- package/dist/js/node/ssr/serverRender/renderToString/index.js +2 -2
- package/dist/js/node/ssr/serverRender/renderToString/index.worker.js +78 -0
- package/dist/js/node/ssr/serverRender/time.js +36 -0
- package/dist/js/node/ssr/serverRender/time.worker.js +51 -0
- package/dist/js/node/ssr/serverRender/utils.js +2 -14
- package/dist/js/treeshaking/core/compatible.js +8 -7
- package/dist/js/treeshaking/core/loader/loaderManager.js +3 -3
- package/dist/js/treeshaking/core/loader/useLoader.js +15 -15
- package/dist/js/treeshaking/document/Body.js +2 -2
- package/dist/js/treeshaking/document/{DocumentStructrueContext.js → DocumentStructureContext.js} +2 -2
- package/dist/js/treeshaking/document/Head.js +2 -2
- package/dist/js/treeshaking/document/Html.js +4 -4
- package/dist/js/treeshaking/document/Root.js +2 -2
- package/dist/js/treeshaking/document/cli/index.js +4 -4
- package/dist/js/treeshaking/document/index.js +1 -1
- package/dist/js/treeshaking/router/cli/index.js +2 -2
- package/dist/js/treeshaking/router/runtime/fetch.js +2 -0
- package/dist/js/treeshaking/router/runtime/fetch.node.js +2 -0
- package/dist/js/treeshaking/router/runtime/fetch.worker.js +2 -0
- package/dist/js/treeshaking/router/runtime/plugin.js +3 -3
- package/dist/js/treeshaking/router/runtime/plugin.node.js +5 -14
- package/dist/js/treeshaking/router/runtime/utils.js +3 -3
- package/dist/js/treeshaking/ssr/cli/index.js +5 -5
- package/dist/js/treeshaking/ssr/index.js +6 -6
- package/dist/js/treeshaking/ssr/index.node.js +1 -1
- package/dist/js/treeshaking/ssr/prefetch.js +2 -2
- package/dist/js/treeshaking/ssr/prefetch.worker.js +191 -0
- package/dist/js/treeshaking/ssr/react/nossr/index.js +3 -3
- package/dist/js/treeshaking/ssr/react/prerender/index.js +2 -2
- package/dist/js/treeshaking/ssr/react/prerender/util.js +2 -2
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/bulidTemplate.before.js +2 -2
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/index.worker.js +32 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/loadable.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.js +12 -9
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/renderToPipe.worker.js +280 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToStream/template.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToString/entry.js +6 -8
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/renderToString/index.worker.js +167 -0
- package/dist/js/treeshaking/ssr/serverRender/renderToString/loadable.js +1 -1
- package/dist/js/treeshaking/ssr/serverRender/time.js +57 -0
- package/dist/js/treeshaking/ssr/serverRender/time.worker.js +75 -0
- package/dist/js/treeshaking/ssr/serverRender/utils.js +1 -57
- package/dist/js/treeshaking/ssr/utils.js +5 -5
- package/dist/js/treeshaking/state/cli/index.js +2 -2
- package/dist/js/treeshaking/state/runtime/plugin.js +3 -3
- package/dist/types/document/{DocumentStructrueContext.d.ts → DocumentStructureContext.d.ts} +2 -2
- package/dist/types/document/index.d.ts +1 -1
- package/dist/types/router/runtime/fetch.d.ts +2 -0
- package/dist/types/router/runtime/fetch.node.d.ts +2 -0
- package/dist/types/router/runtime/fetch.worker.d.ts +2 -0
- package/dist/types/ssr/prefetch.worker.d.ts +13 -0
- package/dist/types/ssr/react/nossr/index.d.ts +4 -2
- package/dist/types/ssr/serverRender/renderToStream/index.worker.d.ts +6 -0
- package/dist/types/ssr/serverRender/renderToStream/renderToPipe.d.ts +1 -1
- package/dist/types/ssr/serverRender/renderToStream/renderToPipe.worker.d.ts +8 -0
- package/dist/types/ssr/serverRender/renderToString/index.worker.d.ts +6 -0
- package/dist/types/ssr/serverRender/time.d.ts +1 -0
- package/dist/types/ssr/serverRender/time.worker.d.ts +1 -0
- package/dist/types/ssr/serverRender/utils.d.ts +2 -3
- package/package.json +13 -12
|
@@ -1,49 +1,3 @@
|
|
|
1
|
-
function _arrayLikeToArray(arr, len) {
|
|
2
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
3
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
4
|
-
return arr2;
|
|
5
|
-
}
|
|
6
|
-
function _arrayWithHoles(arr) {
|
|
7
|
-
if (Array.isArray(arr)) return arr;
|
|
8
|
-
}
|
|
9
|
-
function _iterableToArrayLimit(arr, i) {
|
|
10
|
-
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
11
|
-
if (_i == null) return;
|
|
12
|
-
var _arr = [];
|
|
13
|
-
var _n = true;
|
|
14
|
-
var _d = false;
|
|
15
|
-
var _s, _e;
|
|
16
|
-
try {
|
|
17
|
-
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
18
|
-
_arr.push(_s.value);
|
|
19
|
-
if (i && _arr.length === i) break;
|
|
20
|
-
}
|
|
21
|
-
} catch (err) {
|
|
22
|
-
_d = true;
|
|
23
|
-
_e = err;
|
|
24
|
-
} finally{
|
|
25
|
-
try {
|
|
26
|
-
if (!_n && _i["return"] != null) _i["return"]();
|
|
27
|
-
} finally{
|
|
28
|
-
if (_d) throw _e;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return _arr;
|
|
32
|
-
}
|
|
33
|
-
function _nonIterableRest() {
|
|
34
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
35
|
-
}
|
|
36
|
-
function _slicedToArray(arr, i) {
|
|
37
|
-
return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
|
|
38
|
-
}
|
|
39
|
-
function _unsupportedIterableToArray(o, minLen) {
|
|
40
|
-
if (!o) return;
|
|
41
|
-
if (typeof o === "string") return _arrayLikeToArray(o, minLen);
|
|
42
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
43
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
44
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
45
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
|
|
46
|
-
}
|
|
47
1
|
function getLoadableScripts(extractor) {
|
|
48
2
|
var check = function(scripts2) {
|
|
49
3
|
return (scripts2 || "").includes("__LOADABLE_REQUIRED_CHUNKS___ext");
|
|
@@ -56,14 +10,4 @@ function getLoadableScripts(extractor) {
|
|
|
56
10
|
return "".concat(i, "</script>");
|
|
57
11
|
}).join("");
|
|
58
12
|
}
|
|
59
|
-
|
|
60
|
-
var ref = _slicedToArray(process.hrtime(hrtime), 2), s = ref[0], ns = ref[1];
|
|
61
|
-
return s * 1e3 + ns / 1e6;
|
|
62
|
-
};
|
|
63
|
-
var time = function() {
|
|
64
|
-
var hrtime = process.hrtime();
|
|
65
|
-
return function() {
|
|
66
|
-
return getLatency(hrtime);
|
|
67
|
-
};
|
|
68
|
-
};
|
|
69
|
-
export { getLoadableScripts, time };
|
|
13
|
+
export { getLoadableScripts };
|
|
@@ -76,7 +76,7 @@ var isReact18 = function() {
|
|
|
76
76
|
return process.env.IS_REACT18 === "true";
|
|
77
77
|
};
|
|
78
78
|
var formatServer = function(request) {
|
|
79
|
-
var
|
|
79
|
+
var _ref = request.headers || {}, _ref_cookie = _ref.cookie, cookie = _ref_cookie === void 0 ? "" : _ref_cookie, tmp = _ref["user-agent"], userAgent = tmp === void 0 ? "" : tmp, referer = _ref.referer;
|
|
80
80
|
return _objectSpread({
|
|
81
81
|
cookie: cookie,
|
|
82
82
|
userAgent: userAgent,
|
|
@@ -85,7 +85,7 @@ var formatServer = function(request) {
|
|
|
85
85
|
};
|
|
86
86
|
var getQuery = function() {
|
|
87
87
|
return window.location.search.substring(1).split("&").reduce(function(res, item) {
|
|
88
|
-
var
|
|
88
|
+
var _item_split = _slicedToArray(item.split("="), 2), key = _item_split[0], value = _item_split[1];
|
|
89
89
|
if (key) {
|
|
90
90
|
res[key] = value;
|
|
91
91
|
}
|
|
@@ -93,15 +93,15 @@ var getQuery = function() {
|
|
|
93
93
|
}, {});
|
|
94
94
|
};
|
|
95
95
|
var formatClient = function(request) {
|
|
96
|
-
var
|
|
96
|
+
var _request_headers, _request_headers1;
|
|
97
97
|
return {
|
|
98
98
|
params: request.params || {},
|
|
99
99
|
host: request.host || location.host,
|
|
100
100
|
pathname: request.pathname || location.pathname,
|
|
101
101
|
headers: request.headers || {},
|
|
102
102
|
cookieMap: request.cookieMap || {},
|
|
103
|
-
cookie: ((
|
|
104
|
-
userAgent: ((
|
|
103
|
+
cookie: ((_request_headers = request.headers) === null || _request_headers === void 0 ? void 0 : _request_headers.cookie) || document.cookie,
|
|
104
|
+
userAgent: ((_request_headers1 = request.headers) === null || _request_headers1 === void 0 ? void 0 : _request_headers1["user-agent"]) || navigator.userAgent,
|
|
105
105
|
referer: request.referer || document.referrer,
|
|
106
106
|
query: request.query || getQuery(),
|
|
107
107
|
url: location.href
|
|
@@ -23,11 +23,11 @@ var cli_default = function() {
|
|
|
23
23
|
},
|
|
24
24
|
modifyEntryImports: function modifyEntryImports(param) {
|
|
25
25
|
var entrypoint = param.entrypoint, imports = param.imports;
|
|
26
|
-
var
|
|
26
|
+
var _getEntryOptions;
|
|
27
27
|
var entryName = entrypoint.entryName;
|
|
28
28
|
var userConfig = api.useResolvedConfigContext();
|
|
29
29
|
var packageName = api.useAppContext().packageName;
|
|
30
|
-
var stateConfig = (
|
|
30
|
+
var stateConfig = (_getEntryOptions = getEntryOptions(entryName, userConfig.runtime, userConfig.runtimeByEntries, packageName)) === null || _getEntryOptions === void 0 ? void 0 : _getEntryOptions.state;
|
|
31
31
|
stateConfigMap.set(entryName, stateConfig);
|
|
32
32
|
if (stateConfig) {
|
|
33
33
|
imports.push({
|
|
@@ -127,7 +127,7 @@ var getStoreConfig = function(config) {
|
|
|
127
127
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
128
128
|
try {
|
|
129
129
|
for(var _iterator = Object.entries(config)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
130
|
-
var
|
|
130
|
+
var _step_value = _slicedToArray(_step.value, 2), key = _step_value[0], value = _step_value[1];
|
|
131
131
|
if (!internalPlugins.includes(key)) {
|
|
132
132
|
storeConfig[key] = value;
|
|
133
133
|
}
|
|
@@ -172,8 +172,8 @@ var state = function(config) {
|
|
|
172
172
|
init: function init(param, next) {
|
|
173
173
|
var context = param.context;
|
|
174
174
|
if (isBrowser()) {
|
|
175
|
-
var
|
|
176
|
-
storeConfig.initialState = storeConfig.initialState || (window === null || window === void 0 ? void 0 : (
|
|
175
|
+
var _window__SSR_DATA, _window__SSR_DATA_data;
|
|
176
|
+
storeConfig.initialState = storeConfig.initialState || (window === null || window === void 0 ? void 0 : (_window__SSR_DATA = window._SSR_DATA) === null || _window__SSR_DATA === void 0 ? void 0 : (_window__SSR_DATA_data = _window__SSR_DATA.data) === null || _window__SSR_DATA_data === void 0 ? void 0 : _window__SSR_DATA_data.storeState) || {};
|
|
177
177
|
}
|
|
178
178
|
context.store = createStore(storeConfig);
|
|
179
179
|
return next({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { ReactNode } from 'react';
|
|
2
|
-
type
|
|
2
|
+
type DocumentStructureContextProps = {
|
|
3
3
|
hasSetHead?: boolean;
|
|
4
4
|
hasSetScripts?: boolean;
|
|
5
5
|
hasSetLinks?: boolean;
|
|
@@ -7,5 +7,5 @@ type DocumentStructrueContextProps = {
|
|
|
7
7
|
hasSetRoot?: boolean;
|
|
8
8
|
docChild?: ReactNode;
|
|
9
9
|
};
|
|
10
|
-
export declare const
|
|
10
|
+
export declare const DocumentStructureContext: React.Context<DocumentStructureContextProps>;
|
|
11
11
|
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { RuntimeContext } from '../core';
|
|
2
|
+
declare const prefetch: (App: React.ComponentType<any>, context: RuntimeContext) => Promise<{
|
|
3
|
+
initialData: Record<string, unknown> | undefined;
|
|
4
|
+
i18nData: any;
|
|
5
|
+
loadersData?: undefined;
|
|
6
|
+
storeState?: undefined;
|
|
7
|
+
} | {
|
|
8
|
+
loadersData: Record<string, import("../core/loader/loaderManager").LoaderResult>;
|
|
9
|
+
initialData: Record<string, unknown> | undefined;
|
|
10
|
+
i18nData: any;
|
|
11
|
+
storeState: any;
|
|
12
|
+
}>;
|
|
13
|
+
export default prefetch;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export declare const NoSSR: (props: React.PropsWithChildren<
|
|
1
|
+
import React, { ReactElement } from 'react';
|
|
2
|
+
export declare const NoSSR: (props: React.PropsWithChildren<{
|
|
3
|
+
fallback?: ReactElement | string;
|
|
4
|
+
}>) => React.FunctionComponentElement<{
|
|
3
5
|
children?: React.ReactNode;
|
|
4
6
|
}>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="react" />
|
|
3
3
|
import { Writable } from 'stream';
|
|
4
|
-
import { RenderToPipeableStreamOptions } from 'react-dom/server';
|
|
4
|
+
import type { RenderToPipeableStreamOptions } from 'react-dom/server';
|
|
5
5
|
import { RuntimeContext } from '../types';
|
|
6
6
|
export type Pipe<T extends Writable> = (output: T) => Promise<T | string>;
|
|
7
7
|
declare function renderToPipe(rootElement: React.ReactElement, context: RuntimeContext, options?: RenderToPipeableStreamOptions): Pipe<Writable>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="react" />
|
|
3
|
+
import type { Writable } from 'stream';
|
|
4
|
+
import type { RenderToReadableStreamOptions } from 'react-dom/server';
|
|
5
|
+
import { RuntimeContext } from '../types';
|
|
6
|
+
export type Pipe<T extends Writable> = (output: T) => Promise<T | string>;
|
|
7
|
+
declare function renderToPipe(rootElement: React.ReactElement, context: RuntimeContext, options?: RenderToReadableStreamOptions): Pipe<Writable>;
|
|
8
|
+
export default renderToPipe;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const time: () => () => number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const time: () => () => number;
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import { ChunkExtractor } from '@loadable/server';
|
|
2
|
-
export declare function getLoadableScripts(extractor: ChunkExtractor): string;
|
|
3
|
-
export declare const time: () => () => number;
|
|
1
|
+
import type { ChunkExtractor } from '@loadable/server';
|
|
2
|
+
export declare function getLoadableScripts(extractor: ChunkExtractor): string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@modern-js/runtime",
|
|
3
|
-
"description": "
|
|
3
|
+
"description": "A Progressive React Framework for modern web development.",
|
|
4
4
|
"homepage": "https://modernjs.dev",
|
|
5
5
|
"bugs": "https://github.com/modern-js-dev/modern.js/issues",
|
|
6
6
|
"repository": "modern-js-dev/modern.js",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"modern",
|
|
12
12
|
"modern.js"
|
|
13
13
|
],
|
|
14
|
-
"version": "2.
|
|
14
|
+
"version": "2.4.1-beta.0",
|
|
15
15
|
"engines": {
|
|
16
16
|
"node": ">=14.17.6"
|
|
17
17
|
},
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"./ssr": {
|
|
56
56
|
"jsnext:source": "./src/ssr/index.ts",
|
|
57
57
|
"node": "./dist/js/treeshaking/ssr/index.node.js",
|
|
58
|
+
"worker": "./dist/js/treeshaking/ssr/index.node.js",
|
|
58
59
|
"default": "./dist/js/treeshaking/ssr/index.js"
|
|
59
60
|
},
|
|
60
61
|
"./model": {
|
|
@@ -131,9 +132,6 @@
|
|
|
131
132
|
"@modern-js-reduck/plugin-immutable": "^1.1.4",
|
|
132
133
|
"@modern-js-reduck/react": "^1.1.4",
|
|
133
134
|
"@modern-js-reduck/store": "^1.1.4",
|
|
134
|
-
"@modern-js/plugin": "2.3.0",
|
|
135
|
-
"@modern-js/types": "2.3.0",
|
|
136
|
-
"@modern-js/utils": "2.3.0",
|
|
137
135
|
"@remix-run/node": "^1.9.0",
|
|
138
136
|
"@remix-run/router": "^1.2.0",
|
|
139
137
|
"@types/loadable__component": "^5.13.4",
|
|
@@ -149,19 +147,17 @@
|
|
|
149
147
|
"redux-logger": "^3.0.6",
|
|
150
148
|
"serialize-javascript": "^6.0.0",
|
|
151
149
|
"styled-components": "^5.3.1",
|
|
152
|
-
"esbuild": "0.15.7"
|
|
150
|
+
"esbuild": "0.15.7",
|
|
151
|
+
"@modern-js/plugin": "2.4.0",
|
|
152
|
+
"@modern-js/types": "2.4.0",
|
|
153
|
+
"@modern-js/utils": "2.4.1-beta.0"
|
|
153
154
|
},
|
|
154
155
|
"peerDependencies": {
|
|
155
156
|
"react": ">=17",
|
|
156
157
|
"react-dom": ">=17"
|
|
157
158
|
},
|
|
158
159
|
"devDependencies": {
|
|
159
|
-
"@modern-js/app-tools": "2.3.0",
|
|
160
|
-
"@modern-js/core": "2.3.0",
|
|
161
|
-
"@modern-js/server-core": "2.3.0",
|
|
162
160
|
"@remix-run/web-fetch": "^4.1.3",
|
|
163
|
-
"@scripts/build": "2.3.0",
|
|
164
|
-
"@scripts/jest-config": "2.3.0",
|
|
165
161
|
"@testing-library/react": "^13.4.0",
|
|
166
162
|
"@testing-library/react-hooks": "^8.0.1",
|
|
167
163
|
"@types/invariant": "^2.2.30",
|
|
@@ -174,7 +170,12 @@
|
|
|
174
170
|
"react": "^18",
|
|
175
171
|
"react-dom": "^18",
|
|
176
172
|
"ts-jest": "^27.0.4",
|
|
177
|
-
"typescript": "^4"
|
|
173
|
+
"typescript": "^4",
|
|
174
|
+
"@modern-js/app-tools": "3.0.0-beta.0",
|
|
175
|
+
"@modern-js/core": "2.4.1-beta.0",
|
|
176
|
+
"@modern-js/server-core": "2.4.1-beta.0",
|
|
177
|
+
"@scripts/jest-config": "2.4.0",
|
|
178
|
+
"@scripts/build": "2.4.0"
|
|
178
179
|
},
|
|
179
180
|
"sideEffects": false,
|
|
180
181
|
"modernConfig": {},
|