@lysaab/lysa-pep 1.0.1-0 → 1.0.2-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.
@@ -13,43 +13,43 @@ export const relationMessages = defineMessages({
13
13
  CORPORATION {
14
14
  Vilken relation har {name} till personen i politiskt utsatt ställning?
15
15
  }
16
- }`
16
+ }`,
17
17
  },
18
18
  required: {
19
19
  id: "pep.relation.relation.required",
20
20
  description: "Required error message",
21
- defaultMessage: `Du måste välja ett alternativ`
21
+ defaultMessage: `Du måste välja ett alternativ`,
22
22
  },
23
23
  [Relation.MARRIED_PARTNER]: {
24
24
  id: "pep.relation.relation.MARRIED_PARTNER",
25
25
  description: "The person is married to someone who is pep",
26
- defaultMessage: `Make/Maka till PEP`
26
+ defaultMessage: `Make/Maka till PEP`,
27
27
  },
28
28
  [Relation.COLIVING_PARTNER]: {
29
29
  id: "pep.relation.relation.COLIVING_PARTNER",
30
30
  description: "The person is married to someone who is pep",
31
- defaultMessage: `Sambo till PEP`
31
+ defaultMessage: `Sambo till PEP`,
32
32
  },
33
33
  [Relation.CHILD]: {
34
34
  id: "pep.relation.relation.CHILD",
35
35
  description: "The person is married to someone who is pep",
36
- defaultMessage: `Barn till PEP`
36
+ defaultMessage: `Barn till PEP`,
37
37
  },
38
38
  [Relation.PARENT]: {
39
39
  id: "pep.relation.relation.PARENT",
40
40
  description: "The person is married to someone who is pep",
41
- defaultMessage: `Förälder till PEP`
41
+ defaultMessage: `Förälder till PEP`,
42
42
  },
43
43
  [Relation.CHILD_MARRIED_PARTNER]: {
44
44
  id: "pep.relation.relation.CHILD_MARRIED_PARTNER",
45
45
  description: "The person is married to someone who is pep",
46
- defaultMessage: `Make/Maka till barn till PEP`
46
+ defaultMessage: `Make/Maka till barn till PEP`,
47
47
  },
48
48
  [Relation.CHILD_COLIVING_PARTNER]: {
49
49
  id: "pep.relation.relation.CHILD_COLIVING_PARTNER",
50
50
  description: "The person is married to someone who is pep",
51
- defaultMessage: `Sambo till barn till PEP`
52
- }
51
+ defaultMessage: `Sambo till barn till PEP`,
52
+ },
53
53
  });
54
54
 
55
55
  export const businessRelationMessages = defineMessages({
@@ -64,12 +64,12 @@ export const businessRelationMessages = defineMessages({
64
64
  CORPORATION {
65
65
  Vilken relation har {name} till personen i politisk utsatt ställning?
66
66
  }
67
- }`
67
+ }`,
68
68
  },
69
69
  required: {
70
70
  id: "pep.relation.businessrelation.required",
71
71
  description: "Required error message",
72
- defaultMessage: `Du måste välja ett alternativ`
72
+ defaultMessage: `Du måste välja ett alternativ`,
73
73
  },
74
74
  [BusinessRelation.CO_OWNERSHIP]: {
75
75
  id: "pep.relation.businessrelation.alt.CO_OWNERSHIP",
@@ -80,9 +80,9 @@ export const businessRelationMessages = defineMessages({
80
80
  Jag är verklig huvudman till en juridisk person, eller juridiska konstruktioner, tillsammans med en PEP
81
81
  }
82
82
  CORPORATION {
83
- Vilken relation har {name} till personen i politisk utsatt ställning?
83
+ {name} är verklig huvudman till en juridisk person, eller juridiska konstruktioner, tillsammans med en PEP
84
84
  }
85
- }`
85
+ }`,
86
86
  },
87
87
  [BusinessRelation.CLOSE_CONNECTION]: {
88
88
  id: "pep.relation.businessrelation.alt.CLOSE_CONNECTION",
@@ -93,9 +93,9 @@ export const businessRelationMessages = defineMessages({
93
93
  Jag är en person som på annat sätt har eller har haft nära förbindelser med en PEP
94
94
  }
95
95
  CORPORATION {
96
- Vilken relation har {name} till personen i politisk utsatt ställning?
96
+ {name} är en person som på annat sätt har eller har haft nära förbindelser med en PEP
97
97
  }
98
- }`
98
+ }`,
99
99
  },
100
100
  [BusinessRelation.COMPANY_FOR_PEP]: {
101
101
  id: "pep.relation.businessrelation.alt.COMPANY_FOR_PEP",
@@ -106,10 +106,11 @@ export const businessRelationMessages = defineMessages({
106
106
  Jag är verklig huvudman till en juridisk person, eller juridiska konstruktioner, tillsammans med en PEP
107
107
  }
108
108
  CORPORATION {
109
- Vilken relation har {name} till personen i politisk utsatt ställning?
109
+ {name} är ensam verklig huvudman till en juridisk person eller konstruktion som har upprättats till förmån för en PEP
110
+
110
111
  }
111
- }`
112
- }
112
+ }`,
113
+ },
113
114
  });
