Added viewing all CSI responses + read only version of configurable form BOD-154

This commit is contained in:
Patrick Fic
2020-06-04 13:44:43 -07:00
parent 910183d8e7
commit 90152fc613
27 changed files with 615 additions and 50 deletions

View File

@@ -0,0 +1,43 @@
import { useQuery } from "@apollo/react-hooks";
import { Form } from "antd";
import queryString from "query-string";
import React, { useEffect } from "react";
import { useLocation } from "react-router-dom";
import { QUERY_CSI_RESPONSE_BY_PK } from "../../graphql/csi.queries";
import ConfigFormComponents from "../config-form-components/config-form-components.component";
import { useTranslation } from "react-i18next";
import LoadingSpinner from "../loading-spinner/loading-spinner.component";
import AlertComponent from "../alert/alert.component";
export default function CsiResponseFormContainer() {
const { t } = useTranslation();
const [form] = Form.useForm();
const searchParams = queryString.parse(useLocation().search);
const { responseid } = searchParams;
const { loading, error, data } = useQuery(QUERY_CSI_RESPONSE_BY_PK, {
variables: {
id: responseid,
},
skip: !!!responseid,
});
useEffect(() => {
form.resetFields();
}, [data, form]);
if (!!!responseid) return <div>{t("csi.labels.noneselected")}</div>;
if (loading) return <LoadingSpinner />;
if (error) return <AlertComponent message={error.message} type="error" />;
return (
<div>
<Form form={form} initialValues={data.csi_by_pk.response}>
<ConfigFormComponents
readOnly
componentList={data.csi_by_pk.csiquestion.config}
/>
</Form>
</div>
);
}