<template> <text-area-cell v-if="inputDetails.type === 'LongText'" v-model="localState" :input-details="inputDetails" /> <password-field v-else-if="inputDetails.type === 'Password'" v-model="localState" :input-details="inputDetails" /> <attachment v-else-if="inputDetails.type === 'Attachment'" v-model="localState" :input-details="inputDetails" /> <text-field v-else v-model="localState" :input-details="inputDetails" /> </template> <script> import TextField from '@/components/project/appStore/inputs/textField' import Attachment from '@/components/project/appStore/inputs/attachment' import PasswordField from '@/components/project/appStore/inputs/passwordField' import TextAreaCell from '~/components/project/spreadsheet/components/editableCell/textAreaCell' export default { name: 'FormInput', components: { PasswordField, TextAreaCell, Attachment, TextField }, props: { value: String, inputDetails: Object }, computed: { localState: { get() { return this.value }, set(val) { this.$emit('input', val) } } } } </script> <style scoped> </style>