114
115
 
115
116
  export const relativeNameMessages = defineMessages({
@@ -146,34 +147,34 @@ export const relativeNameMessages = defineMessages({
146
147
  {
147
148
  relation, select,
148
149
  MARRIED_PARTNER {
149
- Vad heter {name} make/maka?
150
+ Vad heter {possessiveName} make/maka?
150
151
  }
151
152
  COLIVING_PARTNER {
152
- Vad heter {name} sambo?
153
+ Vad heter {possessiveName} sambo?
153
154
  }
154
155
  CHILD {
155
- Vad heter {name} förälder?
156
+ Vad heter {possessiveName} förälder?
156
157
  }
157
158
  PARENT {
158
- Vad heter {name} barn?
159
+ Vad heter {possessiveName} barn?
159
160
  }
160
161
  CHILD_MARRIED_PARTNER {
161
- Vad heter föräldern till {name} make/maka?
162
+ Vad heter föräldern till {possessiveName} make/maka?
162
163
  }
163
164
  CHILD_COLIVING_PARTNER {
164
- Vad heter föräldern till {name} sambo?
165
+ Vad heter föräldern till {possessiveName} sambo?
165
166
  }
166
167
  other {}
167
168
  }
168
169
  }
169
170
  other {}
170
- }`
171
+ }`,
171
172
  },
172
173
  required: {
173
174
  id: "pep.relation.relative.name.required",
174
175
  description: "Required error message",
175
- defaultMessage: `Du måste välja ett alternativ`
176
- }
176
+ defaultMessage: `Du måste välja ett alternativ`,
177
+ },
177
178
  });
178
179
 
179
180
  export const birthdayMessages = defineMessages({
@@ -210,34 +211,34 @@ export const birthdayMessages = defineMessages({
210
211
  {
211
212
  relation, select,
212
213
  MARRIED_PARTNER {
213
- När är {name} make/maka född?
214
+ När är {possessiveName} make/maka född?
214
215
  }
215
216
  COLIVING_PARTNER {
216
- När är {name} sambo född?
217
+ När är {possessiveName} sambo född?
217
218
  }
218
219
  CHILD {
219
- När är {name} förälder född?
220
+ När är {possessiveName} förälder född?
220
221
  }
221
222
  PARENT {
222
- När är {name} barn fött?
223
+ När är {possessiveName} barn fött?
223
224
  }
224
225
  CHILD_MARRIED_PARTNER {
225
- När är föräldern till {name} make/maka född?
226
+ När är föräldern till {possessiveName} make/maka född?
226
227
  }
227
228
  CHILD_COLIVING_PARTNER {
228
- När är föräldern till {name} sambo född?
229
+ När är föräldern till {possessiveName} sambo född?
229
230
  }
230
231
  other {}
231
232
  }
232
233
  }
233
234
  other {}
234
- }`
235
+ }`,
235
236
  },
236
237
  required: {
237
238
  id: "pep.relation.birthday.required",
238
239
  description: "Required error message",
239
- defaultMessage: `Ange datum`
240
- }
240
+ defaultMessage: `Ange datum`,
241
+ },
241
242
  });
