refactor: move user class in separate file
Signed-off-by: Neeraj Gupta <254676+ua741@users.noreply.github.com>
This commit is contained in:
parent
b24bf451b6
commit
5aae4f4157
|
@ -4,6 +4,7 @@ import 'dart:io';
|
|||
import 'package:path/path.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import "package:photos/models/api/collection/public_url.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:sqflite/sqflite.dart';
|
||||
import 'package:sqflite_migration/sqflite_migration.dart';
|
||||
|
|
39
lib/models/api/collection/user.dart
Normal file
39
lib/models/api/collection/user.dart
Normal file
|
@ -0,0 +1,39 @@
|
|||
import "dart:convert";
|
||||
|
||||
class User {
|
||||
int? id;
|
||||
String email;
|
||||
String? name;
|
||||
String? role;
|
||||
|
||||
User({
|
||||
this.id,
|
||||
required this.email,
|
||||
this.name,
|
||||
this.role,
|
||||
});
|
||||
|
||||
bool get isViewer => role == null || role?.toUpperCase() == 'VIEWER';
|
||||
|
||||
bool get isCollaborator =>
|
||||
role != null && role?.toUpperCase() == 'COLLABORATOR';
|
||||
|
||||
Map<String, dynamic> toMap() {
|
||||
return {'id': id, 'email': email, 'name': name, 'role': role};
|
||||
}
|
||||
|
||||
static fromMap(Map<String, dynamic>? map) {
|
||||
if (map == null) return null;
|
||||
|
||||
return User(
|
||||
id: map['id'],
|
||||
email: map['email'],
|
||||
name: map['name'],
|
||||
role: map['role'] ?? 'VIEWER',
|
||||
);
|
||||
}
|
||||
|
||||
String toJson() => json.encode(toMap());
|
||||
|
||||
factory User.fromJson(String source) => User.fromMap(json.decode(source));
|
||||
}
|
|
@ -1,8 +1,8 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:core';
|
||||
|
||||
import 'package:flutter/foundation.dart';
|
||||
import "package:photos/models/api/collection/public_url.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/magic_metadata.dart';
|
||||
|
||||
class Collection {
|
||||
|
@ -279,41 +279,3 @@ class CollectionAttributes {
|
|||
);
|
||||
}
|
||||
}
|
||||
|
||||
class User {
|
||||
int? id;
|
||||
String email;
|
||||
String? name;
|
||||
String? role;
|
||||
|
||||
User({
|
||||
this.id,
|
||||
required this.email,
|
||||
this.name,
|
||||
this.role,
|
||||
});
|
||||
|
||||
bool get isViewer => role == null || role?.toUpperCase() == 'VIEWER';
|
||||
|
||||
bool get isCollaborator =>
|
||||
role != null && role?.toUpperCase() == 'COLLABORATOR';
|
||||
|
||||
Map<String, dynamic> toMap() {
|
||||
return {'id': id, 'email': email, 'name': name, 'role': role};
|
||||
}
|
||||
|
||||
static fromMap(Map<String, dynamic>? map) {
|
||||
if (map == null) return null;
|
||||
|
||||
return User(
|
||||
id: map['id'],
|
||||
email: map['email'],
|
||||
name: map['name'],
|
||||
role: map['role'] ?? 'VIEWER',
|
||||
);
|
||||
}
|
||||
|
||||
String toJson() => json.encode(toMap());
|
||||
|
||||
factory User.fromJson(String source) => User.fromMap(json.decode(source));
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ import 'package:photos/extensions/list.dart';
|
|||
import 'package:photos/extensions/stop_watch.dart';
|
||||
import 'package:photos/models/api/collection/create_request.dart';
|
||||
import "package:photos/models/api/collection/public_url.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/models/collection_file_item.dart';
|
||||
import 'package:photos/models/collection_items.dart';
|
||||
|
|
|
@ -6,6 +6,7 @@ import 'package:photos/db/files_db.dart';
|
|||
import 'package:photos/ente_theme_data.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import 'package:photos/models/api/collection/create_request.dart';
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/models/file.dart';
|
||||
import 'package:photos/models/files_split.dart';
|
||||
|
|
|
@ -2,6 +2,7 @@ import 'package:email_validator/email_validator.dart';
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:photos/core/configuration.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/services/collections_service.dart';
|
||||
import "package:photos/services/user_service.dart";
|
||||
|
|
|
@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:photos/core/configuration.dart';
|
||||
import 'package:photos/extensions/list.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/theme/ente_theme.dart';
|
||||
import 'package:photos/ui/components/captioned_text_widget.dart';
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/services/collections_service.dart';
|
||||
import 'package:photos/theme/colors.dart';
|
||||
|
|
|
@ -3,6 +3,7 @@ import 'package:fast_base58/fast_base58.dart';
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import 'package:photos/services/collections_service.dart';
|
||||
import 'package:photos/theme/ente_theme.dart';
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:photos/models/collection.dart';
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/theme/colors.dart';
|
||||
import 'package:photos/theme/ente_theme.dart';
|
||||
import 'package:tuple/tuple.dart';
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:photos/ente_theme_data.dart';
|
||||
import "package:photos/generated/l10n.dart";
|
||||
import 'package:photos/models/collection.dart';
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/trash_file.dart';
|
||||
import 'package:photos/theme/colors.dart';
|
||||
import 'package:photos/ui/sharing/user_avator_widget.dart';
|
||||
|
|
|
@ -9,8 +9,8 @@ import 'package:photos/core/event_bus.dart';
|
|||
import 'package:photos/db/files_db.dart';
|
||||
import 'package:photos/db/trash_db.dart';
|
||||
import 'package:photos/events/files_updated_event.dart';
|
||||
import 'package:photos/events/local_photos_updated_event.dart';
|
||||
import 'package:photos/models/collection.dart';
|
||||
import "package:photos/events/local_photos_updated_event.dart";
|
||||
import "package:photos/models/api/collection/user.dart";
|
||||
import 'package:photos/models/file.dart';
|
||||
import 'package:photos/models/file_type.dart';
|
||||
import 'package:photos/models/trash_file.dart';
|
||||
|
|
Loading…
Reference in a new issue