PluginProbe
The Innovative Form Builder – IvyForms / 0.7
The Innovative Form Builder – IvyForms v0.7
1.5.1 1.5 1.4.1 1.4 trunk 0.1.2 0.2 0.2.1 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.6.1-backup 0.6.1.1 0.7 0.8 0.8.1 0.8.2 0.9 0.9.1 1.0 1.1 1.1.1 All 27 releases
ivyforms / frontend / src / composables / useFormDropdownOptions.ts

useFormDropdownOptions.ts in The Innovative Form Builder – IvyForms 0.7, at frontend/src/composables/useFormDropdownOptions.ts

29 lines 905 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 import type { Ref } from 'vue'
2 import { useFormBuilder } from '@/stores/useFormBuilder'
3 import { useLabels } from '@/composables/useLabels'
4
5 export interface FormDropdownOption {
6 value: string | number
7 label: string
8 labelId?: string
9 }
10
11 export function updateFormDropdownOption(formOptions: Ref<FormDropdownOption[]>) {
12 const formBuilderStore = useFormBuilder()
13 const { getLabel } = useLabels()
14 if (formBuilderStore.formId && formBuilderStore.name) {
15 const existingFormIndex = formOptions.value.findIndex(
16 (option) => option.value === formBuilderStore.formId,
17 )
18 if (existingFormIndex === -1) {
19 formOptions.value.push({
20 value: formBuilderStore.formId,
21 labelId: `${getLabel('id')}: ${formBuilderStore.formId}`,
22 label: formBuilderStore.name,
23 })
24 } else {
25 formOptions.value[existingFormIndex].label = formBuilderStore.name
26 }
27 }
28 }
29