diff options
Diffstat (limited to 'src/frontend/components/ProductList')
| -rw-r--r-- | src/frontend/components/ProductList/ProductList.styled.ts | 14 | ||||
| -rw-r--r-- | src/frontend/components/ProductList/ProductList.tsx | 23 | ||||
| -rw-r--r-- | src/frontend/components/ProductList/index.ts | 4 |
3 files changed, 41 insertions, 0 deletions
diff --git a/src/frontend/components/ProductList/ProductList.styled.ts b/src/frontend/components/ProductList/ProductList.styled.ts new file mode 100644 index 0000000..3776404 --- /dev/null +++ b/src/frontend/components/ProductList/ProductList.styled.ts @@ -0,0 +1,14 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +import styled from 'styled-components'; + +export const ProductList = styled.div` + display: grid; + grid-template-columns: 1fr; + gap: 24px; + + ${({ theme }) => theme.breakpoints.desktop} { + grid-template-columns: repeat(3, auto); + } +`; diff --git a/src/frontend/components/ProductList/ProductList.tsx b/src/frontend/components/ProductList/ProductList.tsx new file mode 100644 index 0000000..0546eae --- /dev/null +++ b/src/frontend/components/ProductList/ProductList.tsx @@ -0,0 +1,23 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +import { CypressFields } from '../../utils/enums/CypressFields'; +import { Product } from '../../protos/demo'; +import ProductCard from '../ProductCard'; +import * as S from './ProductList.styled'; + +interface IProps { + productList: Product[]; +} + +const ProductList = ({ productList }: IProps) => { + return ( + <S.ProductList data-cy={CypressFields.ProductList}> + {productList.map(product => ( + <ProductCard key={product.id} product={product} /> + ))} + </S.ProductList> + ); +}; + +export default ProductList; diff --git a/src/frontend/components/ProductList/index.ts b/src/frontend/components/ProductList/index.ts new file mode 100644 index 0000000..3ff921c --- /dev/null +++ b/src/frontend/components/ProductList/index.ts @@ -0,0 +1,4 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +export { default } from './ProductList'; |
