@royaloperahouse/chord 2.6.0 → 2.6.1-b-development

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.
Files changed (37) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +252 -40
  3. package/dist/chord.cjs.development.js +1238 -836
  4. package/dist/chord.cjs.development.js.map +1 -1
  5. package/dist/chord.cjs.production.min.js +1 -1
  6. package/dist/chord.cjs.production.min.js.map +1 -1
  7. package/dist/chord.esm.js +1238 -836
  8. package/dist/chord.esm.js.map +1 -1
  9. package/dist/components/atoms/AriaAlternativeDescription/AriaAlternative.d.ts +5 -0
  10. package/dist/components/atoms/AriaAlternativeDescription/AriaAlternative.style.d.ts +3 -0
  11. package/dist/components/atoms/AriaAlternativeDescription/index.d.ts +2 -0
  12. package/dist/components/atoms/Grid/GridItemLegacy.d.ts +8 -0
  13. package/dist/components/atoms/Grid/index.d.ts +2 -1
  14. package/dist/components/atoms/index.d.ts +2 -2
  15. package/dist/components/index.d.ts +3 -3
  16. package/dist/components/molecules/PageHeading/index.d.ts +1 -1
  17. package/dist/components/molecules/PeopleListing/CreditListing/CreditListing.d.ts +4 -3
  18. package/dist/components/molecules/PeopleListing/CreditListing/CreditListing.style.d.ts +1 -0
  19. package/dist/components/molecules/SignUpForm/SignUpForm.d.ts +4 -0
  20. package/dist/components/molecules/SignUpForm/SignUpForm.style.d.ts +13 -0
  21. package/dist/components/molecules/SignUpForm/index.d.ts +2 -0
  22. package/dist/components/molecules/Table/Table.style.d.ts +1 -1
  23. package/dist/components/molecules/index.d.ts +3 -2
  24. package/dist/components/organisms/index.d.ts +1 -2
  25. package/dist/helpers/arrays.d.ts +1 -1
  26. package/dist/helpers/formatStrings.d.ts +1 -0
  27. package/dist/helpers/forms.d.ts +15 -0
  28. package/dist/helpers/theme.d.ts +2 -0
  29. package/dist/index.d.ts +2 -2
  30. package/dist/types/ariaAlternative.d.ts +34 -0
  31. package/dist/types/creditListing.d.ts +3 -0
  32. package/dist/types/formTypes.d.ts +12 -9
  33. package/dist/types/signUpForm.d.ts +58 -0
  34. package/package.json +8 -2
  35. package/README.GIT +0 -277
  36. package/dist/components/organisms/LiveChat/LiveChat.d.ts +0 -3
  37. package/dist/components/organisms/LiveChat/index.d.ts +0 -2
@@ -0,0 +1,5 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { IAriaAlternativeProps, IAriaHideProps } from '../../../types/ariaAlternative';
3
+ /** A temporary screen-reader accessibility workaround for components with issues that can't be resolved quickly. Allows us to use aria-hidden on components with stuctural HTML markup issues until they can be rebuilt to be screen-reader compatible, or on components whose data does not translate well to screen-reader users. **/
4
+ export declare const AriaHide: FunctionComponent<IAriaHideProps>;
5
+ export declare const AriaAlternative: FunctionComponent<IAriaAlternativeProps>;
@@ -0,0 +1,3 @@
1
+ import { IAriaHideProps } from '../../../types/ariaAlternative';
2
+ export declare const AriaAlternativeDescription: import("styled-components").StyledComponent<"a", any, {}, never>;
3
+ export declare const AriaHideOnDevice: import("styled-components").StyledComponent<"div", any, IAriaHideProps, never>;
@@ -0,0 +1,2 @@
1
+ import { AriaAlternative, AriaHide } from './AriaAlternative';
2
+ export { AriaAlternative, AriaHide };
@@ -0,0 +1,8 @@
1
+ import { IGridItemProps } from '../../../types/types';
2
+ /**
3
+ * # IMPORTANT
4
+ * Please use the `<GridItem />` component instead of this component if possible.
5
+ * This component was introduced due to incompatibilities between versions of the Chord library.
6
+ */
7
+ declare const GridItemLegacy: import("styled-components").StyledComponent<"div", any, IGridItemProps, never>;
8
+ export default GridItemLegacy;
@@ -1,3 +1,4 @@
1
1
  import Grid from './Grid';
