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 {
|
export function getPrimaryOptionValue(value: any): string {
|
||||||
if (typeof value === 'string') return value;
|
if (typeof value === 'string') return value;
|
||||||
if (typeof value === 'object' && value !== null) {
|
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 ?? '');
|
return String(value ?? '');
|
||||||
}
|
}
|
||||||
@@ -52,7 +52,17 @@ export function getPrimaryOptionValue(value: any): string {
|
|||||||
export function getLocalizedOptionLabel(value: any, lang: string): string {
|
export function getLocalizedOptionLabel(value: any, lang: string): string {
|
||||||
if (typeof value === 'string') return value;
|
if (typeof value === 'string') return value;
|
||||||
if (typeof value === 'object' && value !== null) {
|
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 ?? '');
|
return String(value ?? '');
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user