242
243
 
243
244
  export const colleagueNameMessages = defineMessages({
@@ -277,11 +278,11 @@ export const colleagueNameMessages = defineMessages({
277
278
  }
278
279
  }
279
280
  other {}
280
- }`
281
+ }`,
281
282
  },
282
283
  required: {
283
284
  id: "pep.relation.colleague.name.required",
284
285
  description: "Required error message",
285
- defaultMessage: `Du måste välja ett alternativ`
286
- }
286
+ defaultMessage: `Du måste välja ett alternativ`,
287
+ },
287
288
  });
@@ -2,7 +2,7 @@ import React, {
2
2
  useContext,
3
3
  useRef,
4
4
  useCallback,
5
- FunctionComponent
5
+ FunctionComponent,
6
6
  } from "react";
7
7
  import {
8
8
  PepContext,
@@ -10,7 +10,7 @@ import {
10
10
  BusinessRelation,
11
11
  Relation,
12
12
  EntityType,
13
- PepContextProps
13
+ PepContextProps,
14
14
  } from "../PepContext";
15
15
  import {
16
16
  LysaFormRef,
@@ -20,7 +20,7 @@ import {
20
20
  RequiredValidator,
21
21
  TextInput,
22
22
  Datepicker,
23
- PrimaryButton
23
+ PrimaryButton,
24
24
  } from "@lysaab/ui-2";
25
25
  import { DateTime } from "luxon";
26
26
  import { useIntl, IntlShape, FormattedMessage } from "react-intl";
@@ -29,8 +29,9 @@ import {
29
29
  businessRelationMessages,
30
30
  relativeNameMessages,
31
31
  birthdayMessages,
32
- colleagueNameMessages
32
+ colleagueNameMessages,
33
33
  } from "./RelationMessages";
34
+ import { formatPossessive } from "../../utils/Possession";
34
35
 
35
36
  const DATEPICKER_START_DATE = DateTime.fromISO("1970-01-01").toJSDate();
36
37
 
@@ -66,42 +67,48 @@ export const RelationPage: FunctionComponent<Props> = ({ next }) => {
66
67
  {type === PepType.RELATIVE ? (
67
68
  <RadioGroup
68
69
  alternatives={relationAlternatives}
69
- onChange={alternative => {
70
+ onChange={(alternative) => {
70
71
  pepContext.setState({
71
- relationToPEP: alternative.value
72
+ relationToPEP: alternative.value,
72
73
  });
73
74
  }}
74
75
  value={relationAlternatives.find(
75
- alt => alt.value === pepContext.state.relationToPEP
76
+ (alt) => alt.value === pepContext.state.relationToPEP
76
77
  )}
77
78
  header={intl.formatMessage(relationMessages.header, {
78
79
  entityType,
79
- name: pepContext.state.ownerName
80
+ name: pepContext.state.ownerName,
81
+ possessiveName: formatPossessive(
82
+ pepContext.state.ownerName,
83
+ intl.locale
84
+ ),
80
85
  })}
81
86
  validators={[
82
- RequiredValidator(intl.formatMessage(relationMessages.required))
87
+ new RequiredValidator(
88
+ intl.formatMessage(relationMessages.required)
89
+ ),
83
90
  ]}
84
91
  />
85
92
  ) : null}
86
93
  {type === PepType.COLLEAGUE ? (
87
94
  <RadioGroup
88
95
  alternatives={businessRelationAlternatives}
89
- onChange={alternative => {
96
+ onChange={(alternative) => {
90
97
  pepContext.setState({
91
- businessRelation: alternative.value
98
+ businessRelation: alternative.value,
92
99
  });
93
100
  }}
94
101
  value={businessRelationAlternatives.find(
95
- alt => alt.value === pepContext.state.businessRelation
102
+ (alt) => alt.value === pepContext.state.businessRelation
96
103
  )}
97
104
  header={intl.formatMessage(businessRelationMessages.header, {
98
105
  entityType,
99
- name: pepContext.state.ownerName
106
+ name: pepContext.state.ownerName,
100
107
  })}
101
108
  validators={[
102
- RequiredValidator(
109
+ new RequiredValidator(
103
110
  intl.formatMessage(businessRelationMessages.required)
104
- )
111
+ ),
105
112
  ]}
106
113
  />
107
114
  ) : null}
@@ -111,30 +118,46 @@ export const RelationPage: FunctionComponent<Props> = ({ next }) => {
111
118
  label={intl.formatMessage(relativeNameMessages.header, {
112
119
  entityType,
113
120
  name: pepContext.state.ownerName,
114
- relation: pepContext.state.relationToPEP
121
+ relation:
122
+ pepContext.state.type === PepType.COLLEAGUE
123
+ ? pepContext.state.businessRelation
124
+ : pepContext.state.relationToPEP,
125
+ possessiveName: formatPossessive(
126
+ pepContext.state.ownerName,
127
+ intl.locale
128
+ ),
115
129
  })}
116
130
  value={pepContext.state.nameOfPEP || ""}
117
- onChange={value => {
131
+ onChange={(value) => {
118
132
  pepContext.setState({ nameOfPEP: value });
119
133
  }}
120
134
  validators={[
121
- RequiredValidator(
135
+ new RequiredValidator(
122
136
  intl.formatMessage(relativeNameMessages.required)
123
- )
137
+ ),
124
138
  ]}
125
139
  />
126
140
  <Datepicker
127
141
  label={intl.formatMessage(birthdayMessages.header, {
128
142
  entityType,
129
143
  name: pepContext.state.ownerName,
130
- relation: pepContext.state.relationToPEP
144
+ relation:
145
+ pepContext.state.type === PepType.COLLEAGUE
146
+ ? pepContext.state.businessRelation
147
+ : pepContext.state.relationToPEP,
148
+ possessiveName: formatPossessive(
149
+ pepContext.state.ownerName,
150
+ intl.locale
151
+ ),
131
152
  })}
132
153
  selected={pepContext.state.birthdayOfPEP}
133
- onChange={event =>
154
+ onChange={(event) =>
134
155
  pepContext.setState({ birthdayOfPEP: event || undefined })
135
156
  }
136
157
  validators={[
137
- RequiredValidator(intl.formatMessage(birthdayMessages.required))
158
+ new RequiredValidator(
159
+ intl.formatMessage(birthdayMessages.required)
160
+ ),
138
161
  ]}
139
162
  maxDate={new Date()}
140
163
  openToDate={pepContext.state.birthdayOfPEP || DATEPICKER_START_DATE}
@@ -148,16 +171,23 @@ export const RelationPage: FunctionComponent<Props> = ({ next }) => {
148
171
  label={intl.formatMessage(colleagueNameMessages.header, {
149
172
  entityType,
150
173
  name: pepContext.state.ownerName,
151
- relation: pepContext.state.businessRelation
174
+ relation:
175
+ pepContext.state.type === PepType.COLLEAGUE
176
+ ? pepContext.state.businessRelation
177
+ : pepContext.state.relationToPEP,
178
+ possessiveName: formatPossessive(
179
+ pepContext.state.ownerName,
180
+ intl.locale
181
+ ),
152
182
  })}
153
183
  value={pepContext.state.nameOfPEP || ""}
154
- onChange={value => {
184
+ onChange={(value) => {
155
185
  pepContext.setState({ nameOfPEP: value });
156
186
  }}
157
187
  validators={[
158
- RequiredValidator(
188
+ new RequiredValidator(
159
189
  intl.formatMessage(colleagueNameMessages.required)
160
- )
190
+ ),
161
191
  ]}
162
192
  />
163
193
  </React.Fragment>
@@ -181,51 +211,51 @@ function getRelationAlternatives(
181
211
  {
182
212
  text: intl.formatMessage(relationMessages[Relation.MARRIED_PARTNER], {
183
213
  entityType,
184
- name: pepContext.state.ownerName
214
+ name: pepContext.state.ownerName,
185
215
  }),
186
- value: Relation.MARRIED_PARTNER
216
+ value: Relation.MARRIED_PARTNER,
187
217
  },
188
218
  {
189
219
  text: intl.formatMessage(relationMessages[Relation.COLIVING_PARTNER], {
190
220
  entityType,
191
- name: pepContext.state.ownerName
221
+ name: pepContext.state.ownerName,
192
222
  }),
193
- value: Relation.COLIVING_PARTNER
223
+ value: Relation.COLIVING_PARTNER,
194
224
  },
195
225
  {
196
226
  text: intl.formatMessage(relationMessages[Relation.CHILD], {
197
227
  entityType,
198
- name: pepContext.state.ownerName
228
+ name: pepContext.state.ownerName,
199
229
  }),
200
- value: Relation.CHILD
230
+ value: Relation.CHILD,
201
231
  },
202
232
  {
203
233
  text: intl.formatMessage(relationMessages[Relation.PARENT], {
204
234
  entityType,
205
- name: pepContext.state.ownerName
235
+ name: pepContext.state.ownerName,
206
236
  }),
207
- value: Relation.PARENT
237
+ value: Relation.PARENT,
208
238
  },
209
239
  {
210
240
  text: intl.formatMessage(
211
241
  relationMessages[Relation.CHILD_MARRIED_PARTNER],
212
242
  {
213
243
  entityType,
214
- name: pepContext.state.ownerName
244
+ name: pepContext.state.ownerName,
215
245
  }
216
246
  ),
217
- value: Relation.CHILD_MARRIED_PARTNER
247
+ value: Relation.CHILD_MARRIED_PARTNER,
218
248
  },
219
249
  {
220
250
  text: intl.formatMessage(
221
251
  relationMessages[Relation.CHILD_COLIVING_PARTNER],
222
252
  {
223
253
  entityType,
224
- name: pepContext.state.ownerName
254
+ name: pepContext.state.ownerName,
225
255
  }
226
256
  ),
227
- value: Relation.CHILD_COLIVING_PARTNER
228
- }
257
+ value: Relation.CHILD_COLIVING_PARTNER,
258
+ },
229
259
  ];
230
260
  }
231
261
 
@@ -240,30 +270,30 @@ function getBusinessRelationAlternatives(
240
270
  businessRelationMessages[BusinessRelation.CO_OWNERSHIP],
241
271
  {
242
272
  entityType,
243
- name: pepContext.state.ownerName
273
+ name: pepContext.state.ownerName,
244
274
  }
245
275
  ),
246
- value: BusinessRelation.CO_OWNERSHIP
276
+ value: BusinessRelation.CO_OWNERSHIP,
247
277
  },
248
278
  {
249
279
  text: intl.formatMessage(
250
280
  businessRelationMessages[BusinessRelation.CLOSE_CONNECTION],
251
281
  {
252
282
  entityType,
253
- name: pepContext.state.ownerName
283
+ name: pepContext.state.ownerName,
254
284
  }
255
285
  ),
256
- value: BusinessRelation.CLOSE_CONNECTION
286
+ value: BusinessRelation.CLOSE_CONNECTION,
257
287
  },
258
288
  {
259
289
  text: intl.formatMessage(
260
290
  businessRelationMessages[BusinessRelation.COMPANY_FOR_PEP],
261
291
  {
262
292
  entityType,
263
- name: pepContext.state.ownerName
293
+ name: pepContext.state.ownerName,
264
294
  }
265
295
  ),
266
- value: BusinessRelation.COMPANY_FOR_PEP
267
- }
296
+ value: BusinessRelation.COMPANY_FOR_PEP,
297
+ },
268
298
  ];
269
299
  }