1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-05-08 01:15:49 +02:00
unleash.unleash/frontend/src/component/addons/CreateAddon/CreateAddon.tsx
Youssef Khedher 2a9a3ac569 refactor: refactor addons to TSX and remove unused files (#676)
* refactor: refactor addons to TSX and remove unused files

* refactor: change AddonIcon to getAddonIcon

* refactor: add PermissionButton instead of conditional render

* refactor: wrap icon buttons inside PermissionIconButtons

* feat: add confirm delete dialog

* fix: create addon form

* fix: refactor addons

* fix: remove addon store folder

* fix: update index

* fix: rebase

* fix: update exports

* fix: update snapshot

* fix: add dev dep

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2022-02-09 23:05:15 +01:00

43 lines
1012 B
TypeScript

import { useParams } from 'react-router-dom';
import useAddons from '../../../hooks/api/getters/useAddons/useAddons';
import { AddonForm } from '../AddonForm/AddonForm';
import cloneDeep from 'lodash.clonedeep';
interface IAddonCreateParams {
providerId: string;
}
const DEFAULT_DATA = {
provider: '',
description: '',
enabled: true,
parameters: {},
events: [],
};
export const CreateAddon = () => {
const { providerId } = useParams<IAddonCreateParams>();
const { providers, refetchAddons } = useAddons();
const editMode = false;
const provider = providers.find(
(providerItem: any) => providerItem.name === providerId
);
const defaultAddon = {
...cloneDeep(DEFAULT_DATA),
provider: provider ? provider.name : '',
};
return (
// @ts-expect-error
<AddonForm
editMode={editMode}
provider={provider}
fetch={refetchAddons}
addon={defaultAddon}
/>
);
};