diff --git a/client/README.md b/client/README.md deleted file mode 100644 index faaf67e0..00000000 --- a/client/README.md +++ /dev/null @@ -1,63 +0,0 @@ -Self-hosted cloud file storage - -[x] Cross-platform - [ ] Not tested on iOS, macOS, Windows yet -[x] Fully offline -[x] File Explorer - [x] Upload files - [x] Upload folders - [x] Create folders - [x] Rename - [x] Move (cut-paste) - [x] Copy (copy-paste) - [ ] Merge (move/copy) - [x] Download files - [ ] Notifications for completed/failed downloads - [ ] Download folders / multiple files as zip - [x] Preview files - [x] Images - [ ] Text - [ ] Audio - [ ] PDF - [ ] EPUB - [x] List view - [ ] Table View (for web, desktop) - [ ] Grid View -[ ] Bookmarks / Favorites - [ ] Add - [ ] Remove - [ ] View -[x] Sync Manager - [x] View List of pending actions - [x] View failed actions - [ ] Actions for failed actions - [x] Delete - [x] Retry - [ ] Edit - [ ] Rename - [ ] Overwrite - [x] View in-progress downloads - [ ] View transfer rate and ETA - [ ] View finished downloads (in current session) - [ ] Actions for completed downloads - [ ] Open - [ ] Open Folder - [ ] Actions for failed downloads - [ ] Delete - [ ] Retry - [ ] Edit - [ ] View all past downloads -[ ] Public sharing - [ ] Create - [ ] View - [ ] per-resource - [ ] all -[ ] Sharing folders - [x] Server support for sharing permissions - [ ] View permissions - [ ] Edit permissions - [ ] Shared With Me -[ ] System Tray Integration -[ ] Edit files - [ ] Text - [ ] Images diff --git a/client/lib/libphylum/phylum_account.dart b/client/lib/libphylum/phylum_account.dart index de7f38d4..982a47a6 100644 --- a/client/lib/libphylum/phylum_account.dart +++ b/client/lib/libphylum/phylum_account.dart @@ -69,7 +69,7 @@ class PhylumAccount extends Account { // Set Authorization header _accessToken = _initialAccessToken ?? accessToken; - final dispatcherOverride = String.fromEnvironment('dispatcher'); + final dispatcherOverride = const String.fromEnvironment('dispatcher'); dispatcher = switch (dispatcherOverride) { 'good' => SimulatedBadNetworkDispatcher.good(), 'okay' => SimulatedBadNetworkDispatcher.okay(), diff --git a/client/lib/ui/app/nav_list.dart b/client/lib/ui/app/nav_list.dart index 205c5ee2..5cddcac0 100644 --- a/client/lib/ui/app/nav_list.dart +++ b/client/lib/ui/app/nav_list.dart @@ -1,6 +1,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:offtheline/offtheline.dart'; +import 'package:package_info_plus/package_info_plus.dart'; import 'package:phylum/ui/app/app_shortcuts.dart'; import 'package:phylum/libphylum/db/db.dart'; import 'package:phylum/libphylum/db/resource_helpers.dart'; @@ -140,8 +141,20 @@ class NavList extends StatelessWidget { if (!kIsWeb) const DownloadButton(), const ServerStatusButton(), ListTile( - leading: const Icon(Icons.settings), - title: const Text('Settings'), + leading: const Icon(Icons.help), + title: const Text('About'), + onTap: () async { + final info = await PackageInfo.fromPlatform(); + if (!context.mounted) return; + showAboutDialog( + context: context, + applicationVersion: '${info.packageName} - ${info.version} (${info.buildNumber})', + ); + }, + ), + ListTile( + leading: const Icon(Icons.logout), + title: const Text('Log Out'), onTap: () { context.read().logOut(); }, diff --git a/client/macos/Flutter/GeneratedPluginRegistrant.swift b/client/macos/Flutter/GeneratedPluginRegistrant.swift index 29cade96..98871dde 100644 --- a/client/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/client/macos/Flutter/GeneratedPluginRegistrant.swift @@ -9,6 +9,7 @@ import device_info_plus import file_selector_macos import irondash_engine_context import open_file_mac +import package_info_plus import path_provider_foundation import printing import share_plus @@ -20,6 +21,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) IrondashEngineContextPlugin.register(with: registry.registrar(forPlugin: "IrondashEngineContextPlugin")) OpenFilePlugin.register(with: registry.registrar(forPlugin: "OpenFilePlugin")) + FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) PrintingPlugin.register(with: registry.registrar(forPlugin: "PrintingPlugin")) SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin")) diff --git a/client/pubspec.lock b/client/pubspec.lock index 07f5935d..f19caa5e 100644 --- a/client/pubspec.lock +++ b/client/pubspec.lock @@ -681,6 +681,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.2.0" + package_info_plus: + dependency: "direct main" + description: + name: package_info_plus + sha256: "7976bfe4c583170d6cdc7077e3237560b364149fcd268b5f53d95a991963b191" + url: "https://pub.dev" + source: hosted + version: "8.3.0" + package_info_plus_platform_interface: + dependency: transitive + description: + name: package_info_plus_platform_interface + sha256: "6c935fb612dff8e3cc9632c2b301720c77450a126114126ffaafe28d2e87956c" + url: "https://pub.dev" + source: hosted + version: "3.2.0" path: dependency: "direct main" description: diff --git a/client/pubspec.yaml b/client/pubspec.yaml index 6d0747dc..5e52daf3 100644 --- a/client/pubspec.yaml +++ b/client/pubspec.yaml @@ -26,6 +26,7 @@ dependencies: url: https://codeberg.org/shroff/offtheline.git ref: 5e1be5e344cbe1c6a4ef242c25a6c9afa8f042f0 open_file: + package_info_plus: path: path_provider: permission_handler: