Coverage for fastapi / openapi / utils.py: 100%
277 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-02-12 18:15 +0000
« prev ^ index » next coverage.py v7.13.3, created at 2026-02-12 18:15 +0000
1import copy 2FkIkGkHk
2import http.client 2FkIkGkHk
3import inspect 2FkIkGkHk
4import warnings 2FkIkGkHk
5from collections.abc import Sequence 2FkIkGkHk
6from typing import Any, Literal, cast 2FkIkGkHk
8from fastapi import routing 2FkIkGkHk
9from fastapi._compat import ( 2FkIkGkHk
10 ModelField,
11 Undefined,
12 get_definitions,
13 get_flat_models_from_fields,
14 get_model_name_map,
15 get_schema_from_model_field,
16 lenient_issubclass,
17)
18from fastapi.datastructures import DefaultPlaceholder 2FkIkGkHk
19from fastapi.dependencies.models import Dependant 2FkIkGkHk
20from fastapi.dependencies.utils import ( 2FkIkGkHk
21 _get_flat_fields_from_params,
22 get_flat_dependant,
23 get_flat_params,
24 get_validation_alias,
25)
26from fastapi.encoders import jsonable_encoder 2FkIkGkHk
27from fastapi.exceptions import FastAPIDeprecationWarning 2FkIkGkHk
28from fastapi.openapi.constants import METHODS_WITH_BODY, REF_PREFIX 2FkIkGkHk
29from fastapi.openapi.models import OpenAPI 2FkIkGkHk
30from fastapi.params import Body, ParamTypes 2FkIkGkHk
31from fastapi.responses import Response 2FkIkGkHk
32from fastapi.types import ModelNameMap 2FkIkGkHk
33from fastapi.utils import ( 2FkIkGkHk
34 deep_dict_update,
35 generate_operation_id_for_path,
36 is_body_allowed_for_status_code,
37)
38from pydantic import BaseModel 2FkIkGkHk
39from starlette.responses import JSONResponse 2FkIkGkHk
40from starlette.routing import BaseRoute 2FkIkGkHk
42validation_error_definition = { 2FkIkGkHk
43 "title": "ValidationError",
44 "type": "object",
45 "properties": {
46 "loc": {
47 "title": "Location",
48 "type": "array",
49 "items": {"anyOf": [{"type": "string"}, {"type": "integer"}]},
50 },
51 "msg": {"title": "Message", "type": "string"},
52 "type": {"title": "Error Type", "type": "string"},
53 "input": {"title": "Input"},
54 "ctx": {"title": "Context", "type": "object"},
55 },
56 "required": ["loc", "msg", "type"],
57}
59validation_error_response_definition = { 2FkIkGkHk
60 "title": "HTTPValidationError",
61 "type": "object",
62 "properties": {
63 "detail": {
64 "title": "Detail",
65 "type": "array",
66 "items": {"$ref": REF_PREFIX + "ValidationError"},
67 }
68 },
69}
71status_code_ranges: dict[str, str] = { 2FkIkGkHk
72 "1XX": "Information",
73 "2XX": "Success",
74 "3XX": "Redirection",
75 "4XX": "Client Error",
76 "5XX": "Server Error",
77 "DEFAULT": "Default Response",
78}
81def get_openapi_security_definitions( 2FkIkGkHk
82 flat_dependant: Dependant,
83) -> tuple[dict[str, Any], list[dict[str, Any]]]:
84 security_definitions = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
85 # Use a dict to merge scopes for same security scheme
86 operation_security_dict: dict[str, list[str]] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
87 for security_dependency in flat_dependant._security_dependencies: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
88 security_definition = jsonable_encoder( 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
89 security_dependency._security_scheme.model,
90 by_alias=True,
91 exclude_none=True,
92 )
93 security_name = security_dependency._security_scheme.scheme_name 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
94 security_definitions[security_name] = security_definition 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
95 # Merge scopes for the same security scheme
96 if security_name not in operation_security_dict: 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
97 operation_security_dict[security_name] = [] 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
98 for scope in security_dependency.oauth_scopes or []: 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
99 if scope not in operation_security_dict[security_name]: 2thuh3bvhwh4bxhyh5b
100 operation_security_dict[security_name].append(scope) 2thuh3bvhwh4bxhyh5b
101 operation_security = [ 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
102 {name: scopes} for name, scopes in operation_security_dict.items()
103 ]
104 return security_definitions, operation_security 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
107def _get_openapi_operation_parameters( 2FkIkGkHk
108 *,
109 dependant: Dependant,
110 model_name_map: ModelNameMap,
111 field_mapping: dict[
112 tuple[ModelField, Literal["validation", "serialization"]], dict[str, Any]
113 ],
114 separate_input_output_schemas: bool = True,
115) -> list[dict[str, Any]]:
116 parameters = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
117 flat_dependant = get_flat_dependant(dependant, skip_repeats=True) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
118 path_params = _get_flat_fields_from_params(flat_dependant.path_params) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
119 query_params = _get_flat_fields_from_params(flat_dependant.query_params) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
120 header_params = _get_flat_fields_from_params(flat_dependant.header_params) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
121 cookie_params = _get_flat_fields_from_params(flat_dependant.cookie_params) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
122 parameter_groups = [ 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
123 (ParamTypes.path, path_params),
124 (ParamTypes.query, query_params),
125 (ParamTypes.header, header_params),
126 (ParamTypes.cookie, cookie_params),
127 ]
128 default_convert_underscores = True 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
129 if len(flat_dependant.header_params) == 1: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
130 first_field = flat_dependant.header_params[0] 2K zhpc@b[b]b^br Z _b`bjcucvcwcR Ahrc{b|b}b~bw 2 acbclczcAcBcY BhtcccdcecfcB 5 gchcncEcFcGc
131 if lenient_issubclass(first_field.field_info.annotation, BaseModel): 2K zhpc@b[b]b^br Z _b`bjcucvcwcR Ahrc{b|b}b~bw 2 acbclczcAcBcY BhtcccdcecfcB 5 gchcncEcFcGc
132 default_convert_underscores = getattr( 2@b[b]b^b_b`bjc{b|b}b~bacbclcccdcecfcgchcnc
133 first_field.field_info, "convert_underscores", True
134 )
135 for param_type, param_group in parameter_groups: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
136 for param in param_group: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
137 field_info = param.field_info 2d * sdvdicxd+ JcKca ydzdLcK McAdzhBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeAheefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*eBh+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
138 # field_info = cast(Param, field_info)
139 if not getattr(field_info, "include_in_schema", True): 2d * sdvdicxd+ JcKca ydzdLcK McAdzhBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeAheefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*eBh+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
140 continue 2zhPiAhQiBhRi
141 param_schema = get_schema_from_model_field( 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
142 field=param,
143 model_name_map=model_name_map,
144 field_mapping=field_mapping,
145 separate_input_output_schemas=separate_input_output_schemas,
146 )
147 name = get_validation_alias(param) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
148 convert_underscores = getattr( 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
149 param.field_info,
150 "convert_underscores",
151 default_convert_underscores,
152 )
153 if (
154 param_type == ParamTypes.header
155 and name == param.name
156 and convert_underscores
157 ):
158 name = param.name.replace("_", "-") 2K pc@b[b]b^br _b`bR rc{b|b}b~bw acbcY tcccdcecfcB gchc
160 parameter = { 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
161 "name": name,
162 "in": param_type.value,
163 "required": param.field_info.is_required(),
164 "schema": param_schema,
165 }
166 if field_info.description: 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
167 parameter["description"] = field_info.description 21cyc=cDcmdIc
168 openapi_examples = getattr(field_info, "openapi_examples", None) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
169 example = getattr(field_info, "example", None) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
170 if openapi_examples: 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
171 parameter["examples"] = jsonable_encoder(openapi_examples) 1KRY
172 elif example != Undefined: 2d * sdvdicxd+ JcKca ydzdLcMcAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9c!cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{c|c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
173 parameter["example"] = jsonable_encoder(example) 2NcOc@b[b]b^bPcQcRcScr UcVc_b`bjcZc0c#c$c{b|b}b~b%c'c(c)cw +c,cacbclc:c;c}c~cccdcecfcadbdcdddB fdgdgchcnckdld
174 if getattr(field_info, "deprecated", None): 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
175 parameter["deprecated"] = True 2ycDcIc
176 parameters.append(parameter) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
177 return parameters 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
180def get_openapi_operation_request_body( 2FkIkGkHk
181 *,
182 body_field: ModelField | None,
183 model_name_map: ModelNameMap,
184 field_mapping: dict[
185 tuple[ModelField, Literal["validation", "serialization"]], dict[str, Any]
186 ],
187 separate_input_output_schemas: bool = True,
188) -> dict[str, Any] | None:
189 if not body_field: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
190 return None 2Qjwkd * sdtdudMfvdic1iwdRj2i|i3ixd+ JcSjKca ydzdLcK Mc}ip q ~iAdzhBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdaj4hs , t - 5hbjcjdjejZ 8 9 TjUcVcHdUjVjfjqkWjtkzk7i! XjIdJdKdLdMdNdOdYjPd=iWc8igjZjQdXcYcnhRdSdTdUdVd_b`bjcucvcwcSiTi0j1j?i$b2j3jhjijjjxckj@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@dPfQf5j[d]d6j^d2c3c4chh6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_d#jxke / `d{d|dUf}dkc9i~d$j!imj#iae: 7c%j8cb bece9cR !cnju v ojdeAheefercgerh#c$c{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjbix ; y = ciqjrjsjtj2 # $ 'j+c,cke(j)jujrk*jukAk(i% +jlemeneoepeqere,jse[i-c)ivj-jte.c/cohuevewexeyeacbclczcAcBcUiVi.j/j]i%b:j;jwjxjyjCczj^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eXfYf?j5e6e@j7e?c@c[cihdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8e`jykf @ 9e!e#e2f$emc*i%e{j+iBj,i'e[ _c|j`cc (e)e{cY |cCjz A Dj*eBh+e,etc-esh}c~cccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjJiC ] D ^ KiFjGjHjIj5 ' ( }jfdgd;e~jakJjskbkvkBk:i) ck=e?e@e[e]e^e_edk`e_ihd;iKjek{eidjdph|e}e~eafbfgchcncEcFcGcWiXifkgk`i'bhkikLjMjNjHcOj{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf5f6fkkIfJflkKfndodpdjhLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf
191 assert isinstance(body_field, ModelField) 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
192 body_schema = get_schema_from_model_field( 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
193 field=body_field,
194 model_name_map=model_name_map,
195 field_mapping=field_mapping,
196 separate_input_output_schemas=separate_input_output_schemas,
197 )
198 field_info = cast(Body, body_field.field_info) 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
199 request_media_type = field_info.media_type 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
200 required = body_field.field_info.is_required() 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
201 request_body_oai: dict[str, Any] = {} 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
202 if required: 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
203 request_body_oai["required"] = required 2!f#f+ $fE g F G H I J oc%f'f(fK )fp q *f+f,f-f.f/f:f;f=f?f@fr (b)b*bj [f]f^f` { | } ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~fagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjgkg: lgL h M N O P Q qcmgngogR pgu v qgrgsgtgugvgwgxgygzgAgw ,b-b.bl BgCgDgobpbqbrbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgUg[ VgS i T U V W X scWgXgYgY Zgz A 0g1g2g3g4g5g6g7g8g9g!gB :b;b=bn #g$g%gHbIbJbKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,g-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
204 request_media_content: dict[str, Any] = {"schema": body_schema} 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
205 if field_info.openapi_examples: 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
206 request_media_content["examples"] = jsonable_encoder( 2K nbR GbY Zb
207 field_info.openapi_examples
208 )
209 elif field_info.example != Undefined: 2!f]g#f+ $fE g F G H I J oc%f'f(f)fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogpgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgZgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYb?b!b5bqdrd6 7 =g_ ?g@g[g#b
210 request_media_content["example"] = jsonable_encoder(field_info.example) 1rwB
211 request_body_oai["content"] = {request_media_type: request_media_content} 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
212 return request_body_oai 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
215def generate_operation_id( 2FkIkGkHk
216 *, route: routing.APIRoute, method: str 2FkGkHk
217) -> str: # pragma: nocover 2FkGkHk
218 warnings.warn(
219 message="fastapi.openapi.utils.generate_operation_id() was deprecated, "
220 "it is not used internally, and will be removed soon",
221 category=FastAPIDeprecationWarning,
222 stacklevel=2,
223 )
224 if route.operation_id:
225 return route.operation_id
226 path: str = route.path_format
227 return generate_operation_id_for_path(name=route.name, path=path, method=method)
230def generate_operation_summary(*, route: routing.APIRoute, method: str) -> str: 2FkIkGkHk
231 if route.summary: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
232 return route.summary 2WdXdYdzeAeBecfdfef
233 return route.name.replace("_", " ").title() 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jhjijjjkhxckj@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jwjxjyjlhCczj^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikLjMjNjmhHcOj{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
236def get_openapi_operation_metadata( 2FkIkGkHk
237 *, route: routing.APIRoute, method: str, operation_ids: set[str]
238) -> dict[str, Any]:
239 operation: dict[str, Any] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
240 if route.tags: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
241 operation["tags"] = route.tags 2a Z XcYc?ixckj@ib 2 .c/c]iCczj^ic 5 idjd`iHcOj{i
242 operation["summary"] = generate_operation_summary(route=route, method=method) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
243 if route.description: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
244 operation["description"] = route.description 2j k $bWdXdYd7bl m %bzeAeBe9bn o 'bcfdfef#b
245 operation_id = route.operation_id or route.unique_id 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
246 if operation_id in operation_ids: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
247 message = ( 2oca qcb scc
248 f"Duplicate Operation ID {operation_id} for function "
249 + f"{route.endpoint.__name__}"
250 )
251 file_name = getattr(route.endpoint, "__globals__", {}).get("__file__") 2oca qcb scc
252 if file_name: 2oca qcb scc
253 message += f" at {file_name}" 2oca qcb scc
254 warnings.warn(message, stacklevel=1) 2oca qcb scc
255 operation_ids.add(operation_id) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
256 operation["operationId"] = operation_id 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
257 if route.deprecated: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
258 operation["deprecated"] = route.deprecated 2a @ib ^ic {i
259 return operation 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
262def get_openapi_path( 2FkIkGkHk
263 *,
264 route: routing.APIRoute,
265 operation_ids: set[str],
266 model_name_map: ModelNameMap,
267 field_mapping: dict[
268 tuple[ModelField, Literal["validation", "serialization"]], dict[str, Any]
269 ],
270 separate_input_output_schemas: bool = True,
271) -> tuple[dict[str, Any], dict[str, Any], dict[str, Any]]:
272 path = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
273 security_schemes: dict[str, Any] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
274 definitions: dict[str, Any] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
275 assert route.methods is not None, "Methods must be a list" 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
276 if isinstance(route.response_class, DefaultPlaceholder): 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
277 current_response_class: type[Response] = route.response_class.value 2!f]gQjwkd sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdfjWj|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,ckeuj*jHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;eJjbk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
278 else:
279 current_response_class = route.response_class 2d * tda FdTcUjVjfjqktkzke / {db ie*c(j)jujrkukAkf @ !ec /eed~jakJjskvkBk
280 assert current_response_class, "A response class is needed to generate OpenAPI" 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
281 route_response_media_type: str | None = current_response_class.media_type 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
282 if route.include_in_schema: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
283 for method in route.methods: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
284 operation = get_openapi_operation_metadata( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
285 route=route, method=method, operation_ids=operation_ids
286 )
287 parameters: list[dict[str, Any]] = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
288 flat_dependant = get_flat_dependant(route.dependant, skip_repeats=True) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
289 security_definitions, operation_security = get_openapi_security_definitions( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
290 flat_dependant=flat_dependant
291 )
292 if operation_security: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
293 operation.setdefault("security", []).extend(operation_security) 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
294 if security_definitions: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
295 security_schemes.update(security_definitions) 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h7b!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigi9bhiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi#b
296 operation_parameters = _get_openapi_operation_parameters( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
297 dependant=route.dependant,
298 model_name_map=model_name_map,
299 field_mapping=field_mapping,
300 separate_input_output_schemas=separate_input_output_schemas,
301 )
302 parameters.extend(operation_parameters) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
303 if parameters: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
304 all_parameters = { 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
305 (param["in"], param["name"]): param for param in parameters
306 }
307 required_parameters = { 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
308 (param["in"], param["name"]): param
309 for param in parameters
310 if param.get("required")
311 }
312 # Make sure required definitions of the same parameter take precedence
313 # over non-required definitions
314 all_parameters.update(required_parameters) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
315 operation["parameters"] = list(all_parameters.values()) 2d * sdvdicxd+ JcKca ydzdLcK McAdBdCdpcDdqhNcOc@b[b]b^bEdPcQcRcScr Gdj s , t - Z ` { | 0b} ~ abbbcbdbebfb8 9 UcVcHd! IdJdKdLdMdNdgbOdPdhbWcRdSdTdUdVd_b`bjcucvcwck Zd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?d@dib]d^d2c3c4chhjbkblbmbnb0 1 _d. e / `d}dkcae: 7c8cb bece9cR !cdeeefercgerh#c$c{b|b}b~bhe%c'c(c)cw jel x ; y = 2 obpbqb1brbsbtbubvbwbxbyb# $ +c,cke% lemeneoepeqezbreseAb-cuevewexeyeacbclczcAcBcm CeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3e4eBb6e7e?c@c[cihCbDbEbFbGb3 4 8e? f @ 9e$emc'e[ _c`cc (e)e{cY |c*e+e,etc-esh}c~cccdcecfc.eadbdcdddB :en C ] D ^ 5 HbIbJb2bKbLbMbNbObPbQbRb' ( fdgd;e) =e?e@e[e]e^eSb_e`eTbhd|e}e~eafbfgchcncEcFcGco ffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfHfUbJfKfndodpdjhVbWbXbYbZb6 7 Lf_
316 if method in METHODS_WITH_BODY: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
317 request_body_oai = get_openapi_operation_request_body( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
318 body_field=route.body_field,
319 model_name_map=model_name_map,
320 field_mapping=field_mapping,
321 separate_input_output_schemas=separate_input_output_schemas,
322 )
323 if request_body_oai: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
324 operation["requestBody"] = request_body_oai 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
325 if route.callbacks: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
326 callbacks = {} 1dgajkehblmficno
327 for callback in route.callbacks: 1dgajkehblmficno
328 if isinstance(callback, routing.APIRoute): 1dgajkehblmficno
329 ( 1dgajkehblmficno
330 cb_path,
331 cb_security_schemes,
332 cb_definitions,
333 ) = get_openapi_path(
334 route=callback,
335 operation_ids=operation_ids,
336 model_name_map=model_name_map,
337 field_mapping=field_mapping,
338 separate_input_output_schemas=separate_input_output_schemas,
339 )
340 callbacks[callback.name] = {callback.path: cb_path} 1dgajkehblmficno
341 operation["callbacks"] = callbacks 1dgajkehblmficno
342 if route.status_code is not None: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
343 status_code = str(route.status_code) 2icqhTczkkhhhkcrh*cAklhihmcshedBkmhjh
344 else:
345 # It would probably make more sense for all response classes to have an
346 # explicit default status_code, and to extract it from them, instead of
347 # doing this inspection tricks, that would probably be in the future
348 # TODO: probably make status_code a default class attribute for all
349 # responses in Starlette
350 response_signature = inspect.signature(current_response_class.__init__) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4cjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
351 status_code_param = response_signature.parameters.get("status_code") 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4cjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
352 if status_code_param is not None: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4cjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
353 if isinstance(status_code_param.default, int): 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4cjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
354 status_code = str(status_code_param.default) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4cjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
355 operation.setdefault("responses", {}).setdefault(status_code, {})[ 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
356 "description"
357 ] = route.response_description
358 if route_response_media_type and is_body_allowed_for_status_code( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
359 route.status_code
360 ):
361 response_schema = {"type": "string"} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWj|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
362 if lenient_issubclass(current_response_class, JSONResponse): 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWj|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
363 if route.response_field: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjWj|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)juj*jHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjbk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
364 response_schema = get_schema_from_model_field( 2ic1iwd2i3iJcE g F G H I J KcLcp q 4iYi5i6iajj s , t - 8 9 7i! OfWc8igjQdXcYck WdkhxcXdYd[dRfSfTf2c3c4c6b3b5c6c0 1 . kc9i~d!i#i7cL h M N O P Q 8c9cu v $iZi%i'ipjl x ; y = # $ (i% Wf-c)ivjte.c/cm zelhCcAeBe5eZf0f1f?c@c[c8b4b]c^c3 4 ? mc*i%e+i,i_cS i T U V W X `c{cz A -i0i.i/iEjn C ] D ^ ' ( :i) 4fhd;iKj{eidjdo cfmhHcdfefIf7f8f9fndodpd!b5bqdrd6 7 _
365 field=route.response_field,
366 model_name_map=model_name_map,
367 field_mapping=field_mapping,
368 separate_input_output_schemas=separate_input_output_schemas,
369 )
370 else:
371 response_schema = {} 2!f]gQjwkd * sdtdudMfvdicRj#f|ixd+ $focSj%fa yd'f(fzdK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcScFdTcYiNfr ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdj 4h[f5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{fTjUcVcHdUjVjfjWj|fXjIdJdKdLdMdNdgbOdYjPd=ihbZjnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jhjijjjxckj@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j]d6j^dhhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfggghgig7bjg|g#jxke / `d{d|dUf}dkc$jkgmjae: lgqc%jmgb bengogceR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)cie*cZiVfw !h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijel biBgciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg'j+c,cke(j)juj*jHg+jlemeneoepeqezbre,jse[iAb-johuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jwjxjyjCczj^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j6e@j7eihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePgQgRgSg9bTgch`jykf @ 9e!e#e2f$emc{jUgBj'e[ Vgsc|jWgc (eXgYg)eY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd/eed0i3fB hiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:en Ji#gKiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g}jfdgd;e~jakJjbk*gck=e?e@e[e]e^eSb_edk`e_iTbekph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikLjMjNjHcOj{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkJflkKfjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g?g@g[g#b
372 operation.setdefault("responses", {}).setdefault( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDd*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWj|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgeqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-e0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
373 status_code, {}
374 ).setdefault("content", {}).setdefault(route_response_media_type, {})[
375 "schema"
376 ] = response_schema
377 if route.responses: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
378 operation_responses = operation.setdefault("responses", {}) 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
379 for ( 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
380 additional_status_code,
381 additional_response,
382 ) in route.responses.items():
383 process_response = copy.deepcopy(additional_response) 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
384 process_response.pop("model", None) 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
385 status_code_key = str(additional_status_code).upper() 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
386 if status_code_key == "DEFAULT": 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
387 status_code_key = "default" 2ud|d#e
388 openapi_response = operation_responses.setdefault( 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
389 status_code_key, {}
390 )
391 assert isinstance(process_response, dict), ( 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
392 "An additional response must be a dict"
393 )
394 field = route.response_fields.get(additional_status_code) 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
395 additional_field_schema: dict[str, Any] | None = None 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
396 if field: 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
397 additional_field_schema = get_schema_from_model_field( 2d * tdudMfwdE g F G H I J p q FdTcNfs t e / {d|dUf~dL h M N O P Q u v ie*cVfx y f @ !e#e2f%eS i T U V W X z A /eed3fC D
398 field=field,
399 model_name_map=model_name_map,
400 field_mapping=field_mapping,
401 separate_input_output_schemas=separate_input_output_schemas,
402 )
403 media_type = route_response_media_type or "application/json" 2d * tdudMfwdE g F G H I J p q FdTcNfs t e / {d|dUf~dL h M N O P Q u v ie*cVfx y f @ !e#e2f%eS i T U V W X z A /eed3fC D
404 additional_schema = ( 2d * tdudMfwdE g F G H I J p q FdTcNfs t e / {d|dUf~dL h M N O P Q u v ie*cVfx y f @ !e#e2f%eS i T U V W X z A /eed3fC D
405 process_response.setdefault("content", {})
406 .setdefault(media_type, {})
407 .setdefault("schema", {})
408 )
409 deep_dict_update(additional_schema, additional_field_schema) 2d * tdudMfwdE g F G H I J p q FdTcNfs t e / {d|dUf~dL h M N O P Q u v ie*cVfx y f @ !e#e2f%eS i T U V W X z A /eed3fC D
410 status_text: str | None = status_code_ranges.get( 2wkd * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhxke / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohykf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
411 str(additional_status_code).upper()
412 ) or http.client.responses.get(int(additional_status_code))
413 description = ( 2d * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhe / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
414 process_response.get("description")
415 or openapi_response.get("description")
416 or status_text
417 or "Additional Response"
418 )
419 deep_dict_update(openapi_response, process_response) 2d * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhe / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
420 openapi_response["description"] = description 2d * tdudMfwdE g F G H I J a p q FdTcNfs , t - Z nhe / {d|dUf~dL h M N O P Q b u v ie*cVfx ; y = 2 ohf @ !e#e2f%eS i T U V W X c z A /eed3fC ] D ^ 5 ph
421 http422 = "422" 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
422 all_route_params = get_flat_params(route.dependant) 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
423 if (all_route_params or route.body_field) and not any( 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
424 status in operation["responses"]
425 for status in [http422, "4XX", "default"]
426 ):
427 operation["responses"][http422] = { 2!f]gd sdvdic#fxd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcScr (b)b*bGdj [fs , t - Z ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f! IdJdKdLdMdNdgbOdPdhbOfWcQdXcYcRdSdTdUd}fVd_b`bjcucvcwck $bWdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb+b6b3b5c6c0 1 _dfg. gghgig7bjg|ge `d}dkckgae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)cw ,b-b.bjel Bgx ; y = 2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg% lemeneoepeqezbreseAbWf-cte.c/cuevewexeIgyeacbclczcAcBcm %bzelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGb/b8b4b]c^c3 4 8ePg? QgRgSg9bTgchf 9e$emcUg'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcdddB :b;b=b:en #gC ] D ^ 5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g) =e?e@e[e]e^eSb_e`eTb4fhd{eidjd|e}e~eaf+gbfgchcncEcFcGco 'bcfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZb?b!b5bqdrd6 7 Lf=g_ ?g@g[g#b
428 "description": "Validation Error",
429 "content": {
430 "application/json": {
431 "schema": {"$ref": REF_PREFIX + "HTTPValidationError"}
432 }
433 },
434 }
435 if "ValidationError" not in definitions: 2!f]gd sdvdic#fxd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcScr (b)b*bGdj [fs , t - Z ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f! IdJdKdLdMdNdgbOdPdhbOfWcQdXcYcRdSdTdUd}fVd_b`bjcucvcwck $bWdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb+b6b3b5c6c0 1 _dfg. gghgig7bjg|ge `d}dkckgae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)cw ,b-b.bjel Bgx ; y = 2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg% lemeneoepeqezbreseAbWf-cte.c/cuevewexeIgyeacbclczcAcBcm %bzelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGb/b8b4b]c^c3 4 8ePg? QgRgSg9bTgchf 9e$emcUg'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcdddB :b;b=b:en #gC ] D ^ 5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g) =e?e@e[e]e^eSb_e`eTb4fhd{eidjd|e}e~eaf+gbfgchcncEcFcGco 'bcfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZb?b!b5bqdrd6 7 Lf=g_ ?g@g[g#b
436 definitions.update( 2!f]gd sdvdic#fxd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcScr (b)b*bGdj [fs , t - Z ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f! IdJdKdLdMdNdgbOdPdhbOfWcQdXcYcRdSdTdUd}fVd_b`bjcucvcwck $bWdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb+b6b3b5c6c0 1 _dfg. gghgig7bjg|ge `d}dkckgae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)cw ,b-b.bjel Bgx ; y = 2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg% lemeneoepeqezbreseAbWf-cte.c/cuevewexeIgyeacbclczcAcBcm %bzelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGb/b8b4b]c^c3 4 8ePg? QgRgSg9bTgchf 9e$emcUg'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcdddB :b;b=b:en #gC ] D ^ 5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g) =e?e@e[e]e^eSb_e`eTb4fhd{eidjd|e}e~eaf+gbfgchcncEcFcGco 'bcfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZb?b!b5bqdrd6 7 Lf=g_ ?g@g[g#b
437 {
438 "ValidationError": validation_error_definition,
439 "HTTPValidationError": validation_error_response_definition,
440 }
441 )
442 if route.openapi_extra: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
443 deep_dict_update(operation, route.openapi_extra) 2Mc}ihjijjj!cnjwjxjyj|cCjLjMjNj
444 path[method.lower()] = operation 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
445 return path, security_schemes, definitions 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
448def get_fields_from_routes( 2FkIkGkHk
449 routes: Sequence[BaseRoute],
450) -> list[ModelField]:
451 body_fields_from_routes: list[ModelField] = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
452 responses_from_routes: list[ModelField] = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
453 request_fields_from_routes: list[ModelField] = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
454 callback_flat_models: list[ModelField] = [] 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
455 for route in routes: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
456 if getattr(route, "include_in_schema", None) and isinstance( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
457 route, routing.APIRoute
458 ):
459 if route.body_field: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
460 assert isinstance(route.body_field, ModelField), ( 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
461 "A request body must be a Pydantic Field"
462 )
463 body_fields_from_routes.append(route.body_field) 2!f]g#f+ $fE g F G H I J oc%f'f(fK )fp q ^g*f+f,f-f.f/f_g`g:f;f=f?f@fr (b)b*bj [f]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 |f! gbhbOfQdXcYc}fk $bWdkhxcXdYd~f{gagPfQfbgcgdgegib[dRfSfTfjbkblbmbnb+b6b3b5c6c0 1 fg. gghgig7bjg|gkg: lgL h M N O P Q qcmgngogR pgu v }gqgrgsgtgugvg~gahwgxgygzgAgw ,b-b.bl BgCgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ Hg% zbAbWfte.c/cIgm %bzelhCcAeBeJgbhKgXfYfLgMgNgOgBb5eZf0f1fCbDbEbFbGb/b8b4b]c^c3 4 Pg? QgRgSg9bTgchUg[ VgS i T U V W X scWgXgYgY Zgz A dh0g1g2g3g4g5gehfh6g7g8g9g!gB :b;b=bn #g$g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( *g) SbTb4f{eidjd+go 'bcfmhHcdfef,ggh-g5f6f.g/g:g;gUbIf7f8f9fVbWbXbYbZb?b!b5bqdrd6 7 =g_ ?g@g[g#b
464 if route.response_field: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
465 responses_from_routes.append(route.response_field) 2ic1iwd2i3iJcE g F G H I J KcLcp q 4iYi5i6iajj s , t - 8 9 7i! OfWc8igjQdXcYck WdkhxcXdYd[dRfSfTf2c3c4c6b3b5c6c0 1 . kc9i~d!i#i7cL h M N O P Q 8c9cu v $iZi%i'ipjl x ; y = # $ (i% Wf-c)ivjte.c/cm zelhCcAeBe5eZf0f1f?c@c[c8b4b]c^c3 4 ? mc*i%e+i,i_cS i T U V W X `c{cz A -i0i.i/iEjn C ] D ^ ' ( :i) 4fhd;iKj{eidjdo cfmhHcdfefIf7f8f9fndodpd!b5bqdrd6 7 _
466 if route.response_fields: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
467 responses_from_routes.extend(route.response_fields.values()) 2d * tdudMfwdE g F G H I J p q FdTcNfs t e / {d|dUf~dL h M N O P Q u v ie*cVfx y f @ !e#e2f%eS i T U V W X z A /eed3fC D
468 if route.callbacks: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
469 callback_flat_models.extend(get_fields_from_routes(route.callbacks)) 1dgajkehblmficno
470 params = get_flat_params(route.dependant) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
471 request_fields_from_routes.extend(params) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g#b
473 flat_models = callback_flat_models + list( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
474 body_fields_from_routes + responses_from_routes + request_fields_from_routes
475 )
476 return flat_models 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
479def get_openapi( 2FkIkGkHk
480 *,
481 title: str,
482 version: str,
483 openapi_version: str = "3.1.0",
484 summary: str | None = None,
485 description: str | None = None,
486 routes: Sequence[BaseRoute],
487 webhooks: Sequence[BaseRoute] | None = None,
488 tags: list[dict[str, Any]] | None = None,
489 servers: list[dict[str, str | Any]] | None = None,
490 terms_of_service: str | None = None,
491 contact: dict[str, str | Any] | None = None,
492 license_info: dict[str, str | Any] | None = None,
493 separate_input_output_schemas: bool = True,
494 external_docs: dict[str, Any] | None = None,
495) -> dict[str, Any]:
496 info: dict[str, Any] = {"title": title, "version": version} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
497 if summary: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
498 info["summary"] = summary 2=iSiTi[iUiVi_iWiXi
499 if description: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
500 info["description"] = description 2=iSiTi[iUiVi_iWiXi
501 if terms_of_service: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
502 info["termsOfService"] = terms_of_service 2SiTiUiViWiXi
503 if contact: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
504 info["contact"] = contact 2SiTiUiViWiXi
505 if license_info: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
506 info["license"] = license_info 2SiTiUiViWiXi
507 output: dict[str, Any] = {"openapi": openapi_version, "info": info} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
508 if servers: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
509 output["servers"] = servers 2|i~ibjcjdjejljmjojqjrjsjtjAjBjDjFjGjHjIjPj
510 components: dict[str, dict[str, Any]] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
511 paths: dict[str, dict[str, Any]] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
512 webhook_paths: dict[str, dict[str, Any]] = {} 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
513 operation_ids: set[str] = set() 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
514 all_fields = get_fields_from_routes(list(routes or []) + list(webhooks or [])) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
515 flat_models = get_flat_models_from_fields(all_fields, known_models=set()) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
516 model_name_map = get_model_name_map(flat_models) 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
517 field_mapping, definitions = get_definitions( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
518 fields=all_fields,
519 model_name_map=model_name_map,
520 separate_input_output_schemas=separate_input_output_schemas,
521 )
522 for route in routes or []: 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
523 if isinstance(route, routing.APIRoute): 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
524 result = get_openapi_path( 2!f]gQjwkd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#jxke / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jykf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
525 route=route,
526 operation_ids=operation_ids,
527 model_name_map=model_name_map,
528 field_mapping=field_mapping,
529 separate_input_output_schemas=separate_input_output_schemas,
530 )
531 if result: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
532 path, security_schemes, path_definitions = result 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
533 if path: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
534 paths.setdefault(route.path_format, {}).update(path) 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
535 if security_schemes: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
536 components.setdefault("securitySchemes", {}).update( 2ChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3h4h5h6h7h+b6b3b8h9h!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haibicidiei/b8b4bfigihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIiJiKiLiMi?b!b5bNiOi
537 security_schemes
538 )
539 if path_definitions: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?ik $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 8jlj9j!j_dfg. gghgigjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]im %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 ]jAj^j_j8ePg? QgRgSgTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`io 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 nkPjokpkLf=g_ ?g@g[g
540 definitions.update(path_definitions) 2!f]gd sdvdic#fxd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcScr (b)b*bGdj [fs , t - Z ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f! IdJdKdLdMdNdgbOdPdhbOfWcQdXcYcRdSdTdUd}fVd_b`bjcucvcwck WdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb+b6b3b5c6c0 1 _dfg. gghgigjg|ge `d}dkckgae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)cw ,b-b.bjel Bgx ; y = 2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg% lemeneoepeqezbreseAbWf-cte.c/cuevewexeIgyeacbclczcAcBcm zelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGb/b8b4b]c^c3 4 8ePg? QgRgSgTgchf 9e$emcUg'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcdddB :b;b=b:en #gC ] D ^ 5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g) =e?e@e[e]e^eSb_e`eTb4fhd{eidjd|e}e~eaf+gbfgchcncEcFcGco cfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZb?b!b5bqdrd6 7 Lf=g_ ?g@g[g
541 for webhook in webhooks or []: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
542 if isinstance(webhook, routing.APIRoute): 2$b7b%b9b'b#b
543 result = get_openapi_path( 2$b7b%b9b'b#b
544 route=webhook,
545 operation_ids=operation_ids,
546 model_name_map=model_name_map,
547 field_mapping=field_mapping,
548 separate_input_output_schemas=separate_input_output_schemas,
549 )
550 if result: 2$b7b%b9b'b#b
551 path, security_schemes, path_definitions = result 2$b7b%b9b'b#b
552 if path: 2$b7b%b9b'b#b
553 webhook_paths.setdefault(webhook.path_format, {}).update(path) 2$b7b%b9b'b#b
554 if security_schemes: 2$b7b%b9b'b#b
555 components.setdefault("securitySchemes", {}).update( 27b9b#b
556 security_schemes
557 )
558 if path_definitions: 2$b7b%b9b'b#b
559 definitions.update(path_definitions) 2$b7b%b9b'b#b
560 if definitions: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
561 components["schemas"] = {k: definitions[k] for k in sorted(definitions)} 2!f]gd * sdtdudMfvdic1iwd2i#f3ixd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6i(b)b*bGdj [fs , t - Z ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f7i! IdJdKdLdMdNdgbOdPdhbOfWc8iQdXcYcRdSdTdUd}fVd_b`bjcucvcwck $bWdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb+b6b3b5c6c0 1 _dfg. gghgig7bjg|ge / `d{d|dUf}dkc9i~d!ikg#iae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i,b-b.bjel Bgx ; y = 2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg(i% lemeneoepeqezbreseAbWf-c)ite.c/cuevewexeIgyeacbclczcAcBcm %bzelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGb/b8b4b]c^c3 4 8ePg? QgRgSg9bTgchf @ 9e!e#e2f$emc*i%e+iUg,i'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /i:b;b=b:en #gC ] D ^ 5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g:i) =e?e@e[e]e^eSb_e`eTb4fhd;i{eidjd|e}e~eaf+gbfgchcncEcFcGco 'bcfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZb?b!b5bqdrd6 7 Lf=g_ ?g@g[g#b
562 if components: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
563 output["components"] = components 2!f]gd * sdtdudMfvdic1iwd2i#f3ixd+ Jc$fE g F G H I J ocKc%fa yd'f(fzdLcK )fMcp q AdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdj 4h[fs , t - 5hZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 UcVcHd|f7i! IdJdKdLdMdNdgbOdPdhbOfWc8iQdXcYcRdSdTdUd}fVd_b`bjcucvcwck $bWdkhxcXdYdZd0d1d2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib[dRfSfTf]d^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c0 1 _dfg. gghgig7bjg|ge / `d{d|dUf}dkc9i~d!ikg#iae: 7clgL h M N O P Q qc8cmgb bengogce9cR pg!cu v deAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijel biBgx ; y = ci2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ +c,ckeHg(i% lemeneoepeqezbreseAbWf-c)ite.c/cuevewexeIgyeacbclczcAcBcm %bzelhCcAeBeCeDeEeFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb5eZf0f1f6e7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c3 4 8ePg? QgRgSg9bTgchf @ 9e!e#e2f$emc*i%e+iUg,i'e[ _cVgS i T U V W X sc`cWgc (eXgYg)e{cY Zg|cz A *eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:en Ji#gC ] D ^ Ki5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( fdgd;e*g:i) =e?e@e[e]e^eSb_e`eTb4fhd;i{eidjd|e}e~eaf+gbfgchcncEcFcGco 'bcfmhHcdfefffgfhfifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbIf7f8f9fJfKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrd6 7 Lf=g_ ?g@g[g#b
564 output["paths"] = paths 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
565 if webhook_paths: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
566 output["webhooks"] = webhook_paths 2$b7b%b9b'b#b
567 if tags: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
568 output["tags"] = tags 2?i]i`i
569 if external_docs: 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b
570 output["externalDocs"] = external_docs 2ickcmc
571 return jsonable_encoder(OpenAPI(**output), by_alias=True, exclude_none=True) # type: ignore 2!f]gQjd * sdtdudMfvdic1iwdRj2i#f|i3ixd+ Jc$fE g F G H I J ocSjKc%fa yd'f(fzdLcK )fMc}ip q ~iAdzhBd^gCdpcDdqh*f+f,f-f.fNcOc/f_g`g:f;f=f?f@f@b[b]b^bEdPcQcRcSc4iFdTcYiNf5ir 6iChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhShThUhVhWh(bXhYhthuh)b*bZh0h1h2h3hGdajj 4h[fs , t - 5hbjcjdjejZ ]f^f` { | 0b} ~ abbbcbdbebfb_f`f{f8 9 TjUcVcHdUjVjfjqkWjtkzk|f7i! XjIdJdKdLdMdNdgbOdYjPd=ihbOfWc8igjZjQdXcYcnhRdSdTdUd}fVd_b`bjcucvcwcSiTi0j1j?iJkk $b2j3jCkWdhjijjjkhxckjXdYd@iZd0d1d4j2d3d4d5d6d7d8dZc0c9d!d#d$d%d'd(d)d*d+d,d-d.d/d1c:dyc;d=d?dPi@d~f{gagPfQfbgcgdgegib5j[dRfSfTf]d6j^d2c3c4chhjbkblbmbnb6h7h+b6b3b8h9h5c6c7j0 1 Kk8jlj9j!j_dfg. gghgig7bjg|g#je / `d{d|dUf}dkc9i~d$j!ikgmj#iae: 7clgL h M N O P Q qc%j8cmgb bengogce9cR pg!cnju v ojdeAhee}gfercgerhqgrgsgtgug#c$cvg~gahwgxgygzgAg{b|b}b~bhe%c'c(c)c$iie*cZiVf%iw 'i!h#h$h%h'h(h)h*h+h,h-h.h/h:h;h=h?h@h[h]h^h,b_h`hvhwh-b.b{h|h}h~haijepjl biBgx ; y = ciqjrjsjtj2 CgDgobpbqb1brbsbtbubvbwbxbybEgFgGg# $ 'j+c,cke(j)jujrk*jukAkHg(i% +jlemeneoepeqezbre,jse[iAbWf-c)ivj-jte.c/cohuevewexeIgyeacbclczcAcBcUiVi.j/j]iLkm %b:j;jDkzewjxjyjlhCczjAeBe^iCeDeEe=jFeGeHeIeJeKeLe:c;cMeNeOePeQeReSeTeUeVeWeXeYeZe=c0eDc1e2e3eQi4eJgbhKgXfYfLgMgNgOgBb?j5eZf0f1f6e@j7e?c@c[cihCbDbEbFbGbdiei/b8b4bfigi]c^c[j3 4 Mk]jAj^j_j8ePg? QgRgSg9bTgch`jf @ 9e!e#e2f$emc*i%e{j+iUgBj,i'e[ _cVgS i T U V W X sc|j`cWgc (eXgYg)e{cY Zg|cCjz A Dj*eBh+edh,etc-esh0g1g2g3g4g}c~c5gehfh6g7g8g9g!gccdcecfc.eadbdcddd-i/eed0i3f.iB /ihiiijikiliminioipiqirisitiuiviwixiyiziAiBi:bCiDixhyh;b=bEiFiGiHiIi:eEjn Ji#gC ] D ^ KiFjGjHjIj5 $g%gHbIbJb2bKbLbMbNbObPbQbRb'g(g)g' ( }jfdgd;e~jakJjskbkvkBk*g:i) ck=e?e@e[e]e^eSb_edk`e_iTb4fhd;iKjek{eidjdph|e}e~eaf+gbfgchcncEcFcGcWiXifkgk`iNko 'bhkikEkcfLjMjNjmhHcOjdfef{iffgfhfjkifjfkflfmfnfofkdldpfqfrfsftfufvfwfxfyfzfAfBfCfmdDfIcEfFfGfRiHf,ggh-g5f6f.g/g:g;gUbkkIf7f8f9fJflkKfndodpdjhVbWbXbYbZbLiMi?b!b5bNiOiqdrdmk6 7 OknkPjokpkLf=g_ ?g@g[g#b