Merge pull request #10538 from appwrite/respone-models-enum-names

chore: include response model enum names
This commit is contained in:
Jake Barnby
2025-09-23 18:23:46 +12:00
committed by GitHub
12 changed files with 409 additions and 128 deletions
+36 -15
View File
@@ -46468,7 +46468,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46563,7 +46564,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46660,7 +46662,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46757,7 +46760,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46837,7 +46841,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46924,7 +46929,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47021,7 +47027,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47108,7 +47115,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47195,7 +47203,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47282,7 +47291,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47397,7 +47407,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47483,7 +47494,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47581,7 +47593,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -53796,7 +53809,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -56535,7 +56549,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -35338,7 +35338,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35433,7 +35434,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35530,7 +35532,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35627,7 +35630,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35707,7 +35711,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35794,7 +35799,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35891,7 +35897,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35978,7 +35985,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36065,7 +36073,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36152,7 +36161,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36267,7 +36277,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36353,7 +36364,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36451,7 +36463,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -40984,7 +40997,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -41449,7 +41463,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -46468,7 +46468,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46563,7 +46564,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46660,7 +46662,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46757,7 +46760,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46837,7 +46841,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46924,7 +46929,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47021,7 +47027,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47108,7 +47115,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47195,7 +47203,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47282,7 +47291,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47397,7 +47407,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47483,7 +47494,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47581,7 +47593,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -53796,7 +53809,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -56535,7 +56549,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -35338,7 +35338,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35433,7 +35434,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35530,7 +35532,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35627,7 +35630,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35707,7 +35711,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35794,7 +35799,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35891,7 +35897,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35978,7 +35985,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36065,7 +36073,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36152,7 +36161,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36267,7 +36277,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36353,7 +36364,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36451,7 +36463,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -40984,7 +40997,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -41449,7 +41463,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -46405,7 +46405,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46500,7 +46501,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46597,7 +46599,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46694,7 +46697,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46774,7 +46778,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46861,7 +46866,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46958,7 +46964,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47045,7 +47052,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47132,7 +47140,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47219,7 +47228,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47334,7 +47344,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47420,7 +47431,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47518,7 +47530,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -53752,7 +53765,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -56584,7 +56598,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -35366,7 +35366,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35461,7 +35462,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35558,7 +35560,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35655,7 +35658,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35735,7 +35739,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35822,7 +35827,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35919,7 +35925,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36006,7 +36013,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36093,7 +36101,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36180,7 +36189,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36295,7 +36305,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36381,7 +36392,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36479,7 +36491,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -41021,7 +41034,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -41488,7 +41502,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -46405,7 +46405,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46500,7 +46501,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46597,7 +46599,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46694,7 +46697,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46774,7 +46778,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46861,7 +46866,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -46958,7 +46964,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47045,7 +47052,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47132,7 +47140,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47219,7 +47228,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47334,7 +47344,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47420,7 +47431,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -47518,7 +47530,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -53752,7 +53765,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -56584,7 +56598,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+36 -15
View File
@@ -35366,7 +35366,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35461,7 +35462,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35558,7 +35560,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35655,7 +35658,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35735,7 +35739,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35822,7 +35827,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -35919,7 +35925,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36006,7 +36013,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36093,7 +36101,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36180,7 +36189,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36295,7 +36305,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36381,7 +36392,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -36479,7 +36491,8 @@
"deleting",
"stuck",
"failed"
]
],
"x-enum-name": "AttributeStatus"
},
"error": {
"type": "string",
@@ -41021,7 +41034,8 @@
"enum": [
"pass",
"fail"
]
],
"x-enum-name": "HealthStatus"
}
},
"required": [
@@ -41488,7 +41502,14 @@
"status": {
"type": "string",
"description": "Status of delivery.",
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed."
"x-example": "Message status can be one of the following: draft, processing, scheduled, sent, or failed.",
"enum": [
"draft",
"processing",
"scheduled",
"sent",
"failed"
]
}
},
"required": [
+93 -2
View File
@@ -112,7 +112,7 @@ abstract class Format
return $this->params[$key] ?? $default;
}
protected function getEnumName(string $service, string $method, string $param): ?string
protected function getRequestEnumName(string $service, string $method, string $param): ?string
{
/* `$service` is `$namespace` */
switch ($service) {
@@ -450,7 +450,7 @@ abstract class Format
return null;
}
public function getEnumKeys(string $service, string $method, string $param): array
public function getRequestEnumKeys(string $service, string $method, string $param): array
{
$values = [];
switch ($service) {
@@ -543,6 +543,97 @@ abstract class Format
return $values;
}
public function getResponseEnumName(string $model, string $param): ?string
{
switch ($model) {
case 'attributeString':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeInteger':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeFloat':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeBoolean':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeEmail':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeEnum':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeIp':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeUrl':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeDatetime':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeRelationship':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributePoint':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributeLine':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'attributePolygon':
switch ($param) {
case 'status':
return 'AttributeStatus';
}
break;
case 'healthStatus':
switch ($param) {
case 'status':
return 'HealthStatus';
}
break;
}
return null;
}
protected function getNestedModels(Model $model, array &$usedModels): void
{
foreach ($model->getRules() as $rule) {
@@ -9,6 +9,7 @@ use Appwrite\SDK\Response;
use Appwrite\SDK\Specification\Format;
use Appwrite\Template\Template;
use Appwrite\Utopia\Response\Model;
use Appwrite\Utopia\Response\Model\Any;
use Utopia\Database\Database;
use Utopia\Database\Helpers\Permission;
use Utopia\Database\Helpers\Role;
@@ -559,8 +560,8 @@ class OpenAPI3 extends Format
if ($allowed) {
$node['schema']['enum'] = $validator->getList();
$node['schema']['x-enum-name'] = $this->getEnumName($sdk->getNamespace() ?? '', $methodName, $name);
$node['schema']['x-enum-keys'] = $this->getEnumKeys($sdk->getNamespace() ?? '', $methodName, $name);
$node['schema']['x-enum-name'] = $this->getRequestEnumName($sdk->getNamespace() ?? '', $methodName, $name);
$node['schema']['x-enum-keys'] = $this->getRequestEnumKeys($sdk->getNamespace() ?? '', $methodName, $name);
}
if ($validator->getType() === 'integer') {
$node['format'] = 'int32';
@@ -777,8 +778,16 @@ class OpenAPI3 extends Format
if ($rule['type'] === 'enum' && !empty($rule['enum'])) {
if ($rule['array']) {
$output['components']['schemas'][$model->getType()]['properties'][$name]['items']['enum'] = $rule['enum'];
$enumName = $this->getResponseEnumName($model->getType(), $name);
if ($enumName) {
$output['components']['schemas'][$model->getType()]['properties'][$name]['items']['x-enum-name'] = $enumName;
}
} else {
$output['components']['schemas'][$model->getType()]['properties'][$name]['enum'] = $rule['enum'];
$enumName = $this->getResponseEnumName($model->getType(), $name);
if ($enumName) {
$output['components']['schemas'][$model->getType()]['properties'][$name]['x-enum-name'] = $enumName;
}
}
}
if (!in_array($name, $required)) {
@@ -786,6 +795,7 @@ class OpenAPI3 extends Format
}
}
/** @var Any $model */
if ($model->isAny() && !empty($model->getSampleData())) {
$examples = array_merge($examples, $model->getSampleData());
}
@@ -9,6 +9,7 @@ use Appwrite\SDK\Response;
use Appwrite\SDK\Specification\Format;
use Appwrite\Template\Template;
use Appwrite\Utopia\Response\Model;
use Appwrite\Utopia\Response\Model\Any;
use Utopia\Database\Database;
use Utopia\Database\Helpers\Permission;
use Utopia\Database\Helpers\Role;
@@ -565,8 +566,8 @@ class Swagger2 extends Format
if ($allowed && $validator->getType() === 'string') {
$node['enum'] = $validator->getList();
$node['x-enum-name'] = $this->getEnumName($namespace, $methodName, $name);
$node['x-enum-keys'] = $this->getEnumKeys($namespace, $methodName, $name);
$node['x-enum-name'] = $this->getRequestEnumName($namespace, $methodName, $name);
$node['x-enum-keys'] = $this->getRequestEnumKeys($namespace, $methodName, $name);
}
if ($validator->getType() === 'integer') {
@@ -799,8 +800,16 @@ class Swagger2 extends Format
if ($rule['type'] === 'enum' && !empty($rule['enum'])) {
if ($rule['array']) {
$output['definitions'][$model->getType()]['properties'][$name]['items']['enum'] = $rule['enum'];
$enumName = $this->getResponseEnumName($model->getType(), $name);
if ($enumName) {
$output['definitions'][$model->getType()]['properties'][$name]['items']['x-enum-name'] = $enumName;
}
} else {
$output['definitions'][$model->getType()]['properties'][$name]['enum'] = $rule['enum'];
$enumName = $this->getResponseEnumName($model->getType(), $name);
if ($enumName) {
$output['definitions'][$model->getType()]['properties'][$name]['x-enum-name'] = $enumName;
}
}
}
if (!in_array($name, $required)) {
@@ -808,6 +817,7 @@ class Swagger2 extends Format
}
}
/** @var Any $model */
if ($model->isAny() && !empty($model->getSampleData())) {
$examples = array_merge($examples, $model->getSampleData());
}
@@ -34,6 +34,7 @@ class Message extends Model
'description' => 'Message provider type.',
'default' => '',
'example' => MESSAGE_TYPE_EMAIL,
'enum' => [MESSAGE_TYPE_EMAIL, MESSAGE_TYPE_SMS, MESSAGE_TYPE_PUSH],
])
->addRule('topics', [
'type' => self::TYPE_STRING,
@@ -50,7 +51,7 @@ class Message extends Model
'example' => ['5e5ea5c16897e'],
])
->addRule('targets', [
'type' => self::TYPE_STRING,
'type' => self::TYPE_ENUM,
'description' => 'Target IDs set as recipients.',
'default' => '',
'array' => true,
@@ -94,10 +95,11 @@ class Message extends Model
],
])
->addRule('status', [
'type' => self::TYPE_STRING,
'type' => self::TYPE_ENUM,
'description' => 'Status of delivery.',
'default' => 'draft',
'example' => 'Message status can be one of the following: draft, processing, scheduled, sent, or failed.',
'enum' => ['draft', 'processing', 'scheduled', 'sent', 'failed'],
]);
}