1
0
Fork 0
mirror of https://github.com/HenkKalkwater/harbour-sailfin.git synced 2025-09-05 18:22:46 +00:00

[2/3] update openapi spec: generate code

This updates the openapi spec and invokes the code generator to update
to the Jellyfin 10.10.6 API.

A big motivation to do this was because some mandatory fields have been
made obsolete and are no longer included in responses. Sailfin tries to
deserialize these mandatory fields and fails deserializing. It was evident
in the list of sessions to control.

The failing was a bit too gracefully in my opinion, it did not even show
that an error occurred, nor was it logged anywhere. It took some time
to debug.
This commit is contained in:
Chris Josten 2025-03-13 02:39:07 +01:00
parent eeb9183909
commit d685b48ec1
504 changed files with 62190 additions and 41202 deletions

View file

@ -55,7 +55,10 @@ public:
UserPolicy(
bool isAdministrator,
bool isHidden,
bool isDisabled,
std::optional<bool> enableCollectionManagement,
std::optional<bool> enableSubtitleManagement,
std::optional<bool> enableLyricManagement,
bool isDisabled,
bool enableUserPreferenceAccess,
bool enableRemoteControlOfOtherUsers,
bool enableSharedDeviceControl,
@ -78,7 +81,9 @@ public:
qint32 loginAttemptsBeforeLockout,
qint32 maxActiveSessions,
bool enablePublicSharing,
qint32 remoteClientBitrateLimit,
qint32 remoteClientBitrateLimit,
QString authenticationProviderId,
QString passwordResetProviderId,
SyncPlayUserAccessType syncPlayAccess
);
@ -112,6 +117,33 @@ public:
*/
void setIsHidden(bool newIsHidden);
/**
* @brief Gets or sets a value indicating whether this instance can manage collections.
*/
std::optional<bool> enableCollectionManagement() const;
/**
* @brief Gets or sets a value indicating whether this instance can manage collections.
*/
void setEnableCollectionManagement(std::optional<bool> newEnableCollectionManagement);
/**
* @brief Gets or sets a value indicating whether this instance can manage subtitles.
*/
std::optional<bool> enableSubtitleManagement() const;
/**
* @brief Gets or sets a value indicating whether this instance can manage subtitles.
*/
void setEnableSubtitleManagement(std::optional<bool> newEnableSubtitleManagement);
/**
* @brief Gets or sets a value indicating whether this user can manage lyrics.
*/
std::optional<bool> enableLyricManagement() const;
/**
* @brief Gets or sets a value indicating whether this user can manage lyrics.
*/
void setEnableLyricManagement(std::optional<bool> newEnableLyricManagement);
/**
* @brief Gets or sets a value indicating whether this instance is disabled.
*/
@ -140,6 +172,13 @@ public:
void setBlockedTagsNull();
QStringList allowedTags() const;
void setAllowedTags(QStringList newAllowedTags);
bool allowedTagsNull() const;
void setAllowedTagsNull();
bool enableUserPreferenceAccess() const;
void setEnableUserPreferenceAccess(bool newEnableUserPreferenceAccess);
@ -318,15 +357,11 @@ public:
QString authenticationProviderId() const;
void setAuthenticationProviderId(QString newAuthenticationProviderId);
bool authenticationProviderIdNull() const;
void setAuthenticationProviderIdNull();
QString passwordResetProviderId() const;
void setPasswordResetProviderId(QString newPasswordResetProviderId);
bool passwordResetProviderIdNull() const;
void setPasswordResetProviderIdNull();
SyncPlayUserAccessType syncPlayAccess() const;
@ -337,9 +372,13 @@ public:
protected:
bool m_isAdministrator;
bool m_isHidden;
std::optional<bool> m_enableCollectionManagement = std::nullopt;
std::optional<bool> m_enableSubtitleManagement = std::nullopt;
std::optional<bool> m_enableLyricManagement = std::nullopt;
bool m_isDisabled;
std::optional<qint32> m_maxParentalRating = std::nullopt;
QStringList m_blockedTags;
QStringList m_allowedTags;
bool m_enableUserPreferenceAccess;
QList<AccessSchedule> m_accessSchedules;
QList<UnratedItem> m_blockUnratedItems;