@automattic/vip-design-system 2.10.0 → 2.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/babel.config.js +23 -19
- package/build/declaration.d.js +0 -1
- package/build/system/Accordion/Accordion.js +28 -33
- package/build/system/Accordion/Accordion.stories.js +34 -35
- package/build/system/Accordion/Accordion.test.js +35 -34
- package/build/system/Accordion/index.js +5 -8
- package/build/system/Avatar/Avatar.js +13 -17
- package/build/system/Avatar/Avatar.stories.js +10 -12
- package/build/system/Avatar/Avatar.test.js +15 -14
- package/build/system/Avatar/index.js +4 -6
- package/build/system/Badge/Badge.js +9 -14
- package/build/system/Badge/Badge.stories.js +23 -23
- package/build/system/Badge/Badge.test.js +15 -14
- package/build/system/Badge/index.js +4 -6
- package/build/system/Box/Box.js +9 -13
- package/build/system/Box/Box.stories.js +5 -8
- package/build/system/Breadcrumbs/Breadcrumbs.js +34 -38
- package/build/system/Breadcrumbs/Breadcrumbs.stories.js +18 -21
- package/build/system/Breadcrumbs/Breadcrumbs.test.js +28 -30
- package/build/system/Breadcrumbs/styles.js +5 -9
- package/build/system/Button/Button.js +11 -17
- package/build/system/Button/Button.stories.js +34 -33
- package/build/system/Button/Button.test.js +17 -16
- package/build/system/Button/ButtonSubmit.js +12 -16
- package/build/system/Button/ButtonSubmit.stories.js +12 -16
- package/build/system/Button/ButtonSubmit.test.js +15 -14
- package/build/system/Button/index.js +5 -8
- package/build/system/Card/Card.js +12 -14
- package/build/system/Card/Card.stories.js +21 -24
- package/build/system/Card/Card.test.js +19 -18
- package/build/system/Card/index.js +4 -6
- package/build/system/Code/Code.js +19 -23
- package/build/system/Code/Code.stories.js +16 -18
- package/build/system/Code/Code.test.js +20 -19
- package/build/system/Code/index.js +4 -6
- package/build/system/Drawer/Drawer.js +25 -30
- package/build/system/Drawer/Drawer.stories.js +38 -39
- package/build/system/Drawer/Drawer.test.js +19 -18
- package/build/system/Drawer/styles.js +9 -11
- package/build/system/Dropdown/Dropdown.js +23 -26
- package/build/system/Dropdown/Dropdown.test.js +16 -18
- package/build/system/Dropdown/DropdownContent.js +14 -20
- package/build/system/Dropdown/DropdownItem.js +19 -25
- package/build/system/Dropdown/DropdownLabel.js +10 -16
- package/build/system/Dropdown/DropdownSeparator.js +10 -16
- package/build/system/Dropdown/index.js +20 -23
- package/build/system/FilterDropdown/FilterDropdown.js +23 -29
- package/build/system/FilterDropdown/FilterDropdown.stories.js +9 -11
- package/build/system/FilterDropdown/FilterDropdown.test.js +7 -10
- package/build/system/Flex/Flex.js +7 -10
- package/build/system/Flex/Flex.stories.js +6 -10
- package/build/system/Flex/index.js +4 -6
- package/build/system/Footer/Footer.d.ts +33 -0
- package/build/system/Footer/Footer.js +82 -0
- package/build/system/Footer/Footer.stories.d.ts +41 -0
- package/build/system/Footer/Footer.stories.js +53 -0
- package/build/system/Footer/Footer.test.d.ts +1 -0
- package/build/system/Footer/Footer.test.js +36 -0
- package/build/system/Form/Checkbox/Checkbox.js +14 -18
- package/build/system/Form/Checkbox/Checkbox.stories.js +47 -48
- package/build/system/Form/Checkbox/Checkbox.test.js +23 -21
- package/build/system/Form/Checkbox/styles.js +7 -10
- package/build/system/Form/Input.js +19 -18
- package/build/system/Form/Input.stories.js +16 -18
- package/build/system/Form/Input.styles.js +5 -9
- package/build/system/Form/Label.js +14 -16
- package/build/system/Form/Label.stories.js +15 -15
- package/build/system/Form/Radio/Radio.js +13 -18
- package/build/system/Form/Radio/Radio.stories.js +43 -43
- package/build/system/Form/Radio/Radio.test.js +19 -18
- package/build/system/Form/Radio/RadioOption.js +22 -23
- package/build/system/Form/Radio/styles.js +7 -10
- package/build/system/Form/RadioGroupChip.js +26 -29
- package/build/system/Form/RadioGroupChip.stories.js +12 -15
- package/build/system/Form/RadioGroupChip.test.js +12 -11
- package/build/system/Form/RequiredLabel.js +3 -7
- package/build/system/Form/Toggle.js +11 -16
- package/build/system/Form/Toggle.stories.js +25 -27
- package/build/system/Form/Toggle.test.js +12 -11
- package/build/system/Form/Validation.js +10 -12
- package/build/system/Form/index.d.ts +2 -1
- package/build/system/Form/index.js +2 -0
- package/build/system/Grid/Grid.js +7 -10
- package/build/system/Grid/Grid.stories.js +6 -10
- package/build/system/Grid/index.js +4 -6
- package/build/system/Heading/Heading.js +9 -14
- package/build/system/Heading/Heading.stories.js +13 -16
- package/build/system/Hr/Hr.js +3 -7
- package/build/system/Hr/Hr.stories.js +10 -11
- package/build/system/Hr/Hr.test.js +14 -14
- package/build/system/Link/Link.js +11 -14
- package/build/system/Link/Link.stories.js +11 -14
- package/build/system/Link/index.js +4 -6
- package/build/system/LinkExternal/LinkExternal.d.ts +23 -3
- package/build/system/LinkExternal/LinkExternal.js +17 -23
- package/build/system/LinkExternal/LinkExternal.stories.d.ts +1 -8
- package/build/system/LinkExternal/LinkExternal.stories.js +4 -9
- package/build/system/LinkExternal/LinkExternal.test.js +14 -15
- package/build/system/MobileMenu/MobileMenu.js +24 -29
- package/build/system/MobileMenu/MobileMenu.stories.js +66 -67
- package/build/system/MobileMenu/MobileMenu.test.js +21 -22
- package/build/system/Nav/Nav.js +26 -32
- package/build/system/Nav/Nav.stories.js +97 -99
- package/build/system/Nav/Nav.test.js +32 -28
- package/build/system/Nav/NavItem.js +40 -45
- package/build/system/Nav/NavItemGroup.js +34 -39
- package/build/system/Nav/NavItemGroup.test.js +26 -23
- package/build/system/Nav/styles/variants/breadcrumbs.js +4 -7
- package/build/system/Nav/styles/variants/menu.js +8 -12
- package/build/system/Nav/styles/variants/menugroup.js +7 -11
- package/build/system/Nav/styles/variants/primary.js +4 -8
- package/build/system/Nav/styles/variants/tabs.js +3 -7
- package/build/system/Nav/styles/variants/toolbar.js +5 -8
- package/build/system/Nav/styles.js +26 -29
- package/build/system/NewDialog/DialogClose.js +14 -18
- package/build/system/NewDialog/DialogClose.test.js +11 -14
- package/build/system/NewDialog/DialogDescription.js +9 -15
- package/build/system/NewDialog/DialogOverlay.js +11 -13
- package/build/system/NewDialog/DialogTitle.js +7 -15
- package/build/system/NewDialog/NewDialog.js +24 -29
- package/build/system/NewDialog/index.js +7 -11
- package/build/system/NewDialog/styles.js +1 -5
- package/build/system/NewForm/Fieldset.js +13 -17
- package/build/system/NewForm/Form.js +8 -13
- package/build/system/NewForm/FormAutocomplete.js +2 -2
- package/build/system/NewForm/Legend.js +11 -15
- package/build/system/Notice/Notice.js +22 -25
- package/build/system/Notice/Notice.stories.js +41 -43
- package/build/system/Notice/index.js +5 -5
- package/build/system/Page/Page.js +4 -8
- package/build/system/Page/Page.test.js +14 -14
- package/build/system/Progress/Progress.js +21 -24
- package/build/system/Progress/Progress.stories.js +9 -15
- package/build/system/Progress/Progress.test.js +14 -13
- package/build/system/Progress/index.js +4 -6
- package/build/system/ScreenReaderText/ScreenReaderText.js +9 -9
- package/build/system/Spinner/Spinner.js +9 -14
- package/build/system/Spinner/Spinner.stories.js +6 -10
- package/build/system/Spinner/Spinner.test.js +14 -13
- package/build/system/Spinner/index.js +1 -6
- package/build/system/Table/Table.js +20 -22
- package/build/system/Table/Table.stories.js +29 -30
- package/build/system/Table/TableCell.js +9 -11
- package/build/system/Table/TableRow.js +10 -11
- package/build/system/Table/index.js +6 -10
- package/build/system/Text/Text.js +9 -14
- package/build/system/Text/Text.stories.js +24 -25
- package/build/system/Text/index.js +4 -6
- package/build/system/Toolbar/Logo.js +11 -15
- package/build/system/Toolbar/Toolbar.js +12 -17
- package/build/system/Toolbar/Toolbar.stories.js +47 -50
- package/build/system/Toolbar/Toolbar.test.js +26 -24
- package/build/system/Toolbar/ToolbarUtilNav.js +9 -16
- package/build/system/Toolbar/index.js +10 -15
- package/build/system/Tooltip/Tooltip.js +9 -14
- package/build/system/Tooltip/Tooltip.stories.js +29 -31
- package/build/system/Tooltip/index.js +5 -5
- package/build/system/Wizard/Wizard.js +11 -18
- package/build/system/Wizard/Wizard.stories.js +37 -38
- package/build/system/Wizard/WizardStep.js +26 -32
- package/build/system/Wizard/index.js +6 -7
- package/build/system/assets/a8cLogo.d.ts +2 -0
- package/build/system/assets/a8cLogo.js +39 -0
- package/build/system/index.d.ts +2 -1
- package/build/system/index.js +2 -0
- package/build/system/theme/breakpoints.js +1 -5
- package/build/system/utils/stories/CustomLink.js +7 -13
- package/package.json +1 -1
- package/src/system/Footer/Footer.stories.tsx +46 -0
- package/src/system/Footer/Footer.test.tsx +40 -0
- package/src/system/Footer/Footer.tsx +120 -0
- package/src/system/Form/index.js +2 -0
- package/src/system/LinkExternal/LinkExternal.tsx +27 -8
- package/src/system/NewForm/FormAutocomplete.js +2 -2
- package/src/system/assets/a8cLogo.tsx +30 -0
- package/src/system/index.js +2 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { StoryObj } from '@storybook/react';
|
|
5
|
+
|
|
6
|
+
import { Footer } from '../Footer/Footer';
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
title: 'Navigation/Footer',
|
|
10
|
+
component: Footer,
|
|
11
|
+
argTypes: {
|
|
12
|
+
hasTrailingSeparator: { control: { type: 'boolean' } },
|
|
13
|
+
links: { control: { type: 'array' } },
|
|
14
|
+
customLogo: { control: { type: null } },
|
|
15
|
+
maxWidth: { control: { type: 'text' } },
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
type Story = StoryObj< typeof Footer >;
|
|
20
|
+
|
|
21
|
+
export const Default: Story = {
|
|
22
|
+
render: () => (
|
|
23
|
+
<Footer
|
|
24
|
+
links={ [
|
|
25
|
+
{
|
|
26
|
+
children: 'About',
|
|
27
|
+
href: 'https://wpvip.com/',
|
|
28
|
+
screenReaderText: 'WordPress VIP. Learn more about us',
|
|
29
|
+
showExternalIcon: false,
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
children: 'Docs',
|
|
33
|
+
href: 'https://docs.wpvip.com/',
|
|
34
|
+
screenReaderText: 'our public documentation on our platform and tools',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
children: 'Status',
|
|
38
|
+
href: 'https://wpvipstatus.com',
|
|
39
|
+
screenReaderText:
|
|
40
|
+
". See real-time availability and performance monitoring for WordPress VIP's services",
|
|
41
|
+
newTab: true,
|
|
42
|
+
},
|
|
43
|
+
] }
|
|
44
|
+
/>
|
|
45
|
+
),
|
|
46
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import '@testing-library/jest-dom';
|
|
2
|
+
import { render, screen } from '@testing-library/react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Internal dependencies
|
|
6
|
+
*/
|
|
7
|
+
import { Footer } from './Footer';
|
|
8
|
+
|
|
9
|
+
const links = [
|
|
10
|
+
{
|
|
11
|
+
children: 'Link1',
|
|
12
|
+
href: 'https://wpvip.com/',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
children: 'Link2',
|
|
16
|
+
href: 'https://docs.wpvip.com/',
|
|
17
|
+
},
|
|
18
|
+
];
|
|
19
|
+
|
|
20
|
+
describe( '<Footer />', () => {
|
|
21
|
+
it( 'should accept LinkExternal props for Footer links', () => {
|
|
22
|
+
const moreLinks = [
|
|
23
|
+
{
|
|
24
|
+
children: 'Link3',
|
|
25
|
+
href: 'https://wpvipstatus.com',
|
|
26
|
+
newTab: true,
|
|
27
|
+
},
|
|
28
|
+
];
|
|
29
|
+
|
|
30
|
+
const combinedLinks = [ ...links, ...moreLinks ];
|
|
31
|
+
|
|
32
|
+
render( <Footer links={ combinedLinks } /> );
|
|
33
|
+
|
|
34
|
+
const link1 = screen.getByRole( 'link', { name: /link1/i } );
|
|
35
|
+
const link3 = screen.getByRole( 'link', { name: /link3/i } );
|
|
36
|
+
|
|
37
|
+
expect( link1 ).toHaveAttribute( 'target', '_self' );
|
|
38
|
+
expect( link3 ).toHaveAttribute( 'target', '_blank' );
|
|
39
|
+
} );
|
|
40
|
+
} );
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/** @jsxImportSource theme-ui */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Internal dependencies
|
|
5
|
+
*/
|
|
6
|
+
import { Box } from '../Box/Box';
|
|
7
|
+
import { LinkExternal, LinkExternalProps } from '../LinkExternal/LinkExternal';
|
|
8
|
+
import { navItemStyles } from '../Nav/styles';
|
|
9
|
+
import { a8cLogo } from '../assets/a8cLogo';
|
|
10
|
+
|
|
11
|
+
type FooterProps = {
|
|
12
|
+
/**
|
|
13
|
+
* Add an additional separator after the last element.
|
|
14
|
+
*
|
|
15
|
+
* @default false
|
|
16
|
+
**/
|
|
17
|
+
hasTrailingSeparator?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Option to show underlines for links.
|
|
20
|
+
*
|
|
21
|
+
* @default false
|
|
22
|
+
**/
|
|
23
|
+
hasUnderlinedLinks?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* An array of LinkExternal components as objects.
|
|
26
|
+
**/
|
|
27
|
+
links: LinkExternalProps[];
|
|
28
|
+
/**
|
|
29
|
+
* A logo to display in the right footer area. Displays Automattic logo by default.
|
|
30
|
+
**/
|
|
31
|
+
customLogo?: React.ReactNode;
|
|
32
|
+
/**
|
|
33
|
+
* The maxiumum width of the footer.
|
|
34
|
+
*
|
|
35
|
+
* @default 100%
|
|
36
|
+
**/
|
|
37
|
+
maxWidth?: string | number;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export const Footer = ( {
|
|
41
|
+
hasTrailingSeparator = false,
|
|
42
|
+
hasUnderlinedLinks = false,
|
|
43
|
+
links,
|
|
44
|
+
customLogo,
|
|
45
|
+
maxWidth = '100%',
|
|
46
|
+
}: FooterProps ) => {
|
|
47
|
+
const FooterLinks = ( { children, ...props } ) => {
|
|
48
|
+
return <li { ...props }>{ children }</li>;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
const trailingSeparator = {
|
|
52
|
+
'&:last-of-type::after': {
|
|
53
|
+
display: 'inline-block',
|
|
54
|
+
margin: '0 0.45em 0 1em ',
|
|
55
|
+
transform: 'rotate(15deg)',
|
|
56
|
+
borderRightColor: 'text',
|
|
57
|
+
borderRightStyle: 'solid',
|
|
58
|
+
borderRightWidth: '0.1em',
|
|
59
|
+
height: '0.8em',
|
|
60
|
+
content: '""',
|
|
61
|
+
},
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
return (
|
|
65
|
+
<footer
|
|
66
|
+
sx={ {
|
|
67
|
+
display: 'flex',
|
|
68
|
+
flexDirection: [ 'column', 'column', 'row' ],
|
|
69
|
+
justifyContent: 'space-between',
|
|
70
|
+
gap: 4,
|
|
71
|
+
fontSize: 1,
|
|
72
|
+
mt: 2,
|
|
73
|
+
maxWidth,
|
|
74
|
+
textAlign: 'left',
|
|
75
|
+
} }
|
|
76
|
+
>
|
|
77
|
+
{ links?.length && (
|
|
78
|
+
<ul
|
|
79
|
+
sx={ {
|
|
80
|
+
display: 'flex',
|
|
81
|
+
alignSelf: 'center',
|
|
82
|
+
gap: 2,
|
|
83
|
+
listStyle: 'none',
|
|
84
|
+
paddingInlineStart: 0,
|
|
85
|
+
} }
|
|
86
|
+
>
|
|
87
|
+
{ links.map( ( linkProps, index ) => {
|
|
88
|
+
return (
|
|
89
|
+
<FooterLinks
|
|
90
|
+
key={ `footer-link_${ index }` }
|
|
91
|
+
sx={
|
|
92
|
+
hasTrailingSeparator
|
|
93
|
+
? {
|
|
94
|
+
...navItemStyles( 'horizontal', 'breadcrumbs' ),
|
|
95
|
+
...trailingSeparator,
|
|
96
|
+
}
|
|
97
|
+
: { ...navItemStyles( 'horizontal', 'breadcrumbs' ) }
|
|
98
|
+
}
|
|
99
|
+
>
|
|
100
|
+
<LinkExternal
|
|
101
|
+
{ ...linkProps }
|
|
102
|
+
sx={ { ml: 1, textDecoration: hasUnderlinedLinks ? undefined : 'none' } }
|
|
103
|
+
/>
|
|
104
|
+
</FooterLinks>
|
|
105
|
+
);
|
|
106
|
+
} ) }
|
|
107
|
+
</ul>
|
|
108
|
+
) }
|
|
109
|
+
<Box
|
|
110
|
+
sx={ {
|
|
111
|
+
backgroundColor: [ 'layer.1', 'layer.1', 'transparent' ],
|
|
112
|
+
py: 2,
|
|
113
|
+
textAlign: [ 'center', 'center', 'right' ],
|
|
114
|
+
} }
|
|
115
|
+
>
|
|
116
|
+
{ customLogo ? customLogo : a8cLogo }
|
|
117
|
+
</Box>
|
|
118
|
+
</footer>
|
|
119
|
+
);
|
|
120
|
+
};
|
package/src/system/Form/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import { InputWithCopyButton } from './InputWithCopyButton';
|
|
|
7
7
|
import { Label } from './Label';
|
|
8
8
|
import { Radio } from './Radio/Radio';
|
|
9
9
|
import { RadioBoxGroup } from './RadioBoxGroup';
|
|
10
|
+
import { RadioGroupChip } from './RadioGroupChip';
|
|
10
11
|
import { Textarea } from './Textarea';
|
|
11
12
|
import { Toggle } from './Toggle';
|
|
12
13
|
import { ToggleRow } from './ToggleRow';
|
|
@@ -18,6 +19,7 @@ export {
|
|
|
18
19
|
Label,
|
|
19
20
|
Radio,
|
|
20
21
|
RadioBoxGroup,
|
|
22
|
+
RadioGroupChip,
|
|
21
23
|
Textarea,
|
|
22
24
|
Toggle,
|
|
23
25
|
ToggleRow,
|
|
@@ -9,32 +9,51 @@ import { translate } from 'i18n-calypso';
|
|
|
9
9
|
import { Link } from '../Link';
|
|
10
10
|
import ScreenReaderText from '../ScreenReaderText';
|
|
11
11
|
|
|
12
|
+
import type { LinkProps } from '../Link/Link';
|
|
13
|
+
|
|
12
14
|
// Screen reader announcements
|
|
13
|
-
const DEFAULT_EXTERNAL_LINK_TEXT = translate( ', external link' );
|
|
14
|
-
const NEW_TAB_TEXT = translate( ', opens in a new tab' );
|
|
15
|
+
const DEFAULT_EXTERNAL_LINK_TEXT = translate( ', external link' );
|
|
16
|
+
const NEW_TAB_TEXT = translate( ', opens in a new tab' );
|
|
15
17
|
|
|
16
|
-
type
|
|
18
|
+
export type LinkExternalProps = LinkProps & {
|
|
19
|
+
/**
|
|
20
|
+
* Element to be linked.
|
|
21
|
+
**/
|
|
17
22
|
children?: React.ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Additional text to include after `defaultScreenReaderText` if enabled.
|
|
25
|
+
**/
|
|
18
26
|
screenReaderText?: string | number;
|
|
19
|
-
|
|
27
|
+
/**
|
|
28
|
+
* Optional arrow icon.
|
|
29
|
+
*
|
|
30
|
+
* @default true
|
|
31
|
+
**/
|
|
20
32
|
showExternalIcon?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Include default text which reads as: `link, <link text>, external link`
|
|
35
|
+
* or if `newTab` is `true`, reads as: `link, <link text>, external link, opens in a new tab`
|
|
36
|
+
**/
|
|
21
37
|
defaultScreenReaderText?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* If link should open in a new tab.
|
|
40
|
+
*
|
|
41
|
+
* @default false
|
|
42
|
+
**/
|
|
22
43
|
newTab?: boolean;
|
|
23
44
|
};
|
|
24
45
|
|
|
25
|
-
export const LinkExternal
|
|
46
|
+
export const LinkExternal = ( {
|
|
26
47
|
children = null,
|
|
27
48
|
screenReaderText = '',
|
|
28
|
-
href,
|
|
29
49
|
showExternalIcon = true,
|
|
30
50
|
newTab = false,
|
|
31
51
|
...rest
|
|
32
|
-
} ) => (
|
|
52
|
+
}: LinkExternalProps ) => (
|
|
33
53
|
<Link
|
|
34
54
|
as="a"
|
|
35
55
|
target={ newTab ? '_blank' : '_self' }
|
|
36
56
|
rel={ newTab ? 'noopener noreferrer' : '' }
|
|
37
|
-
href={ href }
|
|
38
57
|
{ ...rest }
|
|
39
58
|
>
|
|
40
59
|
{ children }
|
|
@@ -91,7 +91,7 @@ const searchIconStyles = {
|
|
|
91
91
|
},
|
|
92
92
|
};
|
|
93
93
|
|
|
94
|
-
const DefaultArrow = config => <FormSelectArrow
|
|
94
|
+
const DefaultArrow = config => <FormSelectArrow className={ config.className } />;
|
|
95
95
|
|
|
96
96
|
const FormAutocomplete = React.forwardRef(
|
|
97
97
|
(
|
|
@@ -368,7 +368,7 @@ FormAutocomplete.propTypes = {
|
|
|
368
368
|
getOptionValue: PropTypes.func,
|
|
369
369
|
hasError: PropTypes.bool,
|
|
370
370
|
isInline: PropTypes.bool,
|
|
371
|
-
label: PropTypes.
|
|
371
|
+
label: PropTypes.node,
|
|
372
372
|
loading: PropTypes.bool,
|
|
373
373
|
minLength: PropTypes.number,
|
|
374
374
|
noOptionsMessage: PropTypes.func,
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { translate } from 'i18n-calypso';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Internal dependencies
|
|
8
|
+
*/
|
|
9
|
+
import { LinkExternal } from '../LinkExternal/LinkExternal';
|
|
10
|
+
import { Text } from '../Text';
|
|
11
|
+
|
|
12
|
+
export const a8cLogo = (
|
|
13
|
+
<Text as="span" sx={ { display: 'inline-flex', alignItems: 'center', gap: 2, mb: 0 } }>
|
|
14
|
+
{ translate( 'An' ) }
|
|
15
|
+
<LinkExternal
|
|
16
|
+
href="https://automattic.com"
|
|
17
|
+
showExternalIcon={ false }
|
|
18
|
+
screenReaderText={ translate( 'Automattic' ) }
|
|
19
|
+
>
|
|
20
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 15.4" style={ { minWidth: 100 } }>
|
|
21
|
+
<path
|
|
22
|
+
d="M72.5 15.4c-5.1 0-8.4-3.7-8.4-7.5v-.4c0-3.9 3.3-7.5 8.4-7.5 5.1 0 8.4 3.6 8.4 7.5V8c0 3.8-3.3 7.4-8.4 7.4zm5.7-7.9c0-2.8-2-5.3-5.7-5.3s-5.7 2.5-5.7 5.3v.3c0 2.8 2 5.3 5.7 5.3s5.7-2.5 5.7-5.3v-.3z"
|
|
23
|
+
fill="#3298CB"
|
|
24
|
+
/>
|
|
25
|
+
<path d="M15 14.9l-1.9-3.6H4.7l-1.8 3.6H0L7.8.5H10l7.9 14.4H15zM8.8 3.3l-3.1 6h6.4l-3.3-6zm21.4 12.1c-5.2 0-7.6-2.8-7.6-6.5V.5h2.7V9c0 2.7 1.7 4.2 5.1 4.2 3.4 0 4.8-1.6 4.8-4.2V.5h2.7v8.4c0 3.6-2.3 6.5-7.7 6.5zM52.9 2.8v12.1h-2.7V2.8h-6.3V.5h15.3v2.2h-6.3zM105 14.9V3.5l-.7 1.3-6 10.1H97L91 4.8l-.7-1.3v11.4h-2.6V.5h3.7l5.7 9.9.7 1.2.7-1.2 5.6-9.9h3.7v14.4H105zm23.1 0l-1.9-3.6h-8.4l-1.8 3.6h-3L120.8.5h2.2l7.9 14.4h-2.8zm-6.2-11.6l-3.1 6h6.4l-3.3-6zm19.9-.5v12.1h-2.7V2.8h-6.3V.5h15.3v2.2h-6.3zm19.8 0v12.1h-2.7V2.8h-6.3V.5h15.3v2.2h-6.3zm12.9 12.1v-13c1.1 0 1.5-.6 1.5-1.4h1.1v14.4h-2.6zm23.8-10.3c-1.3-1.2-3.2-2.3-5.8-2.3-3.8 0-6 2.6-6 5.4V8c0 2.7 2.2 5.3 6.2 5.3 2.4 0 4.4-1.1 5.6-2.3l1.6 1.7c-1.6 1.6-4.3 2.9-7.4 2.9-5.4 0-8.7-3.5-8.7-7.4v-.6c0-3.9 3.6-7.6 8.9-7.6 3 0 5.8 1.3 7.3 2.9l-1.7 1.7zM74.3 5c.5.3.6 1 .3 1.5l-2.5 3.8c-.3.5-1 .6-1.5.3s-.6-1-.3-1.5l2.5-3.8c.4-.5 1-.6 1.5-.3z" />
|
|
26
|
+
</svg>
|
|
27
|
+
</LinkExternal>
|
|
28
|
+
{ translate( 'Creation' ) }
|
|
29
|
+
</Text>
|
|
30
|
+
);
|
package/src/system/index.js
CHANGED
|
@@ -31,6 +31,7 @@ import {
|
|
|
31
31
|
Validation,
|
|
32
32
|
Radio,
|
|
33
33
|
RadioBoxGroup,
|
|
34
|
+
RadioGroupChip,
|
|
34
35
|
Textarea,
|
|
35
36
|
Checkbox,
|
|
36
37
|
} from './Form';
|
|
@@ -105,6 +106,7 @@ export {
|
|
|
105
106
|
LinkExternal,
|
|
106
107
|
Radio,
|
|
107
108
|
RadioBoxGroup,
|
|
109
|
+
RadioGroupChip,
|
|
108
110
|
Textarea,
|
|
109
111
|
Progress,
|
|
110
112
|
Text,
|