@ornikar/kitt-universal 1.0.0 → 1.0.1

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 (139) hide show
  1. package/package.json +4 -4
  2. package/CHANGELOG.md +0 -8
  3. package/src/.eslintrc.json +0 -19
  4. package/src/Avatar/Avatar.stories.tsx +0 -45
  5. package/src/Avatar/Avatar.tsx +0 -60
  6. package/src/Avatar/__snapshots__/Avatar.stories.tsx.snap +0 -1229
  7. package/src/Button/Button.stories.tsx +0 -301
  8. package/src/Button/Button.tsx +0 -60
  9. package/src/Button/ButtonContainer.tsx +0 -32
  10. package/src/Button/ButtonContent.tsx +0 -133
  11. package/src/Button/__snapshots__/Button.stories.tsx.snap +0 -7483
  12. package/src/Button/useButton.ts +0 -14
  13. package/src/Card/Card.stories.tsx +0 -31
  14. package/src/Card/Card.tsx +0 -25
  15. package/src/Card/__snapshots__/Card.stories.tsx.snap +0 -306
  16. package/src/FullScreenModal/Body.tsx +0 -25
  17. package/src/FullScreenModal/FullScreenModal.stories.tsx +0 -63
  18. package/src/FullScreenModal/FullScreenModal.tsx +0 -21
  19. package/src/FullScreenModal/Header.tsx +0 -129
  20. package/src/FullScreenModal/__snapshots__/FullScreenModal.stories.tsx.snap +0 -771
  21. package/src/Icon/Icon.stories.tsx +0 -59
  22. package/src/Icon/Icon.tsx +0 -37
  23. package/src/Icon/SpinningIcon.tsx +0 -38
  24. package/src/Icon/SpinningIcon.web.module.css +0 -13
  25. package/src/Icon/SpinningIcon.web.module.css.d.ts +0 -6
  26. package/src/Icon/SpinningIcon.web.tsx +0 -11
  27. package/src/Icon/__snapshots__/Icon.stories.tsx.snap +0 -5648
  28. package/src/KittBreakpoints.ts +0 -44
  29. package/src/ListItem/ListItem.stories.tsx +0 -122
  30. package/src/ListItem/ListItem.tsx +0 -61
  31. package/src/ListItem/ListItemContent.tsx +0 -17
  32. package/src/ListItem/ListItemSideContent.tsx +0 -41
  33. package/src/ListItem/__snapshots__/ListItem.stories.tsx.snap +0 -1514
  34. package/src/Loader/LargeLoader.tsx +0 -12
  35. package/src/Loader/LargeLoader.web.module.css +0 -103
  36. package/src/Loader/LargeLoader.web.module.css.d.ts +0 -11
  37. package/src/Loader/LargeLoader.web.test.tsx +0 -10
  38. package/src/Loader/LargeLoader.web.tsx +0 -18
  39. package/src/Loader/Loader.stories.tsx +0 -47
  40. package/src/Loader/Loader.tsx +0 -21
  41. package/src/Loader/Loader.web.test.tsx +0 -20
  42. package/src/Loader/Loader.web.tsx +0 -14
  43. package/src/Loader/__snapshots__/LargeLoader.web.test.tsx.snap +0 -33
  44. package/src/Loader/__snapshots__/Loader.stories.tsx.snap +0 -607
  45. package/src/Loader/__snapshots__/Loader.web.test.tsx.snap +0 -103
  46. package/src/Message/Message.stories.tsx +0 -102
  47. package/src/Message/Message.tsx +0 -114
  48. package/src/Message/__snapshots__/Message.stories.tsx.snap +0 -2776
  49. package/src/Modal/Body.tsx +0 -20
  50. package/src/Modal/Footer.tsx +0 -18
  51. package/src/Modal/Header.tsx +0 -66
  52. package/src/Modal/Modal.stories.tsx +0 -181
  53. package/src/Modal/Modal.tsx +0 -66
  54. package/src/Modal/OnCloseContext.ts +0 -3
  55. package/src/Modal/__snapshots__/Modal.stories.tsx.snap +0 -2960
  56. package/src/Notification/Notification.stories.tsx +0 -102
  57. package/src/Notification/Notification.tsx +0 -21
  58. package/src/Notification/__snapshots__/Notification.stories.tsx.snap +0 -2861
  59. package/src/Overlay/Overlay.tsx +0 -22
  60. package/src/Tag/Tag.stories.tsx +0 -18
  61. package/src/Tag/Tag.tsx +0 -31
  62. package/src/Tag/__snapshots__/Tag.stories.tsx.snap +0 -303
  63. package/src/Tooltip/Tooltip.tsx +0 -17
  64. package/src/__mocks__/react-native-safe-area-context.tsx +0 -26
  65. package/src/forms/InputFeedback/InputFeedback.stories.tsx +0 -17
  66. package/src/forms/InputFeedback/InputFeedback.tsx +0 -28
  67. package/src/forms/InputFeedback/__snapshots__/InputFeedback.stories.tsx.snap +0 -252
  68. package/src/forms/InputField/InputField.stories.tsx +0 -19
  69. package/src/forms/InputField/InputField.tsx +0 -45
  70. package/src/forms/InputField/__snapshots__/InputField.stories.tsx.snap +0 -240
  71. package/src/forms/InputFormState.ts +0 -1
  72. package/src/forms/InputText/InputText.stories.tsx +0 -85
  73. package/src/forms/InputText/InputText.tsx +0 -172
  74. package/src/forms/InputText/__snapshots__/InputText.stories.tsx.snap +0 -4274
  75. package/src/forms/InputText/useInputText.ts +0 -19
  76. package/src/forms/Label/Label.stories.tsx +0 -14
  77. package/src/forms/Label/Label.tsx +0 -17
  78. package/src/forms/Label/__snapshots__/Label.stories.tsx.snap +0 -174
  79. package/src/forms/Radio/Radio.stories.tsx +0 -48
  80. package/src/forms/Radio/Radio.tsx +0 -81
  81. package/src/forms/Radio/__snapshots__/Radio.stories.tsx.snap +0 -967
  82. package/src/forms/TextArea/TextArea.stories.tsx +0 -72
  83. package/src/forms/TextArea/TextArea.tsx +0 -12
  84. package/src/forms/TextArea/__snapshots__/TextArea.stories.tsx.snap +0 -2091
  85. package/src/index.ts +0 -61
  86. package/src/stories/Block.tsx +0 -24
  87. package/src/stories/Flex.tsx +0 -16
  88. package/src/stories/color-tokens.stories.tsx +0 -143
  89. package/src/stories-list.ts +0 -22
  90. package/src/story-components/Section.tsx +0 -56
  91. package/src/story-components/Story.tsx +0 -24
  92. package/src/story-components/StoryDecorator.tsx +0 -8
  93. package/src/story-components/StoryGrid.tsx +0 -80
  94. package/src/story-components/StoryTitle.stories.tsx +0 -12
  95. package/src/story-components/StoryTitle.tsx +0 -69
  96. package/src/story-components/__snapshots__/StoryTitle.stories.tsx.snap +0 -155
  97. package/src/story-components/index.ts +0 -5
  98. package/src/themes/default.ts +0 -34
  99. package/src/themes/late-ocean/avatarLateOceanTheme.ts +0 -12
  100. package/src/themes/late-ocean/buttonLateOceanTheme.ts +0 -37
  101. package/src/themes/late-ocean/cardLateOceanTheme.ts +0 -19
  102. package/src/themes/late-ocean/colorsLateOceanTheme.ts +0 -19
  103. package/src/themes/late-ocean/feedbackMessageLateOceanTheme.ts +0 -10
  104. package/src/themes/late-ocean/formLateOceanTheme.ts +0 -9
  105. package/src/themes/late-ocean/fullScreenModalLateOceanTheme.ts +0 -9
  106. package/src/themes/late-ocean/inputFieldLateOceanTheme.ts +0 -4
  107. package/src/themes/late-ocean/inputLateOceanTheme.ts +0 -55
  108. package/src/themes/late-ocean/listItemLateOceanTheme.ts +0 -8
  109. package/src/themes/late-ocean/radioLateOceanTheme.ts +0 -19
  110. package/src/themes/late-ocean/shadowsLateOceanTheme.ts +0 -3
  111. package/src/themes/late-ocean/tagLateOceanTheme.ts +0 -17
  112. package/src/themes/late-ocean/typographyLateOceanTheme.ts +0 -94
  113. package/src/themes/palettes/lateOceanColorPalette.ts +0 -24
  114. package/src/typings/babel-config.d.ts +0 -6
  115. package/src/typings/metro.d.ts +0 -6
  116. package/src/typography/Typography.stories.tsx +0 -113
  117. package/src/typography/Typography.tsx +0 -165
  118. package/src/typography/TypographyIcon.stories.tsx +0 -31
  119. package/src/typography/TypographyIcon.tsx +0 -35
  120. package/src/typography/TypographyLink.stories.tsx +0 -88
  121. package/src/typography/TypographyLink.tsx +0 -48
  122. package/src/typography/__snapshots__/Typography.stories.tsx.snap +0 -6118
  123. package/src/typography/__snapshots__/TypographyIcon.stories.tsx.snap +0 -334
  124. package/src/typography/__snapshots__/TypographyLink.stories.tsx.snap +0 -10945
  125. package/src/useKittTheme.tsx +0 -12
  126. package/src/utils/storybook/decorators/KittThemeDecorator.tsx +0 -27
  127. package/src/utils/storybook/decorators/SafeAreaProviderDecorator.tsx +0 -11
  128. package/src/utils/storybook/setup-global-decorators.ts +0 -6
  129. package/src/utils/tests/renderWithProvidersUtils.tsx +0 -17
  130. package/src/utils/typeUtils.ts +0 -6
  131. package/src/utils/windowSize/MatchWindowSize.tsx +0 -14
  132. package/src/utils/windowSize/__snapshots__/windowSize.stories.tsx.snap +0 -1485
  133. package/src/utils/windowSize/createWindowSizeHelper.test.ts +0 -11
  134. package/src/utils/windowSize/createWindowSizeHelper.ts +0 -65
  135. package/src/utils/windowSize/useMatchWindowSize.ts +0 -14
  136. package/src/utils/windowSize/useWindowSize.ts +0 -1
  137. package/src/utils/windowSize/windowSize.stories.tsx +0 -115
  138. package/tsconfig.build.json +0 -33
  139. package/tsconfig.json +0 -13
