mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-08 04:07:51 -06:00
Changed application id, fixed network address lookup in login page
This commit is contained in:
@@ -43,7 +43,7 @@ android {
|
|||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||||
applicationId "de.antonjstu.flutter_paperless_mobile"
|
applicationId "de.astubenbord.paperless_mobile"
|
||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion flutter.targetSdkVersion
|
targetSdkVersion flutter.targetSdkVersion
|
||||||
versionCode flutterVersionCode.toInteger()
|
versionCode flutterVersionCode.toInteger()
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.example.flutter_paperless_mobile">
|
package="com.example.paperless_mobile">
|
||||||
<!-- Flutter needs it to communicate with the running application
|
<!-- Flutter needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
-->
|
-->
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.flutter_paperless_mobile">
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.paperless_mobile">
|
||||||
<application android:label="Paperless Mobile" android:name="${applicationName}" android:icon="@mipmap/launcher_icon">
|
<application android:label="Paperless Mobile" android:name="${applicationName}" android:icon="@mipmap/launcher_icon">
|
||||||
<activity android:name=".MainActivity" android:exported="true" android:launchMode="singleTop" android:theme="@style/LaunchTheme" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" android:windowSoftInputMode="adjustResize">
|
<activity android:name=".MainActivity" android:exported="true" android:launchMode="singleTop" android:theme="@style/LaunchTheme" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" android:hardwareAccelerated="true" android:windowSoftInputMode="adjustResize">
|
||||||
<!-- Specifies an Android theme to apply to this Activity as soon as
|
<!-- Specifies an Android theme to apply to this Activity as soon as
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.example.flutter_paperless_mobile
|
package com.example.paperless_mobile
|
||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.WindowManager.LayoutParams
|
import android.view.WindowManager.LayoutParams
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.example.flutter_paperless_mobile">
|
package="com.example.paperless_mobile">
|
||||||
<!-- Flutter needs it to communicate with the running application
|
<!-- Flutter needs it to communicate with the running application
|
||||||
to allow setting breakpoints, to provide hot reload, etc.
|
to allow setting breakpoints, to provide hot reload, etc.
|
||||||
-->
|
-->
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>flutter_paperless_mobile</string>
|
<string>paperless_mobile</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/service/connectivity_status.service.dart';
|
import 'package:paperless_mobile/core/service/connectivity_status.service.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/document_processing_status.dart';
|
import 'package:paperless_mobile/core/model/document_processing_status.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'package:flutter/widgets.dart';
|
import 'package:flutter/widgets.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
|
|
||||||
class LabelBlocProvider extends StatelessWidget {
|
class LabelBlocProvider extends StatelessWidget {
|
||||||
final Widget child;
|
final Widget child;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/repository/label_repository.dart';
|
import 'package:paperless_mobile/features/labels/repository/label_repository.dart';
|
||||||
|
|
||||||
abstract class LabelCubit<T extends Label> extends Cubit<Map<int, T>> {
|
abstract class LabelCubit<T extends Label> extends Cubit<Map<int, T>> {
|
||||||
final LabelRepository labelRepository;
|
final LabelRepository labelRepository;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'dart:developer';
|
import 'dart:developer';
|
||||||
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
import 'package:paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
||||||
import 'package:http_interceptor/http_interceptor.dart';
|
import 'package:http_interceptor/http_interceptor.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/service/connectivity_status.service.dart';
|
import 'package:paperless_mobile/core/service/connectivity_status.service.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
import 'package:paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
||||||
import 'package:http_interceptor/http_interceptor.dart';
|
import 'package:http_interceptor/http_interceptor.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@@ -8,16 +8,14 @@ import 'package:injectable/injectable.dart';
|
|||||||
class ConnectionStateInterceptor implements InterceptorContract {
|
class ConnectionStateInterceptor implements InterceptorContract {
|
||||||
final AuthenticationCubit authenticationCubit;
|
final AuthenticationCubit authenticationCubit;
|
||||||
final ConnectivityStatusService connectivityStatusService;
|
final ConnectivityStatusService connectivityStatusService;
|
||||||
ConnectionStateInterceptor(
|
ConnectionStateInterceptor(this.authenticationCubit, this.connectivityStatusService);
|
||||||
this.authenticationCubit, this.connectivityStatusService);
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BaseRequest> interceptRequest({required BaseRequest request}) async {
|
Future<BaseRequest> interceptRequest({required BaseRequest request}) async {
|
||||||
if (!(await connectivityStatusService.isConnectedToInternet())) {
|
if (!(await connectivityStatusService.isConnectedToInternet())) {
|
||||||
throw const ErrorMessage(ErrorCode.deviceOffline);
|
throw const ErrorMessage(ErrorCode.deviceOffline);
|
||||||
}
|
}
|
||||||
final isServerReachable =
|
final isServerReachable = await connectivityStatusService.isServerReachable(request.url.origin);
|
||||||
await connectivityStatusService.isServerReachable(request.url.origin);
|
|
||||||
if (!isServerReachable) {
|
if (!isServerReachable) {
|
||||||
throw const ErrorMessage(ErrorCode.serverUnreachable);
|
throw const ErrorMessage(ErrorCode.serverUnreachable);
|
||||||
}
|
}
|
||||||
@@ -25,7 +23,5 @@ class ConnectionStateInterceptor implements InterceptorContract {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<BaseResponse> interceptResponse(
|
Future<BaseResponse> interceptResponse({required BaseResponse response}) async => response;
|
||||||
{required BaseResponse response}) async =>
|
|
||||||
response;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
import 'package:paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
||||||
import 'package:http_interceptor/http_interceptor.dart';
|
import 'package:http_interceptor/http_interceptor.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
String translateError(BuildContext context, ErrorCode code) {
|
String translateError(BuildContext context, ErrorCode code) {
|
||||||
switch (code) {
|
switch (code) {
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ import 'dart:typed_data';
|
|||||||
|
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -17,22 +17,19 @@ class ConnectivityStatusServiceImpl implements ConnectivityStatusService {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Stream<bool> connectivityChanges() {
|
Stream<bool> connectivityChanges() {
|
||||||
return connectivity.onConnectivityChanged
|
return connectivity.onConnectivityChanged.map(_hasActiveInternetConnection).asBroadcastStream();
|
||||||
.map(_hasActiveInternetConnection)
|
|
||||||
.asBroadcastStream();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<bool> isConnectedToInternet() async {
|
Future<bool> isConnectedToInternet() async {
|
||||||
return _hasActiveInternetConnection(
|
return _hasActiveInternetConnection(await (Connectivity().checkConnectivity()));
|
||||||
await (Connectivity().checkConnectivity()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Future<bool> isServerReachable(String serverAddress) async {
|
Future<bool> isServerReachable(String serverAddress) async {
|
||||||
try {
|
try {
|
||||||
final result = await InternetAddress.lookup(
|
var uri = Uri.parse(serverAddress);
|
||||||
serverAddress.replaceAll(RegExp(r"https?://"), ""));
|
final result = await InternetAddress.lookup(uri.host);
|
||||||
if (result.isNotEmpty && result.first.rawAddress.isNotEmpty) {
|
if (result.isNotEmpty && result.first.rawAddress.isNotEmpty) {
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/document_status_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/document_status_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/document_processing_status.dart';
|
import 'package:paperless_mobile/core/model/document_processing_status.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/paged_search_result.dart';
|
import 'package:paperless_mobile/features/documents/model/paged_search_result.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/model/authentication_information.dart';
|
import 'package:paperless_mobile/features/login/model/authentication_information.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:http_interceptor/http_interceptor.dart';
|
import 'package:http_interceptor/http_interceptor.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
import 'package:web_socket_channel/io.dart';
|
import 'package:web_socket_channel/io.dart';
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:encrypted_shared_preferences/encrypted_shared_preferences.dart';
|
import 'package:encrypted_shared_preferences/encrypted_shared_preferences.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/model/authentication_information.dart';
|
import 'package:paperless_mobile/features/login/model/authentication_information.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/model/client_certificate.dart';
|
import 'package:paperless_mobile/features/login/model/client_certificate.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/model/application_settings_state.dart';
|
import 'package:paperless_mobile/features/settings/model/application_settings_state.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -2,10 +2,10 @@ import 'dart:convert';
|
|||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/logic/timeout_client.dart';
|
import 'package:paperless_mobile/core/logic/timeout_client.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class OfflineBanner extends StatelessWidget with PreferredSizeWidget {
|
class OfflineBanner extends StatelessWidget with PreferredSizeWidget {
|
||||||
const OfflineBanner({super.key});
|
const OfflineBanner({super.key});
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class OfflineWidget extends StatelessWidget {
|
class OfflineWidget extends StatelessWidget {
|
||||||
const OfflineWidget({super.key});
|
const OfflineWidget({super.key});
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.config.dart';
|
import 'package:paperless_mobile/di_initializer.config.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_modules.dart';
|
import 'package:paperless_mobile/di_modules.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/model/client_certificate.dart';
|
import 'package:paperless_mobile/features/login/model/client_certificate.dart';
|
||||||
import 'package:get_it/get_it.dart';
|
import 'package:get_it/get_it.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -3,10 +3,10 @@ import 'dart:io';
|
|||||||
import 'package:connectivity_plus/connectivity_plus.dart';
|
import 'package:connectivity_plus/connectivity_plus.dart';
|
||||||
import 'package:encrypted_shared_preferences/encrypted_shared_preferences.dart';
|
import 'package:encrypted_shared_preferences/encrypted_shared_preferences.dart';
|
||||||
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/interceptor/authentication.interceptor.dart';
|
import 'package:paperless_mobile/core/interceptor/authentication.interceptor.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/interceptor/connection_state.interceptor.dart';
|
import 'package:paperless_mobile/core/interceptor/connection_state.interceptor.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/interceptor/language_header.interceptor.dart';
|
import 'package:paperless_mobile/core/interceptor/language_header.interceptor.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/interceptor/response_conversion.interceptor.dart';
|
import 'package:paperless_mobile/core/interceptor/response_conversion.interceptor.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:http/io_client.dart';
|
import 'package:http/io_client.dart';
|
||||||
import 'package:http_interceptor/http/http.dart';
|
import 'package:http_interceptor/http/http.dart';
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/app_intro/widgets/biometric_authentication_intro_slide.dart';
|
import 'package:paperless_mobile/features/app_intro/widgets/biometric_authentication_intro_slide.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/app_intro/widgets/configuration_done_intro_slide.dart';
|
import 'package:paperless_mobile/features/app_intro/widgets/configuration_done_intro_slide.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/app_intro/widgets/welcome_intro_slide.dart';
|
import 'package:paperless_mobile/features/app_intro/widgets/welcome_intro_slide.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/home/view/home_page.dart';
|
import 'package:paperless_mobile/features/home/view/home_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
import 'package:paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
||||||
import 'package:intro_slider/intro_slider.dart';
|
import 'package:intro_slider/intro_slider.dart';
|
||||||
|
|
||||||
class ApplicationIntroSlideshow extends StatelessWidget {
|
class ApplicationIntroSlideshow extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/services/authentication.service.dart';
|
import 'package:paperless_mobile/features/login/services/authentication.service.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
import 'package:paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/model/application_settings_state.dart';
|
import 'package:paperless_mobile/features/settings/model/application_settings_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class BiometricAuthenticationIntroSlide extends StatefulWidget {
|
class BiometricAuthenticationIntroSlide extends StatefulWidget {
|
||||||
const BiometricAuthenticationIntroSlide({
|
const BiometricAuthenticationIntroSlide({
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/paged_search_result.dart';
|
import 'package:paperless_mobile/features/documents/model/paged_search_result.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/paged_search_result.dart';
|
import 'package:paperless_mobile/features/documents/model/paged_search_result.dart';
|
||||||
|
|
||||||
class DocumentsState extends Equatable {
|
class DocumentsState extends Equatable {
|
||||||
final bool isLoaded;
|
final bool isLoaded;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/saved_views_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/saved_views_repository.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
|
|
||||||
class SavedViewState with EquatableMixin {
|
class SavedViewState with EquatableMixin {
|
||||||
final Map<int, SavedView> value;
|
final Map<int, SavedView> value;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
|
|
||||||
class BulkEditAction {
|
class BulkEditAction {
|
||||||
final List<int> documents;
|
final List<int> documents;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
// ignore_for_file: non_constant_identifier_names
|
// ignore_for_file: non_constant_identifier_names
|
||||||
|
|
||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
|
|
||||||
class DocumentModel extends Equatable {
|
class DocumentModel extends Equatable {
|
||||||
static const idKey = 'id';
|
static const idKey = 'id';
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/asn_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/asn_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class DocumentFilter with EquatableMixin {
|
class DocumentFilter with EquatableMixin {
|
||||||
static const _oneDay = Duration(days: 1);
|
static const _oneDay = Duration(days: 1);
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class FilterRule with EquatableMixin {
|
class FilterRule with EquatableMixin {
|
||||||
static const int titleRule = 0;
|
static const int titleRule = 0;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
|
|
||||||
const pageRegex = r".*page=(\d+).*";
|
const pageRegex = r".*page=(\d+).*";
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
|
|
||||||
class AsnQuery extends IdQueryParameter {
|
class AsnQuery extends IdQueryParameter {
|
||||||
const AsnQuery.fromId(super.id) : super.fromId();
|
const AsnQuery.fromId(super.id) : super.fromId();
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
|
|
||||||
class CorrespondentQuery extends IdQueryParameter {
|
class CorrespondentQuery extends IdQueryParameter {
|
||||||
const CorrespondentQuery.fromId(super.id) : super.fromId();
|
const CorrespondentQuery.fromId(super.id) : super.fromId();
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
|
|
||||||
class DocumentTypeQuery extends IdQueryParameter {
|
class DocumentTypeQuery extends IdQueryParameter {
|
||||||
const DocumentTypeQuery.fromId(super.id) : super.fromId();
|
const DocumentTypeQuery.fromId(super.id) : super.fromId();
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
|
|
||||||
class StoragePathQuery extends IdQueryParameter {
|
class StoragePathQuery extends IdQueryParameter {
|
||||||
const StoragePathQuery.fromId(super.id) : super.fromId();
|
const StoragePathQuery.fromId(super.id) : super.fromId();
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/filter_rule.model.dart';
|
import 'package:paperless_mobile/features/documents/model/filter_rule.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
||||||
|
|
||||||
class SavedView with EquatableMixin {
|
class SavedView with EquatableMixin {
|
||||||
final int? id;
|
final int? id;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
|
|
||||||
class SimilarDocumentModel extends DocumentModel {
|
class SimilarDocumentModel extends DocumentModel {
|
||||||
final SearchHit searchHit;
|
final SearchHit searchHit;
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/paged_search_result.dart';
|
import 'package:paperless_mobile/features/documents/model/paged_search_result.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/similar_document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/similar_document.model.dart';
|
||||||
|
|
||||||
abstract class DocumentRepository {
|
abstract class DocumentRepository {
|
||||||
Future<void> create(
|
Future<void> create(
|
||||||
|
|||||||
@@ -5,23 +5,23 @@ import 'dart:math';
|
|||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/store/local_vault.dart';
|
import 'package:paperless_mobile/core/store/local_vault.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/util.dart';
|
import 'package:paperless_mobile/core/util.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/dart_extensions.dart';
|
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/bulk_edit.model.dart';
|
import 'package:paperless_mobile/features/documents/model/bulk_edit.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/paged_search_result.dart';
|
import 'package:paperless_mobile/features/documents/model/paged_search_result.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/asn_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/asn_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/similar_document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/similar_document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:http/src/boundary_characters.dart'; //TODO: remove once there is either a paperless API update or there is a better solution...
|
import 'package:http/src/boundary_characters.dart'; //TODO: remove once there is either a paperless API update or there is a better solution...
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/util.dart';
|
import 'package:paperless_mobile/core/util.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -5,27 +5,27 @@ import 'dart:math';
|
|||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_bloc_provider.dart';
|
import 'package:paperless_mobile/core/bloc/label_bloc_provider.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/highlighted_text.dart';
|
import 'package:paperless_mobile/core/widgets/highlighted_text.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document_meta_data.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/pages/document_edit_page.dart';
|
import 'package:paperless_mobile/features/documents/view/pages/document_edit_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/pages/document_view.dart';
|
import 'package:paperless_mobile/features/documents/view/pages/document_view.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/delete_document_confirmation_dialog.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/delete_document_confirmation_dialog.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/view/widgets/document_type_widget.dart';
|
import 'package:paperless_mobile/features/labels/document_type/view/widgets/document_type_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/widgets/storage_path_widget.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/widgets/storage_path_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:share_plus/share_plus.dart';
|
import 'package:share_plus/share_plus.dart';
|
||||||
|
|||||||
@@ -3,29 +3,29 @@ import 'dart:typed_data';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/pages/add_correspondent_page.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/pages/add_correspondent_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/view/pages/add_document_type_page.dart';
|
import 'package:paperless_mobile/features/labels/document_type/view/pages/add_document_type_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/pages/add_storage_path_page.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/pages/add_storage_path_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tags_form_field.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_form_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/label_form_field.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/label_form_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:form_builder_validators/form_builder_validators.dart';
|
import 'package:form_builder_validators/form_builder_validators.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:pdfx/pdfx.dart';
|
import 'package:pdfx/pdfx.dart';
|
||||||
|
|
||||||
class DocumentView extends StatefulWidget {
|
class DocumentView extends StatefulWidget {
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/connectivity_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/connectivity_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/offline_banner.dart';
|
import 'package:paperless_mobile/core/widgets/offline_banner.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/pages/document_details_page.dart';
|
import 'package:paperless_mobile/features/documents/view/pages/document_details_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/documents_empty_state.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/documents_empty_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/grid/document_grid.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/grid/document_grid.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/list/document_list.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/list/document_list.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/search/document_filter_panel.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/search/document_filter_panel.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/selection/documents_page_app_bar.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/selection/documents_page_app_bar.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/sort_documents_button.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/sort_documents_button.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/home/view/widget/info_drawer.dart';
|
import 'package:paperless_mobile/features/home/view/widget/info_drawer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
import 'package:paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
||||||
import 'package:sliding_up_panel/sliding_up_panel.dart';
|
import 'package:sliding_up_panel/sliding_up_panel.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class DeleteDocumentConfirmationDialog extends StatelessWidget {
|
class DeleteDocumentConfirmationDialog extends StatelessWidget {
|
||||||
final DocumentModel document;
|
final DocumentModel document;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:cached_network_image/cached_network_image.dart';
|
import 'package:cached_network_image/cached_network_image.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:shimmer/shimmer.dart';
|
import 'package:shimmer/shimmer.dart';
|
||||||
|
|
||||||
class DocumentPreview extends StatelessWidget {
|
class DocumentPreview extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/empty_state.dart';
|
import 'package:paperless_mobile/core/widgets/empty_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class DocumentsEmptyState extends StatelessWidget {
|
class DocumentsEmptyState extends StatelessWidget {
|
||||||
final DocumentsState state;
|
final DocumentsState state;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/documents_list_loading_widget.dart';
|
import 'package:paperless_mobile/core/widgets/documents_list_loading_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/grid/document_grid_item.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/grid/document_grid_item.dart';
|
||||||
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
||||||
|
|
||||||
class DocumentGridView extends StatelessWidget {
|
class DocumentGridView extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/view/widgets/document_type_widget.dart';
|
import 'package:paperless_mobile/features/labels/document_type/view/widgets/document_type_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
class DocumentGridItem extends StatelessWidget {
|
class DocumentGridItem extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/documents_list_loading_widget.dart';
|
import 'package:paperless_mobile/core/widgets/documents_list_loading_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/widgets/offline_widget.dart';
|
import 'package:paperless_mobile/core/widgets/offline_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/list/document_list_item.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/list/document_list_item.dart';
|
||||||
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
||||||
|
|
||||||
class DocumentListView extends StatelessWidget {
|
class DocumentListView extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/document_preview.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/widgets/correspondent_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_widget.dart';
|
||||||
|
|
||||||
class DocumentListItem extends StatelessWidget {
|
class DocumentListItem extends StatelessWidget {
|
||||||
static const a4AspectRatio = 1 / 1.4142;
|
static const a4AspectRatio = 1 / 1.4142;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
||||||
|
|
||||||
class OrderByDropdown extends StatefulWidget {
|
class OrderByDropdown extends StatefulWidget {
|
||||||
static const fkOrderBy = "orderBy";
|
static const fkOrderBy = "orderBy";
|
||||||
|
|||||||
@@ -1,28 +1,28 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/search/query_type_form_field.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/search/query_type_form_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tags_form_field.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_form_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/label_form_field.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/label_form_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
import 'package:sliding_up_panel/sliding_up_panel.dart';
|
import 'package:sliding_up_panel/sliding_up_panel.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/query_type.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class QueryTypeFormField extends StatelessWidget {
|
class QueryTypeFormField extends StatelessWidget {
|
||||||
static const fkQueryType = 'queryType';
|
static const fkQueryType = 'queryType';
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:form_builder_validators/form_builder_validators.dart';
|
import 'package:form_builder_validators/form_builder_validators.dart';
|
||||||
|
|
||||||
class AddSavedViewPage extends StatefulWidget {
|
class AddSavedViewPage extends StatefulWidget {
|
||||||
|
|||||||
@@ -1,13 +1,12 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class BulkDeleteConfirmationDialog extends StatelessWidget {
|
class BulkDeleteConfirmationDialog extends StatelessWidget {
|
||||||
static const _bulletPoint = "\u2022";
|
static const _bulletPoint = "\u2022";
|
||||||
final DocumentsState state;
|
final DocumentsState state;
|
||||||
const BulkDeleteConfirmationDialog({Key? key, required this.state})
|
const BulkDeleteConfirmationDialog({Key? key, required this.state}) : super(key: key);
|
||||||
: super(key: key);
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@@ -20,12 +19,8 @@ class BulkDeleteConfirmationDialog extends StatelessWidget {
|
|||||||
Text(
|
Text(
|
||||||
//TODO: use plurals, didn't use because of crash... investigate later.
|
//TODO: use plurals, didn't use because of crash... investigate later.
|
||||||
state.selection.length == 1
|
state.selection.length == 1
|
||||||
? S
|
? S.of(context).documentsPageSelectionBulkDeleteDialogWarningTextOne
|
||||||
.of(context)
|
: S.of(context).documentsPageSelectionBulkDeleteDialogWarningTextMany,
|
||||||
.documentsPageSelectionBulkDeleteDialogWarningTextOne
|
|
||||||
: S
|
|
||||||
.of(context)
|
|
||||||
.documentsPageSelectionBulkDeleteDialogWarningTextMany,
|
|
||||||
),
|
),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
ConstrainedBox(
|
ConstrainedBox(
|
||||||
@@ -36,8 +31,7 @@ class BulkDeleteConfirmationDialog extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
Text(
|
Text(S.of(context).documentsPageSelectionBulkDeleteDialogContinueText),
|
||||||
S.of(context).documentsPageSelectionBulkDeleteDialogContinueText),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
actions: [
|
actions: [
|
||||||
@@ -47,8 +41,7 @@ class BulkDeleteConfirmationDialog extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
TextButton(
|
TextButton(
|
||||||
style: ButtonStyle(
|
style: ButtonStyle(
|
||||||
foregroundColor:
|
foregroundColor: MaterialStateProperty.all(Theme.of(context).colorScheme.error),
|
||||||
MaterialStateProperty.all(Theme.of(context).colorScheme.error),
|
|
||||||
),
|
),
|
||||||
onPressed: () {
|
onPressed: () {
|
||||||
Navigator.pop(context, true);
|
Navigator.pop(context, true);
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class ConfirmDeleteSavedViewDialog extends StatelessWidget {
|
class ConfirmDeleteSavedViewDialog extends StatelessWidget {
|
||||||
const ConfirmDeleteSavedViewDialog({
|
const ConfirmDeleteSavedViewDialog({
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/selection/bulk_delete_confirmation_dialog.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/selection/bulk_delete_confirmation_dialog.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/selection/saved_view_selection_widget.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/selection/saved_view_selection_widget.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class DocumentsPageAppBar extends StatefulWidget with PreferredSizeWidget {
|
class DocumentsPageAppBar extends StatefulWidget with PreferredSizeWidget {
|
||||||
final List<Widget> actions;
|
final List<Widget> actions;
|
||||||
|
|||||||
@@ -2,16 +2,16 @@ import 'dart:developer';
|
|||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/selection/add_saved_view_page.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/selection/add_saved_view_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/selection/confirm_delete_saved_view_dialog.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/selection/confirm_delete_saved_view_dialog.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class SavedViewSelectionWidget extends StatelessWidget {
|
class SavedViewSelectionWidget extends StatelessWidget {
|
||||||
const SavedViewSelectionWidget({
|
const SavedViewSelectionWidget({
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/sort_order.dart';
|
||||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||||
|
|
||||||
class SortDocumentsButton extends StatefulWidget {
|
class SortDocumentsButton extends StatefulWidget {
|
||||||
|
|||||||
@@ -1,21 +1,21 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/connectivity_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/connectivity_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/saved_view_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/saved_view.model.dart';
|
import 'package:paperless_mobile/features/documents/model/saved_view.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/pages/documents_page.dart';
|
import 'package:paperless_mobile/features/documents/view/pages/documents_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/home/view/widget/bottom_navigation_bar.dart';
|
import 'package:paperless_mobile/features/home/view/widget/bottom_navigation_bar.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/home/view/widget/info_drawer.dart';
|
import 'package:paperless_mobile/features/home/view/widget/info_drawer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/labels_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/labels_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/scan/bloc/document_scanner_cubit.dart';
|
import 'package:paperless_mobile/features/scan/bloc/document_scanner_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/scan/view/scanner_page.dart';
|
import 'package:paperless_mobile/features/scan/view/scanner_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class HomePage extends StatefulWidget {
|
class HomePage extends StatefulWidget {
|
||||||
const HomePage({Key? key}) : super(key: key);
|
const HomePage({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,14 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class BottomNavBar extends StatelessWidget {
|
class BottomNavBar extends StatelessWidget {
|
||||||
final int selectedIndex;
|
final int selectedIndex;
|
||||||
final void Function(int) onNavigationChanged;
|
final void Function(int) onNavigationChanged;
|
||||||
|
|
||||||
const BottomNavBar(
|
const BottomNavBar({Key? key, required this.selectedIndex, required this.onNavigationChanged})
|
||||||
{Key? key,
|
|
||||||
required this.selectedIndex,
|
|
||||||
required this.onNavigationChanged})
|
|
||||||
: super(key: key);
|
: super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|||||||
@@ -1,18 +1,18 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
import 'package:paperless_mobile/features/settings/bloc/application_settings_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/settings/view/settings_page.dart';
|
import 'package:paperless_mobile/features/settings/view/settings_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
import 'package:paperless_mobile/features/login/bloc/authentication_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/scan/bloc/document_scanner_cubit.dart';
|
import 'package:paperless_mobile/features/scan/bloc/document_scanner_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:url_launcher/url_launcher_string.dart';
|
import 'package:url_launcher/url_launcher_string.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
|
|
||||||
class InfoDrawer extends StatelessWidget {
|
class InfoDrawer extends StatelessWidget {
|
||||||
const InfoDrawer({Key? key}) : super(key: key);
|
const InfoDrawer({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/dart_extensions.dart';
|
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
|
|
||||||
class Correspondent extends Label {
|
class Correspondent extends Label {
|
||||||
static const lastCorrespondenceKey = 'last_correspondence';
|
static const lastCorrespondenceKey = 'last_correspondence';
|
||||||
@@ -20,8 +20,7 @@ class Correspondent extends Label {
|
|||||||
});
|
});
|
||||||
|
|
||||||
Correspondent.fromJson(JSON json)
|
Correspondent.fromJson(JSON json)
|
||||||
: lastCorrespondence =
|
: lastCorrespondence = DateTime.tryParse(json[lastCorrespondenceKey] ?? ''),
|
||||||
DateTime.tryParse(json[lastCorrespondenceKey] ?? ''),
|
|
||||||
super.fromJson(json);
|
super.fromJson(json);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/widgets.dart';
|
import 'package:flutter/widgets.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class AddCorrespondentPage extends StatelessWidget {
|
class AddCorrespondentPage extends StatelessWidget {
|
||||||
final String? initalValue;
|
final String? initalValue;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class EditCorrespondentPage extends StatelessWidget {
|
class EditCorrespondentPage extends StatelessWidget {
|
||||||
final Correspondent correspondent;
|
final Correspondent correspondent;
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
|
|
||||||
class CorrespondentWidget extends StatelessWidget {
|
class CorrespondentWidget extends StatelessWidget {
|
||||||
final int? correspondentId;
|
final int? correspondentId;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
|
|
||||||
class DocumentType extends Label {
|
class DocumentType extends Label {
|
||||||
DocumentType({
|
DocumentType({
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class AddDocumentTypePage extends StatelessWidget {
|
class AddDocumentTypePage extends StatelessWidget {
|
||||||
final String? initialName;
|
final String? initialName;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter/widgets.dart';
|
import 'package:flutter/widgets.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class EditDocumentTypePage extends StatelessWidget {
|
class EditDocumentTypePage extends StatelessWidget {
|
||||||
final DocumentType documentType;
|
final DocumentType documentType;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
|
|
||||||
class DocumentTypeWidget extends StatelessWidget {
|
class DocumentTypeWidget extends StatelessWidget {
|
||||||
final int? documentTypeId;
|
final int? documentTypeId;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/dart_extensions.dart';
|
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
|
|
||||||
abstract class Label with EquatableMixin implements Comparable {
|
abstract class Label with EquatableMixin implements Comparable {
|
||||||
static const idKey = "id";
|
static const idKey = "id";
|
||||||
@@ -37,8 +37,7 @@ abstract class Label with EquatableMixin implements Comparable {
|
|||||||
name = json[nameKey],
|
name = json[nameKey],
|
||||||
slug = json[slugKey],
|
slug = json[slugKey],
|
||||||
match = json[matchKey],
|
match = json[matchKey],
|
||||||
matchingAlgorithm =
|
matchingAlgorithm = MatchingAlgorithm.fromInt(json[matchingAlgorithmKey]),
|
||||||
MatchingAlgorithm.fromInt(json[matchingAlgorithmKey]),
|
|
||||||
isInsensitive = json[isInsensitiveKey],
|
isInsensitive = json[isInsensitiveKey],
|
||||||
documentCount = json[documentCountKey];
|
documentCount = json[documentCountKey];
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
|
|
||||||
abstract class LabelRepository {
|
abstract class LabelRepository {
|
||||||
Future<Correspondent?> getCorrespondent(int id);
|
Future<Correspondent?> getCorrespondent(int id);
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/util.dart';
|
import 'package:paperless_mobile/core/util.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/repository/label_repository.dart';
|
import 'package:paperless_mobile/features/labels/repository/label_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:http/http.dart';
|
import 'package:http/http.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/dart_extensions.dart';
|
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
|
|
||||||
class StoragePath extends Label {
|
class StoragePath extends Label {
|
||||||
static const pathKey = 'path';
|
static const pathKey = 'path';
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/widgets/storage_path_autofill_form_builder_field.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/widgets/storage_path_autofill_form_builder_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class AddStoragePathPage extends StatelessWidget {
|
class AddStoragePathPage extends StatelessWidget {
|
||||||
final String? initalValue;
|
final String? initalValue;
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/widgets/storage_path_autofill_form_builder_field.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/widgets/storage_path_autofill_form_builder_field.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
|
|
||||||
class EditStoragePathPage extends StatelessWidget {
|
class EditStoragePathPage extends StatelessWidget {
|
||||||
final StoragePath storagePath;
|
final StoragePath storagePath;
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter/src/widgets/container.dart';
|
import 'package:flutter/src/widgets/container.dart';
|
||||||
import 'package:flutter/src/widgets/framework.dart';
|
import 'package:flutter/src/widgets/framework.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:form_builder_validators/form_builder_validators.dart';
|
import 'package:form_builder_validators/form_builder_validators.dart';
|
||||||
|
|
||||||
class StoragePathAutofillFormBuilderField extends StatefulWidget {
|
class StoragePathAutofillFormBuilderField extends StatefulWidget {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
|
|
||||||
class StoragePathWidget extends StatelessWidget {
|
class StoragePathWidget extends StatelessWidget {
|
||||||
final int? pathId;
|
final int? pathId;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:injectable/injectable.dart';
|
import 'package:injectable/injectable.dart';
|
||||||
|
|
||||||
@singleton
|
@singleton
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'dart:developer';
|
import 'dart:developer';
|
||||||
import 'dart:ui';
|
import 'dart:ui';
|
||||||
|
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/dart_extensions.dart';
|
import 'package:paperless_mobile/extensions/dart_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
|
|
||||||
class Tag extends Label {
|
class Tag extends Label {
|
||||||
static const colorKey = 'color';
|
static const colorKey = 'color';
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/add_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
||||||
|
|
||||||
class AddTagPage extends StatelessWidget {
|
class AddTagPage extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
import 'package:paperless_mobile/features/labels/view/pages/edit_label_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
||||||
|
|
||||||
class EditTagPage extends StatelessWidget {
|
class EditTagPage extends StatelessWidget {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
|
|
||||||
class TagWidget extends StatelessWidget {
|
class TagWidget extends StatelessWidget {
|
||||||
final Tag tag;
|
final Tag tag;
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class TagFormField extends StatefulWidget {
|
class TagFormField extends StatefulWidget {
|
||||||
final TagsQuery? initialValue;
|
final TagsQuery? initialValue;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/widgets/tag_widget.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/widgets/tag_widget.dart';
|
||||||
|
|
||||||
class TagsWidget extends StatefulWidget {
|
class TagsWidget extends StatefulWidget {
|
||||||
final List<int> tagIds;
|
final List<int> tagIds;
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ import 'dart:developer';
|
|||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:form_builder_validators/form_builder_validators.dart';
|
import 'package:form_builder_validators/form_builder_validators.dart';
|
||||||
|
|
||||||
class AddLabelPage<T extends Label> extends StatefulWidget {
|
class AddLabelPage<T extends Label> extends StatefulWidget {
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ import 'dart:async';
|
|||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
import 'package:paperless_mobile/core/logic/error_code_localization_mapper.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/model/error_message.dart';
|
import 'package:paperless_mobile/core/model/error_message.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/type/json.dart';
|
import 'package:paperless_mobile/core/type/json.dart';
|
||||||
import 'package:flutter_paperless_mobile/extensions/flutter_extensions.dart';
|
import 'package:paperless_mobile/extensions/flutter_extensions.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/matching_algorithm.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:flutter_paperless_mobile/util.dart';
|
import 'package:paperless_mobile/util.dart';
|
||||||
import 'package:form_builder_validators/form_builder_validators.dart';
|
import 'package:form_builder_validators/form_builder_validators.dart';
|
||||||
|
|
||||||
class EditLabelPage<T extends Label> extends StatefulWidget {
|
class EditLabelPage<T extends Label> extends StatefulWidget {
|
||||||
|
|||||||
@@ -1,34 +1,34 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_bloc_provider.dart';
|
import 'package:paperless_mobile/core/bloc/label_bloc_provider.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/document_type_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/storage_path_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/tags_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/bloc/correspondents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/pages/edit_correspondent_page.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/pages/edit_correspondent_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
import 'package:paperless_mobile/features/labels/document_type/bloc/document_type_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/home/view/widget/info_drawer.dart';
|
import 'package:paperless_mobile/features/home/view/widget/info_drawer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/view/pages/add_correspondent_page.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/view/pages/add_correspondent_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/view/pages/add_document_type_page.dart';
|
import 'package:paperless_mobile/features/labels/document_type/view/pages/add_document_type_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/view/pages/edit_document_type_page.dart';
|
import 'package:paperless_mobile/features/labels/document_type/view/pages/edit_document_type_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/bloc/storage_path_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/model/storage_path.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/pages/add_storage_path_page.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/pages/add_storage_path_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/storage_path/view/pages/edit_storage_path_page.dart';
|
import 'package:paperless_mobile/features/labels/storage_path/view/pages/edit_storage_path_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/pages/add_tag_page.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/pages/add_tag_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/view/pages/edit_tag_page.dart';
|
import 'package:paperless_mobile/features/labels/tags/view/pages/edit_tag_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/label_item.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/label_item.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/label_tab_view.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/label_tab_view.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
import 'package:paperless_mobile/features/labels/tags/bloc/tags_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
|
|
||||||
class LabelsPage extends StatefulWidget {
|
class LabelsPage extends StatefulWidget {
|
||||||
const LabelsPage({Key? key}) : super(key: key);
|
const LabelsPage({Key? key}) : super(key: key);
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
import 'package:flutter_form_builder/flutter_form_builder.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/correspondent_query.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
import 'package:paperless_mobile/features/documents/model/query_parameters/id_query_parameter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
import 'package:paperless_mobile/features/labels/correspondent/model/correspondent.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
import 'package:paperless_mobile/features/labels/document_type/model/document_type.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
import 'package:form_builder_extra_fields/form_builder_extra_fields.dart';
|
||||||
|
|
||||||
///
|
///
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_bloc_provider.dart';
|
import 'package:paperless_mobile/core/bloc/label_bloc_provider.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/linked_documents_preview.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/linked_documents_preview.dart';
|
||||||
|
|
||||||
class LabelItem<T extends Label> extends StatelessWidget {
|
class LabelItem<T extends Label> extends StatelessWidget {
|
||||||
final T label;
|
final T label;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_bloc_provider.dart';
|
import 'package:paperless_mobile/core/bloc/label_bloc_provider.dart';
|
||||||
import 'package:flutter_paperless_mobile/di_initializer.dart';
|
import 'package:paperless_mobile/di_initializer.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/repository/document_repository.dart';
|
import 'package:paperless_mobile/features/documents/repository/document_repository.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/tags/model/tag.model.dart';
|
import 'package:paperless_mobile/features/labels/tags/model/tag.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/linked_documents_preview.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/linked_documents_preview.dart';
|
||||||
|
|
||||||
class LabelListTile<T extends Label> extends StatelessWidget {
|
class LabelListTile<T extends Label> extends StatelessWidget {
|
||||||
final T label;
|
final T label;
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_cubit.dart';
|
import 'package:paperless_mobile/core/bloc/label_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/model/label.model.dart';
|
import 'package:paperless_mobile/features/labels/model/label.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/labels/view/widgets/label_item.dart';
|
import 'package:paperless_mobile/features/labels/view/widgets/label_item.dart';
|
||||||
|
|
||||||
class LabelTabView<T extends Label> extends StatelessWidget {
|
class LabelTabView<T extends Label> extends StatelessWidget {
|
||||||
final LabelCubit<T> cubit;
|
final LabelCubit<T> cubit;
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||||
import 'package:flutter_paperless_mobile/core/bloc/label_bloc_provider.dart';
|
import 'package:paperless_mobile/core/bloc/label_bloc_provider.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_cubit.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/bloc/documents_state.dart';
|
import 'package:paperless_mobile/features/documents/bloc/documents_state.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document.model.dart';
|
import 'package:paperless_mobile/features/documents/model/document.model.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/model/document_filter.dart';
|
import 'package:paperless_mobile/features/documents/model/document_filter.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/pages/document_details_page.dart';
|
import 'package:paperless_mobile/features/documents/view/pages/document_details_page.dart';
|
||||||
import 'package:flutter_paperless_mobile/features/documents/view/widgets/list/document_list.dart';
|
import 'package:paperless_mobile/features/documents/view/widgets/list/document_list.dart';
|
||||||
import 'package:flutter_paperless_mobile/generated/l10n.dart';
|
import 'package:paperless_mobile/generated/l10n.dart';
|
||||||
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
|
||||||
|
|
||||||
class LinkedDocumentsPreview extends StatefulWidget {
|
class LinkedDocumentsPreview extends StatefulWidget {
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user