From a677f61bea208a840132c202db3b54f5c28ba0c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=B5=E3=81=81?= Date: Fri, 12 May 2023 11:28:19 +0900 Subject: [PATCH] update hook MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: ふぁ --- tools/build_config.py | 22 ++++++++++++++++++---- tools/hooks.py | 12 +++++++----- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/tools/build_config.py b/tools/build_config.py index af82ae1..7da5529 100644 --- a/tools/build_config.py +++ b/tools/build_config.py @@ -32,10 +32,24 @@ class Config: } | { key: [ - SetResponsesHeader("legacy"), - AddParametersOnParameters(split=2), + SetResponsesHeader(suffix="legacy"), + AddParametersOnParameters( + split=2, + schemaType=None, + ), ] - for key in ["v1.1-get", "v1.1-post", "v2.0-get", "v2.0-post"] + for key in ["v1.1-get", "v2.0-get"] + } + | { + key: [ + SetResponsesHeader(suffix="legacy"), + AddParametersOnBody( + split=2, + schemaType=None, + contentType="application/x-www-form-urlencoded", + ), + ] + for key in ["v1.1-post", "v2.0-post"] }, }, "dart": { @@ -71,7 +85,7 @@ class Config: AddSecuritySchemesOnHeader(split=-1), AddParametersOnParameters( split=2, - schemaType="string", + schemaType=None, ), ] for key in ["v1.1-get", "v2.0-get"] diff --git a/tools/hooks.py b/tools/hooks.py index 7f91f6e..537cb59 100644 --- a/tools/hooks.py +++ b/tools/hooks.py @@ -129,22 +129,24 @@ class AddParametersOnParameters(RequestHookBase): def hook(self, path: str, value: dict): path, value = super().hook(path, value) - for key in self.PLACEHOLDER[self.path_name].keys(): - example = json.dumps(self.PLACEHOLDER[self.path_name][key]) + data = self.PLACEHOLDER[self.path_name] + for key in data.keys(): if self.schemaType == "string": + example = json.dumps(data[key]) schema = { "type": "string", "default": example, "example": example, } elif self.schemaType == "object": + example = json.dumps(data[key]) schema = { "type": "object", "default": example, "example": example, } else: - schema = self.placeholder_to_yaml(example) + schema = self.placeholder_to_yaml(data[key]) value["parameters"].append( { "name": key, @@ -178,14 +180,14 @@ class AddParametersOnBody(RequestHookBase): data = self.PLACEHOLDER[self.path_name] if self.schemaType == "string": - example = json.dumps(self.PLACEHOLDER[self.path_name]) + example = json.dumps(data) schema = { "type": "string", "default": example, "example": example, } elif self.schemaType == "object": - example = json.dumps(self.PLACEHOLDER[self.path_name]) + example = json.dumps(data) schema = { "type": "object", "default": example,