diff --git a/src/common/components/Card/MessageCard.scss b/src/common/components/Card/MessageCard.scss index 484bffa..eb05b4c 100644 --- a/src/common/components/Card/MessageCard.scss +++ b/src/common/components/Card/MessageCard.scss @@ -1,4 +1,6 @@ .card-message { + margin: 0; + .title-block { display: flex; flex-direction: row; diff --git a/src/common/components/Icon/Icon.tsx b/src/common/components/Icon/Icon.tsx index e07083c..95cd584 100644 --- a/src/common/components/Icon/Icon.tsx +++ b/src/common/components/Icon/Icon.tsx @@ -1,4 +1,5 @@ import { ComponentPropsWithoutRef } from 'react'; +import { IonText } from '@ionic/react'; import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; import { IconProp } from '@fortawesome/fontawesome-svg-core'; import { @@ -28,7 +29,8 @@ import { BaseComponentProps } from '../types'; */ export interface IconProps extends BaseComponentProps, - Omit, 'icon'> { + Omit, 'color' | 'icon'>, + Pick, 'color'> { icon: IconName; } @@ -79,15 +81,23 @@ const icons: Record = { * @returns {JSX.Element} JSX * @see {@link FontAwesomeIcon} */ -const Icon = ({ className, icon, testid = 'icon', ...iconProps }: IconProps): JSX.Element => { +const Icon = ({ + className, + color, + icon, + testid = 'icon', + ...iconProps +}: IconProps): JSX.Element => { const faIcon = icons[icon]; return ( - + + + ); }; diff --git a/src/pages/Auth/SignIn/components/SignInForm.scss b/src/pages/Auth/SignIn/components/SignInForm.scss index fd33d5b..a34ae9f 100644 --- a/src/pages/Auth/SignIn/components/SignInForm.scss +++ b/src/pages/Auth/SignIn/components/SignInForm.scss @@ -1,8 +1,10 @@ .form-signin { - .heading { + ion-row.heading { font-size: 1.25rem; font-weight: 700; + gap: 0.75rem; + padding-bottom: 0.25rem; margin-bottom: 0.25rem; @@ -15,7 +17,7 @@ margin-bottom: 0.5rem; } - ion-button { + ion-button.button-submit { margin-top: 2rem; } @@ -23,11 +25,17 @@ margin: 1rem 0; &.row-card { - @media (min-width: 576px) { - .wrapper { - width: 80% !important; - } + .wrapper { + width: 100% !important; } } } } + +.form-signin-popover { + .inline-code { + font-family: monospace; + font-size: 1rem; + color: var(--ion-color-medium); + } +} diff --git a/src/pages/Auth/SignIn/components/SignInForm.tsx b/src/pages/Auth/SignIn/components/SignInForm.tsx index ef473e4..bfbaaae 100644 --- a/src/pages/Auth/SignIn/components/SignInForm.tsx +++ b/src/pages/Auth/SignIn/components/SignInForm.tsx @@ -1,4 +1,4 @@ -import { IonButton, useIonRouter } from '@ionic/react'; +import { IonButton, IonContent, IonPopover, IonRow, useIonRouter } from '@ionic/react'; import { useState } from 'react'; import classNames from 'classnames'; import { Form, Formik } from 'formik'; @@ -11,6 +11,7 @@ import { useProgress } from 'common/hooks/useProgress'; import Input from 'common/components/Input/Input'; import CardRow from 'common/components/Card/CardRow'; import ErrorCard from 'common/components/Card/ErrorCard'; +import Icon, { IconName } from 'common/components/Icon/Icon'; /** * Properties for the `SignInForm` component. @@ -77,7 +78,11 @@ const SignInForm = ({ className, testid = 'form-signin' }: SignInFormProps): JSX > {({ dirty, isSubmitting }) => (
-
Sign In
+ +
Sign In
+ +
+ Sign In + + + +

+ This example application uses{' '} + + JSONPlaceholder data + + . Try a username like Bret or{' '} + Samantha. +

+

You may use any value as the password.

+
+
)}