@royaloperahouse/chord 0.1.0 → 0.3.0
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/README.md +9 -0
- package/dist/chord.cjs.development.js +567 -278
- package/dist/chord.cjs.development.js.map +1 -1
- package/dist/chord.cjs.production.min.js +1 -1
- package/dist/chord.cjs.production.min.js.map +1 -1
- package/dist/chord.esm.js +567 -279
- package/dist/chord.esm.js.map +1 -1
- package/dist/components/atoms/Account/Account.d.ts +1 -1
- package/dist/components/atoms/Basket/Basket.d.ts +1 -1
- package/dist/components/atoms/Dropdown/Dropdown.d.ts +1 -1
- package/dist/components/atoms/Dropdown/Dropdown.style.d.ts +1 -1
- package/dist/components/atoms/Icons/SvgIcons/index.d.ts +0 -1
- package/dist/components/atoms/Logo/Logo.d.ts +1 -1
- package/dist/components/atoms/Search/Search.d.ts +1 -1
- package/dist/components/atoms/SponsorLogo/SponsorLogo.d.ts +4 -0
- package/dist/components/atoms/SponsorLogo/SponsorLogo.style.d.ts +1 -0
- package/dist/components/atoms/SponsorLogo/index.d.ts +2 -0
- package/dist/components/atoms/Tab/Tab.d.ts +1 -1
- package/dist/components/atoms/index.d.ts +2 -1
- package/dist/components/molecules/NavTop/NavTop.d.ts +1 -1
- package/dist/components/molecules/Tabs/Tabs.d.ts +1 -1
- package/dist/components/molecules/Tabs/Tabs.style.d.ts +1 -1
- package/dist/components/organisms/Navigation/Navigation.d.ts +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/styles/themes.d.ts +6 -0
- package/dist/types/navigation.d.ts +24 -0
- package/dist/types/types.d.ts +24 -2
- package/package.json +10 -6
- package/dist/components/atoms/Icons/SvgIcons/Logos/Sponsors/Sponsor.svg.d.ts +0 -4
- package/dist/components/atoms/Image/Image.d.ts +0 -38
- package/src/components/atoms/Account/Account.stories.tsx +0 -93
- package/src/components/atoms/Account/Account.test.tsx +0 -54
- package/src/components/atoms/Account/Account.tsx +0 -25
- package/src/components/atoms/Account/index.tsx +0 -3
- package/src/components/atoms/Basket/Basket.stories.tsx +0 -79
- package/src/components/atoms/Basket/Basket.style.tsx +0 -74
- package/src/components/atoms/Basket/Basket.test.tsx +0 -35
- package/src/components/atoms/Basket/Basket.tsx +0 -34
- package/src/components/atoms/Basket/index.tsx +0 -3
- package/src/components/atoms/Buttons/Button.style.tsx +0 -31
- package/src/components/atoms/Buttons/Button.tsx +0 -21
- package/src/components/atoms/Buttons/ButtonIconWrapper.style.tsx +0 -10
- package/src/components/atoms/Buttons/Buttons.stories.tsx +0 -77
- package/src/components/atoms/Buttons/Primary/PrimaryButton.stories.tsx +0 -94
- package/src/components/atoms/Buttons/Primary/PrimaryButton.test.tsx +0 -39
- package/src/components/atoms/Buttons/Primary/PrimaryButton.tsx +0 -14
- package/src/components/atoms/Buttons/Primary/PrimaryButtonWrapper.style.tsx +0 -11
- package/src/components/atoms/Buttons/Secondary/SecondaryButton.stories.tsx +0 -84
- package/src/components/atoms/Buttons/Secondary/SecondaryButton.test.tsx +0 -39
- package/src/components/atoms/Buttons/Secondary/SecondaryButton.tsx +0 -14
- package/src/components/atoms/Buttons/Secondary/SecondaryButtonWrapper.style.tsx +0 -11
- package/src/components/atoms/Buttons/Tertiary/TertiaryButton.stories.tsx +0 -73
- package/src/components/atoms/Buttons/Tertiary/TertiaryButton.style.tsx +0 -29
- package/src/components/atoms/Buttons/Tertiary/TertiaryButton.test.tsx +0 -29
- package/src/components/atoms/Buttons/Tertiary/TertiaryButton.tsx +0 -18
- package/src/components/atoms/Buttons/index.tsx +0 -5
- package/src/components/atoms/Dropdown/Dropdown.stories.tsx +0 -153
- package/src/components/atoms/Dropdown/Dropdown.style.tsx +0 -64
- package/src/components/atoms/Dropdown/Dropdown.test.tsx +0 -67
- package/src/components/atoms/Dropdown/Dropdown.tsx +0 -131
- package/src/components/atoms/Dropdown/index.tsx +0 -3
- package/src/components/atoms/Grid/Grid.stories.tsx +0 -127
- package/src/components/atoms/Grid/Grid.test.tsx +0 -17
- package/src/components/atoms/Grid/Grid.tsx +0 -11
- package/src/components/atoms/Grid/GridItem.test.tsx +0 -25
- package/src/components/atoms/Grid/GridItem.tsx +0 -24
- package/src/components/atoms/Grid/index.tsx +0 -3
- package/src/components/atoms/Heading/Heading.stories.tsx +0 -44
- package/src/components/atoms/Heading/Heading.style.tsx +0 -14
- package/src/components/atoms/Heading/Heading.test.tsx +0 -13
- package/src/components/atoms/Heading/Heading.tsx +0 -15
- package/src/components/atoms/Heading/index.tsx +0 -3
- package/src/components/atoms/Icons/Icons.stories.tsx +0 -190
- package/src/components/atoms/Icons/Icons.style.tsx +0 -24
- package/src/components/atoms/Icons/Icons.test.tsx +0 -31
- package/src/components/atoms/Icons/Icons.tsx +0 -20
- package/src/components/atoms/Icons/StorybookSupport/Iconography.tsx +0 -27
- package/src/components/atoms/Icons/StorybookSupport/IconsDiv.style.tsx +0 -49
- package/src/components/atoms/Icons/SvgIcons/12px/Remove.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/12px/Tick.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Actions/AddToMyList.svg.tsx +0 -13
- package/src/components/atoms/Icons/SvgIcons/Actions/BookTickets.svg.tsx +0 -20
- package/src/components/atoms/Icons/SvgIcons/Actions/ChooseDates.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Actions/EditMyList.svg.tsx +0 -16
- package/src/components/atoms/Icons/SvgIcons/Actions/Filter.svg.tsx +0 -19
- package/src/components/atoms/Icons/SvgIcons/Actions/FindAScreening.svg.tsx +0 -31
- package/src/components/atoms/Icons/SvgIcons/Actions/OnMyList.svg.tsx +0 -16
- package/src/components/atoms/Icons/SvgIcons/Actions/Reminder.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Actions/Subscribe.svg.tsx +0 -9
- package/src/components/atoms/Icons/SvgIcons/Actions/Watch.svg.tsx +0 -9
- package/src/components/atoms/Icons/SvgIcons/Arrows/Arrow.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Arrows/CarouselArrow.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Arrows/DropdownArrow.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Cinema.svg.tsx +0 -31
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Clock.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Descriptors/CreditCard.svg.tsx +0 -19
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Email.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Info.svg.tsx +0 -13
- package/src/components/atoms/Icons/SvgIcons/Descriptors/List.svg.tsx +0 -22
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Location.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Descriptors/PDF.svg.tsx +0 -20
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Phone.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Print.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Secure.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Descriptors/Tickets.svg.tsx +0 -13
- package/src/components/atoms/Icons/SvgIcons/Logos/Social/Facebook.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Logos/Social/Instagram.svg.tsx +0 -19
- package/src/components/atoms/Icons/SvgIcons/Logos/Social/Tiktok.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Logos/Social/Twitter.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Logos/Social/Youtube.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Logos/Sponsors/Sponsor.svg.tsx +0 -26
- package/src/components/atoms/Icons/SvgIcons/Navigation/BalletAndDance.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Navigation/Basket.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Navigation/BasketFull.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Navigation/Home.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Navigation/LiveStream.svg.tsx +0 -24
- package/src/components/atoms/Icons/SvgIcons/Navigation/Menu.svg.tsx +0 -10
- package/src/components/atoms/Icons/SvgIcons/Navigation/OperaAndMusic.svg.tsx +0 -17
- package/src/components/atoms/Icons/SvgIcons/Navigation/Search.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Navigation/Settings.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Navigation/User.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Navigation/UserSignedIn.svg.tsx +0 -12
- package/src/components/atoms/Icons/SvgIcons/Text/Delete.svg.tsx +0 -12
- package/src/components/atoms/Icons/SvgIcons/Text/Shift.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Text/Space.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Utility/Close.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Utility/Confirm.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Utility/Detract.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Utility/Expand.svg.tsx +0 -8
- package/src/components/atoms/Icons/SvgIcons/Utility/ExternalLink.svg.tsx +0 -12
- package/src/components/atoms/Icons/SvgIcons/Utility/GridView.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Utility/ListView.svg.tsx +0 -10
- package/src/components/atoms/Icons/SvgIcons/Utility/Refresh.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Video/AudioDescription.svg.tsx +0 -16
- package/src/components/atoms/Icons/SvgIcons/Video/Back10.svg.tsx +0 -16
- package/src/components/atoms/Icons/SvgIcons/Video/Clips.svg.tsx +0 -10
- package/src/components/atoms/Icons/SvgIcons/Video/Forward10.svg.tsx +0 -16
- package/src/components/atoms/Icons/SvgIcons/Video/FullScreen.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Video/Minimise.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Video/Muted.svg.tsx +0 -15
- package/src/components/atoms/Icons/SvgIcons/Video/Pause.svg.tsx +0 -9
- package/src/components/atoms/Icons/SvgIcons/Video/Play.svg.tsx +0 -9
- package/src/components/atoms/Icons/SvgIcons/Video/Restart.svg.tsx +0 -11
- package/src/components/atoms/Icons/SvgIcons/Video/Subtitles.svg.tsx +0 -17
- package/src/components/atoms/Icons/SvgIcons/Video/Trailer.svg.tsx +0 -12
- package/src/components/atoms/Icons/SvgIcons/Video/Volume.svg.tsx +0 -19
- package/src/components/atoms/Icons/SvgIcons/index.tsx +0 -149
- package/src/components/atoms/Icons/__snapshots__/Icons.test.tsx.snap +0 -1954
- package/src/components/atoms/Icons/index.tsx +0 -2
- package/src/components/atoms/Image/Image.tsx +0 -72
- package/src/components/atoms/ImageAspectRatioWrapper/ImageAspectRatio.test.tsx +0 -23
- package/src/components/atoms/ImageAspectRatioWrapper/ImageAspectRatioWrapper.stories.tsx +0 -71
- package/src/components/atoms/ImageAspectRatioWrapper/ImageAspectRatioWrapper.tsx +0 -15
- package/src/components/atoms/ImageAspectRatioWrapper/index.tsx +0 -3
- package/src/components/atoms/IndividualListing/IndividualListing.stories.tsx +0 -51
- package/src/components/atoms/IndividualListing/IndividualListing.style.tsx +0 -33
- package/src/components/atoms/IndividualListing/IndividualListing.test.tsx +0 -30
- package/src/components/atoms/IndividualListing/IndividualListing.tsx +0 -22
- package/src/components/atoms/IndividualListing/index.tsx +0 -3
- package/src/components/atoms/Logo/Logo.stories.tsx +0 -48
- package/src/components/atoms/Logo/Logo.style.tsx +0 -18
- package/src/components/atoms/Logo/Logo.tsx +0 -30
- package/src/components/atoms/Logo/index.tsx +0 -3
- package/src/components/atoms/Search/Search.stories.tsx +0 -63
- package/src/components/atoms/Search/Search.style.tsx +0 -36
- package/src/components/atoms/Search/Search.test.tsx +0 -24
- package/src/components/atoms/Search/Search.tsx +0 -16
- package/src/components/atoms/Search/index.tsx +0 -3
- package/src/components/atoms/SectionSplitter/SectionSplitter.stories.tsx +0 -47
- package/src/components/atoms/SectionSplitter/SectionSplitter.style.tsx +0 -11
- package/src/components/atoms/SectionSplitter/SectionSplitter.tsx +0 -22
- package/src/components/atoms/SectionSplitter/index.tsx +0 -3
- package/src/components/atoms/Sponsorship/Sponsorship.stories.tsx +0 -38
- package/src/components/atoms/Sponsorship/Sponsorship.test.tsx +0 -36
- package/src/components/atoms/Sponsorship/Sponsorship.tsx +0 -53
- package/src/components/atoms/Sponsorship/index.tsx +0 -3
- package/src/components/atoms/Tab/Tab.stories.tsx +0 -67
- package/src/components/atoms/Tab/Tab.style.tsx +0 -105
- package/src/components/atoms/Tab/Tab.test.tsx +0 -28
- package/src/components/atoms/Tab/Tab.tsx +0 -34
- package/src/components/atoms/Tab/index.tsx +0 -3
- package/src/components/atoms/TextLink/TextLink.stories.tsx +0 -81
- package/src/components/atoms/TextLink/TextLink.style.tsx +0 -26
- package/src/components/atoms/TextLink/TextLink.test.tsx +0 -39
- package/src/components/atoms/TextLink/TextLink.tsx +0 -20
- package/src/components/atoms/TextLink/index.tsx +0 -3
- package/src/components/atoms/TypeTags/TypeTags.stories.tsx +0 -57
- package/src/components/atoms/TypeTags/TypeTags.style.tsx +0 -28
- package/src/components/atoms/TypeTags/TypeTags.test.tsx +0 -21
- package/src/components/atoms/TypeTags/TypeTags.tsx +0 -15
- package/src/components/atoms/TypeTags/index.tsx +0 -3
- package/src/components/atoms/index.tsx +0 -22
- package/src/components/index.tsx +0 -38
- package/src/components/molecules/ContactNewsletter/ContactNewsletter.style.tsx +0 -116
- package/src/components/molecules/ContactNewsletter/ContactNewsletter.test.tsx +0 -85
- package/src/components/molecules/ContactNewsletter/ContactNewsletter.tsx +0 -51
- package/src/components/molecules/ContactNewsletter/index.tsx +0 -3
- package/src/components/molecules/Editorial/Editorial.stories.tsx +0 -78
- package/src/components/molecules/Editorial/Editorial.style.tsx +0 -73
- package/src/components/molecules/Editorial/Editorial.test.tsx +0 -73
- package/src/components/molecules/Editorial/Editorial.tsx +0 -32
- package/src/components/molecules/Editorial/index.tsx +0 -3
- package/src/components/molecules/NavTop/NavTop.stories.tsx +0 -95
- package/src/components/molecules/NavTop/NavTop.style.tsx +0 -14
- package/src/components/molecules/NavTop/NavTop.test.tsx +0 -113
- package/src/components/molecules/NavTop/NavTop.tsx +0 -27
- package/src/components/molecules/NavTop/index.tsx +0 -3
- package/src/components/molecules/PeopleListing/PeopleListing.stories.tsx +0 -185
- package/src/components/molecules/PeopleListing/PeopleListing.style.tsx +0 -8
- package/src/components/molecules/PeopleListing/PeopleListing.test.tsx +0 -24
- package/src/components/molecules/PeopleListing/PeopleListing.tsx +0 -27
- package/src/components/molecules/PeopleListing/index.tsx +0 -3
- package/src/components/molecules/PolicyLinks/PolicyLinks.style.tsx +0 -41
- package/src/components/molecules/PolicyLinks/PolicyLinks.test.tsx +0 -28
- package/src/components/molecules/PolicyLinks/PolicyLinks.tsx +0 -19
- package/src/components/molecules/PolicyLinks/index.tsx +0 -3
- package/src/components/molecules/PromoWithTitle/PromoWithTitle.stories.tsx +0 -119
- package/src/components/molecules/PromoWithTitle/PromoWithTitle.style.tsx +0 -108
- package/src/components/molecules/PromoWithTitle/PromoWithTitle.test.tsx +0 -75
- package/src/components/molecules/PromoWithTitle/PromoWithTitle.tsx +0 -53
- package/src/components/molecules/PromoWithTitle/index.tsx +0 -3
- package/src/components/molecules/SearchBar/SearchBar.stories.tsx +0 -35
- package/src/components/molecules/SearchBar/SearchBar.style.tsx +0 -66
- package/src/components/molecules/SearchBar/SearchBar.test.tsx +0 -63
- package/src/components/molecules/SearchBar/SearchBar.tsx +0 -69
- package/src/components/molecules/SearchBar/index.tsx +0 -3
- package/src/components/molecules/SectionTitle/SectionTitle.stories.tsx +0 -68
- package/src/components/molecules/SectionTitle/SectionTitle.style.tsx +0 -34
- package/src/components/molecules/SectionTitle/SectionTitle.test.tsx +0 -35
- package/src/components/molecules/SectionTitle/SectionTitle.tsx +0 -25
- package/src/components/molecules/SectionTitle/index.tsx +0 -3
- package/src/components/molecules/Tabs/Tabs.stories.tsx +0 -101
- package/src/components/molecules/Tabs/Tabs.style.tsx +0 -74
- package/src/components/molecules/Tabs/Tabs.test.tsx +0 -149
- package/src/components/molecules/Tabs/Tabs.tsx +0 -67
- package/src/components/molecules/Tabs/index.tsx +0 -3
- package/src/components/molecules/TextOnly/TextOnly.stories.tsx +0 -74
- package/src/components/molecules/TextOnly/TextOnly.style.tsx +0 -56
- package/src/components/molecules/TextOnly/TextOnly.test.tsx +0 -79
- package/src/components/molecules/TextOnly/TextOnly.tsx +0 -16
- package/src/components/molecules/TextOnly/index.tsx +0 -3
- package/src/components/molecules/index.tsx +0 -7
- package/src/components/organisms/Footer/Footer.stories.tsx +0 -54
- package/src/components/organisms/Footer/Footer.style.tsx +0 -72
- package/src/components/organisms/Footer/Footer.test.tsx +0 -31
- package/src/components/organisms/Footer/Footer.tsx +0 -53
- package/src/components/organisms/Footer/exampleData.json +0 -78
- package/src/components/organisms/Footer/index.tsx +0 -3
- package/src/components/organisms/Navigation/Navigation.stories.tsx +0 -110
- package/src/components/organisms/Navigation/Navigation.style.tsx +0 -87
- package/src/components/organisms/Navigation/Navigation.test.tsx +0 -115
- package/src/components/organisms/Navigation/Navigation.tsx +0 -109
- package/src/components/organisms/Navigation/index.tsx +0 -3
- package/src/components/organisms/Navigation/menuData.json +0 -104
- package/src/components/organisms/index.tsx +0 -4
- package/src/index.tsx +0 -44
- package/src/jest.setup.ts +0 -1
- package/src/styles/GlobalStyles.tsx +0 -205
- package/src/styles/StorybookSupport/Colours/Colours.stories.mdx +0 -101
- package/src/styles/StorybookSupport/Colours/StorybookColourBox.tsx +0 -32
- package/src/styles/ThemeProvider.tsx +0 -11
- package/src/styles/themes.ts +0 -398
- package/src/styles/viewports.ts +0 -14
- package/src/types/buttonTypes.ts +0 -42
- package/src/types/editorial.ts +0 -84
- package/src/types/footer.ts +0 -49
- package/src/types/iconTypes.ts +0 -38
- package/src/types/image.ts +0 -13
- package/src/types/images.d.ts +0 -1
- package/src/types/index.tsx +0 -5
- package/src/types/navigation.ts +0 -149
- package/src/types/types.ts +0 -276
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { IAccountProps } from '../../../types/navigation';
|
|
2
|
-
declare const Account: ({ title, options, onClick, iconName, titleLink }: IAccountProps) => JSX.Element;
|
|
2
|
+
declare const Account: ({ title, options, onClick, iconName, titleLink, colorPrimary }: IAccountProps) => JSX.Element;
|
|
3
3
|
export default Account;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { IBasketProps } from '../../../types/navigation';
|
|
2
|
-
declare const Basket: ({ text, selected, numItems, onClick }: IBasketProps) => JSX.Element;
|
|
2
|
+
declare const Basket: ({ text, selected, numItems, onClick, colorPrimary }: IBasketProps) => JSX.Element;
|
|
3
3
|
export default Basket;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { IDropdownProps } from '../../../types/types';
|
|
2
|
-
declare const Dropdown: ({ title, titleLink, selected, options, onChange, iconName, isMobileBehaviour, withOptionsInMobile, withIcon, }: IDropdownProps) => JSX.Element;
|
|
2
|
+
declare const Dropdown: ({ title, titleLink, selected, options, onChange, iconName, isMobileBehaviour, withOptionsInMobile, withIcon, colorPrimary, }: IDropdownProps) => JSX.Element;
|
|
3
3
|
export default Dropdown;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IDropdownProps } from '../../../types/types';
|
|
2
2
|
export declare const TabContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
|
-
export declare const OptionItem: import("styled-components").StyledComponent<"a", any,
|
|
3
|
+
export declare const OptionItem: import("styled-components").StyledComponent<"a", any, IDropdownProps, never>;
|
|
4
4
|
export declare const OptionsContainer: import("styled-components").StyledComponent<"div", any, IDropdownProps, never>;
|
|
@@ -55,7 +55,6 @@ export declare const IconLibrary: {
|
|
|
55
55
|
Settings: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
56
56
|
Shift: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
57
57
|
Space: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
58
|
-
Sponsor: ({}: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
59
58
|
Subscribe: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
60
59
|
Subtitles: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
61
60
|
Tick: ({ color }: import("../../../../types/iconTypes").IconSVGProps) => import("react").ReactElement<any, string | ((props: any) => import("react").ReactElement<any, any> | null) | (new (props: any) => import("react").Component<any, any, any>)>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const SponsorLogoWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ITabProps } from '../../../types/types';
|
|
2
|
-
declare const Tab: ({ title, titleLink, onClick, selected, iconName, withIcon, withTextInMobile, }: ITabProps) => JSX.Element;
|
|
2
|
+
declare const Tab: ({ title, titleLink, onClick, selected, iconName, withIcon, withTextInMobile, colorPrimary, }: ITabProps) => JSX.Element;
|
|
3
3
|
export default Tab;
|
|
@@ -2,8 +2,9 @@ import { PrimaryButton, SecondaryButton, TertiaryButton } from './Buttons';
|
|
|
2
2
|
import { Grid, GridItem } from './Grid';
|
|
3
3
|
import { Icon } from './Icons';
|
|
4
4
|
import Heading from './Heading';
|
|
5
|
+
import SponsorLogo from './SponsorLogo';
|
|
5
6
|
import Sponsorship from './Sponsorship';
|
|
6
7
|
import SectionSplitter from './SectionSplitter';
|
|
7
8
|
import ImageAspectRatioWrapper from './ImageAspectRatioWrapper';
|
|
8
9
|
import TypeTags from './TypeTags';
|
|
9
|
-
export { Grid, GridItem, Heading, Icon, ImageAspectRatioWrapper, PrimaryButton, SecondaryButton, SectionSplitter, Sponsorship, TertiaryButton, TypeTags, };
|
|
10
|
+
export { Grid, GridItem, Heading, Icon, ImageAspectRatioWrapper, PrimaryButton, SecondaryButton, SectionSplitter, SponsorLogo, Sponsorship, TertiaryButton, TypeTags, };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { INavTopProps } from '../../../types/navigation';
|
|
2
|
-
declare const NavTop: ({ accountText, accountIcon, accountOptions, onLink, basketText, basketNumItems, onClickSearch, isShowSearch, }: INavTopProps) => JSX.Element;
|
|
2
|
+
declare const NavTop: ({ accountText, accountLink, accountIcon, accountOptions, onLink, basketText, basketNumItems, onClickSearch, isShowSearch, colorPrimary, }: INavTopProps) => JSX.Element;
|
|
3
3
|
export default NavTop;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ITabsProps } from '../../../types/types';
|
|
2
|
-
declare const Tabs: ({ items, onChange, onShowMenu, showMenu }: ITabsProps) => JSX.Element;
|
|
2
|
+
declare const Tabs: ({ items, onChange, onShowMenu, showMenu, colorPrimary }: ITabsProps) => JSX.Element;
|
|
3
3
|
export default Tabs;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ITabsProps } from '../../../types/types';
|
|
2
2
|
export declare const TabsContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
3
3
|
export declare const ItemsContainer: import("styled-components").StyledComponent<"div", any, ITabsProps, never>;
|
|
4
|
-
export declare const MenuContainer: import("styled-components").StyledComponent<"div", any,
|
|
4
|
+
export declare const MenuContainer: import("styled-components").StyledComponent<"div", any, ITabsProps, never>;
|
|
5
5
|
export declare const MenuItem: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { INavigationProps } from '../../../types/navigation';
|
|
2
|
-
declare const Navigation: ({ dataNavTop, menuData, onSearch, onLink }: INavigationProps) => JSX.Element;
|
|
2
|
+
declare const Navigation: ({ dataNavTop, menuData, onSearch, onLink, logoLink }: INavigationProps) => JSX.Element;
|
|
3
3
|
export default Navigation;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Editorial, Footer, GlobalStyles, Grid, GridItem, Heading, Icon, Navigation, PeopleListing, PrimaryButton, PromoWithTitle, SecondaryButton, SectionSplitter, Sponsorship, TertiaryButton, TextOnly, ThemeProvider, TypeTags } from './components';
|
|
1
|
+
import { Editorial, Footer, GlobalStyles, Grid, GridItem, Heading, Icon, Navigation, PeopleListing, PrimaryButton, PromoWithTitle, SecondaryButton, SectionSplitter, SectionTitle, Sponsorship, TertiaryButton, TextOnly, ThemeProvider, TypeTags } from './components';
|
|
2
2
|
import { ThemeType } from './types/types';
|
|
3
|
-
export { Editorial, Footer, GlobalStyles, Grid, GridItem, Icon, Heading, Navigation, PeopleListing, PrimaryButton, PromoWithTitle, SecondaryButton, SectionSplitter, Sponsorship, TertiaryButton, TextOnly, ThemeProvider, ThemeType, TypeTags, };
|
|
3
|
+
export { Editorial, Footer, GlobalStyles, Grid, GridItem, Icon, Heading, Navigation, PeopleListing, PrimaryButton, PromoWithTitle, SecondaryButton, SectionSplitter, SectionTitle, Sponsorship, TertiaryButton, TextOnly, ThemeProvider, ThemeType, TypeTags, };
|
package/dist/styles/themes.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare const core: {
|
|
|
12
12
|
error: string;
|
|
13
13
|
medium: string;
|
|
14
14
|
good: string;
|
|
15
|
+
navigation: string;
|
|
15
16
|
};
|
|
16
17
|
fonts: {
|
|
17
18
|
desktop: {
|
|
@@ -365,6 +366,7 @@ export declare const stream: {
|
|
|
365
366
|
error: string;
|
|
366
367
|
medium: string;
|
|
367
368
|
good: string;
|
|
369
|
+
navigation: string;
|
|
368
370
|
};
|
|
369
371
|
fonts: {
|
|
370
372
|
desktop: {
|
|
@@ -718,6 +720,7 @@ export declare const cinema: {
|
|
|
718
720
|
error: string;
|
|
719
721
|
medium: string;
|
|
720
722
|
good: string;
|
|
723
|
+
navigation: string;
|
|
721
724
|
};
|
|
722
725
|
fonts: {
|
|
723
726
|
desktop: {
|
|
@@ -1072,6 +1075,7 @@ export declare const themes: {
|
|
|
1072
1075
|
error: string;
|
|
1073
1076
|
medium: string;
|
|
1074
1077
|
good: string;
|
|
1078
|
+
navigation: string;
|
|
1075
1079
|
};
|
|
1076
1080
|
fonts: {
|
|
1077
1081
|
desktop: {
|
|
@@ -1425,6 +1429,7 @@ export declare const themes: {
|
|
|
1425
1429
|
error: string;
|
|
1426
1430
|
medium: string;
|
|
1427
1431
|
good: string;
|
|
1432
|
+
navigation: string;
|
|
1428
1433
|
};
|
|
1429
1434
|
fonts: {
|
|
1430
1435
|
desktop: {
|
|
@@ -1778,6 +1783,7 @@ export declare const themes: {
|
|
|
1778
1783
|
error: string;
|
|
1779
1784
|
medium: string;
|
|
1780
1785
|
good: string;
|
|
1786
|
+
navigation: string;
|
|
1781
1787
|
};
|
|
1782
1788
|
fonts: {
|
|
1783
1789
|
desktop: {
|
|
@@ -23,6 +23,10 @@ export interface IAccountProps {
|
|
|
23
23
|
* The linknk of the title
|
|
24
24
|
*/
|
|
25
25
|
titleLink?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The primary color
|
|
28
|
+
*/
|
|
29
|
+
colorPrimary?: string;
|
|
26
30
|
}
|
|
27
31
|
export interface IBasketProps {
|
|
28
32
|
/**
|
|
@@ -41,6 +45,10 @@ export interface IBasketProps {
|
|
|
41
45
|
* Function to be called when is clicked
|
|
42
46
|
*/
|
|
43
47
|
onClick?: (e: string) => void;
|
|
48
|
+
/**
|
|
49
|
+
* The primary color
|
|
50
|
+
*/
|
|
51
|
+
colorPrimary?: string;
|
|
44
52
|
}
|
|
45
53
|
export interface ISearchProps {
|
|
46
54
|
/**
|
|
@@ -51,6 +59,10 @@ export interface ISearchProps {
|
|
|
51
59
|
* Function to be called when is clicked
|
|
52
60
|
*/
|
|
53
61
|
onClick?: (e: MouseEvent) => void;
|
|
62
|
+
/**
|
|
63
|
+
* The primary color
|
|
64
|
+
*/
|
|
65
|
+
colorPrimary?: string;
|
|
54
66
|
}
|
|
55
67
|
export interface INavTopProps {
|
|
56
68
|
children?: ReactNode;
|
|
@@ -58,6 +70,10 @@ export interface INavTopProps {
|
|
|
58
70
|
* The text of Account component
|
|
59
71
|
*/
|
|
60
72
|
accountText?: string;
|
|
73
|
+
/**
|
|
74
|
+
* The link of Account component
|
|
75
|
+
*/
|
|
76
|
+
accountLink?: string;
|
|
61
77
|
/**
|
|
62
78
|
* The icon of Account component
|
|
63
79
|
*/
|
|
@@ -86,6 +102,10 @@ export interface INavTopProps {
|
|
|
86
102
|
* Function to be called when is clicked
|
|
87
103
|
*/
|
|
88
104
|
onLink?: (e: string) => void;
|
|
105
|
+
/**
|
|
106
|
+
* The primary color
|
|
107
|
+
*/
|
|
108
|
+
colorPrimary?: string;
|
|
89
109
|
}
|
|
90
110
|
export interface iMenuOptionProps {
|
|
91
111
|
/**
|
|
@@ -108,6 +128,10 @@ export interface IMenuProps {
|
|
|
108
128
|
items: iMenuOptionProps[];
|
|
109
129
|
}
|
|
110
130
|
export interface INavigationProps {
|
|
131
|
+
/**
|
|
132
|
+
* Link url to Logo component
|
|
133
|
+
*/
|
|
134
|
+
logoLink?: string;
|
|
111
135
|
/**
|
|
112
136
|
* An Object to set NavTop data component
|
|
113
137
|
*/
|
package/dist/types/types.d.ts
CHANGED
|
@@ -50,9 +50,9 @@ export interface ILogoProps {
|
|
|
50
50
|
*/
|
|
51
51
|
dataRoh?: string;
|
|
52
52
|
/**
|
|
53
|
-
* The
|
|
53
|
+
* The link of the logo
|
|
54
54
|
*/
|
|
55
|
-
|
|
55
|
+
urlLink?: string;
|
|
56
56
|
}
|
|
57
57
|
export interface IOptionItem {
|
|
58
58
|
/**
|
|
@@ -98,6 +98,10 @@ export interface ITabProps {
|
|
|
98
98
|
* Function to be called when click
|
|
99
99
|
*/
|
|
100
100
|
onClick?: (e: string) => void;
|
|
101
|
+
/**
|
|
102
|
+
* The primary color
|
|
103
|
+
*/
|
|
104
|
+
colorPrimary?: string;
|
|
101
105
|
}
|
|
102
106
|
export interface ITabsProps {
|
|
103
107
|
/**
|
|
@@ -116,6 +120,10 @@ export interface ITabsProps {
|
|
|
116
120
|
* Function to be called when click
|
|
117
121
|
*/
|
|
118
122
|
onChange?: (e: string) => void;
|
|
123
|
+
/**
|
|
124
|
+
* The primary color
|
|
125
|
+
*/
|
|
126
|
+
colorPrimary?: string;
|
|
119
127
|
}
|
|
120
128
|
export interface IDropdownProps {
|
|
121
129
|
/**
|
|
@@ -154,6 +162,10 @@ export interface IDropdownProps {
|
|
|
154
162
|
* Function to be called when click
|
|
155
163
|
*/
|
|
156
164
|
onChange?: (e: string) => void;
|
|
165
|
+
/**
|
|
166
|
+
* The primary color
|
|
167
|
+
*/
|
|
168
|
+
colorPrimary?: string;
|
|
157
169
|
}
|
|
158
170
|
export interface IIndividualListing {
|
|
159
171
|
role: string;
|
|
@@ -188,6 +200,16 @@ export interface IGridItemProps extends StyledProps<any> {
|
|
|
188
200
|
*/
|
|
189
201
|
columnSpanDevice?: number;
|
|
190
202
|
}
|
|
203
|
+
export interface ISponsorLogoProps {
|
|
204
|
+
/**
|
|
205
|
+
* Color for the logo
|
|
206
|
+
*/
|
|
207
|
+
colorLogo?: string;
|
|
208
|
+
/**
|
|
209
|
+
* Color for the background of the logo
|
|
210
|
+
*/
|
|
211
|
+
colorBackground?: string;
|
|
212
|
+
}
|
|
191
213
|
export interface ISponsorshipProps {
|
|
192
214
|
/**
|
|
193
215
|
* Source URL for Sponsorship IFRAME.
|
package/package.json
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@royaloperahouse/chord",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"author": "Royal Opera House",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"typings": "dist/index.d.ts",
|
|
8
8
|
"files": [
|
|
9
|
-
"dist"
|
|
10
|
-
"src"
|
|
9
|
+
"dist"
|
|
11
10
|
],
|
|
12
11
|
"engines": {
|
|
13
12
|
"node": ">=10"
|
|
@@ -23,7 +22,9 @@
|
|
|
23
22
|
"analyze": "size-limit --why",
|
|
24
23
|
"storybook": "start-storybook -s ./external -p 6006",
|
|
25
24
|
"build-storybook": "rm -rf ./storybook-static; build-storybook -s ./src -o ./storybook-static; cp -r ./external/ ./storybook-static/",
|
|
26
|
-
"test-storybook": "tsdx test --json --passWithNoTests --outputFile=./test/jest-test-results.json"
|
|
25
|
+
"test-storybook": "tsdx test --json --passWithNoTests --outputFile=./test/jest-test-results.json",
|
|
26
|
+
"publish-release": "make prepare-release-candidate; make publish-release",
|
|
27
|
+
"publish-snapshot": "make prepare-release-candidate; make publish-npm-snapshot"
|
|
27
28
|
},
|
|
28
29
|
"peerDependencies": {
|
|
29
30
|
"react": ">=16"
|
|
@@ -54,9 +55,12 @@
|
|
|
54
55
|
"setupFilesAfterEnv": [
|
|
55
56
|
"<rootDir>/src/jest.setup.ts"
|
|
56
57
|
],
|
|
57
|
-
|
|
58
|
+
"moduleNameMapper": {
|
|
58
59
|
"^react$": "<rootDir>/node_modules/react"
|
|
59
|
-
}
|
|
60
|
+
},
|
|
61
|
+
"modulePathIgnorePatterns": [
|
|
62
|
+
"<rootDir>/storybook-static"
|
|
63
|
+
]
|
|
60
64
|
},
|
|
61
65
|
"devDependencies": {
|
|
62
66
|
"@babel/core": "^7.16.0",
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
|
-
export declare const AspectRatioDefinitions: {
|
|
3
|
-
'4:3': {
|
|
4
|
-
height: string;
|
|
5
|
-
width: string;
|
|
6
|
-
};
|
|
7
|
-
'3:4': {
|
|
8
|
-
height: string;
|
|
9
|
-
width: string;
|
|
10
|
-
};
|
|
11
|
-
'16:9': {
|
|
12
|
-
height: string;
|
|
13
|
-
width: string;
|
|
14
|
-
};
|
|
15
|
-
'1:1': {
|
|
16
|
-
height: string;
|
|
17
|
-
width: string;
|
|
18
|
-
};
|
|
19
|
-
};
|
|
20
|
-
interface AspectRatioCSSSpecs {
|
|
21
|
-
height: string;
|
|
22
|
-
width: string;
|
|
23
|
-
}
|
|
24
|
-
export declare type AspectRatioType = keyof typeof AspectRatioDefinitions;
|
|
25
|
-
export interface IImageProps {
|
|
26
|
-
desktopSrc: string;
|
|
27
|
-
mobileSrc?: string;
|
|
28
|
-
aspectRatio: AspectRatioType;
|
|
29
|
-
altText?: string;
|
|
30
|
-
errorImageSrc?: string;
|
|
31
|
-
}
|
|
32
|
-
export interface IStyledImageProps {
|
|
33
|
-
srcSet: string;
|
|
34
|
-
sizes: string;
|
|
35
|
-
aspectRatio: AspectRatioCSSSpecs;
|
|
36
|
-
}
|
|
37
|
-
declare const Image: FunctionComponent<IImageProps>;
|
|
38
|
-
export default Image;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Story, Meta } from '@storybook/react';
|
|
3
|
-
import GlobalStyles from '../../../styles/GlobalStyles';
|
|
4
|
-
import ThemeProvider from '../../../styles/ThemeProvider';
|
|
5
|
-
import Account from './index';
|
|
6
|
-
import { ThemeType } from '../../../types/types';
|
|
7
|
-
import { IAccountProps } from '../../../types/navigation';
|
|
8
|
-
|
|
9
|
-
export default {
|
|
10
|
-
title: 'Components/Navigation/Account',
|
|
11
|
-
component: Account,
|
|
12
|
-
argTypes: {
|
|
13
|
-
ref: {
|
|
14
|
-
table: { disable: true },
|
|
15
|
-
},
|
|
16
|
-
theme: {
|
|
17
|
-
table: { disable: true },
|
|
18
|
-
},
|
|
19
|
-
as: {
|
|
20
|
-
table: { disable: true },
|
|
21
|
-
},
|
|
22
|
-
forwardedAs: {
|
|
23
|
-
table: { disable: true },
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
parameters: {
|
|
27
|
-
docs: {
|
|
28
|
-
description: {
|
|
29
|
-
component: 'Account button',
|
|
30
|
-
withSource: 'none',
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
design: {
|
|
34
|
-
type: 'figma',
|
|
35
|
-
url: 'https://www.figma.com/file/PtlqtJAjr87djTyD0x40m9/Royal-Opera-House-UI-Guide-and-Spec?node-id=166%3A0',
|
|
36
|
-
},
|
|
37
|
-
jest: ['Account'],
|
|
38
|
-
},
|
|
39
|
-
decorators: [
|
|
40
|
-
(Story) => (
|
|
41
|
-
<ThemeProvider theme={ThemeType.Core}>
|
|
42
|
-
<GlobalStyles />
|
|
43
|
-
{Story()}
|
|
44
|
-
</ThemeProvider>
|
|
45
|
-
),
|
|
46
|
-
],
|
|
47
|
-
} as Meta;
|
|
48
|
-
|
|
49
|
-
const Template: Story<IAccountProps> = (args) => <Account {...args} />;
|
|
50
|
-
|
|
51
|
-
export const SignedOut = Template.bind({});
|
|
52
|
-
|
|
53
|
-
SignedOut.args = {
|
|
54
|
-
title: 'SIGN IN',
|
|
55
|
-
onClick: () => {},
|
|
56
|
-
iconName: 'User',
|
|
57
|
-
options: [
|
|
58
|
-
{
|
|
59
|
-
option: 'OPTION 1',
|
|
60
|
-
optionLink: 'link 1',
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
option: 'OPTION 2',
|
|
64
|
-
optionLink: 'link 2',
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
option: 'OPTION 3',
|
|
68
|
-
optionLink: 'link 3',
|
|
69
|
-
},
|
|
70
|
-
],
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
export const SignedIn = Template.bind({});
|
|
74
|
-
|
|
75
|
-
SignedIn.args = {
|
|
76
|
-
title: 'USER NAME',
|
|
77
|
-
onClick: () => {},
|
|
78
|
-
iconName: 'UserSignedIn',
|
|
79
|
-
options: [
|
|
80
|
-
{
|
|
81
|
-
option: 'OPTION 1',
|
|
82
|
-
optionLink: 'link 1',
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
option: 'OPTION 2',
|
|
86
|
-
optionLink: 'link 2',
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
option: 'OPTION 3',
|
|
90
|
-
optionLink: 'link 3',
|
|
91
|
-
},
|
|
92
|
-
],
|
|
93
|
-
};
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { render, fireEvent } from '@testing-library/react';
|
|
3
|
-
import Account from './Account';
|
|
4
|
-
import { IOptionItem } from '../../../types/types';
|
|
5
|
-
|
|
6
|
-
describe('Account component', () => {
|
|
7
|
-
const onClickHandler = jest.fn();
|
|
8
|
-
|
|
9
|
-
it('renders text with specific text', () => {
|
|
10
|
-
const title = 'SIGN IN';
|
|
11
|
-
const options: IOptionItem[] = [];
|
|
12
|
-
const onClick = onClickHandler;
|
|
13
|
-
const iconName = 'User';
|
|
14
|
-
|
|
15
|
-
const { getByText } = render(
|
|
16
|
-
<Account title={title} options={options} onClick={onClick} iconName={iconName}></Account>
|
|
17
|
-
);
|
|
18
|
-
|
|
19
|
-
expect(getByText(title)).toBeInTheDocument();
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
it('calls onClick callback when text is clicked', () => {
|
|
23
|
-
const title = 'SIGN IN';
|
|
24
|
-
const options: IOptionItem[] = [];
|
|
25
|
-
const onClick = onClickHandler;
|
|
26
|
-
const iconName = 'User';
|
|
27
|
-
|
|
28
|
-
const { getByText } = render(
|
|
29
|
-
<Account title={title} options={options} onClick={onClick} iconName={iconName}></Account>
|
|
30
|
-
);
|
|
31
|
-
fireEvent.click(getByText('SIGN IN'));
|
|
32
|
-
|
|
33
|
-
expect(onClickHandler).toBeCalled();
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it('renders options when click text', () => {
|
|
37
|
-
const title = 'SIGN IN';
|
|
38
|
-
const options: IOptionItem[] = [
|
|
39
|
-
{
|
|
40
|
-
option: 'foo',
|
|
41
|
-
optionLink: 'bar',
|
|
42
|
-
},
|
|
43
|
-
];
|
|
44
|
-
const onClick = onClickHandler;
|
|
45
|
-
const iconName = 'User';
|
|
46
|
-
|
|
47
|
-
const { getByText } = render(
|
|
48
|
-
<Account title={title} options={options} onClick={onClick} iconName={iconName}></Account>
|
|
49
|
-
);
|
|
50
|
-
fireEvent.click(getByText('SIGN IN'));
|
|
51
|
-
|
|
52
|
-
expect(getByText('foo')).toBeInTheDocument();
|
|
53
|
-
});
|
|
54
|
-
});
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { IAccountProps } from '../../../types/navigation';
|
|
3
|
-
import Dropdown from '../Dropdown';
|
|
4
|
-
|
|
5
|
-
const Account = ({ title, options = [], onClick, iconName, titleLink }: IAccountProps) => {
|
|
6
|
-
const onChangeHandler = (link: string) => {
|
|
7
|
-
if (onClick) {
|
|
8
|
-
onClick(link);
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
return (
|
|
13
|
-
<Dropdown
|
|
14
|
-
titleLink={titleLink}
|
|
15
|
-
title={title}
|
|
16
|
-
options={options}
|
|
17
|
-
onChange={onChangeHandler}
|
|
18
|
-
iconName={iconName}
|
|
19
|
-
withOptionsInMobile={false}
|
|
20
|
-
withIcon={'left'}
|
|
21
|
-
/>
|
|
22
|
-
);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export default Account;
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { Story, Meta } from '@storybook/react';
|
|
3
|
-
import GlobalStyles from '../../../styles/GlobalStyles';
|
|
4
|
-
import ThemeProvider from '../../../styles/ThemeProvider';
|
|
5
|
-
import Basket from './index';
|
|
6
|
-
import { ThemeType } from '../../../types/types';
|
|
7
|
-
import { IBasketProps } from '../../../types/navigation';
|
|
8
|
-
|
|
9
|
-
export default {
|
|
10
|
-
title: 'Components/Navigation/Basket',
|
|
11
|
-
component: Basket,
|
|
12
|
-
argTypes: {
|
|
13
|
-
ref: {
|
|
14
|
-
table: { disable: true },
|
|
15
|
-
},
|
|
16
|
-
theme: {
|
|
17
|
-
table: { disable: true },
|
|
18
|
-
},
|
|
19
|
-
as: {
|
|
20
|
-
table: { disable: true },
|
|
21
|
-
},
|
|
22
|
-
forwardedAs: {
|
|
23
|
-
table: { disable: true },
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
parameters: {
|
|
27
|
-
docs: {
|
|
28
|
-
description: {
|
|
29
|
-
component: 'Basket button',
|
|
30
|
-
withSource: 'none',
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
design: {
|
|
34
|
-
type: 'figma',
|
|
35
|
-
url: 'https://www.figma.com/file/PtlqtJAjr87djTyD0x40m9/Royal-Opera-House-UI-Guide-and-Spec?node-id=166%3A0',
|
|
36
|
-
},
|
|
37
|
-
jest: ['Basket'],
|
|
38
|
-
},
|
|
39
|
-
decorators: [
|
|
40
|
-
(Story) => (
|
|
41
|
-
<ThemeProvider theme={ThemeType.Core}>
|
|
42
|
-
<GlobalStyles />
|
|
43
|
-
{Story()}
|
|
44
|
-
</ThemeProvider>
|
|
45
|
-
),
|
|
46
|
-
],
|
|
47
|
-
} as Meta;
|
|
48
|
-
|
|
49
|
-
const Template: Story<IBasketProps> = (args) => <Basket {...args} />;
|
|
50
|
-
|
|
51
|
-
export const BasketEmpty = Template.bind({});
|
|
52
|
-
|
|
53
|
-
BasketEmpty.args = {
|
|
54
|
-
text: '',
|
|
55
|
-
selected: false,
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export const BasketEmptySelected = Template.bind({});
|
|
59
|
-
|
|
60
|
-
BasketEmptySelected.args = {
|
|
61
|
-
text: '',
|
|
62
|
-
selected: true,
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
export const BasketFull = Template.bind({});
|
|
66
|
-
|
|
67
|
-
BasketFull.args = {
|
|
68
|
-
text: '29 MINS',
|
|
69
|
-
selected: false,
|
|
70
|
-
numItems: 5,
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
export const BasketFullSelected = Template.bind({});
|
|
74
|
-
|
|
75
|
-
BasketFullSelected.args = {
|
|
76
|
-
text: '29 MINS',
|
|
77
|
-
selected: true,
|
|
78
|
-
numItems: 25,
|
|
79
|
-
};
|