commit 6c20bd1f4e066c0675a8df4751254489695fec4c
parent 12f283dc7ddb1d17409667681385367769467173
Author: Sebastian <sebasjm@taler-systems.com>
Date: Sun, 1 Feb 2026 22:15:37 -0300
fix #10940
Diffstat:
4 files changed, 71 insertions(+), 4 deletions(-)
diff --git a/packages/merchant-backoffice-ui/src/components/form/InputDuration.tsx b/packages/merchant-backoffice-ui/src/components/form/InputDuration.tsx
@@ -161,7 +161,7 @@ export function InputDuration<T>({
</div>
{withForever && (
- <span data-tooltip={i18n.str`Change value to never`}>
+ <span data-tooltip={i18n.str`Change the value to never`}>
<button
type="button"
class="button is-info mr-3"
@@ -172,7 +172,7 @@ export function InputDuration<T>({
</span>
)}
{!readonly && !withoutClear && (
- <span data-tooltip={i18n.str`Change value to empty`}>
+ <span data-tooltip={i18n.str`Change the value to empty`}>
<button
type="button"
class="button is-info mr-3"
diff --git a/packages/merchant-backoffice-ui/src/components/instance/DefaultInstanceFormFields.tsx b/packages/merchant-backoffice-ui/src/components/instance/DefaultInstanceFormFields.tsx
@@ -40,9 +40,15 @@ const TALER_SCREEN_ID = 16;
export function DefaultInstanceFormFields({
readonlyId,
showId,
+ setDefaultPayDelay,
+ setDefaultRefundDelay,
+ setDefaultWireDelay
}: {
readonlyId?: boolean;
showId: boolean;
+ setDefaultPayDelay: () => void;
+ setDefaultRefundDelay: () => void;
+ setDefaultWireDelay: () => void;
}): VNode {
const { i18n } = useTranslationContext();
const { state } = useSessionContext();
@@ -120,6 +126,20 @@ export function DefaultInstanceFormFields({
label={i18n.str`Payment delay`}
tooltip={i18n.str`Time customers have to pay an order before the offer expires by default.`}
useProtocolDuration
+ withoutClear
+ side={<span data-tooltip={i18n.str`Change the value to the default value specified by the server.`}>
+ <button
+ type="button"
+ class="button is-info mr-3"
+ onClick={() => {
+ console.log("dale")
+ setDefaultPayDelay()
+ }}
+ >
+ <i18n.Translate>Reset</i18n.Translate>
+ </button>
+ </span>
+ }
/>
<InputDuration<Entity>
@@ -127,6 +147,20 @@ export function DefaultInstanceFormFields({
label={i18n.str`Refund delay`}
tooltip={i18n.str`Time merchants have to refund an order.`}
useProtocolDuration
+ withoutClear
+ side={<span data-tooltip={i18n.str`Change the value to the default value specified by the server.`}>
+ <button
+ type="button"
+ class="button is-info mr-3"
+ onClick={() => {
+ console.log("dale")
+ setDefaultRefundDelay()
+ }}
+ >
+ <i18n.Translate>Reset</i18n.Translate>
+ </button>
+ </span>
+ }
/>
<InputDuration<Entity>
@@ -134,6 +168,20 @@ export function DefaultInstanceFormFields({
label={i18n.str`Wire transfer delay`}
tooltip={i18n.str`Maximum time an exchange is allowed to delay wiring funds to the merchant, enabling it to aggregate smaller payments into larger wire transfers and reducing wire fees.`}
useProtocolDuration
+ withoutClear
+ side={<span data-tooltip={i18n.str`Change the value to the default value specified by the server.`}>
+ <button
+ type="button"
+ class="button is-info mr-3"
+ onClick={() => {
+ console.log("dale")
+ setDefaultWireDelay()
+ }}
+ >
+ <i18n.Translate>Reset</i18n.Translate>
+ </button>
+ </span>
+ }
/>
<InputSelector<Entity>
diff --git a/packages/merchant-backoffice-ui/src/paths/admin/create/CreatePage.tsx b/packages/merchant-backoffice-ui/src/paths/admin/create/CreatePage.tsx
@@ -243,6 +243,15 @@ export function CreatePage({ onConfirm, onBack, forceId }: Props): VNode {
<DefaultInstanceFormFields
readonlyId={!!forceId}
showId={!forceId}
+ setDefaultPayDelay={() => {
+ valueHandler( v => ({...v, default_pay_delay: config.default_pay_delay}))
+ }}
+ setDefaultRefundDelay={() => {
+ valueHandler( v => ({...v, default_refund_delay: config.default_refund_delay}))
+ }}
+ setDefaultWireDelay={() => {
+ valueHandler( v => ({...v, default_wire_transfer_delay: config.default_wire_transfer_delay}))
+ }}
/>
<InputPassword<Entity>
expand
diff --git a/packages/merchant-backoffice-ui/src/paths/instance/update/UpdatePage.tsx b/packages/merchant-backoffice-ui/src/paths/instance/update/UpdatePage.tsx
@@ -84,7 +84,7 @@ export function UpdatePage({
selected,
onBack,
}: Props): VNode {
- const { state } = useSessionContext();
+ const { state, config} = useSessionContext();
const [value, valueHandler] = useState<Partial<Entity>>(convert(selected));
@@ -204,7 +204,17 @@ export function UpdatePage({
object={value}
valueHandler={valueHandler}
>
- <DefaultInstanceFormFields showId={false} />
+ <DefaultInstanceFormFields showId={false}
+ setDefaultPayDelay={() => {
+ valueHandler( v => ({...v, default_pay_delay: config.default_pay_delay}))
+ }}
+ setDefaultRefundDelay={() => {
+ valueHandler( v => ({...v, default_refund_delay: config.default_refund_delay}))
+ }}
+ setDefaultWireDelay={() => {
+ valueHandler( v => ({...v, default_wire_transfer_delay: config.default_wire_transfer_delay}))
+ }}
+ />
<div class="buttons is-right mt-4">
<button