import { defineFrontComponent } from 'twenty-sdk/define'; import { Command, useSelectedRecordIds } from 'twenty-sdk/front-component'; import { FRONT_COMPONENT_UNIVERSAL_IDENTIFIERS, LOGIC_FUNCTION_CONSTANTS, } from 'src/constants/universal-identifiers'; import { callContractLogicFunction } from 'src/front-components/utils/call-contract-logic-function.utils'; const Approve = () => { const recordIds = useSelectedRecordIds(); return ( { await callContractLogicFunction({ path: LOGIC_FUNCTION_CONSTANTS.recordDecision.path, body: { contractId: recordIds[0], decision: 'APPROVE' }, pendingMessage: 'Registrando aprovação…', successMessage: 'Contrato aprovado.', errorMessage: 'Falha ao aprovar o contrato.', }); }} /> ); }; export default defineFrontComponent({ universalIdentifier: FRONT_COMPONENT_UNIVERSAL_IDENTIFIERS.approve, name: 'approve-effect', description: 'Approve contract effect', component: Approve, isHeadless: true, });