@laerdal/life-react-components 1.3.1-dev.3 → 1.3.1-dev.3.full

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 (33) hide show
  1. package/dist/esm/AuthPage/AuthPage.js +1 -1
  2. package/dist/esm/AuthPage/AuthPage.js.map +1 -1
  3. package/dist/esm/AuthPage/Information.js +1 -1
  4. package/dist/esm/AuthPage/Information.js.map +1 -1
  5. package/dist/esm/Banners/Banner.js +16 -16
  6. package/dist/esm/Banners/Banner.js.map +1 -1
  7. package/dist/esm/Modals/__tests__/Modal.test.js +154 -0
  8. package/dist/esm/Modals/__tests__/Modal.test.js.map +1 -0
  9. package/dist/esm/styles/typography.js +66 -66
  10. package/dist/esm/styles/typography.js.map +1 -1
  11. package/dist/js/AuthPage/AuthPage.js +1 -1
  12. package/dist/js/AuthPage/AuthPage.js.map +1 -1
  13. package/dist/js/AuthPage/Information.d.ts +1 -1
  14. package/dist/js/AuthPage/Information.js +1 -1
  15. package/dist/js/AuthPage/Information.js.map +1 -1
  16. package/dist/js/Banners/Banner.js +19 -16
  17. package/dist/js/Banners/Banner.js.map +1 -1
  18. package/dist/js/Modals/__tests__/Modal.test.js +231 -0
  19. package/dist/js/Modals/__tests__/Modal.test.js.map +1 -0
  20. package/dist/js/styles/typography.d.ts +6 -6
  21. package/dist/js/styles/typography.js +66 -66
  22. package/dist/js/styles/typography.js.map +1 -1
  23. package/dist/umd/AuthPage/AuthPage.js +1 -1
  24. package/dist/umd/AuthPage/AuthPage.js.map +1 -1
  25. package/dist/umd/AuthPage/Information.js +1 -1
  26. package/dist/umd/AuthPage/Information.js.map +1 -1
  27. package/dist/umd/Banners/Banner.js +16 -16
  28. package/dist/umd/Banners/Banner.js.map +1 -1
  29. package/dist/umd/Modals/__tests__/Modal.test.js +173 -0
  30. package/dist/umd/Modals/__tests__/Modal.test.js.map +1 -0
  31. package/dist/umd/styles/typography.js +66 -66
  32. package/dist/umd/styles/typography.js.map +1 -1
  33. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Banners/Banner.tsx"],"names":["BannerContainer","styled","div","props","$type","COLORS","correct_100","black","bottom","BREAKPOINTS","MEDIUM","LARGE","link","BannerCenter","ComponentTextStyle","Regular","$color","ButtonWrapper","ButtonContainer","BannerContentWrapper","Banner","size","type","children","testId","linkText","onClose","icon","noIcon","React","useState","window","innerWidth","width","setWidth","useEffect","handleResize","addEventListener","formatTypeToLowerCase","toLowerCase","warning_100","warning_700","warning_20","Math","floor","random","white","warning_500","critical_100","critical_700","critical_20","critical_500","correct_700","correct_20","correct_500","primary_100","primary_700","primary_20","primary_500","hover"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS, ComponentTextStyle } from '../styles';\nimport { Close, Help, TechnicalWarning, ThumbsUp, Tip } from '../icons/systemicons/SystemIcons';\nimport { IconButton } from '../Button';\nimport { getButtonStyle } from './styles';\nimport { Size } from '../types';\nimport { ComponentMStyling, ComponentResponsive } from '../styles/typography';\nimport { HyperLink } from '../HyperLink';\n\n/**\n * Styles for <Banner />\n */\ntype StyleBannerProps = BannerProps & { $type: string };\n\nconst BannerContainer = styled.div<StyleBannerProps>`\n background: ${(props: StyleBannerProps) => (props.$type ? props.$type : COLORS.correct_100)};\n min-height: 48px;\n display: flex;\n color: ${COLORS.black};\n margin-top: ${(props: StyleBannerProps) => (props.bottom ? 'auto' : '0')};\n\n button:last-child {\n line-height: 0;\n margin: 0 0 0 8px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 0 0 16px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 0 0 32px;\n }\n &.small {\n margin: 0 0 0 8px;\n }\n &.medium {\n margin: 0 0 0 16px;\n }\n &.large {\n margin: 0 0 0 32px;\n }\n }\n\n a {\n color: ${(props: BannerProps) => props.link} !important;\n }\n`;\n\nconst BannerCenter = styled.div<{ $color: string }>`\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.$color)}\n\n display: flex;\n width: 100%;\n margin: 0 0 0 16px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 16px 0 32px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 40px 0 56px;\n }\n &.small {\n margin: 0 0 0 16px;\n }\n &.medium {\n margin: 0 16px 0 32px;\n }\n &.large {\n margin: 0 40px 0 56px;\n }\n\n > svg {\n flex-shrink: 0;\n margin: 12px 0;\n }\n`;\n\nconst ButtonWrapper = styled.div`\n margin: 0 0 0 auto;\n`;\n\nconst ButtonContainer = styled.div<{ $type?: string }>`\n display: contents;\n ${(props) => (props.$type ? getButtonStyle(props.$type) : null)};\n`;\n\nconst BannerContentWrapper = styled.div`\n display: flex;\n align-items: center;\n margin: 12px 0;\n &:not(:first-child) {\n margin-left: 8px;\n }\n`;\n\ntype BannerProps = {\n size?: Size.Small | Size.Medium | Size.Large;\n type?: string;\n link?: string;\n linkText?: string;\n hover?: string;\n bottom?: boolean;\n testId?: string;\n icon?: React.ReactNode;\n onClose?: () => void;\n noIcon?: boolean;\n};\n\nconst Banner: React.FunctionComponent<BannerProps> = ({ size, type, children, bottom, testId, linkText, link, onClose, icon, noIcon }) => {\n const [width, setWidth] = React.useState<number>(window.innerWidth);\n React.useEffect(() => {\n function handleResize() {\n setWidth(window.innerWidth);\n }\n window.addEventListener('resize', handleResize);\n });\n\n const formatTypeToLowerCase = type?.toLowerCase();\n switch (formatTypeToLowerCase) {\n case 'warning':\n return (\n <BannerContainer data-testid={testId} $type={COLORS.warning_100} link={COLORS.warning_700} hover={COLORS.warning_20} bottom={bottom}>\n <BannerCenter $color={COLORS.warning_700} className={size}>\n {icon ? icon : noIcon ? null : <Help color={COLORS.warning_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.warning_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer $type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.warning_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'critical':\n return (\n <BannerContainer data-testid={testId} $type={COLORS.critical_100} link={COLORS.critical_700} hover={COLORS.critical_20} bottom={bottom} className={size}>\n <BannerCenter $color={COLORS.critical_700} className={size}>\n {icon ? icon : noIcon ? null : <TechnicalWarning color={COLORS.critical_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.critical_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer $type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.critical_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'positive':\n return (\n <BannerContainer data-testid={testId} $type={COLORS.correct_100} link={COLORS.correct_700} hover={COLORS.correct_20} bottom={bottom} className={size}>\n <BannerCenter $color={COLORS.correct_700} className={size}>\n {icon ? icon : noIcon ? null : <ThumbsUp color={COLORS.correct_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.correct_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer $type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.correct_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n default:\n return (\n <BannerContainer data-testid={testId} $type={COLORS.primary_100} link={COLORS.primary_700} hover={COLORS.primary_20} bottom={bottom} className={size}>\n <BannerCenter $color={COLORS.primary_700} className={size}>\n {icon ? icon : noIcon ? null : <Tip color={COLORS.primary_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.primary_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer $type=\"neutral\">\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.primary_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n }\n};\n\nexport default Banner;\n"],"file":"Banner.js"}