@@ -1,165 +0,0 @@
1
- import type { FC, ReactElement, ReactNode } from 'react';
2
- import React, { createContext, useContext } from 'react';
3
- import type { TextProps } from 'react-native';
4
- import styled from 'styled-components/native';
5
- import type { Except, SetOptional } from 'type-fest';
6
-
7
- type TypographyHeaderType = `header${'1' | '2' | '3' | '4' | '5'}`;
8
- type TypographyBodyType = 'body' | `body-${'large' | 'medium' | 'small' | 'xsmall'}`;
9
- type TypographyType = TypographyHeaderType | TypographyBodyType;
10
- type TypographyVariant = 'regular' | 'bold' | 'italic';
11
- export type TypographyColor =
12
- | 'black'
13
- | 'black-light'
14
- | 'white'
15
- | 'white-light'
16
- | 'grey'
17
- | 'grey-light'
18
- | 'primary'
19
- | 'primary-light'
20
- | 'accent'
21
- | 'success'
22
- | 'danger';
23
-
24
- const TypographyTypeContext = createContext<TypographyType | undefined>(undefined);
25
- const TypographyColorContext = createContext<TypographyColor>('black');
26
-
27
- export function useTypographyColor(): TypographyColor {
28
- return useContext(TypographyColorContext);
29
- }
30
-
31
- interface StyledTypographyProps {
32
- isHeader: boolean;
33
- type?: TypographyType;
34
- variant: TypographyVariant;
35
- color?: TypographyColor;
36
- }
37
-
38
- const StyledTypography = styled.Text<StyledTypographyProps>`
39
- /* font */
40
- ${({ theme, isHeader, type, variant }) => {
41
- const { headers, bodies } = theme.kitt.typography.types;
42
-
43
- return `
44
- /* type */
45
- ${
46
- !type
47
- ? ''
48
- : `
49
- font-family: ${isHeader ? headers.fontFamily[variant] : bodies.fontFamily[variant]};
50
- font-size: ${
51
- isHeader
52
- ? headers.configs[type as TypographyHeaderType].baseAndSmall.fontSize
53
- : bodies.configs[type as TypographyBodyType].baseAndSmall.fontSize
54
- };
55
- line-height: ${
56
- isHeader
57
- ? headers.configs[type as TypographyHeaderType].baseAndSmall.lineHeight
58
- : bodies.configs[type as TypographyBodyType].baseAndSmall.lineHeight
59
- };
60
- `
61
- }
62
-
63
- /* variant */
64
- font-weight: ${isHeader ? headers.fontWeight : bodies.fontWeight[variant]};
65
- font-style: ${isHeader ? headers.fontStyle : bodies.fontStyle[variant]};
66
- `;
67
- }}
68
-
69
- /* color */
70
- ${({ theme, color }) =>
71
- !color
72
- ? ''
73
- : `
74
- color: ${theme.kitt.typography.colors[color]};
75
- text-decoration-color: ${theme.kitt.typography.colors[color]};
76
- `}
77
- `;
78
-
79
- export interface TypographyProps extends Except<TextProps, 'accessibilityRole'> {
80
- // Find mapping for web here: https://www.w3.org/TR/html-aria/
81
- accessibilityRole: NonNullable<TextProps['accessibilityRole']> | null;
82
- /** base type. Inherited from parent Typography if not specified */
83
- base?: TypographyType;
84
- small?: TypographyType;
85
- medium?: TypographyType;
86
- large?: TypographyType;
87
- /** Default to regular for bodies and bold of headers. Is not inherited. */
88
- variant?: TypographyVariant;
89
- /** Inherited from parent Typography if not specified, or black if no Typography parent found. */
90
- color?: TypographyColor;
91
- children: ReactNode;
92
- }
93
- export type TypographyPropsWithoutRole = Except<TypographyProps, 'accessibilityRole'>;
94
-
95
- const isTypeHeader = (type: TypographyType): boolean => type.startsWith('header');
96
- const isTypographyHeader = (base: TypographyType | undefined, typeInContext: TypographyType | undefined): boolean => {
97
- if (base) return isTypeHeader(base);
98
- if (typeInContext) return isTypeHeader(typeInContext);
99
-
100
- throw new Error('You must set a "base" prop or wrap this Typography in one that does.');
101
- };
102
-
103
- export function Typography({
104
- accessibilityRole,
105
- base,
106
- variant,
107
- color,
108
- ...otherProps
109
- }: TypographyProps): ReactElement | null {
110
- const typeInContext = useContext(TypographyTypeContext);
111
- const isHeader = isTypographyHeader(base, typeInContext);
112
- const nonNullableVariant: TypographyVariant = variant ?? (isHeader ? 'bold' : 'regular');
113
- const colorWithDefaultToBlack: TypographyColor | undefined = color ?? (typeInContext ? undefined : 'black');
114
-
115
- const content = base ? (
116
- // use the type and pass the type to the context for children
117
- <TypographyTypeContext.Provider value={base}>
118
- <StyledTypography
119
- color={colorWithDefaultToBlack}
120
- isHeader={isHeader}
121
- type={base}
122
- variant={nonNullableVariant}
123
- {...otherProps}
124
- />
125
- </TypographyTypeContext.Provider>
126
- ) : (
127
- <StyledTypography
128
- color={colorWithDefaultToBlack}
129
- isHeader={isHeader}
130
- variant={nonNullableVariant}
131
- {...otherProps}
132
- />
133
- );
134
-
135
- return color ? <TypographyColorContext.Provider value={color}>{content}</TypographyColorContext.Provider> : content;
136
- }
137
-
138
- export type TypographyTextProps = SetOptional<TypographyProps, 'accessibilityRole'>;
139
- function TypographyText(props: TypographyTextProps): ReactElement {
140
- return <Typography accessibilityRole={null} {...props} />;
141
- }
142
-
143
- function TypographyParagraph(props: TypographyTextProps): ReactElement {
144
- // @ts-expect-error paragraph is not allowed in react-native but exists in react-native-web
145
- return <Typography accessibilityRole="paragraph" {...props} />;
146
- }
147
-
148
- export type TypographyHeadingProps = TypographyPropsWithoutRole;
149
-
150
- const createHeading = (level: string): FC<TypographyHeadingProps> => {
151
- // https://github.com/necolas/react-native-web/issues/401
152
- function TypographyHeading(props: TypographyHeadingProps): ReactElement {
153
- return <Typography accessibilityRole="header" {...props} aria-level={level} />;
154
- }
155
- TypographyHeading.displayName = `TypographyHeading${level}`;
156
- return TypographyHeading;
157
- };
158
-
159
- Typography.Text = TypographyText;
160
- Typography.Paragraph = TypographyParagraph;
161
- Typography.h1 = createHeading('1');
162
- Typography.h2 = createHeading('2');
163
- Typography.h3 = createHeading('3');
164
- Typography.h4 = createHeading('4');
165
- Typography.h5 = createHeading('5');
@@ -1,31 +0,0 @@
1
- import { storiesOf } from '@storybook/react-native';
2
- import { AlertCircleIcon } from '@ornikar/kitt-icons';
3
- import { Section, Story } from '@ornikar/kitt-universal';
4
- import React from 'react';
5
- import { Typography } from './Typography';
6
- import { TypographyIcon } from './TypographyIcon';
7
-
8
- storiesOf('kitt-universal/Typography', module).add('Icon', () => (
9
- <Story title="Icons">
10
- <Section.DemoSection>
11
- <TypographyIcon color="black" icon={<AlertCircleIcon />} />
12
- </Section.DemoSection>
13
-
14
- <Section title="Icons inside text">
15
- <Typography.Text base="body-large" color="black">
16
- <TypographyIcon icon={<AlertCircleIcon />} /> The future is in our{' '}
17
- <Typography.Text color="primary">
18
- hands <TypographyIcon icon={<AlertCircleIcon />} />
19
- </Typography.Text>{' '}
20
- to shape.
21
- </Typography.Text>
22
- <Typography.Text base="header1" color="black">
23
- <TypographyIcon icon={<AlertCircleIcon />} /> The future is in our{' '}
24
- <Typography.Text color="primary">
25
- hands <TypographyIcon icon={<AlertCircleIcon />} />
26
- </Typography.Text>{' '}
27
- to shape.
28
- </Typography.Text>
29
- </Section>
30
- </Story>
31
- ));
@@ -1,35 +0,0 @@
1
- import type { ReactElement } from 'react';
2
- import React from 'react';
3
- import { useTheme } from 'styled-components/native';
4
- import type { Except } from 'type-fest';
5
- import type { IconProps } from '../Icon/Icon';
6
- import { Icon } from '../Icon/Icon';
7
- import type { SetNonNullable } from '../utils/typeUtils';
8
- import type { TypographyProps } from './Typography';
9
- import { useTypographyColor } from './Typography';
10
-
11
- export interface TypographyIconProps extends Except<IconProps, 'color'> {
12
- color?: TypographyProps['color'];
13
- }
14
-
15
- function TypographyIconInheritColor(props: TypographyIconProps): ReactElement {
16
- const color = useTypographyColor();
17
- const theme = useTheme();
18
- return <Icon {...props} color={theme.kitt.typography.colors[color]} />;
19
- }
20
-
21
- function TypographyIconSpecifiedColor({
22
- color,
23
- ...otherProps
24
- }: SetNonNullable<TypographyIconProps, 'color'>): ReactElement {
25
- const theme = useTheme();
26
- return <Icon {...otherProps} color={theme.kitt.typography.colors[color]} />;
27
- }
28
-
29
- export function TypographyIcon({ color, ...otherProps }: TypographyIconProps): ReactElement {
30
- if (color) {
31
- return <TypographyIconSpecifiedColor color={color} {...otherProps} />;
32
- }
33
-
34
- return <TypographyIconInheritColor {...otherProps} />;
35
- }
@@ -1,88 +0,0 @@
1
- import { action } from '@storybook/addon-actions';
2
- import { storiesOf } from '@storybook/react-native';
3
- import { Story, StoryGrid, StoryTitle } from '@ornikar/kitt-universal';
4
- import React from 'react';
5
- import styled from 'styled-components/native';
6
- import type { BlockProps } from '../stories/Block';
7
- import { BlockWithPadding } from '../stories/Block';
8
- import type { TypographyProps } from './Typography';
9
- import { Typography } from './Typography';
10
- import { TypographyLink } from './TypographyLink';
11
-
12
- const groups: {
13
- background: BlockProps['color'];
14
- colors: [TypographyProps['color'], TypographyProps['color']];
15
- }[] = [
16
- { background: 'transparent', colors: ['black', 'black-light'] },
17
- { background: 'dark', colors: ['white', 'white-light'] },
18
- ];
19
-
20
- const variants: NonNullable<TypographyProps['variant']>[] = ['bold', 'regular', 'italic'];
21
- const typographyTypes: TypographyProps['base'][] = ['body-large', 'body-medium', 'body', 'body-small', 'body-xsmall'];
22
-
23
- const ucFirst = (string: string): string => string[0].toUpperCase() + string.slice(1);
24
- const formatColorName = (colorName = 'black'): string => colorName.split('-').map(ucFirst).join('\u00A0');
25
-
26
- const ViewWithMarginBottom = styled.View`
27
- overflow: hidden;
28
- margin-bottom: 10px;
29
- `;
30
-
31
- storiesOf('kitt-universal/Typography', module).add('Link', () => (
32
- <Story title="Link">
33
- {groups.map(({ background, colors }, index) => (
34
- <BlockWithPadding
35
- /* eslint-disable-next-line react/no-array-index-key */
36
- key={index}
37
- color={background}
38
- >
39
- <StoryGrid.Row breakpoint="medium">
40
- {colors.filter(Boolean).map((color) =>
41
- variants.map((variant) => (
42
- <StoryGrid.Col key={variant}>
43
- <StoryTitle.Level2 color={color}>
44
- {formatColorName(color)} {ucFirst(variant)}
45
- </StoryTitle.Level2>
46
-
47
- {typographyTypes.map((base) => {
48
- return (
49
- <ViewWithMarginBottom key={base}>
50
- {[false, true].map((noUnderline) => (
51
- <Typography.Paragraph
52
- key={noUnderline ? 'no-underline' : 'underline'}
53
- variant={variant}
54
- base={base}
55
- color={color}
56
- >
57
- This is a paragraph and inside it{' '}
58
- <TypographyLink
59
- base={base}
60
- noUnderline={noUnderline}
61
- href="#"
62
- onPress={action('Link pressed')}
63
- >
64
- there is a link
65
- </TypographyLink>{' '}
66
- that leads home.{' '}
67
- <TypographyLink
68
- noUnderline={noUnderline}
69
- variant="bold"
70
- href="#"
71
- onPress={action('Link pressed')}
72
- >
73
- Here a bold link
74
- </TypographyLink>
75
- .
76
- </Typography.Paragraph>
77
- ))}
78
- </ViewWithMarginBottom>
79
- );
80
- })}
81
- </StoryGrid.Col>
82
- )),
83
- )}
84
- </StoryGrid.Row>
85
- </BlockWithPadding>
86
- ))}
87
- </Story>
88
- ));
@@ -1,48 +0,0 @@
1
- import type { ReactElement } from 'react';
2
- import React from 'react';
3
- import { Platform } from 'react-native';
4
- import styled from 'styled-components/native';
5
- import type { SetRequired } from 'type-fest';
6
- import type { TypographyProps, TypographyPropsWithoutRole } from './Typography';
7
- import { Typography } from './Typography';
8
-
9
- interface StyledTypographyLinkProps extends TypographyPropsWithoutRole {
10
- disabled?: boolean;
11
- noUnderline?: boolean;
12
- }
13
-
14
- const StyledLink = styled(Typography).withConfig({
15
- shouldForwardProp: (prop, defaultValidatorFn) => !['disabled', 'noUnderline'].includes(prop),
16
- })<TypographyLinkProps & TypographyProps>`
17
- text-decoration: ${({ noUnderline }) => (noUnderline ? 'none' : 'underline')};
18
- ${({ disabled }) =>
19
- Platform.OS === 'web'
20
- ? `
21
- text-decoration-color: inherit;
22
- transition: color 0.2s ease-in-out;
23
- cursor: ${disabled ? 'not-allowed' : 'pointer'};
24
- `
25
- : null};
26
- margin: 0;
27
- `;
28
-
29
- export interface TypographyLinkProps extends SetRequired<StyledTypographyLinkProps, 'onPress'> {
30
- href?: string;
31
- }
32
-
33
- export function TypographyLink({
34
- disabled,
35
- noUnderline,
36
- variant = 'bold',
37
- ...otherProps
38
- }: TypographyLinkProps): ReactElement {
39
- return (
40
- <StyledLink
41
- disabled={disabled}
42
- noUnderline={noUnderline}
43
- variant={variant}
44
- accessibilityRole="link"
45
- {...otherProps}
46
- />
47
- );
48
- }