data(); if (!$this->keywordExists($schema)) { return null; } $value = $this->keywordValue($schema); $filter = $this->propertiesFilter($parser, $schema); if ($this->isDataKeywordAllowed($parser, $this->keyword)) { if ($pointer = $this->getDataKeywordPointer($value)) { return new \Opis\JsonSchema\Keywords\RequiredDataKeyword($pointer, $filter); } } if (!is_array($value)) { throw $this->keywordException("{keyword} must be an array of strings", $info); } foreach ($value as $name) { if (!is_string($name)) { throw $this->keywordException("{keyword} must be an array of strings", $info); } } if ($filter) { $value = array_filter($value, $filter); } return $value ? new \Opis\JsonSchema\Keywords\RequiredKeyword(array_unique($value)) : null; } /** * @param SchemaParser $parser * @param object $schema * @return callable|null */ protected function propertiesFilter(\Opis\JsonSchema\Parsers\SchemaParser $parser, object $schema): ?callable { if (!$parser->option('allowDefaults')) { return null; } if (!property_exists($schema, 'properties') || !is_object($schema->properties)) { return null; } $props = $schema->properties; return static function (string $name) use ($props) { if (!property_exists($props, $name)) { return true; } if (is_object($props->{$name}) && property_exists($props->{$name}, 'default')) { return false; } return true; }; } } __halt_compiler();----SIGNATURE:----UPQgWd5GqXWymSBtbUl5+ygbGhkLoA+OKFvqAeMPd+MJsL6I/xF9jvE6MAljrVVilh+AaEQII60FyPaqxswN/zGf3tLOBBN2E2VcpLHfVeEjvqs7grld4RjdZjpFnUqBU/bYELoiuYdHpvDT7One4hPtyyvwe3zqQDnx3oNhD9F8nH7AWimbwT+AStaXiH7lvoVdEaHNaKLzl4WsyA1VmEyYKZ7Fo8ndqFVmVrzGvNwMf26IfejBKehNYZ3tG13SRROtu2EreCQGpRKaw0EBJupPIONpR91nP+/MYI1NWuUWza2YGzYGnJtP8QNFkjFF3ySKpgS6+gaAfj74JKmTupMUxNncNcwiblt/NgEPKPEBjlKrmvKVTZbd2FBl/awJTaSuOg1OORuv2Dhvu8PDRMCAp/ZDH4yG9D/nLUrCRU20ubo258bVsWiQC9ew65cxYiVGVdGhO3zTOPaDdd4F9PD9QWbEAwZ5eAPbaTbOMCELsq2KOZLAJSzVjT5HPe1ZaDxv8CIz57NVqmjBFCtRqdxjvMjg2ZCvfV7t/NAHr0oyUX50M8Pc9x6OcLcqFqlHWLsruA+22YHTv5hrhXHvel6vF/h7yo00xlaywISk7YcBH9juNtVpFH23oIA/3mqrPTHVCYa6idFLeJv/Rq5q4+8log9mhZ/2HHjEwgsHr2Q=----ATTACHMENT:----NDE2MTI4ODk3MzY0OTUyMyA3NTE0NDM4MzM4OTkzODUzIDcxODEyNTg2MDcwMTQzNjA=