1
+ {"version":3,"sources":["../../../src/Banners/Banner.tsx"],"names":["BannerContainer","styled","div","props","type","COLORS","correct_100","black","bottom","BREAKPOINTS","MEDIUM","LARGE","link","BannerCenter","ComponentTextStyle","Regular","color","ButtonWrapper","ButtonContainer","BannerContentWrapper","Banner","size","children","testId","linkText","onClose","icon","noIcon","React","useState","window","innerWidth","width","setWidth","useEffect","handleResize","addEventListener","formatTypeToLowerCase","toLowerCase","warning_100","warning_700","warning_20","Math","floor","random","white","warning_500","critical_100","critical_700","critical_20","critical_500","correct_700","correct_20","correct_500","primary_100","primary_700","primary_20","primary_500","hover"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport {BREAKPOINTS, COLORS, ComponentTextStyle} from '../styles';\nimport {Close, Help, TechnicalWarning, ThumbsUp, Tip} from '../icons/systemicons/SystemIcons';\nimport {IconButton} from '../Button';\nimport {getButtonStyle} from './styles';\nimport {Size} from '../types';\nimport {ComponentMStyling, ComponentResponsive} from '../styles/typography';\nimport {HyperLink} from '../HyperLink';\n\n/**\n * Styles for <Banner />\n */\nconst BannerContainer = styled.div<BannerProps>`\n background: ${(props: BannerProps) => (props.type ? props.type : COLORS.correct_100)};\n min-height: 48px;\n display: flex;\n color: ${COLORS.black};\n margin-top: ${(props: BannerProps) => (props.bottom ? 'auto' : '0')};\n\n button:last-child {\n line-height: 0;\n margin: 0 0 0 8px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 0 0 16px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 0 0 32px;\n }\n &.small {\n margin: 0 0 0 8px;\n }\n &.medium {\n margin: 0 0 0 16px;\n }\n &.large {\n margin: 0 0 0 32px;\n }\n }\n\n a {\n color: ${(props: BannerProps) => props.link} !important;\n }\n`;\n\nconst BannerCenter = styled.div`\n ${(props) => ComponentMStyling(ComponentTextStyle.Regular, props.color)}\n \n display: flex;\n width: 100%;\n margin: 0 0 0 16px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 16px 0 32px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 40px 0 56px;\n }\n &.small {\n margin: 0 0 0 16px;\n }\n &.medium {\n margin: 0 16px 0 32px;\n }\n &.large {\n margin: 0 40px 0 56px;\n }\n\n > svg {\n flex-shrink: 0;\n margin: 12px 0;\n }\n`;\n\nconst ButtonWrapper = styled.div`\n margin: 0 0 0 auto;\n`;\n\nconst ButtonContainer = styled.div<{ type?: string }>`\n display: contents;\n ${(props) => (props.type ? getButtonStyle(props.type) : null)};\n`;\n\nconst BannerContentWrapper = styled.div`\n display: flex;\n align-items: center;\n margin: 12px 0;\n &:not(:first-child) {\n margin-left: 8px;\n }\n`;\n\ntype BannerProps = {\n size?: Size.Small | Size.Medium | Size.Large;\n type?: string;\n link?: string;\n linkText?: string;\n hover?: string;\n bottom?: boolean;\n testId?: string;\n icon?: React.ReactNode;\n onClose?: () => void;\n noIcon?: boolean;\n};\n\nconst Banner: React.FunctionComponent<BannerProps> = ({ size, type, children, bottom, testId, linkText, link, onClose, icon, noIcon }) => {\n const [width, setWidth] = React.useState<number>(window.innerWidth);\n React.useEffect(() => {\n function handleResize() {\n setWidth(window.innerWidth);\n }\n window.addEventListener('resize', handleResize);\n });\n\n const formatTypeToLowerCase = type?.toLowerCase();\n switch (formatTypeToLowerCase) {\n case 'warning':\n return (\n <BannerContainer data-testid={testId} type={COLORS.warning_100} link={COLORS.warning_700} hover={COLORS.warning_20} bottom={bottom}>\n <BannerCenter color={COLORS.warning_700} className={size}>\n {icon ? icon : noIcon ? null : <Help color={COLORS.warning_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.warning_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.warning_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'critical':\n return (\n <BannerContainer data-testid={testId} type={COLORS.critical_100} link={COLORS.critical_700} hover={COLORS.critical_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.critical_700} className={size}>\n {icon ? icon : noIcon ? null : <TechnicalWarning color={COLORS.critical_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.critical_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.critical_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'positive':\n return (\n <BannerContainer data-testid={testId} type={COLORS.correct_100} link={COLORS.correct_700} hover={COLORS.correct_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.correct_700} className={size}>\n {icon ? icon : noIcon ? null : <ThumbsUp color={COLORS.correct_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.correct_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.correct_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n default:\n return (\n <BannerContainer data-testid={testId} type={COLORS.primary_100} link={COLORS.primary_700} hover={COLORS.primary_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.primary_700} className={size}>\n {icon ? icon : noIcon ? null : <Tip color={COLORS.primary_700} size=\"24px\" />}\n <BannerContentWrapper>\n <ComponentResponsive size={size} width={width} color={COLORS.primary_700}>\n {children}&nbsp;&nbsp;\n {link && linkText && (\n <HyperLink id={`${Math.floor(Math.random() * 999999999999)}_BannerLink`} href={link} variant=\"default\">\n {linkText}\n </HyperLink>\n )}\n </ComponentResponsive>\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper>\n <ButtonContainer type=\"neutral\">\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground tabbedHereBackgroundColor={COLORS.white} action={() => onClose()}>\n <Close color={COLORS.primary_500} size=\"24px\" />\n </IconButton>\n </ButtonContainer>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n }\n};\n\nexport default Banner;\n"],"file":"Banner.js"}
@@ -0,0 +1,231 @@
1
+ "use strict";
2
+
3
+ var _react = _interopRequireDefault(require("react"));
4
+
5
+ var _react2 = require("@testing-library/react");
6
+
7
+ require("jest-styled-components");
8
+
9
+ var _ = require("..");
10
+
11
+ var _2 = require("../..");
12
+
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+
15
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
16
+
17
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
18
+
19
+ describe('<ModalDialog />', function () {
20
+ var mountingDiv;
21
+ beforeEach(function () {
22
+ //being rendered as a React.Portal we need to have the 'root' div defined
23
+ mountingDiv = document.createElement('div');
24
+ mountingDiv.id = 'root';
25
+ document.body.appendChild(mountingDiv);
26
+ });
27
+ afterEach(function () {
28
+ document.body.removeChild(mountingDiv);
29
+ });
30
+ it('Check modal not rendered when isModalOpen is false', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
31
+ var _render, container, getByText;
32
+
33
+ return regeneratorRuntime.wrap(function _callee$(_context) {
34
+ while (1) {
35
+ switch (_context.prev = _context.next) {
36
+ case 0:
37
+ _render = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
38
+ key: "smallModalWithoutImage",
39
+ closeModalAndClearInput: function closeModalAndClearInput() {},
40
+ title: 'Header',
41
+ size: _2.Size.Small,
42
+ isModalOpen: false,
43
+ closeAction: function closeAction() {},
44
+ submitAction: function submitAction() {}
45
+ })), container = _render.container, getByText = _render.getByText; //check modal portal not exists when modal not opened
46
+
47
+ expect(container.querySelector('.ReactModalPortal')).toBeNull();
48
+
49
+ case 2:
50
+ case "end":
51
+ return _context.stop();
52
+ }
53
+ }
54
+ }, _callee);
55
+ })));
56
+ it('Check modal visible, title and footer buttons displayed correctly', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
57
+ var _render2, container, getByText;
58
+
59
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
60
+ while (1) {
61
+ switch (_context2.prev = _context2.next) {
62
+ case 0:
63
+ _render2 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
64
+ key: "smallModalWithoutImage",
65
+ closeModalAndClearInput: function closeModalAndClearInput() {},
66
+ title: 'Header',
67
+ size: _2.Size.Small,
68
+ isModalOpen: true,
69
+ closeAction: function closeAction() {},
70
+ submitAction: function submitAction() {},
71
+ buttons: [{
72
+ action: function action() {},
73
+ text: 'Close',
74
+ variant: 'tertiary'
75
+ }, {
76
+ action: function action() {},
77
+ text: 'Save'
78
+ }]
79
+ })), container = _render2.container, getByText = _render2.getByText; //check modal portal defined
80
+
81
+ expect(container.querySelector('.ReactModalPortal')).toBeDefined(); //Check header and footer buttons
82
+
83
+ expect(getByText('Header')).toBeDefined();
84
+ expect(getByText('Close')).toBeDefined();
85
+ expect(getByText('Save')).toBeDefined();
86
+
87
+ case 5:
88
+ case "end":
89
+ return _context2.stop();
90
+ }
91
+ }
92
+ }, _callee2);
93
+ })));
94
+ it('Check tooltip, and link displayed without right footer buttons', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
95
+ var _render3, baseElement, getByText;
96
+
97
+ return regeneratorRuntime.wrap(function _callee3$(_context3) {
98
+ while (1) {
99
+ switch (_context3.prev = _context3.next) {
100
+ case 0:
101
+ _render3 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
102
+ key: "smallModalWithoutImage",
103
+ closeModalAndClearInput: function closeModalAndClearInput() {},
104
+ title: 'Header',
105
+ size: _2.Size.Small,
106
+ isModalOpen: true,
107
+ closeAction: function closeAction() {},
108
+ submitAction: function submitAction() {},
109
+ tooltip: 'some test tooltip',
110
+ leftFooterAction: {
111
+ id: 'test-link',
112
+ actionType: 'hyperlink',
113
+ text: 'Link',
114
+ href: 'http://test.com',
115
+ icon: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null),
116
+ variant: 'default'
117
+ }
118
+ })), baseElement = _render3.baseElement, getByText = _render3.getByText; //check tooltip displayed
119
+
120
+ expect(getByText('some test tooltip').textContent).toBeDefined(); //check footer link displayed
121
+
122
+ expect(getByText('Link').children).toBeDefined();
123
+
124
+ case 3:
125
+ case "end":
126
+ return _context3.stop();
127
+ }
128
+ }
129
+ }, _callee3);
130
+ })));
131
+ it('Check note and footer note displayed', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
132
+ var _baseElement$querySel;
133
+
134
+ var _render4, baseElement, getByText;
135
+
136
+ return regeneratorRuntime.wrap(function _callee4$(_context4) {
137
+ while (1) {
138
+ switch (_context4.prev = _context4.next) {
139
+ case 0:
140
+ _render4 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
141
+ key: "smallModalWithoutImage",
142
+ closeModalAndClearInput: function closeModalAndClearInput() {},
143
+ title: 'Header',
144
+ size: _2.Size.Small,
145
+ isModalOpen: true,
146
+ closeAction: function closeAction() {},
147
+ submitAction: function submitAction() {},
148
+ leftFooterAction: {
149
+ id: 'test-note',
150
+ actionType: 'note',
151
+ text: 'Test note',
152
+ icon: /*#__PURE__*/_react.default.createElement(_2.SystemIcons.Information, null)
153
+ },
154
+ note: 'Message text',
155
+ state: 'critical'
156
+ })), baseElement = _render4.baseElement, getByText = _render4.getByText; //check footer note text displayed
157
+
158
+ expect(getByText('Test note').textContent).toBeDefined(); //check note section added
159
+
160
+ expect((_baseElement$querySel = baseElement.querySelectorAll('section')) === null || _baseElement$querySel === void 0 ? void 0 : _baseElement$querySel.length).toEqual(4); //check note message displayed
161
+
162
+ expect(getByText('Message text').children).toBeDefined();
163
+
164
+ case 4:
165
+ case "end":
166
+ return _context4.stop();
167
+ }
168
+ }
169
+ }, _callee4);
170
+ })));
171
+ it('Check back button and close icon displayed', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5() {
172
+ var _baseElement$querySel2;
173
+
174
+ var _render5, baseElement, getByText, container;
175
+
176
+ return regeneratorRuntime.wrap(function _callee5$(_context5) {
177
+ while (1) {
178
+ switch (_context5.prev = _context5.next) {
179
+ case 0:
180
+ _render5 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
181
+ key: "smallModalWithoutImage",
182
+ closeModalAndClearInput: function closeModalAndClearInput() {},
183
+ title: 'Header',
184
+ size: _2.Size.Small,
185
+ backButton: function backButton() {},
186
+ isModalOpen: true,
187
+ closeAction: function closeAction() {},
188
+ submitAction: function submitAction() {}
189
+ })), baseElement = _render5.baseElement, getByText = _render5.getByText, container = _render5.container; //only 2 svg elements should be found in the header of the modal
190
+
191
+ expect((_baseElement$querySel2 = baseElement.querySelectorAll('svg')) === null || _baseElement$querySel2 === void 0 ? void 0 : _baseElement$querySel2.length).toEqual(2);
192
+
193
+ case 2:
194
+ case "end":
195
+ return _context5.stop();
196
+ }
197
+ }
198
+ }, _callee5);
199
+ })));
200
+ it('Check modal body displayed', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6() {
201
+ var _baseElement$querySel3, _baseElement$querySel4;
202
+
203
+ var _render6, baseElement, getByText, container;
204
+
205
+ return regeneratorRuntime.wrap(function _callee6$(_context6) {
206
+ while (1) {
207
+ switch (_context6.prev = _context6.next) {
208
+ case 0:
209
+ _render6 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_.ModalDialog, {
210
+ key: "smallModalWithoutImage",
211
+ closeModalAndClearInput: function closeModalAndClearInput() {},
212
+ title: 'Header',
213
+ size: _2.Size.Small,
214
+ isModalOpen: true,
215
+ closeAction: function closeAction() {},
216
+ submitAction: function submitAction() {}
217
+ }, /*#__PURE__*/_react.default.createElement("span", null, "Inner modal text"))), baseElement = _render6.baseElement, getByText = _render6.getByText, container = _render6.container; //Check all dialog sections are displayed
218
+
219
+ expect((_baseElement$querySel3 = baseElement.querySelectorAll('section')) === null || _baseElement$querySel3 === void 0 ? void 0 : _baseElement$querySel3.length).toEqual(3); //Check that the second section (modal body) has the correct text
220
+
221
+ expect((_baseElement$querySel4 = baseElement.querySelectorAll('section')) === null || _baseElement$querySel4 === void 0 ? void 0 : _baseElement$querySel4[1].textContent).toEqual('Inner modal text');
222
+
223
+ case 3:
224
+ case "end":
225
+ return _context6.stop();
226
+ }
227
+ }
228
+ }, _callee6);
229
+ })));
230
+ });
231
+ //# sourceMappingURL=Modal.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/Modals/__tests__/Modal.test.tsx"],"names":["describe","mountingDiv","beforeEach","document","createElement","id","body","appendChild","afterEach","removeChild","it","Size","Small","container","getByText","expect","querySelector","toBeNull","action","text","variant","toBeDefined","actionType","href","icon","baseElement","textContent","children","querySelectorAll","length","toEqual"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { render } from '@testing-library/react';\nimport 'jest-styled-components';\nimport { ModalDialog } from '..';\nimport { COLORS, Size, SystemIcons } from '../..';\n\ndescribe('<ModalDialog />', () => {\n let mountingDiv: HTMLElement;\n\n beforeEach(() => {\n //being rendered as a React.Portal we need to have the 'root' div defined\n mountingDiv = document.createElement('div');\n mountingDiv.id = 'root';\n document.body.appendChild(mountingDiv);\n });\n\n afterEach(() => {\n document.body.removeChild(mountingDiv);\n });\n\n it('Check modal not rendered when isModalOpen is false', async () => {\n const { container, getByText } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n isModalOpen={false}\n closeAction={() => {}}\n submitAction={() => {}}\n />,\n );\n //check modal portal not exists when modal not opened\n expect(container.querySelector('.ReactModalPortal')).toBeNull();\n });\n\n it('Check modal visible, title and footer buttons displayed correctly', async () => {\n const { container, getByText } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n isModalOpen={true}\n closeAction={() => {}}\n submitAction={() => {}}\n buttons={[\n {\n action: () => {},\n text: 'Close',\n variant: 'tertiary',\n },\n {\n action: () => {},\n text: 'Save',\n },\n ]}\n />,\n );\n //check modal portal defined\n expect(container.querySelector('.ReactModalPortal')).toBeDefined();\n //Check header and footer buttons\n expect(getByText('Header')).toBeDefined();\n expect(getByText('Close')).toBeDefined();\n expect(getByText('Save')).toBeDefined();\n });\n\n it('Check tooltip, and link displayed without right footer buttons', async () => {\n const { baseElement, getByText } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n isModalOpen={true}\n closeAction={() => {}}\n submitAction={() => {}}\n tooltip={'some test tooltip'}\n leftFooterAction={{ id: 'test-link', actionType: 'hyperlink', text: 'Link', href: 'http://test.com', icon: <></>, variant: 'default' }}\n />,\n );\n //check tooltip displayed\n expect(getByText('some test tooltip').textContent).toBeDefined();\n //check footer link displayed\n expect(getByText('Link').children).toBeDefined();\n });\n\n it('Check note and footer note displayed', async () => {\n const { baseElement, getByText } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n isModalOpen={true}\n closeAction={() => {}}\n submitAction={() => {}}\n leftFooterAction={{ id: 'test-note', actionType: 'note', text: 'Test note', icon: <SystemIcons.Information /> }}\n note={'Message text'}\n state={'critical'}\n />,\n );\n //check footer note text displayed\n expect(getByText('Test note').textContent).toBeDefined();\n //check note section added\n expect(baseElement.querySelectorAll('section')?.length).toEqual(4);\n //check note message displayed\n expect(getByText('Message text').children).toBeDefined();\n });\n\n it('Check back button and close icon displayed', async () => {\n const { baseElement, getByText, container } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n backButton={() => {}}\n isModalOpen={true}\n closeAction={() => {}}\n submitAction={() => {}}\n />,\n );\n //only 2 svg elements should be found in the header of the modal\n expect(baseElement.querySelectorAll('svg')?.length).toEqual(2);\n });\n\n it('Check modal body displayed', async () => {\n const { baseElement, getByText, container } = render(\n <ModalDialog\n key=\"smallModalWithoutImage\"\n closeModalAndClearInput={() => {}}\n title={'Header'}\n size={Size.Small}\n isModalOpen={true}\n closeAction={() => {}}\n submitAction={() => {}}>\n <span>Inner modal text</span>\n </ModalDialog>,\n );\n //Check all dialog sections are displayed\n expect(baseElement.querySelectorAll('section')?.length).toEqual(3);\n //Check that the second section (modal body) has the correct text\n expect(baseElement.querySelectorAll('section')?.[1].textContent).toEqual('Inner modal text');\n });\n});\n"],"file":"Modal.test.js"}
@@ -5,19 +5,19 @@ declare const TYPOGRAPHY: {
5
5
  fontFamily: string;
6
6
  };
