Skip to content

Commit 4e9ff1b

Browse files
committed
feat(frontend): setup basic routing structure for questionnaire flow
1 parent 448d2e9 commit 4e9ff1b

File tree

8 files changed

+223
-7
lines changed

8 files changed

+223
-7
lines changed

apps/frontend/src/routeTree.gen.ts

Lines changed: 141 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ import { Route as AuthQuestionnaireImport } from "./routes/_auth/questionnaire";
1818
import { Route as AuthAdministrationImport } from "./routes/_auth/administration";
1919
import { Route as AuthQuestionnaireIndexImport } from "./routes/_auth/questionnaire/index";
2020
import { Route as AuthAdministrationIndexImport } from "./routes/_auth/administration/index";
21+
import { Route as AuthQuestionnaireParticipantImport } from "./routes/_auth/questionnaire/participant";
22+
import { Route as AuthQuestionnaireNewImport } from "./routes/_auth/questionnaire/new";
2123
import { Route as AuthAdministrationUsersImport } from "./routes/_auth/administration/users";
2224
import { Route as AuthAdministrationStudiesImport } from "./routes/_auth/administration/studies";
2325
import { Route as AuthAdministrationQuestionnairesImport } from "./routes/_auth/administration/questionnaires";
@@ -31,6 +33,9 @@ import { Route as AuthAdministrationQuestionnairesIndexImport } from "./routes/_
3133
import { Route as AuthAdministrationParticipantsIndexImport } from "./routes/_auth/administration/participants/index";
3234
import { Route as AuthAdministrationLanguagesIndexImport } from "./routes/_auth/administration/languages/index";
3335
import { Route as AuthAdministrationCarersIndexImport } from "./routes/_auth/administration/carers/index";
36+
import { Route as AuthQuestionnaireIdRemarksImport } from "./routes/_auth/questionnaire/$id/remarks";
37+
import { Route as AuthQuestionnaireIdPeriodImport } from "./routes/_auth/questionnaire/$id/period";
38+
import { Route as AuthQuestionnaireIdEntriesImport } from "./routes/_auth/questionnaire/$id/entries";
3439
import { Route as AuthAdministrationUsersNewImport } from "./routes/_auth/administration/users/new";
3540
import { Route as AuthAdministrationStudiesNewImport } from "./routes/_auth/administration/studies/new";
3641
import { Route as AuthAdministrationQuestionnairesNewImport } from "./routes/_auth/administration/questionnaires/new";
@@ -87,6 +92,19 @@ const AuthAdministrationIndexRoute = AuthAdministrationIndexImport.update({
8792
getParentRoute: () => AuthAdministrationRoute,
8893
} as any);
8994

95+
const AuthQuestionnaireParticipantRoute =
96+
AuthQuestionnaireParticipantImport.update({
97+
id: "/participant",
98+
path: "/participant",
99+
getParentRoute: () => AuthQuestionnaireRoute,
100+
} as any);
101+
102+
const AuthQuestionnaireNewRoute = AuthQuestionnaireNewImport.update({
103+
id: "/new",
104+
path: "/new",
105+
getParentRoute: () => AuthQuestionnaireRoute,
106+
} as any);
107+
90108
const AuthAdministrationUsersRoute = AuthAdministrationUsersImport.update({
91109
id: "/users",
92110
path: "/users",
@@ -174,6 +192,28 @@ const AuthAdministrationCarersIndexRoute =
174192
getParentRoute: () => AuthAdministrationCarersRoute,
175193
} as any);
176194

