From 9c89e39ad8ccbcb5a529da861a7ff6ea2a370c7b Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:02:16 +0700 Subject: [PATCH 1/9] fix bug cart --- app/components/Cart.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/components/Cart.tsx b/app/components/Cart.tsx index 89886d7..37b8f62 100644 --- a/app/components/Cart.tsx +++ b/app/components/Cart.tsx @@ -9,7 +9,7 @@ import type { CartApiQueryFragment } from "storefrontapi.generated"; import { useVariantUrl } from "~/lib/variants"; import { IconRemove } from "./Icon"; -type CartLine = CartApiQueryFragment["lines"]["edges"][0]["node"]; +type CartLine = CartApiQueryFragment["lines"]["nodes"][0]; type CartMainProps = { cart: CartApiQueryFragment | null; @@ -17,7 +17,7 @@ type CartMainProps = { }; export function CartMain({ layout, cart }: CartMainProps) { - const linesCount = Boolean(cart?.lines?.edges?.length || 0); + const linesCount = Boolean(cart?.lines?.nodes?.length || 0); const withDiscount = cart && Boolean(cart.discountCodes.filter((code) => code.applicable).length); @@ -85,7 +85,7 @@ function CartLines({ )} - {lines?.edges?.map(({ node: line }) => ( + {lines?.nodes?.map((line) => ( ))} From f833037cfb63527e21de48d3d0117bd6066535c6 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:02:47 +0700 Subject: [PATCH 2/9] Update style drawer filter --- app/components/DrawerFilter.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/components/DrawerFilter.tsx b/app/components/DrawerFilter.tsx index 5e29325..2595f18 100644 --- a/app/components/DrawerFilter.tsx +++ b/app/components/DrawerFilter.tsx @@ -53,7 +53,7 @@ export function DrawerFilter({
Date: Thu, 5 Sep 2024 17:03:09 +0700 Subject: [PATCH 3/9] update icon list menu --- app/components/Icon.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/components/Icon.tsx b/app/components/Icon.tsx index 110dba4..cb91af1 100644 --- a/app/components/Icon.tsx +++ b/app/components/Icon.tsx @@ -605,7 +605,7 @@ export function IconTag(props: IconProps) { export function IconListMenu(props: IconProps){ return( - + ); From ecb6e5ad09f3d8a1203e5bb04e363f5c157e8889 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:04:06 +0700 Subject: [PATCH 4/9] update product details --- app/sections/product-information/index.tsx | 311 +++++++++++---------- 1 file changed, 161 insertions(+), 150 deletions(-) diff --git a/app/sections/product-information/index.tsx b/app/sections/product-information/index.tsx index a2183a2..5c76309 100644 --- a/app/sections/product-information/index.tsx +++ b/app/sections/product-information/index.tsx @@ -1,20 +1,20 @@ -import {useLoaderData} from '@remix-run/react'; -import {Money, ShopPayButton} from '@shopify/hydrogen'; +import { useLoaderData } from "@remix-run/react"; +import { Money, ShopPayButton } from "@shopify/hydrogen"; import { useThemeSettings, type HydrogenComponentProps, type HydrogenComponentSchema, -} from '@weaverse/hydrogen'; -import {forwardRef, useEffect, useState} from 'react'; -import type {ProductQuery, VariantsQuery} from 'storefrontapi.generated'; -import {AddToCartButton} from '~/components/AddToCartButton'; -import {Text} from '~/components/Text'; -import {getExcerpt} from '~/lib/utils'; -import {ProductPlaceholder} from '../../components/product-form/placeholder'; -import {ProductMedia} from '../../components/product-form/product-media'; -import {Quantity} from '../../components/product-form/quantity'; -import {ProductVariants} from '../../components/product-form/variants'; -import {ProductDetail} from './product-detail'; +} from "@weaverse/hydrogen"; +import { forwardRef, useEffect, useState } from "react"; +import type { ProductQuery, VariantsQuery } from "storefrontapi.generated"; +import { AddToCartButton } from "~/components/AddToCartButton"; +import { Text } from "~/components/Text"; +import { getExcerpt } from "~/lib/utils"; +import { ProductPlaceholder } from "../../components/product-form/placeholder"; +import { ProductMedia } from "../../components/product-form/product-media"; +import { Quantity } from "../../components/product-form/quantity"; +import { ProductVariants } from "../../components/product-form/variants"; +import { ProductDetail } from "./product-detail"; interface ProductInformationProps extends HydrogenComponentProps { addToCartText: string; soldOutText: string; @@ -46,7 +46,7 @@ let ProductInformation = forwardRef( >(); let variants = _variants?.product?.variants; let [selectedVariant, setSelectedVariant] = useState( - product?.selectedVariant, + product?.selectedVariant ); let { addToCartText, @@ -95,7 +95,7 @@ let ProductInformation = forwardRef( searchParams.set(option.name, option.value); } let url = `${window.location.pathname}?${searchParams.toString()}`; - window.history.replaceState({}, '', url); + window.history.replaceState({}, "", url); }; if (!product || !selectedVariant) @@ -105,8 +105,8 @@ let ProductInformation = forwardRef( ); if (product && variants) { - const {title, vendor, descriptionHtml} = product; - const {shippingPolicy, refundPolicy} = shop; + const { title, vendor, descriptionHtml } = product; + const { shippingPolicy, refundPolicy } = shop; return (
@@ -118,96 +118,107 @@ let ProductInformation = forwardRef( numberOfThumbnails={numberOfThumbnails} spacing={spacing} /> -
-
-
-

- {title} -

- {showVendor && vendor && ( - {vendor} - )} -
-

- {selectedVariant && selectedVariant.compareAtPrice && ( - - )} +

+
+
+
+

+ {title} +

+ {showVendor && vendor && ( + + {vendor} + + )} +
+

+ {selectedVariant && selectedVariant.compareAtPrice && ( + + )} - {selectedVariant ? ( - - ) : null} -

- {children} + {selectedVariant ? ( + + ) : null} +

+ {children} - -
- - - {atcText} - - {selectedVariant?.availableForSale && ( - +
+ + - )} -

-

- {showShippingPolicy && shippingPolicy?.body && ( - - )} - {showRefundPolicy && refundPolicy?.body && ( - + {atcText} + + {selectedVariant?.availableForSale && ( + )} +

+

+ {showShippingPolicy && shippingPolicy?.body && ( + + )} + {showRefundPolicy && refundPolicy?.body && ( + + )} +
@@ -216,95 +227,95 @@ let ProductInformation = forwardRef( ); } return
; - }, + } ); export default ProductInformation; export let schema: HydrogenComponentSchema = { - type: 'product-information', - title: 'Product information', - childTypes: ['judgeme'], + type: "product-information", + title: "Product information", + childTypes: ["judgeme"], limit: 1, enabledOn: { - pages: ['PRODUCT'], + pages: ["PRODUCT"], }, inspector: [ { - group: 'Product form', + group: "Product form", inputs: [ { - type: 'text', - label: 'Add to cart text', - name: 'addToCartText', - defaultValue: 'Add to cart', - placeholder: 'Add to cart', + type: "text", + label: "Add to cart text", + name: "addToCartText", + defaultValue: "Add to cart", + placeholder: "Add to cart", }, { - type: 'text', - label: 'Sold out text', - name: 'soldOutText', - defaultValue: 'Sold out', - placeholder: 'Sold out', + type: "text", + label: "Sold out text", + name: "soldOutText", + defaultValue: "Sold out", + placeholder: "Sold out", }, { - type: 'text', - label: 'Unavailable text', - name: 'unavailableText', - defaultValue: 'Unavailable', - placeholder: 'Unavailable', + type: "text", + label: "Unavailable text", + name: "unavailableText", + defaultValue: "Unavailable", + placeholder: "Unavailable", }, { - type: 'switch', - label: 'Show vendor', - name: 'showVendor', + type: "switch", + label: "Show vendor", + name: "showVendor", defaultValue: true, }, { - type: 'switch', - label: 'Show sale price', - name: 'showSalePrice', + type: "switch", + label: "Show sale price", + name: "showSalePrice", defaultValue: true, }, { - type: 'switch', - label: 'Show details', - name: 'showDetails', + type: "switch", + label: "Show details", + name: "showDetails", defaultValue: true, }, { - type: 'switch', - label: 'Show shipping policy', - name: 'showShippingPolicy', + type: "switch", + label: "Show shipping policy", + name: "showShippingPolicy", defaultValue: true, }, { - type: 'switch', - label: 'Show refund policy', - name: 'showRefundPolicy', + type: "switch", + label: "Show refund policy", + name: "showRefundPolicy", defaultValue: true, }, { - label: 'Hide unavailable options', - type: 'switch', - name: 'hideUnavailableOptions', + label: "Hide unavailable options", + type: "switch", + name: "hideUnavailableOptions", }, ], }, { - group: 'Product Media', + group: "Product Media", inputs: [ { - label: 'Show thumbnails', - name: 'showThumbnails', - type: 'switch', + label: "Show thumbnails", + name: "showThumbnails", + type: "switch", defaultValue: true, }, { - label: 'Number of thumbnails', - name: 'numberOfThumbnails', - type: 'range', - condition: 'showThumbnails.eq.true', + label: "Number of thumbnails", + name: "numberOfThumbnails", + type: "range", + condition: "showThumbnails.eq.true", configs: { min: 1, max: 10, @@ -312,9 +323,9 @@ export let schema: HydrogenComponentSchema = { defaultValue: 4, }, { - label: 'Gap between images', - name: 'spacing', - type: 'range', + label: "Gap between images", + name: "spacing", + type: "range", configs: { min: 0, step: 2, @@ -325,5 +336,5 @@ export let schema: HydrogenComponentSchema = { ], }, ], - toolbar: ['general-settings', ['duplicate', 'delete']], + toolbar: ["general-settings", ["duplicate", "delete"]], }; From d0b7db9ce7895c0a4af1e1bcbb6cb8345a534a00 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:05:12 +0700 Subject: [PATCH 5/9] update collection filter --- app/sections/collection-filters/index.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/sections/collection-filters/index.tsx b/app/sections/collection-filters/index.tsx index c754c5f..c6ecba1 100644 --- a/app/sections/collection-filters/index.tsx +++ b/app/sections/collection-filters/index.tsx @@ -63,13 +63,14 @@ let CollectionFilters = forwardRef( if (collection?.products && collections) { return ( -
+
+
{({ nodes, @@ -101,6 +102,7 @@ let CollectionFilters = forwardRef( )} +
); } From ebe7330a166afb9fc06d3f8777ef713b6af6054c Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:05:40 +0700 Subject: [PATCH 6/9] update content child for image w text --- app/sections/image-with-text/content.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/sections/image-with-text/content.tsx b/app/sections/image-with-text/content.tsx index 0f7d083..314c511 100644 --- a/app/sections/image-with-text/content.tsx +++ b/app/sections/image-with-text/content.tsx @@ -8,7 +8,7 @@ import clsx from 'clsx'; import {forwardRef} from 'react'; let variants = cva( - 'grow flex flex-col justify-center gap-5 py-6 px-4 md:px-8 md:py-8 [&_.paragraph]:mx-[unset] [&_.paragraph]:w-auto', + 'grow flex flex-col justify-center gap-5 py-6 md:py-8 [&_.paragraph]:mx-[unset] [&_.paragraph]:w-auto', { variants: { alignment: { From c2d23e7f4b10732538ede086e744967bdf40c181 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:05:55 +0700 Subject: [PATCH 7/9] update style mega menu --- app/components/Header/menu/MegaMenu.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/components/Header/menu/MegaMenu.tsx b/app/components/Header/menu/MegaMenu.tsx index 0c51bd8..b5b064c 100644 --- a/app/components/Header/menu/MegaMenu.tsx +++ b/app/components/Header/menu/MegaMenu.tsx @@ -103,7 +103,7 @@ function MultiMenu(props: SingleMenuItem & {isShowIconCaret?: boolean}) { ); return ( -
+
{items.map((item, id) => @@ -165,7 +165,7 @@ function ImageMenu({ }: SingleMenuItem & {isShowIconCaret?: boolean}) { return ( -
+
{items.map((item, id) => ( From d81187c7010d6ee593615404e17d9587985e51e5 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Thu, 5 Sep 2024 17:06:53 +0700 Subject: [PATCH 8/9] fix bug product slide --- app/components/product-form/product-media.tsx | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/components/product-form/product-media.tsx b/app/components/product-form/product-media.tsx index aa63212..c951eaf 100644 --- a/app/components/product-form/product-media.tsx +++ b/app/components/product-form/product-media.tsx @@ -20,12 +20,6 @@ export function ProductMedia(props: ProductMediaProps) { let [activeIndex, setActiveIndex] = useState(0); console.log("🚀 ~ thumbsSwiper:", thumbsSwiper) - useEffect(() => { - if (thumbsSwiper) { - thumbsSwiper.slideTo(activeIndex); - } - }, [thumbsSwiper]); - return (
{ + setThumbsSwiper(swiper); + swiper.update(); + }} direction="horizontal" spaceBetween={spacing} freeMode @@ -80,15 +77,20 @@ export function ProductMedia(props: ProductMediaProps) { return ( { + if (thumbsSwiper) { + thumbsSwiper.slideTo(i); + } + }} className={clsx( - "!h-fit !w-fit p-1 border transition-colors !aspect-[3/4] cursor-pointer", + "!h-fit !w-fit p-1 border transition-colors cursor-pointer", activeIndex === i ? "border-black" : "border-transparent", )} > From 55a1f2575645b3e5f780a46bee20bde7f4805899 Mon Sep 17 00:00:00 2001 From: dangthang1903 Date: Fri, 6 Sep 2024 10:03:30 +0700 Subject: [PATCH 9/9] Deploy dev --- package-lock.json | 217 +++++++++++++++++++++++----------------------- package.json | 4 +- 2 files changed, 111 insertions(+), 110 deletions(-) diff --git a/package-lock.json b/package-lock.json index faa7390..60d7daf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "naturelle", - "version": "2.0.4", + "version": "2.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "naturelle", - "version": "2.0.4", + "version": "2.0.5", "dependencies": { "@fontsource-variable/cormorant": "^5.0.14", "@fontsource-variable/nunito-sans": "^5.0.15", @@ -3510,9 +3510,9 @@ } }, "node_modules/@graphql-tools/apollo-engine-loader/node_modules/@whatwg-node/node-fetch": { - "version": "0.5.25", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.25.tgz", - "integrity": "sha512-m6TrxcJlS8ptYLTQL+Ex931RFJsoCQtBQWBNHi5b0xHS0C7FJGUJl1asYZ7MdOhZqdiMVcs1lNJeHsfzyUNjOg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dev": true, "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", @@ -3678,9 +3678,9 @@ } }, "node_modules/@graphql-tools/executor-http/node_modules/@whatwg-node/node-fetch": { - "version": "0.5.25", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.25.tgz", - "integrity": "sha512-m6TrxcJlS8ptYLTQL+Ex931RFJsoCQtBQWBNHi5b0xHS0C7FJGUJl1asYZ7MdOhZqdiMVcs1lNJeHsfzyUNjOg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dev": true, "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", @@ -3772,9 +3772,9 @@ } }, "node_modules/@graphql-tools/github-loader/node_modules/@whatwg-node/node-fetch": { - "version": "0.5.25", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.25.tgz", - "integrity": "sha512-m6TrxcJlS8ptYLTQL+Ex931RFJsoCQtBQWBNHi5b0xHS0C7FJGUJl1asYZ7MdOhZqdiMVcs1lNJeHsfzyUNjOg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dev": true, "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", @@ -3960,9 +3960,9 @@ } }, "node_modules/@graphql-tools/prisma-loader/node_modules/@whatwg-node/node-fetch": { - "version": "0.5.25", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.25.tgz", - "integrity": "sha512-m6TrxcJlS8ptYLTQL+Ex931RFJsoCQtBQWBNHi5b0xHS0C7FJGUJl1asYZ7MdOhZqdiMVcs1lNJeHsfzyUNjOg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dev": true, "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", @@ -4056,9 +4056,9 @@ } }, "node_modules/@graphql-tools/url-loader/node_modules/@whatwg-node/node-fetch": { - "version": "0.5.25", - "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.25.tgz", - "integrity": "sha512-m6TrxcJlS8ptYLTQL+Ex931RFJsoCQtBQWBNHi5b0xHS0C7FJGUJl1asYZ7MdOhZqdiMVcs1lNJeHsfzyUNjOg==", + "version": "0.5.26", + "resolved": "https://registry.npmjs.org/@whatwg-node/node-fetch/-/node-fetch-0.5.26.tgz", + "integrity": "sha512-4jXDeZ4IH4bylZ6wu14VEx0aDXXhrN4TC279v9rPmn08g4EYekcYf8wdcOOnS9STjDkb6x77/6xBUTqxGgjr8g==", "dev": true, "dependencies": { "@kamilkisiela/fast-url-parser": "^1.1.4", @@ -4122,9 +4122,9 @@ } }, "node_modules/@headlessui/react": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.3.tgz", - "integrity": "sha512-Nt+NlnQbVvMHVZ/QsST6DNyfG8VWqjOYY3eZpp0PrRKpmZw+pzhwQ1F6wtNaW4jnudeC2a5MJC70vbGVcETNIg==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-2.1.5.tgz", + "integrity": "sha512-m3vzqwMTyDbgaNiSXQdrw8R4tRdnxVHHm4G/ZGS0TP6T8blEj3Ib1/zIJBzlvTXpBjTpd1DsUnRTonHyONMjSQ==", "dependencies": { "@floating-ui/react": "^0.26.16", "@react-aria/focus": "^3.17.1", @@ -6135,6 +6135,12 @@ "win32" ] }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@rushstack/eslint-patch": { "version": "1.10.4", "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", @@ -7241,9 +7247,9 @@ "integrity": "sha512-Gfkvwk9o9kE9r9XNBmJRfV8zONvXThnm1tcuojL04Uy5uRyqg93DC83lDebl0rocZCfKSjUv+fWYtMQmEDJldg==" }, "node_modules/@swc/helpers": { - "version": "0.5.12", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.12.tgz", - "integrity": "sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g==", + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.13.tgz", + "integrity": "sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==", "dependencies": { "tslib": "^2.4.0" } @@ -7260,9 +7266,9 @@ } }, "node_modules/@tailwindcss/forms": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.8.tgz", - "integrity": "sha512-DJs7B7NPD0JH7BVvdHWNviWmunlFhuEkz7FyFxE4japOWYMLl9b1D6+Z9mivJJPWr6AEbmlPqgiFRyLwFB1SgQ==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.9.tgz", + "integrity": "sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==", "dev": true, "dependencies": { "mini-svg-data-uri": "^1.2.3" @@ -7287,11 +7293,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.10.6", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.6.tgz", - "integrity": "sha512-xaSy6uUxB92O8mngHZ6CvbhGuqxQ5lIZWCBy+FjhrbHmOwc6BnOnKkYm2FsB1/BpKw/+FVctlMbEtI+F6I1aJg==", + "version": "3.10.7", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.7.tgz", + "integrity": "sha512-yeP+M0G8D+15ZFPivpuQ5hoM4Fa/PzERBx8P8EGcfEsXX3JOb9G9UUrqc47ZXAxvK+YqzM9T5qlJUYUFOwCZJw==", "dependencies": { - "@tanstack/virtual-core": "3.10.6" + "@tanstack/virtual-core": "3.10.7" }, "funding": { "type": "github", @@ -7303,9 +7309,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.10.6", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.6.tgz", - "integrity": "sha512-1giLc4dzgEKLMx5pgKjL6HlG5fjZMgCjzlKAlpr7yoUtetVPELgER1NtephAI910nMwfPTHNyWKSFmJdHkz2Cw==", + "version": "3.10.7", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.7.tgz", + "integrity": "sha512-ND5dfsU0n9F4gROzwNNDJmg6y8n9pI8YWxtgbfJ5UcNn7Hx+MxEXtXcQ189tS7sh8pmCObgz2qSiyRKTZxT4dg==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -7512,9 +7518,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "22.5.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.1.tgz", - "integrity": "sha512-KkHsxej0j9IW1KKOOAA/XBA0z08UFSrRQHErzEfA3Vgq57eXIMYboIlHJuYIfd+lwCQjtKqUu3UnmKbtUc9yRw==", + "version": "22.5.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.5.4.tgz", + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", "dependencies": { "undici-types": "~6.19.2" } @@ -7526,9 +7532,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.3.4", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz", - "integrity": "sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==", + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.5.tgz", + "integrity": "sha512-WeqMfGJLGuLCqHGYRGHxnKrXcTitc6L/nBUWfWPcTarG3t9PsquqUMuVeXZeca+mglY4Vo5GZjCi0A3Or2lnxA==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -8662,12 +8668,12 @@ } }, "node_modules/axobject-query": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz", - "integrity": "sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" + "engines": { + "node": ">= 0.4" } }, "node_modules/babel-plugin-syntax-trailing-function-commas": { @@ -9109,9 +9115,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001655", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", - "integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", + "version": "1.0.30001657", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001657.tgz", + "integrity": "sha512-DPbJAlP8/BAXy3IgiWmZKItubb3TYGP0WscQQlVGIfT4s/YlFYVuJgyOsQNP7rJRChx/qdMeLJQJP0Sgg2yjNA==", "dev": true, "funding": [ { @@ -10210,11 +10216,11 @@ } }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -10655,9 +10661,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.13", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", - "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", + "version": "1.5.15", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.15.tgz", + "integrity": "sha512-Z4rIDoImwEJW+YYKnPul4DzqsWVqYetYVN3XqDmRpgV0mjz0hYTaeeh+8/9CL1bk3AHYmF4freW/NTiVoXA2gA==", "dev": true }, "node_modules/emoji-regex": { @@ -11132,9 +11138,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.2.tgz", - "integrity": "sha512-3XnC5fDyc8M4J2E8pt8pmSVRX2M+5yWMCfI/kDZwauQeFgzQOuhcRBFKjTeJagqgk4sFKxe1mvNVnaWwImx/Tg==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.10.0.tgz", + "integrity": "sha512-/AXiipjFyfLIUj3E4FR5NEGWoGDZHDfcGzWZkwobRc8fwqUAcy9owTk2LIKwNmtYL8Ad9/XfjSXbGHZ9AJWDEg==", "dev": true, "dependencies": { "debug": "^3.2.7" @@ -11243,26 +11249,27 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz", + "integrity": "sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.9.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", "tsconfig-paths": "^3.15.0" }, @@ -11395,17 +11402,17 @@ } }, "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.9.0.tgz", - "integrity": "sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.0.tgz", + "integrity": "sha512-ySOHvXX8eSN6zz8Bywacm7CvGNhUtdjvqfQDVe6020TUK34Cywkw7m0KsCCk1Qtm9G1FayfTN1/7mMYnYO2Bhg==", "dev": true, "dependencies": { "aria-query": "~5.1.3", "array-includes": "^3.1.8", "array.prototype.flatmap": "^1.3.2", "ast-types-flow": "^0.0.8", - "axe-core": "^4.9.1", - "axobject-query": "~3.1.1", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", "damerau-levenshtein": "^1.0.8", "emoji-regex": "^9.2.2", "es-iterator-helpers": "^1.0.19", @@ -11421,7 +11428,7 @@ "node": ">=4.0" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { @@ -11510,9 +11517,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.35.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", - "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", + "version": "7.35.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.2.tgz", + "integrity": "sha512-Rbj2R9zwP2GYNcIak4xoAMV57hrBh3hTaR0k7hVjwCQgryE/pw5px4b13EYjduOI0hfXyZhwBxaGpOTbWSGzKQ==", "dev": true, "dependencies": { "array-includes": "^3.1.8", @@ -16555,9 +16562,9 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/mustache": { "version": "4.2.0", @@ -17724,9 +17731,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true }, "node_modules/picomatch": { @@ -17914,9 +17921,9 @@ } }, "node_modules/postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.45", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz", + "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==", "dev": true, "funding": [ { @@ -19367,9 +19374,9 @@ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" }, "node_modules/react-intersection-observer": { - "version": "9.13.0", - "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-9.13.0.tgz", - "integrity": "sha512-y0UvBfjDiXqC8h0EWccyaj4dVBWMxgEx0t5RGNzQsvkfvZwugnKwxpu70StY4ivzYuMajavwUDjH4LJyIki9Lw==", + "version": "9.13.1", + "resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-9.13.1.tgz", + "integrity": "sha512-tSzDaTy0qwNPLJHg8XZhlyHTgGW6drFKTtvjdL+p6um12rcnp8Z5XstE+QNBJ7c64n5o0Lj4ilUleA41bmDoMw==", "peerDependencies": { "react": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react-dom": "^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" @@ -20155,12 +20162,6 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/sentence-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", @@ -20980,9 +20981,9 @@ } }, "node_modules/swiper": { - "version": "11.1.11", - "resolved": "https://registry.npmjs.org/swiper/-/swiper-11.1.11.tgz", - "integrity": "sha512-077Aw3OrlZpkkBRf/6+44bGh/HZY/vsLEyate2db2KkJgYUIR5TvDgvvhcJtW/puXzw79w5KBc30DauEX6GZYQ==", + "version": "11.1.12", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-11.1.12.tgz", + "integrity": "sha512-PUkCToYAZMB4kP7z+YfPnkMHOMwMO71g8vUhz2o5INGIgIMb6Sb0XiP6cEJFsiFTd7FRDn5XCbg+KVKPDZqXLw==", "funding": [ { "type": "patreon", @@ -21519,9 +21520,9 @@ } }, "node_modules/tsconfck": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.1.tgz", - "integrity": "sha512-00eoI6WY57SvZEVjm13stEVE90VkEdJAFGgpFLTsZbJyW/LwFQ7uQxJHWpZ2hzSWgCPKc9AnBnNP+0X7o3hAmQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.3.tgz", + "integrity": "sha512-ulNZP1SVpRDesxeMLON/LtWM8HIgAJEIVpVVhBM6gsmvQ8+Rh+ZG7FWGvHh7Ah3pRABwVJWklWCr/BTZSv0xnQ==", "dev": true, "bin": { "tsconfck": "bin/tsconfck.js" @@ -22303,13 +22304,13 @@ } }, "node_modules/vite": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", - "integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.3.tgz", + "integrity": "sha512-IH+nl64eq9lJjFqU+/yrRnrHPVTlgy42/+IzbOdaFDVlyLgI/wDlf+FCobXLX1cT0X5+7LMyH1mIy2xJdLfo8Q==", "dev": true, "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.41", + "postcss": "^8.4.43", "rollup": "^4.20.0" }, "bin": { @@ -23092,9 +23093,9 @@ "dev": true }, "node_modules/yaml": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", - "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz", + "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==", "dev": true, "bin": { "yaml": "bin.mjs" diff --git a/package.json b/package.json index cda2fee..8d2c7a2 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "naturelle", "private": true, "sideEffects": false, - "version": "2.0.4", + "version": "2.0.5", "scripts": { "build": "shopify hydrogen build --codegen", "dev": "shopify hydrogen dev --port 3456 --codegen", @@ -88,4 +88,4 @@ "defaults" ], "type": "module" -} +} \ No newline at end of file