You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							56 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							56 lines
						
					
					
						
							1.8 KiB
						
					
					
				part of '../nextcloud.dart'; | 
						|
 | 
						|
/// Version of core/Server supported | 
						|
const coreSupportedVersion = 27; | 
						|
 | 
						|
/// API version of the news app supported | 
						|
const newsSupportedVersion = 'v1-3'; | 
						|
 | 
						|
/// API version of the notes app supported | 
						|
const notesSupportedVersion = 1; | 
						|
 | 
						|
// ignore: public_member_api_docs | 
						|
extension CoreVersionSupported on NextcloudCoreClient { | 
						|
  /// Check if the core/Server version is supported by this client | 
						|
  /// | 
						|
  /// Also returns the supported version number | 
						|
  Future<(bool, int)> isSupported([ | 
						|
    final NextcloudCoreServerCapabilities_Ocs_Data? capabilities, | 
						|
  ]) async => | 
						|
      ( | 
						|
        (capabilities ?? (await getCapabilities()).ocs.data).version.major == coreSupportedVersion, | 
						|
        coreSupportedVersion, | 
						|
      ); | 
						|
} | 
						|
 | 
						|
// ignore: public_member_api_docs | 
						|
extension NewsVersionSupported on NextcloudNewsClient { | 
						|
  /// Check if the news app version is supported by this client | 
						|
  /// | 
						|
  /// Also returns the supported API version number | 
						|
  Future<(bool, String)> isSupported() async { | 
						|
    final versions = await getSupportedApiVersions(); | 
						|
    return ( | 
						|
      versions.apiLevels!.contains(newsSupportedVersion), | 
						|
      newsSupportedVersion, | 
						|
    ); | 
						|
  } | 
						|
} | 
						|
 | 
						|
// ignore: public_member_api_docs | 
						|
extension NotesVersionSupported on NextcloudNotesClient { | 
						|
  /// Check if the notes app version is supported by this client | 
						|
  /// | 
						|
  /// Also returns the supported API version number | 
						|
  Future<(bool, int)> isSupported([final NextcloudCoreServerCapabilities_Ocs_Data? capabilities]) async => ( | 
						|
        (capabilities ?? (await rootClient.core.getCapabilities()).ocs.data) | 
						|
                .capabilities | 
						|
                .notes | 
						|
                ?.apiVersion | 
						|
                ?.map(Version.parse) | 
						|
                .where((final version) => version.major == notesSupportedVersion) | 
						|
                .isNotEmpty ?? | 
						|
            false, | 
						|
        notesSupportedVersion, | 
						|
      ); | 
						|
}
 | 
						|
 |