fix(backend): prioritize value.value in getPrimaryOptionValue for select attribute validation
This commit is contained in:
1 parent
e7fc0e2848
commit
5686b3ea9c
1 file changed
+12
-2
@@ -44,7 +44,7 @@ export function resolveDefinitionLocalizedField<T extends { langCode: string; la
|
||||
export function getPrimaryOptionValue(value: any): string {
|
||||
if (typeof value === 'string') return value;
|
||||
if (typeof value === 'object' && value !== null) {
|
||||
return value.th || value.en || Object.values(value)[0] || '';
|
||||
return value.value || value.key || value.id || value.th || value.en || Object.values(value)[0] || '';
|
||||
}
|
||||
return String(value ?? '');
|
||||
}
|
||||
@@ -52,7 +52,17 @@ export function getPrimaryOptionValue(value: any): string {
|
||||
export function getLocalizedOptionLabel(value: any, lang: string): string {
|
||||
if (typeof value === 'string') return value;
|
||||
if (typeof value === 'object' && value !== null) {
|
||||
return value[lang] || value[lang.slice(0, 2)] || value.th || value.en || Object.values(value)[0] || '';
|
||||
return (
|
||||
value[`label_${lang}`] ||
|
||||
value[`label_${lang.slice(0, 2)}`] ||
|
||||
value[lang] ||
|
||||
value[lang.slice(0, 2)] ||
|
||||
value.label ||
|
||||
value.th ||
|
||||
value.en ||
|
||||
Object.values(value)[0] ||
|
||||
''
|
||||
);
|
||||
}
|
||||
return String(value ?? '');
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user