NEW: Add Mzansi Directory Shortcut

This commit is contained in:
2026-02-03 13:26:17 +02:00
parent ca8e0f56ac
commit 535924691e
45 changed files with 132 additions and 62 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 28 KiB

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="oval">
<solid android:color="@color/mih_icon_background" />
<!-- <size android:width="48dp" android:height="48dp"/> -->
</shape>
</item>
<item
android:drawable="@drawable/mzansi_directory"
android:width="48dp"
android:height="48dp"
android:gravity="center" />
</layer-list>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<color name="ic_launcher_background">#6641b2</color> <color name="ic_launcher_background">#3A4454</color>
<!-- Women For Change --> <!-- Women For Change -->
<color name="mih_icon_background">#6641b2</color> <!-- <color name="mih_icon_background">#6641b2</color>
<color name="mih_icon_foreground">#E0D1FF</color> <color name="mih_icon_foreground">#E0D1FF</color> -->
<!-- Original --> <!-- Original -->
<!-- <color name="mih_icon_background">#3A4454</color> <color name="mih_icon_background">#3A4454</color>
<color name="mih_icon_foreground">#bedcfe</color> --> <color name="mih_icon_foreground">#bedcfe</color>
</resources> </resources>

View File

@@ -1,40 +1,40 @@
# flutter pub run flutter_launcher_icons # flutter pub run flutter_launcher_icons
flutter_launcher_icons: flutter_launcher_icons:
# Original # Original
# image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png" image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png"
# Women For Change # Women For Change
image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png" # image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png"
android: "launcher_icon" android: "launcher_icon"
min_sdk_android: 21 # android min sdk min:16, default 21 min_sdk_android: 21 # android min sdk min:16, default 21
# Original # Original
# adaptive_icon_background: "#3A4454" adaptive_icon_background: "#3A4454"
# adaptive_icon_foreground: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png" adaptive_icon_foreground: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png"
# Women For Change # Women For Change
adaptive_icon_background: "#6641b2" # adaptive_icon_background: "#6641b2"
adaptive_icon_foreground: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png" # adaptive_icon_foreground: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png"
ios: true ios: true
# Original # Original
# image_path_ios: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png" image_path_ios: "lib/mih_package_components/assets/images/app_icon/mih_logo_app.png"
# Women For Change # Women For Change
image_path_ios: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png" # image_path_ios: "lib/mih_package_components/assets/images/app_icon/mih_logo_app_w4c.png"
remove_alpha_channel_ios: true remove_alpha_channel_ios: true
web: web:
generate: true generate: true
# Original # Original
# image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_web.png" image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_web.png"
# background_color: "#3A4454" background_color: "#3A4454"
# theme_color: "#3A4454" theme_color: "#3A4454"
# Women For Change # Women For Change
image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_web_w4c.png" # image_path: "lib/mih_package_components/assets/images/app_icon/mih_logo_web_w4c.png"
background_color: "#6641b2" # background_color: "#6641b2"
theme_color: "#6641b2" # theme_color: "#6641b2"
windows: windows:
generate: true generate: true

View File

