Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
e347008
Add network error Icon
nicosampler Oct 28, 2020
4072645
Button: Add space between icon and text
nicosampler Oct 28, 2020
b359a77
Merge pull request #71 from gnosis/network-error
nicosampler Oct 28, 2020
1a11b1f
Fix: Change storybook location for color story
nicosampler Oct 29, 2020
e59dc51
Add Link element
nicosampler Oct 29, 2020
d7e2a0c
fix prettier
nicosampler Oct 29, 2020
9327c9b
FIx storybook alignment
nicosampler Oct 29, 2020
586a7b6
Merge pull request #73 from gnosis/issue-72
nicosampler Oct 29, 2020
671385c
export component
nicosampler Oct 29, 2020
8d8508e
Merge pull request #74 from gnosis/issue-72-b
nicosampler Oct 29, 2020
03ff672
Update dependencies (#75)
Nov 5, 2020
f095717
Pass extra props to Card
nicosampler Nov 17, 2020
ff29c3c
Merge pull request #76 from gnosis/pass-props-card
nicosampler Nov 17, 2020
bf3a844
Components new design (#77)
nicosampler Dec 14, 2020
3918dc1
Upgrade dependencies (#82)
Dec 16, 2020
7d4d590
Text field input props (#80)
alfetopito Jan 4, 2021
8e09a00
Feature: Accordion component (#85)
alongoni Jan 5, 2021
7d90ba4
Fix Accordion: add padding to chevron icon (#88)
alongoni Jan 6, 2021
2e7574f
(Refactor) Accordion component (#89)
fernandomg Jan 7, 2021
420f595
(Fix) remove background color and center icons from Tabs component (#87)
alongoni Jan 13, 2021
8dea3a6
(fix)Tab texts css (#91)
alongoni Feb 8, 2021
ab12701
Feature: Add Tooltip component (#92)
nicosampler Feb 11, 2021
68d913c
Fix Tooltip: Add arrow functionality (#93)
nicosampler Feb 11, 2021
452371e
Tooltip: Fix arrow shadow
nicosampler Feb 11, 2021
2e6844b
Add react 17 as valid peer dependency and upgrade dependencies (#97)
Feb 15, 2021
d676909
Fix/Tooltip: Add support for different sizes. (#95)
nicosampler Feb 15, 2021
e98c0da
Bump ini from 1.3.5 to 1.3.8 (#81)
dependabot[bot] Feb 15, 2021
b9c578a
Fix/Button: Fix styles and complete reimplementation (#94)
nicosampler Feb 18, 2021
36a0329
version bump (#96)
nicosampler Feb 18, 2021
ce90741
Remove polished dependency (#99)
Feb 19, 2021
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
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: 'my-workflow'
name: 'Lint check'
on: [pull_request]

jobs:
eslint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: bradennapier/eslint-plus-action@v3.4.0
- uses: gnosis/safe-react-eslint-plus-action@main
6 changes: 1 addition & 5 deletions .storybook/gnosisTheme.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,7 @@ export default create({
appBg: 'white',
appContentBg: 'white',
appBorderColor: 'grey',
appBorderRadius: 4,

// Typography
fontBase: '"Roboto", sans-serif',
fontCode: 'monospace',
appBorderRadius: 4,

// Text colors
textColor: '#333333',
Expand Down
1 change: 0 additions & 1 deletion .storybook/main.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
module.exports = {
stories: ["../src/**/*.stories.tsx"],
addons: [
"@storybook/preset-create-react-app",
"@storybook/addon-actions",
"@storybook/addon-links",
"@storybook/addon-docs",
Expand Down
12 changes: 6 additions & 6 deletions .storybook/preview.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ import { ThemeProvider } from 'styled-components';
import theme from '../src/theme';
import GlobalStyles from '../src/global';

addDecorator(storyFn => (
<ThemeProvider theme={theme}>
addDecorator((storyFn) => (
<>
<GlobalStyles />
{storyFn()}
</ThemeProvider>
<ThemeProvider theme={theme}>{storyFn()}</ThemeProvider>
</>
));

addParameters({
options: {
showRoots: false
}
showRoots: false,
},
});
12 changes: 12 additions & 0 deletions .storybook/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,18 @@ module.exports = ({ config }) => {
]
});

// There was a problem with the fonts not being loaded
// I took the fix from here: https://github.com/storybookjs/storybook/issues/5936#issuecomment-532902187
config.module.rules = config.module.rules.map(rule => {
if (rule.test && rule.test.toString().includes('woff')) {
return {
...rule,
test: /\.(svg|ico|jpg|jpeg|png|gif|webp|cur|ani|pdf)(\?.*)?$/
}
}
return rule
})

config.module.rules.push({
test: /\.(woff|woff2|eot|ttf)$/,
use: [
Expand Down
14 changes: 8 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
if: (branch = master) OR (branch = development) OR (type = pull_request) OR (tag IS present)
os: linux
dist: bionic
language: node_js
node_js: '12'
cache:
yarn: true

before_install:
- yarn install
# Needed to deploy pull request and releases
- pip install awscli --upgrade --user
cache:
yarn: true
script: |
echo "Skip tests" # no test cases for the project

Expand Down Expand Up @@ -49,7 +51,7 @@ deploy:
secret_access_key: $AWS_SECRET_ACCESS_KEY
skip_cleanup: true
local_dir: storybook-static
upload-dir: current
upload_dir: current
region: eu-central-1
on:
branch: master
Expand All @@ -61,7 +63,7 @@ deploy:
secret_access_key: $AWS_SECRET_ACCESS_KEY
skip_cleanup: true
local_dir: storybook-static
upload-dir: releases/$TRAVIS_TAG/website
upload_dir: releases/$TRAVIS_TAG/website
region: eu-central-1
on:
tags: true
Expand All @@ -73,7 +75,7 @@ deploy:
secret_access_key: $AWS_SECRET_ACCESS_KEY
skip_cleanup: true
local_dir: dist
upload-dir: releases/$TRAVIS_TAG/npmlib
upload_dir: releases/$TRAVIS_TAG/npmlib
region: eu-central-1
on:
tags: true
Expand Down
87 changes: 43 additions & 44 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@gnosis.pm/safe-react-components",
"version": "0.4.0",
"version": "0.5.0",
"description": "Gnosis UI components",
"main": "dist/index.min.js",
"typings": "dist/index.d.ts",
Expand All @@ -14,67 +14,66 @@
"types": "yarn tsc",
"start": "rimraf dist && webpack --mode production --watch",
"build": "rimraf dist && webpack --mode production",
"build-storybook": "build-storybook -s public --docs",
"storybook": "start-storybook -p 9009 -s public --docs",
"build-storybook": "build-storybook --docs",
"storybook": "start-storybook -p 9009 --docs",
"lint:check": "eslint './src/**/*.{js,jsx,ts,tsx}'",
"prepare": "yarn build"
},
"author": "Gnosis (https://gnosis.pm)",
"license": "MIT",
"dependencies": {
"classnames": "^2.2.6",
"polished": "3.6.5",
"react-docgen-typescript-loader": "^3.7.2",
"react-media": "^1.10.0",
"url-loader": "^4.1.0"
"react-media": "^1.10.0"
},
"devDependencies": {
"@material-ui/core": "4.10.2",
"@storybook/addon-actions": "5.3.19",
"@storybook/addon-docs": "5.3.19",
"@storybook/addon-links": "5.3.19",
"@storybook/addons": "5.3.19",
"@storybook/preset-create-react-app": "2.1.2",
"@storybook/react": "5.3.19",
"@testing-library/jest-dom": "5.11.2",
"@testing-library/react": "10.4.7",
"@testing-library/user-event": "12.0.17",
"@types/big.js": "^4.0.5",
"@types/classnames": "^2.2.10",
"@types/jest": "26.0.7",
"@types/material-ui": "^0.21.7",
"@types/node": "14.0.27",
"@types/react": "16.9.43",
"@types/react-dom": "16.9.8",
"@types/styled-components": "5.1.1",
"@types/yup": "0.29.3",
"@typescript-eslint/eslint-plugin": "^3.7.1",
"@typescript-eslint/parser": "^3.7.1",
"@material-ui/core": "^4.11.2",
"@storybook/addon-actions": "^6.1.0",
"@storybook/addon-docs": "^6.1.0",
"@storybook/addon-links": "^6.1.0",
"@storybook/addons": "^6.1.0",
"@storybook/react": "^6.1.0",
"@testing-library/jest-dom": "^5.11.5",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.2.0",
"@types/classnames": "^2.2.11",
"@types/jest": "^26.0.0",
"@types/material-ui": "^0.21.8",
"@types/node": "^14.14.0",
"@types/react": "^16.9.55",
"@types/react-dom": "^16.9.0",
"@types/styled-components": "^5.1.0",
"@typescript-eslint/eslint-plugin": "^4.6.1",
"@typescript-eslint/parser": "^4.6.1",
"awesome-typescript-loader": "^5.2.1",
"babel-eslint": "^10.0.3",
"babel-loader": "8.1.0",
"copy-webpack-plugin": "^5.1.1",
"eslint": "7.5.0",
"eslint-config-prettier": "6.11.0",
"eslint-plugin-prettier": "3.1.4",
"eslint-plugin-react": "7.20.5",
"eslint-plugin-react-hooks": "4.0.8",
"babel-loader": "^8.1.0",
"copy-webpack-plugin": "^6.3.0",
"eslint": "^7.12.0",
"eslint-config-prettier": "^6.15.0",
"eslint-plugin-prettier": "^3.1.0",
"eslint-plugin-react": "^7.21.5",
"eslint-plugin-react-hooks": "^4.2.0",
"ethereum-blockies-base64": "^1.0.2",
"file-loader": "^6.0.0",
"prettier": "2.0.5",
"react": "16.13.1",
"react-dom": "16.13.1",
"file-loader": "^6.2.0",
"prettier": "^2.1.0",
"react": "^16.13.0",
"react-docgen-typescript-loader": "^3.7.2",
"react-dom": "^16.13.0",
"rimraf": "^3.0.2",
"styled-components": "5.1.1",
"typescript": "3.9.7",
"styled-components": "^5.2.1",
"typescript": "^4.0.5",
"url-loader": "^4.1.1",
"webpack": "4.43.0",
"webpack-cli": "^3.3.10",
"webpack-node-externals": "^1.7.2"
"webpack-node-externals": "^2.5.2"
},
"resolutions": {
"@babel/core": "^7.12.0"
},
"peerDependencies": {
"@material-ui/core": "4.X.X",
"react": "16.x.x",
"react-dom": "16.x.x",
"react": "16.x.x || 17.x.x",
"react-dom": "16.x.x || 17.x.x",
"styled-components": "5.x.x"
},
"eslintConfig": {
Expand Down
6 changes: 3 additions & 3 deletions src/colors.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';
import styled from 'styled-components';
import { parseToHsl } from 'polished';
import { getLuminance } from '@material-ui/core/styles/colorManipulator';

import { Text, theme } from './index';

Expand All @@ -26,7 +26,7 @@ const ColorDisplay = styled.div<{ color: string }>`
`;

export default {
title: 'Colors',
title: 'Utils/Colors',
};

export const ColorsSample = (): React.ReactElement => {
Expand All @@ -44,7 +44,7 @@ export const ColorsSample = (): React.ReactElement => {
}, [])
.sort(
({ code: colorA }, { code: colorB }) =>
parseToHsl(colorA).lightness - parseToHsl(colorB).lightness
getLuminance(colorA) - getLuminance(colorB)
);

return (
Expand Down
125 changes: 125 additions & 0 deletions src/dataDisplay/Accordion/accordion.stories.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
import React from 'react';

import { Accordion, AccordionSummary, AccordionDetails } from './index';
import { Card, Text, IconText } from '../../index';

export default {
title: 'Data Display/Accordion',
component: Accordion,
parameters: {
componentSubtitle: 'Expansion panels with Summary and Detail content.',
},
};

export const SimpleAccordion = (): React.ReactElement => (
<Card>
<Accordion>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 1"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
<Accordion>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 2"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
<Accordion>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 3"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
</Card>
);

export const CompactAccordion = (): React.ReactElement => (
<div
style={{
display: 'flex',
height: '100%',
justifyContent: 'center',
alignItems: 'center',
flexDirection: 'column',
}}>
<Accordion compact>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 1"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
<Accordion compact>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 2"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
<Accordion compact>
<AccordionSummary>
<IconText
iconSize="sm"
textSize="xl"
iconType="code"
text="Transaction 3"
/>
</AccordionSummary>
<AccordionDetails>
<Text size="lg">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse
malesuada lacus ex, sit amet blandit leo lobortis eget.
</Text>
</AccordionDetails>
</Accordion>
</div>
);
Loading