Browse Source

style array field

pull/1695/head
Bernd Storath 5 months ago
parent
commit
54fedb9942
  1. 31
      src/app/components/Form/ArrayField.vue
  2. 4
      src/i18n/locales/en.json

31
src/app/components/Form/ArrayField.vue

@ -1,25 +1,32 @@
<template> <template>
<div v-if="data?.length === 0"> <div v-if="data?.length === 0">
{{ emptyText || 'No items' }} {{ emptyText || $t('form.noItems') }}
</div> </div>
<div v-else class="flex flex-col"> <div v-else class="flex flex-col gap-2">
<div v-for="(item, i) in data" :key="i"> <div v-for="(item, i) in data" :key="i">
<input <div class="flex flex-row gap-1">
:value="item" <input
:name="name" :value="item"
type="text" :name="name"
class="rounded-lg border-2 border-gray-100 text-gray-500 focus:border-red-800 focus:outline-0 focus:ring-0 dark:border-neutral-800 dark:bg-neutral-700 dark:text-neutral-200 dark:placeholder:text-neutral-400" type="text"
@input="update($event, i)" class="rounded-lg border-2 border-gray-100 text-gray-500 focus:border-red-800 focus:outline-0 focus:ring-0 dark:border-neutral-800 dark:bg-neutral-700 dark:text-neutral-200 dark:placeholder:text-neutral-400"
@input="update($event, i)"
/>
<BaseButton as="input" type="button" value="-" @click="del(i)" />
</div>
</div>
<div class="mt-2">
<BaseButton
as="input"
type="button"
:value="$t('form.add')"
@click="add"
/> />
<input type="button" value="-" @click="del(i)" />
</div> </div>
</div> </div>
<input type="button" value="Add" @click="add" />
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
// TODO: style
const data = defineModel<string[]>(); const data = defineModel<string[]>();
defineProps<{ emptyText?: string[]; name: string }>(); defineProps<{ emptyText?: string[]; name: string }>();

4
src/i18n/locales/en.json

@ -116,7 +116,9 @@
"save": "Save", "save": "Save",
"revert": "Revert", "revert": "Revert",
"sectionGeneral": "General", "sectionGeneral": "General",
"sectionAdvanced": "Advanced" "sectionAdvanced": "Advanced",
"noItems": "No items",
"add": "Add"
}, },
"admin": { "admin": {
"general": { "general": {

Loading…
Cancel
Save