@bloom-housing/ui-components 11.0.0 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/actions/ExpandableContent.test.js +1 -1
- package/dist/__tests__/actions/ExpandableContent.test.js.map +1 -1
- package/dist/__tests__/page_components/ContentAccordion.test.js +2 -2
- package/dist/__tests__/page_components/ContentAccordion.test.js.map +1 -1
- package/dist/src/actions/Button.d.ts +1 -1
- package/dist/src/actions/Button.js +1 -1
- package/dist/src/actions/Button.js.map +1 -1
- package/dist/src/actions/LinkButton.js +2 -2
- package/dist/src/actions/LinkButton.js.map +1 -1
- package/dist/src/blocks/DashBlock.js +1 -1
- package/dist/src/blocks/DashBlock.js.map +1 -1
- package/dist/src/blocks/ImageCard.js +1 -1
- package/dist/src/blocks/ImageCard.js.map +1 -1
- package/dist/src/blocks/Tooltip.js +2 -2
- package/dist/src/blocks/Tooltip.js.map +1 -1
- package/dist/src/blocks/ViewItem.js +2 -2
- package/dist/src/blocks/ViewItem.js.map +1 -1
- package/dist/src/forms/Dropzone.js +1 -1
- package/dist/src/forms/Dropzone.js.map +1 -1
- package/dist/src/forms/Field.js +1 -1
- package/dist/src/forms/Field.js.map +1 -1
- package/dist/src/forms/FieldGroup.js +8 -8
- package/dist/src/forms/FieldGroup.js.map +1 -1
- package/dist/src/forms/HouseholdMemberForm.js +1 -1
- package/dist/src/forms/HouseholdMemberForm.js.map +1 -1
- package/dist/src/forms/MultiSelectField.js +1 -1
- package/dist/src/forms/MultiSelectField.js.map +1 -1
- package/dist/src/forms/PhoneField.js +2 -2
- package/dist/src/forms/PhoneField.js.map +1 -1
- package/dist/src/forms/Select.js +2 -2
- package/dist/src/forms/Select.js.map +1 -1
- package/dist/src/forms/Textarea.js +1 -1
- package/dist/src/forms/Textarea.js.map +1 -1
- package/dist/src/headers/Hero.js +1 -1
- package/dist/src/headers/Hero.js.map +1 -1
- package/dist/src/headers/PageHeader.js +1 -1
- package/dist/src/headers/PageHeader.js.map +1 -1
- package/dist/src/headers/SiteHeader.js +3 -3
- package/dist/src/headers/SiteHeader.js.map +1 -1
- package/dist/src/icons/Icon.js +2 -2
- package/dist/src/icons/Icon.js.map +1 -1
- package/dist/src/notifications/AlertBox.js +1 -1
- package/dist/src/notifications/AlertBox.js.map +1 -1
- package/dist/src/notifications/ErrorMessage.js +1 -1
- package/dist/src/notifications/ErrorMessage.js.map +1 -1
- package/dist/src/overlays/LoadingOverlay.js +1 -1
- package/dist/src/overlays/LoadingOverlay.js.map +1 -1
- package/dist/src/page_components/listing/ContentAccordion.js +1 -1
- package/dist/src/page_components/listing/ContentAccordion.js.map +1 -1
- package/dist/src/page_components/listing/ListingCard.js +1 -1
- package/dist/src/page_components/listing/ListingCard.js.map +1 -1
- package/dist/src/page_components/listing/listing_sidebar/GetApplication.js +2 -2
- package/dist/src/page_components/listing/listing_sidebar/GetApplication.js.map +1 -1
- package/dist/src/page_components/sign-in/FormSignIn.js +1 -1
- package/dist/src/page_components/sign-in/FormSignIn.js.map +1 -1
- package/dist/src/page_components/sign-in/FormSignInAddPhone.js +1 -1
- package/dist/src/page_components/sign-in/FormSignInAddPhone.js.map +1 -1
- package/dist/src/page_components/sign-in/FormSignInMFACode.js +1 -1
- package/dist/src/page_components/sign-in/FormSignInMFACode.js.map +1 -1
- package/dist/src/page_components/sign-in/FormSignInMFAType.js +2 -2
- package/dist/src/page_components/sign-in/FormSignInMFAType.js.map +1 -1
- package/dist/src/page_components/sign-in/FormTerms.js +1 -1
- package/dist/src/page_components/sign-in/FormTerms.js.map +1 -1
- package/dist/src/tables/AgPagination.js +4 -4
- package/dist/src/tables/AgPagination.js.map +1 -1
- package/package.json +28 -26
- package/src/actions/Button.tsx +2 -2
- package/src/actions/LinkButton.tsx +2 -2
- package/src/blocks/DashBlock.tsx +1 -1
- package/src/blocks/ImageCard.tsx +1 -1
- package/src/blocks/Tooltip.tsx +2 -2
- package/src/blocks/ViewItem.tsx +2 -2
- package/src/forms/Dropzone.tsx +1 -1
- package/src/forms/Field.tsx +1 -1
- package/src/forms/FieldGroup.tsx +10 -10
- package/src/forms/HouseholdMemberForm.tsx +1 -1
- package/src/forms/MultiSelectField.tsx +1 -1
- package/src/forms/PhoneField.tsx +2 -2
- package/src/forms/Select.tsx +3 -3
- package/src/forms/Textarea.tsx +1 -1
- package/src/headers/Hero.tsx +1 -1
- package/src/headers/PageHeader.tsx +1 -1
- package/src/headers/SiteHeader.tsx +3 -3
- package/src/icons/Icon.tsx +2 -2
- package/src/notifications/AlertBox.tsx +1 -1
- package/src/notifications/ErrorMessage.tsx +1 -1
- package/src/overlays/LoadingOverlay.tsx +1 -1
- package/src/page_components/listing/ContentAccordion.tsx +1 -1
- package/src/page_components/listing/ListingCard.tsx +1 -1
- package/src/page_components/listing/listing_sidebar/GetApplication.tsx +2 -2
- package/src/page_components/sign-in/FormSignIn.tsx +1 -1
- package/src/page_components/sign-in/FormSignInAddPhone.tsx +1 -1
- package/src/page_components/sign-in/FormSignInMFACode.tsx +1 -1
- package/src/page_components/sign-in/FormSignInMFAType.tsx +2 -2
- package/src/page_components/sign-in/FormTerms.tsx +1 -1
- package/src/tables/AgPagination.tsx +4 -4
package/src/blocks/Tooltip.tsx
CHANGED
|
@@ -50,12 +50,12 @@ const Tooltip = ({ className, id, text, children }: React.PropsWithChildren<Tool
|
|
|
50
50
|
style={position || {}}
|
|
51
51
|
role="tooltip"
|
|
52
52
|
id={id}
|
|
53
|
-
data-
|
|
53
|
+
data-testid="tooltip-element"
|
|
54
54
|
>
|
|
55
55
|
{text}
|
|
56
56
|
</div>
|
|
57
57
|
|
|
58
|
-
<div className="tooltip__children" data-
|
|
58
|
+
<div className="tooltip__children" data-testid="tooltip-children" ref={childrenWrapperRef}>
|
|
59
59
|
{children}
|
|
60
60
|
</div>
|
|
61
61
|
</div>
|
package/src/blocks/ViewItem.tsx
CHANGED
|
@@ -23,14 +23,14 @@ const ViewItem = (props: ViewItemProps) => {
|
|
|
23
23
|
if (props.truncated) valueClassName += " is-truncated"
|
|
24
24
|
|
|
25
25
|
return (
|
|
26
|
-
<div id={props.id} className={viewItemClasses.join(" ")} data-
|
|
26
|
+
<div id={props.id} className={viewItemClasses.join(" ")} data-testid={props.dataTestId}>
|
|
27
27
|
{props.label && (
|
|
28
28
|
<span className={`view-item__label ${props.error ? "view-item__label-error" : ""}`}>
|
|
29
29
|
{props.label}
|
|
30
30
|
</span>
|
|
31
31
|
)}
|
|
32
32
|
{props.children && (
|
|
33
|
-
<span className={valueClassName} data-
|
|
33
|
+
<span className={valueClassName} data-testid={props.dataTestId}>
|
|
34
34
|
{props.children}
|
|
35
35
|
</span>
|
|
36
36
|
)}
|
package/src/forms/Dropzone.tsx
CHANGED
|
@@ -59,7 +59,7 @@ const Dropzone = (props: DropzoneProps) => {
|
|
|
59
59
|
<progress className="dropzone__progress" max="100" value={props.progress}></progress>
|
|
60
60
|
) : (
|
|
61
61
|
<div className={dropzoneClasses.join(" ")} {...getRootProps()}>
|
|
62
|
-
<input id={props.id} {...getInputProps()} data-
|
|
62
|
+
<input id={props.id} {...getInputProps()} data-testid={"dropzone-input"} />
|
|
63
63
|
{isDragActive ? (
|
|
64
64
|
<p>{props.strings?.dropHere ?? t("t.dropFilesHere")}</p>
|
|
65
65
|
) : (
|
package/src/forms/Field.tsx
CHANGED
package/src/forms/FieldGroup.tsx
CHANGED
|
@@ -63,8 +63,8 @@ const FieldGroup = ({
|
|
|
63
63
|
}: FieldGroupProps) => {
|
|
64
64
|
// Always default align two-option radio groups side by side
|
|
65
65
|
if (fields?.length === 2) {
|
|
66
|
-
fieldGroupClassName = `${fieldGroupClassName} flex`
|
|
67
|
-
fieldClassName = `${fieldClassName} flex-initial mr-4`
|
|
66
|
+
fieldGroupClassName = `${fieldGroupClassName || ""} flex`
|
|
67
|
+
fieldClassName = `${fieldClassName || ""} flex-initial mr-4`
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
const [checkedInputs, setCheckedInputs] = useState<string[]>([])
|
|
@@ -82,7 +82,7 @@ const FieldGroup = ({
|
|
|
82
82
|
type={type}
|
|
83
83
|
id={item.id}
|
|
84
84
|
defaultValue={item.value || item.id}
|
|
85
|
-
name={subfieldsExist() || item.uniqueName ? `${name}-${item.value}` : name}
|
|
85
|
+
name={subfieldsExist() || item.uniqueName ? `${name}-${item.value || ""}` : name}
|
|
86
86
|
onClick={(e) => {
|
|
87
87
|
// We cannot reliably target an individual checkbox in a field group since they have the same name, so we keep track on our own
|
|
88
88
|
if (e.currentTarget.checked) {
|
|
@@ -95,12 +95,12 @@ const FieldGroup = ({
|
|
|
95
95
|
disabled={item.disabled}
|
|
96
96
|
ref={register(validation)}
|
|
97
97
|
{...item.inputProps}
|
|
98
|
-
data-
|
|
98
|
+
data-testid={item.dataTestId ?? dataTestId}
|
|
99
99
|
/>
|
|
100
100
|
<label
|
|
101
101
|
htmlFor={item.id}
|
|
102
|
-
className={`font-semibold ${fieldLabelClassName} ${
|
|
103
|
-
item.disabled
|
|
102
|
+
className={`font-semibold ${fieldLabelClassName || ""} ${
|
|
103
|
+
item.disabled ? "text-gray-600 cursor-not-allowed" : ""
|
|
104
104
|
}`}
|
|
105
105
|
>
|
|
106
106
|
{item.label}
|
|
@@ -150,8 +150,8 @@ const FieldGroup = ({
|
|
|
150
150
|
{item.additionalText && checkedInputs.indexOf(item.label) >= 0 && (
|
|
151
151
|
<Field
|
|
152
152
|
id={item.id}
|
|
153
|
-
key={`${item.value}-additionalText`}
|
|
154
|
-
name={`${name}-${item.value}`}
|
|
153
|
+
key={`${item.value || ""}-additionalText`}
|
|
154
|
+
name={`${name}-${item.value || ""}`}
|
|
155
155
|
register={register}
|
|
156
156
|
defaultValue={item.defaultText}
|
|
157
157
|
placeholder={strings?.description ?? t("t.description")}
|
|
@@ -168,12 +168,12 @@ const FieldGroup = ({
|
|
|
168
168
|
{groupLabel && <label className="text__caps-spaced">{groupLabel}</label>}
|
|
169
169
|
{groupNote && <p className="field-note mb-4">{groupNote}</p>}
|
|
170
170
|
|
|
171
|
-
<div className={`field ${error
|
|
171
|
+
<div className={`field ${error ? "error" : ""} ${fieldGroupClassName || ""} mb-0`}>
|
|
172
172
|
{fields?.map((item) => (
|
|
173
173
|
<div className={`field ${fieldClassName || ""} mb-1`} key={item.id}>
|
|
174
174
|
{getInputSet(item)}
|
|
175
175
|
{item.subFields && checkedInputs.indexOf(item.label) >= 0 && (
|
|
176
|
-
<div className={"ml-8"} key={`${item.value}-subfields`}>
|
|
176
|
+
<div className={"ml-8"} key={`${item.value || ""}-subfields`}>
|
|
177
177
|
{item.subFields?.map((subItem) => {
|
|
178
178
|
return getInputSet(subItem)
|
|
179
179
|
})}
|
|
@@ -27,7 +27,7 @@ const HouseholdMemberForm = (props: HouseholdMemberFormProps) => {
|
|
|
27
27
|
className="edit-link"
|
|
28
28
|
onClick={() => props.editMember && props.editMember(props.memberId)}
|
|
29
29
|
type={"button"}
|
|
30
|
-
data-
|
|
30
|
+
data-testid={"app-household-member-edit-button"}
|
|
31
31
|
>
|
|
32
32
|
{props.strings?.edit ?? t("t.edit")}
|
|
33
33
|
</button>
|
|
@@ -80,7 +80,7 @@ const MultiSelectField = (props: MultiSelectFieldProps) => {
|
|
|
80
80
|
return (
|
|
81
81
|
<div className="field multi-select-field">
|
|
82
82
|
{props.label && label}
|
|
83
|
-
<div className="control" data-
|
|
83
|
+
<div className="control" data-testid={props.dataTestId}>
|
|
84
84
|
<Icon symbol="search" size="medium" />
|
|
85
85
|
<input
|
|
86
86
|
id={props.id}
|
package/src/forms/PhoneField.tsx
CHANGED
|
@@ -60,7 +60,7 @@ export const PhoneField = (props: {
|
|
|
60
60
|
{props.label}
|
|
61
61
|
</label>
|
|
62
62
|
)}
|
|
63
|
-
<div className={props.controlClassName} data-
|
|
63
|
+
<div className={props.controlClassName} data-testid={props.dataTestId}>
|
|
64
64
|
{props.mask ? (
|
|
65
65
|
<Controller {...controllerProps} render={props.mask} />
|
|
66
66
|
) : (
|
|
@@ -68,7 +68,7 @@ export const PhoneField = (props: {
|
|
|
68
68
|
)}
|
|
69
69
|
</div>
|
|
70
70
|
{props.subNote && <p className="field-sub-note">{props.subNote}</p>}
|
|
71
|
-
<ErrorMessage id={`${props.id}-error`} error={props.error}>
|
|
71
|
+
<ErrorMessage id={`${props.id || ""}-error`} error={props.error}>
|
|
72
72
|
{props.errorMessage}
|
|
73
73
|
</ErrorMessage>
|
|
74
74
|
</div>
|
package/src/forms/Select.tsx
CHANGED
|
@@ -60,8 +60,8 @@ export const Select = ({
|
|
|
60
60
|
className="input"
|
|
61
61
|
id={id || name}
|
|
62
62
|
name={name}
|
|
63
|
-
data-
|
|
64
|
-
aria-describedby={describedBy ? describedBy : `${id}-error`}
|
|
63
|
+
data-testid={dataTestId}
|
|
64
|
+
aria-describedby={describedBy ? describedBy : `${id || name}-error`}
|
|
65
65
|
aria-invalid={!!error || false}
|
|
66
66
|
aria-label={label}
|
|
67
67
|
ref={register && register(validation)}
|
|
@@ -79,7 +79,7 @@ export const Select = ({
|
|
|
79
79
|
</div>
|
|
80
80
|
{subNote && <p className="field-sub-note">{subNote}</p>}
|
|
81
81
|
{error && errorMessage && (
|
|
82
|
-
<ErrorMessage id={`${id}-error`} error={error}>
|
|
82
|
+
<ErrorMessage id={`${id || name}-error`} error={error}>
|
|
83
83
|
{errorMessage}
|
|
84
84
|
</ErrorMessage>
|
|
85
85
|
)}
|
package/src/forms/Textarea.tsx
CHANGED
|
@@ -57,7 +57,7 @@ export const Textarea = (props: TextareaProps) => {
|
|
|
57
57
|
wrap={props.wrap ?? "soft"}
|
|
58
58
|
title={props.label}
|
|
59
59
|
{...inputProps}
|
|
60
|
-
data-
|
|
60
|
+
data-testid={props.dataTestId}
|
|
61
61
|
/>
|
|
62
62
|
{props.note && <p className="field-note font-normal mb-2">{props.note}</p>}
|
|
63
63
|
{props.errorMessage && <span className="textarea-error-message">{props.errorMessage}</span>}
|
package/src/headers/Hero.tsx
CHANGED
|
@@ -52,7 +52,7 @@ const Hero = (props: HeroProps) => {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
return (
|
|
55
|
-
<div className={heroClasses.join(" ")} style={styles} data-
|
|
55
|
+
<div className={heroClasses.join(" ")} style={styles} data-testid="hero-component">
|
|
56
56
|
<div className={innerClasses.join(" ")}>
|
|
57
57
|
<h1
|
|
58
58
|
className={`hero__title
|
|
@@ -157,7 +157,7 @@ const SiteHeader = (props: SiteHeaderProps) => {
|
|
|
157
157
|
}
|
|
158
158
|
dropdownOptionKeyDown(event, index)
|
|
159
159
|
}}
|
|
160
|
-
data-
|
|
160
|
+
data-testid={`${option.title}-${index}`}
|
|
161
161
|
>
|
|
162
162
|
{dropdownOptionContent(option)}
|
|
163
163
|
</button>
|
|
@@ -327,7 +327,7 @@ const SiteHeader = (props: SiteHeaderProps) => {
|
|
|
327
327
|
}`}
|
|
328
328
|
href={menuLink.href}
|
|
329
329
|
key={`${menuLink.title}-${index}`}
|
|
330
|
-
data-
|
|
330
|
+
data-testid={`${menuLink.title}-${index}`}
|
|
331
331
|
>
|
|
332
332
|
{menuContent}
|
|
333
333
|
</LinkComponent>
|
|
@@ -367,7 +367,7 @@ const SiteHeader = (props: SiteHeaderProps) => {
|
|
|
367
367
|
onMouseEnter={() => changeMenuShow(menuLink.title, activeMenus, setActiveMenus)}
|
|
368
368
|
onMouseLeave={() => changeMenuShow(menuLink.title, activeMenus, setActiveMenus)}
|
|
369
369
|
role={"button"}
|
|
370
|
-
data-
|
|
370
|
+
data-testid={`${menuLink.title}-${index}`}
|
|
371
371
|
>
|
|
372
372
|
{menuContent}
|
|
373
373
|
</span>
|
package/src/icons/Icon.tsx
CHANGED
|
@@ -182,8 +182,8 @@ const Icon = (props: IconProps) => {
|
|
|
182
182
|
<span
|
|
183
183
|
className={wrapperClasses.join(" ")}
|
|
184
184
|
aria-hidden={props.ariaHidden}
|
|
185
|
-
data-test-id={props.dataTestId ?? null}
|
|
186
185
|
tabIndex={props.tabIndex}
|
|
186
|
+
data-testid={props.dataTestId ?? null}
|
|
187
187
|
>
|
|
188
188
|
<SpecificIcon
|
|
189
189
|
fill={props.fill ? props.fill : undefined}
|
|
@@ -194,7 +194,7 @@ const Icon = (props: IconProps) => {
|
|
|
194
194
|
<span
|
|
195
195
|
className={wrapperClasses.join(" ")}
|
|
196
196
|
aria-hidden={props.ariaHidden}
|
|
197
|
-
data-
|
|
197
|
+
data-testid={props.dataTestId ?? null}
|
|
198
198
|
style={{ color: props.fill }}
|
|
199
199
|
>
|
|
200
200
|
{SpecificIcon}
|
|
@@ -12,7 +12,7 @@ const LoadingOverlay = ({ isLoading, children }: LoadingOverlayProps) => {
|
|
|
12
12
|
if (!isLoading) return children
|
|
13
13
|
|
|
14
14
|
return (
|
|
15
|
-
<div className="loading-overlay" data-
|
|
15
|
+
<div className="loading-overlay" data-testid="loading-overlay">
|
|
16
16
|
<Icon size="3xl" symbol="spinner" className="loading-overlay__spinner" />
|
|
17
17
|
{children}
|
|
18
18
|
</div>
|
|
@@ -35,7 +35,7 @@ const ContentAccordion = (props: ContentAccordionProps) => {
|
|
|
35
35
|
className={`w-full ${props.disableAccordion ? "cursor-default" : ""}`}
|
|
36
36
|
ref={buttonRef}
|
|
37
37
|
aria-expanded={accordionOpen}
|
|
38
|
-
data-
|
|
38
|
+
data-testid={"content-accordion-button"}
|
|
39
39
|
>
|
|
40
40
|
<div
|
|
41
41
|
className={`flex justify-between ${props.barClass ? props.barClass : ""} ${
|
|
@@ -210,7 +210,7 @@ const ListingCard = (props: ListingCardProps) => {
|
|
|
210
210
|
}
|
|
211
211
|
|
|
212
212
|
return (
|
|
213
|
-
<article className="listings-row" data-
|
|
213
|
+
<article className="listings-row" data-testid={"listing-card-component"}>
|
|
214
214
|
<div className="listings-row_figure">
|
|
215
215
|
<ImageCard {...imageCardProps} />
|
|
216
216
|
</div>
|
|
@@ -55,7 +55,7 @@ const GetApplication = (props: ApplicationsProps) => {
|
|
|
55
55
|
if (!showSection) return null
|
|
56
56
|
|
|
57
57
|
return (
|
|
58
|
-
<section className="aside-block" data-
|
|
58
|
+
<section className="aside-block" data-testid="get-application-section">
|
|
59
59
|
<Heading priority={2} styleType={"underlineWeighted"}>
|
|
60
60
|
{props.strings?.howToApply ?? t("listings.apply.howToApply")}
|
|
61
61
|
</Heading>
|
|
@@ -71,7 +71,7 @@ const GetApplication = (props: ApplicationsProps) => {
|
|
|
71
71
|
{props.applicationsOpen && props.onlineApplicationURL && (
|
|
72
72
|
<>
|
|
73
73
|
{props.preview ? (
|
|
74
|
-
<Button disabled className="w-full mb-2" data-
|
|
74
|
+
<Button disabled className="w-full mb-2" data-testid={"listing-view-apply-button"}>
|
|
75
75
|
{props.strings?.applyOnline ?? t("listings.apply.applyOnline")}
|
|
76
76
|
</Button>
|
|
77
77
|
) : (
|
|
@@ -105,7 +105,7 @@ const FormSignIn = ({
|
|
|
105
105
|
/>
|
|
106
106
|
|
|
107
107
|
<div className="text-center mt-6">
|
|
108
|
-
<Button styleType={AppearanceStyleType.primary} data-
|
|
108
|
+
<Button styleType={AppearanceStyleType.primary} data-testid="sign-in-button">
|
|
109
109
|
{t("nav.signIn")}
|
|
110
110
|
</Button>
|
|
111
111
|
</div>
|
|
@@ -73,7 +73,7 @@ const FormSignInAddPhone = ({
|
|
|
73
73
|
<div className="text-center mt-10">
|
|
74
74
|
<Button
|
|
75
75
|
styleType={AppearanceStyleType.primary}
|
|
76
|
-
data-
|
|
76
|
+
data-testid="request-mfa-code-and-add-phone"
|
|
77
77
|
>
|
|
78
78
|
{t("nav.signInMFA.addPhoneNumber")}
|
|
79
79
|
</Button>
|
|
@@ -93,7 +93,7 @@ const FormSignInMFACode = ({
|
|
|
93
93
|
note={note}
|
|
94
94
|
/>
|
|
95
95
|
<div className="text-center mt-10">
|
|
96
|
-
<Button styleType={AppearanceStyleType.primary} data-
|
|
96
|
+
<Button styleType={AppearanceStyleType.primary} data-testid="verify-and-sign-in">
|
|
97
97
|
{t("nav.signInMFA.signIn")}
|
|
98
98
|
</Button>
|
|
99
99
|
</div>
|
|
@@ -74,7 +74,7 @@ const FormSignInMFAType = ({
|
|
|
74
74
|
<div className="text-center mt-6">
|
|
75
75
|
<Button
|
|
76
76
|
styleType={AppearanceStyleType.accentCool}
|
|
77
|
-
data-
|
|
77
|
+
data-testid="verify-by-email"
|
|
78
78
|
onClick={emailOnClick}
|
|
79
79
|
>
|
|
80
80
|
{t("nav.signInMFA.verifyByEmail")}
|
|
@@ -83,7 +83,7 @@ const FormSignInMFAType = ({
|
|
|
83
83
|
<div className="text-center mt-6">
|
|
84
84
|
<Button
|
|
85
85
|
styleType={AppearanceStyleType.accentCool}
|
|
86
|
-
data-
|
|
86
|
+
data-testid="verify-by-phone"
|
|
87
87
|
onClick={smsOnClick}
|
|
88
88
|
>
|
|
89
89
|
{t("nav.signInMFA.verifyByPhone")}
|
|
@@ -63,7 +63,7 @@ const FormTerms = (props: FormTermsProps) => {
|
|
|
63
63
|
|
|
64
64
|
<div className="form-card__pager">
|
|
65
65
|
<div className="form-card__pager-row primary">
|
|
66
|
-
<Button styleType={AppearanceStyleType.primary} data-
|
|
66
|
+
<Button styleType={AppearanceStyleType.primary} data-testid="form-submit">
|
|
67
67
|
{t("t.submit")}
|
|
68
68
|
</Button>
|
|
69
69
|
</div>
|
|
@@ -67,7 +67,7 @@ const AgPagination = ({
|
|
|
67
67
|
{t("t.show")}
|
|
68
68
|
</label>
|
|
69
69
|
<select
|
|
70
|
-
data-
|
|
70
|
+
data-testid="ag-page-size"
|
|
71
71
|
name="page-size"
|
|
72
72
|
id="page-size"
|
|
73
73
|
value={itemsPerPage}
|
|
@@ -86,7 +86,7 @@ const AgPagination = ({
|
|
|
86
86
|
{t("t.jumpTo")}
|
|
87
87
|
</label>
|
|
88
88
|
<select
|
|
89
|
-
data-
|
|
89
|
+
data-testid="ag-page-select"
|
|
90
90
|
name="page-jump"
|
|
91
91
|
id="page-jump"
|
|
92
92
|
onChange={(e: React.ChangeEvent<HTMLSelectElement>) =>
|
|
@@ -112,7 +112,7 @@ const AgPagination = ({
|
|
|
112
112
|
<div className="w-full md:w-auto flex justify-between mt-5 md:mt-0 ">
|
|
113
113
|
<div className="md:hidden">
|
|
114
114
|
<Button
|
|
115
|
-
data-
|
|
115
|
+
data-testid="ag-btn-prev"
|
|
116
116
|
className="data-pager__previous data-pager__control"
|
|
117
117
|
onClick={onPrevClick}
|
|
118
118
|
disabled={currentPage === 1}
|
|
@@ -122,7 +122,7 @@ const AgPagination = ({
|
|
|
122
122
|
</div>
|
|
123
123
|
|
|
124
124
|
<Button
|
|
125
|
-
data-
|
|
125
|
+
data-testid="ag-btn-next"
|
|
126
126
|
className="data-pager__next data-pager__control"
|
|
127
127
|
onClick={onNextClick}
|
|
128
128
|
disabled={totalPages === currentPage || totalPages === 0}
|