From 2123c88a3995bb69441bd5d088c07fc52e95cc31 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 14 Sep 2023 16:45:02 +0530 Subject: [PATCH 01/67] Added support for multiple fonts --- packages/hms_room_kit/lib/hms_room_kit.dart | 1 + .../lib/src/common/utility_components.dart | 89 ++++++------ .../lib/src/common/utility_functions.dart | 6 +- .../lib/src/hls_viewer/hls_chat.dart | 16 +-- .../src/hls_viewer/hls_chat_component.dart | 9 +- .../lib/src/hls_viewer/hls_stats_view.dart | 20 ++- .../lib/src/preview/preview_page.dart | 10 +- .../audio_device_change_dialog.dart | 6 +- .../app_dialogs/audio_mode_select_dialog.dart | 6 +- .../change_role_option_dialog.dart | 8 +- .../change_simulcast_layer_option_dialog.dart | 10 +- .../hls_aspect_ratio_option_dialog.dart | 6 +- .../app_dialogs/local_peer_tile_dialog.dart | 13 +- .../app_dialogs/remote_peer_tile_dialog.dart | 19 +-- .../role_change_request_dialog.dart | 4 +- .../widgets/app_dialogs/stats_for_nerds.dart | 42 +++--- .../track_change_request_dialog.dart | 6 +- .../change_name_bottom_sheet.dart | 6 +- .../bottom_sheets/chat_bottom_sheet.dart | 42 +++--- .../meeting_mode_bottom_sheet.dart | 14 +- .../more_settings_bottom_sheet.dart | 8 +- .../notification_settings_bottom_sheet.dart | 14 +- .../bottom_sheets/start_hls_bottom_sheet.dart | 6 +- .../viewer_settings_bottom_sheet.dart | 16 +-- .../widgets/common_widgets/degrade_text.dart | 4 +- .../common_widgets/hms_subheading_text.dart | 6 +- .../common_widgets/hms_subtitle_text.dart | 6 +- .../common_widgets/hms_text_style.dart | 78 +++++++++++ .../common_widgets/hms_title_text.dart | 6 +- .../common_widgets/message_container.dart | 129 +++++++++--------- .../common_widgets/share_link_option.dart | 12 +- .../meeting_modes/basic_grid_view.dart | 14 +- .../meeting_modes/full_screen_mode.dart | 4 +- .../src/widgets/meeting_modes/hero_mode.dart | 4 +- .../meeting_modes/inset_grid_view.dart | 8 +- .../widgets/peer_widgets/rtc_stats_view.dart | 67 ++++----- packages/hmssdk_flutter/example/.gitignore | 1 + .../lib/app_settings_bottom_sheet.dart | 42 +++--- packages/hmssdk_flutter/example/lib/main.dart | 10 +- 39 files changed, 439 insertions(+), 329 deletions(-) create mode 100644 packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart diff --git a/packages/hms_room_kit/lib/hms_room_kit.dart b/packages/hms_room_kit/lib/hms_room_kit.dart index 3a1341a7f..d1a993a16 100644 --- a/packages/hms_room_kit/lib/hms_room_kit.dart +++ b/packages/hms_room_kit/lib/hms_room_kit.dart @@ -13,6 +13,7 @@ export 'package:hms_room_kit/src/common/constants.dart'; export 'package:hms_room_kit/src/common/utility_functions.dart'; export 'package:hms_room_kit/src/service/app_debug_config.dart'; export 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; +export 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; /// HMSSDK exports export 'package:hmssdk_flutter/src/model/hms_ios_screenshare_config.dart'; diff --git a/packages/hms_room_kit/lib/src/common/utility_components.dart b/packages/hms_room_kit/lib/src/common/utility_components.dart index 1112ec47c..9c2db079d 100644 --- a/packages/hms_room_kit/lib/src/common/utility_components.dart +++ b/packages/hms_room_kit/lib/src/common/utility_components.dart @@ -6,7 +6,6 @@ import 'package:flutter_svg/svg.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:collection/collection.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:provider/provider.dart'; //Project imports @@ -23,6 +22,7 @@ import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_disconnected_toast.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_reconnection_toast.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[UtilityComponents] contains the common components used in the app class UtilityComponents { @@ -64,7 +64,7 @@ class UtilityComponents { // ), // Text( // 'Do you wish to leave?', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: errorColor, // fontSize: 20, // fontWeight: FontWeight.w600, @@ -75,7 +75,7 @@ class UtilityComponents { // ), // content: Text( // "You will leave the room immediately. You can’t undo this action.", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: themeHintColor, // fontSize: 14, // fontWeight: FontWeight.w400, @@ -104,7 +104,7 @@ class UtilityComponents { // padding: const EdgeInsets.symmetric( // horizontal: 8.0, vertical: 12), // child: Text('Nevermind', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: hmsWhiteColor, // fontSize: 16, // fontWeight: FontWeight.w600, @@ -133,7 +133,7 @@ class UtilityComponents { // horizontal: 8.0, vertical: 12), // child: Text( // 'Leave Room', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: themeDefaultColor, // fontSize: 16, // fontWeight: FontWeight.w600, @@ -172,7 +172,7 @@ class UtilityComponents { ), Text( 'Leave Studio', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, height: 24 / 20, @@ -184,7 +184,7 @@ class UtilityComponents { ), content: Text( "Others will continue after you leave. You can join the studio again.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeHintColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -286,7 +286,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, content: Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -294,7 +294,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context); @@ -335,7 +335,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'Cancel', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context, ''); @@ -344,7 +344,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { if (textController.text == "") { @@ -380,7 +380,7 @@ class UtilityComponents { children: [ Text( "Single file per layer", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -400,7 +400,7 @@ class UtilityComponents { children: [ Text( "Video on Demand", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -421,7 +421,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'Cancel', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context, ''); @@ -430,7 +430,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { if (textController.text == "") { @@ -459,7 +459,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, title: Text( "Select Role for Mute", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -479,7 +479,7 @@ class UtilityComponents { children: [ Text( roles[index].name, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -504,7 +504,8 @@ class UtilityComponents { children: [ Text( "Mute All", - style: GoogleFonts.inter(color: Colors.red), + style: HMSTextStyle.setTextStyle( + color: Colors.red), ), Checkbox( value: muteAll, @@ -539,7 +540,7 @@ class UtilityComponents { }, child: Text( "Cancel", - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), )), ElevatedButton( style: ButtonStyle( @@ -568,7 +569,7 @@ class UtilityComponents { }, child: Text( "Mute", - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), )) ], ) @@ -597,7 +598,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, title: Text( "Select roles for change role", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -617,7 +618,7 @@ class UtilityComponents { children: [ Text( roles[index].name, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -639,7 +640,7 @@ class UtilityComponents { }), Text( "Change roles to", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -703,7 +704,7 @@ class UtilityComponents { }, child: Text( "Cancel", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w600), )), ElevatedButton( @@ -733,7 +734,7 @@ class UtilityComponents { }, child: Text( "Change Role", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w600), )) ], @@ -779,7 +780,7 @@ class UtilityComponents { contentPadding: EdgeInsets.zero, title: Text( "Recording", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -817,7 +818,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 6, vertical: 12), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -859,7 +860,7 @@ class UtilityComponents { horizontal: 6, vertical: 12), child: Text( 'Start RTMP', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -899,7 +900,7 @@ class UtilityComponents { ), Text( "End Room", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: errorColor, fontSize: 20, height: 24 / 20, @@ -911,7 +912,7 @@ class UtilityComponents { ), content: Text( "The session will end for everyone and all the activities will stop. You can’t undo this action.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: dialogcontentColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -941,7 +942,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 8.0, vertical: 12), child: Text("Don't End", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -971,7 +972,7 @@ class UtilityComponents { horizontal: 8.0, vertical: 12), child: Text( "End Room", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1029,14 +1030,14 @@ class UtilityComponents { // title: Center( // child: Text( // errorTitle, - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: HMSThemeColors.alertErrorDefault, // fontSize: 16, // fontWeight: FontWeight.w600), // ), // ), // content: Text(errorMessage, - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: HMSThemeColors.onSurfaceHighEmphasis, // fontSize: 14, // fontWeight: FontWeight.w400)), @@ -1060,7 +1061,7 @@ class UtilityComponents { // onPressed: action, // child: Text( // actionMessage, - // style: GoogleFonts.inter(), + // style: HMSTextStyle.setTextStyle(), // )), // ], // ) @@ -1120,7 +1121,7 @@ class UtilityComponents { ), Text( title, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: errorColor, fontSize: 20, height: 24 / 20, @@ -1131,7 +1132,7 @@ class UtilityComponents { ), ), content: Text(content, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: dialogcontentColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -1161,7 +1162,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 8.0, vertical: 12), child: Text(ignoreText, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1194,7 +1195,7 @@ class UtilityComponents { horizontal: 8.0, vertical: 12), child: Text( actionText, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1226,7 +1227,7 @@ class UtilityComponents { const EdgeInsets.symmetric(horizontal: 10, vertical: 10), backgroundColor: themeBottomSheetColor, title: Text("Change Name", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontWeight: FontWeight.w600, letterSpacing: 0.15, @@ -1283,7 +1284,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 6, vertical: 12), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1314,7 +1315,7 @@ class UtilityComponents { horizontal: 6, vertical: 12), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1437,7 +1438,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1468,7 +1469,7 @@ class UtilityComponents { vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/common/utility_functions.dart b/packages/hms_room_kit/lib/src/common/utility_functions.dart index 0657f3b68..3927bbaec 100644 --- a/packages/hms_room_kit/lib/src/common/utility_functions.dart +++ b/packages/hms_room_kit/lib/src/common/utility_functions.dart @@ -5,13 +5,13 @@ import 'dart:math' as math; import 'package:bot_toast/bot_toast.dart'; import 'package:flutter/material.dart'; import 'package:flutter_foreground_task/flutter_foreground_task.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/animated_text.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:shared_preferences/shared_preferences.dart'; + ///This class contains the utility functions used in the app class Utilities { static RegExp regexEmoji = RegExp( @@ -259,7 +259,7 @@ class Utilities { static void showToast(String message, {int time = 1}) { // BotToast.showText( - // textStyle: GoogleFonts.inter(fontSize: 14), + // textStyle: HMSTextStyle.setTextStyle(fontSize: 14), // text: message, // contentColor: Colors.black87, // duration: Duration(seconds: time)); @@ -273,7 +273,7 @@ class Utilities { AnimatedTextWidget( text: message, duration: Duration(seconds: time)), onlyOne: false, - textStyle: GoogleFonts.inter(fontSize: 14), + textStyle: HMSTextStyle.setTextStyle(fontSize: 14), text: message, contentColor: Colors.black87, duration: Duration(seconds: time)); diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart index 792ba6412..bd968adb3 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart @@ -2,7 +2,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; @@ -16,6 +15,7 @@ import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HLSChat] is a widget that is used to display the chat screen ///It is used to send messages to everyone, to a specific role or to a specific peer @@ -125,7 +125,7 @@ class _HLSChatState extends State { children: [ Text( "Chat", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, @@ -178,7 +178,7 @@ class _HLSChatState extends State { 0.66, child: Text( "Messages can only be seen by people in the call and are deleted when the call ends.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w400, color: themeSubHeadingColor, letterSpacing: 0.4, @@ -241,13 +241,13 @@ class _HLSChatState extends State { }, options: const LinkifyOptions( humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12.0, color: themeSubHeadingColor, letterSpacing: 0.4, height: 16 / 12, fontWeight: FontWeight.w400), - linkStyle: GoogleFonts.inter( + linkStyle: HMSTextStyle.setTextStyle( fontSize: 12.0, color: hmsdefaultColor, letterSpacing: 0.4, @@ -289,7 +289,7 @@ class _HLSChatState extends State { return Center( child: Text( 'No messages', - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), )); } _scrollToEnd(); @@ -346,7 +346,7 @@ class _HLSChatState extends State { onSubmitted: (value) { sendMessage(); }, - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), controller: messageTextController, decoration: InputDecoration( border: InputBorder.none, @@ -354,7 +354,7 @@ class _HLSChatState extends State { enabledBorder: InputBorder.none, errorBorder: InputBorder.none, disabledBorder: InputBorder.none, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: themeHintColor, fontSize: 14, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart index ccfe7404f..f334a14e5 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart @@ -2,7 +2,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; @@ -11,6 +10,8 @@ import 'package:url_launcher/url_launcher.dart'; ///Project imports import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; + ///[HLSChatComponent] is a component that is used to show the chat class HLSChatComponent extends StatefulWidget { @@ -93,7 +94,7 @@ class _HLSChatComponentState extends State { } }, options: const LinkifyOptions(humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: Colors.white, fontSize: 14, height: 20 / 14, @@ -135,7 +136,7 @@ class _HLSChatComponentState extends State { }, textCapitalization: TextCapitalization.sentences, textInputAction: TextInputAction.send, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis, fontWeight: FontWeight.w400, height: 20 / 14, @@ -166,7 +167,7 @@ class _HLSChatComponentState extends State { width: 2, color: HMSThemeColors.primaryDefault), borderRadius: const BorderRadius.all(Radius.circular(8))), - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, height: 0.6, diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart index 086e10e2f..3b4f686df 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:provider/provider.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; class HLSStatsView extends StatelessWidget { const HLSStatsView({super.key}); @@ -22,7 +22,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, bitrate, __) { return Text( "Bitrate : ${bitrate == null ? "-" : (bitrate / 8000)} KBps", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.averageBitrate), @@ -33,7 +34,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, bufferedDuration, __) { return Text( "Buffered Duration : ${bufferedDuration == null ? "-" : bufferedDuration / 1000}", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.bufferedDuration), @@ -43,7 +45,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, videoWidth, __) { return Text("Video Width : ${videoWidth ?? "-"} px", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.videoWidth), @@ -53,7 +56,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, videoHeight, __) { return Text("Video Height : ${videoHeight ?? "-"} px", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.videoHeight), @@ -63,7 +67,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, droppedFrameCount, __) { return Text("Dropped Frames : ${droppedFrameCount ?? "-"} ", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.droppedFrameCount), @@ -74,7 +79,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, distanceFromLive, __) { return Text( "Distance from live edge : ${distanceFromLive == null ? "-" : distanceFromLive / 1000}s", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.distanceFromLive), diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 1da0dac49..210aecb7d 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -5,6 +5,7 @@ import 'dart:io'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:provider/provider.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -333,9 +334,10 @@ class _PreviewPageState extends State { textCapitalization: TextCapitalization .words, - style: GoogleFonts.inter( - color: HMSThemeColors - .onSurfaceHighEmphasis), + style: HMSTextStyle + .setTextStyle( + color: HMSThemeColors + .onSurfaceHighEmphasis), controller: nameController, keyboardType: @@ -359,7 +361,7 @@ class _PreviewPageState extends State { ///This renders the hint text hintText: 'Enter Name...', - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors .onSurfaceLowEmphasis, height: diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart index 21d48d004..d092b6f27 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; //Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -10,6 +9,7 @@ import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; class AudioDeviceChangeDialog extends StatefulWidget { final HMSAudioDevice currentAudioDevice; @@ -119,7 +119,7 @@ class AudioDeviceChangeDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -150,7 +150,7 @@ class AudioDeviceChangeDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart index 17a2dca27..5854e3109 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; //Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -10,6 +9,7 @@ import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; /// The [AudioModeSelectDialog] is a dialog that allows the user to select the current audio output route class AudioModeSelectDialog extends StatefulWidget { @@ -128,7 +128,7 @@ class AudioModeSelectDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -156,7 +156,7 @@ class AudioModeSelectDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart index fd93a2af4..5fe15ce12 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:collection/collection.dart'; //Project imports @@ -11,6 +10,7 @@ import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; class ChangeRoleOptionDialog extends StatefulWidget { @@ -133,7 +133,7 @@ class ChangeRoleOptionDialogState extends State { width: width * 0.5, child: Text( "Request permission from the user", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 14, height: 20 / 14, @@ -164,7 +164,7 @@ class ChangeRoleOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -195,7 +195,7 @@ class ChangeRoleOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart index d256efe3c..eb4cbd3b1 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart @@ -1,11 +1,11 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:collection/collection.dart'; +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; //Project imports -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; -import 'package:collection/collection.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; @@ -127,7 +127,7 @@ class ChangeSimulcastLayerOptionDialogState padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -158,7 +158,7 @@ class ChangeSimulcastLayerOptionDialogState const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart index 3532468f7..b14be5aa8 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart @@ -1,7 +1,7 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; @@ -119,7 +119,7 @@ class AspectRatioOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -140,7 +140,7 @@ class AspectRatioOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart index dc80f66c5..b5921f7b6 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/constants.dart'; @@ -40,7 +40,8 @@ class LocalPeerTileDialogState extends State { return AlertDialog( title: Text( widget.peerName, - style: GoogleFonts.inter(color: iconColor, fontWeight: FontWeight.bold), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontWeight: FontWeight.bold), ), backgroundColor: themeBottomSheetColor, content: SizedBox( @@ -66,7 +67,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Change Name", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -91,7 +92,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Change Role", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -113,7 +114,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Toggle Flash", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -141,7 +142,7 @@ class LocalPeerTileDialogState extends State { widget.isSpotlightedPeer ? "Remove From Spotlight" : "Spotlight Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart index bd1be8966..36c9293f9 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart @@ -1,7 +1,7 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/constants.dart'; @@ -54,7 +54,8 @@ class RemotePeerTileDialogState extends State { backgroundColor: themeBottomSheetColor, title: Text( widget.peerName, - style: GoogleFonts.inter(color: iconColor, fontWeight: FontWeight.bold), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontWeight: FontWeight.bold), ), content: SizedBox( width: double.infinity, @@ -88,7 +89,7 @@ class RemotePeerTileDialogState extends State { ), Text( "${widget.isVideoMuted ? "Unmute" : "Mute"} video", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -124,7 +125,7 @@ class RemotePeerTileDialogState extends State { ), Text( "${widget.isAudioMuted ? "Unmute" : "Mute"} audio", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ), ], ), @@ -152,7 +153,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Remove Peer", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -177,7 +178,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Change Role", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -203,7 +204,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Streaming Quality", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -228,7 +229,7 @@ class RemotePeerTileDialogState extends State { ), Text( widget.pinTile ? "Unpin Tile" : "Pin Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -256,7 +257,7 @@ class RemotePeerTileDialogState extends State { widget.isSpotlightedPeer ? "Remove From Spotlight" : "Spotlight Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart index f4837f9d8..e5c859ea9 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart @@ -1,6 +1,6 @@ // Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -33,7 +33,7 @@ class RoleChangeRequestDialogState extends State { children: [ Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart index 485664d66..009f76af2 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart @@ -1,6 +1,6 @@ import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; @@ -242,7 +242,7 @@ class _StatsForNerdsState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Close', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -281,7 +281,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -300,7 +300,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Sent", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -320,7 +320,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Round Trip", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -354,7 +354,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -373,7 +373,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -393,7 +393,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Jitter", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -412,7 +412,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Lost", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -432,7 +432,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -469,7 +469,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -488,7 +488,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Sent", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -508,7 +508,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Frame Rate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -528,7 +528,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Round Trip", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -548,7 +548,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Quality Limitation", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -582,7 +582,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -601,7 +601,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -621,7 +621,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Jitter", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -640,7 +640,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "FPS", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -660,7 +660,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Lost", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -680,7 +680,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart index 5e413ab5d..316ecb48f 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart @@ -1,9 +1,9 @@ // Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; // Project imports -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/enums/meeting_mode.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -39,7 +39,7 @@ class TrackChangeRequestDialogState extends State { children: [ Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart index 0f53b6e26..60ee85f47 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart @@ -1,10 +1,10 @@ ///Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_cross_button.dart'; import 'package:provider/provider.dart'; ///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_listenable_button.dart'; @@ -120,7 +120,7 @@ class _ChangeNameBottomSheetState extends State { FocusManager.instance.primaryFocus?.unfocus(), textInputAction: TextInputAction.done, textCapitalization: TextCapitalization.words, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis), controller: nameController, keyboardType: TextInputType.text, @@ -138,7 +138,7 @@ class _ChangeNameBottomSheetState extends State { hintText: nameController.text.isEmpty ? 'Enter Name...' : nameController.text, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, height: 1.5, fontSize: 16, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart index 2122a1729..8f249d693 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart @@ -2,20 +2,20 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/hms_room_kit.dart'; -import 'package:hms_room_kit/src/enums/session_store_keys.dart'; -import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; - -//Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:url_launcher/url_launcher.dart'; +//Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; +import 'package:hms_room_kit/hms_room_kit.dart'; +import 'package:hms_room_kit/src/enums/session_store_keys.dart'; +import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; +import 'package:hms_room_kit/src/meeting/meeting_store.dart'; + class ChatBottomSheet extends StatefulWidget { const ChatBottomSheet({super.key}); @@ -168,7 +168,8 @@ class _ChatBottomSheetState extends State { options: const LinkifyOptions( humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle + .setTextStyle( fontSize: 14.0, color: HMSThemeColors .onSurfaceHighEmphasis, @@ -177,14 +178,17 @@ class _ChatBottomSheetState extends State { fontWeight: FontWeight.w400, ), - linkStyle: GoogleFonts.inter( - fontSize: 14.0, - color: HMSThemeColors - .primaryDefault, - letterSpacing: 0.25, - height: 20 / 14, - fontWeight: - FontWeight.w400), + linkStyle: HMSTextStyle + .setTextStyle( + fontSize: 14.0, + color: HMSThemeColors + .primaryDefault, + letterSpacing: + 0.25, + height: 20 / 14, + fontWeight: + FontWeight + .w400), ), ), ], @@ -322,7 +326,7 @@ class _ChatBottomSheetState extends State { onChanged: (value) { setState(() {}); }, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis, fontWeight: FontWeight.w400, height: 20 / 14, @@ -365,7 +369,7 @@ class _ChatBottomSheetState extends State { enabledBorder: InputBorder.none, errorBorder: InputBorder.none, disabledBorder: InputBorder.none, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, height: 20 / 14, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart index b89409775..409777a95 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/enums/meeting_mode.dart'; @@ -53,7 +53,7 @@ class _MeetingModeBottomSheetState extends State { child: Text( "Meeting Modes", textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -108,7 +108,7 @@ class _MeetingModeBottomSheetState extends State { ), title: Text( "Normal Mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: (meetingStore.meetingMode == MeetingMode.equalProminenceWithInset) @@ -145,7 +145,7 @@ class _MeetingModeBottomSheetState extends State { ), title: Text( "Active Speaker Mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: (meetingStore.meetingMode == MeetingMode.activeSpeakerWithInset) @@ -180,7 +180,7 @@ class _MeetingModeBottomSheetState extends State { title: Text( "Audio View", semanticsLabel: "fl_audio_video_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: meetingStore.meetingMode == MeetingMode.audio ? errorColor @@ -213,7 +213,7 @@ class _MeetingModeBottomSheetState extends State { ), title: Text( "Hero Mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: meetingStore.meetingMode == MeetingMode.hero ? errorColor @@ -246,7 +246,7 @@ class _MeetingModeBottomSheetState extends State { ), title: Text( "Single Tile Mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: meetingStore.meetingMode == MeetingMode.single diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 09291a469..95a08b68d 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -3,7 +3,7 @@ import 'dart:io'; import 'package:badges/badges.dart' as badge; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; @@ -144,7 +144,7 @@ class _MoreSettingsBottomSheetState extends State { Text( "Participants", semanticsLabel: "participants_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -190,7 +190,7 @@ class _MoreSettingsBottomSheetState extends State { Text( "Audio Settings", semanticsLabel: "fl_audio_settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -698,7 +698,7 @@ class _MoreSettingsBottomSheetState extends State { // title: Text( // "Modify Notifications", // semanticsLabel: "fl_notification_setting", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // colorFilter: ColorFilter.mode(themeDefaultColor, BlendMode.srcIn), // letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart index ceb27dbf3..c055638b2 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart' show GoogleFonts; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; @@ -58,7 +58,7 @@ class _NotificationSettingsBottomSheetState children: [ Text( "Notifications", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -106,7 +106,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Peer Joined", semanticsLabel: "fl_peer_join_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -135,7 +135,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Peer Left", semanticsLabel: "fl_peer_leave_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -164,7 +164,7 @@ class _NotificationSettingsBottomSheetState title: Text( "New Message", semanticsLabel: "fl_new-message_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -192,7 +192,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Hand Raise", semanticsLabel: "fl_hand_raise_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -220,7 +220,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Error", semanticsLabel: "fl_error_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart index 2da21b150..a9b994509 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -95,7 +95,7 @@ class _StartHLSBottomSheetState extends State { Text( "Stream directly from the browser using any device with multiple hosts and real-time messaging, all within this platform.", maxLines: 2, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeSubHeadingColor, fontSize: 14, height: 20 / 14, @@ -205,7 +205,7 @@ class _StartHLSBottomSheetState extends State { width: MediaQuery.of(context).size.width - 65, child: Text( "If recording has to be enabled later, streaming has to be stopped first.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeSubHeadingColor, letterSpacing: 0.4, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart index 62a9f5197..538a11b46 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart @@ -2,7 +2,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart'; @@ -45,7 +45,7 @@ class _ViewerSettingsBottomSheetState extends State { children: [ Text( "More Options", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -133,7 +133,7 @@ class _ViewerSettingsBottomSheetState extends State { Text( "Participants", semanticsLabel: "participants_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -182,7 +182,7 @@ class _ViewerSettingsBottomSheetState extends State { Text( "Set Aspect Ratio", semanticsLabel: "fl_aspect_ratio", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -221,7 +221,7 @@ class _ViewerSettingsBottomSheetState extends State { ), title: Text( "Change Name", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -247,7 +247,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Raise Hand", semanticsLabel: "hand_raise_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: context.read().isRaisedHand ? errorColor @@ -279,7 +279,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Modify Notifications", semanticsLabel: "fl_notification_setting", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -302,7 +302,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Enter Pip Mode", semanticsLabel: "fl_pip_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart index 1c8a5fe70..61fab9b50 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; import 'package:provider/provider.dart'; @@ -22,7 +22,7 @@ class DegradeText extends StatelessWidget { maxLines: 1, softWrap: true, overflow: TextOverflow.ellipsis, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w400, color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart index 9572b8ade..4cc373df6 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/cupertino.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSSubheadingText] returns a text widget with the default theme ///The paramters and their default values are as follows: @@ -45,7 +47,7 @@ class HMSSubheadingText extends StatelessWidget { softWrap: true, textAlign: textAlign, maxLines: maxLines, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( height: lineHeight! / fontSize!, fontSize: fontSize, letterSpacing: letterSpacing, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart index d0e674e5a..8b550777f 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/cupertino.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSSubtitleText] returns a text widget with the default theme ///The paramters and their default values are as follows: @@ -40,7 +42,7 @@ class HMSSubtitleText extends StatelessWidget { overflow: textOverflow, softWrap: true, textAlign: textAlign, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( height: lineHeight! / fontSize!, fontSize: fontSize, letterSpacing: letterSpacing, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart new file mode 100644 index 000000000..2400ed69c --- /dev/null +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart @@ -0,0 +1,78 @@ +///Package imports +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; + +///[HMSTextStyle] returns a text style +///TextStyle is returned on the basis of the font family selected on the prebuilt dashboard +///If no font family is selected, then the default font family returned is Inter +///It takes following parameters: +///[fontSize] - The size of the font +///[color] - The color of the text +///[fontWeight] - The weight of the font +///[fontStyle] - The style of the font +///[letterSpacing] - The spacing between the letters +///[height] - The height of the line +class HMSTextStyle { + static TextStyle setTextStyle({ + double? fontSize, + Color? color, + FontWeight? fontWeight, + FontStyle? fontStyle, + double? letterSpacing, + double? height, + }) { + switch (HMSRoomLayout.roleLayoutData?.typography?.typography) { + case 'Roboto': + return GoogleFonts.roboto( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Lato': + return GoogleFonts.lato( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Montserrat': + return GoogleFonts.montserrat( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Open Sans': + return GoogleFonts.openSans( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'IBM Plex Sans': + return GoogleFonts.ibmPlexSans( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + default: + return GoogleFonts.inter( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + } + } +} diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart index 0a814eb16..050c68b66 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSTitleText] is a widget that is used to render the title text ///It takes following parameters: @@ -35,7 +37,7 @@ class HMSTitleText extends StatelessWidget { Widget build(BuildContext context) { return Text(text, overflow: textOverflow, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: textColor, height: lineHeight! / fontSize!, fontSize: fontSize, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart index 7fb2f56b5..a67a4d51a 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart @@ -1,15 +1,19 @@ +///Package imports import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; -import 'package:url_launcher/url_launcher.dart'; + class MessageContainer extends StatelessWidget { final String message; @@ -58,64 +62,63 @@ class MessageContainer extends StatelessWidget { ), ], ), - if(HMSRoomLayout.chatData?.allowPinningMessages??true) - Row( - children: [ - if (role == "") - PopupMenuButton( - position: PopupMenuPosition.under, - color: HMSThemeColors.surfaceDefault, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(8)), - itemBuilder: (context) { - return List.generate(1, (index) { - return PopupMenuItem( - height: 52, - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/pin.svg", - height: 20, - width: 20, - colorFilter: ColorFilter.mode( - HMSThemeColors.onSurfaceMediumEmphasis, - BlendMode.srcIn), - ), - const SizedBox( - width: 8, - ), - HMSTitleText( - text: "Pin Message", - fontSize: 14, - lineHeight: 20, - letterSpacing: 0.1, - textColor: - HMSThemeColors.onSurfaceHighEmphasis, - ) - ], - ), - onTap: () => context - .read() - .setSessionMetadataForKey( - key: - SessionStoreKeyValues.getNameFromMethod( - SessionStoreKey - .pinnedMessageSessionKey), - metadata: "${senderName!}: $message"), - ); - }); - }, - child: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/more.svg", - height: 20, - width: 20, - colorFilter: ColorFilter.mode( - HMSThemeColors.onSurfaceMediumEmphasis, - BlendMode.srcIn), - ), - ) - ], - ) + if (HMSRoomLayout.chatData?.allowPinningMessages ?? true) + Row( + children: [ + if (role == "") + PopupMenuButton( + position: PopupMenuPosition.under, + color: HMSThemeColors.surfaceDefault, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(8)), + itemBuilder: (context) { + return List.generate(1, (index) { + return PopupMenuItem( + height: 52, + child: Row( + children: [ + SvgPicture.asset( + "packages/hms_room_kit/lib/src/assets/icons/pin.svg", + height: 20, + width: 20, + colorFilter: ColorFilter.mode( + HMSThemeColors.onSurfaceMediumEmphasis, + BlendMode.srcIn), + ), + const SizedBox( + width: 8, + ), + HMSTitleText( + text: "Pin Message", + fontSize: 14, + lineHeight: 20, + letterSpacing: 0.1, + textColor: + HMSThemeColors.onSurfaceHighEmphasis, + ) + ], + ), + onTap: () => context + .read() + .setSessionMetadataForKey( + key: SessionStoreKeyValues + .getNameFromMethod(SessionStoreKey + .pinnedMessageSessionKey), + metadata: "${senderName!}: $message"), + ); + }); + }, + child: SvgPicture.asset( + "packages/hms_room_kit/lib/src/assets/icons/more.svg", + height: 20, + width: 20, + colorFilter: ColorFilter.mode( + HMSThemeColors.onSurfaceMediumEmphasis, + BlendMode.srcIn), + ), + ) + ], + ) ], ), const SizedBox( @@ -130,13 +133,13 @@ class MessageContainer extends StatelessWidget { } }, options: const LinkifyOptions(humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14.0, color: HMSThemeColors.onSurfaceHighEmphasis, height: 20 / 14, letterSpacing: 0.25, fontWeight: FontWeight.w400), - linkStyle: GoogleFonts.inter( + linkStyle: HMSTextStyle.setTextStyle( fontSize: 14.0, color: HMSThemeColors.primaryDefault, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart index c37dc097e..183d1e476 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart @@ -1,17 +1,17 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; - -//Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:collection/collection.dart'; +import 'package:share_plus/share_plus.dart'; + +//Project imports import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:share_plus/share_plus.dart'; class ShareLinkOptionDialog extends StatefulWidget { final List roles; @@ -122,7 +122,7 @@ class ShareLinkOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -163,7 +163,7 @@ class ShareLinkOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Share', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart index e14d51e21..caca72a69 100644 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart +++ b/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart @@ -1,7 +1,12 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:provider/provider.dart'; +import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; + +//Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; @@ -10,11 +15,6 @@ import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; Widget basicGridView( {required List peerTracks, @@ -56,7 +56,7 @@ Widget basicGridView( ), Text("You are sharing your screen", textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart index cbb1707c0..3b1141e09 100644 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart +++ b/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart @@ -1,7 +1,6 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; @@ -15,6 +14,7 @@ import 'package:provider/provider.dart'; //Project imports import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; Widget fullScreenMode( {required List peerTracks, @@ -54,7 +54,7 @@ Widget fullScreenMode( Text( "You are sharing your screen", textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart index 027f9f2f1..000bed21c 100644 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart +++ b/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart @@ -1,7 +1,6 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; @@ -15,6 +14,7 @@ import 'package:provider/provider.dart'; //Project imports import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; Widget heroMode( {required List peerTracks, @@ -56,7 +56,7 @@ Widget heroMode( ), Text("You are sharing your screen", textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart index 769b112c4..cfac24c3f 100644 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart +++ b/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart @@ -1,7 +1,6 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; @@ -11,11 +10,12 @@ import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:provider/provider.dart'; - -//Project imports import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; +//Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; + /// Returns the Grid for inset mode Widget insetGridView( {required List peerTracks, @@ -61,7 +61,7 @@ Widget insetGridView( ), Text("You are sharing your screen", textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, diff --git a/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart b/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart index f1f1dd335..531f125af 100644 --- a/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart +++ b/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart @@ -1,5 +1,5 @@ //Package imports -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; @@ -58,11 +58,11 @@ class Stats extends StatelessWidget { height: 10, ), Text("Downlink\t ${data.item4 ?? "-1"}", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontSize: 12)), Text( "Bitrate(A)\t ${data.item3?.hmsLocalAudioStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontSize: 12)), ], )); @@ -87,35 +87,35 @@ class Stats extends StatelessWidget { children: [ Text( "Width\t ${data.item3?.hmsRemoteVideoStats?.resolution.width.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Height\t ${data.item3?.hmsRemoteVideoStats?.resolution.height.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "FPS\t ${data.item3?.hmsRemoteVideoStats?.frameRate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text("Downlink\t ${data.item4 ?? "-1"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Bitrate(V)\t ${data.item3?.hmsRemoteVideoStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Bitrate(A)\t ${data.item3?.hmsRemoteAudioStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Jitter(V)\t ${data.item3?.hmsRemoteVideoStats?.jitter.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Jitter(A)\t ${data.item3?.hmsRemoteAudioStats?.jitter.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), ], ), ); @@ -130,14 +130,14 @@ class Stats extends StatelessWidget { children: [ TableRow(children: [ Text("Layer", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map((layerStats) => Text( HMSSimulcastLayerValue.getValueFromHMSSimulcastLayer( layerStats?.hmsLayer) .toUpperCase(), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10))) @@ -145,39 +145,42 @@ class Stats extends StatelessWidget { ]), TableRow(children: [ Text("Width", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.resolution.width.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() ]), TableRow(children: [ Text("Height", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.resolution.height.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() ]), TableRow(children: [ Text("FPS", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.frameRate.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() @@ -185,14 +188,15 @@ class Stats extends StatelessWidget { TableRow(children: [ Text( "Bitrate(V)", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10), ), ...videoStats .map( (layerStats) => Text( layerStats?.bitrate.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() @@ -200,14 +204,15 @@ class Stats extends StatelessWidget { TableRow(children: [ Text( "Quality Limitation", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10), ), ...videoStats .map( (layerStats) => Text( layerStats?.hmsQualityLimitationReasons?.reason.name ?? "", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() diff --git a/packages/hmssdk_flutter/example/.gitignore b/packages/hmssdk_flutter/example/.gitignore index c613f32fb..e43729bb2 100644 --- a/packages/hmssdk_flutter/example/.gitignore +++ b/packages/hmssdk_flutter/example/.gitignore @@ -44,3 +44,4 @@ app.*.map.json /android/app/debug /android/app/profile /android/app/release +/android/app/flutter-hms-4aea6d38fd2a.json \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart index d2b1b2496..e7a35806a 100644 --- a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart +++ b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart @@ -125,7 +125,7 @@ class _AppSettingsBottomSheetState extends State { children: [ Text( "App Settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -174,7 +174,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Dark Mode", // semanticsLabel: "fl_dark_light_mode", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -209,7 +209,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Debug Mode", semanticsLabel: "fl_enable_debug_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -239,7 +239,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Mock Layout API", semanticsLabel: "fl_enable_mock_layout_api", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -270,7 +270,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Join with muted audio", semanticsLabel: "fl_join_with_muted_audio", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -300,7 +300,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Join with muted video", semanticsLabel: "fl_join_with_muted_video", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -329,7 +329,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Skip Preview", // semanticsLabel: "fl_preview_enable", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -356,7 +356,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Mirror Camera", semanticsLabel: "fl_mirror_camera_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -385,7 +385,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Stats", semanticsLabel: "fl_stats_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -415,7 +415,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Software Decoder", semanticsLabel: "fl_software_decoder_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -447,7 +447,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Disable Audio Mixer", semanticsLabel: "fl_track_settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -476,7 +476,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Auto Simulcast", semanticsLabel: "fl_auto_simulcast", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -518,7 +518,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Audio Mode", semanticsLabel: "fl_audio_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -554,7 +554,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Modify Notifications", // semanticsLabel: "fl_notification_setting", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -573,7 +573,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Ask on Discord", semanticsLabel: "fl_ask_feedback", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -589,7 +589,7 @@ class _AppSettingsBottomSheetState extends State { leading: Text( "App Version", semanticsLabel: "app_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -598,7 +598,7 @@ class _AppSettingsBottomSheetState extends State { trailing: Text( widget.appVersion, semanticsLabel: "app_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -615,7 +615,7 @@ class _AppSettingsBottomSheetState extends State { leading: Text( "HMSSDK Version", semanticsLabel: "hmssdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -624,7 +624,7 @@ class _AppSettingsBottomSheetState extends State { trailing: Text( versions["flutter"] ?? "", semanticsLabel: "hmssdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -644,7 +644,7 @@ class _AppSettingsBottomSheetState extends State { semanticsLabel: Platform.isAndroid ? "android_sdk_version" : "iOS_sdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -657,7 +657,7 @@ class _AppSettingsBottomSheetState extends State { semanticsLabel: Platform.isAndroid ? "android_sdk_version" : "iOS_sdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index a0d11e52c..eaba09c2e 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -301,7 +301,7 @@ class _HomePageState extends State { padding: const EdgeInsets.symmetric(horizontal: 18), child: Text('Experience the power of 100ms', textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( letterSpacing: 0.25, color: themeDefaultColor, height: 1.17, @@ -316,7 +316,7 @@ class _HomePageState extends State { child: Text( 'Jump right in by pasting a room link or scanning a QR code', textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( letterSpacing: 0.5, color: themeSubHeadingColor, height: 1.5, @@ -335,7 +335,7 @@ class _HomePageState extends State { children: [ Text("Room Code", key: Key('room_code_text'), - style: GoogleFonts.inter( + style:HMSTextStyle.setTextStyle( color: themeDefaultColor, height: 1.5, fontSize: 14, @@ -352,7 +352,7 @@ class _HomePageState extends State { onSubmitted: (value) { joinMeeting(); }, - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), controller: meetingLinkController, onChanged: (value) { setState(() {}); @@ -363,7 +363,7 @@ class _HomePageState extends State { fillColor: themeSurfaceColor, filled: true, hintText: 'Paste the room code or link here', - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: hmsHintColor, height: 1.5, fontSize: 16, From 3a8da0a4364791868245666c5afab64fa345534b Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 15 Sep 2023 14:08:46 +0530 Subject: [PATCH 02/67] updated ReadMe --- packages/hms_room_kit/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/hms_room_kit/README.md b/packages/hms_room_kit/README.md index a34bad82a..fbb05e9b8 100644 --- a/packages/hms_room_kit/README.md +++ b/packages/hms_room_kit/README.md @@ -1,6 +1,5 @@ [![100ms-svg](https://user-images.githubusercontent.com/93931528/205858417-8c0a0d1b-2d46-4710-9316-7418092fd3d6.svg)](https://100ms.live/) -[![HMSLive](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) [![HMSLive Room Kit](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) [![License](https://img.shields.io/github/license/100mslive/100ms-flutter)](https://www.100ms.live/) [![Documentation](https://img.shields.io/badge/Read-Documentation-blue)](https://docs.100ms.live/flutter/v2/foundation/basics) From 946ffdd890cd5a39b393106a87b8fcbc50f9edcb Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 15 Sep 2023 14:15:58 +0530 Subject: [PATCH 03/67] updated package version --- .../hms_room_kit/example/ios/Podfile.lock | 10 +- packages/hms_room_kit/example/pubspec.lock | 98 ++++++++--------- packages/hms_room_kit/example/pubspec.yaml | 2 +- packages/hms_room_kit/pubspec.yaml | 2 +- .../example/ExampleAppChangelog.txt | 4 +- .../example/android/Gemfile.lock | 6 +- .../hmssdk_flutter/example/ios/Gemfile.lock | 6 +- packages/hmssdk_flutter/example/pubspec.lock | 101 +++++++++--------- packages/hmssdk_flutter/example/pubspec.yaml | 2 +- packages/hmssdk_flutter/pubspec.yaml | 2 +- 10 files changed, 117 insertions(+), 116 deletions(-) diff --git a/packages/hms_room_kit/example/ios/Podfile.lock b/packages/hms_room_kit/example/ios/Podfile.lock index 5fc050f68..b1a42a426 100644 --- a/packages/hms_room_kit/example/ios/Podfile.lock +++ b/packages/hms_room_kit/example/ios/Podfile.lock @@ -6,14 +6,14 @@ PODS: - HMSBroadcastExtensionSDK (0.0.9) - HMSHLSPlayerSDK (0.0.2): - HMSAnalyticsSDK (= 0.0.2) - - HMSSDK (0.9.11): + - HMSSDK (0.9.12): - HMSAnalyticsSDK (= 0.0.2) - HMSWebRTC (= 1.0.5116) - - hmssdk_flutter (1.7.5): + - hmssdk_flutter (1.8.0): - Flutter - HMSBroadcastExtensionSDK (= 0.0.9) - HMSHLSPlayerSDK (= 0.0.2) - - HMSSDK (= 0.9.11) + - HMSSDK (= 0.9.12) - HMSWebRTC (1.0.5116) - path_provider_foundation (0.0.1): - Flutter @@ -70,8 +70,8 @@ SPEC CHECKSUMS: HMSAnalyticsSDK: 4d2a88a729b1eb42f3d25f217c28937ec318a5b7 HMSBroadcastExtensionSDK: d80fe325f6c928bd8e5176290b5a4b7ae15d6fbb HMSHLSPlayerSDK: 6a54ad4d12f3dc2270d1ecd24019d71282a4f6a3 - HMSSDK: 77720372c9d6378f1b721cb0fb3553b3d1401a9b - hmssdk_flutter: 01116f8d3da3a0ebde0976151b37f9628b26d494 + HMSSDK: 65c1445ad2aac04deb127fe7611f65b8e7447752 + hmssdk_flutter: 806162401c1c9dd1fca07d913b9ee5f1e1d36930 HMSWebRTC: ae54e9dd91b869051b283b43b14f57d43b7bf8e1 path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6 diff --git a/packages/hms_room_kit/example/pubspec.lock b/packages/hms_room_kit/example/pubspec.lock index 3b2aff90f..7e68f6ff0 100644 --- a/packages/hms_room_kit/example/pubspec.lock +++ b/packages/hms_room_kit/example/pubspec.lock @@ -5,10 +5,10 @@ packages: dependency: transitive description: name: archive - sha256: "49b1fad315e57ab0bbc15bcbb874e83116a1d78f77ebd500a4af6c9407d6b28e" + sha256: e0902a06f0e00414e4e3438a084580161279f137aeb862274710f29ec10cf01e url: "https://pub.dev" source: hosted - version: "3.3.8" + version: "3.3.9" args: dependency: transitive description: @@ -29,10 +29,10 @@ packages: dependency: transitive description: name: badges - sha256: "6e7f3ec561ec08f47f912cfe349d4a1707afdc8dda271e17b046aa6d42c89e77" + sha256: a7b6bbd60dce418df0db3058b53f9d083c22cdb5132a052145dc267494df0b84 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" boolean_selector: dependency: transitive description: @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: bot_toast - sha256: db6950851aab00ef04b386eb3c76c83739eaffcb6b80d0dc42a675ef7584623b + sha256: "994c55aa16c4df82726b79a63c1f8d29bd7b89d940a5837728ff51546b630497" url: "https://pub.dev" source: hosted - version: "4.0.4" + version: "4.1.1" characters: dependency: transitive description: @@ -125,10 +125,10 @@ packages: dependency: transitive description: name: dropdown_button2 - sha256: "107444581478342c6511040c2eb52850748400df4f3295df3da8be75693180a5" + sha256: b0fe8d49a030315e9eef6c7ac84ca964250155a6224d491c1365061bc974a9e1 url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.3.9" fake_async: dependency: transitive description: @@ -141,10 +141,10 @@ packages: dependency: transitive description: name: ffi - sha256: ed5337a5660c506388a9f012be0288fb38b49020ce2b45fe1f8b8323fe429f99 + sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "2.1.0" file: dependency: transitive description: @@ -162,10 +162,10 @@ packages: dependency: transitive description: name: flutter_foreground_task - sha256: "501d34957ade7c159b3d44832428a4ed9b2b6ffcff17817f0522a7b7229fcb6c" + sha256: e48d2d810a2d643362e64de41146ed8e95d4dd282bae6abbb32309d9f0bf5d67 url: "https://pub.dev" source: hosted - version: "6.1.1" + version: "6.1.2" flutter_linkify: dependency: transitive description: @@ -194,10 +194,10 @@ packages: dependency: "direct main" description: name: flutter_svg - sha256: f991fdb1533c3caeee0cdc14b04f50f0c3916f0dbcbc05237ccbe4e3c6b93f3f + sha256: "8c5d68a82add3ca76d792f058b186a0599414f279f00ece4830b9b231b570338" url: "https://pub.dev" source: hosted - version: "2.0.5" + version: "2.0.7" flutter_test: dependency: "direct dev" description: flutter @@ -220,17 +220,17 @@ packages: dependency: "direct main" description: name: google_fonts - sha256: "6b6f10f0ce3c42f6552d1c70d2c28d764cf22bb487f50f66cca31dcd5194f4d6" + sha256: "2776c66b3e97c6cdd58d1bd3281548b074b64f1fd5c8f82391f7456e38849567" url: "https://pub.dev" source: hosted - version: "4.0.4" + version: "4.0.5" hms_room_kit: dependency: "direct main" description: path: ".." relative: true source: path - version: "1.0.0" + version: "1.0.1" hmssdk_flutter: dependency: transitive description: @@ -243,10 +243,10 @@ packages: dependency: transitive description: name: http - sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + sha256: "759d1a329847dd0f39226c688d3e06a6b8679668e350e2891a6474f8b4bb8525" url: "https://pub.dev" source: hosted - version: "0.13.6" + version: "1.1.0" http_parser: dependency: transitive description: @@ -267,10 +267,10 @@ packages: dependency: transitive description: name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.6.7" linkify: dependency: transitive description: @@ -283,18 +283,18 @@ packages: dependency: transitive description: name: lints - sha256: "5e4a9cd06d447758280a8ac2405101e0e2094d2a1dbdd3756aec3fe7775ba593" + sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "2.1.1" lottie: dependency: transitive description: name: lottie - sha256: "23522951540d20a57a60202ed7022e6376bed206a4eee1c347a91f58bd57eb9f" + sha256: b8bdd54b488c54068c57d41ae85d02808da09e2bee8b8dd1f59f441e7efa60cd url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.6.0" matcher: dependency: transitive description: @@ -403,18 +403,18 @@ packages: dependency: transitive description: name: permission_handler - sha256: "63e5216aae014a72fe9579ccd027323395ce7a98271d9defa9d57320d001af81" + sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 url: "https://pub.dev" source: hosted - version: "10.4.3" + version: "10.4.5" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: d74e77a5ecd38649905db0a7d05ef16bed42ff263b9efb73ed794317c5764ec3 + sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" url: "https://pub.dev" source: hosted - version: "10.3.4" + version: "10.3.6" permission_handler_apple: dependency: transitive description: @@ -427,10 +427,10 @@ packages: dependency: transitive description: name: permission_handler_platform_interface - sha256: "7c6b1500385dd1d2ca61bb89e2488ca178e274a69144d26bbd65e33eae7c02a9" + sha256: f2343e9fa9c22ae4fd92d4732755bfe452214e7189afcc097380950cf567b4b2 url: "https://pub.dev" source: hosted - version: "3.11.3" + version: "3.11.5" permission_handler_windows: dependency: transitive description: @@ -443,10 +443,10 @@ packages: dependency: transitive description: name: petitparser - sha256: "49392a45ced973e8d94a85fdb21293fbb40ba805fc49f2965101ae748a3683b4" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 url: "https://pub.dev" source: hosted - version: "5.1.0" + version: "5.4.0" platform: dependency: transitive description: @@ -624,10 +624,10 @@ packages: dependency: transitive description: name: url_launcher - sha256: eb1e00ab44303d50dd487aab67ebc575456c146c6af44422f9c13889984c00f3 + sha256: "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27" url: "https://pub.dev" source: hosted - version: "6.1.11" + version: "6.1.14" url_launcher_android: dependency: transitive description: @@ -672,10 +672,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: ba140138558fcc3eead51a1c42e92a9fb074a1b1149ed3c73e66035b2ccd94f2 + sha256: "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5" url: "https://pub.dev" source: hosted - version: "2.0.19" + version: "2.0.20" url_launcher_windows: dependency: transitive description: @@ -696,26 +696,26 @@ packages: dependency: transitive description: name: vector_graphics - sha256: ea8d3fc7b2e0f35de38a7465063ecfcf03d8217f7962aa2a6717132cb5d43a79 + sha256: "670f6e07aca990b4a2bcdc08a784193c4ccdd1932620244c3a86bb72a0eac67f" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_graphics_codec: dependency: transitive description: name: vector_graphics_codec - sha256: a5eaa5d19e123ad4f61c3718ca1ed921c4e6254238d9145f82aa214955d9aced + sha256: "7451721781d967db9933b63f5733b1c4533022c0ba373a01bdd79d1a5457f69f" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_graphics_compiler: dependency: transitive description: name: vector_graphics_compiler - sha256: "15edc42f7eaa478ce854eaf1fbb9062a899c0e4e56e775dd73b7f4709c97c4ca" + sha256: "80a13c613c8bde758b1464a1755a7b3a8f2b6cec61fbf0f5a53c94c30f03ba2e" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_math: dependency: transitive description: @@ -744,10 +744,10 @@ packages: dependency: transitive description: name: win32 - sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c" + sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" url: "https://pub.dev" source: hosted - version: "4.1.4" + version: "5.0.7" xdg_directories: dependency: transitive description: @@ -760,10 +760,10 @@ packages: dependency: transitive description: name: xml - sha256: "979ee37d622dec6365e2efa4d906c37470995871fe9ae080d967e192d88286b5" + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" url: "https://pub.dev" source: hosted - version: "6.2.2" + version: "6.3.0" sdks: - dart: ">=3.1.0-185.0.dev <4.0.0" - flutter: ">=3.7.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/packages/hms_room_kit/example/pubspec.yaml b/packages/hms_room_kit/example/pubspec.yaml index a9d5af441..cea24629d 100644 --- a/packages/hms_room_kit/example/pubspec.yaml +++ b/packages/hms_room_kit/example/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 1.0.0 +version: 1.0.1 environment: sdk: ">=2.19.6 <3.0.0" diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index 6dac3950d..e641e399f 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -1,6 +1,6 @@ name: hms_room_kit description: 100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps. -version: 1.0.0 +version: 1.0.1 homepage: https://www.100ms.live/ repository: https://github.com/100mslive/100ms-flutter issue_tracker: https://github.com/100mslive/100ms-flutter/issues diff --git a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt index 91c15da10..e9e5b41e6 100644 --- a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt +++ b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt @@ -11,7 +11,7 @@ https://github.com/100mslive/100ms-flutter/pull/1557 - Updated to Android SDK version to 2.7.3 and iOS SDK version to 0.9.11 -Room Kit: 1.0.0 -Core SDK: 1.8.0 +Room Kit: 1.0.1 +Core SDK: 1.8.1 Android SDK: 2.7.6 iOS SDK: 0.9.12 \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/android/Gemfile.lock b/packages/hmssdk_flutter/example/android/Gemfile.lock index 50f1d3ea7..04ac9cc7d 100644 --- a/packages/hmssdk_flutter/example/android/Gemfile.lock +++ b/packages/hmssdk_flutter/example/android/Gemfile.lock @@ -8,8 +8,8 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.816.0) - aws-sdk-core (3.181.0) + aws-partitions (1.823.0) + aws-sdk-core (3.181.1) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) @@ -36,7 +36,7 @@ GEM unf (>= 0.0.5, < 1.0.0) dotenv (2.8.1) emoji_regex (3.2.3) - excon (0.102.0) + excon (0.103.0) faraday (1.10.3) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) diff --git a/packages/hmssdk_flutter/example/ios/Gemfile.lock b/packages/hmssdk_flutter/example/ios/Gemfile.lock index 23d94b95f..728a5e46f 100644 --- a/packages/hmssdk_flutter/example/ios/Gemfile.lock +++ b/packages/hmssdk_flutter/example/ios/Gemfile.lock @@ -8,8 +8,8 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.816.0) - aws-sdk-core (3.181.0) + aws-partitions (1.823.0) + aws-sdk-core (3.181.1) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) @@ -36,7 +36,7 @@ GEM unf (>= 0.0.5, < 1.0.0) dotenv (2.8.1) emoji_regex (3.2.3) - excon (0.102.0) + excon (0.103.0) faraday (1.10.3) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) diff --git a/packages/hmssdk_flutter/example/pubspec.lock b/packages/hmssdk_flutter/example/pubspec.lock index d797a543c..54f56442f 100644 --- a/packages/hmssdk_flutter/example/pubspec.lock +++ b/packages/hmssdk_flutter/example/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: transitive description: name: archive - sha256: "49b1fad315e57ab0bbc15bcbb874e83116a1d78f77ebd500a4af6c9407d6b28e" + sha256: e0902a06f0e00414e4e3438a084580161279f137aeb862274710f29ec10cf01e url: "https://pub.dev" source: hosted - version: "3.3.8" + version: "3.3.9" args: dependency: transitive description: @@ -37,10 +37,10 @@ packages: dependency: transitive description: name: badges - sha256: "6e7f3ec561ec08f47f912cfe349d4a1707afdc8dda271e17b046aa6d42c89e77" + sha256: a7b6bbd60dce418df0db3058b53f9d083c22cdb5132a052145dc267494df0b84 url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" boolean_selector: dependency: transitive description: @@ -53,10 +53,10 @@ packages: dependency: transitive description: name: bot_toast - sha256: db6950851aab00ef04b386eb3c76c83739eaffcb6b80d0dc42a675ef7584623b + sha256: "994c55aa16c4df82726b79a63c1f8d29bd7b89d940a5837728ff51546b630497" url: "https://pub.dev" source: hosted - version: "4.0.4" + version: "4.1.1" characters: dependency: transitive description: @@ -125,10 +125,10 @@ packages: dependency: transitive description: name: dropdown_button2 - sha256: "107444581478342c6511040c2eb52850748400df4f3295df3da8be75693180a5" + sha256: b0fe8d49a030315e9eef6c7ac84ca964250155a6224d491c1365061bc974a9e1 url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.3.9" fake_async: dependency: transitive description: @@ -141,10 +141,10 @@ packages: dependency: transitive description: name: ffi - sha256: ed5337a5660c506388a9f012be0288fb38b49020ce2b45fe1f8b8323fe429f99 + sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "2.1.0" file: dependency: transitive description: @@ -242,10 +242,10 @@ packages: dependency: transitive description: name: flutter_foreground_task - sha256: "501d34957ade7c159b3d44832428a4ed9b2b6ffcff17817f0522a7b7229fcb6c" + sha256: e48d2d810a2d643362e64de41146ed8e95d4dd282bae6abbb32309d9f0bf5d67 url: "https://pub.dev" source: hosted - version: "6.1.1" + version: "6.1.2" flutter_linkify: dependency: transitive description: @@ -266,10 +266,10 @@ packages: dependency: transitive description: name: flutter_svg - sha256: f991fdb1533c3caeee0cdc14b04f50f0c3916f0dbcbc05237ccbe4e3c6b93f3f + sha256: "8c5d68a82add3ca76d792f058b186a0599414f279f00ece4830b9b231b570338" url: "https://pub.dev" source: hosted - version: "2.0.5" + version: "2.0.7" flutter_test: dependency: "direct dev" description: flutter @@ -292,32 +292,33 @@ packages: dependency: "direct main" description: name: google_fonts - sha256: "6b6f10f0ce3c42f6552d1c70d2c28d764cf22bb487f50f66cca31dcd5194f4d6" + sha256: "2776c66b3e97c6cdd58d1bd3281548b074b64f1fd5c8f82391f7456e38849567" url: "https://pub.dev" source: hosted - version: "4.0.4" + version: "4.0.5" hms_room_kit: dependency: "direct main" description: path: "../../hms_room_kit" relative: true source: path - version: "1.0.0" + version: "1.0.1" hmssdk_flutter: dependency: transitive description: - path: ".." - relative: true - source: path + name: hmssdk_flutter + sha256: fb6cdad295b0c76be408beb9cef0fe3fab9aa25c775779943a68fab4e675628b + url: "https://pub.dev" + source: hosted version: "1.8.0" http: dependency: transitive description: name: http - sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" + sha256: "759d1a329847dd0f39226c688d3e06a6b8679668e350e2891a6474f8b4bb8525" url: "https://pub.dev" source: hosted - version: "0.13.6" + version: "1.1.0" http_parser: dependency: transitive description: @@ -338,10 +339,10 @@ packages: dependency: transitive description: name: js - sha256: "5528c2f391ededb7775ec1daa69e65a2d61276f7552de2b5f7b8d34ee9fd4ab7" + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 url: "https://pub.dev" source: hosted - version: "0.6.5" + version: "0.6.7" linkify: dependency: transitive description: @@ -354,10 +355,10 @@ packages: dependency: transitive description: name: lottie - sha256: "23522951540d20a57a60202ed7022e6376bed206a4eee1c347a91f58bd57eb9f" + sha256: b8bdd54b488c54068c57d41ae85d02808da09e2bee8b8dd1f59f441e7efa60cd url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.6.0" matcher: dependency: transitive description: @@ -482,18 +483,18 @@ packages: dependency: transitive description: name: permission_handler - sha256: "63e5216aae014a72fe9579ccd027323395ce7a98271d9defa9d57320d001af81" + sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 url: "https://pub.dev" source: hosted - version: "10.4.3" + version: "10.4.5" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: d74e77a5ecd38649905db0a7d05ef16bed42ff263b9efb73ed794317c5764ec3 + sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" url: "https://pub.dev" source: hosted - version: "10.3.4" + version: "10.3.6" permission_handler_apple: dependency: transitive description: @@ -506,10 +507,10 @@ packages: dependency: transitive description: name: permission_handler_platform_interface - sha256: "7c6b1500385dd1d2ca61bb89e2488ca178e274a69144d26bbd65e33eae7c02a9" + sha256: f2343e9fa9c22ae4fd92d4732755bfe452214e7189afcc097380950cf567b4b2 url: "https://pub.dev" source: hosted - version: "3.11.3" + version: "3.11.5" permission_handler_windows: dependency: transitive description: @@ -522,10 +523,10 @@ packages: dependency: transitive description: name: petitparser - sha256: "49392a45ced973e8d94a85fdb21293fbb40ba805fc49f2965101ae748a3683b4" + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 url: "https://pub.dev" source: hosted - version: "5.1.0" + version: "5.4.0" platform: dependency: transitive description: @@ -735,10 +736,10 @@ packages: dependency: "direct main" description: name: url_launcher - sha256: eb1e00ab44303d50dd487aab67ebc575456c146c6af44422f9c13889984c00f3 + sha256: "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27" url: "https://pub.dev" source: hosted - version: "6.1.11" + version: "6.1.14" url_launcher_android: dependency: transitive description: @@ -783,10 +784,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: ba140138558fcc3eead51a1c42e92a9fb074a1b1149ed3c73e66035b2ccd94f2 + sha256: "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5" url: "https://pub.dev" source: hosted - version: "2.0.19" + version: "2.0.20" url_launcher_windows: dependency: transitive description: @@ -807,26 +808,26 @@ packages: dependency: transitive description: name: vector_graphics - sha256: ea8d3fc7b2e0f35de38a7465063ecfcf03d8217f7962aa2a6717132cb5d43a79 + sha256: "670f6e07aca990b4a2bcdc08a784193c4ccdd1932620244c3a86bb72a0eac67f" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_graphics_codec: dependency: transitive description: name: vector_graphics_codec - sha256: a5eaa5d19e123ad4f61c3718ca1ed921c4e6254238d9145f82aa214955d9aced + sha256: "7451721781d967db9933b63f5733b1c4533022c0ba373a01bdd79d1a5457f69f" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_graphics_compiler: dependency: transitive description: name: vector_graphics_compiler - sha256: "15edc42f7eaa478ce854eaf1fbb9062a899c0e4e56e775dd73b7f4709c97c4ca" + sha256: "80a13c613c8bde758b1464a1755a7b3a8f2b6cec61fbf0f5a53c94c30f03ba2e" url: "https://pub.dev" source: hosted - version: "1.1.5" + version: "1.1.7" vector_math: dependency: transitive description: @@ -855,10 +856,10 @@ packages: dependency: transitive description: name: win32 - sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c" + sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" url: "https://pub.dev" source: hosted - version: "4.1.4" + version: "5.0.7" xdg_directories: dependency: transitive description: @@ -871,10 +872,10 @@ packages: dependency: transitive description: name: xml - sha256: "979ee37d622dec6365e2efa4d906c37470995871fe9ae080d967e192d88286b5" + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" url: "https://pub.dev" source: hosted - version: "6.2.2" + version: "6.3.0" sdks: - dart: ">=3.1.0-185.0.dev <4.0.0" - flutter: ">=3.7.0" + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/packages/hmssdk_flutter/example/pubspec.yaml b/packages/hmssdk_flutter/example/pubspec.yaml index 7fce87ec0..20eca860d 100644 --- a/packages/hmssdk_flutter/example/pubspec.yaml +++ b/packages/hmssdk_flutter/example/pubspec.yaml @@ -4,7 +4,7 @@ description: Demonstrates how to use the hmssdk_flutter plugin. # The following line prevents the package from being accidentally published to # pub.dev using `pub publish`. This is preferred for private packages. publish_to: "none" # Remove this line if you wish to publish to pub.dev -version: 1.8.0 +version: 1.8.1 environment: sdk: ">=2.16.0 <4.0.0" diff --git a/packages/hmssdk_flutter/pubspec.yaml b/packages/hmssdk_flutter/pubspec.yaml index ceac0638c..6fdedfa5e 100644 --- a/packages/hmssdk_flutter/pubspec.yaml +++ b/packages/hmssdk_flutter/pubspec.yaml @@ -1,6 +1,6 @@ name: hmssdk_flutter description: Add Real Time Audio & Video calls, Interactive Live Streaming & Recording, Chat, HLS, RTMP, PiP, CallKit, VoIP, Video conferencing, Stream Player & WebRTC-based communications API -version: 1.8.0 +version: 1.8.1 homepage: https://www.100ms.live/ repository: https://github.com/100mslive/100ms-flutter issue_tracker: https://github.com/100mslive/100ms-flutter/issues From 8ff675c9e4490d53f35cb5e308d54f8893c37af5 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Fri, 15 Sep 2023 17:53:54 +0530 Subject: [PATCH 04/67] Prebuilt release/1.0.1 (#1575) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Removed dependency on app secrets from sdk * Updated changelog and sdk version * Updated app changelog * released sample app version 1.5.57 (357) 🍀 --------- Co-authored-by: ygit --- packages/hms_room_kit/CHANGELOG.md | 18 ++++++ .../lib/src/common/constants.dart | 25 +++++++-- .../lib/src/layout_api/hms_room_layout.dart | 8 ++- .../lib/src/meeting/meeting_store.dart | 55 ++++--------------- .../lib/src/preview/preview_page.dart | 10 ++-- .../lib/src/preview/preview_store.dart | 44 +++------------ .../lib/src/screen_controller.dart | 35 ++++++++++-- .../common_widgets/hms_left_room_screen.dart | 2 +- packages/hmssdk_flutter/.gitignore | 4 +- packages/hmssdk_flutter/.pubignore | 1 + .../example/ExampleAppChangelog.txt | 2 +- .../example/android/app/build.gradle | 4 +- .../example/ios/Runner/Info.plist | 4 +- packages/hmssdk_flutter/example/lib/main.dart | 38 ++++++++++++- .../example/lib}/room_service.dart | 2 +- 15 files changed, 144 insertions(+), 108 deletions(-) rename packages/{hms_room_kit/lib/src/service => hmssdk_flutter/example/lib}/room_service.dart (95%) diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 9386c97a4..068af2903 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -5,11 +5,29 @@ | hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | | hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | +## 1.0.1 - 2023-09-15 + +### 🚀 Added + +- Added capability to pass your own init and token endPoints ## 1.0.0 - 2023-09-15 ### 🚀 Added +- Equal Prominence Layout +- Active Speaker Sorting +- Newly Designed Header and Footer +- Inset Tile for Local Peer +- Preview For Role +- Edge To Edge HLS Player +- Updated Bottom Sheets +And much more. Take it for a spin! + +## 0.1.0 - 2023-08-18 + +### 🚀 Added + - Equal Prominence Layout - Active Speaker Sorting - Newly Designed Header and Footer diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index ecc42fa5b..cc32f84aa 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -8,11 +8,8 @@ class Constant { static String defaultMeetingLink = "https://public.app.100ms.live/meeting/xvm-wxwo-gbl"; - /// [Constant.meetingUrl] is the meeting link that will be used - static String meetingUrl = defaultMeetingLink; - - /// [Constant.meetingCode] is the meeting code that will be used - static String meetingCode = ""; + /// [Constant.roomCode] is the meeting code that will be used + static String roomCode = ""; /// [Constant.streamingUrl] is the streaming url that will be used static String streamingUrl = ""; @@ -29,4 +26,22 @@ class Constant { /// [Constant.options] is the prebuilt options for the application /// This is saved for later usages in the application static HMSPrebuiltOptions? prebuiltOptions; + + ///[Constant.tokenEndPoint] is the token end point for the QA environment + static String? tokenEndPoint; + + ///[Constant.initEndPoint] is the init end point for the QA environment + static String? initEndPoint; + + ///[Constant.layoutAPIEndPoint] is the layout api end point for the QA environment + static String? layoutAPIEndPoint; + + ///[Constant.tokenEndPointKey] is the key for the token end point + static String tokenEndPointKey = "tokenEndPoint"; + + ///[Constant.initEndPointKey] is the key for the init end point + static String initEndPointKey = "initEndPoint"; + + ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point + static String layoutAPIEndPointKey = "layoutAPIEndPoint"; } diff --git a/packages/hms_room_kit/lib/src/layout_api/hms_room_layout.dart b/packages/hms_room_kit/lib/src/layout_api/hms_room_layout.dart index dd3d9be84..7c697787b 100644 --- a/packages/hms_room_kit/lib/src/layout_api/hms_room_layout.dart +++ b/packages/hms_room_kit/lib/src/layout_api/hms_room_layout.dart @@ -2,11 +2,12 @@ import 'dart:convert'; ///Package imports +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; + +///Project imports import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/hmssdk_interactor.dart'; import 'package:hms_room_kit/src/layout_api/hms_conferencing_items.dart'; -import 'package:hms_room_kit/src/service/app_secrets.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; class Theme { final String? name; @@ -219,9 +220,10 @@ class HMSRoomLayout { static Future getRoomLayout( {required HMSSDKInteractor hmsSDKInteractor, required String authToken, + required String? endPoint, String? roleName}) async { dynamic value = await hmsSDKInteractor.getRoomLayout( - authToken: authToken, endPoint: getLayoutAPIEndpoint()); + authToken: authToken, endPoint: endPoint); if (value != null && value.runtimeType != HMSException) { _setLayout(layoutJson: jsonDecode(value)); resetLayout(roleName); diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index 767373329..b64c45dbe 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -20,8 +20,6 @@ import 'package:hms_room_kit/src/hmssdk_interactor.dart'; import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; import 'package:hms_room_kit/src/model/rtc_stats.dart'; -import 'package:hms_room_kit/src/service/app_secrets.dart'; -import 'package:hms_room_kit/src/service/room_service.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_toast_model.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_toasts_type.dart'; @@ -218,62 +216,29 @@ class MeetingStore extends ChangeNotifier int currentScreenSharePage = 0; - Future join(String userName, String roomUrl, + Future join(String userName, String roomCode, {HMSConfig? roomConfig}) async { //If roomConfig is null then only we call the methods to get the authToken //If we are joining the room from preview we already have authToken so we don't //need to call the getAuthTokenByRoomCode method if (roomConfig == null) { - // List? roomData = RoomService().getCode(roomUrl); - - //If the link is not valid then we might not get the code and whether the link is a - //PROD or QA so we return the error in this case - // if (roomData != null && roomData.isEmpty) { - // return HMSException( - // message: "Invalid meeting URL", - // description: "Provided meeting URL is invalid", - // action: "Please Check the meeting URL", - // isTerminal: false); - // } - String? tokenEndPoint; - String? initEndPoint; - - if (roomUrl.contains("app.100ms.live")) { - List? roomData = RoomService().getCode(roomUrl); - - //If the link is not valid then we might not get the code and whether the link is a - //PROD or QA so we return the error in this case - if (roomData == null || roomData.isEmpty) { - return HMSException( - message: "Invalid meeting URL", - description: "Provided meeting URL is invalid", - action: "Please Check the meeting URL", - isTerminal: false); - } - - //qaTokenEndPoint is only required for 100ms internal testing - //It can be removed and should not affect the join method call - //For _endPoint just pass it as null - //the endPoint parameter in getAuthTokenByRoomCode can be passed as null - tokenEndPoint = roomData[1] == "true" ? null : qaTokenEndPoint; - initEndPoint = roomData[1] == "true" ? "" : qaInitEndPoint; - AppDebugConfig.isProdRoom = roomData[1] == "true" ? true : false; - - Constant.meetingCode = roomData[0] ?? ''; - } else { - Constant.meetingCode = roomUrl; - } //We use this to get the auth token from room code dynamic tokenData = await _hmsSDKInteractor.getAuthTokenByRoomCode( - roomCode: Constant.meetingCode, endPoint: tokenEndPoint); + roomCode: Constant.roomCode, endPoint: Constant.tokenEndPoint); + ///If the tokenData is String then we set the authToken in the roomConfig + ///and then we join the room + /// + ///If the tokenData is HMSException then we return the HMSException i.e. tokenData if ((tokenData is String?) && tokenData != null) { + ///Success Scenario roomConfig = HMSConfig( authToken: tokenData, userName: userName, captureNetworkQualityInPreview: true, - endPoint: initEndPoint); + endPoint: Constant.initEndPoint); } else { + ///Error Scenario return tokenData; } } @@ -284,7 +249,7 @@ class MeetingStore extends ChangeNotifier WidgetsBinding.instance.addObserver(this); setMeetingModeUsingLayoutApi(); _hmsSDKInteractor.join(config: roomConfig); - meetingUrl = roomUrl; + meetingUrl = roomCode; return null; } diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 1da0dac49..deaf9f3b7 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -28,13 +28,13 @@ import 'package:hms_room_kit/src/meeting/meeting_store.dart'; ///This renders the Preview Screen class PreviewPage extends StatefulWidget { final String name; - final String meetingLink; + final String roomCode; final HMSPrebuiltOptions? options; const PreviewPage( {super.key, required this.name, - required this.meetingLink, + required this.roomCode, required this.options}); @override State createState() => _PreviewPageState(); @@ -78,7 +78,7 @@ class _PreviewPageState extends State { /// We join the room here HMSException? ans = - await _meetingStore.join(nameController.text, widget.meetingLink); + await _meetingStore.join(nameController.text, Constant.roomCode); ///If the room join fails we show the error dialog if (ans != null && mounted) { @@ -154,7 +154,7 @@ class _PreviewPageState extends State { context, CupertinoPageRoute( builder: (_) => ScreenController( - roomCode: widget.meetingLink, + roomCode: Constant.roomCode, options: widget.options, ))), } @@ -187,7 +187,7 @@ class _PreviewPageState extends State { value: _meetingStore, child: MeetingScreenController( role: previewStore.peer?.role, - roomCode: widget.meetingLink, + roomCode: Constant.roomCode, localPeerNetworkQuality: null, user: nameController.text, ), diff --git a/packages/hms_room_kit/lib/src/preview/preview_store.dart b/packages/hms_room_kit/lib/src/preview/preview_store.dart index 0d39f90b1..3bd30a341 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_store.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_store.dart @@ -9,8 +9,6 @@ import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; import 'package:hms_room_kit/src/hmssdk_interactor.dart'; -import 'package:hms_room_kit/src/service/app_secrets.dart'; -import 'package:hms_room_kit/src/service/room_service.dart'; class PreviewStore extends ChangeNotifier implements HMSPreviewListener, HMSLogListener, HMSUpdateListener { @@ -110,38 +108,10 @@ class PreviewStore extends ChangeNotifier } Future startPreview( - {required String userName, required String meetingLink}) async { - String? tokenEndPoint; - String? initEndPoint; - - if (meetingLink.contains("app.100ms.live")) { - List? roomData = RoomService().getCode(meetingLink); - - //If the link is not valid then we might not get the code and whether the link is a - //PROD or QA so we return the error in this case - if (roomData == null || roomData.isEmpty) { - return HMSException( - message: "Invalid meeting URL", - description: "Provided meeting URL is invalid", - action: "Please Check the meeting URL", - isTerminal: false); - } - - //qaTokenEndPoint is only required for 100ms internal testing - //It can be removed and should not affect the join method call - //For _endPoint just pass it as null - //the endPoint parameter in getAuthTokenByRoomCode can be passed as null - tokenEndPoint = roomData[1] == "true" ? null : qaTokenEndPoint; - initEndPoint = roomData[1] == "true" ? "" : qaInitEndPoint; - AppDebugConfig.isProdRoom = roomData[1] == "true" ? true : false; - Constant.meetingCode = roomData[0] ?? ''; - } else { - Constant.meetingCode = meetingLink; - } - + {required String userName, required String roomCode}) async { //We use this to get the auth token from room code dynamic tokenData = await hmsSDKInteractor.getAuthTokenByRoomCode( - roomCode: Constant.meetingCode, endPoint: tokenEndPoint); + roomCode: roomCode, endPoint: Constant.tokenEndPoint); if ((tokenData is String?) && tokenData != null) { roomConfig = HMSConfig( @@ -151,16 +121,16 @@ class PreviewStore extends ChangeNotifier // endPoint is only required by 100ms Team. Client developers should not use `endPoint` //This is only for 100ms internal testing, endPoint can be safely removed from //the HMSConfig for external usage - endPoint: initEndPoint); + endPoint: Constant.initEndPoint); await HMSRoomLayout.getRoomLayout( - hmsSDKInteractor: hmsSDKInteractor, - authToken: tokenData, - ); + hmsSDKInteractor: hmsSDKInteractor, + authToken: tokenData, + endPoint: Constant.layoutAPIEndPoint); hmsSDKInteractor.startHMSLogger( Constant.webRTCLogLevel, Constant.sdkLogLevel); hmsSDKInteractor.addPreviewListener(this); hmsSDKInteractor.preview(config: roomConfig!); - meetingUrl = meetingLink; + meetingUrl = roomCode; return null; } return tokenData; diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 0ef05e5d7..8c6585e78 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -38,11 +38,37 @@ class _ScreenControllerState extends State { @override void initState() { super.initState(); + + ///Setting the prebuilt options and roomCode Constant.prebuiltOptions = widget.options; - Constant.meetingUrl = widget.roomCode; + Constant.roomCode = widget.roomCode; + + ///Here we set the endPoints if it's non-null + if (widget.options?.endPoints != null) { + _setEndPoints(widget.options!.endPoints!); + } else { + Constant.initEndPoint = null; + Constant.tokenEndPoint = null; + Constant.layoutAPIEndPoint = null; + } _checkPermissions(); } + ///This function sets the end points for the app + ///If the endPoints were set from the [HMSPrebuiltOptions] + void _setEndPoints(Map endPoints) { + Constant.tokenEndPoint = (endPoints.containsKey(Constant.tokenEndPointKey)) + ? endPoints[Constant.tokenEndPointKey] + : null; + Constant.initEndPoint = (endPoints.containsKey(Constant.initEndPointKey)) + ? endPoints[Constant.initEndPointKey] + : null; + Constant.layoutAPIEndPoint = + (endPoints.containsKey(Constant.layoutAPIEndPointKey)) + ? endPoints[Constant.layoutAPIEndPointKey] + : null; + } + ///This function checks the permissions for the app void _checkPermissions() async { isPermissionGranted = await Utilities.checkPermissions(); @@ -63,6 +89,7 @@ class _ScreenControllerState extends State { /// - If preview fails then we show the error dialog /// - If successful we show the preview page void _initPreview() async { + Constant.roomCode = widget.roomCode; setState(() { isLoading = true; }); @@ -76,7 +103,7 @@ class _ScreenControllerState extends State { await _hmsSDKInteractor.build(); _previewStore = PreviewStore(hmsSDKInteractor: _hmsSDKInteractor); HMSException? ans = await _previewStore.startPreview( - userName: "", meetingLink: widget.roomCode); + userName: "", roomCode: Constant.roomCode); ///If preview fails then we show the error dialog ///with the error message and description @@ -121,12 +148,12 @@ class _ScreenControllerState extends State { ? ListenableProvider.value( value: _previewStore, child: PreviewPage( - meetingLink: widget.roomCode, + roomCode: Constant.roomCode, name: "", options: widget.options, )) : PreviewPermissions( - roomCode: widget.roomCode, + roomCode:Constant.roomCode, options: widget.options, callback: _isPermissionGrantedCallback), ); diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart index 04ccca2b9..e8d13df4d 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart @@ -124,7 +124,7 @@ class HMSLeftRoomScreen extends StatelessWidget { context, MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: Constant.meetingUrl, + roomCode: Constant.roomCode, options: Constant.prebuiltOptions))), }, child: SizedBox( diff --git a/packages/hmssdk_flutter/.gitignore b/packages/hmssdk_flutter/.gitignore index 50674c6ec..a31888c7c 100644 --- a/packages/hmssdk_flutter/.gitignore +++ b/packages/hmssdk_flutter/.gitignore @@ -41,4 +41,6 @@ example/ios/flutter-hms-4aea6d38fd2a.json # sample apps/flutter-quickstart-app/.flutter-plugins-dependencies # ui_kit/.flutter-plugins # ui_kit/.flutter-plugins-dependencies -# ui_kit/lib/service/app_secrets.dart \ No newline at end of file +# ui_kit/lib/service/app_secrets.dart + +example/lib/app_secrets.dart \ No newline at end of file diff --git a/packages/hmssdk_flutter/.pubignore b/packages/hmssdk_flutter/.pubignore index 8e4ba142c..737be8e68 100644 --- a/packages/hmssdk_flutter/.pubignore +++ b/packages/hmssdk_flutter/.pubignore @@ -23,6 +23,7 @@ example/ios/Runner/GoogleService-Info.plist release-apps.sh example/lib/firebase_options.dart example/lib/service/firebase_options.dart +example/lib/app_secrets.dart mobx-example-app example_riverpod diff --git a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt index e9e5b41e6..081543974 100644 --- a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt +++ b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt @@ -12,6 +12,6 @@ https://github.com/100mslive/100ms-flutter/pull/1557 - Updated to Android SDK version to 2.7.3 and iOS SDK version to 0.9.11 Room Kit: 1.0.1 -Core SDK: 1.8.1 +Core SDK: 1.8.0 Android SDK: 2.7.6 iOS SDK: 0.9.12 \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/android/app/build.gradle b/packages/hmssdk_flutter/example/android/app/build.gradle index 5df4fc667..0fb37a908 100644 --- a/packages/hmssdk_flutter/example/android/app/build.gradle +++ b/packages/hmssdk_flutter/example/android/app/build.gradle @@ -32,8 +32,8 @@ android { applicationId "live.hms.flutter" minSdkVersion 21 targetSdkVersion 33 - versionCode 356 - versionName "1.5.56" + versionCode 357 + versionName "1.5.57" } signingConfigs { diff --git a/packages/hmssdk_flutter/example/ios/Runner/Info.plist b/packages/hmssdk_flutter/example/ios/Runner/Info.plist index be4a4515c..fa9654c3b 100644 --- a/packages/hmssdk_flutter/example/ios/Runner/Info.plist +++ b/packages/hmssdk_flutter/example/ios/Runner/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.56 + 1.5.57 CFBundleSignature ???? CFBundleURLTypes @@ -48,7 +48,7 @@ CFBundleVersion - 356 + 357 ITSAppUsesNonExemptEncryption LSApplicationCategoryType diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index b8ff90665..53bc5e301 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -11,8 +11,10 @@ import 'package:flutter/services.dart'; import 'package:flutter_svg/svg.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; +import 'package:hmssdk_flutter_example/app_secrets.dart'; import 'package:hmssdk_flutter_example/app_settings_bottom_sheet.dart'; import 'package:hmssdk_flutter_example/qr_code_screen.dart'; +import 'package:hmssdk_flutter_example/room_service.dart'; import 'package:provider/provider.dart'; import 'package:package_info_plus/package_info_plus.dart'; import 'package:uni_links/uni_links.dart'; @@ -264,13 +266,47 @@ class _HomePageState extends State { if (meetingLinkController.text.trim().isEmpty) { return; } + + Map? endPoints; + if (meetingLinkController.text.trim().contains("app.100ms.live")) { + List? roomData = + RoomService.getCode(meetingLinkController.text.trim()); + + //If the link is not valid then we might not get the code and whether the link is a + //PROD or QA so we return the error in this case + if (roomData == null || roomData.isEmpty) { + return; + } + + //qaTokenEndPoint is only required for 100ms internal testing + //It can be removed and should not affect the join method call + //For _endPoint just pass it as null + //the endPoint parameter in getAuthTokenByRoomCode can be passed as null + //Pass the layoutAPIEndPoint as null the qa endPoint is only for 100ms internal testing + + ///If you wish to set your own token end point then you can pass it in the endPoints map + ///The key for the token end point is "tokenEndPointKey" + ///The key for the init end point is "initEndPointKey" + ///The key for the layout api end point is "layoutAPIEndPointKey" + if (roomData[1] == "false") { + endPoints = {}; + endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; + endPoints[Constant.initEndPointKey] = qaInitEndPoint; + endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + } + Constant.roomCode = roomData[0] ?? ''; + } else { + Constant.roomCode = meetingLinkController.text.trim(); + } + FocusManager.instance.primaryFocus?.unfocus(); Navigator.push( context, MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: meetingLinkController.text.trim(), + roomCode: Constant.roomCode, options: HMSPrebuiltOptions( + endPoints: endPoints, iOSScreenshareConfig: HMSIOSScreenshareConfig( appGroup: "group.flutterhms", preferredExtension: diff --git a/packages/hms_room_kit/lib/src/service/room_service.dart b/packages/hmssdk_flutter/example/lib/room_service.dart similarity index 95% rename from packages/hms_room_kit/lib/src/service/room_service.dart rename to packages/hmssdk_flutter/example/lib/room_service.dart index c7259b469..cbe2ed7b4 100644 --- a/packages/hms_room_kit/lib/src/service/room_service.dart +++ b/packages/hmssdk_flutter/example/lib/room_service.dart @@ -8,7 +8,7 @@ class RoomService { /// subdomain is 100ms-rocks /// code is abc-defg-ghi /// - List? getCode(String roomUrl) { + static List? getCode(String roomUrl) { String url = roomUrl; if (url == "") return []; url = url.trim(); From c8088d17407239bc2077d835de920d12d4050600 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Fri, 15 Sep 2023 18:08:31 +0530 Subject: [PATCH 05/67] Prebuilt release/1.0.1 (#1576) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Removed dependency on app secrets from sdk * Updated changelog and sdk version * Updated app changelog * released sample app version 1.5.57 (357) 🍀 * Added QR code meeting fix --- .../example/lib/qr_code_screen.dart | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 76e3b6e14..19b3fccf6 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -2,6 +2,8 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; +import 'package:hmssdk_flutter_example/app_secrets.dart'; +import 'package:hmssdk_flutter_example/room_service.dart'; import 'package:qr_code_scanner/qr_code_scanner.dart'; class QRCodeScreen extends StatefulWidget { @@ -38,9 +40,41 @@ class _QRCodeScreenState extends State { if (scanData.code != null) { controller!.pauseCamera(); FocusManager.instance.primaryFocus?.unfocus(); + + Map? endPoints; + if (scanData.code!.trim().contains("app.100ms.live")) { + List? roomData = + RoomService.getCode(scanData.code!.trim()); + + //If the link is not valid then we might not get the code and whether the link is a + //PROD or QA so we return the error in this case + if (roomData == null || roomData.isEmpty) { + return; + } + + //qaTokenEndPoint is only required for 100ms internal testing + //It can be removed and should not affect the join method call + //For _endPoint just pass it as null + //the endPoint parameter in getAuthTokenByRoomCode can be passed as null + //Pass the layoutAPIEndPoint as null the qa endPoint is only for 100ms internal testing + + ///If you wish to set your own token end point then you can pass it in the endPoints map + ///The key for the token end point is "tokenEndPointKey" + ///The key for the init end point is "initEndPointKey" + ///The key for the layout api end point is "layoutAPIEndPointKey" + if (roomData[1] == "false") { + endPoints = {}; + endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; + endPoints[Constant.initEndPointKey] = qaInitEndPoint; + endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + } + Constant.roomCode = roomData[0] ?? ''; + } else { + Constant.roomCode = scanData.code!.trim(); + } Navigator.of(context).pushReplacement(MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: scanData.code!.trim(), + roomCode: Constant.roomCode, options: HMSPrebuiltOptions(userName: ""), ))); } From 958d77e640a6c8f7b16057baa9b1c7d39e499b22 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Fri, 15 Sep 2023 19:21:07 +0530 Subject: [PATCH 06/67] Fixed bug in QR Code room join (#1577) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fixed bug in QR Code room join * Changed method signature * released sample app version 1.5.58 (358) 🍀 --- .../example/android/app/build.gradle | 4 +-- .../example/ios/Runner/Info.plist | 4 +-- packages/hmssdk_flutter/example/lib/main.dart | 13 ++++++---- .../example/lib/qr_code_screen.dart | 25 +++++++++++-------- .../example/lib/room_service.dart | 12 +++++++++ 5 files changed, 39 insertions(+), 19 deletions(-) diff --git a/packages/hmssdk_flutter/example/android/app/build.gradle b/packages/hmssdk_flutter/example/android/app/build.gradle index 0fb37a908..998120b38 100644 --- a/packages/hmssdk_flutter/example/android/app/build.gradle +++ b/packages/hmssdk_flutter/example/android/app/build.gradle @@ -32,8 +32,8 @@ android { applicationId "live.hms.flutter" minSdkVersion 21 targetSdkVersion 33 - versionCode 357 - versionName "1.5.57" + versionCode 358 + versionName "1.5.58" } signingConfigs { diff --git a/packages/hmssdk_flutter/example/ios/Runner/Info.plist b/packages/hmssdk_flutter/example/ios/Runner/Info.plist index fa9654c3b..e7914c925 100644 --- a/packages/hmssdk_flutter/example/ios/Runner/Info.plist +++ b/packages/hmssdk_flutter/example/ios/Runner/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.57 + 1.5.58 CFBundleSignature ???? CFBundleURLTypes @@ -48,7 +48,7 @@ CFBundleVersion - 357 + 358 ITSAppUsesNonExemptEncryption LSApplicationCategoryType diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index 53bc5e301..ec6da2454 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -11,7 +11,6 @@ import 'package:flutter/services.dart'; import 'package:flutter_svg/svg.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; -import 'package:hmssdk_flutter_example/app_secrets.dart'; import 'package:hmssdk_flutter_example/app_settings_bottom_sheet.dart'; import 'package:hmssdk_flutter_example/qr_code_screen.dart'; import 'package:hmssdk_flutter_example/room_service.dart'; @@ -278,6 +277,10 @@ class _HomePageState extends State { return; } + ///************************************************************************************************** */ + + ///This section can be safely commented out as it's only required for 100ms internal usage + //qaTokenEndPoint is only required for 100ms internal testing //It can be removed and should not affect the join method call //For _endPoint just pass it as null @@ -289,11 +292,11 @@ class _HomePageState extends State { ///The key for the init end point is "initEndPointKey" ///The key for the layout api end point is "layoutAPIEndPointKey" if (roomData[1] == "false") { - endPoints = {}; - endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; - endPoints[Constant.initEndPointKey] = qaInitEndPoint; - endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + endPoints = RoomService.setEndPoints(); } + + ///************************************************************************************************** */ + Constant.roomCode = roomData[0] ?? ''; } else { Constant.roomCode = meetingLinkController.text.trim(); diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 19b3fccf6..39dcbf9e6 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -2,7 +2,6 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; -import 'package:hmssdk_flutter_example/app_secrets.dart'; import 'package:hmssdk_flutter_example/room_service.dart'; import 'package:qr_code_scanner/qr_code_scanner.dart'; @@ -43,8 +42,7 @@ class _QRCodeScreenState extends State { Map? endPoints; if (scanData.code!.trim().contains("app.100ms.live")) { - List? roomData = - RoomService.getCode(scanData.code!.trim()); + List? roomData = RoomService.getCode(scanData.code!.trim()); //If the link is not valid then we might not get the code and whether the link is a //PROD or QA so we return the error in this case @@ -52,6 +50,10 @@ class _QRCodeScreenState extends State { return; } + ///************************************************************************************************** */ + + ///This section can be safely commented out as it's only required for 100ms internal usage + //qaTokenEndPoint is only required for 100ms internal testing //It can be removed and should not affect the join method call //For _endPoint just pass it as null @@ -63,20 +65,23 @@ class _QRCodeScreenState extends State { ///The key for the init end point is "initEndPointKey" ///The key for the layout api end point is "layoutAPIEndPointKey" if (roomData[1] == "false") { - endPoints = {}; - endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; - endPoints[Constant.initEndPointKey] = qaInitEndPoint; - endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + endPoints = RoomService.setEndPoints(); } + ///************************************************************************************************** */ + Constant.roomCode = roomData[0] ?? ''; } else { Constant.roomCode = scanData.code!.trim(); } Navigator.of(context).pushReplacement(MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: Constant.roomCode, - options: HMSPrebuiltOptions(userName: ""), - ))); + roomCode: Constant.roomCode, + options: HMSPrebuiltOptions( + endPoints: endPoints, + iOSScreenshareConfig: HMSIOSScreenshareConfig( + appGroup: "group.flutterhms", + preferredExtension: + "live.100ms.flutter.FlutterBroadcastUploadExtension"))))); } }); } diff --git a/packages/hmssdk_flutter/example/lib/room_service.dart b/packages/hmssdk_flutter/example/lib/room_service.dart index cbe2ed7b4..0409e4456 100644 --- a/packages/hmssdk_flutter/example/lib/room_service.dart +++ b/packages/hmssdk_flutter/example/lib/room_service.dart @@ -1,3 +1,6 @@ +import 'package:hms_room_kit/hms_room_kit.dart'; +import 'package:hmssdk_flutter_example/app_secrets.dart'; + ///This class is only for 100ms internal usage /// and should not be edited class RoomService { @@ -32,4 +35,13 @@ class RoomService { } return [code, isProd ? "true" : "false"]; } + + static Map setEndPoints() { + Map endPoints = {}; + endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; + endPoints[Constant.initEndPointKey] = qaInitEndPoint; + endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + + return endPoints; + } } From 2581dfcc97bd5cfd73564aaafaf4d7a2423ba48a Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 15 Sep 2023 19:24:29 +0530 Subject: [PATCH 07/67] resolved lint warnings --- packages/hms_room_kit/lib/src/screen_controller.dart | 4 ++-- packages/hmssdk_flutter/example/lib/qr_code_screen.dart | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 8c6585e78..c2844d500 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -55,7 +55,7 @@ class _ScreenControllerState extends State { } ///This function sets the end points for the app - ///If the endPoints were set from the [HMSPrebuiltOptions] + ///If the endPoints were set from the [HMSPrebuiltOptions] void _setEndPoints(Map endPoints) { Constant.tokenEndPoint = (endPoints.containsKey(Constant.tokenEndPointKey)) ? endPoints[Constant.tokenEndPointKey] @@ -153,7 +153,7 @@ class _ScreenControllerState extends State { options: widget.options, )) : PreviewPermissions( - roomCode:Constant.roomCode, + roomCode: Constant.roomCode, options: widget.options, callback: _isPermissionGrantedCallback), ); diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 39dcbf9e6..7df014c7e 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -67,6 +67,7 @@ class _QRCodeScreenState extends State { if (roomData[1] == "false") { endPoints = RoomService.setEndPoints(); } + ///************************************************************************************************** */ Constant.roomCode = roomData[0] ?? ''; From fb2015379df18603e457a7c161755c301ce6743f Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 15 Sep 2023 19:30:37 +0530 Subject: [PATCH 08/67] updated package versions --- packages/hmssdk_flutter/example/pubspec.yaml | 2 +- packages/hmssdk_flutter/pubspec.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/hmssdk_flutter/example/pubspec.yaml b/packages/hmssdk_flutter/example/pubspec.yaml index 20eca860d..7fce87ec0 100644 --- a/packages/hmssdk_flutter/example/pubspec.yaml +++ b/packages/hmssdk_flutter/example/pubspec.yaml @@ -4,7 +4,7 @@ description: Demonstrates how to use the hmssdk_flutter plugin. # The following line prevents the package from being accidentally published to # pub.dev using `pub publish`. This is preferred for private packages. publish_to: "none" # Remove this line if you wish to publish to pub.dev -version: 1.8.1 +version: 1.8.0 environment: sdk: ">=2.16.0 <4.0.0" diff --git a/packages/hmssdk_flutter/pubspec.yaml b/packages/hmssdk_flutter/pubspec.yaml index 6fdedfa5e..ceac0638c 100644 --- a/packages/hmssdk_flutter/pubspec.yaml +++ b/packages/hmssdk_flutter/pubspec.yaml @@ -1,6 +1,6 @@ name: hmssdk_flutter description: Add Real Time Audio & Video calls, Interactive Live Streaming & Recording, Chat, HLS, RTMP, PiP, CallKit, VoIP, Video conferencing, Stream Player & WebRTC-based communications API -version: 1.8.1 +version: 1.8.0 homepage: https://www.100ms.live/ repository: https://github.com/100mslive/100ms-flutter issue_tracker: https://github.com/100mslive/100ms-flutter/issues From 75c9a40df35e7d202b3e0783b7a83f73bbf0f417 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Fri, 15 Sep 2023 19:55:52 +0530 Subject: [PATCH 09/67] Unused function removal (#1579) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fixed bug in QR Code room join * Changed method signature * released sample app version 1.5.58 (358) 🍀 * Removed unused function --- .../lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart | 4 ---- packages/hmssdk_flutter/example/lib/qr_code_screen.dart | 1 - 2 files changed, 5 deletions(-) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart index 2122a1729..7eee159fc 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart @@ -36,10 +36,6 @@ class _ChatBottomSheetState extends State { super.dispose(); } - void _updateDropDownValue(dynamic newValue) { - valueChoose = newValue; - } - void _scrollToEnd() { if (_scrollController.positions.isNotEmpty) { WidgetsBinding.instance.addPostFrameCallback((_) => _scrollController diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 7df014c7e..39dcbf9e6 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -67,7 +67,6 @@ class _QRCodeScreenState extends State { if (roomData[1] == "false") { endPoints = RoomService.setEndPoints(); } - ///************************************************************************************************** */ Constant.roomCode = roomData[0] ?? ''; From 1a1e1e46f6948f5e0e62fb14402a334af8534361 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Mon, 18 Sep 2023 13:00:46 +0530 Subject: [PATCH 10/67] fixed 3.7 error lints (#1581) --- packages/hms_room_kit/lib/src/meeting/meeting_page.dart | 2 +- .../hms_room_kit/lib/src/preview/preview_device_settings.dart | 2 +- .../src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart | 2 +- .../src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart | 2 +- .../lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart | 2 +- .../lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart | 2 +- .../lib/src/widgets/bottom_sheets/hls_more_options.dart | 2 +- .../lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart | 2 +- .../lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 8da05d959..2e06713e3 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -320,7 +320,7 @@ class _MeetingPageState extends State { )); }); }), - const Column( + Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ diff --git a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart index 150a496bd..2fbe6f1aa 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart @@ -76,7 +76,7 @@ class _PreviewDeviceSettingsState extends State { ), ], ), - const Row( + Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart index 63725c3ef..98392aee7 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart @@ -54,7 +54,7 @@ class _AppUtilitiesBottomSheetState extends State { ) ], ), - const Row( + Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart index 6a77f11a4..77b907d69 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart @@ -77,7 +77,7 @@ class _AudioSettingsBottomSheetState extends State { ), ], ), - const Row( + Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart index 160a3b795..69ad3e642 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart @@ -86,7 +86,7 @@ class _ChangeNameBottomSheetState extends State { ) ], ), - const Row( + Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart index 7583deb95..1fae611e6 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart @@ -53,7 +53,7 @@ class EndServiceBottomSheet extends StatelessWidget { title ?? const SizedBox() ], ), - const Row( + Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart index fc457bf89..e201a44db 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart @@ -51,7 +51,7 @@ class _HLSMoreOptionsBottomSheetBottomSheetState ) ], ), - const Row( + Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart index 89c55d24d..932e6a5f4 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart @@ -72,7 +72,7 @@ class _LocalPeerBottomSheetState extends State { ), ], ), - const Row( + Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart index e0f134fe2..d16baae1a 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart @@ -60,7 +60,7 @@ class _RemotePeerBottomSheetState extends State { ), ], ), - const Row( + Row( children: [HMSCrossButton()], ), ], From 2b755fe00ae0b1a58b04db20a832ff68b80fa78d Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Mon, 18 Sep 2023 15:13:14 +0530 Subject: [PATCH 11/67] Added option to bring off stage role on stage without hand raise --- .../participants_bottom_sheet.dart | 31 +++++++++++++------ 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart index afac2862e..02746e54b 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart @@ -45,9 +45,6 @@ class _ParticipantsBottomSheetState extends State { meetingStore.localPeer?.role.permissions.removeOthers ?? false; bool changeRolePermission = meetingStore.localPeer?.role.permissions.changeRole ?? false; - - bool isHandRaised = - peer.metadata?.contains("\"isHandRaised\":true") ?? false; bool isOnStageRole = meetingStore.getOnStageRole()?.name == peer.role.name; bool isOnStageExpPresent = HMSRoomLayout.peerType == PeerRoleType.hlsViewer ? HMSRoomLayout.roleLayoutData?.screens?.conferencing?.hlsLiveStreaming @@ -57,6 +54,11 @@ class _ParticipantsBottomSheetState extends State { ?.elements?.onStageExp != null; bool isOffStageRole = meetingStore.isOffStageRole(peer.role.name); + + ///Here we check whether to show three dots or not + ///We show three dots if the peer is not local + ///and the local peer has any of the following permissions: + ///changeRole, removeOthers, mute/unmute others return (!peer.isLocal && (changeRolePermission || removePeerPermission || mutePermission)) ? PopupMenuButton( @@ -66,8 +68,16 @@ class _ParticipantsBottomSheetState extends State { shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8)), onSelected: (int value) async { + ///Here we have defined the functions to be executed on clicking the options switch (value) { case 1: + ///If the peer is onStage already we show the option to remove from stage + ///and the peer's role is changed to it's previous role + /// + ///If the peer is offStage we show the option to bring on stage + ///and the peer 's role is changed to offStageRole from layout api + ///We also update the peer metadata with the previous role + ///which will be used while removing the peer from stage if (isOnStageRole) { if (peer.metadata != null) { String? peerMetadata = peer.metadata; @@ -100,6 +110,7 @@ class _ParticipantsBottomSheetState extends State { } break; case 2: + ///Here we check whether the video track is null or not if (peerTrackNode?.track == null) { return; } @@ -107,6 +118,7 @@ class _ParticipantsBottomSheetState extends State { peerTrackNode!.track!, !peerTrackNode.track!.isMute); break; case 3: + ///Here we check whether the audio track is null or not if (peerTrackNode?.audioTrack == null) { return; } @@ -114,6 +126,7 @@ class _ParticipantsBottomSheetState extends State { !peerTrackNode.audioTrack!.isMute); break; case 4: + ///This is called when someone clicks on remove Participant meetingStore.removePeerFromRoom(peer); break; default: @@ -128,7 +141,7 @@ class _ParticipantsBottomSheetState extends State { itemBuilder: (context) => [ if (changeRolePermission && isOnStageExpPresent && - ((isHandRaised && isOffStageRole) || isOnStageRole)) + (isOffStageRole || isOnStageRole)) PopupMenuItem( value: 1, child: Row(children: [ @@ -155,8 +168,7 @@ class _ParticipantsBottomSheetState extends State { ), if (mutePermission && peerTrackNode != null && - !peerTrackNode.peer.isLocal && - isOnStageRole) + !peerTrackNode.peer.isLocal) PopupMenuItem( value: 2, child: Row(children: [ @@ -185,8 +197,7 @@ class _ParticipantsBottomSheetState extends State { ), if (mutePermission && peerTrackNode != null && - !peerTrackNode.peer.isLocal && - isOnStageRole) + !peerTrackNode.peer.isLocal) PopupMenuItem( value: 3, child: Row(children: [ @@ -343,7 +354,7 @@ class _ParticipantsBottomSheetState extends State { Padding( padding: const EdgeInsets - .fromLTRB( + .fromLTRB( 16, 8, 16, @@ -377,6 +388,8 @@ class _ParticipantsBottomSheetState extends State { letterSpacing: 0.1, textColor: HMSThemeColors.onSurfaceHighEmphasis); }), + + ///This contains the network quality, hand raise icon and kebab menu Row( children: [ Selector< From 58f1ac917c25cf6ff2177bc1f7ab7cb20ee680d9 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Mon, 18 Sep 2023 17:08:37 +0530 Subject: [PATCH 12/67] =?UTF-8?q?released=20sample=20app=20version=201.5.5?= =?UTF-8?q?9=20(359)=20=F0=9F=8D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/hmssdk_flutter/example/android/app/build.gradle | 4 ++-- packages/hmssdk_flutter/example/ios/Runner/Info.plist | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/hmssdk_flutter/example/android/app/build.gradle b/packages/hmssdk_flutter/example/android/app/build.gradle index 998120b38..aa1ef2b47 100644 --- a/packages/hmssdk_flutter/example/android/app/build.gradle +++ b/packages/hmssdk_flutter/example/android/app/build.gradle @@ -32,8 +32,8 @@ android { applicationId "live.hms.flutter" minSdkVersion 21 targetSdkVersion 33 - versionCode 358 - versionName "1.5.58" + versionCode 359 + versionName "1.5.59" } signingConfigs { diff --git a/packages/hmssdk_flutter/example/ios/Runner/Info.plist b/packages/hmssdk_flutter/example/ios/Runner/Info.plist index e7914c925..629d695cc 100644 --- a/packages/hmssdk_flutter/example/ios/Runner/Info.plist +++ b/packages/hmssdk_flutter/example/ios/Runner/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.58 + 1.5.59 CFBundleSignature ???? CFBundleURLTypes @@ -48,7 +48,7 @@ CFBundleVersion - 358 + 359 ITSAppUsesNonExemptEncryption LSApplicationCategoryType From 56c0aed55c9b979721423517cd3019a3a4916f6a Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Mon, 18 Sep 2023 18:21:02 +0530 Subject: [PATCH 13/67] Added option to bring off stage role on stage without hand raise (#1584) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added option to bring off stage role on stage without hand raise * released sample app version 1.5.59 (359) 🍀 --- .../participants_bottom_sheet.dart | 31 +++++++++++++------ .../example/android/app/build.gradle | 4 +-- .../example/ios/Runner/Info.plist | 4 +-- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart index afac2862e..02746e54b 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart @@ -45,9 +45,6 @@ class _ParticipantsBottomSheetState extends State { meetingStore.localPeer?.role.permissions.removeOthers ?? false; bool changeRolePermission = meetingStore.localPeer?.role.permissions.changeRole ?? false; - - bool isHandRaised = - peer.metadata?.contains("\"isHandRaised\":true") ?? false; bool isOnStageRole = meetingStore.getOnStageRole()?.name == peer.role.name; bool isOnStageExpPresent = HMSRoomLayout.peerType == PeerRoleType.hlsViewer ? HMSRoomLayout.roleLayoutData?.screens?.conferencing?.hlsLiveStreaming @@ -57,6 +54,11 @@ class _ParticipantsBottomSheetState extends State { ?.elements?.onStageExp != null; bool isOffStageRole = meetingStore.isOffStageRole(peer.role.name); + + ///Here we check whether to show three dots or not + ///We show three dots if the peer is not local + ///and the local peer has any of the following permissions: + ///changeRole, removeOthers, mute/unmute others return (!peer.isLocal && (changeRolePermission || removePeerPermission || mutePermission)) ? PopupMenuButton( @@ -66,8 +68,16 @@ class _ParticipantsBottomSheetState extends State { shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8)), onSelected: (int value) async { + ///Here we have defined the functions to be executed on clicking the options switch (value) { case 1: + ///If the peer is onStage already we show the option to remove from stage + ///and the peer's role is changed to it's previous role + /// + ///If the peer is offStage we show the option to bring on stage + ///and the peer 's role is changed to offStageRole from layout api + ///We also update the peer metadata with the previous role + ///which will be used while removing the peer from stage if (isOnStageRole) { if (peer.metadata != null) { String? peerMetadata = peer.metadata; @@ -100,6 +110,7 @@ class _ParticipantsBottomSheetState extends State { } break; case 2: + ///Here we check whether the video track is null or not if (peerTrackNode?.track == null) { return; } @@ -107,6 +118,7 @@ class _ParticipantsBottomSheetState extends State { peerTrackNode!.track!, !peerTrackNode.track!.isMute); break; case 3: + ///Here we check whether the audio track is null or not if (peerTrackNode?.audioTrack == null) { return; } @@ -114,6 +126,7 @@ class _ParticipantsBottomSheetState extends State { !peerTrackNode.audioTrack!.isMute); break; case 4: + ///This is called when someone clicks on remove Participant meetingStore.removePeerFromRoom(peer); break; default: @@ -128,7 +141,7 @@ class _ParticipantsBottomSheetState extends State { itemBuilder: (context) => [ if (changeRolePermission && isOnStageExpPresent && - ((isHandRaised && isOffStageRole) || isOnStageRole)) + (isOffStageRole || isOnStageRole)) PopupMenuItem( value: 1, child: Row(children: [ @@ -155,8 +168,7 @@ class _ParticipantsBottomSheetState extends State { ), if (mutePermission && peerTrackNode != null && - !peerTrackNode.peer.isLocal && - isOnStageRole) + !peerTrackNode.peer.isLocal) PopupMenuItem( value: 2, child: Row(children: [ @@ -185,8 +197,7 @@ class _ParticipantsBottomSheetState extends State { ), if (mutePermission && peerTrackNode != null && - !peerTrackNode.peer.isLocal && - isOnStageRole) + !peerTrackNode.peer.isLocal) PopupMenuItem( value: 3, child: Row(children: [ @@ -343,7 +354,7 @@ class _ParticipantsBottomSheetState extends State { Padding( padding: const EdgeInsets - .fromLTRB( + .fromLTRB( 16, 8, 16, @@ -377,6 +388,8 @@ class _ParticipantsBottomSheetState extends State { letterSpacing: 0.1, textColor: HMSThemeColors.onSurfaceHighEmphasis); }), + + ///This contains the network quality, hand raise icon and kebab menu Row( children: [ Selector< diff --git a/packages/hmssdk_flutter/example/android/app/build.gradle b/packages/hmssdk_flutter/example/android/app/build.gradle index 998120b38..aa1ef2b47 100644 --- a/packages/hmssdk_flutter/example/android/app/build.gradle +++ b/packages/hmssdk_flutter/example/android/app/build.gradle @@ -32,8 +32,8 @@ android { applicationId "live.hms.flutter" minSdkVersion 21 targetSdkVersion 33 - versionCode 358 - versionName "1.5.58" + versionCode 359 + versionName "1.5.59" } signingConfigs { diff --git a/packages/hmssdk_flutter/example/ios/Runner/Info.plist b/packages/hmssdk_flutter/example/ios/Runner/Info.plist index e7914c925..629d695cc 100644 --- a/packages/hmssdk_flutter/example/ios/Runner/Info.plist +++ b/packages/hmssdk_flutter/example/ios/Runner/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.58 + 1.5.59 CFBundleSignature ???? CFBundleURLTypes @@ -48,7 +48,7 @@ CFBundleVersion - 358 + 359 ITSAppUsesNonExemptEncryption LSApplicationCategoryType From 5e073e3845b04bfabce57623ebdcef1dad86620b Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 19 Sep 2023 15:01:58 +0530 Subject: [PATCH 14/67] Added parameter to pass the end room callback --- .../hms_room_kit/lib/src/common/constants.dart | 3 +++ packages/hms_room_kit/lib/src/hms_prebuilt.dart | 15 +++++++++++++-- .../lib/src/meeting/meeting_store.dart | 5 +++++ .../lib/src/preview/preview_store.dart | 5 +++++ .../hms_room_kit/lib/src/screen_controller.dart | 12 +++++++++++- .../common_widgets/hms_left_room_screen.dart | 3 ++- 6 files changed, 39 insertions(+), 4 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index cc32f84aa..6805cb646 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -44,4 +44,7 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; + + ///[Constant.onLeaveRoomCallback] is the function that you wish to execute while leaving the room + static Function? onLeaveRoomCallback; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt.dart b/packages/hms_room_kit/lib/src/hms_prebuilt.dart index 48333d528..237caefee 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt.dart @@ -22,23 +22,34 @@ class HMSPrebuilt extends StatelessWidget { ///Defaults to null final HMSPrebuiltOptions? options; + ///The callback for the leave room button + ///This function can be passed if you wish to perform some specific actions + ///in addition to leaving the room when the leave room button is pressed + final Function? onLeaveRoomCallback; + ///The key for the widget - const HMSPrebuilt({super.key, required this.roomCode, this.options}); + const HMSPrebuilt( + {super.key, + required this.roomCode, + this.options, + this.onLeaveRoomCallback}); ///Builds the widget ///Returns a [ScreenController] widget ///The [ScreenController] is the main widget that renders the prebuilt ///For more details checkout the [ScreenController] class - ///It takes the [roomCode] and [options] as parameters + ///It takes the [roomCode],[options] and [onLeaveRoomCallback] as parameters ///The [roomCode] is the room code of the room to join ///The [options] are the options for the prebuilt ///For more details checkout the [HMSPrebuiltOptions] class ///The [options] are optional and are used to customize the prebuilt + ///The [onLeaveRoomCallback] is the callback for the leave room button @override Widget build(BuildContext context) { return ScreenController( roomCode: roomCode, options: options, + onLeaveRoomCallback: onLeaveRoomCallback, ); } } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index b64c45dbe..e6ffab571 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -1184,6 +1184,11 @@ class MeetingStore extends ChangeNotifier peerTracks.clear(); isRoomEnded = true; resetForegroundTaskAndOrientation(); + + ///Here we call the method passed by the user in HMSPrebuilt as a callback + if(Constant.onLeaveRoomCallback != null){ + Constant.onLeaveRoomCallback!(); + } notifyListeners(); } diff --git a/packages/hms_room_kit/lib/src/preview/preview_store.dart b/packages/hms_room_kit/lib/src/preview/preview_store.dart index 3bd30a341..1de170239 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_store.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_store.dart @@ -244,6 +244,11 @@ class PreviewStore extends ChangeNotifier void leave() { hmsSDKInteractor.leave(); + + ///Here we call the method passed by the user in HMSPrebuilt as a callback + if(Constant.onLeaveRoomCallback != null){ + Constant.onLeaveRoomCallback!(); + } HMSThemeColors.resetLayoutColors(); hmsSDKInteractor.toggleAlwaysScreenOn(); destroy(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index c2844d500..2aec9032b 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -24,7 +24,16 @@ class ScreenController extends StatefulWidget { ///For more details checkout the [HMSPrebuiltOptions] class final HMSPrebuiltOptions? options; - const ScreenController({super.key, required this.roomCode, this.options}); + ///The callback for the leave room button + ///This function can be passed if you wish to perform some specific actions + ///in addition to leaving the room when the leave room button is pressed + final Function? onLeaveRoomCallback; + + const ScreenController( + {super.key, + required this.roomCode, + this.options, + this.onLeaveRoomCallback}); @override State createState() => _ScreenControllerState(); } @@ -42,6 +51,7 @@ class _ScreenControllerState extends State { ///Setting the prebuilt options and roomCode Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; + Constant.onLeaveRoomCallback = widget.onLeaveRoomCallback; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart index e8d13df4d..d4affe0b3 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart @@ -125,7 +125,8 @@ class HMSLeftRoomScreen extends StatelessWidget { MaterialPageRoute( builder: (_) => HMSPrebuilt( roomCode: Constant.roomCode, - options: Constant.prebuiltOptions))), + options: Constant.prebuiltOptions, + onLeaveRoomCallback: Constant.onLeaveRoomCallback,))), }, child: SizedBox( height: 48, From 23488e4c4027a1a473290bc651435627ffbb2beb Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Tue, 19 Sep 2023 16:58:37 +0530 Subject: [PATCH 15/67] Added parameter to pass the end room callback (#1586) --- .../hms_room_kit/lib/src/common/constants.dart | 3 +++ packages/hms_room_kit/lib/src/hms_prebuilt.dart | 15 +++++++++++++-- .../lib/src/meeting/meeting_store.dart | 5 +++++ .../lib/src/preview/preview_store.dart | 5 +++++ .../hms_room_kit/lib/src/screen_controller.dart | 12 +++++++++++- .../common_widgets/hms_left_room_screen.dart | 3 ++- 6 files changed, 39 insertions(+), 4 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index cc32f84aa..6805cb646 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -44,4 +44,7 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; + + ///[Constant.onLeaveRoomCallback] is the function that you wish to execute while leaving the room + static Function? onLeaveRoomCallback; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt.dart b/packages/hms_room_kit/lib/src/hms_prebuilt.dart index 48333d528..237caefee 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt.dart @@ -22,23 +22,34 @@ class HMSPrebuilt extends StatelessWidget { ///Defaults to null final HMSPrebuiltOptions? options; + ///The callback for the leave room button + ///This function can be passed if you wish to perform some specific actions + ///in addition to leaving the room when the leave room button is pressed + final Function? onLeaveRoomCallback; + ///The key for the widget - const HMSPrebuilt({super.key, required this.roomCode, this.options}); + const HMSPrebuilt( + {super.key, + required this.roomCode, + this.options, + this.onLeaveRoomCallback}); ///Builds the widget ///Returns a [ScreenController] widget ///The [ScreenController] is the main widget that renders the prebuilt ///For more details checkout the [ScreenController] class - ///It takes the [roomCode] and [options] as parameters + ///It takes the [roomCode],[options] and [onLeaveRoomCallback] as parameters ///The [roomCode] is the room code of the room to join ///The [options] are the options for the prebuilt ///For more details checkout the [HMSPrebuiltOptions] class ///The [options] are optional and are used to customize the prebuilt + ///The [onLeaveRoomCallback] is the callback for the leave room button @override Widget build(BuildContext context) { return ScreenController( roomCode: roomCode, options: options, + onLeaveRoomCallback: onLeaveRoomCallback, ); } } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index b64c45dbe..e6ffab571 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -1184,6 +1184,11 @@ class MeetingStore extends ChangeNotifier peerTracks.clear(); isRoomEnded = true; resetForegroundTaskAndOrientation(); + + ///Here we call the method passed by the user in HMSPrebuilt as a callback + if(Constant.onLeaveRoomCallback != null){ + Constant.onLeaveRoomCallback!(); + } notifyListeners(); } diff --git a/packages/hms_room_kit/lib/src/preview/preview_store.dart b/packages/hms_room_kit/lib/src/preview/preview_store.dart index 3bd30a341..1de170239 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_store.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_store.dart @@ -244,6 +244,11 @@ class PreviewStore extends ChangeNotifier void leave() { hmsSDKInteractor.leave(); + + ///Here we call the method passed by the user in HMSPrebuilt as a callback + if(Constant.onLeaveRoomCallback != null){ + Constant.onLeaveRoomCallback!(); + } HMSThemeColors.resetLayoutColors(); hmsSDKInteractor.toggleAlwaysScreenOn(); destroy(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index c2844d500..2aec9032b 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -24,7 +24,16 @@ class ScreenController extends StatefulWidget { ///For more details checkout the [HMSPrebuiltOptions] class final HMSPrebuiltOptions? options; - const ScreenController({super.key, required this.roomCode, this.options}); + ///The callback for the leave room button + ///This function can be passed if you wish to perform some specific actions + ///in addition to leaving the room when the leave room button is pressed + final Function? onLeaveRoomCallback; + + const ScreenController( + {super.key, + required this.roomCode, + this.options, + this.onLeaveRoomCallback}); @override State createState() => _ScreenControllerState(); } @@ -42,6 +51,7 @@ class _ScreenControllerState extends State { ///Setting the prebuilt options and roomCode Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; + Constant.onLeaveRoomCallback = widget.onLeaveRoomCallback; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart index e8d13df4d..d4affe0b3 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart @@ -125,7 +125,8 @@ class HMSLeftRoomScreen extends StatelessWidget { MaterialPageRoute( builder: (_) => HMSPrebuilt( roomCode: Constant.roomCode, - options: Constant.prebuiltOptions))), + options: Constant.prebuiltOptions, + onLeaveRoomCallback: Constant.onLeaveRoomCallback,))), }, child: SizedBox( height: 48, From 711b46992aad32a14842f8df6b8db74d168a246b Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 15:36:54 +0530 Subject: [PATCH 16/67] renamed the leave callback to onLeave --- packages/hms_room_kit/lib/src/common/constants.dart | 4 ++-- packages/hms_room_kit/lib/src/hms_prebuilt.dart | 13 +++++-------- .../hms_room_kit/lib/src/meeting/meeting_store.dart | 4 ++-- .../hms_room_kit/lib/src/preview/preview_store.dart | 4 ++-- .../hms_room_kit/lib/src/screen_controller.dart | 9 +++------ .../common_widgets/hms_left_room_screen.dart | 7 ++++--- 6 files changed, 18 insertions(+), 23 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index 6805cb646..8e7830968 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -45,6 +45,6 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; - ///[Constant.onLeaveRoomCallback] is the function that you wish to execute while leaving the room - static Function? onLeaveRoomCallback; + ///[Constant.onLeave] is the function that you wish to execute while leaving the room + static Function? onLeave; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt.dart b/packages/hms_room_kit/lib/src/hms_prebuilt.dart index 237caefee..751c81390 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt.dart @@ -25,31 +25,28 @@ class HMSPrebuilt extends StatelessWidget { ///The callback for the leave room button ///This function can be passed if you wish to perform some specific actions ///in addition to leaving the room when the leave room button is pressed - final Function? onLeaveRoomCallback; + final Function? onLeave; ///The key for the widget const HMSPrebuilt( - {super.key, - required this.roomCode, - this.options, - this.onLeaveRoomCallback}); + {super.key, required this.roomCode, this.options, this.onLeave}); ///Builds the widget ///Returns a [ScreenController] widget ///The [ScreenController] is the main widget that renders the prebuilt ///For more details checkout the [ScreenController] class - ///It takes the [roomCode],[options] and [onLeaveRoomCallback] as parameters + ///It takes the [roomCode],[options] and [onLeave] as parameters ///The [roomCode] is the room code of the room to join ///The [options] are the options for the prebuilt ///For more details checkout the [HMSPrebuiltOptions] class ///The [options] are optional and are used to customize the prebuilt - ///The [onLeaveRoomCallback] is the callback for the leave room button + ///The [onLeave] is the callback for the leave room button @override Widget build(BuildContext context) { return ScreenController( roomCode: roomCode, options: options, - onLeaveRoomCallback: onLeaveRoomCallback, + onLeave: onLeave, ); } } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index e6ffab571..c1c519a7b 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -1186,8 +1186,8 @@ class MeetingStore extends ChangeNotifier resetForegroundTaskAndOrientation(); ///Here we call the method passed by the user in HMSPrebuilt as a callback - if(Constant.onLeaveRoomCallback != null){ - Constant.onLeaveRoomCallback!(); + if (Constant.onLeave != null) { + Constant.onLeave!(); } notifyListeners(); } diff --git a/packages/hms_room_kit/lib/src/preview/preview_store.dart b/packages/hms_room_kit/lib/src/preview/preview_store.dart index 1de170239..7a38dd8ea 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_store.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_store.dart @@ -246,8 +246,8 @@ class PreviewStore extends ChangeNotifier hmsSDKInteractor.leave(); ///Here we call the method passed by the user in HMSPrebuilt as a callback - if(Constant.onLeaveRoomCallback != null){ - Constant.onLeaveRoomCallback!(); + if (Constant.onLeave != null) { + Constant.onLeave!(); } HMSThemeColors.resetLayoutColors(); hmsSDKInteractor.toggleAlwaysScreenOn(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 2aec9032b..83853aeae 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -27,13 +27,10 @@ class ScreenController extends StatefulWidget { ///The callback for the leave room button ///This function can be passed if you wish to perform some specific actions ///in addition to leaving the room when the leave room button is pressed - final Function? onLeaveRoomCallback; + final Function? onLeave; const ScreenController( - {super.key, - required this.roomCode, - this.options, - this.onLeaveRoomCallback}); + {super.key, required this.roomCode, this.options, this.onLeave}); @override State createState() => _ScreenControllerState(); } @@ -51,7 +48,7 @@ class _ScreenControllerState extends State { ///Setting the prebuilt options and roomCode Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; - Constant.onLeaveRoomCallback = widget.onLeaveRoomCallback; + Constant.onLeave = widget.onLeave; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart index d4affe0b3..2e03f9dbf 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart @@ -124,9 +124,10 @@ class HMSLeftRoomScreen extends StatelessWidget { context, MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: Constant.roomCode, - options: Constant.prebuiltOptions, - onLeaveRoomCallback: Constant.onLeaveRoomCallback,))), + roomCode: Constant.roomCode, + options: Constant.prebuiltOptions, + onLeave: Constant.onLeave, + ))), }, child: SizedBox( height: 48, From f8b5a8a3ca0da210892f06d519ce3066c6536299 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Thu, 21 Sep 2023 15:42:46 +0530 Subject: [PATCH 17/67] renamed the leave callback to onLeave (#1587) --- packages/hms_room_kit/lib/src/common/constants.dart | 4 ++-- packages/hms_room_kit/lib/src/hms_prebuilt.dart | 13 +++++-------- .../hms_room_kit/lib/src/meeting/meeting_store.dart | 4 ++-- .../hms_room_kit/lib/src/preview/preview_store.dart | 4 ++-- .../hms_room_kit/lib/src/screen_controller.dart | 9 +++------ .../common_widgets/hms_left_room_screen.dart | 7 ++++--- 6 files changed, 18 insertions(+), 23 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index 6805cb646..8e7830968 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -45,6 +45,6 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; - ///[Constant.onLeaveRoomCallback] is the function that you wish to execute while leaving the room - static Function? onLeaveRoomCallback; + ///[Constant.onLeave] is the function that you wish to execute while leaving the room + static Function? onLeave; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt.dart b/packages/hms_room_kit/lib/src/hms_prebuilt.dart index 237caefee..751c81390 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt.dart @@ -25,31 +25,28 @@ class HMSPrebuilt extends StatelessWidget { ///The callback for the leave room button ///This function can be passed if you wish to perform some specific actions ///in addition to leaving the room when the leave room button is pressed - final Function? onLeaveRoomCallback; + final Function? onLeave; ///The key for the widget const HMSPrebuilt( - {super.key, - required this.roomCode, - this.options, - this.onLeaveRoomCallback}); + {super.key, required this.roomCode, this.options, this.onLeave}); ///Builds the widget ///Returns a [ScreenController] widget ///The [ScreenController] is the main widget that renders the prebuilt ///For more details checkout the [ScreenController] class - ///It takes the [roomCode],[options] and [onLeaveRoomCallback] as parameters + ///It takes the [roomCode],[options] and [onLeave] as parameters ///The [roomCode] is the room code of the room to join ///The [options] are the options for the prebuilt ///For more details checkout the [HMSPrebuiltOptions] class ///The [options] are optional and are used to customize the prebuilt - ///The [onLeaveRoomCallback] is the callback for the leave room button + ///The [onLeave] is the callback for the leave room button @override Widget build(BuildContext context) { return ScreenController( roomCode: roomCode, options: options, - onLeaveRoomCallback: onLeaveRoomCallback, + onLeave: onLeave, ); } } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index e6ffab571..c1c519a7b 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -1186,8 +1186,8 @@ class MeetingStore extends ChangeNotifier resetForegroundTaskAndOrientation(); ///Here we call the method passed by the user in HMSPrebuilt as a callback - if(Constant.onLeaveRoomCallback != null){ - Constant.onLeaveRoomCallback!(); + if (Constant.onLeave != null) { + Constant.onLeave!(); } notifyListeners(); } diff --git a/packages/hms_room_kit/lib/src/preview/preview_store.dart b/packages/hms_room_kit/lib/src/preview/preview_store.dart index 1de170239..7a38dd8ea 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_store.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_store.dart @@ -246,8 +246,8 @@ class PreviewStore extends ChangeNotifier hmsSDKInteractor.leave(); ///Here we call the method passed by the user in HMSPrebuilt as a callback - if(Constant.onLeaveRoomCallback != null){ - Constant.onLeaveRoomCallback!(); + if (Constant.onLeave != null) { + Constant.onLeave!(); } HMSThemeColors.resetLayoutColors(); hmsSDKInteractor.toggleAlwaysScreenOn(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 2aec9032b..83853aeae 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -27,13 +27,10 @@ class ScreenController extends StatefulWidget { ///The callback for the leave room button ///This function can be passed if you wish to perform some specific actions ///in addition to leaving the room when the leave room button is pressed - final Function? onLeaveRoomCallback; + final Function? onLeave; const ScreenController( - {super.key, - required this.roomCode, - this.options, - this.onLeaveRoomCallback}); + {super.key, required this.roomCode, this.options, this.onLeave}); @override State createState() => _ScreenControllerState(); } @@ -51,7 +48,7 @@ class _ScreenControllerState extends State { ///Setting the prebuilt options and roomCode Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; - Constant.onLeaveRoomCallback = widget.onLeaveRoomCallback; + Constant.onLeave = widget.onLeave; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart index d4affe0b3..2e03f9dbf 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_left_room_screen.dart @@ -124,9 +124,10 @@ class HMSLeftRoomScreen extends StatelessWidget { context, MaterialPageRoute( builder: (_) => HMSPrebuilt( - roomCode: Constant.roomCode, - options: Constant.prebuiltOptions, - onLeaveRoomCallback: Constant.onLeaveRoomCallback,))), + roomCode: Constant.roomCode, + options: Constant.prebuiltOptions, + onLeave: Constant.onLeave, + ))), }, child: SizedBox( height: 48, From 7d81806971c26add4d5cf93a52bdb94c5de87b95 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Thu, 21 Sep 2023 16:28:07 +0530 Subject: [PATCH 18/67] Prebuilt/removed dependencies (#1588) * removed staggered grid view package * Removed meeting mode selection options * updated pubspec --------- Co-authored-by: Yogesh Singh --- packages/hms_room_kit/example/pubspec.lock | 28 +- .../lib/src/meeting/meeting_page.dart | 32 +-- .../meeting_mode_bottom_sheet.dart | 266 ------------------ .../more_settings_bottom_sheet.dart | 34 --- .../src/widgets/meeting_modes/audio_mode.dart | 89 ------ .../meeting_modes/basic_grid_view.dart | 165 ----------- .../meeting_modes/full_screen_mode.dart | 104 ------- .../src/widgets/meeting_modes/hero_mode.dart | 175 ------------ .../meeting_modes/inset_grid_view.dart | 185 ------------ packages/hms_room_kit/pubspec.yaml | 9 +- 10 files changed, 15 insertions(+), 1072 deletions(-) delete mode 100644 packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart diff --git a/packages/hms_room_kit/example/pubspec.lock b/packages/hms_room_kit/example/pubspec.lock index 7e68f6ff0..0cb84cbfd 100644 --- a/packages/hms_room_kit/example/pubspec.lock +++ b/packages/hms_room_kit/example/pubspec.lock @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: bot_toast - sha256: "994c55aa16c4df82726b79a63c1f8d29bd7b89d940a5837728ff51546b630497" + sha256: "6b93030a99a98335b8827ecd83021e92e885ffc61d261d3825ffdecdd17f3bdf" url: "https://pub.dev" source: hosted - version: "4.1.1" + version: "4.1.3" characters: dependency: transitive description: @@ -182,14 +182,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.3" - flutter_staggered_grid_view: - dependency: transitive - description: - name: flutter_staggered_grid_view - sha256: "1312314293acceb65b92754298754801b0e1f26a1845833b740b30415bbbcf07" - url: "https://pub.dev" - source: hosted - version: "0.6.2" flutter_svg: dependency: "direct main" description: @@ -220,10 +212,10 @@ packages: dependency: "direct main" description: name: google_fonts - sha256: "2776c66b3e97c6cdd58d1bd3281548b074b64f1fd5c8f82391f7456e38849567" + sha256: f0b8d115a13ecf827013ec9fc883390ccc0e87a96ed5347a3114cac177ef18e8 url: "https://pub.dev" source: hosted - version: "4.0.5" + version: "6.1.0" hms_room_kit: dependency: "direct main" description: @@ -403,18 +395,18 @@ packages: dependency: transitive description: name: permission_handler - sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 + sha256: ad65ba9af42a3d067203641de3fd9f547ded1410bad3b84400c2b4899faede70 url: "https://pub.dev" source: hosted - version: "10.4.5" + version: "11.0.0" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" + sha256: "740c9c9d3090a29cd2fd1f193bba457ac1d2cef1da0ef91f2630d3d9e3c01c15" url: "https://pub.dev" source: hosted - version: "10.3.6" + version: "11.0.2" permission_handler_apple: dependency: transitive description: @@ -744,10 +736,10 @@ packages: dependency: transitive description: name: win32 - sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" + sha256: c97defd418eef4ec88c0d1652cdce84b9f7b63dd7198e266d06ac1710d527067 url: "https://pub.dev" source: hosted - version: "5.0.7" + version: "5.0.8" xdg_directories: dependency: transitive description: diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 2e06713e3..5e55ae8d0 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -29,9 +29,6 @@ import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/enums/meeting_mode.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/audio_device_change_dialog.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/audio_mode.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/full_screen_mode.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/hero_mode.dart'; import 'package:hms_room_kit/src/widgets/meeting_modes/one_to_one_mode.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/meeting/pip_view.dart'; @@ -288,34 +285,7 @@ class _MeetingPageState extends State { isLocalInsetPresent: false, ) - : (modeData.item1 == - MeetingMode - .hero) - ? heroMode( - peerTracks: data - .item1, - itemCount: data - .item3, - screenShareCount: data - .item4, - context: - context, - isPortrait: - isPortraitMode, - size: - size) - : (modeData.item1 == - MeetingMode - .audio) - ? audioMode( - peerTracks: data.item1.sublist(data.item4), - itemCount: data.item1.sublist(data.item4).length, - context: context, - isPortrait: isPortraitMode, - size: size) - : (data.item5 == MeetingMode.single) - ? fullScreenMode(peerTracks: data.item1, itemCount: data.item3, screenShareCount: data.item4, context: context, isPortrait: isPortraitMode, size: size) - : const CustomOneToOneGrid( + : const CustomOneToOneGrid( isLocalInsetPresent: false, )); }); diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart deleted file mode 100644 index b89409775..000000000 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart +++ /dev/null @@ -1,266 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/enums/meeting_mode.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -class MeetingModeBottomSheet extends StatefulWidget { - const MeetingModeBottomSheet({ - Key? key, - }) : super(key: key); - @override - State createState() => _MeetingModeBottomSheetState(); -} - -class _MeetingModeBottomSheetState extends State { - GlobalKey? dropdownKey; - - @override - void initState() { - super.initState(); - dropdownKey = GlobalKey(); - } - - @override - Widget build(BuildContext context) { - MeetingStore meetingStore = context.read(); - return FractionallySizedBox( - heightFactor: 0.6, - child: Padding( - padding: const EdgeInsets.only(top: 20.0, left: 15, right: 15), - child: Column( - children: [ - Row( - children: [ - CircleAvatar( - radius: 18, - backgroundColor: borderColor, - child: IconButton( - icon: Icon( - Icons.arrow_back_ios_new, - size: 16, - color: themeDefaultColor, - ), - onPressed: () { - Navigator.pop(context); - }, - ), - ), - Expanded( - child: Text( - "Meeting Modes", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - color: themeDefaultColor, - letterSpacing: 0.15, - fontWeight: FontWeight.w600), - ), - ), - IconButton( - icon: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close_button.svg", - width: 40, - ), - onPressed: () { - Navigator.pop(context); - }, - ), - ], - ), - Padding( - padding: const EdgeInsets.only(top: 15, bottom: 10), - child: Divider( - color: dividerColor, - height: 5, - ), - ), - Expanded( - child: ListView( - children: [ - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) { - Utilities.showToast( - "Meeting mode is already set to Grid View"); - return; - } - meetingStore - .setMode(MeetingMode.equalProminenceWithInset); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/role_change.svg", - semanticsLabel: "fl_normal_mode", - colorFilter: ColorFilter.mode( - (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Normal Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) { - Utilities.showToast( - "Meeting mode is already set to Active Speaker"); - return; - } - meetingStore - .setMode(MeetingMode.activeSpeakerWithInset); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - semanticsLabel: "fl_active_speaker_mode", - colorFilter: ColorFilter.mode( - (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Active Speaker Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.audio) { - Utilities.showToast( - "Meeting mode is already set to Audio Mode"); - return; - } - meetingStore.setMode(MeetingMode.audio); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - 'packages/hms_room_kit/lib/src/assets/icons/mic_state_on.svg', - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.audio - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - semanticsLabel: "fl_audio_video_view", - fit: BoxFit.scaleDown, - ), - title: Text( - "Audio View", - semanticsLabel: "fl_audio_video_mode", - style: GoogleFonts.inter( - fontSize: 14, - color: meetingStore.meetingMode == MeetingMode.audio - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.hero) { - Utilities.showToast( - "Meeting mode is already set to Hero Mode"); - return; - } - meetingStore.setMode(MeetingMode.hero); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - semanticsLabel: "fl_hero_mode", - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.hero - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Hero Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: meetingStore.meetingMode == MeetingMode.hero - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.single) { - Utilities.showToast( - "Meeting mode is already set to Single Mode"); - return; - } - meetingStore.setMode(MeetingMode.single); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/single_tile.svg", - semanticsLabel: "fl_single_mode", - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.single - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Single Tile Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: - meetingStore.meetingMode == MeetingMode.single - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ], - ), - ), - ], - )), - ); - } -} diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 09291a469..0bafe92f0 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -11,7 +11,6 @@ import 'package:hms_room_kit/src/common/constants.dart'; import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/stats_for_nerds.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart'; -import 'package:hms_room_kit/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/participants_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/share_link_option.dart'; @@ -205,39 +204,6 @@ class _MoreSettingsBottomSheetState extends State { const SizedBox( height: 10, ), - if (Constant.debugMode) - ListTile( - horizontalTitleGap: 2, - onTap: () async { - Navigator.pop(context); - showModalBottomSheet( - isScrollControlled: true, - backgroundColor: HMSThemeColors.surfaceDim, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(20), - ), - context: context, - builder: (ctx) => ChangeNotifierProvider.value( - value: meetingStore, - child: const MeetingModeBottomSheet()), - ); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - height: 20, - width: 20, - colorFilter: ColorFilter.mode( - HMSThemeColors.onSurfaceHighEmphasis, - BlendMode.srcIn), - ), - title: HMSSubheadingText( - text: "Meeting mode", - textColor: HMSThemeColors.onSurfaceHighEmphasis, - letterSpacing: 0.15, - fontWeight: FontWeight.w600, - ), - ), if (meetingStore.localPeer?.role.publishSettings?.allowed .contains("screen") ?? false) diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart deleted file mode 100644 index 6f4538928..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart +++ /dev/null @@ -1,89 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/audio_tile.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; - -//Widget for Audio View -Widget audioMode( - {required List peerTracks, - required int itemCount, - required bool isPortrait, - required BuildContext context, - required Size size}) { - return GridView.builder( - itemCount: itemCount, - itemBuilder: (context, index) { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}audio_view"), - value: peerTracks[index], - child: AudioTile( - key: ValueKey("${peerTracks[index].uid}audio_tile"), - itemHeight: size.height, - itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, size, context) - : landscapePattern(itemCount, size, context)), - physics: const PageScrollPhysics(), - scrollDirection: Axis.horizontal, - ); -} - -List portraitPattern( - List peerTrack, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - - List tiles = []; - int pinTileCount = 0; - while ((pinTileCount < peerTrack.length) && peerTrack[pinTileCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - int tileLeft = (peerTrack.length - pinTileCount) % 6; - for (int i = 0; i < (peerTrack.length - pinTileCount - tileLeft); i++) { - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } else if (tileLeft == 3) { - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - } else if (tileLeft == 4) { - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - } else if (tileLeft == 5) { - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - } - return tiles; -} - -List landscapePattern( - int itemCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - int gridView = itemCount ~/ 2; - int tileLeft = itemCount - (gridView * 2); - for (int i = 0; i < (itemCount - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart deleted file mode 100644 index e14d51e21..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart +++ /dev/null @@ -1,165 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget basicGridView( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track != null && - peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - : PeerTile( - islongPressEnabled: false, - key: Key("${peerTracks[index].uid}video_tile"), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: PeerTile( - key: ValueKey("${peerTracks[index].uid}audio_view"), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -List portraitPattern(List peerTrack, - int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int pinTileCount = 0; - while ((pinTileCount + screenShareCount < peerTrack.length) && - peerTrack[pinTileCount + screenShareCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - int normalTile = peerTrack.length - screenShareCount - pinTileCount; - int tileLeft = normalTile % 4; - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(0.5, ratio)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } else { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(1, ratio)); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart deleted file mode 100644 index cbb1707c0..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart +++ /dev/null @@ -1,104 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget fullScreenMode( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - cacheExtent: size.width, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - Text( - "You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20), - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - )) - ], - ), - ) - : PeerTile( - key: Key(peerTracks[index].uid), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: PeerTile( - key: ValueKey(peerTracks[index].uid), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: false, - pattern: [StairedGridTile(1, Utilities.getHLSRatio(size, context))])); -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart deleted file mode 100644 index 027f9f2f1..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart +++ /dev/null @@ -1,175 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget heroMode( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - cacheExtent: 600, - physics: const PageScrollPhysics(), - itemCount: itemCount, - scrollDirection: isPortrait ? Axis.vertical : Axis.horizontal, - itemBuilder: (context, index) { - if (peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - : PeerTile( - key: Key(peerTracks[index].uid), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: PeerTile( - key: ValueKey(peerTracks[index].uid), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: false, - pattern: isPortrait - ? portraitPattern(itemCount, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -List portraitPattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = 1 / Utilities.getHLSRatio(size, context); - - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - if (normalTile == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - tiles.add(StairedGridTile(1, ratio / 0.8)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - } - int tileLeft = normalTile % 4; - for (int i = 0; i < (normalTile - tileLeft - 4); i++) { - tiles.add(StairedGridTile(0.5, ratio)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - tiles.add(StairedGridTile(1, ratio / 0.5)); - } else { - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - if (normalTile == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - tiles.add(StairedGridTile(1, ratio / 0.8)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - } - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft - 4); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart deleted file mode 100644 index 769b112c4..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart +++ /dev/null @@ -1,185 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -/// Returns the Grid for inset mode -Widget insetGridView( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track != null && - peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - - ///Here we check whether the screen shared is local or remote - child: peerTracks[index].peer.isLocal - - ///If this is true we render the local screen share tile which says "You are sharing your screen" - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - - ///Here we render the remote peer screen with the screen share - : PeerTile( - islongPressEnabled: false, - key: Key("${peerTracks[index].uid}video_tile"), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return (!peerTracks[index].peer.isLocal) - ? ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: const PeerTile( - // itemHeight: size.height, - // itemWidth: size.width, - )) - : Container(); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -///This returns the grid pattern for the grid view -///The logic is as below: -///1. We first check the screen share count and add the tiles for screen share -///2. Then we check the pinned tile count and add the tiles for pinned tiles -///3. Then we check the normal tile count and add the tiles for normal tiles until the count is divisible by 3 -///4. For remaining tiles if count is 1 we add a tile of complete screen width -///5. For remaining tiles if count is 2 we add a tile of half screen width -List portraitPattern(List peerTrack, - int screenShareCount, Size size, BuildContext context) { - double ratio = (size.height - 3) / size.width; - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int pinTileCount = 0; - while ((pinTileCount + screenShareCount < peerTrack.length) && - peerTrack[pinTileCount + screenShareCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - - ///Checking the number of tiles left after adding screen share and pinned tiles - int normalTile = peerTrack.length - screenShareCount - pinTileCount; - - ///Checking the remainder when divided by 3 - int tileLeft = normalTile % 3; - - ///Here we add the tiles with 1/3 of the screen height - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(0.33, ratio / 3)); - } - - ///Here if the remainder is 1 we add a tile with full screen height - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - ///Here if the remainder is 2 we add a tile with half screen height - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index e641e399f..f97fe75af 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -7,8 +7,8 @@ issue_tracker: https://github.com/100mslive/100ms-flutter/issues documentation: https://www.100ms.live/docs environment: - sdk: ">=2.17.0 <4.0.0" - flutter: ">=2.10.0" + sdk: ">=3.0.0 <4.0.0" + flutter: ">=3.10.0" dependencies: flutter: @@ -16,10 +16,9 @@ dependencies: hmssdk_flutter: ^1.8.0 intl: ^0.18.1 - permission_handler: ^10.4.3 + permission_handler: ^11.0.0 provider: ^6.0.5 - flutter_staggered_grid_view: ^0.6.2 - google_fonts: ^4.0.4 + google_fonts: ^6.1.0 bot_toast: ^4.0.4 draggable_widget: ^2.0.0 badges: ^3.1.1 From 218798f0a318eb486dd83633a3a0122f2c77c873 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 16:54:27 +0530 Subject: [PATCH 19/67] Fixed linting issues --- .../lib/src/meeting/meeting_page.dart | 15 +++++++++------ .../lib/src/preview/preview_device_settings.dart | 2 +- .../bottom_sheets/app_utilities_bottom_sheet.dart | 2 +- .../audio_settings_bottom_sheet.dart | 2 +- .../bottom_sheets/change_name_bottom_sheet.dart | 2 +- .../bottom_sheets/end_service_bottom_sheet.dart | 2 +- .../widgets/bottom_sheets/hls_more_options.dart | 2 +- .../bottom_sheets/local_peer_bottom_sheet.dart | 2 +- .../bottom_sheets/participants_bottom_sheet.dart | 8 ++++++-- .../bottom_sheets/remote_peer_bottom_sheet.dart | 2 +- 10 files changed, 23 insertions(+), 16 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 5e55ae8d0..05536865d 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -117,8 +117,6 @@ class _MeetingPageState extends State { @override Widget build(BuildContext context) { - bool isPortraitMode = - MediaQuery.of(context).orientation == Orientation.portrait; return WillPopScope( onWillPop: () async { bool ans = await UtilityComponents.onBackPressed(context) ?? false; @@ -264,7 +262,11 @@ class _MeetingPageState extends State { .activeSpeakerWithInset && (context.read().localPeer?.audioTrack != null || - context.read().localPeer?.videoTrack != + context + .read< + MeetingStore>() + .localPeer + ?.videoTrack != null)) ? OneToOneMode( bottomMargin: @@ -286,11 +288,12 @@ class _MeetingPageState extends State { false, ) : const CustomOneToOneGrid( - isLocalInsetPresent: false, - )); + isLocalInsetPresent: + false, + )); }); }), - Column( + const Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ diff --git a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart index 2fbe6f1aa..150a496bd 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart @@ -76,7 +76,7 @@ class _PreviewDeviceSettingsState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart index 98392aee7..63725c3ef 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart @@ -54,7 +54,7 @@ class _AppUtilitiesBottomSheetState extends State { ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart index 77b907d69..6a77f11a4 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart @@ -77,7 +77,7 @@ class _AudioSettingsBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart index 69ad3e642..160a3b795 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart @@ -86,7 +86,7 @@ class _ChangeNameBottomSheetState extends State { ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart index 1fae611e6..7583deb95 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart @@ -53,7 +53,7 @@ class EndServiceBottomSheet extends StatelessWidget { title ?? const SizedBox() ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart index e201a44db..fc457bf89 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart @@ -51,7 +51,7 @@ class _HLSMoreOptionsBottomSheetBottomSheetState ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart index 932e6a5f4..89c55d24d 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart @@ -72,7 +72,7 @@ class _LocalPeerBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart index 02746e54b..568d29657 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart @@ -71,10 +71,11 @@ class _ParticipantsBottomSheetState extends State { ///Here we have defined the functions to be executed on clicking the options switch (value) { case 1: + ///If the peer is onStage already we show the option to remove from stage ///and the peer's role is changed to it's previous role /// - ///If the peer is offStage we show the option to bring on stage + ///If the peer is offStage we show the option to bring on stage ///and the peer 's role is changed to offStageRole from layout api ///We also update the peer metadata with the previous role ///which will be used while removing the peer from stage @@ -110,6 +111,7 @@ class _ParticipantsBottomSheetState extends State { } break; case 2: + ///Here we check whether the video track is null or not if (peerTrackNode?.track == null) { return; @@ -118,6 +120,7 @@ class _ParticipantsBottomSheetState extends State { peerTrackNode!.track!, !peerTrackNode.track!.isMute); break; case 3: + ///Here we check whether the audio track is null or not if (peerTrackNode?.audioTrack == null) { return; @@ -126,6 +129,7 @@ class _ParticipantsBottomSheetState extends State { !peerTrackNode.audioTrack!.isMute); break; case 4: + ///This is called when someone clicks on remove Participant meetingStore.removePeerFromRoom(peer); break; @@ -354,7 +358,7 @@ class _ParticipantsBottomSheetState extends State { Padding( padding: const EdgeInsets - .fromLTRB( + .fromLTRB( 16, 8, 16, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart index d16baae1a..e0f134fe2 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart @@ -60,7 +60,7 @@ class _RemotePeerBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], From fa139e6127cc36de8cca01c13ff8cb1e687462e1 Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Thu, 21 Sep 2023 16:56:41 +0530 Subject: [PATCH 20/67] Fixed linting issues (#1589) --- .../lib/src/meeting/meeting_page.dart | 15 +++++++++------ .../lib/src/preview/preview_device_settings.dart | 2 +- .../bottom_sheets/app_utilities_bottom_sheet.dart | 2 +- .../audio_settings_bottom_sheet.dart | 2 +- .../bottom_sheets/change_name_bottom_sheet.dart | 2 +- .../bottom_sheets/end_service_bottom_sheet.dart | 2 +- .../widgets/bottom_sheets/hls_more_options.dart | 2 +- .../bottom_sheets/local_peer_bottom_sheet.dart | 2 +- .../bottom_sheets/participants_bottom_sheet.dart | 8 ++++++-- .../bottom_sheets/remote_peer_bottom_sheet.dart | 2 +- 10 files changed, 23 insertions(+), 16 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 5e55ae8d0..05536865d 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -117,8 +117,6 @@ class _MeetingPageState extends State { @override Widget build(BuildContext context) { - bool isPortraitMode = - MediaQuery.of(context).orientation == Orientation.portrait; return WillPopScope( onWillPop: () async { bool ans = await UtilityComponents.onBackPressed(context) ?? false; @@ -264,7 +262,11 @@ class _MeetingPageState extends State { .activeSpeakerWithInset && (context.read().localPeer?.audioTrack != null || - context.read().localPeer?.videoTrack != + context + .read< + MeetingStore>() + .localPeer + ?.videoTrack != null)) ? OneToOneMode( bottomMargin: @@ -286,11 +288,12 @@ class _MeetingPageState extends State { false, ) : const CustomOneToOneGrid( - isLocalInsetPresent: false, - )); + isLocalInsetPresent: + false, + )); }); }), - Column( + const Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ diff --git a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart index 2fbe6f1aa..150a496bd 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_device_settings.dart @@ -76,7 +76,7 @@ class _PreviewDeviceSettingsState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart index 98392aee7..63725c3ef 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/app_utilities_bottom_sheet.dart @@ -54,7 +54,7 @@ class _AppUtilitiesBottomSheetState extends State { ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart index 77b907d69..6a77f11a4 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart @@ -77,7 +77,7 @@ class _AudioSettingsBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart index 69ad3e642..160a3b795 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart @@ -86,7 +86,7 @@ class _ChangeNameBottomSheetState extends State { ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart index 1fae611e6..7583deb95 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/end_service_bottom_sheet.dart @@ -53,7 +53,7 @@ class EndServiceBottomSheet extends StatelessWidget { title ?? const SizedBox() ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [ HMSCrossButton(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart index e201a44db..fc457bf89 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/hls_more_options.dart @@ -51,7 +51,7 @@ class _HLSMoreOptionsBottomSheetBottomSheetState ) ], ), - Row( + const Row( mainAxisAlignment: MainAxisAlignment.end, children: [HMSCrossButton()], ) diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart index 932e6a5f4..89c55d24d 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/local_peer_bottom_sheet.dart @@ -72,7 +72,7 @@ class _LocalPeerBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart index 02746e54b..568d29657 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/participants_bottom_sheet.dart @@ -71,10 +71,11 @@ class _ParticipantsBottomSheetState extends State { ///Here we have defined the functions to be executed on clicking the options switch (value) { case 1: + ///If the peer is onStage already we show the option to remove from stage ///and the peer's role is changed to it's previous role /// - ///If the peer is offStage we show the option to bring on stage + ///If the peer is offStage we show the option to bring on stage ///and the peer 's role is changed to offStageRole from layout api ///We also update the peer metadata with the previous role ///which will be used while removing the peer from stage @@ -110,6 +111,7 @@ class _ParticipantsBottomSheetState extends State { } break; case 2: + ///Here we check whether the video track is null or not if (peerTrackNode?.track == null) { return; @@ -118,6 +120,7 @@ class _ParticipantsBottomSheetState extends State { peerTrackNode!.track!, !peerTrackNode.track!.isMute); break; case 3: + ///Here we check whether the audio track is null or not if (peerTrackNode?.audioTrack == null) { return; @@ -126,6 +129,7 @@ class _ParticipantsBottomSheetState extends State { !peerTrackNode.audioTrack!.isMute); break; case 4: + ///This is called when someone clicks on remove Participant meetingStore.removePeerFromRoom(peer); break; @@ -354,7 +358,7 @@ class _ParticipantsBottomSheetState extends State { Padding( padding: const EdgeInsets - .fromLTRB( + .fromLTRB( 16, 8, 16, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart index d16baae1a..e0f134fe2 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/remote_peer_bottom_sheet.dart @@ -60,7 +60,7 @@ class _RemotePeerBottomSheetState extends State { ), ], ), - Row( + const Row( children: [HMSCrossButton()], ), ], From 937780d14fd64117fe4c188cc0da366eddd1e9ff Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Thu, 21 Sep 2023 17:14:36 +0530 Subject: [PATCH 21/67] Added support for multiple fonts (#1569) --- packages/hms_room_kit/lib/hms_room_kit.dart | 1 + .../lib/src/common/utility_components.dart | 89 ++++++++++--------- .../lib/src/common/utility_functions.dart | 6 +- .../lib/src/hls_viewer/hls_chat.dart | 16 ++-- .../src/hls_viewer/hls_chat_component.dart | 9 +- .../lib/src/hls_viewer/hls_stats_view.dart | 20 +++-- .../lib/src/preview/preview_page.dart | 10 ++- .../audio_device_change_dialog.dart | 6 +- .../app_dialogs/audio_mode_select_dialog.dart | 6 +- .../change_role_option_dialog.dart | 8 +- .../change_simulcast_layer_option_dialog.dart | 10 +-- .../hls_aspect_ratio_option_dialog.dart | 6 +- .../app_dialogs/local_peer_tile_dialog.dart | 13 +-- .../app_dialogs/remote_peer_tile_dialog.dart | 19 ++-- .../role_change_request_dialog.dart | 4 +- .../widgets/app_dialogs/stats_for_nerds.dart | 42 ++++----- .../track_change_request_dialog.dart | 6 +- .../change_name_bottom_sheet.dart | 6 +- .../bottom_sheets/chat_bottom_sheet.dart | 42 +++++---- .../more_settings_bottom_sheet.dart | 8 +- .../notification_settings_bottom_sheet.dart | 14 +-- .../bottom_sheets/start_hls_bottom_sheet.dart | 6 +- .../viewer_settings_bottom_sheet.dart | 16 ++-- .../widgets/common_widgets/degrade_text.dart | 4 +- .../common_widgets/hms_subheading_text.dart | 6 +- .../common_widgets/hms_subtitle_text.dart | 6 +- .../common_widgets/hms_text_style.dart | 78 ++++++++++++++++ .../common_widgets/hms_title_text.dart | 6 +- .../common_widgets/message_container.dart | 14 +-- .../common_widgets/share_link_option.dart | 12 +-- .../widgets/peer_widgets/rtc_stats_view.dart | 67 +++++++------- packages/hmssdk_flutter/example/.gitignore | 2 +- .../lib/app_settings_bottom_sheet.dart | 40 ++++----- packages/hmssdk_flutter/example/lib/main.dart | 10 +-- 34 files changed, 359 insertions(+), 249 deletions(-) create mode 100644 packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart diff --git a/packages/hms_room_kit/lib/hms_room_kit.dart b/packages/hms_room_kit/lib/hms_room_kit.dart index 3a1341a7f..d1a993a16 100644 --- a/packages/hms_room_kit/lib/hms_room_kit.dart +++ b/packages/hms_room_kit/lib/hms_room_kit.dart @@ -13,6 +13,7 @@ export 'package:hms_room_kit/src/common/constants.dart'; export 'package:hms_room_kit/src/common/utility_functions.dart'; export 'package:hms_room_kit/src/service/app_debug_config.dart'; export 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; +export 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; /// HMSSDK exports export 'package:hmssdk_flutter/src/model/hms_ios_screenshare_config.dart'; diff --git a/packages/hms_room_kit/lib/src/common/utility_components.dart b/packages/hms_room_kit/lib/src/common/utility_components.dart index 1112ec47c..9c2db079d 100644 --- a/packages/hms_room_kit/lib/src/common/utility_components.dart +++ b/packages/hms_room_kit/lib/src/common/utility_components.dart @@ -6,7 +6,6 @@ import 'package:flutter_svg/svg.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:collection/collection.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:provider/provider.dart'; //Project imports @@ -23,6 +22,7 @@ import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_disconnected_toast.dart'; import 'package:hms_room_kit/src/widgets/toasts/hms_reconnection_toast.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[UtilityComponents] contains the common components used in the app class UtilityComponents { @@ -64,7 +64,7 @@ class UtilityComponents { // ), // Text( // 'Do you wish to leave?', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: errorColor, // fontSize: 20, // fontWeight: FontWeight.w600, @@ -75,7 +75,7 @@ class UtilityComponents { // ), // content: Text( // "You will leave the room immediately. You can’t undo this action.", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: themeHintColor, // fontSize: 14, // fontWeight: FontWeight.w400, @@ -104,7 +104,7 @@ class UtilityComponents { // padding: const EdgeInsets.symmetric( // horizontal: 8.0, vertical: 12), // child: Text('Nevermind', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: hmsWhiteColor, // fontSize: 16, // fontWeight: FontWeight.w600, @@ -133,7 +133,7 @@ class UtilityComponents { // horizontal: 8.0, vertical: 12), // child: Text( // 'Leave Room', - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: themeDefaultColor, // fontSize: 16, // fontWeight: FontWeight.w600, @@ -172,7 +172,7 @@ class UtilityComponents { ), Text( 'Leave Studio', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, height: 24 / 20, @@ -184,7 +184,7 @@ class UtilityComponents { ), content: Text( "Others will continue after you leave. You can join the studio again.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeHintColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -286,7 +286,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, content: Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -294,7 +294,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context); @@ -335,7 +335,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'Cancel', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context, ''); @@ -344,7 +344,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { if (textController.text == "") { @@ -380,7 +380,7 @@ class UtilityComponents { children: [ Text( "Single file per layer", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -400,7 +400,7 @@ class UtilityComponents { children: [ Text( "Video on Demand", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -421,7 +421,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'Cancel', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { Navigator.pop(context, ''); @@ -430,7 +430,7 @@ class UtilityComponents { ElevatedButton( child: Text( 'OK', - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), ), onPressed: () { if (textController.text == "") { @@ -459,7 +459,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, title: Text( "Select Role for Mute", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -479,7 +479,7 @@ class UtilityComponents { children: [ Text( roles[index].name, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -504,7 +504,8 @@ class UtilityComponents { children: [ Text( "Mute All", - style: GoogleFonts.inter(color: Colors.red), + style: HMSTextStyle.setTextStyle( + color: Colors.red), ), Checkbox( value: muteAll, @@ -539,7 +540,7 @@ class UtilityComponents { }, child: Text( "Cancel", - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), )), ElevatedButton( style: ButtonStyle( @@ -568,7 +569,7 @@ class UtilityComponents { }, child: Text( "Mute", - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), )) ], ) @@ -597,7 +598,7 @@ class UtilityComponents { backgroundColor: themeBottomSheetColor, title: Text( "Select roles for change role", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -617,7 +618,7 @@ class UtilityComponents { children: [ Text( roles[index].name, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -639,7 +640,7 @@ class UtilityComponents { }), Text( "Change roles to", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -703,7 +704,7 @@ class UtilityComponents { }, child: Text( "Cancel", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w600), )), ElevatedButton( @@ -733,7 +734,7 @@ class UtilityComponents { }, child: Text( "Change Role", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w600), )) ], @@ -779,7 +780,7 @@ class UtilityComponents { contentPadding: EdgeInsets.zero, title: Text( "Recording", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), @@ -817,7 +818,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 6, vertical: 12), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -859,7 +860,7 @@ class UtilityComponents { horizontal: 6, vertical: 12), child: Text( 'Start RTMP', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -899,7 +900,7 @@ class UtilityComponents { ), Text( "End Room", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: errorColor, fontSize: 20, height: 24 / 20, @@ -911,7 +912,7 @@ class UtilityComponents { ), content: Text( "The session will end for everyone and all the activities will stop. You can’t undo this action.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: dialogcontentColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -941,7 +942,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 8.0, vertical: 12), child: Text("Don't End", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -971,7 +972,7 @@ class UtilityComponents { horizontal: 8.0, vertical: 12), child: Text( "End Room", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1029,14 +1030,14 @@ class UtilityComponents { // title: Center( // child: Text( // errorTitle, - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: HMSThemeColors.alertErrorDefault, // fontSize: 16, // fontWeight: FontWeight.w600), // ), // ), // content: Text(errorMessage, - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // color: HMSThemeColors.onSurfaceHighEmphasis, // fontSize: 14, // fontWeight: FontWeight.w400)), @@ -1060,7 +1061,7 @@ class UtilityComponents { // onPressed: action, // child: Text( // actionMessage, - // style: GoogleFonts.inter(), + // style: HMSTextStyle.setTextStyle(), // )), // ], // ) @@ -1120,7 +1121,7 @@ class UtilityComponents { ), Text( title, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: errorColor, fontSize: 20, height: 24 / 20, @@ -1131,7 +1132,7 @@ class UtilityComponents { ), ), content: Text(content, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: dialogcontentColor, fontSize: 14, fontWeight: FontWeight.w400, @@ -1161,7 +1162,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 8.0, vertical: 12), child: Text(ignoreText, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1194,7 +1195,7 @@ class UtilityComponents { horizontal: 8.0, vertical: 12), child: Text( actionText, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1226,7 +1227,7 @@ class UtilityComponents { const EdgeInsets.symmetric(horizontal: 10, vertical: 10), backgroundColor: themeBottomSheetColor, title: Text("Change Name", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontWeight: FontWeight.w600, letterSpacing: 0.15, @@ -1283,7 +1284,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( horizontal: 6, vertical: 12), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1314,7 +1315,7 @@ class UtilityComponents { horizontal: 6, vertical: 12), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: hmsWhiteColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1437,7 +1438,7 @@ class UtilityComponents { padding: const EdgeInsets.symmetric( vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -1468,7 +1469,7 @@ class UtilityComponents { vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/common/utility_functions.dart b/packages/hms_room_kit/lib/src/common/utility_functions.dart index 0657f3b68..3927bbaec 100644 --- a/packages/hms_room_kit/lib/src/common/utility_functions.dart +++ b/packages/hms_room_kit/lib/src/common/utility_functions.dart @@ -5,13 +5,13 @@ import 'dart:math' as math; import 'package:bot_toast/bot_toast.dart'; import 'package:flutter/material.dart'; import 'package:flutter_foreground_task/flutter_foreground_task.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/animated_text.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:shared_preferences/shared_preferences.dart'; + ///This class contains the utility functions used in the app class Utilities { static RegExp regexEmoji = RegExp( @@ -259,7 +259,7 @@ class Utilities { static void showToast(String message, {int time = 1}) { // BotToast.showText( - // textStyle: GoogleFonts.inter(fontSize: 14), + // textStyle: HMSTextStyle.setTextStyle(fontSize: 14), // text: message, // contentColor: Colors.black87, // duration: Duration(seconds: time)); @@ -273,7 +273,7 @@ class Utilities { AnimatedTextWidget( text: message, duration: Duration(seconds: time)), onlyOne: false, - textStyle: GoogleFonts.inter(fontSize: 14), + textStyle: HMSTextStyle.setTextStyle(fontSize: 14), text: message, contentColor: Colors.black87, duration: Duration(seconds: time)); diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart index 792ba6412..bd968adb3 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat.dart @@ -2,7 +2,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; @@ -16,6 +15,7 @@ import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HLSChat] is a widget that is used to display the chat screen ///It is used to send messages to everyone, to a specific role or to a specific peer @@ -125,7 +125,7 @@ class _HLSChatState extends State { children: [ Text( "Chat", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 20, letterSpacing: 0.15, @@ -178,7 +178,7 @@ class _HLSChatState extends State { 0.66, child: Text( "Messages can only be seen by people in the call and are deleted when the call ends.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w400, color: themeSubHeadingColor, letterSpacing: 0.4, @@ -241,13 +241,13 @@ class _HLSChatState extends State { }, options: const LinkifyOptions( humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12.0, color: themeSubHeadingColor, letterSpacing: 0.4, height: 16 / 12, fontWeight: FontWeight.w400), - linkStyle: GoogleFonts.inter( + linkStyle: HMSTextStyle.setTextStyle( fontSize: 12.0, color: hmsdefaultColor, letterSpacing: 0.4, @@ -289,7 +289,7 @@ class _HLSChatState extends State { return Center( child: Text( 'No messages', - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), )); } _scrollToEnd(); @@ -346,7 +346,7 @@ class _HLSChatState extends State { onSubmitted: (value) { sendMessage(); }, - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), controller: messageTextController, decoration: InputDecoration( border: InputBorder.none, @@ -354,7 +354,7 @@ class _HLSChatState extends State { enabledBorder: InputBorder.none, errorBorder: InputBorder.none, disabledBorder: InputBorder.none, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: themeHintColor, fontSize: 14, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart index ccfe7404f..f334a14e5 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart @@ -2,7 +2,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; @@ -11,6 +10,8 @@ import 'package:url_launcher/url_launcher.dart'; ///Project imports import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; + ///[HLSChatComponent] is a component that is used to show the chat class HLSChatComponent extends StatefulWidget { @@ -93,7 +94,7 @@ class _HLSChatComponentState extends State { } }, options: const LinkifyOptions(humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: Colors.white, fontSize: 14, height: 20 / 14, @@ -135,7 +136,7 @@ class _HLSChatComponentState extends State { }, textCapitalization: TextCapitalization.sentences, textInputAction: TextInputAction.send, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis, fontWeight: FontWeight.w400, height: 20 / 14, @@ -166,7 +167,7 @@ class _HLSChatComponentState extends State { width: 2, color: HMSThemeColors.primaryDefault), borderRadius: const BorderRadius.all(Radius.circular(8))), - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, height: 0.6, diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart index 086e10e2f..3b4f686df 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_stats_view.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:provider/provider.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; class HLSStatsView extends StatelessWidget { const HLSStatsView({super.key}); @@ -22,7 +22,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, bitrate, __) { return Text( "Bitrate : ${bitrate == null ? "-" : (bitrate / 8000)} KBps", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.averageBitrate), @@ -33,7 +34,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, bufferedDuration, __) { return Text( "Buffered Duration : ${bufferedDuration == null ? "-" : bufferedDuration / 1000}", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.bufferedDuration), @@ -43,7 +45,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, videoWidth, __) { return Text("Video Width : ${videoWidth ?? "-"} px", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.videoWidth), @@ -53,7 +56,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, videoHeight, __) { return Text("Video Height : ${videoHeight ?? "-"} px", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.videoHeight), @@ -63,7 +67,8 @@ class HLSStatsView extends StatelessWidget { Selector( builder: (_, droppedFrameCount, __) { return Text("Dropped Frames : ${droppedFrameCount ?? "-"} ", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.droppedFrameCount), @@ -74,7 +79,8 @@ class HLSStatsView extends StatelessWidget { builder: (_, distanceFromLive, __) { return Text( "Distance from live edge : ${distanceFromLive == null ? "-" : distanceFromLive / 1000}s", - style: GoogleFonts.inter(color: iconColor, fontSize: 12)); + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)); }, selector: (_, meetingStore) => meetingStore.hlsPlayerStats?.distanceFromLive), diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index deaf9f3b7..3839e1856 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -5,6 +5,7 @@ import 'dart:io'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:provider/provider.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -333,9 +334,10 @@ class _PreviewPageState extends State { textCapitalization: TextCapitalization .words, - style: GoogleFonts.inter( - color: HMSThemeColors - .onSurfaceHighEmphasis), + style: HMSTextStyle + .setTextStyle( + color: HMSThemeColors + .onSurfaceHighEmphasis), controller: nameController, keyboardType: @@ -359,7 +361,7 @@ class _PreviewPageState extends State { ///This renders the hint text hintText: 'Enter Name...', - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors .onSurfaceLowEmphasis, height: diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart index 21d48d004..d092b6f27 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_device_change_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; //Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -10,6 +9,7 @@ import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; class AudioDeviceChangeDialog extends StatefulWidget { final HMSAudioDevice currentAudioDevice; @@ -119,7 +119,7 @@ class AudioDeviceChangeDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -150,7 +150,7 @@ class AudioDeviceChangeDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart index 17a2dca27..5854e3109 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/audio_mode_select_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; //Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -10,6 +9,7 @@ import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; /// The [AudioModeSelectDialog] is a dialog that allows the user to select the current audio output route class AudioModeSelectDialog extends StatefulWidget { @@ -128,7 +128,7 @@ class AudioModeSelectDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -156,7 +156,7 @@ class AudioModeSelectDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart index fd93a2af4..5fe15ce12 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_role_option_dialog.dart @@ -1,7 +1,6 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:collection/collection.dart'; //Project imports @@ -11,6 +10,7 @@ import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; class ChangeRoleOptionDialog extends StatefulWidget { @@ -133,7 +133,7 @@ class ChangeRoleOptionDialogState extends State { width: width * 0.5, child: Text( "Request permission from the user", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 14, height: 20 / 14, @@ -164,7 +164,7 @@ class ChangeRoleOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -195,7 +195,7 @@ class ChangeRoleOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart index d256efe3c..eb4cbd3b1 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/change_simulcast_layer_option_dialog.dart @@ -1,11 +1,11 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:collection/collection.dart'; +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; //Project imports -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; -import 'package:collection/collection.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; @@ -127,7 +127,7 @@ class ChangeSimulcastLayerOptionDialogState padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -158,7 +158,7 @@ class ChangeSimulcastLayerOptionDialogState const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart index 3532468f7..b14be5aa8 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart @@ -1,7 +1,7 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; @@ -119,7 +119,7 @@ class AspectRatioOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -140,7 +140,7 @@ class AspectRatioOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Change', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart index dc80f66c5..b5921f7b6 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/local_peer_tile_dialog.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/constants.dart'; @@ -40,7 +40,8 @@ class LocalPeerTileDialogState extends State { return AlertDialog( title: Text( widget.peerName, - style: GoogleFonts.inter(color: iconColor, fontWeight: FontWeight.bold), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontWeight: FontWeight.bold), ), backgroundColor: themeBottomSheetColor, content: SizedBox( @@ -66,7 +67,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Change Name", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -91,7 +92,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Change Role", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -113,7 +114,7 @@ class LocalPeerTileDialogState extends State { ), Text( "Toggle Flash", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -141,7 +142,7 @@ class LocalPeerTileDialogState extends State { widget.isSpotlightedPeer ? "Remove From Spotlight" : "Spotlight Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart index bd1be8966..36c9293f9 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/remote_peer_tile_dialog.dart @@ -1,7 +1,7 @@ //Package imports import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/constants.dart'; @@ -54,7 +54,8 @@ class RemotePeerTileDialogState extends State { backgroundColor: themeBottomSheetColor, title: Text( widget.peerName, - style: GoogleFonts.inter(color: iconColor, fontWeight: FontWeight.bold), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontWeight: FontWeight.bold), ), content: SizedBox( width: double.infinity, @@ -88,7 +89,7 @@ class RemotePeerTileDialogState extends State { ), Text( "${widget.isVideoMuted ? "Unmute" : "Mute"} video", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -124,7 +125,7 @@ class RemotePeerTileDialogState extends State { ), Text( "${widget.isAudioMuted ? "Unmute" : "Mute"} audio", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ), ], ), @@ -152,7 +153,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Remove Peer", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -177,7 +178,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Change Role", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -203,7 +204,7 @@ class RemotePeerTileDialogState extends State { ), Text( "Streaming Quality", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -228,7 +229,7 @@ class RemotePeerTileDialogState extends State { ), Text( widget.pinTile ? "Unpin Tile" : "Pin Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), @@ -256,7 +257,7 @@ class RemotePeerTileDialogState extends State { widget.isSpotlightedPeer ? "Remove From Spotlight" : "Spotlight Tile", - style: GoogleFonts.inter(color: iconColor), + style: HMSTextStyle.setTextStyle(color: iconColor), ) ], ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart index f4837f9d8..e5c859ea9 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/role_change_request_dialog.dart @@ -1,6 +1,6 @@ // Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -33,7 +33,7 @@ class RoleChangeRequestDialogState extends State { children: [ Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart index 485664d66..009f76af2 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/stats_for_nerds.dart @@ -1,6 +1,6 @@ import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; @@ -242,7 +242,7 @@ class _StatsForNerdsState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Close', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -281,7 +281,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -300,7 +300,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Sent", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -320,7 +320,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Round Trip", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -354,7 +354,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -373,7 +373,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -393,7 +393,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Jitter", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -412,7 +412,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Lost", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -432,7 +432,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -469,7 +469,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -488,7 +488,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Sent", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -508,7 +508,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Frame Rate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -528,7 +528,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Round Trip", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -548,7 +548,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Quality Limitation", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -582,7 +582,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bitrate", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -601,7 +601,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Bytes Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -621,7 +621,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Jitter", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -640,7 +640,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "FPS", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -660,7 +660,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Lost", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -680,7 +680,7 @@ class StatsUI extends StatelessWidget { children: [ Text( "Packet Received", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart b/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart index 5e413ab5d..316ecb48f 100644 --- a/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart +++ b/packages/hms_room_kit/lib/src/widgets/app_dialogs/track_change_request_dialog.dart @@ -1,9 +1,9 @@ // Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hmssdk_flutter/hmssdk_flutter.dart'; // Project imports -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/enums/meeting_mode.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -39,7 +39,7 @@ class TrackChangeRequestDialogState extends State { children: [ Text( message, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, ), ), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart index 160a3b795..97f02d7d6 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/change_name_bottom_sheet.dart @@ -1,10 +1,10 @@ ///Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_cross_button.dart'; import 'package:provider/provider.dart'; ///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_listenable_button.dart'; @@ -120,7 +120,7 @@ class _ChangeNameBottomSheetState extends State { FocusManager.instance.primaryFocus?.unfocus(), textInputAction: TextInputAction.done, textCapitalization: TextCapitalization.words, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis), controller: nameController, keyboardType: TextInputType.text, @@ -138,7 +138,7 @@ class _ChangeNameBottomSheetState extends State { hintText: nameController.text.isEmpty ? 'Enter Name...' : nameController.text, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, height: 1.5, fontSize: 16, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart index 7eee159fc..85b2acceb 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart @@ -2,20 +2,20 @@ import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/hms_room_kit.dart'; -import 'package:hms_room_kit/src/enums/session_store_keys.dart'; -import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; import 'package:tuple/tuple.dart'; - -//Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:url_launcher/url_launcher.dart'; +//Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; +import 'package:hms_room_kit/hms_room_kit.dart'; +import 'package:hms_room_kit/src/enums/session_store_keys.dart'; +import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/message_container.dart'; +import 'package:hms_room_kit/src/meeting/meeting_store.dart'; + class ChatBottomSheet extends StatefulWidget { const ChatBottomSheet({super.key}); @@ -164,7 +164,8 @@ class _ChatBottomSheetState extends State { options: const LinkifyOptions( humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle + .setTextStyle( fontSize: 14.0, color: HMSThemeColors .onSurfaceHighEmphasis, @@ -173,14 +174,17 @@ class _ChatBottomSheetState extends State { fontWeight: FontWeight.w400, ), - linkStyle: GoogleFonts.inter( - fontSize: 14.0, - color: HMSThemeColors - .primaryDefault, - letterSpacing: 0.25, - height: 20 / 14, - fontWeight: - FontWeight.w400), + linkStyle: HMSTextStyle + .setTextStyle( + fontSize: 14.0, + color: HMSThemeColors + .primaryDefault, + letterSpacing: + 0.25, + height: 20 / 14, + fontWeight: + FontWeight + .w400), ), ), ], @@ -318,7 +322,7 @@ class _ChatBottomSheetState extends State { onChanged: (value) { setState(() {}); }, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceHighEmphasis, fontWeight: FontWeight.w400, height: 20 / 14, @@ -361,7 +365,7 @@ class _ChatBottomSheetState extends State { enabledBorder: InputBorder.none, errorBorder: InputBorder.none, disabledBorder: InputBorder.none, - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, height: 20 / 14, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 0bafe92f0..0e32fa6c5 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -3,7 +3,7 @@ import 'dart:io'; import 'package:badges/badges.dart' as badge; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; @@ -143,7 +143,7 @@ class _MoreSettingsBottomSheetState extends State { Text( "Participants", semanticsLabel: "participants_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -189,7 +189,7 @@ class _MoreSettingsBottomSheetState extends State { Text( "Audio Settings", semanticsLabel: "fl_audio_settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -664,7 +664,7 @@ class _MoreSettingsBottomSheetState extends State { // title: Text( // "Modify Notifications", // semanticsLabel: "fl_notification_setting", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // colorFilter: ColorFilter.mode(themeDefaultColor, BlendMode.srcIn), // letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart index ceb27dbf3..c055638b2 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/notification_settings_bottom_sheet.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart' show GoogleFonts; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; @@ -58,7 +58,7 @@ class _NotificationSettingsBottomSheetState children: [ Text( "Notifications", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -106,7 +106,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Peer Joined", semanticsLabel: "fl_peer_join_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -135,7 +135,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Peer Left", semanticsLabel: "fl_peer_leave_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -164,7 +164,7 @@ class _NotificationSettingsBottomSheetState title: Text( "New Message", semanticsLabel: "fl_new-message_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -192,7 +192,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Hand Raise", semanticsLabel: "fl_hand_raise_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -220,7 +220,7 @@ class _NotificationSettingsBottomSheetState title: Text( "Error", semanticsLabel: "fl_error_notif", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart index 2da21b150..a9b994509 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart @@ -1,7 +1,7 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; @@ -95,7 +95,7 @@ class _StartHLSBottomSheetState extends State { Text( "Stream directly from the browser using any device with multiple hosts and real-time messaging, all within this platform.", maxLines: 2, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeSubHeadingColor, fontSize: 14, height: 20 / 14, @@ -205,7 +205,7 @@ class _StartHLSBottomSheetState extends State { width: MediaQuery.of(context).size.width - 65, child: Text( "If recording has to be enabled later, streaming has to be stopped first.", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeSubHeadingColor, letterSpacing: 0.4, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart index 62a9f5197..538a11b46 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart @@ -2,7 +2,7 @@ import 'dart:io'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/hls_aspect_ratio_option_dialog.dart'; @@ -45,7 +45,7 @@ class _ViewerSettingsBottomSheetState extends State { children: [ Text( "More Options", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -133,7 +133,7 @@ class _ViewerSettingsBottomSheetState extends State { Text( "Participants", semanticsLabel: "participants_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -182,7 +182,7 @@ class _ViewerSettingsBottomSheetState extends State { Text( "Set Aspect Ratio", semanticsLabel: "fl_aspect_ratio", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -221,7 +221,7 @@ class _ViewerSettingsBottomSheetState extends State { ), title: Text( "Change Name", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -247,7 +247,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Raise Hand", semanticsLabel: "hand_raise_button", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: context.read().isRaisedHand ? errorColor @@ -279,7 +279,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Modify Notifications", semanticsLabel: "fl_notification_setting", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -302,7 +302,7 @@ class _ViewerSettingsBottomSheetState extends State { title: Text( "Enter Pip Mode", semanticsLabel: "fl_pip_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart index 1c8a5fe70..61fab9b50 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/degrade_text.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; import 'package:provider/provider.dart'; @@ -22,7 +22,7 @@ class DegradeText extends StatelessWidget { maxLines: 1, softWrap: true, overflow: TextOverflow.ellipsis, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontWeight: FontWeight.w400, color: HMSThemeColors.onSurfaceLowEmphasis, fontSize: 14, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart index 9572b8ade..4cc373df6 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subheading_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/cupertino.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSSubheadingText] returns a text widget with the default theme ///The paramters and their default values are as follows: @@ -45,7 +47,7 @@ class HMSSubheadingText extends StatelessWidget { softWrap: true, textAlign: textAlign, maxLines: maxLines, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( height: lineHeight! / fontSize!, fontSize: fontSize, letterSpacing: letterSpacing, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart index d0e674e5a..8b550777f 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_subtitle_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/cupertino.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSSubtitleText] returns a text widget with the default theme ///The paramters and their default values are as follows: @@ -40,7 +42,7 @@ class HMSSubtitleText extends StatelessWidget { overflow: textOverflow, softWrap: true, textAlign: textAlign, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( height: lineHeight! / fontSize!, fontSize: fontSize, letterSpacing: letterSpacing, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart new file mode 100644 index 000000000..2400ed69c --- /dev/null +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_text_style.dart @@ -0,0 +1,78 @@ +///Package imports +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; + +///[HMSTextStyle] returns a text style +///TextStyle is returned on the basis of the font family selected on the prebuilt dashboard +///If no font family is selected, then the default font family returned is Inter +///It takes following parameters: +///[fontSize] - The size of the font +///[color] - The color of the text +///[fontWeight] - The weight of the font +///[fontStyle] - The style of the font +///[letterSpacing] - The spacing between the letters +///[height] - The height of the line +class HMSTextStyle { + static TextStyle setTextStyle({ + double? fontSize, + Color? color, + FontWeight? fontWeight, + FontStyle? fontStyle, + double? letterSpacing, + double? height, + }) { + switch (HMSRoomLayout.roleLayoutData?.typography?.typography) { + case 'Roboto': + return GoogleFonts.roboto( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Lato': + return GoogleFonts.lato( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Montserrat': + return GoogleFonts.montserrat( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'Open Sans': + return GoogleFonts.openSans( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + case 'IBM Plex Sans': + return GoogleFonts.ibmPlexSans( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + default: + return GoogleFonts.inter( + fontSize: fontSize, + color: color, + fontWeight: fontWeight, + letterSpacing: letterSpacing, + height: height, + ); + } + } +} diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart index 0a814eb16..050c68b66 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/hms_title_text.dart @@ -1,6 +1,8 @@ ///Package imports import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; ///[HMSTitleText] is a widget that is used to render the title text ///It takes following parameters: @@ -35,7 +37,7 @@ class HMSTitleText extends StatelessWidget { Widget build(BuildContext context) { return Text(text, overflow: textOverflow, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: textColor, height: lineHeight! / fontSize!, fontSize: fontSize, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart index 6fcb2f816..a67a4d51a 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart @@ -1,15 +1,19 @@ +///Package imports import 'package:flutter/material.dart'; import 'package:flutter_linkify/flutter_linkify.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; +import 'package:provider/provider.dart'; +import 'package:url_launcher/url_launcher.dart'; + +///Project imports +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/layout_api/hms_room_layout.dart'; import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; -import 'package:url_launcher/url_launcher.dart'; + class MessageContainer extends StatelessWidget { final String message; @@ -129,13 +133,13 @@ class MessageContainer extends StatelessWidget { } }, options: const LinkifyOptions(humanize: false), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14.0, color: HMSThemeColors.onSurfaceHighEmphasis, height: 20 / 14, letterSpacing: 0.25, fontWeight: FontWeight.w400), - linkStyle: GoogleFonts.inter( + linkStyle: HMSTextStyle.setTextStyle( fontSize: 14.0, color: HMSThemeColors.primaryDefault, letterSpacing: 0.25, diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart index c37dc097e..183d1e476 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/share_link_option.dart @@ -1,17 +1,17 @@ //Package imports import 'package:dropdown_button2/dropdown_button2.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; - -//Project imports import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:collection/collection.dart'; +import 'package:share_plus/share_plus.dart'; + +//Project imports import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/common/utility_functions.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_dropdown.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:share_plus/share_plus.dart'; class ShareLinkOptionDialog extends StatefulWidget { final List roles; @@ -122,7 +122,7 @@ class ShareLinkOptionDialogState extends State { padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text('Cancel', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, @@ -163,7 +163,7 @@ class ShareLinkOptionDialogState extends State { const EdgeInsets.symmetric(vertical: 12, horizontal: 10), child: Text( 'Share', - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, fontSize: 16, fontWeight: FontWeight.w600, diff --git a/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart b/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart index f1f1dd335..531f125af 100644 --- a/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart +++ b/packages/hms_room_kit/lib/src/widgets/peer_widgets/rtc_stats_view.dart @@ -1,5 +1,5 @@ //Package imports -import 'package:google_fonts/google_fonts.dart'; +import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:hms_room_kit/src/common/app_color.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; @@ -58,11 +58,11 @@ class Stats extends StatelessWidget { height: 10, ), Text("Downlink\t ${data.item4 ?? "-1"}", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontSize: 12)), Text( "Bitrate(A)\t ${data.item3?.hmsLocalAudioStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontSize: 12)), ], )); @@ -87,35 +87,35 @@ class Stats extends StatelessWidget { children: [ Text( "Width\t ${data.item3?.hmsRemoteVideoStats?.resolution.width.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Height\t ${data.item3?.hmsRemoteVideoStats?.resolution.height.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "FPS\t ${data.item3?.hmsRemoteVideoStats?.frameRate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text("Downlink\t ${data.item4 ?? "-1"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Bitrate(V)\t ${data.item3?.hmsRemoteVideoStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Bitrate(A)\t ${data.item3?.hmsRemoteAudioStats?.bitrate.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Jitter(V)\t ${data.item3?.hmsRemoteVideoStats?.jitter.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), Text( "Jitter(A)\t ${data.item3?.hmsRemoteAudioStats?.jitter.toStringAsFixed(2) ?? "0.00"}", - style: - GoogleFonts.inter(color: iconColor, fontSize: 12)), + style: HMSTextStyle.setTextStyle( + color: iconColor, fontSize: 12)), ], ), ); @@ -130,14 +130,14 @@ class Stats extends StatelessWidget { children: [ TableRow(children: [ Text("Layer", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map((layerStats) => Text( HMSSimulcastLayerValue.getValueFromHMSSimulcastLayer( layerStats?.hmsLayer) .toUpperCase(), - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10))) @@ -145,39 +145,42 @@ class Stats extends StatelessWidget { ]), TableRow(children: [ Text("Width", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.resolution.width.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() ]), TableRow(children: [ Text("Height", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.resolution.height.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() ]), TableRow(children: [ Text("FPS", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10)), ...videoStats .map( (layerStats) => Text( layerStats?.frameRate.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() @@ -185,14 +188,15 @@ class Stats extends StatelessWidget { TableRow(children: [ Text( "Bitrate(V)", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10), ), ...videoStats .map( (layerStats) => Text( layerStats?.bitrate.toStringAsFixed(2) ?? "0.00", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() @@ -200,14 +204,15 @@ class Stats extends StatelessWidget { TableRow(children: [ Text( "Quality Limitation", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( color: iconColor, fontWeight: FontWeight.bold, fontSize: 10), ), ...videoStats .map( (layerStats) => Text( layerStats?.hmsQualityLimitationReasons?.reason.name ?? "", - style: GoogleFonts.inter(color: iconColor, fontSize: 10), + style: + HMSTextStyle.setTextStyle(color: iconColor, fontSize: 10), ), ) .toList() diff --git a/packages/hmssdk_flutter/example/.gitignore b/packages/hmssdk_flutter/example/.gitignore index 7ebc3ff03..8d7e7252f 100644 --- a/packages/hmssdk_flutter/example/.gitignore +++ b/packages/hmssdk_flutter/example/.gitignore @@ -45,4 +45,4 @@ app.*.map.json /android/app/profile /android/app/release /android/app/flutter-hms-4aea6d38fd2a.json -/android/app/google-services.json \ No newline at end of file +/android/app/google-services.json diff --git a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart index 2de9c3da1..1946fe14b 100644 --- a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart +++ b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart @@ -120,7 +120,7 @@ class _AppSettingsBottomSheetState extends State { children: [ Text( "App Settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 16, color: themeDefaultColor, letterSpacing: 0.15, @@ -169,7 +169,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Dark Mode", // semanticsLabel: "fl_dark_light_mode", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -204,7 +204,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Debug Mode", semanticsLabel: "fl_enable_debug_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -234,7 +234,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Join with muted audio", semanticsLabel: "fl_join_with_muted_audio", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -264,7 +264,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Join with muted video", semanticsLabel: "fl_join_with_muted_video", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -293,7 +293,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Skip Preview", // semanticsLabel: "fl_preview_enable", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -320,7 +320,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Mirror Camera", semanticsLabel: "fl_mirror_camera_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -349,7 +349,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Stats", semanticsLabel: "fl_stats_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -379,7 +379,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Software Decoder", semanticsLabel: "fl_software_decoder_enable", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -411,7 +411,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Disable Audio Mixer", semanticsLabel: "fl_track_settings", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -440,7 +440,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Enable Auto Simulcast", semanticsLabel: "fl_auto_simulcast", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -482,7 +482,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Audio Mode", semanticsLabel: "fl_audio_mode", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -518,7 +518,7 @@ class _AppSettingsBottomSheetState extends State { // title: Text( // "Modify Notifications", // semanticsLabel: "fl_notification_setting", - // style: GoogleFonts.inter( + // style: HMSTextStyle.setTextStyle( // fontSize: 14, // color: themeDefaultColor, // letterSpacing: 0.25, @@ -537,7 +537,7 @@ class _AppSettingsBottomSheetState extends State { title: Text( "Ask on Discord", semanticsLabel: "fl_ask_feedback", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 14, color: themeDefaultColor, letterSpacing: 0.25, @@ -553,7 +553,7 @@ class _AppSettingsBottomSheetState extends State { leading: Text( "App Version", semanticsLabel: "app_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -562,7 +562,7 @@ class _AppSettingsBottomSheetState extends State { trailing: Text( widget.appVersion, semanticsLabel: "app_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -579,7 +579,7 @@ class _AppSettingsBottomSheetState extends State { leading: Text( "HMSSDK Version", semanticsLabel: "hmssdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -588,7 +588,7 @@ class _AppSettingsBottomSheetState extends State { trailing: Text( versions["flutter"] ?? "", semanticsLabel: "hmssdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -608,7 +608,7 @@ class _AppSettingsBottomSheetState extends State { semanticsLabel: Platform.isAndroid ? "android_sdk_version" : "iOS_sdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, @@ -621,7 +621,7 @@ class _AppSettingsBottomSheetState extends State { semanticsLabel: Platform.isAndroid ? "android_sdk_version" : "iOS_sdk_version", - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( fontSize: 12, color: themeDefaultColor, letterSpacing: 0.25, diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index ec6da2454..1ffb5fe6e 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -338,7 +338,7 @@ class _HomePageState extends State { padding: const EdgeInsets.symmetric(horizontal: 18), child: Text('Experience the power of 100ms', textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( letterSpacing: 0.25, color: themeDefaultColor, height: 1.17, @@ -353,7 +353,7 @@ class _HomePageState extends State { child: Text( 'Jump right in by pasting a room link or scanning a QR code', textAlign: TextAlign.center, - style: GoogleFonts.inter( + style: HMSTextStyle.setTextStyle( letterSpacing: 0.5, color: themeSubHeadingColor, height: 1.5, @@ -372,7 +372,7 @@ class _HomePageState extends State { children: [ Text("Room Code", key: Key('room_code_text'), - style: GoogleFonts.inter( + style:HMSTextStyle.setTextStyle( color: themeDefaultColor, height: 1.5, fontSize: 14, @@ -389,7 +389,7 @@ class _HomePageState extends State { onSubmitted: (value) { joinMeeting(); }, - style: GoogleFonts.inter(), + style: HMSTextStyle.setTextStyle(), controller: meetingLinkController, onChanged: (value) { setState(() {}); @@ -400,7 +400,7 @@ class _HomePageState extends State { fillColor: themeSurfaceColor, filled: true, hintText: 'Paste the room code or link here', - hintStyle: GoogleFonts.inter( + hintStyle: HMSTextStyle.setTextStyle( color: hmsHintColor, height: 1.5, fontSize: 16, From e27f410f7f324dd9c32f4c2832d61a4cf8350921 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 17:27:13 +0530 Subject: [PATCH 22/67] Added dart lints --- packages/hms_room_kit/lib/src/common/utility_functions.dart | 1 - .../hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart | 2 -- packages/hms_room_kit/lib/src/preview/preview_page.dart | 2 -- .../lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart | 1 - .../lib/src/widgets/common_widgets/message_container.dart | 1 - .../hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart | 1 - packages/hmssdk_flutter/example/lib/main.dart | 1 - 7 files changed, 9 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/utility_functions.dart b/packages/hms_room_kit/lib/src/common/utility_functions.dart index 3927bbaec..0981692f0 100644 --- a/packages/hms_room_kit/lib/src/common/utility_functions.dart +++ b/packages/hms_room_kit/lib/src/common/utility_functions.dart @@ -11,7 +11,6 @@ import 'package:hms_room_kit/src/common/animated_text.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:shared_preferences/shared_preferences.dart'; - ///This class contains the utility functions used in the app class Utilities { static RegExp regexEmoji = RegExp( diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart index f334a14e5..f689ac35b 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart @@ -10,8 +10,6 @@ import 'package:url_launcher/url_launcher.dart'; ///Project imports import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; - ///[HLSChatComponent] is a component that is used to show the chat class HLSChatComponent extends StatefulWidget { diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 3839e1856..37076ec97 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -4,8 +4,6 @@ import 'dart:io'; ///Package imports import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:provider/provider.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart index 85b2acceb..e0130b270 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart @@ -9,7 +9,6 @@ import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:url_launcher/url_launcher.dart'; //Project imports -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart index a67a4d51a..22204f3b1 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart @@ -14,7 +14,6 @@ import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; - class MessageContainer extends StatelessWidget { final String message; final String? senderName; diff --git a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart index 1946fe14b..dea898ac9 100644 --- a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart +++ b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart @@ -4,7 +4,6 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:flutter/services.dart' show rootBundle; import 'package:url_launcher/url_launcher.dart'; diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index 1ffb5fe6e..f0dae280d 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -9,7 +9,6 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hmssdk_flutter_example/app_settings_bottom_sheet.dart'; import 'package:hmssdk_flutter_example/qr_code_screen.dart'; From 8345852620e0de5d56396a2ae8a64eeac48479ae Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 18:06:34 +0530 Subject: [PATCH 23/67] Updated changelog and pubspec --- packages/hms_room_kit/CHANGELOG.md | 6 ++++++ packages/hms_room_kit/pubspec.yaml | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 068af2903..594ee5c54 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -5,6 +5,12 @@ | hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | | hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | +## 1.0.2 - 2023-09-22 + +### Changed + +- Bump minimal Flutter version to 3.10.0 + ## 1.0.1 - 2023-09-15 ### 🚀 Added diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index f97fe75af..9bbe262dd 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -1,6 +1,6 @@ name: hms_room_kit description: 100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps. -version: 1.0.1 +version: 1.0.2 homepage: https://www.100ms.live/ repository: https://github.com/100mslive/100ms-flutter issue_tracker: https://github.com/100mslive/100ms-flutter/issues From e7bca5ab9ca214210c90f6c1f54ab7e700cc619e Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Fri, 22 Sep 2023 13:09:05 +0530 Subject: [PATCH 24/67] Added pip support in PIP (#1590) --- .../lib/src/meeting/meeting_store.dart | 348 +++++++++--------- .../lib/src/preview/preview_page.dart | 2 +- .../more_settings_bottom_sheet.dart | 2 +- .../viewer_settings_bottom_sheet.dart | 2 +- .../kotlin/live/hms/flutter/MainActivity.kt | 42 +-- 5 files changed, 198 insertions(+), 198 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index c1c519a7b..60ba8d412 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -180,7 +180,7 @@ class MeetingStore extends ChangeNotifier bool isPipActive = false; - // bool isPipAutoEnabled = true; + bool isPipAutoEnabled = true; bool lastVideoStatus = false; @@ -188,7 +188,7 @@ class MeetingStore extends ChangeNotifier bool showNotification = false; - // HMSVideoTrack? currentPIPtrack; + HMSVideoTrack? currentPIPtrack; HMSLogList applicationLogs = HMSLogList(hmsLog: []); @@ -745,16 +745,16 @@ class MeetingStore extends ChangeNotifier getAudioDevicesList(); notifyListeners(); - // if (Platform.isIOS && - // HMSRoomLayout.roleLayoutData?.screens?.conferencing?.defaultConf != - // null) { - // HMSIOSPIPController.setup( - // autoEnterPip: true, - // aspectRatio: [9, 16], - // backgroundColor: Colors.black); - // } else if (Platform.isAndroid) { - // HMSAndroidPIPController.setup(); - // } + if (Platform.isIOS && + HMSRoomLayout.roleLayoutData?.screens?.conferencing?.defaultConf != + null) { + HMSIOSPIPController.setup( + autoEnterPip: true, + aspectRatio: [9, 16], + backgroundColor: Colors.black); + } else if (Platform.isAndroid) { + HMSAndroidPIPController.setup(); + } } void setParticipantsList(List roles) { @@ -1008,21 +1008,21 @@ class MeetingStore extends ChangeNotifier } // Below code for change track and text in PIP mode iOS and android. - // if (updateSpeakers.isNotEmpty) { - // if (Platform.isIOS && (screenShareCount == 0 || isScreenShareOn)) { - // if (updateSpeakers[0].peer.videoTrack != null) { - // changePIPWindowTrackOnIOS( - // track: updateSpeakers[0].peer.videoTrack, - // alternativeText: updateSpeakers[0].peer.name, - // ratio: [9, 16]); - // } else { - // changePIPWindowTextOnIOS( - // text: updateSpeakers[0].peer.name, ratio: [9, 16]); - // } - // } else if (Platform.isAndroid) { - // changePIPWindowOnAndroid("${updateSpeakers[0].peer.peerId}mainVideo"); - // } - // } + if (updateSpeakers.isNotEmpty) { + if (Platform.isIOS && (screenShareCount == 0 || isScreenShareOn)) { + if (updateSpeakers[0].peer.videoTrack != null) { + changePIPWindowTrackOnIOS( + track: updateSpeakers[0].peer.videoTrack, + alternativeText: updateSpeakers[0].peer.name, + ratio: [9, 16]); + } else { + changePIPWindowTextOnIOS( + text: updateSpeakers[0].peer.name, ratio: [9, 16]); + } + } else if (Platform.isAndroid) { + changePIPWindowOnAndroid("${updateSpeakers[0].peer.peerId}mainVideo"); + } + } } @override @@ -1197,13 +1197,13 @@ class MeetingStore extends ChangeNotifier FlutterForegroundTask.stopService(); } - // void clearPIPState() { - // if (Platform.isAndroid) { - // HMSAndroidPIPController.destroy(); - // } else if (Platform.isIOS) { - // HMSIOSPIPController.destroy(); - // } - // } + void clearPIPState() { + if (Platform.isAndroid) { + HMSAndroidPIPController.destroy(); + } else if (Platform.isIOS) { + HMSIOSPIPController.destroy(); + } + } void removeListeners() { _hmsSDKInteractor.removeUpdateListener(this); @@ -1371,20 +1371,20 @@ class MeetingStore extends ChangeNotifier } } - // if (peer.isLocal) { - // if (Platform.isIOS) { - // if (HMSRoomLayout - // .roleLayoutData?.screens?.conferencing?.hlsLiveStreaming != - // null) { - // HMSIOSPIPController.destroy(); - // } else { - // HMSIOSPIPController.setup( - // autoEnterPip: true, - // aspectRatio: [9, 16], - // backgroundColor: Colors.black); - // } - // } - // } + if (peer.isLocal) { + if (Platform.isIOS) { + if (HMSRoomLayout + .roleLayoutData?.screens?.conferencing?.hlsLiveStreaming != + null) { + HMSIOSPIPController.destroy(); + } else { + HMSIOSPIPController.setup( + autoEnterPip: true, + aspectRatio: [9, 16], + backgroundColor: Colors.black); + } + } + } Utilities.showToast("${peer.name}'s role changed to ${peer.role.name}"); int index = peers.indexOf(peer); @@ -1493,10 +1493,10 @@ class MeetingStore extends ChangeNotifier track: track as HMSVideoTrack, stats: RTCStats())); notifyListeners(); - // changePIPWindowTrackOnIOS( - // track: track, - // ratio: [9, 16], - // alternativeText: "${peer.name} Screen share"); + changePIPWindowTrackOnIOS( + track: track, + ratio: [9, 16], + alternativeText: "${peer.name} Screen share"); } } else { isScreenShareActive(); @@ -1512,7 +1512,7 @@ class MeetingStore extends ChangeNotifier screenShareCount--; peerTracks.removeAt(peerIndex); notifyListeners(); - // changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); + changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); } //pop the full screen screenshare when the screenshare is stopped @@ -1538,9 +1538,9 @@ class MeetingStore extends ChangeNotifier peerTracks[peerIndex].audioTrack = null; } else if (track.kind == HMSTrackKind.kHMSTrackKindVideo) { peerTracks[peerIndex].track = null; - // if (currentPIPtrack == track) { - // changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); - // } + if (currentPIPtrack == track) { + changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); + } } if (peerTracks[peerIndex].track == null && peerTracks[peerIndex].audioTrack == null) { @@ -1552,22 +1552,22 @@ class MeetingStore extends ChangeNotifier } break; case HMSTrackUpdate.trackMuted: - // if (currentPIPtrack == track && - // track.kind == HMSTrackKind.kHMSTrackKindVideo) { - // changePIPWindowTrackOnIOS( - // track: track as HMSVideoTrack, - // alternativeText: peer.name, - // ratio: [9, 16]); - // } + if (currentPIPtrack == track && + track.kind == HMSTrackKind.kHMSTrackKindVideo) { + changePIPWindowTrackOnIOS( + track: track as HMSVideoTrack, + alternativeText: peer.name, + ratio: [9, 16]); + } break; case HMSTrackUpdate.trackUnMuted: - // if (currentPIPtrack == track && - // track.kind == HMSTrackKind.kHMSTrackKindVideo) { - // changePIPWindowTrackOnIOS( - // track: track as HMSVideoTrack, - // alternativeText: peer.name, - // ratio: [9, 16]); - // } + if (currentPIPtrack == track && + track.kind == HMSTrackKind.kHMSTrackKindVideo) { + changePIPWindowTrackOnIOS( + track: track as HMSVideoTrack, + alternativeText: peer.name, + ratio: [9, 16]); + } break; case HMSTrackUpdate.trackDescriptionChanged: break; @@ -1779,73 +1779,73 @@ class MeetingStore extends ChangeNotifier notifyListeners(); } - // void enterPipModeOnAndroid() async { - // //to check whether pip is available in android - // if (Platform.isAndroid) { - // bool isPipAvailable = await HMSAndroidPIPController.isAvailable(); - // if (isPipAvailable) { - // //[isPipActive] method can also be used to check whether application is in pip Mode or not - // isPipActive = await HMSAndroidPIPController.start(); - // notifyListeners(); - // } - // } - // } - - // Future isPIPActive() async { - // if (Platform.isAndroid) { - // isPipActive = await HMSAndroidPIPController.isActive(); - // } else if (Platform.isIOS) { - // isPipActive = await HMSIOSPIPController.isActive(); - // } - // return isPipActive; - // } - - // void changePIPWindowOnAndroid(String uid) { - // if (Platform.isAndroid && isPipActive) { - // int index = -1; - // index = peerTracks.indexWhere((element) => element.uid == uid); - // if (index != -1) { - // PeerTrackNode node = peerTracks[index]; - // peerTracks.removeAt(index); - // peerTracks.insert(screenShareCount, node); - // } - // notifyListeners(); - // } - // } + void enterPipModeOnAndroid() async { + //to check whether pip is available in android + if (Platform.isAndroid) { + bool isPipAvailable = await HMSAndroidPIPController.isAvailable(); + if (isPipAvailable) { + //[isPipActive] method can also be used to check whether application is in pip Mode or not + isPipActive = await HMSAndroidPIPController.start(); + notifyListeners(); + } + } + } + + Future isPIPActive() async { + if (Platform.isAndroid) { + isPipActive = await HMSAndroidPIPController.isActive(); + } else if (Platform.isIOS) { + isPipActive = await HMSIOSPIPController.isActive(); + } + return isPipActive; + } + + void changePIPWindowOnAndroid(String uid) { + if (Platform.isAndroid && isPipActive) { + int index = -1; + index = peerTracks.indexWhere((element) => element.uid == uid); + if (index != -1) { + PeerTrackNode node = peerTracks[index]; + peerTracks.removeAt(index); + peerTracks.insert(screenShareCount, node); + } + notifyListeners(); + } + } void switchAudioOutputUsingiOSUI() { _hmsSDKInteractor.switchAudioOutputUsingiOSUI(); } - // void changePIPWindowTrackOnIOS( - // {HMSVideoTrack? track, - // required String alternativeText, - // required List ratio}) async { - // if (Platform.isIOS && track != null) { - // isPipActive = await isPIPActive(); - // if (isPipActive) { - // HMSIOSPIPController.changeVideoTrack( - // track: track, - // aspectRatio: ratio, - // alternativeText: alternativeText, - // scaleType: ScaleType.SCALE_ASPECT_FILL, - // backgroundColor: Colors.black); - // currentPIPtrack = track; - // } - // } - // } - - // void changePIPWindowTextOnIOS( - // {String? text, required List ratio}) async { - // if (Platform.isIOS && text != null) { - // isPipActive = await isPIPActive(); - // if (isPipActive) { - // HMSIOSPIPController.changeText( - // text: text, aspectRatio: ratio, backgroundColor: Colors.black); - // currentPIPtrack = null; - // } - // } - // } + void changePIPWindowTrackOnIOS( + {HMSVideoTrack? track, + required String alternativeText, + required List ratio}) async { + if (Platform.isIOS && track != null) { + isPipActive = await isPIPActive(); + if (isPipActive) { + HMSIOSPIPController.changeVideoTrack( + track: track, + aspectRatio: ratio, + alternativeText: alternativeText, + scaleType: ScaleType.SCALE_ASPECT_FILL, + backgroundColor: Colors.black); + currentPIPtrack = track; + } + } + } + + void changePIPWindowTextOnIOS( + {String? text, required List ratio}) async { + if (Platform.isIOS && text != null) { + isPipActive = await isPIPActive(); + if (isPipActive) { + HMSIOSPIPController.changeText( + text: text, aspectRatio: ratio, backgroundColor: Colors.black); + currentPIPtrack = null; + } + } + } void setAspectRatio(double ratio) { hlsAspectRatio = ratio; @@ -2117,11 +2117,11 @@ class MeetingStore extends ChangeNotifier return; } if (state == AppLifecycleState.resumed) { - // if (Platform.isAndroid) { - // isPipActive = await HMSAndroidPIPController.isActive(); - // } else if (Platform.isIOS) { - // isPipActive = false; - // } + if (Platform.isAndroid) { + isPipActive = await HMSAndroidPIPController.isActive(); + } else if (Platform.isIOS) { + isPipActive = false; + } notifyListeners(); if (lastVideoStatus && !reconnecting) { @@ -2151,46 +2151,46 @@ class MeetingStore extends ChangeNotifier } if (Platform.isAndroid) { - // isPipActive = await HMSAndroidPIPController.isActive(); + isPipActive = await HMSAndroidPIPController.isActive(); notifyListeners(); } - // if (Platform.isIOS) { - // if (screenShareCount == 0 || isScreenShareOn) { - // int peerIndex = peerTracks.indexWhere((element) => - // (!(element.track?.isMute ?? true) && !element.peer.isLocal)); - // if (peerIndex != -1) { - // changePIPWindowTrackOnIOS( - // track: peerTracks[peerIndex].track, - // alternativeText: peerTracks[peerIndex].peer.name, - // ratio: [9, 16]); - // } else { - // changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); - // } - // } else { - // int peerIndex = peerTracks.indexWhere((element) => - // element.uid == - // element.peer.peerId + (element.track?.trackId ?? "")); - // if (peerIndex != -1) { - // changePIPWindowTrackOnIOS( - // track: peerTracks[peerIndex].track, - // alternativeText: peerTracks[peerIndex].peer.name, - // ratio: [9, 16]); - // } - // } - // } - } - // else if (state == AppLifecycleState.inactive) { - // if (Platform.isAndroid && !isPipActive) { - // isPipActive = await HMSAndroidPIPController.isActive(); - // } - // notifyListeners(); - // } else if (state == AppLifecycleState.detached) { - // if (Platform.isAndroid && !isPipActive) { - // isPipActive = await HMSAndroidPIPController.isActive(); - // } - // notifyListeners(); - // } + if (Platform.isIOS) { + if (screenShareCount == 0 || isScreenShareOn) { + int peerIndex = peerTracks.indexWhere((element) => + (!(element.track?.isMute ?? true) && !element.peer.isLocal)); + if (peerIndex != -1) { + changePIPWindowTrackOnIOS( + track: peerTracks[peerIndex].track, + alternativeText: peerTracks[peerIndex].peer.name, + ratio: [9, 16]); + } else { + changePIPWindowTextOnIOS(text: localPeer?.name, ratio: [9, 16]); + } + } else { + int peerIndex = peerTracks.indexWhere((element) => + element.uid == + element.peer.peerId + (element.track?.trackId ?? "")); + if (peerIndex != -1) { + changePIPWindowTrackOnIOS( + track: peerTracks[peerIndex].track, + alternativeText: peerTracks[peerIndex].peer.name, + ratio: [9, 16]); + } + } + } + } + else if (state == AppLifecycleState.inactive) { + if (Platform.isAndroid && !isPipActive) { + isPipActive = await HMSAndroidPIPController.isActive(); + } + notifyListeners(); + } else if (state == AppLifecycleState.detached) { + if (Platform.isAndroid && !isPipActive) { + isPipActive = await HMSAndroidPIPController.isActive(); + } + notifyListeners(); + } } @override diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 37076ec97..710f0f262 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -144,7 +144,7 @@ class _PreviewPageState extends State { meetingStore.removeListeners(), meetingStore.peerTracks.clear(), meetingStore.resetForegroundTaskAndOrientation(), - // meetingStore.clearPIPState(), + meetingStore.clearPIPState(), meetingStore.isRoomEnded = true, previewStore.isMeetingJoined = false, previewStore.hmsSDKInteractor.leave(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 0e32fa6c5..05af100d7 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -592,7 +592,7 @@ class _MoreSettingsBottomSheetState extends State { horizontalTitleGap: 2, onTap: () async { Navigator.pop(context); - // context.read().enterPipModeOnAndroid(); + context.read().enterPipModeOnAndroid(); }, contentPadding: EdgeInsets.zero, leading: SvgPicture.asset( diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart index 538a11b46..972290d23 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart @@ -290,7 +290,7 @@ class _ViewerSettingsBottomSheetState extends State { horizontalTitleGap: 2, onTap: () async { Navigator.pop(context); - // context.read().enterPipModeOnAndroid(); + context.read().enterPipModeOnAndroid(); }, contentPadding: EdgeInsets.zero, leading: SvgPicture.asset( diff --git a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt index 5f8f20024..669088bc7 100644 --- a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt +++ b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt @@ -24,26 +24,26 @@ class MainActivity : FlutterActivity() { } } - // override fun onPictureInPictureModeChanged( - // isInPictureInPictureMode: Boolean, - // newConfig: Configuration?, - // ) { - // if (isInPictureInPictureMode) { - // if (HMSPipAction.pipResult != null) { - // HMSPipAction.pipResult?.success(true) - // HMSPipAction.pipResult = null - // } - // } else { - // Log.i("PIP Mode", "Exited PIP Mode") - // } - // } + override fun onPictureInPictureModeChanged( + isInPictureInPictureMode: Boolean, + newConfig: Configuration?, + ) { + if (isInPictureInPictureMode) { + if (HMSPipAction.pipResult != null) { + HMSPipAction.pipResult?.success(true) + HMSPipAction.pipResult = null + } + } else { + Log.i("PIP Mode", "Exited PIP Mode") + } + } - // override fun onUserLeaveHint() { - // super.onUserLeaveHint() - // // This should only work for android version above 8 since PIP is only supported after - // // android 8 and will not be called after android 12 since it automatically gets handled by android. - // if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && Build.VERSION.SDK_INT < Build.VERSION_CODES.S) { - // HMSPipAction.autoEnterPipMode(this) - // } - // } + override fun onUserLeaveHint() { + super.onUserLeaveHint() + // This should only work for android version above 8 since PIP is only supported after + // android 8 and will not be called after android 12 since it automatically gets handled by android. + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && Build.VERSION.SDK_INT < Build.VERSION_CODES.S) { + HMSPipAction.autoEnterPipMode(this) + } + } } From 119f0b69e39b6d23d59027165787c4a6b341e876 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Fri, 22 Sep 2023 13:26:42 +0530 Subject: [PATCH 25/67] resolved lint warnings --- .trunk/trunk.yaml | 6 +-- packages/hms_room_kit/CHANGELOG.md | 12 +++--- packages/hms_room_kit/example/pubspec.lock | 6 +-- .../lib/src/meeting/meeting_store.dart | 3 +- .../example/ExampleAppChangelog.txt | 2 +- .../example/android/Gemfile.lock | 19 +++++----- .../example/android/app/build.gradle | 4 +- .../hmssdk_flutter/example/ios/Gemfile.lock | 19 +++++----- .../example/ios/Runner/Info.plist | 4 +- packages/hmssdk_flutter/example/lib/main.dart | 2 +- .../example/lib/qr_code_screen.dart | 1 + packages/hmssdk_flutter/example/pubspec.lock | 38 ++++++++----------- 12 files changed, 55 insertions(+), 61 deletions(-) diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index a25c30251..bd1ac3c53 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -1,6 +1,6 @@ version: 0.1 cli: - version: 1.15.0 + version: 1.16.0 plugins: sources: - id: trunk @@ -11,8 +11,8 @@ lint: - actionlint@1.6.25 - checkov@2.4.9 - osv-scanner@1.4.0 - - trivy@0.45.0 - - trufflehog@3.55.1 + - trivy@0.45.1 + - trufflehog@3.56.1 - oxipng@8.0.0 - yamllint@1.32.0 - markdownlint@0.36.0 diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 594ee5c54..fbab74304 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -1,9 +1,9 @@ # Latest Versions -| Package | Version | -| ------------------| --------------------------------------------------------------------------------------------------------- | -| hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | -| hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | +| Package | Version | +| -------------- | ------------------------------------------------------------------------------------------------------ | +| hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | +| hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | ## 1.0.2 - 2023-09-22 @@ -28,7 +28,7 @@ - Preview For Role - Edge To Edge HLS Player - Updated Bottom Sheets -And much more. Take it for a spin! + And much more. Take it for a spin! ## 0.1.0 - 2023-08-18 @@ -38,7 +38,7 @@ And much more. Take it for a spin! - Active Speaker Sorting - Newly Designed Header and Footer - Inset Tile for Local Peer -And much more. Take it for a spin! + And much more. Take it for a spin! ## 0.0.4 - 2023-08-01 diff --git a/packages/hms_room_kit/example/pubspec.lock b/packages/hms_room_kit/example/pubspec.lock index 0cb84cbfd..a7d284686 100644 --- a/packages/hms_room_kit/example/pubspec.lock +++ b/packages/hms_room_kit/example/pubspec.lock @@ -5,10 +5,10 @@ packages: dependency: transitive description: name: archive - sha256: e0902a06f0e00414e4e3438a084580161279f137aeb862274710f29ec10cf01e + sha256: "1227dc3efc4ea571eebb2dfb814506ed2cfb1d4b1b89fb918abdddde617ead3c" url: "https://pub.dev" source: hosted - version: "3.3.9" + version: "3.4.0" args: dependency: transitive description: @@ -222,7 +222,7 @@ packages: path: ".." relative: true source: path - version: "1.0.1" + version: "1.0.2" hmssdk_flutter: dependency: transitive description: diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index 60ba8d412..09f0d1ad3 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -2179,8 +2179,7 @@ class MeetingStore extends ChangeNotifier } } } - } - else if (state == AppLifecycleState.inactive) { + } else if (state == AppLifecycleState.inactive) { if (Platform.isAndroid && !isPipActive) { isPipActive = await HMSAndroidPIPController.isActive(); } diff --git a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt index 081543974..c19cbecbf 100644 --- a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt +++ b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt @@ -14,4 +14,4 @@ https://github.com/100mslive/100ms-flutter/pull/1557 Room Kit: 1.0.1 Core SDK: 1.8.0 Android SDK: 2.7.6 -iOS SDK: 0.9.12 \ No newline at end of file +iOS SDK: 1.0.1 \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/android/Gemfile.lock b/packages/hmssdk_flutter/example/android/Gemfile.lock index 04ac9cc7d..9fd1cee63 100644 --- a/packages/hmssdk_flutter/example/android/Gemfile.lock +++ b/packages/hmssdk_flutter/example/android/Gemfile.lock @@ -8,8 +8,8 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.823.0) - aws-sdk-core (3.181.1) + aws-partitions (1.826.0) + aws-sdk-core (3.183.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) @@ -17,7 +17,7 @@ GEM aws-sdk-kms (1.71.0) aws-sdk-core (~> 3, >= 3.177.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.134.0) + aws-sdk-s3 (1.135.0) aws-sdk-core (~> 3, >= 3.181.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.6) @@ -66,7 +66,7 @@ GEM faraday_middleware (1.2.0) faraday (~> 1.0) fastimage (2.2.7) - fastlane (2.214.0) + fastlane (2.216.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) @@ -87,6 +87,7 @@ GEM google-apis-playcustomapp_v1 (~> 0.1) google-cloud-storage (~> 1.31) highline (~> 2.0) + http-cookie (~> 1.0.5) json (< 3.0.0) jwt (>= 2.1.0, < 3) mini_magick (>= 4.9.4, < 5.0.0) @@ -98,7 +99,7 @@ GEM security (= 0.1.3) simctl (~> 1.6.3) terminal-notifier (>= 2.0.0, < 3.0.0) - terminal-table (>= 1.4.5, < 2.0.0) + terminal-table (~> 3) tty-screen (>= 0.6.3, < 1.0.0) tty-spinner (>= 0.8.0, < 1.0.0) word_wrap (~> 1.0.0) @@ -141,7 +142,7 @@ GEM google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) - googleauth (1.8.0) + googleauth (1.8.1) faraday (>= 0.17.3, < 3.a) jwt (>= 1.4, < 3.0) multi_json (~> 1.11) @@ -184,8 +185,8 @@ GEM CFPropertyList naturally terminal-notifier (2.0.0) - terminal-table (1.8.0) - unicode-display_width (~> 1.1, >= 1.1.1) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) trailblazer-option (0.1.2) tty-cursor (0.7.1) tty-screen (0.8.1) @@ -195,7 +196,7 @@ GEM unf (0.1.4) unf_ext unf_ext (0.0.8.2) - unicode-display_width (1.8.0) + unicode-display_width (2.4.2) webrick (1.8.1) word_wrap (1.0.0) xcodeproj (1.22.0) diff --git a/packages/hmssdk_flutter/example/android/app/build.gradle b/packages/hmssdk_flutter/example/android/app/build.gradle index aa1ef2b47..1e7216cca 100644 --- a/packages/hmssdk_flutter/example/android/app/build.gradle +++ b/packages/hmssdk_flutter/example/android/app/build.gradle @@ -32,8 +32,8 @@ android { applicationId "live.hms.flutter" minSdkVersion 21 targetSdkVersion 33 - versionCode 359 - versionName "1.5.59" + versionCode 361 + versionName "1.5.61" } signingConfigs { diff --git a/packages/hmssdk_flutter/example/ios/Gemfile.lock b/packages/hmssdk_flutter/example/ios/Gemfile.lock index 728a5e46f..f0920bc04 100644 --- a/packages/hmssdk_flutter/example/ios/Gemfile.lock +++ b/packages/hmssdk_flutter/example/ios/Gemfile.lock @@ -8,8 +8,8 @@ GEM artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.823.0) - aws-sdk-core (3.181.1) + aws-partitions (1.826.0) + aws-sdk-core (3.183.0) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.5) @@ -17,7 +17,7 @@ GEM aws-sdk-kms (1.71.0) aws-sdk-core (~> 3, >= 3.177.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.134.0) + aws-sdk-s3 (1.135.0) aws-sdk-core (~> 3, >= 3.181.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.6) @@ -66,7 +66,7 @@ GEM faraday_middleware (1.2.0) faraday (~> 1.0) fastimage (2.2.7) - fastlane (2.214.0) + fastlane (2.216.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) @@ -87,6 +87,7 @@ GEM google-apis-playcustomapp_v1 (~> 0.1) google-cloud-storage (~> 1.31) highline (~> 2.0) + http-cookie (~> 1.0.5) json (< 3.0.0) jwt (>= 2.1.0, < 3) mini_magick (>= 4.9.4, < 5.0.0) @@ -98,7 +99,7 @@ GEM security (= 0.1.3) simctl (~> 1.6.3) terminal-notifier (>= 2.0.0, < 3.0.0) - terminal-table (>= 1.4.5, < 2.0.0) + terminal-table (~> 3) tty-screen (>= 0.6.3, < 1.0.0) tty-spinner (>= 0.8.0, < 1.0.0) word_wrap (~> 1.0.0) @@ -142,7 +143,7 @@ GEM google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) - googleauth (1.8.0) + googleauth (1.8.1) faraday (>= 0.17.3, < 3.a) jwt (>= 1.4, < 3.0) multi_json (~> 1.11) @@ -185,8 +186,8 @@ GEM CFPropertyList naturally terminal-notifier (2.0.0) - terminal-table (1.8.0) - unicode-display_width (~> 1.1, >= 1.1.1) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) trailblazer-option (0.1.2) tty-cursor (0.7.1) tty-screen (0.8.1) @@ -196,7 +197,7 @@ GEM unf (0.1.4) unf_ext unf_ext (0.0.8.2) - unicode-display_width (1.8.0) + unicode-display_width (2.4.2) webrick (1.8.1) word_wrap (1.0.0) xcodeproj (1.22.0) diff --git a/packages/hmssdk_flutter/example/ios/Runner/Info.plist b/packages/hmssdk_flutter/example/ios/Runner/Info.plist index 629d695cc..304eaacf5 100644 --- a/packages/hmssdk_flutter/example/ios/Runner/Info.plist +++ b/packages/hmssdk_flutter/example/ios/Runner/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.59 + 1.5.62 CFBundleSignature ???? CFBundleURLTypes @@ -48,7 +48,7 @@ CFBundleVersion - 359 + 362 ITSAppUsesNonExemptEncryption LSApplicationCategoryType diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index f0dae280d..7c237aa56 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -371,7 +371,7 @@ class _HomePageState extends State { children: [ Text("Room Code", key: Key('room_code_text'), - style:HMSTextStyle.setTextStyle( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, height: 1.5, fontSize: 14, diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 39dcbf9e6..7df014c7e 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -67,6 +67,7 @@ class _QRCodeScreenState extends State { if (roomData[1] == "false") { endPoints = RoomService.setEndPoints(); } + ///************************************************************************************************** */ Constant.roomCode = roomData[0] ?? ''; diff --git a/packages/hmssdk_flutter/example/pubspec.lock b/packages/hmssdk_flutter/example/pubspec.lock index 54f56442f..34365429e 100644 --- a/packages/hmssdk_flutter/example/pubspec.lock +++ b/packages/hmssdk_flutter/example/pubspec.lock @@ -13,10 +13,10 @@ packages: dependency: transitive description: name: archive - sha256: e0902a06f0e00414e4e3438a084580161279f137aeb862274710f29ec10cf01e + sha256: "1227dc3efc4ea571eebb2dfb814506ed2cfb1d4b1b89fb918abdddde617ead3c" url: "https://pub.dev" source: hosted - version: "3.3.9" + version: "3.4.0" args: dependency: transitive description: @@ -53,10 +53,10 @@ packages: dependency: transitive description: name: bot_toast - sha256: "994c55aa16c4df82726b79a63c1f8d29bd7b89d940a5837728ff51546b630497" + sha256: "6b93030a99a98335b8827ecd83021e92e885ffc61d261d3825ffdecdd17f3bdf" url: "https://pub.dev" source: hosted - version: "4.1.1" + version: "4.1.3" characters: dependency: transitive description: @@ -173,10 +173,10 @@ packages: dependency: transitive description: name: firebase_core_web - sha256: "4cf4d2161530332ddc3c562f19823fb897ff37a9a774090d28df99f47370e973" + sha256: e8c408923cd3a25bd342c576a114f2126769cd1a57106a4edeaa67ea4a84e962 url: "https://pub.dev" source: hosted - version: "2.7.0" + version: "2.8.0" firebase_crashlytics: dependency: "direct main" description: @@ -254,14 +254,6 @@ packages: url: "https://pub.dev" source: hosted version: "6.0.0" - flutter_staggered_grid_view: - dependency: transitive - description: - name: flutter_staggered_grid_view - sha256: "1312314293acceb65b92754298754801b0e1f26a1845833b740b30415bbbcf07" - url: "https://pub.dev" - source: hosted - version: "0.6.2" flutter_svg: dependency: transitive description: @@ -292,17 +284,17 @@ packages: dependency: "direct main" description: name: google_fonts - sha256: "2776c66b3e97c6cdd58d1bd3281548b074b64f1fd5c8f82391f7456e38849567" + sha256: f0b8d115a13ecf827013ec9fc883390ccc0e87a96ed5347a3114cac177ef18e8 url: "https://pub.dev" source: hosted - version: "4.0.5" + version: "6.1.0" hms_room_kit: dependency: "direct main" description: path: "../../hms_room_kit" relative: true source: path - version: "1.0.1" + version: "1.0.2" hmssdk_flutter: dependency: transitive description: @@ -483,18 +475,18 @@ packages: dependency: transitive description: name: permission_handler - sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 + sha256: ad65ba9af42a3d067203641de3fd9f547ded1410bad3b84400c2b4899faede70 url: "https://pub.dev" source: hosted - version: "10.4.5" + version: "11.0.0" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" + sha256: "740c9c9d3090a29cd2fd1f193bba457ac1d2cef1da0ef91f2630d3d9e3c01c15" url: "https://pub.dev" source: hosted - version: "10.3.6" + version: "11.0.2" permission_handler_apple: dependency: transitive description: @@ -856,10 +848,10 @@ packages: dependency: transitive description: name: win32 - sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" + sha256: c97defd418eef4ec88c0d1652cdce84b9f7b63dd7198e266d06ac1710d527067 url: "https://pub.dev" source: hosted - version: "5.0.7" + version: "5.0.8" xdg_directories: dependency: transitive description: From 3b6213c320a436945b78fcbb30dda13c64145a16 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Fri, 22 Sep 2023 16:52:12 +0530 Subject: [PATCH 26/67] Fixed import errors --- .../app/src/main/kotlin/live/hms/flutter/MainActivity.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt index 669088bc7..90c20297c 100644 --- a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt +++ b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt @@ -2,8 +2,12 @@ package live.hms.flutter import android.app.Activity import android.content.Intent +import android.content.res.Configuration +import android.os.Build +import android.util.Log import io.flutter.embedding.android.FlutterActivity import live.hms.hmssdk_flutter.Constants +import live.hms.hmssdk_flutter.methods.HMSPipAction class MainActivity : FlutterActivity() { override fun onActivityResult( From 70fb9d3485d49f3bc6fa51499d88871e17dc9c5b Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Fri, 22 Sep 2023 16:56:39 +0530 Subject: [PATCH 27/67] Added version check for PIP --- .../live/hms/hmssdk_flutter/methods/HMSPipAction.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt index 76641d892..e27ccecd7 100644 --- a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt +++ b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt @@ -33,9 +33,14 @@ class HMSPipAction { } } "is_pip_available" -> { - result.success( - activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), - ) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) { + result.success( + activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), + ) + } + else{ + result.success(false) + } } "setup_pip" -> { setupPIP(call, result) From 87588fc35b920ad95996ac5622ef3f30e2361d4f Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Fri, 22 Sep 2023 18:13:07 +0530 Subject: [PATCH 28/67] Added PIP Support based on parameter --- .../lib/src/common/constants.dart | 3 + .../lib/src/hms_prebuilt_options.dart | 7 +- .../lib/src/meeting/meeting_store.dart | 74 +++++++++++-------- .../lib/src/screen_controller.dart | 2 +- packages/hmssdk_flutter/example/lib/main.dart | 1 + .../example/lib/qr_code_screen.dart | 1 + 6 files changed, 57 insertions(+), 31 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index 8e7830968..5464a507e 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -45,6 +45,9 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; + ///[Constant.isPIPAllowed] is the flag to enable/disable PIP + static bool isPIPAllowed = false; + ///[Constant.onLeave] is the function that you wish to execute while leaving the room static Function? onLeave; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart b/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart index 849410299..68f1318bc 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart @@ -26,11 +26,16 @@ class HMSPrebuiltOptions { //this config final HMSIOSScreenshareConfig? iOSScreenshareConfig; + ///If true PIP is enabled in the application + ///else it's not.Default value is false + final bool isPIPAllowed; + ///[HMSPrebuiltOptions] is a class that is used to pass the options to the prebuilt HMSPrebuiltOptions( {this.userName, this.userId, this.endPoints, this.debugInfo = false, - this.iOSScreenshareConfig}); + this.iOSScreenshareConfig, + this.isPIPAllowed = false}); } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index 09f0d1ad3..0b049accd 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -604,6 +604,13 @@ class MeetingStore extends ChangeNotifier previousRole = localPeer?.role.name; if (isRaisedHand) { changeMetadata(); + } else { + ///Setting the previous role + String value = isRaisedHand ? "true" : "false"; + _hmsSDKInteractor.changeMetadata( + metadata: + "{\"isHandRaised\":$value,\"isBRBOn\":false,\"prevRole\":\"$previousRole\"}", + hmsActionResultListener: this); } HMSRoomLayout.resetLayout(hmsRoleChangeRequest.suggestedRole.name); currentRoleChangeRequest = null; @@ -745,15 +752,18 @@ class MeetingStore extends ChangeNotifier getAudioDevicesList(); notifyListeners(); - if (Platform.isIOS && - HMSRoomLayout.roleLayoutData?.screens?.conferencing?.defaultConf != - null) { - HMSIOSPIPController.setup( - autoEnterPip: true, - aspectRatio: [9, 16], - backgroundColor: Colors.black); - } else if (Platform.isAndroid) { - HMSAndroidPIPController.setup(); + ///PIP Only needs to be called when it's enabled from PIP + if (Constant.isPIPAllowed) { + if (Platform.isIOS && + HMSRoomLayout.roleLayoutData?.screens?.conferencing?.defaultConf != + null) { + HMSIOSPIPController.setup( + autoEnterPip: true, + aspectRatio: [9, 16], + backgroundColor: Colors.black); + } else if (Platform.isAndroid) { + HMSAndroidPIPController.setup(aspectRatio: [9, 16]); + } } } @@ -1008,7 +1018,8 @@ class MeetingStore extends ChangeNotifier } // Below code for change track and text in PIP mode iOS and android. - if (updateSpeakers.isNotEmpty) { + //This is only executed if PIP is enabled + if (Constant.isPIPAllowed && updateSpeakers.isNotEmpty) { if (Platform.isIOS && (screenShareCount == 0 || isScreenShareOn)) { if (updateSpeakers[0].peer.videoTrack != null) { changePIPWindowTrackOnIOS( @@ -1176,7 +1187,7 @@ class MeetingStore extends ChangeNotifier // Helper Methods void clearRoomState() async { - // clearPIPState(); + clearPIPState(); removeListeners(); toggleAlwaysScreenOn(); _hmsSDKInteractor.destroy(); @@ -1198,10 +1209,12 @@ class MeetingStore extends ChangeNotifier } void clearPIPState() { - if (Platform.isAndroid) { - HMSAndroidPIPController.destroy(); - } else if (Platform.isIOS) { - HMSIOSPIPController.destroy(); + if (Constant.isPIPAllowed) { + if (Platform.isAndroid) { + HMSAndroidPIPController.destroy(); + } else if (Platform.isIOS) { + HMSIOSPIPController.destroy(); + } } } @@ -1371,7 +1384,7 @@ class MeetingStore extends ChangeNotifier } } - if (peer.isLocal) { + if (peer.isLocal && Constant.isPIPAllowed) { if (Platform.isIOS) { if (HMSRoomLayout .roleLayoutData?.screens?.conferencing?.hlsLiveStreaming != @@ -1781,7 +1794,7 @@ class MeetingStore extends ChangeNotifier void enterPipModeOnAndroid() async { //to check whether pip is available in android - if (Platform.isAndroid) { + if (Platform.isAndroid && Constant.isPIPAllowed) { bool isPipAvailable = await HMSAndroidPIPController.isAvailable(); if (isPipAvailable) { //[isPipActive] method can also be used to check whether application is in pip Mode or not @@ -1792,16 +1805,19 @@ class MeetingStore extends ChangeNotifier } Future isPIPActive() async { - if (Platform.isAndroid) { - isPipActive = await HMSAndroidPIPController.isActive(); - } else if (Platform.isIOS) { - isPipActive = await HMSIOSPIPController.isActive(); + if (Constant.isPIPAllowed) { + if (Platform.isAndroid) { + isPipActive = await HMSAndroidPIPController.isActive(); + } else if (Platform.isIOS) { + isPipActive = await HMSIOSPIPController.isActive(); + } + return isPipActive; } - return isPipActive; + return false; } void changePIPWindowOnAndroid(String uid) { - if (Platform.isAndroid && isPipActive) { + if (Constant.isPIPAllowed && Platform.isAndroid && isPipActive) { int index = -1; index = peerTracks.indexWhere((element) => element.uid == uid); if (index != -1) { @@ -1821,7 +1837,7 @@ class MeetingStore extends ChangeNotifier {HMSVideoTrack? track, required String alternativeText, required List ratio}) async { - if (Platform.isIOS && track != null) { + if (Constant.isPIPAllowed && Platform.isIOS && track != null) { isPipActive = await isPIPActive(); if (isPipActive) { HMSIOSPIPController.changeVideoTrack( @@ -1837,7 +1853,7 @@ class MeetingStore extends ChangeNotifier void changePIPWindowTextOnIOS( {String? text, required List ratio}) async { - if (Platform.isIOS && text != null) { + if (Constant.isPIPAllowed && Platform.isIOS && text != null) { isPipActive = await isPIPActive(); if (isPipActive) { HMSIOSPIPController.changeText( @@ -2117,7 +2133,7 @@ class MeetingStore extends ChangeNotifier return; } if (state == AppLifecycleState.resumed) { - if (Platform.isAndroid) { + if (Platform.isAndroid && Constant.isPIPAllowed) { isPipActive = await HMSAndroidPIPController.isActive(); } else if (Platform.isIOS) { isPipActive = false; @@ -2150,7 +2166,7 @@ class MeetingStore extends ChangeNotifier lastVideoStatus = true; } - if (Platform.isAndroid) { + if (Platform.isAndroid && Constant.isPIPAllowed) { isPipActive = await HMSAndroidPIPController.isActive(); notifyListeners(); } @@ -2180,12 +2196,12 @@ class MeetingStore extends ChangeNotifier } } } else if (state == AppLifecycleState.inactive) { - if (Platform.isAndroid && !isPipActive) { + if (Constant.isPIPAllowed && Platform.isAndroid && !isPipActive) { isPipActive = await HMSAndroidPIPController.isActive(); } notifyListeners(); } else if (state == AppLifecycleState.detached) { - if (Platform.isAndroid && !isPipActive) { + if (Constant.isPIPAllowed && Platform.isAndroid && !isPipActive) { isPipActive = await HMSAndroidPIPController.isActive(); } notifyListeners(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 83853aeae..747c3e9e0 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -49,7 +49,7 @@ class _ScreenControllerState extends State { Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; Constant.onLeave = widget.onLeave; - + Constant.isPIPAllowed = widget.options?.isPIPAllowed ?? false; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { _setEndPoints(widget.options!.endPoints!); diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index 7c237aa56..40388b54f 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -309,6 +309,7 @@ class _HomePageState extends State { roomCode: Constant.roomCode, options: HMSPrebuiltOptions( endPoints: endPoints, + isPIPAllowed: true, iOSScreenshareConfig: HMSIOSScreenshareConfig( appGroup: "group.flutterhms", preferredExtension: diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 7df014c7e..66863e130 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -79,6 +79,7 @@ class _QRCodeScreenState extends State { roomCode: Constant.roomCode, options: HMSPrebuiltOptions( endPoints: endPoints, + isPIPAllowed: true, iOSScreenshareConfig: HMSIOSScreenshareConfig( appGroup: "group.flutterhms", preferredExtension: From 181356b9dad6c5f1aae76210fb5767297945c233 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 13:39:06 +0530 Subject: [PATCH 29/67] added github actions scripts --- .github/workflows/build.yml | 71 ++++++-------------------- .github/workflows/firstinteraction.yml | 30 +++++++++++ .github/workflows/stale.yml | 20 ++++++++ 3 files changed, 66 insertions(+), 55 deletions(-) create mode 100644 .github/workflows/firstinteraction.yml create mode 100644 .github/workflows/stale.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 76acc2e0d..cdf7befd0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,12 +1,15 @@ -name: Deploy UAT Apps +name: Build Android Appbundle concurrency: group: ${{ github.workflow }}-${{ github.head_ref }} cancel-in-progress: true on: + workflow_dispatch: push: - branches: [main, develop] + branches: + - main + - develop pull_request: types: - opened @@ -15,6 +18,7 @@ on: - ready_for_review branches: - main + - develop paths-ignore: - "**.md" - doc/** @@ -22,8 +26,10 @@ on: - .vscode/ jobs: - build_with_signing: - runs-on: macos-latest + build_appbundle: + if: github.event.pull_request.draft == false + runs-on: ubuntu-latest + timeout-minutes: 30 steps: - name: Checkout repository @@ -32,58 +38,13 @@ jobs: with: distribution: zulu java-version: 12.x - # 10 + - uses: actions/checkout@v3 - uses: subosito/flutter-action@v2 with: - # 11 channel: stable - - name: Set Environmnent Variables - env: - FLUTTER_HMS_JSON: ${{ secrets.FLUTTER_HMS_JSON }} - # BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }} - # P12_PASSWORD: ${{ secrets.P12_PASSWORD }} - # FLUTTERADHOCDISTRIBUTION: ${{ secrets.FLUTTERADHOCDISTRIBUTION }} - # FLUTTERADHOCBROADCASTUPLOADEXTENSION: ${{ secrets.FLUTTERADHOCBROADCASTUPLOADEXTENSION }} - # FLUTTERAPPSTORE: ${{ secrets.FLUTTERAPPSTORE }} - # FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION: ${{ secrets.FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION }} - # KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }} - # SLACK_URL: ${{ secrets.SLACK_URL }} - run: | - echo "Setting Environmnent Variables" - echo "FLUTTER_HMS_JSON: $FLUTTER_HMS_JSON" - - # create variables - # CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12 - # PP_PATH_FLUTTERADHOCDISTRIBUTION=$RUNNER_TEMP/FLUTTERADHOCDISTRIBUTION.mobileprovision - # PP_PATH_FLUTTERADHOCBROADCASTUPLOADEXTENSION=$RUNNER_TEMP/FLUTTERADHOCBROADCASTUPLOADEXTENSION.mobileprovision - # PP_PATH_FLUTTERAPPSTORE=$RUNNER_TEMP/FLUTTERAPPSTORE.mobileprovision - # PP_PATH_FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION=$RUNNER_TEMP/FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION.mobileprovision - # KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db - - # # import certificate and provisioning profile from secrets - # echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH - # echo -n "$FLUTTERADHOCDISTRIBUTION" | base64 --decode -o $PP_PATH_FLUTTERADHOCDISTRIBUTION - # echo -n "$FLUTTERADHOCBROADCASTUPLOADEXTENSION" | base64 --decode -o $PP_PATH_FLUTTERADHOCBROADCASTUPLOADEXTENSION - # echo -n "$FLUTTERAPPSTORE" | base64 --decode -o $PP_PATH_FLUTTERAPPSTORE - # echo -n "$FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION" | base64 --decode -o $PP_PATH_FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION - - # # create temporary keychain - # security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH - # security set-keychain-settings -lut 21600 $KEYCHAIN_PATH - # security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH - - # # import certificate to keychain - # security import $CERTIFICATE_PATH -P "$P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH - # security list-keychain -d user -s $KEYCHAIN_PATH - - # # apply provisioning profile - # mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles - # cp $PP_PATH_FLUTTERADHOCDISTRIBUTION ~/Library/MobileDevice/Provisioning\ Profiles - # cp $PP_PATH_FLUTTERADHOCBROADCASTUPLOADEXTENSION ~/Library/MobileDevice/Provisioning\ Profiles - # cp $PP_PATH_FLUTTERAPPSTORE ~/Library/MobileDevice/Provisioning\ Profiles - # cp $PP_PATH_FLUTTERAPPSTOREBROADCASTUPLOADEXTENSION ~/Library/MobileDevice/Provisioning\ Profiles - - name: Run Release Apps Script + cache: true + - name: Build Android App Bundle run: | - chmod +x ./release-apps.sh - ./release-apps.sh - shell: bash + cd packages/hmssdk_flutter/example + flutter build appbundle --debug -t lib/main.dart + shell: bash \ No newline at end of file diff --git a/.github/workflows/firstinteraction.yml b/.github/workflows/firstinteraction.yml new file mode 100644 index 000000000..118b2953a --- /dev/null +++ b/.github/workflows/firstinteraction.yml @@ -0,0 +1,30 @@ +name: first-interaction + +on: + workflow_dispatch: + issues: + types: [opened] + pull_request: + branches: + - main + - develop + types: [opened] + +jobs: + check_for_first_interaction: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/first-interaction@main + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + issue-message: | + Hello! Thank you for filing an issue. + + Please include relevant logs or detailed description for faster resolutions. + pr-message: | + Hello! Thank you for your contribution. + + If you are fixing a bug, please reference the issue number in the description. + + If you are implementing a feature request, please check with the maintainers that the feature will be accepted first. \ No newline at end of file diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 000000000..a42fecfc0 --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,20 @@ +name: 'Close stale issues and PRs' +on: + workflow_dispatch: + schedule: + - cron: '30 1 * * *' + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v8 + with: + stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.' + stale-pr-message: 'This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days.' + close-issue-message: 'This issue was closed because it has been stalled for 5 days with no activity.' + close-pr-message: 'This PR was closed because it has been stalled for 10 days with no activity.' + days-before-issue-stale: 30 + days-before-pr-stale: 45 + days-before-issue-close: 5 + days-before-pr-close: 10 \ No newline at end of file From 9fef26c3672b9f4e23544299758be3f828ad9c4e Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Mon, 25 Sep 2023 16:50:58 +0530 Subject: [PATCH 30/67] Added header resize changes (#1594) --- packages/hms_room_kit/lib/src/meeting/meeting_header.dart | 4 +++- packages/hms_room_kit/lib/src/preview/preview_header.dart | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart index d84b2c1ea..53ac52a55 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart @@ -42,7 +42,9 @@ class _MeetingHeaderState extends State { ? Container() : HMSRoomLayout.roleLayoutData!.logo!.url!.contains("svg") ? SvgPicture.network( - HMSRoomLayout.roleLayoutData!.logo!.url!) + HMSRoomLayout.roleLayoutData!.logo!.url!, + height: 30, + width: 30,) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, diff --git a/packages/hms_room_kit/lib/src/preview/preview_header.dart b/packages/hms_room_kit/lib/src/preview/preview_header.dart index 50a22a5f4..b7b543079 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_header.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_header.dart @@ -63,7 +63,9 @@ class PreviewHeader extends StatelessWidget { ? Container() : HMSRoomLayout.roleLayoutData!.logo!.url!.contains("svg") ? SvgPicture.network( - HMSRoomLayout.roleLayoutData!.logo!.url!) + HMSRoomLayout.roleLayoutData!.logo!.url!, + height: 30, + width: 30,) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, From e8462c29c12c6da6d4d213c322bae04041e3473d Mon Sep 17 00:00:00 2001 From: Pushpam <93931528+Decoder07@users.noreply.github.com> Date: Mon, 25 Sep 2023 17:33:23 +0530 Subject: [PATCH 31/67] Fixed bug where clicking on back button calls leave method (#1596) --- packages/hms_room_kit/lib/src/preview/preview_page.dart | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 710f0f262..ee71cd458 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -169,7 +169,9 @@ class _PreviewPageState extends State { return WillPopScope( onWillPop: () async { - previewStore.leave(); + if (!previewStore.isRoomJoinedAndHLSStarted) { + previewStore.leave(); + } return true; }, child: Selector( From cb3b3cabd8a6be6d5ad19e346bffeeee6890aa48 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 11:10:39 +0530 Subject: [PATCH 32/67] Updated gitignore --- packages/hmssdk_flutter/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/hmssdk_flutter/.gitignore b/packages/hmssdk_flutter/.gitignore index a31888c7c..70034ce6f 100644 --- a/packages/hmssdk_flutter/.gitignore +++ b/packages/hmssdk_flutter/.gitignore @@ -22,6 +22,7 @@ private_key.pepk # example/android/fastlane/Pluginfile # example/android/fastlane/README.md example/android/flutter-hms-4aea6d38fd2a.json +example/android/local.properties # /example/android/fastlane/report.xml example/android/fastlane From e92fa2de6526e19477179a297c94cf3eb9013fb2 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 16:09:23 +0530 Subject: [PATCH 33/67] Release branch for prebuilt 1.0.2 --- packages/hmssdk_flutter/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/hmssdk_flutter/.gitignore b/packages/hmssdk_flutter/.gitignore index a31888c7c..e327b7966 100644 --- a/packages/hmssdk_flutter/.gitignore +++ b/packages/hmssdk_flutter/.gitignore @@ -25,6 +25,7 @@ example/android/flutter-hms-4aea6d38fd2a.json # /example/android/fastlane/report.xml example/android/fastlane +example/android/local.properties example/ios/fastlane # example/ios/fastlane/Appfile # example/ios/fastlane/Fastfile From 14e50d246160d5354097e3f5049fa2957f63fd06 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 15:54:55 +0530 Subject: [PATCH 34/67] removed staggered grid view package --- .../lib/src/meeting/meeting_page.dart | 32 +-- .../src/widgets/meeting_modes/audio_mode.dart | 89 --------- .../meeting_modes/basic_grid_view.dart | 165 ---------------- .../meeting_modes/full_screen_mode.dart | 104 ---------- .../src/widgets/meeting_modes/hero_mode.dart | 175 ----------------- .../meeting_modes/inset_grid_view.dart | 185 ------------------ packages/hms_room_kit/pubspec.yaml | 3 +- 7 files changed, 2 insertions(+), 751 deletions(-) delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart delete mode 100644 packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 2e06713e3..5e55ae8d0 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -29,9 +29,6 @@ import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/enums/meeting_mode.dart'; import 'package:hms_room_kit/src/model/peer_track_node.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/audio_device_change_dialog.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/audio_mode.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/full_screen_mode.dart'; -import 'package:hms_room_kit/src/widgets/meeting_modes/hero_mode.dart'; import 'package:hms_room_kit/src/widgets/meeting_modes/one_to_one_mode.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; import 'package:hms_room_kit/src/meeting/pip_view.dart'; @@ -288,34 +285,7 @@ class _MeetingPageState extends State { isLocalInsetPresent: false, ) - : (modeData.item1 == - MeetingMode - .hero) - ? heroMode( - peerTracks: data - .item1, - itemCount: data - .item3, - screenShareCount: data - .item4, - context: - context, - isPortrait: - isPortraitMode, - size: - size) - : (modeData.item1 == - MeetingMode - .audio) - ? audioMode( - peerTracks: data.item1.sublist(data.item4), - itemCount: data.item1.sublist(data.item4).length, - context: context, - isPortrait: isPortraitMode, - size: size) - : (data.item5 == MeetingMode.single) - ? fullScreenMode(peerTracks: data.item1, itemCount: data.item3, screenShareCount: data.item4, context: context, isPortrait: isPortraitMode, size: size) - : const CustomOneToOneGrid( + : const CustomOneToOneGrid( isLocalInsetPresent: false, )); }); diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart deleted file mode 100644 index 6f4538928..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/audio_mode.dart +++ /dev/null @@ -1,89 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/audio_tile.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; - -//Widget for Audio View -Widget audioMode( - {required List peerTracks, - required int itemCount, - required bool isPortrait, - required BuildContext context, - required Size size}) { - return GridView.builder( - itemCount: itemCount, - itemBuilder: (context, index) { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}audio_view"), - value: peerTracks[index], - child: AudioTile( - key: ValueKey("${peerTracks[index].uid}audio_tile"), - itemHeight: size.height, - itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, size, context) - : landscapePattern(itemCount, size, context)), - physics: const PageScrollPhysics(), - scrollDirection: Axis.horizontal, - ); -} - -List portraitPattern( - List peerTrack, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - - List tiles = []; - int pinTileCount = 0; - while ((pinTileCount < peerTrack.length) && peerTrack[pinTileCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - int tileLeft = (peerTrack.length - pinTileCount) % 6; - for (int i = 0; i < (peerTrack.length - pinTileCount - tileLeft); i++) { - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } else if (tileLeft == 3) { - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - tiles.add(StairedGridTile(1 / 3, ratio / 3)); - } else if (tileLeft == 4) { - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - tiles.add(StairedGridTile(0.5, ratio)); - } else if (tileLeft == 5) { - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - tiles.add(StairedGridTile(1 / 3, ratio / 1.5)); - } - return tiles; -} - -List landscapePattern( - int itemCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - int gridView = itemCount ~/ 2; - int tileLeft = itemCount - (gridView * 2); - for (int i = 0; i < (itemCount - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart deleted file mode 100644 index e14d51e21..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/basic_grid_view.dart +++ /dev/null @@ -1,165 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget basicGridView( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track != null && - peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - : PeerTile( - islongPressEnabled: false, - key: Key("${peerTracks[index].uid}video_tile"), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: PeerTile( - key: ValueKey("${peerTracks[index].uid}audio_view"), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -List portraitPattern(List peerTrack, - int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int pinTileCount = 0; - while ((pinTileCount + screenShareCount < peerTrack.length) && - peerTrack[pinTileCount + screenShareCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - int normalTile = peerTrack.length - screenShareCount - pinTileCount; - int tileLeft = normalTile % 4; - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(0.5, ratio)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } else { - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(1, ratio)); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart deleted file mode 100644 index cbb1707c0..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/full_screen_mode.dart +++ /dev/null @@ -1,104 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget fullScreenMode( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - cacheExtent: size.width, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - Text( - "You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20), - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - )) - ], - ), - ) - : PeerTile( - key: Key(peerTracks[index].uid), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: PeerTile( - key: ValueKey(peerTracks[index].uid), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: false, - pattern: [StairedGridTile(1, Utilities.getHLSRatio(size, context))])); -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart deleted file mode 100644 index 027f9f2f1..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/hero_mode.dart +++ /dev/null @@ -1,175 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -Widget heroMode( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - cacheExtent: 600, - physics: const PageScrollPhysics(), - itemCount: itemCount, - scrollDirection: isPortrait ? Axis.vertical : Axis.horizontal, - itemBuilder: (context, index) { - if (peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: peerTracks[index].peer.isLocal - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - : PeerTile( - key: Key(peerTracks[index].uid), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return ChangeNotifierProvider.value( - key: ValueKey(peerTracks[index].uid), - value: peerTracks[index], - child: PeerTile( - key: ValueKey(peerTracks[index].uid), - // itemHeight: size.height, - // itemWidth: size.width, - )); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: false, - pattern: isPortrait - ? portraitPattern(itemCount, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -List portraitPattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = 1 / Utilities.getHLSRatio(size, context); - - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - if (normalTile == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - tiles.add(StairedGridTile(1, ratio / 0.8)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - } - int tileLeft = normalTile % 4; - for (int i = 0; i < (normalTile - tileLeft - 4); i++) { - tiles.add(StairedGridTile(0.5, ratio)); - } - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else if (tileLeft == 2) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - tiles.add(StairedGridTile(1, ratio / 0.5)); - } else { - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - tiles.add(StairedGridTile(1, ratio / (1 / 3))); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - if (normalTile == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - tiles.add(StairedGridTile(1, ratio / 0.8)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - tiles.add(StairedGridTile(0.33, ratio / 0.6)); - } - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft - 4); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart b/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart deleted file mode 100644 index 769b112c4..000000000 --- a/packages/hms_room_kit/lib/src/widgets/meeting_modes/inset_grid_view.dart +++ /dev/null @@ -1,185 +0,0 @@ -//Package imports -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/layout_api/hms_theme_colors.dart'; -import 'package:hms_room_kit/src/model/peer_track_node.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_button.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/peer_tile.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -//Project imports -import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart'; -import 'package:hmssdk_flutter/hmssdk_flutter.dart'; - -/// Returns the Grid for inset mode -Widget insetGridView( - {required List peerTracks, - required int itemCount, - required int screenShareCount, - required BuildContext context, - required bool isPortrait, - required Size size}) { - return GridView.builder( - shrinkWrap: true, - itemCount: itemCount, - scrollDirection: Axis.horizontal, - physics: const PageScrollPhysics(), - itemBuilder: (context, index) { - if (peerTracks[index].track != null && - peerTracks[index].track?.source != "REGULAR") { - return ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - - ///Here we check whether the screen shared is local or remote - child: peerTracks[index].peer.isLocal - - ///If this is true we render the local screen share tile which says "You are sharing your screen" - ? Container( - margin: const EdgeInsets.all(2), - decoration: BoxDecoration( - color: HMSThemeColors.surfaceDim, - border: Border.all(color: Colors.grey, width: 1.0), - borderRadius: - const BorderRadius.all(Radius.circular(10))), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/screen_share.svg", - colorFilter: const ColorFilter.mode( - Colors.white, BlendMode.srcIn), - height: 55.2, - ), - const SizedBox( - height: 18, - ), - Text("You are sharing your screen", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - color: themeDefaultColor, - fontSize: 20, - letterSpacing: 0.15, - height: 24 / 20, - fontWeight: FontWeight.w600, - )), - const SizedBox( - height: 40, - ), - HMSButton( - buttonBackgroundColor: errorColor, - width: MediaQuery.of(context).size.width * 0.6, - onPressed: () { - context.read().stopScreenShare(); - }, - childWidget: Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close.svg"), - const SizedBox( - width: 10, - ), - HMSTitleText( - text: "Stop Screenshare", - textColor: enabledTextColor) - ], - ), - )) - ], - ), - ) - - ///Here we render the remote peer screen with the screen share - : PeerTile( - islongPressEnabled: false, - key: Key("${peerTracks[index].uid}video_tile"), - scaleType: ScaleType.SCALE_ASPECT_FIT, - // itemHeight: size.height, - // itemWidth: size.width, - ), - ); - } - return (!peerTracks[index].peer.isLocal) - ? ChangeNotifierProvider.value( - key: ValueKey("${peerTracks[index].uid}video_view"), - value: peerTracks[index], - child: const PeerTile( - // itemHeight: size.height, - // itemWidth: size.width, - )) - : Container(); - }, - gridDelegate: SliverStairedGridDelegate( - startCrossAxisDirectionReversed: true, - pattern: isPortrait - ? portraitPattern(peerTracks, screenShareCount, size, context) - : landscapePattern(itemCount, screenShareCount, size, context))); -} - -///This returns the grid pattern for the grid view -///The logic is as below: -///1. We first check the screen share count and add the tiles for screen share -///2. Then we check the pinned tile count and add the tiles for pinned tiles -///3. Then we check the normal tile count and add the tiles for normal tiles until the count is divisible by 3 -///4. For remaining tiles if count is 1 we add a tile of complete screen width -///5. For remaining tiles if count is 2 we add a tile of half screen width -List portraitPattern(List peerTrack, - int screenShareCount, Size size, BuildContext context) { - double ratio = (size.height - 3) / size.width; - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int pinTileCount = 0; - while ((pinTileCount + screenShareCount < peerTrack.length) && - peerTrack[pinTileCount + screenShareCount].pinTile) { - tiles.add(StairedGridTile(1, ratio)); - pinTileCount++; - } - - ///Checking the number of tiles left after adding screen share and pinned tiles - int normalTile = peerTrack.length - screenShareCount - pinTileCount; - - ///Checking the remainder when divided by 3 - int tileLeft = normalTile % 3; - - ///Here we add the tiles with 1/3 of the screen height - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(0.33, ratio / 3)); - } - - ///Here if the remainder is 1 we add a tile with full screen height - if (tileLeft == 1) { - tiles.add(StairedGridTile(1, ratio)); - } else { - ///Here if the remainder is 2 we add a tile with half screen height - tiles.add(StairedGridTile(0.5, ratio / 2)); - tiles.add(StairedGridTile(0.5, ratio / 2)); - } - return tiles; -} - -List landscapePattern( - int itemCount, int screenShareCount, Size size, BuildContext context) { - double ratio = Utilities.getHLSRatio(size, context); - List tiles = []; - for (int i = 0; i < screenShareCount; i++) { - tiles.add(StairedGridTile(1, ratio)); - } - int normalTile = (itemCount - screenShareCount); - int gridView = normalTile ~/ 2; - int tileLeft = normalTile - (gridView * 2); - for (int i = 0; i < (normalTile - tileLeft); i++) { - tiles.add(StairedGridTile(1, ratio / 0.5)); - } - if (tileLeft == 1) tiles.add(StairedGridTile(1, ratio)); - - return tiles; -} diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index e641e399f..f5f13f3ec 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -16,9 +16,8 @@ dependencies: hmssdk_flutter: ^1.8.0 intl: ^0.18.1 - permission_handler: ^10.4.3 + permission_handler: ^11.0.0 provider: ^6.0.5 - flutter_staggered_grid_view: ^0.6.2 google_fonts: ^4.0.4 bot_toast: ^4.0.4 draggable_widget: ^2.0.0 From c4e3387760cebc72cca132196ec491a80ff97f91 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Thu, 21 Sep 2023 15:56:39 +0530 Subject: [PATCH 35/67] Removed meeting mode selection options --- .../meeting_mode_bottom_sheet.dart | 266 ------------------ .../more_settings_bottom_sheet.dart | 34 --- 2 files changed, 300 deletions(-) delete mode 100644 packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart deleted file mode 100644 index b89409775..000000000 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart +++ /dev/null @@ -1,266 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/common/app_color.dart'; -import 'package:hms_room_kit/src/common/utility_functions.dart'; -import 'package:hms_room_kit/src/enums/meeting_mode.dart'; -import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:provider/provider.dart'; - -class MeetingModeBottomSheet extends StatefulWidget { - const MeetingModeBottomSheet({ - Key? key, - }) : super(key: key); - @override - State createState() => _MeetingModeBottomSheetState(); -} - -class _MeetingModeBottomSheetState extends State { - GlobalKey? dropdownKey; - - @override - void initState() { - super.initState(); - dropdownKey = GlobalKey(); - } - - @override - Widget build(BuildContext context) { - MeetingStore meetingStore = context.read(); - return FractionallySizedBox( - heightFactor: 0.6, - child: Padding( - padding: const EdgeInsets.only(top: 20.0, left: 15, right: 15), - child: Column( - children: [ - Row( - children: [ - CircleAvatar( - radius: 18, - backgroundColor: borderColor, - child: IconButton( - icon: Icon( - Icons.arrow_back_ios_new, - size: 16, - color: themeDefaultColor, - ), - onPressed: () { - Navigator.pop(context); - }, - ), - ), - Expanded( - child: Text( - "Meeting Modes", - textAlign: TextAlign.center, - style: GoogleFonts.inter( - fontSize: 16, - color: themeDefaultColor, - letterSpacing: 0.15, - fontWeight: FontWeight.w600), - ), - ), - IconButton( - icon: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/close_button.svg", - width: 40, - ), - onPressed: () { - Navigator.pop(context); - }, - ), - ], - ), - Padding( - padding: const EdgeInsets.only(top: 15, bottom: 10), - child: Divider( - color: dividerColor, - height: 5, - ), - ), - Expanded( - child: ListView( - children: [ - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) { - Utilities.showToast( - "Meeting mode is already set to Grid View"); - return; - } - meetingStore - .setMode(MeetingMode.equalProminenceWithInset); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/role_change.svg", - semanticsLabel: "fl_normal_mode", - colorFilter: ColorFilter.mode( - (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Normal Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: (meetingStore.meetingMode == - MeetingMode.equalProminenceWithInset) - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) { - Utilities.showToast( - "Meeting mode is already set to Active Speaker"); - return; - } - meetingStore - .setMode(MeetingMode.activeSpeakerWithInset); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - semanticsLabel: "fl_active_speaker_mode", - colorFilter: ColorFilter.mode( - (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Active Speaker Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: (meetingStore.meetingMode == - MeetingMode.activeSpeakerWithInset) - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.audio) { - Utilities.showToast( - "Meeting mode is already set to Audio Mode"); - return; - } - meetingStore.setMode(MeetingMode.audio); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - 'packages/hms_room_kit/lib/src/assets/icons/mic_state_on.svg', - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.audio - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - semanticsLabel: "fl_audio_video_view", - fit: BoxFit.scaleDown, - ), - title: Text( - "Audio View", - semanticsLabel: "fl_audio_video_mode", - style: GoogleFonts.inter( - fontSize: 14, - color: meetingStore.meetingMode == MeetingMode.audio - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.hero) { - Utilities.showToast( - "Meeting mode is already set to Hero Mode"); - return; - } - meetingStore.setMode(MeetingMode.hero); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - semanticsLabel: "fl_hero_mode", - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.hero - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Hero Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: meetingStore.meetingMode == MeetingMode.hero - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ListTile( - horizontalTitleGap: 2, - onTap: () async { - if (meetingStore.meetingMode == MeetingMode.single) { - Utilities.showToast( - "Meeting mode is already set to Single Mode"); - return; - } - meetingStore.setMode(MeetingMode.single); - Navigator.pop(context); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/single_tile.svg", - semanticsLabel: "fl_single_mode", - colorFilter: ColorFilter.mode( - meetingStore.meetingMode == MeetingMode.single - ? errorColor - : themeDefaultColor, - BlendMode.srcIn), - fit: BoxFit.scaleDown, - ), - title: Text( - "Single Tile Mode", - style: GoogleFonts.inter( - fontSize: 14, - color: - meetingStore.meetingMode == MeetingMode.single - ? errorColor - : themeDefaultColor, - letterSpacing: 0.25, - fontWeight: FontWeight.w600), - ), - ), - ], - ), - ), - ], - )), - ); - } -} diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 09291a469..0bafe92f0 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -11,7 +11,6 @@ import 'package:hms_room_kit/src/common/constants.dart'; import 'package:hms_room_kit/src/common/utility_components.dart'; import 'package:hms_room_kit/src/widgets/app_dialogs/stats_for_nerds.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/audio_settings_bottom_sheet.dart'; -import 'package:hms_room_kit/src/widgets/bottom_sheets/meeting_mode_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/participants_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/bottom_sheets/start_hls_bottom_sheet.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/share_link_option.dart'; @@ -205,39 +204,6 @@ class _MoreSettingsBottomSheetState extends State { const SizedBox( height: 10, ), - if (Constant.debugMode) - ListTile( - horizontalTitleGap: 2, - onTap: () async { - Navigator.pop(context); - showModalBottomSheet( - isScrollControlled: true, - backgroundColor: HMSThemeColors.surfaceDim, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(20), - ), - context: context, - builder: (ctx) => ChangeNotifierProvider.value( - value: meetingStore, - child: const MeetingModeBottomSheet()), - ); - }, - contentPadding: EdgeInsets.zero, - leading: SvgPicture.asset( - "packages/hms_room_kit/lib/src/assets/icons/participants.svg", - height: 20, - width: 20, - colorFilter: ColorFilter.mode( - HMSThemeColors.onSurfaceHighEmphasis, - BlendMode.srcIn), - ), - title: HMSSubheadingText( - text: "Meeting mode", - textColor: HMSThemeColors.onSurfaceHighEmphasis, - letterSpacing: 0.15, - fontWeight: FontWeight.w600, - ), - ), if (meetingStore.localPeer?.role.publishSettings?.allowed .contains("screen") ?? false) From da86e8ff48b1af347f42efae3653cf7002b017d6 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Thu, 21 Sep 2023 16:24:47 +0530 Subject: [PATCH 36/67] updated pubspec --- packages/hms_room_kit/example/pubspec.lock | 28 ++++++++-------------- packages/hms_room_kit/pubspec.yaml | 6 ++--- 2 files changed, 13 insertions(+), 21 deletions(-) diff --git a/packages/hms_room_kit/example/pubspec.lock b/packages/hms_room_kit/example/pubspec.lock index 7e68f6ff0..0cb84cbfd 100644 --- a/packages/hms_room_kit/example/pubspec.lock +++ b/packages/hms_room_kit/example/pubspec.lock @@ -45,10 +45,10 @@ packages: dependency: transitive description: name: bot_toast - sha256: "994c55aa16c4df82726b79a63c1f8d29bd7b89d940a5837728ff51546b630497" + sha256: "6b93030a99a98335b8827ecd83021e92e885ffc61d261d3825ffdecdd17f3bdf" url: "https://pub.dev" source: hosted - version: "4.1.1" + version: "4.1.3" characters: dependency: transitive description: @@ -182,14 +182,6 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.3" - flutter_staggered_grid_view: - dependency: transitive - description: - name: flutter_staggered_grid_view - sha256: "1312314293acceb65b92754298754801b0e1f26a1845833b740b30415bbbcf07" - url: "https://pub.dev" - source: hosted - version: "0.6.2" flutter_svg: dependency: "direct main" description: @@ -220,10 +212,10 @@ packages: dependency: "direct main" description: name: google_fonts - sha256: "2776c66b3e97c6cdd58d1bd3281548b074b64f1fd5c8f82391f7456e38849567" + sha256: f0b8d115a13ecf827013ec9fc883390ccc0e87a96ed5347a3114cac177ef18e8 url: "https://pub.dev" source: hosted - version: "4.0.5" + version: "6.1.0" hms_room_kit: dependency: "direct main" description: @@ -403,18 +395,18 @@ packages: dependency: transitive description: name: permission_handler - sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 + sha256: ad65ba9af42a3d067203641de3fd9f547ded1410bad3b84400c2b4899faede70 url: "https://pub.dev" source: hosted - version: "10.4.5" + version: "11.0.0" permission_handler_android: dependency: transitive description: name: permission_handler_android - sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" + sha256: "740c9c9d3090a29cd2fd1f193bba457ac1d2cef1da0ef91f2630d3d9e3c01c15" url: "https://pub.dev" source: hosted - version: "10.3.6" + version: "11.0.2" permission_handler_apple: dependency: transitive description: @@ -744,10 +736,10 @@ packages: dependency: transitive description: name: win32 - sha256: "9e82a402b7f3d518fb9c02d0e9ae45952df31b9bf34d77baf19da2de03fc2aaa" + sha256: c97defd418eef4ec88c0d1652cdce84b9f7b63dd7198e266d06ac1710d527067 url: "https://pub.dev" source: hosted - version: "5.0.7" + version: "5.0.8" xdg_directories: dependency: transitive description: diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index f5f13f3ec..f97fe75af 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -7,8 +7,8 @@ issue_tracker: https://github.com/100mslive/100ms-flutter/issues documentation: https://www.100ms.live/docs environment: - sdk: ">=2.17.0 <4.0.0" - flutter: ">=2.10.0" + sdk: ">=3.0.0 <4.0.0" + flutter: ">=3.10.0" dependencies: flutter: @@ -18,7 +18,7 @@ dependencies: intl: ^0.18.1 permission_handler: ^11.0.0 provider: ^6.0.5 - google_fonts: ^4.0.4 + google_fonts: ^6.1.0 bot_toast: ^4.0.4 draggable_widget: ^2.0.0 badges: ^3.1.1 From e68c204365e7fb2e0d552b8c51fe48068cc804ea Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 16:24:58 +0530 Subject: [PATCH 37/67] Updated room kit version --- packages/hms_room_kit/CHANGELOG.md | 6 ++++++ packages/hms_room_kit/pubspec.yaml | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 068af2903..594ee5c54 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -5,6 +5,12 @@ | hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | | hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | +## 1.0.2 - 2023-09-22 + +### Changed + +- Bump minimal Flutter version to 3.10.0 + ## 1.0.1 - 2023-09-15 ### 🚀 Added diff --git a/packages/hms_room_kit/pubspec.yaml b/packages/hms_room_kit/pubspec.yaml index f97fe75af..9bbe262dd 100644 --- a/packages/hms_room_kit/pubspec.yaml +++ b/packages/hms_room_kit/pubspec.yaml @@ -1,6 +1,6 @@ name: hms_room_kit description: 100ms Room Kit provides simple & easy to use UI components to build Live Streaming & Video Conferencing experiences in your apps. -version: 1.0.1 +version: 1.0.2 homepage: https://www.100ms.live/ repository: https://github.com/100mslive/100ms-flutter issue_tracker: https://github.com/100mslive/100ms-flutter/issues From 5baffd09d977faf39bce2ade69d522b1203d81fd Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 16:31:51 +0530 Subject: [PATCH 38/67] Fixed header and leave room bug --- packages/hms_room_kit/lib/src/meeting/meeting_header.dart | 4 +++- packages/hms_room_kit/lib/src/preview/preview_header.dart | 4 +++- packages/hms_room_kit/lib/src/preview/preview_page.dart | 6 +++--- .../widgets/bottom_sheets/leave_session_bottom_sheet.dart | 2 +- .../lib/src/widgets/common_widgets/leave_session_tile.dart | 4 ++-- 5 files changed, 12 insertions(+), 8 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart index d84b2c1ea..53ac52a55 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart @@ -42,7 +42,9 @@ class _MeetingHeaderState extends State { ? Container() : HMSRoomLayout.roleLayoutData!.logo!.url!.contains("svg") ? SvgPicture.network( - HMSRoomLayout.roleLayoutData!.logo!.url!) + HMSRoomLayout.roleLayoutData!.logo!.url!, + height: 30, + width: 30,) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, diff --git a/packages/hms_room_kit/lib/src/preview/preview_header.dart b/packages/hms_room_kit/lib/src/preview/preview_header.dart index 50a22a5f4..2d341ff26 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_header.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_header.dart @@ -63,7 +63,9 @@ class PreviewHeader extends StatelessWidget { ? Container() : HMSRoomLayout.roleLayoutData!.logo!.url!.contains("svg") ? SvgPicture.network( - HMSRoomLayout.roleLayoutData!.logo!.url!) + HMSRoomLayout.roleLayoutData!.logo!.url!, + height: 30, + width: 30,) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index 3839e1856..49c4f3b20 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -4,8 +4,6 @@ import 'dart:io'; ///Package imports import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:provider/provider.dart'; import 'package:hmssdk_flutter/hmssdk_flutter.dart'; @@ -171,7 +169,9 @@ class _PreviewPageState extends State { return WillPopScope( onWillPop: () async { - previewStore.leave(); + if (!previewStore.isRoomJoinedAndHLSStarted) { + previewStore.leave(); + } return true; }, child: Selector( diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart index 45bfa6f4c..00dbda0d9 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/leave_session_bottom_sheet.dart @@ -23,7 +23,7 @@ class LeaveSessionBottomSheet extends StatelessWidget { children: [ LeaveSessionTile( tilePadding: - const EdgeInsets.only(top: 12.0, left: 20, right: 20), + const EdgeInsets.only(top: 12.0, left: 18, right: 18), leading: SvgPicture.asset( "packages/hms_room_kit/lib/src/assets/icons/exit_room.svg", colorFilter: ColorFilter.mode( diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/leave_session_tile.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/leave_session_tile.dart index 01aaac2ca..84dbf3fe9 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/leave_session_tile.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/leave_session_tile.dart @@ -35,13 +35,13 @@ class LeaveSessionTile extends StatelessWidget { color: tileColor ?? HMSThemeColors.surfaceDim, child: Padding( padding: tilePadding ?? - const EdgeInsets.only(top: 24.0, left: 20, right: 20), + const EdgeInsets.only(top: 24.0, left: 18, right: 18), child: Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ leading ?? const SizedBox(), const SizedBox( - width: 16, + width: 14, ), Column( crossAxisAlignment: CrossAxisAlignment.start, From a783a3bbc2f31585a00a47e46f50fde373b24b70 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 16:38:08 +0530 Subject: [PATCH 39/67] applied dart linting --- packages/hms_room_kit/lib/src/common/utility_functions.dart | 1 - .../hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart | 2 -- packages/hms_room_kit/lib/src/meeting/meeting_header.dart | 3 ++- packages/hms_room_kit/lib/src/meeting/meeting_page.dart | 5 +++-- packages/hms_room_kit/lib/src/preview/preview_header.dart | 3 ++- .../lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart | 1 - .../lib/src/widgets/common_widgets/message_container.dart | 1 - 7 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/utility_functions.dart b/packages/hms_room_kit/lib/src/common/utility_functions.dart index 3927bbaec..0981692f0 100644 --- a/packages/hms_room_kit/lib/src/common/utility_functions.dart +++ b/packages/hms_room_kit/lib/src/common/utility_functions.dart @@ -11,7 +11,6 @@ import 'package:hms_room_kit/src/common/animated_text.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:shared_preferences/shared_preferences.dart'; - ///This class contains the utility functions used in the app class Utilities { static RegExp regexEmoji = RegExp( diff --git a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart index f334a14e5..f689ac35b 100644 --- a/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart +++ b/packages/hms_room_kit/lib/src/hls_viewer/hls_chat_component.dart @@ -10,8 +10,6 @@ import 'package:url_launcher/url_launcher.dart'; ///Project imports import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; - ///[HLSChatComponent] is a component that is used to show the chat class HLSChatComponent extends StatefulWidget { diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart index 53ac52a55..1e53e22e4 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_header.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_header.dart @@ -44,7 +44,8 @@ class _MeetingHeaderState extends State { ? SvgPicture.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, - width: 30,) + width: 30, + ) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart index 996a23783..05536865d 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_page.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_page.dart @@ -288,8 +288,9 @@ class _MeetingPageState extends State { false, ) : const CustomOneToOneGrid( - isLocalInsetPresent: false, - )); + isLocalInsetPresent: + false, + )); }); }), const Column( diff --git a/packages/hms_room_kit/lib/src/preview/preview_header.dart b/packages/hms_room_kit/lib/src/preview/preview_header.dart index 2d341ff26..1d56cc9f1 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_header.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_header.dart @@ -65,7 +65,8 @@ class PreviewHeader extends StatelessWidget { ? SvgPicture.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, - width: 30,) + width: 30, + ) : Image.network( HMSRoomLayout.roleLayoutData!.logo!.url!, height: 30, diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart index 85b2acceb..e0130b270 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/chat_bottom_sheet.dart @@ -9,7 +9,6 @@ import 'package:hmssdk_flutter/hmssdk_flutter.dart'; import 'package:url_launcher/url_launcher.dart'; //Project imports -import 'package:hms_room_kit/src/widgets/common_widgets/hms_text_style.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hms_room_kit/src/enums/session_store_keys.dart'; import 'package:hms_room_kit/src/widgets/chat_widgets/hms_empty_chat_widget.dart'; diff --git a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart index a67a4d51a..22204f3b1 100644 --- a/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart +++ b/packages/hms_room_kit/lib/src/widgets/common_widgets/message_container.dart @@ -14,7 +14,6 @@ import 'package:hms_room_kit/src/widgets/common_widgets/hms_subtitle_text.dart'; import 'package:hms_room_kit/src/widgets/common_widgets/hms_title_text.dart'; import 'package:hms_room_kit/src/meeting/meeting_store.dart'; - class MessageContainer extends StatelessWidget { final String message; final String? senderName; From caeea486fcacb68edfe897d8deed5f52fdb43c0d Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Tue, 26 Sep 2023 16:41:29 +0530 Subject: [PATCH 40/67] Updated changelog --- packages/hms_room_kit/CHANGELOG.md | 6 ++++++ .../example/lib/app_settings_bottom_sheet.dart | 1 - packages/hmssdk_flutter/example/lib/main.dart | 1 - 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 594ee5c54..88fb18787 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -7,10 +7,16 @@ ## 1.0.2 - 2023-09-22 +### 🚀 Added + +- Added `onLeave` callback parameter in `HMSPrebuilt` + ### Changed - Bump minimal Flutter version to 3.10.0 +- Some Bug fixes and performance improvements + ## 1.0.1 - 2023-09-15 ### 🚀 Added diff --git a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart index 1946fe14b..dea898ac9 100644 --- a/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart +++ b/packages/hmssdk_flutter/example/lib/app_settings_bottom_sheet.dart @@ -4,7 +4,6 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:flutter/services.dart' show rootBundle; import 'package:url_launcher/url_launcher.dart'; diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index 1ffb5fe6e..f0dae280d 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -9,7 +9,6 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_svg/svg.dart'; -import 'package:google_fonts/google_fonts.dart'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hmssdk_flutter_example/app_settings_bottom_sheet.dart'; import 'package:hmssdk_flutter_example/qr_code_screen.dart'; From ef63f20b3eeda3d1fe6185ede8ae4be72587aed8 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:06:19 +0530 Subject: [PATCH 41/67] updated gitignore --- packages/hms_room_kit/.gitignore | 39 -- packages/hms_room_kit/pubspec.lock | 746 +++++++++++++++++++++ packages/hmssdk_flutter/.gitignore | 46 -- packages/hmssdk_flutter/example/.gitignore | 48 -- 4 files changed, 746 insertions(+), 133 deletions(-) delete mode 100644 packages/hms_room_kit/.gitignore create mode 100644 packages/hms_room_kit/pubspec.lock delete mode 100644 packages/hmssdk_flutter/.gitignore delete mode 100644 packages/hmssdk_flutter/example/.gitignore diff --git a/packages/hms_room_kit/.gitignore b/packages/hms_room_kit/.gitignore deleted file mode 100644 index 119065349..000000000 --- a/packages/hms_room_kit/.gitignore +++ /dev/null @@ -1,39 +0,0 @@ -# Miscellaneous -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ -migrate_working_dir/ - -# IntelliJ related -*.iml -*.ipr -*.iws -.idea/ - -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ - -# Flutter/Dart/Pub related -# Libraries should not include pubspec.lock, per https://dart.dev/guides/libraries/private-files#pubspeclock. -/pubspec.lock -**/doc/api/ -.dart_tool/ -.packages -build/ - - -.flutter-plugins -.flutter-plugins-dependencies - - -android/local.properties - -lib/src/service/app_secrets.dart \ No newline at end of file diff --git a/packages/hms_room_kit/pubspec.lock b/packages/hms_room_kit/pubspec.lock new file mode 100644 index 000000000..a10f942b1 --- /dev/null +++ b/packages/hms_room_kit/pubspec.lock @@ -0,0 +1,746 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + archive: + dependency: transitive + description: + name: archive + sha256: "1227dc3efc4ea571eebb2dfb814506ed2cfb1d4b1b89fb918abdddde617ead3c" + url: "https://pub.dev" + source: hosted + version: "3.4.0" + args: + dependency: transitive + description: + name: args + sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 + url: "https://pub.dev" + source: hosted + version: "2.4.2" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + badges: + dependency: "direct main" + description: + name: badges + sha256: a7b6bbd60dce418df0db3058b53f9d083c22cdb5132a052145dc267494df0b84 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + bot_toast: + dependency: "direct main" + description: + name: bot_toast + sha256: "6b93030a99a98335b8827ecd83021e92e885ffc61d261d3825ffdecdd17f3bdf" + url: "https://pub.dev" + source: hosted + version: "4.1.3" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + collection: + dependency: "direct main" + description: + name: collection + sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 + url: "https://pub.dev" + source: hosted + version: "1.17.2" + convert: + dependency: transitive + description: + name: convert + sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: fd832b5384d0d6da4f6df60b854d33accaaeb63aa9e10e736a87381f08dee2cb + url: "https://pub.dev" + source: hosted + version: "0.3.3+5" + crypto: + dependency: transitive + description: + name: crypto + sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + url: "https://pub.dev" + source: hosted + version: "3.0.3" + dots_indicator: + dependency: "direct main" + description: + name: dots_indicator + sha256: "58b6a365744aa62aa1b70c4ea29e5106fbe064f5edaf7e9652e9b856edbfd9bb" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + draggable_widget: + dependency: "direct main" + description: + name: draggable_widget + sha256: d7f6b1eb9cb79b724b02dc2ac699f82d1ab20b99920b8b1f25812054d72ca803 + url: "https://pub.dev" + source: hosted + version: "2.0.0" + dropdown_button2: + dependency: "direct main" + description: + name: dropdown_button2 + sha256: b0fe8d49a030315e9eef6c7ac84ca964250155a6224d491c1365061bc974a9e1 + url: "https://pub.dev" + source: hosted + version: "2.3.9" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + file: + dependency: transitive + description: + name: file + sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d" + url: "https://pub.dev" + source: hosted + version: "6.1.4" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_foreground_task: + dependency: "direct main" + description: + name: flutter_foreground_task + sha256: e48d2d810a2d643362e64de41146ed8e95d4dd282bae6abbb32309d9f0bf5d67 + url: "https://pub.dev" + source: hosted + version: "6.1.2" + flutter_linkify: + dependency: "direct main" + description: + name: flutter_linkify + sha256: "74669e06a8f358fee4512b4320c0b80e51cffc496607931de68d28f099254073" + url: "https://pub.dev" + source: hosted + version: "6.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04 + url: "https://pub.dev" + source: hosted + version: "2.0.3" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: "8c5d68a82add3ca76d792f058b186a0599414f279f00ece4830b9b231b570338" + url: "https://pub.dev" + source: hosted + version: "2.0.7" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + focus_detector: + dependency: "direct main" + description: + name: focus_detector + sha256: "05e32d9dd378cd54f1a3f9ce813c05156f28eb83f8e68f5bf1a37e9cdb21af1c" + url: "https://pub.dev" + source: hosted + version: "2.0.1" + google_fonts: + dependency: "direct main" + description: + name: google_fonts + sha256: f0b8d115a13ecf827013ec9fc883390ccc0e87a96ed5347a3114cac177ef18e8 + url: "https://pub.dev" + source: hosted + version: "6.1.0" + hmssdk_flutter: + dependency: "direct main" + description: + name: hmssdk_flutter + sha256: fb6cdad295b0c76be408beb9cef0fe3fab9aa25c775779943a68fab4e675628b + url: "https://pub.dev" + source: hosted + version: "1.8.0" + http: + dependency: transitive + description: + name: http + sha256: "759d1a329847dd0f39226c688d3e06a6b8679668e350e2891a6474f8b4bb8525" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + intl: + dependency: "direct main" + description: + name: intl + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + url: "https://pub.dev" + source: hosted + version: "0.18.1" + js: + dependency: transitive + description: + name: js + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.dev" + source: hosted + version: "0.6.7" + linkify: + dependency: transitive + description: + name: linkify + sha256: "4139ea77f4651ab9c315b577da2dd108d9aa0bd84b5d03d33323f1970c645832" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + lints: + dependency: transitive + description: + name: lints + sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + lottie: + dependency: "direct main" + description: + name: lottie + sha256: b8bdd54b488c54068c57d41ae85d02808da09e2bee8b8dd1f59f441e7efa60cd + url: "https://pub.dev" + source: hosted + version: "2.6.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" + url: "https://pub.dev" + source: hosted + version: "0.12.16" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" + url: "https://pub.dev" + source: hosted + version: "0.5.0" + meta: + dependency: transitive + description: + name: meta + sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + mime: + dependency: transitive + description: + name: mime + sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e + url: "https://pub.dev" + source: hosted + version: "1.0.4" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + path: + dependency: transitive + description: + name: path + sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" + url: "https://pub.dev" + source: hosted + version: "1.8.3" + path_parsing: + dependency: transitive + description: + name: path_parsing + sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf + url: "https://pub.dev" + source: hosted + version: "1.0.1" + path_provider: + dependency: "direct main" + description: + name: path_provider + sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa + url: "https://pub.dev" + source: hosted + version: "2.1.1" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d" + url: "https://pub.dev" + source: hosted + version: "2.3.1" + 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: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" + url: "https://pub.dev" + source: hosted + version: "2.2.1" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + sha256: ad65ba9af42a3d067203641de3fd9f547ded1410bad3b84400c2b4899faede70 + url: "https://pub.dev" + source: hosted + version: "11.0.0" + permission_handler_android: + dependency: transitive + description: + name: permission_handler_android + sha256: "740c9c9d3090a29cd2fd1f193bba457ac1d2cef1da0ef91f2630d3d9e3c01c15" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + permission_handler_apple: + dependency: transitive + description: + name: permission_handler_apple + sha256: "99e220bce3f8877c78e4ace901082fb29fa1b4ebde529ad0932d8d664b34f3f5" + url: "https://pub.dev" + source: hosted + version: "9.1.4" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + sha256: f2343e9fa9c22ae4fd92d4732755bfe452214e7189afcc097380950cf567b4b2 + url: "https://pub.dev" + source: hosted + version: "3.11.5" + permission_handler_windows: + dependency: transitive + description: + name: permission_handler_windows + sha256: cc074aace208760f1eee6aa4fae766b45d947df85bc831cde77009cdb4720098 + url: "https://pub.dev" + source: hosted + version: "0.1.3" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 + url: "https://pub.dev" + source: hosted + version: "5.4.0" + platform: + dependency: transitive + description: + name: platform + sha256: ae68c7bfcd7383af3629daafb32fb4e8681c7154428da4febcff06200585f102 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d + url: "https://pub.dev" + source: hosted + version: "2.1.6" + pointycastle: + dependency: transitive + description: + name: pointycastle + sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" + url: "https://pub.dev" + source: hosted + version: "3.7.3" + provider: + dependency: "direct main" + description: + name: provider + sha256: cdbe7530b12ecd9eb455bdaa2fcb8d4dad22e80b8afb4798b41479d5ce26847f + url: "https://pub.dev" + source: hosted + version: "6.0.5" + share_plus: + dependency: "direct main" + description: + name: share_plus + sha256: "6cec740fa0943a826951223e76218df002804adb588235a8910dc3d6b0654e11" + url: "https://pub.dev" + source: hosted + version: "7.1.0" + share_plus_platform_interface: + dependency: transitive + description: + name: share_plus_platform_interface + sha256: "357412af4178d8e11d14f41723f80f12caea54cf0d5cd29af9dcdab85d58aea7" + url: "https://pub.dev" + source: hosted + version: "3.3.0" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: b7f41bad7e521d205998772545de63ff4e6c97714775902c199353f8bf1511ac + url: "https://pub.dev" + source: hosted + version: "2.2.1" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "8568a389334b6e83415b6aae55378e158fbc2314e074983362d20c562780fb06" + url: "https://pub.dev" + source: hosted + version: "2.2.1" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "7bf53a9f2d007329ee6f3df7268fd498f8373602f943c975598bbb34649b62a7" + url: "https://pub.dev" + source: hosted + version: "2.3.4" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: c2eb5bf57a2fe9ad6988121609e47d3e07bb3bdca5b6f8444e4cf302428a128a + url: "https://pub.dev" + source: hosted + version: "2.3.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: d4ec5fc9ebb2f2e056c617112aa75dcf92fc2e4faaf2ae999caa297473f75d8a + url: "https://pub.dev" + source: hosted + version: "2.3.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: d762709c2bbe80626ecc819143013cc820fa49ca5e363620ee20a8b15a3e3daf + url: "https://pub.dev" + source: hosted + version: "2.2.1" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: f763a101313bd3be87edffe0560037500967de9c394a714cd598d945517f694f + url: "https://pub.dev" + source: hosted + version: "2.3.1" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 + url: "https://pub.dev" + source: hosted + version: "1.11.0" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" + url: "https://pub.dev" + source: hosted + version: "0.6.0" + tuple: + dependency: "direct main" + description: + name: tuple + sha256: a97ce2013f240b2f3807bcbaf218765b6f301c3eff91092bcfa23a039e7dd151 + url: "https://pub.dev" + source: hosted + version: "2.0.2" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" + source: hosted + version: "1.3.2" + url_launcher: + dependency: "direct main" + description: + name: url_launcher + sha256: "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27" + url: "https://pub.dev" + source: hosted + version: "6.1.14" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: b04af59516ab45762b2ca6da40fa830d72d0f6045cd97744450b73493fa76330 + url: "https://pub.dev" + source: hosted + version: "6.1.0" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "7c65021d5dee51813d652357bc65b8dd4a6177082a9966bc8ba6ee477baa795f" + url: "https://pub.dev" + source: hosted + version: "6.1.5" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + sha256: b651aad005e0cb06a01dbd84b428a301916dc75f0e7ea6165f80057fee2d8e8e + url: "https://pub.dev" + source: hosted + version: "3.0.6" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + sha256: b55486791f666e62e0e8ff825e58a023fd6b1f71c49926483f1128d3bbd8fe88 + url: "https://pub.dev" + source: hosted + version: "3.0.7" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + sha256: "95465b39f83bfe95fcb9d174829d6476216f2d548b79c38ab2506e0458787618" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + sha256: "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5" + url: "https://pub.dev" + source: hosted + version: "2.0.20" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + sha256: "95fef3129dc7cfaba2bc3d5ba2e16063bb561fc6d78e63eee16162bc70029069" + url: "https://pub.dev" + source: hosted + version: "3.0.8" + uuid: + dependency: transitive + description: + name: uuid + sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313" + url: "https://pub.dev" + source: hosted + version: "3.0.7" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: "670f6e07aca990b4a2bcdc08a784193c4ccdd1932620244c3a86bb72a0eac67f" + url: "https://pub.dev" + source: hosted + version: "1.1.7" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "7451721781d967db9933b63f5733b1c4533022c0ba373a01bdd79d1a5457f69f" + url: "https://pub.dev" + source: hosted + version: "1.1.7" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: "80a13c613c8bde758b1464a1755a7b3a8f2b6cec61fbf0f5a53c94c30f03ba2e" + url: "https://pub.dev" + source: hosted + version: "1.1.7" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + visibility_detector: + dependency: transitive + description: + name: visibility_detector + sha256: ec932527913f32f65aa01d3a393504240b9e9021ecc77123f017755605e48832 + url: "https://pub.dev" + source: hosted + version: "0.2.2" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.dev" + source: hosted + version: "0.1.4-beta" + win32: + dependency: transitive + description: + name: win32 + sha256: c97defd418eef4ec88c0d1652cdce84b9f7b63dd7198e266d06ac1710d527067 + url: "https://pub.dev" + source: hosted + version: "5.0.8" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2" + url: "https://pub.dev" + source: hosted + version: "1.0.3" + xml: + dependency: transitive + description: + name: xml + sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" + url: "https://pub.dev" + source: hosted + version: "6.3.0" +sdks: + dart: ">=3.1.0 <4.0.0" + flutter: ">=3.13.0" diff --git a/packages/hmssdk_flutter/.gitignore b/packages/hmssdk_flutter/.gitignore deleted file mode 100644 index a31888c7c..000000000 --- a/packages/hmssdk_flutter/.gitignore +++ /dev/null @@ -1,46 +0,0 @@ -.DS_Store -.dart_tool/ - -.packages -.pub/ -build/ - -*.g.dart -*.idea -private_key.pepk -# ./example/android/app/100msKeyStore -# 100msKeyStore -# example/ios/Runner.app.dSYM.zip -# example/ios/Runner.ipa -# example/lib/app_secrets.dart -# launch.json -./documentation - -# example/android/app/google-services.json -# example/android/fastlane/Appfile -# example/android/fastlane/Fastfile -# example/android/fastlane/Pluginfile -# example/android/fastlane/README.md -example/android/flutter-hms-4aea6d38fd2a.json -# /example/android/fastlane/report.xml - -example/android/fastlane -example/ios/fastlane -# example/ios/fastlane/Appfile -# example/ios/fastlane/Fastfile -# example/ios/fastlane/Pluginfile -example/ios/flutter-hms-4aea6d38fd2a.json -# example/ios/fastlane/README.md -# /example/ios/fastlane/report.xml -# example/ios/Runner/GoogleService-Info.plist -# example/ios/config/GoogleService-Info.plist -# *.p8 -# sample apps/hms-callkit-app/.flutter-plugins -# sample apps/hms-callkit-app/.flutter-plugins-dependencies -# sample apps/flutter-quickstart-app/.flutter-plugins -# sample apps/flutter-quickstart-app/.flutter-plugins-dependencies -# ui_kit/.flutter-plugins -# ui_kit/.flutter-plugins-dependencies -# ui_kit/lib/service/app_secrets.dart - -example/lib/app_secrets.dart \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/.gitignore b/packages/hmssdk_flutter/example/.gitignore deleted file mode 100644 index 8d7e7252f..000000000 --- a/packages/hmssdk_flutter/example/.gitignore +++ /dev/null @@ -1,48 +0,0 @@ -# Miscellaneous -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ - -# IntelliJ related -*.iml -*.ipr -*.iws -.idea/ - -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ - -# Flutter/Dart/Pub related -**/doc/api/ -**/ios/Flutter/.last_build_id -.dart_tool/ -.flutter-plugins -.flutter-plugins-dependencies -.packages -.pub-cache/ -.pub/ -/build/ -*.g.dart -# Web related -lib/generated_plugin_registrant.dart - -# Symbolication related -app.*.symbols - -# Obfuscation related -app.*.map.json - -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release -/android/app/flutter-hms-4aea6d38fd2a.json -/android/app/google-services.json From 9fa3cc9582f322acaed0b88c8b01524d75e31946 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:06:28 +0530 Subject: [PATCH 42/67] updated gitignore (cherry picked from commit ab1503f88ddc404593c1c84001037a282a0fe68f) --- .gitignore | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitignore b/.gitignore index 91b2eff6b..410b3b3f5 100644 --- a/.gitignore +++ b/.gitignore @@ -2145,3 +2145,9 @@ sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/ sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/hmssdk_flutter.build/dgph sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/HMSWebRTC.build/dgph sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/Pods-Runner.build/dgph +packages/hms_room_kit/.dart_tool +packages/hmssdk_flutter/.dart_tool +packages/hmssdk_flutter/example/.dart_tool +packages/hmssdk_flutter/example/android/fastlane +packages/hmssdk_flutter/example/build +packages/hmssdk_flutter/example/ios/fastlane From d68e4a28780ecdd3c783b2467fccae31dd85a085 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:07:12 +0530 Subject: [PATCH 43/67] updated workflow names (cherry picked from commit 483ad25335062b51009c15797f90538cf371e9d9) --- .github/workflows/build.yml | 2 +- .github/workflows/firstinteraction.yml | 8 ++++++-- .github/workflows/stale.yml | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index cdf7befd0..d6b4789a5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Build Android Appbundle +name: Build concurrency: group: ${{ github.workflow }}-${{ github.head_ref }} diff --git a/.github/workflows/firstinteraction.yml b/.github/workflows/firstinteraction.yml index 118b2953a..ff36b6850 100644 --- a/.github/workflows/firstinteraction.yml +++ b/.github/workflows/firstinteraction.yml @@ -1,4 +1,4 @@ -name: first-interaction +name: Appreciate first interaction on: workflow_dispatch: @@ -22,9 +22,13 @@ jobs: Hello! Thank you for filing an issue. Please include relevant logs or detailed description for faster resolutions. + + We really appreciate your contribution! pr-message: | Hello! Thank you for your contribution. If you are fixing a bug, please reference the issue number in the description. - If you are implementing a feature request, please check with the maintainers that the feature will be accepted first. \ No newline at end of file + If you are implementing a feature request, please check with the maintainers that the feature will be accepted first. + + We really appreciate your contribution! \ No newline at end of file diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index a42fecfc0..143fa1f7b 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -1,4 +1,4 @@ -name: 'Close stale issues and PRs' +name: Close stale issues and PRs on: workflow_dispatch: schedule: From afa7fc02b22368b0ad4e1460658961d757071de2 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:11:15 +0530 Subject: [PATCH 44/67] updated gitignore (cherry picked from commit 01f09a095acd6579ad163d8c34a4e0903d292e84) --- .gitignore | 2115 +--------------------------------------------------- 1 file changed, 5 insertions(+), 2110 deletions(-) diff --git a/.gitignore b/.gitignore index 410b3b3f5..c7cb3975e 100644 --- a/.gitignore +++ b/.gitignore @@ -22,2116 +22,11 @@ example/.flutter-plugins example/.flutter-plugins-dependencies example/.dart_tool/package_config.json example/.dart_tool/package_config_subset -example/.dart_tool/flutter_build/dart_plugin_registrant.dart -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/.filecache -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/app.dill -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/debug_android_application.stamp -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/flutter_assets.d -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/gen_dart_plugin_registrant.stamp -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/gen_localizations.stamp -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/kernel_snapshot.d -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/kernel_snapshot.stamp -example/.dart_tool/flutter_build/b49e8e923d270d37aed9e7339a6d5e85/outputs.json -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/.filecache -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/_composite.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_bundle_release_android-arm.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_bundle_release_android-arm64.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_bundle_release_android-x64.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_release_android-arm.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_release_android-arm64.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/android_aot_release_android-x64.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/aot_android_asset_bundle.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/app.dill -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_bundle_release_android-arm.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_bundle_release_android-arm64.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_bundle_release_android-x64.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_release_android-arm.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_release_android-arm64.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_android_aot_release_android-x64.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/flutter_assets.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/gen_dart_plugin_registrant.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/gen_localizations.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/kernel_snapshot.d -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/kernel_snapshot.stamp -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/outputs.json -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/arm64-v8a/app.so -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/armeabi-v7a/app.so -example/.dart_tool/flutter_build/f81ef0561ff7300ab4ee5ec35e19b789/x86_64/app.so -example/android/.gradle/file-system.probe -example/android/.gradle/7.3.3/gc.properties -example/android/.gradle/7.3.3/checksums/checksums.lock -example/android/.gradle/7.3.3/checksums/md5-checksums.bin -example/android/.gradle/7.3.3/checksums/sha1-checksums.bin -example/android/.gradle/7.3.3/dependencies-accessors/dependencies-accessors.lock -example/android/.gradle/7.3.3/dependencies-accessors/gc.properties -example/android/.gradle/7.3.3/executionHistory/executionHistory.bin -example/android/.gradle/7.3.3/executionHistory/executionHistory.lock -example/android/.gradle/7.3.3/fileChanges/last-build.bin -example/android/.gradle/7.3.3/fileHashes/fileHashes.bin -example/android/.gradle/7.3.3/fileHashes/fileHashes.lock -example/android/.gradle/7.3.3/fileHashes/resourceHashesCache.bin -example/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock -example/android/.gradle/buildOutputCleanup/cache.properties -example/android/.gradle/buildOutputCleanup/outputFiles.bin -example/android/.gradle/vcs-1/gc.properties -example/android/.idea/.gitignore -example/android/.idea/compiler.xml -example/android/.idea/gradle.xml -example/android/.idea/jarRepositories.xml -example/android/.idea/kotlinc.xml -example/android/.idea/misc.xml -example/android/.idea/vcs.xml -example/android/.idea/modules/-1059653521/android.firebase_core.androidTest.iml -example/android/.idea/modules/-106276478/android.flutter_plugin_android_lifecycle.androidTest.iml -example/android/.idea/modules/-1576442464/android.hmssdk_flutter.androidTest.iml -example/android/.idea/modules/-1640452365/android.permission_handler_android.androidTest.iml -example/android/.idea/modules/-1701833509/android.qr_code_scanner.androidTest.iml -example/android/.idea/modules/-257583320/android.firebase_crashlytics.androidTest.iml -example/android/.idea/modules/-487299342/android.flutter_foreground_task.androidTest.iml -example/android/.idea/modules/-533816108/android.shared_preferences_android.androidTest.iml -example/android/.idea/modules/-596433577/android.image_gallery_saver.androidTest.iml -example/android/.idea/modules/-676922960/android.firebase_analytics.androidTest.iml -example/android/.idea/modules/-788473241/android.package_info_plus.androidTest.iml -example/android/.idea/modules/-808683992/android.file_picker.androidTest.iml -example/android/.idea/modules/1185687231/android.uni_links.androidTest.iml -example/android/.idea/modules/1953350377/android.firebase_performance.androidTest.iml -example/android/.idea/modules/450572045/android.url_launcher_android.androidTest.iml -example/android/.idea/modules/572881098/android.firebase_dynamic_links.androidTest.iml -example/android/.idea/modules/70239017/android.path_provider_android.androidTest.iml -example/android/.idea/modules/759568764/android.wakelock.androidTest.iml -example/android/.idea/modules/99196934/android.share_plus.androidTest.iml -example/android/.idea/modules/app/android.app.androidTest.iml -example/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java -example/ios/.symlinks/plugins/file_picker -example/ios/.symlinks/plugins/firebase_analytics -example/ios/.symlinks/plugins/firebase_core -example/ios/.symlinks/plugins/firebase_crashlytics -example/ios/.symlinks/plugins/firebase_dynamic_links -example/ios/.symlinks/plugins/firebase_performance -example/ios/.symlinks/plugins/flutter_foreground_task -example/ios/.symlinks/plugins/hmssdk_flutter -example/ios/.symlinks/plugins/image_gallery_saver -example/ios/.symlinks/plugins/package_info_plus -example/ios/.symlinks/plugins/path_provider_foundation -example/ios/.symlinks/plugins/permission_handler_apple -example/ios/.symlinks/plugins/qr_code_scanner -example/ios/.symlinks/plugins/share_plus -example/ios/.symlinks/plugins/shared_preferences_foundation -example/ios/.symlinks/plugins/uni_links -example/ios/.symlinks/plugins/url_launcher_ios -example/ios/.symlinks/plugins/wakelock -example/ios/Flutter/Flutter.podspec -example/ios/Flutter/flutter_export_environment.sh -example/ios/Flutter/Generated.xcconfig -example/ios/Pods/Manifest.lock -example/ios/Pods/DKImagePickerController/LICENSE -example/ios/Pods/DKImagePickerController/README.md -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/DKImageBaseManager.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/DKImageDataManager.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/DKImageGroupDataManager.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/Model/DKAsset+Export.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/Model/DKAsset+Fetch.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/Model/DKAsset.swift -example/ios/Pods/DKImagePickerController/Sources/DKImageDataManager/Model/DKAssetGroup.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/DKImageAssetExporter.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/DKImageExtensionController.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/DKImagePickerController.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/DKImagePickerControllerBaseUIDelegate.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/DKPopoverViewController.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/DKImagePickerControllerResource.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/ar.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Base.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/da.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/de.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/en.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/es.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/fr.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/hu.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/camera.imageset/camera.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/camera.imageset/camera@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/camera.imageset/camera@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/camera.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/checked_background.imageset/checked_background.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/checked_background.imageset/checked_background@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/checked_background.imageset/checked_background@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/checked_background.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/empty_album.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/empty_album.imageset/empty_album.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_back_arrow.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_back_arrow.imageset/photoGallery_back_arrow.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_back_arrow.imageset/photoGallery_back_arrow@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_back_arrow.imageset/photoGallery_back_arrow@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_checked_image.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_checked_image.imageset/photoGallery_checked_image.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_checked_image.imageset/photoGallery_checked_image@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_checked_image.imageset/photoGallery_checked_image@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_unchecked_image.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_unchecked_image.imageset/photoGallery_unchecked_image.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_unchecked_image.imageset/photoGallery_unchecked_image@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/photoGallery_unchecked_image.imageset/photoGallery_unchecked_image@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/tick_blue.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/tick_blue.imageset/tick_blue.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/tick_blue.imageset/tick_blue@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/tick_blue.imageset/tick_blue@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/video_camera.imageset/Contents.json -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/video_camera.imageset/video_camera.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/video_camera.imageset/video_camera@2x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/Images.xcassets/video_camera.imageset/video_camera@3x.png -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/it.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/ja.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/ko.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/nb-NO.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/nl.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/pt_BR.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/ru.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/tr.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/ur.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/vi.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/zh-Hans.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/Resource/Resources/zh-Hant.lproj/DKImagePickerController.strings -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/DKAssetGroupDetailVC.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/DKAssetGroupGridLayout.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/DKAssetGroupListVC.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/DKPermissionView.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/Cell/DKAssetGroupCellItemProtocol.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/Cell/DKAssetGroupDetailBaseCell.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/Cell/DKAssetGroupDetailCameraCell.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/Cell/DKAssetGroupDetailImageCell.swift -example/ios/Pods/DKImagePickerController/Sources/DKImagePickerController/View/Cell/DKAssetGroupDetailVideoCell.swift -example/ios/Pods/DKImagePickerController/Sources/Extensions/DKImageExtensionGallery.swift -example/ios/Pods/DKPhotoGallery/LICENSE -example/ios/Pods/DKPhotoGallery/README.md -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoGallery.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoGalleryContentVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoGalleryItem.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoGalleryScrollView.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoIncrementalIndicator.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/DKPhotoPreviewFactory.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/DKPhotoBasePreviewVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/DKPhotoContentAnimationView.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/DKPhotoProgressIndicator.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/DKPhotoProgressIndicatorProtocol.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/ImagePreview/DKPhotoBaseImagePreviewVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/ImagePreview/DKPhotoImageDownloader.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/ImagePreview/DKPhotoImagePreviewVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/ImagePreview/DKPhotoImageUtility.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/ImagePreview/DKPhotoImageView.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/PDFPreview/DKPDFView.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/PDFPreview/DKPhotoPDFPreviewVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/PlayerPreview/DKPhotoPlayerPreviewVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/PlayerPreview/DKPlayerView.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/QRCode/DKPhotoQRCodeResultVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Preview/QRCode/DKPhotoWebVC.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/DKPhotoGalleryResource.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Base.lproj/DKPhotoGallery.strings -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/en.lproj/DKPhotoGallery.strings -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ImageFailed.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ImageFailed.imageset/ImageFailed.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ImageFailed.imageset/ImageFailed@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ImageFailed.imageset/ImageFailed@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPause.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPause.imageset/ToolbarPause.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPause.imageset/ToolbarPause@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPause.imageset/ToolbarPause@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPlay.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPlay.imageset/ToolbarPlay.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPlay.imageset/ToolbarPlay@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/ToolbarPlay.imageset/ToolbarPlay@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoClose.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoClose.imageset/VideoClose.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoClose.imageset/VideoClose@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoClose.imageset/VideoClose@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlay.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlay.imageset/VideoPlay.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlay.imageset/VideoPlay@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlay.imageset/VideoPlay@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlayControlBackground.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlayControlBackground.imageset/VideoPlayControlBackground.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlayControlBackground.imageset/VideoPlayControlBackground@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoPlayControlBackground.imageset/VideoPlayControlBackground@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoTimeSlider.imageset/Contents.json -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoTimeSlider.imageset/VideoTimeSlider.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoTimeSlider.imageset/VideoTimeSlider@2x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/Images.xcassets/VideoTimeSlider.imageset/VideoTimeSlider@3x.png -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Resource/Resources/zh-Hans.lproj/DKPhotoGallery.strings -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Transition/DKPhotoGalleryInteractiveTransition.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Transition/DKPhotoGalleryTransitionController.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Transition/DKPhotoGalleryTransitionDismiss.swift -example/ios/Pods/DKPhotoGallery/DKPhotoGallery/Transition/DKPhotoGalleryTransitionPresent.swift -example/ios/Pods/Firebase/LICENSE -example/ios/Pods/Firebase/README.md -example/ios/Pods/Firebase/CoreOnly/Sources/Firebase.h -example/ios/Pods/Firebase/CoreOnly/Sources/module.modulemap -example/ios/Pods/FirebaseABTesting/LICENSE -example/ios/Pods/FirebaseABTesting/README.md -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/ABTConditionalUserPropertyController.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/ABTConditionalUserPropertyController.m -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/ABTConstants.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/ABTExperimentPayload.m -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/FIRExperimentController.m -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/FIRLifecycleEvents.m -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/Private/ABTExperimentPayload.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/Private/FirebaseABTestingInternal.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/Public/FirebaseABTesting/FirebaseABTesting.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/Public/FirebaseABTesting/FIRExperimentController.h -example/ios/Pods/FirebaseABTesting/FirebaseABTesting/Sources/Public/FirebaseABTesting/FIRLifecycleEvents.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseABTesting/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseABTesting/Interop/Analytics/Public/FIRAnalyticsInterop.h -example/ios/Pods/FirebaseABTesting/Interop/Analytics/Public/FIRAnalyticsInteropListener.h -example/ios/Pods/FirebaseABTesting/Interop/Analytics/Public/FIRInteropEventNames.h -example/ios/Pods/FirebaseABTesting/Interop/Analytics/Public/FIRInteropParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_armv7/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_i386_x86_64-simulator/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/ios-arm64_x86_64-maccatalyst/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/macos-arm64_x86_64/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/FirebaseAnalytics -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Info.plist -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+AppDelegate.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+Consent.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics+OnDevice.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FirebaseAnalytics-umbrella.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FirebaseAnalytics.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIREventNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRParameterNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Headers/FIRUserPropertyNames.h -example/ios/Pods/FirebaseAnalytics/Frameworks/FirebaseAnalytics.xcframework/tvos-arm64_x86_64-simulator/FirebaseAnalytics.framework/Modules/module.modulemap -example/ios/Pods/FirebaseCore/LICENSE -example/ios/Pods/FirebaseCore/README.md -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseCore/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRAnalyticsConfiguration.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRAnalyticsConfiguration.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRApp.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRBundleUtil.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRBundleUtil.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRComponent.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRComponentContainer.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRComponentContainerInternal.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRComponentType.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRConfiguration.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRConfigurationInternal.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRDependency.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRFirebaseUserAgent.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRFirebaseUserAgent.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRHeartbeatLogger.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRLogger.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIROptions.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/FIRVersion.m -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRApp.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRConfiguration.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FirebaseCore.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRLoggerLevel.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIROptions.h -example/ios/Pods/FirebaseCore/FirebaseCore/Sources/Public/FirebaseCore/FIRVersion.h -example/ios/Pods/FirebaseCoreExtension/LICENSE -example/ios/Pods/FirebaseCoreExtension/README.md -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/dummy.m -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseCoreExtension/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseCoreInternal/LICENSE -example/ios/Pods/FirebaseCoreInternal/README.md -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatController.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/_ObjC_HeartbeatsPayload.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/Heartbeat.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatController.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatLoggingTestUtils.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsBundle.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatsPayload.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/HeartbeatStorage.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/Storage.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/StorageFactory.swift -example/ios/Pods/FirebaseCoreInternal/FirebaseCore/Internal/Sources/HeartbeatLogging/WeakContainer.swift -example/ios/Pods/FirebaseCrashlytics/README.md -example/ios/Pods/FirebaseCrashlytics/run -example/ios/Pods/FirebaseCrashlytics/upload-symbols -example/ios/Pods/FirebaseCrashlytics/Crashlytics/LICENSE -example/ios/Pods/FirebaseCrashlytics/Crashlytics/README.md -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRCrashlytics.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRCrashlyticsReport.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRExceptionModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRStackFrame.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSApplication.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSApplication.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSBinaryImage.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSBinaryImage.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSContext.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSContext.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSCrashedMarkerFile.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSCrashedMarkerFile.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSGlobals.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSHost.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSHost.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSProcess.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSProcess.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSUserLogging.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Components/FIRCLSUserLogging.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSAnalyticsManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSAnalyticsManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSContextManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSContextManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSExistingReportManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSExistingReportManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSManagerData.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSManagerData.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSMetricKitManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSMetricKitManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSNotificationManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSNotificationManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportManager_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportUploader.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportUploader.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Controllers/FIRCLSReportUploader_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/DataCollection/FIRCLSDataCollectionArbiter.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/DataCollection/FIRCLSDataCollectionArbiter.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/DataCollection/FIRCLSDataCollectionToken.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/DataCollection/FIRCLSDataCollectionToken.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRCLSUserDefaults/FIRCLSUserDefaults.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRCLSUserDefaults/FIRCLSUserDefaults.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/FIRCLSUserDefaults/FIRCLSUserDefaults_private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSException.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSException.mm -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSHandler.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSHandler.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSMachException.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSMachException.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSSignal.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Handlers/FIRCLSSignal.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSAllocate.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSAllocate.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSCallStackTree.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSCallStackTree.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSDefines.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSFeatures.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSFile.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSFile.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSInternalLogging.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSInternalLogging.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSLogger.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSLogger.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSProfiling.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSProfiling.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSThreadState.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSThreadState.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSUtility.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Helpers/FIRCLSUtility.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSExecutionIdentifierModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSExecutionIdentifierModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSFileManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSFileManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSInstallIdentifierModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSInstallIdentifierModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSInternalReport.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSInternalReport.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSLaunchMarkerModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSLaunchMarkerModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSOnDemandModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSOnDemandModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSSettings.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSSettings.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSSymbolResolver.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/FIRCLSSymbolResolver.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordApplication.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordApplication.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordBase.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordBase.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordHost.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordHost.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordIdentity.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSRecordIdentity.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSReportAdapter.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSReportAdapter.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Models/Record/FIRCLSReportAdapter_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/FIRCLSAsyncOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/FIRCLSAsyncOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/FIRCLSAsyncOperation_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Reports/FIRCLSProcessReportOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Reports/FIRCLSProcessReportOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSDemangleOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSDemangleOperation.mm -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSSerializeSymbolicatedFramesOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSSerializeSymbolicatedFramesOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSSymbolicationOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSSymbolicationOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSThreadArrayOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Operations/Symbolication/FIRCLSThreadArrayOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Private/FIRCLSExistingReportManager_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Private/FIRCLSOnDemandModel_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Private/FIRCrashlyticsReport_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Private/FIRExceptionModel_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Private/FIRStackFrame_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Public/FirebaseCrashlytics/FIRCrashlytics.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Public/FirebaseCrashlytics/FIRCrashlyticsReport.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Public/FirebaseCrashlytics/FirebaseCrashlytics.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Public/FirebaseCrashlytics/FIRExceptionModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Public/FirebaseCrashlytics/FIRStackFrame.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/FIRCLSSettingsManager.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/FIRCLSSettingsManager.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Models/FIRCLSApplicationIdentifierModel.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Models/FIRCLSApplicationIdentifierModel.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Operations/FIRCLSDownloadAndSaveSettingsOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Operations/FIRCLSDownloadAndSaveSettingsOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Operations/FIRCLSNetworkOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Settings/Operations/FIRCLSNetworkOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind_arch.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind_arm.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind_x86.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/FIRCLSUnwind_x86.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Compact/FIRCLSCompactUnwind.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Compact/FIRCLSCompactUnwind.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Compact/FIRCLSCompactUnwind_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDataParsing.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDataParsing.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDwarfExpressionMachine.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDwarfExpressionMachine.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDwarfUnwind.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDwarfUnwind.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Crashlytics/Unwind/Dwarf/FIRCLSDwarfUnwindRegisters.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Protogen/nanopb/crashlytics.nanopb.c -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Protogen/nanopb/crashlytics.nanopb.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSByteUtility.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSByteUtility.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSConstants.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSConstants.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSFABHost.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSFABHost.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSUUID.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSUUID.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSCodeMapping.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSCodeMapping.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSdSYM.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSdSYM.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachO.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachO.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOBinary.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOBinary.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOSlice.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSMachO/FIRCLSMachOSlice.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSFABNetworkClient.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSFABNetworkClient.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSMultipartMimeStreamEncoder.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSMultipartMimeStreamEncoder.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSNetworkResponseHandler.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSNetworkResponseHandler.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSURLBuilder.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSNetworking/FIRCLSURLBuilder.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSCompoundOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSCompoundOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSFABAsyncOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSFABAsyncOperation.m -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSFABAsyncOperation_Private.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/Shared/FIRCLSOperation/FIRCLSOperation.h -example/ios/Pods/FirebaseCrashlytics/Crashlytics/third_party/libunwind/dwarf.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseCrashlytics/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseCrashlytics/FirebaseInstallations/Source/Library/Private/FirebaseInstallationsInternal.h -example/ios/Pods/FirebaseCrashlytics/Interop/Analytics/Public/FIRAnalyticsInterop.h -example/ios/Pods/FirebaseCrashlytics/Interop/Analytics/Public/FIRAnalyticsInteropListener.h -example/ios/Pods/FirebaseCrashlytics/Interop/Analytics/Public/FIRInteropEventNames.h -example/ios/Pods/FirebaseCrashlytics/Interop/Analytics/Public/FIRInteropParameterNames.h -example/ios/Pods/FirebaseDynamicLinks/LICENSE -example/ios/Pods/FirebaseDynamicLinks/README.md -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLDefaultRetrievalProcessV2.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLDefaultRetrievalProcessV2.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLJavaScriptExecutor.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLJavaScriptExecutor.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessFactory.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessFactory.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessProtocols.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessResult+Private.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessResult.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLRetrievalProcessResult.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLScionLogging.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDLScionLogging.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLink+Private.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLink.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinkNetworking+Private.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinkNetworking.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinkNetworking.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinks+FirstParty.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinks+Private.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FIRDynamicLinks.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FDLURLComponents/FDLURLComponents+Private.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FDLURLComponents/FDLURLComponents.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FDLURLComponents/FIRDynamicLinkComponentsKeyProvider.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/FDLURLComponents/FIRDynamicLinkComponentsKeyProvider.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/GINInvocation/GINArgument.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/GINInvocation/GINArgument.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/GINInvocation/GINInvocation.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/GINInvocation/GINInvocation.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Logging/FDLLogging.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Logging/FDLLogging.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FDLURLComponents.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLink.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinks.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FIRDynamicLinksCommon.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Public/FirebaseDynamicLinks/FirebaseDynamicLinks.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Utilities/FDLDeviceHeuristicsHelper.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Utilities/FDLDeviceHeuristicsHelper.m -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Utilities/FDLUtilities.h -example/ios/Pods/FirebaseDynamicLinks/FirebaseDynamicLinks/Sources/Utilities/FDLUtilities.m -example/ios/Pods/FirebaseDynamicLinks/Interop/Analytics/Public/FIRAnalyticsInterop.h -example/ios/Pods/FirebaseDynamicLinks/Interop/Analytics/Public/FIRAnalyticsInteropListener.h -example/ios/Pods/FirebaseDynamicLinks/Interop/Analytics/Public/FIRInteropEventNames.h -example/ios/Pods/FirebaseDynamicLinks/Interop/Analytics/Public/FIRInteropParameterNames.h -example/ios/Pods/FirebaseInstallations/LICENSE -example/ios/Pods/FirebaseInstallations/README.md -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseInstallations/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallations.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsAuthTokenResult.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsAuthTokenResultInternal.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsItem.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsItem.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsLogger.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/FIRInstallationsLogger.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Errors/FIRInstallationsErrorUtil.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Errors/FIRInstallationsErrorUtil.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Errors/FIRInstallationsHTTPError.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Errors/FIRInstallationsHTTPError.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/IIDMigration/FIRInstallationsIIDStore.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/IIDMigration/FIRInstallationsIIDStore.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/IIDMigration/FIRInstallationsIIDTokenStore.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/IIDMigration/FIRInstallationsIIDTokenStore.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsAPI/FIRInstallationsAPIService.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsAPI/FIRInstallationsAPIService.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsAPI/FIRInstallationsItem+RegisterInstallationAPI.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsAPI/FIRInstallationsItem+RegisterInstallationAPI.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRCurrentDateProvider.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRCurrentDateProvider.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsBackoffController.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsBackoffController.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsIDController.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsIDController.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsSingleOperationPromiseCache.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsSingleOperationPromiseCache.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsIDController/FIRInstallationsStatus.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStore.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStore.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStoredAuthToken.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStoredAuthToken.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStoredItem.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/InstallationsStore/FIRInstallationsStoredItem.m -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Private/FirebaseInstallationsInternal.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Public/FirebaseInstallations/FirebaseInstallations.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Public/FirebaseInstallations/FIRInstallations.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Public/FirebaseInstallations/FIRInstallationsAuthTokenResult.h -example/ios/Pods/FirebaseInstallations/FirebaseInstallations/Source/Library/Public/FirebaseInstallations/FIRInstallationsErrors.h -example/ios/Pods/FirebasePerformance/LICENSE -example/ios/Pods/FirebasePerformance/README.md -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebasePerformance/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebasePerformance/FirebaseInstallations/Source/Library/Private/FirebaseInstallationsInternal.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FIRPerformance+Internal.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FIRPerformance.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FIRPerformance_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRClient+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRClient.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRClient.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRConfiguration.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRConfiguration.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRConsoleLogger.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRConsoleLogger.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRDataUtils.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRDataUtils.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRNanoPbUtils.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRNanoPbUtils.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRURLFilter.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRURLFilter.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/FPRURLFilter_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRAppActivityTracker.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRAppActivityTracker.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRScreenTraceTracker+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRScreenTraceTracker.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRScreenTraceTracker.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRSessionDetails.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRSessionDetails.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRSessionManager+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRSessionManager.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRSessionManager.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRTraceBackgroundActivityTracker.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/AppActivity/FPRTraceBackgroundActivityTracker.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRConsoleURLGenerator.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRConsoleURLGenerator.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRConstants.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRConstants.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRDate.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRDiagnostics.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRDiagnostics.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRDiagnostics_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRPerfDate.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Common/FPRPerfDate.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRConfigurations+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRConfigurations.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRConfigurations.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRRemoteConfigFlags+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRRemoteConfigFlags.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Configurations/FPRRemoteConfigFlags.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/FPRGaugeCollector.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/FPRGaugeManager+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/FPRGaugeManager.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/FPRGaugeManager.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/CPU/FPRCPUGaugeCollector+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/CPU/FPRCPUGaugeCollector.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/CPU/FPRCPUGaugeCollector.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/CPU/FPRCPUGaugeData.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/CPU/FPRCPUGaugeData.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/Memory/FPRMemoryGaugeCollector+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/Memory/FPRMemoryGaugeCollector.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/Memory/FPRMemoryGaugeCollector.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/Memory/FPRMemoryGaugeData.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Gauges/Memory/FPRMemoryGaugeData.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FIRHTTPMetric+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FIRHTTPMetric.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRClassInstrumentor.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRClassInstrumentor.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRClassInstrumentor_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRInstrument_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRInstrumentation.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRInstrumentation.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRNetworkTrace+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRNetworkTrace.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRNetworkTrace.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRObjectInstrumentor.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRObjectInstrumentor.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRProxyObjectHelper.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRProxyObjectHelper.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRSelectorInstrumentor.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/FPRSelectorInstrumentor.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNetworkInstrumentHelpers.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNetworkInstrumentHelpers.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLConnectionInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLConnectionInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLConnectionInstrument_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLSessionInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLSessionInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/FPRNSURLSessionInstrument_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLConnectionDelegate.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLConnectionDelegate.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLConnectionDelegateInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLConnectionDelegateInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLSessionDelegate.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLSessionDelegate.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLSessionDelegateInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/Network/Delegates/FPRNSURLSessionDelegateInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/UIKit/FPRUIViewControllerInstrument.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Instrumentation/UIKit/FPRUIViewControllerInstrument.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTEvent.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTEvent.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogger.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogger.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogger_Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogSampler+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogSampler.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTLogSampler.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTRateLimiter+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTRateLimiter.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Loggers/FPRGDTRateLimiter.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Protogen/nanopb/perf_metric.nanopb.c -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Protogen/nanopb/perf_metric.nanopb.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Public/FirebasePerformance/FirebasePerformance.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Public/FirebasePerformance/FIRHTTPMetric.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Public/FirebasePerformance/FIRPerformance.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Public/FirebasePerformance/FIRPerformanceAttributable.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Public/FirebasePerformance/FIRTrace.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Timer/FIRTrace+Internal.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Timer/FIRTrace+Private.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Timer/FIRTrace.m -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Timer/FPRCounterList.h -example/ios/Pods/FirebasePerformance/FirebasePerformance/Sources/Timer/FPRCounterList.m -example/ios/Pods/FirebasePerformance/FirebaseRemoteConfig/Sources/Private/FIRRemoteConfig_Private.h -example/ios/Pods/FirebasePerformance/FirebaseRemoteConfig/Sources/Private/RCNConfigFetch.h -example/ios/Pods/FirebasePerformance/FirebaseRemoteConfig/Sources/Private/RCNConfigSettings.h -example/ios/Pods/FirebaseRemoteConfig/LICENSE -example/ios/Pods/FirebaseRemoteConfig/README.md -example/ios/Pods/FirebaseRemoteConfig/FirebaseABTesting/Sources/Private/ABTExperimentPayload.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseABTesting/Sources/Private/FirebaseABTestingInternal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRAppInternal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRComponent.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRComponentContainer.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRComponentType.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRDependency.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FirebaseCoreInternal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRHeartbeatLogger.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRLibrary.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIRLogger.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseCore/Extension/FIROptionsInternal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseInstallations/Source/Library/Private/FirebaseInstallationsInternal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/FIRConfigValue.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/FIRRemoteConfig.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/FIRRemoteConfigComponent.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/FIRRemoteConfigComponent.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/FIRRemoteConfigUpdate.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigConstants.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigContent.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigContent.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigDBManager.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigDBManager.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigDefines.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigExperiment.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigExperiment.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigFetch.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigRealtime.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigRealtime.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigSettings.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConfigValue_Internal.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNConstants3P.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNDevice.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNDevice.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNPersonalization.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNPersonalization.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNUserDefaultsManager.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/RCNUserDefaultsManager.m -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/Private/FIRRemoteConfig_Private.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/Private/RCNConfigFetch.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/Private/RCNConfigSettings.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/Public/FirebaseRemoteConfig/FirebaseRemoteConfig.h -example/ios/Pods/FirebaseRemoteConfig/FirebaseRemoteConfig/Sources/Public/FirebaseRemoteConfig/FIRRemoteConfig.h -example/ios/Pods/FirebaseRemoteConfig/Interop/Analytics/Public/FIRAnalyticsInterop.h -example/ios/Pods/FirebaseRemoteConfig/Interop/Analytics/Public/FIRAnalyticsInteropListener.h -example/ios/Pods/FirebaseRemoteConfig/Interop/Analytics/Public/FIRInteropEventNames.h -example/ios/Pods/FirebaseRemoteConfig/Interop/Analytics/Public/FIRInteropParameterNames.h -example/ios/Pods/FirebaseSessions/LICENSE -example/ios/Pods/FirebaseSessions/README.md -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/ApplicationInfo.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/EventGDTLogger.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/FirebaseSessions.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/FirebaseSessionsError.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/GoogleDataTransport+GoogleDataTransportProtocol.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Installations+InstallationsProtocol.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Logger.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/NetworkInfo.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/SessionCoordinator.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/SessionGenerator.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/SessionInitiator.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/SessionStartEvent.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Time.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Development/DevEventConsoleLogger.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Development/NanoPB+CustomStringConvertible.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Public/SessionsDependencies.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Public/SessionsProvider.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Public/SessionsSubscriber.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/LocalOverrideSettings.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/RemoteSettings.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SDKDefaultSettings.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SessionsSettings.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SettingsCacheClient.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SettingsDownloadClient.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SettingsProtocol.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/Sources/Settings/SettingsProvider.swift -example/ios/Pods/FirebaseSessions/FirebaseSessions/SourcesObjC/NanoPB/FIRSESNanoPBHelpers.h -example/ios/Pods/FirebaseSessions/FirebaseSessions/SourcesObjC/NanoPB/FIRSESNanoPBHelpers.m -example/ios/Pods/FirebaseSessions/FirebaseSessions/SourcesObjC/Protogen/nanopb/sessions.nanopb.c -example/ios/Pods/FirebaseSessions/FirebaseSessions/SourcesObjC/Protogen/nanopb/sessions.nanopb.h -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_armv7/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/macos-arm64_x86_64/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/macos-arm64_x86_64/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/macos-arm64_x86_64/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurement.framework/GoogleAppMeasurement -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurement.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurement.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurement.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_armv7/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_armv7/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_armv7/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_i386_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/ios-arm64_x86_64-maccatalyst/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/macos-arm64_x86_64/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/macos-arm64_x86_64/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/macos-arm64_x86_64/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/GoogleAppMeasurementIdentitySupport -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/Info.plist -example/ios/Pods/GoogleAppMeasurement/Frameworks/GoogleAppMeasurementIdentitySupport.xcframework/tvos-arm64_x86_64-simulator/GoogleAppMeasurementIdentitySupport.framework/Modules/module.modulemap -example/ios/Pods/GoogleDataTransport/LICENSE -example/ios/Pods/GoogleDataTransport/README.md -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCCTCompressionHelper.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCCTNanopbHelpers.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCCTUploader.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCCTUploadOperation.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCOREvent+GDTCCTSupport.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCOREvent+GDTMetricsSupport.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/GDTCORMetrics+GDTCCTSupport.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTCompressionHelper.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTNanopbHelpers.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTUploader.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCCTUploadOperation.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCOREvent+GDTMetricsSupport.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Private/GDTCORMetrics+GDTCCTSupport.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/client_metrics.nanopb.c -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/client_metrics.nanopb.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Public/GDTCOREvent+GDTCCTSupport.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORAssert.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORClock.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORConsoleLogger.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORDirectorySizeTracker.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCOREndpoints.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCOREvent.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORFlatFileStorage+Promises.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORFlatFileStorage.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORLifecycle.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORLogSourceMetrics.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORMetrics.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORMetricsController.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORMetricsMetadata.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORPlatform.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORReachability.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORRegistrar.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORStorageEventSelector.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORStorageMetadata.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORTransformer.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORTransport.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORUploadBatch.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/GDTCORUploadCoordinator.m -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORAssert.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORDirectorySizeTracker.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCOREventDropReason.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORLifecycle.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORMetricsControllerProtocol.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORPlatform.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORReachability.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORRegistrar.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORStorageEventSelector.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORStorageProtocol.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORStorageSizeBytes.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Internal/GDTCORUploader.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCOREndpoints_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCOREvent_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORFlatFileStorage+Promises.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORFlatFileStorage.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORLogSourceMetrics.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORMetrics.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORMetricsController.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORMetricsMetadata.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORReachability_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORRegistrar_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORStorageMetadata.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransformer.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransformer_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORTransport_Private.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORUploadBatch.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Private/GDTCORUploadCoordinator.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORClock.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORConsoleLogger.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREndpoints.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREvent.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREventDataObject.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCOREventTransformer.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORTargets.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GDTCORTransport.h -example/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCORLibrary/Public/GoogleDataTransport/GoogleDataTransport.h -example/ios/Pods/GoogleUtilities/LICENSE -example/ios/Pods/GoogleUtilities/README.md -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/GULAppDelegateSwizzler.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/GULSceneDelegateSwizzler.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Internal/GULAppDelegateSwizzler_Private.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Internal/GULSceneDelegateSwizzler_Private.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULAppDelegateSwizzler.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULApplication.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/AppDelegateSwizzler/Public/GoogleUtilities/GULSceneDelegateSwizzler.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Common/GULLoggerCodes.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/GULHeartbeatDateStorage.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/GULHeartbeatDateStorageUserDefaults.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/GULSecureCoding.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/NetworkInfo/GULNetworkInfo.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULAppEnvironmentUtil.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULHeartbeatDateStorable.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULHeartbeatDateStorage.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULHeartbeatDateStorageUserDefaults.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULKeychainStorage.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULKeychainUtils.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULNetworkInfo.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULSecureCoding.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/GULURLSessionDataResponse.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/Public/GoogleUtilities/NSURLSession+GULPromises.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/SecureStorage/GULKeychainStorage.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/SecureStorage/GULKeychainUtils.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/third_party/GULAppEnvironmentUtil.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/URLSessionPromiseWrapper/GULURLSessionDataResponse.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Environment/URLSessionPromiseWrapper/NSURLSession+GULPromises.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/ISASwizzler/GULObjectSwizzler+Internal.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/ISASwizzler/GULObjectSwizzler.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/ISASwizzler/GULSwizzledObject.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/ISASwizzler/Public/GoogleUtilities/GULObjectSwizzler.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/ISASwizzler/Public/GoogleUtilities/GULSwizzledObject.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Logger/GULLogger.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Logger/Public/GoogleUtilities/GULLogger.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Logger/Public/GoogleUtilities/GULLoggerLevel.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/GULSwizzler.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/Public/GoogleUtilities/GULOriginalIMPConvenienceMacros.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/MethodSwizzler/Public/GoogleUtilities/GULSwizzler.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/GULMutableDictionary.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetwork.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetworkConstants.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetworkInternal.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/GULNetworkURLSession.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULMutableDictionary.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULNetwork.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkConstants.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkLoggerProtocol.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkMessageCode.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Network/Public/GoogleUtilities/GULNetworkURLSession.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/NSData+zlib/GULNSData+zlib.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/NSData+zlib/Public/GoogleUtilities/GULNSData+zlib.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Reachability/GULReachabilityChecker+Internal.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Reachability/GULReachabilityChecker.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/Reachability/GULReachabilityMessageCode.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/Reachability/Public/GoogleUtilities/GULReachabilityChecker.h -example/ios/Pods/GoogleUtilities/GoogleUtilities/UserDefaults/GULUserDefaults.m -example/ios/Pods/GoogleUtilities/GoogleUtilities/UserDefaults/Public/GoogleUtilities/GULUserDefaults.h -example/ios/Pods/Headers/Private/Firebase/Firebase.h -example/ios/Pods/Headers/Public/Firebase/Firebase.h -example/ios/Pods/HMSAnalyticsSDK/LICENSE -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/Info.plist -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/HMSAnalyticsSDK -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Info.plist -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEvent.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEventLevel.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEventTransport.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsSDK-Swift.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsSDK.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsService.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Headers/HMSDefaultAnalyticsService.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios.swiftinterface-e -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/HMSAnalyticsSDK -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Info.plist -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEvent.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEventLevel.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsEventTransport.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsSDK-Swift.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsSDK.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSAnalyticsService.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Headers/HMSDefaultAnalyticsService.h -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64.swiftdoc -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64.swiftinterface -example/ios/Pods/HMSAnalyticsSDK/HMSAnalyticsSDK.xcframework/ios-arm64_x86_64-simulator/HMSAnalyticsSDK.framework/Modules/HMSAnalyticsSDK.swiftmodule/x86_64.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/LICENSE -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/Info.plist -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/HMSBroadcastExtensionSDK -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Info.plist -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Headers/HMSBroadcastExtensionSDK-Swift.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Headers/HMSBroadcastExtensionSDK.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Headers/HMSScreenRenderer.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/HMSBroadcastExtensionSDK -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Info.plist -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Headers/HMSBroadcastExtensionSDK-Swift.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Headers/HMSBroadcastExtensionSDK.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Headers/HMSScreenRenderer.h -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64.swiftdoc -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64.swiftinterface -example/ios/Pods/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.xcframework/ios-arm64_x86_64-simulator/HMSBroadcastExtensionSDK.framework/Modules/HMSBroadcastExtensionSDK.swiftmodule/x86_64.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/LICENSE -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/Info.plist -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/HMSHLSPlayerSDK -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Info.plist -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlaybackError.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlayerSDK-Swift.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlayerSDK.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/HMSHLSPlayerSDK -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Info.plist -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlaybackError.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlayerSDK-Swift.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Headers/HMSHLSPlayerSDK.h -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64.swiftdoc -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64.swiftinterface -example/ios/Pods/HMSHLSPlayerSDK/HMSHLSPlayerSDK.xcframework/ios-arm64_x86_64-simulator/HMSHLSPlayerSDK.framework/Modules/HMSHLSPlayerSDK.swiftmodule/x86_64.swiftinterface-e -example/ios/Pods/HMSSDK/LICENSE -example/ios/Pods/HMSSDK/HMSSDK.xcframework/Info.plist -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/HMSSDK -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Info.plist -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSCommonDefs.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSErrorCode.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSLocalAudioStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSLocalAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSLocalVideoStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSLocalVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSQualityLimitationReasons.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSReceiverStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRemoteAudioStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRemoteAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRemoteVideoStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRemoteVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRTCStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSRTCStatsReport.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSScreenAudioBufferReceiver.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSScreenVideoBufferReceiver.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSSDK-Swift.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSSDK.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSSenderStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSTrackEnums.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSTrackSettings.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSVideoPlugin.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Headers/HMSVideoView.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios.swiftinterface-e -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/HMSSDK -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Info.plist -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/_CodeSignature/CodeResources -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSCommonDefs.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSErrorCode.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSLocalAudioStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSLocalAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSLocalVideoStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSLocalVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSQualityLimitationReasons.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSReceiverStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRemoteAudioStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRemoteAudioTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRemoteVideoStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRemoteVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRTCStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSRTCStatsReport.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSScreenAudioBufferReceiver.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSScreenVideoBufferReceiver.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSSDK-Swift.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSSDK.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSSenderStats.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSTrackEnums.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSTrackSettings.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSVideoPlugin.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSVideoTrack.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Headers/HMSVideoView.h -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/module.modulemap -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/arm64.swiftinterface-e -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface-e -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64.swiftdoc -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64.swiftinterface -example/ios/Pods/HMSSDK/HMSSDK.xcframework/ios-arm64_x86_64-simulator/HMSSDK.framework/Modules/HMSSDK.swiftmodule/x86_64.swiftinterface-e -example/ios/Pods/HMSWebRTC/LICENSE.md -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/Info.plist -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Info.plist -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/WebRTC -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCAudioSession.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCAudioSessionConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCAudioSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCAudioTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCallbackLogger.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCameraPreviewView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCameraVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCertificate.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCodecSpecificInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCodecSpecificInfoH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCryptoOptions.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCCVPixelBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDataChannel.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDataChannelConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDefaultVideoDecoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDefaultVideoEncoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDispatcher.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCDtmfSender.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCEAGLVideoView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCEncodedImage.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCFieldTrials.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCFileLogger.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCFileVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCH264ProfileLevelId.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCIceCandidate.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCIceCandidateErrorEvent.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCIceServer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCLegacyStatsReport.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCLogging.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMacros.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMediaConstraints.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMediaSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMediaStream.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMediaStreamTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMetrics.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMetricsSampleInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMTLVideoView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMutableI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCMutableYUVPlanarBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCNativeI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCNativeMutableI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCNetworkMonitor.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCPeerConnection.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCPeerConnectionFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCPeerConnectionFactoryOptions.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtcpParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpCodecParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpEncodingParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpHeaderExtension.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpReceiver.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpSender.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCRtpTransceiver.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCSessionDescription.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCSSLAdapter.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCSSLCertificateVerifier.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCStatisticsReport.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCTracing.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoCodecConstants.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoCodecInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoder.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderAV1.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderFactoryH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderVP8.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoDecoderVP9.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoder.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderAV1.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderFactoryH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderFactorySimulcast.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderQpThresholds.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderSettings.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderSimulcast.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderVP8.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoEncoderVP9.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoFrame.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoFrameBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoRenderer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCVideoViewShading.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/RTCYUVPlanarBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/UIDevice+RTCDevice.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Headers/WebRTC.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_armv7/WebRTC.framework/Modules/module.modulemap -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Info.plist -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/WebRTC -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCAudioSession.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCAudioSessionConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCAudioSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCAudioTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCallbackLogger.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCameraPreviewView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCameraVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCertificate.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCodecSpecificInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCodecSpecificInfoH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCryptoOptions.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCCVPixelBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDataChannel.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDataChannelConfiguration.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDefaultVideoDecoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDefaultVideoEncoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDispatcher.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCDtmfSender.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCEAGLVideoView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCEncodedImage.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCFieldTrials.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCFileLogger.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCFileVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCH264ProfileLevelId.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCIceCandidate.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCIceCandidateErrorEvent.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCIceServer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCLegacyStatsReport.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCLogging.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMacros.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMediaConstraints.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMediaSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMediaStream.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMediaStreamTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMetrics.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMetricsSampleInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMTLVideoView.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMutableI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCMutableYUVPlanarBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCNativeI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCNativeMutableI420Buffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCNetworkMonitor.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCPeerConnection.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCPeerConnectionFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCPeerConnectionFactoryOptions.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtcpParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpCodecParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpEncodingParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpHeaderExtension.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpParameters.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpReceiver.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpSender.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCRtpTransceiver.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCSessionDescription.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCSSLAdapter.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCSSLCertificateVerifier.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCStatisticsReport.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCTracing.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoCapturer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoCodecConstants.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoCodecInfo.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoder.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderAV1.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderFactoryH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderVP8.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoDecoderVP9.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoder.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderAV1.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderFactory.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderFactoryH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderFactorySimulcast.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderH264.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderQpThresholds.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderSettings.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderSimulcast.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderVP8.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoEncoderVP9.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoFrame.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoFrameBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoRenderer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoSource.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoTrack.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCVideoViewShading.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/RTCYUVPlanarBuffer.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/UIDevice+RTCDevice.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Headers/WebRTC.h -example/ios/Pods/HMSWebRTC/WebRTC.xcframework/ios-arm64_x86_64-simulator/WebRTC.framework/Modules/module.modulemap -example/ios/Pods/Local Podspecs/file_picker.podspec.json -example/ios/Pods/Local Podspecs/firebase_analytics.podspec.json -example/ios/Pods/Local Podspecs/firebase_core.podspec.json -example/ios/Pods/Local Podspecs/firebase_crashlytics.podspec.json -example/ios/Pods/Local Podspecs/firebase_dynamic_links.podspec.json -example/ios/Pods/Local Podspecs/firebase_performance.podspec.json -example/ios/Pods/Local Podspecs/Flutter.podspec.json -example/ios/Pods/Local Podspecs/flutter_foreground_task.podspec.json -example/ios/Pods/Local Podspecs/hmssdk_flutter.podspec.json -example/ios/Pods/Local Podspecs/image_gallery_saver.podspec.json -example/ios/Pods/Local Podspecs/package_info_plus.podspec.json -example/ios/Pods/Local Podspecs/path_provider_foundation.podspec.json -example/ios/Pods/Local Podspecs/permission_handler_apple.podspec.json -example/ios/Pods/Local Podspecs/qr_code_scanner.podspec.json -example/ios/Pods/Local Podspecs/share_plus.podspec.json -example/ios/Pods/Local Podspecs/shared_preferences_foundation.podspec.json -example/ios/Pods/Local Podspecs/uni_links.podspec.json -example/ios/Pods/Local Podspecs/url_launcher_ios.podspec.json -example/ios/Pods/Local Podspecs/wakelock.podspec.json -example/ios/Pods/MTBBarcodeScanner/LICENSE -example/ios/Pods/MTBBarcodeScanner/README.md -example/ios/Pods/MTBBarcodeScanner/Classes/ios/Scanners/MTBBarcodeScanner.h -example/ios/Pods/MTBBarcodeScanner/Classes/ios/Scanners/MTBBarcodeScanner.m -example/ios/Pods/nanopb/LICENSE.txt -example/ios/Pods/nanopb/pb.h -example/ios/Pods/nanopb/pb_common.c -example/ios/Pods/nanopb/pb_common.h -example/ios/Pods/nanopb/pb_decode.c -example/ios/Pods/nanopb/pb_decode.h -example/ios/Pods/nanopb/pb_encode.c -example/ios/Pods/nanopb/pb_encode.h -example/ios/Pods/nanopb/README.md -example/ios/Pods/Pods.xcodeproj/project.pbxproj -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/DKImagePickerController-DKImagePickerController.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/DKImagePickerController.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/DKPhotoGallery-DKPhotoGallery.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/DKPhotoGallery.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/file_picker.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/Firebase.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/firebase_analytics.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/firebase_core.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/firebase_crashlytics.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/firebase_dynamic_links.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/firebase_performance.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseABTesting.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseAnalytics.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseCore.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseCoreExtension.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseCoreInternal.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseCrashlytics.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseDynamicLinks.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseInstallations.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebasePerformance.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseRemoteConfig.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/FirebaseSessions.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/Flutter.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/flutter_foreground_task.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/GoogleAppMeasurement.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/GoogleDataTransport.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/GoogleUtilities.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/HMSAnalyticsSDK.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/HMSBroadcastExtensionSDK.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/HMSHLSPlayerSDK.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/HMSSDK.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/hmssdk_flutter.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/HMSWebRTC.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/image_gallery_saver.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/MTBBarcodeScanner.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/nanopb.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/package_info_plus.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/path_provider_foundation.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/permission_handler_apple.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/Pods-FlutterBroadcastUploadExtension.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/Pods-Runner.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/PromisesObjC.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/PromisesSwift.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/qr_code_scanner.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/SDWebImage.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/share_plus.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/shared_preferences_foundation.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/SwiftyGif.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/uni_links.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/url_launcher_ios.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/wakelock.xcscheme -example/ios/Pods/Pods.xcodeproj/xcuserdata/yogesh.xcuserdatad/xcschemes/xcschememanagement.plist -example/ios/Pods/PromisesObjC/LICENSE -example/ios/Pods/PromisesObjC/README.md -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+All.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Always.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Any.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Async.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Await.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Catch.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Delay.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Do.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Race.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Recover.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Reduce.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Retry.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Testing.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Then.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Timeout.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Validate.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise+Wrap.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromise.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/FBLPromiseError.m -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+All.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Always.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Any.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Async.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Await.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Catch.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Delay.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Do.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Race.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Recover.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Reduce.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Retry.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Testing.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Then.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Timeout.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Validate.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise+Wrap.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromise.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromiseError.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromisePrivate.h -example/ios/Pods/PromisesObjC/Sources/FBLPromises/include/FBLPromises.h -example/ios/Pods/PromisesSwift/LICENSE -example/ios/Pods/PromisesSwift/README.md -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+All.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Always.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Any.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Async.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Await.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Catch.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Delay.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Do.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Race.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Recover.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Reduce.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Retry.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Testing.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Then.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Timeout.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Validate.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise+Wrap.swift -example/ios/Pods/PromisesSwift/Sources/Promises/Promise.swift -example/ios/Pods/PromisesSwift/Sources/Promises/PromiseError.swift -example/ios/Pods/SDWebImage/LICENSE -example/ios/Pods/SDWebImage/README.md -example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/NSButton+WebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.h -example/ios/Pods/SDWebImage/SDWebImage/Core/NSData+ImageContentType.m -example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.h -example/ios/Pods/SDWebImage/SDWebImage/Core/NSImage+Compatibility.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImage.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImagePlayer.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageRep.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView+WebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDAnimatedImageView.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDCallbackQueue.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDCallbackQueue.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDDiskCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDGraphicsImageRenderer.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAPNGCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageAWebPCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheConfig.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCacheDefine.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCachesManager.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCoderHelper.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageCodersManager.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageFrame.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGIFCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageGraphics.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageHEICCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOAnimatedCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageIOCoder.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoader.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageLoadersManager.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDImageTransformer.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDMemoryCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheKeyFilter.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCacheSerializer.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageCompat.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDefine.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloader.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderConfig.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderDecryptor.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderOperation.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderRequestModifier.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageDownloaderResponseModifier.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageError.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageIndicator.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageManager.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOperation.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageOptionsProcessor.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImagePrefetcher.m -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.h -example/ios/Pods/SDWebImage/SDWebImage/Core/SDWebImageTransition.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIButton+WebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ExtendedCacheData.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+ForceDecode.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+GIF.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MemoryCacheCost.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Metadata.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+MultiFormat.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImage+Transform.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+HighlightedWebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIImageView+WebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCache.m -example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.h -example/ios/Pods/SDWebImage/SDWebImage/Core/UIView+WebCacheOperation.m -example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.h -example/ios/Pods/SDWebImage/SDWebImage/Private/NSBezierPath+SDRoundedCorners.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDAssociatedObject.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDAsyncBlockOperation.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDDeviceHelper.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDDisplayLink.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDFileAttributeHelper.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageAssetManager.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageCachesManagerOperation.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageFramePool.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageFramePool.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDImageIOAnimatedCoderInternal.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDInternalMacros.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDmetamacros.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.h -example/ios/Pods/SDWebImage/SDWebImage/Private/SDWeakProxy.m -example/ios/Pods/SDWebImage/SDWebImage/Private/SDWebImageTransitionInternal.h -example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.h -example/ios/Pods/SDWebImage/SDWebImage/Private/UIColor+SDHexString.m -example/ios/Pods/SDWebImage/WebImage/SDWebImage.h -example/ios/Pods/SwiftyGif/LICENSE -example/ios/Pods/SwiftyGif/README.md -example/ios/Pods/SwiftyGif/SwiftyGif/NSImage+SwiftyGif.swift -example/ios/Pods/SwiftyGif/SwiftyGif/NSImageView+SwiftyGif.swift -example/ios/Pods/SwiftyGif/SwiftyGif/ObjcAssociatedWeakObject.swift -example/ios/Pods/SwiftyGif/SwiftyGif/SwiftyGif.h -example/ios/Pods/SwiftyGif/SwiftyGif/SwiftyGifManager.swift -example/ios/Pods/SwiftyGif/SwiftyGif/UIImage+SwiftyGif.swift -example/ios/Pods/SwiftyGif/SwiftyGif/UIImageView+SwiftyGif.swift -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController-dummy.m -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController-Info.plist -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController-prefix.pch -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController-umbrella.h -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController.debug.xcconfig -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController.modulemap -example/ios/Pods/Target Support Files/DKImagePickerController/DKImagePickerController.release.xcconfig -example/ios/Pods/Target Support Files/DKImagePickerController/ResourceBundle-DKImagePickerController-DKImagePickerController-Info.plist -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery-dummy.m -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery-Info.plist -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery-prefix.pch -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery-umbrella.h -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery.debug.xcconfig -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery.modulemap -example/ios/Pods/Target Support Files/DKPhotoGallery/DKPhotoGallery.release.xcconfig -example/ios/Pods/Target Support Files/DKPhotoGallery/ResourceBundle-DKPhotoGallery-DKPhotoGallery-Info.plist -example/ios/Pods/Target Support Files/file_picker/file_picker-dummy.m -example/ios/Pods/Target Support Files/file_picker/file_picker-Info.plist -example/ios/Pods/Target Support Files/file_picker/file_picker-prefix.pch -example/ios/Pods/Target Support Files/file_picker/file_picker-umbrella.h -example/ios/Pods/Target Support Files/file_picker/file_picker.debug.xcconfig -example/ios/Pods/Target Support Files/file_picker/file_picker.modulemap -example/ios/Pods/Target Support Files/file_picker/file_picker.release.xcconfig -example/ios/Pods/Target Support Files/Firebase/Firebase.debug.xcconfig -example/ios/Pods/Target Support Files/Firebase/Firebase.release.xcconfig -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics-dummy.m -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics-Info.plist -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics-prefix.pch -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics-umbrella.h -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics.debug.xcconfig -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics.modulemap -example/ios/Pods/Target Support Files/firebase_analytics/firebase_analytics.release.xcconfig -example/ios/Pods/Target Support Files/firebase_core/firebase_core-dummy.m -example/ios/Pods/Target Support Files/firebase_core/firebase_core-Info.plist -example/ios/Pods/Target Support Files/firebase_core/firebase_core-prefix.pch -example/ios/Pods/Target Support Files/firebase_core/firebase_core-umbrella.h -example/ios/Pods/Target Support Files/firebase_core/firebase_core.debug.xcconfig -example/ios/Pods/Target Support Files/firebase_core/firebase_core.modulemap -example/ios/Pods/Target Support Files/firebase_core/firebase_core.release.xcconfig -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics-dummy.m -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics-Info.plist -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics-prefix.pch -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics-umbrella.h -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics.debug.xcconfig -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics.modulemap -example/ios/Pods/Target Support Files/firebase_crashlytics/firebase_crashlytics.release.xcconfig -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links-dummy.m -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links-Info.plist -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links-prefix.pch -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links-umbrella.h -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links.debug.xcconfig -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links.modulemap -example/ios/Pods/Target Support Files/firebase_dynamic_links/firebase_dynamic_links.release.xcconfig -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance-dummy.m -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance-Info.plist -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance-prefix.pch -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance-umbrella.h -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance.debug.xcconfig -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance.modulemap -example/ios/Pods/Target Support Files/firebase_performance/firebase_performance.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting-dummy.m -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting-Info.plist -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting-umbrella.h -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting.modulemap -example/ios/Pods/Target Support Files/FirebaseABTesting/FirebaseABTesting.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics-xcframeworks.sh -example/ios/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseAnalytics/FirebaseAnalytics.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore-dummy.m -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore-Info.plist -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore-umbrella.h -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore.modulemap -example/ios/Pods/Target Support Files/FirebaseCore/FirebaseCore.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension-dummy.m -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension-Info.plist -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension-prefix.pch -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension-umbrella.h -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension.modulemap -example/ios/Pods/Target Support Files/FirebaseCoreExtension/FirebaseCoreExtension.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal-dummy.m -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal-Info.plist -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal-prefix.pch -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal-umbrella.h -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal.modulemap -example/ios/Pods/Target Support Files/FirebaseCoreInternal/FirebaseCoreInternal.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics-dummy.m -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics-Info.plist -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics-umbrella.h -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics.modulemap -example/ios/Pods/Target Support Files/FirebaseCrashlytics/FirebaseCrashlytics.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks-dummy.m -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks-Info.plist -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks-umbrella.h -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks.modulemap -example/ios/Pods/Target Support Files/FirebaseDynamicLinks/FirebaseDynamicLinks.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations-dummy.m -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations-Info.plist -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations-umbrella.h -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations.modulemap -example/ios/Pods/Target Support Files/FirebaseInstallations/FirebaseInstallations.release.xcconfig -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance-dummy.m -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance-Info.plist -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance-umbrella.h -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance.debug.xcconfig -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance.modulemap -example/ios/Pods/Target Support Files/FirebasePerformance/FirebasePerformance.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig-dummy.m -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig-Info.plist -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig-umbrella.h -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig.modulemap -example/ios/Pods/Target Support Files/FirebaseRemoteConfig/FirebaseRemoteConfig.release.xcconfig -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions-dummy.m -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions-Info.plist -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions-umbrella.h -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions.debug.xcconfig -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions.modulemap -example/ios/Pods/Target Support Files/FirebaseSessions/FirebaseSessions.release.xcconfig -example/ios/Pods/Target Support Files/Flutter/Flutter.debug.xcconfig -example/ios/Pods/Target Support Files/Flutter/Flutter.release.xcconfig -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task-dummy.m -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task-Info.plist -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task-prefix.pch -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task-umbrella.h -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task.debug.xcconfig -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task.modulemap -example/ios/Pods/Target Support Files/flutter_foreground_task/flutter_foreground_task.release.xcconfig -example/ios/Pods/Target Support Files/GoogleAppMeasurement/GoogleAppMeasurement-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/GoogleAppMeasurement/GoogleAppMeasurement-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/GoogleAppMeasurement/GoogleAppMeasurement-xcframeworks.sh -example/ios/Pods/Target Support Files/GoogleAppMeasurement/GoogleAppMeasurement.debug.xcconfig -example/ios/Pods/Target Support Files/GoogleAppMeasurement/GoogleAppMeasurement.release.xcconfig -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport-dummy.m -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport-Info.plist -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport-umbrella.h -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport.debug.xcconfig -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport.modulemap -example/ios/Pods/Target Support Files/GoogleDataTransport/GoogleDataTransport.release.xcconfig -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-dummy.m -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-Info.plist -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities-umbrella.h -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities.debug.xcconfig -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities.modulemap -example/ios/Pods/Target Support Files/GoogleUtilities/GoogleUtilities.release.xcconfig -example/ios/Pods/Target Support Files/HMSAnalyticsSDK/HMSAnalyticsSDK-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/HMSAnalyticsSDK/HMSAnalyticsSDK-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/HMSAnalyticsSDK/HMSAnalyticsSDK-xcframeworks.sh -example/ios/Pods/Target Support Files/HMSAnalyticsSDK/HMSAnalyticsSDK.debug.xcconfig -example/ios/Pods/Target Support Files/HMSAnalyticsSDK/HMSAnalyticsSDK.release.xcconfig -example/ios/Pods/Target Support Files/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK-xcframeworks.sh -example/ios/Pods/Target Support Files/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.debug.xcconfig -example/ios/Pods/Target Support Files/HMSBroadcastExtensionSDK/HMSBroadcastExtensionSDK.release.xcconfig -example/ios/Pods/Target Support Files/HMSHLSPlayerSDK/HMSHLSPlayerSDK-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/HMSHLSPlayerSDK/HMSHLSPlayerSDK-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/HMSHLSPlayerSDK/HMSHLSPlayerSDK-xcframeworks.sh -example/ios/Pods/Target Support Files/HMSHLSPlayerSDK/HMSHLSPlayerSDK.debug.xcconfig -example/ios/Pods/Target Support Files/HMSHLSPlayerSDK/HMSHLSPlayerSDK.release.xcconfig -example/ios/Pods/Target Support Files/HMSSDK/HMSSDK-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/HMSSDK/HMSSDK-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/HMSSDK/HMSSDK-xcframeworks.sh -example/ios/Pods/Target Support Files/HMSSDK/HMSSDK.debug.xcconfig -example/ios/Pods/Target Support Files/HMSSDK/HMSSDK.release.xcconfig -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter-dummy.m -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter-Info.plist -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter-prefix.pch -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter-umbrella.h -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter.debug.xcconfig -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter.modulemap -example/ios/Pods/Target Support Files/hmssdk_flutter/hmssdk_flutter.release.xcconfig -example/ios/Pods/Target Support Files/HMSWebRTC/HMSWebRTC-xcframeworks-input-files.xcfilelist -example/ios/Pods/Target Support Files/HMSWebRTC/HMSWebRTC-xcframeworks-output-files.xcfilelist -example/ios/Pods/Target Support Files/HMSWebRTC/HMSWebRTC-xcframeworks.sh -example/ios/Pods/Target Support Files/HMSWebRTC/HMSWebRTC.debug.xcconfig -example/ios/Pods/Target Support Files/HMSWebRTC/HMSWebRTC.release.xcconfig -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver-dummy.m -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver-Info.plist -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver-prefix.pch -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver-umbrella.h -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver.debug.xcconfig -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver.modulemap -example/ios/Pods/Target Support Files/image_gallery_saver/image_gallery_saver.release.xcconfig -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner-dummy.m -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner-Info.plist -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner-prefix.pch -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner-umbrella.h -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner.debug.xcconfig -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner.modulemap -example/ios/Pods/Target Support Files/MTBBarcodeScanner/MTBBarcodeScanner.release.xcconfig -example/ios/Pods/Target Support Files/nanopb/nanopb-dummy.m -example/ios/Pods/Target Support Files/nanopb/nanopb-Info.plist -example/ios/Pods/Target Support Files/nanopb/nanopb-prefix.pch -example/ios/Pods/Target Support Files/nanopb/nanopb-umbrella.h -example/ios/Pods/Target Support Files/nanopb/nanopb.debug.xcconfig -example/ios/Pods/Target Support Files/nanopb/nanopb.modulemap -example/ios/Pods/Target Support Files/nanopb/nanopb.release.xcconfig -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus-dummy.m -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus-Info.plist -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus-prefix.pch -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus-umbrella.h -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus.debug.xcconfig -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus.modulemap -example/ios/Pods/Target Support Files/package_info_plus/package_info_plus.release.xcconfig -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation-dummy.m -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation-Info.plist -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation-prefix.pch -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation-umbrella.h -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation.debug.xcconfig -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation.modulemap -example/ios/Pods/Target Support Files/path_provider_foundation/path_provider_foundation.release.xcconfig -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple-dummy.m -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple-Info.plist -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple-prefix.pch -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple-umbrella.h -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple.debug.xcconfig -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple.modulemap -example/ios/Pods/Target Support Files/permission_handler_apple/permission_handler_apple.release.xcconfig -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension-acknowledgements.markdown -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension-acknowledgements.plist -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension-dummy.m -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension-Info.plist -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension-umbrella.h -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension.debug.xcconfig -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension.modulemap -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension.profile.xcconfig -example/ios/Pods/Target Support Files/Pods-FlutterBroadcastUploadExtension/Pods-FlutterBroadcastUploadExtension.release.xcconfig -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.markdown -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-acknowledgements.plist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-dummy.m -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-output-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-input-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Profile-output-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-input-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Release-output-files.xcfilelist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-Info.plist -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner-umbrella.h -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner.modulemap -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig -example/ios/Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC-dummy.m -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC-Info.plist -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC-umbrella.h -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC.debug.xcconfig -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC.modulemap -example/ios/Pods/Target Support Files/PromisesObjC/PromisesObjC.release.xcconfig -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift-dummy.m -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift-Info.plist -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift-prefix.pch -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift-umbrella.h -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift.debug.xcconfig -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift.modulemap -example/ios/Pods/Target Support Files/PromisesSwift/PromisesSwift.release.xcconfig -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner-dummy.m -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner-Info.plist -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner-prefix.pch -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner-umbrella.h -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner.debug.xcconfig -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner.modulemap -example/ios/Pods/Target Support Files/qr_code_scanner/qr_code_scanner.release.xcconfig -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-dummy.m -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-Info.plist -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-prefix.pch -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage-umbrella.h -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.debug.xcconfig -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.modulemap -example/ios/Pods/Target Support Files/SDWebImage/SDWebImage.release.xcconfig -example/ios/Pods/Target Support Files/share_plus/share_plus-dummy.m -example/ios/Pods/Target Support Files/share_plus/share_plus-Info.plist -example/ios/Pods/Target Support Files/share_plus/share_plus-prefix.pch -example/ios/Pods/Target Support Files/share_plus/share_plus-umbrella.h -example/ios/Pods/Target Support Files/share_plus/share_plus.debug.xcconfig -example/ios/Pods/Target Support Files/share_plus/share_plus.modulemap -example/ios/Pods/Target Support Files/share_plus/share_plus.release.xcconfig -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation-dummy.m -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation-Info.plist -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation-prefix.pch -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation-umbrella.h -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation.debug.xcconfig -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation.modulemap -example/ios/Pods/Target Support Files/shared_preferences_foundation/shared_preferences_foundation.release.xcconfig -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif-dummy.m -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif-Info.plist -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif-prefix.pch -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif-umbrella.h -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif.debug.xcconfig -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif.modulemap -example/ios/Pods/Target Support Files/SwiftyGif/SwiftyGif.release.xcconfig -example/ios/Pods/Target Support Files/uni_links/uni_links-dummy.m -example/ios/Pods/Target Support Files/uni_links/uni_links-Info.plist -example/ios/Pods/Target Support Files/uni_links/uni_links-prefix.pch -example/ios/Pods/Target Support Files/uni_links/uni_links-umbrella.h -example/ios/Pods/Target Support Files/uni_links/uni_links.debug.xcconfig -example/ios/Pods/Target Support Files/uni_links/uni_links.modulemap -example/ios/Pods/Target Support Files/uni_links/uni_links.release.xcconfig -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios-dummy.m -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios-Info.plist -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios-prefix.pch -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios-umbrella.h -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios.debug.xcconfig -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios.modulemap -example/ios/Pods/Target Support Files/url_launcher_ios/url_launcher_ios.release.xcconfig -example/ios/Pods/Target Support Files/wakelock/wakelock-dummy.m -example/ios/Pods/Target Support Files/wakelock/wakelock-Info.plist -example/ios/Pods/Target Support Files/wakelock/wakelock-prefix.pch -example/ios/Pods/Target Support Files/wakelock/wakelock-umbrella.h -example/ios/Pods/Target Support Files/wakelock/wakelock.debug.xcconfig -example/ios/Pods/Target Support Files/wakelock/wakelock.modulemap -example/ios/Pods/Target Support Files/wakelock/wakelock.release.xcconfig -example/ios/Runner/GeneratedPluginRegistrant.h -example/ios/Runner/GeneratedPluginRegistrant.m +example/.dart_tool/flutter_build/ +example/android/.gradle/ +example/android/.idea/ +example/ios/.symlinks/ +example/ios/Pods/ sample apps/flutter-quickstart-app/.dart_tool/package_config.json sample apps/flutter-quickstart-app/.dart_tool/package_config_subset sample apps/flutter-quickstart-app/.dart_tool/version From 0c3fa1c9667507a3f094514d08ffd41548e0770b Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:14:10 +0530 Subject: [PATCH 45/67] updated endpoints (cherry picked from commit 61e8a0fc6ec6d4c3f142b525156ab8bb8412b6b1) --- .../example/android/app/app_secrets.dart | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/hmssdk_flutter/example/android/app/app_secrets.dart diff --git a/packages/hmssdk_flutter/example/android/app/app_secrets.dart b/packages/hmssdk_flutter/example/android/app/app_secrets.dart new file mode 100644 index 000000000..740f591ca --- /dev/null +++ b/packages/hmssdk_flutter/example/android/app/app_secrets.dart @@ -0,0 +1,11 @@ +import 'dart:io'; + +import 'package:hms_room_kit/src/service/app_debug_config.dart'; + +String qaTokenEndPoint = + "https://auth-nonprod.100ms.live${Platform.isIOS ? "/" : ""}"; +String qaInitEndPoint = "https://qa-init.100ms.live/init"; + +String? getLayoutAPIEndpoint() { + return AppDebugConfig.isProdRoom ? null : "https://api-nonprod.100ms.live"; +} From b78c9d6a87b4aa7ccca3b82fe36555d1f70133fc Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Sun, 24 Sep 2023 14:15:33 +0530 Subject: [PATCH 46/67] updated ReadMe (cherry picked from commit 3e07eae91a366a1a03270313e3f4cc2b83e82c60) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9093df278..d44aab55c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ [![100ms-svg](https://user-images.githubusercontent.com/93931528/205858417-8c0a0d1b-2d46-4710-9316-7418092fd3d6.svg)](https://100ms.live/) [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) +[![Build](https://github.com/100mslive/100ms-flutter/actions/workflows/build.yml/badge.svg?branch=develop)](https://github.com/100mslive/100ms-flutter/actions/workflows/build.yml) [![License](https://img.shields.io/github/license/100mslive/100ms-flutter)](https://www.100ms.live/) [![Documentation](https://img.shields.io/badge/Read-Documentation-blue)](https://docs.100ms.live/flutter/v2/foundation/basics) [![Discord](https://img.shields.io/discord/843749923060711464?label=Join%20on%20Discord)](https://100ms.live/discord) From 5e4e1ea68cb413b37bcdc4dd6f317644fef0e9a9 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Mon, 25 Sep 2023 12:13:55 +0530 Subject: [PATCH 47/67] updated room service (cherry picked from commit 11c0c7cba3e55b907d3c47927472bae3014667f3) --- .../example/android/app/app_secrets.dart | 11 ----------- packages/hmssdk_flutter/example/lib/room_service.dart | 7 ++++--- 2 files changed, 4 insertions(+), 14 deletions(-) delete mode 100644 packages/hmssdk_flutter/example/android/app/app_secrets.dart diff --git a/packages/hmssdk_flutter/example/android/app/app_secrets.dart b/packages/hmssdk_flutter/example/android/app/app_secrets.dart deleted file mode 100644 index 740f591ca..000000000 --- a/packages/hmssdk_flutter/example/android/app/app_secrets.dart +++ /dev/null @@ -1,11 +0,0 @@ -import 'dart:io'; - -import 'package:hms_room_kit/src/service/app_debug_config.dart'; - -String qaTokenEndPoint = - "https://auth-nonprod.100ms.live${Platform.isIOS ? "/" : ""}"; -String qaInitEndPoint = "https://qa-init.100ms.live/init"; - -String? getLayoutAPIEndpoint() { - return AppDebugConfig.isProdRoom ? null : "https://api-nonprod.100ms.live"; -} diff --git a/packages/hmssdk_flutter/example/lib/room_service.dart b/packages/hmssdk_flutter/example/lib/room_service.dart index 0409e4456..f7c36bab1 100644 --- a/packages/hmssdk_flutter/example/lib/room_service.dart +++ b/packages/hmssdk_flutter/example/lib/room_service.dart @@ -1,3 +1,4 @@ +import 'dart:io'; import 'package:hms_room_kit/hms_room_kit.dart'; import 'package:hmssdk_flutter_example/app_secrets.dart'; @@ -38,9 +39,9 @@ class RoomService { static Map setEndPoints() { Map endPoints = {}; - endPoints[Constant.tokenEndPointKey] = qaTokenEndPoint; - endPoints[Constant.initEndPointKey] = qaInitEndPoint; - endPoints[Constant.layoutAPIEndPointKey] = qaLayoutAPIEndPoint; + endPoints[Constant.tokenEndPointKey] = "https://auth-nonprod.100ms.live${Platform.isIOS ? "/" : ""}"; + endPoints[Constant.initEndPointKey] = "https://qa-init.100ms.live/init"; + endPoints[Constant.layoutAPIEndPointKey] = "https://api-nonprod.100ms.live"; return endPoints; } From a6c7bbc7c606aacd5c39d29291a27040bbee979c Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Mon, 25 Sep 2023 12:29:39 +0530 Subject: [PATCH 48/67] updated room service (cherry picked from commit 1c2203b8f2ece12e9fad2476787ce7fc203c68b8) --- packages/hmssdk_flutter/example/lib/room_service.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/hmssdk_flutter/example/lib/room_service.dart b/packages/hmssdk_flutter/example/lib/room_service.dart index f7c36bab1..d4b9601b1 100644 --- a/packages/hmssdk_flutter/example/lib/room_service.dart +++ b/packages/hmssdk_flutter/example/lib/room_service.dart @@ -1,6 +1,5 @@ import 'dart:io'; import 'package:hms_room_kit/hms_room_kit.dart'; -import 'package:hmssdk_flutter_example/app_secrets.dart'; ///This class is only for 100ms internal usage /// and should not be edited From 515c01782c9c0f50520aa8dc88c84b4ffae3b285 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Mon, 25 Sep 2023 13:00:40 +0530 Subject: [PATCH 49/67] added google services file (cherry picked from commit a0f345c1b25236ff01818282100a66eae9cf1a35) --- .../example/android/app/google-services.json | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 packages/hmssdk_flutter/example/android/app/google-services.json diff --git a/packages/hmssdk_flutter/example/android/app/google-services.json b/packages/hmssdk_flutter/example/android/app/google-services.json new file mode 100644 index 000000000..4c2070d0e --- /dev/null +++ b/packages/hmssdk_flutter/example/android/app/google-services.json @@ -0,0 +1,46 @@ +{ + "project_info": { + "project_number": "19544678223", + "project_id": "flutter-hms", + "storage_bucket": "flutter-hms.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:19544678223:android:a33d9b410e9a290db32f3a", + "android_client_info": { + "package_name": "live.hms.flutter" + } + }, + "oauth_client": [ + { + "client_id": "19544678223-966jfvbl9j8d0ks7oigke8ogfp8i4i02.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyAbz0cfK5hi-Hi4xVhVkmwAhaaqRgOdoHo" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "19544678223-966jfvbl9j8d0ks7oigke8ogfp8i4i02.apps.googleusercontent.com", + "client_type": 3 + }, + { + "client_id": "19544678223-lisp1tlhj2es8id94te05r4ss4n7og2f.apps.googleusercontent.com", + "client_type": 2, + "ios_info": { + "bundle_id": "live.100ms.flutter" + } + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file From 9c63c486e6dc92d35b5b0dc0796aa6d0acc72113 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Mon, 25 Sep 2023 13:13:01 +0530 Subject: [PATCH 50/67] updated build script (cherry picked from commit 054407f171988d82a46aa86c03affc354a66de48) --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d6b4789a5..c37c9e021 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -24,6 +24,7 @@ on: - doc/** - .git/ - .vscode/ + - "**.txt" jobs: build_appbundle: From eefb9589260e02bd1d019eba3ee8ba26b62f7a3c Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Wed, 27 Sep 2023 11:28:37 +0530 Subject: [PATCH 51/67] Added fix for previous role setup --- packages/hms_room_kit/lib/src/meeting/meeting_store.dart | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index c1c519a7b..f1b5128b1 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -604,6 +604,13 @@ class MeetingStore extends ChangeNotifier previousRole = localPeer?.role.name; if (isRaisedHand) { changeMetadata(); + }else { + ///Setting the previous role + String value = isRaisedHand ? "true" : "false"; + _hmsSDKInteractor.changeMetadata( + metadata: + "{\"isHandRaised\":$value,\"isBRBOn\":false,\"prevRole\":\"$previousRole\"}", + hmsActionResultListener: this); } HMSRoomLayout.resetLayout(hmsRoleChangeRequest.suggestedRole.name); currentRoleChangeRequest = null; From 2ef2e0c991f0e009908d50e6e627008884e2013d Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 11:32:14 +0530 Subject: [PATCH 52/67] updated meeting store --- .../lib/src/common/constants.dart | 3 - .../lib/src/hms_prebuilt_options.dart | 7 +-- .../lib/src/meeting/meeting_store.dart | 59 +++++++------------ 3 files changed, 22 insertions(+), 47 deletions(-) diff --git a/packages/hms_room_kit/lib/src/common/constants.dart b/packages/hms_room_kit/lib/src/common/constants.dart index 5464a507e..8e7830968 100644 --- a/packages/hms_room_kit/lib/src/common/constants.dart +++ b/packages/hms_room_kit/lib/src/common/constants.dart @@ -45,9 +45,6 @@ class Constant { ///[Constant.layoutAPIEndPointKey] is the key for the layout api end point static String layoutAPIEndPointKey = "layoutAPIEndPoint"; - ///[Constant.isPIPAllowed] is the flag to enable/disable PIP - static bool isPIPAllowed = false; - ///[Constant.onLeave] is the function that you wish to execute while leaving the room static Function? onLeave; } diff --git a/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart b/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart index 68f1318bc..849410299 100644 --- a/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart +++ b/packages/hms_room_kit/lib/src/hms_prebuilt_options.dart @@ -26,16 +26,11 @@ class HMSPrebuiltOptions { //this config final HMSIOSScreenshareConfig? iOSScreenshareConfig; - ///If true PIP is enabled in the application - ///else it's not.Default value is false - final bool isPIPAllowed; - ///[HMSPrebuiltOptions] is a class that is used to pass the options to the prebuilt HMSPrebuiltOptions( {this.userName, this.userId, this.endPoints, this.debugInfo = false, - this.iOSScreenshareConfig, - this.isPIPAllowed = false}); + this.iOSScreenshareConfig}); } diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index 0b049accd..f45c9f2de 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -751,20 +751,6 @@ class MeetingStore extends ChangeNotifier getCurrentAudioDevice(); getAudioDevicesList(); notifyListeners(); - - ///PIP Only needs to be called when it's enabled from PIP - if (Constant.isPIPAllowed) { - if (Platform.isIOS && - HMSRoomLayout.roleLayoutData?.screens?.conferencing?.defaultConf != - null) { - HMSIOSPIPController.setup( - autoEnterPip: true, - aspectRatio: [9, 16], - backgroundColor: Colors.black); - } else if (Platform.isAndroid) { - HMSAndroidPIPController.setup(aspectRatio: [9, 16]); - } - } } void setParticipantsList(List roles) { @@ -1019,21 +1005,19 @@ class MeetingStore extends ChangeNotifier // Below code for change track and text in PIP mode iOS and android. //This is only executed if PIP is enabled - if (Constant.isPIPAllowed && updateSpeakers.isNotEmpty) { - if (Platform.isIOS && (screenShareCount == 0 || isScreenShareOn)) { - if (updateSpeakers[0].peer.videoTrack != null) { - changePIPWindowTrackOnIOS( - track: updateSpeakers[0].peer.videoTrack, - alternativeText: updateSpeakers[0].peer.name, - ratio: [9, 16]); - } else { - changePIPWindowTextOnIOS( - text: updateSpeakers[0].peer.name, ratio: [9, 16]); - } - } else if (Platform.isAndroid) { - changePIPWindowOnAndroid("${updateSpeakers[0].peer.peerId}mainVideo"); - } - } + // if (Platform.isIOS && (screenShareCount == 0 || isScreenShareOn)) { + // if (updateSpeakers[0].peer.videoTrack != null) { + // changePIPWindowTrackOnIOS( + // track: updateSpeakers[0].peer.videoTrack, + // alternativeText: updateSpeakers[0].peer.name, + // ratio: [9, 16]); + // } else { + // changePIPWindowTextOnIOS( + // text: updateSpeakers[0].peer.name, ratio: [9, 16]); + // } + // } else if (Platform.isAndroid) { + // changePIPWindowOnAndroid("${updateSpeakers[0].peer.peerId}mainVideo"); + // } } @override @@ -1187,7 +1171,6 @@ class MeetingStore extends ChangeNotifier // Helper Methods void clearRoomState() async { - clearPIPState(); removeListeners(); toggleAlwaysScreenOn(); _hmsSDKInteractor.destroy(); @@ -1209,13 +1192,13 @@ class MeetingStore extends ChangeNotifier } void clearPIPState() { - if (Constant.isPIPAllowed) { - if (Platform.isAndroid) { - HMSAndroidPIPController.destroy(); - } else if (Platform.isIOS) { - HMSIOSPIPController.destroy(); - } - } + // if (Constant.isPIPAllowed) { + // if (Platform.isAndroid) { + // HMSAndroidPIPController.destroy(); + // } else if (Platform.isIOS) { + // HMSIOSPIPController.destroy(); + // } + // } } void removeListeners() { @@ -1384,7 +1367,7 @@ class MeetingStore extends ChangeNotifier } } - if (peer.isLocal && Constant.isPIPAllowed) { + if (peer.isLocal) { if (Platform.isIOS) { if (HMSRoomLayout .roleLayoutData?.screens?.conferencing?.hlsLiveStreaming != From 347b65d8af14fe66f02de24edf9f3b703602684e Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 11:41:01 +0530 Subject: [PATCH 53/67] updated google services --- .github/workflows/build.yml | 5 ++ .gitignore | 22 ++------- .../example/android/app/google-services.json | 46 ------------------- 3 files changed, 10 insertions(+), 63 deletions(-) delete mode 100644 packages/hmssdk_flutter/example/android/app/google-services.json diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c37c9e021..fecac2973 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -33,6 +33,11 @@ jobs: timeout-minutes: 30 steps: + - uses: actions/checkout@v1 + - name: Provide Firebase Android + env: + FIREBASE_CONFIG_DEV: ${{ secrets.FIREBASE_CONFIG }} + run: echo $FIREBASE_CONFIG > ./packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 - uses: actions/setup-java@v3 diff --git a/.gitignore b/.gitignore index c7cb3975e..0c8565dec 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,4 @@ -sample apps/hms-callkit-app/.dart_tool/flutter_build/b684ba75def7eb1d46425208935128f1/outputs.json -sample apps/hms-callkit-app/.dart_tool/flutter_build/c59f8a27862d2129b3cbc08b58e71ea6/outputs.json -sample apps/hms-callkit-app/.dart_tool/flutter_build/c8a732d3049414d121c7ba56cff1e323/outputs.json -sample apps/hms-callkit-app/.dart_tool/flutter_build/c970366aa2a6e28e1f732d59bfa170d7/outputs.json +sample apps/hms-callkit-app/.dart_tool/flutter_build/ .dart_tool/package_config.json .dart_tool/package_config_subset .dart_tool/version @@ -27,22 +24,13 @@ example/android/.gradle/ example/android/.idea/ example/ios/.symlinks/ example/ios/Pods/ -sample apps/flutter-quickstart-app/.dart_tool/package_config.json -sample apps/flutter-quickstart-app/.dart_tool/package_config_subset -sample apps/flutter-quickstart-app/.dart_tool/version -sample apps/hms-callkit-app/.dart_tool/package_config.json -sample apps/hms-callkit-app/.dart_tool/package_config_subset -sample apps/hms-callkit-app/.dart_tool/version -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/Flutter.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/HMSAnalyticsSDK.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/HMSBroadcastExtensionSDK.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/HMSSDK.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/hmssdk_flutter.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/HMSWebRTC.build/dgph -sample apps/flutter-quickstart-app/build/ios/Pods.build/Release-iphonesimulator/Pods-Runner.build/dgph +sample apps/flutter-quickstart-app/.dart_tool/ +sample apps/hms-callkit-app/.dart_tool/ +sample apps/flutter-quickstart-app/build/ios/Pods.build/ packages/hms_room_kit/.dart_tool packages/hmssdk_flutter/.dart_tool packages/hmssdk_flutter/example/.dart_tool packages/hmssdk_flutter/example/android/fastlane packages/hmssdk_flutter/example/build packages/hmssdk_flutter/example/ios/fastlane +packages/hmssdk_flutter/example/android/app/google-services.json \ No newline at end of file diff --git a/packages/hmssdk_flutter/example/android/app/google-services.json b/packages/hmssdk_flutter/example/android/app/google-services.json deleted file mode 100644 index 4c2070d0e..000000000 --- a/packages/hmssdk_flutter/example/android/app/google-services.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "project_info": { - "project_number": "19544678223", - "project_id": "flutter-hms", - "storage_bucket": "flutter-hms.appspot.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:19544678223:android:a33d9b410e9a290db32f3a", - "android_client_info": { - "package_name": "live.hms.flutter" - } - }, - "oauth_client": [ - { - "client_id": "19544678223-966jfvbl9j8d0ks7oigke8ogfp8i4i02.apps.googleusercontent.com", - "client_type": 3 - } - ], - "api_key": [ - { - "current_key": "AIzaSyAbz0cfK5hi-Hi4xVhVkmwAhaaqRgOdoHo" - } - ], - "services": { - "appinvite_service": { - "other_platform_oauth_client": [ - { - "client_id": "19544678223-966jfvbl9j8d0ks7oigke8ogfp8i4i02.apps.googleusercontent.com", - "client_type": 3 - }, - { - "client_id": "19544678223-lisp1tlhj2es8id94te05r4ss4n7og2f.apps.googleusercontent.com", - "client_type": 2, - "ios_info": { - "bundle_id": "live.100ms.flutter" - } - } - ] - } - } - } - ], - "configuration_version": "1" -} \ No newline at end of file From 4c8c6ec5aa2d6ff85f01cf2aefc89bb73886cdd6 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 11:45:41 +0530 Subject: [PATCH 54/67] updated script --- .github/workflows/build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fecac2973..5578d628b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -33,10 +33,10 @@ jobs: timeout-minutes: 30 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@v3 - name: Provide Firebase Android env: - FIREBASE_CONFIG_DEV: ${{ secrets.FIREBASE_CONFIG }} + FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} run: echo $FIREBASE_CONFIG > ./packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 From 8b5c63d3170a4524cf55f55143eedd3c83596f15 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 11:57:20 +0530 Subject: [PATCH 55/67] resolved PIP warnings --- .../lib/src/meeting/meeting_store.dart | 32 +++++++++---------- .../lib/src/screen_controller.dart | 1 - packages/hmssdk_flutter/example/lib/main.dart | 1 - .../example/lib/qr_code_screen.dart | 1 - 4 files changed, 16 insertions(+), 19 deletions(-) diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index f45c9f2de..d20453d96 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -1777,7 +1777,7 @@ class MeetingStore extends ChangeNotifier void enterPipModeOnAndroid() async { //to check whether pip is available in android - if (Platform.isAndroid && Constant.isPIPAllowed) { + if (Platform.isAndroid) { bool isPipAvailable = await HMSAndroidPIPController.isAvailable(); if (isPipAvailable) { //[isPipActive] method can also be used to check whether application is in pip Mode or not @@ -1788,19 +1788,19 @@ class MeetingStore extends ChangeNotifier } Future isPIPActive() async { - if (Constant.isPIPAllowed) { - if (Platform.isAndroid) { - isPipActive = await HMSAndroidPIPController.isActive(); - } else if (Platform.isIOS) { - isPipActive = await HMSIOSPIPController.isActive(); - } - return isPipActive; - } + // if (Constant.isPIPAllowed) { + // if (Platform.isAndroid) { + // isPipActive = await HMSAndroidPIPController.isActive(); + // } else if (Platform.isIOS) { + // isPipActive = await HMSIOSPIPController.isActive(); + // } + // return isPipActive; + // } return false; } void changePIPWindowOnAndroid(String uid) { - if (Constant.isPIPAllowed && Platform.isAndroid && isPipActive) { + if (Platform.isAndroid) { int index = -1; index = peerTracks.indexWhere((element) => element.uid == uid); if (index != -1) { @@ -1820,7 +1820,7 @@ class MeetingStore extends ChangeNotifier {HMSVideoTrack? track, required String alternativeText, required List ratio}) async { - if (Constant.isPIPAllowed && Platform.isIOS && track != null) { + if (Platform.isIOS && track != null) { isPipActive = await isPIPActive(); if (isPipActive) { HMSIOSPIPController.changeVideoTrack( @@ -1836,7 +1836,7 @@ class MeetingStore extends ChangeNotifier void changePIPWindowTextOnIOS( {String? text, required List ratio}) async { - if (Constant.isPIPAllowed && Platform.isIOS && text != null) { + if (Platform.isIOS && text != null) { isPipActive = await isPIPActive(); if (isPipActive) { HMSIOSPIPController.changeText( @@ -2116,7 +2116,7 @@ class MeetingStore extends ChangeNotifier return; } if (state == AppLifecycleState.resumed) { - if (Platform.isAndroid && Constant.isPIPAllowed) { + if (Platform.isAndroid) { isPipActive = await HMSAndroidPIPController.isActive(); } else if (Platform.isIOS) { isPipActive = false; @@ -2149,7 +2149,7 @@ class MeetingStore extends ChangeNotifier lastVideoStatus = true; } - if (Platform.isAndroid && Constant.isPIPAllowed) { + if (Platform.isAndroid) { isPipActive = await HMSAndroidPIPController.isActive(); notifyListeners(); } @@ -2179,12 +2179,12 @@ class MeetingStore extends ChangeNotifier } } } else if (state == AppLifecycleState.inactive) { - if (Constant.isPIPAllowed && Platform.isAndroid && !isPipActive) { + if (Platform.isAndroid) { isPipActive = await HMSAndroidPIPController.isActive(); } notifyListeners(); } else if (state == AppLifecycleState.detached) { - if (Constant.isPIPAllowed && Platform.isAndroid && !isPipActive) { + if (Platform.isAndroid) { isPipActive = await HMSAndroidPIPController.isActive(); } notifyListeners(); diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 747c3e9e0..39e18d3fb 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -49,7 +49,6 @@ class _ScreenControllerState extends State { Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; Constant.onLeave = widget.onLeave; - Constant.isPIPAllowed = widget.options?.isPIPAllowed ?? false; ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { _setEndPoints(widget.options!.endPoints!); diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index 40388b54f..7c237aa56 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -309,7 +309,6 @@ class _HomePageState extends State { roomCode: Constant.roomCode, options: HMSPrebuiltOptions( endPoints: endPoints, - isPIPAllowed: true, iOSScreenshareConfig: HMSIOSScreenshareConfig( appGroup: "group.flutterhms", preferredExtension: diff --git a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart index 66863e130..7df014c7e 100644 --- a/packages/hmssdk_flutter/example/lib/qr_code_screen.dart +++ b/packages/hmssdk_flutter/example/lib/qr_code_screen.dart @@ -79,7 +79,6 @@ class _QRCodeScreenState extends State { roomCode: Constant.roomCode, options: HMSPrebuiltOptions( endPoints: endPoints, - isPIPAllowed: true, iOSScreenshareConfig: HMSIOSScreenshareConfig( appGroup: "group.flutterhms", preferredExtension: From d80462bdb1921d63b5564a5ea7af8bfd2b525f26 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:05:03 +0530 Subject: [PATCH 56/67] updated script --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 5578d628b..9afd03f2f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -37,7 +37,7 @@ jobs: - name: Provide Firebase Android env: FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} - run: echo $FIREBASE_CONFIG > ./packages/hmssdk_flutter/example/android/app/google-services.json + run: echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 - uses: actions/setup-java@v3 From b36d3725040a0c88148dc67d6b562a92ee07accc Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:14:57 +0530 Subject: [PATCH 57/67] updated script --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9afd03f2f..9bb61cec9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -37,7 +37,7 @@ jobs: - name: Provide Firebase Android env: FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} - run: echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json + run: pwd;echo $FIREBASE_CONFIG;echo $FIREBASE_CONFIG > 100ms-flutter/packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 - uses: actions/setup-java@v3 From d7af86857b59ad793c776a99de8810d216116849 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:16:40 +0530 Subject: [PATCH 58/67] updated script --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9bb61cec9..065515e2f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -37,7 +37,7 @@ jobs: - name: Provide Firebase Android env: FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} - run: pwd;echo $FIREBASE_CONFIG;echo $FIREBASE_CONFIG > 100ms-flutter/packages/hmssdk_flutter/example/android/app/google-services.json + run: pwd;echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 - uses: actions/setup-java@v3 From b4fd0f2a7d76dd5fd69a5a7154fd380915975196 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:24:43 +0530 Subject: [PATCH 59/67] updated script --- .github/workflows/build.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 065515e2f..1be2ecf45 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -33,11 +33,6 @@ jobs: timeout-minutes: 30 steps: - - uses: actions/checkout@v3 - - name: Provide Firebase Android - env: - FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} - run: pwd;echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json - name: Checkout repository uses: actions/checkout@v3 - uses: actions/setup-java@v3 @@ -50,7 +45,12 @@ jobs: channel: stable cache: true - name: Build Android App Bundle + env: + FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} run: | + echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json + pwd + git status cd packages/hmssdk_flutter/example flutter build appbundle --debug -t lib/main.dart shell: bash \ No newline at end of file From fd5bb0874c7e20538b7c84fb1745d0035afdd2a6 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:38:22 +0530 Subject: [PATCH 60/67] updated script --- .github/workflows/build.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 1be2ecf45..847f4c27e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -49,8 +49,6 @@ jobs: FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} run: | echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json - pwd - git status cd packages/hmssdk_flutter/example flutter build appbundle --debug -t lib/main.dart shell: bash \ No newline at end of file From 3f86266705b17ee1208546121dc2ab686ead7950 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:46:01 +0530 Subject: [PATCH 61/67] resolved lint warnings --- .trunk/trunk.yaml | 4 ++-- packages/hms_room_kit/lib/src/meeting/meeting_store.dart | 2 +- packages/hms_room_kit/lib/src/screen_controller.dart | 1 + .../live/hms/hmssdk_flutter/methods/HMSPipAction.kt | 8 ++++---- packages/hmssdk_flutter/example/lib/main.dart | 2 +- packages/hmssdk_flutter/example/lib/room_service.dart | 3 ++- 6 files changed, 11 insertions(+), 9 deletions(-) diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index bd1ac3c53..4ce2236cb 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -1,10 +1,10 @@ version: 0.1 cli: - version: 1.16.0 + version: 1.16.1 plugins: sources: - id: trunk - ref: v1.2.3 + ref: v1.2.4 uri: https://github.com/trunk-io/plugins lint: enabled: diff --git a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart index f1b5128b1..36245329f 100644 --- a/packages/hms_room_kit/lib/src/meeting/meeting_store.dart +++ b/packages/hms_room_kit/lib/src/meeting/meeting_store.dart @@ -604,7 +604,7 @@ class MeetingStore extends ChangeNotifier previousRole = localPeer?.role.name; if (isRaisedHand) { changeMetadata(); - }else { + } else { ///Setting the previous role String value = isRaisedHand ? "true" : "false"; _hmsSDKInteractor.changeMetadata( diff --git a/packages/hms_room_kit/lib/src/screen_controller.dart b/packages/hms_room_kit/lib/src/screen_controller.dart index 39e18d3fb..83853aeae 100644 --- a/packages/hms_room_kit/lib/src/screen_controller.dart +++ b/packages/hms_room_kit/lib/src/screen_controller.dart @@ -49,6 +49,7 @@ class _ScreenControllerState extends State { Constant.prebuiltOptions = widget.options; Constant.roomCode = widget.roomCode; Constant.onLeave = widget.onLeave; + ///Here we set the endPoints if it's non-null if (widget.options?.endPoints != null) { _setEndPoints(widget.options!.endPoints!); diff --git a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt index e27ccecd7..7de2521c4 100644 --- a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt +++ b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt @@ -37,10 +37,10 @@ class HMSPipAction { result.success( activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), ) - } - else{ - result.success(false) - } + } else + { + result.success(false) + } } "setup_pip" -> { setupPIP(call, result) diff --git a/packages/hmssdk_flutter/example/lib/main.dart b/packages/hmssdk_flutter/example/lib/main.dart index f0dae280d..7c237aa56 100644 --- a/packages/hmssdk_flutter/example/lib/main.dart +++ b/packages/hmssdk_flutter/example/lib/main.dart @@ -371,7 +371,7 @@ class _HomePageState extends State { children: [ Text("Room Code", key: Key('room_code_text'), - style:HMSTextStyle.setTextStyle( + style: HMSTextStyle.setTextStyle( color: themeDefaultColor, height: 1.5, fontSize: 14, diff --git a/packages/hmssdk_flutter/example/lib/room_service.dart b/packages/hmssdk_flutter/example/lib/room_service.dart index d4b9601b1..889fa4ef5 100644 --- a/packages/hmssdk_flutter/example/lib/room_service.dart +++ b/packages/hmssdk_flutter/example/lib/room_service.dart @@ -38,7 +38,8 @@ class RoomService { static Map setEndPoints() { Map endPoints = {}; - endPoints[Constant.tokenEndPointKey] = "https://auth-nonprod.100ms.live${Platform.isIOS ? "/" : ""}"; + endPoints[Constant.tokenEndPointKey] = + "https://auth-nonprod.100ms.live${Platform.isIOS ? "/" : ""}"; endPoints[Constant.initEndPointKey] = "https://qa-init.100ms.live/init"; endPoints[Constant.layoutAPIEndPointKey] = "https://api-nonprod.100ms.live"; From cc46838fddd9116b428cb6a4492e3f5ce69df52b Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:46:46 +0530 Subject: [PATCH 62/67] resolved lint warnings --- .github/workflows/build.yml | 4 ++-- .github/workflows/firstinteraction.yml | 6 +++--- .github/workflows/stale.yml | 12 ++++++------ .trunk/trunk.yaml | 6 +++--- README.md | 9 ++++----- .../live/hms/hmssdk_flutter/methods/HMSPipAction.kt | 7 +++---- 6 files changed, 21 insertions(+), 23 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 847f4c27e..1cf259090 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -46,9 +46,9 @@ jobs: cache: true - name: Build Android App Bundle env: - FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} + FIREBASE_CONFIG: ${{ secrets.FIREBASE_CONFIG }} run: | echo $FIREBASE_CONFIG > packages/hmssdk_flutter/example/android/app/google-services.json cd packages/hmssdk_flutter/example flutter build appbundle --debug -t lib/main.dart - shell: bash \ No newline at end of file + shell: bash diff --git a/.github/workflows/firstinteraction.yml b/.github/workflows/firstinteraction.yml index ff36b6850..dd85a1744 100644 --- a/.github/workflows/firstinteraction.yml +++ b/.github/workflows/firstinteraction.yml @@ -6,8 +6,8 @@ on: types: [opened] pull_request: branches: - - main - - develop + - main + - develop types: [opened] jobs: @@ -31,4 +31,4 @@ jobs: If you are implementing a feature request, please check with the maintainers that the feature will be accepted first. - We really appreciate your contribution! \ No newline at end of file + We really appreciate your contribution! diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 143fa1f7b..1030e18fb 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -2,7 +2,7 @@ name: Close stale issues and PRs on: workflow_dispatch: schedule: - - cron: '30 1 * * *' + - cron: "30 1 * * *" jobs: stale: @@ -10,11 +10,11 @@ jobs: steps: - uses: actions/stale@v8 with: - stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.' - stale-pr-message: 'This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days.' - close-issue-message: 'This issue was closed because it has been stalled for 5 days with no activity.' - close-pr-message: 'This PR was closed because it has been stalled for 10 days with no activity.' + stale-issue-message: "This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days." + stale-pr-message: "This PR is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in 10 days." + close-issue-message: "This issue was closed because it has been stalled for 5 days with no activity." + close-pr-message: "This PR was closed because it has been stalled for 10 days with no activity." days-before-issue-stale: 30 days-before-pr-stale: 45 days-before-issue-close: 5 - days-before-pr-close: 10 \ No newline at end of file + days-before-pr-close: 10 diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index 4ce2236cb..9c3868223 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -8,14 +8,14 @@ plugins: uri: https://github.com/trunk-io/plugins lint: enabled: - - actionlint@1.6.25 + - actionlint@1.6.26 - checkov@2.4.9 - osv-scanner@1.4.0 - trivy@0.45.1 - - trufflehog@3.56.1 + - trufflehog@3.57.0 - oxipng@8.0.0 - yamllint@1.32.0 - - markdownlint@0.36.0 + - markdownlint@0.37.0 - prettier@3.0.3 - git-diff-check - shfmt@3.6.0 diff --git a/README.md b/README.md index d44aab55c..3f1bb9db2 100644 --- a/README.md +++ b/README.md @@ -16,11 +16,10 @@ Integrate Real Time Audio and Video conferencing, Interactive Live Streaming, an With support for HLS and RTMP Live Streaming and Recording, Picture-in-Picture (PiP), CallKit, VoIP, one-to-one Video Call Modes, Audio Rooms, Video Player and much more, add immersive real-time communications to your apps. - -| Package | Version | -| ------------------| --------------------------------------------------------------------------------------------------------- | -| hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | -| hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | +| Package | Version | +| -------------- | ------------------------------------------------------------------------------------------------------ | +| hms_room_kit | [![Pub Version](https://img.shields.io/pub/v/hms_room_kit)](https://pub.dev/packages/hms_room_kit) | +| hmssdk_flutter | [![Pub Version](https://img.shields.io/pub/v/hmssdk_flutter)](https://pub.dev/packages/hmssdk_flutter) | 📖 Read the Complete Documentation here: https://www.100ms.live/docs/flutter/v2/guides/quickstart diff --git a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt index 7de2521c4..727769567 100644 --- a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt +++ b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt @@ -37,10 +37,9 @@ class HMSPipAction { result.success( activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), ) - } else - { - result.success(false) - } + } else { + result.success(false) + } } "setup_pip" -> { setupPIP(call, result) From 51fc266a09d5155071a30e1886946ffdea82a592 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:48:16 +0530 Subject: [PATCH 63/67] removed PIP implementation --- .../kotlin/live/hms/flutter/MainActivity.kt | 42 +++++++++---------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt index 90c20297c..1cef3a60e 100644 --- a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt +++ b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt @@ -28,26 +28,26 @@ class MainActivity : FlutterActivity() { } } - override fun onPictureInPictureModeChanged( - isInPictureInPictureMode: Boolean, - newConfig: Configuration?, - ) { - if (isInPictureInPictureMode) { - if (HMSPipAction.pipResult != null) { - HMSPipAction.pipResult?.success(true) - HMSPipAction.pipResult = null - } - } else { - Log.i("PIP Mode", "Exited PIP Mode") - } - } + // override fun onPictureInPictureModeChanged( + // isInPictureInPictureMode: Boolean, + // newConfig: Configuration?, + // ) { + // if (isInPictureInPictureMode) { + // if (HMSPipAction.pipResult != null) { + // HMSPipAction.pipResult?.success(true) + // HMSPipAction.pipResult = null + // } + // } else { + // Log.i("PIP Mode", "Exited PIP Mode") + // } + // } - override fun onUserLeaveHint() { - super.onUserLeaveHint() - // This should only work for android version above 8 since PIP is only supported after - // android 8 and will not be called after android 12 since it automatically gets handled by android. - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && Build.VERSION.SDK_INT < Build.VERSION_CODES.S) { - HMSPipAction.autoEnterPipMode(this) - } - } + // override fun onUserLeaveHint() { + // super.onUserLeaveHint() + // // This should only work for android version above 8 since PIP is only supported after + // // android 8 and will not be called after android 12 since it automatically gets handled by android. + // if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && Build.VERSION.SDK_INT < Build.VERSION_CODES.S) { + // HMSPipAction.autoEnterPipMode(this) + // } + // } } From 932c7b57aff0c47f11cdd0ca18c0797f0bdd2b77 Mon Sep 17 00:00:00 2001 From: Yogesh Singh Date: Wed, 27 Sep 2023 12:54:21 +0530 Subject: [PATCH 64/67] updated Changelog --- packages/hmssdk_flutter/example/ExampleAppChangelog.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt index c19cbecbf..081543974 100644 --- a/packages/hmssdk_flutter/example/ExampleAppChangelog.txt +++ b/packages/hmssdk_flutter/example/ExampleAppChangelog.txt @@ -14,4 +14,4 @@ https://github.com/100mslive/100ms-flutter/pull/1557 Room Kit: 1.0.1 Core SDK: 1.8.0 Android SDK: 2.7.6 -iOS SDK: 1.0.1 \ No newline at end of file +iOS SDK: 0.9.12 \ No newline at end of file From 23a60cca3fd46b983a5be5bb7c75a22a3efe7d0d Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Wed, 27 Sep 2023 12:57:23 +0530 Subject: [PATCH 65/67] Removed chnages --- .../hms_room_kit/lib/src/preview/preview_page.dart | 1 - .../bottom_sheets/more_settings_bottom_sheet.dart | 2 +- .../bottom_sheets/viewer_settings_bottom_sheet.dart | 2 +- .../live/hms/hmssdk_flutter/methods/HMSPipAction.kt | 10 +++------- .../src/main/kotlin/live/hms/flutter/MainActivity.kt | 4 ---- 5 files changed, 5 insertions(+), 14 deletions(-) diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index ee71cd458..ca3cecfb6 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -144,7 +144,6 @@ class _PreviewPageState extends State { meetingStore.removeListeners(), meetingStore.peerTracks.clear(), meetingStore.resetForegroundTaskAndOrientation(), - meetingStore.clearPIPState(), meetingStore.isRoomEnded = true, previewStore.isMeetingJoined = false, previewStore.hmsSDKInteractor.leave(), diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart index 05af100d7..0e32fa6c5 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/more_settings_bottom_sheet.dart @@ -592,7 +592,7 @@ class _MoreSettingsBottomSheetState extends State { horizontalTitleGap: 2, onTap: () async { Navigator.pop(context); - context.read().enterPipModeOnAndroid(); + // context.read().enterPipModeOnAndroid(); }, contentPadding: EdgeInsets.zero, leading: SvgPicture.asset( diff --git a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart index 972290d23..538a11b46 100644 --- a/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart +++ b/packages/hms_room_kit/lib/src/widgets/bottom_sheets/viewer_settings_bottom_sheet.dart @@ -290,7 +290,7 @@ class _ViewerSettingsBottomSheetState extends State { horizontalTitleGap: 2, onTap: () async { Navigator.pop(context); - context.read().enterPipModeOnAndroid(); + // context.read().enterPipModeOnAndroid(); }, contentPadding: EdgeInsets.zero, leading: SvgPicture.asset( diff --git a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt index 727769567..76641d892 100644 --- a/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt +++ b/packages/hmssdk_flutter/android/src/main/kotlin/live/hms/hmssdk_flutter/methods/HMSPipAction.kt @@ -33,13 +33,9 @@ class HMSPipAction { } } "is_pip_available" -> { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) { - result.success( - activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), - ) - } else { - result.success(false) - } + result.success( + activity.packageManager.hasSystemFeature(PackageManager.FEATURE_PICTURE_IN_PICTURE), + ) } "setup_pip" -> { setupPIP(call, result) diff --git a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt index 1cef3a60e..5f8f20024 100644 --- a/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt +++ b/packages/hmssdk_flutter/example/android/app/src/main/kotlin/live/hms/flutter/MainActivity.kt @@ -2,12 +2,8 @@ package live.hms.flutter import android.app.Activity import android.content.Intent -import android.content.res.Configuration -import android.os.Build -import android.util.Log import io.flutter.embedding.android.FlutterActivity import live.hms.hmssdk_flutter.Constants -import live.hms.hmssdk_flutter.methods.HMSPipAction class MainActivity : FlutterActivity() { override fun onActivityResult( From 3de42664fdd73f22004bcdf6ff965b59e75328c3 Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Wed, 27 Sep 2023 12:58:45 +0530 Subject: [PATCH 66/67] Added comments --- packages/hms_room_kit/lib/src/preview/preview_page.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/hms_room_kit/lib/src/preview/preview_page.dart b/packages/hms_room_kit/lib/src/preview/preview_page.dart index ca3cecfb6..49c4f3b20 100644 --- a/packages/hms_room_kit/lib/src/preview/preview_page.dart +++ b/packages/hms_room_kit/lib/src/preview/preview_page.dart @@ -144,6 +144,7 @@ class _PreviewPageState extends State { meetingStore.removeListeners(), meetingStore.peerTracks.clear(), meetingStore.resetForegroundTaskAndOrientation(), + // meetingStore.clearPIPState(), meetingStore.isRoomEnded = true, previewStore.isMeetingJoined = false, previewStore.hmsSDKInteractor.leave(), From c3ce5a4ff92381387d1d5e603864b16f83e12dcf Mon Sep 17 00:00:00 2001 From: Decoder07 Date: Wed, 27 Sep 2023 13:31:13 +0530 Subject: [PATCH 67/67] Updated changelog --- packages/hms_room_kit/CHANGELOG.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/packages/hms_room_kit/CHANGELOG.md b/packages/hms_room_kit/CHANGELOG.md index 9b0319a2d..e89076961 100644 --- a/packages/hms_room_kit/CHANGELOG.md +++ b/packages/hms_room_kit/CHANGELOG.md @@ -7,21 +7,15 @@ ## 1.0.2 - 2023-09-22 -### Changed - -- Bump minimal Flutter version to 3.10.0 - -## 1.0.2 - 2023-09-22 - ### 🚀 Added - Added `onLeave` callback parameter in `HMSPrebuilt` ### Changed -- Bump minimal Flutter version to 3.10.0 +- Bump minimum Flutter version to 3.10.0 -- Some Bug fixes and performance improvements +- Bug fixes and performance improvements ## 1.0.1 - 2023-09-15