Aeris : mobile_client - Adding HomePage and Overlayed_Text widget

This commit is contained in:
Nom4D
2022-01-19 19:52:25 +01:00
parent e25fbda022
commit edafc3c42b
6 changed files with 340 additions and 72 deletions
+5 -1
View File
@@ -1 +1,5 @@
library aeris;
library aeris;
export 'package:mobile/src/views/home_page.dart';
export 'package:mobile/src/widgets/overlayed_texts.dart';
+9 -71
View File
@@ -1,31 +1,12 @@
import 'package:mobile/src/views/home_page.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
runApp(const MyApp());
}
// MaterialColor createMaterialColor(Color color) {
// List strengths = <double>[.05];
// final swatch = <int, Color>{};
// final int r = color.red, g = color.green, b = color.blue;
//
// for (int i = 1; i < 10; i++) {
// strengths.add(0.1 * i);
// }
// strengths.forEach((strength) {
// final double ds = 0.5 - strength;
// swatch[(strength * 1000).round()] = Color.fromRGBO(
// r + ((ds < 0 ? r : (255 - r)) * ds).round(),
// g + ((ds < 0 ? g : (255 - g)) * ds).round(),
// b + ((ds < 0 ? b : (255 - b)) * ds).round(),
// 1,
// );
// });
// return MaterialColor(color.value, swatch);
// }
class MyApp extends StatelessWidget {
MyApp({Key? key}) : super(key: key);
const MyApp({Key? key}) : super(key: key);
final ColorScheme aerisScheme = const ColorScheme(
primary: Color.fromRGBO(55, 71, 79, 1),
@@ -45,58 +26,15 @@ class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
debugShowCheckedModeBanner: false,
title: 'Aeris',
theme: ThemeData(
colorScheme: aerisScheme
),
home: const MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}
class MyHomePage extends StatefulWidget {
const MyHomePage({Key? key, required this.title}) : super(key: key);
final String title;
@override
State<MyHomePage> createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
const Text(
'You have pushed the button this many times:',
),
Text(
'$_counter',
style: Theme.of(context).textTheme.headline4,
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: const Icon(Icons.add),
),
initialRoute: '/',
routes: {
'/': (BuildContext context) => const HomePage()
}
);
}
}
+58
View File
@@ -0,0 +1,58 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:mobile/src/widgets/overlayed_texts.dart';
class HomePage extends StatelessWidget {
const HomePage({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
// Container(
// alignment: Alignment.center,
// child: CachedNetworkImage(
// imageUrl: "https://cdn.dribbble.com/users/244018/screenshots/1506924/media/b0f10339a5471a0733561a83636babf8.gif",
// imageBuilder: (context, imageProvider) => Container(
// decoration: BoxDecoration(
// image: DecorationImage(
// image: imageProvider,
// fit: BoxFit.cover,
// colorFilter: ColorFilter.mode(Colors.black.withOpacity(0.9), BlendMode.dstATop),
// )
// ),
// ),
// ),
// ),
Align(
alignment: Alignment.bottomCenter,
child: ElevatedButton(
style: ElevatedButton.styleFrom(
textStyle: const TextStyle(
fontSize: 20
),
primary: Theme.of(context).colorScheme.primary,
),
onPressed: () {
print("On clique sur 'se connecter'!");
},
child: const Tooltip(
message: 'Connexion',
child: Text("Se connecter")
),
),
),
OverlayedText(
text: "Aeris your new Action Dashboard!",
overlayedColor: Colors.black,
textColor: Theme.of(context).colorScheme.secondary,
fontSize: 20,
strokeWidth: 1.95
)
],
)
);
}
}
@@ -0,0 +1,47 @@
import 'package:animated_text_kit/animated_text_kit.dart';
import 'package:flutter/material.dart';
class OverlayedText extends StatelessWidget {
final String text;
final Color overlayedColor;
final Color textColor;
final double fontSize;
final double strokeWidth;
OverlayedText({
required this.text,
required this.overlayedColor,
required this.textColor,
required this.fontSize,
this.strokeWidth = 3.0
});
@override
Widget build(BuildContext context) {
return Container(
alignment: Alignment.center,
child: Stack(
children: <Widget>[
Text(text,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: fontSize,
foreground: Paint()
..style = PaintingStyle.stroke
..strokeWidth = strokeWidth
..color = overlayedColor,
),
),
Text(text,
textAlign: TextAlign.center,
style: TextStyle(
fontSize: fontSize,
color: textColor
),
)
]
)
);
}
}
+218
View File
@@ -1,6 +1,13 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
animated_text_kit:
dependency: "direct main"
description:
name: animated_text_kit
url: "https://pub.dartlang.org"
source: hosted
version: "4.2.1"
async:
dependency: transitive
description:
@@ -15,6 +22,27 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.0"
cached_network_image:
dependency: "direct main"
description:
name: cached_network_image
url: "https://pub.dartlang.org"
source: hosted
version: "3.2.0"
cached_network_image_platform_interface:
dependency: transitive
description:
name: cached_network_image_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.0"
cached_network_image_web:
dependency: transitive
description:
name: cached_network_image_web
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
characters:
dependency: transitive
description:
@@ -43,6 +71,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.15.0"
crypto:
dependency: transitive
description:
name: crypto
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.1"
cupertino_icons:
dependency: "direct main"
description:
@@ -57,11 +92,39 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
ffi:
dependency: transitive
description:
name: ffi
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.2"
file:
dependency: transitive
description:
name: file
url: "https://pub.dartlang.org"
source: hosted
version: "6.1.2"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_blurhash:
dependency: transitive
description:
name: flutter_blurhash
url: "https://pub.dartlang.org"
source: hosted
version: "0.6.0"
flutter_cache_manager:
dependency: transitive
description:
name: flutter_cache_manager
url: "https://pub.dartlang.org"
source: hosted
version: "3.3.0"
flutter_lints:
dependency: "direct dev"
description:
@@ -74,6 +137,27 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
http:
dependency: transitive
description:
name: http
url: "https://pub.dartlang.org"
source: hosted
version: "0.13.4"
http_parser:
dependency: transitive
description:
name: http_parser
url: "https://pub.dartlang.org"
source: hosted
version: "4.0.0"
intl:
dependency: "direct main"
description:
name: intl
url: "https://pub.dartlang.org"
source: hosted
version: "0.17.0"
lints:
dependency: transitive
description:
@@ -102,6 +186,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.7.0"
octo_image:
dependency: transitive
description:
name: octo_image
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.1"
path:
dependency: transitive
description:
@@ -109,6 +200,90 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.0"
path_provider:
dependency: transitive
description:
name: path_provider
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.8"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.11"
path_provider_ios:
dependency: transitive
description:
name: path_provider_ios
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.7"
path_provider_linux:
dependency: transitive
description:
name: path_provider_linux
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.5"
path_provider_macos:
dependency: transitive
description:
name: path_provider_macos
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.5"
path_provider_platform_interface:
dependency: transitive
description:
name: path_provider_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.3"
path_provider_windows:
dependency: transitive
description:
name: path_provider_windows
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.5"
pedantic:
dependency: transitive
description:
name: pedantic
url: "https://pub.dartlang.org"
source: hosted
version: "1.11.1"
platform:
dependency: transitive
description:
name: platform
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.0"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.2"
process:
dependency: transitive
description:
name: process
url: "https://pub.dartlang.org"
source: hosted
version: "4.2.4"
rxdart:
dependency: transitive
description:
name: rxdart
url: "https://pub.dartlang.org"
source: hosted
version: "0.27.3"
sky_engine:
dependency: transitive
description: flutter
@@ -121,6 +296,20 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.1"
sqflite:
dependency: transitive
description:
name: sqflite
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.2"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
url: "https://pub.dartlang.org"
source: hosted
version: "2.2.0"
stack_trace:
dependency: transitive
description:
@@ -142,6 +331,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
synchronized:
dependency: transitive
description:
name: synchronized
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
term_glyph:
dependency: transitive
description:
@@ -163,6 +359,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.3.0"
uuid:
dependency: transitive
description:
name: uuid
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.5"
vector_math:
dependency: transitive
description:
@@ -170,5 +373,20 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.1"
win32:
dependency: transitive
description:
name: win32
url: "https://pub.dartlang.org"
source: hosted
version: "2.3.6"
xdg_directories:
dependency: transitive
description:
name: xdg_directories
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.0"
sdks:
dart: ">=2.15.1 <3.0.0"
flutter: ">=2.5.0"
+3
View File
@@ -34,6 +34,9 @@ dependencies:
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2
cached_network_image: ^3.1.0
intl: ^0.17.0
animated_text_kit: ^4.2.1
dev_dependencies:
flutter_test: