@graphcommerce/magento-product 8.1.0-canary.43 → 8.1.0-canary.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Api/ProductListItem.graphql +0 -1
- package/CHANGELOG.md +4 -0
- package/components/AddProductsToCart/AddProductsToCartButton.tsx +2 -2
- package/components/AddProductsToCart/AddProductsToCartFab.tsx +2 -2
- package/components/AddProductsToCart/AddProductsToCartForm.tsx +24 -26
- package/components/AddProductsToCart/AddProductsToCartSnackbar.tsx +25 -16
- package/components/ProductAddToCart/ProductAddToCart.tsx +6 -8
- package/components/ProductFiltersPro/PriceSlider.tsx +1 -2
- package/components/ProductFiltersPro/ProductFilterEqualChip.tsx +1 -1
- package/components/ProductFiltersPro/ProductFilterEqualSection.tsx +2 -2
- package/components/ProductFiltersPro/ProductFilterRangeChip.tsx +1 -1
- package/components/ProductFiltersPro/ProductFilterRangeSection.tsx +1 -1
- package/components/ProductFiltersPro/ProductFiltersPro.tsx +79 -17
- package/components/ProductFiltersPro/ProductFiltersProAggregations.tsx +17 -18
- package/components/ProductFiltersPro/ProductFiltersProAllFiltersChip.tsx +2 -2
- package/components/ProductFiltersPro/ProductFiltersProCategorySection.tsx +99 -39
- package/components/ProductFiltersPro/ProductFiltersProClearAll.tsx +4 -16
- package/components/ProductFiltersPro/ProductFiltersProLimitSection.tsx +1 -1
- package/components/ProductFiltersPro/ProductFiltersProNoResults.tsx +79 -0
- package/components/ProductFiltersPro/ProductFiltersProSortChip.tsx +1 -1
- package/components/ProductFiltersPro/ProductFiltersProSortSection.tsx +1 -1
- package/components/ProductFiltersPro/activeAggregations.ts +5 -9
- package/components/ProductFiltersPro/applyAggregationCount.ts +14 -8
- package/components/ProductFiltersPro/index.ts +4 -1
- package/components/ProductFiltersPro/{useClearAllFiltersHandler.ts → useProductFiltersProClearAllAction.ts} +1 -1
- package/components/ProductFiltersPro/useProductFiltersProHasFiltersApplied.ts +21 -0
- package/components/ProductList/ProductList.graphql +8 -5
- package/components/ProductListCount/ProductListCount.tsx +3 -1
- package/components/ProductListFilters/ProductFilters.graphql +7 -2
- package/components/ProductListFilters/ProductListFilters.graphql +1 -1
- package/components/ProductListItem/ProductDiscountLabel.tsx +2 -3
- package/components/ProductListItem/ProductListItem.tsx +3 -3
- package/components/ProductListItem/ProductListItemTitleAndPrice.tsx +18 -15
- package/components/ProductListItems/ProductListItemsBase.tsx +65 -23
- package/components/ProductListItems/filterTypes.tsx +14 -5
- package/components/ProductListItems/filteredProductList.tsx +23 -0
- package/components/ProductListItems/productListApplyCategoryDefaults.ts +44 -4
- package/components/ProductListItems/renderer.tsx +8 -2
- package/components/ProductListPagination/ProductListPagination.tsx +3 -1
- package/components/ProductListPrice/ProductListPrice.tsx +9 -4
- package/components/ProductListSuggestions/ProductListSuggestions.graphql +5 -0
- package/components/ProductListSuggestions/ProductListSuggestions.tsx +42 -0
- package/components/ProductPageDescription/ProductPageDescription.tsx +1 -1
- package/components/ProductPagePrice/ProductPagePrice.graphql +0 -6
- package/components/ProductPagePrice/ProductPagePrice.tsx +19 -12
- package/components/ProductPagePrice/ProductPagePriceTiers.tsx +4 -3
- package/components/ProductWeight/ProductWeight.tsx +12 -9
- package/components/index.ts +2 -0
- package/hooks/useProductList.ts +123 -0
- package/hooks/useProductListLink.ts +6 -3
- package/index.ts +1 -0
- package/package.json +14 -14
@@ -8,11 +8,14 @@ import {
|
|
8
8
|
} from '../components/ProductListItems/filterTypes'
|
9
9
|
|
10
10
|
export function productListLinkFromFilter(props: ProductFilterParams): string {
|
11
|
-
const { url, sort, dir, currentPage, pageSize, filters: incoming } = props
|
11
|
+
const { url, sort, dir, currentPage, pageSize, filters: incoming, search } = props
|
12
12
|
const isSearch = url.startsWith('search')
|
13
13
|
const filters = isSearch ? incoming : { ...incoming, category_uid: undefined }
|
14
14
|
const uid = incoming?.category_uid?.eq || incoming?.category_uid?.in?.[0]
|
15
15
|
|
16
|
+
let urlBase = url
|
17
|
+
if (isSearch) urlBase = search ? `search/${search}` : 'search'
|
18
|
+
|
16
19
|
// base url path generation
|
17
20
|
let paginateSort = ``
|
18
21
|
let query = ``
|
@@ -38,9 +41,9 @@ export function productListLinkFromFilter(props: ProductFilterParams): string {
|
|
38
41
|
|
39
42
|
// it's a category with filters, use the /c/ route.
|
40
43
|
if (query && !isSearch)
|
41
|
-
return `/c/${
|
44
|
+
return `/c/${urlBase}${paginateSort}/q${uid ? `/category_uid/${uid}` : ''}${query}`
|
42
45
|
|
43
|
-
return query ? `/${
|
46
|
+
return query ? `/${urlBase}${paginateSort}/q${query}` : `/${urlBase}${paginateSort}`
|
44
47
|
}
|
45
48
|
|
46
49
|
export function productListLink(props: ProductListParams): string {
|
package/index.ts
CHANGED
package/package.json
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
"name": "@graphcommerce/magento-product",
|
3
3
|
"homepage": "https://www.graphcommerce.org/",
|
4
4
|
"repository": "github:graphcommerce-org/graphcommerce",
|
5
|
-
"version": "8.1.0-canary.
|
5
|
+
"version": "8.1.0-canary.45",
|
6
6
|
"sideEffects": false,
|
7
7
|
"prettier": "@graphcommerce/prettier-config-pwa",
|
8
8
|
"eslintConfig": {
|
@@ -18,19 +18,19 @@
|
|
18
18
|
"typescript": "5.3.3"
|
19
19
|
},
|
20
20
|
"peerDependencies": {
|
21
|
-
"@graphcommerce/ecommerce-ui": "^8.1.0-canary.
|
22
|
-
"@graphcommerce/eslint-config-pwa": "^8.1.0-canary.
|
23
|
-
"@graphcommerce/framer-next-pages": "^8.1.0-canary.
|
24
|
-
"@graphcommerce/framer-scroller": "^8.1.0-canary.
|
25
|
-
"@graphcommerce/graphql": "^8.1.0-canary.
|
26
|
-
"@graphcommerce/graphql-mesh": "^8.1.0-canary.
|
27
|
-
"@graphcommerce/image": "^8.1.0-canary.
|
28
|
-
"@graphcommerce/magento-cart": "^8.1.0-canary.
|
29
|
-
"@graphcommerce/magento-category": "^8.1.0-canary.
|
30
|
-
"@graphcommerce/magento-store": "^8.1.0-canary.
|
31
|
-
"@graphcommerce/next-ui": "^8.1.0-canary.
|
32
|
-
"@graphcommerce/prettier-config-pwa": "^8.1.0-canary.
|
33
|
-
"@graphcommerce/typescript-config-pwa": "^8.1.0-canary.
|
21
|
+
"@graphcommerce/ecommerce-ui": "^8.1.0-canary.45",
|
22
|
+
"@graphcommerce/eslint-config-pwa": "^8.1.0-canary.45",
|
23
|
+
"@graphcommerce/framer-next-pages": "^8.1.0-canary.45",
|
24
|
+
"@graphcommerce/framer-scroller": "^8.1.0-canary.45",
|
25
|
+
"@graphcommerce/graphql": "^8.1.0-canary.45",
|
26
|
+
"@graphcommerce/graphql-mesh": "^8.1.0-canary.45",
|
27
|
+
"@graphcommerce/image": "^8.1.0-canary.45",
|
28
|
+
"@graphcommerce/magento-cart": "^8.1.0-canary.45",
|
29
|
+
"@graphcommerce/magento-category": "^8.1.0-canary.45",
|
30
|
+
"@graphcommerce/magento-store": "^8.1.0-canary.45",
|
31
|
+
"@graphcommerce/next-ui": "^8.1.0-canary.45",
|
32
|
+
"@graphcommerce/prettier-config-pwa": "^8.1.0-canary.45",
|
33
|
+
"@graphcommerce/typescript-config-pwa": "^8.1.0-canary.45",
|
34
34
|
"@lingui/core": "^4.2.1",
|
35
35
|
"@lingui/macro": "^4.2.1",
|
36
36
|
"@lingui/react": "^4.2.1",
|