chore: add Show and fix small typing errors

This commit is contained in:
alphafetus committed 2026-02-07 12:49:29 -05:00
1 parent 1b8406e09c
commit caec4fb017
5 files changed
+295 -269

No files matched your search

+27 -21
View File
@@ -1,31 +1,37 @@
use std::collections::HashMap;
use leptos::prelude::*;
use crate::components::{MultiEntry, ValidatedForm};
use crate::components::{Loading, MultiEntry, ValidatedForm};
use crate::input;
use crate::pages::student::form_setup::use_student_form;
#[component]
pub fn StudentWorkExperiencePage() -> impl IntoView {
let data_map = RwSignal::new(HashMap::new());
let controller = use_student_form("workexp");
view! {
<div class="flex flex-1" />
<div class="flex flex-col flex-2 mt-6">
<ValidatedForm title="Student Work Experience" on_submit=move || {}>
<MultiEntry
label="Work Experience:"
description="Leave blank if not applicable."
data_map=data_map
data_member="extracurricular"
schema=vec![
input!(Text, "job_title", "Job Title:", true, "Waiter, Cashier, etc..."),
input!(Text, "employer", "Employer:", true, "Your employer's name..."),
input!(Number, "start_date", "Start date:", true, "40"),
input!(Number, "end_date", "End date:", true, "3"),
input!(Number, "num_hours", "Number of hours completed:", true, "120"),
]
/>
</ValidatedForm>
</div>
<div class="flex flex-1" />
<Show
when=move || controller.data_resource.get().is_some()
fallback=Loading
>
<div class="flex flex-1" />
<div class="flex flex-col flex-2 mt-6">
<ValidatedForm title="Student Work Experience" on_submit=controller.submit_action>
<MultiEntry
label="Work Experience:"
description="Leave blank if not applicable."
data_map=controller.data_map
data_member="extracurricular"
schema=vec![
input!(Text, "job_title", "Job Title:", true, "Waiter, Cashier, etc..."),
input!(Text, "employer", "Employer:", true, "Your employer's name..."),
input!(Number, "start_date", "Start date:", true, "40"),
input!(Number, "end_date", "End date:", true, "3"),
input!(Number, "num_hours", "Number of hours completed:", true, "120"),
]
/>
</ValidatedForm>
</div>
<div class="flex flex-1" />
</Show>
}
}