From b2233f7e0a6d2596b3fdffe0f0f76bfa58f541f9 Mon Sep 17 00:00:00 2001 From: Dan Finlay Date: Thu, 25 Aug 2016 10:33:01 -0700 Subject: Noted initial thoughts --- docs/form_persisting_architecture.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 docs/form_persisting_architecture.md (limited to 'docs') diff --git a/docs/form_persisting_architecture.md b/docs/form_persisting_architecture.md new file mode 100644 index 000000000..8b5ab495f --- /dev/null +++ b/docs/form_persisting_architecture.md @@ -0,0 +1,14 @@ +# Form Persisting Architecture + +Since: + - The popup is torn down completely on every click outside of it. + - We have forms with multiple fields (like passwords & seed phrases) that might encourage a user to leave our panel to refer to a password manager. + + We cause user friction when we lose the contents of certain forms. + + This calls for an architecture of a form component that can completely persist its values to LocalStorage on every relevant change, and restore those values on reopening. + +Whenever this class is loaded, it registers an `onChange` listener. On those events, it checks the target for a special ID attribute it listens for. + +Let's say we call our class `PersistentForm`. So then we might check for a `persistent-form-id`. + -- cgit v1.2.3