refactor: fields `meta` ref to dashboard_swagger
This commit is contained in:
parent
fb7c7dffb7
commit
93dd7d46c5
|
@ -24,7 +24,7 @@
|
||||||
-include_lib("emqx/include/logger.hrl").
|
-include_lib("emqx/include/logger.hrl").
|
||||||
-include_lib("emqx/include/emqx_authentication.hrl").
|
-include_lib("emqx/include/emqx_authentication.hrl").
|
||||||
|
|
||||||
-import(hoconsc, [mk/2, ref/1]).
|
-import(hoconsc, [mk/2, ref/1, ref/2]).
|
||||||
-import(emqx_dashboard_swagger, [error_codes/2]).
|
-import(emqx_dashboard_swagger, [error_codes/2]).
|
||||||
|
|
||||||
-define(BAD_REQUEST, 'BAD_REQUEST').
|
-define(BAD_REQUEST, 'BAD_REQUEST').
|
||||||
|
@ -146,13 +146,7 @@ fields(response_user) ->
|
||||||
{is_superuser, mk(boolean(), #{default => false, required => false})}
|
{is_superuser, mk(boolean(), #{default => false, required => false})}
|
||||||
];
|
];
|
||||||
fields(response_users) ->
|
fields(response_users) ->
|
||||||
paginated_list_type(ref(response_user));
|
paginated_list_type(ref(response_user)).
|
||||||
fields(pagination_meta) ->
|
|
||||||
[
|
|
||||||
{page, pos_integer()},
|
|
||||||
{limit, pos_integer()},
|
|
||||||
{count, non_neg_integer()}
|
|
||||||
].
|
|
||||||
|
|
||||||
schema("/authentication") ->
|
schema("/authentication") ->
|
||||||
#{
|
#{
|
||||||
|
@ -1316,7 +1310,7 @@ binfmt(Fmt, Args) -> iolist_to_binary(io_lib:format(Fmt, Args)).
|
||||||
paginated_list_type(Type) ->
|
paginated_list_type(Type) ->
|
||||||
[
|
[
|
||||||
{data, hoconsc:array(Type)},
|
{data, hoconsc:array(Type)},
|
||||||
{meta, ref(pagination_meta)}
|
{meta, ref(emqx_dashboard_swagger, meta)}
|
||||||
].
|
].
|
||||||
|
|
||||||
authenticator_array_example() ->
|
authenticator_array_example() ->
|
||||||
|
|
|
@ -383,7 +383,7 @@ fields(rules_for_username) ->
|
||||||
fields(username_response_data) ->
|
fields(username_response_data) ->
|
||||||
[
|
[
|
||||||
{data, mk(array(ref(rules_for_username)), #{})},
|
{data, mk(array(ref(rules_for_username)), #{})},
|
||||||
{meta, ref(meta)}
|
{meta, ref(emqx_dashboard_swagger, meta)}
|
||||||
];
|
];
|
||||||
fields(rules_for_clientid) ->
|
fields(rules_for_clientid) ->
|
||||||
fields(rules) ++
|
fields(rules) ++
|
||||||
|
@ -391,14 +391,10 @@ fields(rules_for_clientid) ->
|
||||||
fields(clientid_response_data) ->
|
fields(clientid_response_data) ->
|
||||||
[
|
[
|
||||||
{data, mk(array(ref(rules_for_clientid)), #{})},
|
{data, mk(array(ref(rules_for_clientid)), #{})},
|
||||||
{meta, ref(meta)}
|
{meta, ref(emqx_dashboard_swagger, meta)}
|
||||||
];
|
];
|
||||||
fields(rules) ->
|
fields(rules) ->
|
||||||
[{rules, mk(array(ref(rule_item)))}];
|
[{rules, mk(array(ref(rule_item)))}].
|
||||||
fields(meta) ->
|
|
||||||
emqx_dashboard_swagger:fields(page) ++
|
|
||||||
emqx_dashboard_swagger:fields(limit) ++
|
|
||||||
[{count, mk(integer(), #{example => 1})}].
|
|
||||||
|
|
||||||
%%--------------------------------------------------------------------
|
%%--------------------------------------------------------------------
|
||||||
%% HTTP API
|
%% HTTP API
|
||||||
|
|
|
@ -135,7 +135,12 @@ fields(limit) ->
|
||||||
<<")">>
|
<<")">>
|
||||||
]),
|
]),
|
||||||
Meta = #{in => query, desc => Desc, default => ?DEFAULT_ROW, example => 50},
|
Meta = #{in => query, desc => Desc, default => ?DEFAULT_ROW, example => 50},
|
||||||
[{limit, hoconsc:mk(range(1, ?MAX_ROW_LIMIT), Meta)}].
|
[{limit, hoconsc:mk(range(1, ?MAX_ROW_LIMIT), Meta)}];
|
||||||
|
fields(count) ->
|
||||||
|
Meta = #{desc => <<"Results count.">>, required => true},
|
||||||
|
[{count, hoconsc:mk(range(0, inf), Meta)}];
|
||||||
|
fields(meta) ->
|
||||||
|
fields(page) ++ fields(limit) ++ fields(count).
|
||||||
|
|
||||||
-spec schema_with_example(hocon_schema:type(), term()) -> hocon_schema:field_schema_map().
|
-spec schema_with_example(hocon_schema:type(), term()) -> hocon_schema:field_schema_map().
|
||||||
schema_with_example(Type, Example) ->
|
schema_with_example(Type, Example) ->
|
||||||
|
|
|
@ -53,7 +53,7 @@ schema("/alarms") ->
|
||||||
responses => #{
|
responses => #{
|
||||||
200 => [
|
200 => [
|
||||||
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, alarm)), #{})},
|
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, alarm)), #{})},
|
||||||
{meta, hoconsc:mk(hoconsc:ref(?MODULE, meta), #{})}
|
{meta, hoconsc:mk(hoconsc:ref(emqx_dashboard_swagger, meta), #{})}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -98,11 +98,8 @@ fields(alarm) ->
|
||||||
desc => ?DESC(deactivate_at),
|
desc => ?DESC(deactivate_at),
|
||||||
example => <<"2021-10-31T10:52:52.548+08:00">>
|
example => <<"2021-10-31T10:52:52.548+08:00">>
|
||||||
})}
|
})}
|
||||||
];
|
].
|
||||||
fields(meta) ->
|
|
||||||
emqx_dashboard_swagger:fields(page) ++
|
|
||||||
emqx_dashboard_swagger:fields(limit) ++
|
|
||||||
[{count, hoconsc:mk(integer(), #{example => 1})}].
|
|
||||||
%%%==============================================================================================
|
%%%==============================================================================================
|
||||||
%% parameters trans
|
%% parameters trans
|
||||||
alarms(get, #{query_string := QString}) ->
|
alarms(get, #{query_string := QString}) ->
|
||||||
|
|
|
@ -62,7 +62,7 @@ schema("/banned") ->
|
||||||
responses => #{
|
responses => #{
|
||||||
200 => [
|
200 => [
|
||||||
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(ban)), #{})},
|
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(ban)), #{})},
|
||||||
{meta, hoconsc:mk(hoconsc:ref(meta), #{})}
|
{meta, hoconsc:mk(hoconsc:ref(emqx_dashboard_swagger, meta), #{})}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -147,11 +147,7 @@ fields(ban) ->
|
||||||
required => false,
|
required => false,
|
||||||
example => <<"2021-10-25T21:53:47+08:00">>
|
example => <<"2021-10-25T21:53:47+08:00">>
|
||||||
})}
|
})}
|
||||||
];
|
].
|
||||||
fields(meta) ->
|
|
||||||
emqx_dashboard_swagger:fields(page) ++
|
|
||||||
emqx_dashboard_swagger:fields(limit) ++
|
|
||||||
[{count, hoconsc:mk(integer(), #{example => 1})}].
|
|
||||||
|
|
||||||
banned(get, #{query_string := Params}) ->
|
banned(get, #{query_string := Params}) ->
|
||||||
Response = emqx_mgmt_api:paginate(?TAB, Params, ?FORMAT_FUN),
|
Response = emqx_mgmt_api:paginate(?TAB, Params, ?FORMAT_FUN),
|
||||||
|
|
|
@ -203,7 +203,7 @@ schema("/clients") ->
|
||||||
responses => #{
|
responses => #{
|
||||||
200 => [
|
200 => [
|
||||||
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, client)), #{})},
|
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(?MODULE, client)), #{})},
|
||||||
{meta, hoconsc:mk(hoconsc:ref(?MODULE, meta), #{})}
|
{meta, hoconsc:mk(hoconsc:ref(emqx_dashboard_swagger, meta), #{})}
|
||||||
],
|
],
|
||||||
400 =>
|
400 =>
|
||||||
emqx_dashboard_swagger:error_codes(
|
emqx_dashboard_swagger:error_codes(
|
||||||
|
@ -518,11 +518,7 @@ fields(subscribe) ->
|
||||||
fields(unsubscribe) ->
|
fields(unsubscribe) ->
|
||||||
[
|
[
|
||||||
{topic, hoconsc:mk(binary(), #{desc => <<"Topic">>})}
|
{topic, hoconsc:mk(binary(), #{desc => <<"Topic">>})}
|
||||||
];
|
].
|
||||||
fields(meta) ->
|
|
||||||
emqx_dashboard_swagger:fields(page) ++
|
|
||||||
emqx_dashboard_swagger:fields(limit) ++
|
|
||||||
[{count, hoconsc:mk(integer(), #{example => 1})}].
|
|
||||||
|
|
||||||
%%%==============================================================================================
|
%%%==============================================================================================
|
||||||
%% parameters trans
|
%% parameters trans
|
||||||
|
|
|
@ -60,7 +60,7 @@ schema("/topics") ->
|
||||||
responses => #{
|
responses => #{
|
||||||
200 => [
|
200 => [
|
||||||
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(topic)), #{})},
|
{data, hoconsc:mk(hoconsc:array(hoconsc:ref(topic)), #{})},
|
||||||
{meta, hoconsc:mk(hoconsc:ref(meta), #{})}
|
{meta, hoconsc:mk(hoconsc:ref(emqx_dashboard_swagger, meta), #{})}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,11 +91,7 @@ fields(topic) ->
|
||||||
desc => <<"Node">>,
|
desc => <<"Node">>,
|
||||||
required => true
|
required => true
|
||||||
})}
|
})}
|
||||||
];
|
].
|
||||||
fields(meta) ->
|
|
||||||
emqx_dashboard_swagger:fields(page) ++
|
|
||||||
emqx_dashboard_swagger:fields(limit) ++
|
|
||||||
[{count, hoconsc:mk(integer(), #{example => 1})}].
|
|
||||||
|
|
||||||
%%%==============================================================================================
|
%%%==============================================================================================
|
||||||
%% parameters trans
|
%% parameters trans
|
||||||
|
|
Loading…
Reference in New Issue