@royaloperahouse/harmonic 0.1.0 → 0.1.1-b-test

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 (81) hide show
  1. package/CHANGELOG.md +607 -0
  2. package/README.md +8 -0
  3. package/dist/components/Typography/AltHeaders/AltHeaders.d.ts +4 -0
  4. package/dist/components/Typography/TextLink/TextLink.d.ts +5 -0
  5. package/dist/components/Typography/Typography.d.ts +11 -0
  6. package/dist/components/Typography/index.d.ts +3 -0
  7. package/dist/components/atoms/Account/Account.d.ts +2 -1
  8. package/dist/components/atoms/Buttons/Auxiliary/AuxiliaryButton.style.d.ts +0 -1
  9. package/dist/components/atoms/Buttons/Primary/PrimaryButtonWrapper.style.d.ts +0 -1
  10. package/dist/components/atoms/Buttons/Secondary/SecondaryButtonWrapper.style.d.ts +0 -1
  11. package/dist/components/atoms/Dropdown/Dropdown.d.ts +2 -1
  12. package/dist/components/atoms/Icons/StorybookSupport/Iconography.d.ts +2 -1
  13. package/dist/components/atoms/Icons/SvgIcons/index.d.ts +0 -1
  14. package/dist/components/atoms/Logo/Logo.d.ts +2 -1
  15. package/dist/components/atoms/Radio/Radio.d.ts +2 -1
  16. package/dist/components/atoms/Radio2/Radio2.d.ts +0 -19
  17. package/dist/components/atoms/RotatorButtons/RotatorButtons.d.ts +2 -1
  18. package/dist/components/atoms/Search/Search.d.ts +2 -1
  19. package/dist/components/atoms/SectionSplitter/SectionSplitter.d.ts +2 -1
  20. package/dist/components/atoms/Stepper/Stepper.d.ts +2 -2
  21. package/dist/components/atoms/Tab/Tab.d.ts +2 -1
  22. package/dist/components/atoms/TextArea/TextArea.d.ts +5 -4
  23. package/dist/components/atoms/TextField/TextField.d.ts +0 -38
  24. package/dist/components/atoms/TextField/TextFieldLegacy.d.ts +3 -2
  25. package/dist/components/atoms/Tickbox2/Tickbox2.d.ts +0 -19
  26. package/dist/components/atoms/TypeTags/TypeTags.d.ts +2 -1
  27. package/dist/components/atoms/Typography/Typography.d.ts +8 -6
  28. package/dist/components/atoms/VideoControls/VideoControls.style.d.ts +2 -2
  29. package/dist/components/index.d.ts +3 -0
  30. package/dist/components/molecules/Basket/Basket.d.ts +2 -1
  31. package/dist/components/molecules/Cards/Cards.d.ts +2 -1
  32. package/dist/components/molecules/ContentSummary/ContentSummary.d.ts +2 -1
  33. package/dist/components/molecules/ContentSummary/ContentSummary.style.d.ts +1 -1
  34. package/dist/components/molecules/Information/InfoCta.d.ts +2 -2
  35. package/dist/components/molecules/Information/Information.style.d.ts +6 -3
  36. package/dist/components/molecules/NavTop/NavTop.d.ts +2 -1
  37. package/dist/components/molecules/PageHeading/Compact/Compact.style.d.ts +3 -4
  38. package/dist/components/molecules/PeopleListing/CreditListing/CreditListing.d.ts +5 -1
  39. package/dist/components/molecules/PeopleListing/CreditListing/CreditListing.style.d.ts +3 -1
  40. package/dist/components/molecules/PeopleListing/PeopleListing.d.ts +2 -1
  41. package/dist/components/molecules/PeopleListing/PeopleListing.style.d.ts +1 -0
  42. package/dist/components/molecules/PromoWithTags/PromoWithTags.style.d.ts +2 -3
  43. package/dist/components/molecules/RadioGroup/RadioGroup.d.ts +2 -1
  44. package/dist/components/molecules/SearchBar/SearchBar.d.ts +2 -1
  45. package/dist/components/molecules/SectionTitle/SectionTitle.d.ts +2 -1
  46. package/dist/components/molecules/Select/Select.d.ts +2 -1
  47. package/dist/components/molecules/Select/Select.style.d.ts +0 -1
  48. package/dist/components/molecules/Select2/Select2.d.ts +2 -2
  49. package/dist/components/molecules/Tabs/Tabs.d.ts +2 -1
  50. package/dist/components/molecules/UpsellCard/OfferText.d.ts +2 -1
  51. package/dist/components/molecules/UpsellCard/UpsellCard.style.d.ts +2 -2
  52. package/dist/components/organisms/Navigation/Navigation.d.ts +2 -1
  53. package/dist/components/organisms/TitleWithCTA/TitleWithCTA.style.d.ts +0 -1
  54. package/dist/harmonic.cjs.development.css +320 -0
  55. package/dist/harmonic.cjs.development.js +2502 -3394
  56. package/dist/harmonic.cjs.development.js.map +1 -1
  57. package/dist/harmonic.cjs.production.min.js +1 -1
  58. package/dist/harmonic.cjs.production.min.js.map +1 -1
  59. package/dist/harmonic.esm.js +2534 -3397
  60. package/dist/harmonic.esm.js.map +1 -1
  61. package/dist/helpers/arrays.d.ts +2 -6
  62. package/dist/index.d.ts +2 -2
  63. package/dist/styles/ThemeProvider.d.ts +2 -1
  64. package/dist/types/auxiliaryNav.d.ts +15 -15
  65. package/dist/types/buttonTypes.d.ts +2 -2
  66. package/dist/types/card.d.ts +3 -1
  67. package/dist/types/contactCard.d.ts +4 -1
  68. package/dist/types/creditListing.d.ts +1 -0
  69. package/dist/types/editorial.d.ts +4 -1
  70. package/dist/types/formTypes.d.ts +1 -1
  71. package/dist/types/image.d.ts +4 -1
  72. package/dist/types/impactHeader.d.ts +18 -18
  73. package/dist/types/index.d.ts +2 -1
  74. package/dist/types/information.d.ts +19 -13
  75. package/dist/types/navigation.d.ts +3 -4
  76. package/dist/types/quote.d.ts +3 -1
  77. package/dist/types/tableTypes.d.ts +2 -1
  78. package/dist/types/types.d.ts +36 -22
  79. package/dist/types/typography.d.ts +33 -3
  80. package/dist/types/upsell.d.ts +1 -2
  81. package/package.json +68 -47
