@lysaab/lysa-pep 1.0.2-0 → 1.0.3-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Exports.d.ts +7 -7
- package/lib/Exports.js +7 -7
- package/lib/components/CountrySelect.d.ts +15 -15
- package/lib/components/CountrySelect.js +30 -30
- package/lib/components/PepAnswers.d.ts +8 -8
- package/lib/components/PepAnswers.js +131 -131
- package/lib/components/PepAnswers.scss +7 -7
- package/lib/model/Countries.d.ts +4 -4
- package/lib/model/Countries.js +1002 -1002
- package/lib/model/PepModel.d.ts +7 -7
- package/lib/model/PepModel.js +40 -40
- package/lib/model/PepTexts.d.ts +380 -322
- package/lib/model/PepTexts.js +552 -467
- package/lib/pages/IsPep/IsPepMessages.d.ts +32 -32
- package/lib/pages/IsPep/IsPepMessages.js +66 -66
- package/lib/pages/IsPep/IsPepPage.d.ts +14 -14
- package/lib/pages/IsPep/IsPepPage.js +59 -59
- package/lib/pages/PepContext.d.ts +80 -80
- package/lib/pages/PepContext.js +88 -88
- package/lib/pages/PepIsPepPage.d.ts +15 -6
- package/lib/pages/PepIsPepPage.js +59 -57
- package/lib/pages/PepRelationPage.d.ts +6 -6
- package/lib/pages/PepRelationPage.js +79 -83
- package/lib/pages/PepRolePage.d.ts +10 -9
- package/lib/pages/PepRolePage.js +127 -127
- package/lib/pages/PepStatusPage.d.ts +6 -6
- package/lib/pages/PepStatusPage.js +58 -57
- package/lib/pages/RelationPage/RelationMessages.d.ts +105 -105
- package/lib/pages/RelationPage/RelationMessages.js +283 -283
- package/lib/pages/RelationPage/RelationPage.d.ts +6 -6
- package/lib/pages/RelationPage/RelationPage.js +153 -153
- package/lib/pages/RolePage/RoleMessages.d.ts +185 -185
- package/lib/pages/RolePage/RoleMessages.js +385 -385
- package/lib/pages/RolePage/RolePage.d.ts +11 -11
- package/lib/pages/RolePage/RolePage.js +220 -220
- package/lib/pages/StatusPage/StatusMessages.d.ts +72 -72
- package/lib/pages/StatusPage/StatusMessages.js +266 -266
- package/lib/pages/StatusPage/StatusPage.d.ts +6 -6
- package/lib/pages/StatusPage/StatusPage.js +95 -95
- package/lib/utils/Possession.d.ts +1 -1
- package/lib/utils/Possession.js +18 -18
- package/package.json +57 -57
- package/src/Exports.ts +12 -12
- package/src/components/CountrySelect.tsx +47 -47
- package/src/components/PepAnswers.scss +7 -7
- package/src/components/PepAnswers.tsx +252 -252
- package/src/demo/Done.tsx +16 -16
- package/src/demo/Pep.tsx +112 -112
- package/src/model/PepModel.ts +52 -52
- package/src/pages/IsPep/IsPepMessages.ts +67 -67
- package/src/pages/IsPep/IsPepPage.tsx +115 -114
- package/src/pages/PepContext.tsx +144 -144
- package/src/pages/RelationPage/RelationMessages.ts +288 -288
- package/src/pages/RelationPage/RelationPage.tsx +299 -299
- package/src/pages/RolePage/RoleMessages.ts +393 -393
- package/src/pages/RolePage/RolePage.tsx +356 -356
- package/src/pages/StatusPage/StatusMessages.ts +272 -272
- package/src/pages/StatusPage/StatusPage.tsx +207 -207
- package/.vscode/settings.json +0 -4
package/lib/pages/PepContext.js
CHANGED
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
import React, { useReducer } from "react";
|
|
2
|
-
export var EntityType;
|
|
3
|
-
(function (EntityType) {
|
|
4
|
-
EntityType["PERSON"] = "PERSON";
|
|
5
|
-
EntityType["CORPORATION"] = "CORPORATION";
|
|
6
|
-
})(EntityType || (EntityType = {}));
|
|
7
|
-
export var PepType;
|
|
8
|
-
(function (PepType) {
|
|
9
|
-
PepType["NOT_PEP"] = "NOT_PEP";
|
|
10
|
-
PepType["ME"] = "ME";
|
|
11
|
-
PepType["RELATIVE"] = "RELATIVE";
|
|
12
|
-
PepType["COLLEAGUE"] = "COLLEAGUE";
|
|
13
|
-
})(PepType || (PepType = {}));
|
|
14
|
-
export var PepStatus;
|
|
15
|
-
(function (PepStatus) {
|
|
16
|
-
PepStatus["ONGOING"] = "ONGOING";
|
|
17
|
-
PepStatus["ENDED"] = "ENDED";
|
|
18
|
-
})(PepStatus || (PepStatus = {}));
|
|
19
|
-
export var Role;
|
|
20
|
-
(function (Role) {
|
|
21
|
-
Role["HEAD_OF_GOVERNMENT"] = "HEAD_OF_GOVERNMENT";
|
|
22
|
-
Role["MINISTER"] = "MINISTER";
|
|
23
|
-
Role["PARLIMENT_MEMBER"] = "PARLIMENT_MEMBER";
|
|
24
|
-
Role["CENTRAL_BANK_MEMBER"] = "CENTRAL_BANK_MEMBER";
|
|
25
|
-
Role["BOARD_MEMBER_POLITICAL_PARTY"] = "BOARD_MEMBER_POLITICAL_PARTY";
|
|
26
|
-
Role["JUDGE_SUPREME_COURT"] = "JUDGE_SUPREME_COURT";
|
|
27
|
-
Role["JUDGE_OTHER_HIGH_COURT"] = "JUDGE_OTHER_HIGH_COURT";
|
|
28
|
-
Role["REVISION_INSTITUTE"] = "REVISION_INSTITUTE";
|
|
29
|
-
Role["AMBASSADOR"] = "AMBASSADOR";
|
|
30
|
-
Role["MILITARY_OFFICER"] = "MILITARY_OFFICER";
|
|
31
|
-
Role["GOVERNMENT_COMPANY"] = "GOVERNMENT_COMPANY";
|
|
32
|
-
Role["EU_HIGH_RANKING_POSITION"] = "EU_HIGH_RANKING_POSITION";
|
|
33
|
-
Role["HIGH_RANKING_POSITION_INTERNALTIONAL_CORP"] = "HIGH_RANKING_POSITION_INTERNALTIONAL_CORP";
|
|
34
|
-
})(Role || (Role = {}));
|
|
35
|
-
export var Relation;
|
|
36
|
-
(function (Relation) {
|
|
37
|
-
Relation["MARRIED_PARTNER"] = "MARRIED_PARTNER";
|
|
38
|
-
Relation["COLIVING_PARTNER"] = "COLIVING_PARTNER";
|
|
39
|
-
Relation["CHILD"] = "CHILD";
|
|
40
|
-
Relation["PARENT"] = "PARENT";
|
|
41
|
-
Relation["CHILD_MARRIED_PARTNER"] = "CHILD_MARRIED_PARTNER";
|
|
42
|
-
Relation["CHILD_COLIVING_PARTNER"] = "CHILD_COLIVING_PARTNER";
|
|
43
|
-
})(Relation || (Relation = {}));
|
|
44
|
-
export var BusinessRelation;
|
|
45
|
-
(function (BusinessRelation) {
|
|
46
|
-
BusinessRelation["CO_OWNERSHIP"] = "CO_OWNERSHIP";
|
|
47
|
-
BusinessRelation["CLOSE_CONNECTION"] = "CLOSE_CONNECTION";
|
|
48
|
-
BusinessRelation["COMPANY_FOR_PEP"] = "COMPANY_FOR_PEP";
|
|
49
|
-
})(BusinessRelation || (BusinessRelation = {}));
|
|
50
|
-
export var MilitaryRank;
|
|
51
|
-
(function (MilitaryRank) {
|
|
52
|
-
MilitaryRank["GENERAL"] = "GENERAL";
|
|
53
|
-
MilitaryRank["LIEUTENANT_GENERAL"] = "LIEUTENANT_GENERAL";
|
|
54
|
-
MilitaryRank["MAJOR_GENERAL"] = "MAJOR_GENERAL";
|
|
55
|
-
MilitaryRank["ADMIRAL"] = "ADMIRAL";
|
|
56
|
-
MilitaryRank["VICE_ADMIRAL"] = "VICE_ADMIRAL";
|
|
57
|
-
MilitaryRank["REAR_ADMIRAL"] = "REAR_ADMIRAL";
|
|
58
|
-
})(MilitaryRank || (MilitaryRank = {}));
|
|
59
|
-
export const EMPTY_PEP_STATE = {
|
|
60
|
-
legalEntityType: undefined,
|
|
61
|
-
type: undefined,
|
|
62
|
-
role: undefined,
|
|
63
|
-
country: undefined,
|
|
64
|
-
ended: undefined,
|
|
65
|
-
ambassadorCountry: undefined,
|
|
66
|
-
militaryRank: undefined,
|
|
67
|
-
governmentCompany: undefined,
|
|
68
|
-
governmentCompanyRole: undefined,
|
|
69
|
-
internationalOrganisation: undefined,
|
|
70
|
-
internationalOrganisationRole: undefined,
|
|
71
|
-
relationToPEP: undefined,
|
|
72
|
-
nameOfPEP: undefined,
|
|
73
|
-
birthdayOfPEP: undefined,
|
|
74
|
-
tin: undefined,
|
|
75
|
-
businessRelation: undefined,
|
|
76
|
-
isOngoing: undefined,
|
|
77
|
-
isSweden: undefined,
|
|
78
|
-
ownerName: undefined,
|
|
79
|
-
};
|
|
80
|
-
export const PepContext = React.createContext({});
|
|
81
|
-
export const withPep = (Component) => props => (React.createElement(PepContext.Consumer, null, contextProps => React.createElement(Component, Object.assign({}, props, contextProps))));
|
|
82
|
-
function stateReducer(state, newState) {
|
|
83
|
-
return Object.assign(Object.assign({}, state), newState);
|
|
84
|
-
}
|
|
85
|
-
export const PepContextProvider = ({ children }) => {
|
|
86
|
-
const [pep, setPep] = useReducer(stateReducer, {});
|
|
87
|
-
return (React.createElement(PepContext.Provider, { value: { state: pep, setState: setPep } }, children));
|
|
88
|
-
};
|
|
1
|
+
import React, { useReducer } from "react";
|
|
2
|
+
export var EntityType;
|
|
3
|
+
(function (EntityType) {
|
|
4
|
+
EntityType["PERSON"] = "PERSON";
|
|
5
|
+
EntityType["CORPORATION"] = "CORPORATION";
|
|
6
|
+
})(EntityType || (EntityType = {}));
|
|
7
|
+
export var PepType;
|
|
8
|
+
(function (PepType) {
|
|
9
|
+
PepType["NOT_PEP"] = "NOT_PEP";
|
|
10
|
+
PepType["ME"] = "ME";
|
|
11
|
+
PepType["RELATIVE"] = "RELATIVE";
|
|
12
|
+
PepType["COLLEAGUE"] = "COLLEAGUE";
|
|
13
|
+
})(PepType || (PepType = {}));
|
|
14
|
+
export var PepStatus;
|
|
15
|
+
(function (PepStatus) {
|
|
16
|
+
PepStatus["ONGOING"] = "ONGOING";
|
|
17
|
+
PepStatus["ENDED"] = "ENDED";
|
|
18
|
+
})(PepStatus || (PepStatus = {}));
|
|
19
|
+
export var Role;
|
|
20
|
+
(function (Role) {
|
|
21
|
+
Role["HEAD_OF_GOVERNMENT"] = "HEAD_OF_GOVERNMENT";
|
|
22
|
+
Role["MINISTER"] = "MINISTER";
|
|
23
|
+
Role["PARLIMENT_MEMBER"] = "PARLIMENT_MEMBER";
|
|
24
|
+
Role["CENTRAL_BANK_MEMBER"] = "CENTRAL_BANK_MEMBER";
|
|
25
|
+
Role["BOARD_MEMBER_POLITICAL_PARTY"] = "BOARD_MEMBER_POLITICAL_PARTY";
|
|
26
|
+
Role["JUDGE_SUPREME_COURT"] = "JUDGE_SUPREME_COURT";
|
|
27
|
+
Role["JUDGE_OTHER_HIGH_COURT"] = "JUDGE_OTHER_HIGH_COURT";
|
|
28
|
+
Role["REVISION_INSTITUTE"] = "REVISION_INSTITUTE";
|
|
29
|
+
Role["AMBASSADOR"] = "AMBASSADOR";
|
|
30
|
+
Role["MILITARY_OFFICER"] = "MILITARY_OFFICER";
|
|
31
|
+
Role["GOVERNMENT_COMPANY"] = "GOVERNMENT_COMPANY";
|
|
32
|
+
Role["EU_HIGH_RANKING_POSITION"] = "EU_HIGH_RANKING_POSITION";
|
|
33
|
+
Role["HIGH_RANKING_POSITION_INTERNALTIONAL_CORP"] = "HIGH_RANKING_POSITION_INTERNALTIONAL_CORP";
|
|
34
|
+
})(Role || (Role = {}));
|
|
35
|
+
export var Relation;
|
|
36
|
+
(function (Relation) {
|
|
37
|
+
Relation["MARRIED_PARTNER"] = "MARRIED_PARTNER";
|
|
38
|
+
Relation["COLIVING_PARTNER"] = "COLIVING_PARTNER";
|
|
39
|
+
Relation["CHILD"] = "CHILD";
|
|
40
|
+
Relation["PARENT"] = "PARENT";
|
|
41
|
+
Relation["CHILD_MARRIED_PARTNER"] = "CHILD_MARRIED_PARTNER";
|
|
42
|
+
Relation["CHILD_COLIVING_PARTNER"] = "CHILD_COLIVING_PARTNER";
|
|
43
|
+
})(Relation || (Relation = {}));
|
|
44
|
+
export var BusinessRelation;
|
|
45
|
+
(function (BusinessRelation) {
|
|
46
|
+
BusinessRelation["CO_OWNERSHIP"] = "CO_OWNERSHIP";
|
|
47
|
+
BusinessRelation["CLOSE_CONNECTION"] = "CLOSE_CONNECTION";
|
|
48
|
+
BusinessRelation["COMPANY_FOR_PEP"] = "COMPANY_FOR_PEP";
|
|
49
|
+
})(BusinessRelation || (BusinessRelation = {}));
|
|
50
|
+
export var MilitaryRank;
|
|
51
|
+
(function (MilitaryRank) {
|
|
52
|
+
MilitaryRank["GENERAL"] = "GENERAL";
|
|
53
|
+
MilitaryRank["LIEUTENANT_GENERAL"] = "LIEUTENANT_GENERAL";
|
|
54
|
+
MilitaryRank["MAJOR_GENERAL"] = "MAJOR_GENERAL";
|
|
55
|
+
MilitaryRank["ADMIRAL"] = "ADMIRAL";
|
|
56
|
+
MilitaryRank["VICE_ADMIRAL"] = "VICE_ADMIRAL";
|
|
57
|
+
MilitaryRank["REAR_ADMIRAL"] = "REAR_ADMIRAL";
|
|
58
|
+
})(MilitaryRank || (MilitaryRank = {}));
|
|
59
|
+
export const EMPTY_PEP_STATE = {
|
|
60
|
+
legalEntityType: undefined,
|
|
61
|
+
type: undefined,
|
|
62
|
+
role: undefined,
|
|
63
|
+
country: undefined,
|
|
64
|
+
ended: undefined,
|
|
65
|
+
ambassadorCountry: undefined,
|
|
66
|
+
militaryRank: undefined,
|
|
67
|
+
governmentCompany: undefined,
|
|
68
|
+
governmentCompanyRole: undefined,
|
|
69
|
+
internationalOrganisation: undefined,
|
|
70
|
+
internationalOrganisationRole: undefined,
|
|
71
|
+
relationToPEP: undefined,
|
|
72
|
+
nameOfPEP: undefined,
|
|
73
|
+
birthdayOfPEP: undefined,
|
|
74
|
+
tin: undefined,
|
|
75
|
+
businessRelation: undefined,
|
|
76
|
+
isOngoing: undefined,
|
|
77
|
+
isSweden: undefined,
|
|
78
|
+
ownerName: undefined,
|
|
79
|
+
};
|
|
80
|
+
export const PepContext = React.createContext({});
|
|
81
|
+
export const withPep = (Component) => props => (React.createElement(PepContext.Consumer, null, contextProps => React.createElement(Component, Object.assign({}, props, contextProps))));
|
|
82
|
+
function stateReducer(state, newState) {
|
|
83
|
+
return Object.assign(Object.assign({}, state), newState);
|
|
84
|
+
}
|
|
85
|
+
export const PepContextProvider = ({ children }) => {
|
|
86
|
+
const [pep, setPep] = useReducer(stateReducer, {});
|
|
87
|
+
return (React.createElement(PepContext.Provider, { value: { state: pep, setState: setPep } }, children));
|
|
88
|
+
};
|
|
@@ -1,6 +1,15 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { PepType, EntityType } from "./PepContext";
|
|
3
|
+
interface QuestionsProps {
|
|
4
|
+
ownerName?: string;
|
|
5
|
+
legalEntityType?: EntityType;
|
|
6
|
+
type?: PepType;
|
|
7
|
+
onChange: (type: PepType) => void;
|
|
8
|
+
resetValues?: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const PepIsPepQuestions: React.FC<QuestionsProps>;
|
|
11
|
+
interface Props {
|
|
12
|
+
next: () => void;
|
|
13
|
+
}
|
|
14
|
+
export declare const PepIsPepPage: React.FC<Props>;
|
|
15
|
+
export {};
|
|
@@ -1,57 +1,59 @@
|
|
|
1
|
-
import React, { useRef, useCallback, useContext } from "react";
|
|
2
|
-
import { Form, RadioGroup, RequiredValidator, PrimaryButton } from "@lysaab/ui-2";
|
|
3
|
-
import { PepType, PepContext, EntityType } from "./PepContext";
|
|
4
|
-
import { LABELS } from "../model/PepTexts";
|
|
5
|
-
export const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
1
|
+
import React, { useRef, useCallback, useContext } from "react";
|
|
2
|
+
import { Form, RadioGroup, RequiredValidator, PrimaryButton, } from "@lysaab/ui-2";
|
|
3
|
+
import { PepType, PepContext, EntityType } from "./PepContext";
|
|
4
|
+
import { LABELS } from "../model/PepTexts";
|
|
5
|
+
export const PepIsPepQuestions = ({ ownerName, legalEntityType, type, onChange, resetValues, }) => {
|
|
6
|
+
const labels = LABELS(ownerName);
|
|
7
|
+
const entityType = legalEntityType || EntityType.PERSON;
|
|
8
|
+
const IsPepAlternatives = [
|
|
9
|
+
{
|
|
10
|
+
text: labels[entityType].GENERIC.IS_PEP[PepType.NOT_PEP],
|
|
11
|
+
value: PepType.NOT_PEP,
|
|
12
|
+
},
|
|
13
|
+
{ text: labels[entityType].GENERIC.IS_PEP[PepType.ME], value: PepType.ME },
|
|
14
|
+
{
|
|
15
|
+
text: labels[entityType].GENERIC.IS_PEP[PepType.RELATIVE],
|
|
16
|
+
value: PepType.RELATIVE,
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
text: labels[entityType].GENERIC.IS_PEP[PepType.COLLEAGUE],
|
|
20
|
+
value: PepType.COLLEAGUE,
|
|
21
|
+
},
|
|
22
|
+
];
|
|
23
|
+
return (React.createElement(RadioGroup, { alternatives: IsPepAlternatives, onChange: (alternative) => {
|
|
24
|
+
var _a;
|
|
25
|
+
onChange(alternative.value);
|
|
26
|
+
(_a = resetValues) === null || _a === void 0 ? void 0 : _a();
|
|
27
|
+
}, value: IsPepAlternatives.find((alt) => alt.value === type), header: labels[entityType].GENERIC.IS_PEP_HEADER, validators: [new RequiredValidator("Du måste välja ett alternativ")] }));
|
|
28
|
+
};
|
|
29
|
+
export const PepIsPepPage = ({ next }) => {
|
|
30
|
+
const pepContext = useContext(PepContext);
|
|
31
|
+
const formRef = useRef();
|
|
32
|
+
const nextPage = useCallback(() => {
|
|
33
|
+
if (formRef.current && formRef.current.isValid) {
|
|
34
|
+
next();
|
|
35
|
+
}
|
|
36
|
+
}, [formRef, next]);
|
|
37
|
+
const resetValues = useCallback(() => {
|
|
38
|
+
pepContext.setState({
|
|
39
|
+
ambassadorCountry: undefined,
|
|
40
|
+
birthdayOfPEP: undefined,
|
|
41
|
+
businessRelation: undefined,
|
|
42
|
+
country: undefined,
|
|
43
|
+
ended: undefined,
|
|
44
|
+
governmentCompany: undefined,
|
|
45
|
+
governmentCompanyRole: undefined,
|
|
46
|
+
internationalOrganisation: undefined,
|
|
47
|
+
internationalOrganisationRole: undefined,
|
|
48
|
+
isOngoing: undefined,
|
|
49
|
+
isSweden: undefined,
|
|
50
|
+
militaryRank: undefined,
|
|
51
|
+
nameOfPEP: undefined,
|
|
52
|
+
relationToPEP: undefined,
|
|
53
|
+
role: undefined,
|
|
54
|
+
});
|
|
55
|
+
}, [pepContext]);
|
|
56
|
+
return (React.createElement(Form, { onSubmit: nextPage, lysaFormRef: formRef },
|
|
57
|
+
React.createElement(PepIsPepQuestions, { ownerName: pepContext.state.ownerName, legalEntityType: pepContext.state.legalEntityType, type: pepContext.state.type, onChange: (type) => pepContext.setState({ type }), resetValues: resetValues }),
|
|
58
|
+
React.createElement(PrimaryButton, { type: "submit" }, "N\u00E4sta")));
|
|
59
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FunctionComponent } from "react";
|
|
2
|
-
interface Props {
|
|
3
|
-
next: () => void;
|
|
4
|
-
}
|
|
5
|
-
export declare const PepRelationPage: FunctionComponent<Props>;
|
|
6
|
-
export {};
|
|
1
|
+
import { FunctionComponent } from "react";
|
|
2
|
+
interface Props {
|
|
3
|
+
next: () => void;
|
|
4
|
+
}
|
|
5
|
+
export declare const PepRelationPage: FunctionComponent<Props>;
|
|
6
|
+
export {};
|
|
@@ -1,83 +1,79 @@
|
|
|
1
|
-
import React, { useContext, useRef, useCallback } from "react";
|
|
2
|
-
import { PepContext, PepType, BusinessRelation, Relation, EntityType } from "./PepContext";
|
|
3
|
-
import { RadioGroup, Form, RequiredValidator, TextInput, Datepicker, PrimaryButton } from "@lysaab/ui-2";
|
|
4
|
-
import { LABELS } from "../model/PepTexts";
|
|
5
|
-
import { DateTime } from "luxon";
|
|
6
|
-
const DATEPICKER_START_DATE = DateTime.fromISO("1970-01-01").toJSDate();
|
|
7
|
-
export const PepRelationPage = ({ next }) => {
|
|
8
|
-
const pepContext = useContext(PepContext);
|
|
9
|
-
const formRef = useRef();
|
|
10
|
-
const entityType = pepContext.state.legalEntityType || EntityType.PERSON;
|
|
11
|
-
const type = pepContext.state.type;
|
|
12
|
-
const labels = LABELS(pepContext.state.ownerName);
|
|
13
|
-
const businessRelationAlternatives = [
|
|
14
|
-
{
|
|
15
|
-
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.CO_OWNERSHIP],
|
|
16
|
-
value: BusinessRelation.CO_OWNERSHIP
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.CLOSE_CONNECTION],
|
|
20
|
-
value: BusinessRelation.CLOSE_CONNECTION
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.COMPANY_FOR_PEP],
|
|
24
|
-
value: BusinessRelation.COMPANY_FOR_PEP
|
|
25
|
-
}
|
|
26
|
-
];
|
|
27
|
-
const relationAlternatives = [
|
|
28
|
-
{
|
|
29
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.MARRIED_PARTNER],
|
|
30
|
-
value: Relation.MARRIED_PARTNER
|
|
31
|
-
},
|
|
32
|
-
{
|
|
33
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.COLIVING_PARTNER],
|
|
34
|
-
value: Relation.COLIVING_PARTNER
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD],
|
|
38
|
-
value: Relation.CHILD
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.PARENT],
|
|
42
|
-
value: Relation.PARENT
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD_MARRIED_PARTNER],
|
|
46
|
-
value: Relation.CHILD_MARRIED_PARTNER
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD_COLIVING_PARTNER],
|
|
50
|
-
value: Relation.CHILD_COLIVING_PARTNER
|
|
51
|
-
}
|
|
52
|
-
];
|
|
53
|
-
const nextPage = useCallback(() => {
|
|
54
|
-
if (formRef.current && formRef.current.isValid) {
|
|
55
|
-
next();
|
|
56
|
-
}
|
|
57
|
-
}, [formRef, next]);
|
|
58
|
-
return (React.createElement(Form, { onSubmit: () => nextPage(), lysaFormRef: formRef },
|
|
59
|
-
type === PepType.RELATIVE ? (React.createElement(RadioGroup, { alternatives: relationAlternatives, onChange:
|
|
60
|
-
pepContext.setState({
|
|
61
|
-
relationToPEP:
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
pepContext.setState({ nameOfPEP: event.value });
|
|
81
|
-
}, validators: [RequiredValidator("Du måste ange namn")] }))) : null,
|
|
82
|
-
React.createElement(PrimaryButton, { type: "submit" }, "N\u00E4sta")));
|
|
83
|
-
};
|
|
1
|
+
import React, { useContext, useRef, useCallback, } from "react";
|
|
2
|
+
import { PepContext, PepType, BusinessRelation, Relation, EntityType, } from "./PepContext";
|
|
3
|
+
import { RadioGroup, Form, RequiredValidator, TextInput, Datepicker, PrimaryButton, } from "@lysaab/ui-2";
|
|
4
|
+
import { LABELS } from "../model/PepTexts";
|
|
5
|
+
import { DateTime } from "luxon";
|
|
6
|
+
const DATEPICKER_START_DATE = DateTime.fromISO("1970-01-01").toJSDate();
|
|
7
|
+
export const PepRelationPage = ({ next }) => {
|
|
8
|
+
const pepContext = useContext(PepContext);
|
|
9
|
+
const formRef = useRef();
|
|
10
|
+
const entityType = pepContext.state.legalEntityType || EntityType.PERSON;
|
|
11
|
+
const type = pepContext.state.type;
|
|
12
|
+
const labels = LABELS(pepContext.state.ownerName);
|
|
13
|
+
const businessRelationAlternatives = [
|
|
14
|
+
{
|
|
15
|
+
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.CO_OWNERSHIP],
|
|
16
|
+
value: BusinessRelation.CO_OWNERSHIP,
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.CLOSE_CONNECTION],
|
|
20
|
+
value: BusinessRelation.CLOSE_CONNECTION,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
text: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION[BusinessRelation.COMPANY_FOR_PEP],
|
|
24
|
+
value: BusinessRelation.COMPANY_FOR_PEP,
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
const relationAlternatives = [
|
|
28
|
+
{
|
|
29
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.MARRIED_PARTNER],
|
|
30
|
+
value: Relation.MARRIED_PARTNER,
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.COLIVING_PARTNER],
|
|
34
|
+
value: Relation.COLIVING_PARTNER,
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD],
|
|
38
|
+
value: Relation.CHILD,
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.PARENT],
|
|
42
|
+
value: Relation.PARENT,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD_MARRIED_PARTNER],
|
|
46
|
+
value: Relation.CHILD_MARRIED_PARTNER,
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
text: labels[entityType][PepType.RELATIVE].RELATION[Relation.CHILD_COLIVING_PARTNER],
|
|
50
|
+
value: Relation.CHILD_COLIVING_PARTNER,
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
const nextPage = useCallback(() => {
|
|
54
|
+
if (formRef.current && formRef.current.isValid) {
|
|
55
|
+
next();
|
|
56
|
+
}
|
|
57
|
+
}, [formRef, next]);
|
|
58
|
+
return (React.createElement(Form, { onSubmit: () => nextPage(), lysaFormRef: formRef },
|
|
59
|
+
type === PepType.RELATIVE ? (React.createElement(RadioGroup, { alternatives: relationAlternatives, onChange: alternative => {
|
|
60
|
+
pepContext.setState({
|
|
61
|
+
relationToPEP: alternative.value,
|
|
62
|
+
});
|
|
63
|
+
}, value: relationAlternatives.find(alt => alt.value === pepContext.state.relationToPEP), header: labels[entityType][PepType.RELATIVE].RELATION_LABEL, validators: [new RequiredValidator("Du måste välja ett alternativ")] })) : null,
|
|
64
|
+
type === PepType.COLLEAGUE ? (React.createElement(RadioGroup, { alternatives: businessRelationAlternatives, onChange: alternative => {
|
|
65
|
+
pepContext.setState({
|
|
66
|
+
businessRelation: alternative.value,
|
|
67
|
+
});
|
|
68
|
+
}, value: businessRelationAlternatives.find(alt => alt.value === pepContext.state.businessRelation), header: labels[entityType][PepType.COLLEAGUE].BUSINESS_RELATION_LABEL, validators: [new RequiredValidator("Du måste välja ett alternativ")] })) : null,
|
|
69
|
+
pepContext.state.relationToPEP && type === PepType.RELATIVE ? (React.createElement(React.Fragment, null,
|
|
70
|
+
React.createElement(TextInput, { label: labels[entityType][type].NAME_LABEL[pepContext.state.relationToPEP], value: pepContext.state.nameOfPEP || "", onChange: value => {
|
|
71
|
+
pepContext.setState({ nameOfPEP: value });
|
|
72
|
+
}, validators: [new RequiredValidator("Du måste ange namn")] }),
|
|
73
|
+
React.createElement(Datepicker, { label: labels[entityType][type].BIRTH_LABEL[pepContext.state.relationToPEP], selected: pepContext.state.birthdayOfPEP, onChange: event => pepContext.setState({ birthdayOfPEP: event || undefined }), validators: [new RequiredValidator("Ange datum")], maxDate: new Date(), openToDate: pepContext.state.birthdayOfPEP || DATEPICKER_START_DATE }))) : null,
|
|
74
|
+
pepContext.state.businessRelation && type === PepType.COLLEAGUE ? (React.createElement(React.Fragment, null,
|
|
75
|
+
React.createElement(TextInput, { label: labels[entityType][type].NAME_LABEL[pepContext.state.businessRelation], value: pepContext.state.nameOfPEP || "", onChange: value => {
|
|
76
|
+
pepContext.setState({ nameOfPEP: value });
|
|
77
|
+
}, validators: [new RequiredValidator("Du måste ange namn")] }))) : null,
|
|
78
|
+
React.createElement(PrimaryButton, { type: "submit" }, "N\u00E4sta")));
|
|
79
|
+
};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { FunctionComponent } from "react";
|
|
2
|
-
import { Alternative } from "@lysaab/ui-2/components/input/InputAPI";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export declare const
|
|
8
|
-
export declare const
|
|
9
|
-
export
|
|
1
|
+
import { FunctionComponent } from "react";
|
|
2
|
+
import { Alternative } from "@lysaab/ui-2/components/input/InputAPI";
|
|
3
|
+
import { Role, MilitaryRank } from "./PepContext";
|
|
4
|
+
interface Props {
|
|
5
|
+
next: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const roleAlternatives: Alternative<Role>[];
|
|
8
|
+
export declare const militaryAlternatives: Alternative<MilitaryRank>[];
|
|
9
|
+
export declare const PepRolePage: FunctionComponent<Props>;
|
|
10
|
+
export {};
|