28 protected $inputs = [];
76 $clone->inputs = $inputs;
91 if (!is_array($value)) {
94 if (!
sizeof($this->
getInputs() ==
sizeof($value))) {
99 if (!array_key_exists(
$key, $value)) {
114 public function withInput(
PostData $post_input)
116 $clone = parent::withInput($post_input);
120 if ($clone->getError()) {
124 return $clone->withGroupInput($post_input);
133 protected function withGroupInput(
PostData $post_input)
145 $filled =
$input->withInput($post_input);
150 $content = $filled->getContent();
151 if ($content->isOk()) {
156 $inputs[
$key] = $filled;
158 $clone->inputs = $inputs;
161 $clone->content = $clone->data_factory->error(
"error in grouped input");
166 if ($clone->content->value()) {
167 $group_content = $clone->applyOperationsTo(
$values);
168 $f = $this->data_factory;
169 $clone->content = $clone->content->then(
function ($value) use (
$f, $group_content) {
170 if ($group_content->isError()) {
171 return $f->error($group_content->error());
174 return $f->ok([
"value" => $value,
"group_values" => $group_content->value()]);
177 $clone->content = $clone->applyOperationsTo(
$values);
180 if ($clone->content->isError()) {
181 return $clone->withError($clone->content->error());
193 $clone = parent::withNameFrom($source);
199 $named_inputs[
$key] =
$input->withNameFrom($source);
202 $clone->inputs = $named_inputs;
213 return $this->inputs;
checkArg($which, $check, $message)
/** Throw an InvalidArgumentException containing the message if $check is false.
Describes how Input-Elements want to interact with posted data.