fromMap static method

PermissionRequest? fromMap(
  1. Map<String, dynamic>? map, {
  2. EnumMethod? enumMethod,
})

Gets a possible PermissionRequest instance from a Map value.

Implementation

static PermissionRequest? fromMap(
  Map<String, dynamic>? map, {
  EnumMethod? enumMethod,
}) {
  if (map == null) {
    return null;
  }
  final instance = PermissionRequest(
    frame: FrameInfo.fromMap(
      map['frame']?.cast<String, dynamic>(),
      enumMethod: enumMethod,
    ),
    origin: WebUri(map['origin']),
  );
  if (map['resources'] != null) {
    instance.resources = List<PermissionResourceType>.from(
      map['resources']
          .map(
            (e) => switch (enumMethod ?? EnumMethod.nativeValue) {
              EnumMethod.nativeValue =>
                PermissionResourceType.fromNativeValue(e),
              EnumMethod.value => PermissionResourceType.fromValue(e),
              EnumMethod.name => PermissionResourceType.byName(e),
            },
          )
          .whereType<PermissionResourceType>(),
    );
  }
  return instance;
}