gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: fix compile error


From: gnunet
Subject: [taler-wallet-core] branch master updated: fix compile error
Date: Tue, 21 Nov 2023 12:16:20 +0100

This is an automated email from the git hooks/post-receive script.

sebasjm pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new 7c8c7692f fix compile error
7c8c7692f is described below

commit 7c8c7692fb179e049ca80087d3573dc9b256fcdb
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Tue Nov 21 08:15:21 2023 -0300

    fix compile error
---
 packages/aml-backoffice-ui/src/NiceForm.tsx              |  1 -
 packages/aml-backoffice-ui/src/forms/902_15e.ts          |  8 +-------
 packages/aml-backoffice-ui/src/forms/index.ts            |  2 +-
 packages/aml-backoffice-ui/src/forms/simplest.ts         |  2 +-
 packages/aml-backoffice-ui/src/handlers/FormProvider.tsx | 13 ++++++++++++-
 .../src/pages/AntiMoneyLaunderingForm.tsx                | 16 ++++++++--------
 packages/aml-backoffice-ui/src/pages/CaseDetails.tsx     |  9 ++++-----
 .../aml-backoffice-ui/src/pages/ShowConsolidated.tsx     |  5 ++---
 8 files changed, 29 insertions(+), 27 deletions(-)

diff --git a/packages/aml-backoffice-ui/src/NiceForm.tsx 
b/packages/aml-backoffice-ui/src/NiceForm.tsx
index a78036a6b..53f29e580 100644
--- a/packages/aml-backoffice-ui/src/NiceForm.tsx
+++ b/packages/aml-backoffice-ui/src/NiceForm.tsx
@@ -1,4 +1,3 @@
-import { useTranslationContext } from "@gnu-taler/web-util/browser";
 import { ComponentChildren, Fragment, h } from "preact";
 import { FlexibleForm } from "./forms/index.js";
 import { FormProvider } from "./handlers/FormProvider.js";
diff --git a/packages/aml-backoffice-ui/src/forms/902_15e.ts 
b/packages/aml-backoffice-ui/src/forms/902_15e.ts
index 0d90d82ee..6689896ab 100644
--- a/packages/aml-backoffice-ui/src/forms/902_15e.ts
+++ b/packages/aml-backoffice-ui/src/forms/902_15e.ts
@@ -1,8 +1,7 @@
 import { AbsoluteTime, TranslatedString } from "@gnu-taler/taler-util";
-import { FormState } from "../handlers/FormProvider.js";
 import { BaseForm } from "../pages/AntiMoneyLaunderingForm.js";
 import { FlexibleForm } from "./index.js";
