blob: f3f05e2ab3a6a940c4ffcc98469198550386ee22 [file] [log] [blame]
// Copyright 2020 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
/// A set of allowed XTypes
class XTypeGroup {
/// Creates a new group with the given label and file extensions.
///
/// A group with none of the type options provided indicates that any type is
/// allowed.
XTypeGroup({
this.label,
this.extensions,
this.mimeTypes,
this.macUTIs,
this.webWildCards,
});
/// The 'name' or reference to this group of types
final String? label;
/// The extensions for this group
final List<String>? extensions;
/// The MIME types for this group
final List<String>? mimeTypes;
/// The UTIs for this group
final List<String>? macUTIs;
/// The web wild cards for this group (ex: image/*, video/*)
final List<String>? webWildCards;
/// Converts this object into a JSON formatted object
Map<String, dynamic> toJSON() {
return <String, dynamic>{
'label': label,
'extensions': extensions,
'mimeTypes': mimeTypes,
'macUTIs': macUTIs,
'webWildCards': webWildCards,
};
}
}