1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-09 00:18:00 +01:00

refactor: remove unused feature tags state (#689)

This commit is contained in:
olav 2022-02-09 14:40:58 +01:00 committed by GitHub
parent 83778a9928
commit b7d106d7ab
4 changed files with 0 additions and 121 deletions

View File

@ -1,50 +0,0 @@
import api from './api';
import { dispatchError } from '../util';
export const TAG_FEATURE_TOGGLE = 'TAG_FEATURE_TOGGLE';
export const UNTAG_FEATURE_TOGGLE = 'UNTAG_FEATURE_TOGGLE';
export const START_TAG_FEATURE_TOGGLE = 'START_TAG_FEATURE_TOGGLE';
export const START_UNTAG_FEATURE_TOGGLE = 'START_UNTAG_FEATURE_TOGGLE';
export const ERROR_TAG_FEATURE_TOGGLE = 'ERROR_TAG_FEATURE_TOGGLE';
export const ERROR_UNTAG_FEATURE_TOGGLE = 'ERROR_UNTAG_FEATURE_TOGGLE';
export const START_FETCH_FEATURE_TOGGLE_TAGS = 'START_FETCH_FEATURE_TOGGLE_TAGS';
export const RECEIVE_FEATURE_TOGGLE_TAGS = 'RECEIVE_FEATURE_TOGGLE_TAGS';
export const ERROR_FETCH_FEATURE_TOGGLE_TAGS = 'ERROR_FETCH_FEATURE_TOGGLE_TAGS';
function receiveFeatureToggleTags(json) {
return {
type: RECEIVE_FEATURE_TOGGLE_TAGS,
value: json,
receivedAt: Date.now(),
};
}
export function tagFeature(featureToggle, tag) {
return dispatch => {
dispatch({ type: START_TAG_FEATURE_TOGGLE });
return api
.tagFeature(featureToggle, tag)
.then(json => dispatch({ type: TAG_FEATURE_TOGGLE, featureToggle, tag: json }))
.catch(dispatchError(dispatch, ERROR_TAG_FEATURE_TOGGLE));
};
}
export function untagFeature(featureToggle, tag) {
return dispatch => {
dispatch({ type: START_UNTAG_FEATURE_TOGGLE });
return api
.untagFeature(featureToggle, tag)
.then(() => dispatch({ type: UNTAG_FEATURE_TOGGLE, featureToggle, tag }))
.catch(dispatchError(dispatch, ERROR_UNTAG_FEATURE_TOGGLE));
};
}
export function fetchTags(featureToggle) {
return dispatch => {
dispatch({ type: START_FETCH_FEATURE_TOGGLE_TAGS });
return api
.fetchFeatureToggleTags(featureToggle)
.then(json => dispatch(receiveFeatureToggleTags(json)))
.catch(dispatchError(dispatch, ERROR_FETCH_FEATURE_TOGGLE_TAGS));
};
}

View File

@ -1,44 +0,0 @@
import { formatApiPath } from '../../utils/format-path';
import { throwIfNotSuccess, headers } from '../api-helper';
const URI = formatApiPath('api/admin/features');
function tagFeature(featureToggle, tag) {
return fetch(`${URI}/${featureToggle}/tags`, {
method: 'POST',
headers,
credentials: 'include',
body: JSON.stringify(tag),
})
.then(throwIfNotSuccess)
.then(response => response.json());
}
function untagFeature(featureToggle, tag) {
return fetch(
`${URI}/${featureToggle}/tags/${tag.type}/${encodeURIComponent(
tag.value
)}`,
{
method: 'DELETE',
headers,
credentials: 'include',
}
).then(throwIfNotSuccess);
}
function fetchFeatureToggleTags(featureToggle) {
return fetch(`${URI}/${featureToggle}/tags`, {
method: 'GET',
headers,
credentials: 'include',
})
.then(throwIfNotSuccess)
.then(response => response.json());
}
export default {
tagFeature,
untagFeature,
fetchFeatureToggleTags,
};

View File

@ -1,25 +0,0 @@
import { List, Map as $MAP } from 'immutable';
import { RECEIVE_FEATURE_TOGGLE_TAGS, TAG_FEATURE_TOGGLE, UNTAG_FEATURE_TOGGLE } from './actions';
function getInitState() {
return new List();
}
const featureTags = (state = getInitState(), action) => {
switch (action.type) {
case RECEIVE_FEATURE_TOGGLE_TAGS:
if (action.value) {
return new List(action.value.tags);
} else {
return getInitState();
}
case TAG_FEATURE_TOGGLE:
return state.push(new $MAP(action.tag));
case UNTAG_FEATURE_TOGGLE:
return state.remove(state.findIndex(t => t.value === action.tag.value && t.type === action.tag.type));
default:
return state;
}
};
export default featureTags;

View File

@ -1,7 +1,6 @@
import { combineReducers } from 'redux';
import features from './feature-toggle';
import featureMetrics from './feature-metrics';
import featureTags from './feature-tags';
import tagTypes from './tag-type';
import tags from './tag';
import strategies from './strategy';
@ -18,7 +17,6 @@ const unleashStore = combineReducers({
strategies,
tagTypes,
tags,
featureTags,
error,
user,
applications,