update/handle query events

This commit is contained in:
arpitnath 2023-08-24 14:32:47 +05:30
parent 1e5f46d5b7
commit 03b31ee59e
4 changed files with 10 additions and 19 deletions

View file

@ -29,7 +29,7 @@ export const EventManager = ({
eventSourceType,
eventMetaDefinition,
components,
eventsChanged,
excludeEvents,
popOverCallback,
popoverPlacement,
@ -813,13 +813,12 @@ export const EventManager = ({
</Popover>
);
}
//!Need to fix
const reorderEvents = (startIndex, endIndex) => {
const result = _.cloneDeep(events);
const [removed] = result.splice(startIndex, 1);
result.splice(endIndex, 0, removed);
setEvents(result);
eventsChanged(result, null, true);
};
const onDragEnd = ({ source, destination }) => {
@ -865,7 +864,6 @@ export const EventManager = ({
setFocusedEventIndex(index);
} else {
setFocusedEventIndex(null);
eventsChanged(events);
}
if (typeof popOverCallback === 'function') popOverCallback(showing);
}}

View file

@ -28,7 +28,6 @@ export const QueryManagerBody = ({
apps,
appDefinition,
setOptions,
appId,
}) => {
const { t } = useTranslation();
const dataSources = useDataSources();
@ -186,9 +185,6 @@ export const QueryManagerBody = ({
<div className={`form-label`}>{t('editor.queryManager.eventsHandler', 'Events')}</div>
<div className="query-manager-events pb-4 flex-grow-1">
<EventManager
//!Query events
eventsChanged={eventsChanged}
component={queryComponent.component}
sourceId={selectedQuery?.id}
eventSourceType="data_query"
eventMetaDefinition={queryComponent.componentMeta}

View file

@ -34,6 +34,7 @@ import { useCurrentStateStore, getCurrentState } from '@/_stores/currentStateSto
import { useAppVersionStore } from '@/_stores/appVersionStore';
import { useEditorStore } from '@/_stores/editorStore';
import { camelizeKeys } from 'humps';
import { useAppDataStore } from '@/_stores/appDataStore';
const ERROR_TYPES = Object.freeze({
ReferenceError: 'ReferenceError',
@ -897,6 +898,10 @@ export function previewQuery(_ref, query, calledFromQuery = false, parameters =
export function runQuery(_ref, queryId, queryName, confirmed = undefined, mode = 'edit', parameters = {}) {
const query = useDataQueriesStore.getState().dataQueries.find((query) => query.id === queryId);
const queryEvents = useAppDataStore
.getState()
.events.filter((event) => event.target === 'data_query' && event.sourceId === queryId);
let dataQuery = {};
if (query) {
@ -1003,7 +1008,7 @@ export function runQuery(_ref, queryId, queryName, confirmed = undefined, mode =
},
});
resolve(data);
onEvent(_self, 'onDataQueryFailure', dataQuery.options.events);
onEvent(_self, 'onDataQueryFailure', queryEvents);
if (mode !== 'view') {
const err = query.kind == 'tooljetdb' ? data?.error || data : _.isEmpty(data.data) ? data : data.data;
toast.error(err?.message);
@ -1041,7 +1046,7 @@ export function runQuery(_ref, queryId, queryName, confirmed = undefined, mode =
},
});
resolve(finalData);
onEvent(_self, 'onDataQueryFailure', dataQuery.options.events);
onEvent(_self, 'onDataQueryFailure', queryEvents);
return;
}
}
@ -1080,7 +1085,7 @@ export function runQuery(_ref, queryId, queryName, confirmed = undefined, mode =
},
});
resolve({ status: 'ok', data: finalData });
onEvent(_self, 'onDataQuerySuccess', dataQuery.options.events, mode);
onEvent(_self, 'onDataQuerySuccess', queryEvents, mode);
}
})
.catch(({ error }) => {

View file

@ -58,8 +58,6 @@ export const useAppDataStore = create(
}
});
console.log('----arpit should update events store', { updatedEvents, response });
set(() => ({ events: updatedEvents }));
},
@ -106,9 +104,3 @@ export const useUpdateEditingVersion = () => useAppDataStore((state) => state.ac
export const useCurrentUser = () => useAppDataStore((state) => state.currentUser);
export const useAppInfo = () => useAppDataStore((state) => state);
export const useAppDataActions = () => useAppDataStore((state) => state.actions);
// if (operation === 'delete') {
// const response = await appVersionService.deleteAppVersionEventHandler(appId, versionId, eventId);
// const updatedEvents = get().events.filter((e) => e.id !== response.id);
// set(() => ({ events: updatedEvents }));
// }