| 123456789101112131415161718192021222324252627282930313233 |
- export function findSelectedChoice (choices, modelValue) {
- if (!modelValue) {
- return null
- }
- return choices.find(choice => choice.value === modelValue) ?? null
- }
- export function choiceDisplayLabel (choice) {
- return choice.title || choice.value
- }
- export function displayLabelForModelValue (choices, modelValue) {
- const match = findSelectedChoice(choices, modelValue)
- return match ? choiceDisplayLabel(match) : ''
- }
- export function normalizedModelValue (choices, modelValue) {
- if (!modelValue) {
- return ''
- }
- return findSelectedChoice(choices, modelValue) ? modelValue : ''
- }
- export function syncStateFromModelValue (choices, modelValue) {
- const normalizedValue = normalizedModelValue(choices, modelValue)
- return {
- query: displayLabelForModelValue(choices, normalizedValue),
- modelValue: normalizedValue
- }
- }
|