Skip to content

Commit

Permalink
chore: continued WIP RJSF schema
Browse files Browse the repository at this point in the history
  • Loading branch information
acatchpole committed Jan 21, 2025
1 parent 68cb9d9 commit 8ef18d9
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 7 deletions.
Original file line number Diff line number Diff line change
@@ -1,9 +1,21 @@
import { RJSFSchema } from "@rjsf/utils";
import FieldTemplate from "@bciers/components/form/fields/FieldTemplate";
import { infoNote, instructionNote, SyncFacilitiesButton } from "./reviewFacilitiesInfoText"
import { TitleOnlyFieldTemplate, SectionFieldTemplate } from "@bciers/components/form/fields";
import { TitleOnlyFieldTemplate, SectionFieldTemplate, ArrayFieldTemplate } from "@bciers/components/form/fields";
import { CheckboxGroupWidget } from "@bciers/components/form/widgets";

export const reviewFacilitiesSchema: RJSFSchema = {
export const reviewFacilitiesSchema = (
current_facilities: {
facility_id: string;
facility_name: string;
is_selected: boolean;
}[],
past_facilities: {
facility_id: string;
facility_name: string;
is_selected: boolean;
}[],
): RJSFSchema => ({
title: "Review Facilities",
type: "object",
properties: {
Expand All @@ -15,11 +27,25 @@ export const reviewFacilitiesSchema: RJSFSchema = {
type: "object",
readOnly: true,
},
current_facilities: {
type: "array",
items: {
type: "string",
enum: current_facilities.map((facility) => facility.facility_name),
},
},
past_facilities: {
type: "array",
items: {
type: "string",
enum: past_facilities.map((facility) => facility.facility_name),
},
},
sync_button: {
type: "object",
},
},
};
});

export const reviewFacilitiesUiSchema = {
"ui:FieldTemplate": FieldTemplate,
Expand All @@ -40,12 +66,18 @@ export const reviewFacilitiesUiSchema = {
"ui:title": instructionNote,
},
current_facilities: {
"ui:FieldTemplate": SectionFieldTemplate,
"ui:title": "List of facilities currently assigned to this operation",
"ui:widget": CheckboxGroupWidget,
"ui:options": {
inline: true,
},
},
past_facilities: {
"ui:FieldTemplate": SectionFieldTemplate,
"ui:title": "Past facilities that belonged to this operation",
"ui:widget": CheckboxGroupWidget,
"ui:options": {
inline: true,
},
},
sync_button: {
"ui:FieldTemplate": SyncFacilitiesButton,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ export const infoNote = (
>
large
</Link>
and{" "}
&nbsp;and{" "}
<Link
href="TODO"
target="_blank"
Expand Down Expand Up @@ -54,7 +54,12 @@ export const infoNote = (
);

export const instructionNote = (
<Typography variant="subtitle1">Select the facilities that apply to your operation, prior to Dec 31 of the current reporting year.</Typography>
<Typography variant="subtitle2" color="primary">
<i>
Select the facilities that apply to your operation, prior to Dec 31 of the
current reporting year period
</i>
</Typography>
);

export const SyncFacilitiesButton: React.FC<FieldTemplateProps> = ({
Expand Down

0 comments on commit 8ef18d9

Please sign in to comment.