From 28cc0a61329c1ca1275888f8de2645668c48ef6f Mon Sep 17 00:00:00 2001 From: sidhdhi canopas <122426509+cp-sidhdhi-p@users.noreply.github.com> Date: Wed, 18 Sep 2024 15:45:59 +0530 Subject: [PATCH] Add description in modules readMe (#101) * add description in modules * remove unused permission --- data/README.md | 43 ++--- data/lib/api/user/user_models.dart | 2 - data/lib/api/user/user_models.freezed.dart | 79 +-------- data/lib/api/user/user_models.g.dart | 24 --- khelo/README.md | 18 +-- khelo/ios/Podfile | 3 - khelo/ios/Podfile.lock | 2 +- khelo/ios/Runner.xcodeproj/project.pbxproj | 153 +++++++++--------- .../components/user_detail_sheet.dart | 2 +- .../component/user_detail_info_content.dart | 2 +- style/README.md | 43 ++--- 11 files changed, 109 insertions(+), 262 deletions(-) diff --git a/data/README.md b/data/README.md index 02fe8eca..abf439e4 100644 --- a/data/README.md +++ b/data/README.md @@ -1,39 +1,14 @@ - +## Key Features -TODO: Put a short description of the package here that helps potential users -know whether this package might be useful for them. +- **Data Management:** Handles data operations such as CRUD (Create, Read, Update, Delete). +- **Data Sources:** Interfaces with local and remote data sources. +- **Error Handling:** Includes error handling and data validation. -## Features +### API -TODO: List what your package can do. Maybe include images, gifs, or videos. - -## Getting started - -TODO: List prerequisites and provide or point to information on how to -start using the package. - -## Usage - -TODO: Include short and useful examples for package users. Add longer examples -to `/example` folder. - -```dart -const like = 'sample'; -``` - -## Additional information - -TODO: Tell users more about the package: where to find more information, how to -contribute to the package, how to file issues, what response they can expect -from the package authors, and more. +- **Service:** Manages data operations and provides methods for data retrieval and updates. +- **Api:** Defines data structures used within the app. diff --git a/data/lib/api/user/user_models.dart b/data/lib/api/user/user_models.dart index f1629db0..d63160fb 100644 --- a/data/lib/api/user/user_models.dart +++ b/data/lib/api/user/user_models.dart @@ -5,8 +5,6 @@ import 'dart:convert'; import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; -import '../../converter/timestamp_json_converter.dart'; - part 'user_models.freezed.dart'; part 'user_models.g.dart'; diff --git a/data/lib/api/user/user_models.freezed.dart b/data/lib/api/user/user_models.freezed.dart index 5b694b31..b3dcf546 100644 --- a/data/lib/api/user/user_models.freezed.dart +++ b/data/lib/api/user/user_models.freezed.dart @@ -31,10 +31,6 @@ mixin _$UserModel { UserGender? get gender => throw _privateConstructorUsedError; DateTime? get created_at => throw _privateConstructorUsedError; DateTime? get updated_at => throw _privateConstructorUsedError; - @TimeStampJsonConverter() - DateTime? get created_time => throw _privateConstructorUsedError; - @TimeStampJsonConverter() - DateTime? get updated_time => throw _privateConstructorUsedError; PlayerRole? get player_role => throw _privateConstructorUsedError; BattingStyle? get batting_style => throw _privateConstructorUsedError; BowlingStyle? get bowling_style => throw _privateConstructorUsedError; @@ -64,8 +60,6 @@ abstract class $UserModelCopyWith<$Res> { UserGender? gender, DateTime? created_at, DateTime? updated_at, - @TimeStampJsonConverter() DateTime? created_time, - @TimeStampJsonConverter() DateTime? updated_time, PlayerRole? player_role, BattingStyle? batting_style, BowlingStyle? bowling_style, @@ -97,8 +91,6 @@ class _$UserModelCopyWithImpl<$Res, $Val extends UserModel> Object? gender = freezed, Object? created_at = freezed, Object? updated_at = freezed, - Object? created_time = freezed, - Object? updated_time = freezed, Object? player_role = freezed, Object? batting_style = freezed, Object? bowling_style = freezed, @@ -150,14 +142,6 @@ class _$UserModelCopyWithImpl<$Res, $Val extends UserModel> ? _value.updated_at : updated_at // ignore: cast_nullable_to_non_nullable as DateTime?, - created_time: freezed == created_time - ? _value.created_time - : created_time // ignore: cast_nullable_to_non_nullable - as DateTime?, - updated_time: freezed == updated_time - ? _value.updated_time - : updated_time // ignore: cast_nullable_to_non_nullable - as DateTime?, player_role: freezed == player_role ? _value.player_role : player_role // ignore: cast_nullable_to_non_nullable @@ -202,8 +186,6 @@ abstract class _$$UserModelImplCopyWith<$Res> UserGender? gender, DateTime? created_at, DateTime? updated_at, - @TimeStampJsonConverter() DateTime? created_time, - @TimeStampJsonConverter() DateTime? updated_time, PlayerRole? player_role, BattingStyle? batting_style, BowlingStyle? bowling_style, @@ -233,8 +215,6 @@ class __$$UserModelImplCopyWithImpl<$Res> Object? gender = freezed, Object? created_at = freezed, Object? updated_at = freezed, - Object? created_time = freezed, - Object? updated_time = freezed, Object? player_role = freezed, Object? batting_style = freezed, Object? bowling_style = freezed, @@ -286,14 +266,6 @@ class __$$UserModelImplCopyWithImpl<$Res> ? _value.updated_at : updated_at // ignore: cast_nullable_to_non_nullable as DateTime?, - created_time: freezed == created_time - ? _value.created_time - : created_time // ignore: cast_nullable_to_non_nullable - as DateTime?, - updated_time: freezed == updated_time - ? _value.updated_time - : updated_time // ignore: cast_nullable_to_non_nullable - as DateTime?, player_role: freezed == player_role ? _value.player_role : player_role // ignore: cast_nullable_to_non_nullable @@ -333,8 +305,6 @@ class _$UserModelImpl extends _UserModel { this.gender, this.created_at, this.updated_at, - @TimeStampJsonConverter() this.created_time, - @TimeStampJsonConverter() this.updated_time, this.player_role, this.batting_style, this.bowling_style, @@ -368,12 +338,6 @@ class _$UserModelImpl extends _UserModel { @override final DateTime? updated_at; @override - @TimeStampJsonConverter() - final DateTime? created_time; - @override - @TimeStampJsonConverter() - final DateTime? updated_time; - @override final PlayerRole? player_role; @override final BattingStyle? batting_style; @@ -388,7 +352,7 @@ class _$UserModelImpl extends _UserModel { @override String toString() { - return 'UserModel(id: $id, name: $name, name_lowercase: $name_lowercase, location: $location, phone: $phone, dob: $dob, email: $email, profile_img_url: $profile_img_url, gender: $gender, created_at: $created_at, updated_at: $updated_at, created_time: $created_time, updated_time: $updated_time, player_role: $player_role, batting_style: $batting_style, bowling_style: $bowling_style, isActive: $isActive, notifications: $notifications)'; + return 'UserModel(id: $id, name: $name, name_lowercase: $name_lowercase, location: $location, phone: $phone, dob: $dob, email: $email, profile_img_url: $profile_img_url, gender: $gender, created_at: $created_at, updated_at: $updated_at, player_role: $player_role, batting_style: $batting_style, bowling_style: $bowling_style, isActive: $isActive, notifications: $notifications)'; } @override @@ -412,10 +376,6 @@ class _$UserModelImpl extends _UserModel { other.created_at == created_at) && (identical(other.updated_at, updated_at) || other.updated_at == updated_at) && - (identical(other.created_time, created_time) || - other.created_time == created_time) && - (identical(other.updated_time, updated_time) || - other.updated_time == updated_time) && (identical(other.player_role, player_role) || other.player_role == player_role) && (identical(other.batting_style, batting_style) || @@ -443,8 +403,6 @@ class _$UserModelImpl extends _UserModel { gender, created_at, updated_at, - created_time, - updated_time, player_role, batting_style, bowling_style, @@ -478,8 +436,6 @@ abstract class _UserModel extends UserModel { final UserGender? gender, final DateTime? created_at, final DateTime? updated_at, - @TimeStampJsonConverter() final DateTime? created_time, - @TimeStampJsonConverter() final DateTime? updated_time, final PlayerRole? player_role, final BattingStyle? batting_style, final BowlingStyle? bowling_style, @@ -513,12 +469,6 @@ abstract class _UserModel extends UserModel { @override DateTime? get updated_at; @override - @TimeStampJsonConverter() - DateTime? get created_time; - @override - @TimeStampJsonConverter() - DateTime? get updated_time; - @override PlayerRole? get player_role; @override BattingStyle? get batting_style; @@ -549,8 +499,6 @@ mixin _$ApiSession { int get app_version => throw _privateConstructorUsedError; String get os_version => throw _privateConstructorUsedError; DateTime? get created_at => throw _privateConstructorUsedError; - @TimeStampJsonConverter() - DateTime? get created_time => throw _privateConstructorUsedError; bool get is_active => throw _privateConstructorUsedError; Map toJson() => throw _privateConstructorUsedError; @@ -575,7 +523,6 @@ abstract class $ApiSessionCopyWith<$Res> { int app_version, String os_version, DateTime? created_at, - @TimeStampJsonConverter() DateTime? created_time, bool is_active}); } @@ -601,7 +548,6 @@ class _$ApiSessionCopyWithImpl<$Res, $Val extends ApiSession> Object? app_version = null, Object? os_version = null, Object? created_at = freezed, - Object? created_time = freezed, Object? is_active = null, }) { return _then(_value.copyWith( @@ -641,10 +587,6 @@ class _$ApiSessionCopyWithImpl<$Res, $Val extends ApiSession> ? _value.created_at : created_at // ignore: cast_nullable_to_non_nullable as DateTime?, - created_time: freezed == created_time - ? _value.created_time - : created_time // ignore: cast_nullable_to_non_nullable - as DateTime?, is_active: null == is_active ? _value.is_active : is_active // ignore: cast_nullable_to_non_nullable @@ -671,7 +613,6 @@ abstract class _$$ApiSessionImplCopyWith<$Res> int app_version, String os_version, DateTime? created_at, - @TimeStampJsonConverter() DateTime? created_time, bool is_active}); } @@ -695,7 +636,6 @@ class __$$ApiSessionImplCopyWithImpl<$Res> Object? app_version = null, Object? os_version = null, Object? created_at = freezed, - Object? created_time = freezed, Object? is_active = null, }) { return _then(_$ApiSessionImpl( @@ -735,10 +675,6 @@ class __$$ApiSessionImplCopyWithImpl<$Res> ? _value.created_at : created_at // ignore: cast_nullable_to_non_nullable as DateTime?, - created_time: freezed == created_time - ? _value.created_time - : created_time // ignore: cast_nullable_to_non_nullable - as DateTime?, is_active: null == is_active ? _value.is_active : is_active // ignore: cast_nullable_to_non_nullable @@ -760,7 +696,6 @@ class _$ApiSessionImpl extends _ApiSession { required this.app_version, required this.os_version, this.created_at, - @TimeStampJsonConverter() this.created_time, this.is_active = true}) : super._(); @@ -786,15 +721,12 @@ class _$ApiSessionImpl extends _ApiSession { @override final DateTime? created_at; @override - @TimeStampJsonConverter() - final DateTime? created_time; - @override @JsonKey() final bool is_active; @override String toString() { - return 'ApiSession(id: $id, user_id: $user_id, device_type: $device_type, device_id: $device_id, device_name: $device_name, device_fcm_token: $device_fcm_token, app_version: $app_version, os_version: $os_version, created_at: $created_at, created_time: $created_time, is_active: $is_active)'; + return 'ApiSession(id: $id, user_id: $user_id, device_type: $device_type, device_id: $device_id, device_name: $device_name, device_fcm_token: $device_fcm_token, app_version: $app_version, os_version: $os_version, created_at: $created_at, is_active: $is_active)'; } @override @@ -818,8 +750,6 @@ class _$ApiSessionImpl extends _ApiSession { other.os_version == os_version) && (identical(other.created_at, created_at) || other.created_at == created_at) && - (identical(other.created_time, created_time) || - other.created_time == created_time) && (identical(other.is_active, is_active) || other.is_active == is_active)); } @@ -837,7 +767,6 @@ class _$ApiSessionImpl extends _ApiSession { app_version, os_version, created_at, - created_time, is_active); @JsonKey(ignore: true) @@ -865,7 +794,6 @@ abstract class _ApiSession extends ApiSession { required final int app_version, required final String os_version, final DateTime? created_at, - @TimeStampJsonConverter() final DateTime? created_time, final bool is_active}) = _$ApiSessionImpl; const _ApiSession._() : super._(); @@ -891,9 +819,6 @@ abstract class _ApiSession extends ApiSession { @override DateTime? get created_at; @override - @TimeStampJsonConverter() - DateTime? get created_time; - @override bool get is_active; @override @JsonKey(ignore: true) diff --git a/data/lib/api/user/user_models.g.dart b/data/lib/api/user/user_models.g.dart index cb8b24f2..c4df8e9e 100644 --- a/data/lib/api/user/user_models.g.dart +++ b/data/lib/api/user/user_models.g.dart @@ -23,10 +23,6 @@ _$UserModelImpl _$$UserModelImplFromJson(Map json) => updated_at: json['updated_at'] == null ? null : DateTime.parse(json['updated_at'] as String), - created_time: _$JsonConverterFromJson( - json['created_time'], const TimeStampJsonConverter().fromJson), - updated_time: _$JsonConverterFromJson( - json['updated_time'], const TimeStampJsonConverter().fromJson), player_role: $enumDecodeNullable(_$PlayerRoleEnumMap, json['player_role']), batting_style: @@ -50,10 +46,6 @@ Map _$$UserModelImplToJson(_$UserModelImpl instance) => 'gender': _$UserGenderEnumMap[instance.gender], 'created_at': instance.created_at?.toIso8601String(), 'updated_at': instance.updated_at?.toIso8601String(), - 'created_time': _$JsonConverterToJson( - instance.created_time, const TimeStampJsonConverter().toJson), - 'updated_time': _$JsonConverterToJson( - instance.updated_time, const TimeStampJsonConverter().toJson), 'player_role': _$PlayerRoleEnumMap[instance.player_role], 'batting_style': _$BattingStyleEnumMap[instance.batting_style], 'bowling_style': _$BowlingStyleEnumMap[instance.bowling_style], @@ -68,12 +60,6 @@ const _$UserGenderEnumMap = { UserGender.other: 3, }; -Value? _$JsonConverterFromJson( - Object? json, - Value? Function(Json json) fromJson, -) => - json == null ? null : fromJson(json as Json); - const _$PlayerRoleEnumMap = { PlayerRole.topOrderBatter: 1, PlayerRole.middleOrderBatter: 2, @@ -103,12 +89,6 @@ const _$BowlingStyleEnumMap = { BowlingStyle.none: 8, }; -Json? _$JsonConverterToJson( - Value? value, - Json? Function(Value value) toJson, -) => - value == null ? null : toJson(value); - _$ApiSessionImpl _$$ApiSessionImplFromJson(Map json) => _$ApiSessionImpl( id: json['id'] as String, @@ -122,8 +102,6 @@ _$ApiSessionImpl _$$ApiSessionImplFromJson(Map json) => created_at: json['created_at'] == null ? null : DateTime.parse(json['created_at'] as String), - created_time: _$JsonConverterFromJson( - json['created_time'], const TimeStampJsonConverter().fromJson), is_active: json['is_active'] as bool? ?? true, ); @@ -138,7 +116,5 @@ Map _$$ApiSessionImplToJson(_$ApiSessionImpl instance) => 'app_version': instance.app_version, 'os_version': instance.os_version, 'created_at': instance.created_at?.toIso8601String(), - 'created_time': _$JsonConverterToJson( - instance.created_time, const TimeStampJsonConverter().toJson), 'is_active': instance.is_active, }; diff --git a/khelo/README.md b/khelo/README.md index 55799b96..16b0176a 100644 --- a/khelo/README.md +++ b/khelo/README.md @@ -1,16 +1,14 @@ # khelo -A new Flutter project. +The `khelo` module is the core UI component of the Khelo app. It contains the main Flutter application implementation and native integrations. This module handles the presentation layer and user interactions. -## Getting Started +## Key Features -This project is a starting point for a Flutter application. +- **User Interface:** Provides the complete user interface for the Khelo app. +- **Native Integration:** Includes native code for platform-specific functionalities. +- **Navigation:** Manages app navigation and routing. -A few resources to get you started if this is your first Flutter project: +### API -- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) -- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) - -For help getting started with Flutter development, view the -[online documentation](https://docs.flutter.dev/), which offers tutorials, -samples, guidance on mobile development, and a full API reference. +- **UI:** Contains all UI components used in the app. +- **Components:** Contains reusable components. diff --git a/khelo/ios/Podfile b/khelo/ios/Podfile index 23b9f698..f6fa3154 100644 --- a/khelo/ios/Podfile +++ b/khelo/ios/Podfile @@ -51,9 +51,6 @@ post_install do |installer| ## dart: PermissionGroup.notification 'PERMISSION_NOTIFICATIONS=1', - ## dart: PermissionGroup.contacts - 'PERMISSION_CONTACTS=1', - ] end diff --git a/khelo/ios/Podfile.lock b/khelo/ios/Podfile.lock index 0101fc79..e4be8246 100644 --- a/khelo/ios/Podfile.lock +++ b/khelo/ios/Podfile.lock @@ -1577,6 +1577,6 @@ SPEC CHECKSUMS: TOCropViewController: 80b8985ad794298fb69d3341de183f33d1853654 url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe -PODFILE CHECKSUM: aa371d0c498d976e41de4a5d9d15e9f486a17a37 +PODFILE CHECKSUM: 1239998dc2f1d4ca9d4b78c3bbcb72b30c7118bb COCOAPODS: 1.15.2 diff --git a/khelo/ios/Runner.xcodeproj/project.pbxproj b/khelo/ios/Runner.xcodeproj/project.pbxproj index c05c5f52..a6199193 100644 --- a/khelo/ios/Runner.xcodeproj/project.pbxproj +++ b/khelo/ios/Runner.xcodeproj/project.pbxproj @@ -7,15 +7,15 @@ objects = { /* Begin PBXBuildFile section */ - 10F1AB6FD097BB3143B8C0F6 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BAF78FAD5DA8ED7AD9682388 /* Pods_Runner.framework */; }; + 0251C08A71D0379236059A56 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 13FB9A0EABFB9BA43C4A2833 /* Pods_Runner.framework */; }; 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 */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 7F33CA197EAE2226D2DB55D2 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9D0F12D05A64F812905B1CA4 /* Pods_RunnerTests.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 */; }; - 99F9A95D93A9218593DDB748 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78EA44C85C219F4F757BF5A5 /* Pods_RunnerTests.framework */; }; B60C30E1C6CB654CE522C02F /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 36A9CDDD30BEEFAAB87A6822 /* GoogleService-Info.plist */; }; /* End PBXBuildFile section */ @@ -43,6 +43,8 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 00865FACA0A61C115698BA1E /* 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 = ""; }; + 13FB9A0EABFB9BA43C4A2833 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 20E4EAC22BB7FBF4001FD0E5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; @@ -50,11 +52,11 @@ 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 36A9CDDD30BEEFAAB87A6822 /* GoogleService-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "Runner/GoogleService-Info.plist"; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 60BB83E8F41269EC93450053 /* 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 = ""; }; - 73B271BB257DB8871DA9E83A /* 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 = ""; }; + 500433D8415166E8EFFD4BAB /* 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 = ""; }; + 603A9015D1B5B90FD5052406 /* 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 = ""; }; + 6E35558AA703DC13E7E54D36 /* 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 = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 78EA44C85C219F4F757BF5A5 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; @@ -64,11 +66,9 @@ 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9B3323CC2C1C61D20053F1A5 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; - AFEF93E0065B6B19F64BFBDF /* 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 = ""; }; - BAF78FAD5DA8ED7AD9682388 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D189684A7C2049EE1F4D32B4 /* 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 = ""; }; - DE0F416139CED7EBD2919899 /* 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 = ""; }; - E2AF3A806CC7D0B28066A37D /* 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 = ""; }; + 9D0F12D05A64F812905B1CA4 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + A4F6B46D3E8BEBBBB0556772 /* 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 = ""; }; + FA7468A96DD01E6134655767 /* 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 = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -76,7 +76,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 10F1AB6FD097BB3143B8C0F6 /* Pods_Runner.framework in Frameworks */, + 0251C08A71D0379236059A56 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -84,22 +84,13 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 99F9A95D93A9218593DDB748 /* Pods_RunnerTests.framework in Frameworks */, + 7F33CA197EAE2226D2DB55D2 /* Pods_RunnerTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 17B530D82FEEDE5217CBE3CC /* Frameworks */ = { - isa = PBXGroup; - children = ( - BAF78FAD5DA8ED7AD9682388 /* Pods_Runner.framework */, - 78EA44C85C219F4F757BF5A5 /* Pods_RunnerTests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; 331C8082294A63A400263BE5 /* RunnerTests */ = { isa = PBXGroup; children = ( @@ -129,7 +120,7 @@ 331C8082294A63A400263BE5 /* RunnerTests */, 36A9CDDD30BEEFAAB87A6822 /* GoogleService-Info.plist */, EDD70AFF796C5A2BD0A7073F /* Pods */, - 17B530D82FEEDE5217CBE3CC /* Frameworks */, + A1099906B2442FD3FED5C8F4 /* Frameworks */, ); sourceTree = ""; }; @@ -158,15 +149,24 @@ path = Runner; sourceTree = ""; }; + A1099906B2442FD3FED5C8F4 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 13FB9A0EABFB9BA43C4A2833 /* Pods_Runner.framework */, + 9D0F12D05A64F812905B1CA4 /* Pods_RunnerTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; EDD70AFF796C5A2BD0A7073F /* Pods */ = { isa = PBXGroup; children = ( - D189684A7C2049EE1F4D32B4 /* Pods-Runner.debug.xcconfig */, - DE0F416139CED7EBD2919899 /* Pods-Runner.release.xcconfig */, - 73B271BB257DB8871DA9E83A /* Pods-Runner.profile.xcconfig */, - 60BB83E8F41269EC93450053 /* Pods-RunnerTests.debug.xcconfig */, - AFEF93E0065B6B19F64BFBDF /* Pods-RunnerTests.release.xcconfig */, - E2AF3A806CC7D0B28066A37D /* Pods-RunnerTests.profile.xcconfig */, + A4F6B46D3E8BEBBBB0556772 /* Pods-Runner.debug.xcconfig */, + 00865FACA0A61C115698BA1E /* Pods-Runner.release.xcconfig */, + FA7468A96DD01E6134655767 /* Pods-Runner.profile.xcconfig */, + 603A9015D1B5B90FD5052406 /* Pods-RunnerTests.debug.xcconfig */, + 500433D8415166E8EFFD4BAB /* Pods-RunnerTests.release.xcconfig */, + 6E35558AA703DC13E7E54D36 /* Pods-RunnerTests.profile.xcconfig */, ); path = Pods; sourceTree = ""; @@ -178,7 +178,7 @@ isa = PBXNativeTarget; buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( - 3BEBC8731F39EA56312BAEBA /* [CP] Check Pods Manifest.lock */, + D62BB21752E1710DBAD3A9D1 /* [CP] Check Pods Manifest.lock */, 331C807D294A63A400263BE5 /* Sources */, 331C807F294A63A400263BE5 /* Resources */, B65DE899F4235B96AFDF93A4 /* Frameworks */, @@ -197,16 +197,16 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - 8C51240F82C758EFE1557040 /* [CP] Check Pods Manifest.lock */, + 31CAF658C321664AA60F87A9 /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 2B44862DDC4A812BCE1A0BD0 /* [CP] Embed Pods Frameworks */, B701D8A68AF0CB72EE4EF76E /* FlutterFire: "flutterfire upload-crashlytics-symbols" */, - 51F36F1B13DB433084C01199 /* [CP] Copy Pods Resources */, + 75EEB2C25DCD12D9EE1B3BA1 /* [CP] Embed Pods Frameworks */, + 9C8DD79CF293961A8F4177C2 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -279,21 +279,26 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 2B44862DDC4A812BCE1A0BD0 /* [CP] Embed Pods Frameworks */ = { + 31CAF658C321664AA60F87A9 /* [CP] Check Pods Manifest.lock */ = { 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"; + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + 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; }; 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { @@ -312,83 +317,74 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin\n"; }; - 3BEBC8731F39EA56312BAEBA /* [CP] Check Pods Manifest.lock */ = { + 75EEB2C25DCD12D9EE1B3BA1 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; + name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); 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"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - 51F36F1B13DB433084C01199 /* [CP] Copy Pods Resources */ = { + 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", + inputPaths = ( ); - name = "[CP] Copy Pods Resources"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", + name = "Run Script"; + outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; - showEnvVarsInLog = 0; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build\n"; }; - 8C51240F82C758EFE1557040 /* [CP] Check Pods Manifest.lock */ = { + 9C8DD79CF293961A8F4177C2 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; + name = "[CP] Copy Pods Resources"; outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", ); 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"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; showEnvVarsInLog = 0; }; - 9740EEB61CF901F6004384FC /* Run Script */ = { + B701D8A68AF0CB72EE4EF76E /* FlutterFire: "flutterfire upload-crashlytics-symbols" */ = { isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); + inputFileListPaths = ( + ); inputPaths = ( ); - name = "Run Script"; + name = "FlutterFire: \"flutterfire upload-crashlytics-symbols\""; + outputFileListPaths = ( + ); outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build\n"; + shellScript = "\n#!/bin/bash\nPATH=${PATH}:$FLUTTER_ROOT/bin:$HOME/.pub-cache/bin\nflutterfire upload-crashlytics-symbols --upload-symbols-script-path=$PODS_ROOT/FirebaseCrashlytics/upload-symbols --platform=ios --apple-project-path=${SRCROOT} --env-platform-name=${PLATFORM_NAME} --env-configuration=${CONFIGURATION} --env-project-dir=${PROJECT_DIR} --env-built-products-dir=${BUILT_PRODUCTS_DIR} --env-dwarf-dsym-folder-path=${DWARF_DSYM_FOLDER_PATH} --env-dwarf-dsym-file-name=${DWARF_DSYM_FILE_NAME} --env-infoplist-path=${INFOPLIST_PATH} --default-config=default\n"; }; - B701D8A68AF0CB72EE4EF76E /* FlutterFire: "flutterfire upload-crashlytics-symbols" */ = { + D62BB21752E1710DBAD3A9D1 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -396,15 +392,19 @@ inputFileListPaths = ( ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", ); - name = "FlutterFire: \"flutterfire upload-crashlytics-symbols\""; + name = "[CP] Check Pods Manifest.lock"; outputFileListPaths = ( ); outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\n#!/bin/bash\nPATH=${PATH}:$FLUTTER_ROOT/bin:$HOME/.pub-cache/bin\nflutterfire upload-crashlytics-symbols --upload-symbols-script-path=$PODS_ROOT/FirebaseCrashlytics/upload-symbols --platform=ios --apple-project-path=${SRCROOT} --env-platform-name=${PLATFORM_NAME} --env-configuration=${CONFIGURATION} --env-project-dir=${PROJECT_DIR} --env-built-products-dir=${BUILT_PRODUCTS_DIR} --env-dwarf-dsym-folder-path=${DWARF_DSYM_FOLDER_PATH} --env-dwarf-dsym-file-name=${DWARF_DSYM_FILE_NAME} --env-infoplist-path=${INFOPLIST_PATH} --default-config=default\n"; + 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; }; /* End PBXShellScriptBuildPhase section */ @@ -511,6 +511,7 @@ baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; @@ -538,7 +539,7 @@ }; 331C8088294A63A400263BE5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 60BB83E8F41269EC93450053 /* Pods-RunnerTests.debug.xcconfig */; + baseConfigurationReference = 603A9015D1B5B90FD5052406 /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -557,7 +558,7 @@ }; 331C8089294A63A400263BE5 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AFEF93E0065B6B19F64BFBDF /* Pods-RunnerTests.release.xcconfig */; + baseConfigurationReference = 500433D8415166E8EFFD4BAB /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -574,7 +575,7 @@ }; 331C808A294A63A400263BE5 /* Profile */ = { isa = XCBuildConfiguration; - baseConfigurationReference = E2AF3A806CC7D0B28066A37D /* Pods-RunnerTests.profile.xcconfig */; + baseConfigurationReference = 6E35558AA703DC13E7E54D36 /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -701,6 +702,7 @@ baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; @@ -732,6 +734,7 @@ baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; diff --git a/khelo/lib/ui/flow/matches/add_match/select_squad/components/user_detail_sheet.dart b/khelo/lib/ui/flow/matches/add_match/select_squad/components/user_detail_sheet.dart index 833918f7..c459eeb8 100644 --- a/khelo/lib/ui/flow/matches/add_match/select_squad/components/user_detail_sheet.dart +++ b/khelo/lib/ui/flow/matches/add_match/select_squad/components/user_detail_sheet.dart @@ -137,7 +137,7 @@ class UserDetailSheet extends StatelessWidget { .copyWith(color: context.colorScheme.textDisabled), ), Text( - (user.created_time ?? user.created_at ?? DateTime.now()) + (user.created_at ?? DateTime.now()) .format(context, DateFormatType.dayMonthYear), style: AppTextStyle.body2 .copyWith(color: context.colorScheme.textPrimary), diff --git a/khelo/lib/ui/flow/team/user_detail/component/user_detail_info_content.dart b/khelo/lib/ui/flow/team/user_detail/component/user_detail_info_content.dart index 6e68cd79..c9968562 100644 --- a/khelo/lib/ui/flow/team/user_detail/component/user_detail_info_content.dart +++ b/khelo/lib/ui/flow/team/user_detail/component/user_detail_info_content.dart @@ -22,7 +22,7 @@ class UserDetailInfoContent extends ConsumerWidget { _infoRowView( context, context.l10n.user_detail_joining_date_title, - (state.user?.created_time ?? state.user?.created_at) + (state.user?.created_at) ?.format(context, DateFormatType.shortDate)), _infoRowView(context, context.l10n.common_gender_title, state.user?.gender?.getString(context)), diff --git a/style/README.md b/style/README.md index 02fe8eca..563e8298 100644 --- a/style/README.md +++ b/style/README.md @@ -1,39 +1,14 @@ - +## Key Features -TODO: Put a short description of the package here that helps potential users -know whether this package might be useful for them. +- **Fonts:** Defines and manages fonts used across the application. +- **Themes:** Configures app themes and color schemes. +- **Shared Styles:** Provides reusable styling components for consistent design. -## Features +### API -TODO: List what your package can do. Maybe include images, gifs, or videos. - -## Getting started - -TODO: List prerequisites and provide or point to information on how to -start using the package. - -## Usage - -TODO: Include short and useful examples for package users. Add longer examples -to `/example` folder. - -```dart -const like = 'sample'; -``` - -## Additional information - -TODO: Tell users more about the package: where to find more information, how to -contribute to the package, how to file issues, what response they can expect -from the package authors, and more. +- **Theme:** Contains theme configurations and styles used throughout the app. +- **App Text Style:** Defines text styles for headings, body text, and other elements. \ No newline at end of file