Update types (#831)

* Update product types

* Cart types progress, add zod & initial schema validator

* Update normalize.ts

* Update with-schema-parser.ts

* Updated types, schemas & providers

* Fix providers after schema parse errors

* Fix paths

* More provider fixes

* Fix kibocommerce & commercejs

* Add customer updated types & fixes

* Add checkout & customer types

* Import core types only from commerce

* Update tsconfig.json

* Convert hooks interfaces to types

* Requested changes

* Change to relative paths

* Move Zod dependency
This commit is contained in:
Catalin Pinte
2022-10-05 09:02:29 +03:00
committed by GitHub
parent 8398a96215
commit 6c2610584d
291 changed files with 1992 additions and 1808 deletions

View File

@@ -4,9 +4,11 @@ import Link from 'next/link'
import { useState } from 'react'
import { useRouter } from 'next/router'
import type { Brand } from '@commerce/types/site'
import type { Product } from '@commerce/types/product'
import { Layout } from '@components/common'
import { ProductCard } from '@components/product'
import type { Product } from '@commerce/types/product'
import { Container, Skeleton } from '@components/ui'
import useSearch from '@framework/product/use-search'
@@ -41,19 +43,22 @@ export default function Search({ categories, brands }: SearchPropsType) {
const query = filterQuery({ sort })
const { pathname, category, brand } = useSearchMeta(asPath)
const activeCategory = categories.find((cat: any) => cat.slug === category)
const activeBrand = brands.find(
(b: any) => getSlug(b.node.path) === `brands/${brand}`
)?.node
const { data } = useSearch({
const activeCategory = categories.find((cat: any) => cat.slug === category)
const activeBrand = brands.find((b: Brand) => b.slug === brand)
const { data, error } = useSearch({
search: typeof q === 'string' ? q : '',
categoryId: activeCategory?.id,
brandId: (activeBrand as any)?.entityId,
brandId: (activeBrand as any)?.id,
sort: typeof sort === 'string' ? sort : '',
locale,
})
if (error) {
return <div>Failed to load</div>
}
const handleClick = (event: any, filter: string) => {
if (filter !== activeFilter) {
setToggleFilter(true)
@@ -233,20 +238,19 @@ export default function Search({ categories, brands }: SearchPropsType) {
</a>
</Link>
</li>
{brands.flatMap(({ node }: { node: any }) => (
{brands.map(({ path, name, id }: Brand) => (
<li
key={node.path}
key={path}
className={cn(
'block text-sm leading-5 text-accent-4 hover:bg-accent-1 lg:hover:bg-transparent hover:text-accent-8 focus:outline-none focus:bg-accent-1 focus:text-accent-8',
{
// @ts-ignore Shopify - Fix this types
underline: activeBrand?.entityId === node.entityId,
underline: activeBrand?.id === id,
}
)}
>
<Link
href={{
pathname: getDesignerPath(node.path, category),
pathname: getDesignerPath(path, category),
query,
}}
>
@@ -256,7 +260,7 @@ export default function Search({ categories, brands }: SearchPropsType) {
'block lg:inline-block px-4 py-2 lg:p-0 lg:my-2 lg:mx-4'
}
>
{node.name}
{name}
</a>
</Link>
</li>