feat: Upgrade dio version to latest, applied migrations

This commit is contained in:
Anton Stubenbord
2023-02-13 18:13:08 +01:00
parent 26b283b83a
commit c5033792aa
17 changed files with 124 additions and 170 deletions

View File

@@ -1,8 +0,0 @@
#!/bin/bash
pushd packages/paperless_api
flutter pub get
flutter pub run build_runner build --delete-conflicting-outputs
popd
flutter pub get
flutter pub run build_runner build --delete-conflicting-outputs
flutter pub run intl_utils:generate

View File

@@ -22,7 +22,7 @@ class DioHttpErrorInterceptor extends Interceptor {
DioError(
error: const PaperlessServerException(ErrorCode.deviceOffline),
requestOptions: err.requestOptions,
type: DioErrorType.connectTimeout,
type: DioErrorType.connectionTimeout,
),
);
}
@@ -52,7 +52,7 @@ class DioHttpErrorInterceptor extends Interceptor {
DioError(
error: errorMessages,
requestOptions: err.requestOptions,
type: DioErrorType.response,
type: DioErrorType.badResponse,
),
);
}
@@ -66,7 +66,7 @@ class DioHttpErrorInterceptor extends Interceptor {
handler.reject(
DioError(
requestOptions: err.requestOptions,
type: DioErrorType.response,
type: DioErrorType.badResponse,
error: const PaperlessServerException(
ErrorCode.missingClientCertificate),
),

View File

@@ -28,10 +28,12 @@ class RetryOnConnectionChangeInterceptor extends Interceptor {
}
bool _shouldRetryOnHttpException(DioError err) {
return err.type == DioErrorType.other &&
((err.error is HttpException &&
err.message.contains(
'Connection closed before full header was received')));
return err.type == DioErrorType.unknown &&
(err.error is HttpException &&
(err.message?.contains(
'Connection closed before full header was received',
) ??
false));
}
}

View File

@@ -19,7 +19,7 @@ class ServerReachabilityErrorInterceptor extends Interceptor {
);
}
}
if (err.type == DioErrorType.connectTimeout) {
if (err.type == DioErrorType.connectionTimeout) {
return _rejectWithStatus(
ReachabilityStatus.connectionTimeout,
err,
@@ -55,6 +55,6 @@ void _rejectWithStatus(
error: reachabilityStatus,
requestOptions: err.requestOptions,
response: err.response,
type: DioErrorType.other,
type: DioErrorType.unknown,
));
}

View File

@@ -1,9 +1,8 @@
import 'dart:io';
import 'package:dio/adapter.dart';
import 'package:dio/dio.dart';
import 'package:dio/io.dart';
import 'package:paperless_api/paperless_api.dart';
import 'package:paperless_mobile/core/interceptor/dio_http_error_interceptor.dart';
import 'package:paperless_mobile/core/interceptor/retry_on_connection_change_interceptor.dart';
import 'package:paperless_mobile/features/login/model/client_certificate.dart';
import 'package:pretty_dio_logger/pretty_dio_logger.dart';
@@ -20,9 +19,9 @@ class SessionManager {
static Dio _initDio(List<Interceptor> interceptors) {
//en- and decoded by utf8 by default
final Dio dio = Dio(BaseOptions());
dio.options.receiveTimeout = const Duration(seconds: 25).inMilliseconds;
dio.options.receiveTimeout = const Duration(seconds: 25);
dio.options.responseType = ResponseType.json;
(dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate =
(dio.httpClientAdapter as IOHttpClientAdapter).onHttpClientCreate =
(client) => client..badCertificateCallback = (cert, host, port) => true;
dio.interceptors.addAll([
...interceptors,
@@ -59,7 +58,7 @@ class SessionManager {
clientCertificate.bytes,
password: clientCertificate.passphrase,
);
final adapter = DefaultHttpClientAdapter()
final adapter = IOHttpClientAdapter()
..onHttpClientCreate = (client) => HttpClient(context: context)
..badCertificateCallback =
(X509Certificate cert, String host, int port) => true;
@@ -81,7 +80,7 @@ class SessionManager {
}
void resetSettings() {
client.httpClientAdapter = DefaultHttpClientAdapter();
client.httpClientAdapter = IOHttpClientAdapter();
client.options.baseUrl = '';
client.options.headers.remove('Authorization');
serverInformation = PaperlessServerInformationModel();

View File

@@ -1,8 +1,6 @@
import 'dart:developer';
import 'dart:io';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:dio/adapter.dart';
import 'package:dio/dio.dart';
import 'package:paperless_mobile/core/global/os_error_codes.dart';
import 'package:paperless_mobile/core/interceptor/server_reachability_error_interceptor.dart';
@@ -71,8 +69,8 @@ class ConnectivityStatusServiceImpl implements ConnectivityStatusService {
SessionManager manager =
SessionManager([ServerReachabilityErrorInterceptor()])
..updateSettings(clientCertificate: clientCertificate)
..client.options.connectTimeout = 5000
..client.options.receiveTimeout = 5000;
..client.options.connectTimeout = const Duration(seconds: 5)
..client.options.receiveTimeout = const Duration(seconds: 5);
final response = await manager.client.get('$serverAddress/api/');
if (response.statusCode == 200) {
@@ -80,7 +78,7 @@ class ConnectivityStatusServiceImpl implements ConnectivityStatusService {
}
return ReachabilityStatus.notReachable;
} on DioError catch (error) {
if (error.type == DioErrorType.other &&
if (error.type == DioErrorType.unknown &&
error.error is ReachabilityStatus) {
return error.error as ReachabilityStatus;
}

View File

@@ -242,13 +242,6 @@ class _DocumentsPageState extends State<DocumentsPage>
children: [
Builder(
builder: (context) {
final itemHeight =
MediaQuery.sizeOf(context).height -
MediaQuery.viewInsetsOf(context).bottom -
MediaQuery.viewInsetsOf(context).top -
kToolbarHeight -
kTextTabBarHeight -
56;
return RefreshIndicator(
edgeOffset: kToolbarHeight + kTextTabBarHeight,
onRefresh: _onReloadDocuments,
@@ -281,7 +274,6 @@ class _DocumentsPageState extends State<DocumentsPage>
return SliverAdaptiveDocumentsView(
viewType: state.viewType,
maxItemExtent: itemHeight,
onTap: _openDetails,
onSelected: context
.read<DocumentsCubit>()

View File

@@ -23,7 +23,6 @@ abstract class AdaptiveDocumentsView extends StatelessWidget {
final void Function(int? id)? onCorrespondentSelected;
final void Function(int? id)? onDocumentTypeSelected;
final void Function(int? id)? onStoragePathSelected;
final double maxItemExtent;
bool get showLoadingPlaceholder => (!hasLoaded && isLoading);
const AdaptiveDocumentsView({
@@ -42,7 +41,6 @@ abstract class AdaptiveDocumentsView extends StatelessWidget {
required this.isLoading,
required this.hasLoaded,
this.enableHeroAnimation = true,
required this.maxItemExtent,
});
}
@@ -63,7 +61,6 @@ class SliverAdaptiveDocumentsView extends AdaptiveDocumentsView {
super.enableHeroAnimation,
required super.isLoading,
required super.hasLoaded,
super.maxItemExtent = double.infinity,
});
@override
@@ -112,8 +109,7 @@ class SliverAdaptiveDocumentsView extends AdaptiveDocumentsView {
//TODO: Build detailed loading animation
return DocumentsListLoadingWidget.sliver();
}
return SliverFixedExtentList(
itemExtent: maxItemExtent,
return SliverList(
delegate: SliverChildBuilderDelegate(
childCount: documents.length,
(context, index) {
@@ -189,7 +185,6 @@ class DefaultAdaptiveDocumentsView extends AdaptiveDocumentsView {
super.selectedDocumentIds,
super.viewType,
super.enableHeroAnimation = true,
super.maxItemExtent = double.infinity,
});
@override

View File

@@ -24,7 +24,7 @@ class PaperlessAuthenticationApiImpl implements PaperlessAuthenticationApi {
} on DioError catch (error) {
if (error.error is PaperlessServerException ||
error.error is Map<String, String>) {
throw error.error;
throw error.error as Map<String, String>;
} else {
throw PaperlessServerException(
ErrorCode.authenticationFailed,

View File

@@ -2,14 +2,10 @@ import 'dart:convert';
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import 'package:intl/intl.dart';
import 'package:paperless_api/paperless_api.dart';
import 'package:paperless_api/src/constants.dart';
import 'package:paperless_api/src/converters/local_date_time_json_converter.dart';
class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
static const _dateTimeConverter = LocalDateTimeJsonConverter();
final Dio client;
PaperlessDocumentsApiImpl(this.client);
@@ -65,7 +61,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
);
}
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -82,7 +78,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
throw const PaperlessServerException(ErrorCode.documentUpdateFailed);
}
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -109,7 +105,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
throw const PaperlessServerException(ErrorCode.documentLoadFailed);
}
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -123,7 +119,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
}
throw const PaperlessServerException(ErrorCode.documentDeleteFailed);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -150,7 +146,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
}
throw const PaperlessServerException(ErrorCode.documentPreviewFailed);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -172,7 +168,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
} on PaperlessServerException {
throw const PaperlessServerException(ErrorCode.documentAsnQueryFailed);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -191,7 +187,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
);
}
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -204,7 +200,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
);
return response.data;
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -218,7 +214,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
response.data as Map<String, dynamic>,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -237,7 +233,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
}
throw const PaperlessServerException(ErrorCode.autocompleteQueryError);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -252,7 +248,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
}
throw const PaperlessServerException(ErrorCode.suggestionsQueryError);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -266,7 +262,7 @@ class PaperlessDocumentsApiImpl implements PaperlessDocumentsApi {
return null;
}
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
}

View File

@@ -103,7 +103,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -122,7 +122,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -142,7 +142,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -160,7 +160,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -178,7 +178,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -195,7 +195,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -215,7 +215,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -235,7 +235,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -256,7 +256,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -273,7 +273,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -316,7 +316,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -333,7 +333,7 @@ class PaperlessLabelApiImpl implements PaperlessLabelsApi {
}
throw const PaperlessServerException(ErrorCode.unknown);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
}

View File

@@ -39,7 +39,7 @@ class PaperlessSavedViewsApiImpl implements PaperlessSavedViewsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -55,7 +55,7 @@ class PaperlessSavedViewsApiImpl implements PaperlessSavedViewsApi {
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}

View File

@@ -29,7 +29,7 @@ Future<T> getSingleResult<T>(
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
@@ -66,12 +66,13 @@ Future<List<T>> getCollection<T>(
httpStatusCode: response.statusCode,
);
} on DioError catch (err) {
throw err.error;
throw err.error!;
}
}
List<T> _collectionFromJson<T>(
_CollectionFromJsonSerializationParams<T> params) {
_CollectionFromJsonSerializationParams<T> params,
) {
return params.list.map<T>((result) => params.fromJson(result)).toList();
}

View File

@@ -17,7 +17,7 @@ dependencies:
http: ^0.13.5
json_annotation: ^4.7.0
intl: ^0.17.0
dio: ^4.0.6
dio: ^5.0.0
collection: ^1.17.0
jiffy: ^5.0.0

View File

@@ -45,10 +45,10 @@ packages:
dependency: transitive
description:
name: args
sha256: "139d809800a412ebb26a3892da228b2d0ba36f0ef5d9a82166e5e52ec8d61611"
sha256: "4cab82a83ffef80b262ddedf47a0a8e56ee6fbf7fe21e6e768b02792034dd440"
url: "https://pub.dev"
source: hosted
version: "2.3.2"
version: "2.4.0"
asn1lib:
dependency: transitive
description:
@@ -101,18 +101,18 @@ packages:
dependency: transitive
description:
name: bloc
sha256: bd4f8027bfa60d96c8046dec5ce74c463b2c918dce1b0d36593575995344534a
sha256: "658a5ae59edcf1e58aac98b000a71c762ad8f46f1394c34a52050cafb3e11a80"
url: "https://pub.dev"
source: hosted
version: "8.1.0"
version: "8.1.1"
bloc_test:
dependency: "direct dev"
description:
name: bloc_test
sha256: "622b97678bf8c06a94f4c26a89ee9ebf7319bf775383dee2233e86e1f94ee28d"
sha256: ffbb60c17ee3d8e3784cb78071088e353199057233665541e8ac6cd438dca8ad
url: "https://pub.dev"
source: hosted
version: "9.1.0"
version: "9.1.1"
boolean_selector:
dependency: transitive
description:
@@ -245,58 +245,26 @@ packages:
dependency: "direct main"
description:
name: collection
sha256: "4a07be6cb69c84d677a6c3096fcf960cc3285a8330b4603e0d463d15d9bd934c"
sha256: cfc915e6923fe5ce6e153b0723c753045de46de1b4d63771530504004a45fae0
url: "https://pub.dev"
source: hosted
version: "1.17.1"
version: "1.17.0"
connectivity_plus:
dependency: "direct main"
description:
name: connectivity_plus
sha256: "3f8fe4e504c2d33696dac671a54909743bc6a902a9bb0902306f7a2aed7e528e"
sha256: "8875e8ed511a49f030e313656154e4bbbcef18d68dfd32eb853fac10bce48e96"
url: "https://pub.dev"
source: hosted
version: "2.3.9"
connectivity_plus_linux:
dependency: transitive
description:
name: connectivity_plus_linux
sha256: "3caf859d001f10407b8e48134c761483e4495ae38094ffcca97193f6c271f5e2"
url: "https://pub.dev"
source: hosted
version: "1.3.1"
connectivity_plus_macos:
dependency: transitive
description:
name: connectivity_plus_macos
sha256: "488d2de1e47e1224ad486e501b20b088686ba1f4ee9c4420ecbc3b9824f0b920"
url: "https://pub.dev"
source: hosted
version: "1.2.6"
version: "3.0.3"
connectivity_plus_platform_interface:
dependency: transitive
description:
name: connectivity_plus_platform_interface
sha256: b8795b9238bf83b64375f63492034cb3d8e222af4d9ce59dda085edf038fa06f
sha256: cf1d1c28f4416f8c654d7dc3cd638ec586076255d407cef3ddbdaf178272a71a
url: "https://pub.dev"
source: hosted
version: "1.2.3"
connectivity_plus_web:
dependency: transitive
description:
name: connectivity_plus_web
sha256: "81332be1b4baf8898fed17bb4fdef27abb7c6fd990bf98c54fd978478adf2f1a"
url: "https://pub.dev"
source: hosted
version: "1.2.5"
connectivity_plus_windows:
dependency: transitive
description:
name: connectivity_plus_windows
sha256: "535b0404b4d5605c4dd8453d67e5d6d2ea0dd36e3b477f50f31af51b0aeab9dd"
url: "https://pub.dev"
source: hosted
version: "1.2.2"
version: "1.2.4"
convert:
dependency: transitive
description:
@@ -309,10 +277,10 @@ packages:
dependency: transitive
description:
name: coverage
sha256: "961c4aebd27917269b1896382c7cb1b1ba81629ba669ba09c27a7e5710ec9040"
sha256: "2fb815080e44a09b85e0f2ca8a820b15053982b2e714b59267719e8a9ff17097"
url: "https://pub.dev"
source: hosted
version: "1.6.2"
version: "1.6.3"
cross_file:
dependency: transitive
description:
@@ -341,18 +309,18 @@ packages:
dependency: "direct dev"
description:
name: dart_code_metrics
sha256: bb4ec5e729788dde5f7e8e9df4c05ec3b78532a5763e635337153ce40085514b
sha256: "026e28da197a03caeccccc0b174ec98ef03da3c81c4543314d7add121aab4375"
url: "https://pub.dev"
source: hosted
version: "5.5.1"
version: "5.6.0"
dart_code_metrics_presets:
dependency: transitive
description:
name: dart_code_metrics_presets
sha256: "43dc1fdcb424fc3aa79964304d09eeda4f199351c52cdc854f8228a9d0296b60"
sha256: "9c51724f836aebc4465228954cb5757e5a99737af26a452b5dec0a2d5d0b4d66"
url: "https://pub.dev"
source: hosted
version: "1.1.0"
version: "1.2.0"
dart_style:
dependency: transitive
description:
@@ -437,10 +405,10 @@ packages:
dependency: "direct main"
description:
name: dio
sha256: "7d328c4d898a61efc3cd93655a0955858e29a0aa647f0f9e02d59b3bb275e2e8"
sha256: "9fdbf71baeb250fc9da847f6cb2052196f62c19906a3657adfc18631a667d316"
url: "https://pub.dev"
source: hosted
version: "4.0.6"
version: "5.0.0"
dots_indicator:
dependency: transitive
description:
@@ -547,10 +515,10 @@ packages:
dependency: "direct main"
description:
name: flutter_bloc
sha256: "890c51c8007f0182360e523518a0c732efb89876cb4669307af7efada5b55557"
sha256: "434951eea948dbe87f737b674281465f610b8259c16c097b8163ce138749a775"
url: "https://pub.dev"
source: hosted
version: "8.1.1"
version: "8.1.2"
flutter_blurhash:
dependency: transitive
description:
@@ -735,18 +703,18 @@ packages:
dependency: "direct main"
description:
name: fluttertoast
sha256: "7cc92eabe01e3f1babe1571c5560b135dfc762a34e41e9056881e2196b178ec1"
sha256: "774fa28b07f3a82c93596bc137be33189fec578ed3447a93a5a11c93435de394"
url: "https://pub.dev"
source: hosted
version: "8.1.2"
version: "8.1.3"
font_awesome_flutter:
dependency: "direct main"
description:
name: font_awesome_flutter
sha256: "875dbb9ec1ad30d68102019ceb682760d06c72747c1c5b7885781b95f88569cc"
sha256: "959ef4add147753f990b4a7c6cccb746d5792dbdc81b1cde99e62e7edb31b206"
url: "https://pub.dev"
source: hosted
version: "10.3.0"
version: "10.4.0"
form_builder_validators:
dependency: "direct main"
description:
@@ -836,10 +804,10 @@ packages:
dependency: "direct main"
description:
name: hydrated_bloc
sha256: "5871204f14b24638dc9d18d5b94cf22a66fc4be40756925cafff3a7553c7d7b7"
sha256: eb92d88061b6b911c48779b08a91c8a9f3a3aa8475f80d9380045375d9876536
url: "https://pub.dev"
source: hosted
version: "9.0.0"
version: "9.1.0"
image:
dependency: "direct main"
description:
@@ -897,10 +865,10 @@ packages:
dependency: transitive
description:
name: js
sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7"
url: "https://pub.dev"
source: hosted
version: "0.6.7"
version: "0.6.5"
json_annotation:
dependency: "direct main"
description:
@@ -937,10 +905,10 @@ packages:
dependency: transitive
description:
name: local_auth_android
sha256: ba48fe0e1cae140a0813ce68c2540250d7f573a8ae4d4b6c681b2d2583584953
sha256: cfcbc4936e288d61ef85a04feef6b95f49ba496d4fd98364e6abafb462b06a1f
url: "https://pub.dev"
source: hosted
version: "1.0.17"
version: "1.0.18"
local_auth_ios:
dependency: transitive
description:
@@ -977,10 +945,10 @@ packages:
dependency: transitive
description:
name: matcher
sha256: c94db23593b89766cda57aab9ac311e3616cf87c6fa4e9749df032f66f30dcb8
sha256: "16db949ceee371e9b99d22f88fa3a73c4e59fd0afed0bd25fc336eb76c198b72"
url: "https://pub.dev"
source: hosted
version: "0.12.14"
version: "0.12.13"
material_color_utilities:
dependency: transitive
description:
@@ -993,10 +961,10 @@ packages:
dependency: transitive
description:
name: meta
sha256: "12307e7f0605ce3da64cf0db90e5fcab0869f3ca03f76be6bb2991ce0a55e82b"
sha256: "6c268b42ed578a53088d834796959e4a1814b5e9e164f147f580a386e5decf42"
url: "https://pub.dev"
source: hosted
version: "1.9.0"
version: "1.8.0"
mime:
dependency: "direct main"
description:
@@ -1128,10 +1096,10 @@ packages:
dependency: transitive
description:
name: path
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
sha256: db9d4f58c908a4ba5953fcee2ae317c94889433e5024c27ce74a37f94267945b
url: "https://pub.dev"
source: hosted
version: "1.8.3"
version: "1.8.2"
path_drawing:
dependency: transitive
description:
@@ -1176,10 +1144,10 @@ packages:
dependency: transitive
description:
name: path_provider_linux
sha256: ab0987bf95bc591da42dffb38c77398fc43309f0b9b894dcc5d6f40c4b26c379
sha256: "2e32f1640f07caef0d3cb993680f181c79e54a3827b997d5ee221490d131fbd9"
url: "https://pub.dev"
source: hosted
version: "2.1.7"
version: "2.1.8"
path_provider_platform_interface:
dependency: transitive
description:
@@ -1312,10 +1280,10 @@ packages:
dependency: "direct main"
description:
name: pretty_dio_logger
sha256: "948f7eeb36e7aa0760b51c1a8e3331d4b21e36fabd39efca81f585ed93893544"
sha256: "00b80053063935cf9a6190da344c5373b9d0e92da4c944c878ff2fbef0ef6dc2"
url: "https://pub.dev"
source: hosted
version: "1.2.0-beta-1"
version: "1.3.1"
process:
dependency: transitive
description:
@@ -1392,10 +1360,10 @@ packages:
dependency: "direct main"
description:
name: share_plus
sha256: e387077716f80609bb979cd199331033326033ecd1c8f200a90c5f57b1c9f55e
sha256: "8c6892037b1824e2d7e8f59d54b3105932899008642e6372e5079c6939b4b625"
url: "https://pub.dev"
source: hosted
version: "6.3.0"
version: "6.3.1"
share_plus_platform_interface:
dependency: transitive
description:
@@ -1621,26 +1589,26 @@ packages:
dependency: transitive
description:
name: test
sha256: b54d427664c00f2013ffb87797a698883c46aee9288e027a50b46eaee7486fa2
sha256: a5fcd2d25eeadbb6589e80198a47d6a464ba3e2049da473943b8af9797900c2d
url: "https://pub.dev"
source: hosted
version: "1.22.2"
version: "1.22.0"
test_api:
dependency: transitive
description:
name: test_api
sha256: "6182294da5abf431177fccc1ee02401f6df30f766bc6130a0852c6b6d7ee6b2d"
sha256: ad540f65f92caa91bf21dfc8ffb8c589d6e4dc0c2267818b4cc2792857706206
url: "https://pub.dev"
source: hosted
version: "0.4.18"
version: "0.4.16"
test_core:
dependency: transitive
description:
name: test_core
sha256: "95ecc12692d0dd59080ab2d38d9cf32c7e9844caba23ff6cd285690398ee8ef4"
sha256: "0ef9755ec6d746951ba0aabe62f874b707690b5ede0fecc818b138fcc9b14888"
url: "https://pub.dev"
source: hosted
version: "0.4.22"
version: "0.4.20"
timezone:
dependency: transitive
description:
@@ -1685,10 +1653,10 @@ packages:
dependency: "direct main"
description:
name: url_launcher
sha256: "698fa0b4392effdc73e9e184403b627362eb5fbf904483ac9defbb1c2191d809"
sha256: e8f2efc804810c0f2f5b485f49e7942179f56eabcfe81dce3387fec4bb55876b
url: "https://pub.dev"
source: hosted
version: "6.1.8"
version: "6.1.9"
url_launcher_android:
dependency: transitive
description:
@@ -1701,10 +1669,10 @@ packages:
dependency: transitive
description:
name: url_launcher_ios
sha256: bb328b24d3bccc20bdf1024a0990ac4f869d57663660de9c936fb8c043edefe3
sha256: "0a5af0aefdd8cf820dd739886efb1637f1f24489900204f50984634c07a54815"
url: "https://pub.dev"
source: hosted
version: "6.0.18"
version: "6.1.0"
url_launcher_linux:
dependency: transitive
description:
@@ -1765,10 +1733,10 @@ packages:
dependency: transitive
description:
name: vm_service
sha256: "2277c73618916ae3c2082b6df67b6ebb64b4c69d9bf23b23700707952ac30e60"
sha256: e7fb6c2282f7631712b69c19d1bff82f3767eea33a2321c14fa59ad67ea391c7
url: "https://pub.dev"
source: hosted
version: "10.1.2"
version: "9.4.0"
watcher:
dependency: transitive
description:
@@ -1789,10 +1757,10 @@ packages:
dependency: transitive
description:
name: webdriver
sha256: "3c923e918918feeb90c4c9fdf1fe39220fa4c0e8e2c0fffaded174498ef86c49"
sha256: ef67178f0cc7e32c1494645b11639dd1335f1d18814aa8435113a92e9ef9d841
url: "https://pub.dev"
source: hosted
version: "3.0.2"
version: "3.0.1"
webkit_inspection_protocol:
dependency: transitive
description:
@@ -1834,5 +1802,5 @@ packages:
source: hosted
version: "3.1.1"
sdks:
dart: ">=2.19.0 <4.0.0"
dart: ">=2.19.0 <3.0.0"
flutter: ">=3.4.0-17.0.pre"

View File

@@ -60,7 +60,7 @@ dependencies:
package_info_plus: ^1.4.3+1
font_awesome_flutter: ^10.1.0
local_auth: ^2.1.2
connectivity_plus: ^2.3.9
connectivity_plus: ^3.0.3
flutter_native_splash: ^2.2.11
share_plus: ^6.2.0
@@ -77,7 +77,7 @@ dependencies:
badges: ^2.0.3
flutter_colorpicker: ^1.0.3
provider: ^6.0.5
dio: ^4.0.6
dio: ^5.0.0
hydrated_bloc: ^9.0.0
json_annotation: ^4.7.0
pretty_dio_logger: ^1.2.0-beta-1

View File

@@ -0,0 +1,11 @@
#!/bin/bash
# Uses flutter submodule dependency
git submodules update --init
pushd ../
pushd packages/paperless_api
../../flutter/bin/flutter pub get
../../flutter/bin/flutter pub run build_runner build --delete-conflicting-outputs
popd
flutter/bin/flutter pub get
flutter/bin/flutter pub run build_runner build --delete-conflicting-outputs
flutter/bin/flutter pub run intl_utils:generate