-import { Simplest, resolutionSection } from "./simplest.js";
+import { resolutionSection } from "./simplest.js";
 
 export const v1 = (current: BaseForm): FlexibleForm<Form902_15.Form> => ({
   design: [
@@ -152,11 +151,6 @@ export const v1 = (current: BaseForm): 
FlexibleForm<Form902_15.Form> => ({
     },
     resolutionSection(current),
   ],
-  behavior: function formBehavior(
-    v: Partial<Form902_15.Form>,
-  ): FormState<Form902_15.Form> {
-    return {};
-  },
 });
 
 namespace Form902_15 {
diff --git a/packages/aml-backoffice-ui/src/forms/index.ts 
b/packages/aml-backoffice-ui/src/forms/index.ts
index 8feef0c49..74407ed82 100644
--- a/packages/aml-backoffice-ui/src/forms/index.ts
+++ b/packages/aml-backoffice-ui/src/forms/index.ts
@@ -4,7 +4,7 @@ import { DoubleColumnForm } from "../handlers/forms.js";
 
 export interface FlexibleForm<T extends object> {
   design: DoubleColumnForm;
-  behavior: (form: Partial<T>) => FormState<T>;
+  behavior?: (form: Partial<T>) => FormState<T>;
 }
 
 export const languageList = [
diff --git a/packages/aml-backoffice-ui/src/forms/simplest.ts 
b/packages/aml-backoffice-ui/src/forms/simplest.ts
index 5acb58201..778d20b75 100644
--- a/packages/aml-backoffice-ui/src/forms/simplest.ts
+++ b/packages/aml-backoffice-ui/src/forms/simplest.ts
@@ -33,7 +33,7 @@ export const v1 = (current: BaseForm): 
FlexibleForm<Simplest.Form> => ({
   ): FormState<Simplest.Form> {
     return {
       comment: {
-        help: ((v.comment?.length ?? 0) > 10 ? "too long" : "") as 
TranslatedString
+        help: ((v.comment?.length ?? 0) > 100 ? "keep it short" : "") as 
TranslatedString
       },
       threshold: {
         disabled: v.state === AmlExchangeBackend.AmlState.frozen,
diff --git a/packages/aml-backoffice-ui/src/handlers/FormProvider.tsx 
b/packages/aml-backoffice-ui/src/handlers/FormProvider.tsx
index 2d9eec164..b3cb7a972 100644
--- a/packages/aml-backoffice-ui/src/handlers/FormProvider.tsx
+++ b/packages/aml-backoffice-ui/src/handlers/FormProvider.tsx
@@ -21,6 +21,17 @@ export interface FormType<T extends object> {
 //@ts-ignore
 export const FormContext = createContext<FormType<any>>({});
 
+/**
+ * Map of {[field]:BehaviorResult}
+ * for every field of type
+ *  - any native (string, number, etc...)
+ *  - absoluteTime
+ *  - amountJson
+ * 
+ * except for: 
+ *  - object => recurse into
+ *  - array => behavior result and element field
+ */
 export type FormState<T extends object> = {
   [field in keyof T]?: T[field] extends AbsoluteTime
   ? BehaviorResult
@@ -28,7 +39,7 @@ export type FormState<T extends object> = {
   ? BehaviorResult
   : T[field] extends Array<infer P extends object>
   ? InputArrayFieldState<P>
-  : T[field] extends (object | undefined)
+  : T[field] extends (object)
   ? FormState<T[field]>
   : BehaviorResult;
 };
diff --git a/packages/aml-backoffice-ui/src/pages/AntiMoneyLaunderingForm.tsx 
b/packages/aml-backoffice-ui/src/pages/AntiMoneyLaunderingForm.tsx
index d1fb3b895..381f00ebb 100644
--- a/packages/aml-backoffice-ui/src/pages/AntiMoneyLaunderingForm.tsx
+++ b/packages/aml-backoffice-ui/src/pages/AntiMoneyLaunderingForm.tsx
@@ -1,5 +1,5 @@
 import { AbsoluteTime, AmountJson, Amounts, Codec, OperationResult, 
buildCodecForObject, codecForNumber, codecForString, codecOptional } from 
"@gnu-taler/taler-util";
-import { FlexibleForm, useTranslationContext } from 
"@gnu-taler/web-util/browser";
+import { useTranslationContext } from "@gnu-taler/web-util/browser";
 import { h } from "preact";
 import { NiceForm } from "../NiceForm.js";
 import { v1 as form_902_11e_v1 } from "../forms/902_11e.js";
@@ -10,10 +10,11 @@ import { v1 as form_902_1e_v1 } from "../forms/902_1e.js";
 import { v1 as form_902_4e_v1 } from "../forms/902_4e.js";
 import { v1 as form_902_5e_v1 } from "../forms/902_5e.js";
 import { v1 as form_902_9e_v1 } from "../forms/902_9e.js";
-import { Simplest, v1 as simplest } from "../forms/simplest.js";
+import { v1 as simplest } from "../forms/simplest.js";
 import { Pages } from "../pages.js";
 import { AmlExchangeBackend } from "../types.js";
 import { useExchangeApiContext } from "../context/config.js";
+import { FlexibleForm } from "../forms/index.js";
 
 export function AntiMoneyLaunderingForm({ account, formId, onSubmit }: { 
account: string, formId: string, onSubmit: (justification: Justification, 
state: AmlExchangeBackend.AmlState, threshold: AmountJson) => Promise<void>; }) 
{
   const { i18n } = useTranslationContext()
@@ -51,7 +52,6 @@ export function AntiMoneyLaunderingForm({ account, formId, 
onSubmit }: { account
     >
       <div class="mt-6 flex items-center justify-end gap-x-6">
         <a
-          //   type="button"
           href={Pages.account.url({ account })}
           class="text-sm font-semibold leading-6 text-gray-900"
         >
@@ -78,18 +78,18 @@ const DocumentDuplicateIcon = <svg 
xmlns="http://www.w3.org/2000/svg"; fill="none
 </svg>
 
 
-export type FormMetadata = {
+export type FormMetadata<T extends BaseForm> = {
   label: string,
   id: string,
   version: number,
   icon: h.JSX.Element,
-  impl: (current: BaseForm) => FlexibleForm<BaseForm>
+  impl: (current: BaseForm) => FlexibleForm<T>
 }
 
 export type Justification<T = any> = {
   // form values
   value: T;
-} & Omit<Omit<FormMetadata, "icon">, "impl">
+} & Omit<Omit<FormMetadata<any>, "icon">, "impl">
 
 export function stringifyJustification(j: Justification): string {
   return JSON.stringify(j)
@@ -113,7 +113,7 @@ type ParseJustificationFail =
   "form-not-found" |
   "version-not-found";
 
-export function parseJustification(s: string, listOfAllKnownForms: 
FormMetadata[]): OperationResult<{ justification: Justification, metadata: 
FormMetadata }, ParseJustificationFail> {
+export function parseJustification(s: string, listOfAllKnownForms: 
FormMetadata<any>[]): OperationResult<{ justification: Justification, metadata: 
FormMetadata<any> }, ParseJustificationFail> {
   try {
     const justification = JSON.parse(s)
     const info = codecForSimpleFormMetadata().decode(justification)
@@ -157,7 +157,7 @@ export function parseJustification(s: string, 
listOfAllKnownForms: FormMetadata[
 
 }
 
-export const allForms: Array<FormMetadata> = [
+export const allForms: Array<FormMetadata<BaseForm>> = [
   {
     label: "Simple comment",
     id: "simple_comment",
diff --git a/packages/aml-backoffice-ui/src/pages/CaseDetails.tsx 
b/packages/aml-backoffice-ui/src/pages/CaseDetails.tsx
index 1cfa65926..9d6126ce3 100644
--- a/packages/aml-backoffice-ui/src/pages/CaseDetails.tsx
+++ b/packages/aml-backoffice-ui/src/pages/CaseDetails.tsx
@@ -2,7 +2,6 @@ import {
   AbsoluteTime,
   AmountJson,
   Amounts,
-  OperationResult,
   TalerError,
   TranslatedString,
   assertUnreachable
@@ -11,12 +10,12 @@ import { ErrorLoading, Loading, useTranslationContext } 
from "@gnu-taler/web-uti
 import { format } from "date-fns";
 import { Fragment, VNode, h } from "preact";
 import { useState } from "preact/hooks";
+import { NiceForm } from "../NiceForm.js";
 import { useCaseDetails } from "../hooks/useCaseDetails.js";
 import { Pages } from "../pages.js";
 import { AmlExchangeBackend } from "../types.js";
-import { ShowConsolidated } from "./ShowConsolidated.js";
 import { FormMetadata, Justification, allForms, parseJustification } from 
"./AntiMoneyLaunderingForm.js";
-import { NiceForm } from "../NiceForm.js";
+import { ShowConsolidated } from "./ShowConsolidated.js";
 
 export type AmlEvent = AmlFormEvent | AmlFormEventError | KycCollectionEvent | 
KycExpirationEvent;
 type AmlFormEvent = {
@@ -24,7 +23,7 @@ type AmlFormEvent = {
   when: AbsoluteTime;
   title: TranslatedString;
   justification: Justification;
-  metadata: FormMetadata;
+  metadata: FormMetadata<any>;
   state: AmlExchangeBackend.AmlState;
   threshold: AmountJson;
 };
@@ -112,7 +111,7 @@ export function getEventsFromAmlHistory(
 
 export function CaseDetails({ account }: { account: string }) {
   const [selected, setSelected] = useState<AbsoluteTime>(AbsoluteTime.now());
-  const [showForm, setShowForm] = useState<{ justification: Justification, 
metadata: FormMetadata }>()
+  const [showForm, setShowForm] = useState<{ justification: Justification, 
metadata: FormMetadata<any> }>()
 
   const { i18n } = useTranslationContext();
   const details = useCaseDetails(account)
diff --git a/packages/aml-backoffice-ui/src/pages/ShowConsolidated.tsx 
b/packages/aml-backoffice-ui/src/pages/ShowConsolidated.tsx
index 0efc68632..bd25ce958 100644
--- a/packages/aml-backoffice-ui/src/pages/ShowConsolidated.tsx
+++ b/packages/aml-backoffice-ui/src/pages/ShowConsolidated.tsx
@@ -18,7 +18,6 @@ export function ShowConsolidated({
   const cons = getConsolidated(history, until);
 
   const form: FlexibleForm<Consolidated> = {
-    versionId: "1",
     behavior: (form) => {
       return {
         aml: {
@@ -93,10 +92,10 @@ export function ShowConsolidated({
   return (
     <Fragment>
       <h1 class="text-base font-semibold leading-7 text-black">
-        Consolidated information 
+        Consolidated information
         {until.t_ms === "never"
           ? ""
-          : `after ${format(until.t_ms, "dd MMMM yyyy")}` }
+          : `after ${format(until.t_ms, "dd MMMM yyyy")}`}
       </h1>
       <NiceForm
         key={`${String(Date.now())}`}

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]