openreplay/frontend/app/duck/integrations/integrations.js
Shekar Siri 0c0dd30a73
Preferences - UI and API improvements (#654)
* fix(tracker): fix assist typings

* fix(tracker): fix assist typings

* change(ui) - preferences - removed old

* change(ui) - preferences - wip

* change(ui) - preferences - list

* change(ui) - right box mardings

* change(ui) - preferences - integration item paddings

* change(ui) - preferences - integration icons

* change(ui) - preferences - integration icons

* change(ui) - preferences - integration - check status

* change(ui) - preferences - integration - check status

* change(ui) - preferences - metadata - move the delete button inside the modal

* change(ui) - preferences - webhooks - modal and delete btn changes

* change(ui) - preferences - modalContext updates

* change(ui) - input field forward refs

* change(ui) - metadata - modal

* change(ui) - metadata - set deleting item to null

* change(ui) - integrations

* change(ui) - hoc withcopy

* change(ui) - projects

* change(ui) - users list modal

* change(ui) - projects remove border for the last

* change(ui) - integrations new api changes

* change(ui) - github and jira changes

* change(ui) - github and jira changes

Co-authored-by: sylenien <nikita@openreplay.com>
2022-08-04 12:21:25 +02:00

40 lines
957 B
JavaScript

import { Map } from 'immutable';
import withRequestState from 'Duck/requestStateCreator';
import { fetchListType } from '../funcTools/types';
const FETCH_LIST = fetchListType('integrations/FETCH_LIST');
const SET_SITE_ID = 'integrations/SET_SITE_ID';
const initialState = Map({
list: [],
siteId: null,
});
const reducer = (state = initialState, action = {}) => {
switch (action.type) {
case FETCH_LIST.success:
return state.set('list', action.data);
case SET_SITE_ID:
return state.set('siteId', action.siteId);
}
return state;
};
export default withRequestState(
{
fetchRequest: FETCH_LIST,
},
reducer
);
export function fetchIntegrationList(siteID) {
return {
types: FETCH_LIST.array,
call: (client) => client.get(`/${siteID}/integrations`),
};
}
export function setSiteId(siteId) {
return {
type: SET_SITE_ID,
siteId,
};
}