Skip to content

Commit a313d80

Browse files
Kikobeatsbreadadamsdependabot[bot]
authored
migrate styled-system (#1679)
* refactor: remove Fixed component * refactor: initial migration * refactor: migrate header * refactor: migrate footer * refactor: rename themeCss into theme * refactor: migrate buttons * refactor: migrate storybook components * fix: footer attributes (#1709) * migrate styled-system (components & product pages) (#1712) * docs(fix): prerender auto by default * fix: toolbar * fix: `Select` story * feat: update `patterns` components * fix: `PricingTable` styles * fix: `Footer` bottom padding * feat: update `home` * fix: `home` features title text-align * feat: update `markdown` components * feat: cleanup home + Mitigate all warnings about props being passed to dom * feat: migrate `formats` page * feat: migrate `insights` page * feat: migrate `logo` page * feat: migrate `meta` page * fix: invalid bg color * feat: migrate `pdf` page * feat: migrate `screenshot` page * feat: migrate `sdk` page * build(deps): bump pnpm/action-setup from 3 to 4 (#1707) Bumps [pnpm/action-setup](https://github.com/pnpm/action-setup) from 3 to 4. - [Release notes](https://github.com/pnpm/action-setup/releases) - [Commits](pnpm/action-setup@v3...v4) --- updated-dependencies: - dependency-name: pnpm/action-setup dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * build: tweaks * fix: use cdn.microlink.io * build: lock react-codecopy * Update src/components/elements/Container.js * Update src/components/elements/PriceMonthly.js * refactor: mx shortcut * refactor: padding shortcut --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Kiko Beats <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * migrate styled-system (company pages) (#1713) * fix: toolbar * fix: `Select` story * feat: update `patterns` components * fix: `PricingTable` styles * fix: `Footer` bottom padding * feat: update `home` * fix: `home` features title text-align * feat: update `markdown` components * feat: cleanup home + Mitigate all warnings about props being passed to dom * feat: migrate `formats` page * feat: migrate `insights` page * feat: migrate `logo` page * feat: migrate `meta` page * fix: invalid bg color * feat: migrate `pdf` page * feat: migrate `screenshot` page * feat: migrate `sdk` page * feat: migrate `blog` listing page * feat: migrate `blog` detail page * feat: migrate `newsletter` page * feat: migrate `oss` page --------- Co-authored-by: Kiko Beats <[email protected]> * migrate styled-system (developers pages) (#1714) * fix: toolbar * fix: `Select` story * feat: update `patterns` components * fix: `PricingTable` styles * fix: `Footer` bottom padding * feat: update `home` * fix: `home` features title text-align * feat: update `markdown` components * feat: cleanup home + Mitigate all warnings about props being passed to dom * feat: migrate `formats` page * feat: migrate `insights` page * feat: migrate `logo` page * feat: migrate `meta` page * fix: invalid bg color * feat: migrate `pdf` page * feat: migrate `screenshot` page * feat: migrate `sdk` page * feat: migrate `blog` listing page * feat: migrate `blog` detail page * feat: migrate `newsletter` page * feat: migrate `oss` page * feat: migrate `changelog` page * feat: migrate `community` page * feat: migrate `recipe` pages * fix: misc. css fixes * feat: migrate `user-agents` page * feat: migrate `docs` template * fix: syntax --------- Co-authored-by: Kiko Beats <[email protected]> * migrate styled-system (other pages) (#1715) * fix: toolbar * fix: `Select` story * feat: update `patterns` components * fix: `PricingTable` styles * fix: `Footer` bottom padding * feat: update `home` * fix: `home` features title text-align * feat: update `markdown` components * feat: cleanup home + Mitigate all warnings about props being passed to dom * feat: migrate `formats` page * feat: migrate `insights` page * feat: migrate `logo` page * feat: migrate `meta` page * fix: invalid bg color * feat: migrate `pdf` page * feat: migrate `screenshot` page * feat: migrate `sdk` page * feat: migrate `blog` listing page * feat: migrate `blog` detail page * feat: migrate `newsletter` page * feat: migrate `oss` page * feat: migrate `changelog` page * feat: migrate `community` page * feat: migrate `recipe` pages * fix: misc. css fixes * feat: migrate `user-agents` page * feat: migrate `docs` template * feat: migrate `payment` pages * feat: migrate `status` page * feat: migrate `enterprise` page * fix: minor `Container` improvements * fix: use undefined instead of null --------- Co-authored-by: Kiko Beats <[email protected]> * fix: linter * refactor: remove comment * fix: detect language from title * fix: highlight lines * fix: tabs non selected style * fix: get language from props * fix: json highlight syntax * refactor: avoid defaultProps * refactor: avoid defaultProps for styled-components * refactor: remove `defaultProps` (#1717) * refactor: initial `defaultProps` removal * refactor: more `defaultProps` removals * refactor: replace code-editor related defaultProps * refactor: replace `defaultProps` on markdown components * fix: passing theme property * refactor(/formats): add DotsBackground * refactor: add announcement on logo page * chore: add tooltip type * refactor: avoid capitalize * refactor(/user-agents): better experience * fix: linter * refactor: theme prop into isDark * fix: setup body background under dark * fix: letter spacing * fix: linter * refactor: adjust aspect ratio * fix: sdk page * fix: user-agents title * chore: migrate screenshot * build: update dependencies * fix: user-agent script * fix: linter * build: update dependencies * build: update dependencies * fix: warning * refactor: don't pass down unnecessary props * fix: as → forwardedAs * fix: button spacing * fix: blog titles * refactor: adjust spaces * fix: card size * fix: css syntax * refactor: adjust max-width * chore(storybook): disable telemetry * chore: remove MQLEditor component not used * fix: linter * fix: react warnings * fix(markdown): iframe max-width * fix: linter --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Brad Adams <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
1 parent 56a6b68 commit a313d80

File tree

148 files changed

+4553
-9636
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

148 files changed

+4553
-9636
lines changed

.storybook/main.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ module.exports = {
55
addons: ['@storybook/addon-a11y', '@storybook/addon-essentials'],
66
framework: '@storybook/react',
77
core: {
8-
builder: 'webpack5'
8+
builder: 'webpack5',
9+
disableTelemetry: true
910
},
1011
webpackFinal: async config => {
1112
// Remove core-js to prevent issues with Storybook
@@ -29,7 +30,8 @@ module.exports = {
2930
// use babel-plugin-remove-graphql-queries to remove static queries from components when rendering in storybook
3031
require.resolve('babel-plugin-remove-graphql-queries'),
3132
// use babel-plugin-react-docgen to ensure PropTables still appear
32-
require.resolve('babel-plugin-react-docgen')
33+
require.resolve('babel-plugin-react-docgen'),
34+
require.resolve('babel-plugin-styled-components')
3335
]
3436
}
3537
}

.storybook/preview.js

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import { ThemeProvider } from 'styled-components'
21
import { LocationProvider } from '@gatsbyjs/reach-router'
3-
2+
import { ThemeProvider } from 'styled-components'
43
import Flex from 'components/elements/Flex'
4+
import themeSpec, { theme } from 'theme'
55
import React from 'react'
6-
import theme from 'theme'
76

87
import '@storybook/addon-console'
98

@@ -24,13 +23,15 @@ window.___navigate = pathname => {
2423

2524
export const decorators = [
2625
Story => (
27-
<ThemeProvider theme={theme}>
26+
<ThemeProvider theme={themeSpec}>
2827
<LocationProvider>
2928
<Flex
30-
p={3}
31-
justiContent='center'
32-
alignItems='baseline'
33-
flexDirection='column'
29+
css={theme({
30+
p: 3,
31+
justifyContent: 'center',
32+
alignItems: 'baseline',
33+
flexDirection: 'column'
34+
})}
3435
>
3536
<Story />
3637
</Flex>

package.json

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -102,63 +102,64 @@
102102
],
103103
"dependencies": {
104104
"@kikobeats/use-query-state": "1.2.2",
105-
"@microlink/mql": "~0.12.1",
106-
"@microlink/react": "5.5.15",
105+
"@microlink/mql": "~0.13.6",
106+
"@microlink/react": "5.5.22",
107107
"@microlink/recipes": "~1.8.1",
108108
"@react-spring/web": "~9.7.3",
109109
"@stripe/react-stripe-js": "~2.4.0",
110110
"@stripe/stripe-js": "~2.2.2",
111111
"@styled-system/prop-types": "~5.1.5",
112+
"@techstack/styled-system": "~1.0.480",
112113
"@tippyjs/react": "~4.2.6",
113-
"@vercel/analytics": "~1.2.2",
114+
"@vercel/analytics": "~1.3.1",
115+
"babel-plugin-styled-components": "~2.1.4",
114116
"beauty-error": "~1.2.18",
115117
"cssnano": "~6.0.2",
116118
"cssnano-preset-advanced": "~6.0.2",
117119
"dlv": "~1.1.3",
118-
"gatsby": "~5.13.1",
120+
"gatsby": "~5.13.7",
119121
"gatsby-plugin-advanced-sitemap": "~2.1.0",
120-
"gatsby-plugin-canonical-urls": "~5.13.0",
121-
"gatsby-plugin-catch-links": "~5.13.0",
122-
"gatsby-plugin-sass": "~6.13.0",
123-
"gatsby-plugin-styled-components": "~6.13.0",
124-
"gatsby-source-filesystem": "~5.13.0",
125-
"gatsby-transformer-javascript-frontmatter": "~5.13.0",
126-
"gatsby-transformer-json": "~5.13.0",
127-
"gatsby-transformer-remark": "~6.13.0",
128-
"gatsby-transformer-yaml": "~5.13.0",
122+
"gatsby-plugin-canonical-urls": "~5.13.1",
123+
"gatsby-plugin-catch-links": "~5.13.1",
124+
"gatsby-plugin-sass": "~6.13.1",
125+
"gatsby-plugin-styled-components": "~6.13.1",
126+
"gatsby-source-filesystem": "~5.13.1",
127+
"gatsby-transformer-javascript-frontmatter": "~5.13.1",
128+
"gatsby-transformer-json": "~5.13.1",
129+
"gatsby-transformer-remark": "~6.13.1",
130+
"gatsby-transformer-yaml": "~5.13.1",
129131
"github-slugger": "~2.0.0",
130132
"humanize-url": "~3.0.0",
131133
"is-color": "~1.0.2",
132-
"is-url-http": "~2.3.7",
134+
"is-url-http": "~2.3.8",
133135
"json-future": "~2.2.21",
134136
"lodash": "~4.17.21",
135137
"mdx-scoped-runtime": "~0.8.0",
136138
"microsoft-capitalize": "~1.0.5",
137139
"normalize.css": "~8.0.1",
138-
"palx": "~1.0.3",
139140
"path-browserify": "~1.0.1",
140141
"polished": "~4.3.1",
141-
"postcss": "~8.4.32",
142+
"postcss": "~8.4.39",
142143
"postcss-focus": "~7.0.0",
143144
"prepend-http": "~4.0.0",
144145
"prettier": "2",
145146
"react": "18",
146-
"react-codecopy": "5.0.3",
147+
"react-codecopy": "5.0.14",
147148
"react-confetti": "~6.1.0",
148149
"react-dom": "18",
149150
"react-feather": "~2.0.10",
150151
"react-syntax-highlighter": "~15.5.0",
151152
"react-timeago": "~7.2.0",
152153
"react-twitter-widgets": "~1.11.0",
153154
"remark-slug": "~7.0.1",
154-
"sass": "~1.70.0",
155-
"styled-components": "5",
155+
"sass": "~1.77.8",
156+
"styled-components": "~6.1.12",
156157
"styled-is": "~1.3.0",
157158
"styled-system": "~5.1.5",
158-
"swr": "~2.2.4",
159-
"tldts": "~6.1.1",
160-
"top-crawler-agents": "~1.0.21",
161-
"top-user-agents": "~2.1.12",
159+
"swr": "~2.2.5",
160+
"tldts": "~6.1.32",
161+
"top-crawler-agents": "~1.0.27",
162+
"top-user-agents": "~2.1.22",
162163
"unique-random-array": "~3.0.0"
163164
},
164165
"devDependencies": {
@@ -188,7 +189,8 @@
188189
"simple-git-hooks": "latest",
189190
"standard": "latest",
190191
"standard-markdown": "latest",
191-
"standard-version": "latest"
192+
"standard-version": "latest",
193+
"tinyspawn": "latest"
192194
},
193195
"engines": {
194196
"node": ">= 18"

scripts/fetch-data/providers/fetch-formats.js

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ const { sortBy } = require('lodash')
66
const { getType } = require('mime')
77
const path = require('path')
88

9-
/* We avoid cdn.microlink.io explicity since it
10-
runs on top of CloudFlare and the compression
11-
removes 'content-length' header */
129
const MICROLINK_CDN_URL = 'https://cdn.microlink.io/file-examples'
1310

1411
const fileUrls = async () =>
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
'use strict'
2+
3+
const crawlerAgents = require('top-crawler-agents')
4+
const userAgents = require('top-user-agents')
5+
const $ = require('tinyspawn')
6+
const path = require('path')
7+
8+
const pkgInfo = async pkgName => {
9+
const { stdout } = await $.json(`npm view ${pkgName} --json`)
10+
const version = stdout.version
11+
const updatedAt = stdout.time[version]
12+
return { updatedAt, version }
13+
}
14+
15+
const fn = async () => {
16+
const npm = await Promise.all([
17+
pkgInfo('top-user-agents'),
18+
pkgInfo('top-crawler-agents')
19+
])
20+
21+
return [
22+
{
23+
name: 'top-user-agents',
24+
...npm[0],
25+
data: userAgents
26+
},
27+
{
28+
name: 'top-crawler-agents',
29+
...npm[1],
30+
data: crawlerAgents
31+
}
32+
]
33+
}
34+
35+
module.exports = () =>
36+
require('../create-provider').fromCode(fn, {
37+
dist: path.resolve(__dirname, '../../../data/user-agents.json')
38+
})

src/components/elements/BackgroundSlider/BackgroundSlider.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,15 @@ const SliderContainerWrapper = styled('div')`
1616
animation-direction: ${props => props.animationDirection};
1717
`
1818

19-
const SliderContainerChildren = styled.div`
19+
const SliderContainerChildren = styled('div')`
2020
display: inline-block;
2121
`
2222

23-
const BackgroundSlider = ({ animationDirection, duration, children }) => (
23+
const BackgroundSlider = ({
24+
animationDirection = 'normal',
25+
duration,
26+
children
27+
}) => (
2428
<SliderContainer>
2529
<SliderContainerWrapper
2630
animationDirection={animationDirection}
@@ -32,10 +36,6 @@ const BackgroundSlider = ({ animationDirection, duration, children }) => (
3236
</SliderContainer>
3337
)
3438

35-
BackgroundSlider.defaultProps = {
36-
animationDirection: 'normal'
37-
}
38-
3939
const BackgroundSliderContainer = styled(Box)`
4040
&:hover {
4141
div {

src/components/elements/BackgroundSlider/BackgroundSlider.stories.js

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,16 @@
1-
import React from 'react'
2-
import { Story } from 'story'
1+
import { Microlink } from 'components/logos'
32
import { storiesOf } from '@storybook/react'
3+
import { theme, transition } from 'theme'
44
import styled from 'styled-components'
5+
import range from 'lodash/range'
6+
import { Story } from 'story'
7+
import React from 'react'
8+
59
import {
6-
Flex,
710
Box,
811
BackgroundSlider,
912
BackgroundSliderContainer
1013
} from 'components/elements'
11-
import { transition } from 'theme'
12-
import range from 'lodash/range'
13-
import { Microlink } from 'components/logos'
14-
15-
const NoWrap = styled(Flex)`
16-
white-space: nowrap;
17-
overflow: hidden;
18-
`
19-
20-
NoWrap.defaultProps = {
21-
justifyContent: 'center',
22-
alignItems: 'center'
23-
}
2414

2515
const LogoWrap = styled(Box)`
2616
cursor: pointer;
@@ -29,13 +19,9 @@ const LogoWrap = styled(Box)`
2919
&:hover {
3020
opacity: 0.8;
3121
}
22+
${theme({ px: 4, display: 'inline-block' })}
3223
`
3324

34-
LogoWrap.defaultProps = {
35-
display: 'inline-block',
36-
px: 4
37-
}
38-
3925
const code = `
4026
import {
4127
BackgroundSliderContainer,
@@ -58,7 +44,7 @@ export default () => (
5844

5945
storiesOf('Elements', module).add('BackgroundSlider', () => (
6046
<Story name='BackgroundSlider' code={code}>
61-
<BackgroundSliderContainer py={0} px={0} maxWidth='100%'>
47+
<BackgroundSliderContainer css={theme({ p: 0, maxWidth: '100%' })}>
6248
<BackgroundSlider duration={80} animationDirection='reverse'>
6349
{range(30).map(index => (
6450
<LogoWrap key={index}>
Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,27 @@
11
import styled from 'styled-components'
2+
import { theme } from 'theme'
3+
import React from 'react'
4+
25
import Text from '../Text'
36

4-
const Badge = styled(Text)`
7+
const StyledBadge = styled(Text)`
58
padding: 2px 12px;
69
text-transform: uppercase;
710
position: relative;
811
vertical-align: middle;
12+
13+
${theme({
14+
letterSpacing: 2,
15+
border: '0.5px solid',
16+
fontSize: '12px',
17+
fontWeight: 'bold',
18+
bg: 'secondary',
19+
borderRadius: 5,
20+
fontFamily: 'sans',
21+
color: 'white'
22+
})}
923
`
1024

11-
Badge.defaultProps = {
12-
letterSpacing: 2,
13-
border: '0.5px solid',
14-
as: 'span',
15-
fontSize: '12px',
16-
fontWeight: 'bold',
17-
bg: 'secondary',
18-
borderRadius: 5,
19-
fontFamily: 'sans',
20-
color: 'white'
21-
}
25+
const Badge = props => <StyledBadge as='span' {...props} />
2226

2327
export default Badge

src/components/elements/Box.js

Lines changed: 7 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,17 @@
11
import {
2-
compose,
3-
space,
2+
border,
43
color,
5-
borders,
6-
lineHeight,
7-
width,
8-
flex,
9-
order,
10-
alignSelf,
4+
compose,
5+
layout,
116
position,
12-
fontSize,
13-
variant,
14-
textAlign,
15-
maxWidth,
16-
boxShadow,
17-
display,
18-
height
19-
} from 'styled-system'
7+
space,
8+
variant
9+
} from '@techstack/styled-system'
2010

2111
import styled from 'styled-components'
22-
import propTypes from '@styled-system/prop-types'
2312

2413
const Box = styled('div')(
25-
compose(
26-
space,
27-
textAlign,
28-
maxWidth,
29-
boxShadow,
30-
display,
31-
borders,
32-
lineHeight,
33-
height,
34-
width,
35-
fontSize,
36-
color,
37-
flex,
38-
order,
39-
alignSelf,
40-
position,
41-
variant({ key: 'boxStyles' })
42-
)
14+
compose(border, color, layout, position, space, variant({ key: 'button' }))
4315
)
4416

45-
Box.propTypes = {
46-
...propTypes.space,
47-
...propTypes.textAlign,
48-
...propTypes.maxWidth,
49-
...propTypes.boxShadow,
50-
...propTypes.border,
51-
...propTypes.display,
52-
...propTypes.width,
53-
...propTypes.height,
54-
...propTypes.fontSize,
55-
...propTypes.color,
56-
...propTypes.flex,
57-
...propTypes.order,
58-
...propTypes.alignSelf,
59-
...propTypes.position,
60-
...propTypes.lineHeight
61-
}
62-
6317
export default Box

0 commit comments

Comments
 (0)