@@ -48,47 +48,47 @@ PODS:
- Flutter - Flutter
- file_selector_ios (0.0.1): - file_selector_ios (0.0.1):
- Flutter - Flutter
- Firebase/Auth (12.4.0): - Firebase/Auth (12.8.0):
- Firebase/CoreOnly - Firebase/CoreOnly
- FirebaseAuth (~> 12.4.0) - FirebaseAuth (~> 12.8.0)
- Firebase/CoreOnly (12.4.0): - Firebase/CoreOnly (12.8.0):
- FirebaseCore (~> 12.4.0) - FirebaseCore (~> 12.8.0)
- firebase_app_check (0.4.1-2): - firebase_app_check (0.4.1-2):
- Firebase/CoreOnly (~> 12.4.0) - Firebase/CoreOnly (~> 12.8.0)
- firebase_core - firebase_core
- FirebaseAppCheck (~> 12.4.0) - FirebaseAppCheck (~> 12.8.0)
- Flutter - Flutter
- firebase_auth (6.1.2): - firebase_auth (6.1.2):
- Firebase/Auth (= 12.4.0) - Firebase/Auth (= 12.8.0)
- firebase_core - firebase_core
- Flutter - Flutter
- firebase_core (4.2.1): - firebase_core (4.4.0):
- Firebase/CoreOnly (= 12.4.0) - Firebase/CoreOnly (= 12.8.0)
- Flutter - Flutter
- FirebaseAppCheck (12.4.0): - FirebaseAppCheck (12.8.0):
- AppCheckCore (~> 11.0) - AppCheckCore (~> 11.0)
- FirebaseAppCheckInterop (~> 12.4.0) - FirebaseAppCheckInterop (~> 12.8.0)
- FirebaseCore (~> 12.4.0) - FirebaseCore (~> 12.8.0)
- GoogleUtilities/Environment (~> 8.1) - GoogleUtilities/Environment (~> 8.1)
- GoogleUtilities/UserDefaults (~> 8.1) - GoogleUtilities/UserDefaults (~> 8.1)
- FirebaseAppCheckInterop (12.4.0) - FirebaseAppCheckInterop (12.8.0)
- FirebaseAuth (12.4.0): - FirebaseAuth (12.8.0):
- FirebaseAppCheckInterop (~> 12.4.0) - FirebaseAppCheckInterop (~> 12.8.0)
- FirebaseAuthInterop (~> 12.4.0) - FirebaseAuthInterop (~> 12.8.0)
- FirebaseCore (~> 12.4.0) - FirebaseCore (~> 12.8.0)
- FirebaseCoreExtension (~> 12.4.0) - FirebaseCoreExtension (~> 12.8.0)
- GoogleUtilities/AppDelegateSwizzler (~> 8.1) - GoogleUtilities/AppDelegateSwizzler (~> 8.1)
- GoogleUtilities/Environment (~> 8.1) - GoogleUtilities/Environment (~> 8.1)
- GTMSessionFetcher/Core (< 6.0, >= 3.4) - GTMSessionFetcher/Core (< 6.0, >= 3.4)
- RecaptchaInterop (~> 101.0) - RecaptchaInterop (~> 101.0)
- FirebaseAuthInterop (12.4.0) - FirebaseAuthInterop (12.8.0)
- FirebaseCore (12.4.0): - FirebaseCore (12.8.0):
- FirebaseCoreInternal (~> 12.4.0) - FirebaseCoreInternal (~> 12.8.0)
- GoogleUtilities/Environment (~> 8.1) - GoogleUtilities/Environment (~> 8.1)
- GoogleUtilities/Logger (~> 8.1) - GoogleUtilities/Logger (~> 8.1)
- FirebaseCoreExtension (12.4.0): - FirebaseCoreExtension (12.8.0):
- FirebaseCore (~> 12.4.0) - FirebaseCore (~> 12.8.0)
- FirebaseCoreInternal (12.4.0): - FirebaseCoreInternal (12.8.0):
- "GoogleUtilities/NSData+zlib (~> 8.1)" - "GoogleUtilities/NSData+zlib (~> 8.1)"
- fl_downloader (0.0.1): - fl_downloader (0.0.1):
- Flutter - Flutter
@@ -112,7 +112,7 @@ PODS:
- GoogleMobileAdsMediationFacebook (6.20.1.0): - GoogleMobileAdsMediationFacebook (6.20.1.0):
- FBAudienceNetwork (= 6.20.1) - FBAudienceNetwork (= 6.20.1)
- Google-Mobile-Ads-SDK (~> 12.0) - Google-Mobile-Ads-SDK (~> 12.0)
- GoogleUserMessagingPlatform (3.0.0) - GoogleUserMessagingPlatform (3.1.0)
- GoogleUtilities/AppDelegateSwizzler (8.1.0): - GoogleUtilities/AppDelegateSwizzler (8.1.0):
- GoogleUtilities/Environment - GoogleUtilities/Environment
- GoogleUtilities/Logger - GoogleUtilities/Logger
@@ -161,9 +161,9 @@ PODS:
- Flutter - Flutter
- screen_brightness_ios (0.1.0): - screen_brightness_ios (0.1.0):
- Flutter - Flutter
- SDWebImage (5.20.0): - SDWebImage (5.21.5):
- SDWebImage/Core (= 5.20.0) - SDWebImage/Core (= 5.21.5)
- SDWebImage/Core (5.20.0) - SDWebImage/Core (5.21.5)
- share_plus (0.0.1): - share_plus (0.0.1):
- Flutter - Flutter
- shared_preferences_foundation (0.0.1): - shared_preferences_foundation (0.0.1):
@@ -313,17 +313,17 @@ SPEC CHECKSUMS:
file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be
file_saver: 6cdbcddd690cb02b0c1a0c225b37cd805c2bf8b6 file_saver: 6cdbcddd690cb02b0c1a0c225b37cd805c2bf8b6
file_selector_ios: f92e583d43608aebc2e4a18daac30b8902845502 file_selector_ios: f92e583d43608aebc2e4a18daac30b8902845502
Firebase: f07b15ae5a6ec0f93713e30b923d9970d144af3e Firebase: 9a58fdbc9d8655ed7b79a19cf9690bb007d3d46d
firebase_app_check: 61fb3578a0761c806533482aca240a2d5cc5b5ef firebase_app_check: 9756167f67afd4844027314bea522e42599631b5
firebase_auth: 9225db04db5d8e3b46dc8940e04bc6aec6833e27 firebase_auth: 2ebdb4dbe0da3a75585694dcba711f7a8a926601
firebase_core: f1aafb21c14f497e5498f7ffc4dc63cbb52b2594 firebase_core: ee30637e6744af8e0c12a6a1e8a9718506ec2398
FirebaseAppCheck: 73721d98fa29cf199da6004e57715cbaddd49651 FirebaseAppCheck: 11da425929a45c677d537adfff3520ccd57c1690
FirebaseAppCheckInterop: f734c802f21fe1da0837708f0f9a27218c8a4ed0 FirebaseAppCheckInterop: ba3dc604a89815379e61ec2365101608d365cf7d
FirebaseAuth: 4a2aed737c84114a9d9b33d11ae1b147d6b94889 FirebaseAuth: 4c289b1a43f5955283244a55cf6bd616de344be5
FirebaseAuthInterop: 858e6b754966e70740a4370dd1503dfffe6dbb49 FirebaseAuthInterop: 95363fe96493cb4f106656666a0768b420cba090
FirebaseCore: bb595f3114953664e3c1dc032f008a244147cfd3 FirebaseCore: 0dbad74bda10b8fb9ca34ad8f375fb9dd3ebef7c
FirebaseCoreExtension: 7e1f7118ee970e001a8013719fb90950ee5e0018 FirebaseCoreExtension: 6605938d51f765d8b18bfcafd2085276a252bee2
FirebaseCoreInternal: d7f5a043c2cd01a08103ab586587c1468047bca6 FirebaseCoreInternal: fe5fa466aeb314787093a7dce9f0beeaad5a2a21
fl_downloader: dc99aa8dd303f862cccb830087f37acc9b0156ee fl_downloader: dc99aa8dd303f862cccb830087f37acc9b0156ee
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
flutter_native_splash: c32d145d68aeda5502d5f543ee38c192065986cf flutter_native_splash: c32d145d68aeda5502d5f543ee38c192065986cf
@@ -333,7 +333,7 @@ SPEC CHECKSUMS:
Google-Mobile-Ads-SDK: 1dfb0c3cb46c7e2b00b0f4de74a1e06d9ea25d67 Google-Mobile-Ads-SDK: 1dfb0c3cb46c7e2b00b0f4de74a1e06d9ea25d67
google_mobile_ads: 535223588a6791b7a3cc3513a1bc7b89d12f3e62 google_mobile_ads: 535223588a6791b7a3cc3513a1bc7b89d12f3e62
GoogleMobileAdsMediationFacebook: b11a92ae3bfdae19853b882252b7e62791c18162 GoogleMobileAdsMediationFacebook: b11a92ae3bfdae19853b882252b7e62791c18162
GoogleUserMessagingPlatform: f8d0cdad3ca835406755d0a69aa634f00e76d576 GoogleUserMessagingPlatform: befe603da6501006420c206222acd449bba45a9c
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1 GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
GTMSessionFetcher: 02d6e866e90bc236f48a703a041dfe43e6221a29 GTMSessionFetcher: 02d6e866e90bc236f48a703a041dfe43e6221a29
image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a
@@ -347,7 +347,7 @@ SPEC CHECKSUMS:
RecaptchaInterop: 11e0b637842dfb48308d242afc3f448062325aba RecaptchaInterop: 11e0b637842dfb48308d242afc3f448062325aba
record_ios: f75fa1d57f840012775c0e93a38a7f3ceea1a374 record_ios: f75fa1d57f840012775c0e93a38a7f3ceea1a374
screen_brightness_ios: 9953fd7da5bd480f1a93990daeec2eb42d4f3b52 screen_brightness_ios: 9953fd7da5bd480f1a93990daeec2eb42d4f3b52
SDWebImage: 73c6079366fea25fa4bb9640d5fb58f0893facd8 SDWebImage: e9c98383c7572d713c1a0d7dd2783b10599b9838
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7 shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 654 B

