Compare commits

...

3 Commits

Author SHA1 Message Date
jld3103 c689ef12d9
feat(nextcloud): Add spreed 1 year ago
jld3103 2f27f480e3
feat(tool): Add spreed 1 year ago
jld3103 a8e6e2ca3c
fix(tool): Do not update composer dependencies when generating specs 1 year ago
  1. 3
      .gitmodules
  2. 1
      external/nextcloud-spreed
  3. 1
      packages/nextcloud/lib/ids.dart
  4. 13
      packages/nextcloud/lib/spreed.dart
  5. 380
      packages/nextcloud/lib/src/api/core.openapi.dart
  6. 15352
      packages/nextcloud/lib/src/api/core.openapi.g.dart
  7. 163
      packages/nextcloud/lib/src/api/core.openapi.json
  8. 25575
      packages/nextcloud/lib/src/api/spreed.openapi.dart
  9. 51530
      packages/nextcloud/lib/src/api/spreed.openapi.g.dart
  10. 16517
      packages/nextcloud/lib/src/api/spreed.openapi.json
  11. 9
      tool/generate-specs.sh

3
.gitmodules vendored

@ -19,3 +19,6 @@
[submodule "external/flathub-shared-modules"]
path = external/flathub-shared-modules
url = https://github.com/flathub/shared-modules.git
[submodule "external/nextcloud-spreed"]
path = external/nextcloud-spreed
url = https://github.com/nextcloud/spreed

1
external/nextcloud-spreed vendored

@ -0,0 +1 @@
Subproject commit c1472ed4cc0f777d27d35f1cf0e3020df1c50bba

1
packages/nextcloud/lib/ids.dart

