TF-3985 Add JMAP SaaS capability com:linagora:params:saas
This commit is contained in:
@@ -22,6 +22,7 @@ import 'package:model/principals/capability_principals.dart';
|
||||
import 'package:uri/uri.dart';
|
||||
|
||||
extension SessionExtension on Session {
|
||||
static const String saaSCapabilityProperties = 'com:linagora:params:saas';
|
||||
|
||||
String getDownloadUrl({String? jmapUrl}) {
|
||||
final Uri downloadUrlValid;
|
||||
|
||||
@@ -84,4 +84,6 @@ export 'oidc/token_oidc.dart';
|
||||
export 'upload/file_info.dart';
|
||||
export 'upload/upload_response.dart';
|
||||
// Support
|
||||
export 'support/contact_support_capability.dart';
|
||||
export 'support/contact_support_capability.dart';
|
||||
// SaaS
|
||||
export 'saas/saas_account_capability.dart';
|
||||
@@ -0,0 +1,24 @@
|
||||
import 'package:jmap_dart_client/jmap/core/capability/capability_properties.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'saas_account_capability.g.dart';
|
||||
|
||||
@JsonSerializable(explicitToJson: true, includeIfNull: false)
|
||||
class SaaSAccountCapability extends CapabilityProperties {
|
||||
final bool isPaying;
|
||||
final bool canUpgrade;
|
||||
|
||||
SaaSAccountCapability({this.isPaying = false, this.canUpgrade = false});
|
||||
|
||||
factory SaaSAccountCapability.fromJson(Map<String, dynamic> json) =>
|
||||
_$SaaSAccountCapabilityFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$SaaSAccountCapabilityToJson(this);
|
||||
|
||||
static SaaSAccountCapability deserialize(Map<String, dynamic> json) {
|
||||
return SaaSAccountCapability.fromJson(json);
|
||||
}
|
||||
|
||||
@override
|
||||
List<Object?> get props => [isPaying, canUpgrade];
|
||||
}
|
||||
Reference in New Issue
Block a user