fix(composant) : rendre les slots de structure optionnels à la création

Les emplacements pièces, produits et sous-composants du squelette ne
bloquent plus la soumission du formulaire de création de composant.
Les slots vides restent visibles en consultation avec l'indicateur rouge
« manquant » et peuvent être remplis ultérieurement en édition.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-06 17:04:29 +02:00
parent 7962576eec
commit 9f2e1da6ec

View File

@@ -34,7 +34,6 @@ import {
import {
hasAssignments,
initializeStructureAssignments,
isAssignmentNodeComplete,
serializeStructureAssignments,
} from '~/shared/utils/structureAssignmentHelpers'
import type { ComponentModelStructure } from '~/shared/types/inventory'
@@ -158,18 +157,7 @@ export function useComponentCreate() {
hasAssignments(structureAssignments.value),
)
const structureSelectionsComplete = computed(() => {
if (!structureHasRequirements.value) {
return true
}
if (structureDataLoading.value) {
return false
}
if (!structureAssignments.value) {
return false
}
return isAssignmentNodeComplete(structureAssignments.value, true)
})
const structureSelectionsComplete = computed(() => true)
const canSubmit = computed(() => Boolean(
canEdit.value
@@ -307,11 +295,6 @@ export function useComponentCreate() {
payload.productId = rootProductSelection.selectedProductId.trim()
}
if (structureHasRequirements.value && !structureSelectionsComplete.value) {
toast.showError('Complétez la sélection des pièces, produits et sous-composants.')
return
}
const serializedStructure = structureHasRequirements.value
? serializeStructureAssignments(structureAssignments.value)
: null
@@ -414,6 +397,7 @@ export function useComponentCreate() {
structureSelectionsComplete,
canEdit,
canSubmit,
requiredCustomFieldsFilled,
// Functions
typeOptionLabel,