@@ -158,9 +159,10 @@ export const PasswordInput = ({
{label}
-
}
+ {...showAsNotched}
/>
{(errors[errorKey] || error)?.message}
diff --git a/frontend/src/js/common-ui/forms/TextInput.tsx b/frontend/src/js/common-ui/forms/TextInput.tsx
index 32ffbce1..4368c97e 100644
--- a/frontend/src/js/common-ui/forms/TextInput.tsx
+++ b/frontend/src/js/common-ui/forms/TextInput.tsx
@@ -14,7 +14,7 @@
import React from 'react';
import { Controller, useFormContext } from 'react-hook-form';
-import { FormControl, FormHelperText, Input, InputLabel } from '@mui/material';
+import { FormControl, FormHelperText, InputLabel, OutlinedInput } from '@mui/material';
import { runValidations } from './Form';
@@ -65,9 +65,10 @@ export const TextInput = ({
{label}
-
{
@@ -80,7 +81,6 @@ export const TextInput = ({
onChange={({ target: { value } }) => onChange(value)}
onBlur={() => (validations.includes('trim') ? onChange((value ?? passedValue).trim()) : onBlur)}
placeholder={hint}
- required={required}
type={type}
{...InputProps}
/>
diff --git a/frontend/src/js/common-ui/forms/__snapshots__/Form.test.tsx.snap b/frontend/src/js/common-ui/forms/__snapshots__/Form.test.tsx.snap
index d5926b39..46c28b97 100644
--- a/frontend/src/js/common-ui/forms/__snapshots__/Form.test.tsx.snap
+++ b/frontend/src/js/common-ui/forms/__snapshots__/Form.test.tsx.snap
@@ -156,7 +156,6 @@ exports[`Form Component renders correctly 1`] = `
margin: 0;
border: 0;
vertical-align: top;
- margin-top: 18px;
min-width: 240px;
}
@@ -184,6 +183,13 @@ exports[`Form Component renders correctly 1`] = `
transform: translate(0, 20px) scale(1);
-webkit-transition: color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms,-webkit-transform 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms,max-width 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
transition: color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms,transform 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms,max-width 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
+ z-index: 1;
+ pointer-events: none;
+ -webkit-transform: translate(14px, 16px) scale(1);
+ -moz-transform: translate(14px, 16px) scale(1);
+ -ms-transform: translate(14px, 16px) scale(1);
+ transform: translate(14px, 16px) scale(1);
+ max-width: calc(100% - 24px);
}
.emotion-6.Mui-focused {
@@ -220,6 +226,8 @@ exports[`Form Component renders correctly 1`] = `
-ms-flex-align: center;
align-items: center;
position: relative;
+ border-radius: 4px;
+ padding-right: 14px;
}
.emotion-7.Mui-disabled {
@@ -227,77 +235,30 @@ exports[`Form Component renders correctly 1`] = `
cursor: default;
}
-label+.emotion-7 {
- margin-top: 16px;
-}
-
-.emotion-7::after {
- left: 0;
- bottom: 0;
- content: "";
- position: absolute;
- right: 0;
- -webkit-transform: scaleX(0);
- -moz-transform: scaleX(0);
- -ms-transform: scaleX(0);
- transform: scaleX(0);
- -webkit-transition: -webkit-transform 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
- transition: transform 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
- pointer-events: none;
-}
-
-.emotion-7.Mui-focused:after {
- -webkit-transform: scaleX(1) translateX(0);
- -moz-transform: scaleX(1) translateX(0);
- -ms-transform: scaleX(1) translateX(0);
- transform: scaleX(1) translateX(0);
-}
-
-.emotion-7.Mui-error::before,
-.emotion-7.Mui-error::after {
- border-bottom-color: #ab1000;
-}
-
-.emotion-7::before {
- border-bottom: 1px solid rgba(0, 0, 0, 0.42);
- left: 0;
- bottom: 0;
- content: "\\00a0";
- position: absolute;
- right: 0;
- -webkit-transition: border-bottom-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
- transition: border-bottom-color 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
- pointer-events: none;
-}
-
-.emotion-7:hover:not(.Mui-disabled, .Mui-error):before {
- border-bottom: 2px solid rgba(10, 10, 11, 0.78);
+.emotion-7:hover .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(10, 10, 11, 0.78);
}
@media (hover: none) {
- .emotion-7:hover:not(.Mui-disabled, .Mui-error):before {
- border-bottom: 1px solid rgba(0, 0, 0, 0.42);
+ .emotion-7:hover .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(0, 0, 0, 0.23);
}
}
-.emotion-7.Mui-disabled:before {
- border-bottom-style: dotted;
+.emotion-7.Mui-focused .MuiOutlinedInput-notchedOutline {
+ border-width: 2px;
}
-.emotion-7::after {
- border-bottom: 2px solid #337a87;
+.emotion-7.Mui-focused .MuiOutlinedInput-notchedOutline {
+ border-color: #337a87;
}
-.emotion-7:before {
- border-bottom: 1px solid rgb(224, 224, 224);
+.emotion-7.Mui-error .MuiOutlinedInput-notchedOutline {
+ border-color: #ab1000;
}
-.emotion-7:hover:not($disabled):before {
- border-bottom: 2px solid #337a87!important;
-}
-
-.emotion-7:after {
- border-bottom: 2px solid #337a87;
+.emotion-7.Mui-disabled .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(0, 0, 0, 0.26);
}
.emotion-8 {
@@ -318,6 +279,8 @@ label+.emotion-7 {
animation-name: mui-auto-fill-cancel;
-webkit-animation-duration: 10ms;
animation-duration: 10ms;
+ padding: 16.5px 14px;
+ padding-right: 0;
}
.emotion-8::-webkit-input-placeholder {
@@ -389,6 +352,10 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
animation-name: mui-auto-fill;
}
+.emotion-8:-webkit-autofill {
+ border-radius: inherit;
+}
+
.emotion-9 {
display: -webkit-box;
display: -webkit-flex;
@@ -503,6 +470,34 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
}
.emotion-13 {
+ text-align: left;
+ position: absolute;
+ bottom: 0;
+ right: 0;
+ top: -5px;
+ left: 0;
+ margin: 0;
+ padding: 0 8px;
+ pointer-events: none;
+ border-radius: inherit;
+ border-style: solid;
+ border-width: 1px;
+ overflow: hidden;
+ min-width: 0%;
+ border-color: rgba(0, 0, 0, 0.23);
+}
+
+.emotion-14 {
+ float: unset;
+ width: auto;
+ overflow: hidden;
+ padding: 0;
+ line-height: 11px;
+ -webkit-transition: width 150ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
+ transition: width 150ms cubic-bezier(0.0, 0, 0.2, 1) 0ms;
+}
+
+.emotion-15 {
color: rgba(0, 0, 0, 0.54);
font-family: Lato,sans-serif;
font-weight: 400;
@@ -513,17 +508,165 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
margin-right: 0;
margin-bottom: 0;
margin-left: 0;
+ margin-left: 14px;
+ margin-right: 14px;
}
-.emotion-13.Mui-disabled {
+.emotion-15.Mui-disabled {
color: rgba(0, 0, 0, 0.38);
}
-.emotion-13.Mui-error {
+.emotion-15.Mui-error {
color: #ab1000;
}
+.emotion-18 {
+ line-height: 1.4375em;
+ font-family: Lato,sans-serif;
+ font-weight: 400;
+ font-size: 0.9286rem;
+ color: rgba(10, 10, 11, 0.78);
+ box-sizing: border-box;
+ position: relative;
+ cursor: text;
+ display: -webkit-inline-box;
+ display: -webkit-inline-flex;
+ display: -ms-inline-flexbox;
+ display: inline-flex;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ position: relative;
+ border-radius: 4px;
+}
+
+.emotion-18.Mui-disabled {
+ color: rgba(0, 0, 0, 0.38);
+ cursor: default;
+}
+
+.emotion-18:hover .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(10, 10, 11, 0.78);
+}
+
+@media (hover: none) {
+ .emotion-18:hover .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(0, 0, 0, 0.23);
+ }
+}
+
+.emotion-18.Mui-focused .MuiOutlinedInput-notchedOutline {
+ border-width: 2px;
+}
+
+.emotion-18.Mui-focused .MuiOutlinedInput-notchedOutline {
+ border-color: #337a87;
+}
+
+.emotion-18.Mui-error .MuiOutlinedInput-notchedOutline {
+ border-color: #ab1000;
+}
+
+.emotion-18.Mui-disabled .MuiOutlinedInput-notchedOutline {
+ border-color: rgba(0, 0, 0, 0.26);
+}
+
.emotion-19 {
+ font: inherit;
+ letter-spacing: inherit;
+ color: currentColor;
+ padding: 4px 0 5px;
+ border: 0;
+ box-sizing: content-box;
+ background: none;
+ height: 1.4375em;
+ margin: 0;
+ -webkit-tap-highlight-color: transparent;
+ display: block;
+ min-width: 0;
+ width: 100%;
+ -webkit-animation-name: mui-auto-fill-cancel;
+ animation-name: mui-auto-fill-cancel;
+ -webkit-animation-duration: 10ms;
+ animation-duration: 10ms;
+ padding: 16.5px 14px;
+}
+
+.emotion-19::-webkit-input-placeholder {
+ color: currentColor;
+ opacity: 0.42;
+ -webkit-transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+}
+
+.emotion-19::-moz-placeholder {
+ color: currentColor;
+ opacity: 0.42;
+ -webkit-transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+}
+
+.emotion-19::-ms-input-placeholder {
+ color: currentColor;
+ opacity: 0.42;
+ -webkit-transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
+}
+
+.emotion-19:focus {
+ outline: 0;
+}
+
+.emotion-19:invalid {
+ box-shadow: none;
+}
+
+.emotion-19::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19::-webkit-input-placeholder {
+ opacity: 0!important;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19::-moz-placeholder {
+ opacity: 0!important;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19::-ms-input-placeholder {
+ opacity: 0!important;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19:focus::-webkit-input-placeholder {
+ opacity: 0.42;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19:focus::-moz-placeholder {
+ opacity: 0.42;
+}
+
+label[data-shrink=false]+.MuiInputBase-formControl .emotion-19:focus::-ms-input-placeholder {
+ opacity: 0.42;
+}
+
+.emotion-19.Mui-disabled {
+ opacity: 1;
+ -webkit-text-fill-color: rgba(0, 0, 0, 0.38);
+}
+
+.emotion-19:-webkit-autofill {
+ -webkit-animation-duration: 5000s;
+ animation-duration: 5000s;
+ -webkit-animation-name: mui-auto-fill;
+ animation-name: mui-auto-fill;
+}
+
+.emotion-19:-webkit-autofill {
+ border-radius: inherit;
+}
+
+.emotion-23 {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
@@ -538,7 +681,7 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
margin-top: 32px;
}
-.emotion-20 {
+.emotion-24 {
display: -webkit-inline-box;
display: -webkit-inline-flex;
display: -ms-inline-flexbox;
@@ -597,57 +740,57 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
font-weight: bold;
}
-.emotion-20::-moz-focus-inner {
+.emotion-24::-moz-focus-inner {
border-style: none;
}
-.emotion-20.Mui-disabled {
+.emotion-24.Mui-disabled {
pointer-events: none;
cursor: default;
}
@media print {
- .emotion-20 {
+ .emotion-24 {
-webkit-print-color-adjust: exact;
color-adjust: exact;
}
}
-.emotion-20:hover {
+.emotion-24:hover {
-webkit-text-decoration: none;
text-decoration: none;
}
-.emotion-20.Mui-disabled {
+.emotion-24.Mui-disabled {
color: rgba(0, 0, 0, 0.26);
}
-.emotion-20:hover {
+.emotion-24:hover {
box-shadow: 0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12);
}
@media (hover: none) {
- .emotion-20:hover {
+ .emotion-24:hover {
box-shadow: 0px 3px 1px -2px rgba(0,0,0,0.2),0px 2px 2px 0px rgba(0,0,0,0.14),0px 1px 5px 0px rgba(0,0,0,0.12);
}
}
-.emotion-20:active {
+.emotion-24:active {
box-shadow: 0px 5px 5px -3px rgba(0,0,0,0.2),0px 8px 10px 1px rgba(0,0,0,0.14),0px 3px 14px 2px rgba(0,0,0,0.12);
}
-.emotion-20.Mui-focusVisible {
+.emotion-24.Mui-focusVisible {
box-shadow: 0px 3px 5px -1px rgba(0,0,0,0.2),0px 6px 10px 0px rgba(0,0,0,0.14),0px 1px 18px 0px rgba(0,0,0,0.12);
}
-.emotion-20.Mui-disabled {
+.emotion-24.Mui-disabled {
color: rgba(0, 0, 0, 0.26);
box-shadow: none;
background-color: rgba(0, 0, 0, 0.12);
}
@media (hover: hover) {
- .emotion-20:hover {
+ .emotion-24:hover {
--variant-containedBg: rgb(35, 85, 94);
--variant-textBg: rgba(51, 122, 135, 0.04);
--variant-outlinedBorder: #337a87;
@@ -655,15 +798,15 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
}
}
-.emotion-20.MuiButton-loading {
+.emotion-24.MuiButton-loading {
color: transparent;
}
-.emotion-20:hover {
+.emotion-24:hover {
colors: #337a87;
}
-.emotion-20.MuiButton-text {
+.emotion-24.MuiButton-text {
color: rgba(10, 10, 11, 0.78);
}
@@ -710,23 +853,23 @@ label[data-shrink=false]+.MuiInputBase-formControl .emotion-8:focus::-ms-input-p
style="width: 400px;"
>