Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion babel.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ module.exports = {
plugins: [
'@babel/plugin-transform-object-assign',
'@babel/plugin-proposal-class-properties',
'babel-plugin-inline-react-svg',
'babel-plugin-styled-components'
]
};
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
"@babel/plugin-transform-object-assign": "7.2.0",
"@babel/preset-env": "7.2.0",
"@babel/preset-react": "7.0.0",
"@svgr/webpack": "4.1.0",
"@types/react": "16.7.12",
"@zendeskgarden/css-variables": "5.2.1",
"@zendeskgarden/eslint-config": "7.0.9",
Expand All @@ -40,7 +41,6 @@
"babel-eslint": "10.0.1",
"babel-jest": "23.6.0",
"babel-loader": "8.0.4",
"babel-plugin-inline-react-svg": "1.0.1",
"babel-plugin-styled-components": "1.9.2",
"chalk": "2.4.1",
"commander": "2.19.0",
Expand Down Expand Up @@ -89,7 +89,6 @@
"stylelint-config-styled-components": "0.1.1",
"stylelint-order": "2.0.0",
"stylelint-processor-styled-components": "1.5.1",
"svg-react-loader": "0.4.6",
"uglifyjs-webpack-plugin": "2.0.1",
"webpack": "4.26.1",
"webpack-bundle-analyzer": "3.0.3",
Expand Down
4 changes: 2 additions & 2 deletions packages/buttons/src/views/icon-button/IconButton.example.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
```jsx
const SettingsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/settings.svg');
const AttachmentIcon = require('svg-react-loader?name=Attachment!@zendeskgarden/svg-icons/src/14/attachment.svg');
const SettingsIcon = require('@zendeskgarden/svg-icons/src/14/settings.svg').default;
const AttachmentIcon = require('@zendeskgarden/svg-icons/src/14/attachment.svg').default;

<Grid>
<Row>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,7 @@ exports[`ChevronButton renders IconButton with correct default styling 1`] = `
pill={false}
>
<Icon>
<ChevronDownIcon
height="16"
viewBox="0 0 16 16"
width="16"
xmlns="http://www.w3.org/2000/svg"
/>
<MockSVG />
</Icon>
</IconButton>
`;
Expand All @@ -26,12 +21,7 @@ exports[`ChevronButton rotates icon if prop is provided 1`] = `
<Icon
rotated={true}
>
<ChevronDownIcon
height="16"
viewBox="0 0 16 16"
width="16"
xmlns="http://www.w3.org/2000/svg"
/>
<MockSVG />
</Icon>
</IconButton>
`;
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const {
zdSpacingXs,
zdColorGrey300
} = require('@zendeskgarden/css-variables');
const DownIcon = require('svg-react-loader?name=Down!@zendeskgarden/svg-icons/src/16/chevron-down-fill.svg');
const DownIcon = require('@zendeskgarden/svg-icons/src/16/chevron-down-fill.svg').default;

const UpIcon = styled(DownIcon)`
transform: rotate(180deg);
Expand Down
18 changes: 9 additions & 9 deletions packages/chrome/src/views/Chrome.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ you can programmatically trigger navigation with the `onClick` events.

```jsx
const { Toggle, Label } = require('@zendeskgarden/react-toggles/src');
const ConnectIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-connect.svg');
const HomeIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/home-fill.svg');
const ListsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/customer-lists-fill.svg');
const EmailIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/email-fill.svg');
const SettingsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/settings-fill.svg');
const ZendeskIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/zendesk.svg');
const PlusIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/plus.svg');
const MenuTrayIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/menu-tray.svg');
const PersonIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/person.svg');
const ConnectIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-connect.svg').default;
const HomeIcon = require('@zendeskgarden/svg-icons/src/26/home-fill.svg').default;
const ListsIcon = require('@zendeskgarden/svg-icons/src/26/customer-lists-fill.svg').default;
const EmailIcon = require('@zendeskgarden/svg-icons/src/26/email-fill.svg').default;
const SettingsIcon = require('@zendeskgarden/svg-icons/src/26/settings-fill.svg').default;
const ZendeskIcon = require('@zendeskgarden/svg-icons/src/26/zendesk.svg').default;
const PlusIcon = require('@zendeskgarden/svg-icons/src/14/plus.svg').default;
const MenuTrayIcon = require('@zendeskgarden/svg-icons/src/14/menu-tray.svg').default;
const PersonIcon = require('@zendeskgarden/svg-icons/src/14/person.svg').default;

initialState = {
currentNavItem: 'home',
Expand Down
2 changes: 1 addition & 1 deletion packages/chrome/src/views/body/Sidebar.example.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
```jsx
const TalkIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-talk.svg');
const TalkIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-talk.svg').default;

