Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release candidate v7.16.0 #10608

Merged
merged 152 commits into from
Jul 5, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
ddf3001
Added a page
minimalsm Jul 25, 2022
624ed01
Add ERC-223 to the Standards list
Dexaran Mar 7, 2023
be40b72
Add the description of ERC-223 tokens
Dexaran Mar 7, 2023
6377bc0
refactor(ProductList): improve structure and accessibility
TylerAPfledderer Mar 24, 2023
6ac44f7
Enable "RPC Importing" and "Token Importing"
Dadybayo Mar 26, 2023
a9530c1
Deleted an extra word
Dexaran Mar 28, 2023
a5fb373
Updated the list of IDEs
0xolishell Apr 6, 2023
f21f054
Add Kurtosis
leeederek Apr 6, 2023
c89d076
Update description of Kurtosis Ethereum package
leeederek Apr 10, 2023
d7850c3
Update Unstoppable Wallet RPC / ERC20 support info
Dianaaiym May 5, 2023
1dd9877
chore: update mew products
gamalielhere May 11, 2023
2bd6bac
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
c362962
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
c02d0f2
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
7aab160
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
3088d2c
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
d3c7283
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
d86f609
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
bddeaa7
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 17, 2023
b6f69bb
feat(storybook): add storybook-react-i18next addon
TylerAPfledderer May 17, 2023
f048d36
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 21, 2023
6d7faa1
Update src/content/developers/docs/standards/index.md
Dexaran May 21, 2023
66b444b
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 21, 2023
094cd05
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 21, 2023
9ebc9ba
Changes requested by the Ethereum PR mod
Dexaran May 21, 2023
c6b2dac
Reimplemented FAQ as headers
Dexaran May 21, 2023
d30f2e4
Update src/content/developers/docs/standards/tokens/erc-223/index.md
Dexaran May 22, 2023
92fac38
move dratf content to new markdown page
jmcook1186 May 22, 2023
08a88be
add images to portal-network dir
jmcook1186 May 22, 2023
0692cf6
refactor(.storybook): update locale options
TylerAPfledderer May 26, 2023
6b3682b
add front matter and subheadings
jmcook1186 May 26, 2023
5591f30
add img links
jmcook1186 May 26, 2023
3657475
fix(.storybook/main): simplify webpackFinal and load babel presets
TylerAPfledderer May 28, 2023
9111504
refactor(.storybook/i18next): merge requested namespace objects for e…
TylerAPfledderer May 28, 2023
6d09d35
refactor(.storybook/main): convert to TypeScript
TylerAPfledderer May 28, 2023
dedda95
revert(storybook-translation): remove component
TylerAPfledderer May 28, 2023
d56d714
revert(Button): remove test story
TylerAPfledderer May 28, 2023
0cdef63
Alter hero spacing on smaller screens
minimalsm Jun 5, 2023
4fb0f31
Update src/components/PageHero.tsx
minimalsm Jun 5, 2023
c29614b
Apply suggestions from code review
jmcook1186 Jun 6, 2023
ce04239
Add padding based on isReverse prop (image on top or bottom) of hero …
minimalsm Jun 6, 2023
7630a94
add nav
jmcook1186 Jun 7, 2023
a3e675e
"0px" -> 0 base
minimalsm Jun 8, 2023
23c603e
docs(.storybook/i18next): fix typo
TylerAPfledderer Jun 8, 2023
1f445bb
refactor(.storybook/i18next): update accum spread in resource reducer
TylerAPfledderer Jun 8, 2023
efbdf50
feat(theme/Button): creating theming from new DS
TylerAPfledderer Jun 9, 2023
0a6c38d
wrap InfoBanner in LightMode component
wackerow Jun 13, 2023
b0de2e9
Docs: Fix "de" translation gwei value
kryptovergleichde Jun 14, 2023
14b2860
Update index.md
KagemniKarimu Jun 14, 2023
9223233
Merge remote-tracking branch 'origin/dev' into feat/button-new-ds-var…
TylerAPfledderer Jun 16, 2023
1858a8a
refactor(theme/button): remove hover shadow constant
TylerAPfledderer Jun 18, 2023
97907ae
chore(theme/button): mark `icon` variant for deprecation
TylerAPfledderer Jun 18, 2023
23d27cb
Update index.md
fsrm365 Jun 19, 2023
cc2c45d
Merge pull request #1 from fsrm365/fsrm365-patch-1
fsrm365 Jun 19, 2023
89d6313
chore(deps): bump Chakra, Storybook, and Chromatic deps
TylerAPfledderer Jun 19, 2023
9b641ee
Merge remote-tracking branch 'origin/dev' into refactor/product-list-…
TylerAPfledderer Jun 21, 2023
f7cbff8
Merge remote-tracking branch 'origin/dev' into feat/storybook-react-i…
TylerAPfledderer Jun 21, 2023
e6a4e16
Merge remote-tracking branch 'origin/dev' into feat/button-new-ds-var…
TylerAPfledderer Jun 23, 2023
7bad8c9
chore(package.json): update version ranges to display the chosen bumps
TylerAPfledderer Jun 26, 2023
ce2cdc9
Merge remote-tracking branch 'origin/dev' into chore/bump-chakra-stor…
TylerAPfledderer Jun 26, 2023
e117bac
rerun install
pettinarip Jun 26, 2023
215cadc
initial content updates
jmcook1186 Jun 26, 2023
1cd8967
remove gatsby emotion plugin
pettinarip Jun 27, 2023
52dd7f7
move sections to more logical order
jmcook1186 Jun 27, 2023
4eabe14
Merge branch 'dev' into remove-gatsby-emotion
pettinarip Jun 27, 2023
8f3ec02
Merge branch 'dev' into remove-gatsby-emotion
pettinarip Jun 27, 2023
bcfc2fb
Add Japanese PoS images
minimalsm Jun 28, 2023
ee8429d
Use Japanese (ja) Use Ethereum, Proof-of-work, and Proof-of-stake, de…
minimalsm Jun 28, 2023
566fbf3
fix units in learn quiz
jmcook1186 Jun 28, 2023
0f8ab5d
clarifies weak vs strong statelessness on roadmap
jmcook1186 Jun 28, 2023
8711741
Update French (fr) Advanced docs, Advanced scaling docs, and Tutorial…
minimalsm Jun 28, 2023
e3edb1d
cleanup deprecated code and components
pettinarip Jun 28, 2023
65e72db
update docs
pettinarip Jun 28, 2023
878fea1
Button style changed: Issue ethereum#10553
hashnj Jun 28, 2023
d8bc207
cleanup shared components and mark select component as deprecated
pettinarip Jun 28, 2023
06992c8
remove circular dep
pettinarip Jun 28, 2023
b3fa6d9
Merge branch 'dev' into remove-gatsby-emotion
pettinarip Jun 28, 2023
3475f88
add missing react imports
pettinarip Jun 28, 2023
f07c18e
refactor to use ButtonLink
corwintines Jun 28, 2023
83b20de
Merge pull request #10574 from hashnj/dev
corwintines Jun 28, 2023
1c31c3d
Merge branch 'dev' into june27Japanese
corwintines Jun 28, 2023
04ce0b4
Merge pull request #10570 from ethereum/june27Japanese
corwintines Jun 28, 2023
b4a5b05
Update index.md
SKALE-jace Jun 28, 2023
4996e3a
Update index.md
SKALE-jace Jun 28, 2023
2a7e030
Update index.md
SKALE-jace Jun 28, 2023
df4b4b1
Update community-events.json
UrbanHak Jun 28, 2023
af74c41
Merge pull request #10573 from ethereum/june28French
corwintines Jun 28, 2023
67b5e01
fix internal links
corwintines Jun 28, 2023
77061fa
Merge pull request #10576 from UrbanHak/patch-4
corwintines Jun 28, 2023
10e15d7
Merge pull request #10453 from ethereum/infobanner-lightmode
corwintines Jun 29, 2023
feaa586
Apply suggestions from code review
jmcook1186 Jun 29, 2023
1041b96
Apply suggestions from code review
jmcook1186 Jun 29, 2023
8ab0719
update img
jmcook1186 Jun 29, 2023
f63e500
rm old img
jmcook1186 Jun 29, 2023
7b48dd9
Apply suggestions from code review
jmcook1186 Jun 29, 2023
45fb78c
Apply suggestions from code review
jmcook1186 Jun 29, 2023
2940b2b
Apply suggestions from code review
jmcook1186 Jun 29, 2023
a8634de
Update index.md
jmcook1186 Jun 29, 2023
7dd9b07
Apply suggestions from code review
jmcook1186 Jun 29, 2023
4d5aec6
Update index.md
jmcook1186 Jun 29, 2023
2b8ab6f
Merge pull request #10289 from ethereum/james-changes
jmcook1186 Jun 29, 2023
0a5ca32
Merge pull request #10577 from SKALE-jace/dev
corwintines Jun 29, 2023
850cf49
Merge pull request #10572 from ethereum/what-is-ethereum
corwintines Jun 29, 2023
bc0f234
Merge pull request #10571 from ethereum/update-statelessness-page
corwintines Jun 29, 2023
4ba6f48
Fix typo in all you can cache tutorial
clauBv23 Jun 29, 2023
6bb3474
Merge pull request #10585 from clauBv23/fix-typo
corwintines Jun 29, 2023
9aae950
Merge branch 'dev' into pr/TylerAPfledderer/10234
pettinarip Jun 29, 2023
270f59e
add localization to stories
pettinarip Jun 29, 2023
12caca2
Merge pull request #10563 from ethereum/remove-gatsby-emotion
corwintines Jun 29, 2023
59acf61
build just the base locales for now
pettinarip Jun 29, 2023
c11cbdc
Merge pull request #10457 from kryptovergleichde/patch-1
corwintines Jun 29, 2023
7f73cd7
Merge branch 'dev' into cleanup-ui-migration
corwintines Jun 29, 2023
330d056
Merge pull request #10578 from ethereum/internalLinkFix
pettinarip Jun 29, 2023
8830d2b
Merge pull request #10234 from TylerAPfledderer/feat/storybook-react-…
pettinarip Jun 29, 2023
e0e15f5
set chakra to v2.6.1 since v2.7.0 generates an error
pettinarip Jun 30, 2023
ac80f2f
Merge remote-tracking branch 'origin/dev' into chore/bump-chakra-stor…
TylerAPfledderer Jun 30, 2023
3a0e603
refactor(theme/Button): remove base style descendent selector for par…
TylerAPfledderer Jun 30, 2023
b563d3f
refactor(theme/Button): allow a border in multiple variants for consi…
TylerAPfledderer Jun 30, 2023
8021f82
Merge remote-tracking branch 'origin/dev' into feat/button-new-ds-var…
TylerAPfledderer Jun 30, 2023
45f67d1
refactor(theme/Button): update line-height declarations
TylerAPfledderer Jun 30, 2023
7f37ded
Merge pull request #10575 from ethereum/cleanup-ui-migration
pettinarip Jun 30, 2023
ffb3b8d
Merge pull request #10493 from TylerAPfledderer/chore/bump-chakra-sto…
pettinarip Jun 30, 2023
2434529
Merge pull request #10315 from TylerAPfledderer/feat/button-new-ds-va…
pettinarip Jun 30, 2023
86aeba6
override link text decoration styles
pettinarip Jun 30, 2023
0472dac
Merge pull request #10590 from ethereum/fix-button-link-styles
corwintines Jun 30, 2023
c4c9266
Merge pull request #10491 from fsrm365/dev
corwintines Jun 30, 2023
59c3043
Merge remote-tracking branch 'origin/dev' into refactor/product-list-…
TylerAPfledderer Jul 1, 2023
bab14d6
fix(Search/utils): update semantic syntax for highlighted search results
TylerAPfledderer Jul 1, 2023
3d759f8
Merge pull request #10461 from KagemniKarimu/patch-1
corwintines Jul 2, 2023
c635332
Merge pull request #9651 from Dexaran/dev
corwintines Jul 3, 2023
149a993
Merge branch 'dev' into pr/TylerAPfledderer/9795
corwintines Jul 3, 2023
8193f61
docs: remove a dead link to https://faucet.goerli.mudit.blog/
billmetangmo Jul 4, 2023
ec548fe
Make variable more verbose
corwintines Jul 4, 2023
8bd24c1
add new wallet hero image
corwintines Jul 4, 2023
c397829
Merge pull request #9795 from TylerAPfledderer/refactor/product-list-…
corwintines Jul 4, 2023
d51ace0
Merge pull request #10601 from billmetangmo/patch-1
corwintines Jul 4, 2023
4b07347
Merge pull request #9797 from Dadybayo/dev
corwintines Jul 4, 2023
f1b28a7
update translator leaderboard data
corwintines Jul 4, 2023
24e5ead
update
corwintines Jul 4, 2023
4b929cc
fix
corwintines Jul 4, 2023
fa5bc7f
copy updates
corwintines Jul 4, 2023
f61e54f
Merge pull request #9895 from 0xolishell/patch-10
corwintines Jul 4, 2023
604477b
Merge pull request #9916 from leeederek/add-kurtosis
corwintines Jul 4, 2023
190fdf6
Merge pull request #10605 from ethereum/translatorDataUpdate
minimalsm Jul 4, 2023
3983267
Merge pull request #10604 from ethereum/updateWalletHero
corwintines Jul 4, 2023
c41ad2d
Merge pull request #10379 from ethereum/fixHeroSpacing
corwintines Jul 4, 2023
895eae1
Merge pull request #10594 from TylerAPfledderer/fix/doc-search-semant…
corwintines Jul 4, 2023
eee4722
Merge pull request #10133 from horizontalsystems/dev
corwintines Jul 4, 2023
d7496e5
Merge pull request #10195 from gamalielhere/devop/update-mew-products
corwintines Jul 4, 2023
6abd52b
v7.16.0
corwintines Jul 5, 2023
c57e710
Merge pull request #10607 from ethereum/v7-16-0
corwintines Jul 5, 2023
9eeab16
Merge branch 'staging' into dev
corwintines Jul 5, 2023
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: 3 additions & 1 deletion .storybook/babel-storybook-config.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
export const babelConfig = {
import { TransformOptions } from "@babel/core"

export const babelConfig: TransformOptions = {
sourceType: "unambiguous",
presets: [
[
Expand Down
41 changes: 41 additions & 0 deletions .storybook/i18next.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
import i18n, { Resource } from "i18next"
import { initReactI18next } from "gatsby-plugin-react-i18next"

export const baseLocales = {
en: { title: "English", left: "En" },
zh: { title: "中国人", left: "Zh" },
ru: { title: "Русский", left: "Ru" },
uk: { title: "українська", left: "Uk" },
}

// Only i18n files named in this array are being exposed to Storybook. Add filenames as necessary.
const ns = ["common", "page-about", "page-upgrades", "page-developers-index"]
const supportedLngs = Object.keys(baseLocales)

/**
* Taking the ns array and combining all the ids
* under a single ns per language, set to the default of "translation"
*/
const resources: Resource = ns.reduce((acc, n) => {
supportedLngs.forEach((lng) => {
if (!acc[lng]) acc[lng] = {}
acc[lng] = {
translation: {
...acc[lng].translation,
...require(`../src/intl/${lng}/${n}.json`),
},
}
})
return acc
}, {})

i18n.use(initReactI18next).init({
debug: true,
fallbackLng: "en",
interpolation: { escapeValue: false },
react: { useSuspense: false },
supportedLngs,
resources,
})

export default i18n
53 changes: 28 additions & 25 deletions .storybook/main.js → .storybook/main.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
const { propNames } = require("@chakra-ui/react")
import { StorybookConfig } from "@storybook/react-webpack5"
import { propNames } from "@chakra-ui/react"
import { babelConfig } from "./babel-storybook-config"

const { babelConfig } = require("./babel-storybook-config")

module.exports = {
const config: StorybookConfig = {
stories: ["../src/components/**/*.stories.tsx"],
addons: [
"@storybook/addon-links",
Expand All @@ -11,9 +11,10 @@ module.exports = {
// https://storybook.js.org/addons/@storybook/addon-a11y/
"@storybook/addon-a11y",
"@chakra-ui/storybook-addon",
"storybook-react-i18next",
],
staticDirs: ["../static"],
babel: async (options) => ({
babel: async () => ({
...babelConfig,
}),
framework: {
Expand All @@ -27,30 +28,30 @@ module.exports = {
},
features: {},
webpackFinal: async (config) => {
const isRuleExist =
config.module && config.module.rules && config.module.rules.length
if (isRuleExist) {
// Transpile Gatsby module because Gatsby includes un-transpiled ES6 code.
config.module.rules[0].exclude = [
/node_modules\/(?!(gatsby|gatsby-script)\/)/,
]

// Remove core-js to prevent issues with Storybook
config.module.rules[0].exclude = [/core-js/]
}

if (
isRuleExist &&
config.module.rules[0].use &&
config.module.rules[0].use.length
config.module != undefined &&
config.module.rules != undefined &&
config.module.rules[0] !== "..."
) {
// Use babel-plugin-remove-graphql-queries to remove static queries from components when rendering in storybook
config.module.rules[0].use[0].options.plugins.push(
require.resolve("babel-plugin-remove-graphql-queries")
)
config.module.rules[0].exclude = [/node_modules\/(?!(gatsby)\/)/]
config.module.rules[0].use = [
{
loader: require.resolve("babel-loader"),
options: {
presets: [
// use @babel/preset-react for JSX and env (instead of staged presets)
require.resolve("@babel/preset-react"),
require.resolve("@babel/preset-env"),
],
plugins: [
// use babel-plugin-remove-graphql-queries to remove static queries from components when rendering in storybook
require.resolve("babel-plugin-remove-graphql-queries"),
],
},
},
]
}

config.resolve.mainFields = ["browser", "module", "main"]
return config
},
typescript: {
Expand Down Expand Up @@ -83,3 +84,5 @@ module.exports = {
},
},
}

export default config
75 changes: 40 additions & 35 deletions .storybook/preview.js → .storybook/preview.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { Preview } from "@storybook/react"
import { action } from "@storybook/addon-actions"

import i18n, { baseLocales } from "./i18next"
import theme from "../src/@chakra-ui/gatsby-plugin/theme"

import "../static/fonts/inter-font-face.css"
import "../static/fonts/ibm-plex-font-face.css"

const chakraBreakpointArray = Object.entries(theme.breakpoints)

// Gatsby's Link overrides:
Expand All @@ -26,42 +25,48 @@ window.___navigate = (pathname) => {
action("NavigateTo:")(pathname)
}

export const parameters = {
actions: { argTypesRegex: "^on[A-Z].*" },
backgrounds: {
disable: true,
const preview: Preview = {
globals: {
locale: "en",
locales: baseLocales,
},
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
parameters: {
i18n,
actions: { argTypesRegex: "^on[A-Z].*" },
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
},
},
},
backgrounds: {
disable: true,
},
chakra: {
theme,
},
layout: "centered",
// Modify viewport selection to match Chakra breakpoints (or custom breakpoints)
viewport: {
viewports: chakraBreakpointArray.reduce((prevVal, currVal) => {
const [token, key] = currVal
backgrounds: {
disable: true,
},
chakra: {
theme,
},
layout: "centered",
// Modify viewport selection to match Chakra breakpoints (or custom breakpoints)
viewport: {
viewports: chakraBreakpointArray.reduce((prevVal, currVal) => {
const [token, key] = currVal

// Unnecessary breakpoint
if (token === "base") return { ...prevVal }
// Unnecessary breakpoint
if (token === "base") return { ...prevVal }

return {
...prevVal,
[token]: {
name: token,
styles: {
width: key,
height: "600px",
return {
...prevVal,
[token]: {
name: token,
styles: {
width: key,
height: "600px",
},
},
},
}
}, {}),
}
}, {}),
},
},
}

export default preview
104 changes: 51 additions & 53 deletions docs/best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,45 +102,58 @@ export default ComponentName

## Styling

- `src/theme.ts` - Declares site color themes, breakpoints and other constants (try to utilize these colors first)
- We use [emotion](https://emotion.sh/)
We use [Chakra UI](https://chakra-ui.com/).

- Tagged template literals are used to style custom components
`src/@chakra-ui/gatsby-plugin/theme.ts` - Holds all the theme configuration. This is where you can find the colors, fonts, component themes, variants, etc.

```tsx
// Example of styling syntax using emotion

import styled from "@emotion/styled"

const GenericButton = styled.div`
width: 200px;
height: 50px;
`
const PrimaryButton = styled(GenericButton)`
background: blue;
`
const SecondaryButton = styled(GenericButton)`
background: red;
`

// These are each components, capitalized by convention, and can be used within JSX code
// ie: <PrimaryButton>Text</PrimaryButton>
```
- Wrappers or layout divs

- Values from `src/theme.ts` are automatically passed as a prop object to styled components
Use the [native layouts components](https://chakra-ui.com/docs/components/box)

```tsx
// Example of theme.ts usage
```tsx
<Stack direction='row'>
```

import styled from "@emotion/styled"
Center things using the `<Center />` component

const Container = styled.div`
background: ${(props) => props.theme.colors.background};
@media (max-width: ${(props) => props.theme.breakpoints.s}) {
font-size: #{(props) => props.theme.fontSized.s};
}
`
```
```tsx
<Center h="100px">
```

- Group buttons using `<ButtonGroup />` or `<Wrap />`

```tsx
<ButtonGroup variant='outline' spacing={2}>
<Button>Button 1</Button>
<Button>Button 2</Button>
</ButtonGroup>

// or
<Wrap spacing={2}>
<WrapItem><Button variant="outline">Button 1</Button></WrapItem>
<WrapItem><Button variant="outline">Button 2</Button></WrapItem>
</Wrap>
```

- Breakpoints

Use [the Chakra default breakpoints](https://chakra-ui.com/docs/styled-system/theme#breakpoints).

```tsx
<Container display={{ base: "block", sm: "flex" }} />
```

- Theme colors

```tsx
<Text color="primary.base" bg="background.base" />
```

> Note the dotted notation. In Chakra, the values are referred to as "semantic tokens" and the new theme applies a nested structure of like tokens for better organization. See [semanticTokens.ts](../src/%40chakra-ui/gatsby-plugin/semanticTokens.ts)

> Note 2: all the previous colors defined in the old theme `src/theme.ts` were
> ported into the new theme for compatibility reasons. Those colors will
> transition out of the codebase as we adopt the DS colors.

- [Framer Motion](https://www.framer.com/motion/) - An open source and production-ready motion library for React on the web, used for our animated designs
- **Emojis**: We use [Twemoji](https://twemoji.twitter.com/), an open-source emoji set created by Twitter. These are hosted by us, and used to provide a consistent experience across operating systems.
Expand All @@ -154,29 +167,14 @@ import Emoji from "./Emoji"
```

- **Icons**: We use [React Icons](https://react-icons.github.io/react-icons/)
- `src/components/Icon.ts` is the component used to import icons to be used
- If an icon you want to use is not listed you will need to add it to this file

`src/components/Icon.ts`:

```tsx
// Example of how to add new icon not listed
import { ZzIconName } from "react-icons/zz"

// Then add to IconContext.Provider children:
{
name === "alias" && <ZzIconName />
}
```

From React component:
with [Chakra UI Icon component](https://chakra-ui.com/docs/components/icon/usage)

```tsx
// Example of icon use
import Icon from "./Icon"
import { Icon } from "@chakra-ui/react"
import { BsQuestionSquareFill } from "react-icons/bs"

// Within JSX:
;<Icon name="alias" />
// wrap your imported icon with the `Icon` component from Chakra UI
;<Icon as={BsQuestionSquareFill} />
```

## Image loading and API calls using GraphQL
Expand Down
Loading