Compare commits
33 Commits
9e8cba5069
...
develop
| Author | SHA1 | Date | |
|---|---|---|---|
| e54f7908e3 | |||
| 84aefe0d35 | |||
| 6d04c0ada0 | |||
| e791f08eef | |||
| bcfb9d42e8 | |||
| 845a380fbf | |||
| 90531e6e4e | |||
| 6cb9e82e61 | |||
| 51c4ae4f02 | |||
| a376faf0ce | |||
| cebc46bbb3 | |||
| 8b546214eb | |||
| 0426d94d60 | |||
| 285c4ca3f2 | |||
| b1da4507f1 | |||
| 0842c479c7 | |||
| e3d3bcfb68 | |||
| 1a0ecee501 | |||
| 49f1ee9529 | |||
| 5e65118ab4 | |||
| 9c5e06884d | |||
| 3d31cd7737 | |||
| 7609601cd0 | |||
| 9981f1ef0f | |||
| 588c026f27 | |||
| 0478ff6f47 | |||
| 49d21cc34b | |||
| a3ef313e7c | |||
| 17dff72655 | |||
| fb7ff84087 | |||
| b1aefa9f11 | |||
| edcc157dbb | |||
| 5e8a8699ac |
@@ -1,192 +0,0 @@
|
||||
//
|
||||
// Generated file. Do not edit.
|
||||
// This file is generated from template in file `flutter_tools/lib/src/flutter_plugins.dart`.
|
||||
//
|
||||
|
||||
// @dart = 3.7
|
||||
|
||||
import 'dart:io'; // flutter_ignore: dart_io_import.
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:path_provider_android/path_provider_android.dart';
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:path_provider_foundation/path_provider_foundation.dart';
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:path_provider_linux/path_provider_linux.dart';
|
||||
import 'package:share_plus/share_plus.dart';
|
||||
import 'package:url_launcher_linux/url_launcher_linux.dart';
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:path_provider_foundation/path_provider_foundation.dart';
|
||||
import 'package:file_picker/file_picker.dart';
|
||||
import 'package:flutter_secure_storage_windows/flutter_secure_storage_windows.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:path_provider_windows/path_provider_windows.dart';
|
||||
import 'package:share_plus/share_plus.dart';
|
||||
import 'package:url_launcher_windows/url_launcher_windows.dart';
|
||||
|
||||
@pragma('vm:entry-point')
|
||||
class _PluginRegistrant {
|
||||
|
||||
@pragma('vm:entry-point')
|
||||
static void register() {
|
||||
if (Platform.isAndroid) {
|
||||
try {
|
||||
FilePickerIO.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`file_picker` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PathProviderAndroid.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`path_provider_android` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
} else if (Platform.isIOS) {
|
||||
try {
|
||||
FilePickerIO.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`file_picker` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PathProviderFoundation.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`path_provider_foundation` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
} else if (Platform.isLinux) {
|
||||
try {
|
||||
FilePickerLinux.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`file_picker` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PackageInfoPlusLinuxPlugin.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`package_info_plus` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PathProviderLinux.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`path_provider_linux` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
SharePlusLinuxPlugin.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`share_plus` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
UrlLauncherLinux.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`url_launcher_linux` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
} else if (Platform.isMacOS) {
|
||||
try {
|
||||
FilePickerMacOS.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`file_picker` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PathProviderFoundation.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`path_provider_foundation` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
} else if (Platform.isWindows) {
|
||||
try {
|
||||
FilePickerWindows.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`file_picker` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
FlutterSecureStorageWindows.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`flutter_secure_storage_windows` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PackageInfoPlusWindowsPlugin.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`package_info_plus` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
PathProviderWindows.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`path_provider_windows` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
SharePlusWindowsPlugin.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`share_plus` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
try {
|
||||
UrlLauncherWindows.registerWith();
|
||||
} catch (err) {
|
||||
print(
|
||||
'`url_launcher_windows` threw an error: $err. '
|
||||
'The app may not function as expected until you remove this plugin from pubspec.yaml'
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
/Users/vitalijnecitajlo/work/my/new\ remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/dart_build_result.json:
|
||||
@@ -1 +0,0 @@
|
||||
{"inputs":["/Users/vitalijnecitajlo/fvm/versions/3.29.0/packages/flutter_tools/lib/src/build_system/targets/native_assets.dart","/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/package_config_subset"],"outputs":["/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/dart_build_result.json","/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/dart_build_result.json"]}
|
||||
@@ -1 +0,0 @@
|
||||
{"dependencies":[],"code_assets":[]}
|
||||
@@ -1 +0,0 @@
|
||||
{"inputs":["/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/package_config_subset"],"outputs":["/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/flutter_build/dart_plugin_registrant.dart"]}
|
||||
@@ -1 +0,0 @@
|
||||
{"inputs":[],"outputs":[]}
|
||||
@@ -1 +0,0 @@
|
||||
/Users/vitalijnecitajlo/work/my/new\ remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/native_assets.json:
|
||||
@@ -1 +0,0 @@
|
||||
{"inputs":["/Users/vitalijnecitajlo/fvm/versions/3.29.0/packages/flutter_tools/lib/src/build_system/targets/native_assets.dart","/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/package_config_subset"],"outputs":["/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/native_assets.json","/Users/vitalijnecitajlo/work/my/new remover/.dart_tool/flutter_build/f8aeafefd67128b8dbf5f95a00355084/native_assets.json"]}
|
||||
@@ -1 +0,0 @@
|
||||
{"format-version":[1,0,0],"native-assets":{}}
|
||||
@@ -6,22 +6,26 @@ analyzer
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/analyzer-7.3.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/analyzer-7.3.0/lib/
|
||||
ansicolor
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/ansicolor-2.0.3/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/ansicolor-2.0.3/lib/
|
||||
archive
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/archive-4.0.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/archive-4.0.4/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/archive-4.0.5/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/archive-4.0.5/lib/
|
||||
args
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/args-2.6.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/args-2.6.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/args-2.7.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/args-2.7.0/lib/
|
||||
async
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/async-2.12.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/async-2.12.0/lib/
|
||||
auto_route
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/auto_route-10.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/auto_route-10.0.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/auto_route-10.0.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/auto_route-10.0.1/lib/
|
||||
auto_route_generator
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/auto_route_generator-10.0.1/
|
||||
@@ -68,8 +72,8 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_collection-5.1.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_collection-5.1.1/lib/
|
||||
built_value
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_value-8.9.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_value-8.9.4/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_value-8.9.5/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/built_value-8.9.5/lib/
|
||||
characters
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/characters-1.4.0/
|
||||
@@ -126,10 +130,6 @@ cupertino_icons
|
||||
3.1
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.8/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.8/lib/
|
||||
curl_logger_dio_interceptor
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/curl_logger_dio_interceptor-1.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/curl_logger_dio_interceptor-1.0.0/lib/
|
||||
dart_style
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/dart_style-3.0.1/
|
||||
@@ -156,16 +156,16 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/dio_web_adapter-2.1.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/dio_web_adapter-2.1.1/lib/
|
||||
drift
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift-2.25.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift-2.25.1/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift-2.26.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift-2.26.0/lib/
|
||||
drift_db_viewer
|
||||
2.13
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_db_viewer-2.1.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_db_viewer-2.1.0/lib/
|
||||
drift_dev
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_dev-2.25.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_dev-2.25.2/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_dev-2.26.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/drift_dev-2.26.0/lib/
|
||||
event_bus
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/event_bus-2.0.1/
|
||||
@@ -184,8 +184,8 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file-7.0.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file-7.0.1/lib/
|
||||
file_picker
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-9.2.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-9.2.1/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-10.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-10.0.0/lib/
|
||||
fixnum
|
||||
3.1
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/fixnum-1.1.1/
|
||||
@@ -210,6 +210,10 @@ flutter_keyboard_size
|
||||
2.18
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_keyboard_size-1.0.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_keyboard_size-1.0.1/lib/
|
||||
flutter_launcher_icons
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_launcher_icons-0.14.3/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_launcher_icons-0.14.3/lib/
|
||||
flutter_lints
|
||||
3.5
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_lints-5.0.0/
|
||||
@@ -294,6 +298,10 @@ graphs
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/graphs-2.3.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/graphs-2.3.2/lib/
|
||||
group_button
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/group_button-5.3.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/group_button-5.3.4/lib/
|
||||
hashcodes
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/hashcodes-2.0.0/
|
||||
@@ -322,6 +330,22 @@ http_parser
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/http_parser-4.1.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/http_parser-4.1.2/lib/
|
||||
image
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image-4.5.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image-4.5.4/lib/
|
||||
image_cropper
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper-9.1.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper-9.1.0/lib/
|
||||
image_cropper_for_web
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper_for_web-6.1.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper_for_web-6.1.0/lib/
|
||||
image_cropper_platform_interface
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper_platform_interface-7.1.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper_platform_interface-7.1.0/lib/
|
||||
image_size_getter
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_size_getter-2.4.0/
|
||||
@@ -412,8 +436,8 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/node_preamble-2.0.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/node_preamble-2.0.2/lib/
|
||||
package_config
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_config-2.1.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_config-2.1.1/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_config-2.2.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_config-2.2.0/lib/
|
||||
package_info_plus
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_info_plus-8.3.0/
|
||||
@@ -435,9 +459,9 @@ path_provider
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider-2.1.5/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider-2.1.5/lib/
|
||||
path_provider_android
|
||||
3.5
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.15/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.15/lib/
|
||||
3.6
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.16/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.16/lib/
|
||||
path_provider_foundation
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/
|
||||
@@ -478,34 +502,22 @@ posix
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/posix-6.0.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/posix-6.0.1/lib/
|
||||
pretty_dio_logger
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pretty_dio_logger-1.4.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pretty_dio_logger-1.4.0/lib/
|
||||
provider
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/provider-6.1.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/provider-6.1.2/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/provider-6.1.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/provider-6.1.4/lib/
|
||||
pub_semver
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pub_semver-2.1.5/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pub_semver-2.1.5/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pub_semver-2.2.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pub_semver-2.2.0/lib/
|
||||
pubspec_parse
|
||||
3.6
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pubspec_parse-1.5.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/pubspec_parse-1.5.0/lib/
|
||||
readmore
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/readmore-3.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/readmore-3.0.0/lib/
|
||||
recase
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/recase-4.1.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/recase-4.1.0/lib/
|
||||
settings_ui
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/settings_ui-2.0.2/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/settings_ui-2.0.2/lib/
|
||||
share_plus
|
||||
3.4
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/share_plus-10.1.4/
|
||||
@@ -532,16 +544,16 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/shelf_web_socket-3.0.0/lib/
|
||||
slang
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang-4.5.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang-4.5.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang-4.6.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang-4.6.0/lib/
|
||||
slang_build_runner
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_build_runner-4.5.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_build_runner-4.5.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_build_runner-4.6.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_build_runner-4.6.0/lib/
|
||||
slang_flutter
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_flutter-4.5.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_flutter-4.5.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_flutter-4.6.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/slang_flutter-4.6.0/lib/
|
||||
source_gen
|
||||
3.6
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/source_gen-2.0.0/
|
||||
@@ -568,12 +580,12 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sprintf-7.0.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sprintf-7.0.0/lib/
|
||||
sqlite3
|
||||
3.5
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3-2.7.4/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3-2.7.4/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3-2.7.5/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3-2.7.5/lib/
|
||||
sqlite3_flutter_libs
|
||||
2.12
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.31/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.31/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.32/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.32/lib/
|
||||
sqlparser
|
||||
3.0
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlparser-0.41.0/
|
||||
@@ -594,6 +606,26 @@ string_scanner
|
||||
3.1
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/string_scanner-1.4.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/string_scanner-1.4.1/lib/
|
||||
talker
|
||||
2.17
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker-4.7.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker-4.7.1/lib/
|
||||
talker_bloc_logger
|
||||
2.15
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_bloc_logger-4.7.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_bloc_logger-4.7.1/lib/
|
||||
talker_dio_logger
|
||||
2.15
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_dio_logger-4.7.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_dio_logger-4.7.1/lib/
|
||||
talker_flutter
|
||||
3.6
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_flutter-4.7.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_flutter-4.7.1/lib/
|
||||
talker_logger
|
||||
2.15
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_logger-4.7.1/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/talker_logger-4.7.1/lib/
|
||||
term_glyph
|
||||
3.1
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/term_glyph-1.2.2/
|
||||
@@ -684,8 +716,8 @@ file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/webkit_inspection_proto
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1/lib/
|
||||
win32
|
||||
3.7
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/win32-5.11.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/win32-5.11.0/lib/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/win32-5.12.0/
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/win32-5.12.0/lib/
|
||||
xdg_directories
|
||||
3.3
|
||||
file:///Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/xdg_directories-1.1.0/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# This is a generated file; do not edit or check into version control.
|
||||
file_picker=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-9.2.1/
|
||||
file_picker=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/file_picker-10.0.0/
|
||||
flutter_displaymode=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0/
|
||||
flutter_plugin_android_lifecycle=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.27/
|
||||
flutter_secure_storage=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_secure_storage-9.2.4/
|
||||
@@ -8,14 +8,16 @@ flutter_secure_storage_macos=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/f
|
||||
flutter_secure_storage_web=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_secure_storage_web-1.2.1/
|
||||
flutter_secure_storage_windows=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/flutter_secure_storage_windows-3.1.2/
|
||||
fluttertoast=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/fluttertoast-8.2.12/
|
||||
image_cropper=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper-9.1.0/
|
||||
image_cropper_for_web=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/image_cropper_for_web-6.1.0/
|
||||
package_info_plus=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/package_info_plus-8.3.0/
|
||||
path_provider=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider-2.1.5/
|
||||
path_provider_android=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.15/
|
||||
path_provider_android=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_android-2.2.16/
|
||||
path_provider_foundation=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/
|
||||
path_provider_linux=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/
|
||||
path_provider_windows=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/
|
||||
share_plus=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/share_plus-10.1.4/
|
||||
sqlite3_flutter_libs=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.31/
|
||||
sqlite3_flutter_libs=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/sqlite3_flutter_libs-0.5.32/
|
||||
url_launcher_linux=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.1/
|
||||
url_launcher_web=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/url_launcher_web-2.4.0/
|
||||
url_launcher_windows=/Users/vitalijnecitajlo/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.4/
|
||||
|
||||
10
Makefile
@@ -1,4 +1,4 @@
|
||||
PROJECT_NAME=JY
|
||||
PROJECT_NAME=remever
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
@@ -8,10 +8,6 @@ clean:
|
||||
codegen: clean
|
||||
fvm flutter pub run build_runner build --delete-conflicting-outputs
|
||||
|
||||
watchgen: clean
|
||||
fvm flutter pub run build_runner watch --delete-conflicting-outputs
|
||||
|
||||
|
||||
iosPod:
|
||||
cd ios && rm -rf Podfile.lock Pods Runner.xcworkspace && fvm flutter clean && fvm flutter pub get && pod install
|
||||
|
||||
@@ -31,8 +27,8 @@ macosPodUpdate:
|
||||
cd macos && pod install --repo-update
|
||||
|
||||
androidBuild: clean
|
||||
fvm flutter build apk --split-per-abi
|
||||
mv `pwd`/build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk /tmp/$(PROJECT_NAME)-$(env)-$(ver).apk
|
||||
fvm flutter build apk
|
||||
mv `pwd`/build/app/outputs/flutter-apk/app-release.apk /tmp/$(PROJECT_NAME)-$(env)-$(ver).apk
|
||||
echo /tmp/$(PROJECT_NAME)-$(env)-$(ver).apk
|
||||
open /tmp
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@ plugins {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "ru.remever.mobile.remever"
|
||||
compileSdk = flutter.compileSdkVersion
|
||||
namespace = "ru.remever.mobile"
|
||||
compileSdk = 36
|
||||
ndkVersion = "27.0.12077973"
|
||||
|
||||
compileOptions {
|
||||
@@ -21,11 +21,11 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||
applicationId = "ru.remever.mobile.remever"
|
||||
applicationId = "ru.remever.mobile"
|
||||
// You can update the following values to match your application needs.
|
||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||
minSdk = flutter.minSdkVersion
|
||||
targetSdk = flutter.targetSdkVersion
|
||||
minSdk = 21
|
||||
targetSdk = 36
|
||||
versionCode = flutter.versionCode
|
||||
versionName = flutter.versionName
|
||||
}
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
|
||||
|
||||
<application
|
||||
android:label="remever"
|
||||
android:name="${applicationName}"
|
||||
android:icon="@mipmap/ic_launcher">
|
||||
android:icon="@mipmap/launcher_icon">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
@@ -20,6 +23,7 @@
|
||||
android:name="io.flutter.embedding.android.NormalTheme"
|
||||
android:resource="@style/NormalTheme"
|
||||
/>
|
||||
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
@@ -30,6 +34,15 @@
|
||||
<meta-data
|
||||
android:name="flutterEmbedding"
|
||||
android:value="2" />
|
||||
|
||||
<meta-data
|
||||
android:name="io.flutter.embedding.android.EnableImpeller"
|
||||
android:value="false" />
|
||||
|
||||
<activity
|
||||
android:name="com.yalantis.ucrop.UCropActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/Ucrop.CropTheme" />
|
||||
</application>
|
||||
<!-- Required to query activities that can process text, see:
|
||||
https://developer.android.com/training/package-visibility and
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package ru.remever.mobile.remever
|
||||
package ru.remever.mobile
|
||||
|
||||
import io.flutter.embedding.android.FlutterActivity
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 6.0 KiB |
|
After Width: | Height: | Size: 6.0 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 8.1 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 17 KiB |
14
android/app/src/main/res/mipmap-anydpi-v26/launcher_icon.xml
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground>
|
||||
<inset
|
||||
android:drawable="@drawable/ic_launcher_foreground"
|
||||
android:inset="16%" />
|
||||
</foreground>
|
||||
<monochrome>
|
||||
<inset
|
||||
android:drawable="@drawable/ic_launcher_monochrome"
|
||||
android:inset="16%" />
|
||||
</monochrome>
|
||||
</adaptive-icon>
|
||||
BIN
android/app/src/main/res/mipmap-hdpi/launcher_icon.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
android/app/src/main/res/mipmap-mdpi/launcher_icon.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
android/app/src/main/res/mipmap-xhdpi/launcher_icon.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
6
android/app/src/main/res/values-v35/styles.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<style name="Ucrop.CropTheme" parent="Theme.AppCompat.Light.NoActionBar">
|
||||
<item name="android:windowOptOutEdgeToEdgeEnforcement">true</item>
|
||||
</style>
|
||||
</resources>
|
||||
4
android/app/src/main/res/values/colors.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<color name="ic_launcher_background">#ffffff</color>
|
||||
</resources>
|
||||
@@ -1,6 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode
|
||||
setting is off -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
@@ -15,4 +16,8 @@
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
||||
<style name="Ucrop.CropTheme" parent="Theme.AppCompat.Light.NoActionBar" /> <!--add
|
||||
this line-->
|
||||
|
||||
</resources>
|
||||
BIN
assets/.DS_Store
vendored
BIN
assets/icons/settings_about.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
assets/icons/settings_exit.png
Normal file
|
After Width: | Height: | Size: 746 B |
BIN
assets/icons/settings_faq.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
assets/icons/settings_mail.png
Normal file
|
After Width: | Height: | Size: 811 B |
BIN
assets/icons/settings_name.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
assets/icons/settings_notification.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/icons/settings_phone.png
Normal file
|
After Width: | Height: | Size: 759 B |
BIN
assets/icons/settings_profile.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
assets/icons/settings_share.png
Normal file
|
After Width: | Height: | Size: 954 B |
BIN
assets/icons/settings_trash.png
Normal file
|
After Width: | Height: | Size: 639 B |
BIN
assets/icons/stats_best.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
assets/icons/stats_card.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
assets/icons/stats_down.png
Normal file
|
After Width: | Height: | Size: 397 B |
BIN
assets/icons/stats_repeat.png
Normal file
|
After Width: | Height: | Size: 764 B |
BIN
assets/icons/stats_time.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/icons/stats_up.png
Normal file
|
After Width: | Height: | Size: 429 B |
BIN
assets/images/app_icon.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
BIN
assets/images/app_icon_monochrome.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
BIN
assets/images/training_empty.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
138
ios/Podfile.lock
Normal file
@@ -0,0 +1,138 @@
|
||||
PODS:
|
||||
- DKImagePickerController/Core (4.3.9):
|
||||
- DKImagePickerController/ImageDataManager
|
||||
- DKImagePickerController/Resource
|
||||
- DKImagePickerController/ImageDataManager (4.3.9)
|
||||
- DKImagePickerController/PhotoGallery (4.3.9):
|
||||
- DKImagePickerController/Core
|
||||
- DKPhotoGallery
|
||||
- DKImagePickerController/Resource (4.3.9)
|
||||
- DKPhotoGallery (0.0.19):
|
||||
- DKPhotoGallery/Core (= 0.0.19)
|
||||
- DKPhotoGallery/Model (= 0.0.19)
|
||||
- DKPhotoGallery/Preview (= 0.0.19)
|
||||
- DKPhotoGallery/Resource (= 0.0.19)
|
||||
- SDWebImage
|
||||
- SwiftyGif
|
||||
- DKPhotoGallery/Core (0.0.19):
|
||||
- DKPhotoGallery/Model
|
||||
- DKPhotoGallery/Preview
|
||||
- SDWebImage
|
||||
- SwiftyGif
|
||||
- DKPhotoGallery/Model (0.0.19):
|
||||
- SDWebImage
|
||||
- SwiftyGif
|
||||
- DKPhotoGallery/Preview (0.0.19):
|
||||
- DKPhotoGallery/Model
|
||||
- DKPhotoGallery/Resource
|
||||
- SDWebImage
|
||||
- SwiftyGif
|
||||
- DKPhotoGallery/Resource (0.0.19):
|
||||
- SDWebImage
|
||||
- SwiftyGif
|
||||
- file_picker (0.0.1):
|
||||
- DKImagePickerController/PhotoGallery
|
||||
- Flutter
|
||||
- Flutter (1.0.0)
|
||||
- flutter_secure_storage (6.0.0):
|
||||
- Flutter
|
||||
- fluttertoast (0.0.2):
|
||||
- Flutter
|
||||
- image_cropper (0.0.4):
|
||||
- Flutter
|
||||
- TOCropViewController (~> 2.7.4)
|
||||
- package_info_plus (0.4.5):
|
||||
- Flutter
|
||||
- path_provider_foundation (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- SDWebImage (5.21.3):
|
||||
- SDWebImage/Core (= 5.21.3)
|
||||
- SDWebImage/Core (5.21.3)
|
||||
- share_plus (0.0.1):
|
||||
- Flutter
|
||||
- sqlite3 (3.49.2):
|
||||
- sqlite3/common (= 3.49.2)
|
||||
- sqlite3/common (3.49.2)
|
||||
- sqlite3/dbstatvtab (3.49.2):
|
||||
- sqlite3/common
|
||||
- sqlite3/fts5 (3.49.2):
|
||||
- sqlite3/common
|
||||
- sqlite3/math (3.49.2):
|
||||
- sqlite3/common
|
||||
- sqlite3/perf-threadsafe (3.49.2):
|
||||
- sqlite3/common
|
||||
- sqlite3/rtree (3.49.2):
|
||||
- sqlite3/common
|
||||
- sqlite3_flutter_libs (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- sqlite3 (~> 3.49.1)
|
||||
- sqlite3/dbstatvtab
|
||||
- sqlite3/fts5
|
||||
- sqlite3/math
|
||||
- sqlite3/perf-threadsafe
|
||||
- sqlite3/rtree
|
||||
- SwiftyGif (5.4.5)
|
||||
- TOCropViewController (2.7.4)
|
||||
|
||||
DEPENDENCIES:
|
||||
- file_picker (from `.symlinks/plugins/file_picker/ios`)
|
||||
- Flutter (from `Flutter`)
|
||||
- flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`)
|
||||
- fluttertoast (from `.symlinks/plugins/fluttertoast/ios`)
|
||||
- image_cropper (from `.symlinks/plugins/image_cropper/ios`)
|
||||
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
||||
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
|
||||
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
||||
- sqlite3_flutter_libs (from `.symlinks/plugins/sqlite3_flutter_libs/darwin`)
|
||||
|
||||
SPEC REPOS:
|
||||
trunk:
|
||||
- DKImagePickerController
|
||||
- DKPhotoGallery
|
||||
- SDWebImage
|
||||
- sqlite3
|
||||
- SwiftyGif
|
||||
- TOCropViewController
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
file_picker:
|
||||
:path: ".symlinks/plugins/file_picker/ios"
|
||||
Flutter:
|
||||
:path: Flutter
|
||||
flutter_secure_storage:
|
||||
:path: ".symlinks/plugins/flutter_secure_storage/ios"
|
||||
fluttertoast:
|
||||
:path: ".symlinks/plugins/fluttertoast/ios"
|
||||
image_cropper:
|
||||
:path: ".symlinks/plugins/image_cropper/ios"
|
||||
package_info_plus:
|
||||
:path: ".symlinks/plugins/package_info_plus/ios"
|
||||
path_provider_foundation:
|
||||
:path: ".symlinks/plugins/path_provider_foundation/darwin"
|
||||
share_plus:
|
||||
:path: ".symlinks/plugins/share_plus/ios"
|
||||
sqlite3_flutter_libs:
|
||||
:path: ".symlinks/plugins/sqlite3_flutter_libs/darwin"
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
DKImagePickerController: 946cec48c7873164274ecc4624d19e3da4c1ef3c
|
||||
DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60
|
||||
file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be
|
||||
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
|
||||
flutter_secure_storage: 1ed9476fba7e7a782b22888f956cce43e2c62f13
|
||||
fluttertoast: 2c67e14dce98bbdb200df9e1acf610d7a6264ea1
|
||||
image_cropper: c4326ea50132b1e1564499e5d32a84f01fb03537
|
||||
package_info_plus: af8e2ca6888548050f16fa2f1938db7b5a5df499
|
||||
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
|
||||
SDWebImage: 16309af6d214ba3f77a7c6f6fdda888cb313a50a
|
||||
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
|
||||
sqlite3: 3c950dc86011117c307eb0b28c4a7bb449dce9f1
|
||||
sqlite3_flutter_libs: f6acaa2172e6bb3e2e70c771661905080e8ebcf2
|
||||
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
||||
TOCropViewController: 80b8985ad794298fb69d3341de183f33d1853654
|
||||
|
||||
PODFILE CHECKSUM: 4305caec6b40dde0ae97be1573c53de1882a07e5
|
||||
|
||||
COCOAPODS: 1.16.2
|
||||
@@ -10,7 +10,9 @@
|
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||
331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; };
|
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||
56D0DA369935817C9FD61D64 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20EA46D90FEDEE106AB74AE3 /* Pods_RunnerTests.framework */; };
|
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
||||
869B506EF2E45BAB39615F26 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B39F7BDABEAD0ED3D2BCBF8A /* Pods_Runner.framework */; };
|
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
|
||||
@@ -42,12 +44,18 @@
|
||||
/* Begin PBXFileReference section */
|
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||
20EA46D90FEDEE106AB74AE3 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
274309643C09AEB895F5B282 /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; };
|
||||
331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; };
|
||||
331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||
3DD5DA132CCC13F9168EA46C /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
4D9F7D7DAC8938D01FCC4D51 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
8430F8544E2F6590CF5BD216 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
923EC9622249E9CDBDFE9D06 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
@@ -55,19 +63,39 @@
|
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
B39F7BDABEAD0ED3D2BCBF8A /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
B5951109D53267981AE8A56D /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
627E60B7283AB62A12CFF618 /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
56D0DA369935817C9FD61D64 /* Pods_RunnerTests.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
97C146EB1CF9000F007C117D /* Frameworks */ = {
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
869B506EF2E45BAB39615F26 /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
27B1E70DD21F0A27FF242714 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B39F7BDABEAD0ED3D2BCBF8A /* Pods_Runner.framework */,
|
||||
20EA46D90FEDEE106AB74AE3 /* Pods_RunnerTests.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
331C8082294A63A400263BE5 /* RunnerTests */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -94,6 +122,8 @@
|
||||
97C146F01CF9000F007C117D /* Runner */,
|
||||
97C146EF1CF9000F007C117D /* Products */,
|
||||
331C8082294A63A400263BE5 /* RunnerTests */,
|
||||
E9812416A7ACA68201AEE0BB /* Pods */,
|
||||
27B1E70DD21F0A27FF242714 /* Frameworks */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
@@ -121,6 +151,20 @@
|
||||
path = Runner;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E9812416A7ACA68201AEE0BB /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B5951109D53267981AE8A56D /* Pods-Runner.debug.xcconfig */,
|
||||
4D9F7D7DAC8938D01FCC4D51 /* Pods-Runner.release.xcconfig */,
|
||||
8430F8544E2F6590CF5BD216 /* Pods-Runner.profile.xcconfig */,
|
||||
923EC9622249E9CDBDFE9D06 /* Pods-RunnerTests.debug.xcconfig */,
|
||||
274309643C09AEB895F5B282 /* Pods-RunnerTests.release.xcconfig */,
|
||||
3DD5DA132CCC13F9168EA46C /* Pods-RunnerTests.profile.xcconfig */,
|
||||
);
|
||||
name = Pods;
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
@@ -128,8 +172,10 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */;
|
||||
buildPhases = (
|
||||
B6EC4F9E6BB4749CD063C598 /* [CP] Check Pods Manifest.lock */,
|
||||
331C807D294A63A400263BE5 /* Sources */,
|
||||
331C807F294A63A400263BE5 /* Resources */,
|
||||
627E60B7283AB62A12CFF618 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -145,12 +191,14 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
7961A0D505DA31A674AC7FD6 /* [CP] Check Pods Manifest.lock */,
|
||||
9740EEB61CF901F6004384FC /* Run Script */,
|
||||
97C146EA1CF9000F007C117D /* Sources */,
|
||||
97C146EB1CF9000F007C117D /* Frameworks */,
|
||||
97C146EC1CF9000F007C117D /* Resources */,
|
||||
9705A1C41CF9048500538489 /* Embed Frameworks */,
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
||||
FD477B45F6C2D4CD5E5F5D4C /* [CP] Embed Pods Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -238,6 +286,28 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||
};
|
||||
7961A0D505DA31A674AC7FD6 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
alwaysOutOfDate = 1;
|
||||
@@ -253,6 +323,45 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
|
||||
};
|
||||
B6EC4F9E6BB4749CD063C598 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
FD477B45F6C2D4CD5E5F5D4C /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
@@ -369,7 +478,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_VERSION = 5.0;
|
||||
@@ -379,13 +488,14 @@
|
||||
};
|
||||
331C8088294A63A400263BE5 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 923EC9622249E9CDBDFE9D06 /* Pods-RunnerTests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
@@ -396,13 +506,14 @@
|
||||
};
|
||||
331C8089294A63A400263BE5 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 274309643C09AEB895F5B282 /* Pods-RunnerTests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||
@@ -411,13 +522,14 @@
|
||||
};
|
||||
331C808A294A63A400263BE5 /* Profile */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 3DD5DA132CCC13F9168EA46C /* Pods-RunnerTests.profile.xcconfig */;
|
||||
buildSettings = {
|
||||
BUNDLE_LOADER = "$(TEST_HOST)";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
MARKETING_VERSION = 1.0;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever.RunnerTests;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.RunnerTests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 5.0;
|
||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||
@@ -428,7 +540,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
|
||||
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
@@ -485,7 +597,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
|
||||
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
@@ -549,7 +661,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
@@ -572,7 +684,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile.remever;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = ru.remever.mobile;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_VERSION = 5.0;
|
||||
|
||||
3
ios/Runner.xcworkspace/contents.xcworkspacedata
generated
@@ -4,4 +4,7 @@
|
||||
<FileRef
|
||||
location = "group:Runner.xcodeproj">
|
||||
</FileRef>
|
||||
<FileRef
|
||||
location = "group:Pods/Pods.xcodeproj">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
||||
@@ -1,122 +1 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-20x20@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-20x20@3x.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-29x29@1x.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-29x29@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-29x29@3x.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-40x40@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-40x40@3x.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "60x60",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-60x60@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "60x60",
|
||||
"idiom" : "iphone",
|
||||
"filename" : "Icon-App-60x60@3x.png",
|
||||
"scale" : "3x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-20x20@1x.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "20x20",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-20x20@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-29x29@1x.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "29x29",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-29x29@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-40x40@1x.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "40x40",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-40x40@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "76x76",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-76x76@1x.png",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"size" : "76x76",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-76x76@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "83.5x83.5",
|
||||
"idiom" : "ipad",
|
||||
"filename" : "Icon-App-83.5x83.5@2x.png",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"size" : "1024x1024",
|
||||
"idiom" : "ios-marketing",
|
||||
"filename" : "Icon-App-1024x1024@1x.png",
|
||||
"scale" : "1x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
||||
{"images":[{"size":"20x20","idiom":"iphone","filename":"Icon-App-20x20@2x.png","scale":"2x"},{"size":"20x20","idiom":"iphone","filename":"Icon-App-20x20@3x.png","scale":"3x"},{"size":"29x29","idiom":"iphone","filename":"Icon-App-29x29@1x.png","scale":"1x"},{"size":"29x29","idiom":"iphone","filename":"Icon-App-29x29@2x.png","scale":"2x"},{"size":"29x29","idiom":"iphone","filename":"Icon-App-29x29@3x.png","scale":"3x"},{"size":"40x40","idiom":"iphone","filename":"Icon-App-40x40@2x.png","scale":"2x"},{"size":"40x40","idiom":"iphone","filename":"Icon-App-40x40@3x.png","scale":"3x"},{"size":"57x57","idiom":"iphone","filename":"Icon-App-57x57@1x.png","scale":"1x"},{"size":"57x57","idiom":"iphone","filename":"Icon-App-57x57@2x.png","scale":"2x"},{"size":"60x60","idiom":"iphone","filename":"Icon-App-60x60@2x.png","scale":"2x"},{"size":"60x60","idiom":"iphone","filename":"Icon-App-60x60@3x.png","scale":"3x"},{"size":"20x20","idiom":"ipad","filename":"Icon-App-20x20@1x.png","scale":"1x"},{"size":"20x20","idiom":"ipad","filename":"Icon-App-20x20@2x.png","scale":"2x"},{"size":"29x29","idiom":"ipad","filename":"Icon-App-29x29@1x.png","scale":"1x"},{"size":"29x29","idiom":"ipad","filename":"Icon-App-29x29@2x.png","scale":"2x"},{"size":"40x40","idiom":"ipad","filename":"Icon-App-40x40@1x.png","scale":"1x"},{"size":"40x40","idiom":"ipad","filename":"Icon-App-40x40@2x.png","scale":"2x"},{"size":"50x50","idiom":"ipad","filename":"Icon-App-50x50@1x.png","scale":"1x"},{"size":"50x50","idiom":"ipad","filename":"Icon-App-50x50@2x.png","scale":"2x"},{"size":"72x72","idiom":"ipad","filename":"Icon-App-72x72@1x.png","scale":"1x"},{"size":"72x72","idiom":"ipad","filename":"Icon-App-72x72@2x.png","scale":"2x"},{"size":"76x76","idiom":"ipad","filename":"Icon-App-76x76@1x.png","scale":"1x"},{"size":"76x76","idiom":"ipad","filename":"Icon-App-76x76@2x.png","scale":"2x"},{"size":"83.5x83.5","idiom":"ipad","filename":"Icon-App-83.5x83.5@2x.png","scale":"2x"},{"size":"1024x1024","idiom":"ios-marketing","filename":"Icon-App-1024x1024@1x.png","scale":"1x"}],"info":{"version":1,"author":"xcode"}}
|
||||
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 295 B After Width: | Height: | Size: 447 B |
|
Before Width: | Height: | Size: 406 B After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 450 B After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 282 B After Width: | Height: | Size: 737 B |
|
Before Width: | Height: | Size: 462 B After Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 704 B After Width: | Height: | Size: 3.0 KiB |
|
Before Width: | Height: | Size: 406 B After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 586 B After Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 862 B After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 862 B After Width: | Height: | Size: 2.7 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 4.1 KiB |
|
After Width: | Height: | Size: 2.4 KiB |
|
After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 762 B After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 6.1 KiB |
64
lib/app.dart
@@ -18,6 +18,7 @@ import 'package:remever/components/notifiers/app_settings.dart';
|
||||
import 'package:remever/components/listeners/theme_listener.dart';
|
||||
import 'package:remever/i18n/strings.g.dart';
|
||||
import 'package:remever/theme/custom_theme.dart';
|
||||
import 'package:talker_flutter/talker_flutter.dart';
|
||||
|
||||
final Completer<GlobalKey<NavigatorState>> navKeyCompleter =
|
||||
Completer<GlobalKey<NavigatorState>>();
|
||||
@@ -142,42 +143,41 @@ class _MyAppState extends State<MyApp>
|
||||
locale: TranslationProvider.of(context).flutterLocale,
|
||||
supportedLocales: AppLocaleUtils.supportedLocales,
|
||||
localizationsDelegates: GlobalMaterialLocalizations.delegates,
|
||||
routerConfig: globalRouter.config(),
|
||||
|
||||
routerConfig: globalRouter.config(
|
||||
navigatorObservers:
|
||||
() => <NavigatorObserver>[TalkerRouteObserver(talker)],
|
||||
),
|
||||
builder: (BuildContext context, Widget? child) {
|
||||
return MediaQuery(
|
||||
data: MediaQuery.of(
|
||||
context,
|
||||
).copyWith(textScaler: TextScaler.noScaling),
|
||||
child: ChangeNotifierProvider<AppSettingsNotifier>(
|
||||
create: (_) => settingsNotifier,
|
||||
builder: (BuildContext context, Widget? nchild) {
|
||||
if (nchild != null) return nchild;
|
||||
return ChangeNotifierProvider<AppSettingsNotifier>(
|
||||
create: (_) => settingsNotifier,
|
||||
builder: (BuildContext context, Widget? nchild) {
|
||||
if (nchild != null) return nchild;
|
||||
|
||||
return Consumer<AppSettingsNotifier>(
|
||||
// TIP: должно убрать мерцание
|
||||
key: const Key('consumer AppSettingsNotifier'),
|
||||
child: child,
|
||||
builder: (
|
||||
BuildContext context,
|
||||
AppSettingsNotifier value,
|
||||
Widget? nchild,
|
||||
) {
|
||||
final Widget result = nchild ?? const SizedBox();
|
||||
return Consumer<AppSettingsNotifier>(
|
||||
// TIP: должно убрать мерцание
|
||||
key: const Key('consumer AppSettingsNotifier'),
|
||||
child: child,
|
||||
builder: (
|
||||
BuildContext context,
|
||||
AppSettingsNotifier value,
|
||||
Widget? nchild,
|
||||
) {
|
||||
final Widget result = nchild ?? const SizedBox();
|
||||
|
||||
if (value.showFps) {
|
||||
return Material(
|
||||
child: FPSWidget(
|
||||
alignment: Alignment.centerLeft,
|
||||
child: result,
|
||||
),
|
||||
);
|
||||
}
|
||||
if (value.showFps) {
|
||||
return Material(
|
||||
child: FPSWidget(
|
||||
alignment: Alignment.centerLeft,
|
||||
child: result,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
return result;
|
||||
},
|
||||
);
|
||||
},
|
||||
),
|
||||
return result;
|
||||
},
|
||||
);
|
||||
},
|
||||
);
|
||||
},
|
||||
);
|
||||
|
||||
@@ -8,6 +8,8 @@ import 'package:modal_bottom_sheet/modal_bottom_sheet.dart';
|
||||
import 'package:remever/common/resources.dart';
|
||||
import 'package:remever/components/extensions/context.dart';
|
||||
import 'package:remever/router.dart';
|
||||
import 'package:remever/services/logs/logs_service.dart';
|
||||
import 'package:talker/talker.dart';
|
||||
import 'events/events.dart';
|
||||
|
||||
///
|
||||
@@ -17,6 +19,17 @@ AppRouter get globalRouter {
|
||||
return GetIt.I.get<AppRouter>();
|
||||
}
|
||||
|
||||
///
|
||||
/// Логирование
|
||||
///
|
||||
LogsService get logger {
|
||||
return GetIt.I.get<LogsService>();
|
||||
}
|
||||
|
||||
Talker get talker {
|
||||
return GetIt.I.get<Talker>();
|
||||
}
|
||||
|
||||
///
|
||||
/// Показ тоста
|
||||
///
|
||||
@@ -38,7 +51,19 @@ void showSuccessToast(String text) {
|
||||
toastLength: Toast.LENGTH_SHORT,
|
||||
gravity: ToastGravity.TOP,
|
||||
timeInSecForIosWeb: 1,
|
||||
backgroundColor: AppColors.additional_blue,
|
||||
backgroundColor: Colors.green,
|
||||
textColor: AppColors.white,
|
||||
fontSize: 16,
|
||||
);
|
||||
}
|
||||
|
||||
void showInfoToast(String text) {
|
||||
Fluttertoast.showToast(
|
||||
msg: text,
|
||||
toastLength: Toast.LENGTH_SHORT,
|
||||
gravity: ToastGravity.TOP,
|
||||
timeInSecForIosWeb: 1,
|
||||
backgroundColor: AppColors.disabled,
|
||||
textColor: AppColors.white,
|
||||
fontSize: 16,
|
||||
);
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
// Package imports:
|
||||
import 'package:curl_logger_dio_interceptor/curl_logger_dio_interceptor.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:dio_smart_retry/dio_smart_retry.dart';
|
||||
import 'package:pretty_dio_logger/pretty_dio_logger.dart';
|
||||
import 'package:remever/common/functions.dart';
|
||||
import 'package:remever/common/resources.dart';
|
||||
import 'package:remever/common/storage.dart';
|
||||
import 'package:talker_dio_logger/talker_dio_logger_interceptor.dart';
|
||||
import 'package:talker_dio_logger/talker_dio_logger_settings.dart';
|
||||
|
||||
// Project imports:
|
||||
import '../../components/env.dart';
|
||||
@@ -16,17 +19,17 @@ InterceptorsWrapper get _auth {
|
||||
RequestOptions options,
|
||||
RequestInterceptorHandler handler,
|
||||
) async {
|
||||
// try {
|
||||
// String? token = await authSecStorage.read(key: StorageKeys.authToken);
|
||||
try {
|
||||
String? token = await authSecStorage.read(key: StorageKeys.accessToken);
|
||||
|
||||
// if (token != null) {
|
||||
// options.headers['Authorization'] = 'Bearer $token';
|
||||
// }
|
||||
// } catch (e) {
|
||||
// getIt<LogService>().log(
|
||||
// entity: LogEntity.error(message: 'Error to load access token $e'),
|
||||
// );
|
||||
// }
|
||||
if (token != null) {
|
||||
options.headers['Authorization'] = 'Bearer $token';
|
||||
}
|
||||
} catch (e) {
|
||||
// getIt<LogService>().log(
|
||||
// entity: LogEntity.error(message: 'Error to load access token $e'),
|
||||
// );
|
||||
}
|
||||
|
||||
return handler.next(options);
|
||||
},
|
||||
@@ -42,6 +45,14 @@ InterceptorsWrapper get _error {
|
||||
// String? token = await getIt<AuthService>().refresh();
|
||||
}
|
||||
|
||||
if (error.response != null) {
|
||||
try {
|
||||
showErrorToast(error.response?.data['message']);
|
||||
} catch (_) {
|
||||
showErrorToast(error.response?.data);
|
||||
}
|
||||
}
|
||||
|
||||
handler.next(error);
|
||||
},
|
||||
);
|
||||
@@ -62,15 +73,11 @@ Dio get apiClient {
|
||||
..add(_auth)
|
||||
..add(_error)
|
||||
..add(
|
||||
PrettyDioLogger(
|
||||
request: true,
|
||||
requestBody: true,
|
||||
requestHeader: true,
|
||||
responseBody: true,
|
||||
error: true,
|
||||
TalkerDioLogger(
|
||||
talker: talker,
|
||||
settings: const TalkerDioLoggerSettings(printRequestHeaders: true),
|
||||
),
|
||||
)
|
||||
..add(CurlLoggerDioInterceptor())
|
||||
..add(
|
||||
RetryInterceptor(
|
||||
dio: client,
|
||||
|
||||
@@ -103,6 +103,11 @@ class Bold14px extends TypographyTypeBold {
|
||||
double get size => 14;
|
||||
}
|
||||
|
||||
class Bold24px extends TypographyTypeBold {
|
||||
@override
|
||||
double get size => 24;
|
||||
}
|
||||
|
||||
class Bold34px extends TypographyTypeBold {
|
||||
@override
|
||||
double get size => 34;
|
||||
|
||||
2
lib/components/env/dev_env.dart
vendored
@@ -5,7 +5,7 @@ part of '../env.dart';
|
||||
///
|
||||
class DevEnv extends Env {
|
||||
@override
|
||||
Uri get url => Uri.parse('https://api.remever.dizoft-studio.ru');
|
||||
Uri get url => Uri.parse('https://remever.neojik.tech');
|
||||
|
||||
@override
|
||||
String get mode => 'dev';
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
// Package imports:
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:drift/drift.dart';
|
||||
import 'package:remever/common/functions.dart';
|
||||
import 'package:remever/common/typedef.dart';
|
||||
import 'package:remever/database/database.dart';
|
||||
import 'package:remever/database/tables.dart';
|
||||
import 'package:remever/models/collection_dto.dart';
|
||||
import 'package:remever/models/crud_collection_dto.dart';
|
||||
|
||||
part 'collections_dao.g.dart';
|
||||
|
||||
@@ -15,38 +19,97 @@ class CollectionsDao extends DatabaseAccessor<AppDatabase>
|
||||
CollectionsDao(super.attachedDatabase);
|
||||
|
||||
/// Получение коллекций из базы данных
|
||||
Stream<List<Collection>> getCollections() {
|
||||
return db.managers.collections.watch();
|
||||
Stream<List<Collection>> getCollections(String? search) {
|
||||
try {
|
||||
return db.managers.collections
|
||||
.filter((f) => f.title.contains(search ?? ''))
|
||||
.watch();
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе getCollections', e, st);
|
||||
|
||||
throw ('EXEPTION');
|
||||
}
|
||||
}
|
||||
|
||||
Future<Collection?> getCollectionById(String? id) {
|
||||
try {
|
||||
return db.managers.collections
|
||||
.filter((f) => f.id.equals(id))
|
||||
.getSingleOrNull();
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе getCollectionById', e, st);
|
||||
|
||||
throw ('EXEPTION');
|
||||
}
|
||||
}
|
||||
|
||||
/// Создание коллекции
|
||||
Future<void> createCollection(CollectionDto dto) async {
|
||||
await db.managers.collections.create(
|
||||
(o) => o(
|
||||
title: dto.title,
|
||||
desc: dto.desc,
|
||||
isPublic: Value<bool>(dto.isPublic),
|
||||
image: Value<String?>(dto.avatar),
|
||||
),
|
||||
);
|
||||
Future<void> createCollection(CrudCollectionDto dto) async {
|
||||
try {
|
||||
await db.managers.collections.create(
|
||||
(o) => o(
|
||||
title: dto.title,
|
||||
desc: dto.desc,
|
||||
isPublic: Value<bool>(dto.isPublic),
|
||||
image: Value<String?>(dto.avatar),
|
||||
),
|
||||
);
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе createCollection', e, st);
|
||||
}
|
||||
}
|
||||
|
||||
/// Синхронизация коллекций
|
||||
Future<void> syncCollectionFromApi(List<Json> data) async {
|
||||
for (final item in data) {
|
||||
try {
|
||||
await db.managers.collections.create(
|
||||
(o) => o(
|
||||
// id: Value<String>(item['id'].toString()),
|
||||
title: item['title'],
|
||||
desc: item['description'],
|
||||
isPublic: Value<bool>(item['is_public']),
|
||||
image: Value<String?>(null),
|
||||
createdAt: Value<DateTime>(DateTime.parse(item['created_at'])),
|
||||
updatedAt: Value<DateTime>(DateTime.parse(item['updated_at'])),
|
||||
),
|
||||
);
|
||||
} catch (e, st) {
|
||||
logger.logError(
|
||||
'Не смог добавить колекцию в методе syncCollectionFromApi',
|
||||
e,
|
||||
st,
|
||||
);
|
||||
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Обновление коллекции
|
||||
Future<void> updateCollection(CollectionDto dto, String id) async {
|
||||
await db.managers.collections
|
||||
.filter((f) => f.id(id))
|
||||
.update(
|
||||
(o) => o(
|
||||
title: Value<String>(dto.title),
|
||||
desc: Value<String>(dto.desc),
|
||||
isPublic: Value<bool>(dto.isPublic),
|
||||
image: Value<String?>(dto.avatar),
|
||||
),
|
||||
);
|
||||
Future<void> updateCollection(CrudCollectionDto dto, String id) async {
|
||||
try {
|
||||
await db.managers.collections
|
||||
.filter((f) => f.id(id))
|
||||
.update(
|
||||
(o) => o(
|
||||
title: Value<String>(dto.title),
|
||||
desc: Value<String>(dto.desc),
|
||||
isPublic: Value<bool>(dto.isPublic),
|
||||
image: Value<String?>(dto.avatar),
|
||||
),
|
||||
);
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе updateCollection', e, st);
|
||||
}
|
||||
}
|
||||
|
||||
/// Удаление коллекции
|
||||
Future<void> deleteCollection(String id) async {
|
||||
await db.managers.collections.filter((f) => f.id(id)).delete();
|
||||
try {
|
||||
await db.managers.collections.filter((f) => f.id(id)).delete();
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе deleteCollection', e, st);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
96
lib/database/dao/tickets_dao.dart
Normal file
@@ -0,0 +1,96 @@
|
||||
// Package imports:
|
||||
import 'package:drift/drift.dart';
|
||||
import 'package:remever/common/functions.dart';
|
||||
import 'package:remever/database/database.dart';
|
||||
import 'package:remever/database/tables.dart';
|
||||
import 'package:remever/models/create_ticket_dto.dart';
|
||||
|
||||
part 'tickets_dao.g.dart';
|
||||
|
||||
@DriftAccessor(tables: <Type>[Tickets])
|
||||
class TicketsDao extends DatabaseAccessor<AppDatabase> with _$TicketsDaoMixin {
|
||||
///
|
||||
/// Репозиторий для работы с билетами
|
||||
///
|
||||
TicketsDao(super.attachedDatabase);
|
||||
|
||||
/// Получение билетов из базы данных
|
||||
Stream<List<Ticket>> getTickets(String collectionId) {
|
||||
try {
|
||||
return db.managers.tickets
|
||||
.filter((f) => f.collectionId.id(collectionId))
|
||||
.watch();
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе getTickets', e, st);
|
||||
|
||||
throw ('EXEPTION');
|
||||
}
|
||||
}
|
||||
|
||||
/// Получение билетов из базы данных
|
||||
Future<int> getTicketsInCollectionCount(String collectionId) async {
|
||||
try {
|
||||
return (await db.managers.tickets
|
||||
.filter((f) => f.collectionId.id(collectionId))
|
||||
.get())
|
||||
.length;
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе getTicketsInCollectionCount', e, st);
|
||||
|
||||
throw ('EXEPTION');
|
||||
}
|
||||
}
|
||||
|
||||
/// Удаление билета
|
||||
Future<void> removeTicket(String id) async {
|
||||
try {
|
||||
await db.transaction(() {
|
||||
return db.managers.tickets.filter((f) => f.id(id)).delete();
|
||||
});
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе deleteTicket', e, st);
|
||||
}
|
||||
}
|
||||
|
||||
/// Создание билета
|
||||
Future<void> createTicket(CreateTicketDto dto) async {
|
||||
try {
|
||||
final TicketsCompanion companion = TicketsCompanion.insert(
|
||||
question: dto.question!,
|
||||
answer: dto.answer!,
|
||||
collectionId: dto.collection!.id,
|
||||
questionImage: Value<String?>(dto.questionImage),
|
||||
answerImage: Value<String?>(dto.answerImage),
|
||||
);
|
||||
|
||||
await db.managers.tickets.create((o) => companion);
|
||||
|
||||
if (dto.needRevert != null && dto.needRevert!) {
|
||||
/// Создаем обратную карточку где ответ == вопрос и вопрос == ответ
|
||||
|
||||
final TicketsCompanion revertCompanion = TicketsCompanion.insert(
|
||||
answer: dto.question!,
|
||||
question: dto.answer!,
|
||||
collectionId: dto.collection!.id,
|
||||
answerImage: Value<String?>(dto.questionImage),
|
||||
questionImage: Value<String?>(dto.answerImage),
|
||||
);
|
||||
|
||||
await db.managers.tickets.create((o) => revertCompanion);
|
||||
}
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе createTicket', e, st);
|
||||
}
|
||||
}
|
||||
|
||||
/// Перенос билета с одной коллекции в другую
|
||||
Future<void> transferTicket(String ticketId, String newCollectionId) async {
|
||||
try {
|
||||
await db.managers.tickets
|
||||
.filter((f) => f.id(ticketId))
|
||||
.update((o) => o(collectionId: Value<String>(newCollectionId)));
|
||||
} catch (e, st) {
|
||||
logger.logError('Ошибка в методе transferTicket', e, st);
|
||||
}
|
||||
}
|
||||
}
|
||||
9
lib/database/dao/tickets_dao.g.dart
Normal file
@@ -0,0 +1,9 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'tickets_dao.dart';
|
||||
|
||||
// ignore_for_file: type=lint
|
||||
mixin _$TicketsDaoMixin on DatabaseAccessor<AppDatabase> {
|
||||
$CollectionsTable get collections => attachedDatabase.collections;
|
||||
$TicketsTable get tickets => attachedDatabase.tickets;
|
||||
}
|
||||
@@ -2,6 +2,7 @@ import 'package:drift/drift.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:injectable/injectable.dart';
|
||||
import 'package:remever/database/dao/collections_dao.dart';
|
||||
import 'package:remever/database/dao/tickets_dao.dart';
|
||||
import 'package:remever/database/tables.dart';
|
||||
import 'connection/connection.dart' as impl;
|
||||
import 'package:uuid/uuid.dart';
|
||||
@@ -10,8 +11,8 @@ part 'database.g.dart';
|
||||
|
||||
@DriftDatabase(
|
||||
include: <String>{'sql.drift'},
|
||||
daos: <Type>[CollectionsDao],
|
||||
tables: <Type>[Collections],
|
||||
daos: <Type>[CollectionsDao, TicketsDao],
|
||||
tables: <Type>[Collections, Tickets],
|
||||
)
|
||||
@Singleton()
|
||||
final class AppDatabase extends _$AppDatabase {
|
||||
|
||||
@@ -71,3 +71,17 @@ class Collections extends Table with _UuidPrimaryKey, _Timestampable {
|
||||
BoolColumn get isPublic => boolean().withDefault(Constant(false))();
|
||||
BoolColumn get includeInTraining => boolean().withDefault(Constant(false))();
|
||||
}
|
||||
|
||||
///
|
||||
///
|
||||
///
|
||||
@DataClassName('Ticket')
|
||||
class Tickets extends Table with _UuidPrimaryKey, _Timestampable {
|
||||
TextColumn get question => text()();
|
||||
TextColumn get questionImage => text().named('question_image').nullable()();
|
||||
TextColumn get answer => text()();
|
||||
TextColumn get answerImage => text().named('answer_image').nullable()();
|
||||
TextColumn get collectionId =>
|
||||
text().references(Collections, #id, onDelete: KeyAction.cascade)();
|
||||
RealColumn get progress => real().withDefault(Constant(0))();
|
||||
}
|
||||
|
||||