From a8b77978d8dd4ce9204dc60642534d187c71e5f9 Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:03:48 +0100 Subject: [PATCH 1/7] chore(.gitignore): update ignored files and remove outdated comments - Remove obsolete comment about Dart private files - Add new files and directories to be ignored: - coverage/ - .flutter-plugins - .flutter-plugins-dependencies - Remove pubspec.lock from ignored files --- .gitignore | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 526da15..deba1b7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ -# See https://www.dartlang.org/guides/libraries/private-files - -# Files and directories created by pub .dart_tool/ .packages build/ -pubspec.lock \ No newline at end of file +coverage/ +.flutter-plugins +.flutter-plugins-dependencies \ No newline at end of file From c4825886baf4f3003801994da3f811358c78140d Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:04:01 +0100 Subject: [PATCH 2/7] build(.flutter-plugins-dependencies): update path_provider_android version - Update path_provider_android from v2.2.17 to v2.2.18 - This change affects the Android platform configuration --- .flutter-plugins-dependencies | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.flutter-plugins-dependencies b/.flutter-plugins-dependencies index bb9d0d4..01ffef0 100644 --- a/.flutter-plugins-dependencies +++ b/.flutter-plugins-dependencies @@ -1 +1 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"android":[{"name":"path_provider_android","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_android-2.2.17\\\\","native_build":true,"dependencies":[],"dev_dependency":false}],"macos":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"linux":[{"name":"path_provider_linux","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_linux-2.2.1\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"windows":[{"name":"path_provider_windows","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_windows-2.3.0\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2025-08-19 16:43:04.085679","version":"3.35.1","swift_package_manager_enabled":{"ios":false,"macos":false}} \ No newline at end of file +{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"android":[{"name":"path_provider_android","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_android-2.2.18\\\\","native_build":true,"dependencies":[],"dev_dependency":false}],"macos":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"linux":[{"name":"path_provider_linux","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_linux-2.2.1\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"windows":[{"name":"path_provider_windows","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_windows-2.3.0\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2025-09-23 20:59:08.235970","version":"3.35.1","swift_package_manager_enabled":{"ios":false,"macos":false}} \ No newline at end of file From c932f7a477ba814e19c933f7d38b180bfce27ed9 Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:05:00 +0100 Subject: [PATCH 3/7] chore: remove .packages from .gitignore Removed the .packages entry from the .gitignore file as it is no longer needed. --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index deba1b7..9ac2dfa 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ .dart_tool/ -.packages build/ coverage/ .flutter-plugins From 9dba4e033c139fe35b441cb73c3f901c503c4c6b Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:05:12 +0100 Subject: [PATCH 4/7] chore(pub): add pubspec.lock file and update dependencies - Add pubspec.lock file to the project - Specify exact ref for core package dependency - Update other dependencies to their latest versions --- pubspec.lock | 419 +++++++++++++++++++++++++++++++++++++++++++++++++++ pubspec.yaml | 1 + 2 files changed, 420 insertions(+) create mode 100644 pubspec.lock diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..950bb3a --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,419 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + async: + dependency: transitive + description: + name: async + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + url: "https://pub.dev" + source: hosted + version: "2.13.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: transitive + description: + name: characters + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + core: + dependency: "direct main" + description: + path: "." + ref: "828b984517edec069266579c624c7af9fbe0e2ac" + resolved-ref: "828b984517edec069266579c624c7af9fbe0e2ac" + url: "https://github.com/flutter-news-app-full-source-code/core.git" + source: git + version: "0.0.0" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + equatable: + dependency: transitive + description: + name: equatable + sha256: "567c64b3cb4cf82397aac55f4f0cbd3ca20d77c6c03bedbc4ceaddc08904aef7" + url: "https://pub.dev" + source: hosted + version: "2.0.7" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + ffi: + dependency: transitive + description: + name: ffi + sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flex_color_scheme: + dependency: "direct main" + description: + name: flex_color_scheme + sha256: "034d5720747e6af39b2ad090d82dd92d33fde68e7964f1814b714c9d49ddbd64" + url: "https://pub.dev" + source: hosted + version: "8.3.0" + flex_seed_scheme: + dependency: transitive + description: + name: flex_seed_scheme + sha256: b06d8b367b84cbf7ca5c5603c858fa5edae88486c4e4da79ac1044d73b6c62ec + url: "https://pub.dev" + source: hosted + version: "3.5.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_localizations: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + google_fonts: + dependency: "direct main" + description: + name: google_fonts + sha256: ebc94ed30fd13cefd397cb1658b593f21571f014b7d1197eeb41fb95f05d899a + url: "https://pub.dev" + source: hosted + version: "6.3.1" + http: + dependency: transitive + description: + name: http + sha256: bb2ce4590bc2667c96f318d68cac1b5a7987ec819351d32b1c987239a815e007 + url: "https://pub.dev" + source: hosted + version: "1.5.0" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + intl: + dependency: "direct main" + description: + name: intl + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" + url: "https://pub.dev" + source: hosted + version: "0.20.2" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + matcher: + dependency: transitive + description: + name: matcher + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + url: "https://pub.dev" + source: hosted + version: "0.12.17" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + url: "https://pub.dev" + source: hosted + version: "1.16.0" + mocktail: + dependency: "direct dev" + description: + name: mocktail + sha256: "890df3f9688106f25755f26b1c60589a92b3ab91a22b8b224947ad041bf172d8" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + path_provider: + dependency: transitive + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: "993381400e94d18469750e5b9dcb8206f15bc09f9da86b9e44a9b0092a0066db" + url: "https://pub.dev" + source: hosted + version: "2.2.18" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: "16eef174aacb07e09c351502740fa6254c165757638eba1e9116b0a781201bbd" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + url: "https://pub.dev" + source: hosted + version: "1.10.1" + sprintf: + dependency: transitive + description: + name: sprintf + sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + url: "https://pub.dev" + source: hosted + version: "7.0.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" + url: "https://pub.dev" + source: hosted + version: "0.7.6" + timeago: + dependency: "direct main" + description: + name: timeago + sha256: b05159406a97e1cbb2b9ee4faa9fb096fe0e2dfcd8b08fcd2a00553450d3422e + url: "https://pub.dev" + source: hosted + version: "3.7.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + uuid: + dependency: transitive + description: + name: uuid + sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff + url: "https://pub.dev" + source: hosted + version: "4.5.1" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" + source: hosted + version: "2.2.0" + very_good_analysis: + dependency: "direct dev" + description: + name: very_good_analysis + sha256: e479fbc0941009262343db308133e121bf8660c2c81d48dd8e952df7b7e1e382 + url: "https://pub.dev" + source: hosted + version: "9.0.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" + url: "https://pub.dev" + source: hosted + version: "15.0.2" + web: + dependency: transitive + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" +sdks: + dart: ">=3.9.0 <4.0.0" + flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml index eb30780..0a4ed4e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -10,6 +10,7 @@ dependencies: core: git: url: https://github.com/flutter-news-app-full-source-code/core.git + ref: 828b984517edec069266579c624c7af9fbe0e2ac flex_color_scheme: ^8.3.0 flutter: sdk: flutter From a201c16187b97bf24833ffe06816d90b2ab96dec Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:05:22 +0100 Subject: [PATCH 5/7] chore: remove coverage/lcov.info - Deleted the lcov.info file to exclude code coverage data from the repository. - This change helps to reduce repository size and avoid exposing sensitive information. --- coverage/lcov.info | 264 --------------------------------------------- 1 file changed, 264 deletions(-) delete mode 100644 coverage/lcov.info diff --git a/coverage/lcov.info b/coverage/lcov.info deleted file mode 100644 index 385cc86..0000000 --- a/coverage/lcov.info +++ /dev/null @@ -1,264 +0,0 @@ -SF:lib\l10n\app_localizations.dart -DA:65,1 -DA:66,2 -DA:70,1 -DA:71,1 -DA:170,1 -DA:172,1 -DA:174,1 -DA:175,1 -DA:179,1 -DA:181,3 -DA:183,0 -DA:187,1 -DA:189,1 -DA:190,1 -DA:191,1 -DA:192,1 -DA:193,1 -DA:196,0 -LF:18 -LH:16 -end_of_record -SF:lib\l10n\app_localizations_ar.dart -DA:9,2 -DA:11,1 -DA:14,1 -DA:17,1 -DA:20,1 -DA:23,1 -DA:26,1 -DA:30,1 -DA:33,1 -DA:37,1 -DA:40,1 -DA:44,0 -LF:12 -LH:11 -end_of_record -SF:lib\l10n\app_localizations_en.dart -DA:9,2 -DA:11,1 -DA:14,1 -DA:17,1 -DA:20,1 -DA:23,1 -DA:27,1 -DA:31,1 -DA:34,1 -DA:38,1 -DA:41,1 -DA:45,0 -LF:12 -LH:11 -end_of_record -SF:lib\src\extensions\exception_l10n_helper.dart -DA:14,1 -DA:15,1 -DA:20,2 -DA:21,2 -DA:22,2 -DA:23,2 -DA:24,2 -DA:25,2 -DA:26,2 -DA:27,2 -DA:28,2 -DA:29,2 -DA:32,0 -LF:13 -LH:12 -end_of_record -SF:lib\src\extensions\l10n_helper.dart -DA:7,2 -LF:1 -LH:1 -end_of_record -SF:lib\src\theme\app_theme.dart -DA:34,0 -DA:39,0 -DA:40,0 -DA:45,0 -DA:47,0 -DA:49,0 -DA:51,0 -DA:56,0 -DA:57,0 -DA:62,0 -DA:64,0 -DA:66,0 -DA:69,0 -DA:70,0 -DA:73,0 -DA:78,0 -DA:79,0 -DA:82,0 -DA:83,0 -DA:86,0 -DA:87,0 -DA:90,0 -DA:91,0 -DA:97,0 -DA:98,0 -DA:102,0 -DA:103,0 -DA:110,0 -DA:111,0 -DA:123,0 -DA:124,0 -DA:126,0 -DA:127,0 -DA:131,0 -DA:132,0 -DA:136,0 -DA:137,0 -DA:141,0 -DA:142,0 -DA:146,0 -DA:147,0 -DA:154,0 -DA:155,0 -DA:164,0 -DA:170,0 -DA:171,0 -DA:173,0 -DA:174,0 -DA:176,0 -DA:179,0 -DA:191,0 -DA:197,0 -DA:198,0 -DA:200,0 -DA:201,0 -DA:202,0 -DA:205,0 -DA:208,0 -LF:58 -LH:0 -end_of_record -SF:lib\src\timeago_localization\ar_timeago_messages.dart -DA:5,0 -DA:7,0 -DA:9,0 -DA:11,0 -DA:14,0 -DA:16,0 -DA:18,0 -DA:19,0 -DA:21,0 -DA:23,0 -DA:24,0 -DA:26,0 -DA:28,0 -DA:29,0 -DA:31,0 -DA:33,0 -DA:34,0 -DA:36,0 -DA:38,0 -DA:39,0 -DA:41,0 -LF:21 -LH:0 -end_of_record -SF:lib\src\timeago_localization\en_timeago_messages.dart -DA:5,0 -DA:7,0 -DA:9,0 -DA:11,0 -DA:14,0 -DA:16,0 -DA:18,0 -DA:19,0 -DA:21,0 -DA:23,0 -DA:24,0 -DA:26,0 -DA:28,0 -DA:29,0 -DA:31,0 -DA:33,0 -DA:34,0 -DA:36,0 -DA:38,0 -DA:39,0 -DA:41,0 -LF:21 -LH:0 -end_of_record -SF:lib\src\utils\date_formatter.dart -DA:12,0 -DA:16,0 -DA:17,0 -DA:24,0 -DA:28,0 -LF:5 -LH:0 -end_of_record -SF:lib\src\widgets\failure_state_widget.dart -DA:28,0 -DA:45,0 -DA:47,0 -DA:48,0 -DA:49,0 -DA:50,0 -DA:51,0 -DA:53,0 -DA:54,0 -DA:56,0 -DA:58,0 -DA:59,0 -DA:64,0 -DA:65,0 -DA:67,0 -DA:68,0 -DA:69,0 -LF:17 -LH:0 -end_of_record -SF:lib\src\widgets\initial_state_widget.dart -DA:20,0 -DA:36,0 -DA:38,0 -DA:39,0 -DA:40,0 -DA:42,0 -DA:43,0 -DA:45,0 -DA:46,0 -DA:47,0 -DA:51,0 -DA:52,0 -DA:53,0 -LF:13 -LH:0 -end_of_record -SF:lib\src\widgets\loading_state_widget.dart -DA:20,0 -DA:36,0 -DA:38,0 -DA:39,0 -DA:40,0 -DA:42,0 -DA:43,0 -DA:45,0 -DA:46,0 -DA:47,0 -DA:51,0 -DA:52,0 -DA:53,0 -DA:57,0 -LF:14 -LH:0 -end_of_record -SF:lib\src\widgets\placeholder_create_page.dart -DA:8,0 -DA:13,0 -DA:15,0 -DA:16,0 -DA:17,0 -DA:19,0 -DA:20,0 -LF:7 -LH:0 -end_of_record From c7c53c3dc862190c78d60b230d1fc175e324d968 Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:05:33 +0100 Subject: [PATCH 6/7] docs(README): redesign and update documentation for clarity and impact - Restructure README content for better organization and readability - Enhance the UI with a visually appealing header and badges - Summarize core features in a compact feature showcase section - Improve licensing explanation and link to main project page - Remove redundant usage examples and theming instructions --- README.md | 115 ++++++++++++++---------------------------------------- 1 file changed, 30 insertions(+), 85 deletions(-) diff --git a/README.md b/README.md index 08993c1..10b19d3 100644 --- a/README.md +++ b/README.md @@ -1,99 +1,44 @@ -# ui_kit +
+ Flutter News App Toolkit Logo +

