19 lines
782 B
JavaScript
19 lines
782 B
JavaScript
|
|
/** Varianten-Auswahl beim Übernehmen aus Planungs-KI-Treffern. */
|
||
|
|
export function resolveExercisePickVariantId(exercise, overrideVariantId) {
|
||
|
|
if (exercise == null) return null
|
||
|
|
const raw =
|
||
|
|
overrideVariantId !== undefined && overrideVariantId !== null && overrideVariantId !== ''
|
||
|
|
? overrideVariantId
|
||
|
|
: exercise.exercise_variant_id ?? exercise.suggested_variant_id
|
||
|
|
if (raw == null || raw === '') return null
|
||
|
|
const vid = Number(raw)
|
||
|
|
return Number.isFinite(vid) && vid > 0 ? vid : null
|
||
|
|
}
|
||
|
|
|
||
|
|
export function variantLabelForPick(variants, variantId) {
|
||
|
|
if (variantId == null) return null
|
||
|
|
const list = Array.isArray(variants) ? variants : []
|
||
|
|
const row = list.find((v) => Number(v.id) === Number(variantId))
|
||
|
|
return (row?.variant_name || '').trim() || null
|
||
|
|
}
|