2
2
  import GridItem from './GridItem';
3
- export { Grid, GridItem };
3
+ import GridItemLegacy from './GridItemLegacy';
4
+ export { Grid, GridItem, GridItemLegacy };
@@ -1,7 +1,7 @@
1
1
  import { CinemaBadge, StreamBadge } from './Badge';
2
2
  import { PrimaryButton, SecondaryButton, TertiaryButton } from './Buttons';
3
3
  import ControlledDropdown from './ControlledDropdown';
4
- import { Grid, GridItem } from './Grid';
4
+ import { Grid, GridItem, GridItemLegacy } from './Grid';
5
5
  import { Icon } from './Icons';
6
6
  import ImageAspectRatioWrapper from './ImageAspectRatioWrapper';
7
7
  import Progress from './Progress';
@@ -26,4 +26,4 @@ import { AltHeader, BodyText, Header, Overline, Subtitle } from './Typography';
26
26
  import VideoControls from './VideoControls';
27
27
  import { Stepper } from './Stepper';
28
28
  import ToggleButton from './ToggleButton/ToggleButton';
29
- export { AltHeader, BodyText, CinemaBadge, ControlledDropdown, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, Overline, Progress, PrimaryButton, Radio, Radio2, RotatorButtons, SecondaryButton, SecondaryLogo, SectionSplitter, SponsorLogo, Sponsorship, Stepper, StreamBadge, Subtitle, Tab, TabLink, TertiaryButton, TextArea, TextField, TextFieldLegacy, TextLink, TextLogo, Tickbox, Tickbox2, Timer, TypeTags, VideoControls, ToggleButton, };
29
+ export { AltHeader, BodyText, CinemaBadge, ControlledDropdown, Grid, GridItem, GridItemLegacy, Header, Icon, ImageAspectRatioWrapper, Overline, Progress, PrimaryButton, Radio, Radio2, RotatorButtons, SecondaryButton, SecondaryLogo, SectionSplitter, SponsorLogo, Sponsorship, Stepper, StreamBadge, Subtitle, Tab, TabLink, TertiaryButton, TextArea, TextField, TextFieldLegacy, TextLink, TextLogo, Tickbox, Tickbox2, Timer, TypeTags, VideoControls, ToggleButton, };
@@ -1,6 +1,6 @@
1
1
  import { AltHeader, BodyText, CinemaBadge, ControlledDropdown, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, Overline, PrimaryButton, Progress, Radio, Radio2, RotatorButtons, SecondaryButton, SecondaryLogo, TertiaryButton, SectionSplitter, Sponsorship, Stepper, StreamBadge, Subtitle, Tab, TabLink, TextLogo, TextArea, TextField, TextFieldLegacy, TextLink, Tickbox, Tickbox2, Timer, TypeTags, VideoControls, ToggleButton } from './atoms';
2
- import { AnchorTabBar, Footer, LiveChat, Navigation, StickyBar, TitleWithCTA, UpsellSection, FilterToggles } from './organisms';
3
- import { Accordion, Accordions, AnnouncementBanner, AuxiliaryNav, Card, Cards, ContactCard, ContentSummary, CreditListing, Editorial, ImageWithCaption, Information, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, PasswordStrength, Pagination, PeopleListing, PromoWithTags, PromoWithTitle, RadioGroup, RadioGroup2, ReadMore, StatusBanner, SearchBar, SectionTitle, Select, Select2, Select2Async, Table, Tabs, TextOnly, UpsellCard, Quote, VideoWithControls } from './molecules';
2
+ import { AnchorTabBar, Footer, Navigation, StickyBar, TitleWithCTA, UpsellSection, FilterToggles } from './organisms';
3
+ import { Accordion, Accordions, AnnouncementBanner, AuxiliaryNav, Card, Cards, ContactCard, ContentSummary, CreditListing, Editorial, ImageWithCaption, Information, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, PasswordStrength, Pagination, PeopleListing, PromoWithTags, PromoWithTitle, RadioGroup, RadioGroup2, ReadMore, StatusBanner, SearchBar, SectionTitle, Select, Select2, Select2Async, Table, Tabs, TextOnly, UpsellCard, Quote, VideoWithControls, SignUpForm } from './molecules';
4
4
  import ThemeProvider from '../styles/ThemeProvider';
