import { useMutation, gql } from "@apollo/client"; import { makeStyles, Box } from '@material-ui/core' import * as R from 'ramda' import React, { useState } from 'react' import { H2 } from 'src/components/typography' import { v4 as uuidv4 } from 'uuid' import { Button } from 'src/components/buttons' import { Table as EditableTable } from 'src/components/editableTable' import { fromNamespace, namespaces } from 'src/utils/config' import styles from './Triggers.styles' import Wizard from './Wizard' import { Schema, getElements, sortBy, toServer } from './helper' const useStyles = makeStyles(styles) const SAVE_CONFIG = gql` mutation Save($config: JSONObject) { saveConfig(config: $config) } ` const TriggerView = ({ triggers, showWizard, config, toggleWizard, addNewTriger, emailAuth, complianceServices, customInfoRequests }) => { const currency = R.path(['fiatCurrency'])( fromNamespace(namespaces.LOCALE)(config) ) const classes = useStyles() const [error, setError] = useState(null) const [saveConfig] = useMutation(SAVE_CONFIG, { onCompleted: () => toggleWizard(true), refetchQueries: () => ['getData'], onError: error => setError(error) }) const save = config => { setError(null) return saveConfig({ variables: { config: { triggers: toServer(config.triggers) } } }) } const add = rawConfig => { const toSave = R.concat([{ id: uuidv4(), direction: 'both', ...rawConfig }])( triggers ) return saveConfig({ variables: { config: { triggers: toServer(toSave) } } }) } return ( <> {showWizard && ( toggleWizard(true)} customInfoRequests={customInfoRequests} complianceServices={complianceServices} emailAuth={emailAuth} triggers={triggers} /> )} {R.isEmpty(triggers) && (

It seems there are no active compliance triggers on your network

)} ) } export default TriggerView