Misc · Export and import: export, field mapping and a CSV importer
misc::ExportDialog offers the owner's formats as cards and hands the chosen one over for the owner to write. misc::ImportDialog maps the file's columns to the app's fields, matched by name to start, over a preview, and asks for each required field's column. misc::CsvImporter reads CSV as RFC 4180, lets the first row name the columns or not, and maps it through the ImportDialog into records; text that does not read says why.
This commit is contained in:
1 parent
cbba4ddeec
commit
79fe78cefd
9 files changed
+1023
-4
No files matched your search
@@ -10,13 +10,14 @@ use crate::ui::{section, specimen, specimens};
|
||||
mod asking;
|
||||
mod codes;
|
||||
mod notices;
|
||||
mod transfer;
|
||||
mod web;
|
||||
|
||||
pub const PAGE: Page = Page {
|
||||
number: 42,
|
||||
slug: "misc",
|
||||
title: "Misc",
|
||||
summary: "Small tools that stand alone: clocks, a stopwatch, a calculator, a unit converter, a QR code scanner, a captcha, a poll, a survey, a quiz, flashcards, licenses, terms, a cookie banner and web views.",
|
||||
summary: "Small tools that stand alone: clocks, a stopwatch, a calculator, a unit converter, a QR code scanner, a captcha, a poll, a survey, a quiz, flashcards, licenses, terms, a cookie banner, data out and in, and web views.",
|
||||
render,
|
||||
script: &[
|
||||
Step::DownAt("stopwatch-start", 30.0, 62.0),
|
||||
@@ -66,6 +67,14 @@ pub const PAGE: Page = Page {
|
||||
Step::UpAt("cookies", 230.0, 84.0),
|
||||
Step::HoverAt("cookies", 20.0, 20.0),
|
||||
Step::Shot("cookies-choosing"),
|
||||
Step::DownAt("open-export", 20.0, 16.0),
|
||||
Step::UpAt("open-export", 20.0, 16.0),
|
||||
Step::Shot("export"),
|
||||
Step::Key("escape"),
|
||||
Step::DownAt("open-csv", 20.0, 16.0),
|
||||
Step::UpAt("open-csv", 20.0, 16.0),
|
||||
Step::Shot("csv-import"),
|
||||
Step::Key("escape"),
|
||||
Step::DownAt("web", 240.0, 100.0),
|
||||
Step::UpAt("web", 240.0, 100.0),
|
||||
Step::DownAt("converter", 24.0, 60.0),
|
||||
@@ -89,6 +98,7 @@ fn render(window: &mut Window, cx: &mut App) -> AnyElement {
|
||||
.child(codes::render(window, cx))
|
||||
.child(asking::render(window, cx))
|
||||
.child(notices::render(window, cx))
|
||||
.child(transfer::render(window, cx))
|
||||
.child(web::render(cx))
|
||||
.into_any_element()
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user