@@ -1,6 +1,2 @@
1
- export declare const truncateArrayByPropLength: (array: {
2
- [key: string]: string;
3
- }[], prop: string, maxChars: number, elipsis?: boolean) => {
4
- [key: string]: string;
5
- }[];
6
- export declare const getConcatenatedPropLength: (array: any[], prop: string) => any;
1
+ export declare const getConcatenatedPropLength: <K extends string, T extends Record<K, string>>(array: T[], prop: K) => number;
2
+ export declare const truncateArrayByPropLength: <K extends string, T extends Record<K, string>>(array: T[], prop: K, maxChars: number, ellipsis?: boolean) => T[];
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
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 } from './components';
2
2
  import { devices, breakpoints } from './styles/viewports';
3
3
  import zIndexes from './styles/zIndexes';
4
- import { AspectRatio, ButtonType, CarouselType, Colors, IconNameType, IntegratedTimerProps, ITimerProps, TickboxMode, ThemeType, EditorialLink } from './types';
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, 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, };
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, };
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  import { IThemeProviderProps } from '../types/types';
2
- declare const Theme: ({ children, theme }: IThemeProviderProps) => JSX.Element;
3
+ declare const Theme: ({ children, theme }: IThemeProviderProps) => React.JSX.Element;
3
4
  export default Theme;
