diff --git a/.changeset/short-rules-begin.md b/.changeset/short-rules-begin.md new file mode 100644 index 0000000000..9996f23161 --- /dev/null +++ b/.changeset/short-rules-begin.md @@ -0,0 +1,7 @@ +--- +"@ima/react-page-renderer": major +"@ima/server": major +"@ima/core": major +--- + +Removed $IMA.$Path without any replacements since it imposed security riscs diff --git a/packages/core/src/Bootstrap.ts b/packages/core/src/Bootstrap.ts index c2bf1aa4fc..de09281d2c 100644 --- a/packages/core/src/Bootstrap.ts +++ b/packages/core/src/Bootstrap.ts @@ -89,7 +89,6 @@ export type BootSettings = Pick< | '$Protocol' | '$Language' | '$Host' - | '$Path' | '$Root' | '$LanguagePartPath' >; @@ -102,7 +101,6 @@ export interface BootServices { router: { $Protocol: GlobalImaObject['$Protocol']; $Host: GlobalImaObject['$Host']; - $Path: GlobalImaObject['$Path']; $Root: GlobalImaObject['$Root']; $LanguagePartPath: GlobalImaObject['$LanguagePartPath']; }; diff --git a/packages/core/src/boot.ts b/packages/core/src/boot.ts index 121171ba4e..55d0ddd417 100644 --- a/packages/core/src/boot.ts +++ b/packages/core/src/boot.ts @@ -222,7 +222,6 @@ export function getClientBootConfig( router: { $Protocol: $IMA.$Protocol, $Host: $IMA.$Host, - $Path: $IMA.$Path, $Root: $IMA.$Root, $LanguagePartPath: $IMA.$LanguagePartPath, }, @@ -237,7 +236,6 @@ export function getClientBootConfig( $Protocol: $IMA.$Protocol, $Language: $IMA.$Language, $Host: $IMA.$Host, - $Path: $IMA.$Path, $Root: $IMA.$Root, $LanguagePartPath: $IMA.$LanguagePartPath, }, diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index e9bdaa6a79..dd9018da89 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -56,7 +56,6 @@ export interface GlobalImaObject { $Debug: boolean; $Protocol: 'http:' | 'https:'; $Host: string; - $Path: string; $Root: string; $LanguagePartPath: string; Runner: object; diff --git a/packages/react-page-renderer/src/renderer/__tests__/ClientPageRendererSpec.ts b/packages/react-page-renderer/src/renderer/__tests__/ClientPageRendererSpec.ts index 434b24862f..dfffe3237d 100644 --- a/packages/react-page-renderer/src/renderer/__tests__/ClientPageRendererSpec.ts +++ b/packages/react-page-renderer/src/renderer/__tests__/ClientPageRendererSpec.ts @@ -66,7 +66,6 @@ const settings = { $Host: undefined, $Language: undefined, $LanguagePartPath: undefined, - $Path: undefined, $Page: { $Render: { documentView: DocumentView, diff --git a/packages/react-page-renderer/src/renderer/__tests__/ServerPageRendererSpec.ts b/packages/react-page-renderer/src/renderer/__tests__/ServerPageRendererSpec.ts index d0b623f0e8..dfcd19c7c8 100644 --- a/packages/react-page-renderer/src/renderer/__tests__/ServerPageRendererSpec.ts +++ b/packages/react-page-renderer/src/renderer/__tests__/ServerPageRendererSpec.ts @@ -37,7 +37,6 @@ const settings = { $Host: undefined, $Language: undefined, $LanguagePartPath: undefined, - $Path: undefined, $Page: { $Render: { documentView: DocumentView, diff --git a/packages/server/lib/factory/IMAInternalFactory.js b/packages/server/lib/factory/IMAInternalFactory.js index 165823c877..7052b25392 100644 --- a/packages/server/lib/factory/IMAInternalFactory.js +++ b/packages/server/lib/factory/IMAInternalFactory.js @@ -102,20 +102,13 @@ module.exports = function IMAInternalFactory({ } const dummyApp = serverGlobal.get(GLOBAL.DUMMY_APP); - const { - protocol, - host, - path: urlPath, - root, - languagePartPath, - } = res.locals; + const { protocol, host, root, languagePartPath } = res.locals; dummyApp.oc.get('$Request').init(req); dummyApp.oc.get('$Response').init(res); dummyApp.oc.get('$Router').init({ $Protocol: protocol, $Host: host, - $Path: urlPath, $Root: root, $LanguagePartPath: languagePartPath, }); @@ -177,7 +170,6 @@ module.exports = function IMAInternalFactory({ let languagePartPath = res.locals.languagePartPath; let host = res.locals.host; let root = res.locals.root; - let urlPath = res.locals.path; let protocol = res.locals.protocol; let dictionary = language ? languageLoader(language) : {}; @@ -194,7 +186,6 @@ module.exports = function IMAInternalFactory({ router: { $Protocol: protocol, $Host: host, - $Path: urlPath, $Root: root, $LanguagePartPath: languagePartPath, }, @@ -208,7 +199,6 @@ module.exports = function IMAInternalFactory({ $Protocol: protocol, $Language: language, $Host: host, - $Path: urlPath, $Root: root, $LanguagePartPath: languagePartPath, }, diff --git a/packages/server/lib/factory/__tests__/__snapshots__/responseUtilsFactorySpec.js.snap b/packages/server/lib/factory/__tests__/__snapshots__/responseUtilsFactorySpec.js.snap index 47a7cf9107..83a4aa17a0 100644 --- a/packages/server/lib/factory/__tests__/__snapshots__/responseUtilsFactorySpec.js.snap +++ b/packages/server/lib/factory/__tests__/__snapshots__/responseUtilsFactorySpec.js.snap @@ -406,7 +406,6 @@ exports[`responseUtilsFactory createContentVariables should generate base set of $IMA.$App = undefined; $IMA.$Protocol = "undefined"; $IMA.$Host = "undefined"; - $IMA.$Path = "undefined"; $IMA.$Root = "undefined"; $IMA.$LanguagePartPath = "undefined"; })(typeof window !== 'undefined' && window !== null ? window : global); @@ -431,7 +430,6 @@ exports[`responseUtilsFactory processContent should allow overrides through cust $IMA.$App = undefined; $IMA.$Protocol = "undefined"; $IMA.$Host = "undefined"; - $IMA.$Path = "undefined"; $IMA.$Root = "undefined"; $IMA.$LanguagePartPath = "undefined"; })(typeof window !== 'undefined' && window !== null ? window : global); @@ -452,7 +450,6 @@ exports[`responseUtilsFactory processContent should interpolate revival scripts $IMA.$App = undefined; $IMA.$Protocol = "undefined"; $IMA.$Host = "undefined"; - $IMA.$Path = "undefined"; $IMA.$Root = "undefined"; $IMA.$LanguagePartPath = "undefined"; })(typeof window !== 'undefined' && window !== null ? window : global); diff --git a/packages/server/lib/factory/responseUtilsFactory.js b/packages/server/lib/factory/responseUtilsFactory.js index 65160456c4..ba02037ebb 100644 --- a/packages/server/lib/factory/responseUtilsFactory.js +++ b/packages/server/lib/factory/responseUtilsFactory.js @@ -57,7 +57,6 @@ module.exports = function responseUtilsFactory({ applicationFolder }) { settings.$Protocol && encodeHTMLEntities(settings.$Protocol) }"; $IMA.$Host = "${settings.$Host && encodeHTMLEntities(settings.$Host)}"; - $IMA.$Path = "${settings.$Path && encodeHTMLEntities(settings.$Path)}"; $IMA.$Root = "${settings.$Root && encodeHTMLEntities(settings.$Root)}"; $IMA.$LanguagePartPath = "${ settings.$LanguagePartPath &&