feat(fullstack): Add logical AND and OR operators to seed files, add Sensitiviäts-Check
This commit is contained in:
@@ -78,6 +78,7 @@
|
||||
import type { FormElementDto, FormOptionDto, TableRowPresetDto } from '~~/.api-client'
|
||||
import type { TableColumn } from '@nuxt/ui'
|
||||
import { useTableCrossReferences } from '~/composables/useTableCrossReferences'
|
||||
import { useFormElementVisibility } from '~/composables/useFormElementVisibility'
|
||||
|
||||
const props = defineProps<{
|
||||
formOptions: FormOptionDto[]
|
||||
@@ -86,6 +87,8 @@ const props = defineProps<{
|
||||
tableRowPreset?: TableRowPresetDto
|
||||
}>()
|
||||
|
||||
const { isFormOptionVisible } = useFormElementVisibility()
|
||||
|
||||
const emit = defineEmits<{
|
||||
(e: 'update:formOptions', value: FormOptionDto[]): void
|
||||
}>()
|
||||
@@ -131,16 +134,33 @@ interface DataColumn {
|
||||
colIndex: number
|
||||
}
|
||||
|
||||
// Filter columns based on visibility conditions
|
||||
interface VisibleColumn {
|
||||
option: FormOptionDto
|
||||
originalIndex: number
|
||||
}
|
||||
|
||||
const visibleColumns = computed<VisibleColumn[]>(() => {
|
||||
return props.formOptions
|
||||
.map((option, index) => ({ option, originalIndex: index }))
|
||||
.filter(({ option }) => {
|
||||
if (!option.visibilityConditions || !props.allFormElements) {
|
||||
return true
|
||||
}
|
||||
return isFormOptionVisible(option.visibilityConditions, props.allFormElements)
|
||||
})
|
||||
})
|
||||
|
||||
const dataColumns = computed<DataColumn[]>(() =>
|
||||
props.formOptions.map((_, index) => ({
|
||||
key: `col_${index}`,
|
||||
colIndex: index
|
||||
visibleColumns.value.map(({ originalIndex }) => ({
|
||||
key: `col_${originalIndex}`,
|
||||
colIndex: originalIndex
|
||||
}))
|
||||
)
|
||||
|
||||
const tableColumns = computed<TableColumn<TableRowData>[]>(() => {
|
||||
const columns: TableColumn<TableRowData>[] = props.formOptions.map((option, index) => ({
|
||||
accessorKey: `col_${index}`,
|
||||
const columns: TableColumn<TableRowData>[] = visibleColumns.value.map(({ option, originalIndex }) => ({
|
||||
accessorKey: `col_${originalIndex}`,
|
||||
header: option.label || ''
|
||||
}))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user