diff --git a/.changeset/gorgeous-weeks-fail.md b/.changeset/gorgeous-weeks-fail.md new file mode 100644 index 0000000000..72e1a40511 --- /dev/null +++ b/.changeset/gorgeous-weeks-fail.md @@ -0,0 +1,9 @@ +--- +"@ultraviolet/ui": minor +--- + +`` enhancement: +- Added a new disabled state +- Added possibility to navigate throughout the steps for the user by clicking on the bullets +- Refactor code : use `` for the steps instead of a list of children +- New style overall \ No newline at end of file diff --git a/packages/form/src/components/TimeField/__tests__/__snapshots__/index.test.tsx.snap b/packages/form/src/components/TimeField/__tests__/__snapshots__/index.test.tsx.snap index 70da107e5c..b955b98652 100644 --- a/packages/form/src/components/TimeField/__tests__/__snapshots__/index.test.tsx.snap +++ b/packages/form/src/components/TimeField/__tests__/__snapshots__/index.test.tsx.snap @@ -1564,4 +1564,4 @@ exports[`TimeField > should trigger events 1`] = ` -`; +`; \ No newline at end of file diff --git a/packages/ui/src/components/Stepper/Step.tsx b/packages/ui/src/components/Stepper/Step.tsx new file mode 100644 index 0000000000..30c77a9cc0 --- /dev/null +++ b/packages/ui/src/components/Stepper/Step.tsx @@ -0,0 +1,258 @@ +import { css, keyframes } from '@emotion/react' +import styled from '@emotion/styled' +import type { ReactNode } from 'react' +import { useMemo } from 'react' +import { Bullet } from '../Bullet' +import { Stack } from '../Stack' +import { Text } from '../Text' +import { useStepper } from './StepperProvider' + +const LINE_HEIGHT_SIZES = { + small: 2, + medium: 4, +} as const + +type StepProps = { + onClick?: (index: number) => void + /** + * Automatically attribued by the parent Stepper + */ + index?: number + /** + * Whether the step is disabled + */ + disabled?: boolean + /** + * Title of the step + */ + title?: ReactNode + /** + * For additional information. + * Use prop `title` to properly name the step + */ + children?: ReactNode + className?: string + 'data-testid'?: string +} +const loadingAnimation = (size: 'small' | 'medium') => keyframes` + from { + width: 0; + } + to { + width: calc( + 100% - ${size === 'small' ? '24px' : '32px'} - + 8px} + ); + } +` + +const loadingStyle = (size: 'small' | 'medium') => css` + animation: ${loadingAnimation(size)} 1s linear infinite; +` + +const StyledBullet = styled(Bullet)<{ + size: 'small' | 'medium' + isActive: boolean +}>` + margin-top: ${({ theme, size }) => + size === 'small' ? theme.space['0.5'] : 0}; + transition: box-shadow 300ms; + min-width: ${({ theme, size }) => + size === 'small' ? theme.space[3] : theme.space[4]}; + ${({ theme, isActive }) => + isActive + ? `background-color: ${theme.colors.primary.backgroundStrongHover}; + box-shadow: ${theme.shadows.focusPrimary};` + : null}; +` + +const StyledText = styled(Text)` + margin-top: ${({ theme }) => theme.space['1']}; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +` + +const StyledStepContainer = styled(Stack)<{ + 'data-disabled': boolean + 'data-interactive': boolean + 'data-hide-separator': boolean + 'data-label-position': 'bottom' | 'right' + size: 'small' | 'medium' + 'aria-selected': boolean + 'data-done': boolean + 'data-animated': boolean +}>` + display: flex; + white-space: nowrap; + transition: text-decoration 300ms; + + &[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; + + &[aria-selected='true']:hover { + & > ${StyledBullet} { + box-shadow: ${({ theme }) => theme.shadows.focusPrimary}; + & > ${StyledText} { + color: ${({ theme }) => theme.colors.primary.textHover}; + text-decoration: underline + ${({ theme }) => theme.colors.primary.textHover}; + text-decoration-thickness: 1px; + } + } + } + + &[data-done='true']:hover { + & > ${StyledBullet} { + box-shadow: ${({ theme }) => theme.shadows.focusPrimary}; + } + & > ${StyledText} { + color: ${({ theme }) => theme.colors.neutral.textHover}; + text-decoration: underline + ${({ theme }) => theme.colors.neutral.textHover}; + text-decoration-thickness: 1px; + } + } + } + + &[data-disabled='true'] { + cursor: not-allowed; + + & > ${StyledText} { + color: ${({ theme }) => theme.colors.neutral.textDisabled}; + } + + & > ${StyledBullet} { + background-color: ${({ theme }) => + theme.colors.neutral.backgroundDisabled}; + box-shadow: none; + color: ${({ theme }) => theme.colors.neutral.textDisabled}; + border-color: ${({ theme }) => theme.colors.neutral.borderDisabled}; + } + } + + &:not([data-hide-separator='true']):not([data-label-position='right']) { + flex-direction: column; + flex: 1; + + &:not(:last-child) { + &:after { + content: ''; + position: relative; + align-self: baseline; + border-radius: ${({ theme }) => theme.radii.default}; + background-color: ${({ theme }) => + theme.colors.neutral.backgroundStrong}; + + top: 20px; + width: calc( + 100% - ${({ size }) => (size === 'small' ? '24px' : '32px')} - + ${({ theme }) => theme.space[2]} + ); + left: calc(50% + 25px); + order: -1; + height: ${({ size }) => + size === 'small' + ? LINE_HEIGHT_SIZES.small + : LINE_HEIGHT_SIZES.medium}px; + } + + &[data-done='true']:after { + background-color: ${({ theme }) => + theme.colors.primary.backgroundStrong}; + } + + &[aria-selected='true'][data-animated='true']:after { + background-color: ${({ theme }) => + theme.colors.primary.backgroundStrong}; + ${({ size }) => loadingStyle(size)} + } + } + &:last-child { + margin-top: ${({ theme, size }) => + size === 'small' ? '6px' : theme.space[1]}; + } + } +` + +export const Step = ({ + index = 0, + onClick, + disabled = false, + title, + children, + className, + 'data-testid': dataTestId, +}: StepProps) => { + const currentState = useStepper() + const isActive = index === currentState.step + const isDone = index < currentState.step + + const textVariant = useMemo(() => { + if (currentState.size === 'medium') { + return isActive ? 'bodyStrong' : 'body' + } + + return isActive ? 'bodySmallStrong' : 'bodySmall' + }, [currentState.size, isActive]) + + return ( + { + if (currentState.interactive && !disabled) { + if (index < currentState.step) { + currentState.setStep(index) + } + onClick?.(index) + } + }} + data-disabled={disabled} + data-testid={dataTestId ?? `stepper-step-${index}`} + data-hide-separator={!currentState.separator} + data-label-position={currentState.labelPosition} + size={currentState.size} + aria-selected={isActive} + data-done={isDone} + data-animated={currentState.animated} + > + {isDone && !disabled ? ( + + ) : ( + + )} + {title ? ( + + {title} + + ) : null} + {children ?? null} + + ) +} diff --git a/packages/ui/src/components/Stepper/StepperProvider.tsx b/packages/ui/src/components/Stepper/StepperProvider.tsx new file mode 100644 index 0000000000..cd6a5fd5a1 --- /dev/null +++ b/packages/ui/src/components/Stepper/StepperProvider.tsx @@ -0,0 +1,66 @@ +import type { ReactNode } from 'react' +import { createContext, useContext, useEffect, useMemo, useState } from 'react' + +type ContextType = { + step: number + setStep: React.Dispatch> + interactive: boolean + size: 'medium' | 'small' + animated: boolean + labelPosition: 'bottom' | 'right' + separator: boolean +} + +const StepperContext = createContext({ + step: 0, + setStep: () => {}, + interactive: false, + size: 'medium', + animated: false, + labelPosition: 'bottom', + separator: true, +}) + +type StepperProviderProps = { + children: ReactNode + interactive: boolean + animated: boolean + selected: number + labelPosition: 'bottom' | 'right' + size: 'small' | 'medium' + separator: boolean +} + +export const useStepper = () => useContext(StepperContext) +/** + * Stepper component to show the progress of a process in a linear way. + */ +export const StepperProvider = ({ + children, + interactive, + selected, + animated, + labelPosition, + size, + separator, +}: StepperProviderProps) => { + const currentSelected = useMemo(() => selected, [selected]) + const [step, setStep] = useState(currentSelected) + const value = useMemo( + () => ({ + step, + setStep, + interactive, + size, + animated, + labelPosition, + separator, + }), + [step, interactive, size, animated, labelPosition, separator], + ) + useEffect(() => setStep(selected), [selected]) + + return ( + {children} + ) +} diff --git a/packages/ui/src/components/Stepper/__stories__/Children.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Children.stories.tsx new file mode 100644 index 0000000000..4634d95183 --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/Children.stories.tsx @@ -0,0 +1,33 @@ +import type { StoryFn } from '@storybook/react' +import { Icon } from '@ultraviolet/icons' +import { Stepper } from '..' +import { Text } from '../../Text' + +export const Children: StoryFn = args => ( + + Children + + + Custom text! + + + + + + Icon: + + +) + +Children.parameters = { + docs: { + description: { + story: 'You can add children to add more information', + }, + }, +} + +Children.args = { + selected: 3, + interactive: false, +} diff --git a/packages/ui/src/components/Stepper/__stories__/Disabled.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Disabled.stories.tsx new file mode 100644 index 0000000000..4707acac86 --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/Disabled.stories.tsx @@ -0,0 +1,25 @@ +import { Stepper } from '..' +import { Template } from './Template.stories' + +export const Disabled = Template.bind({}) + +Disabled.args = { + children: [ + , + , + , + , + , + ], + selected: 1, + interactive: true, +} + +Disabled.parameters = { + docs: { + description: { + story: + 'You can pass prop "disabled" to every step to disable them. Disabled states will not be accessible by the user if the stepper is interactive.', + }, + }, +} diff --git a/packages/ui/src/components/Stepper/__stories__/Example.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Example.stories.tsx new file mode 100644 index 0000000000..3eed82c331 --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/Example.stories.tsx @@ -0,0 +1,68 @@ +import type { StoryFn } from '@storybook/react' +import { Icon } from '@ultraviolet/icons' +import { useState } from 'react' +import { Stepper } from '..' +import { Button } from '../../Button' +import { Stack } from '../../Stack' + +export const Example: StoryFn = args => { + const [selected, setStep] = useState(1) + + return ( + + + (selected > 1 ? setStep(index) : null)} + title={ + + Custom title + + + } + /> + (selected > 2 ? setStep(index) : null)} + title="Create" + /> + (selected > 3 ? setStep(index) : null)} + title="Continue" + /> + (selected > 4 ? setStep(index) : null)} + title="Last step" + /> + (selected > 5 ? setStep(index) : null)} + title="Done" + /> + + + {selected === 6 ? ( + 'All done' + ) : ( + + Current step: {selected}{' '} + + + )} + + ) +} + +Example.parameters = { + docs: { + description: { + story: + 'A more complex example with custom titles and a controllable state.', + }, + }, +} diff --git a/packages/ui/src/components/Stepper/__stories__/Interactive.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Interactive.stories.tsx new file mode 100644 index 0000000000..9b03b1ab5a --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/Interactive.stories.tsx @@ -0,0 +1,25 @@ +import { Stepper } from '..' +import { Template } from './Template.stories' + +export const Interactive = Template.bind({}) + +Interactive.args = { + ...Template.args, + selected: 4, + interactive: true, + children: [ + , + , + , + , + , + ], +} +Interactive.parameters = { + docs: { + description: { + story: + 'When interactive, it is possible to navigate through the previously completed steps freely. It is not possible to skip steps.', + }, + }, +} diff --git a/packages/ui/src/components/Stepper/__stories__/LongName.stories.tsx b/packages/ui/src/components/Stepper/__stories__/LongName.stories.tsx new file mode 100644 index 0000000000..4e3c113c57 --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/LongName.stories.tsx @@ -0,0 +1,12 @@ +import type { StoryFn } from '@storybook/react' +import { Stepper } from '..' + +export const LongName: StoryFn = args => ( + + + + + + + +) diff --git a/packages/ui/src/components/Stepper/__stories__/Playground.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Playground.stories.tsx index 0b56adf10f..7f4983d244 100644 --- a/packages/ui/src/components/Stepper/__stories__/Playground.stories.tsx +++ b/packages/ui/src/components/Stepper/__stories__/Playground.stories.tsx @@ -3,6 +3,5 @@ import { Template } from './Template.stories' export const Playground = Template.bind({}) Playground.args = { - selected: 1, - children: [Initialize, Create, Done], + ...Template.args, } diff --git a/packages/ui/src/components/Stepper/__stories__/Separator.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Separator.stories.tsx new file mode 100644 index 0000000000..5b3fc8ed96 --- /dev/null +++ b/packages/ui/src/components/Stepper/__stories__/Separator.stories.tsx @@ -0,0 +1,33 @@ +import type { StoryFn } from '@storybook/react' +import { Stepper } from '..' +import { Stack } from '../../Stack' + +export const Separator: StoryFn = args => ( + + + Without separator: + + + With separtor: + + +) + +Separator.args = { + selected: 1, + interactive: true, + children: [ + , + , + , + ], +} + +Separator.parameters = { + docs: { + description: { + story: + 'Steps can be separated by a separator or not. By default there is a separator.', + }, + }, +} diff --git a/packages/ui/src/components/Stepper/__stories__/Template.stories.tsx b/packages/ui/src/components/Stepper/__stories__/Template.stories.tsx index f59409887b..7088a2a3ec 100644 --- a/packages/ui/src/components/Stepper/__stories__/Template.stories.tsx +++ b/packages/ui/src/components/Stepper/__stories__/Template.stories.tsx @@ -2,3 +2,11 @@ import type { StoryFn } from '@storybook/react' import { Stepper } from '..' export const Template: StoryFn = args => + +Template.args = { + children: [ + , + , + , + ], +} diff --git a/packages/ui/src/components/Stepper/__stories__/WithAnimation.stories.tsx b/packages/ui/src/components/Stepper/__stories__/WithAnimation.stories.tsx index 2c8cd21d37..35af442787 100644 --- a/packages/ui/src/components/Stepper/__stories__/WithAnimation.stories.tsx +++ b/packages/ui/src/components/Stepper/__stories__/WithAnimation.stories.tsx @@ -1,3 +1,4 @@ +import { Stepper } from '..' import { Template } from './Template.stories' export const WithAnimation = Template.bind({}) @@ -12,12 +13,10 @@ WithAnimation.parameters = { WithAnimation.args = { children: [ - Step 1, - Step 2, - Step 3, - Step 4, - Step 5, + , + , + , ], - selected: 1, + selected: 2, animated: true, } diff --git a/packages/ui/src/components/Stepper/__stories__/index.stories.tsx b/packages/ui/src/components/Stepper/__stories__/index.stories.tsx index d0321bbd89..cf4e2530f4 100644 --- a/packages/ui/src/components/Stepper/__stories__/index.stories.tsx +++ b/packages/ui/src/components/Stepper/__stories__/index.stories.tsx @@ -3,8 +3,18 @@ import { Stepper } from '..' export default { component: Stepper, + decorators: [StoryComponent => ], + subcomponents: { + 'Stepper.Step': Stepper.Step, + }, title: 'Components/Navigation/Stepper', } as Meta export { Playground } from './Playground.stories' export { WithAnimation } from './WithAnimation.stories' +export { Interactive } from './Interactive.stories' +export { Separator } from './Separator.stories' +export { Disabled } from './Disabled.stories' +export { Example } from './Example.stories' +export { LongName } from './LongName.stories' +export { Children } from './Children.stories' diff --git a/packages/ui/src/components/Stepper/__tests__/__snapshots__/index.test.tsx.snap b/packages/ui/src/components/Stepper/__tests__/__snapshots__/index.test.tsx.snap index 19c648775e..053368c0a7 100644 --- a/packages/ui/src/components/Stepper/__tests__/__snapshots__/index.test.tsx.snap +++ b/packages/ui/src/components/Stepper/__tests__/__snapshots__/index.test.tsx.snap @@ -1,8 +1,3588 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html +exports[`Stepper > handles clicks when interactive 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-8 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-8 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ 1 +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > handles clicks when interactive and small 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-8 { + color: #641cb3; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-8 { + color: #641cb3; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-16 { + color: #727683; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-16 { + color: #727683; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ 1 +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > handles clicks when not interactive 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; +} + +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; +} + +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; +} + +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; +} + +.emotion-10 { + color: #3f4250; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-15 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-15 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-18 { + color: #641cb3; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-18 { + color: #641cb3; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-23 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-23 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-26 { + color: #727683; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-26 { + color: #727683; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ + + +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + exports[`Stepper > renders correctly with all selected 1`] = ` - .emotion-0 { + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; +} + +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; +} + +.emotion-10 { + color: #3f4250; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-15 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-18 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-23 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-26 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ + + +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > renders correctly with animation 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; +} + +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; +} + +.emotion-10 { + color: #3f4250; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-15 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-18 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-23 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-26 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ + + +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > renders correctly with children 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; +} + +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; +} + +.emotion-10 { + color: #3f4250; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-15 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-18 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-23 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-26 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ + + +
+ + step 1 + + Children +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > renders correctly with default props 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-8 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ 1 +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > renders correctly with disabled steps 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-8 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +.emotion-13 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; +} + +
+
+
+
+ 1 +
+ + step 1 + +
+
+
+ 2 +
+ + step 2 + +
+
+
+ 3 +
+ + step 3 + +
+
+
+
+`; + +exports[`Stepper > renders correctly with selected prop 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; @@ -18,15 +3598,15 @@ exports[`Stepper > renders correctly with all selected 1`] = ` -webkit-box-align: flex-start; -ms-flex-align: flex-start; align-items: flex-start; - gap: 0 8px; - gap: 0; + gap: 4px; } -.emotion-0 .emotion-3 { +.emotion-2 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; + gap: 4px; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; @@ -34,32 +3614,105 @@ exports[`Stepper > renders correctly with all selected 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - gap: 4px; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-0 .emotion-13 { - height: 4px; - margin-top: 16px; - margin-bottom: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-2 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-9 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-9 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-9 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - -webkit-justify-content: flex-start; - justify-content: flex-start; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; } .emotion-5 { @@ -76,13 +3729,16 @@ exports[`Stepper > renders correctly with all selected 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #641cb3; - background: #f1eefc; - border: 1px solid #f1eefc; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; width: 32px; height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; } .emotion-7 { @@ -100,6 +3756,7 @@ exports[`Stepper > renders correctly with all selected 1`] = ` } .emotion-10 { + color: #3f4250; font-size: 16px; font-family: Inter,Asap,sans-serif; font-weight: 400; @@ -109,31 +3766,15 @@ exports[`Stepper > renders correctly with all selected 1`] = ` -webkit-text-decoration: none; text-decoration: none; margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; } -.emotion-12 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; -} - -.emotion-12::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; - width: 100%; -} - -.emotion-29 { +.emotion-25 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -154,6 +3795,30 @@ exports[`Stepper > renders correctly with all selected 1`] = ` height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-28 { + color: #641cb3; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; }
renders correctly with all selected 1`] = ` class="emotion-0 emotion-1" >
renders correctly with all selected 1`] = ` - - Step 1 - + step 1
-
renders correctly with all selected 1`] = ` - - Step 2 - + step 2
-
3
- - Step 3 - + step 3
@@ -241,7 +3918,7 @@ exports[`Stepper > renders correctly with all selected 1`] = ` `; -exports[`Stepper > renders correctly with animation 1`] = ` +exports[`Stepper > renders correctly with small size 1`] = ` @keyframes animation-0 { from { @@ -249,7 +3926,10 @@ exports[`Stepper > renders correctly with animation 1`] = ` } to { - width: 100%; + width: calc( + 100% - 24px - + 8px} + ); } } @@ -269,30 +3949,7 @@ exports[`Stepper > renders correctly with animation 1`] = ` -webkit-box-align: flex-start; -ms-flex-align: flex-start; align-items: flex-start; - gap: 0 8px; - gap: 0; -} - -.emotion-0 .emotion-3 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; gap: 4px; - white-space: nowrap; -} - -.emotion-0 .emotion-13 { - height: 4px; - margin-top: 16px; - margin-bottom: 16px; } .emotion-2 { @@ -300,6 +3957,7 @@ exports[`Stepper > renders correctly with animation 1`] = ` display: -webkit-flex; display: -ms-flexbox; display: flex; + gap: 4px; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; @@ -311,80 +3969,104 @@ exports[`Stepper > renders correctly with animation 1`] = ` -ms-flex-pack: start; -webkit-justify-content: flex-start; justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-5 { - display: -webkit-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-flex; - border-radius: 100%; - -webkit-box-pack: center; - -ms-flex-pack: center; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - color: #641cb3; - background: #f1eefc; - border: 1px solid #f1eefc; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-7 { - vertical-align: middle; - fill: currentColor; - height: 16px; - width: 16px; - min-width: 16px; - min-height: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; } -.emotion-7 .fillStroke { - stroke: currentColor; - fill: none; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; } -.emotion-10 { - font-size: 16px; - font-family: Inter,Asap,sans-serif; - font-weight: 400; - letter-spacing: 0; - line-height: 24px; - text-transform: none; - -webkit-text-decoration: none; - text-decoration: none; - margin-top: 8px; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; } -.emotion-12 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; } -.emotion-12::after { +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { background-color: #8c40ef; - width: 100%; } -.emotion-17 { +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-5 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -401,36 +4083,37 @@ exports[`Stepper > renders correctly with animation 1`] = ` color: #ffffff; background: #8c40ef; border: 1px solid #8c40ef; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; -} - -.emotion-22 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } -.emotion-22::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; - -webkit-animation: animation-0 1s linear infinite; - animation: animation-0 1s linear infinite; +.emotion-8 { + color: #641cb3; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 500; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; } -.emotion-27 { +.emotion-13 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -444,13 +4127,35 @@ exports[`Stepper > renders correctly with animation 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #3f4250; + color: #222638; background: #ffffff; border: 1px solid #d9dadd; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; +} + +.emotion-16 { + color: #727683; + font-size: 14px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 20px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; }
renders correctly with animation 1`] = ` class="emotion-0 emotion-1" >
- - - + 1
- - Step 1 - + step 1
-
2
- - Step 2 - + step 2
-
3
- - Step 3 - + step 3
@@ -528,9 +4235,35 @@ exports[`Stepper > renders correctly with animation 1`] = ` `; -exports[`Stepper > renders correctly with default props 1`] = ` +exports[`Stepper > renders correctly with step number in row 1`] = ` - .emotion-0 { + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; @@ -546,48 +4279,121 @@ exports[`Stepper > renders correctly with default props 1`] = ` -webkit-box-align: flex-start; -ms-flex-align: flex-start; align-items: flex-start; - gap: 0 8px; - gap: 0; + gap: 8px; } -.emotion-0 .emotion-3 { +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 8px; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-align-items: baseline; + -webkit-box-align: baseline; + -ms-flex-align: baseline; + align-items: baseline; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - gap: 4px; white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-0 .emotion-11 { - height: 4px; - margin-top: 16px; - margin-bottom: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-2 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - -webkit-justify-content: flex-start; - justify-content: flex-start; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; } .emotion-5 { @@ -611,18 +4417,30 @@ exports[`Stepper > renders correctly with default props 1`] = ` height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } .emotion-8 { + color: #641cb3; font-size: 16px; font-family: Inter,Asap,sans-serif; - font-weight: 400; + font-weight: 500; letter-spacing: 0; line-height: 24px; text-transform: none; -webkit-text-decoration: none; text-decoration: none; margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; } .emotion-10 { @@ -634,6 +4452,13 @@ exports[`Stepper > renders correctly with default props 1`] = ` border-radius: 4px; background-color: #e9eaeb; position: relative; + height: 4px; + margin-top: 16px; + margin-bottom: 16px; +} + +.emotion-10[data-size='small'] { + height: 2px; } .emotion-10::after { @@ -660,13 +4485,35 @@ exports[`Stepper > renders correctly with default props 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #3f4250; + color: #222638; background: #ffffff; border: 1px solid #d9dadd; width: 32px; height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-18 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; }
renders correctly with default props 1`] = ` class="emotion-0 emotion-1" >
renders correctly with default props 1`] = ` - - Step 1 - + step 1
renders correctly with default props 1`] = ` 2
- - Step 2 - + step 2
renders correctly with default props 1`] = ` 3
- - Step 3 - + step 3
@@ -734,33 +4601,192 @@ exports[`Stepper > renders correctly with default props 1`] = ` `; -exports[`Stepper > renders correctly with selected prop 1`] = ` - - .emotion-0 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; - -webkit-box-pack: center; - -ms-flex-pack: center; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: flex-start; - -webkit-box-align: flex-start; - -ms-flex-align: flex-start; - align-items: flex-start; - gap: 0 8px; - gap: 0; +exports[`Stepper > renders correctly without Stepper.Step 1`] = ` + + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 24px - + 8px} + ); + } +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-direction: row; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: flex-start; + -webkit-box-align: flex-start; + -ms-flex-align: flex-start; + align-items: flex-start; + gap: 4px; +} + +.emotion-2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + gap: 4px; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.ewvv9211 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.ewvv9211 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.ewvv9211 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; } -.emotion-0 .emotion-3 { +.emotion-2 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; + gap: 4px; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; @@ -768,32 +4794,131 @@ exports[`Stepper > renders correctly with selected prop 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - gap: 4px; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-0 .emotion-13 { - height: 4px; - margin-top: 16px; - margin-bottom: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-2 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.ewvv9211 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.ewvv9211 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.ewvv9211 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 24px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 2px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 6px; +} + +.emotion-5 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; -webkit-align-items: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - -webkit-justify-content: flex-start; - justify-content: flex-start; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; } .emotion-5 { @@ -810,13 +4935,16 @@ exports[`Stepper > renders correctly with selected prop 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #641cb3; - background: #f1eefc; - border: 1px solid #f1eefc; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; } .emotion-7 { @@ -833,41 +4961,21 @@ exports[`Stepper > renders correctly with selected prop 1`] = ` fill: none; } -.emotion-10 { - font-size: 16px; - font-family: Inter,Asap,sans-serif; - font-weight: 400; - letter-spacing: 0; - line-height: 24px; - text-transform: none; - -webkit-text-decoration: none; - text-decoration: none; - margin-top: 8px; -} - -.emotion-12 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; +.emotion-7 { + vertical-align: middle; + fill: currentColor; + height: 16px; + width: 16px; + min-width: 16px; + min-height: 16px; } -.emotion-12::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; - width: 100%; +.emotion-7 .fillStroke { + stroke: currentColor; + fill: none; } -.emotion-17 { +.emotion-12 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -884,34 +4992,72 @@ exports[`Stepper > renders correctly with selected prop 1`] = ` color: #ffffff; background: #8c40ef; border: 1px solid #8c40ef; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } -.emotion-22 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; +.emotion-12 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #ffffff; + background: #8c40ef; + border: 1px solid #8c40ef; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } -.emotion-22::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; +.emotion-17 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border-radius: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + -webkit-justify-content: center; + justify-content: center; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + color: #222638; + background: #ffffff; + border: 1px solid #d9dadd; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; } -.emotion-27 { +.emotion-17 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -925,13 +5071,16 @@ exports[`Stepper > renders correctly with selected prop 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #3f4250; + color: #222638; background: #ffffff; border: 1px solid #d9dadd; - width: 32px; - height: 32px; - font-size: 16px; - margin-top: 0; + width: 24px; + height: 24px; + font-size: 14px; + margin-top: 4px; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 24px; }
renders correctly with selected prop 1`] = ` class="emotion-0 emotion-1" >
renders correctly with selected prop 1`] = ` />
- - - Step 1 - - + Step 1
-
2
- - - Step 2 - - + Step 2
-
3
- - - Step 3 - - + Step 3
`; -exports[`Stepper > renders correctly with small size 1`] = ` +exports[`Stepper > renders correctly without separator 1`] = ` - .emotion-0 { + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; @@ -1027,15 +5202,15 @@ exports[`Stepper > renders correctly with small size 1`] = ` -webkit-box-align: flex-start; -ms-flex-align: flex-start; align-items: flex-start; - gap: 0 8px; - gap: 8px; + gap: 32px; } -.emotion-0 .emotion-3 { +.emotion-2 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; + gap: 4px; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; @@ -1043,32 +5218,105 @@ exports[`Stepper > renders correctly with small size 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - gap: 4px; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-0 .emotion-11 { - height: 2px; - margin-top: 16px; - margin-bottom: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-2 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - -webkit-justify-content: flex-start; - justify-content: flex-start; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; } .emotion-5 { @@ -1088,46 +5336,37 @@ exports[`Stepper > renders correctly with small size 1`] = ` color: #ffffff; background: #8c40ef; border: 1px solid #8c40ef; - width: 24px; - height: 24px; - font-size: 14px; - margin-top: 4px; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } .emotion-8 { - font-size: 14px; + color: #641cb3; + font-size: 16px; font-family: Inter,Asap,sans-serif; - font-weight: 400; + font-weight: 500; letter-spacing: 0; - line-height: 20px; + line-height: 24px; text-transform: none; -webkit-text-decoration: none; text-decoration: none; margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; } -.emotion-10 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; -} - -.emotion-10::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; -} - -.emotion-15 { +.emotion-13 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -1141,13 +5380,35 @@ exports[`Stepper > renders correctly with small size 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #3f4250; + color: #222638; background: #ffffff; border: 1px solid #d9dadd; - width: 24px; - height: 24px; - font-size: 14px; - margin-top: 4px; + width: 32px; + height: 32px; + font-size: 16px; + margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; }
renders correctly with small size 1`] = ` class="emotion-0 emotion-1" >
renders correctly with small size 1`] = ` - - Step 1 - + step 1
-
2
- - Step 2 - + step 2
-
3
- - Step 3 - + step 3
@@ -1215,9 +5488,35 @@ exports[`Stepper > renders correctly with small size 1`] = ` `; -exports[`Stepper > renders correctly with step number in row 1`] = ` +exports[`Stepper > renders correctly without separator with label at the right 1`] = ` - .emotion-0 { + @keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +@keyframes animation-0 { + from { + width: 0; + } + + to { + width: calc( + 100% - 32px - + 8px} + ); + } +} + +.emotion-0 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; @@ -1229,19 +5528,19 @@ exports[`Stepper > renders correctly with step number in row 1`] = ` -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; - -webkit-align-items: flex-start; - -webkit-box-align: flex-start; - -ms-flex-align: flex-start; - align-items: flex-start; - gap: 0 8px; - gap: 8px; + -webkit-align-items: flex-end; + -webkit-box-align: flex-end; + -ms-flex-align: flex-end; + align-items: flex-end; + gap: 32px; } -.emotion-0 .emotion-3 { +.emotion-2 { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; + gap: 8px; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; @@ -1249,32 +5548,105 @@ exports[`Stepper > renders correctly with step number in row 1`] = ` -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; - gap: 8px; + -webkit-box-pack: start; + -ms-flex-pack: start; + -webkit-justify-content: flex-start; + justify-content: flex-start; + -webkit-box-flex-wrap: nowrap; + -webkit-flex-wrap: nowrap; + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; white-space: nowrap; + -webkit-transition: text-decoration 300ms; + transition: text-decoration 300ms; } -.emotion-0 .emotion-11 { - height: 4px; - margin-top: 16px; - margin-bottom: 16px; +.emotion-2[data-interactive='true']:not([data-disabled='true']) { + cursor: pointer; } -.emotion-2 { - display: -webkit-box; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[aria-selected='true']:hover>.emotion-4>.emotion-7 { + color: #521094; + -webkit-text-decoration: underline #521094; + text-decoration: underline #521094; + text-decoration-thickness: 1px; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-4 { + box-shadow: 0px 0px 0px 3px #8c40ef40; +} + +.emotion-2[data-interactive='true']:not([data-disabled='true'])[data-done='true']:hover>.emotion-7 { + color: #222638; + -webkit-text-decoration: underline #222638; + text-decoration: underline #222638; + text-decoration-thickness: 1px; +} + +.emotion-2[data-disabled='true'] { + cursor: not-allowed; +} + +.emotion-2[data-disabled='true']>.emotion-7 { + color: #b5b7bd; +} + +.emotion-2[data-disabled='true']>.emotion-4 { + background-color: #f3f3f4; + box-shadow: none; + color: #b5b7bd; + border-color: #e9eaeb; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']) { -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; - -webkit-align-items: center; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - -webkit-box-pack: start; - -ms-flex-pack: start; - -webkit-justify-content: flex-start; - justify-content: flex-start; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child):after { + content: ''; + position: relative; + -webkit-align-self: baseline; + -ms-flex-item-align: baseline; + align-self: baseline; + border-radius: 4px; + background-color: #e9eaeb; + top: 20px; + width: calc( + 100% - 32px - + 16px + ); + left: calc(50% + 25px); + -webkit-order: -1; + -ms-flex-order: -1; + order: -1; + height: 4px; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[data-done='true']:after { + background-color: #8c40ef; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):not(:last-child)[aria-selected='true'][data-animated='true']:after { + background-color: #8c40ef; + -webkit-animation: animation-0 1s linear infinite; + animation: animation-0 1s linear infinite; +} + +.emotion-2:not([data-hide-separator='true']):not([data-label-position='right']):last-child { + margin-top: 8px; } .emotion-5 { @@ -1298,42 +5670,33 @@ exports[`Stepper > renders correctly with step number in row 1`] = ` height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; + background-color: #792dd4; + box-shadow: 0px 0px 0px 3px #8c40ef40; } .emotion-8 { + color: #641cb3; font-size: 16px; font-family: Inter,Asap,sans-serif; - font-weight: 400; + font-weight: 500; letter-spacing: 0; line-height: 24px; text-transform: none; -webkit-text-decoration: none; text-decoration: none; margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; } -.emotion-10 { - border-radius: 4px; - -webkit-box-flex: 1; - -webkit-flex-grow: 1; - -ms-flex-positive: 1; - flex-grow: 1; - border-radius: 4px; - background-color: #e9eaeb; - position: relative; -} - -.emotion-10::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: 4px; - background-color: #8c40ef; -} - -.emotion-15 { +.emotion-13 { display: -webkit-inline-box; display: -webkit-inline-flex; display: -ms-inline-flexbox; @@ -1347,13 +5710,35 @@ exports[`Stepper > renders correctly with step number in row 1`] = ` -webkit-box-align: center; -ms-flex-align: center; align-items: center; - color: #3f4250; + color: #222638; background: #ffffff; border: 1px solid #d9dadd; width: 32px; height: 32px; font-size: 16px; margin-top: 0; + -webkit-transition: box-shadow 300ms; + transition: box-shadow 300ms; + min-width: 32px; +} + +.emotion-16 { + color: #727683; + font-size: 16px; + font-family: Inter,Asap,sans-serif; + font-weight: 400; + letter-spacing: 0; + line-height: 24px; + text-transform: none; + -webkit-text-decoration: none; + text-decoration: none; + margin-top: 8px; + -webkit-transition: text-decoration-color 250ms ease-out; + transition: text-decoration-color 250ms ease-out; + text-decoration-thickness: 1px; + text-underline-offset: 2px; + text-decoration-color: transparent; + white-space: normal; }
renders correctly with step number in row 1`] = ` class="emotion-0 emotion-1" >
renders correctly with step number in row 1`] = ` - - Step 1 - + step 1
-
2
- - Step 2 - + step 2
-
3
- - Step 3 - + step 3
diff --git a/packages/ui/src/components/Stepper/__tests__/index.test.tsx b/packages/ui/src/components/Stepper/__tests__/index.test.tsx index 5519328451..f4988e8192 100644 --- a/packages/ui/src/components/Stepper/__tests__/index.test.tsx +++ b/packages/ui/src/components/Stepper/__tests__/index.test.tsx @@ -1,56 +1,139 @@ -import { shouldMatchEmotionSnapshot } from '@utils/test' -import { describe, test } from 'vitest' +import { screen } from '@testing-library/react' +import userEvent from '@testing-library/user-event' +import { renderWithTheme, shouldMatchEmotionSnapshot } from '@utils/test' +import { describe, expect, test } from 'vitest' import { Stepper } from '..' describe('Stepper', () => { test('renders correctly with default props', () => shouldMatchEmotionSnapshot( - - Step 1 - Step 2 - Step 3 + + + + , )) test('renders correctly with selected prop', () => shouldMatchEmotionSnapshot( - - Step 1 - Step 2 - Step 3 + + + + + , + )) + test('renders correctly with children', () => + shouldMatchEmotionSnapshot( + + Children + + , )) - test('renders correctly with animation', () => shouldMatchEmotionSnapshot( - - Step 1 - Step 2 - Step 3 + + + + , )) test('renders correctly with all selected', () => shouldMatchEmotionSnapshot( - Step 1 - Step 2 - Step 3 + + + , )) test('renders correctly with step number in row', () => shouldMatchEmotionSnapshot( - Step 1 - Step 2 - Step 3 + + + , )) test('renders correctly with small size', () => shouldMatchEmotionSnapshot( + + + + , + )) + + test('renders correctly without separator', () => + shouldMatchEmotionSnapshot( + + + + + , + )) + + test('renders correctly without separator with label at the right', () => + shouldMatchEmotionSnapshot( + + + + + , + )) + + test('renders correctly with disabled steps', () => + shouldMatchEmotionSnapshot( + + + + + , + )) + + test('handles clicks when interactive', async () => { + const { asFragment } = renderWithTheme( + + + + + , + ) + await userEvent.click(screen.getByTestId('stepper-step-1')) + await userEvent.click(screen.getByTestId('stepper-step-2')) // should do nothing + expect(asFragment()).toMatchSnapshot() + }) + + test('handles clicks when interactive and small', async () => { + const { asFragment } = renderWithTheme( + + + + + , + ) + await userEvent.click(screen.getByTestId('stepper-step-1')) + expect(asFragment()).toMatchSnapshot() + }) + + test('handles clicks when not interactive', async () => { + const { asFragment } = renderWithTheme( + + + + + , + ) + + await userEvent.click(screen.getByTestId('stepper-step-1')) + expect(asFragment()).toMatchSnapshot() + }) + + test('renders correctly without Stepper.Step', () => + shouldMatchEmotionSnapshot( + Step 1 Step 2 Step 3 diff --git a/packages/ui/src/components/Stepper/index.tsx b/packages/ui/src/components/Stepper/index.tsx index b7aa2745f0..c39a3dd79c 100644 --- a/packages/ui/src/components/Stepper/index.tsx +++ b/packages/ui/src/components/Stepper/index.tsx @@ -1,17 +1,54 @@ import { css, keyframes } from '@emotion/react' import styled from '@emotion/styled' import type { ReactNode } from 'react' -import { Children, Fragment } from 'react' -import { Bullet } from '../Bullet' -import { Text } from '../Text' - -type Temporal = 'previous' | 'next' | 'current' +import { Children, Fragment, isValidElement } from 'react' +import { Step } from './Step' +import { StepperProvider } from './StepperProvider' const LINE_HEIGHT_SIZES = { small: 2, medium: 4, } as const +type Temporal = 'previous' | 'next' | 'current' + +type StepperProps = { + animated?: boolean + /** + * When true, the user can navigate through the steps by clicking on the bullets + */ + interactive?: boolean + /** + * Number of the active step + */ + selected?: number + children: ReactNode + className?: string + labelPosition?: 'bottom' | 'right' + size?: 'small' | 'medium' + 'data-testid'?: string + separator?: boolean +} + +const StyledContainer = styled.div<{ + size: 'small' | 'medium' + labelPosition: 'bottom' | 'right' + separator: boolean +}>` + display: flex; + flex-direction: row; + justify-content: center; + align-items: ${({ separator, labelPosition }) => + !separator && labelPosition === 'right' ? 'flex-end' : 'flex-start'}; + gap: ${({ theme, labelPosition, separator }) => { + if (separator) { + return labelPosition === 'bottom' ? theme.space['0.5'] : theme.space['1'] + } + + return theme.space['4'] + }}; +` + const loadingAnimation = keyframes` from { width: 0; @@ -21,175 +58,105 @@ const loadingAnimation = keyframes` } ` -const StyledStepContainer = styled.div` - display: flex; - flex-direction: column; - align-items: center; - justify-content: flex-start; -` - -const StyledText = styled(Text)` - margin-top: ${({ theme }) => theme.space['1']}; -` - -const StyledBullet = styled(Bullet)<{ size: 'small' | 'medium' }>` - margin-top: ${({ theme, size }) => - size === 'small' ? theme.space['0.5'] : 0}; -` - const loadingStyle = css` animation: ${loadingAnimation} 1s linear infinite; ` -const StyledLine = styled.div<{ temporal: Temporal; animated: boolean }>` - border-radius: ${({ theme }) => theme.radii.default}; - flex-grow: 1; - border-radius: ${({ theme }) => theme.radii.default}; - background-color: ${({ theme }) => theme.colors.neutral.backgroundStrong}; - position: relative; - - ::after { - content: ''; - position: absolute; - left: 0; - top: 0; - height: 100%; - border-radius: ${({ theme }) => theme.radii.default}; - background-color: ${({ theme }) => theme.colors.primary.backgroundStrong}; - ${({ temporal }) => temporal === 'previous' && `width: 100%;`} - ${({ temporal, animated }) => - temporal === 'current' && animated && loadingStyle} - } -` - -const StyledContainer = styled.div<{ - size: 'small' | 'medium' - labelPosition: 'bottom' | 'right' +const StyledLine = styled.div<{ + temporal: Temporal + animated: boolean + 'data-size': 'small' | 'medium' }>` - display: flex; - flex-direction: row; - justify-content: center; - align-items: flex-start; - gap: 0 ${({ theme }) => theme.space['1']}; - gap: ${({ theme, labelPosition, size }) => - size === 'medium' && labelPosition === 'bottom' - ? theme.space['0'] - : theme.space['1']}; - - ${StyledStepContainer} { - display: flex; - flex-direction: ${({ labelPosition }) => - labelPosition === 'bottom' ? 'column' : 'row'}; - align-items: ${({ labelPosition }) => - labelPosition === 'bottom' ? 'center' : 'baseline'}; - gap: ${({ theme, labelPosition }) => - labelPosition === 'bottom' ? theme.space['0.5'] : theme.space['1']}; - white-space: nowrap; - } - - ${StyledLine} { - height: ${({ size }) => LINE_HEIGHT_SIZES[size]}px; + border-radius: ${({ theme }) => theme.radii.default}; + flex-grow: 1; + border-radius: ${({ theme }) => theme.radii.default}; + background-color: ${({ theme }) => theme.colors.neutral.backgroundStrong}; + position: relative; + height: ${LINE_HEIGHT_SIZES.medium}px; margin-top: ${({ theme }) => theme.space['2']}; margin-bottom: ${({ theme }) => theme.space['2']}; - } -` - -type StepperNumbersProps = { - temporal: Temporal - children: ReactNode - CurrentStep: number - size?: 'small' | 'medium' -} -const StepperNumbers = ({ - temporal, - children, - CurrentStep, - size = 'medium', -}: StepperNumbersProps) => ( - - + &[data-size='small'] { + height: ${LINE_HEIGHT_SIZES.small}px; + } + ::after { + content: ''; + position: absolute; + left: 0; + top: 0; + height: 100%; + border-radius: ${({ theme }) => theme.radii.default}; + background-color: ${({ theme }) => theme.colors.primary.backgroundStrong}; + ${({ temporal }) => { + if (temporal === 'previous') return 'width: 100%;' + + return null + }} + ${({ temporal, animated }) => + temporal === 'current' && animated && loadingStyle} + } + } + ` - - {children} - - -) - -type StepperProps = { - animated?: boolean - selected?: number - children: ReactNode[] - className?: string - labelPosition?: 'bottom' | 'right' - size?: 'small' | 'medium' - 'data-testid'?: string -} - -/** - * Stepper component to show the progress of a process in a linear way. - */ export const Stepper = ({ children, - selected = 0, + interactive = false, + selected = 1, animated = false, className, labelPosition = 'bottom', size = 'medium', 'data-testid': dataTestId, + separator = true, }: StepperProps) => { - const cleanChildren = Children.toArray(children) + const cleanChildren = Children.toArray(children).filter(isValidElement) const lastStep = Children.count(cleanChildren) - 1 return ( - - {Children.map(cleanChildren, (child, index) => { - const getTemporal = () => { - if (selected > index) return 'previous' - - if (selected === index) return 'current' - - return 'next' - } - const isNotLast = index < lastStep - const temporal = getTemporal() - - return ( - // eslint-disable-next-line react/no-array-index-key - - - {child} - - {isNotLast ? ( - - ) : null} - - ) - })} - + + {Children.map(cleanChildren, (child, index) => { + const getTemporal = () => { + if (selected > index + 1) return 'previous' + + if (selected === index + 1) return 'current' + + return 'next' + } + const isNotLast = index < lastStep + const temporal = getTemporal() + + return ( + // eslint-disable-next-line react/no-array-index-key + + + + {isNotLast && separator && labelPosition === 'right' ? ( + + ) : null} + + ) + })} + + ) } + +Stepper.Step = Step