@@ -1,3 +1,18 @@
1
+ export interface IItem {
2
+ /**
3
+ * Item text
4
+ */
5
+ text: string;
6
+ /**
7
+ * Href for item link
8
+ */
9
+ href: string;
10
+ /**
11
+ * Item click handler
12
+ * Default link behavior will be prevented if this specified
13
+ */
14
+ onClick?: (e: MouseEvent) => void;
15
+ }
1
16
  export interface IAuxiliaryNavProps {
2
17
  /**
3
18
  * Menu items
@@ -18,21 +33,6 @@ export interface IAuxiliaryNavProps {
18
33
  ariaLabel?: string;
19
34
  }
20
35
  export declare type INavProps = Pick<IAuxiliaryNavProps, 'items' | 'activeItem' | 'ariaLabel'>;
21
- export interface IItem {
22
- /**
23
- * Item text
24
- */
25
- text: string;
26
- /**
27
- * Href for item link
28
- */
29
- href: string;
30
- /**
31
- * Item click handler
32
- * Default link behavior will be prevented if this specified
33
- */
34
- onClick?: (e: MouseEvent) => void;
35
- }
36
36
  export interface IItemProps extends IItem {
37
37
  isActive: boolean;
38
38
  isMobile?: boolean;
@@ -72,9 +72,9 @@ export interface IRotatorButtonsProps {
72
72
  /**
73
73
  * Function to be called when a button is clicked
74
74
  */
75
- onClickPrev?: Function;
75
+ onClickPrev?: () => void;
76
76
  /**
77
77
  * Function to be called when a button is clicked
78
78
  */
79
- onClickNext?: Function;
79
+ onClickNext?: () => void;
80
80
  }
@@ -98,7 +98,9 @@ export interface ICardProps {
98
98
  */
99
99
  auxiliaryCTA?: EditorialLink;
100
100
  }
101
- export interface ICardContentContainerProps extends StyledProps<any> {
101
+ export interface ICardContentContainerProps extends StyledProps<{
102
+ fullWidth?: boolean;
103
+ }> {
102
104
  /**
103
105
  * Set if content gets full width (same as image)
104
106
  */
@@ -33,7 +33,10 @@ export interface IContactCardProps {
33
33
  */
34
34
  hideBottomBorder?: boolean;
35
35
  }
36
- export interface IContactCardWrapperProps extends StyledProps<any> {
36
+ export interface IContactCardWrapperProps extends StyledProps<{
37
+ hideTopBorder: boolean;
38
+ hideBottomBorder: boolean;
39
+ }> {
37
40
  /**
38
41
  * Set visibility of the top border
39
42
  */
@@ -9,4 +9,5 @@ export interface ICreditListing {
9
9
  additionalInfo: string;
10
10
  dataROH: string;
11
11
  }[];
12
+ columnCount?: number;
12
13
  }
@@ -153,7 +153,10 @@ export interface IPageHeadingProps extends IThemePageHeadingProps {
153
153
  */
154
154
  children?: ReactNode;
155
155
  }
156
- export interface IImpactWrappersStyledProps extends StyledProps<any> {
156
+ export interface IImpactWrappersStyledProps extends StyledProps<{
157
+ bgUrlDesktop: string;
158
+ bgUrlDevice?: string;
159
+ }> {
157
160
  /**
158
161
  * Background url for desktops
159
162
  */
@@ -1,7 +1,7 @@
1
1
  import { InputHTMLAttributes } from 'react';
2
- import { IGridItemProps } from './types';
3
2
  import Select from 'react-select';
4
3
  import SelectAsync from 'react-select/async';
4
+ import { IGridItemProps } from './types';
5
5
  export interface ITextAreaProps extends Partial<IGridItemProps>, InputHTMLAttributes<HTMLTextAreaElement> {
6
6
  /**
7
7
  * A text label to be shown above the text area input box.
@@ -41,7 +41,10 @@ export interface IImageWithCaptionProps {
41
41
  */
42
42
  children: ReactElement<HTMLImageElement>;
43
43
  }
44
- export interface IImageWithCaptionWrapperProps extends StyledProps<any> {
44
+ export interface IImageWithCaptionWrapperProps extends StyledProps<{
45
+ aspectRatio?: AspectRatio;
46
+ height: number;
47
+ }> {
45
48
  /**
46
49
  * Aspect ratio of the contained image
47
50
  */
@@ -1,6 +1,24 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { EditorialLink } from '../types';
3
3
  import { TypographyLevel } from './typography';
4
+ export interface CustomSponsorImageData {
5
+ /**
6
+ * Source URL for Sponsorship logo
7
+ */
8
+ src: string;
9
+ /**
10
+ * Alt Text for image.
11
+ */
12
+ altText?: string;
13
+ /**
14
+ * Used for Analytics.
15
+ */
16
+ dataRoh: string;
17
+ /**
18
+ * Used for Accessibility.
19
+ */
20
+ title: string;
21
+ }
4
22
  export interface IPageHeadingImpactProps {
5
23
  /**
6
24
  * Text placed in the impact component
@@ -115,21 +133,3 @@ export interface IPageHeadingCompactProps {
115
133
  */
116
134
  semanticLevel?: TypographyLevel;
117
135
  }
118
- export interface CustomSponsorImageData {
119
- /**
120
- * Source URL for Sponsorship logo
121
- */
122
- src: string;
123
- /**
124
- * Alt Text for image.
125
- */
126
- altText?: string;
127
- /**
128
- * Used for Analytics.
129
- */
130
- dataRoh: string;
131
- /**
132
- * Used for Accessibility.
133
- */
134
- title: string;
135
- }
@@ -11,4 +11,5 @@ import { IPageHeadingCompactProps } from './impactHeader';
11
11
  import { IntegratedTimerProps, ITimerProps } from './timer';
12
12
  import { ICreditListing } from './creditListing';
13
13
  import { ModalWindowProps } from './modalWindow';
14
- export { AspectRatio, ButtonType, CarouselType, Colors, EditorialLink, FooterData, IconNameType, IAuxiliaryButtonProps, ICreditListing, IPageHeadingCompactProps, INavigationProps, INavTopProps, IntegratedTimerProps, ITimerProps, ModalWindowProps, TickboxMode, ThemeType, };
14
+ import { IInformationTitleProps, IInformationCTAProps, IInformationBackgroundColour } from './information';
15
+ export { AspectRatio, ButtonType, CarouselType, Colors, EditorialLink, FooterData, IconNameType, IAuxiliaryButtonProps, ICreditListing, IPageHeadingCompactProps, INavigationProps, INavTopProps, IntegratedTimerProps, ITimerProps, ModalWindowProps, TickboxMode, ThemeType, IInformationTitleProps, IInformationCTAProps, IInformationBackgroundColour, };
@@ -1,27 +1,28 @@
1
1
  import { DirectionType, IconNameType } from './iconTypes';
2
- export declare enum CtaVariant {
2
+ import { LinkTarget } from './types';
3
+ export declare enum IInformationCtaVariant {
3
4
  Primary = "Primary",
4
5
  Secondary = "Secondary",
5
6
  Tertiary = "Tertiary",
6
7
  TextLink = "TextLink"
7
8
  }
8
- export declare enum CtaTheme {
9
+ export declare enum IInformationCtaTheme {
9
10
  Cinema = "Cinema",
10
11
  Core = "Core",
11
12
  Stream = "Stream"
12
13
  }
13
- export declare enum TitleVariant {
14
+ export declare enum IInformationTitleVariant {
14
15
  Header = "Header",
15
16
  AltHeader = "AltHeader"
16
17
  }
17
- export declare enum BackgroundColour {
18
+ export declare enum IInformationBackgroundColour {
18
19
  Cinema = "cinema",
19
20
  Core = "core",
20
21
  Stream = "stream",
21
22
  White = "white"
22
23
  }
23
24
  export declare type TitleTextSize = 3 | 4 | 5 | 6;
24
- export interface CTAProps {
25
+ export interface IInformationCTAProps {
25
26
  /**
26
27
  * Text to display on the CTA
27
28
  */
@@ -31,13 +32,14 @@ export interface CTAProps {
31
32
  */
32
33
  link: string;
33
34
  /**
34
- * Style of the CTA. Choices are "Primary" (solid button background), "Secondary" (transparent button background) or "Tertiary" (text only)
35
+ * Style of the CTA. Choices are "Primary" (solid button background), "Secondary" (transparent button background)
36
+ * or "Tertiary" (text only)
35
37
  */
36
- variant?: CtaVariant;
38
+ variant?: IInformationCtaVariant;
37
39
  /**
38
40
  * Theme to use for the CTA. Choices are "Core" (red), "Stream" (blue), or "Cinema" (black)
39
41
  */
40
- theme?: CtaTheme;
42
+ theme?: IInformationCtaTheme;
41
43
  /**
42
44
  * Flag to decide whether to adjust the CTA colours for display on coloured backgrounds
43
45
  */
@@ -50,8 +52,12 @@ export interface CTAProps {
50
52
  * Direction of the icon used in the button
51
53
  */
52
54
  iconDirection?: DirectionType;
55
+ /**
56
+ * Attribute to specify where to open the link
57
+ */
58
+ target?: LinkTarget;
53
59
  }
54
- export interface TitleProps {
60
+ export interface IInformationTitleProps {
55
61
  /**
56
62
  * Title text to display
57
63
  */
@@ -59,7 +65,7 @@ export interface TitleProps {
59
65
  /**
60
66
  * Title typography type. Choices are Heading or AltHeader
61
67
  */
62
- variant: TitleVariant;
68
+ variant: IInformationTitleVariant;
63
69
  /**
64
70
  * The size of the title text
65
71
  */
@@ -73,13 +79,13 @@ export interface IInformationProps {
73
79
  /**
74
80
  * Optional CTA to display underneath the body text
75
81
  */
76
- cta?: CTAProps;
82
+ cta?: IInformationCTAProps;
77
83
  /**
78
84
  * Title options for the component
79
85
  */
80
- title: TitleProps;
86
+ title: IInformationTitleProps;
81
87
  /**
82
88
  * Background Colour. Choices: None, Core, Cinema, Stream
83
89
  */
84
- background?: BackgroundColour;
90
+ background?: IInformationBackgroundColour;
85
91
  }
@@ -1,7 +1,6 @@
1
- import React, { AnchorHTMLAttributes, MouseEvent, MouseEventHandler } from 'react';
1
+ import React, { AnchorHTMLAttributes, MouseEvent, MouseEventHandler, ReactNode } from 'react';
2
2
  import { DirectionType, IconNameType } from './iconTypes';
3
3
  import { Colors, IOptionItem } from './types';
4
- import { ReactNode } from 'react';
5
4
  export interface IAccountProps {
6
5
  /**
7
6
  * The text of the title
@@ -147,7 +146,7 @@ export interface INavTopProps {
147
146
  */
148
147
  colorPrimary?: string;
149
148
  }
150
- export interface iMenuOptionProps {
149
+ export interface IMenuOptionProps {
151
150
  /**
152
151
  * The text of the title
153
152
  */
@@ -165,7 +164,7 @@ export interface IMenuProps {
165
164
  /**
166
165
  * An Array of menu items
167
166
  */
168
- items: iMenuOptionProps[];
167
+ items: IMenuOptionProps[];
169
168
  }
170
169
  export interface INavigationProps {
171
170
  /**
@@ -9,7 +9,9 @@ export interface IQuoteProps {
9
9
  */
10
10
  attribution?: string;
11
11
  }
12
- export interface IQuoteAttributionBlockProps extends StyledProps<any> {
12
+ export interface IQuoteAttributionBlockProps extends StyledProps<{
13
+ displayAttribution: boolean;
14
+ }> {
13
15
  /**
14
16
  * Set visibility of the attribution block
15
17
  */
@@ -9,8 +9,9 @@ export interface CellProps {
9
9
  columns: number;
10
10
  lineColor: Colors;
11
11
  }
12
+ export declare type TableRowData = Array<Record<string, unknown>>;
12
13
  export interface RowProps {
13
- row: any[];
14
+ row: TableRowData;
14
15
  rowIndex: number;
15
16
  columns: number;
16
17
  lineColor: Colors;
@@ -117,28 +117,6 @@ export interface ITabProps {
117
117
  */
118
118
  colorPrimary?: string;
119
119
  }
120
- export interface ITabsProps {
121
- /**
122
- * An Array with Dropdown components
123
- */
124
- items?: IDropdownProps[];
125
- /**
126
- * Function to be called when click on showmenu
127
- */
128
- onShowMenu?: (e: boolean) => void;
129
- /**
130
- * Show menu in mobile devices
131
- */
132
- showMenu?: boolean;
133
- /**
134
- * Function to be called when click
135
- */
136
- onChange?: (e: string) => void;
137
- /**
138
- * The primary color
139
- */
140
- colorPrimary?: string;
141
- }
142
120
  export interface IDropdownProps {
143
121
  /**
144
122
  * The value of the title
@@ -181,6 +159,28 @@ export interface IDropdownProps {
181
159
  */
182
160
  colorPrimary?: string;
183
161
  }
162
+ export interface ITabsProps {
163
+ /**
164
+ * An Array with Dropdown components
165
+ */
166
+ items?: IDropdownProps[];
167
+ /**
168
+ * Function to be called when click on showmenu
169
+ */
170
+ onShowMenu?: (e: boolean) => void;
171
+ /**
172
+ * Show menu in mobile devices
173
+ */
174
+ showMenu?: boolean;
175
+ /**
176
+ * Function to be called when click
177
+ */
178
+ onChange?: (e: string) => void;
179
+ /**
180
+ * The primary color
181
+ */
182
+ colorPrimary?: string;
183
+ }
184
184
  export interface IDropdowItemProps extends StyledProps<AnchorHTMLAttributes<HTMLAnchorElement>> {
185
185
  /**
186
186
  * The primary color
@@ -264,6 +264,10 @@ export declare type ListingPerson = {
264
264
  * Use headshot or not
265
265
  */
266
266
  useHeadshot: boolean;
267
+ /**
268
+ * Replacement text
269
+ */
270
+ replacement?: string;
267
271
  };
268
272
  export declare type ListingRole = {
269
273
  /**
@@ -600,3 +604,13 @@ export interface IVideoWithControlsProps {
600
604
  settings: IVideoWithControlsSettings;
601
605
  }
602
606
  export declare type Image = Pick<HTMLImageElement, 'alt' | 'src'>;
607
+ export declare enum LinkTarget {
608
+ /**
609
+ * Opens the link in the same frame or tab as the current page.
610
+ */
611
+ Self = "_self",
612
+ /**
613
+ * Opens the link in a new browser tab or window, depending on the browser settings.
614
+ */
615
+ Blank = "_blank"
616
+ }
@@ -1,12 +1,42 @@
1
- import { ReactNode } from 'react';
1
+ import { ReactNode, AnchorHTMLAttributes, MouseEventHandler } from 'react';
2
2
  import { StyledProps } from 'styled-components';
3
+ import { DirectionType, IconNameType } from './iconTypes';
4
+ export declare type HarmonicSize = 'small' | 'medium' | 'large';
5
+ export declare type HarmonicColors = 'black' | 'red' | 'grey';
6
+ export interface IGenericTypographyProps {
7
+ children: ReactNode;
8
+ size?: HarmonicSize;
9
+ serif?: boolean;
10
+ color?: HarmonicColors;
11
+ em?: boolean;
12
+ bold?: boolean;
13
+ }
14
+ export interface IHarmonicHeaderProps extends IGenericTypographyProps {
15
+ hierarchy: 'h1' | 'h2' | 'h3';
16
+ }
17
+ export interface IAltHeaderHarmonicProps extends IGenericTypographyProps {
18
+ text1: string;
19
+ text2?: string;
20
+ text3?: string;
21
+ }
22
+ export interface ITextLinkHarmonicProps extends Omit<IGenericTypographyProps, 'children' | 'color'>, AnchorHTMLAttributes<HTMLAnchorElement> {
23
+ onClick: MouseEventHandler<HTMLAnchorElement>;
24
+ iconName?: IconNameType;
25
+ iconDirection?: DirectionType;
26
+ children?: ReactNode;
27
+ color?: HarmonicColors;
28
+ }
3
29
  export declare type TypographyLevel = 1 | 2 | 3 | 4 | 5 | 6;
4
30
  export declare type AltHeaderLevel = 3 | 4 | 5 | 6;
5
31
  export declare type BodyLevel = 1 | 2 | 3;
6
32
  export declare type SubtitleLevel = 1 | 2;
7
33
  export declare type OverlineLevel = 1 | 2 | 3 | 4;
8
34
  export declare type TypographyType = 'header' | 'altHeader' | 'body' | 'subtitle' | 'overline';
9
- export interface ITypographyWrapperProps extends StyledProps<any> {
35
+ interface IStyledTypographyProps {
36
+ level: TypographyLevel;
37
+ typography: TypographyType;
38
+ }
39
+ export interface ITypographyWrapperProps extends StyledProps<IStyledTypographyProps> {
10
40
  /**
11
41
  * Typography level to use for generic Typography subcomponent.
12
42
  */
@@ -22,7 +52,7 @@ interface IGenericTypography {
22
52
  */
23
53
  children: ReactNode;
24
54
  }
25
- export interface IStyledTag extends ITypographyWrapperProps, IGenericTypography {
55
+ export interface IStyledTag extends Omit<ITypographyWrapperProps, 'theme'>, IGenericTypography {
26
56
  /**
27
57
  * HTML tag to use to render component, by default div.
28
58
  */
@@ -1,5 +1,4 @@
1
- import { EditorialLink } from '.';
2
- import { ThemeType } from '.';
1
+ import { EditorialLink, ThemeType } from '.';
3
2
  export interface IOfferTextProps {
4
3
  /**
5
4
  * Repeatable element title