'use client'; import { useContext } from 'react'; import { useMessages } from 'components/hooks'; import { Icon, Form, FormButtons, FormInput, FormRow, PopupTrigger, Popup, SubmitButton, TextField, } from 'react-basics'; import Icons from 'components/icons'; import UrlAddForm from './UrlAddForm'; import { ReportContext } from '../[reportId]/Report'; import BaseParameters from '../[reportId]/BaseParameters'; import ParameterList from '../[reportId]/ParameterList'; import PopupForm from '../[reportId]/PopupForm'; export function FunnelParameters() { const { report, runReport, updateReport, isRunning } = useContext(ReportContext); const { formatMessage, labels } = useMessages(); const { parameters } = report || {}; const { websiteId, dateRange, urls } = parameters || {}; const queryDisabled = !websiteId || !dateRange || urls?.length < 2; const handleSubmit = (data: any, e: any) => { e.stopPropagation(); e.preventDefault(); if (!queryDisabled) { runReport(data); } }; const handleAddUrl = (url: string) => { updateReport({ parameters: { urls: parameters.urls.concat(url) } }); }; const handleRemoveUrl = (index: number, e: any) => { e.stopPropagation(); const urls = [...parameters.urls]; urls.splice(index, 1); updateReport({ parameters: { urls } }); }; const AddUrlButton = () => { return ( ); }; return (
}> handleRemoveUrl(index, e)} /> {formatMessage(labels.runQuery)} ); } export default FunnelParameters;