openapi: Set x-model: dict for objects used as associative arrays.

This works around an openapi-core bug.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg 2022-10-06 01:44:46 -07:00 committed by Tim Abbott
parent 87316a777a
commit ba3aefc3d1
1 changed files with 26 additions and 0 deletions

View File

@ -1047,6 +1047,7 @@ paths:
presence as a UNIX timestamp.
presence:
type: object
x-model: dict
description: |
Object containing the details of the user's most recent presence.
additionalProperties:
@ -2734,6 +2735,7 @@ paths:
marking already read messages as unread was not
supported by the Zulip API.
type: object
x-model: dict
additionalProperties:
type: object
description: |
@ -3233,6 +3235,7 @@ paths:
- update
realm_emoji:
type: object
x-model: dict
description: |
An object in which each key describes a realm emoji.
additionalProperties:
@ -3806,6 +3809,7 @@ paths:
allows editing the content of messages.
authentication_methods:
type: object
x-model: dict
additionalProperties:
description: |
Boolean describing whether the authentication method (i.e its key)
@ -6002,6 +6006,7 @@ paths:
msg: {}
messages:
type: object
x-model: dict
description: |
A dictionary with a key for each queried message that matches the narrow,
with message IDs as keys and search rendering data as values.
@ -6736,6 +6741,7 @@ paths:
msg: {}
presence:
type: object
x-model: dict
description: |
An object containing the presence details for every client the user has
logged into.
@ -7696,6 +7702,7 @@ paths:
msg: {}
subscribed:
type: object
x-model: dict
description: |
A dictionary where the key is the email
address of the user/bot and the value is a
@ -7710,6 +7717,7 @@ paths:
type: string
already_subscribed:
type: object
x-model: dict
description: |
A dictionary where the key is the email
address of the user/bot and the value is a
@ -8112,6 +8120,7 @@ paths:
msg: {}
emoji:
type: object
x-model: dict
description: |
An object that contains `emoji` objects, each identified with their
emoji ID as the key.
@ -8165,11 +8174,13 @@ paths:
in the response.
presences:
type: object
x-model: dict
description: |
A dictionary where each entry describes the presence details
of a user in the Zulip organization.
additionalProperties:
type: object
x-model: dict
description: |
`{user_email}`: Object containing the details of a user's presence
on every client the user is logged into. The object's key is the
@ -8401,6 +8412,7 @@ paths:
application/json:
schema:
type: object
x-model: dict
example:
{
"python": {"text": "Python", "order": "1"},
@ -9773,6 +9785,7 @@ paths:
$ref: "#/components/schemas/CustomProfileField"
custom_profile_field_types:
type: object
x-model: dict
description: |
Present if `custom_profile_fields` is present in `fetch_event_types`.
@ -9949,6 +9962,7 @@ paths:
An integer UNIX timestamp representing when the user was muted.
presences:
type: object
x-model: dict
description: |
Present if `presence` is present in `fetch_event_types`.
@ -9958,6 +9972,7 @@ paths:
Users who have been offline for multiple weeks may not appear in this object.
additionalProperties:
type: object
x-model: dict
description: |
`{user_id}` or `{user_email}`: Object containing the details of a user's
presence on every client the user is logged into. Depending on the value
@ -9992,6 +10007,7 @@ paths:
emoji that has been uploaded in this Zulip organization.
oneOf:
- type: object
x-model: dict
additionalProperties:
$ref: "#/components/schemas/RealmEmoji"
- type: array
@ -10425,6 +10441,7 @@ paths:
a stop word in the query was ignored.
user_status:
type: object
x-model: dict
description: |
Present if `user_status` is present in `fetch_event_types`.
@ -11868,6 +11885,7 @@ paths:
special value `0` before Zulip 5.0 (feature level 100).
realm_authentication_methods:
type: object
x-model: dict
additionalProperties:
description: |
Boolean describing whether the authentication method (i.e its key)
@ -12031,6 +12049,7 @@ paths:
The URL for the organization.
realm_available_video_chat_providers:
type: object
x-model: dict
description: |
Present if `realm` is present in `fetch_event_types`.
@ -12177,6 +12196,7 @@ paths:
a new wide organization logo to brand the organization.
realm_default_external_accounts:
type: object
x-model: dict
description: |
Present if `realm` is present in `fetch_event_types`.
@ -12252,6 +12272,7 @@ paths:
will be accepted.
giphy_rating_options:
type: object
x-model: dict
description: |
Dictionary where each entry describes a valid rating
that is configured on this server and could be selected by an
@ -13012,6 +13033,7 @@ paths:
msg: {}
authentication_methods:
type: object
x-model: dict
additionalProperties: false
deprecated: true
description: |
@ -15462,6 +15484,7 @@ components:
A boolean describing whether the user account has been deactivated.
Config:
type: object
x-model: dict
description: |
A "string: string" dictionary which describes the configuration
for the embedded bot (usually details like API keys).
@ -16593,6 +16616,7 @@ components:
$ref: "#/components/schemas/profile_data"
profile_data:
type: object
x-model: dict
description: |
Only present if `is_bot` is false; bots can't have custom profile fields.
@ -16771,6 +16795,7 @@ components:
msg: {}
subscribed:
type: object
x-model: dict
description: |
A dictionary where the key is the email address of the user/bot and the
value is a list of the names of the streams that were subscribed to as a
@ -16784,6 +16809,7 @@ components:
type: string
already_subscribed:
type: object
x-model: dict
description: |
A dictionary where the key is the email address of the user/bot and the
value is a list of the names of the streams that the user/bot is already