7
7
  interface ITypographyBase {
8
- $color?: string;
8
+ color?: string;
9
9
  lineHeight: number;
10
- $fontSize: number;
11
- $fontWeight: number;
12
- $fontStyle?: string;
10
+ fontSize: number;
11
+ fontWeight: number;
12
+ fontStyle?: string;
13
13
  textTransform?: Property.TextTransform;
14
14
  textDecorationLine?: Property.TextDecorationLine;
15
15
  }
16
16
  interface IHeadline {
17
- $color?: string;
17
+ color?: string;
18
18
  }
19
19
  interface IHeadlineBase {
20
- $color?: string;
20
+ color?: string;
21
21
  lineHeight: number;
22
22
  fontSize: number;
23
23
  }
@@ -32,22 +32,22 @@ var TYPOGRAPHY = {
32
32
  };
33
33
  exports.TYPOGRAPHY = TYPOGRAPHY;
34
34
  var TypographyBase = (0, _styledComponents.default)('div')(function (_ref) {
35
- var $color = _ref.$color,
35
+ var color = _ref.color,
36
36
  lineHeight = _ref.lineHeight,
37
- $fontSize = _ref.$fontSize,
38
- $fontWeight = _ref.$fontWeight,
39
- $fontStyle = _ref.$fontStyle,
37
+ fontSize = _ref.fontSize,
38
+ fontWeight = _ref.fontWeight,
39
+ fontStyle = _ref.fontStyle,
40
40
  textTransform = _ref.textTransform,
41
41
  textDecorationLine = _ref.textDecorationLine;
42
42
  return {
43
43
  fontFamily: TYPOGRAPHY.fontFamily,
44
- fontSize: $fontSize,
45
- fontWeight: $fontWeight,
44
+ fontSize: fontSize,
45
+ fontWeight: fontWeight,
46
46
  lineHeight: lineHeight + 'px',
47
47
  textTransform: textTransform ? textTransform : 'none',
48
48
  textDecorationLine: textDecorationLine ? textDecorationLine : 'none',
49
- fontStyle: $fontStyle ? $fontStyle : 'normal',
50
- color: $color ? $color : _.COLORS.black
49
+ fontStyle: fontStyle ? fontStyle : 'normal',
50
+ color: color ? color : _.COLORS.black
51
51
  };
52
52
  });
