From 1b9c87d02e2c14bf97470d955c8e28a6b2d0ab09 Mon Sep 17 00:00:00 2001 From: jjoonleo Date: Mon, 14 Jul 2025 16:35:42 +0900 Subject: [PATCH 1/2] feat: enhance localization support for time formatting - Added pluralized localization strings for hours and minutes in both English and Korean. - Implemented methods for formatted hour and minute strings in localization classes. - Updated UI components to utilize new formatting methods for better user experience. --- lib/l10n/app_en.arb | 18 +++++++++++++++ lib/l10n/app_ko.arb | 6 +++-- lib/l10n/app_localizations.dart | 12 ++++++++++ lib/l10n/app_localizations_en.dart | 22 +++++++++++++++++++ lib/l10n/app_localizations_ko.dart | 12 +++++++++- .../calendar/component/schedule_detail.dart | 22 +++++++++---------- ...chedule_spare_and_preparing_time_form.dart | 9 ++++---- .../shared/utils/duration_format.dart | 22 +++++++++++++++++++ 8 files changed, 105 insertions(+), 18 deletions(-) create mode 100644 lib/presentation/shared/utils/duration_format.dart diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index d8cc08cf..b3f91256 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -256,5 +256,23 @@ "schedule": "Schedule", "@schedule": { "description": "Label for the schedule button in the bottom navigation bar" + }, + "hourFormatted": "{count,plural, =1{{count} hour} other{{count} hours}}", + "@hourFormatted": { + "description": "A formatted string for hours, handling pluralization.", + "placeholders": { + "count": { + "type": "int" + } + } + }, + "minuteFormatted": "{count,plural, =1{{count} minute} other{{count} minutes}}", + "@minuteFormatted": { + "description": "A formatted string for minutes, handling pluralization.", + "placeholders": { + "count": { + "type": "int" + } + } } } \ No newline at end of file diff --git a/lib/l10n/app_ko.arb b/lib/l10n/app_ko.arb index a6605f44..3cd05922 100644 --- a/lib/l10n/app_ko.arb +++ b/lib/l10n/app_ko.arb @@ -28,7 +28,7 @@ "preparationOrderTitle": "앞에서 고른 준비 과정의 순서를\n알려주세요", "preparationNameTitle": "주로 하는 준비 과정을\n선택해주세요 ", "multipleSelection": "(복수 선택)", - "preparationTimeTitle": "과정별로 소요되는 시간을\n알려주세요", + "preparationTimeTitle": "준비 시간", "addAppointment": "약속 추가하기", "next": "다음", "appointmentName": "약속 이름", @@ -60,5 +60,7 @@ "home": "홈", "myPage": "마이", "plus": "플러스", - "schedule": "일정" + "schedule": "일정", + "hourFormatted": "{count}시간", + "minuteFormatted": "{count}분" } \ No newline at end of file diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index ec8125d0..eae7b36b 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -466,6 +466,18 @@ abstract class AppLocalizations { /// In en, this message translates to: /// **'Schedule'** String get schedule; + + /// A formatted string for hours, handling pluralization. + /// + /// In en, this message translates to: + /// **'{count,plural, =1{{count} hour} other{{count} hours}}'** + String hourFormatted(int count); + + /// A formatted string for minutes, handling pluralization. + /// + /// In en, this message translates to: + /// **'{count,plural, =1{{count} minute} other{{count} minutes}}'** + String minuteFormatted(int count); } class _AppLocalizationsDelegate extends LocalizationsDelegate { diff --git a/lib/l10n/app_localizations_en.dart b/lib/l10n/app_localizations_en.dart index dec408e1..67ea5242 100644 --- a/lib/l10n/app_localizations_en.dart +++ b/lib/l10n/app_localizations_en.dart @@ -197,4 +197,26 @@ class AppLocalizationsEn extends AppLocalizations { @override String get schedule => 'Schedule'; + + @override + String hourFormatted(int count) { + String _temp0 = intl.Intl.pluralLogic( + count, + locale: localeName, + other: '$count hours', + one: '$count hour', + ); + return '$_temp0'; + } + + @override + String minuteFormatted(int count) { + String _temp0 = intl.Intl.pluralLogic( + count, + locale: localeName, + other: '$count minutes', + one: '$count minute', + ); + return '$_temp0'; + } } diff --git a/lib/l10n/app_localizations_ko.dart b/lib/l10n/app_localizations_ko.dart index 8acbd2f6..8bfbb927 100644 --- a/lib/l10n/app_localizations_ko.dart +++ b/lib/l10n/app_localizations_ko.dart @@ -96,7 +96,7 @@ class AppLocalizationsKo extends AppLocalizations { String get multipleSelection => '(복수 선택)'; @override - String get preparationTimeTitle => '과정별로 소요되는 시간을\n알려주세요'; + String get preparationTimeTitle => '준비 시간'; @override String get addAppointment => '약속 추가하기'; @@ -197,4 +197,14 @@ class AppLocalizationsKo extends AppLocalizations { @override String get schedule => '일정'; + + @override + String hourFormatted(int count) { + return '$count시간'; + } + + @override + String minuteFormatted(int count) { + return '$count분'; + } } diff --git a/lib/presentation/calendar/component/schedule_detail.dart b/lib/presentation/calendar/component/schedule_detail.dart index 62ee3305..eb7cca03 100644 --- a/lib/presentation/calendar/component/schedule_detail.dart +++ b/lib/presentation/calendar/component/schedule_detail.dart @@ -3,6 +3,8 @@ import 'package:flutter_svg/svg.dart'; import 'package:flutter_swipe_action_cell/core/cell.dart'; import 'package:on_time_front/domain/entities/schedule_entity.dart'; import 'package:on_time_front/l10n/app_localizations.dart'; +import 'package:on_time_front/presentation/shared/utils/duration_format.dart'; +import 'package:intl/intl.dart'; // Helper widget for swipe actions class _SwipeActionContent extends StatelessWidget { @@ -114,8 +116,7 @@ class _ScheduleDetailState extends State { Padding( padding: const EdgeInsets.symmetric(horizontal: 16.0), child: _ScheduleTimeColumn( - hour: widget.schedule.scheduleTime.hour, - period: "PM", + scheduleTime: widget.schedule.scheduleTime, ), ), const _VerticalDivider(), @@ -134,26 +135,26 @@ class _ScheduleDetailState extends State { } class _ScheduleTimeColumn extends StatelessWidget { - const _ScheduleTimeColumn({required this.hour, required this.period}); + const _ScheduleTimeColumn({required this.scheduleTime}); - final int hour; - final String period; + final DateTime scheduleTime; @override Widget build(BuildContext context) { final theme = Theme.of(context); + final locale = AppLocalizations.of(context)!.localeName; return Column( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center, children: [ Text( - hour.toString(), + DateFormat.j(locale).format(scheduleTime), style: theme.textTheme.titleSmall, textAlign: TextAlign.center, ), const SizedBox(height: 4), Text( - period, + DateFormat('a', locale).format(scheduleTime), style: theme.textTheme.bodySmall?.copyWith( color: theme.colorScheme.outline, ), @@ -205,14 +206,13 @@ class _ScheduleDetailsColumn extends StatelessWidget { children: [ ScheduleInfoTile( label: AppLocalizations.of(context)!.travelTime, - value: - '${schedule.scheduleTime.hour}${AppLocalizations.of(context)!.hours} ${schedule.scheduleTime.minute}${AppLocalizations.of(context)!.minutes}', + value: formatDuration(context, schedule.moveTime), ), //TODO: add preparation time ScheduleInfoTile( label: AppLocalizations.of(context)!.spareTime, - value: - '${schedule.scheduleSpareTime?.inMinutes}${AppLocalizations.of(context)!.minutes}', + value: formatDuration( + context, schedule.scheduleSpareTime ?? Duration.zero), ), ], ), diff --git a/lib/presentation/schedule_create/schedule_spare_and_preparing_time/screens/schedule_spare_and_preparing_time_form.dart b/lib/presentation/schedule_create/schedule_spare_and_preparing_time/screens/schedule_spare_and_preparing_time_form.dart index af191d06..c72b4c15 100644 --- a/lib/presentation/schedule_create/schedule_spare_and_preparing_time/screens/schedule_spare_and_preparing_time_form.dart +++ b/lib/presentation/schedule_create/schedule_spare_and_preparing_time/screens/schedule_spare_and_preparing_time_form.dart @@ -7,6 +7,7 @@ import 'package:on_time_front/presentation/schedule_create/bloc/schedule_form_bl import 'package:on_time_front/presentation/schedule_create/schedule_spare_and_preparing_time/cubit/schedule_form_spare_time_cubit.dart'; import 'package:on_time_front/presentation/shared/components/cupertino_picker_modal.dart'; import 'package:on_time_front/l10n/app_localizations.dart'; +import 'package:on_time_front/presentation/shared/utils/duration_format.dart'; class ScheduleSpareAndPreparingTimeForm extends StatefulWidget { const ScheduleSpareAndPreparingTimeForm({ @@ -41,7 +42,7 @@ class _ScheduleSpareAndPreparingTimeFormState labelText: AppLocalizations.of(context)!.preparationTimeTitle), controller: TextEditingController( - text: state.totalPreparationTime.toString()), + text: formatDuration(context, state.totalPreparationTime)), onTap: () async { final PreparationEntity? updatedPreparation = await context .push('/preparationEdit', extra: state.preparation); @@ -67,10 +68,10 @@ class _ScheduleSpareAndPreparingTimeFormState flex: 1, child: TextField( readOnly: true, - decoration: InputDecoration(labelText: ''), + decoration: InputDecoration( + labelText: AppLocalizations.of(context)!.spareTime), controller: TextEditingController( - text: - '${spareTime.inHours}${AppLocalizations.of(context)!.hours} ${spareTime.inMinutes.remainder(60)}${AppLocalizations.of(context)!.minutes}'), + text: formatDuration(context, spareTime)), onTap: () { context.showCupertinoMinutePickerModal( title: AppLocalizations.of(context)!.enterTime, diff --git a/lib/presentation/shared/utils/duration_format.dart b/lib/presentation/shared/utils/duration_format.dart new file mode 100644 index 00000000..cc319ece --- /dev/null +++ b/lib/presentation/shared/utils/duration_format.dart @@ -0,0 +1,22 @@ +import 'package:flutter/material.dart'; +import 'package:on_time_front/l10n/app_localizations.dart'; + +String formatDuration(BuildContext context, Duration duration) { + final localizations = AppLocalizations.of(context)!; + final hours = duration.inHours; + final minutes = duration.inMinutes.remainder(60); + + final parts = []; + if (hours > 0) { + parts.add(localizations.hourFormatted(hours)); + } + if (minutes > 0) { + parts.add(localizations.minuteFormatted(minutes)); + } + + if (parts.isEmpty) { + return localizations.minuteFormatted(0); + } + + return parts.join(' '); +} From 18233848ff1061db5b9b95e3c431d596790e18a1 Mon Sep 17 00:00:00 2001 From: jjoonleo Date: Mon, 14 Jul 2025 16:56:36 +0900 Subject: [PATCH 2/2] Update dependencies and theme configuration - Changed dialogTheme from DialogTheme to DialogThemeData in theme.dart. - Updated async package version from 2.12.0 to 2.13.0 in pubspec.lock. - Updated fake_async package version from 1.3.2 to 1.3.3 in pubspec.lock. - Updated intl package version from 0.19.0 to 0.20.2 in pubspec.lock. - Updated leak_tracker package version from 10.0.8 to 10.0.9 in pubspec.lock. - Updated table_calendar package version from 3.1.3 to 3.2.0 in pubspec.lock. - Updated vm_service package version from 14.3.1 to 15.0.0 in pubspec.lock. - Updated widgetbook dependencies in widgetbook/pubspec.lock, including: - _fe_analyzer_shared from 80.0.0 to 85.0.0 - accessibility_tools from 2.3.0 to 2.6.0 - analyzer from 7.3.0 to 7.5.7 - args from 2.6.0 to 2.7.0 - and many others, ensuring all dependencies are up to date. --- lib/l10n/app_localizations.dart | 32 +- lib/l10n/app_localizations_en.dart | 30 +- lib/l10n/app_localizations_ko.dart | 9 +- .../screens/schedule_date_time_form.dart | 19 +- lib/presentation/shared/theme/theme.dart | 2 +- pubspec.lock | 24 +- widgetbook/pubspec.lock | 289 +++++++++--------- 7 files changed, 217 insertions(+), 188 deletions(-) diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index eae7b36b..bcae4261 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -62,7 +62,8 @@ import 'app_localizations_ko.dart'; /// be consistent with the languages listed in the AppLocalizations.supportedLocales /// property. abstract class AppLocalizations { - AppLocalizations(String locale) : localeName = intl.Intl.canonicalizedLocale(locale.toString()); + AppLocalizations(String locale) + : localeName = intl.Intl.canonicalizedLocale(locale.toString()); final String localeName; @@ -70,7 +71,8 @@ abstract class AppLocalizations { return Localizations.of(context, AppLocalizations); } - static const LocalizationsDelegate delegate = _AppLocalizationsDelegate(); + static const LocalizationsDelegate delegate = + _AppLocalizationsDelegate(); /// A list of this localizations delegate along with the default localizations /// delegates. @@ -82,7 +84,8 @@ abstract class AppLocalizations { /// Additional delegates can be added by appending to this list in /// MaterialApp. This list does not have to be used at all if a custom list /// of delegates is preferred or required. - static const List> localizationsDelegates = >[ + static const List> localizationsDelegates = + >[ delegate, GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate, @@ -480,7 +483,8 @@ abstract class AppLocalizations { String minuteFormatted(int count); } -class _AppLocalizationsDelegate extends LocalizationsDelegate { +class _AppLocalizationsDelegate + extends LocalizationsDelegate { const _AppLocalizationsDelegate(); @override @@ -489,25 +493,25 @@ class _AppLocalizationsDelegate extends LocalizationsDelegate } @override - bool isSupported(Locale locale) => ['en', 'ko'].contains(locale.languageCode); + bool isSupported(Locale locale) => + ['en', 'ko'].contains(locale.languageCode); @override bool shouldReload(_AppLocalizationsDelegate old) => false; } AppLocalizations lookupAppLocalizations(Locale locale) { - - // Lookup logic when only language code is specified. switch (locale.languageCode) { - case 'en': return AppLocalizationsEn(); - case 'ko': return AppLocalizationsKo(); + case 'en': + return AppLocalizationsEn(); + case 'ko': + return AppLocalizationsKo(); } throw FlutterError( - 'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely ' - 'an issue with the localizations generation tool. Please file an issue ' - 'on GitHub with a reproducible sample app and the gen-l10n configuration ' - 'that was used.' - ); + 'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely ' + 'an issue with the localizations generation tool. Please file an issue ' + 'on GitHub with a reproducible sample app and the gen-l10n configuration ' + 'that was used.'); } diff --git a/lib/l10n/app_localizations_en.dart b/lib/l10n/app_localizations_en.dart index 67ea5242..fe4d5e47 100644 --- a/lib/l10n/app_localizations_en.dart +++ b/lib/l10n/app_localizations_en.dart @@ -21,10 +21,12 @@ class AppLocalizationsEn extends AppLocalizations { String get setSpareTimeTitle => 'Set your spare time'; @override - String get setSpareTimeDescription => 'You can arrive early by the spare time you set.'; + String get setSpareTimeDescription => + 'You can arrive early by the spare time you set.'; @override - String get setSpareTimeWarning => 'You must set a spare time in case of unexpected situations.'; + String get setSpareTimeWarning => + 'You must set a spare time in case of unexpected situations.'; @override String get todaysAppointments => 'Today\'s Appointments'; @@ -51,7 +53,8 @@ class AppLocalizationsEn extends AppLocalizations { String get pleaseAllowNotifications => 'Please allow notifications'; @override - String get notificationPermissionDescription => 'OnTime needs notifications to help you get ready'; + String get notificationPermissionDescription => + 'OnTime needs notifications to help you get ready'; @override String get late => ' late'; @@ -66,7 +69,8 @@ class AppLocalizationsEn extends AppLocalizations { String get areYouRunningLate => 'Are you running late?'; @override - String get runningLateDescription => 'If you\'re not ready yet, you can stay and continue preparing.\nBut you might be late!'; + String get runningLateDescription => + 'If you\'re not ready yet, you can stay and continue preparing.\nBut you might be late!'; @override String get continuePreparing => 'Continue Preparing'; @@ -81,22 +85,26 @@ class AppLocalizationsEn extends AppLocalizations { String get welcome => 'Welcome!'; @override - String get onboardingStartSubtitle => 'To get ready with OnTime,\nplease tell us about your usual preparation process.'; + String get onboardingStartSubtitle => + 'To get ready with OnTime,\nplease tell us about your usual preparation process.'; @override String get start => 'Start'; @override - String get preparationOrderTitle => 'Please tell us the order of the preparation process you selected.'; + String get preparationOrderTitle => + 'Please tell us the order of the preparation process you selected.'; @override - String get preparationNameTitle => 'Please select your usual preparation process.'; + String get preparationNameTitle => + 'Please select your usual preparation process.'; @override String get multipleSelection => '(Multiple selection)'; @override - String get preparationTimeTitle => 'Please tell us the time required for each step.'; + String get preparationTimeTitle => + 'Please tell us the time required for each step.'; @override String get addAppointment => 'Add appointment'; @@ -160,7 +168,8 @@ class AppLocalizationsEn extends AppLocalizations { String get ok => 'OK'; @override - String get youWillBeLate => 'If you don\'t start preparing now, you\'ll be late!'; + String get youWillBeLate => + 'If you don\'t start preparing now, you\'ll be late!'; @override String get startPreparing => 'Start Preparing'; @@ -169,7 +178,8 @@ class AppLocalizationsEn extends AppLocalizations { String get confirmLeave => 'Are you sure you want to leave?'; @override - String get confirmLeaveDescription => 'If you leave this screen,\nwe won\'t be able to prepare for the appointment together.'; + String get confirmLeaveDescription => + 'If you leave this screen,\nwe won\'t be able to prepare for the appointment together.'; @override String get leave => 'I\'m leaving'; diff --git a/lib/l10n/app_localizations_ko.dart b/lib/l10n/app_localizations_ko.dart index 8bfbb927..ead61b7e 100644 --- a/lib/l10n/app_localizations_ko.dart +++ b/lib/l10n/app_localizations_ko.dart @@ -51,7 +51,8 @@ class AppLocalizationsKo extends AppLocalizations { String get pleaseAllowNotifications => '알림을 허용해주세요'; @override - String get notificationPermissionDescription => '알림을 허용해야 온타임이 준비를 \n도와드릴 수 있어요'; + String get notificationPermissionDescription => + '알림을 허용해야 온타임이 준비를 \n도와드릴 수 있어요'; @override String get late => ' 지각했어요'; @@ -66,7 +67,8 @@ class AppLocalizationsKo extends AppLocalizations { String get areYouRunningLate => '준비가 늦어졌나요?'; @override - String get runningLateDescription => '아직 준비가 늦었다면 남아서 계속 준비하세요.\n하지만 늦을 지도 몰라요!'; + String get runningLateDescription => + '아직 준비가 늦었다면 남아서 계속 준비하세요.\n하지만 늦을 지도 몰라요!'; @override String get continuePreparing => '계속 준비'; @@ -81,7 +83,8 @@ class AppLocalizationsKo extends AppLocalizations { String get welcome => '반가워요!'; @override - String get onboardingStartSubtitle => 'Ontime과 함께 준비하기 위해서\n평소 본인의 준비 과정을 알려주세요'; + String get onboardingStartSubtitle => + 'Ontime과 함께 준비하기 위해서\n평소 본인의 준비 과정을 알려주세요'; @override String get start => '시작하기'; diff --git a/lib/presentation/schedule_create/schedule_date_time/screens/schedule_date_time_form.dart b/lib/presentation/schedule_create/schedule_date_time/screens/schedule_date_time_form.dart index e4560129..2e07889f 100644 --- a/lib/presentation/schedule_create/schedule_date_time/screens/schedule_date_time_form.dart +++ b/lib/presentation/schedule_create/schedule_date_time/screens/schedule_date_time_form.dart @@ -26,16 +26,13 @@ class ScheduleDateTimeForm extends StatelessWidget { readOnly: true, decoration: InputDecoration( labelText: AppLocalizations.of(context)!.appointmentTime, - hintText: - DateFormat.yMd(Localizations.localeOf(context).toString()) - .format(DateTime.now()), + hintText: _localizedDateString(context, DateTime.now()), ), controller: TextEditingController( text: state.scheduleDate.value == null ? null - : DateFormat.yMd( - Localizations.localeOf(context).toString()) - .format(state.scheduleDate.value!)), + : _localizedDateString( + context, state.scheduleDate.value!)), onTap: () { context.showCupertinoDatePickerModal( title: AppLocalizations.of(context)!.enterDate, @@ -89,3 +86,13 @@ class ScheduleDateTimeForm extends StatelessWidget { }); } } + +String _localizedDateString(BuildContext context, DateTime date) { + final locale = Localizations.localeOf(context).languageCode; + if (locale == 'ko') { + return DateFormat('yyyy년 MM월 dd일', 'ko').format(date); + } else { + return DateFormat('yyyy.mm.dd.', Localizations.localeOf(context).toString()) + .format(date); + } +} diff --git a/lib/presentation/shared/theme/theme.dart b/lib/presentation/shared/theme/theme.dart index 84056867..d3575185 100644 --- a/lib/presentation/shared/theme/theme.dart +++ b/lib/presentation/shared/theme/theme.dart @@ -26,7 +26,7 @@ ThemeData themeData = ThemeData( ), inputDecorationTheme: AppInputDecorationTheme.create(_colorScheme, _textTheme), - dialogTheme: DialogTheme( + dialogTheme: DialogThemeData( backgroundColor: _colorScheme.surface, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(16), diff --git a/pubspec.lock b/pubspec.lock index 97ae86cf..17326529 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -76,10 +76,10 @@ packages: dependency: transitive description: name: async - sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.12.0" + version: "2.13.0" bloc: dependency: transitive description: @@ -388,10 +388,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.3.3" ffi: dependency: transitive description: @@ -800,10 +800,10 @@ packages: dependency: "direct main" description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.20.2" io: dependency: transitive description: @@ -912,10 +912,10 @@ packages: dependency: transitive description: name: leak_tracker - sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" url: "https://pub.dev" source: hosted - version: "10.0.8" + version: "10.0.9" leak_tracker_flutter_testing: dependency: transitive description: @@ -1381,10 +1381,10 @@ packages: dependency: "direct main" description: name: table_calendar - sha256: b2896b7c86adf3a4d9c911d860120fe3dbe03c85db43b22fd61f14ee78cdbb63 + sha256: "0c0c6219878b363a2d5f40c7afb159d845f253d061dc3c822aa0d5fe0f721982" url: "https://pub.dev" source: hosted - version: "3.1.3" + version: "3.2.0" term_glyph: dependency: transitive description: @@ -1541,10 +1541,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.3.1" + version: "15.0.0" watcher: dependency: transitive description: diff --git a/widgetbook/pubspec.lock b/widgetbook/pubspec.lock index 6c3221fd..0e0d0d58 100644 --- a/widgetbook/pubspec.lock +++ b/widgetbook/pubspec.lock @@ -5,50 +5,50 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: dc27559385e905ad30838356c5f5d574014ba39872d732111cd07ac0beff4c57 + sha256: da0d9209ca76bde579f2da330aeb9df62b6319c834fa7baae052021b0462401f url: "https://pub.dev" source: hosted - version: "80.0.0" + version: "85.0.0" _flutterfire_internals: dependency: transitive description: name: _flutterfire_internals - sha256: "7fd72d77a7487c26faab1d274af23fb008763ddc10800261abbfb2c067f183d5" + sha256: a5788040810bd84400bc209913fbc40f388cded7cdf95ee2f5d2bff7e38d5241 url: "https://pub.dev" source: hosted - version: "1.3.53" + version: "1.3.58" accessibility_tools: dependency: transitive description: name: accessibility_tools - sha256: b49df78d786610d642f16787a84da737bcc4dd18533a9cb41cb35eb5ceee5e4c + sha256: aaa782bf794d823f371f45d232efe8605cffe081c34a1d83fe4db491ddbba0c7 url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.6.0" analyzer: dependency: transitive description: name: analyzer - sha256: "192d1c5b944e7e53b24b5586db760db934b177d4147c42fbca8c8c5f1eb8d11e" + sha256: abf63d42450c7ad6d8188887d16eeba2f1ff92ea8d8dc673213e99fb3c02b194 url: "https://pub.dev" source: hosted - version: "7.3.0" + version: "7.5.7" args: dependency: transitive description: name: args - sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 url: "https://pub.dev" source: hosted - version: "2.6.0" + version: "2.7.0" asn1lib: dependency: transitive description: name: asn1lib - sha256: "068190d6c99c436287936ba5855af2e1fa78d8083ae65b4db6a281780da727ae" + sha256: "9a8f69025044eb466b9b60ef3bc3ac99b4dc6c158ae9c56d25eeccf5bc56d024" url: "https://pub.dev" source: hosted - version: "1.6.0" + version: "1.6.5" assets: dependency: "direct main" description: @@ -60,10 +60,10 @@ packages: dependency: transitive description: name: async - sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" url: "https://pub.dev" source: hosted - version: "2.12.0" + version: "2.13.0" bloc: dependency: transitive description: @@ -84,10 +84,10 @@ packages: dependency: transitive description: name: build - sha256: cef23f1eda9b57566c81e2133d196f8e3df48f244b317368d65c5943d91148f0 + sha256: "51dc711996cbf609b90cbe5b335bbce83143875a9d58e4b5c6d3c4f684d3dda7" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.5.4" build_config: dependency: transitive description: @@ -108,26 +108,26 @@ packages: dependency: transitive description: name: build_resolvers - sha256: b9e4fda21d846e192628e7a4f6deda6888c36b5b69ba02ff291a01fd529140f0 + sha256: ee4257b3f20c0c90e72ed2b57ad637f694ccba48839a821e87db762548c22a62 url: "https://pub.dev" source: hosted - version: "2.4.4" + version: "2.5.4" build_runner: dependency: "direct dev" description: name: build_runner - sha256: "058fe9dce1de7d69c4b84fada934df3e0153dd000758c4d65964d0166779aa99" + sha256: "382a4d649addbfb7ba71a3631df0ec6a45d5ab9b098638144faf27f02778eb53" url: "https://pub.dev" source: hosted - version: "2.4.15" + version: "2.5.4" build_runner_core: dependency: transitive description: name: build_runner_core - sha256: "22e3aa1c80e0ada3722fe5b63fd43d9c8990759d0a2cf489c8c5d7b2bdebc021" + sha256: "85fbbb1036d576d966332a3f5ce83f2ce66a40bea1a94ad2d5fc29a19a0d3792" url: "https://pub.dev" source: hosted - version: "8.0.0" + version: "9.1.2" built_collection: dependency: transitive description: @@ -140,10 +140,10 @@ packages: dependency: transitive description: name: built_value - sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 + sha256: "082001b5c3dc495d4a42f1d5789990505df20d8547d42507c29050af6933ee27" url: "https://pub.dev" source: hosted - version: "8.9.5" + version: "8.10.1" characters: dependency: transitive description: @@ -156,10 +156,10 @@ packages: dependency: transitive description: name: checked_yaml - sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" url: "https://pub.dev" source: hosted - version: "2.0.3" + version: "2.0.4" clock: dependency: transitive description: @@ -212,10 +212,10 @@ packages: dependency: transitive description: name: dart_style - sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac" + sha256: "5b236382b47ee411741447c1f1e111459c941ea1b3f2b540dde54c210a3662af" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.1.0" dbus: dependency: transitive description: @@ -224,14 +224,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.7.11" - device_frame: + device_frame_plus: dependency: transitive description: - name: device_frame - sha256: d031a06f5d6f4750009672db98a5aa1536aa4a231713852469ce394779a23d75 + name: device_frame_plus + sha256: ccc94abccd4d9f0a9f19ef239001b3a59896e678ad42601371d7065889f2bf78 url: "https://pub.dev" source: hosted - version: "1.2.0" + version: "1.5.0" dio: dependency: transitive description: @@ -260,10 +260,10 @@ packages: dependency: transitive description: name: drift - sha256: "97d5832657d49f26e7a8e07de397ddc63790b039372878d5117af816d0fdb5cb" + sha256: dce2723fb0dd03563af21f305f8f96514c27f870efba934b4fe84d4fedb4eff7 url: "https://pub.dev" source: hosted - version: "2.25.1" + version: "2.28.0" drift_flutter: dependency: transitive description: @@ -292,10 +292,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.3.3" ffi: dependency: transitive description: @@ -316,50 +316,50 @@ packages: dependency: transitive description: name: firebase_core - sha256: f4d8f49574a4e396f34567f3eec4d38ab9c3910818dec22ca42b2a467c685d8b + sha256: c6e8a6bf883d8ddd0dec39be90872daca65beaa6f4cff0051ed3b16c56b82e9f url: "https://pub.dev" source: hosted - version: "3.12.1" + version: "3.15.1" firebase_core_platform_interface: dependency: transitive description: name: firebase_core_platform_interface - sha256: d7253d255ff10f85cfd2adaba9ac17bae878fa3ba577462451163bd9f1d1f0bf + sha256: "5dbc900677dcbe5873d22ad7fbd64b047750124f1f9b7ebe2a33b9ddccc838eb" url: "https://pub.dev" source: hosted - version: "5.4.0" + version: "6.0.0" firebase_core_web: dependency: transitive description: name: firebase_core_web - sha256: faa5a76f6380a9b90b53bc3bdcb85bc7926a382e0709b9b5edac9f7746651493 + sha256: "0ed0dc292e8f9ac50992e2394e9d336a0275b6ae400d64163fdf0a8a8b556c37" url: "https://pub.dev" source: hosted - version: "2.21.1" + version: "2.24.1" firebase_messaging: dependency: transitive description: name: firebase_messaging - sha256: "5fc345c6341f9dc69fd0ffcbf508c784fd6d1b9e9f249587f30434dd8b6aa281" + sha256: "0f3363f97672eb9f65609fa00ed2f62cc8ec93e7e2d4def99726f9165d3d8a73" url: "https://pub.dev" source: hosted - version: "15.2.4" + version: "15.2.9" firebase_messaging_platform_interface: dependency: transitive description: name: firebase_messaging_platform_interface - sha256: a935924cf40925985c8049df4968b1dde5c704f570f3ce380b31d3de6990dd94 + sha256: "7a05ef119a14c5f6a9440d1e0223bcba20c8daf555450e119c4c477bf2c3baa9" url: "https://pub.dev" source: hosted - version: "4.6.4" + version: "4.6.9" firebase_messaging_web: dependency: transitive description: name: firebase_messaging_web - sha256: fafebf6a1921931334f3f10edb5037a5712288efdd022881e2d093e5654a2fd4 + sha256: a4547f76da2a905190f899eb4d0150e1d0fd52206fce469d9f05ae15bb68b2c5 url: "https://pub.dev" source: hosted - version: "3.10.4" + version: "3.10.9" fixnum: dependency: transitive description: @@ -393,10 +393,10 @@ packages: dependency: transitive description: name: flutter_bloc - sha256: "1046d719fbdf230330d3443187cc33cc11963d15c9089f6cc56faa42a4c5f0cc" + sha256: cf51747952201a455a1c840f8171d273be009b932c75093020f9af64f2123e38 url: "https://pub.dev" source: hosted - version: "9.1.0" + version: "9.1.1" flutter_lints: dependency: "direct dev" description: @@ -429,6 +429,11 @@ packages: url: "https://pub.dev" source: hosted version: "8.0.0" + flutter_localizations: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" flutter_riverpod: dependency: transitive description: @@ -449,10 +454,10 @@ packages: dependency: transitive description: name: flutter_secure_storage_linux - sha256: bf7404619d7ab5c0a1151d7c4e802edad8f33535abfbeff2f9e1fe1274e2d705 + sha256: be76c1d24a97d0b98f8b54bce6b481a380a6590df992d0098f868ad54dc8f688 url: "https://pub.dev" source: hosted - version: "1.2.2" + version: "1.2.3" flutter_secure_storage_macos: dependency: transitive description: @@ -489,10 +494,10 @@ packages: dependency: "direct main" description: name: flutter_svg - sha256: c200fd79c918a40c5cd50ea0877fa13f81bdaf6f0a5d3dbcc2a13e3285d6aa1b + sha256: cd57f7969b4679317c17af6fd16ee233c1e60a82ed209d8a475c54fd6fd6f845 url: "https://pub.dev" source: hosted - version: "2.0.17" + version: "2.2.0" flutter_swipe_action_cell: dependency: transitive description: @@ -579,10 +584,10 @@ packages: dependency: transitive description: name: google_identity_services_web - sha256: "55580f436822d64c8ff9a77e37d61f5fb1e6c7ec9d632a43ee324e2a05c3c6c9" + sha256: "5d187c46dc59e02646e10fe82665fc3884a9b71bc1c90c2b8b749316d33ee454" url: "https://pub.dev" source: hosted - version: "0.3.3" + version: "0.3.3+1" google_sign_in: dependency: transitive description: @@ -595,18 +600,18 @@ packages: dependency: transitive description: name: google_sign_in_android - sha256: "4e52c64366bdb3fe758f683b088ee514cc7a95e69c52b5ee9fc5919e1683d21b" + sha256: d5e23c56a4b84b6427552f1cf3f98f716db3b1d1a647f16b96dbb5b93afa2805 url: "https://pub.dev" source: hosted - version: "6.2.0" + version: "6.2.1" google_sign_in_ios: dependency: transitive description: name: google_sign_in_ios - sha256: "29cd125f58f50ceb40e8253d3c0209e321eee3e5df16cd6d262495f7cad6a2bd" + sha256: "102005f498ce18442e7158f6791033bbc15ad2dcc0afa4cf4752e2722a516c96" url: "https://pub.dev" source: hosted - version: "5.8.1" + version: "5.9.0" google_sign_in_platform_interface: dependency: transitive description: @@ -635,10 +640,10 @@ packages: dependency: transitive description: name: http - sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f + sha256: "2c11f3f94c687ee9bad77c171151672986360b2b001d109814ee7140b2cf261b" url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" http_multi_server: dependency: transitive description: @@ -667,10 +672,10 @@ packages: dependency: transitive description: name: inspector - sha256: b8cc01b8ca27663788c2b4905d2ddd453a8e89e50483596d5e320b3469f3df16 + sha256: "4df4a50b36975550ecd76dc30720ffe03ecb8003f594e3e0b2d34916735094d2" url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "3.0.0" intl: dependency: transitive description: @@ -707,82 +712,82 @@ packages: dependency: transitive description: name: kakao_flutter_sdk - sha256: d11c13ac2464c6aaaf8366dbb0fcd3b851af20b675006202654a2be1682dc25a + sha256: "63ef8b145593d2e0180c507958856e63e4e78e6be545b8428cf411b273ff2683" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_auth: dependency: transitive description: name: kakao_flutter_sdk_auth - sha256: "686996c63c7e006ccf9a0bdfee5307465d7ae134d2f1ae2b4a06c597604689bc" + sha256: "028d8803b7545cc5f41d20cda43b813683700e45c6c13aa4ca56f4b9c673305c" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_common: dependency: transitive description: name: kakao_flutter_sdk_common - sha256: "698d5f63d15438ad47af3baf0815fd30dfcacfa76640e96e5a18fc8504f25bde" + sha256: "1c4944cc50c363d4626e9006ab39ee496c8f5ca602b96154272b90d40544aaca" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_friend: dependency: transitive description: name: kakao_flutter_sdk_friend - sha256: d749a9dc867ac9c77013d9f8504b03a971843659969baad6bcb94fbd4be8bcd3 + sha256: "822866e9c9987f766dec09d103f2e5d4de9d919781f6c38c309d1a1a7bab7d60" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_navi: dependency: transitive description: name: kakao_flutter_sdk_navi - sha256: "95cc36856d5d8316b718085f2bf2aa748a73ed934d3e8a65b5bca2b18f9b64cb" + sha256: c865cf94c7c0a1287844dc4b3def56360f227352ade99bdbb08b1bdeff5f7657 url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_share: dependency: transitive description: name: kakao_flutter_sdk_share - sha256: f5502f51f2c9d2f69f29ab258e0379ad3eb4a588ce606640dd6a8105d96525a4 + sha256: "04e1fcd44c47d98782dfb7d13f93ed6a4e4da700b580da37c30bb9f24058ed63" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_talk: dependency: transitive description: name: kakao_flutter_sdk_talk - sha256: d13ef12ba6ec6e1a7d510834eebfbf15c0c902807873d404d7b1f05f48f9c253 + sha256: "5c61373beb9a3d5a8d7425cb0af13ba443c5077f7bbca09376c799a63c83e4c3" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_template: dependency: transitive description: name: kakao_flutter_sdk_template - sha256: "29738faf73a35ab0f8c2bd2ba7b15e46b22fafbf9cf9c7147d3e3d0747211dda" + sha256: ee330ad9a4ebed85ec214a7f58dd25eca0d0e5680168db5a04426a217973ac9f url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" kakao_flutter_sdk_user: dependency: transitive description: name: kakao_flutter_sdk_user - sha256: f3692feefad530bcfcdd1b8cf685b0c2c3da4a6d28a7df7f57529e57b7040f1b + sha256: "5157feeafe58d677d314baa5ccdcb435fd9680c485c3b23e9ad7d97a0c93694f" url: "https://pub.dev" source: hosted - version: "1.9.6" + version: "1.9.7+3" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" url: "https://pub.dev" source: hosted - version: "10.0.8" + version: "10.0.9" leak_tracker_flutter_testing: dependency: transitive description: @@ -851,10 +856,10 @@ packages: dependency: transitive description: name: mockito - sha256: f99d8d072e249f719a5531735d146d8cf04c580d93920b04de75bef6dfb2daf6 + sha256: "4546eac99e8967ea91bae633d2ca7698181d008e95fa4627330cf903d573277a" url: "https://pub.dev" source: hosted - version: "5.4.5" + version: "5.4.6" nested: dependency: transitive description: @@ -874,10 +879,10 @@ packages: dependency: transitive description: name: package_config - sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67" + sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.2.0" path: dependency: transitive description: @@ -906,10 +911,10 @@ packages: dependency: transitive description: name: path_provider_android - sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2" + sha256: d0d310befe2c8ab9e7f393288ccbb11b60c019c6b5afc21973eeee4dda2b35e9 url: "https://pub.dev" source: hosted - version: "2.2.15" + version: "2.2.17" path_provider_foundation: dependency: transitive description: @@ -986,18 +991,18 @@ packages: dependency: transitive description: name: provider - sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c + sha256: "4abbd070a04e9ddc287673bf5a030c7ca8b685ff70218720abab8b092f53dd84" url: "https://pub.dev" source: hosted - version: "6.1.2" + version: "6.1.5" pub_semver: dependency: transitive description: name: pub_semver - sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd" + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" url: "https://pub.dev" source: hosted - version: "2.1.5" + version: "2.2.0" pubspec_parse: dependency: transitive description: @@ -1042,18 +1047,18 @@ packages: dependency: transitive description: name: shared_preferences - sha256: "846849e3e9b68f3ef4b60c60cf4b3e02e9321bc7f4d8c4692cf87ffa82fc8a3a" + sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" url: "https://pub.dev" source: hosted - version: "2.5.2" + version: "2.5.3" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - sha256: "9f9f3d372d4304723e6136663bb291c0b93f5e4c8a4a6314347f481a33bda2b1" + sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac" url: "https://pub.dev" source: hosted - version: "2.4.7" + version: "2.4.10" shared_preferences_foundation: dependency: transitive description: @@ -1151,18 +1156,18 @@ packages: dependency: transitive description: name: sqlite3 - sha256: "32b632dda27d664f85520093ed6f735ae5c49b5b75345afb8b19411bc59bb53d" + sha256: c0503c69b44d5714e6abbf4c1f51a3c3cc42b75ce785f44404765e4635481d38 url: "https://pub.dev" source: hosted - version: "2.7.4" + version: "2.7.6" sqlite3_flutter_libs: dependency: transitive description: name: sqlite3_flutter_libs - sha256: "7adb4cc96dc08648a5eb1d80a7619070796ca6db03901ff2b6dcb15ee30468f3" + sha256: e07232b998755fe795655c56d1f5426e0190c9c435e1752d39e7b1cd33699c71 url: "https://pub.dev" source: hosted - version: "0.5.31" + version: "0.5.34" stack_trace: dependency: transitive description: @@ -1231,10 +1236,10 @@ packages: dependency: transitive description: name: timezone - sha256: ffc9d5f4d1193534ef051f9254063fa53d588609418c84299956c3db9383587d + sha256: dd14a3b83cfd7cb19e7888f1cbc20f258b8d71b54c06f79ac585f14093a287d1 url: "https://pub.dev" source: hosted - version: "0.10.0" + version: "0.10.1" timing: dependency: transitive description: @@ -1255,26 +1260,26 @@ packages: dependency: transitive description: name: url_launcher - sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603" + sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 url: "https://pub.dev" source: hosted - version: "6.3.1" + version: "6.3.2" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193" + sha256: "8582d7f6fe14d2652b4c45c9b6c14c0b678c2af2d083a11b604caeba51930d79" url: "https://pub.dev" source: hosted - version: "6.3.14" + version: "6.3.16" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626" + sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb" url: "https://pub.dev" source: hosted - version: "6.3.2" + version: "6.3.3" url_launcher_linux: dependency: transitive description: @@ -1303,10 +1308,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: "3ba963161bd0fe395917ba881d320b9c4f6dd3c4a233da62ab18a5025c85f1e9" + sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" url: "https://pub.dev" source: hosted - version: "2.4.0" + version: "2.4.1" url_launcher_windows: dependency: transitive description: @@ -1327,10 +1332,10 @@ packages: dependency: transitive description: name: vector_graphics - sha256: "44cc7104ff32563122a929e4620cf3efd584194eec6d1d913eb5ba593dbcf6de" + sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6 url: "https://pub.dev" source: hosted - version: "1.1.18" + version: "1.1.19" vector_graphics_codec: dependency: transitive description: @@ -1343,10 +1348,10 @@ packages: dependency: transitive description: name: vector_graphics_compiler - sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad" + sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331" url: "https://pub.dev" source: hosted - version: "1.1.16" + version: "1.1.17" vector_math: dependency: transitive description: @@ -1359,18 +1364,18 @@ packages: dependency: transitive description: name: vm_service - sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 url: "https://pub.dev" source: hosted - version: "14.3.1" + version: "15.0.0" watcher: dependency: transitive description: name: watcher - sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" + sha256: "0b7fd4a0bbc4b92641dbf20adfd7e3fd1398fe17102d94b674234563e110088a" url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" web: dependency: transitive description: @@ -1383,82 +1388,82 @@ packages: dependency: transitive description: name: web_socket - sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" url: "https://pub.dev" source: hosted - version: "0.1.6" + version: "1.0.1" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5" + sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 url: "https://pub.dev" source: hosted - version: "3.0.2" + version: "3.0.3" webview_flutter: dependency: transitive description: name: webview_flutter - sha256: ec81f57aa1611f8ebecf1d2259da4ef052281cb5ad624131c93546c79ccc7736 + sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba url: "https://pub.dev" source: hosted - version: "4.9.0" + version: "4.13.0" webview_flutter_android: dependency: transitive description: name: webview_flutter_android - sha256: "47a8da40d02befda5b151a26dba71f47df471cddd91dfdb7802d0a87c5442558" + sha256: f6e6afef6e234801da77170f7a1847ded8450778caf2fe13979d140484be3678 url: "https://pub.dev" source: hosted - version: "3.16.9" + version: "4.7.0" webview_flutter_platform_interface: dependency: transitive description: name: webview_flutter_platform_interface - sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d + sha256: f0dc2dc3a2b1e3a6abdd6801b9355ebfeb3b8f6cde6b9dc7c9235909c4a1f147 url: "https://pub.dev" source: hosted - version: "2.10.0" + version: "2.13.1" webview_flutter_wkwebview: dependency: transitive description: name: webview_flutter_wkwebview - sha256: c49a98510080378b1525132f407a92c3dcd3b7145bef04fb8137724aadcf1cf0 + sha256: a3d461fe3467014e05f3ac4962e5fdde2a4bf44c561cb53e9ae5c586600fdbc3 url: "https://pub.dev" source: hosted - version: "3.18.4" + version: "3.22.0" widgetbook: dependency: "direct main" description: name: widgetbook - sha256: "43fb5d65e5617cae47aeb5b25d6c8c51ee44bb5296b9a72df7bd60dbc6c51877" + sha256: a9d58080174ba5666e8515311b4c952ba02ddcb5cc9d9db244d0aac447988052 url: "https://pub.dev" source: hosted - version: "3.11.0" + version: "3.14.3" widgetbook_annotation: dependency: "direct main" description: name: widgetbook_annotation - sha256: b6f1da292c20a6238d973a640d253ce3ebddbe1f9fa8f2afd72624797a38e7cc + sha256: "41662c48c2a0e82cac676a83727203d863621a5f6fb2505395287b8789afdf38" url: "https://pub.dev" source: hosted - version: "3.3.0" + version: "3.5.0" widgetbook_generator: dependency: "direct dev" description: name: widgetbook_generator - sha256: ac59f4208daf449c104fccfab77d210e53e92b8a52b74f51a81666418c9a6023 + sha256: "38320c313a425e5a354bfdf6d2922efd69b5c3e9c0bf414d3ba7f947c303448a" url: "https://pub.dev" source: hosted - version: "3.10.0" + version: "3.13.0" win32: dependency: transitive description: name: win32 - sha256: b89e6e24d1454e149ab20fbb225af58660f0c0bf4475544650700d8e2da54aef + sha256: "66814138c3562338d05613a6e368ed8cfb237ad6d64a9e9334be3f309acfca03" url: "https://pub.dev" source: hosted - version: "5.11.0" + version: "5.14.0" xdg_directories: dependency: transitive description: @@ -1484,5 +1489,5 @@ packages: source: hosted version: "3.1.3" sdks: - dart: ">=3.7.0 <4.0.0" - flutter: ">=3.27.0" + dart: ">=3.8.0 <4.0.0" + flutter: ">=3.32.0"