.
This commit is contained in:
+9
-14
@@ -245,11 +245,7 @@ impl Publisher {
|
||||
}
|
||||
}
|
||||
Message::URLInputChanged(value) => {
|
||||
if Url::parse(&value).is_ok() {
|
||||
self.url_input_valid = true;
|
||||
} else {
|
||||
self.url_input_valid = false;
|
||||
}
|
||||
self.url_input_valid = Url::parse(&value).is_ok();
|
||||
self.url_input = value;
|
||||
}
|
||||
Message::URLInputSubmitted => {
|
||||
@@ -295,13 +291,13 @@ impl Publisher {
|
||||
task = Task::done(Message::ShowNewDocumentButtons);
|
||||
}
|
||||
Message::LoadDocument(document) => {
|
||||
let nodes_to_look_up = document.dataset().quads.iter().map(|(_, quad)| {
|
||||
let nodes_to_look_up = document.dataset().quads.iter().flat_map(|(_, quad)| {
|
||||
let mut nodes = vec![ quad.predicate.clone() ];
|
||||
if let Some(object) = term_to_named_node(&quad.object) {
|
||||
nodes.push(object.clone());
|
||||
}
|
||||
nodes
|
||||
}).flatten().collect();
|
||||
}).collect();
|
||||
|
||||
let add_row_tasks = document.dataset().quads.iter().map(|(key, quad)| {
|
||||
let datatype_state = combo_box::State::new(self.abbreviated_datatypes.clone());
|
||||
@@ -578,12 +574,11 @@ impl Publisher {
|
||||
}
|
||||
}
|
||||
Message::NavigateToObject(key) => {
|
||||
if let Some(quad) = self.document.dataset_mut().quads.get_mut(key) {
|
||||
if let Term::NamedNode(node) = &quad.object {
|
||||
if let Some(quad) = self.document.dataset_mut().quads.get_mut(key)
|
||||
&& let Term::NamedNode(node) = &quad.object {
|
||||
let url = Url::parse(node.as_str()).expect("Invalid URL");
|
||||
task = Task::done(Message::URLInputChanged(url.to_string()))
|
||||
.chain(Task::done(Message::URLInputSubmitted));
|
||||
}
|
||||
}
|
||||
}
|
||||
Message::NavigateBack => {
|
||||
@@ -836,7 +831,7 @@ impl Publisher {
|
||||
search_state.entity_class_selection.as_ref(),
|
||||
Class::ALL,
|
||||
ToString::to_string,
|
||||
).on_select(|selection| Message::UpdateQueryClass(selection));
|
||||
).on_select(Message::UpdateQueryClass);
|
||||
|
||||
let mut columns = vec![table::column(text("CURIE"), |document: &HashMap<gl_search::Field, gl_search::OwnedValue>| {
|
||||
let iri = document.get(&Schema::iri_field())
|
||||
@@ -888,8 +883,8 @@ impl Publisher {
|
||||
}
|
||||
|
||||
pub(crate) fn view(&self, window: window::Id) -> Element<'_, Message> {
|
||||
if let Some(search_state) = &self.search_state
|
||||
&& search_state.window_id == window {
|
||||
if let Some(search_state) = &self.search_state &&
|
||||
search_state.window_id == window {
|
||||
return self.view_search_window(search_state);
|
||||
}
|
||||
|
||||
@@ -1074,4 +1069,4 @@ where
|
||||
)
|
||||
]
|
||||
.into()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user