Merge pull request #8150 from aignatov-bio/ai-sci-11415-form-builder-improvments

Form builder improvements [SCI-11415]
This commit is contained in:
aignatov-bio 2025-01-15 14:27:38 +01:00 committed by GitHub
commit 06ea469e02
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 26 additions and 26 deletions

View file

@ -31,31 +31,33 @@
</div>
</div>
<hr class="my-4 w-full">
<div>
<label class="sci-label">{{ i18n.t('forms.show.title_label') }}</label>
<div class="sci-input-container-v2" :class="{ 'error': !nameValid }" :data-error="nameFieldError" >
<input type="text" class="sci-input" v-model="editField.attributes.name" @change="updateField" :placeholder="i18n.t('forms.show.title_placeholder')" />
<div class="flex flex-col gap-4 max-w-[768px]">
<div>
<label class="sci-label">{{ i18n.t('forms.show.title_label') }}</label>
<div class="sci-input-container-v2" :class="{ 'error': !nameValid }" :data-error="nameFieldError" >
<input type="text" class="sci-input" v-model="editField.attributes.name" @change="updateField" :placeholder="i18n.t('forms.show.title_placeholder')" />
</div>
</div>
</div>
<div>
<label class="sci-label">{{ i18n.t('forms.show.description_label') }}</label>
<div class="sci-input-container-v2 h-24" :class="{ 'error': !descriptionValid }" :data-error="descriptionFieldError" >
<textarea class="sci-input " v-model="editField.attributes.description" @change="updateField" :placeholder="i18n.t('forms.show.description_placeholder')" />
<div>
<label class="sci-label">{{ i18n.t('forms.show.description_label') }}</label>
<div class="sci-input-container-v2 h-24" :class="{ 'error': !descriptionValid }" :data-error="descriptionFieldError" >
<textarea class="sci-input " v-model="editField.attributes.description" @change="updateField" :placeholder="i18n.t('forms.show.description_placeholder')" />
</div>
</div>
</div>
<component :is="this.editField.attributes.type" :field="editField" @updateField="updateField()" @syncField="syncField" />
<div class="bg-sn-super-light-grey rounded p-4">
<div class="flex items-center gap-4">
<h5>{{ i18n.t('forms.show.mark_as_na') }}</h5>
<span class="sci-toggle-checkbox-container">
<input type="checkbox"
class="sci-toggle-checkbox"
@change="updateField"
v-model="editField.attributes.allow_not_applicable" />
<span class="sci-toggle-checkbox-label"></span>
</span>
<component :is="this.editField.attributes.type" :field="editField" @updateField="updateField()" @syncField="syncField" />
<div class="bg-sn-super-light-grey rounded p-4">
<div class="flex items-center gap-4">
<h5>{{ i18n.t('forms.show.mark_as_na') }}</h5>
<span class="sci-toggle-checkbox-container">
<input type="checkbox"
class="sci-toggle-checkbox"
@change="updateField"
v-model="editField.attributes.allow_not_applicable" />
<span class="sci-toggle-checkbox-label"></span>
</span>
</div>
<div>{{ i18n.t('forms.show.mark_as_na_explanation') }}</div>
</div>
<div>{{ i18n.t('forms.show.mark_as_na_explanation') }}</div>
</div>
</div>
</template>

View file

@ -22,7 +22,7 @@
<span class="sci-toggle-checkbox-label"></span>
</span>
</div>
<div class="grid grid-cols-3 gap-2">
<div v-if="responseValidation.enabled" class="grid grid-cols-3 gap-2">
<div>
<SelectDropdown
class="bg-white"

View file

@ -187,9 +187,7 @@ export default {
}
}).then((response) => {
this.fields.push(response.data.data);
if (this.fields.length === 1) {
[this.activeField] = this.fields;
}
this.activeField = this.fields[this.fields.length - 1];
this.$refs.addFieldDropdown.isOpen = false;
});
},