mukodo cucc

This commit is contained in:
Márton Kiss 2023-05-27 08:55:58 +02:00
parent 1558794e93
commit c90039e437
55 changed files with 454 additions and 669 deletions

View File

@ -1,7 +1,7 @@
PODS: PODS:
- app_group_directory (1.0.0): - app_group_directory (1.0.0):
- Flutter - Flutter
- background_fetch (1.1.5): - background_fetch (1.1.6):
- Flutter - Flutter
- connectivity_plus (0.0.1): - connectivity_plus (0.0.1):
- Flutter - Flutter
@ -57,8 +57,6 @@ PODS:
- FMDB/standard (2.7.5) - FMDB/standard (2.7.5)
- home_widget (0.0.1): - home_widget (0.0.1):
- Flutter - Flutter
- image_crop (0.0.1):
- Flutter
- image_picker_ios (0.0.1): - image_picker_ios (0.0.1):
- Flutter - Flutter
- libwebp (1.2.4): - libwebp (1.2.4):
@ -77,8 +75,9 @@ PODS:
- Mantle/extobjc (2.2.0) - Mantle/extobjc (2.2.0)
- open_file (0.0.1): - open_file (0.0.1):
- Flutter - Flutter
- path_provider_ios (0.0.1): - path_provider_foundation (0.0.1):
- Flutter - Flutter
- FlutterMacOS
- permission_handler_apple (9.0.4): - permission_handler_apple (9.0.4):
- Flutter - Flutter
- quick_actions_ios (0.0.1): - quick_actions_ios (0.0.1):
@ -92,7 +91,7 @@ PODS:
- SDWebImage/Core (~> 5.13) - SDWebImage/Core (~> 5.13)
- share_plus (0.0.1): - share_plus (0.0.1):
- Flutter - Flutter
- sqflite (0.0.2): - sqflite (0.0.3):
- Flutter - Flutter
- FMDB (>= 2.7.5) - FMDB (>= 2.7.5)
- SwiftyGif (5.4.3) - SwiftyGif (5.4.3)
@ -115,11 +114,10 @@ DEPENDENCIES:
- flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`) - flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`)
- flutter_native_image (from `.symlinks/plugins/flutter_native_image/ios`) - flutter_native_image (from `.symlinks/plugins/flutter_native_image/ios`)
- home_widget (from `.symlinks/plugins/home_widget/ios`) - home_widget (from `.symlinks/plugins/home_widget/ios`)
- image_crop (from `.symlinks/plugins/image_crop/ios`)
- image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
- live_activities (from `.symlinks/plugins/live_activities/ios`) - live_activities (from `.symlinks/plugins/live_activities/ios`)
- open_file (from `.symlinks/plugins/open_file/ios`) - open_file (from `.symlinks/plugins/open_file/ios`)
- path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
- permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`)
- quick_actions_ios (from `.symlinks/plugins/quick_actions_ios/ios`) - quick_actions_ios (from `.symlinks/plugins/quick_actions_ios/ios`)
- share_plus (from `.symlinks/plugins/share_plus/ios`) - share_plus (from `.symlinks/plugins/share_plus/ios`)
@ -162,16 +160,14 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/flutter_native_image/ios" :path: ".symlinks/plugins/flutter_native_image/ios"
home_widget: home_widget:
:path: ".symlinks/plugins/home_widget/ios" :path: ".symlinks/plugins/home_widget/ios"
image_crop:
:path: ".symlinks/plugins/image_crop/ios"
image_picker_ios: image_picker_ios:
:path: ".symlinks/plugins/image_picker_ios/ios" :path: ".symlinks/plugins/image_picker_ios/ios"
live_activities: live_activities:
:path: ".symlinks/plugins/live_activities/ios" :path: ".symlinks/plugins/live_activities/ios"
open_file: open_file:
:path: ".symlinks/plugins/open_file/ios" :path: ".symlinks/plugins/open_file/ios"
path_provider_ios: path_provider_foundation:
:path: ".symlinks/plugins/path_provider_ios/ios" :path: ".symlinks/plugins/path_provider_foundation/darwin"
permission_handler_apple: permission_handler_apple:
:path: ".symlinks/plugins/permission_handler_apple/ios" :path: ".symlinks/plugins/permission_handler_apple/ios"
quick_actions_ios: quick_actions_ios:
@ -194,8 +190,8 @@ CHECKOUT OPTIONS:
SPEC CHECKSUMS: SPEC CHECKSUMS:
app_group_directory: 7bf9f8f9819ead554de29da7c25fb7a680d6a9a0 app_group_directory: 7bf9f8f9819ead554de29da7c25fb7a680d6a9a0
background_fetch: 9a9963128952bfdd197e21786983c7c7a30e1478 background_fetch: bc9b44b0bf8b434e282a2ac9be8662800a0296ed
connectivity_plus: 413a8857dd5d9f1c399a39130850d02fe0feaf7e connectivity_plus: 07c49e96d7fc92bc9920617b83238c4d178b446a
DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
file_picker: 817ab1d8cd2da9d2da412a417162deee3500fc95 file_picker: 817ab1d8cd2da9d2da412a417162deee3500fc95
@ -206,25 +202,24 @@ SPEC CHECKSUMS:
flutter_native_image: 9c0b7451838484458e5b0fae007b86a4c2d4bdfe flutter_native_image: 9c0b7451838484458e5b0fae007b86a4c2d4bdfe
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
home_widget: 2829415127ee92e876f816cbbe44c0b6601b8a37 home_widget: 2829415127ee92e876f816cbbe44c0b6601b8a37
image_crop: e0a67085d3ebf3cf46ca46d61c53a082507b0bc3 image_picker_ios: 4a8aadfbb6dc30ad5141a2ce3832af9214a705b5
image_picker_ios: 58b9c4269cb176f89acea5e5d043c9358f2d25f8
libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef
live_activities: 9ff56a06a2d43ecd68f56deeed13b18a8304789c live_activities: 9ff56a06a2d43ecd68f56deeed13b18a8304789c
Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d
open_file: 02eb5cb6b21264bd3a696876f5afbfb7ca4f4b7d open_file: 02eb5cb6b21264bd3a696876f5afbfb7ca4f4b7d
path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8
permission_handler_apple: 44366e37eaf29454a1e7b1b7d736c2cceaeb17ce permission_handler_apple: 44366e37eaf29454a1e7b1b7d736c2cceaeb17ce
quick_actions_ios: d211ffc5d7619ace7e9fb1800540b14a1aafe940 quick_actions_ios: 9e80dcfadfbc5d47d9cf8f47bcf428b11cf383d4
ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
SDWebImage: 72f86271a6f3139cc7e4a89220946489d4b9a866 SDWebImage: 72f86271a6f3139cc7e4a89220946489d4b9a866
SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0 SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68 share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
SwiftyGif: 6c3eafd0ce693cad58bb63d2b2fb9bacb8552780 SwiftyGif: 6c3eafd0ce693cad58bb63d2b2fb9bacb8552780
uni_links: d97da20c7701486ba192624d99bffaaffcfc298a uni_links: d97da20c7701486ba192624d99bffaaffcfc298a
url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6 workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
PODFILE CHECKSUM: 862f939bb7e5390bdb8b2534eb81a9457ea9fbdc PODFILE CHECKSUM: efe5e2e257c61a1c3d5be693ef1a8ea1c4b81d8f
COCOAPODS: 1.12.0 COCOAPODS: 1.12.1

View File

@ -303,6 +303,7 @@
files = ( files = (
); );
inputPaths = ( inputPaths = (
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
); );
name = "Thin Binary"; name = "Thin Binary";
outputPaths = ( outputPaths = (
@ -476,15 +477,18 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; CURRENT_PROJECT_VERSION = 195;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
ENABLE_BITCODE = NO; ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_FILE = Runner/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = reFilc;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education";
LD_RUNPATH_SEARCH_PATHS = ( LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo; MARKETING_VERSION = 3.6.0;
PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0; SWIFT_VERSION = 5.0;
@ -506,7 +510,7 @@
CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
GCC_C_LANGUAGE_STANDARD = gnu11; GCC_C_LANGUAGE_STANDARD = gnu11;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = livecard/Info.plist; INFOPLIST_FILE = livecard/Info.plist;
@ -522,7 +526,7 @@
MARKETING_VERSION = 1.0; MARKETING_VERSION = 1.0;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES; MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo.livecardpro; PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo.livecardpro;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = ""; PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES; SKIP_INSTALL = YES;
@ -548,7 +552,7 @@
CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
GCC_C_LANGUAGE_STANDARD = gnu11; GCC_C_LANGUAGE_STANDARD = gnu11;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = livecard/Info.plist; INFOPLIST_FILE = livecard/Info.plist;
@ -563,7 +567,7 @@
); );
MARKETING_VERSION = 1.0; MARKETING_VERSION = 1.0;
MTL_FAST_MATH = YES; MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo.livecardpro; PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo.livecardpro;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = ""; PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES; SKIP_INSTALL = YES;
@ -588,7 +592,7 @@
CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic; CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1; CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
GCC_C_LANGUAGE_STANDARD = gnu11; GCC_C_LANGUAGE_STANDARD = gnu11;
GENERATE_INFOPLIST_FILE = YES; GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = livecard/Info.plist; INFOPLIST_FILE = livecard/Info.plist;
@ -603,7 +607,7 @@
); );
MARKETING_VERSION = 1.0; MARKETING_VERSION = 1.0;
MTL_FAST_MATH = YES; MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo.livecardpro; PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo.livecardpro;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = ""; PROVISIONING_PROFILE_SPECIFIER = "";
SKIP_INSTALL = YES; SKIP_INSTALL = YES;
@ -731,15 +735,18 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; CURRENT_PROJECT_VERSION = 195;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
ENABLE_BITCODE = NO; ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_FILE = Runner/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = reFilc;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education";
LD_RUNPATH_SEARCH_PATHS = ( LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo; MARKETING_VERSION = 3.6.0;
PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_OPTIMIZATION_LEVEL = "-Onone";
@ -756,15 +763,18 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_MODULES = YES;
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements;
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; CURRENT_PROJECT_VERSION = 195;
DEVELOPMENT_TEAM = MYUTW2GF6J; DEVELOPMENT_TEAM = 48XS7JAZB7;
ENABLE_BITCODE = NO; ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_FILE = Runner/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = reFilc;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education";
LD_RUNPATH_SEARCH_PATHS = ( LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)", "$(inherited)",
"@executable_path/Frameworks", "@executable_path/Frameworks",
); );
PRODUCT_BUNDLE_IDENTIFIER = hu.filc.naplo; MARKETING_VERSION = 3.6.0;
PRODUCT_BUNDLE_IDENTIFIER = com.refilc.naplo;
PRODUCT_NAME = "$(TARGET_NAME)"; PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
SWIFT_VERSION = 5.0; SWIFT_VERSION = 5.0;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 620 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

View File

@ -1,208 +1,14 @@
{ {
"images" : [ "images" : [
{ {
"size": "60x60", "filename" : "reFilc_Logo.png",
"expected-size": "180", "idiom" : "universal",
"filename": "180.png", "platform" : "ios",
"folder": "Assets.xcassets/AppIcon.appiconset/", "size" : "1024x1024"
"idiom": "iphone",
"scale": "3x"
},
{
"size": "40x40",
"expected-size": "80",
"filename": "80.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "2x"
},
{
"size": "40x40",
"expected-size": "120",
"filename": "120.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "3x"
},
{
"size": "60x60",
"expected-size": "120",
"filename": "120.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "2x"
},
{
"size": "57x57",
"expected-size": "57",
"filename": "57.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "1x"
},
{
"size": "29x29",
"expected-size": "58",
"filename": "58.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "2x"
},
{
"size": "29x29",
"expected-size": "29",
"filename": "29.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "1x"
},
{
"size": "29x29",
"expected-size": "87",
"filename": "87.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "3x"
},
{
"size": "57x57",
"expected-size": "114",
"filename": "114.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "2x"
},
{
"size": "20x20",
"expected-size": "40",
"filename": "40.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "2x"
},
{
"size": "20x20",
"expected-size": "60",
"filename": "60.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "iphone",
"scale": "3x"
},
{
"size": "1024x1024",
"filename": "1024.png",
"expected-size": "1024",
"idiom": "ios-marketing",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"scale": "1x"
},
{
"size": "40x40",
"expected-size": "80",
"filename": "80.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "72x72",
"expected-size": "72",
"filename": "72.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "76x76",
"expected-size": "152",
"filename": "152.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "50x50",
"expected-size": "100",
"filename": "100.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "29x29",
"expected-size": "58",
"filename": "58.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "76x76",
"expected-size": "76",
"filename": "76.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "29x29",
"expected-size": "29",
"filename": "29.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "50x50",
"expected-size": "50",
"filename": "50.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "72x72",
"expected-size": "144",
"filename": "144.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "40x40",
"expected-size": "40",
"filename": "40.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "83.5x83.5",
"expected-size": "167",
"filename": "167.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
},
{
"size": "20x20",
"expected-size": "20",
"filename": "20.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "1x"
},
{
"size": "20x20",
"expected-size": "40",
"filename": "40.png",
"folder": "Assets.xcassets/AppIcon.appiconset/",
"idiom": "ipad",
"scale": "2x"
} }
], ],
"info" : { "info" : {
"version": 1, "author" : "xcode",
"author": "xcode" "version" : 1
} }
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 593 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 590 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 931 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 KiB

View File

@ -2,6 +2,10 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
<string>com.transistorsoft.fetch</string>
</array>
<key>CADisableMinimumFrameDurationOnPhone</key> <key>CADisableMinimumFrameDurationOnPhone</key>
<true/> <true/>
<key>CFBundleDevelopmentRegion</key> <key>CFBundleDevelopmentRegion</key>
@ -61,10 +65,6 @@
<string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string> <string>UIInterfaceOrientationLandscapeRight</string>
</array> </array>
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
<string>com.transistorsoft.fetch</string>
</array>
<key>UIViewControllerBasedStatusBarAppearance</key> <key>UIViewControllerBasedStatusBarAppearance</key>
<false/> <false/>
</dict> </dict>

View File

@ -2,15 +2,7 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>aps-environment</key>
<string>development</string>
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:api.filcnaplo.hu</string>
</array>
<key>com.apple.security.application-groups</key> <key>com.apple.security.application-groups</key>
<array> <array/>
<string>group.filcnaplo.livecard</string>
</array>
</dict> </dict>
</plist> </plist>

View File

@ -7,7 +7,5 @@
<key>NSExtensionPointIdentifier</key> <key>NSExtensionPointIdentifier</key>
<string>com.apple.widgetkit-extension</string> <string>com.apple.widgetkit-extension</string>
</dict> </dict>
<key>NSSupportsLiveActivities</key>
<true/>
</dict> </dict>
</plist> </plist>

View File

@ -3,8 +3,6 @@
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>com.apple.security.application-groups</key> <key>com.apple.security.application-groups</key>
<array> <array/>
<string>group.filcnaplo.livecard</string>
</array>
</dict> </dict>
</plist> </plist>

View File

@ -64,7 +64,6 @@ dependencies:
workmanager: ^0.5.1 workmanager: ^0.5.1
flutter_svg: ^1.1.6 flutter_svg: ^1.1.6
image_picker: ^0.8.6 image_picker: ^0.8.6
image_crop: ^0.4.1
animations: ^2.0.1 animations: ^2.0.1
background_fetch: ^1.1.5 background_fetch: ^1.1.5
flutter_local_notifications: ^14.1.0 flutter_local_notifications: ^14.1.0

View File

@ -3,7 +3,7 @@ import 'package:filcnaplo_mobile_ui/common/profile_image/profile_image.dart';
import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.dart'; import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:sliding_sheet/sliding_sheet.dart'; import 'package:wtf_sliding_sheet/wtf_sliding_sheet.dart';
class ProfileButton extends StatelessWidget { class ProfileButton extends StatelessWidget {
const ProfileButton({Key? key, required this.child}) : super(key: key); const ProfileButton({Key? key, required this.child}) : super(key: key);
@ -12,10 +12,13 @@ class ProfileButton extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final bool pMode = Provider.of<SettingsProvider>(context, listen: false).presentationMode; final bool pMode =
Provider.of<SettingsProvider>(context, listen: false).presentationMode;
return ProfileImage( return ProfileImage(
backgroundColor: !pMode ? child.backgroundColor : Theme.of(context).colorScheme.secondary, backgroundColor: !pMode
? child.backgroundColor
: Theme.of(context).colorScheme.secondary,
heroTag: child.heroTag, heroTag: child.heroTag,
key: child.key, key: child.key,
name: !pMode ? child.name : "Béla", name: !pMode ? child.name : "Béla",

View File

@ -1,7 +1,9 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:sliding_sheet/sliding_sheet.dart' as ss; import 'package:wtf_sliding_sheet/wtf_sliding_sheet.dart' as ss;
void showSlidingBottomSheet({required Widget child, required BuildContext context}) => ss.showSlidingBottomSheet(context, void showSlidingBottomSheet(
{required Widget child, required BuildContext context}) =>
ss.showSlidingBottomSheet(context,
useRootNavigator: true, useRootNavigator: true,
builder: (context) => ss.SlidingSheetDialog( builder: (context) => ss.SlidingSheetDialog(
cornerRadius: 16, cornerRadius: 16,
@ -36,7 +38,9 @@ void showSlidingBottomSheet({required Widget child, required BuildContext contex
builder: (context, state) { builder: (context, state) {
return Material( return Material(
color: Theme.of(context).colorScheme.background, color: Theme.of(context).colorScheme.background,
child: Padding(padding: const EdgeInsets.fromLTRB(12.0, 0, 12.0, 8.0), child: child), child: Padding(
padding: const EdgeInsets.fromLTRB(12.0, 0, 12.0, 8.0),
child: child),
); );
}, },
)); ));

View File

@ -21,19 +21,21 @@ import 'package:filcnaplo_mobile_ui/common/screens.i18n.dart';
import 'package:filcnaplo/api/providers/news_provider.dart'; import 'package:filcnaplo/api/providers/news_provider.dart';
import 'package:filcnaplo/api/providers/sync.dart'; import 'package:filcnaplo/api/providers/sync.dart';
import 'package:home_widget/home_widget.dart'; import 'package:home_widget/home_widget.dart';
import 'package:sliding_sheet/sliding_sheet.dart'; import 'package:wtf_sliding_sheet/wtf_sliding_sheet.dart';
import 'package:background_fetch/background_fetch.dart'; import 'package:background_fetch/background_fetch.dart';
class NavigationScreen extends StatefulWidget { class NavigationScreen extends StatefulWidget {
const NavigationScreen({Key? key}) : super(key: key); const NavigationScreen({Key? key}) : super(key: key);
static NavigationScreenState? of(BuildContext context) => context.findAncestorStateOfType<NavigationScreenState>(); static NavigationScreenState? of(BuildContext context) =>
context.findAncestorStateOfType<NavigationScreenState>();
@override @override
NavigationScreenState createState() => NavigationScreenState(); NavigationScreenState createState() => NavigationScreenState();
} }
class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingObserver { class NavigationScreenState extends State<NavigationScreen>
with WidgetsBindingObserver {
late NavigationRoute selected; late NavigationRoute selected;
List<String> initializers = []; List<String> initializers = [];
final _navigatorState = GlobalKey<NavigatorState>(); final _navigatorState = GlobalKey<NavigatorState>();
@ -65,7 +67,8 @@ class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingO
Navigator.of(context).popUntil((route) => route.isFirst); Navigator.of(context).popUntil((route) => route.isFirst);
setPage("timetable"); setPage("timetable");
_navigatorState.currentState?.pushNamedAndRemoveUntil("timetable", (_) => false); _navigatorState.currentState
?.pushNamedAndRemoveUntil("timetable", (_) => false);
} else if (uri.scheme == "settings" && uri.authority == "premium") { } else if (uri.scheme == "settings" && uri.authority == "premium") {
Navigator.of(context).popUntil((route) => route.isFirst); Navigator.of(context).popUntil((route) => route.isFirst);
@ -145,7 +148,8 @@ class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingO
WidgetsBinding.instance.addObserver(this); WidgetsBinding.instance.addObserver(this);
// set client User-Agent // set client User-Agent
Provider.of<KretaClient>(context, listen: false).userAgent = settings.config.userAgent; Provider.of<KretaClient>(context, listen: false).userAgent =
settings.config.userAgent;
// Get news // Get news
newsProvider = Provider.of<NewsProvider>(context, listen: false); newsProvider = Provider.of<NewsProvider>(context, listen: false);
@ -169,8 +173,10 @@ class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingO
@override @override
void didChangePlatformBrightness() { void didChangePlatformBrightness() {
if (settings.theme == ThemeMode.system) { if (settings.theme == ThemeMode.system) {
Brightness? brightness = WidgetsBinding.instance.window.platformBrightness; Brightness? brightness =
Provider.of<ThemeModeObserver>(context, listen: false).changeTheme(brightness == Brightness.light ? ThemeMode.light : ThemeMode.dark); WidgetsBinding.instance.window.platformBrightness;
Provider.of<ThemeModeObserver>(context, listen: false).changeTheme(
brightness == Brightness.light ? ThemeMode.light : ThemeMode.dark);
} }
super.didChangePlatformBrightness(); super.didChangePlatformBrightness();
} }
@ -187,7 +193,8 @@ class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingO
WidgetsBinding.instance.addPostFrameCallback((_) { WidgetsBinding.instance.addPostFrameCallback((_) {
if (newsProvider.show) { if (newsProvider.show) {
newsProvider.lock(); newsProvider.lock();
NewsView.show(newsProvider.news[newsProvider.state], context: context).then((value) => newsProvider.release()); NewsView.show(newsProvider.news[newsProvider.state], context: context)
.then((value) => newsProvider.release());
} }
}); });
@ -223,7 +230,8 @@ class NavigationScreenState extends State<NavigationScreen> with WidgetsBindingO
Navigator( Navigator(
key: _navigatorState, key: _navigatorState,
initialRoute: selected.name, initialRoute: selected.name,
onGenerateRoute: (settings) => navigationRouteHandler(settings), onGenerateRoute: (settings) =>
navigationRouteHandler(settings),
), ),
], ],
), ),

View File

@ -28,7 +28,6 @@ dependencies:
flutter_markdown: ^0.6.5 flutter_markdown: ^0.6.5
animations: ^2.0.1 animations: ^2.0.1
animated_list_plus: ^0.5.0 animated_list_plus: ^0.5.0
sliding_sheet: ^0.5.2
confetti: ^0.6.0 confetti: ^0.6.0
live_activities: ^1.0.0 live_activities: ^1.0.0
animated_flip_counter: ^0.2.5 animated_flip_counter: ^0.2.5
@ -39,6 +38,7 @@ dependencies:
dropdown_button2: ^1.8.9 dropdown_button2: ^1.8.9
flutter_svg: ^1.1.6 flutter_svg: ^1.1.6
background_fetch: ^1.1.5 background_fetch: ^1.1.5
wtf_sliding_sheet: ^1.0.0
dev_dependencies: dev_dependencies:
flutter_lints: ^1.0.0 flutter_lints: ^1.0.0

View File

@ -13,20 +13,22 @@ import 'package:flutter_feather_icons/flutter_feather_icons.dart';
import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.i18n.dart'; import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.i18n.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:image_picker/image_picker.dart'; import 'package:image_picker/image_picker.dart';
import 'package:image_crop/image_crop.dart';
class UserMenuProfilePic extends StatelessWidget { class UserMenuProfilePic extends StatelessWidget {
const UserMenuProfilePic({Key? key}) : super(key: key); const UserMenuProfilePic({Key? key}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
if (!Provider.of<PremiumProvider>(context).hasScope(PremiumScopes.nickname)) { if (!Provider.of<PremiumProvider>(context)
.hasScope(PremiumScopes.nickname)) {
return const SizedBox(); return const SizedBox();
} }
return BottomSheetMenuItem( return BottomSheetMenuItem(
onPressed: () { onPressed: () {
showDialog(context: context, builder: (context) => const UserProfilePicEditor()); showDialog(
context: context,
builder: (context) => const UserProfilePicEditor());
}, },
icon: const Icon(FeatherIcons.camera), icon: const Icon(FeatherIcons.camera),
title: Text("edit_profile_picture".i18n), title: Text("edit_profile_picture".i18n),
@ -44,7 +46,6 @@ class UserProfilePicEditor extends StatefulWidget {
class _UserProfilePicEditorState extends State<UserProfilePicEditor> { class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
late final UserProvider user; late final UserProvider user;
final cropKey = GlobalKey<CropState>();
File? _file; File? _file;
File? _sample; File? _sample;
File? _lastCropped; File? _lastCropped;
@ -56,16 +57,10 @@ class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
if (image == null) return; if (image == null) return;
File imageFile = File(image.path); File imageFile = File(image.path);
final sample = await ImageCrop.sampleImage(
file: imageFile,
preferredSize: context.size!.longestSide.ceil(),
);
_sample?.delete(); _sample?.delete();
_file?.delete(); _file?.delete();
setState(() { setState(() {
_sample = sample;
_file = imageFile; _file = imageFile;
}); });
} on PlatformException catch (e) { } on PlatformException catch (e) {
@ -73,16 +68,6 @@ class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
} }
} }
Widget cropImageWidget() {
return SizedBox(
height: 300,
child: Crop.file(
_sample!,
key: cropKey,
aspectRatio: 1.0,
));
}
Widget openImageWidget() { Widget openImageWidget() {
return InkWell( return InkWell(
customBorder: RoundedRectangleBorder( customBorder: RoundedRectangleBorder(
@ -90,18 +75,22 @@ class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
), ),
onTap: () => pickImage(), onTap: () => pickImage(),
child: Container( child: Container(
decoration: BoxDecoration(border: Border.all(color: Colors.grey), borderRadius: BorderRadius.circular(14.0)), decoration: BoxDecoration(
border: Border.all(color: Colors.grey),
borderRadius: BorderRadius.circular(14.0)),
width: double.infinity, width: double.infinity,
padding: const EdgeInsets.symmetric(vertical: 32.0, horizontal: 8.0), padding: const EdgeInsets.symmetric(vertical: 32.0, horizontal: 8.0),
child: Column( child: Column(
children: [ children: [
Text( Text(
"click_here".i18n, "click_here".i18n,
style: const TextStyle(fontSize: 22.0, fontWeight: FontWeight.w600), style:
const TextStyle(fontSize: 22.0, fontWeight: FontWeight.w600),
), ),
Text( Text(
"select_profile_picture".i18n, "select_profile_picture".i18n,
style: const TextStyle(fontSize: 14.0, fontWeight: FontWeight.w500), style:
const TextStyle(fontSize: 14.0, fontWeight: FontWeight.w500),
) )
], ],
), ),
@ -110,34 +99,13 @@ class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
} }
Future<void> _cropImage() async { Future<void> _cropImage() async {
final scale = cropKey.currentState!.scale; List<int> imageBytes = await _file!.readAsBytes();
final area = cropKey.currentState!.area;
if (area == null || _file == null) {
return;
}
final sample = await ImageCrop.sampleImage(
file: _file!,
preferredSize: (2000 / scale).round(),
);
final file = await ImageCrop.cropImage(
file: sample,
area: area,
);
sample.delete();
_lastCropped?.delete();
_lastCropped = file;
List<int> imageBytes = await _lastCropped!.readAsBytes();
String base64Image = base64Encode(imageBytes); String base64Image = base64Encode(imageBytes);
user.user!.picture = base64Image; user.user!.picture = base64Image;
Provider.of<DatabaseProvider>(context, listen: false).store.storeUser(user.user!); Provider.of<DatabaseProvider>(context, listen: false)
.store
.storeUser(user.user!);
Provider.of<UserProvider>(context, listen: false).refresh(); Provider.of<UserProvider>(context, listen: false).refresh();
debugPrint('$file');
} }
@override @override
@ -157,25 +125,30 @@ class _UserProfilePicEditorState extends State<UserProfilePicEditor> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return AlertDialog( return AlertDialog(
shape: const RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(14.0))), shape: const RoundedRectangleBorder(
borderRadius: BorderRadius.all(Radius.circular(14.0))),
contentPadding: const EdgeInsets.only(top: 10.0), contentPadding: const EdgeInsets.only(top: 10.0),
title: Text("edit_profile_picture".i18n), title: Text("edit_profile_picture".i18n),
content: Column( content: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
Padding( Padding(
padding: const EdgeInsets.symmetric(vertical: 12.0, horizontal: 24.0), padding:
child: _sample == null ? openImageWidget() : cropImageWidget(), const EdgeInsets.symmetric(vertical: 12.0, horizontal: 24.0),
child: openImageWidget(),
), ),
if (user.user!.picture != "") if (user.user!.picture != "")
TextButton( TextButton(
child: Text( child: Text(
"remove_profile_picture".i18n, "remove_profile_picture".i18n,
style: const TextStyle(fontWeight: FontWeight.w500, color: Colors.red), style: const TextStyle(
fontWeight: FontWeight.w500, color: Colors.red),
), ),
onPressed: () { onPressed: () {
user.user!.picture = ""; user.user!.picture = "";
Provider.of<DatabaseProvider>(context, listen: false).store.storeUser(user.user!); Provider.of<DatabaseProvider>(context, listen: false)
.store
.storeUser(user.user!);
Provider.of<UserProvider>(context, listen: false).refresh(); Provider.of<UserProvider>(context, listen: false).refresh();
Navigator.of(context).pop(true); Navigator.of(context).pop(true);
}, },

View File

@ -24,7 +24,6 @@ dependencies:
dropdown_button2: ^1.8.9 dropdown_button2: ^1.8.9
home_widget: ^0.1.6 home_widget: ^0.1.6
image_picker: ^0.8.6 image_picker: ^0.8.6
image_crop: ^0.4.1
lottie: ^1.4.3 lottie: ^1.4.3
animations: ^2.0.1 animations: ^2.0.1
flutter_svg: ^1.1.6 flutter_svg: ^1.1.6