195+
const AuthQuestionnaireIdRemarksRoute = AuthQuestionnaireIdRemarksImport.update(
196+
{
197+
id: "/$id/remarks",
198+
path: "/$id/remarks",
199+
getParentRoute: () => AuthQuestionnaireRoute,
200+
} as any,
201+
);
202+
203+
const AuthQuestionnaireIdPeriodRoute = AuthQuestionnaireIdPeriodImport.update({
204+
id: "/$id/period",
205+
path: "/$id/period",
206+
getParentRoute: () => AuthQuestionnaireRoute,
207+
} as any);
208+
209+
const AuthQuestionnaireIdEntriesRoute = AuthQuestionnaireIdEntriesImport.update(
210+
{
211+
id: "/$id/entries",
212+
path: "/$id/entries",
213+
getParentRoute: () => AuthQuestionnaireRoute,
214+
} as any,
215+
);
216+
177217
const AuthAdministrationUsersNewRoute = AuthAdministrationUsersNewImport.update(
178218
{
179219
id: "/new",
@@ -347,6 +387,20 @@ declare module "@tanstack/react-router" {
347387
preLoaderRoute: typeof AuthAdministrationUsersImport;
348388
parentRoute: typeof AuthAdministrationImport;
349389
};
390+
"/_auth/questionnaire/new": {
391+
id: "/_auth/questionnaire/new";
392+
path: "/new";
393+
fullPath: "/questionnaire/new";
394+
preLoaderRoute: typeof AuthQuestionnaireNewImport;
395+
parentRoute: typeof AuthQuestionnaireImport;
396+
};
397+
"/_auth/questionnaire/participant": {
398+
id: "/_auth/questionnaire/participant";
399+
path: "/participant";
400+
fullPath: "/questionnaire/participant";
401+
preLoaderRoute: typeof AuthQuestionnaireParticipantImport;
402+
parentRoute: typeof AuthQuestionnaireImport;
403+
};
350404
"/_auth/administration/": {
351405
id: "/_auth/administration/";
352406
path: "/";
@@ -403,6 +457,27 @@ declare module "@tanstack/react-router" {
403457
preLoaderRoute: typeof AuthAdministrationUsersNewImport;
404458
parentRoute: typeof AuthAdministrationUsersImport;
405459
};
460+
"/_auth/questionnaire/$id/entries": {
461+
id: "/_auth/questionnaire/$id/entries";
462+
path: "/$id/entries";
463+
fullPath: "/questionnaire/$id/entries";
464+
preLoaderRoute: typeof AuthQuestionnaireIdEntriesImport;
465+
parentRoute: typeof AuthQuestionnaireImport;
466+
};
467+
"/_auth/questionnaire/$id/period": {
468+
id: "/_auth/questionnaire/$id/period";
469+
path: "/$id/period";
470+
fullPath: "/questionnaire/$id/period";
471+
preLoaderRoute: typeof AuthQuestionnaireIdPeriodImport;
472+
parentRoute: typeof AuthQuestionnaireImport;
473+
};
474+
"/_auth/questionnaire/$id/remarks": {
475+
id: "/_auth/questionnaire/$id/remarks";
476+
path: "/$id/remarks";
477+
fullPath: "/questionnaire/$id/remarks";
478+
preLoaderRoute: typeof AuthQuestionnaireIdRemarksImport;
479+
parentRoute: typeof AuthQuestionnaireImport;
480+
};
406481
"/_auth/administration/carers/": {
407482
id: "/_auth/administration/carers/";
408483
path: "/";
@@ -637,11 +712,21 @@ const AuthAdministrationRouteWithChildren =
637712
AuthAdministrationRoute._addFileChildren(AuthAdministrationRouteChildren);
638713

639714
interface AuthQuestionnaireRouteChildren {
715+
AuthQuestionnaireNewRoute: typeof AuthQuestionnaireNewRoute;
716+
AuthQuestionnaireParticipantRoute: typeof AuthQuestionnaireParticipantRoute;
640717
AuthQuestionnaireIndexRoute: typeof AuthQuestionnaireIndexRoute;
718+
AuthQuestionnaireIdEntriesRoute: typeof AuthQuestionnaireIdEntriesRoute;
719+
AuthQuestionnaireIdPeriodRoute: typeof AuthQuestionnaireIdPeriodRoute;
720+
AuthQuestionnaireIdRemarksRoute: typeof AuthQuestionnaireIdRemarksRoute;
641721
}
642722

643723
const AuthQuestionnaireRouteChildren: AuthQuestionnaireRouteChildren = {
724+
AuthQuestionnaireNewRoute: AuthQuestionnaireNewRoute,
725+
AuthQuestionnaireParticipantRoute: AuthQuestionnaireParticipantRoute,
644726
AuthQuestionnaireIndexRoute: AuthQuestionnaireIndexRoute,
727+
AuthQuestionnaireIdEntriesRoute: AuthQuestionnaireIdEntriesRoute,
728+
AuthQuestionnaireIdPeriodRoute: AuthQuestionnaireIdPeriodRoute,
729+
AuthQuestionnaireIdRemarksRoute: AuthQuestionnaireIdRemarksRoute,
645730
};
646731

647732
const AuthQuestionnaireRouteWithChildren =
@@ -674,6 +759,8 @@ export interface FileRoutesByFullPath {
674759
"/administration/questionnaires": typeof AuthAdministrationQuestionnairesRouteWithChildren;
675760
"/administration/studies": typeof AuthAdministrationStudiesRouteWithChildren;
676761
"/administration/users": typeof AuthAdministrationUsersRouteWithChildren;
762+
"/questionnaire/new": typeof AuthQuestionnaireNewRoute;
763+
"/questionnaire/participant": typeof AuthQuestionnaireParticipantRoute;
677764
"/administration/": typeof AuthAdministrationIndexRoute;
678765
"/questionnaire/": typeof AuthQuestionnaireIndexRoute;
679766
"/administration/carers/new": typeof AuthAdministrationCarersNewRoute;
@@ -682,6 +769,9 @@ export interface FileRoutesByFullPath {
682769
"/administration/questionnaires/new": typeof AuthAdministrationQuestionnairesNewRoute;
683770
"/administration/studies/new": typeof AuthAdministrationStudiesNewRoute;
684771
"/administration/users/new": typeof AuthAdministrationUsersNewRoute;
772+
"/questionnaire/$id/entries": typeof AuthQuestionnaireIdEntriesRoute;
773+
"/questionnaire/$id/period": typeof AuthQuestionnaireIdPeriodRoute;
774+
"/questionnaire/$id/remarks": typeof AuthQuestionnaireIdRemarksRoute;
685775
"/administration/carers/": typeof AuthAdministrationCarersIndexRoute;
686776
"/administration/languages/": typeof AuthAdministrationLanguagesIndexRoute;
687777
"/administration/participants/": typeof AuthAdministrationParticipantsIndexRoute;
@@ -700,6 +790,8 @@ export interface FileRoutesByTo {
700790
"/session": typeof SessionRoute;
701791
"/": typeof AuthIndexRoute;
702792
"/administration/export": typeof AuthAdministrationExportRoute;
793+
"/questionnaire/new": typeof AuthQuestionnaireNewRoute;
794+
"/questionnaire/participant": typeof AuthQuestionnaireParticipantRoute;
703795
"/administration": typeof AuthAdministrationIndexRoute;
704796
"/questionnaire": typeof AuthQuestionnaireIndexRoute;
705797
"/administration/carers/new": typeof AuthAdministrationCarersNewRoute;
@@ -708,6 +800,9 @@ export interface FileRoutesByTo {
708800
"/administration/questionnaires/new": typeof AuthAdministrationQuestionnairesNewRoute;
709801
"/administration/studies/new": typeof AuthAdministrationStudiesNewRoute;
710802
"/administration/users/new": typeof AuthAdministrationUsersNewRoute;
803+
"/questionnaire/$id/entries": typeof AuthQuestionnaireIdEntriesRoute;
804+
"/questionnaire/$id/period": typeof AuthQuestionnaireIdPeriodRoute;
805+
"/questionnaire/$id/remarks": typeof AuthQuestionnaireIdRemarksRoute;
711806
"/administration/carers": typeof AuthAdministrationCarersIndexRoute;
712807
"/administration/languages": typeof AuthAdministrationLanguagesIndexRoute;
713808
"/administration/participants": typeof AuthAdministrationParticipantsIndexRoute;
@@ -736,6 +831,8 @@ export interface FileRoutesById {
736831
"/_auth/administration/questionnaires": typeof AuthAdministrationQuestionnairesRouteWithChildren;
737832
"/_auth/administration/studies": typeof AuthAdministrationStudiesRouteWithChildren;
738833
"/_auth/administration/users": typeof AuthAdministrationUsersRouteWithChildren;
834+
"/_auth/questionnaire/new": typeof AuthQuestionnaireNewRoute;
835+
"/_auth/questionnaire/participant": typeof AuthQuestionnaireParticipantRoute;
739836
"/_auth/administration/": typeof AuthAdministrationIndexRoute;
740837
"/_auth/questionnaire/": typeof AuthQuestionnaireIndexRoute;
741838
"/_auth/administration/carers/new": typeof AuthAdministrationCarersNewRoute;
@@ -744,6 +841,9 @@ export interface FileRoutesById {
744841
"/_auth/administration/questionnaires/new": typeof AuthAdministrationQuestionnairesNewRoute;
745842
"/_auth/administration/studies/new": typeof AuthAdministrationStudiesNewRoute;
746843
"/_auth/administration/users/new": typeof AuthAdministrationUsersNewRoute;
844+
"/_auth/questionnaire/$id/entries": typeof AuthQuestionnaireIdEntriesRoute;
845+
"/_auth/questionnaire/$id/period": typeof AuthQuestionnaireIdPeriodRoute;
846+
"/_auth/questionnaire/$id/remarks": typeof AuthQuestionnaireIdRemarksRoute;
747847
"/_auth/administration/carers/": typeof AuthAdministrationCarersIndexRoute;
748848
"/_auth/administration/languages/": typeof AuthAdministrationLanguagesIndexRoute;
749849
"/_auth/administration/participants/": typeof AuthAdministrationParticipantsIndexRoute;
@@ -773,6 +873,8 @@ export interface FileRouteTypes {
773873
| "/administration/questionnaires"
774874
| "/administration/studies"
775875
| "/administration/users"
876+
| "/questionnaire/new"
877+
| "/questionnaire/participant"
776878
| "/administration/"
777879
| "/questionnaire/"
778880
| "/administration/carers/new"
@@ -781,6 +883,9 @@ export interface FileRouteTypes {
781883
| "/administration/questionnaires/new"
782884
| "/administration/studies/new"
783885
| "/administration/users/new"
886+
| "/questionnaire/$id/entries"
887+
| "/questionnaire/$id/period"
888+
| "/questionnaire/$id/remarks"
784889
| "/administration/carers/"
785890
| "/administration/languages/"
786891
| "/administration/participants/"
@@ -798,6 +903,8 @@ export interface FileRouteTypes {
798903
| "/session"
799904
| "/"
800905
| "/administration/export"
906+
| "/questionnaire/new"
907+
| "/questionnaire/participant"
801908
| "/administration"
802909
| "/questionnaire"
803910
| "/administration/carers/new"
@@ -806,6 +913,9 @@ export interface FileRouteTypes {
806913
| "/administration/questionnaires/new"
807914
| "/administration/studies/new"
808915
| "/administration/users/new"
916+
| "/questionnaire/$id/entries"
917+
| "/questionnaire/$id/period"
918+
| "/questionnaire/$id/remarks"
809919
| "/administration/carers"
810920
| "/administration/languages"
811921
| "/administration/participants"
@@ -832,6 +942,8 @@ export interface FileRouteTypes {
832942
| "/_auth/administration/questionnaires"
833943
| "/_auth/administration/studies"
834944
| "/_auth/administration/users"
945+
| "/_auth/questionnaire/new"
946+
| "/_auth/questionnaire/participant"
835947
| "/_auth/administration/"
836948
| "/_auth/questionnaire/"
837949
| "/_auth/administration/carers/new"
@@ -840,6 +952,9 @@ export interface FileRouteTypes {
840952
| "/_auth/administration/questionnaires/new"
841953
| "/_auth/administration/studies/new"
842954
| "/_auth/administration/users/new"
955+
| "/_auth/questionnaire/$id/entries"
956+
| "/_auth/questionnaire/$id/period"
957+
| "/_auth/questionnaire/$id/remarks"
843958
| "/_auth/administration/carers/"
844959
| "/_auth/administration/languages/"
845960
| "/_auth/administration/participants/"
@@ -908,7 +1023,12 @@ export const routeTree = rootRoute
9081023
"filePath": "_auth/questionnaire.tsx",
9091024
"parent": "/_auth",
9101025
"children": [
911-
"/_auth/questionnaire/"
1026+
"/_auth/questionnaire/new",
1027+
"/_auth/questionnaire/participant",
1028+
"/_auth/questionnaire/",
1029+
"/_auth/questionnaire/$id/entries",
1030+
"/_auth/questionnaire/$id/period",
1031+
"/_auth/questionnaire/$id/remarks"
9121032
]
9131033
},
9141034
"/_auth/": {
@@ -973,6 +1093,14 @@ export const routeTree = rootRoute
9731093
"/_auth/administration/users/edit/$id"
9741094
]
9751095
},
1096+
"/_auth/questionnaire/new": {
1097+
"filePath": "_auth/questionnaire/new.tsx",
1098+
"parent": "/_auth/questionnaire"
1099+
},
1100+
"/_auth/questionnaire/participant": {
1101+
"filePath": "_auth/questionnaire/participant.tsx",
1102+
"parent": "/_auth/questionnaire"
1103+
},
9761104
"/_auth/administration/": {
9771105
"filePath": "_auth/administration/index.tsx",
9781106
"parent": "/_auth/administration"
@@ -1005,6 +1133,18 @@ export const routeTree = rootRoute
10051133
"filePath": "_auth/administration/users/new.tsx",
10061134
"parent": "/_auth/administration/users"
10071135
},
1136+
"/_auth/questionnaire/$id/entries": {
1137+
"filePath": "_auth/questionnaire/$id/entries.tsx",
1138+
"parent": "/_auth/questionnaire"
1139+
},
1140+
"/_auth/questionnaire/$id/period": {
1141+
"filePath": "_auth/questionnaire/$id/period.tsx",
1142+
"parent": "/_auth/questionnaire"
1143+
},
1144+
"/_auth/questionnaire/$id/remarks": {
1145+
"filePath": "_auth/questionnaire/$id/remarks.tsx",
1146+
"parent": "/_auth/questionnaire"
1147+
},
10081148
"/_auth/administration/carers/": {
10091149
"filePath": "_auth/administration/carers/index.tsx",
10101150
"parent": "/_auth/administration/carers"
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { createFileRoute } from "@tanstack/react-router";
2+
3+
function QuestionnaireEntries() {
4+
return "Hello /_auth/questionnaire/$id/entries!";
5+
}
6+
7+
export const Route = createFileRoute("/_auth/questionnaire/$id/entries")({
8+
component: QuestionnaireEntries,
9+
});
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { createFileRoute } from "@tanstack/react-router";
2+
3+
function QuestionnairePeriod() {
4+
return "Hello /_auth/questionnaire/$id/period!";
5+
}
6+
7+
export const Route = createFileRoute("/_auth/questionnaire/$id/period")({
8+
component: QuestionnairePeriod,
9+
});
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { createFileRoute } from "@tanstack/react-router";
2+
3+
function QuestionnaireRemarks() {
4+
return "Hello /_auth/questionnaire/$id/remarks!";
5+
}
6+
7+
export const Route = createFileRoute("/_auth/questionnaire/$id/remarks")({
8+
component: QuestionnaireRemarks,
9+
});
Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,27 @@
1-
import { createFileRoute } from "@tanstack/react-router";
1+
import { Button, Stack, TextInput } from "@quassel/ui";
2+
import { createFileRoute, useNavigate } from "@tanstack/react-router";
23

3-
export const Route = createFileRoute("/_auth/questionnaire/")({
4-
component: Index,
5-
});
4+
function Questionnaire() {
5+
const n = useNavigate();
6+
7+
const handleSubmit = () => {
8+
n({ to: "/questionnaire/participant" });
9+
};
610

7-
function Index() {
8-
return <h3>Questionnaire</h3>;
11+
return (
12+
<>
13+
<h3>Questionnaire</h3>
14+
<form onSubmit={handleSubmit}>
15+
<Stack>
16+
<TextInput />
17+
<TextInput />
18+
<Button type="submit">Start questionnaire</Button>
19+
</Stack>
20+
</form>
21+
</>
22+
);
923
}
24+
25+
export const Route = createFileRoute("/_auth/questionnaire/")({
26+
component: Questionnaire,
27+
});
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { createFileRoute } from "@tanstack/react-router";
2+
3+
function QuestionnaireNew() {
4+
return "Hello /_auth/questionnaire/new!";
5+
}
6+
7+
export const Route = createFileRoute("/_auth/questionnaire/new")({
8+
component: QuestionnaireNew,
9+
});
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { Button } from "@quassel/ui";
2+
import { createFileRoute, useNavigate } from "@tanstack/react-router";
3+
4+
function QuestionnaireParticipant() {
5+
const n = useNavigate();
6+
7+
const handleSubmit = () => {
8+
n({ to: "/questionnaire/new" });
9+
};
10+
11+
return (
12+
<form onSubmit={handleSubmit}>
13+
<Button type="submit">New questionnaire</Button>
14+
</form>
15+
);
16+
}
17+
18+
export const Route = createFileRoute("/_auth/questionnaire/participant")({
19+
component: QuestionnaireParticipant,
20+
});

0 commit comments

Comments
 (0)