Merge pull request #12379 from ToolJet/feat/webpage-target

Feat: add open webpage target on event
This commit is contained in:
Johnson Cherian 2025-04-07 09:25:31 +05:30 committed by GitHub
commit eb56ae3871
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 15 additions and 2 deletions

View file

@ -30,6 +30,8 @@ import { appService } from '@/_services';
import { deepClone } from '@/_helpers/utilities/utils.helpers';
import useStore from '@/AppBuilder/_stores/store';
import { useEventActions, useEvents } from '@/AppBuilder/_stores/slices/eventsSlice';
import ToggleGroup from '@/ToolJetUI/SwitchGroup/ToggleGroup';
import ToggleGroupItem from '@/ToolJetUI/SwitchGroup/ToggleGroupItem';
export const EventManager = ({
sourceId,
@ -503,7 +505,7 @@ export const EventManager = ({
)}
{event.actionId === 'open-webpage' && (
<div className="p-1">
<div>
<label className="form-label mt-1">{t('editor.inspector.eventManager.url', 'URL')}</label>
<CodeHinter
type="basic"
@ -512,6 +514,17 @@ export const EventManager = ({
usePortalEditor={false}
component={component}
/>
<div className="d-flex align-items-center justify-content-between mt-3">
<label className="form-label mt-1">Open in</label>
<ToggleGroup
onValueChange={(_value) => handlerChanged(index, 'windowTarget', _value)}
defaultValue={event?.windowTarget || 'newTab'}
style={{ width: '74%' }}
>
<ToggleGroupItem value="newTab">New tab</ToggleGroupItem>
<ToggleGroupItem value="currentTab">Current tab</ToggleGroupItem>
</ToggleGroup>
</div>
</div>
)}

View file

@ -585,7 +585,7 @@ export const createEventsSlice = (set, get) => ({
//! if resolvecode default value should be the value itself not empty string ... Ask KAVIN
const resolvedValue = getResolvedValue(event.url, customVariables);
// const url = resolveReferences(event.url, undefined, customVariables);
window.open(resolvedValue, '_blank');
window.open(resolvedValue, event?.windowTarget === 'newTab' ? '_blank' : '_self');
return Promise.resolve();
}
case 'go-to-app': {