2020-04-02 19:32:40 +02:00
|
|
|
use seed::{prelude::*, *};
|
2020-03-31 08:56:46 +02:00
|
|
|
|
2020-04-13 16:29:26 +02:00
|
|
|
use crate::shared::styled_editor::StyledEditor;
|
|
|
|
use crate::shared::styled_field::StyledField;
|
|
|
|
use crate::shared::styled_form::StyledForm;
|
|
|
|
use crate::shared::styled_input::StyledInput;
|
|
|
|
use crate::shared::{inner_layout, ToNode};
|
|
|
|
use crate::{model, FieldId, Msg, ProjectSettingsFieldId};
|
2020-03-30 14:26:25 +02:00
|
|
|
|
|
|
|
pub fn update(_msg: Msg, _model: &mut model::Model, _orders: &mut impl Orders<Msg>) {}
|
|
|
|
|
|
|
|
pub fn view(model: &model::Model) -> Node<Msg> {
|
2020-04-13 16:29:26 +02:00
|
|
|
let name = StyledInput::build(FieldId::ProjectSettings(ProjectSettingsFieldId::Name))
|
|
|
|
.valid(true)
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
let name_field = StyledField::build()
|
|
|
|
.label("Name")
|
|
|
|
.input(name)
|
|
|
|
.tip("")
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
|
|
|
|
let url = StyledInput::build(FieldId::ProjectSettings(ProjectSettingsFieldId::Url))
|
|
|
|
.valid(true)
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
let url_field = StyledField::build()
|
|
|
|
.label("Url")
|
|
|
|
.input(url)
|
|
|
|
.tip("")
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
|
|
|
|
let description = StyledEditor::build(FieldId::ProjectSettings(
|
|
|
|
ProjectSettingsFieldId::Description,
|
|
|
|
))
|
|
|
|
.text("")
|
|
|
|
.update_on(Ev::Change)
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
let description_field = StyledField::build()
|
|
|
|
.input(description)
|
|
|
|
.label("Description")
|
|
|
|
.tip("Describe the project in as much detail as you'd like.")
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
|
|
|
|
let form = StyledForm::build()
|
|
|
|
.heading("Project Details")
|
|
|
|
.add_field(name_field)
|
|
|
|
.add_field(url_field)
|
|
|
|
.add_field(description_field)
|
|
|
|
.build()
|
|
|
|
.into_node();
|
|
|
|
|
|
|
|
let project_section = vec![form];
|
2020-03-30 14:26:25 +02:00
|
|
|
|
2020-04-02 19:32:40 +02:00
|
|
|
inner_layout(model, "projectSettings", project_section, empty![])
|
2020-03-30 14:26:25 +02:00
|
|
|
}
|