5
5
  import GlobalStyles from '../styles/GlobalStyles';
6
- export { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryNav, BodyText, Card, Cards, ContactCard, ContentSummary, CinemaBadge, ControlledDropdown, CreditListing, Editorial, Footer, GlobalStyles, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, ImageWithCaption, Information, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, SecondaryButton, SecondaryLogo, StatusBanner, SearchBar, SectionTitle, Select, Select2, Select2Async, Sponsorship, Stepper, StickyBar, StreamBadge, Subtitle, TertiaryButton, TextOnly, ThemeProvider, TitleWithCTA, SectionSplitter, Tab, TabLink, Table, Tabs, TextArea, TextField, TextFieldLegacy, TextLink, TextLogo, Tickbox, Tickbox2, Timer, TypeTags, UpsellCard, UpsellSection, Quote, LiveChat, VideoControls, VideoWithControls, FilterToggles, ToggleButton, };
6
+ export { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryNav, BodyText, Card, Cards, ContactCard, ContentSummary, CinemaBadge, ControlledDropdown, CreditListing, Editorial, Footer, GlobalStyles, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, ImageWithCaption, Information, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, SecondaryButton, SecondaryLogo, StatusBanner, SearchBar, SectionTitle, Select, Select2, Select2Async, Sponsorship, Stepper, StickyBar, StreamBadge, Subtitle, TertiaryButton, TextOnly, ThemeProvider, TitleWithCTA, SectionSplitter, Tab, TabLink, Table, Tabs, TextArea, TextField, TextFieldLegacy, TextLink, TextLogo, Tickbox, Tickbox2, Timer, TypeTags, UpsellCard, UpsellSection, Quote, VideoControls, VideoWithControls, FilterToggles, ToggleButton, SignUpForm, };
@@ -4,4 +4,4 @@ import PageHeadingImpact from './Impact';
4
4
  import PageHeadingPanel from './Panel';
5
5
  import PageHeadingStream from './Stream';
6
6
  import PageHeadingCompact from './Compact/Compact';
7
- export { PageHeadingCinema, PageHeadingCore, PageHeadingImpact, PageHeadingStream, PageHeadingCompact, PageHeadingPanel, };
7
+ export { PageHeadingCinema, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, PageHeadingCompact, };
@@ -1,5 +1,6 @@
1
1
  import { ICreditListing } from '../../../../types';
2
- declare const CreditListing: ({ roles, columnCount }: ICreditListing & {
3
- columnCount?: number | undefined;
4
- }) => JSX.Element;
2
+ export declare const DEFAULT_COLUMN_COUNT = 4;
3
+ export declare const DEFAULT_LARGE_COLUMN_SPAN = 2;
4
+ export declare const DEFAULT_CHARACTER_THRESHOLD = 120;
5
+ declare const CreditListing: ({ roles, columnCount, expandLargeEntries, largeColumnSpan, characterThreshold, }: ICreditListing) => JSX.Element;
5
6
  export default CreditListing;
@@ -5,3 +5,4 @@ export declare const CreditListingWrapper: import("styled-components").StyledCom
5
5
  export declare const DescriptionWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
6
6
  export declare const RoleWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
7
7
  export declare const CreditWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
