diff --git a/CHANGELOG.md b/CHANGELOG.md index c8b8045c4..078f89eea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ All notable, unreleased changes to this project will be documented in this file. - Unify dialog handling - #296 by @dominik-zeglen - Stop using deprecated fields - #357 by @dominik-zeglen - Throw error when API_URI is not set - #375 by @dominik-zeglen +- Fix variant stock input - #377 by @dominik-zeglen ## 2.0.0 diff --git a/src/products/components/ProductVariantCreatePage/ProductVariantCreatePage.tsx b/src/products/components/ProductVariantCreatePage/ProductVariantCreatePage.tsx index 02c677497..68be2da0b 100644 --- a/src/products/components/ProductVariantCreatePage/ProductVariantCreatePage.tsx +++ b/src/products/components/ProductVariantCreatePage/ProductVariantCreatePage.tsx @@ -28,7 +28,7 @@ interface ProductVariantCreatePageFormData { costPrice: string; images: string[]; priceOverride: string; - quantity: number; + quantity: string; sku: string; } @@ -82,7 +82,7 @@ const ProductVariantCreatePage: React.FC = ({ costPrice: "", images: maybe(() => product.images.map(image => image.id)), priceOverride: "", - quantity: 0, + quantity: "0", sku: "" }; diff --git a/src/products/components/ProductVariantPage/ProductVariantPage.tsx b/src/products/components/ProductVariantPage/ProductVariantPage.tsx index 10ab1036e..f083d4667 100644 --- a/src/products/components/ProductVariantPage/ProductVariantPage.tsx +++ b/src/products/components/ProductVariantPage/ProductVariantPage.tsx @@ -28,7 +28,7 @@ import ProductVariantStock from "../ProductVariantStock"; export interface ProductVariantPageFormData { costPrice: string; priceOverride: string; - quantity: number; + quantity: string; sku: string; } @@ -92,7 +92,7 @@ const ProductVariantPage: React.FC = ({ const initialForm: ProductVariantPageFormData = { costPrice: maybe(() => variant.costPrice.amount.toString(), ""), priceOverride: maybe(() => variant.priceOverride.amount.toString(), ""), - quantity: maybe(() => variant.quantity, 0), + quantity: maybe(() => variant.quantity.toString(), "0"), sku: maybe(() => variant.sku, "") }; diff --git a/src/products/components/ProductVariantStock/ProductVariantStock.tsx b/src/products/components/ProductVariantStock/ProductVariantStock.tsx index b05629234..2ab993d36 100644 --- a/src/products/components/ProductVariantStock/ProductVariantStock.tsx +++ b/src/products/components/ProductVariantStock/ProductVariantStock.tsx @@ -24,7 +24,7 @@ interface ProductVariantStockProps { sku?: string; }; sku: string; - quantity: number; + quantity: string; stockAllocated?: number; loading?: boolean; onChange(event: any); diff --git a/src/products/views/ProductVariant.tsx b/src/products/views/ProductVariant.tsx index 4456f77d1..9a84078f5 100644 --- a/src/products/views/ProductVariant.tsx +++ b/src/products/views/ProductVariant.tsx @@ -127,7 +127,7 @@ export const ProductVariant: React.FC = ({ costPrice: decimal(data.costPrice), id: variantId, priceOverride: decimal(data.priceOverride), - quantity: data.quantity || null, + quantity: parseInt(data.quantity, 0), sku: data.sku, trackInventory: true // FIXME: missing in UI }); diff --git a/src/products/views/ProductVariantCreate.tsx b/src/products/views/ProductVariantCreate.tsx index 9bd11624c..03dc559d1 100644 --- a/src/products/views/ProductVariantCreate.tsx +++ b/src/products/views/ProductVariantCreate.tsx @@ -66,7 +66,7 @@ export const ProductVariant: React.FC = ({ productId }) => { costPrice: decimal(formData.costPrice), priceOverride: decimal(formData.priceOverride), product: productId, - quantity: formData.quantity || null, + quantity: parseInt(formData.quantity, 0), sku: formData.sku, trackInventory: true }