summaryrefslogtreecommitdiff
path: root/packages/aml-backoffice-ui/src/forms/902_12e.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/aml-backoffice-ui/src/forms/902_12e.ts')
-rw-r--r--packages/aml-backoffice-ui/src/forms/902_12e.ts147
1 files changed, 81 insertions, 66 deletions
diff --git a/packages/aml-backoffice-ui/src/forms/902_12e.ts b/packages/aml-backoffice-ui/src/forms/902_12e.ts
index 0c08d274c..5aa3f4cf9 100644
--- a/packages/aml-backoffice-ui/src/forms/902_12e.ts
+++ b/packages/aml-backoffice-ui/src/forms/902_12e.ts
@@ -1,23 +1,38 @@
-import type { AbsoluteTime, TranslatedString } from "@gnu-taler/taler-util";
-import type { FlexibleForm, FormState, InternationalizationAPI } from "@gnu-taler/web-util/browser";
+/*
+ This file is part of GNU Taler
+ (C) 2022-2024 Taler Systems S.A.
+
+ GNU Taler is free software; you can redistribute it and/or modify it under the
+ terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 3, or (at your option) any later version.
+
+ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along with
+ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
+ */
+import type { AbsoluteTime } from "@gnu-taler/taler-util";
+import type { FormState, InternationalizationAPI } from "@gnu-taler/web-util/browser";
+import { BaseForm } from "../context/ui-forms.js";
import { resolutionSection } from "./simplest.js";
-import { BaseForm } from "./declaration.js";
-export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): FlexibleForm<Form902_12.Form> => ({
+export const v1 = (i18n: InternationalizationAPI) => ({
design: [
{
title: i18n.str`Foundations`,
fields: [
{
type: "textArea",
- props: {
+ properties: {
name: "contractingPartner",
label: i18n.str`Contracting partner`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "knownAs",
label:
i18n.str`The undersigned hereby declare(s) that as board member of the foundation, or of the highest supervisory body of an underlying company of a foundation, known as`,
@@ -25,7 +40,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "foundation.name",
label:
i18n.str`Name and information pertaining to the foundation`,
@@ -33,7 +48,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "choiceStacked",
- props: {
+ properties: {
name: "foundation.type",
label: i18n.str`Type of foundation`,
choices: [
@@ -50,7 +65,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "choiceStacked",
- props: {
+ properties: {
name: "foundation.revocability",
label: i18n.str`Revocability`,
choices: [
@@ -67,7 +82,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "array",
- props: {
+ properties: {
label:
i18n.str`Information pertaining to the (ultimate economic, not fiduciary) founder (individual(s) or entity/ies)`,
labelField: "fullName",
@@ -75,7 +90,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
fields: [
{
type: "text",
- props: {
+ properties: {
name: "fullName",
label:
i18n.str`Last name(s), first name(s)/entity`,
@@ -83,7 +98,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "address",
label:
i18n.str`Actual address of domicile/registered office`,
@@ -91,28 +106,28 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "country",
label: i18n.str`Country`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfBirth",
label: i18n.str`Date of birth`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "nationality",
label: i18n.str`Nationality`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfDeath",
label: i18n.str`Date of death`,
help: i18n.str`if deceased`,
@@ -120,7 +135,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "choiceStacked",
- props: {
+ properties: {
name: "rightToRevoke",
required: true,
label:
@@ -142,7 +157,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "array",
- props: {
+ properties: {
label:
i18n.str`If the foundation results from the restructuring of pre-existing foundation (re-settlement) or the merger of pre-existing foundations, the following information pertaining to the (actual) founder(s) of the pre-existing foundation(s) has to be given`,
labelField: "fullName",
@@ -150,7 +165,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
fields: [
{
type: "text",
- props: {
+ properties: {
name: "fullName",
label:
i18n.str`Last name(s), first name(s)/entity`,
@@ -158,7 +173,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "address",
label:
i18n.str`Actual address of domicile/registered office`,
@@ -166,28 +181,28 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "country",
label: i18n.str`Country`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfBirth",
label: i18n.str`Date of birth`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "nationality",
label: i18n.str`Nationality`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfDeath",
label: i18n.str`Date of death`,
help: i18n.str`if deceased`,
@@ -198,7 +213,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "array",
- props: {
+ properties: {
label:
i18n.str`Pertaining to the beneficiary/-ies at the time of the signing of this form`,
labelField: "fullName",
@@ -206,7 +221,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
fields: [
{
type: "text",
- props: {
+ properties: {
name: "fullName",
label:
i18n.str`Last name(s), first name(s)/entity`,
@@ -214,7 +229,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "address",
label:
i18n.str`Actual address of domicile/registered office`,
@@ -222,28 +237,28 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "country",
label: i18n.str`Country`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfBirth",
label: i18n.str`Date of birth`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "nationality",
label: i18n.str`Nationality`,
},
},
{
type: "choiceStacked",
- props: {
+ properties: {
name: "rightToClaim",
label:
i18n.str`Has the beneficiary an actual right to claim distribution?`,
@@ -261,7 +276,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "textArea",
- props: {
+ properties: {
label:
i18n.str`in addition to certain beneficiaries or if there is/are no defined beneficiary/ies pertaining to (a) group(s) of beneficiaries (e.g. descendants of the founder) known at the time of the signing of this form`,
name: "beneficiaryExtra",
@@ -272,7 +287,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "array",
- props: {
+ properties: {
label:
i18n.str`Information pertaining to further persons having the right to determine or nominate representatives (e.g.) members of the foundation board), if these representatives may dispose over the assets or have the right to change the distribution of the assets or the nomination of beneficiaries`,
labelField: "fullName",
@@ -280,7 +295,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
fields: [
{
type: "text",
- props: {
+ properties: {
name: "fullName",
label:
i18n.str`Last name(s), first name(s)/entity`,
@@ -288,7 +303,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "address",
label:
i18n.str`Actual address of domicile/registered office`,
@@ -296,28 +311,28 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "country",
label: i18n.str`Country`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "dateOfBirth",
label: i18n.str`Date of birth`,
},
},
{
type: "text",
- props: {
+ properties: {
name: "nationality",
label: i18n.str`Nationality`,
},
},
{
type: "choiceStacked",
- props: {
+ properties: {
name: "rightToClaim",
label:
i18n.str`has the person the right to revoke the foundation?`,
@@ -335,7 +350,7 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "textArea",
- props: {
+ properties: {
label:
i18n.str`in addition to certain beneficiaries or if there is/are no defined beneficiary/ies pertaining to (a) group(s) of beneficiaries (e.g. descendants of the founder) known at the time of the signing of this form`,
name: "beneficiaryExtra",
@@ -346,39 +361,39 @@ export const v1 = (i18n: InternationalizationAPI) => (current: BaseForm): Flexib
},
{
type: "text",
- props: {
+ properties: {
name: "signature",
label: i18n.str`Signature`,
},
},
],
},
- resolutionSection(current, i18n),
+ resolutionSection(i18n),
],
- behavior: function formBehavior(
- v: Partial<Form902_12.Form>,
- ): FormState<Form902_12.Form> {
- return {
- founders: {
- elements: (v.founders ?? []).map((f) => {
- return {
- rightToRevoke: {
- hidden: v.foundation?.revocability !== "revocable",
- },
- };
- }),
- },
- withRightToNominate: {
- elements: (v.withRightToNominate ?? []).map((f) => {
- return {
- rightToRevoke: {
- hidden: v.foundation?.revocability !== "revocable",
- },
- };
- }),
- },
- };
- },
+ // behavior: function formBehavior(
+ // v: Partial<Form902_12.Form>,
+ // ): FormState<Form902_12.Form> {
+ // return {
+ // founders: {
+ // elements: (v.founders ?? []).map(() => {
+ // return {
+ // rightToRevoke: {
+ // hidden: v.foundation?.revocability !== "revocable",
+ // },
+ // };
+ // }),
+ // },
+ // withRightToNominate: {
+ // elements: (v.withRightToNominate ?? []).map(() => {
+ // return {
+ // rightToRevoke: {
+ // hidden: v.foundation?.revocability !== "revocable",
+ // },
+ // };
+ // }),
+ // },
+ // };
+ // },
});
namespace Form902_12 {