Skip to content

Commit 25122ce

Browse files
committed
OTR(Frontend): use updated LanguageSelect
1 parent 30552d4 commit 25122ce

File tree

6 files changed

+46
-19
lines changed

6 files changed

+46
-19
lines changed

frontend/packages/otr/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@
2525
"otr:tslint": "yarn g:tsc --pretty --noEmit"
2626
},
2727
"dependencies": {
28-
"shared": "npm:@opetushallitus/kieli-ja-kaantajatutkinnot.shared@1.9.29"
28+
"shared": "npm:@opetushallitus/kieli-ja-kaantajatutkinnot.shared@1.10.0"
2929
}
3030
}

frontend/packages/otr/src/components/clerkInterpreter/filters/ClerkInterpreterAutocompleteFilters.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,16 @@ export const ClerkInterpreterAutocompleteFilters = ({
6565
};
6666

6767
const handleFilterChange =
68-
(filter: keyof ClerkInterpreterFilters) =>
68+
(filter: keyof Omit<ClerkInterpreterFilters, 'fromLang' | 'toLang'>) =>
6969
({}, value: AutocompleteValue) => {
7070
setPage(0);
7171
dispatch(addClerkInterpreterFilter({ [filter]: value?.value }));
7272
};
73+
const handleLanguageFilterChange =
74+
(filter: 'fromLang' | 'toLang') => (language?: string) => {
75+
setPage(0);
76+
dispatch(addClerkInterpreterFilter({ [filter]: language }));
77+
};
7378

7479
const getPermissionToPublishSelectValues = () =>
7580
Object.values(PermissionToPublish).map((v) => ({
@@ -97,7 +102,7 @@ export const ClerkInterpreterAutocompleteFilters = ({
97102
value={getLanguageSelectValue(filters.fromLang)}
98103
disabled={true}
99104
variant={TextFieldVariant.Outlined}
100-
onChange={handleFilterChange('fromLang')}
105+
onLanguageChange={handleLanguageFilterChange('fromLang')}
101106
languages={QualificationUtils.selectableFromLangs}
102107
excludedLanguage={filters.toLang}
103108
translateLanguage={translateLanguage}
@@ -108,7 +113,7 @@ export const ClerkInterpreterAutocompleteFilters = ({
108113
label={t('languagePair.toPlaceholder')}
109114
value={getLanguageSelectValue(filters.toLang)}
110115
variant={TextFieldVariant.Outlined}
111-
onChange={handleFilterChange('toLang')}
116+
onLanguageChange={handleLanguageFilterChange('toLang')}
112117
languages={distinctToLangs}
113118
excludedLanguage={filters.fromLang}
114119
translateLanguage={translateLanguage}

frontend/packages/otr/src/components/clerkInterpreter/qualification/QualificationFields.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -78,11 +78,10 @@ export const QualificationFields = ({
7878
: null;
7979

8080
const handleLanguageSelectChange =
81-
(fieldName: string) =>
82-
({}, value: AutocompleteValue) => {
81+
(fieldName: 'fromLang' | 'toLang') => (language?: string) => {
8382
setQualification({
8483
...qualification,
85-
[fieldName]: value?.value ?? '',
84+
[fieldName]: language,
8685
});
8786
setIsQualificationDataChanged(true);
8887
};
@@ -161,7 +160,7 @@ export const QualificationFields = ({
161160
label={t('fieldPlaceholders.from')}
162161
variant={TextFieldVariant.Outlined}
163162
value={getLanguageSelectValue(qualification.fromLang)}
164-
onChange={handleLanguageSelectChange('fromLang')}
163+
onLanguageChange={handleLanguageSelectChange('fromLang')}
165164
languages={QualificationUtils.selectableFromLangs}
166165
excludedLanguage={qualification.toLang}
167166
translateLanguage={translateLanguage}
@@ -176,7 +175,7 @@ export const QualificationFields = ({
176175
label={t('fieldPlaceholders.to')}
177176
variant={TextFieldVariant.Outlined}
178177
value={getLanguageSelectValue(qualification.toLang)}
179-
onChange={handleLanguageSelectChange('toLang')}
178+
onLanguageChange={handleLanguageSelectChange('toLang')}
180179
languages={QualificationUtils.getKoodistoLangKeys()}
181180
excludedLanguage={qualification.fromLang}
182181
translateLanguage={translateLanguage}

frontend/packages/otr/src/components/publicInterpreter/filters/PublicInterpreterFilters.tsx

Lines changed: 30 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,8 @@ export const PublicInterpreterFilters = ({
6868
};
6969

7070
const defaultValuesState: PublicInterpreterFilterValues = {
71-
fromLang: languageToComboBoxOption(
72-
translateLanguage,
73-
QualificationUtils.defaultFromLang
74-
),
75-
toLang: null,
71+
fromLang: '',
72+
toLang: '',
7673
name: '',
7774
region: null,
7875
};
@@ -161,6 +158,20 @@ export const PublicInterpreterFilters = ({
161158
setSearchButtonDisabled(false);
162159
};
163160

161+
const handleLanguageChange =
162+
(languageField: SearchFilter.FromLang | SearchFilter.ToLang) =>
163+
(language?: string) => {
164+
setFilters((prevState) => ({
165+
...prevState,
166+
[languageField]: language || '',
167+
}));
168+
setValues((prevState) => ({
169+
...prevState,
170+
[languageField]: language || '',
171+
}));
172+
setSearchButtonDisabled(false);
173+
};
174+
164175
const handleTextFieldFilterChange =
165176
(filterName: SearchFilter) =>
166177
(event: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {
@@ -178,10 +189,8 @@ export const PublicInterpreterFilters = ({
178189
const getComboBoxAttributes = (fieldName: SearchFilter) => ({
179190
onInputChange: handleComboboxInputChange(fieldName),
180191
inputValue: inputValues[fieldName],
181-
value: values[fieldName] as AutocompleteValue,
182192
autoHighlight: true,
183193
variant: TextFieldVariant.Outlined,
184-
onChange: handleComboboxFilterChange(fieldName),
185194
});
186195

187196
const handleKeyUp = (event: KeyboardEvent<HTMLInputElement>) => {
@@ -223,6 +232,12 @@ export const PublicInterpreterFilters = ({
223232
<LanguageSelect
224233
data-testid="public-interpreter-filters__from-language-select"
225234
{...getComboBoxAttributes(SearchFilter.FromLang)}
235+
onLanguageChange={handleLanguageChange(SearchFilter.FromLang)}
236+
value={
237+
values.fromLang
238+
? languageToComboBoxOption(translateLanguage, values.fromLang)
239+
: null
240+
}
226241
label={t('languagePair.fromPlaceholder')}
227242
placeholder={t('languagePair.fromPlaceholder')}
228243
id="filters-from-lang"
@@ -236,6 +251,12 @@ export const PublicInterpreterFilters = ({
236251
<LanguageSelect
237252
data-testid="public-interpreter-filters__to-language-select"
238253
{...getComboBoxAttributes(SearchFilter.ToLang)}
254+
value={
255+
values.toLang
256+
? languageToComboBoxOption(translateLanguage, values.toLang)
257+
: null
258+
}
259+
onLanguageChange={handleLanguageChange(SearchFilter.ToLang)}
239260
label={t('languagePair.toPlaceholder')}
240261
placeholder={t('languagePair.toPlaceholder')}
241262
id="filters-to-lang"
@@ -264,6 +285,8 @@ export const PublicInterpreterFilters = ({
264285
<ComboBox
265286
data-testid="public-interpreter-filters__region-combobox"
266287
{...getComboBoxAttributes(SearchFilter.Region)}
288+
value={values[SearchFilter.Region]}
289+
onChange={handleComboboxFilterChange(SearchFilter.Region)}
267290
placeholder={t('region.placeholder')}
268291
label={t('region.placeholder')}
269292
id="filters-region"

frontend/packages/otr/src/interfaces/publicInterpreter.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ export interface PublicInterpreterFilter {
2121
}
2222

2323
export interface PublicInterpreterFilterValues {
24-
fromLang: AutocompleteValue;
25-
toLang: AutocompleteValue;
24+
fromLang: string;
25+
toLang: string;
2626
name: string;
2727
region: AutocompleteValue;
2828
}

frontend/yarn.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2898,7 +2898,7 @@ __metadata:
28982898
version: 0.0.0-use.local
28992899
resolution: "@opetushallitus/kieli-ja-kaantajatutkinnot.otr@workspace:packages/otr"
29002900
dependencies:
2901-
shared: "npm:@opetushallitus/kieli-ja-kaantajatutkinnot.shared@1.9.29"
2901+
shared: "npm:@opetushallitus/kieli-ja-kaantajatutkinnot.shared@1.10.0"
29022902
languageName: unknown
29032903
linkType: soft
29042904

0 commit comments

Comments
 (0)