[
+ Shadow(
+ offset: Offset(5.0, 5.0),
+ blurRadius: 12.0,
+ color: Colors.black54,
+ ),
+ Shadow(
+ offset: Offset(-3.0, 3.0),
+ blurRadius: 12.0,
+ color: Colors.black54,
+ ),
+ ],
+ ),
+ overflow: TextOverflow.fade,
+ maxLines: 4,
+ softWrap: true,
+ textAlign: TextAlign.center,
+ ),
+ SizedBox(
+ height: 15,
+ ),
+ Padding(
+ padding: const EdgeInsets.only(top: 10, left: 55, right: 55),
+ child: Text(
+ widget.exerciseDescription,
+ style: GoogleFonts.inter(fontSize: 12, color: Colors.yellow[300]),
+ maxLines: 1,
+ overflow: TextOverflow.fade,
+ softWrap: true,
+ )),
+ InkWell(
+ child: Text(
+ t("More »"),
+ style: GoogleFonts.inter(fontSize: 12, color: Colors.blue[200]),
+ ),
+ onTap: () => {
+ showDialog(
+ context: context,
+ builder: (BuildContext context) {
+ return DialogHTML(title: widget.exerciseName, htmlData: '' + widget.exerciseDescription + '
');
+ })
+ },
+ ),
+ Divider(
+ color: Colors.transparent,
+ ),
+ Text(
+ t(widget.exerciseTask),
+ style: GoogleFonts.inter(
+ fontSize: 14,
+ color: Colors.orange,
+ fontWeight: FontWeight.bold,
+ ),
+ maxLines: 3,
+ textAlign: TextAlign.center,
+ overflow: TextOverflow.fade,
+ softWrap: true,
+ ),
+ Divider(
+ color: Colors.transparent,
+ ),
+ columnQuantityUnit(),
+ Divider(
+ color: Colors.transparent,
+ ),
+ columnQuantity(),
+ Divider(
+ color: Colors.transparent,
+ ),
+ widget.hasUnitQuantity
+ ? Text(
+ t("Step") + ": " + "1/4",
+ style: GoogleFonts.inter(
+ fontSize: 22,
+ color: Colors.white,
+ fontWeight: FontWeight.bold,
),
- SizedBox(
- height: 15,
- ),
- Text(
- widget.exerciseDescription,
- style: GoogleFonts.inter(fontSize: 12, color: Colors.yellow[300]),
- maxLines: 1,
- overflow: TextOverflow.fade,
- softWrap: true,
- ),
- InkWell(
- child: Text(
- t("More »"),
- style: GoogleFonts.inter(fontSize: 12, color: Colors.blue[200]),
- ),
- onTap: () => {
- showDialog(
- context: context,
- builder: (BuildContext context) {
- return DialogHTML(title: widget.exerciseName, htmlData: '' + widget.exerciseDescription + '
');
- })
- },
- ),
- Divider(
- color: Colors.transparent,
- ),
- widget.hasUnitQuantity
- ? Text(
- t(widget.exerciseTask),
- style: GoogleFonts.inter(
- fontSize: 14,
- color: Colors.orange,
- fontWeight: FontWeight.bold,
- ),
- maxLines: 3,
- textAlign: TextAlign.center,
- overflow: TextOverflow.fade,
- softWrap: true,
- )
- : Offstage(),
- Divider(
- color: Colors.transparent,
- ),
- columnQuantityUnit(),
- Divider(
- color: Colors.transparent,
- ),
- columnQuantity(),
- Divider(
- color: Colors.transparent,
- ),
- widget.hasUnitQuantity
- ? Text(
- t("Step") + ": " + "1/4",
- style: GoogleFonts.inter(
- fontSize: 22,
- color: Colors.white,
- fontWeight: FontWeight.bold,
- ),
- maxLines: 3,
- textAlign: TextAlign.center,
- overflow: TextOverflow.fade,
- softWrap: true,
- )
- : Offstage(),
- Divider(
- color: Colors.transparent,
- ),
- Divider(
- color: Colors.transparent,
- ),
- /* TextButton(
+ maxLines: 3,
+ textAlign: TextAlign.center,
+ overflow: TextOverflow.fade,
+ softWrap: true,
+ )
+ : Offstage(),
+ Divider(
+ color: Colors.transparent,
+ ),
+ Divider(
+ color: Colors.transparent,
+ ),
+ /* TextButton(
onPressed: () {
widget.onSubmit();
/* showDialog(
@@ -252,43 +248,46 @@ class _ExerciseSaveState extends State with Trans {
),
],
)), */
- ]),
- )));
+ ]),
+ )));
}
- Column columnQuantityUnit() {
- Column row = Column();
+ Widget columnQuantityUnit() {
+ Widget row = Padding(padding: const EdgeInsets.only(top: 10, left: 55, right: 55), child: Column());
if (widget.hasUnitQuantity) {
- row = Column(mainAxisAlignment: MainAxisAlignment.spaceAround, children: [
- TextFormField(
- focusNode: _nodeText1,
- controller: _controller1,
- decoration: InputDecoration(
- contentPadding: EdgeInsets.only(left: 25, top: 5, bottom: 5),
- labelText: t(widget.unitQuantityUnit!),
- labelStyle: GoogleFonts.inter(fontSize: 20, color: Colors.yellow[50]),
- fillColor: Colors.black38,
- filled: true,
- border: OutlineInputBorder(
- gapPadding: 8.0,
- borderRadius: BorderRadius.circular(12.0),
- borderSide: BorderSide(color: Colors.white12, width: 0.4),
- ),
- ),
- keyboardType: TextInputType.numberWithOptions(decimal: true),
- textInputAction: TextInputAction.done,
- style: GoogleFonts.archivoBlack(fontSize: 80, color: Colors.yellow[300]),
- onChanged: (value) => widget.onUnitQuantityChanged!(value)),
- ]);
+ row = Padding(
+ padding: const EdgeInsets.only(top: 10, left: 55, right: 55),
+ child: Column(mainAxisAlignment: MainAxisAlignment.spaceAround, children: [
+ TextFormField(
+ focusNode: _nodeText1,
+ controller: _controller1,
+ decoration: InputDecoration(
+ contentPadding: EdgeInsets.only(left: 25, top: 5, bottom: 5),
+ labelText: t(widget.unitQuantityUnit!),
+ labelStyle: GoogleFonts.inter(fontSize: 20, color: Colors.yellow[50]),
+ fillColor: Colors.black38,
+ filled: true,
+ border: OutlineInputBorder(
+ gapPadding: 8.0,
+ borderRadius: BorderRadius.circular(12.0),
+ borderSide: BorderSide(color: Colors.white12, width: 0.4),
+ ),
+ ),
+ keyboardType: TextInputType.numberWithOptions(decimal: true),
+ textInputAction: TextInputAction.done,
+ style: GoogleFonts.archivoBlack(fontSize: 80, color: Colors.yellow[300]),
+ onChanged: (value) => widget.onUnitQuantityChanged!(value)),
+ ]));
}
return row;
}
- Column columnQuantity() {
+ Widget columnQuantity() {
if (widget.unit == "second") {
return Column(mainAxisAlignment: MainAxisAlignment.spaceAround, children: [
Padding(
- padding: const EdgeInsets.only(bottom: 0),
+ padding: const EdgeInsets.only(top: 10, left: 55, right: 55),
+ //padding: const EdgeInsets.only(bottom: 0),
child: StreamBuilder(
stream: stopWatchTimer.rawTime,
initialData: stopWatchTimer.rawTime.valueWrapper?.value,
@@ -300,13 +299,14 @@ class _ExerciseSaveState extends State with Trans {
padding: const EdgeInsets.all(8),
child: Text(
displayTime,
- style: const TextStyle(fontSize: 40, fontFamily: 'Helvetica', fontWeight: FontWeight.bold, color: Colors.white),
+ style: const TextStyle(fontSize: 35, fontFamily: 'Helvetica', fontWeight: FontWeight.bold, color: Colors.white),
),
),
]);
})),
Padding(
- padding: const EdgeInsets.all(2),
+ //padding: const EdgeInsets.all(2),
+ padding: const EdgeInsets.only(top: 10, left: 25, right: 25),
child: Column(
children: [
Padding(
@@ -315,7 +315,7 @@ class _ExerciseSaveState extends State with Trans {
mainAxisAlignment: MainAxisAlignment.center,
children: [
Padding(
- padding: const EdgeInsets.symmetric(horizontal: 10),
+ padding: const EdgeInsets.symmetric(horizontal: 5),
child: IconButton(
padding: const EdgeInsets.all(2),
color: Colors.white70,
@@ -328,7 +328,7 @@ class _ExerciseSaveState extends State with Trans {
),
),
Padding(
- padding: const EdgeInsets.symmetric(horizontal: 10),
+ padding: const EdgeInsets.symmetric(horizontal: 5),
child: IconButton(
padding: const EdgeInsets.all(2),
iconSize: 40,
@@ -341,7 +341,7 @@ class _ExerciseSaveState extends State with Trans {
),
),
Padding(
- padding: const EdgeInsets.symmetric(horizontal: 10),
+ padding: const EdgeInsets.symmetric(horizontal: 5),
child: IconButton(
padding: const EdgeInsets.all(2),
iconSize: 40,
@@ -364,30 +364,32 @@ class _ExerciseSaveState extends State with Trans {
TimePickerWidget(onChange: (value) => widget.onQuantityChanged((value).toString()))
]);
}
- Column row = Column(mainAxisAlignment: MainAxisAlignment.spaceAround, children: [
- TextFormField(
- focusNode: _nodeText2,
- controller: _controller2,
- decoration: InputDecoration(
- contentPadding: EdgeInsets.only(left: 25, top: 5, bottom: 5),
- labelText: t(widget.unit),
- labelStyle: GoogleFonts.inter(fontSize: 20, color: Colors.orange[50], decorationColor: Colors.black12),
- fillColor: Colors.black38,
- filled: true,
- border: OutlineInputBorder(
- gapPadding: 8.0,
- borderRadius: BorderRadius.circular(12.0),
- borderSide: BorderSide(color: Colors.black26, width: 0.4),
+ Widget row = Container(
+ padding: const EdgeInsets.only(top: 10, left: 55, right: 55),
+ child: Column(mainAxisAlignment: MainAxisAlignment.spaceAround, children: [
+ TextFormField(
+ focusNode: _nodeText2,
+ controller: _controller2,
+ decoration: InputDecoration(
+ contentPadding: EdgeInsets.only(left: 25, top: 5, bottom: 5),
+ labelText: t(widget.unit),
+ labelStyle: GoogleFonts.inter(fontSize: 20, color: Colors.orange[50], decorationColor: Colors.black12),
+ fillColor: Colors.black38,
+ filled: true,
+ border: OutlineInputBorder(
+ gapPadding: 8.0,
+ borderRadius: BorderRadius.circular(12.0),
+ borderSide: BorderSide(color: Colors.black26, width: 0.4),
+ ),
+ ),
+ keyboardType: TextInputType.number,
+ textInputAction: TextInputAction.next,
+ style: GoogleFonts.archivoBlack(fontSize: 80, color: Colors.orange[200]),
+ onChanged: (value) {
+ widget.onQuantityChanged(value);
+ },
),
- ),
- keyboardType: TextInputType.number,
- textInputAction: TextInputAction.next,
- style: GoogleFonts.archivoBlack(fontSize: 80, color: Colors.orange[200]),
- onChanged: (value) {
- widget.onQuantityChanged(value);
- },
- ),
- ]);
+ ]));
return row;
}
diff --git a/lib/widgets/home.dart b/lib/widgets/home.dart
index d0d47ca..22dce82 100644
--- a/lib/widgets/home.dart
+++ b/lib/widgets/home.dart
@@ -36,7 +36,7 @@ class _HomePageState extends State with Logging {
}
Future runDelayedEvent() async {
- await Future.delayed(Duration(seconds: 2), () async {
+ await Future.delayed(Duration(milliseconds: 500), () async {
// ignore: close_sinks
SessionBloc sessionBloc = BlocProvider.of(context);
if (sessionBloc.state != SessionReady()) {
diff --git a/lib/widgets/menu_page_widget.dart b/lib/widgets/menu_page_widget.dart
index df23b78..8829ffd 100644
--- a/lib/widgets/menu_page_widget.dart
+++ b/lib/widgets/menu_page_widget.dart
@@ -68,7 +68,7 @@ class _MenuPageWidgetState extends State with Trans, Logging {
@override
bool didUpdateWidget(MenuPageWidget oldWidget) {
super.didUpdateWidget(oldWidget);
- scrollController.animateTo(40, duration: Duration(milliseconds: 300), curve: Curves.easeIn);
+ scrollController.animateTo(5, duration: Duration(milliseconds: 300), curve: Curves.easeIn);
return true;
}
@@ -234,17 +234,18 @@ class _MenuPageWidgetState extends State with Trans, Logging {
SliverGrid getFilterElements(MenuBloc menuBloc) {
List list = [];
+ int index = 0;
menuBloc.exerciseDeviceRepository.getGymDevices().forEach((element) {
String deviceName = AppLanguage().appLocal == Locale('en') ? element.name : element.nameTranslation;
ChoiceChip chip = ChoiceChip(
- labelPadding: EdgeInsets.only(right: 5),
+ labelPadding: EdgeInsets.only(right: 3),
avatar: Icon(
Icons.remove_circle_outline,
color: Colors.orange,
- size: 18,
+ size: 10,
),
label: Text(deviceName),
- labelStyle: TextStyle(fontSize: 9, color: Colors.black),
+ labelStyle: TextStyle(fontSize: 9, color: Colors.indigo),
selectedColor: Colors.white,
selected: menuBloc.selectedDevice(element.exerciseDeviceId),
backgroundColor: Colors.blue[100],
@@ -252,6 +253,11 @@ class _MenuPageWidgetState extends State with Trans, Logging {
onSelected: (value) => menuBloc.add(MenuFilterExerciseType(deviceId: element.exerciseDeviceId)),
);
list.add(chip);
+ if (index == 4) {
+ list.add(Divider());
+ }
+
+ index++;
});
SliverGrid sliverList = SliverGrid(
diff --git a/lib/widgets/menu_search_bar.dart b/lib/widgets/menu_search_bar.dart
index 5e7efb2..fe98635 100644
--- a/lib/widgets/menu_search_bar.dart
+++ b/lib/widgets/menu_search_bar.dart
@@ -2,7 +2,7 @@ import 'dart:async';
import 'package:aitrainer_app/model/workout_menu_tree.dart';
import 'package:aitrainer_app/util/trans.dart';
-import 'package:dropdown_search/dropdown_search.dart';
+import 'package:aitrainer_app/library/dropdown_search.dart';
//import 'package:aitrainer_app/library/dropdown_search.dart';
import 'package:flutter/material.dart';
import 'package:google_fonts/google_fonts.dart';
diff --git a/lib/widgets/number_picker.dart b/lib/widgets/number_picker.dart
index 7487775..12e1840 100644
--- a/lib/widgets/number_picker.dart
+++ b/lib/widgets/number_picker.dart
@@ -35,19 +35,23 @@ class _NumberPickerWidgetState extends State with Trans {
void initState() {
super.initState();
_scrollController = FixedExtentScrollController(initialItem: widget.initalValue);
+ _scrollController.animateToItem(widget.initalValue, duration: Duration(milliseconds: 100), curve: Curves.easeIn);
}
@override
void didUpdateWidget(NumberPickerWidget oldWidget) {
super.didUpdateWidget(oldWidget);
- _scrollController.animateToItem(widget.initalValue, duration: Duration(milliseconds: 100), curve: Curves.easeIn);
}
Widget durationPicker({bool inSeconds = false, bool inHundredths = false}) {
double value = 0;
return CupertinoPicker(
scrollController: _scrollController,
+ useMagnifier: true,
+ magnification: 1.2,
+ diameterRatio: 0.85,
backgroundColor: Colors.transparent,
+ selectionOverlay: Container(),
onSelectedItemChanged: (x) {
currentData = x.toDouble();
value = x.toDouble();
@@ -57,7 +61,7 @@ class _NumberPickerWidgetState extends State with Trans {
},
children: List.generate(
widget.maxValue, (index) => Text('$index ' + widget.unit, style: TextStyle(color: widget.color, fontSize: widget.fontSize))),
- itemExtent: 40,
+ itemExtent: 30,
);
}
@@ -66,32 +70,30 @@ class _NumberPickerWidgetState extends State with Trans {
Widget build(BuildContext context) {
setContext(context);
return Container(
- //color: Colors.white24,
+ color: Colors.transparent,
width: MediaQuery.of(context).size.width * .40,
- child: Padding(
- padding: const EdgeInsets.symmetric(horizontal: 5.0),
- child: Column(
- mainAxisSize: MainAxisSize.min,
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Container(
- color: Colors.transparent,
- width: MediaQuery.of(context).size.width * .35,
- child: Center(
- child: Container(
- color: Colors.transparent,
- width: MediaQuery.of(context).size.width * 0.95,
- height: MediaQuery.of(context).size.height * 0.25,
- child: Row(
- mainAxisAlignment: MainAxisAlignment.center,
- children: [
- Expanded(child: durationPicker()),
- ],
- )),
- ),
+ child: Column(
+ mainAxisSize: MainAxisSize.min,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Container(
+ color: Colors.transparent,
+ width: MediaQuery.of(context).size.width * .35,
+ child: Center(
+ child: Container(
+ color: Colors.transparent,
+ width: MediaQuery.of(context).size.width * 0.95,
+ //height: MediaQuery.of(context).size.height * 0.25,
+ height: 100,
+ child: Row(
+ mainAxisAlignment: MainAxisAlignment.center,
+ children: [
+ Expanded(child: durationPicker()),
+ ],
+ )),
),
- ],
- ),
+ ),
+ ],
),
);
}
diff --git a/pubspec.lock b/pubspec.lock
index d0704ae..63995c4 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -77,14 +77,14 @@ packages:
name: build
url: "https://pub.dartlang.org"
source: hosted
- version: "1.6.3"
+ version: "2.0.0"
build_config:
dependency: transitive
description:
name: build_config
url: "https://pub.dartlang.org"
source: hosted
- version: "0.4.5"
+ version: "0.4.7"
build_daemon:
dependency: transitive
description:
@@ -98,21 +98,21 @@ packages:
name: build_resolvers
url: "https://pub.dartlang.org"
source: hosted
- version: "1.5.4"
+ version: "2.0.0"
build_runner:
dependency: "direct dev"
description:
name: build_runner
url: "https://pub.dartlang.org"
source: hosted
- version: "1.11.5"
+ version: "1.12.2"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
url: "https://pub.dartlang.org"
source: hosted
- version: "6.1.10"
+ version: "6.1.12"
built_collection:
dependency: transitive
description:
@@ -154,7 +154,7 @@ packages:
name: checked_yaml
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
+ version: "2.0.1"
chewie:
dependency: transitive
description:
@@ -211,6 +211,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
+ convex_bottom_bar:
+ dependency: "direct main"
+ description:
+ name: convex_bottom_bar
+ url: "https://pub.dartlang.org"
+ source: hosted
+ version: "3.0.0"
coverage:
dependency: transitive
description:
@@ -252,7 +259,7 @@ packages:
name: dart_style
url: "https://pub.dartlang.org"
source: hosted
- version: "1.3.14"
+ version: "2.0.0"
devicelocale:
dependency: "direct main"
description:
@@ -260,13 +267,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.4.1"
- dropdown_search:
- dependency: "direct main"
- description:
- name: dropdown_search
- url: "https://pub.dartlang.org"
- source: hosted
- version: "0.5.0"
equatable:
dependency: "direct main"
description:
@@ -315,7 +315,7 @@ packages:
name: firebase_analytics
url: "https://pub.dartlang.org"
source: hosted
- version: "8.0.0-dev.0"
+ version: "8.0.0-dev.2"
firebase_analytics_platform_interface:
dependency: transitive
description:
@@ -336,28 +336,28 @@ packages:
name: firebase_auth
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.1"
+ version: "1.0.3"
firebase_auth_platform_interface:
dependency: transitive
description:
name: firebase_auth_platform_interface
url: "https://pub.dartlang.org"
source: hosted
- version: "4.0.0"
+ version: "4.0.2"
firebase_auth_web:
dependency: transitive
description:
name: firebase_auth_web
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.3"
+ version: "1.0.5"
firebase_core:
dependency: "direct main"
description:
name: firebase_core
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.2"
+ version: "1.0.3"
firebase_core_platform_interface:
dependency: transitive
description:
@@ -378,21 +378,21 @@ packages:
name: firebase_messaging
url: "https://pub.dartlang.org"
source: hosted
- version: "9.1.0"
+ version: "9.1.1"
firebase_messaging_platform_interface:
dependency: transitive
description:
name: firebase_messaging_platform_interface
url: "https://pub.dartlang.org"
source: hosted
- version: "2.1.0"
+ version: "2.1.1"
firebase_messaging_web:
dependency: transitive
description:
name: firebase_messaging_web
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.3"
+ version: "1.0.4"
fixnum:
dependency: transitive
description:
@@ -407,6 +407,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.30.0"
+ flurry:
+ dependency: "direct main"
+ description:
+ name: flurry
+ url: "https://pub.dartlang.org"
+ source: hosted
+ version: "0.0.7"
flutter:
dependency: "direct main"
description: flutter
@@ -425,21 +432,21 @@ packages:
name: flutter_facebook_auth
url: "https://pub.dartlang.org"
source: hosted
- version: "3.3.1+1"
+ version: "3.3.2+2"
flutter_facebook_auth_platform_interface:
dependency: transitive
description:
name: flutter_facebook_auth_platform_interface
url: "https://pub.dartlang.org"
source: hosted
- version: "2.4.0"
+ version: "2.4.1"
flutter_facebook_auth_web:
dependency: transitive
description:
name: flutter_facebook_auth_web
url: "https://pub.dartlang.org"
source: hosted
- version: "2.4.0+2"
+ version: "2.4.1+1"
flutter_html:
dependency: "direct main"
description:
@@ -545,7 +552,7 @@ packages:
name: graphs
url: "https://pub.dartlang.org"
source: hosted
- version: "0.2.0"
+ version: "1.0.0"
html:
dependency: transitive
description:
@@ -615,7 +622,7 @@ packages:
name: json_annotation
url: "https://pub.dartlang.org"
source: hosted
- version: "3.1.1"
+ version: "4.0.1"
keyboard_actions:
dependency: "direct main"
description:
@@ -636,7 +643,7 @@ packages:
name: logging
url: "https://pub.dartlang.org"
source: hosted
- version: "0.11.4"
+ version: "1.0.1"
matcher:
dependency: transitive
description:
@@ -832,7 +839,7 @@ packages:
name: pubspec_parse
url: "https://pub.dartlang.org"
source: hosted
- version: "0.1.8"
+ version: "1.0.0"
purchases_flutter:
dependency: "direct main"
description:
@@ -881,7 +888,7 @@ packages:
name: sentry
url: "https://pub.dartlang.org"
source: hosted
- version: "4.1.0-nullsafety.1"
+ version: "5.0.0"
shared_preferences:
dependency: "direct dev"
description:
@@ -963,14 +970,14 @@ packages:
name: smartlook
url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.6"
+ version: "1.0.7"
source_gen:
dependency: transitive
description:
name: source_gen
url: "https://pub.dartlang.org"
source: hosted
- version: "0.9.10+3"
+ version: "1.0.0"
source_map_stack_trace:
dependency: transitive
description:
@@ -1040,7 +1047,7 @@ packages:
name: stream_transform
url: "https://pub.dartlang.org"
source: hosted
- version: "1.2.0"
+ version: "2.0.0"
string_scanner:
dependency: transitive
description:
@@ -1208,7 +1215,7 @@ packages:
name: webkit_inspection_protocol
url: "https://pub.dartlang.org"
source: hosted
- version: "0.7.4"
+ version: "1.0.0"
webview_flutter:
dependency: transitive
description:
diff --git a/pubspec.yaml b/pubspec.yaml
index de05cb5..c8f0a9b 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -27,7 +27,7 @@ dependencies:
cupertino_icons: ^1.0.0
google_fonts: ^2.0.0
devicelocale: ^0.4.1
- sentry: ^4.1.0-nullsafety.1
+ sentry: ^5.0.0
flutter_bloc: ^7.0.0
equatable: ^2.0.0
@@ -54,25 +54,28 @@ dependencies:
confetti: ^0.6.0-nullsafety
crypto: ^3.0.0
carousel_slider: ^4.0.0-nullsafety.0
- dropdown_search: ^0.5.0
+ #dropdown_search: ^0.5.0
+ convex_bottom_bar: ^3.0.0
- firebase_core: ^1.0.2
- firebase_analytics: ^8.0.0-dev.0
- firebase_messaging: ^9.1.0
+ firebase_core: ^1.0.3
+ firebase_analytics: ^8.0.0-dev.2
+ firebase_messaging: ^9.1.1
flutter_local_notifications: ^5.0.0
- firebase_auth: ^1.0.1
- flutter_facebook_auth: ^3.3.1+1
+ firebase_auth: ^1.0.3
+ flutter_facebook_auth: ^3.3.2
google_sign_in: ^5.0.1
apple_sign_in: ^0.1.0
- smartlook: ^1.0.6
+ smartlook: ^1.0.7
+ flurry: ^0.0.4
#animated_widgets: ^1.0.6
mockito: ^5.0.3
sqflite: ^2.0.0+3
flutter_secure_storage: ^4.1.0
+ #social_share: ^2.1.1
flutter_localizations:
sdk: flutter
@@ -167,6 +170,7 @@ flutter:
- asset/image/BMI_graph_C.png
- asset/image/BMI_mutato.png
- asset/image/haken.png
+ - asset/image/kupa.png
- asset/image/pict_calorie.png
- asset/image/pict_development_by_bodypart_percent.png
@@ -226,6 +230,8 @@ flutter:
- asset/menu/3.bcs1.jpg
- asset/menu/300m.jpg
- asset/menu/400m.jpg
+ - asset/menu/FG_1_test.jpg
+ - asset/menu/FG_1_training.jpg
- asset/menu/alternate_dumbbell_presses.jpg
- asset/menu/alternate_standing_shoulder_press.jpg
- asset/menu/arnold_press.jpg