Select::make('metadata_value')
->reactive()
->options(fn (callable $get) => $get('metadata_value_options') ?? [])
->multiple(fn (callable $get) => $get('metadata_value_multiple') ?? false)
->label('Value')
->required(true)
->createOptionForm([
TextInput::make('metadata')
->required()
])
->createOptionUsing(function (array $data, Get $get, Set $set) {
if ($get('metadata_value_multiple') === false) {
$options = $get('metadata_value_options');
$set('metadata_value_options', [
...$options,
...[
$data['metadata'] => $data['metadata']
]
]);
$set('metadata_value', $data['metadata']);
}
return $data['metadata'];
})
->columnSpan(6),
Select::make('metadata_value')
->reactive()
->options(fn (callable $get) => $get('metadata_value_options') ?? [])
->multiple(fn (callable $get) => $get('metadata_value_multiple') ?? false)
->label('Value')
->required(true)
->createOptionForm([
TextInput::make('metadata')
->required()
])
->createOptionUsing(function (array $data, Get $get, Set $set) {
if ($get('metadata_value_multiple') === false) {
$options = $get('metadata_value_options');
$set('metadata_value_options', [
...$options,
...[
$data['metadata'] => $data['metadata']
]
]);
$set('metadata_value', $data['metadata']);
}
return $data['metadata'];
})
->columnSpan(6),