53
53
 
@@ -56,14 +56,14 @@ var HeadlineBaseStyling = function HeadlineBaseStyling(fontSize, lineHeight, col
56
56
  };
57
57
 
58
58
  var HeadlineBase = (0, _styledComponents.default)(TypographyBase)(function (_ref2) {
59
- var $color = _ref2.$color,
59
+ var color = _ref2.color,
60
60
  lineHeight = _ref2.lineHeight,
61
61
  fontSize = _ref2.fontSize;
62
62
  return {
63
63
  fontSize: fontSize,
64
64
  fontWeight: 700,
65
65
  lineHeight: lineHeight,
66
- color: $color
66
+ color: color
67
67
  };
68
68
  });
69
69
 
@@ -73,11 +73,11 @@ var HeadlineXLStyling = function HeadlineXLStyling(color) {
73
73
 
74
74
  exports.HeadlineXLStyling = HeadlineXLStyling;
75
75
  var HeadlineXL = (0, _styledComponents.default)(HeadlineBase)(function (_ref3) {
76
- var $color = _ref3.$color;
76
+ var color = _ref3.color;
77
77
  return {
78
78
  fontSize: '48px',
79
79
  lineHeight: '64px',
80
- color: $color
80
+ color: color
81
81
  };
82
82
  });
83
83
  exports.HeadlineXL = HeadlineXL;
@@ -88,11 +88,11 @@ var HeadlineLStyling = function HeadlineLStyling(color) {
88
88
 
89
89
  exports.HeadlineLStyling = HeadlineLStyling;
90
90
  var HeadlineL = (0, _styledComponents.default)(HeadlineBase)(function (_ref4) {
91
- var $color = _ref4.$color;
91
+ var color = _ref4.color;
92
92
  return {
93
93
  fontSize: '40px',
94
94
  lineHeight: '52px',
95
- color: $color
95
+ color: color
96
96
  };
97
97
  });
98
98
  exports.HeadlineL = HeadlineL;
@@ -103,11 +103,11 @@ var HeadlineMStyling = function HeadlineMStyling(color) {
103
103
 
104
104
  exports.HeadlineMStyling = HeadlineMStyling;
105
105
  var HeadlineM = (0, _styledComponents.default)(HeadlineBase)(function (_ref5) {
106
- var $color = _ref5.$color;
106
+ var color = _ref5.color;
107
107
  return {
108
108
  fontSize: '32px',
109
109
  lineHeight: '40px',
110
- color: $color
110
+ color: color
111
111
  };
112
112
  });
113
113
  exports.HeadlineM = HeadlineM;
@@ -118,11 +118,11 @@ var HeadlineSStyling = function HeadlineSStyling(color) {
118
118
 
119
119
  exports.HeadlineSStyling = HeadlineSStyling;
120
120
  var HeadlineS = (0, _styledComponents.default)(HeadlineBase)(function (_ref6) {
121
- var $color = _ref6.$color;
121
+ var color = _ref6.color;
122
122
  return {
123
123
  fontSize: '28px',
124
124
  lineHeight: '36px',
125
- color: $color
125
+ color: color
126
126
  };
127
127
  });
128
128
  exports.HeadlineS = HeadlineS;
@@ -133,11 +133,11 @@ var HeadlineXSStyling = function HeadlineXSStyling(color) {
133
133
 
134
134
  exports.HeadlineXSStyling = HeadlineXSStyling;
135
135
  var HeadlineXS = (0, _styledComponents.default)(HeadlineBase)(function (_ref7) {
136
- var $color = _ref7.$color;
136
+ var color = _ref7.color;
137
137
  return {
138
138
  fontSize: '24px',
139
139
  lineHeight: '32px',
140
- color: $color
140
+ color: color
141
141
  };
142
142
  });
143
143
  exports.HeadlineXS = HeadlineXS;
@@ -148,11 +148,11 @@ var HeadlineXXSStyling = function HeadlineXXSStyling(color) {
148
148
 
149
149
  exports.HeadlineXXSStyling = HeadlineXXSStyling;
150
150
  var HeadlineXXS = (0, _styledComponents.default)(HeadlineBase)(function (_ref8) {
151
- var $color = _ref8.$color;
151
+ var color = _ref8.color;
152
152
  return {
153
153
  fontSize: '20px',
154
154
  lineHeight: '24px',
155
- color: $color
155
+ color: color
156
156
  };
157
157
  });
158
158
  exports.HeadlineXXS = HeadlineXXS;
@@ -208,11 +208,11 @@ var ParagraphXL = function ParagraphXL(_ref9) {
208
208
  var fontStyle = paragraphFontStyle(textStyle);
209
209
  var textDecorationLine = paragraphTextDecorationLine(textStyle);
210
210
  return /*#__PURE__*/_react.default.createElement(ParagraphBase, {
211
- $color: color,
211
+ color: color,
212
212
  lineHeight: 36,
213
- $fontSize: 24,
214
- $fontWeight: fontWeight,
215
- $fontStyle: fontStyle,
213
+ fontSize: 24,
214
+ fontWeight: fontWeight,
215
+ fontStyle: fontStyle,
216
216
  textDecorationLine: textDecorationLine,
217
217
  marginBetweenParagraphs: "18px"
218
218
  }, children);
@@ -238,11 +238,11 @@ var ParagraphL = function ParagraphL(_ref10) {
238
238
  var fontStyle = paragraphFontStyle(textStyle);
239
239
  var textDecorationLine = paragraphTextDecorationLine(textStyle);
240
240
  return /*#__PURE__*/_react.default.createElement(ParagraphBase, {
241
- $color: color,
241
+ color: color,
242
242
  lineHeight: 32,
243
- $fontSize: 20,
244
- $fontWeight: fontWeight,
245
- $fontStyle: fontStyle,
243
+ fontSize: 20,
244
+ fontWeight: fontWeight,
245
+ fontStyle: fontStyle,
246
246
  textDecorationLine: textDecorationLine,
247
247
  marginBetweenParagraphs: "16px"
248
248
  }, children);
@@ -268,11 +268,11 @@ var ParagraphM = function ParagraphM(_ref11) {
268
268
  var fontStyle = paragraphFontStyle(textStyle);
269
269
  var textDecorationLine = paragraphTextDecorationLine(textStyle);
270
270
  return /*#__PURE__*/_react.default.createElement(ParagraphBase, {
271
- $color: color,
271
+ color: color,
272
272
  lineHeight: 28,
273
- $fontSize: 18,
274
- $fontWeight: fontWeight,
275
- $fontStyle: fontStyle,
273
+ fontSize: 18,
274
+ fontWeight: fontWeight,
275
+ fontStyle: fontStyle,
276
276
  textDecorationLine: textDecorationLine,
277
277
  marginBetweenParagraphs: "14px"
278
278
  }, children);
@@ -298,11 +298,11 @@ var ParagraphS = function ParagraphS(_ref12) {
298
298
  var fontStyle = paragraphFontStyle(textStyle);
299
299
  var textDecorationLine = paragraphTextDecorationLine(textStyle);
300
300
  return /*#__PURE__*/_react.default.createElement(ParagraphBase, {
301
- $color: color,
301
+ color: color,
302
302
  lineHeight: 24,
303
- $fontSize: 16,
304
- $fontWeight: fontWeight,
305
- $fontStyle: fontStyle,
303
+ fontSize: 16,
304
+ fontWeight: fontWeight,
305
+ fontStyle: fontStyle,
306
306
  textDecorationLine: textDecorationLine,
307
307
  marginBetweenParagraphs: "12px"
308
308
  }, children);
@@ -328,11 +328,11 @@ var ParagraphXS = function ParagraphXS(_ref13) {
328
328
  var fontStyle = paragraphFontStyle(textStyle);
329
329
  var textDecorationLine = paragraphTextDecorationLine(textStyle);
330
330
  return /*#__PURE__*/_react.default.createElement(ParagraphBase, {
331
- $color: color,
331
+ color: color,
332
332
  lineHeight: 20,
333
- $fontSize: 14,
334
- $fontWeight: fontWeight,
335
- $fontStyle: fontStyle,
333
+ fontSize: 14,
334
+ fontWeight: fontWeight,
335
+ fontStyle: fontStyle,
336
336
  textDecorationLine: textDecorationLine,
337
337
  marginBetweenParagraphs: "10px"
338
338
  }, children);
@@ -392,11 +392,11 @@ var ComponentXL = function ComponentXL(_ref14) {
392
392
  var fontStyle = componentFontStyle(textStyle);
393
393
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
394
394
  className: className,
395
- $color: color,
395
+ color: color,
396
396
  lineHeight: 28,
397
- $fontSize: 24,
398
- $fontWeight: fontWeight,
399
- $fontStyle: fontStyle
397
+ fontSize: 24,
398
+ fontWeight: fontWeight,
399
+ fontStyle: fontStyle
400
400
  }, children);
401
401
  };
402
402
 
@@ -422,11 +422,11 @@ var ComponentL = function ComponentL(_ref15) {
422
422
  var fontStyle = componentFontStyle(textStyle);
423
423
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
424
424
  className: className,
425
- $color: color,
425
+ color: color,
426
426
  lineHeight: 24,
427
- $fontSize: 20,
428
- $fontWeight: fontWeight,
429
- $fontStyle: fontStyle
427
+ fontSize: 20,
428
+ fontWeight: fontWeight,
429
+ fontStyle: fontStyle
430
430
  }, children);
431
431
  };
432
432
 
@@ -452,11 +452,11 @@ var ComponentM = function ComponentM(_ref16) {
452
452
  var fontStyle = componentFontStyle(textStyle);
453
453
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
454
454
  className: className,
455
- $color: color,
455
+ color: color,
456
456
  lineHeight: 24,
457
- $fontSize: 18,
458
- $fontWeight: fontWeight,
459
- $fontStyle: fontStyle
457
+ fontSize: 18,
458
+ fontWeight: fontWeight,
459
+ fontStyle: fontStyle
460
460
  }, children);
461
461
  };
462
462
 
@@ -482,11 +482,11 @@ var ComponentS = function ComponentS(_ref17) {
482
482
  var fontStyle = componentFontStyle(textStyle);
483
483
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
484
484
  className: className,
485
- $color: color,
485
+ color: color,
486
486
  lineHeight: 20,
487
- $fontSize: 16,
488
- $fontWeight: fontWeight,
489
- $fontStyle: fontStyle
487
+ fontSize: 16,
488
+ fontWeight: fontWeight,
489
+ fontStyle: fontStyle
490
490
  }, children);
491
491
  };
492
492
 
@@ -513,11 +513,11 @@ var ComponentXS = function ComponentXS(_ref18) {
513
513
  var textTransform = componentTextTransformation(textStyle);
514
514
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
515
515
  className: className,
516
- $color: color,
516
+ color: color,
517
517
  lineHeight: 16,
518
- $fontSize: 14,
519
- $fontWeight: fontWeight,
520
- $fontStyle: fontStyle,
518
+ fontSize: 14,
519
+ fontWeight: fontWeight,
520
+ fontStyle: fontStyle,
521
521
  textTransform: textTransform
522
522
  }, children);
523
523
  };
@@ -545,11 +545,11 @@ var ComponentXXS = function ComponentXXS(_ref19) {
545
545
  var textTransform = componentTextTransformation(textStyle);
546
546
  return /*#__PURE__*/_react.default.createElement(TypographyBase, {
547
547
  className: className,
548
- $color: color,
548
+ color: color,
549
549
  lineHeight: 16,
550
- $fontSize: 12,
551
- $fontWeight: fontWeight,
552
- $fontStyle: fontStyle,
550
+ fontSize: 12,
551
+ fontWeight: fontWeight,
552
+ fontStyle: fontStyle,
553
553
  textTransform: textTransform
554
554
  }, children);
555
555
  };