<Chrome style={{ height: 500 }}>
<Body>
Expand Down
8 changes: 4 additions & 4 deletions packages/chrome/src/views/header/Header.example.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
```jsx
const { Toggle, Label } = require('@zendeskgarden/react-toggles/src');
const SupportIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-support.svg');
const HelpIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/support.svg');
const MenuTrayIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/menu-tray.svg');
const PersonIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/person.svg');
const SupportIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-support.svg').default;
const HelpIcon = require('@zendeskgarden/svg-icons/src/14/support.svg').default;
const MenuTrayIcon = require('@zendeskgarden/svg-icons/src/14/menu-tray.svg').default;
const PersonIcon = require('@zendeskgarden/svg-icons/src/14/person.svg').default;

initialState = {
standalone: true
Expand Down
26 changes: 13 additions & 13 deletions packages/chrome/src/views/nav/NavItem.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,19 @@
All product color schemes can be applied with their associated `NavItem` property.

```jsx
const SupportIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-support.svg');
const ChatIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-chat.svg');
const ConnectIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-connect.svg');
const GuideIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-guide.svg');
const TalkIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-talk.svg');
const ExploreIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/relationshape-explore.svg');
const HomeIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/home-fill.svg');
const ListsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/customer-lists-fill.svg');
const EmailIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/email-fill.svg');
const SettingsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/26/settings-fill.svg');
const PlusIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/plus.svg');
const MenuTrayIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/menu-tray.svg');
const PersonIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/person.svg');
const SupportIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-support.svg').default;
const ChatIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-chat.svg').default;
const ConnectIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-connect.svg').default;
const GuideIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-guide.svg').default;
const TalkIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-talk.svg').default;
const ExploreIcon = require('@zendeskgarden/svg-icons/src/26/relationshape-explore.svg').default;
const HomeIcon = require('@zendeskgarden/svg-icons/src/26/home-fill.svg').default;
const ListsIcon = require('@zendeskgarden/svg-icons/src/26/customer-lists-fill.svg').default;
const EmailIcon = require('@zendeskgarden/svg-icons/src/26/email-fill.svg').default;
const SettingsIcon = require('@zendeskgarden/svg-icons/src/26/settings-fill.svg').default;
const PlusIcon = require('@zendeskgarden/svg-icons/src/14/plus.svg').default;
const MenuTrayIcon = require('@zendeskgarden/svg-icons/src/14/menu-tray.svg').default;
const PersonIcon = require('@zendeskgarden/svg-icons/src/14/person.svg').default;

