From 961aebc8a7b9f7da7165fb64841c952ed55c643b Mon Sep 17 00:00:00 2001 From: Alex Karmanov Date: Thu, 5 Sep 2024 14:49:02 -0400 Subject: [PATCH] QA-15259 Use ce language if ctx not available (#1748) * QA-15259 Use ce language if ctx not available * QA-15259 Fix test --- .../Picker/actions/openInTabAction.js | 6 +++++- .../Picker/actions/openInTabAction.spec.js | 17 +++++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/javascript/SelectorTypes/Picker/actions/openInTabAction.js b/src/javascript/SelectorTypes/Picker/actions/openInTabAction.js index 9b055f8bb..eb2e065ce 100644 --- a/src/javascript/SelectorTypes/Picker/actions/openInTabAction.js +++ b/src/javascript/SelectorTypes/Picker/actions/openInTabAction.js @@ -4,9 +4,13 @@ import {Constants} from '~/ContentEditor.constants'; import {useContentEditorContext} from '~/contexts'; import {useQuery} from '@apollo/react-hooks'; import {OpenInTabActionQuery} from '~/SelectorTypes/Picker/actions/openInTabAction.gql-queries'; +import {useSelector} from 'react-redux'; export const OpenInTabActionComponent = ({render: Render, loading: Loading, path, field, inputContext, ...others}) => { const {lang} = useContentEditorContext(); + const {ceLang} = useSelector(state => ({ + ceLang: state.contenteditor.ceLanguage + })); let uuid; if (path === undefined) { @@ -31,7 +35,7 @@ export const OpenInTabActionComponent = ({render: Render, loading: Loading, path { - window.open(`${window.contextJsParameters.urlbase}/${Constants.appName}/${lang}/${Constants.routes.baseEditRoute}/${uuid}`, '_blank'); + window.open(`${window.contextJsParameters.urlbase}/${Constants.appName}/${lang ? lang : ceLang}/${Constants.routes.baseEditRoute}/${uuid}`, '_blank'); }} /> ); diff --git a/src/javascript/SelectorTypes/Picker/actions/openInTabAction.spec.js b/src/javascript/SelectorTypes/Picker/actions/openInTabAction.spec.js index 525a9b78b..2180ff7b7 100644 --- a/src/javascript/SelectorTypes/Picker/actions/openInTabAction.spec.js +++ b/src/javascript/SelectorTypes/Picker/actions/openInTabAction.spec.js @@ -4,6 +4,7 @@ import {shallow} from '@jahia/test-framework'; import React from 'react'; import {setQueryResponseMock} from '@apollo/react-hooks'; import {useContentEditorContext} from '~/contexts'; +import {useSelector} from 'react-redux'; jest.mock('@apollo/react-hooks', () => { let queryresponsemock; @@ -17,9 +18,25 @@ jest.mock('@apollo/react-hooks', () => { jest.mock('~/contexts/ContentEditor/ContentEditor.context'); +jest.mock('react-redux', () => ({ + useSelector: jest.fn() +})); + const button = () =>