summaryrefslogtreecommitdiff
path: root/http/public/scripts/contact/selectors.js
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2026-06-04 15:15:02 +0100
committerJoe Carstairs <me@joeac.net>2026-06-04 15:16:34 +0100
commit813836fbba884388e6013e9fd377430ef33b6c8d (patch)
tree056149f5c51eabaa89960a7d8d2eb68fe9b158e8 /http/public/scripts/contact/selectors.js
parentfac1199cd61e069b1a144d2548477a2c3b3b94b0 (diff)
http: adds scripts
Diffstat (limited to 'http/public/scripts/contact/selectors.js')
-rw-r--r--http/public/scripts/contact/selectors.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/http/public/scripts/contact/selectors.js b/http/public/scripts/contact/selectors.js
new file mode 100644
index 0000000..7676414
--- /dev/null
+++ b/http/public/scripts/contact/selectors.js
@@ -0,0 +1,25 @@
+/**
+ * @typedef {Object} Selectors
+ * @property {Object} contactForm
+ * @property {() => HTMLInputElement} contactForm.emailElem
+ * @property {() => Element | null} contactForm.errorElem
+ * @property {() => HTMLInputElement} contactForm.nameElem
+ * @property {() => HTMLTextAreaElement} contactForm.messageElem
+ * @property {() => HTMLFormElement | null} contactForm.self
+ * @property {() => HTMLInputElement | null} contactForm.submitButton
+ * @property {Object} otpDialog
+ * @property {() => NodeListOf<HTMLInputElement>} otpDialog.allOtpInputs
+ * @property {() => Element | null} otpDialog.errorElem
+ * @property {() => HTMLInputElement | null} otpDialog.firstOtpInput
+ * @property {() => HTMLFormElement | null} otpDialog.otpForm
+ * @property {() => Element | null} otpDialog.otpRecipient
+ * @property {() => Element | null} otpDialog.otpValidUntil
+ * @property {() => HTMLButtonElement | null} otpDialog.resendButton
+ * @property {() => HTMLDialogElement} otpDialog.self
+ * @property {() => HTMLInputElement | null} otpDialog.submitButton
+ * @property {Object} successSection
+ * @property {() => Element | null} successSection.email
+ * @property {() => Element | null} successSection.message
+ * @property {() => Element | null} successSection.name
+ * @property {() => Element | null} successSection.self
+ */