After

Width:  |  Height:  |  Size: 672 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.8 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

@@ -0,0 +1,15 @@
{
"images" : [
{
"filename" : "mzansi_directory.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
},
"properties" : {
"preserves-vector-representation" : true
}
}

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -52,6 +52,10 @@ class _MzansiInnovationHubState extends State<MzansiInnovationHub> {
KenLogger.success("ShortCut: mihHome"); KenLogger.success("ShortCut: mihHome");
widget.router.goNamed("mihHome"); widget.router.goNamed("mihHome");
} }
if (shortcutType == 'mzansiDirectory') {
KenLogger.success("ShortCut: mzansiDirectory");
widget.router.goNamed("mzansiDirectory");
}
if (shortcutType == 'mzansiWallet') { if (shortcutType == 'mzansiWallet') {
KenLogger.success("ShortCut: mzansiWallet"); KenLogger.success("ShortCut: mzansiWallet");
widget.router.goNamed("mzansiWallet"); widget.router.goNamed("mzansiWallet");
@@ -67,6 +71,11 @@ class _MzansiInnovationHubState extends State<MzansiInnovationHub> {
}); });
// Set the quick actions // Set the quick actions
quickActions.setShortcutItems(<ShortcutItem>[ quickActions.setShortcutItems(<ShortcutItem>[
const ShortcutItem(
type: 'mzansiDirectory',
localizedTitle: 'Mzansi Directory',
icon: 'mzansi_directory_sc',
),
const ShortcutItem( const ShortcutItem(
type: 'mzansiWallet', type: 'mzansiWallet',
localizedTitle: 'Mzansi Wallet', localizedTitle: 'Mzansi Wallet',

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -3,8 +3,8 @@
"short_name": "MIH", "short_name": "MIH",
"start_url": ".", "start_url": ".",
"display": "standalone", "display": "standalone",
"background_color": "#6641b2", "background_color": "#3A4454",
"theme_color": "#6641b2", "theme_color": "#3A4454",
"description": "Digitizing Mzansi one process at a time. Discover essential Mzansi apps to streamline your personal and professional life. Simplify your daily tasks with our user-friendly solutions.", "description": "Digitizing Mzansi one process at a time. Discover essential Mzansi apps to streamline your personal and professional life. Simplify your daily tasks with our user-friendly solutions.",
"orientation": "any", "orientation": "any",
"prefer_related_applications": false, "prefer_related_applications": false,