const ProductNav = ({ title, icon, ...other }) => (
<Nav>
Expand Down
4 changes: 2 additions & 2 deletions packages/menus/src/containers/MenuContainer.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ for (let x = 1; x <= 5; x++) {

```jsx
const { Button, Icon } = require('@zendeskgarden/react-buttons/src');
const SettingsIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/settings.svg');
const SettingsIcon = require('@zendeskgarden/svg-icons/src/14/settings.svg').default;

initialState = {
selectedKey: 'Unknown'
Expand Down Expand Up @@ -273,7 +273,7 @@ initialState = {
const { KEY_CODES } = require('@zendeskgarden/react-selection/src');
const { Button } = require('@zendeskgarden/react-buttons/src');
const { Input, FauxInput, MediaFigure } = require('@zendeskgarden/react-textfields/src');
const SearchIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/search.svg');
const SearchIcon = require('@zendeskgarden/svg-icons/src/14/search.svg').default;

const natoPhonetics = [
'Alfa',
Expand Down
2 changes: 1 addition & 1 deletion packages/menus/src/views/items/Item.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ const InlineMenuView = styled(MenuView)`
### Types

```jsx
const GroupIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/group.svg');
const GroupIcon = require('@zendeskgarden/svg-icons/src/14/group.svg').default;

/**
* Only necessary to position within documentation
Expand Down
2 changes: 1 addition & 1 deletion packages/select/src/views/Dropdown.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ const InlineSelectView = styled(Dropdown)`
### Types

```jsx
const GroupIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/group.svg');
const GroupIcon = require('@zendeskgarden/svg-icons/src/14/group.svg').default;

/**
* Only necessary to position within documentation
Expand Down
2 changes: 1 addition & 1 deletion packages/tables/src/examples/draggable-table.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ This example includes:
```jsx
const { zdSpacingSm } = require('@zendeskgarden/css-variables');
const { DragDropContext, Droppable, Draggable } = require('react-beautiful-dnd');
const GripIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/12/grip.svg');
const GripIcon = require('@zendeskgarden/svg-icons/src/12/grip.svg').default;
const { XL } = require('@zendeskgarden/react-typography/src');

const DraggableRow = styled(Row)`
Expand Down
2 changes: 1 addition & 1 deletion packages/tags/src/views/Avatar.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ their styling to any element they are provided.
`Avatars` are hidden for small `Tags`.

```jsx
const PersonIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/person.svg');
const PersonIcon = require('@zendeskgarden/svg-icons/src/14/person.svg').default;

<Grid>
<Row>
Expand Down
4 changes: 2 additions & 2 deletions packages/textfields/src/views/MediaFigure.example.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ The `FauxInput[mediaLayout=true]` can be used with the `MediaFigure` and `MediaI
components to include icons within the input.

```jsx
const SearchIcon = require('svg-react-loader?name=Settings!@zendeskgarden/svg-icons/src/14/search.svg');
const SettingsIcon = require('svg-react-loader?name=Attachment!@zendeskgarden/svg-icons/src/14/settings.svg');
const SearchIcon = require('@zendeskgarden/svg-icons/src/14/search.svg').default;
const SettingsIcon = require('@zendeskgarden/svg-icons/src/14/settings.svg').default;

<FauxInput mediaLayout>
<MediaFigure>
Expand Down
15 changes: 15 additions & 0 deletions utils/build/webpack.base.js
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,21 @@ found at http://www.apache.org/licenses/LICENSE-2.0
}
]
},
{
test: /\.svg$/u,
use: [
{
loader: '@svgr/webpack',
options: {
svgoConfig: {
plugins: {
removeViewBox: false
}
}
}
}
]
},
{
test: /\.css?$/u,
exclude: /@zendeskgarden\/css/u,
Expand Down
14 changes: 12 additions & 2 deletions utils/styleguide/styleguide.base.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -169,8 +169,18 @@ const defaultStyleguideConfig = {
},
{
test: /\.svg$/u,
exclude: /node_modules/u,
loader: 'svg-react-loader'
use: [
{
loader: '@svgr/webpack',
options: {
svgoConfig: {
plugins: {
removeViewBox: false
}
}
}
}
]
},
{
test: /\.md$/u,
Expand Down
3 changes: 2 additions & 1 deletion utils/test/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ module.exports = {
moduleNameMapper: {
'\\.(css|json)$': 'identity-obj-proxy',
'@zendeskgarden/css': 'identity-obj-proxy',
'@zendeskgarden/react-testing': '<rootDir>/packages/testing/src/index.js'
'@zendeskgarden/react-testing': '<rootDir>/packages/testing/src/index.js',
'\\.(svg)$': '<rootDir>/utils/test/svg-mock.js'
},
collectCoverageFrom: [
'<rootDir>/packages/*/src/**/*.{js,jsx}',
Expand Down
12 changes: 12 additions & 0 deletions utils/test/svg-mock.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/**
* Copyright Zendesk, Inc.
*
* Use of this source code is governed under the Apache License, Version 2.0
* found at http://www.apache.org/licenses/LICENSE-2.0.
*/

import React from 'react';

const MockSVG = () => <span>SVG</span>;

export default MockSVG;
Loading