@popsure/dirty-swan 0.66.23 → 0.66.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +42 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/context.d.ts +13 -0
- package/dist/cjs/lib/context.test.d.ts +1 -0
- package/dist/cjs/lib/index.d.ts +2 -1
- package/dist/esm/components/modal/bottomModal/index.js +1 -0
- package/dist/esm/components/modal/bottomModal/index.js.map +1 -1
- package/dist/esm/components/modal/bottomOrRegularModal/index.js +1 -0
- package/dist/esm/components/modal/bottomOrRegularModal/index.js.map +1 -1
- package/dist/esm/components/modal/fullScreenModal/index.js +1 -0
- package/dist/esm/components/modal/fullScreenModal/index.js.map +1 -1
- package/dist/esm/components/modal/genericModal/index.js +2 -0
- package/dist/esm/components/modal/genericModal/index.js.map +1 -1
- package/dist/esm/components/modal/index.stories.js +1 -0
- package/dist/esm/components/modal/index.stories.js.map +1 -1
- package/dist/esm/components/modal/regularModal/index.js +1 -0
- package/dist/esm/components/modal/regularModal/index.js.map +1 -1
- package/dist/esm/components/segmentedControl/index.js +4 -5
- package/dist/esm/components/segmentedControl/index.js.map +1 -1
- package/dist/esm/components/table/Table.js +1 -0
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.stories.js +1 -0
- package/dist/esm/components/table/Table.stories.js.map +1 -1
- package/dist/esm/components/table/Table.test.js +1 -0
- package/dist/esm/components/table/Table.test.js.map +1 -1
- package/dist/esm/context.js +39 -0
- package/dist/esm/context.js.map +1 -0
- package/dist/esm/context.stories.js +67 -0
- package/dist/esm/context.stories.js.map +1 -0
- package/dist/esm/context.test.js +58 -0
- package/dist/esm/context.test.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/context.d.ts +13 -0
- package/dist/esm/lib/context.test.d.ts +1 -0
- package/dist/esm/lib/index.d.ts +2 -1
- package/package.json +1 -1
- package/src/index.tsx +3 -0
- package/src/lib/components/modal/genericModal/index.tsx +2 -0
- package/src/lib/components/segmentedControl/index.tsx +5 -11
- package/src/lib/components/segmentedControl/style.module.scss +7 -3
- package/src/lib/context.stories.tsx +136 -0
- package/src/lib/context.test.tsx +88 -0
- package/src/lib/context.tsx +60 -0
- package/src/lib/index.tsx +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.stories.js","sources":["../../../../../src/lib/components/table/Table.stories.tsx"],"sourcesContent":["import { Table, TableProps } from './Table';\nimport { DentalPlusIcon, PlaneIcon } from '../icon';\nimport { TableData } from './types';\nimport { useState } from 'react';\nimport { Input } from '../input';\n\nconst initialData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/orange/white',\n title: 'Standard',\n price: '€234',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/green/white',\n title: 'Plus',\n price: '€344',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n icon: <PlaneIcon size={24} noMargin />,\n title: 'Premium',\n price: '€556',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n ],\n [\n { text: 'Select a plan' },\n {\n type: 'BUTTON',\n buttonCaption: 'Standard',\n price: '€234',\n onClick: () => {},\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Plus',\n price: '€344',\n onClick: () => {},\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Premium',\n price: '€556',\n onClick: () => {},\n },\n ],\n [\n {\n text: 'Your contribution',\n },\n {\n cellId: '#1',\n text: '€210',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n {\n cellId: '#2',\n text: '€275',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n {\n cellId: '#3',\n text: '€310',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n ],\n [\n {\n text: 'Regular vet visits & medication',\n description: 'Pflegepflichtversicherungrightno',\n modalContent: 'Some stories about vets',\n },\n { text: 'No', description: 'Annual Only' },\n { text: '50%' },\n { text: '80%-100%' },\n ],\n [\n {\n text: 'Operations',\n modalContent: 'Operations info',\n modalTitle: 'Custom operations modal title',\n },\n {\n checkmarkValue: true,\n modalContent: 'Operations info column 2',\n modalTitle: 'Custom operations modal title column 2',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'Rating info' },\n { rating: { type: 'zap', value: 1 } },\n {\n rating: { type: 'zap', value: 3 },\n modalContent: 'Rating info column 3',\n },\n { rating: { type: 'star', value: 3 } },\n ],\n ],\n },\n {\n section: {\n title: 'Dental',\n },\n rows: [\n [\n { text: 'Regular vet visits & medication' },\n { text: 'No' },\n { text: 'Yes' },\n { text: 'Yes' },\n ],\n [\n { text: 'Operations', modalContent: 'info' },\n {\n text: 'This is a table cell with a lot of text',\n modalContent: 'Maybe',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n {\n type: 'CARD',\n colSpan: 3,\n title: 'Dental add-on',\n href: 'https://example.com',\n icon: 'https://placehold.co/24x24/green/yellow',\n description:\n 'Get your dental cleanings and additional treatments covered for just 10.90€ a month.',\n },\n ],\n ],\n },\n {\n section: {\n title: 'Travel',\n icon: 'https://placehold.co/24x24/red/yellow',\n },\n rows: [\n [\n { text: 'Regular vet visits & medication' },\n { text: 'No', checkmarkValue: false },\n { text: 'Yes' },\n { text: 'Yes' },\n ],\n [\n { text: 'Operations', modalContent: 'info' },\n {\n checkmarkValue: true,\n modalContent: 'Maybe',\n description: 'This is a table cell with a long subtitle',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n ],\n },\n];\n\nconst story = {\n title: 'JSX/Table',\n component: Table,\n argTypes: {\n tableData: {\n subContent:\n 'This property allows to set the data of the Table component.',\n },\n title: {\n subContent:\n 'This property allows to add a title to the Table component for accessibility purposes.',\n },\n collapsibleSections: {\n subContent: 'This property allows to collapse the sections of the table.',\n },\n scrollOnOpen: {\n subContent:\n 'When enabled, the page scrolls to the top of a newly expanded section.',\n },\n scrollTopOffset: {\n subContent:\n 'Offset in pixels from the top of the viewport when scrolling to an expanded section.',\n },\n hideDetails: {\n subContent: 'This property allows to hide the details of the table.',\n },\n hideStickyHeader: {\n subContent:\n 'This property allows to hide the sticky header row on desktop, e.g. for single plan tables without a plan selector.',\n },\n stickyHeaderTopOffset: {\n subContent:\n 'This property allows to set the offset of the sticky header.',\n },\n className: {\n subContent:\n 'This property allows to set a custom class to the Table component.',\n },\n textOverrides: {\n subContent:\n 'This property allows to set custom text for the show and hide details buttons.',\n },\n hideColumns: {\n subContent: 'This property allows to hide defined columns by index.',\n },\n hideRows: {\n subContent: 'This property allows to hide selected rows by index.',\n },\n modalContentRenderer: {\n subContent: 'This property allows to render custom modal content.',\n },\n onSelectionChanged: {\n subContent:\n 'This event is triggered when a selection is changed. It receives the index of the selection as an argument.',\n table: {\n category: 'Events',\n },\n },\n onModalOpen: {\n subContent:\n 'This event is triggered when a modal is opened. It receives the title and body of the modal as arguments.',\n table: {\n category: 'Events',\n },\n },\n },\n args: {\n tableData: initialData,\n collapsibleSections: true,\n scrollOnOpen: true,\n scrollTopOffset: 0,\n hideDetails: false,\n stickyHeaderTopOffset: 0,\n title: 'Title of the table',\n className: '',\n textOverrides: {\n showDetails: 'Show details',\n hideDetails: 'Hide details',\n },\n hideColumns: [],\n hideRows: [],\n hideTableNavigation: true,\n showSelectedColumn: false,\n },\n};\n\nexport const TableStory = {\n render: ({\n collapsibleSections,\n scrollOnOpen,\n scrollTopOffset,\n tableData,\n hideColumns,\n hideDetails,\n hideRows,\n stickyHeaderTopOffset,\n textOverrides,\n title,\n activeSection,\n hideTableNavigation,\n showSelectedColumn,\n }: TableProps) => {\n const [price, setPrice] = useState(999);\n return (\n <div>\n <div className=\"d-flex fd-column p24 mb80 gap16 wmx5\">\n <label htmlFor=\"\">Change price to see replacement in action: </label>\n <Input\n id=\"#stuff\"\n type=\"text\"\n onChange={(e) => setPrice(Number(e.target.value))}\n value={price}\n />\n </div>\n\n <Table\n cellReplacements={{\n '#1': {\n type: 'CTA',\n title: 'Replaced!',\n price: `€${price}`,\n buttonCaption: 'I got replaced',\n href: 'http://example.com',\n },\n '#2': {\n type: 'BUTTON',\n buttonCaption: 'I got replaced too',\n },\n '#3': {\n description: 'per year',\n },\n }}\n collapsibleSections={collapsibleSections}\n scrollOnOpen={scrollOnOpen}\n scrollTopOffset={scrollTopOffset}\n tableData={tableData}\n hideColumns={hideColumns}\n hideDetails={hideDetails}\n hideRows={hideRows}\n stickyHeaderTopOffset={stickyHeaderTopOffset}\n textOverrides={textOverrides}\n title={title}\n activeSection={activeSection}\n hideTableNavigation={hideTableNavigation}\n showSelectedColumn={showSelectedColumn}\n />\n </div>\n );\n },\n\n name: 'Table',\n};\n\nconst singlePlanData: TableData = [\n {\n rows: [\n [{ text: '' }, { text: '' }],\n [\n { text: 'Price' },\n {\n text: '€9.99',\n description: 'With monthly cancellation',\n fontVariant: 'PRICE',\n },\n ],\n [\n {\n text: 'Regular vet visits & medication',\n modalContent: 'Some stories about vets',\n },\n { text: 'Up to €1 million' },\n ],\n [\n {\n text: 'Specialist visits',\n modalContent: 'Some stories about specialists',\n },\n { text: '4 visits per year' },\n ],\n [{ text: 'Medication' }, { text: '80% covered' }],\n [{ text: 'Grooming' }, { checkmarkValue: false }],\n [{ text: 'Boarding fees' }, { checkmarkValue: false }],\n [\n {\n text: 'Alternative treatments',\n description: 'E.g. physiotherapy, hydrotherapy',\n },\n { checkmarkValue: false },\n ],\n ],\n },\n {\n section: {\n title: 'Dental',\n },\n rows: [\n [{ text: 'Dental cleanings' }, { text: 'Up to €500' }],\n [{ text: 'Dental treatments' }, { text: 'Up to €500' }],\n [{ text: 'Operations' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Travel',\n },\n rows: [\n [{ text: 'Trips abroad' }, { checkmarkValue: true }],\n [{ text: 'Emergency care abroad' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Add-ons',\n },\n rows: [\n [{ text: 'Extended coverage' }, { checkmarkValue: true }],\n [{ text: 'Equipment protection' }, { checkmarkValue: true }],\n ],\n },\n];\n\nexport const SinglePlanQuoteTable = {\n render: () => (\n <div style={{ maxWidth: 756 }}>\n <Table\n tableData={singlePlanData}\n title=\"Single plan quote\"\n collapsibleSections\n hideTableNavigation\n hideStickyHeader\n showSelectedColumn\n />\n </div>\n ),\n\n name: 'Single Plan Quote',\n};\n\nconst singlePlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n ],\n [\n { text: 'Monthly price' },\n {\n text: '~€99',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n ],\n [\n { text: 'Label with a description value' },\n { text: 'Value', description: 'Value description' },\n ],\n [\n {\n text: 'Label with a long text that wraps into multiple lines in the table',\n },\n {\n checkmarkValue: true,\n modalContent: 'Checkmark info',\n },\n ],\n [\n {\n text: 'Label with a boolean value',\n },\n { checkmarkValue: false },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Second section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: false }],\n ],\n },\n {\n section: {\n title: 'Third section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Up to €1,500', description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'Fourth section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Fifth section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Sixth section',\n },\n rows: [\n [{ text: 'Row label' }, { text: 'Up to €5,000' }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n];\n\nexport const SinglePlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 756 }}>\n <Table\n tableData={singlePlanWebsiteData}\n title=\"Single plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Single Plan - Website',\n};\n\nconst twoPlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n ],\n [\n {\n text: 'Monthly price',\n description: 'Label description with additional pricing context',\n },\n { text: '~€14-35', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '~€50-91', fontVariant: 'PRICE', modalContent: 'Price info' },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value', modalContent: 'Value info' },\n { text: 'Text value', modalContent: 'Value info' },\n ],\n [\n { text: 'Label with a boolean value' },\n { checkmarkValue: true, description: 'Value description' },\n { checkmarkValue: true, description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Up to €1,500' },\n { text: 'Up to €3,000' },\n ],\n ],\n },\n {\n section: {\n title: 'Second section',\n },\n rows: [\n [\n { text: 'Row label', description: 'Row label description' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: false },\n ],\n [\n { text: 'Row label', description: 'Row label description' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { text: 'Text value' },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { text: 'Text value', description: 'Value description' },\n { text: 'Text value', description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'Third section',\n },\n rows: [\n [\n { text: 'Row label' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Fourth section',\n },\n rows: [\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Fifth section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n ],\n },\n];\n\nexport const TwoPlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={twoPlanWebsiteData}\n title=\"Two plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Two Plan - Website',\n};\n\nconst getTwoPlanQuoteData = (\n selectedPlan: number,\n setSelectedPlan: (plan: number) => void\n): TableData => [\n {\n rows: [\n [\n { text: 'Select a plan' },\n {\n type: 'BUTTON',\n buttonCaption: 'Basic',\n price: '€99/mo',\n isSelected: selectedPlan === 1,\n onClick: () => setSelectedPlan(1),\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Advanced',\n price: '€134/mo',\n isSelected: selectedPlan === 2,\n onClick: () => setSelectedPlan(2),\n },\n ],\n [\n { text: 'Your contribution' },\n { text: '€99', description: 'per month', fontVariant: 'PRICE' },\n { text: '€134', description: 'per month', fontVariant: 'PRICE' },\n ],\n [\n { text: 'Outpatient treatments', modalContent: 'Outpatient info' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Inpatient treatments', modalContent: 'Inpatient info' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Dental care', modalContent: 'Dental info' },\n { text: '50%' },\n { text: '80%' },\n ],\n ],\n },\n {\n section: {\n title: 'Coverage details',\n },\n rows: [\n [\n { text: 'Annual limit' },\n { text: 'Up to €10,000' },\n { text: 'Unlimited' },\n ],\n [\n { text: 'Deductible' },\n { text: '€500' },\n { text: '€250' },\n ],\n [\n { text: 'Preventive care' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Alternative medicine' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nconst TwoPlanQuoteStory = () => {\n const [selectedPlan, setSelectedPlan] = useState(1);\n\n return (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={getTwoPlanQuoteData(selectedPlan, setSelectedPlan)}\n title=\"Two plan quote\"\n collapsibleSections\n showSelectedColumn\n activeSection={selectedPlan}\n onSelectionChanged={setSelectedPlan}\n />\n </div>\n );\n};\n\nexport const TwoPlanQuote = {\n render: () => <TwoPlanQuoteStory />,\n\n name: 'Two Plan Quote',\n};\n\nconst getPlanDetailsData = (\n selectedPlan: number,\n setSelectedPlan: (plan: number) => void\n): TableData => [\n {\n rows: [\n [\n { text: 'Choose plan', fontVariant: 'SUBTITLE' },\n {\n type: 'BUTTON',\n buttonCaption: 'Basic',\n price: '€99/mo',\n isSelected: selectedPlan === 1,\n onClick: () => setSelectedPlan(1),\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Advanced',\n price: '€150/mo',\n isSelected: selectedPlan === 2,\n onClick: () => setSelectedPlan(2),\n },\n ],\n [\n {\n text: \"General doctors' visits\",\n modalContent: 'Visits to general practitioners are covered in full.',\n },\n { text: 'Up to €2 million' },\n { text: 'Up to €2 million' },\n ],\n [\n {\n text: 'Specialists',\n modalContent: 'Specialist visits are covered with a referral.',\n },\n { text: '4 visits per year' },\n { text: 'Unlimited visits' },\n ],\n [\n { text: 'Documents (not in a safe)' },\n { text: '20% of the insured sum', description: 'max €3,000' },\n { text: '30% of the insured sum', description: 'max €5,000' },\n ],\n ],\n },\n {\n section: {\n title: 'Theft, fraud and robberies',\n },\n rows: [\n [\n { text: 'Burglary and vandalism' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Valuables in bank safe deposits' },\n { text: '5% of the insured sum' },\n { text: '30% of the insured sum' },\n ],\n [\n { text: 'Credit card misuse', description: 'E.g. after a robbery' },\n { checkmarkValue: false },\n { text: '€1,500', description: 'with a €150 deductible' },\n ],\n ],\n },\n {\n section: {\n title: 'Damage protection',\n },\n rows: [\n [\n { text: 'Weather damage', description: 'Rain, storm, hail or snow' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n {\n text: 'Weather damage due to negligence',\n description: 'E.g. belongings damaged due to windows left open',\n },\n { checkmarkValue: false },\n { text: '€5,000', description: 'with a €500 deductible' },\n ],\n [\n { text: 'Rainwater pipe leaks (within building)' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Loss & replacement',\n },\n rows: [\n [\n { text: 'Luggage while travelling' },\n { text: 'Up to €2,000' },\n { text: 'Up to €5,000' },\n ],\n [\n { text: 'Keys and locks', modalContent: 'Replacement of home keys and locks after theft.' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Accommodation & relocation costs',\n },\n rows: [\n [\n { text: 'Hotel costs', description: 'If your home is uninhabitable' },\n { text: 'Up to 100 days' },\n { text: 'Up to 200 days' },\n ],\n [\n { text: 'Relocation costs' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nconst PlanDetailsQuoteStory = () => {\n const [selectedPlan, setSelectedPlan] = useState(1);\n\n return (\n <div style={{ maxWidth: 900 }}>\n <p className=\"p-p tc-neutral-500 mb16\">\n Plan details table from the Sign-Ups designs: SUBTITLE top left cell,\n plan selection buttons, selected column highlight, collapsible sections,\n checkmarks, values with descriptions, and info modals.\n </p>\n <Table\n tableData={getPlanDetailsData(selectedPlan, setSelectedPlan)}\n title=\"Plan details\"\n collapsibleSections\n showSelectedColumn\n activeSection={selectedPlan}\n onSelectionChanged={setSelectedPlan}\n mobileNavigationMode=\"tabs\"\n />\n </div>\n );\n};\n\nexport const PlanDetailsQuote = {\n render: () => <PlanDetailsQuoteStory />,\n\n name: 'Plan Details - Quote',\n};\n\nconst threePlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/green/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/blue/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/orange/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n ],\n [\n { text: 'Monthly price' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n ],\n [\n { text: 'Label with star rating' },\n { rating: { type: 'star', value: 2 }, modalContent: 'Rating info' },\n { rating: { type: 'star', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Label with zap rating' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'zap', value: 3 }, modalContent: 'Rating info' },\n { rating: { type: 'zap', value: 3 }, modalContent: 'Rating info' },\n ],\n [\n { text: 'Label with info', modalContent: 'Label info' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Label with progress bar' },\n { text: '100%' },\n { text: '70%' },\n { text: '100%' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [\n { text: 'Row label with info', modalContent: 'Label info' },\n { text: 'Up to €2 million' },\n { text: 'Up to €1.5 million' },\n { text: 'Up to €1.5 million' },\n ],\n [\n { text: 'Row label with info', modalContent: 'Label info' },\n { text: 'Text value' },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n [\n { text: 'Row label' },\n { text: '80% covered' },\n { text: '80% covered' },\n { text: '80% covered' },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: false },\n { checkmarkValue: false },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nexport const ThreePlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={threePlanWebsiteData}\n title=\"Three plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Three Plan - Website',\n};\n\nexport const TabsNavigationMobile = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <p className=\"p-p tc-neutral-500 mb16\">\n Resize the browser to a mobile width to see tabs instead of\n left/right arrow buttons.\n </p>\n <Table\n tableData={threePlanWebsiteData}\n title=\"Tabs navigation (mobile)\"\n collapsibleSections\n mobileNavigationMode=\"tabs\"\n />\n </div>\n ),\n\n name: 'Tabs Navigation (Mobile)',\n};\n\nexport const TableDataType = () => {\n return (\n <pre>\n {`\ntype TableData = {\n section?: \n title?: string;\n icon?: ReactNode;\n };\n rows: {\n align?: 'center' | 'left' | 'right';\n checkmarkValue?: boolean;\n text?: ReactNode;\n modalContent?: ReactNode;\n subContent?: ReactNode;\n rating?: {\n value: number;\n type: 'zap' | 'star';\n }\n openModal?: (modalContent: ReactNode) => void;\n }[][];\n}[];\n `}\n </pre>\n );\n};\n\nexport default story;\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.stories.js","sources":["../../../../../src/lib/components/table/Table.stories.tsx"],"sourcesContent":["import { Table, TableProps } from './Table';\nimport { DentalPlusIcon, PlaneIcon } from '../icon';\nimport { TableData } from './types';\nimport { useState } from 'react';\nimport { Input } from '../input';\n\nconst initialData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/orange/white',\n title: 'Standard',\n price: '€234',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/green/white',\n title: 'Plus',\n price: '€344',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n icon: <PlaneIcon size={24} noMargin />,\n title: 'Premium',\n price: '€556',\n buttonCaption: 'Get covered',\n href: 'http://example.com',\n },\n ],\n [\n { text: 'Select a plan' },\n {\n type: 'BUTTON',\n buttonCaption: 'Standard',\n price: '€234',\n onClick: () => {},\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Plus',\n price: '€344',\n onClick: () => {},\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Premium',\n price: '€556',\n onClick: () => {},\n },\n ],\n [\n {\n text: 'Your contribution',\n },\n {\n cellId: '#1',\n text: '€210',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n {\n cellId: '#2',\n text: '€275',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n {\n cellId: '#3',\n text: '€310',\n description: 'per month',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n ],\n [\n {\n text: 'Regular vet visits & medication',\n description: 'Pflegepflichtversicherungrightno',\n modalContent: 'Some stories about vets',\n },\n { text: 'No', description: 'Annual Only' },\n { text: '50%' },\n { text: '80%-100%' },\n ],\n [\n {\n text: 'Operations',\n modalContent: 'Operations info',\n modalTitle: 'Custom operations modal title',\n },\n {\n checkmarkValue: true,\n modalContent: 'Operations info column 2',\n modalTitle: 'Custom operations modal title column 2',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'Rating info' },\n { rating: { type: 'zap', value: 1 } },\n {\n rating: { type: 'zap', value: 3 },\n modalContent: 'Rating info column 3',\n },\n { rating: { type: 'star', value: 3 } },\n ],\n ],\n },\n {\n section: {\n title: 'Dental',\n },\n rows: [\n [\n { text: 'Regular vet visits & medication' },\n { text: 'No' },\n { text: 'Yes' },\n { text: 'Yes' },\n ],\n [\n { text: 'Operations', modalContent: 'info' },\n {\n text: 'This is a table cell with a lot of text',\n modalContent: 'Maybe',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n {\n type: 'CARD',\n colSpan: 3,\n title: 'Dental add-on',\n href: 'https://example.com',\n icon: 'https://placehold.co/24x24/green/yellow',\n description:\n 'Get your dental cleanings and additional treatments covered for just 10.90€ a month.',\n },\n ],\n ],\n },\n {\n section: {\n title: 'Travel',\n icon: 'https://placehold.co/24x24/red/yellow',\n },\n rows: [\n [\n { text: 'Regular vet visits & medication' },\n { text: 'No', checkmarkValue: false },\n { text: 'Yes' },\n { text: 'Yes' },\n ],\n [\n { text: 'Operations', modalContent: 'info' },\n {\n checkmarkValue: true,\n modalContent: 'Maybe',\n description: 'This is a table cell with a long subtitle',\n },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Rating', modalContent: 'info' },\n { rating: { type: 'zap', value: 1 }, modalContent: 'Maybe' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n ],\n },\n];\n\nconst story = {\n title: 'JSX/Table',\n component: Table,\n argTypes: {\n tableData: {\n subContent:\n 'This property allows to set the data of the Table component.',\n },\n title: {\n subContent:\n 'This property allows to add a title to the Table component for accessibility purposes.',\n },\n collapsibleSections: {\n subContent: 'This property allows to collapse the sections of the table.',\n },\n scrollOnOpen: {\n subContent:\n 'When enabled, the page scrolls to the top of a newly expanded section.',\n },\n scrollTopOffset: {\n subContent:\n 'Offset in pixels from the top of the viewport when scrolling to an expanded section.',\n },\n hideDetails: {\n subContent: 'This property allows to hide the details of the table.',\n },\n hideStickyHeader: {\n subContent:\n 'This property allows to hide the sticky header row on desktop, e.g. for single plan tables without a plan selector.',\n },\n stickyHeaderTopOffset: {\n subContent:\n 'This property allows to set the offset of the sticky header.',\n },\n className: {\n subContent:\n 'This property allows to set a custom class to the Table component.',\n },\n textOverrides: {\n subContent:\n 'This property allows to set custom text for the show and hide details buttons.',\n },\n hideColumns: {\n subContent: 'This property allows to hide defined columns by index.',\n },\n hideRows: {\n subContent: 'This property allows to hide selected rows by index.',\n },\n modalContentRenderer: {\n subContent: 'This property allows to render custom modal content.',\n },\n onSelectionChanged: {\n subContent:\n 'This event is triggered when a selection is changed. It receives the index of the selection as an argument.',\n table: {\n category: 'Events',\n },\n },\n onModalOpen: {\n subContent:\n 'This event is triggered when a modal is opened. It receives the title and body of the modal as arguments.',\n table: {\n category: 'Events',\n },\n },\n },\n args: {\n tableData: initialData,\n collapsibleSections: true,\n scrollOnOpen: true,\n scrollTopOffset: 0,\n hideDetails: false,\n stickyHeaderTopOffset: 0,\n title: 'Title of the table',\n className: '',\n textOverrides: {\n showDetails: 'Show details',\n hideDetails: 'Hide details',\n },\n hideColumns: [],\n hideRows: [],\n hideTableNavigation: true,\n showSelectedColumn: false,\n },\n};\n\nexport const TableStory = {\n render: ({\n collapsibleSections,\n scrollOnOpen,\n scrollTopOffset,\n tableData,\n hideColumns,\n hideDetails,\n hideRows,\n stickyHeaderTopOffset,\n textOverrides,\n title,\n activeSection,\n hideTableNavigation,\n showSelectedColumn,\n }: TableProps) => {\n const [price, setPrice] = useState(999);\n return (\n <div>\n <div className=\"d-flex fd-column p24 mb80 gap16 wmx5\">\n <label htmlFor=\"\">Change price to see replacement in action: </label>\n <Input\n id=\"#stuff\"\n type=\"text\"\n onChange={(e) => setPrice(Number(e.target.value))}\n value={price}\n />\n </div>\n\n <Table\n cellReplacements={{\n '#1': {\n type: 'CTA',\n title: 'Replaced!',\n price: `€${price}`,\n buttonCaption: 'I got replaced',\n href: 'http://example.com',\n },\n '#2': {\n type: 'BUTTON',\n buttonCaption: 'I got replaced too',\n },\n '#3': {\n description: 'per year',\n },\n }}\n collapsibleSections={collapsibleSections}\n scrollOnOpen={scrollOnOpen}\n scrollTopOffset={scrollTopOffset}\n tableData={tableData}\n hideColumns={hideColumns}\n hideDetails={hideDetails}\n hideRows={hideRows}\n stickyHeaderTopOffset={stickyHeaderTopOffset}\n textOverrides={textOverrides}\n title={title}\n activeSection={activeSection}\n hideTableNavigation={hideTableNavigation}\n showSelectedColumn={showSelectedColumn}\n />\n </div>\n );\n },\n\n name: 'Table',\n};\n\nconst singlePlanData: TableData = [\n {\n rows: [\n [{ text: '' }, { text: '' }],\n [\n { text: 'Price' },\n {\n text: '€9.99',\n description: 'With monthly cancellation',\n fontVariant: 'PRICE',\n },\n ],\n [\n {\n text: 'Regular vet visits & medication',\n modalContent: 'Some stories about vets',\n },\n { text: 'Up to €1 million' },\n ],\n [\n {\n text: 'Specialist visits',\n modalContent: 'Some stories about specialists',\n },\n { text: '4 visits per year' },\n ],\n [{ text: 'Medication' }, { text: '80% covered' }],\n [{ text: 'Grooming' }, { checkmarkValue: false }],\n [{ text: 'Boarding fees' }, { checkmarkValue: false }],\n [\n {\n text: 'Alternative treatments',\n description: 'E.g. physiotherapy, hydrotherapy',\n },\n { checkmarkValue: false },\n ],\n ],\n },\n {\n section: {\n title: 'Dental',\n },\n rows: [\n [{ text: 'Dental cleanings' }, { text: 'Up to €500' }],\n [{ text: 'Dental treatments' }, { text: 'Up to €500' }],\n [{ text: 'Operations' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Travel',\n },\n rows: [\n [{ text: 'Trips abroad' }, { checkmarkValue: true }],\n [{ text: 'Emergency care abroad' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Add-ons',\n },\n rows: [\n [{ text: 'Extended coverage' }, { checkmarkValue: true }],\n [{ text: 'Equipment protection' }, { checkmarkValue: true }],\n ],\n },\n];\n\nexport const SinglePlanQuoteTable = {\n render: () => (\n <div style={{ maxWidth: 756 }}>\n <Table\n tableData={singlePlanData}\n title=\"Single plan quote\"\n collapsibleSections\n hideTableNavigation\n hideStickyHeader\n showSelectedColumn\n />\n </div>\n ),\n\n name: 'Single Plan Quote',\n};\n\nconst singlePlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n ],\n [\n { text: 'Monthly price' },\n {\n text: '~€99',\n fontVariant: 'PRICE',\n modalContent: 'Price info',\n },\n ],\n [\n { text: 'Label with a description value' },\n { text: 'Value', description: 'Value description' },\n ],\n [\n {\n text: 'Label with a long text that wraps into multiple lines in the table',\n },\n {\n checkmarkValue: true,\n modalContent: 'Checkmark info',\n },\n ],\n [\n {\n text: 'Label with a boolean value',\n },\n { checkmarkValue: false },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Second section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: false }],\n ],\n },\n {\n section: {\n title: 'Third section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Up to €1,500', description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'Fourth section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Fifth section',\n },\n rows: [\n [{ text: 'Row label' }, { checkmarkValue: true }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n {\n section: {\n title: 'Sixth section',\n },\n rows: [\n [{ text: 'Row label' }, { text: 'Up to €5,000' }],\n [{ text: 'Row label' }, { checkmarkValue: true }],\n ],\n },\n];\n\nexport const SinglePlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 756 }}>\n <Table\n tableData={singlePlanWebsiteData}\n title=\"Single plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Single Plan - Website',\n};\n\nconst twoPlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n {\n type: 'CTA',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: 'http://example.com',\n },\n ],\n [\n {\n text: 'Monthly price',\n description: 'Label description with additional pricing context',\n },\n { text: '~€14-35', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '~€50-91', fontVariant: 'PRICE', modalContent: 'Price info' },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n [\n {\n text: 'Label with info',\n modalContent: 'Label info',\n },\n { text: 'Text value', modalContent: 'Value info' },\n { text: 'Text value', modalContent: 'Value info' },\n ],\n [\n { text: 'Label with a boolean value' },\n { checkmarkValue: true, description: 'Value description' },\n { checkmarkValue: true, description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Up to €1,500' },\n { text: 'Up to €3,000' },\n ],\n ],\n },\n {\n section: {\n title: 'Second section',\n },\n rows: [\n [\n { text: 'Row label', description: 'Row label description' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: false },\n ],\n [\n { text: 'Row label', description: 'Row label description' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { text: 'Text value' },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { text: 'Text value', description: 'Value description' },\n { text: 'Text value', description: 'Value description' },\n ],\n ],\n },\n {\n section: {\n title: 'Third section',\n },\n rows: [\n [\n { text: 'Row label' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Fourth section',\n },\n rows: [\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Fifth section',\n },\n rows: [\n [\n { text: 'Row label' },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n ],\n },\n];\n\nexport const TwoPlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={twoPlanWebsiteData}\n title=\"Two plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Two Plan - Website',\n};\n\nconst getTwoPlanQuoteData = (\n selectedPlan: number,\n setSelectedPlan: (plan: number) => void\n): TableData => [\n {\n rows: [\n [\n { text: 'Select a plan' },\n {\n type: 'BUTTON',\n buttonCaption: 'Basic',\n price: '€99/mo',\n isSelected: selectedPlan === 1,\n onClick: () => setSelectedPlan(1),\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Advanced',\n price: '€134/mo',\n isSelected: selectedPlan === 2,\n onClick: () => setSelectedPlan(2),\n },\n ],\n [\n { text: 'Your contribution' },\n { text: '€99', description: 'per month', fontVariant: 'PRICE' },\n { text: '€134', description: 'per month', fontVariant: 'PRICE' },\n ],\n [\n { text: 'Outpatient treatments', modalContent: 'Outpatient info' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Inpatient treatments', modalContent: 'Inpatient info' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n [\n { text: 'Dental care', modalContent: 'Dental info' },\n { text: '50%' },\n { text: '80%' },\n ],\n ],\n },\n {\n section: {\n title: 'Coverage details',\n },\n rows: [\n [\n { text: 'Annual limit' },\n { text: 'Up to €10,000' },\n { text: 'Unlimited' },\n ],\n [\n { text: 'Deductible' },\n { text: '€500' },\n { text: '€250' },\n ],\n [\n { text: 'Preventive care' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Alternative medicine' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nconst TwoPlanQuoteStory = () => {\n const [selectedPlan, setSelectedPlan] = useState(1);\n\n return (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={getTwoPlanQuoteData(selectedPlan, setSelectedPlan)}\n title=\"Two plan quote\"\n collapsibleSections\n showSelectedColumn\n activeSection={selectedPlan}\n onSelectionChanged={setSelectedPlan}\n />\n </div>\n );\n};\n\nexport const TwoPlanQuote = {\n render: () => <TwoPlanQuoteStory />,\n\n name: 'Two Plan Quote',\n};\n\nconst getPlanDetailsData = (\n selectedPlan: number,\n setSelectedPlan: (plan: number) => void\n): TableData => [\n {\n rows: [\n [\n { text: 'Choose plan', fontVariant: 'SUBTITLE' },\n {\n type: 'BUTTON',\n buttonCaption: 'Basic',\n price: '€99/mo',\n isSelected: selectedPlan === 1,\n onClick: () => setSelectedPlan(1),\n },\n {\n type: 'BUTTON',\n buttonCaption: 'Advanced',\n price: '€150/mo',\n isSelected: selectedPlan === 2,\n onClick: () => setSelectedPlan(2),\n },\n ],\n [\n {\n text: \"General doctors' visits\",\n modalContent: 'Visits to general practitioners are covered in full.',\n },\n { text: 'Up to €2 million' },\n { text: 'Up to €2 million' },\n ],\n [\n {\n text: 'Specialists',\n modalContent: 'Specialist visits are covered with a referral.',\n },\n { text: '4 visits per year' },\n { text: 'Unlimited visits' },\n ],\n [\n { text: 'Documents (not in a safe)' },\n { text: '20% of the insured sum', description: 'max €3,000' },\n { text: '30% of the insured sum', description: 'max €5,000' },\n ],\n ],\n },\n {\n section: {\n title: 'Theft, fraud and robberies',\n },\n rows: [\n [\n { text: 'Burglary and vandalism' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Valuables in bank safe deposits' },\n { text: '5% of the insured sum' },\n { text: '30% of the insured sum' },\n ],\n [\n { text: 'Credit card misuse', description: 'E.g. after a robbery' },\n { checkmarkValue: false },\n { text: '€1,500', description: 'with a €150 deductible' },\n ],\n ],\n },\n {\n section: {\n title: 'Damage protection',\n },\n rows: [\n [\n { text: 'Weather damage', description: 'Rain, storm, hail or snow' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n {\n text: 'Weather damage due to negligence',\n description: 'E.g. belongings damaged due to windows left open',\n },\n { checkmarkValue: false },\n { text: '€5,000', description: 'with a €500 deductible' },\n ],\n [\n { text: 'Rainwater pipe leaks (within building)' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Loss & replacement',\n },\n rows: [\n [\n { text: 'Luggage while travelling' },\n { text: 'Up to €2,000' },\n { text: 'Up to €5,000' },\n ],\n [\n { text: 'Keys and locks', modalContent: 'Replacement of home keys and locks after theft.' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n {\n section: {\n title: 'Accommodation & relocation costs',\n },\n rows: [\n [\n { text: 'Hotel costs', description: 'If your home is uninhabitable' },\n { text: 'Up to 100 days' },\n { text: 'Up to 200 days' },\n ],\n [\n { text: 'Relocation costs' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nconst PlanDetailsQuoteStory = () => {\n const [selectedPlan, setSelectedPlan] = useState(1);\n\n return (\n <div style={{ maxWidth: 900 }}>\n <p className=\"p-p tc-neutral-500 mb16\">\n Plan details table from the Sign-Ups designs: SUBTITLE top left cell,\n plan selection buttons, selected column highlight, collapsible sections,\n checkmarks, values with descriptions, and info modals.\n </p>\n <Table\n tableData={getPlanDetailsData(selectedPlan, setSelectedPlan)}\n title=\"Plan details\"\n collapsibleSections\n showSelectedColumn\n activeSection={selectedPlan}\n onSelectionChanged={setSelectedPlan}\n mobileNavigationMode=\"tabs\"\n />\n </div>\n );\n};\n\nexport const PlanDetailsQuote = {\n render: () => <PlanDetailsQuoteStory />,\n\n name: 'Plan Details - Quote',\n};\n\nconst threePlanWebsiteData: TableData = [\n {\n rows: [\n [\n { text: 'Our plans' },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/green/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/blue/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n {\n type: 'CTA',\n icon: 'https://placehold.co/24x24/orange/white',\n title: 'Plan name',\n buttonCaption: 'Get a quote',\n href: '',\n onClick: () => {},\n },\n ],\n [\n { text: 'Monthly price' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n { text: '€–', fontVariant: 'PRICE', modalContent: 'Price info' },\n ],\n [\n { text: 'Label with star rating' },\n { rating: { type: 'star', value: 2 }, modalContent: 'Rating info' },\n { rating: { type: 'star', value: 3 } },\n { rating: { type: 'star', value: 3 } },\n ],\n [\n { text: 'Label with zap rating' },\n { rating: { type: 'zap', value: 3 } },\n { rating: { type: 'zap', value: 3 }, modalContent: 'Rating info' },\n { rating: { type: 'zap', value: 3 }, modalContent: 'Rating info' },\n ],\n [\n { text: 'Label with info', modalContent: 'Label info' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Label with progress bar' },\n { text: '100%' },\n { text: '70%' },\n { text: '100%' },\n ],\n ],\n },\n {\n section: {\n title: 'First section',\n },\n rows: [\n [\n { text: 'Row label with info', modalContent: 'Label info' },\n { text: 'Up to €2 million' },\n { text: 'Up to €1.5 million' },\n { text: 'Up to €1.5 million' },\n ],\n [\n { text: 'Row label with info', modalContent: 'Label info' },\n { text: 'Text value' },\n { text: 'Text value' },\n { text: 'Text value' },\n ],\n [\n { text: 'Row label' },\n { text: '80% covered' },\n { text: '80% covered' },\n { text: '80% covered' },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: false },\n { checkmarkValue: false },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: false },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n [\n { text: 'Row label' },\n { checkmarkValue: true },\n { checkmarkValue: true },\n { checkmarkValue: true },\n ],\n ],\n },\n];\n\nexport const ThreePlanQuoteWebsite = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <Table\n tableData={threePlanWebsiteData}\n title=\"Three plan quote website\"\n collapsibleSections\n />\n </div>\n ),\n\n name: 'Three Plan - Website',\n};\n\nexport const TabsNavigationMobile = {\n render: () => (\n <div style={{ maxWidth: 900 }}>\n <p className=\"p-p tc-neutral-500 mb16\">\n Resize the browser to a mobile width to see tabs instead of\n left/right arrow buttons.\n </p>\n <Table\n tableData={threePlanWebsiteData}\n title=\"Tabs navigation (mobile)\"\n collapsibleSections\n mobileNavigationMode=\"tabs\"\n />\n </div>\n ),\n\n name: 'Tabs Navigation (Mobile)',\n};\n\nexport const TableDataType = () => {\n return (\n <pre>\n {`\ntype TableData = {\n section?: \n title?: string;\n icon?: ReactNode;\n };\n rows: {\n align?: 'center' | 'left' | 'right';\n checkmarkValue?: boolean;\n text?: ReactNode;\n modalContent?: ReactNode;\n subContent?: ReactNode;\n rating?: {\n value: number;\n type: 'zap' | 'star';\n }\n openModal?: (modalContent: ReactNode) => void;\n }[][];\n}[];\n `}\n </pre>\n );\n};\n\nexport default story;\n"],"names":["_jsx","_jsxs"],"mappings":"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"}
|
|
@@ -37,6 +37,7 @@ import '../icon/icons/ChevronUp.js';
|
|
|
37
37
|
import '../modal/bottomOrRegularModal/index.js';
|
|
38
38
|
import '../modal/bottomModal/index.js';
|
|
39
39
|
import '../modal/genericModal/index.js';
|
|
40
|
+
import '../../context.js';
|
|
40
41
|
import '../../index-DuaJiEiT.js';
|
|
41
42
|
import '../../index-hWqCLhoS.js';
|
|
42
43
|
import '../modal/regularModal/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.test.js","sources":["../../../../../src/lib/components/table/Table.test.tsx"],"sourcesContent":["import { render, screen } from '../../util/testUtils';\nimport { Table } from './Table';\nimport { TableSectionData } from './types';\n\nconst tableData: TableSectionData[] = [\n {\n section: {\n title: 'Section 1',\n icon: <span>Icon 1</span>,\n },\n rows: [[{ text: 'Item 1', cellId: '#item1' }, { text: 'Item 2' }]],\n },\n {\n section: {\n title: 'Section 2',\n icon: 'https://placehold.co/30x30/orange/white',\n },\n rows: [\n [{ text: 'Item 3' }, { text: 'Item 4', modalContent: 'Additional item' }],\n ],\n },\n];\n\ndescribe('Table', () => {\n it('renders the table with sections and items', () => {\n render(<Table tableData={tableData} title=\"Test Table\" />);\n\n expect(screen.getByText('Section 1')).toBeInTheDocument();\n expect(screen.getByText('Section 2')).toBeInTheDocument();\n\n expect(screen.getAllByText('Item 1')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 2')[0]).toBeInTheDocument();\n expect(screen.getByText('Item 3')).toBeInTheDocument();\n expect(screen.getByText('Item 4')).toBeInTheDocument();\n });\n\n it('renders the table without sections', () => {\n const dataWithoutSections = [{ rows: tableData[0].rows }];\n\n render(<Table tableData={dataWithoutSections} title=\"Test Table\" />);\n\n expect(screen.getAllByText('Item 1')[0]).toBeVisible();\n expect(screen.getAllByText('Item 2')[0]).toBeVisible();\n });\n\n it('hides the show/hide details button if hideDetails is false', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.queryByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('shows the show/hide details button if hideDetails is true', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.getByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('hides the sections if hideDetails is true', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.queryByText('Section 2')).not.toBeInTheDocument();\n expect(screen.getByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('hides the sections if hideDetails is true and shows if clicking on button', async () => {\n const { user } = render(\n <Table tableData={tableData} hideDetails title=\"Test Table\" />\n );\n\n expect(screen.getByText('Show details')).toBeVisible();\n\n await user.click(screen.getByTestId('show-hide-details'));\n\n expect(screen.getByText('Section 2')).toBeVisible();\n expect(screen.getByText('Hide details')).toBeVisible();\n });\n\n it('does not render the sticky header row when hideStickyHeader is true', () => {\n const { rerender } = render(\n <Table tableData={tableData} title=\"Test Table\" />\n );\n const countWithStickyHeader = screen.getAllByText('Item 1').length;\n\n rerender(\n <Table tableData={tableData} hideStickyHeader title=\"Test Table\" />\n );\n\n expect(screen.getAllByText('Item 1')).toHaveLength(\n countWithStickyHeader - 1\n );\n });\n\n it('shows a modal when clicking on info icon', async () => {\n const { user } = render(<Table tableData={tableData} title=\"Test Table\" />);\n\n await user.click(screen.getByTestId('ds-table-info-button'));\n\n expect(screen.getByText('Additional item')).toBeVisible();\n });\n\n it('renders the table with cell replacements', () => {\n render(\n <Table\n tableData={tableData}\n title=\"Test Table\"\n cellReplacements={{\n '#item1': {\n text: 'I was replaced',\n },\n }}\n />\n );\n\n expect(screen.getByText('Section 1')).toBeInTheDocument();\n expect(screen.getByText('Section 2')).toBeInTheDocument();\n\n expect(screen.getAllByText('I was replaced')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 2')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 3')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 4')[0]).toBeInTheDocument();\n });\n\n it('renders icons with a custom image component', () => {\n const CustomImageComponent = ({ src }: { src: string }) => (\n <>\n <p>I am custom</p>\n <img src={src} alt=\"\" />\n </>\n );\n\n render(\n <Table\n tableData={tableData}\n title=\"Test Table\"\n imageComponent={CustomImageComponent}\n />\n );\n\n expect(screen.getByText('I am custom')).toBeInTheDocument();\n });\n});\n"],"names":["_jsx","render","_jsxs","_Fragment"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Table.test.js","sources":["../../../../../src/lib/components/table/Table.test.tsx"],"sourcesContent":["import { render, screen } from '../../util/testUtils';\nimport { Table } from './Table';\nimport { TableSectionData } from './types';\n\nconst tableData: TableSectionData[] = [\n {\n section: {\n title: 'Section 1',\n icon: <span>Icon 1</span>,\n },\n rows: [[{ text: 'Item 1', cellId: '#item1' }, { text: 'Item 2' }]],\n },\n {\n section: {\n title: 'Section 2',\n icon: 'https://placehold.co/30x30/orange/white',\n },\n rows: [\n [{ text: 'Item 3' }, { text: 'Item 4', modalContent: 'Additional item' }],\n ],\n },\n];\n\ndescribe('Table', () => {\n it('renders the table with sections and items', () => {\n render(<Table tableData={tableData} title=\"Test Table\" />);\n\n expect(screen.getByText('Section 1')).toBeInTheDocument();\n expect(screen.getByText('Section 2')).toBeInTheDocument();\n\n expect(screen.getAllByText('Item 1')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 2')[0]).toBeInTheDocument();\n expect(screen.getByText('Item 3')).toBeInTheDocument();\n expect(screen.getByText('Item 4')).toBeInTheDocument();\n });\n\n it('renders the table without sections', () => {\n const dataWithoutSections = [{ rows: tableData[0].rows }];\n\n render(<Table tableData={dataWithoutSections} title=\"Test Table\" />);\n\n expect(screen.getAllByText('Item 1')[0]).toBeVisible();\n expect(screen.getAllByText('Item 2')[0]).toBeVisible();\n });\n\n it('hides the show/hide details button if hideDetails is false', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.queryByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('shows the show/hide details button if hideDetails is true', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.getByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('hides the sections if hideDetails is true', () => {\n render(<Table tableData={tableData} hideDetails title=\"Test Table\" />);\n\n expect(screen.queryByText('Section 2')).not.toBeInTheDocument();\n expect(screen.getByTestId('show-hide-details')).toBeInTheDocument();\n });\n\n it('hides the sections if hideDetails is true and shows if clicking on button', async () => {\n const { user } = render(\n <Table tableData={tableData} hideDetails title=\"Test Table\" />\n );\n\n expect(screen.getByText('Show details')).toBeVisible();\n\n await user.click(screen.getByTestId('show-hide-details'));\n\n expect(screen.getByText('Section 2')).toBeVisible();\n expect(screen.getByText('Hide details')).toBeVisible();\n });\n\n it('does not render the sticky header row when hideStickyHeader is true', () => {\n const { rerender } = render(\n <Table tableData={tableData} title=\"Test Table\" />\n );\n const countWithStickyHeader = screen.getAllByText('Item 1').length;\n\n rerender(\n <Table tableData={tableData} hideStickyHeader title=\"Test Table\" />\n );\n\n expect(screen.getAllByText('Item 1')).toHaveLength(\n countWithStickyHeader - 1\n );\n });\n\n it('shows a modal when clicking on info icon', async () => {\n const { user } = render(<Table tableData={tableData} title=\"Test Table\" />);\n\n await user.click(screen.getByTestId('ds-table-info-button'));\n\n expect(screen.getByText('Additional item')).toBeVisible();\n });\n\n it('renders the table with cell replacements', () => {\n render(\n <Table\n tableData={tableData}\n title=\"Test Table\"\n cellReplacements={{\n '#item1': {\n text: 'I was replaced',\n },\n }}\n />\n );\n\n expect(screen.getByText('Section 1')).toBeInTheDocument();\n expect(screen.getByText('Section 2')).toBeInTheDocument();\n\n expect(screen.getAllByText('I was replaced')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 2')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 3')[0]).toBeInTheDocument();\n expect(screen.getAllByText('Item 4')[0]).toBeInTheDocument();\n });\n\n it('renders icons with a custom image component', () => {\n const CustomImageComponent = ({ src }: { src: string }) => (\n <>\n <p>I am custom</p>\n <img src={src} alt=\"\" />\n </>\n );\n\n render(\n <Table\n tableData={tableData}\n title=\"Test Table\"\n imageComponent={CustomImageComponent}\n />\n );\n\n expect(screen.getByText('I am custom')).toBeInTheDocument();\n });\n});\n"],"names":["_jsx","render","_jsxs","_Fragment"],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { createContext, useRef, useCallback, useMemo, useContext, useEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
var DirtySwanContext = createContext(null);
|
|
5
|
+
var DirtySwanProvider = function (_a) {
|
|
6
|
+
var children = _a.children, onModalChange = _a.onModalChange;
|
|
7
|
+
var countRef = useRef(0);
|
|
8
|
+
var onModalChangeRef = useRef(onModalChange);
|
|
9
|
+
onModalChangeRef.current = onModalChange;
|
|
10
|
+
var onModalOpen = useCallback(function () {
|
|
11
|
+
var _a;
|
|
12
|
+
countRef.current += 1;
|
|
13
|
+
if (countRef.current === 1) {
|
|
14
|
+
(_a = onModalChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onModalChangeRef, true);
|
|
15
|
+
}
|
|
16
|
+
}, []);
|
|
17
|
+
var onModalClose = useCallback(function () {
|
|
18
|
+
var _a;
|
|
19
|
+
countRef.current -= 1;
|
|
20
|
+
if (countRef.current === 0) {
|
|
21
|
+
(_a = onModalChangeRef.current) === null || _a === void 0 ? void 0 : _a.call(onModalChangeRef, false);
|
|
22
|
+
}
|
|
23
|
+
}, []);
|
|
24
|
+
var value = useMemo(function () { return ({ onModalOpen: onModalOpen, onModalClose: onModalClose }); }, [onModalOpen, onModalClose]);
|
|
25
|
+
return (jsx(DirtySwanContext.Provider, { value: value, children: children }));
|
|
26
|
+
};
|
|
27
|
+
var useDirtySwan = function () { return useContext(DirtySwanContext); };
|
|
28
|
+
var useModalTrack = function (isVisible) {
|
|
29
|
+
var dirtySwan = useDirtySwan();
|
|
30
|
+
useEffect(function () {
|
|
31
|
+
if (!isVisible)
|
|
32
|
+
return;
|
|
33
|
+
dirtySwan === null || dirtySwan === void 0 ? void 0 : dirtySwan.onModalOpen();
|
|
34
|
+
return function () { return dirtySwan === null || dirtySwan === void 0 ? void 0 : dirtySwan.onModalClose(); };
|
|
35
|
+
}, [isVisible, dirtySwan]);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export { DirtySwanProvider, useDirtySwan, useModalTrack };
|
|
39
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../../../src/lib/context.tsx"],"sourcesContent":["import { createContext, ReactNode, useCallback, useContext, useEffect, useMemo, useRef } from 'react';\n\ninterface DirtySwanContextValue {\n onModalOpen: () => void;\n onModalClose: () => void;\n}\n\nconst DirtySwanContext = createContext<DirtySwanContextValue | null>(null);\n\ninterface DirtySwanProviderProps {\n children: ReactNode;\n onModalChange?: (isModalOpen: boolean) => void;\n}\n\nexport const DirtySwanProvider = ({\n children,\n onModalChange,\n}: DirtySwanProviderProps) => {\n const countRef = useRef(0);\n const onModalChangeRef = useRef(onModalChange);\n onModalChangeRef.current = onModalChange;\n\n const onModalOpen = useCallback(() => {\n countRef.current += 1;\n if (countRef.current === 1) {\n onModalChangeRef.current?.(true);\n }\n }, []);\n\n const onModalClose = useCallback(() => {\n countRef.current -= 1;\n if (countRef.current === 0) {\n onModalChangeRef.current?.(false);\n }\n }, []);\n\n const value = useMemo(\n () => ({ onModalOpen, onModalClose }),\n [onModalOpen, onModalClose]\n );\n\n return (\n <DirtySwanContext.Provider value={value}>\n {children}\n </DirtySwanContext.Provider>\n );\n};\n\nexport const useDirtySwan = () => useContext(DirtySwanContext);\n\nexport const useModalTrack = (isVisible: boolean) => {\n const dirtySwan = useDirtySwan();\n\n useEffect(() => {\n if (!isVisible) return;\n\n dirtySwan?.onModalOpen();\n return () => dirtySwan?.onModalClose();\n }, [isVisible, dirtySwan]);\n};\n"],"names":["_jsx"],"mappings":";;;AAOA,IAAM,gBAAgB,GAAG,aAAa,CAA+B,IAAI,CAAC;AAOnE,IAAM,iBAAiB,GAAG,UAAC,EAGT,EAAA;QAFvB,QAAQ,GAAA,EAAA,CAAA,QAAA,EACR,aAAa,GAAA,EAAA,CAAA,aAAA;AAEb,IAAA,IAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC;AAC1B,IAAA,IAAM,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC;AAC9C,IAAA,gBAAgB,CAAC,OAAO,GAAG,aAAa;IAExC,IAAM,WAAW,GAAG,WAAW,CAAC,YAAA;;AAC9B,QAAA,QAAQ,CAAC,OAAO,IAAI,CAAC;AACrB,QAAA,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE;AAC1B,YAAA,CAAA,EAAA,GAAA,gBAAgB,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,gBAAA,EAAG,IAAI,CAAC;QAClC;IACF,CAAC,EAAE,EAAE,CAAC;IAEN,IAAM,YAAY,GAAG,WAAW,CAAC,YAAA;;AAC/B,QAAA,QAAQ,CAAC,OAAO,IAAI,CAAC;AACrB,QAAA,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE;AAC1B,YAAA,CAAA,EAAA,GAAA,gBAAgB,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,gBAAA,EAAG,KAAK,CAAC;QACnC;IACF,CAAC,EAAE,EAAE,CAAC;IAEN,IAAM,KAAK,GAAG,OAAO,CACnB,YAAA,EAAM,QAAC,EAAE,WAAW,EAAA,WAAA,EAAE,YAAY,cAAA,EAAE,EAAC,CAA/B,CAA+B,EACrC,CAAC,WAAW,EAAE,YAAY,CAAC,CAC5B;AAED,IAAA,QACEA,GAAA,CAAC,gBAAgB,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,QAAA,EACpC,QAAQ,EAAA,CACiB;AAEhC;AAEO,IAAM,YAAY,GAAG,YAAA,EAAM,OAAA,UAAU,CAAC,gBAAgB,CAAC,CAAA,CAA5B;AAE3B,IAAM,aAAa,GAAG,UAAC,SAAkB,EAAA;AAC9C,IAAA,IAAM,SAAS,GAAG,YAAY,EAAE;AAEhC,IAAA,SAAS,CAAC,YAAA;AACR,QAAA,IAAI,CAAC,SAAS;YAAE;AAEhB,QAAA,SAAS,aAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,WAAW,EAAE;AACxB,QAAA,OAAO,YAAA,EAAM,OAAA,SAAS,KAAA,IAAA,IAAT,SAAS,KAAA,MAAA,GAAA,MAAA,GAAT,SAAS,CAAE,YAAY,EAAE,CAAA,CAAzB,CAAyB;AACxC,IAAA,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAC5B;;;;"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { DirtySwanProvider } from './context.js';
|
|
4
|
+
import './index-DLQEsiym.js';
|
|
5
|
+
import { Button } from './components/button/index.js';
|
|
6
|
+
import { BottomOrRegularModal } from './components/modal/bottomOrRegularModal/index.js';
|
|
7
|
+
import './_commonjsHelpers-BFTU3MAI.js';
|
|
8
|
+
import './tslib.es6-CVlKGIvp.js';
|
|
9
|
+
import './components/modal/bottomModal/index.js';
|
|
10
|
+
import './style-inject.es-tgCJW-Cu.js';
|
|
11
|
+
import './components/modal/genericModal/index.js';
|
|
12
|
+
import './components/icon/icons/X.js';
|
|
13
|
+
import './components/icon/IconWrapper/IconWrapper.js';
|
|
14
|
+
import './index-DuaJiEiT.js';
|
|
15
|
+
import './index-hWqCLhoS.js';
|
|
16
|
+
import './components/modal/regularModal/index.js';
|
|
17
|
+
|
|
18
|
+
var story = {
|
|
19
|
+
title: 'JSX/DirtySwanProvider',
|
|
20
|
+
component: DirtySwanProvider,
|
|
21
|
+
argTypes: {
|
|
22
|
+
onModalChange: {
|
|
23
|
+
description: 'Callback fired when the modal open state changes. Receives `true` when the first modal opens and `false` when the last modal closes.',
|
|
24
|
+
action: true,
|
|
25
|
+
table: {
|
|
26
|
+
category: 'Callbacks',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
parameters: {
|
|
31
|
+
docs: {
|
|
32
|
+
description: {
|
|
33
|
+
component: 'An optional context provider that notifies consumers when any modal is open or closed. It tracks nested modals using a counter — `onModalChange(true)` fires when the first modal opens, and `onModalChange(false)` only fires when the last one closes.',
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
var SingleModal = {
|
|
39
|
+
render: function (_a) {
|
|
40
|
+
var onModalChange = _a.onModalChange;
|
|
41
|
+
var _b = useState(false), isOpen = _b[0], setIsOpen = _b[1];
|
|
42
|
+
var _c = useState(false), isModalOpen = _c[0], setIsModalOpen = _c[1];
|
|
43
|
+
var handleModalChange = function (open) {
|
|
44
|
+
setIsModalOpen(open);
|
|
45
|
+
onModalChange(open);
|
|
46
|
+
};
|
|
47
|
+
return (jsxs(DirtySwanProvider, { onModalChange: handleModalChange, children: [jsxs("div", { className: "d-flex fd-column gap16", children: [jsxs("div", { children: ["Modal state: ", jsx("strong", { children: isModalOpen ? 'open' : 'closed' })] }), jsx(Button, { className: "wmn2", onClick: function () { return setIsOpen(true); }, children: "Open modal" })] }), jsx(BottomOrRegularModal, { title: "Single modal", isOpen: isOpen, onClose: function () { return setIsOpen(false); }, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: ["Opening this modal triggered onModalChange(true). Closing it will trigger onModalChange(false).", jsx(Button, { className: "mt24 wmn3", onClick: function () { return setIsOpen(false); }, children: "Close" })] }) })] }));
|
|
48
|
+
},
|
|
49
|
+
name: 'Single modal',
|
|
50
|
+
};
|
|
51
|
+
var NestedModals = {
|
|
52
|
+
render: function (_a) {
|
|
53
|
+
var onModalChange = _a.onModalChange;
|
|
54
|
+
var _b = useState(false), isFirstOpen = _b[0], setIsFirstOpen = _b[1];
|
|
55
|
+
var _c = useState(false), isSecondOpen = _c[0], setIsSecondOpen = _c[1];
|
|
56
|
+
var _d = useState(false), isModalOpen = _d[0], setIsModalOpen = _d[1];
|
|
57
|
+
var handleModalChange = function (open) {
|
|
58
|
+
setIsModalOpen(open);
|
|
59
|
+
onModalChange(open);
|
|
60
|
+
};
|
|
61
|
+
return (jsxs(DirtySwanProvider, { onModalChange: handleModalChange, children: [jsxs("div", { className: "d-flex fd-column gap16", children: [jsxs("div", { children: ["Modal state: ", jsx("strong", { children: isModalOpen ? 'open' : 'closed' })] }), jsx(Button, { className: "wmn2", onClick: function () { return setIsFirstOpen(true); }, children: "Open first modal" })] }), jsx(BottomOrRegularModal, { title: "First modal", isOpen: isFirstOpen, onClose: function () { return setIsFirstOpen(false); }, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: ["This is the first modal. Open a second one to see that onModalChange(false) only fires when both are closed.", jsxs("div", { className: "d-flex fd-row gap8 mt24", children: [jsx(Button, { className: "wmn3", onClick: function () { return setIsSecondOpen(true); }, children: "Open second modal" }), jsx(Button, { variant: "textBlack", className: "wmn3", onClick: function () { return setIsFirstOpen(false); }, children: "Close" })] })] }) }), jsx(BottomOrRegularModal, { title: "Second modal", isOpen: isSecondOpen, onClose: function () { return setIsSecondOpen(false); }, children: jsxs("div", { style: { padding: '0 24px 24px 24px' }, children: ["This is the second (nested) modal. Closing this one will not trigger onModalChange(false) because the first modal is still open.", jsx(Button, { className: "mt24 wmn3", onClick: function () { return setIsSecondOpen(false); }, children: "Close" })] }) })] }));
|
|
62
|
+
},
|
|
63
|
+
name: 'Nested modals',
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
export { NestedModals, SingleModal, story as default };
|
|
67
|
+
//# sourceMappingURL=context.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.stories.js","sources":["../../../src/lib/context.stories.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { DirtySwanProvider } from './context';\nimport { BottomOrRegularModal } from './components/modal';\nimport { Button } from './components/button';\n\nconst story = {\n title: 'JSX/DirtySwanProvider',\n component: DirtySwanProvider,\n argTypes: {\n onModalChange: {\n description:\n 'Callback fired when the modal open state changes. Receives `true` when the first modal opens and `false` when the last modal closes.',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n },\n parameters: {\n docs: {\n description: {\n component:\n 'An optional context provider that notifies consumers when any modal is open or closed. It tracks nested modals using a counter — `onModalChange(true)` fires when the first modal opens, and `onModalChange(false)` only fires when the last one closes.',\n },\n },\n },\n};\n\nexport const SingleModal = {\n render: ({ onModalChange }: { onModalChange: (isOpen: boolean) => void }) => {\n const [isOpen, setIsOpen] = useState(false);\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const handleModalChange = (open: boolean) => {\n setIsModalOpen(open);\n onModalChange(open);\n };\n\n return (\n <DirtySwanProvider onModalChange={handleModalChange}>\n <div className=\"d-flex fd-column gap16\">\n <div>\n Modal state: <strong>{isModalOpen ? 'open' : 'closed'}</strong>\n </div>\n <Button className=\"wmn2\" onClick={() => setIsOpen(true)}>\n Open modal\n </Button>\n </div>\n\n <BottomOrRegularModal\n title=\"Single modal\"\n isOpen={isOpen}\n onClose={() => setIsOpen(false)}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n Opening this modal triggered onModalChange(true). Closing it will\n trigger onModalChange(false).\n <Button className=\"mt24 wmn3\" onClick={() => setIsOpen(false)}>\n Close\n </Button>\n </div>\n </BottomOrRegularModal>\n </DirtySwanProvider>\n );\n },\n name: 'Single modal',\n};\n\nexport const NestedModals = {\n render: ({ onModalChange }: { onModalChange: (isOpen: boolean) => void }) => {\n const [isFirstOpen, setIsFirstOpen] = useState(false);\n const [isSecondOpen, setIsSecondOpen] = useState(false);\n const [isModalOpen, setIsModalOpen] = useState(false);\n\n const handleModalChange = (open: boolean) => {\n setIsModalOpen(open);\n onModalChange(open);\n };\n\n return (\n <DirtySwanProvider onModalChange={handleModalChange}>\n <div className=\"d-flex fd-column gap16\">\n <div>\n Modal state: <strong>{isModalOpen ? 'open' : 'closed'}</strong>\n </div>\n <Button className=\"wmn2\" onClick={() => setIsFirstOpen(true)}>\n Open first modal\n </Button>\n </div>\n\n <BottomOrRegularModal\n title=\"First modal\"\n isOpen={isFirstOpen}\n onClose={() => setIsFirstOpen(false)}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n This is the first modal. Open a second one to see that\n onModalChange(false) only fires when both are closed.\n <div className=\"d-flex fd-row gap8 mt24\">\n <Button className=\"wmn3\" onClick={() => setIsSecondOpen(true)}>\n Open second modal\n </Button>\n <Button\n variant=\"textBlack\"\n className=\"wmn3\"\n onClick={() => setIsFirstOpen(false)}\n >\n Close\n </Button>\n </div>\n </div>\n </BottomOrRegularModal>\n\n <BottomOrRegularModal\n title=\"Second modal\"\n isOpen={isSecondOpen}\n onClose={() => setIsSecondOpen(false)}\n >\n <div style={{ padding: '0 24px 24px 24px' }}>\n This is the second (nested) modal. Closing this one will not trigger\n onModalChange(false) because the first modal is still open.\n <Button\n className=\"mt24 wmn3\"\n onClick={() => setIsSecondOpen(false)}\n >\n Close\n </Button>\n </div>\n </BottomOrRegularModal>\n </DirtySwanProvider>\n );\n },\n name: 'Nested modals',\n};\n\nexport default story;\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { c as customRender, f as fireEvent, s as screen } from './customRender-DzdqZxUd.js';
|
|
3
|
+
import { DirtySwanProvider, useDirtySwan } from './context.js';
|
|
4
|
+
import './tslib.es6-CVlKGIvp.js';
|
|
5
|
+
import './_commonjsHelpers-BFTU3MAI.js';
|
|
6
|
+
import 'react';
|
|
7
|
+
import 'react-dom';
|
|
8
|
+
import 'util';
|
|
9
|
+
import 'react-dom/test-utils';
|
|
10
|
+
|
|
11
|
+
var TestConsumer = function () {
|
|
12
|
+
var ctx = useDirtySwan();
|
|
13
|
+
return (jsxs("div", { children: [jsx("button", { onClick: function () { return ctx === null || ctx === void 0 ? void 0 : ctx.onModalOpen(); }, children: "open" }), jsx("button", { onClick: function () { return ctx === null || ctx === void 0 ? void 0 : ctx.onModalClose(); }, children: "close" })] }));
|
|
14
|
+
};
|
|
15
|
+
describe('DirtySwanProvider', function () {
|
|
16
|
+
it('calls onModalChange(true) when first modal opens', function () {
|
|
17
|
+
var onModalChange = jest.fn();
|
|
18
|
+
customRender(jsx(DirtySwanProvider, { onModalChange: onModalChange, children: jsx(TestConsumer, {}) }));
|
|
19
|
+
fireEvent.click(screen.getByText('open'));
|
|
20
|
+
expect(onModalChange).toHaveBeenCalledWith(true);
|
|
21
|
+
});
|
|
22
|
+
it('calls onModalChange(false) when last modal closes', function () {
|
|
23
|
+
var onModalChange = jest.fn();
|
|
24
|
+
customRender(jsx(DirtySwanProvider, { onModalChange: onModalChange, children: jsx(TestConsumer, {}) }));
|
|
25
|
+
fireEvent.click(screen.getByText('open'));
|
|
26
|
+
fireEvent.click(screen.getByText('close'));
|
|
27
|
+
expect(onModalChange).toHaveBeenLastCalledWith(false);
|
|
28
|
+
});
|
|
29
|
+
it('does not call onModalChange(false) when nested modals are still open', function () {
|
|
30
|
+
var onModalChange = jest.fn();
|
|
31
|
+
customRender(jsx(DirtySwanProvider, { onModalChange: onModalChange, children: jsx(TestConsumer, {}) }));
|
|
32
|
+
fireEvent.click(screen.getByText('open'));
|
|
33
|
+
fireEvent.click(screen.getByText('open'));
|
|
34
|
+
fireEvent.click(screen.getByText('close'));
|
|
35
|
+
expect(onModalChange).toHaveBeenCalledTimes(1);
|
|
36
|
+
expect(onModalChange).toHaveBeenCalledWith(true);
|
|
37
|
+
});
|
|
38
|
+
it('calls onModalChange(false) when all nested modals close', function () {
|
|
39
|
+
var onModalChange = jest.fn();
|
|
40
|
+
customRender(jsx(DirtySwanProvider, { onModalChange: onModalChange, children: jsx(TestConsumer, {}) }));
|
|
41
|
+
fireEvent.click(screen.getByText('open'));
|
|
42
|
+
fireEvent.click(screen.getByText('open'));
|
|
43
|
+
fireEvent.click(screen.getByText('close'));
|
|
44
|
+
fireEvent.click(screen.getByText('close'));
|
|
45
|
+
expect(onModalChange).toHaveBeenCalledTimes(2);
|
|
46
|
+
expect(onModalChange).toHaveBeenLastCalledWith(false);
|
|
47
|
+
});
|
|
48
|
+
it('returns null when used outside provider', function () {
|
|
49
|
+
var contextValue = undefined;
|
|
50
|
+
var Spy = function () {
|
|
51
|
+
contextValue = useDirtySwan();
|
|
52
|
+
return null;
|
|
53
|
+
};
|
|
54
|
+
customRender(jsx(Spy, {}));
|
|
55
|
+
expect(contextValue).toBeNull();
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=context.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.test.js","sources":["../../../src/lib/context.test.tsx"],"sourcesContent":["import { render, screen, fireEvent } from './util/testUtils';\nimport { DirtySwanProvider, useDirtySwan } from './context';\n\nconst TestConsumer = () => {\n const ctx = useDirtySwan();\n\n return (\n <div>\n <button onClick={() => ctx?.onModalOpen()}>open</button>\n <button onClick={() => ctx?.onModalClose()}>close</button>\n </div>\n );\n};\n\ndescribe('DirtySwanProvider', () => {\n it('calls onModalChange(true) when first modal opens', () => {\n const onModalChange = jest.fn();\n render(\n <DirtySwanProvider onModalChange={onModalChange}>\n <TestConsumer />\n </DirtySwanProvider>\n );\n\n fireEvent.click(screen.getByText('open'));\n\n expect(onModalChange).toHaveBeenCalledWith(true);\n });\n\n it('calls onModalChange(false) when last modal closes', () => {\n const onModalChange = jest.fn();\n render(\n <DirtySwanProvider onModalChange={onModalChange}>\n <TestConsumer />\n </DirtySwanProvider>\n );\n\n fireEvent.click(screen.getByText('open'));\n fireEvent.click(screen.getByText('close'));\n\n expect(onModalChange).toHaveBeenLastCalledWith(false);\n });\n\n it('does not call onModalChange(false) when nested modals are still open', () => {\n const onModalChange = jest.fn();\n render(\n <DirtySwanProvider onModalChange={onModalChange}>\n <TestConsumer />\n </DirtySwanProvider>\n );\n\n fireEvent.click(screen.getByText('open'));\n fireEvent.click(screen.getByText('open'));\n fireEvent.click(screen.getByText('close'));\n\n expect(onModalChange).toHaveBeenCalledTimes(1);\n expect(onModalChange).toHaveBeenCalledWith(true);\n });\n\n it('calls onModalChange(false) when all nested modals close', () => {\n const onModalChange = jest.fn();\n render(\n <DirtySwanProvider onModalChange={onModalChange}>\n <TestConsumer />\n </DirtySwanProvider>\n );\n\n fireEvent.click(screen.getByText('open'));\n fireEvent.click(screen.getByText('open'));\n fireEvent.click(screen.getByText('close'));\n fireEvent.click(screen.getByText('close'));\n\n expect(onModalChange).toHaveBeenCalledTimes(2);\n expect(onModalChange).toHaveBeenLastCalledWith(false);\n });\n\n it('returns null when used outside provider', () => {\n let contextValue: ReturnType<typeof useDirtySwan> = undefined as any;\n\n const Spy = () => {\n contextValue = useDirtySwan();\n return null;\n };\n\n render(<Spy />);\n\n expect(contextValue).toBeNull();\n });\n});\n"],"names":["_jsxs","_jsx","render"],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { Accordion, DateSelector, SignaturePad, AutocompleteAddress, Input, MultiDropzone, IbanInput, CurrencyInput, BottomModal, RegularModal, BottomOrRegularModal, FullScreenModal, InfoCard, CardButton, Card, Button, AutoSuggestMultiSelect, Chip, AutoSuggestInput, ComparisonTable, TableRating, TableTrueFalse, TableRowHeader, TableButton, TableInfoButton, SegmentedControl, DownloadButton, Checkbox, Radio, Link, InformationBox, Badge, images, illustrations, Spinner, Table, Toggle, Toaster, toast, useEscapeKey, useFocusWithin, useMediaQuery, useOnClickOutside, LogoColor, LogoWhite, LogoBlack, LogoOrangeBox, LogoInvertedColor, LogoInverted, LogoPositiveColor, LogoPositiveBlack, SearchableDropdown, } from './lib';
|
|
1
|
+
export { Accordion, DateSelector, SignaturePad, AutocompleteAddress, Input, MultiDropzone, IbanInput, CurrencyInput, BottomModal, RegularModal, BottomOrRegularModal, FullScreenModal, InfoCard, CardButton, Card, Button, AutoSuggestMultiSelect, Chip, AutoSuggestInput, ComparisonTable, TableRating, TableTrueFalse, TableRowHeader, TableButton, TableInfoButton, SegmentedControl, DownloadButton, Checkbox, Radio, Link, InformationBox, Badge, images, illustrations, Spinner, Table, Toggle, Toaster, toast, useEscapeKey, useFocusWithin, useMediaQuery, useOnClickOutside, LogoColor, LogoWhite, LogoBlack, LogoOrangeBox, LogoInvertedColor, LogoInverted, LogoPositiveColor, LogoPositiveBlack, SearchableDropdown, DirtySwanProvider, useDirtySwan, useModalTrack, } from './lib';
|
|
2
2
|
export * from './lib/components/icon';
|
|
3
3
|
export type { AccordionProps, BadgeProps, DownloadStatus, InformationBoxProps, InputProps, IllustrationKeys, FileType, MultiDropzoneProps, TableHeader, UploadedFile, UploadStatus, CardProps, IconWrapperProps, TableData, TableProps, SearchableDropdownProps, SearchableDropdownOption, } from './lib';
|
package/dist/esm/index.js
CHANGED
|
@@ -43,6 +43,7 @@ export { LogoInvertedColor } from './components/logo/LogoInvertedColor.js';
|
|
|
43
43
|
export { LogoInverted } from './components/logo/LogoInverted.js';
|
|
44
44
|
export { LogoPositiveColor } from './components/logo/LogoPositiveColor.js';
|
|
45
45
|
export { LogoPositiveBlack } from './components/logo/LogoPositiveBlack.js';
|
|
46
|
+
export { DirtySwanProvider, useDirtySwan, useModalTrack } from './context.js';
|
|
46
47
|
export { default as Svg1Icon } from './components/icon/icons/1.js';
|
|
47
48
|
export { default as Svg2Icon } from './components/icon/icons/2.js';
|
|
48
49
|
export { default as Svg3Icon } from './components/icon/icons/3.js';
|