commit 3aea0c779f14e23aaadb6018bf27ad22865502fa parent ef6b025b7fbd80fab0da33cc1771d87fa55126d1 Author: Sebastian <sebasjm@gmail.com> Date: Tue, 11 Feb 2025 13:00:29 -0300 fix #9522 Diffstat:
3 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/packages/merchant-backoffice-ui/src/components/product/NonInventoryProductForm.tsx b/packages/merchant-backoffice-ui/src/components/product/NonInventoryProductForm.tsx @@ -25,6 +25,7 @@ import { InputCurrency } from "../form/InputCurrency.js"; import { InputImage } from "../form/InputImage.js"; import { InputNumber } from "../form/InputNumber.js"; import { InputTaxes } from "../form/InputTaxes.js"; +import { usePreference } from "../../hooks/preference.js"; type Entity = TalerMerchantApi.Product; @@ -140,6 +141,7 @@ interface NonInventoryProduct { export function ProductForm({ onSubscribe, initial }: ProductProps): VNode { const { i18n } = useTranslationContext(); + const [preference] = usePreference(); const [value, valueHandler] = useState<Partial<NonInventoryProduct>>({ taxes: [], ...initial, @@ -154,7 +156,7 @@ export function ProductForm({ onSubscribe, initial }: ProductProps): VNode { ? i18n.str`Must be grater than 0` : undefined, description: !value.description ? i18n.str`Required` : undefined, - unit: !value.description ? i18n.str`Required` : undefined, + unit: !value.unit ? i18n.str`Required` : undefined, price: !value.price ? i18n.str`Required` : Amounts.parse(value.price) === undefined @@ -193,12 +195,12 @@ export function ProductForm({ onSubscribe, initial }: ProductProps): VNode { /> <Input<NonInventoryProduct> name="unit" - label={i18n.str`Unit`} + label={i18n.str`Unit name`} tooltip={i18n.str`Name of the product unit.`} /> <InputCurrency<NonInventoryProduct> name="price" - label={i18n.str`Price`} + label={i18n.str`Price per unit`} tooltip={i18n.str`Amount in the current currency.`} /> @@ -208,7 +210,14 @@ export function ProductForm({ onSubscribe, initial }: ProductProps): VNode { tooltip={i18n.str`How many products will be added.`} /> - <InputTaxes<NonInventoryProduct> name="taxes" label={i18n.str`Taxes`} /> + {preference.developerMode ? ( + <InputTaxes<NonInventoryProduct> + name="taxes" + label={i18n.str`Taxes`} + /> + ) : ( + <Fragment /> + )} </FormProvider> </div> ); diff --git a/packages/merchant-backoffice-ui/src/components/product/ProductList.tsx b/packages/merchant-backoffice-ui/src/components/product/ProductList.tsx @@ -43,7 +43,7 @@ export function ProductList({ list, actions = [] }: Props): VNode { <i18n.Translate>Quantity</i18n.Translate> </th> <th> - <i18n.Translate>Unit price</i18n.Translate> + <i18n.Translate>Price per unit</i18n.Translate> </th> <th> <i18n.Translate>Total price</i18n.Translate> @@ -59,7 +59,7 @@ export function ProductList({ list, actions = [] }: Props): VNode { : Amounts.stringify( Amounts.mult( Amounts.parseOrThrow(entry.price), - entry.quantity ?? 0 + entry.quantity ?? 0, ).amount, ); diff --git a/packages/merchant-backoffice-ui/src/paths/instance/products/list/Table.tsx b/packages/merchant-backoffice-ui/src/paths/instance/products/list/Table.tsx @@ -374,7 +374,7 @@ function FastProductWithInfiniteStockUpdateForm({ > <InputCurrency<FastProductUpdate> name="price" - label={i18n.str`Price`} + label={i18n.str`Price per unit`} tooltip={i18n.str`Update the product with new price`} /> </FormProvider> @@ -454,7 +454,7 @@ function FastProductWithManagedStockUpdateForm({ /> <InputCurrency<FastProductUpdate> name="price" - label={i18n.str`Price`} + label={i18n.str`Price per unit`} tooltip={i18n.str`New price for the product`} /> </FormProvider>