Replace serialize-javascript by JSON.serialize
Signed-off-by: David Festal <dfestal@redhat.com>
This commit is contained in:
@@ -39,14 +39,12 @@
|
||||
"@backstage/config": "workspace:^",
|
||||
"@backstage/errors": "workspace:^",
|
||||
"@backstage/types": "workspace:^",
|
||||
"@module-federation/runtime": "^0.21.6",
|
||||
"serialize-javascript": "^6.0.0"
|
||||
"@module-federation/runtime": "^0.21.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@backstage/cli": "workspace:^",
|
||||
"@backstage/test-utils": "workspace:^",
|
||||
"@types/react": "^18.0.0",
|
||||
"@types/serialize-javascript": "^5.0.4",
|
||||
"react": "^18.0.2",
|
||||
"react-dom": "^18.0.2",
|
||||
"react-router-dom": "^6.3.0"
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
|
||||
import { Host, Runtime, SharedDependencies } from './types';
|
||||
import { default as serialize } from 'serialize-javascript';
|
||||
import type { UserOptions } from '@module-federation/runtime/types';
|
||||
import { ForwardedError } from '@backstage/errors';
|
||||
|
||||
@@ -37,7 +36,8 @@ const BACKSTAGE_RUNTIME_SHARED_DEPENDENCIES_GLOBAL =
|
||||
export function prepareRuntimeSharedDependenciesScript(
|
||||
hostSharedDependencies: SharedDependencies<Host & { version: string }>,
|
||||
) {
|
||||
const runtimeSharedDependencies: SharedDependencies<Host & Runtime> =
|
||||
type StringModule = Omit<Runtime, 'module'> & { module: string };
|
||||
const runtimeSharedDependencies: SharedDependencies<Host & StringModule> =
|
||||
Object.fromEntries(
|
||||
Object.entries(hostSharedDependencies).map(([name, sharedDep]) => [
|
||||
name,
|
||||
@@ -48,20 +48,18 @@ export function prepareRuntimeSharedDependenciesScript(
|
||||
? { singleton: sharedDep.singleton }
|
||||
: {}),
|
||||
...(sharedDep.eager !== undefined ? { eager: sharedDep.eager } : {}),
|
||||
// eslint-disable-next-line no-new-func
|
||||
module: new Function(
|
||||
`return () => import('${name}')`,
|
||||
)() as () => Promise<any>,
|
||||
module: `() => import('${name}')`,
|
||||
},
|
||||
]),
|
||||
);
|
||||
|
||||
return `window['${BACKSTAGE_RUNTIME_SHARED_DEPENDENCIES_GLOBAL}'] = ${serialize(
|
||||
return `window['${BACKSTAGE_RUNTIME_SHARED_DEPENDENCIES_GLOBAL}'] = ${JSON.stringify(
|
||||
runtimeSharedDependencies,
|
||||
{
|
||||
space: 2,
|
||||
unsafe: true,
|
||||
},
|
||||
null,
|
||||
2,
|
||||
).replace(
|
||||
/(^\s+"module":\s*)"([^"]+)"$/gm,
|
||||
(_, start, unquoted) => `${start}${unquoted}`,
|
||||
)};`;
|
||||
}
|
||||
|
||||
|
||||
@@ -4059,11 +4059,9 @@ __metadata:
|
||||
"@backstage/types": "workspace:^"
|
||||
"@module-federation/runtime": "npm:^0.21.6"
|
||||
"@types/react": "npm:^18.0.0"
|
||||
"@types/serialize-javascript": "npm:^5.0.4"
|
||||
react: "npm:^18.0.2"
|
||||
react-dom: "npm:^18.0.2"
|
||||
react-router-dom: "npm:^6.3.0"
|
||||
serialize-javascript: "npm:^6.0.0"
|
||||
peerDependencies:
|
||||
"@emotion/react": ^11.10.5
|
||||
"@material-ui/core": ^4.12.2
|
||||
@@ -22050,13 +22048,6 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@types/serialize-javascript@npm:^5.0.4":
|
||||
version: 5.0.4
|
||||
resolution: "@types/serialize-javascript@npm:5.0.4"
|
||||
checksum: 10/c342a4d151736c1ba4913e6d9b00537bcf62401a06e3489dcf96b7d51a4ab147efcf3fe20ca9491b1349ee7e55c6d69606682e1630f2e076e2828eaee3764f94
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@types/serve-handler@npm:^6.1.0":
|
||||
version: 6.1.4
|
||||
resolution: "@types/serve-handler@npm:6.1.4"
|
||||
@@ -46061,7 +46052,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"serialize-javascript@npm:^6.0.0, serialize-javascript@npm:^6.0.2":
|
||||
"serialize-javascript@npm:^6.0.2":
|
||||
version: 6.0.2
|
||||
resolution: "serialize-javascript@npm:6.0.2"
|
||||
dependencies:
|
||||
|
||||
Reference in New Issue
Block a user