UI Kit

+

A shared Flutter UI kit providing a consistent set of widgets, themes, constants, and utilities for the Flutter News App Toolkit.

+
-![coverage: percentage](https://img.shields.io/badge/coverage-24-green) -[![style: very good analysis](https://img.shields.io/badge/style-very_good_analysis-B22C89.svg)](https://pub.dev/packages/very_good_analysis) -[![License: PolyForm Free Trial](https://img.shields.io/badge/License-PolyForm%20Free%20Trial-blue)](https://polyformproject.org/licenses/free-trial/1.0.0) +

+ coverage + Live Docs: View + Main Project: Browse +

-A shared Flutter UI kit package providing a consistent set of widgets, themes, constants, and utilities for building applications. This package ensures a cohesive look and feel across different parts of the system. +This `ui_kit` package serves as a shared Flutter UI kit within the [**Flutter News App Full Source Code Toolkit**](https://github.com/flutter-news-app-full-source-code). It provides a consistent set of widgets, themes, constants, and utilities designed to ensure a cohesive look and feel across the Flutter mobile app and web dashboard. By centralizing UI components and styling, this package aims to accelerate development and enhance maintainability. -## Getting Started +## ⭐ Feature Showcase: Consistent & Dynamic User Interfaces -Add this package to your `pubspec.yaml`: +This package offers a comprehensive set of features for building modern Flutter UIs. -```yaml -dependencies: - ui_kit: - git: - url: https://github.com/flutter-news-app-full-source-code/ui-kit.git -``` +
+🧱 Core Functionality -## Features +### 🚀 State Widgets +- **`InitialStateWidget`:** A pre-built widget for displaying initial states, typically before user interaction or data loading. +- **`LoadingStateWidget`:** A widget for indicating progress during data fetching or other asynchronous operations. +- **`FailureStateWidget`:** A robust widget for showing user-friendly, localized error messages with an optional retry mechanism, leveraging `HttpException` extensions from `core`. -* **State Widgets:** A collection of pre-built widgets for common UI states: - * `InitialStateWidget`: For screens before user interaction. - * `LoadingStateWidget`: For displaying progress during data fetching. - * `FailureStateWidget`: For showing user-friendly error messages with a retry option. -* **Dynamic Theming:** Built with `flex_color_scheme`, allowing for dynamic, customizable, and consistent light/dark themes across the app based on user settings. -* **Localization Helpers:** - * An extension on `HttpException` to provide user-friendly, localized error messages. - * Custom `timeago` messages for concise relative time formatting. -* **Shared Constants:** Centralized constants for spacing (`AppSpacing`) to ensure consistent layouts. -* **Utilities:** Helper classes like `DateFormatter` for common date and time formatting tasks. +### 🎨 Dynamic Theming +- **`lightTheme` & `darkTheme` Functions:** Built with `flex_color_scheme`, these functions provide dynamic, customizable, and consistent light/dark themes across the app based on user settings (e.g., `AppBaseTheme`, `AppAccentTheme`, `AppTextScaleFactor`, `AppFontWeight`). +- **`AppSpacing` Constants:** Centralized constants for spacing to ensure consistent layouts and visual hierarchy. -## Usage +### 🌐 Localization Helpers +- **`HttpException` Extension:** An extension on `HttpException` (from `core`) to provide user-friendly, localized error messages, simplifying error presentation. +- **`timeago` Integration:** Custom `timeago` messages for concise relative time formatting, enhancing readability of timestamps. -### Displaying an Error +### 🛠️ Utilities +- **`DateFormatter`:** Helper class for common date and time formatting tasks, ensuring consistent date representations throughout the application. -Use the `FailureStateWidget` to easily display a localized error message from a shared exception. The widget automatically handles localization. - -```dart -import 'package:flutter/material.dart'; -import 'package:core/core.dart'; -import 'package:ui_kit/ui_kit.dart'; - -class MyFeatureView extends StatelessWidget { - const MyFeatureView({super.key}); - - @override - Widget build(BuildContext context) { - return FailureStateWidget( - exception: NetworkException(), - onRetry: () { - // Logic to retry the failed operation - print('Retrying...'); - }, - ); - } -} -``` - -### Theming - -This package provides `lightTheme` and `darkTheme` functions that can be dynamically configured. To use them, pass them to your `MaterialApp`'s theme properties. - -```dart -import 'package:flutter/material.dart'; -import 'package:ui_kit/ui_kit.dart'; -import 'package:core/core.dart'; -import 'package:flex_color_scheme/flex_color_scheme.dart'; - -void main() => runApp(const MyApp()); - -class MyApp extends StatelessWidget { - const MyApp({super.key}); - - @override - Widget build(BuildContext context) { - // These values would typically come from a state management solution - const activeScheme = FlexScheme.mandyRed; - const textScaleFactor = AppTextScaleFactor.medium; - const fontWeight = AppFontWeight.regular; - - return MaterialApp( - theme: lightTheme( - scheme: activeScheme, - appTextScaleFactor: textScaleFactor, - appFontWeight: fontWeight, - ), - // ... other properties - ); - } -} -``` +> **💡 Your Advantage:** This UI kit simplifies Flutter development by providing visual consistency, dynamic theming, and robust error presentation. It centralizes UI components, contributing to faster development and improved maintainability. +
## 🔑 Licensing -This package is source-available and licensed under the [PolyForm Free Trial 1.0.0](LICENSE). Please review the terms before use. - -For commercial licensing options that grant the right to build and distribute unlimited applications, please visit the main [**Flutter News App - Full Source Code Toolkit**](https://github.com/flutter-news-app-full-source-code) organization. +This `ui_kit` package is an integral part of the [**Flutter News App Full Source Code Toolkit**](https://github.com/flutter-news-app-full-source-code). For comprehensive details regarding licensing, including trial and commercial options for the entire toolkit, please refer to the main toolkit organization page. From a7a9b2ce97f01020930dd17a8d1feb7939e70177 Mon Sep 17 00:00:00 2001 From: fulleni Date: Tue, 23 Sep 2025 21:08:26 +0100 Subject: [PATCH 7/7] chore: remove .flutter-plugins-dependencies file Removed the .flutter-plugins-dependencies file as it is a generated file that should not be checked into version control. --- .flutter-plugins-dependencies | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .flutter-plugins-dependencies diff --git a/.flutter-plugins-dependencies b/.flutter-plugins-dependencies deleted file mode 100644 index 01ffef0..0000000 --- a/.flutter-plugins-dependencies +++ /dev/null @@ -1 +0,0 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"android":[{"name":"path_provider_android","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_android-2.2.18\\\\","native_build":true,"dependencies":[],"dev_dependency":false}],"macos":[{"name":"path_provider_foundation","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_foundation-2.4.2\\\\","shared_darwin_source":true,"native_build":true,"dependencies":[],"dev_dependency":false}],"linux":[{"name":"path_provider_linux","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_linux-2.2.1\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"windows":[{"name":"path_provider_windows","path":"C:\\\\Users\\\\workstation\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\hosted\\\\pub.dev\\\\path_provider_windows-2.3.0\\\\","native_build":false,"dependencies":[],"dev_dependency":false}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2025-09-23 20:59:08.235970","version":"3.35.1","swift_package_manager_enabled":{"ios":false,"macos":false}} \ No newline at end of file