8
+ export declare const CreditBodyWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,4 @@
1
+ import { FunctionComponent } from 'react';
2
+ import { ISignUpFormProps } from '../../../types/signUpForm';
3
+ declare const SignUpForm: FunctionComponent<ISignUpFormProps>;
4
+ export default SignUpForm;
@@ -0,0 +1,13 @@
1
+ import { Colors } from '../../../types';
2
+ export declare const Wrapper: import("styled-components").StyledComponent<"div", any, {
3
+ theme: Colors;
4
+ }, never>;
5
+ export declare const SignUpFormWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ export declare const SignUpTitleWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
7
+ export declare const Error: import("styled-components").StyledComponent<"div", any, {}, never>;
8
+ export declare const Form: import("styled-components").StyledComponent<"form", any, {}, never>;
9
+ export declare const FormFooterWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
10
+ export declare const ServerError: import("styled-components").StyledComponent<"div", any, {}, never>;
11
+ export declare const CTALinkWrapper: import("styled-components").StyledComponent<"a", any, {}, never>;
12
+ export declare const ButtonWrapper: import("styled-components").StyledComponent<"button", any, {}, never>;
13
+ export declare const FieldsWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,2 @@
1
+ import SignUpForm from './SignUpForm';
2
+ export default SignUpForm;
@@ -16,4 +16,4 @@ export declare const PageNumber: import("styled-components").StyledComponent<"bu
16
16
  }, never>;
17
17
  export declare const Next: import("styled-components").StyledComponent<"span", any, {}, never>;
18
18
  export declare const ScrollButtons: import("styled-components").StyledComponent<"div", any, {}, never>;
19
- export declare const AriaDescription: import("styled-components").StyledComponent<"span", any, {}, never>;
19
+ export declare const AriaDescription: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -27,8 +27,9 @@ import ImageWithCaption from './ImageWithCaption';
27
27
  import Quote from './Quote';
28
28
  import MiniCard from './MiniCard';
29
29
  import ReadMore from './ReadMore';
30
- import AuxiliaryNav from './AuxiliaryNav';
31
30
  import PasswordStrength from './PasswordStrength';
31
+ import AuxiliaryNav from './AuxiliaryNav';
32
32
  import Table from './Table';
33
33
  import VideoWithControls from './VideoWithControls';
34
- export { Accordion, Accordions, AnnouncementBanner, AuxiliaryNav, Card, Cards, ContactCard, ContentSummary, CreditListing, Editorial, ImageWithCaption, Information, MiniCard, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, PasswordStrength, Pagination, PeopleListing, PromoWithTags, PromoWithTitle, RadioGroup, RadioGroup2, ReadMore, Quote, StatusBanner, SectionTitle, SearchBar, Select, Select2, Select2Async, Tabs, Table, TextOnly, UpsellCard, VideoWithControls, };
34
+ import SignUpForm from './SignUpForm';
35
+ export { Accordion, Accordions, AnnouncementBanner, AuxiliaryNav, Card, Cards, ContactCard, ContentSummary, CreditListing, Editorial, ImageWithCaption, Information, MiniCard, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, PasswordStrength, Pagination, PeopleListing, PromoWithTags, PromoWithTitle, RadioGroup, RadioGroup2, ReadMore, Quote, StatusBanner, SectionTitle, SearchBar, Select, Select2, Select2Async, Tabs, Table, TextOnly, UpsellCard, VideoWithControls, SignUpForm, };
@@ -3,8 +3,7 @@ import Footer from './Footer';
3
3
  import AnchorTabBar from './AnchorTabBar';
4
4
  import TitleWithCTA from './TitleWithCTA';
5
5
  import UpsellSection from './UpsellSection';
6
- import { LiveChat } from './LiveChat';
7
6
  import StickyBar from './StickyBar';
8
7
  import ModalWindow from './ModalWindow';
9
8
  import FilterToggles from './FilterToggles';
10
- export { AnchorTabBar, Footer, LiveChat, ModalWindow, Navigation, StickyBar, TitleWithCTA, UpsellSection, FilterToggles, };
9
+ export { AnchorTabBar, Footer, ModalWindow, Navigation, StickyBar, TitleWithCTA, UpsellSection, FilterToggles };
@@ -3,4 +3,4 @@ export declare const truncateArrayByPropLength: (array: {
3
3
  }[], prop: string, maxChars: number, elipsis?: boolean) => {
4
4
  [key: string]: string;
5
5
  }[];
6
- export declare const getConcatenatedPropLength: (array: any[], prop: string) => any;
6
+ export declare const getConcatenatedPropLength: (array: any[], prop: string) => number;
@@ -1,2 +1,3 @@
1
1
  export declare const setMaxCharLength: (value: string, maxLength: number) => string;
