Feat/BOOK-61 refactor hotel page css variables * feat(BOOK-61): Breadcrumbs * feat(BOOK-61): intro section * feat(BOOK-61): show more button * feat(BOOK-61): rooms section * feat(BOOK-61): sidepeeks * feat(BOOK-61): deprecated old Link component * feat(BOOK-61): added new TextLink component to the design-system * feat(BOOK-61): replaced deprecated links with new TextLink component * feat(BOOK-61): miscellaneous changes Approved-by: Bianca Widstam Approved-by: Christel Westerberg
72 lines
1.6 KiB
TypeScript
72 lines
1.6 KiB
TypeScript
import type { Meta, StoryObj } from '@storybook/nextjs-vite'
|
|
|
|
import { expect } from 'storybook/test'
|
|
import OldDSLink from '.'
|
|
|
|
const meta: Meta<typeof OldDSLink> = {
|
|
title: 'Components/OldDSLink',
|
|
component: OldDSLink,
|
|
argTypes: {
|
|
size: {
|
|
control: 'select',
|
|
options: ['small', 'regular', 'tiny', 'none'],
|
|
},
|
|
scroll: {
|
|
table: {
|
|
disable: true,
|
|
},
|
|
},
|
|
prefetch: {
|
|
table: {
|
|
disable: true,
|
|
},
|
|
},
|
|
partialMatch: {
|
|
table: {
|
|
disable: true,
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
export default meta
|
|
|
|
type Story = StoryObj<typeof OldDSLink>
|
|
|
|
export const Default: Story = {
|
|
args: {
|
|
active: false,
|
|
href: 'https://www.scandichotels.com/en',
|
|
},
|
|
render: (args) => <OldDSLink {...args}>{args.href}</OldDSLink>,
|
|
play: async ({ canvasElement }) => {
|
|
const link = canvasElement.querySelector('a')
|
|
if (!link) throw new Error('Link not found')
|
|
expect(link).toBeInTheDocument()
|
|
},
|
|
}
|
|
|
|
export const Focused: Story = {
|
|
args: {
|
|
...Default.args,
|
|
},
|
|
render: Default.render,
|
|
play: async ({ canvasElement }) => {
|
|
const link = canvasElement.querySelector('a')
|
|
if (!link) throw new Error('Link not found')
|
|
expect(link).toBeInTheDocument()
|
|
|
|
expect(link).not.toHaveFocus()
|
|
let styles = getComputedStyle(link)
|
|
expect(styles.outlineStyle).toBe('none')
|
|
expect(parseFloat(styles.outlineWidth)).toBe(0)
|
|
|
|
link?.focus()
|
|
|
|
expect(link).toHaveFocus()
|
|
styles = getComputedStyle(link)
|
|
expect(styles.outlineStyle).not.toBe('none')
|
|
expect(parseFloat(styles.outlineWidth)).toBeGreaterThan(0)
|
|
},
|
|
}
|