Files
web/packages/design-system/lib/components/RateCard/Campaign/Campaign.stories.tsx
Tobias Johansson 310a5a7a68 fixes
2025-03-25 20:35:57 +01:00

121 lines
2.6 KiB
TypeScript

import type { Meta, StoryObj } from '@storybook/react'
import CampaignRateCard from '.'
const meta: Meta<typeof CampaignRateCard> = {
title: 'Components/RateCard/Campaign',
component: CampaignRateCard,
decorators: [
(Story) => (
<div style={{ maxWidth: '400px' }}>
<Story />
</div>
),
],
argTypes: {
rateTitle: { control: 'text' },
paymentTerm: { control: 'text' },
bannerText: { control: 'text' },
rate: { control: 'object' },
memberRate: { control: 'object' },
referenceRate: { control: 'object' },
comparisonRate: { control: 'object' },
approximateRate: { control: 'object' },
},
}
export default meta
type Story = StoryObj<typeof CampaignRateCard>
export const Default: Story = {
args: {
rateTitle: 'NON-REFUNDABLE',
paymentTerm: 'PAY NOW',
bannerText: 'Campaign ∙ Breakfast included',
rate: {
label: "Valentine's Special",
price: '198',
unit: 'EUR/NIGHT',
},
approximateRate: {
price: '198',
label: 'Approx.',
unit: 'EUR',
},
referenceRate: {
price: '249',
label: 'Lowest past price (last 30 days)',
unit: 'EUR',
},
},
}
export const Package: Story = {
args: {
rateTitle: 'NON-REFUNDABLE',
paymentTerm: 'PAY NOW',
bannerText: 'WDCPHG ∙ Breakfast included',
rate: {
label: 'Luxurious wine & dine in Copenhagen',
price: '1989',
unit: 'EUR/NIGHT',
},
approximateRate: {
price: '1989',
label: 'Approx.',
unit: 'EUR',
},
},
}
export const CampaignLoggedIn: Story = {
args: {
rateTitle: 'NON-REFUNDABLE',
paymentTerm: 'PAY NOW',
bannerText: 'SUM2025 ∙ Breakfast included',
rate: {
label: 'Luxurious wine & dine in Copenhagen',
price: '198',
unit: 'EUR/NIGHT',
},
approximateRate: {
price: '198',
label: 'Approx.',
unit: 'EUR',
},
comparisonRate: {
price: '249',
unit: 'EUR/NIGHT',
},
isHighlightedRate: true,
},
}
export const CampaignOmnibus: Story = {
args: {
rateTitle: 'NON-REFUNDABLE',
paymentTerm: 'PAY NOW',
bannerText: 'WDCPHG ∙ Breakfast included',
rate: {
label: 'Luxurious wine & dine in Copenhagen',
price: '198',
unit: 'EUR/NIGHT',
},
memberRate: {
label: 'Member price',
price: '150',
unit: 'EUR/NIGHT',
},
approximateRate: {
price: '198',
label: 'Approx.',
unit: 'EUR',
},
referenceRate: {
price: '101',
label: 'Lowest past price (last 30 days)',
unit: 'EUR',
},
},
}