2
2
  export declare const formatPrice: (value: string | undefined) => string;
3
+ export declare const capitalizeFirstLetter: (string: string) => string;
@@ -0,0 +1,15 @@
1
+ export declare const regex: {
2
+ signInEmail: RegExp;
3
+ latinOnly: RegExp;
4
+ firstName: RegExp;
5
+ };
6
+ export declare const formValidationMessages: {
7
+ requiredFieldMessage: string;
8
+ firstName: {
9
+ invalid: string;
10
+ };
11
+ email: {
12
+ required: string;
13
+ invalid: string;
14
+ };
15
+ };
@@ -0,0 +1,2 @@
1
+ import { Colors, ThemeType } from '../types';
2
+ export declare const themeToColor: (theme: ThemeType) => Colors.Core | Colors.Stream | Colors.Cinema;
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryNav, BodyText, Card, Cards, CinemaBadge, ContactCard, ContentSummary, ControlledDropdown, CreditListing, Editorial, Footer, GlobalStyles, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, ImageWithCaption, Information, LiveChat, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, StatusBanner, SearchBar, SecondaryButton, SecondaryLogo, SectionSplitter, SectionTitle, Select, Select2, Select2Async, Sponsorship, StickyBar, Stepper, StreamBadge, Subtitle, TertiaryButton, TextOnly, ThemeProvider, TitleWithCTA, Tab, Table, TabLink, Tabs, TextArea, TextField, TextFieldLegacy, TextLink, Tickbox, Tickbox2, Timer, TypeTags, UpsellCard, UpsellSection, Quote, VideoControls, VideoWithControls, FilterToggles, ToggleButton } from './components';
1
+ import { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryNav, BodyText, Card, Cards, CinemaBadge, ContactCard, ContentSummary, ControlledDropdown, CreditListing, Editorial, Footer, GlobalStyles, Grid, GridItem, Header, Icon, ImageAspectRatioWrapper, ImageWithCaption, Information, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, StatusBanner, SearchBar, SecondaryButton, SecondaryLogo, SectionSplitter, SectionTitle, Select, Select2, Select2Async, Sponsorship, StickyBar, Stepper, StreamBadge, Subtitle, TertiaryButton, TextOnly, ThemeProvider, TitleWithCTA, Tab, Table, TabLink, Tabs, TextArea, TextField, TextFieldLegacy, TextLink, Tickbox, Tickbox2, Timer, TypeTags, UpsellCard, UpsellSection, Quote, VideoControls, VideoWithControls, FilterToggles, ToggleButton, SignUpForm } from './components';
2
2
  import { devices, breakpoints } from './styles/viewports';
3
3
  import zIndexes from './styles/zIndexes';
4
4
  import { AspectRatio, ButtonType, CarouselType, Colors, IconNameType, IntegratedTimerProps, ITimerProps, TickboxMode, ThemeType, EditorialLink, IInformationTitleProps, IInformationCTAProps, IInformationBackgroundColour } from './types';
5
5
  import { MiniCard } from './components/molecules';
6
6
  import { ModalWindow } from './components/organisms';
7
7
  import AuxiliaryButton from './components/atoms/Buttons/Auxiliary/AuxiliaryButton';
