починка багов

This commit is contained in:
2025-07-23 16:08:50 +03:00
parent 3fc352f8e9
commit 907b3e315e
24 changed files with 1249 additions and 1430 deletions

View File

@@ -33,6 +33,15 @@ export const buttonGroupDefinition: ElementDefinition<
},
// Берём целевые ячейки прямо из конфига, если они заданы в редакторе
mapToCells: cfg => cfg.targetCells || [],
mapToCellValues: (config, value) => {
const cells = config.targetCells || []
// Находим option по value чтобы получить label
const selectedOption = config.options?.find(opt => opt.value === value)
const cellValue = selectedOption ? selectedOption.label : value || ''
return cells.map(target => ({ target, value: cellValue }))
},
Editor: ({ config, onChange }) => {
const handleAddOption = () => {
onChange({

View File

@@ -22,6 +22,10 @@ export const textDefinition: ElementDefinition<TextConfig, string> = {
name: '',
},
mapToCells: config => config.targetCells || [],
mapToCellValues: (config, value) => {
const cells = config.targetCells || []
return cells.map(target => ({ target, value: value || '' }))
},
Editor: () => <ExtraSettingsBadge />,
Preview: ({ config }) => (
<div className="space-y-1">

View File

@@ -23,7 +23,11 @@ export interface ElementDefinition<Config = any, Value = any> {
/* бизнес-логика */
defaultConfig: Config
mapToCells(config: Config): CellTarget[] // куда пишем данные
mapToCells(config: Config): CellTarget[] // куда пишем данные (для отображения)
mapToCellValues(
config: Config,
value: Value
): Array<{ target: CellTarget; value: any }> // готовые пары ячейка-значение для записи
/* мета */
version: number