All checks were successful
Deploy Development / deploy (push) Successful in 44s
Test Suite / pytest-backend (push) Successful in 40s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 18s
Test Suite / k6 /health Baseline (push) Successful in 33s
Test Suite / playwright-tests (push) Successful in 1m14s
Test Suite / pytest-backend (pull_request) Successful in 38s
Test Suite / lint-backend (pull_request) Successful in 0s
Test Suite / build-frontend (pull_request) Successful in 13s
Test Suite / k6 /health Baseline (pull_request) Successful in 33s
Test Suite / playwright-tests (pull_request) Successful in 1m13s
- Incremented version to 0.8.184, reflecting the implementation of Phase C2 features. - Added support for displaying variant lists and suggested variant names in exercise suggestions. - Enhanced the ExercisePickerModal to allow selection of exercise variants and improved handling of variant IDs. - Updated backend logic to enrich planning hits with variant metadata, ensuring accurate exercise variant selection. - Documented changes in the changelog to highlight the new capabilities in planning AI functionality.
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
|
|
}
|