8
- export { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryButton, AuxiliaryNav, AspectRatio, BodyText, breakpoints, ButtonType, Card, Cards, CarouselType, CinemaBadge, Colors, ContactCard, ContentSummary, ControlledDropdown, CreditListing, devices, Editorial, EditorialLink, Footer, GlobalStyles, Grid, GridItem, Header, Icon, IconNameType, ImageAspectRatioWrapper, ImageWithCaption, Information, IInformationBackgroundColour, IInformationCTAProps, IInformationTitleProps, ITimerProps, IntegratedTimerProps, LiveChat, MiniCard, ModalWindow, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, StatusBanner, SearchBar, SecondaryButton, SecondaryLogo, SectionSplitter, SectionTitle, Select, Select2, Select2Async, Sponsorship, StickyBar, Stepper, StreamBadge, Subtitle, Tab, Table, TabLink, Tabs, TertiaryButton, TextArea, TextField, TextFieldLegacy, TextLink, TextOnly, ThemeProvider, ThemeType, TitleWithCTA, Tickbox, Tickbox2, TickboxMode, Timer, TypeTags, UpsellCard, UpsellSection, Quote, VideoControls, VideoWithControls, zIndexes, FilterToggles, ToggleButton, };
8
+ export { Accordion, Accordions, AnnouncementBanner, AltHeader, AnchorTabBar, AuxiliaryButton, AuxiliaryNav, AspectRatio, BodyText, breakpoints, ButtonType, Card, Cards, CarouselType, CinemaBadge, Colors, ContactCard, ContentSummary, ControlledDropdown, CreditListing, devices, Editorial, EditorialLink, Footer, GlobalStyles, Grid, GridItem, Header, Icon, IconNameType, ImageAspectRatioWrapper, ImageWithCaption, Information, IInformationBackgroundColour, IInformationCTAProps, IInformationTitleProps, ITimerProps, IntegratedTimerProps, MiniCard, ModalWindow, Navigation, Overline, PageHeadingCinema, PageHeadingCompact, PageHeadingCore, PageHeadingImpact, PageHeadingPanel, PageHeadingStream, Pagination, PasswordStrength, PeopleListing, PrimaryButton, Progress, PromoWithTags, PromoWithTitle, Radio, Radio2, RadioGroup, RadioGroup2, ReadMore, RotatorButtons, StatusBanner, SearchBar, SecondaryButton, SecondaryLogo, SectionSplitter, SectionTitle, Select, Select2, Select2Async, Sponsorship, StickyBar, Stepper, StreamBadge, Subtitle, Tab, Table, TabLink, Tabs, TertiaryButton, TextArea, TextField, TextFieldLegacy, TextLink, TextOnly, ThemeProvider, ThemeType, TitleWithCTA, Tickbox, Tickbox2, TickboxMode, Timer, TypeTags, UpsellCard, UpsellSection, Quote, VideoControls, VideoWithControls, zIndexes, FilterToggles, ToggleButton, SignUpForm, };
@@ -0,0 +1,34 @@
1
+ export interface IAriaAlternativeProps {
2
+ /**
3
+ * A temporary screen-reader accessibility workaround for components with issues that can't be resolved quickly.
4
+ * Allows us to use aria-hidden on components with stuctural HTML markup issues until they can be rebuilt to be screen-reader compatible.
5
+ */
6
+ /**
7
+ * Description of the content being communicated by this component.
8
+ */
9
+ description: string;
10
+ /**
11
+ * originalContent - parse in the data from the original component / response object.
12
+ */
13
+ originalContent: Array<{
14
+ key: string;
15
+ value: string;
16
+ }>;
17
+ /**
18
+ * speechValues - input contextual speech values here to build a sentence, e.g. "you have" , "tickets for" , etc.
19
+ */
20
+ speechValues: Array<{
21
+ key: string;
22
+ value: string;
23
+ }>;
24
+ /**
25
+ * Disable this component (for testing purposes).
26
+ */
27
+ disabled?: boolean;
28
+ }
29
+ export interface IAriaHideProps {
30
+ /**
31
+ * Inert - disables all focusable child elements, necessary if using aria-hidden
32
+ */
33
+ inert: boolean;
34
+ }
@@ -10,4 +10,7 @@ export interface ICreditListing {
10
10
  dataROH: string;
11
11
  }[];
12
12
  columnCount?: number;
13
+ expandLargeEntries?: boolean;
14
+ largeColumnSpan?: number;
15
+ characterThreshold?: number;
13
16
  }