@ -16,6 +16,7 @@ final class AppIDs {
static const core = 'core';
static const filesTrashbin = 'files_trashbin';
static const comments = 'comments';
static const spreed = 'spreed';
static const sharebymail = 'sharebymail';
static const filesExternal = 'files_external';
static const filesReminders = 'files_reminders';

13
packages/nextcloud/lib/spreed.dart

@ -0,0 +1,13 @@
// coverage:ignore-file
import 'package:nextcloud/src/api/spreed.openapi.dart';
import 'package:nextcloud/src/client.dart';
export 'src/api/spreed.openapi.dart';
// ignore: public_member_api_docs
extension SpreedExtension on NextcloudClient {
static final _spreed = Expando<Client>();
/// Client for the spreed APIs
Client get spreed => _spreed[this] ??= Client.fromClient(this);
}

380
packages/nextcloud/lib/src/api/core.openapi.dart

@ -7632,6 +7632,338 @@ abstract class SharebymailCapabilities
static Serializer<SharebymailCapabilities> get serializer => _$sharebymailCapabilitiesSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_AttachmentsInterface {
bool get allowed;
String? get folder;
SpreedPublicCapabilities_Spreed_Config_AttachmentsInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_AttachmentsInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_AttachmentsInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Attachments
implements
SpreedPublicCapabilities_Spreed_Config_AttachmentsInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Attachments,
SpreedPublicCapabilities_Spreed_Config_AttachmentsBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Attachments([
final void Function(SpreedPublicCapabilities_Spreed_Config_AttachmentsBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Attachments;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Attachments._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Attachments.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Attachments> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigAttachmentsSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_CallInterface {
bool get enabled;
@BuiltValueField(wireName: 'breakout-rooms')
bool get breakoutRooms;
bool get recording;
@BuiltValueField(wireName: 'recording-consent')
int get recordingConsent;
@BuiltValueField(wireName: 'supported-reactions')
BuiltList<String> get supportedReactions;
@BuiltValueField(wireName: 'predefined-backgrounds')
BuiltList<String> get predefinedBackgrounds;
@BuiltValueField(wireName: 'can-upload-background')
bool get canUploadBackground;
SpreedPublicCapabilities_Spreed_Config_CallInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_CallInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_CallInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Call
implements
SpreedPublicCapabilities_Spreed_Config_CallInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Call, SpreedPublicCapabilities_Spreed_Config_CallBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Call([
final void Function(SpreedPublicCapabilities_Spreed_Config_CallBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Call;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Call._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Call.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Call> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigCallSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_ChatInterface {
@BuiltValueField(wireName: 'max-length')
int get maxLength;
@BuiltValueField(wireName: 'read-privacy')
int get readPrivacy;
@BuiltValueField(wireName: 'has-translation-providers')
bool get hasTranslationProviders;
@BuiltValueField(wireName: 'typing-privacy')
int get typingPrivacy;
SpreedPublicCapabilities_Spreed_Config_ChatInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_ChatInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_ChatInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Chat
implements
SpreedPublicCapabilities_Spreed_Config_ChatInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Chat, SpreedPublicCapabilities_Spreed_Config_ChatBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Chat([
final void Function(SpreedPublicCapabilities_Spreed_Config_ChatBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Chat;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Chat._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Chat.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Chat> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigChatSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_ConversationsInterface {
@BuiltValueField(wireName: 'can-create')
bool get canCreate;
SpreedPublicCapabilities_Spreed_Config_ConversationsInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_ConversationsInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_ConversationsInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Conversations
implements
SpreedPublicCapabilities_Spreed_Config_ConversationsInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Conversations,
SpreedPublicCapabilities_Spreed_Config_ConversationsBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Conversations([
final void Function(SpreedPublicCapabilities_Spreed_Config_ConversationsBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Conversations;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Conversations._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Conversations.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Conversations> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigConversationsSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_PreviewsInterface {
@BuiltValueField(wireName: 'max-gif-size')
int get maxGifSize;
SpreedPublicCapabilities_Spreed_Config_PreviewsInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_PreviewsInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_PreviewsInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Previews
implements
SpreedPublicCapabilities_Spreed_Config_PreviewsInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Previews, SpreedPublicCapabilities_Spreed_Config_PreviewsBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Previews([
final void Function(SpreedPublicCapabilities_Spreed_Config_PreviewsBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Previews;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Previews._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Previews.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Previews> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigPreviewsSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_Config_SignalingInterface {
@BuiltValueField(wireName: 'session-ping-limit')
int get sessionPingLimit;
@BuiltValueField(wireName: 'hello-v2-token-key')
String? get helloV2TokenKey;
SpreedPublicCapabilities_Spreed_Config_SignalingInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_Config_SignalingInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_Config_SignalingInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config_Signaling
implements
SpreedPublicCapabilities_Spreed_Config_SignalingInterface,
Built<SpreedPublicCapabilities_Spreed_Config_Signaling,
SpreedPublicCapabilities_Spreed_Config_SignalingBuilder> {
factory SpreedPublicCapabilities_Spreed_Config_Signaling([
final void Function(SpreedPublicCapabilities_Spreed_Config_SignalingBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config_Signaling;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config_Signaling._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config_Signaling.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config_Signaling> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigSignalingSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_Spreed_ConfigInterface {
SpreedPublicCapabilities_Spreed_Config_Attachments get attachments;
SpreedPublicCapabilities_Spreed_Config_Call get call;
SpreedPublicCapabilities_Spreed_Config_Chat get chat;
SpreedPublicCapabilities_Spreed_Config_Conversations get conversations;
SpreedPublicCapabilities_Spreed_Config_Previews get previews;
SpreedPublicCapabilities_Spreed_Config_Signaling get signaling;
SpreedPublicCapabilities_Spreed_ConfigInterface rebuild(
final void Function(SpreedPublicCapabilities_Spreed_ConfigInterfaceBuilder) updates,
);
SpreedPublicCapabilities_Spreed_ConfigInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed_Config
implements
SpreedPublicCapabilities_Spreed_ConfigInterface,
Built<SpreedPublicCapabilities_Spreed_Config, SpreedPublicCapabilities_Spreed_ConfigBuilder> {
factory SpreedPublicCapabilities_Spreed_Config([
final void Function(SpreedPublicCapabilities_Spreed_ConfigBuilder)? b,
]) = _$SpreedPublicCapabilities_Spreed_Config;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed_Config._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed_Config.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed_Config> get serializer =>
_$spreedPublicCapabilitiesSpreedConfigSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilities_SpreedInterface {
BuiltList<String> get features;
SpreedPublicCapabilities_Spreed_Config get config;
String get version;
SpreedPublicCapabilities_SpreedInterface rebuild(
final void Function(SpreedPublicCapabilities_SpreedInterfaceBuilder) updates,
);
SpreedPublicCapabilities_SpreedInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities_Spreed
implements
SpreedPublicCapabilities_SpreedInterface,
Built<SpreedPublicCapabilities_Spreed, SpreedPublicCapabilities_SpreedBuilder> {
factory SpreedPublicCapabilities_Spreed([final void Function(SpreedPublicCapabilities_SpreedBuilder)? b]) =
_$SpreedPublicCapabilities_Spreed;
// coverage:ignore-start
const SpreedPublicCapabilities_Spreed._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities_Spreed.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities_Spreed> get serializer => _$spreedPublicCapabilitiesSpreedSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class SpreedPublicCapabilitiesInterface {
SpreedPublicCapabilities_Spreed get spreed;
SpreedPublicCapabilitiesInterface rebuild(final void Function(SpreedPublicCapabilitiesInterfaceBuilder) updates);
SpreedPublicCapabilitiesInterfaceBuilder toBuilder();
}
abstract class SpreedPublicCapabilities
implements SpreedPublicCapabilitiesInterface, Built<SpreedPublicCapabilities, SpreedPublicCapabilitiesBuilder> {
factory SpreedPublicCapabilities([final void Function(SpreedPublicCapabilitiesBuilder)? b]) =
_$SpreedPublicCapabilities;
// coverage:ignore-start
const SpreedPublicCapabilities._();
// coverage:ignore-end
// coverage:ignore-start
factory SpreedPublicCapabilities.fromJson(final Map<String, dynamic> json) =>
_jsonSerializers.deserializeWith(serializer, json)!;
// coverage:ignore-end
// coverage:ignore-start
Map<String, dynamic> toJson() => _jsonSerializers.serializeWith(serializer, this)! as Map<String, dynamic>;
// coverage:ignore-end
static Serializer<SpreedPublicCapabilities> get serializer => _$spreedPublicCapabilitiesSerializer;
}
@BuiltValue(instantiable: false)
abstract interface class ThemingPublicCapabilities_ThemingInterface {
String get name;
@ -7869,6 +8201,7 @@ abstract class OcsGetCapabilitiesResponseApplicationJson_Ocs_Data_Capabilities
NotificationsCapabilities? get notificationsCapabilities;
ProvisioningApiCapabilities? get provisioningApiCapabilities;
SharebymailCapabilities? get sharebymailCapabilities;
SpreedPublicCapabilities? get spreedPublicCapabilities;
ThemingPublicCapabilities? get themingPublicCapabilities;
UserStatusCapabilities? get userStatusCapabilities;
WeatherStatusCapabilities? get weatherStatusCapabilities;
@ -7967,6 +8300,13 @@ class _$OcsGetCapabilitiesResponseApplicationJson_Ocs_Data_CapabilitiesSerialize
)! as SharebymailCapabilities)
.toBuilder();
} catch (_) {}
try {
result._spreedPublicCapabilities = (_jsonSerializers.deserialize(
data,
specifiedType: const FullType(SpreedPublicCapabilities),
)! as SpreedPublicCapabilities)
.toBuilder();
} catch (_) {}
try {
result._themingPublicCapabilities = (_jsonSerializers.deserialize(
data,
@ -8000,6 +8340,7 @@ class _$OcsGetCapabilitiesResponseApplicationJson_Ocs_Data_CapabilitiesSerialize
result._notificationsCapabilities,
result._provisioningApiCapabilities,
result._sharebymailCapabilities,
result._spreedPublicCapabilities,
result._themingPublicCapabilities,
result._userStatusCapabilities,
result._weatherStatusCapabilities,
@ -10566,6 +10907,45 @@ final Serializers _serializers = (Serializers().toBuilder()
SharebymailCapabilities_FilesSharing_Sharebymail_ExpireDate.new,
)
..add(SharebymailCapabilities_FilesSharing_Sharebymail_ExpireDate.serializer)
..addBuilderFactory(const FullType(SpreedPublicCapabilities), SpreedPublicCapabilities.new)
..add(SpreedPublicCapabilities.serializer)
..addBuilderFactory(const FullType(SpreedPublicCapabilities_Spreed), SpreedPublicCapabilities_Spreed.new)
..add(SpreedPublicCapabilities_Spreed.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config),
SpreedPublicCapabilities_Spreed_Config.new,
)
..add(SpreedPublicCapabilities_Spreed_Config.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Attachments),
SpreedPublicCapabilities_Spreed_Config_Attachments.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Attachments.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Call),
SpreedPublicCapabilities_Spreed_Config_Call.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Call.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Chat),
SpreedPublicCapabilities_Spreed_Config_Chat.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Chat.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Conversations),
SpreedPublicCapabilities_Spreed_Config_Conversations.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Conversations.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Previews),
SpreedPublicCapabilities_Spreed_Config_Previews.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Previews.serializer)
..addBuilderFactory(
const FullType(SpreedPublicCapabilities_Spreed_Config_Signaling),
SpreedPublicCapabilities_Spreed_Config_Signaling.new,
)
..add(SpreedPublicCapabilities_Spreed_Config_Signaling.serializer)
..addBuilderFactory(const FullType(ThemingPublicCapabilities), ThemingPublicCapabilities.new)
..add(ThemingPublicCapabilities.serializer)
..addBuilderFactory(const FullType(ThemingPublicCapabilities_Theming), ThemingPublicCapabilities_Theming.new)

15352
packages/nextcloud/lib/src/api/core.openapi.g.dart

File diff suppressed because it is too large Load Diff

163
packages/nextcloud/lib/src/api/core.openapi.json

@ -1066,6 +1066,166 @@
}
}
},
"SpreedPublicCapabilities": {
"type": "object",
"required": [
"spreed"
],
"properties": {
"spreed": {
"type": "object",
"required": [
"features",
"config",
"version"
],
"properties": {
"features": {
"type": "array",
"items": {
"type": "string"
}
},
"config": {
"type": "object",
"required": [
"attachments",
"call",
"chat",
"conversations",
"previews",
"signaling"
],
"properties": {
"attachments": {
"type": "object",
"required": [
"allowed"
],
"properties": {
"allowed": {
"type": "boolean"
},
"folder": {
"type": "string"
}
}
},
"call": {
"type": "object",
"required": [
"enabled",
"breakout-rooms",
"recording",
"recording-consent",
"supported-reactions",
"predefined-backgrounds",
"can-upload-background"
],
"properties": {
"enabled": {
"type": "boolean"
},
"breakout-rooms": {
"type": "boolean"
},
"recording": {
"type": "boolean"
},
"recording-consent": {
"type": "integer",
"format": "int64"
},
"supported-reactions": {
"type": "array",
"items": {
"type": "string"
}
},
"predefined-backgrounds": {
"type": "array",
"items": {
"type": "string"
}
},
"can-upload-background": {
"type": "boolean"
}
}
},
"chat": {
"type": "object",
"required": [
"max-length",
"read-privacy",
"has-translation-providers",
"typing-privacy"
],
"properties": {
"max-length": {
"type": "integer",
"format": "int64"
},
"read-privacy": {
"type": "integer",
"format": "int64"
},
"has-translation-providers": {
"type": "boolean"
},
"typing-privacy": {
"type": "integer",
"format": "int64"
}
}
},
"conversations": {
"type": "object",
"required": [
"can-create"
],
"properties": {
"can-create": {
"type": "boolean"
}
}
},
"previews": {
"type": "object",
"required": [
"max-gif-size"
],
"properties": {
"max-gif-size": {
"type": "integer",
"format": "int64"
}
}
},
"signaling": {
"type": "object",
"required": [
"session-ping-limit"
],
"properties": {
"session-ping-limit": {
"type": "integer",
"format": "int64"
},
"hello-v2-token-key": {
"type": "string"
}
}
}
}
},
"version": {
"type": "string"
}
}
}
}
},
"ThemingPublicCapabilities": {
"type": "object",
"required": [
@ -2191,6 +2351,9 @@
{
"$ref": "#/components/schemas/SharebymailCapabilities"
},
{
"$ref": "#/components/schemas/SpreedPublicCapabilities"
},
{
"$ref": "#/components/schemas/ThemingPublicCapabilities"
},

25575
packages/nextcloud/lib/src/api/spreed.openapi.dart

File diff suppressed because it is too large Load Diff

51530
packages/nextcloud/lib/src/api/spreed.openapi.g.dart

File diff suppressed because it is too large Load Diff

16517
packages/nextcloud/lib/src/api/spreed.openapi.json

File diff suppressed because it is too large Load Diff

9
tool/generate-specs.sh

@ -11,10 +11,10 @@ function generate_spec() {
composer exec generate-spec -- "$path" "../../packages/nextcloud/lib/src/api/$codename.openapi.json" --first-content-type --openapi-version 3.1.0
}
for dir in external/nextcloud-server external/nextcloud-notifications; do
for dir in external/nextcloud-server external/nextcloud-notifications external/nextcloud-spreed; do
(
cd "$dir"
composer update
composer install
composer install --no-dev
git checkout . # Remove changed files
)
@ -50,6 +50,11 @@ done
generate_spec "." "notifications"
)
(
cd external/nextcloud-spreed
generate_spec "." "spreed"
)
(
cd external/nextcloud-server
composer exec merge-specs -- --core ../../packages/nextcloud/lib/src/api/core.openapi.json --merged /tmp/nextcloud-neon/merged.json ../../packages/nextcloud/lib/src/api/*.openapi.json --openapi-version 3.1.0

Loading…
Cancel
Save