((_ev) => {
+ // Don't have a proper mechanism to cancel in-flight requests so refresh page
+ window.location.reload();
+ }, []);
+
+ return (
+ <>
+
+ Check that your LOINC and SNOMED codes are mapped to conditions so ReportStream can accurately transform
+ your data
+
+
+ Follow these instructions and use{" "}
+ our template to format your result and organism codes to
+ LOINC or SNOMED. Note: Local codes cannot be automatically mapped.
+
+ {data && }
+ {isPending && (
+ <>
+
+
+ Checking your file for any unmapped codes that will prevent data from being reported
+ successfully
+
+
+ Cancel
+
+ >
+ )}
+ {!data && !isPending && (
+
+ )}
+ {props.children}
+
+ Questions or feedback? Please email{" "}
+ reportstream@cdc.gov
+
+ >
+ );
+};
+
+export default CodeMappingForm;
diff --git a/frontend-react/src/components/CodeMapping/CodeMappingResults.tsx b/frontend-react/src/components/CodeMapping/CodeMappingResults.tsx
new file mode 100644
index 00000000000..a61595508bb
--- /dev/null
+++ b/frontend-react/src/components/CodeMapping/CodeMappingResults.tsx
@@ -0,0 +1,10 @@
+import type { PropsWithChildren } from "react";
+
+export type CodeMappingResultsProps = PropsWithChildren;
+
+/**
+ * TODO: Implement result page
+ */
+const CodeMappingResults = (props: CodeMappingResultsProps) => <>TODO {props.children}>;
+
+export default CodeMappingResults;
diff --git a/frontend-react/src/hooks/api/UseCodeMappingFormSubmit/UseCodeMappingFormSubmit.ts b/frontend-react/src/hooks/api/UseCodeMappingFormSubmit/UseCodeMappingFormSubmit.ts
new file mode 100644
index 00000000000..61d78969a82
--- /dev/null
+++ b/frontend-react/src/hooks/api/UseCodeMappingFormSubmit/UseCodeMappingFormSubmit.ts
@@ -0,0 +1,16 @@
+import { useMutation } from "@tanstack/react-query";
+
+/**
+ * TODO: Implement hook
+ */
+const useCodeMappingFormSubmit = () => {
+ const fn = async () => {
+ // Fake request until implementation
+ await new Promise((resolve) => setTimeout(resolve, 2500));
+ };
+ return useMutation({
+ mutationFn: fn,
+ });
+};
+
+export default useCodeMappingFormSubmit;
diff --git a/frontend-react/src/pages/onboarding/CodeMappingPage.tsx b/frontend-react/src/pages/onboarding/CodeMappingPage.tsx
new file mode 100644
index 00000000000..9691a5ccc26
--- /dev/null
+++ b/frontend-react/src/pages/onboarding/CodeMappingPage.tsx
@@ -0,0 +1,16 @@
+import type { PropsWithChildren } from "react";
+import CodeMappingForm from "../../components/CodeMapping/CodeMappingForm";
+
+export type CodeMappingPageProps = PropsWithChildren;
+
+const CodeMappingPage = (props: CodeMappingPageProps) => {
+ return (
+ <>
+ Code mapping tool
+
+ {props.children}
+ >
+ );
+};
+
+export default CodeMappingPage;