@@ -265,17 +265,8 @@ export interface IStepperProps {
265
265
  step?: number;
266
266
  /** An error message to be shown below the stepper.
267
267
  *
268
- * Default: `undefined`
269
268
  */
270
269
  error?: string;
271
- /**
272
- * A style prop that allows us to change what colours to
273
- * use for light or dark mode (e.g. text color, border color, etc...)
274
- * based on the background color.
275
- *
276
- * Defaults to `false`.
277
- */
278
- darkMode?: boolean;
279
270
  /**
280
271
  * Set disapled state
281
272
  */
@@ -284,6 +275,18 @@ export interface IStepperProps {
284
275
  * Minimum value allowed in the stepper
285
276
  */
286
277
  min?: number;
278
+ /**
279
+ * A style prop that allows us to change what colours to
280
+ * use for light or dark mode (e.g. text color, border color, etc...)
281
+ * based on the background color.
282
+ *
283
+ * Defaults to `false`.
284
+ * Specify whether or not the containing element has a dark background.
285
+ * This property affects the border colours for focused and error states.
286
+ *
287
+ * Default: `false`
288
+ */
289
+ darkMode?: boolean;
287
290
  /**
288
291
  * Maximum value allowed in the stepper
289
292
  */
@@ -0,0 +1,58 @@
1
+ import { ThemeType } from './types';
2
+ export interface ISignUpFormContextProps {
3
+ /**
4
+ * Form title to display
5
+ */
6
+ title: string;
7
+ /**
8
+ * Form text to display
9
+ */
10
+ message: string;
11
+ }
12
+ export interface ISignUpFormCTAProps {
13
+ /**
14
+ * Text to display on the CTA
15
+ */
16
+ text: string;
17
+ /**
18
+ * Link for the CTA
19
+ */
20
+ link: string;
21
+ }
22
+ export declare type SignUpRequestBody = {
23
+ firstName?: string;
24
+ lastName?: string;
25
+ email?: string;
26
+ };
27
+ export interface ISignUpFormProps {
28
+ /**
29
+ * Form title and text of initial state
30
+ */
31
+ initialState: ISignUpFormContextProps;
32
+ /**
33
+ * Form title and text of submitted state
34
+ */
35
+ submittedState: ISignUpFormContextProps;
36
+ /**
37
+ * CTA to display Privacy Notice
38
+ */
39
+ ctaPrivacy: ISignUpFormCTAProps;
40
+ /**
41
+ * Theme to use for buttons. Choices are "Core" (red), "Stream" (blue), or "Cinema" (black)
42
+ */
43
+ theme: Exclude<ThemeType, ThemeType.Schools>;
44
+ /**
45
+ * Error message shown to users in case of a server error
46
+ */
47
+ errorMessage: string;
48
+ /**
49
+ * Is user logged in flag. Default false
50
+ */
51
+ isLoggedIn?: boolean;
52
+ /**
53
+ * Function to handle the sign up form data
54
+ */
55
+ submitHandler: (data: SignUpRequestBody) => Promise<{
56
+ success: boolean;
57
+ }>;
58
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@royaloperahouse/chord",
3
- "version": "2.6.0",
3
+ "version": "2.6.1-b-development",
4
4
  "author": "Royal Opera House",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -95,8 +95,10 @@
95
95
  "@types/react-test-renderer": "^17.0.1",
96
96
  "@types/styled-components": "^5.1.15",
97
97
  "@types/testing-library__jest-dom": "^5.14.1",
98
+ "babel-jest": "^24.9.0",
98
99
  "babel-loader": "^8.2.3",
99
100
  "chromatic": "^11.5.5",
101
+ "eslint-plugin-prettier": "^3.4.0",
100
102
  "husky": "^7.0.4",
101
103
  "react": "^17.0.2",
102
104
  "react-dom": "^17.0.2",
@@ -110,12 +112,16 @@
110
112
  "ts-jest": "^27.0.7",
111
113
  "tsdx": "^0.14.1",
112
114
  "tslib": "^2.3.1",
113
- "typescript": "^4.4.4"
115
+ "typescript": "4.4.4"
114
116
  },
115
117
  "dependencies": {
116
118
  "moment": "^2.29.4",
117
119
  "react-modal": "^3.16.1",
118
120
  "react-scrolllock": "^5.0.1",
119
121
  "react-select": "^5.8.0"
122
+ },
123
+ "resolutions": {
124
+ "**/@typescript-eslint/eslint-plugin": "^4.1.1",
125
+ "**/@typescript-eslint/parser": "^4.1.1"
120
126
  }
121
127
  }