Compare commits

...

3 Commits

3 changed files with 70 additions and 3 deletions

View File

@ -1,3 +1,5 @@
## Release 0.4.1p82 du 25/03/2025-08:47
## Release 0.4.1p74 du 25/03/2025-08:47
* `5beb5e6` corriger la prise en compte du proxy

View File

@ -0,0 +1,42 @@
<?php
namespace nulib\ref\schema;
class ref_input {
const ACCESS_AUTO = 0, ACCESS_KEY = 1, ACCESS_PROPERTY = 2;
const INPUT_PARAMS_SCHEMA = [
"access_type" => ["int", self::ACCESS_AUTO, "type d'accès: clé ou propriété"],
"allow_empty" => ["bool", true, "la chaine vide est-elle autorisée?"],
"allow_null" => ["bool", true, "la valeur null est-elle autorisée?"],
];
const ACCESS_PARAMS_SCHEMA = [
"allow_empty" => ["bool", true, "la chaine vide est-elle autorisée?"],
"allow_null" => ["bool", null, "la valeur null est-elle autorisée?"],
"allow_false" => ["bool", null, "la valeur false est-elle autorisée?"],
"protect_dest" => ["bool", null, "faut-il protéger la destination?"],
];
const VALUE_ACCESS_PARAMS_SCHEMA = [
"allow_null" => ["bool", false],
"allow_false" => ["bool", true],
"protect_dest" => ["bool", false],
];
const ARRAY_ACCESS_PARAMS_SCHEMA = [
"allow_null" => ["bool", true],
"allow_false" => ["bool", false],
"protect_dest" => ["bool", true],
"key_prefix" => ["?string", null, "préfixe des clés pour les méthodes ensureXxx()"],
"key_suffix" => ["?string", null, "suffixe des clés pour les méthodes ensureXxx()"],
];
const PROPERTY_ACCESS_PARAMS_SCHEMA = [
"allow_null" => ["bool", true],
"allow_false" => ["bool", false],
"protect_dest" => ["bool", true],
"key_prefix" => ["?string", null, "préfixe des clés pour les méthodes ensureXxx()"],
"key_suffix" => ["?string", null, "suffixe des clés pour les méthodes ensureXxx()"],
"map_names" => ["bool", true, "faut-il mapper les clés en camelCase?"]
];
}

View File

@ -44,18 +44,41 @@ class ref_schema {
"invalid" => "Cette valeur est invalide",
];
const PARAMS_SCHEMA = [
"analyze" => ["bool", true, "faut-il analyser la valeur?"],
"reanalyze" => ["bool", true, "faut-il forcer l'analyse de la valeur?"],
"normalize" => ["bool", true, "faut-il normaliser la valeur?"],
"renormalize" => ["bool", true, "faut-il forcer la normalisation de la valeur?"],
"throw" => ["bool", true, "faut-il lancer une exception en cas d'erreur?"],
//...ref_input::INPUT_PARAMS_SCHEMA,
];
/** @var array clés supplémentaires de schéma de la nature scalaire */
const SCALAR_NATURE_METASCHEMA = [
];
const SCALAR_PARAMS_SCHEMA = [
];
/** @var array clés supplémentaires de schéma de la nature associative */
const ASSOC_NATURE_METASCHEMA = [
"ensure_array" => ["bool", false, "faut-il s'assurer que le tableau destination est non nul?"],
"ensure_keys" => ["bool", true, "faut-il s'assurer que toutes les clés existent?"],
"ensure_order" => ["bool", true, "faut-il s'assurer que les clés soient dans l'ordre?"],
"ensure_array" => ["bool", null, "faut-il s'assurer que le tableau destination est non nul?"],
"ensure_assoc" => ["bool", null, "faut-il s'assurer que le tableau destination est associatif?"],
"ensure_keys" => ["bool", null, "faut-il s'assurer que toutes les clés existent avec la valeur par défaut?"],
"ensure_order" => ["bool", null, "faut-il s'assurer que les clés soient dans l'ordre?"],
];
const ASSOC_PARAMS_SCHEMA = [
"ensure_array" => ["bool", false],
"ensure_assoc" => ["bool", true],
"ensure_keys" => ["bool", true],
"ensure_order" => ["bool", true],
];
/** @var array clés supplémentaires de schéma de la nature liste */
const LIST_NATURE_METASCHEMA = [
];
const LIST_PARAMS_SCHEMA = [
];
}