feat: Make stepper draggable and take up more width

This commit is contained in:
2026-01-23 17:24:03 +01:00
parent 312aa0efbc
commit 24bb0f220f
4 changed files with 315 additions and 105 deletions

View File

@@ -1,5 +1,9 @@
import type { FormElementDto, FormElementVisibilityCondition, VisibilityConditionOperator } from '~~/.api-client'
import { VisibilityConditionOperator as VCOperator, VisibilityConditionType as VCType, FormElementType } from '~~/.api-client'
import {
VisibilityConditionOperator as VCOperator,
VisibilityConditionType as VCType,
FormElementType
} from '~~/.api-client'
export function useFormElementVisibility() {
/**
@@ -60,13 +64,13 @@ export function useFormElementVisibility() {
// Special handling for CHECKBOX with multiple options
if (sourceElement.type === FormElementType.Checkbox && sourceElement.options.length > 1) {
const operator = condition.formElementOperator || VCOperator.Equals
const conditionMet = evaluateCheckboxCondition(sourceElement, condition.formElementExpectedValue, operator)
const conditionMet = evaluateCheckboxCondition(sourceElement, condition.formElementExpectedValue || '', operator)
return condition.formElementConditionType === VCType.Show ? conditionMet : !conditionMet
}
const sourceValue = getFormElementValue(sourceElement)
const operator = condition.formElementOperator || VCOperator.Equals
const conditionMet = evaluateCondition(sourceValue, condition.formElementExpectedValue, operator)
const conditionMet = evaluateCondition(sourceValue, condition.formElementExpectedValue || '', operator)
return condition.formElementConditionType === VCType.Show ? conditionMet : !conditionMet
}
@@ -91,9 +95,7 @@ export function useFormElementVisibility() {
expectedValue: string,
operator: VisibilityConditionOperator
): boolean {
const selectedLabels = element.options
.filter((option) => option.value === 'true')
.map((option) => option.label)
const selectedLabels = element.options.filter((option) => option.value === 'true').map((option) => option.label)
switch (operator) {
case VCOperator.Equals: