Gerichte hinzufügen und in der DB speichern, Kalorien aufzählen,

welcome
Bogdan Kotikov 2023-05-10 00:04:33 +02:00
parent 8697d749c8
commit fce201774e
28 changed files with 4340 additions and 2566 deletions

View File

@ -1,12 +1,36 @@
{
"configVersion": 2,
"packages": [
{
"name": "_fe_analyzer_shared",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-59.0.0",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "analyzer",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/analyzer-5.11.1",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "animate_gradient",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/animate_gradient-0.0.2",
"packageUri": "lib/",
"languageVersion": "2.16"
},
{
"name": "args",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/args-2.4.1",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "assorted_layout_widgets",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/assorted_layout_widgets-8.0.0",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "async",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/async-2.10.0",
@ -19,6 +43,54 @@
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "build",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build-2.3.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "build_config",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_config-1.1.1",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "build_daemon",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_daemon-3.1.1",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "build_resolvers",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_resolvers-2.2.0",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "build_runner",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner-2.3.3",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "build_runner_core",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner_core-7.2.7",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "built_collection",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_collection-5.1.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "built_value",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_value-8.5.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "card_swiper",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/card_swiper-2.0.4",
@ -31,36 +103,96 @@
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "checked_yaml",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/checked_yaml-2.0.3",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "clock",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/clock-1.1.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "code_builder",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/code_builder-4.4.0",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "collection",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/collection-1.17.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "convert",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/convert-3.1.1",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "crypto",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/crypto-3.0.3",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "cupertino_icons",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.5",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "dart_style",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/dart_style-2.3.1",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "empty_widget",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/empty_widget-0.0.5",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "fake_async",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/fake_async-1.3.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "ffi",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/ffi-2.0.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "file",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/file-6.1.4",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "fixnum",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/fixnum-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "flutter",
"rootUri": "file:///Users/bogdan/fvm/versions/3.7.9/packages/flutter",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "flutter_dotenv",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_dotenv-5.0.2",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "flutter_lints",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_lints-2.0.1",
@ -73,18 +205,84 @@
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "frontend_server_client",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "glob",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/glob-2.1.1",
"packageUri": "lib/",
"languageVersion": "2.15"
},
{
"name": "graphs",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/graphs-2.2.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "hive",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive-2.2.3",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "hive_flutter",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_flutter-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "hive_generator",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_generator-2.0.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "http_multi_server",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "http_parser",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_parser-4.0.2",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "io",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/io-1.0.4",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "js",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/js-0.6.5",
"packageUri": "lib/",
"languageVersion": "2.16"
},
{
"name": "json_annotation",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/json_annotation-4.8.1",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "lints",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/lints-2.0.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "logging",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/logging-1.1.1",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "matcher",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/matcher-0.12.13",
@ -97,30 +295,150 @@
"packageUri": "lib/",
"languageVersion": "2.13"
},
{
"name": "matrix4_transform",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/matrix4_transform-2.0.1",
"packageUri": "lib/",
"languageVersion": "2.13"
},
{
"name": "meta",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/meta-1.8.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "mime",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/mime-1.0.4",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "package_config",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/package_config-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "path",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path-1.8.2",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "path_provider",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider-2.0.14",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "path_provider_android",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_android-2.0.27",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "path_provider_foundation",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "path_provider_linux",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_linux-2.1.10",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "path_provider_platform_interface",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.0.6",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "path_provider_windows",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_windows-2.1.6",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "percent_indicator",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/percent_indicator-4.2.3",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "platform",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/platform-3.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "plugin_platform_interface",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.4",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "pool",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/pool-1.5.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "process",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/process-4.2.4",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "pub_semver",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/pub_semver-2.1.4",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "pubspec_parse",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/pubspec_parse-1.2.3",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "searchable_listview",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/searchable_listview-2.4.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "shelf",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf-1.4.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "shelf_web_socket",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "sky_engine",
"rootUri": "file:///Users/bogdan/fvm/versions/3.7.9/bin/cache/pkg/sky_engine",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "source_gen",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_gen-1.3.0",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "source_helper",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_helper-1.3.3",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "source_span",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_span-1.9.1",
@ -139,6 +457,12 @@
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "stream_transform",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/stream_transform-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "string_scanner",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/string_scanner-1.2.0",
@ -157,12 +481,54 @@
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "timing",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/timing-1.0.1",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "typed_data",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/typed_data-1.3.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "vector_math",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/vector_math-2.1.4",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "watcher",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/watcher-1.0.2",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "web_socket_channel",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0",
"packageUri": "lib/",
"languageVersion": "2.15"
},
{
"name": "win32",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/win32-4.1.4",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "xdg_directories",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/xdg_directories-1.0.0",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "yaml",
"rootUri": "file:///Users/bogdan/.pub-cache/hosted/pub.dev/yaml-3.1.2",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "ernaehrung",
"rootUri": "../",
@ -170,7 +536,7 @@
"languageVersion": "2.19"
}
],
"generated": "2023-04-28T17:54:39.346507Z",
"generated": "2023-05-08T10:23:27.972647Z",
"generator": "pub",
"generatorVersion": "2.19.6"
}

View File

@ -1,7 +1,23 @@
_fe_analyzer_shared
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-59.0.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-59.0.0/lib/
analyzer
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/analyzer-5.11.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/analyzer-5.11.1/lib/
animate_gradient
2.16
file:///Users/bogdan/.pub-cache/hosted/pub.dev/animate_gradient-0.0.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/animate_gradient-0.0.2/lib/
args
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/args-2.4.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/args-2.4.1/lib/
assorted_layout_widgets
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/assorted_layout_widgets-8.0.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/assorted_layout_widgets-8.0.0/lib/
async
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/async-2.10.0/
@ -10,6 +26,38 @@ boolean_selector
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/boolean_selector-2.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/boolean_selector-2.1.1/lib/
build
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build-2.3.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build-2.3.1/lib/
build_config
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_config-1.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_config-1.1.1/lib/
build_daemon
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_daemon-3.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_daemon-3.1.1/lib/
build_resolvers
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_resolvers-2.2.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_resolvers-2.2.0/lib/
build_runner
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner-2.3.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner-2.3.3/lib/
build_runner_core
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner_core-7.2.7/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/build_runner_core-7.2.7/lib/
built_collection
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_collection-5.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_collection-5.1.1/lib/
built_value
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_value-8.5.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/built_value-8.5.0/lib/
card_swiper
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/card_swiper-2.0.4/
@ -18,34 +66,118 @@ characters
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/characters-1.2.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/characters-1.2.1/lib/
checked_yaml
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/checked_yaml-2.0.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/checked_yaml-2.0.3/lib/
clock
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/clock-1.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/clock-1.1.1/lib/
code_builder
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/code_builder-4.4.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/code_builder-4.4.0/lib/
collection
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/collection-1.17.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/collection-1.17.0/lib/
convert
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/convert-3.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/convert-3.1.1/lib/
crypto
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/crypto-3.0.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/crypto-3.0.3/lib/
cupertino_icons
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.5/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.5/lib/
dart_style
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/dart_style-2.3.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/dart_style-2.3.1/lib/
empty_widget
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/empty_widget-0.0.5/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/empty_widget-0.0.5/lib/
fake_async
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/fake_async-1.3.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/fake_async-1.3.1/lib/
ffi
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/ffi-2.0.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/ffi-2.0.1/lib/
file
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/file-6.1.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/file-6.1.4/lib/
fixnum
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/fixnum-1.1.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/fixnum-1.1.0/lib/
flutter_dotenv
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_dotenv-5.0.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_dotenv-5.0.2/lib/
flutter_lints
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_lints-2.0.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/flutter_lints-2.0.1/lib/
frontend_server_client
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0/lib/
glob
2.15
file:///Users/bogdan/.pub-cache/hosted/pub.dev/glob-2.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/glob-2.1.1/lib/
graphs
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/graphs-2.2.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/graphs-2.2.0/lib/
hive
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive-2.2.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive-2.2.3/lib/
hive_flutter
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_flutter-1.1.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_flutter-1.1.0/lib/
hive_generator
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_generator-2.0.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/hive_generator-2.0.0/lib/
http_multi_server
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1/lib/
http_parser
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_parser-4.0.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/http_parser-4.0.2/lib/
io
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/io-1.0.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/io-1.0.4/lib/
js
2.16
file:///Users/bogdan/.pub-cache/hosted/pub.dev/js-0.6.5/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/js-0.6.5/lib/
json_annotation
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/json_annotation-4.8.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/json_annotation-4.8.1/lib/
lints
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/lints-2.0.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/lints-2.0.1/lib/
logging
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/logging-1.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/logging-1.1.1/lib/
matcher
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/matcher-0.12.13/
@ -54,18 +186,98 @@ material_color_utilities
2.13
file:///Users/bogdan/.pub-cache/hosted/pub.dev/material_color_utilities-0.2.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/material_color_utilities-0.2.0/lib/
matrix4_transform
2.13
file:///Users/bogdan/.pub-cache/hosted/pub.dev/matrix4_transform-2.0.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/matrix4_transform-2.0.1/lib/
meta
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/meta-1.8.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/meta-1.8.0/lib/
mime
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/mime-1.0.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/mime-1.0.4/lib/
package_config
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/package_config-2.1.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/package_config-2.1.0/lib/
path
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path-1.8.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path-1.8.2/lib/
path_provider
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider-2.0.14/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider-2.0.14/lib/
path_provider_android
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_android-2.0.27/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_android-2.0.27/lib/
path_provider_foundation
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2/lib/
path_provider_linux
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_linux-2.1.10/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_linux-2.1.10/lib/
path_provider_platform_interface
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.0.6/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.0.6/lib/
path_provider_windows
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_windows-2.1.6/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_windows-2.1.6/lib/
percent_indicator
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/percent_indicator-4.2.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/percent_indicator-4.2.3/lib/
platform
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/platform-3.1.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/platform-3.1.0/lib/
plugin_platform_interface
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.4/lib/
pool
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pool-1.5.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pool-1.5.1/lib/
process
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/process-4.2.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/process-4.2.4/lib/
pub_semver
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pub_semver-2.1.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pub_semver-2.1.4/lib/
pubspec_parse
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pubspec_parse-1.2.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/pubspec_parse-1.2.3/lib/
searchable_listview
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/searchable_listview-2.4.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/searchable_listview-2.4.0/lib/
shelf
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf-1.4.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf-1.4.1/lib/
shelf_web_socket
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4/lib/
source_gen
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_gen-1.3.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_gen-1.3.0/lib/
source_helper
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_helper-1.3.3/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_helper-1.3.3/lib/
source_span
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/source_span-1.9.1/
@ -78,6 +290,10 @@ stream_channel
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/stream_channel-2.1.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/stream_channel-2.1.1/lib/
stream_transform
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/stream_transform-2.1.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/stream_transform-2.1.0/lib/
string_scanner
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/string_scanner-1.2.0/
@ -90,10 +306,38 @@ test_api
2.18
file:///Users/bogdan/.pub-cache/hosted/pub.dev/test_api-0.4.16/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/test_api-0.4.16/lib/
timing
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/timing-1.0.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/timing-1.0.1/lib/
typed_data
2.12
file:///Users/bogdan/.pub-cache/hosted/pub.dev/typed_data-1.3.1/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/typed_data-1.3.1/lib/
vector_math
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/vector_math-2.1.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/vector_math-2.1.4/lib/
watcher
2.14
file:///Users/bogdan/.pub-cache/hosted/pub.dev/watcher-1.0.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/watcher-1.0.2/lib/
web_socket_channel
2.15
file:///Users/bogdan/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0/lib/
win32
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/win32-4.1.4/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/win32-4.1.4/lib/
xdg_directories
2.17
file:///Users/bogdan/.pub-cache/hosted/pub.dev/xdg_directories-1.0.0/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/xdg_directories-1.0.0/lib/
yaml
2.19
file:///Users/bogdan/.pub-cache/hosted/pub.dev/yaml-3.1.2/
file:///Users/bogdan/.pub-cache/hosted/pub.dev/yaml-3.1.2/lib/
ernaehrung
2.19
file:///Users/bogdan/IdeaProjects/ernaehrung/

7
.env 100644
View File

@ -0,0 +1,7 @@
TODAY_BOX=TODAY
DATE_FIELD=DATE # datum
BREAKFAST_FIELD=FRÜHSTÜCK # frühstück
LUNCH_FIELD=MITTAGESSEN # mittagessen
DINNER_FIELD=ABENDESSEN # abendessen
YESTERDAY_AND_BEFORE=YESTERDAY # gestern und alles was davor war
TOMORROW_AND_AFTER=TOMORROW # morgen und alles was kommen wird

6
.flutter-plugins 100644
View File

@ -0,0 +1,6 @@
# This is a generated file; do not edit or check into version control.
path_provider=/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider-2.0.14/
path_provider_android=/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_android-2.0.27/
path_provider_foundation=/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2/
path_provider_linux=/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_linux-2.1.10/
path_provider_windows=/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_windows-2.1.6/

View File

@ -0,0 +1 @@
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"path_provider_foundation","path":"/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2/","native_build":true,"dependencies":[]}],"android":[{"name":"path_provider_android","path":"/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_android-2.0.27/","native_build":true,"dependencies":[]}],"macos":[{"name":"path_provider_foundation","path":"/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_foundation-2.2.2/","native_build":true,"dependencies":[]}],"linux":[{"name":"path_provider_linux","path":"/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_linux-2.1.10/","native_build":false,"dependencies":[]}],"windows":[{"name":"path_provider_windows","path":"/Users/bogdan/.pub-cache/hosted/pub.dev/path_provider_windows-2.1.6/","native_build":false,"dependencies":[]}],"web":[]},"dependencyGraph":[{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]}],"date_created":"2023-05-09 19:37:33.881935","version":"3.7.9"}

73
.gitignore vendored
View File

@ -574,3 +574,76 @@ FodyWeavers.xsd
# Built Visual Studio Code Extensions
*.vsix
# Miscellaneous
*.class
*.lock
*.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/
# Web related
lib/generated_plugin_registrant.dart
# Android related
**/android/**/gradle-wrapper.jar
**/android/.gradle
**/android/captures/
**/android/gradlew
**/android/gradlew.bat
**/android/local.properties
**/android/**/GeneratedPluginRegistrant.java
# iOS/XCode related
**/ios/**/*.mode1v3
**/ios/**/*.mode2v3
**/ios/**/*.moved-aside
**/ios/**/*.pbxuser
**/ios/**/*.perspectivev3
**/ios/**/*sync/
**/ios/**/.sconsign.dblite
**/ios/**/.tags*
**/ios/**/.vagrant/
**/ios/**/DerivedData/
**/ios/**/Icon?
**/ios/**/Pods/
**/ios/**/.symlinks/
**/ios/**/profile
**/ios/**/xcuserdata
**/ios/.generated/
**/ios/Flutter/App.framework
**/ios/Flutter/Flutter.framework
**/ios/Flutter/Flutter.podspec
**/ios/Flutter/Generated.xcconfig
**/ios/Flutter/app.flx
**/ios/Flutter/app.zip
**/ios/Flutter/flutter_assets/
**/ios/Flutter/flutter_export_environment.sh
**/ios/ServiceDefinitions.json
**/ios/Runner/GeneratedPluginRegistrant.*
# Exceptions to above rules.
!**/ios/**/default.mode1v3
!**/ios/**/default.mode2v3
!**/ios/**/default.pbxuser
!**/ios/**/default.perspectivev3
!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages

File diff suppressed because it is too large Load Diff

View File

@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Generated.xcconfig"

View File

@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
#include "Generated.xcconfig"

41
ios/Podfile 100644
View File

@ -0,0 +1,41 @@
# Uncomment this line to define a global platform for your project
# platform :ios, '11.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
project 'Runner', {
'Debug' => :debug,
'Profile' => :release,
'Release' => :release,
}
def flutter_root
generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
unless File.exist?(generated_xcode_build_settings_path)
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
end
File.foreach(generated_xcode_build_settings_path) do |line|
matches = line.match(/FLUTTER_ROOT\=(.*)/)
return matches[1].strip if matches
end
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end
require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
flutter_ios_podfile_setup
target 'Runner' do
use_frameworks!
use_modular_headers!
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
end
end

View File

@ -1,90 +1,147 @@
import 'dart:convert';
import 'package:ernaehrung/models/food.dart';
import 'package:flutter/services.dart' as root_bundle;
import 'package:flutter/material.dart';
import '../models/card.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import '../models/food.dart';
import '../pages/nav_pages/search_food.dart';
class CardComponent extends StatefulWidget {
final Image image;
final String cardName;
final int? caloriesSummary;
final List<CardModel> listOfCardItems;
final String eatingMealName;
final List<Food> selectedMeal;
const CardComponent(this.image, this.cardName, this.caloriesSummary, this.listOfCardItems, {super.key});
const CardComponent(
{Key? key, required this.eatingMealName, required this.selectedMeal})
: super(key: key);
@override
State<CardComponent> createState() => _CardComponentState();
}
class _CardComponentState extends State<CardComponent> {
Future<List<Food>> readJson() async {
final jsonData =
await root_bundle.rootBundle.loadString('assets/json/csvjson_full.json');
final list = json.decode(jsonData) as List<dynamic>;
return list.map((e) => Food.fromJson(e)).toList();
Route createRoute(String cardName) {
return PageRouteBuilder(
pageBuilder: (context, animation, secondaryAnimation) =>
SearchFoodPage(cardName),
transitionsBuilder: (context, animation, secondaryAnimation, child) {
const begin = Offset(0.0, 1.0);
const end = Offset.zero;
const curve = Curves.ease;
var tween =
Tween(begin: begin, end: end).chain(CurveTween(curve: curve));
return SlideTransition(
position: animation.drive(tween),
child: child,
);
},
);
}
String getSummaryOfAllNames(List<CardModel> cardModels){
String names = "";
for (var element in cardModels) {
names += element.getName;
getImageOfMeal() {
if (widget.eatingMealName == dotenv.env['BREAKFAST_FIELD']!) {
return const Image(image: AssetImage('assets/images/tea.png'));
} else if (widget.eatingMealName == dotenv.env['LUNCH_FIELD']!) {
return const Image(image: AssetImage('assets/images/fries.png'));
} else if (widget.eatingMealName == dotenv.env['DINNER_FIELD']!) {
return const Image(image: AssetImage('assets/images/ice.png'));
}
}
return names;
String capitalize(String s) => s[0].toUpperCase() + s.substring(1);
String listFoodAsString() {
String mealAsString = "";
for (final food in widget.selectedMeal) {
mealAsString = "${food.name} ";
}
return mealAsString;
}
Widget _getCalorieContainer(){
if (widget.caloriesSummary != null){
return Padding(
padding: const EdgeInsets.symmetric(
vertical: 8,
horizontal: 0
),
child: Center(
child: Column(
children: [
const Divider(
thickness: 1,
),
Text(widget.caloriesSummary.toString())
],
Widget getElevatedButton() {
return ElevatedButton(
onPressed: () async {
Navigator.of(context).push(createRoute(widget.eatingMealName));
},
style: ElevatedButton.styleFrom(
shape: const CircleBorder(),
padding: const EdgeInsets.all(8),
),
child: const Text(
'+',
style: TextStyle(fontSize: 28),
),
);
}else {
return const Placeholder();
}
int getCountedCalories() {
double calories = 0;
for (Food food in widget.selectedMeal) {
if (food.calories is int){
calories += food.calories as int;
}else if(food.calories is double){
calories += food.calories as double;
}
}
return calories.round();
}
@override
Widget build(BuildContext context) {
return Card(
margin: const EdgeInsets.fromLTRB(0, 24, 0, 0),
child: Column(
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
widget.image,
Column(
Row(
children: [
Text(widget.cardName),
Text(getSummaryOfAllNames(widget.listOfCardItems))
],
getImageOfMeal(),
Column(
mainAxisAlignment: MainAxisAlignment.start,
children: [
SizedBox(
width: MediaQuery.of(context).size.width * 0.6,
child: Text(
capitalize(widget.eatingMealName),
maxLines: 1,
overflow: TextOverflow.ellipsis,
softWrap: false,
style: const TextStyle(
color: Colors.black,
fontWeight: FontWeight.w500,
fontSize: 14),
),
ElevatedButton(
onPressed: () {},
style: ElevatedButton.styleFrom(
shape: const CircleBorder(),
padding: const EdgeInsets.all(8),
),
child: const Text('+', style: TextStyle(fontSize: 28),),
)
],
SizedBox(
width: MediaQuery.of(context).size.width * 0.6,
child: Text(
widget.selectedMeal.isNotEmpty
? listFoodAsString()
: "Empfohlen: 123",
maxLines: 1,
overflow: TextOverflow.ellipsis,
softWrap: false,
style: const TextStyle(
color: Colors.black26,
fontWeight: FontWeight.w500,
fontSize: 10),
),
),
_getCalorieContainer()
],
)
);
],
),
getElevatedButton(),
],
),
widget.selectedMeal.isNotEmpty
? const Divider()
: const SizedBox.shrink(),
widget.selectedMeal.isNotEmpty
? Text("${getCountedCalories()} kcal")
: const SizedBox.shrink(),
],
));
}
}

View File

@ -0,0 +1,10 @@
import 'package:flutter/cupertino.dart';
class EmptySearchComponent extends StatelessWidget {
const EmptySearchComponent({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return const Placeholder();
}
}

View File

@ -0,0 +1,113 @@
import 'package:assorted_layout_widgets/assorted_layout_widgets.dart';
import 'package:ernaehrung/config/setup_todaybox_config.dart';
import 'package:flutter/material.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:hive/hive.dart';
import '../models/food.dart';
class SearchedFoodComponent extends StatefulWidget {
final Food food;
final String cardName;
const SearchedFoodComponent(this.food, this.cardName, {Key? key}) : super(key: key);
@override
State<SearchedFoodComponent> createState() => _SearchFoodComponentState();
}
class _SearchFoodComponentState extends State<SearchedFoodComponent> {
void storeFood() async {
final todayBox = Hive.box(dotenv.env['TODAY_BOX']!);
if (!todayBox.isOpen){
Hive.openBox(dotenv.env['TODAY_BOX']!);
}
final todayBoxDateField = todayBox.containsKey(dotenv.env['DATE_FIELD']!.toString());
final todayBoxEatingField = todayBox.containsKey(widget.cardName.toUpperCase().toString());
if (todayBoxDateField && todayBoxEatingField){
updateFoodInStorage(todayBox);
}else{
addFoodToStorage(todayBox);
}
}
void updateFoodInStorage(dynamic todayBox) async {
final values = todayBox.get(widget.cardName.toUpperCase());
values.add(widget.food);
await todayBox.put(widget.cardName.toUpperCase(), values);
}
void addFoodToStorage(dynamic todayBox) async{
List<Food> foods = [];
foods.add(widget.food);
todayBox.put(widget.cardName.toUpperCase(), foods);
todayBox.put(dotenv.env['DATE_FIELD']!, getFormatedTodayDate());
}
@override
Widget build(BuildContext context) {
return Container(
padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 16),
decoration:
const BoxDecoration(color: Color.fromARGB(234, 234, 123, 5)),
child: WrapSuper(
spacing: 32,
wrapType: WrapType.balanced,
wrapFit: WrapFit.larger,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SizedBox(
width: MediaQuery.of(context).size.width * 0.6,
child: Text(
widget.food.name,
maxLines: 1,
overflow: TextOverflow.ellipsis,
softWrap: false,
style: const TextStyle(
color: Colors.black,
fontWeight: FontWeight.bold,
fontSize: 20.0),
),
),
SizedBox(
width: MediaQuery.of(context).size.width * 0.6,
child: Text(
"${widget.food.fatg} 100g "
"${widget.food.calories} 100g "
"${widget.food.carbohydrateg.toString()} 100g",
maxLines: 1,
overflow: TextOverflow.ellipsis,
softWrap: false,
style: const TextStyle(
color: Colors.black,
fontWeight: FontWeight.bold,
fontSize: 20.0),
),
),
],
),
ElevatedButton(
onPressed: () async {
storeFood();
},
style: ElevatedButton.styleFrom(
foregroundColor: Colors.white,
backgroundColor: Colors.green,
shadowColor: Colors.greenAccent,
elevation: 3,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(32.0)),
maximumSize: Size(
MediaQuery.of(context).size.width * 0.2, 36), //////// HERE
),
child: const Text('+'),
)
],
));
}
}

View File

@ -0,0 +1,20 @@
import 'package:empty_widget/empty_widget.dart';
import 'package:flutter/cupertino.dart';
class NotFoundComponent extends StatelessWidget {
const NotFoundComponent({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return EmptyWidget(
image: null,
packageImage: PackageImage.Image_1,
title: 'Gericht existiert nicht',
titleTextStyle: const TextStyle(
fontSize: 18,
color: Color(0xff9da9c7),
fontWeight: FontWeight.w500,
),
);
}
}

View File

@ -0,0 +1,70 @@
import 'package:empty_widget/empty_widget.dart';
import 'package:ernaehrung/components/founded_search_component.dart';
import 'package:flutter/material.dart';
import '../models/food.dart';
class SearchComponent extends StatefulWidget {
final List<Food> foods;
final String cardName;
const SearchComponent(this.foods, this.cardName, {super.key});
@override
State<SearchComponent> createState() => _SearchComponentState();
}
class _SearchComponentState extends State<SearchComponent> {
final TextEditingController controller = TextEditingController();
late List<Food> allFoods = widget.foods;
List<Food> foundedFood = [];
@override
void dispose() {
super.dispose();
}
@override
Widget build(BuildContext context) {
return Container(
constraints: const BoxConstraints.expand(),
child: Padding(
padding: const EdgeInsets.fromLTRB(0, 16, 0, 0),
child: Column(
children: [
TextField(
controller: controller,
decoration: InputDecoration(
prefix: const Icon(Icons.search),
hintText: 'Suche nach Gericht',
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10),
borderSide: const BorderSide(color: Colors.blue))),
onChanged: findOnChanged,
),
Expanded(
child: controller.text.isNotEmpty && foundedFood.isNotEmpty
? ListView.builder(
itemCount: foundedFood.length,
itemBuilder: (context, index) {
final food = foundedFood[index];
return SearchedFoodComponent(food, widget.cardName);
})
: EmptyWidget())
],
)));
}
void findOnChanged(String searchedFood) async {
foundedFood.clear();
if(searchedFood.isEmpty){
setState(() {});
return;
}else{
for (final food in allFoods) {
if (food.name.toString().toLowerCase().contains(searchedFood)) {
foundedFood.add(food);
}
}
setState(() => {foundedFood});
}
}
}

View File

@ -0,0 +1,54 @@
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:hive/hive.dart';
import '../models/food.dart';
final List<Food> emptyList = [];
Future<void> setupTodayBox() async {
final todayBoxExist = await Hive.boxExists(dotenv.env['TODAY_BOX']!);
final todayBoxOpened = Hive.isBoxOpen(dotenv.env['TODAY_BOX']!);
if (!todayBoxOpened && !todayBoxExist){
Hive.openBox(dotenv.env['TODAY_BOX']!);
}
setupEatingKeys();
}
void setupEatingKeys() async {
final todayBox = Hive.box(dotenv.env['TODAY_BOX']!);
final breakfastExist = todayBox.containsKey(dotenv.env['BREAKFAST_FIELD']!);
final lunchExist = todayBox.containsKey(dotenv.env['LUNCH_FIELD']!);
final dinnerExist = todayBox.containsKey(dotenv.env['DINNER_FIELD']!);
if (!breakfastExist){
todayBox.put(dotenv.env['BREAKFAST_FIELD']!, emptyList);
}
if (!lunchExist){
todayBox.put(dotenv.env['LUNCH_FIELD']!, emptyList);
}
if (!dinnerExist){
todayBox.put(dotenv.env['DINNER_FIELD']!, emptyList);
}
setupDateField();
}
void setupDateField() async{
final todayBox = Hive.box(dotenv.env['TODAY_BOX']!);
final dateExist = todayBox.containsKey(dotenv.env['DATE_FIELD']!);
if (!dateExist){
todayBox.put(dotenv.env['DATE_FIELD']!, getFormatedTodayDate());
}
}
void moveTodayBoxDataToYesterdayAndBefore() async{
}
String getFormatedTodayDate(){
return DateTime.now().toString().substring(0,10);
}

View File

@ -1,8 +1,24 @@
import 'package:ernaehrung/models/food.dart';
import 'package:ernaehrung/pages/nav_pages/main_page.dart';
import 'package:ernaehrung/views/navigation/navigation_screen.dart';
import 'package:flutter/material.dart';
import 'package:hive_flutter/hive_flutter.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'config/setup_todaybox_config.dart';
void main() async {
await dotenv.load(fileName: ".env");
await Hive.initFlutter();
if (! Hive.isAdapterRegistered(1)) {
Hive.registerAdapter(FoodAdapter());
}
await Hive.openBox(dotenv.env['TODAY_BOX']!);
await setupTodayBox();
void main() {
runApp(const MyApp());
}

View File

@ -0,0 +1,65 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of '../food.dart';
// **************************************************************************
// TypeAdapterGenerator
// **************************************************************************
class FoodAdapter extends TypeAdapter<Food> {
@override
final int typeId = 1;
@override
Food read(BinaryReader reader) {
final numOfFields = reader.readByte();
final fields = <int, dynamic>{
for (int i = 0; i < numOfFields; i++) reader.readByte(): reader.read(),
};
return Food(
fields[0] as dynamic,
fields[1] as dynamic,
fields[2] as dynamic,
fields[3] as dynamic,
fields[4] as dynamic,
fields[5] as dynamic,
fields[6] as dynamic,
fields[7] as dynamic,
fields[8] as dynamic,
);
}
@override
void write(BinaryWriter writer, Food obj) {
writer
..writeByte(9)
..writeByte(0)
..write(obj.id)
..writeByte(1)
..write(obj.name)
..writeByte(2)
..write(obj.foodGroup)
..writeByte(3)
..write(obj.calories)
..writeByte(4)
..write(obj.fatg)
..writeByte(5)
..write(obj.proteing)
..writeByte(6)
..write(obj.carbohydrateg)
..writeByte(7)
..write(obj.sugarsg)
..writeByte(8)
..write(obj.fiberg);
}
@override
int get hashCode => typeId.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is FoodAdapter &&
runtimeType == other.runtimeType &&
typeId == other.typeId;
}

View File

@ -1,40 +1,58 @@
import 'package:hive/hive.dart';
part 'adapter/food.g.dart';
@HiveType(typeId: 1)
class Food {
Food(this._id, this._name, this._foodGroup, this._calories, this._fatg,
this._proteing, this._carbohydrateg, this._sugarsg, this._fiberg);
Food(this.id, this.name, this.foodGroup, this.calories, this.fatg,
this.proteing, this.carbohydrateg, this.sugarsg, this.fiberg);
Food.fromJson(dynamic json) {
_id = json['ID'];
_name = json['name'];
_foodGroup = json['Food Group'];
_calories = json['Calories'];
_fatg = json['Fat (g)'];
_proteing = json['Protein (g)'];
_carbohydrateg = json['Carbohydrate (g)'];
_sugarsg = json['Sugars (g)'];
_fiberg = json['Fiber (g)'];
id = json['ID'];
name = json['name'];
foodGroup = json['Food Group'];
calories = json['Calories'];
fatg = json['Fat (g)'];
proteing = json['Protein (g)'];
carbohydrateg = json['Carbohydrate (g)'];
sugarsg = json['Sugars (g)'];
fiberg = json['Fiber (g)'];
}
late int _id;
late String _name;
late String _foodGroup;
late int _calories;
late double _fatg;
late double _proteing;
late double _carbohydrateg;
late double _sugarsg;
late double _fiberg;
@HiveField(0)
late dynamic id;
@HiveField(1)
late dynamic name;
@HiveField(2)
late dynamic foodGroup;
@HiveField(3)
late dynamic calories;
@HiveField(4)
late dynamic fatg;
@HiveField(5)
late dynamic proteing;
@HiveField(6)
late dynamic carbohydrateg;
@HiveField(7)
late dynamic sugarsg;
@HiveField(8)
late dynamic fiberg;
Map<String, dynamic> toJson() {
final map = <String, dynamic>{};
map['ID'] = _id;
map['name'] = _name;
map['Food Group'] = _foodGroup;
map['Calories'] = _calories;
map['Fat (g)'] = _fatg;
map['Protein (g)'] = _proteing;
map['Carbohydrate (g)'] = _carbohydrateg;
map['Sugars (g)'] = _sugarsg;
map['Fiber (g)'] = _fiberg;
map['ID'] = id;
map['name'] = name;
map['Food Group'] = foodGroup;
map['Calories'] = calories;
map['Fat (g)'] = fatg;
map['Protein (g)'] = proteing;
map['Carbohydrate (g)'] = carbohydrateg;
map['Sugars (g)'] = sugarsg;
map['Fiber (g)'] = fiberg;
return map;
}
@override
String toString() {
return 'Food{id: $id, name: $name, foodGroup: $foodGroup, calories: $calories, fatg: $fatg, proteing: $proteing, carbohydrateg: $carbohydrateg, sugarsg: $sugarsg, fiberg: $fiberg}';
}
}

View File

@ -0,0 +1,13 @@
import 'dart:convert';
import 'food.dart';
import 'package:flutter/services.dart' as root_bundle;
class FoodDTO {
static Future<List<Food>> readJson() async {
final jsonData =
await root_bundle.rootBundle.loadString('assets/json/csvjson_full.json');
final list = json.decode(jsonData) as List<dynamic>;
return list.map((e) => Food.fromJson(e)).toList();
}
}

View File

@ -0,0 +1,35 @@
import 'package:ernaehrung/components/search_component.dart';
import 'package:ernaehrung/models/food.dart';
import 'package:ernaehrung/models/food_dto.dart';
import 'package:flutter/material.dart';
class SearchFoodPage extends StatefulWidget {
final String cardName;
const SearchFoodPage(this.cardName, {Key? key}) : super(key: key);
@override
State<SearchFoodPage> createState() => _SearchFoodPageState();
}
class _SearchFoodPageState extends State<SearchFoodPage> {
@override
Widget build(BuildContext context) {
print(widget.cardName);
return SafeArea(
top: true,
child: Scaffold(
extendBodyBehindAppBar: false,
extendBody: false,
resizeToAvoidBottomInset: false,
body: FutureBuilder(
future: FoodDTO.readJson(),
builder: (BuildContext context, AsyncSnapshot<List<Food>> snapshot) {
if (snapshot.hasData) {
return SearchComponent(snapshot.data!, widget.cardName);
}else {
return const Placeholder();
}
})));
}
}

View File

@ -1,8 +1,10 @@
import 'package:ernaehrung/components/card_component.dart';
import 'package:ernaehrung/components/diet_chart_component.dart';
import 'package:ernaehrung/components/statistics_circular_indicator_component.dart';
import 'package:ernaehrung/mockdata.dart';
import 'package:ernaehrung/models/food.dart';
import 'package:flutter/material.dart';
import '../../components/card_component.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:hive_flutter/hive_flutter.dart';
class TodayPage extends StatefulWidget {
final String title;
@ -14,14 +16,14 @@ class TodayPage extends StatefulWidget {
}
class _TodayPageState extends State<TodayPage> {
List<CardComponent> getCardComponent() {
List<CardComponent> listOfCards = [];
cards.forEach((key, value) {
listOfCards.add(CardComponent(
key.keys.elementAt(0), key.values.elementAt(0), 300, value.toList()));
});
return listOfCards;
List<Food> castDynamicToListFood(List<dynamic> dynamicList) {
List<Food> foodList = [];
for (Food element in dynamicList) {
foodList.add(element);
}
return foodList;
}
@override
@ -37,16 +39,35 @@ class _TodayPageState extends State<TodayPage> {
stops: [0.1, 5],
begin: Alignment.bottomCenter,
end: Alignment.topCenter,
)
),
)),
child: SingleChildScrollView(
child: Column(
children: [
StatisticsPercentComponent(300, 100, 400),
DietChatComponent(1500),
SingleChildScrollView(child: Column(children: getCardComponent()))
ValueListenableBuilder(
valueListenable: Hive.box("TODAY").listenable(),
builder: (context, box, widget) {
return ListView.builder(
primary: false,
shrinkWrap: true,
itemCount: box.keys.length,
itemBuilder: (context, i) {
print("all list items of card ${box.values.length}");
if(box.keyAt(i).toString() == "DATE"){
return const SizedBox.shrink();
}else{
return CardComponent(
eatingMealName: box.keyAt(i).toString(),
selectedMeal: castDynamicToListFood(
box.getAt(i)));
}
}
);
}),
],
),
),
)),
));
}
}

View File

@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "ephemeral/Flutter-Generated.xcconfig"

View File

@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
#include "ephemeral/Flutter-Generated.xcconfig"

View File

@ -5,6 +5,8 @@
import FlutterMacOS
import Foundation
import path_provider_foundation
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
}

40
macos/Podfile 100644
View File

@ -0,0 +1,40 @@
platform :osx, '10.14'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
project 'Runner', {
'Debug' => :debug,
'Profile' => :release,
'Release' => :release,
}
def flutter_root
generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__)
unless File.exist?(generated_xcode_build_settings_path)
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first"
end
File.foreach(generated_xcode_build_settings_path) do |line|
matches = line.match(/FLUTTER_ROOT\=(.*)/)
return matches[1].strip if matches
end
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\""
end
require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
flutter_macos_podfile_setup
target 'Runner' do
use_frameworks!
use_modular_headers!
flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__))
end
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_macos_build_settings(target)
end
end

View File

@ -1,6 +1,22 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
_fe_analyzer_shared:
dependency: transitive
description:
name: _fe_analyzer_shared
sha256: "8880b4cfe7b5b17d57c052a5a3a8cc1d4f546261c7cc8fbd717bd53f48db0568"
url: "https://pub.dev"
source: hosted
version: "59.0.0"
analyzer:
dependency: transitive
description:
name: analyzer
sha256: a89627f49b0e70e068130a36571409726b04dab12da7e5625941d2c8ec278b96
url: "https://pub.dev"
source: hosted
version: "5.11.1"
animate_gradient:
dependency: "direct main"
description:
@ -9,6 +25,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.0.2"
args:
dependency: transitive
description:
name: args
sha256: c372bb384f273f0c2a8aaaa226dad84dc27c8519a691b888725dec59518ad53a
url: "https://pub.dev"
source: hosted
version: "2.4.1"
assorted_layout_widgets:
dependency: "direct main"
description:
name: assorted_layout_widgets
sha256: "63f96e75d78a037987696e0ad24be9dd18c8404d16b0785d159f4a72f2ca490d"
url: "https://pub.dev"
source: hosted
version: "8.0.0"
async:
dependency: transitive
description:
@ -25,6 +57,70 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.1"
build:
dependency: transitive
description:
name: build
sha256: "3fbda25365741f8251b39f3917fb3c8e286a96fd068a5a242e11c2012d495777"
url: "https://pub.dev"
source: hosted
version: "2.3.1"
build_config:
dependency: transitive
description:
name: build_config
sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1
url: "https://pub.dev"
source: hosted
version: "1.1.1"
build_daemon:
dependency: transitive
description:
name: build_daemon
sha256: "757153e5d9cd88253cb13f28c2fb55a537dc31fefd98137549895b5beb7c6169"
url: "https://pub.dev"
source: hosted
version: "3.1.1"
build_resolvers:
dependency: transitive
description:
name: build_resolvers
sha256: db49b8609ef8c81cca2b310618c3017c00f03a92af44c04d310b907b2d692d95
url: "https://pub.dev"
source: hosted
version: "2.2.0"
build_runner:
dependency: "direct dev"
description:
name: build_runner
sha256: b0a8a7b8a76c493e85f1b84bffa0588859a06197863dba8c9036b15581fd9727
url: "https://pub.dev"
source: hosted
version: "2.3.3"
build_runner_core:
dependency: transitive
description:
name: build_runner_core
sha256: "14febe0f5bac5ae474117a36099b4de6f1dbc52df6c5e55534b3da9591bf4292"
url: "https://pub.dev"
source: hosted
version: "7.2.7"
built_collection:
dependency: transitive
description:
name: built_collection
sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
url: "https://pub.dev"
source: hosted
version: "5.1.1"
built_value:
dependency: transitive
description:
name: built_value
sha256: "2f17434bd5d52a26762043d6b43bb53b3acd029b4d9071a329f46d67ef297e6d"
url: "https://pub.dev"
source: hosted
version: "8.5.0"
card_swiper:
dependency: "direct main"
description:
@ -41,6 +137,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.2.1"
checked_yaml:
dependency: transitive
description:
name: checked_yaml
sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff
url: "https://pub.dev"
source: hosted
version: "2.0.3"
clock:
dependency: transitive
description:
@ -49,6 +153,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.1.1"
code_builder:
dependency: transitive
description:
name: code_builder
sha256: "0d43dd1288fd145de1ecc9a3948ad4a6d5a82f0a14c4fdd0892260787d975cbe"
url: "https://pub.dev"
source: hosted
version: "4.4.0"
collection:
dependency: transitive
description:
@ -57,6 +169,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.17.0"
convert:
dependency: transitive
description:
name: convert
sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
url: "https://pub.dev"
source: hosted
version: "3.1.1"
crypto:
dependency: transitive
description:
name: crypto
sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab
url: "https://pub.dev"
source: hosted
version: "3.0.3"
cupertino_icons:
dependency: "direct main"
description:
@ -65,6 +193,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.0.5"
dart_style:
dependency: transitive
description:
name: dart_style
sha256: f4f1f73ab3fd2afcbcca165ee601fe980d966af6a21b5970c6c9376955c528ad
url: "https://pub.dev"
source: hosted
version: "2.3.1"
empty_widget:
dependency: "direct main"
description:
name: empty_widget
sha256: aad8073e5fb43eadde7007db1e2fea7acd33d0d33cff031e31a6675ca0a3e7fb
url: "https://pub.dev"
source: hosted
version: "0.0.5"
fake_async:
dependency: transitive
description:
@ -73,11 +217,43 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.3.1"
ffi:
dependency: transitive
description:
name: ffi
sha256: a38574032c5f1dd06c4aee541789906c12ccaab8ba01446e800d9c5b79c4a978
url: "https://pub.dev"
source: hosted
version: "2.0.1"
file:
dependency: transitive
description:
name: file
sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
url: "https://pub.dev"
source: hosted
version: "6.1.4"
fixnum:
dependency: transitive
description:
name: fixnum
sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1"
url: "https://pub.dev"
source: hosted
version: "1.1.0"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_dotenv:
dependency: "direct main"
description:
name: flutter_dotenv
sha256: d9283d92059a22e9834bc0a31336658ffba77089fb6f3cc36751f1fc7c6661a3
url: "https://pub.dev"
source: hosted
version: "5.0.2"
flutter_lints:
dependency: "direct dev"
description:
@ -91,6 +267,78 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
frontend_server_client:
dependency: transitive
description:
name: frontend_server_client
sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612"
url: "https://pub.dev"
source: hosted
version: "3.2.0"
glob:
dependency: transitive
description:
name: glob
sha256: "4515b5b6ddb505ebdd242a5f2cc5d22d3d6a80013789debfbda7777f47ea308c"
url: "https://pub.dev"
source: hosted
version: "2.1.1"
graphs:
dependency: transitive
description:
name: graphs
sha256: f9e130f3259f52d26f0cfc0e964513796dafed572fa52e45d2f8d6ca14db39b2
url: "https://pub.dev"
source: hosted
version: "2.2.0"
hive:
dependency: "direct main"
description:
name: hive
sha256: "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941"
url: "https://pub.dev"
source: hosted
version: "2.2.3"
hive_flutter:
dependency: "direct main"
description:
name: hive_flutter
sha256: dca1da446b1d808a51689fb5d0c6c9510c0a2ba01e22805d492c73b68e33eecc
url: "https://pub.dev"
source: hosted
version: "1.1.0"
hive_generator:
dependency: "direct dev"
description:
name: hive_generator
sha256: "65998cc4d2cd9680a3d9709d893d2f6bb15e6c1f92626c3f1fa650b4b3281521"
url: "https://pub.dev"
source: hosted
version: "2.0.0"
http_multi_server:
dependency: transitive
description:
name: http_multi_server
sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b"
url: "https://pub.dev"
source: hosted
version: "3.2.1"
http_parser:
dependency: transitive
description:
name: http_parser
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
url: "https://pub.dev"
source: hosted
version: "4.0.2"
io:
dependency: transitive
description:
name: io
sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
url: "https://pub.dev"
source: hosted
version: "1.0.4"
js:
dependency: transitive
description:
@ -99,6 +347,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.6.5"
json_annotation:
dependency: transitive
description:
name: json_annotation
sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
url: "https://pub.dev"
source: hosted
version: "4.8.1"
lints:
dependency: transitive
description:
@ -107,6 +363,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.0.1"
logging:
dependency: transitive
description:
name: logging
sha256: "04094f2eb032cbb06c6f6e8d3607edcfcb0455e2bb6cbc010cb01171dcb64e6d"
url: "https://pub.dev"
source: hosted
version: "1.1.1"
matcher:
dependency: transitive
description:
@ -123,6 +387,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.2.0"
matrix4_transform:
dependency: transitive
description:
name: matrix4_transform
sha256: "6ddeaa2c0e1f5c3f3a197f552377570b3e54fa0b8bf48507728a216fc0fd78a6"
url: "https://pub.dev"
source: hosted
version: "2.0.1"
meta:
dependency: transitive
description:
@ -131,6 +403,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.8.0"
mime:
dependency: transitive
description:
name: mime
sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e
url: "https://pub.dev"
source: hosted
version: "1.0.4"
package_config:
dependency: transitive
description:
name: package_config
sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
path:
dependency: transitive
description:
@ -139,6 +427,54 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.8.2"
path_provider:
dependency: transitive
description:
name: path_provider
sha256: c7edf82217d4b2952b2129a61d3ad60f1075b9299e629e149a8d2e39c2e6aad4
url: "https://pub.dev"
source: hosted
version: "2.0.14"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
sha256: "2cec049d282c7f13c594b4a73976b0b4f2d7a1838a6dd5aaf7bd9719196bee86"
url: "https://pub.dev"
source: hosted
version: "2.0.27"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
sha256: ad4c4d011830462633f03eb34445a45345673dfd4faf1ab0b4735fbd93b19183
url: "https://pub.dev"
source: hosted
version: "2.2.2"
path_provider_linux:
dependency: transitive
description:
name: path_provider_linux
sha256: "2ae08f2216225427e64ad224a24354221c2c7907e448e6e0e8b57b1eb9f10ad1"
url: "https://pub.dev"
source: hosted
version: "2.1.10"
path_provider_platform_interface:
dependency: transitive
description:
name: path_provider_platform_interface
sha256: "57585299a729335f1298b43245842678cb9f43a6310351b18fb577d6e33165ec"
url: "https://pub.dev"
source: hosted
version: "2.0.6"
path_provider_windows:
dependency: transitive
description:
name: path_provider_windows
sha256: d3f80b32e83ec208ac95253e0cd4d298e104fbc63cb29c5c69edaed43b0c69d6
url: "https://pub.dev"
source: hosted
version: "2.1.6"
percent_indicator:
dependency: "direct main"
description:
@ -147,11 +483,99 @@ packages:
url: "https://pub.dev"
source: hosted
version: "4.2.3"
platform:
dependency: transitive
description:
name: platform
sha256: "4a451831508d7d6ca779f7ac6e212b4023dd5a7d08a27a63da33756410e32b76"
url: "https://pub.dev"
source: hosted
version: "3.1.0"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
sha256: "6a2128648c854906c53fa8e33986fc0247a1116122f9534dd20e3ab9e16a32bc"
url: "https://pub.dev"
source: hosted
version: "2.1.4"
pool:
dependency: transitive
description:
name: pool
sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a"
url: "https://pub.dev"
source: hosted
version: "1.5.1"
process:
dependency: transitive
description:
name: process
sha256: "53fd8db9cec1d37b0574e12f07520d582019cb6c44abf5479a01505099a34a09"
url: "https://pub.dev"
source: hosted
version: "4.2.4"
pub_semver:
dependency: transitive
description:
name: pub_semver
sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
url: "https://pub.dev"
source: hosted
version: "2.1.4"
pubspec_parse:
dependency: transitive
description:
name: pubspec_parse
sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367
url: "https://pub.dev"
source: hosted
version: "1.2.3"
searchable_listview:
dependency: "direct main"
description:
name: searchable_listview
sha256: "0a158665571e03890408e2d5569f0673a36f79fac5a671a54495b52f67b93b63"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
shelf:
dependency: transitive
description:
name: shelf
sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4
url: "https://pub.dev"
source: hosted
version: "1.4.1"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1"
url: "https://pub.dev"
source: hosted
version: "1.0.4"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
source_gen:
dependency: transitive
description:
name: source_gen
sha256: b20e191de6964e98032573cecb1d2b169d96ba63fdb586d24dcd1003ba7e94f6
url: "https://pub.dev"
source: hosted
version: "1.3.0"
source_helper:
dependency: transitive
description:
name: source_helper
sha256: "3b67aade1d52416149c633ba1bb36df44d97c6b51830c2198e934e3fca87ca1f"
url: "https://pub.dev"
source: hosted
version: "1.3.3"
source_span:
dependency: transitive
description:
@ -176,6 +600,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.1"
stream_transform:
dependency: transitive
description:
name: stream_transform
sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
string_scanner:
dependency: transitive
description:
@ -200,6 +632,22 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.4.16"
timing:
dependency: transitive
description:
name: timing
sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32"
url: "https://pub.dev"
source: hosted
version: "1.0.1"
typed_data:
dependency: transitive
description:
name: typed_data
sha256: "26f87ade979c47a150c9eaab93ccd2bebe70a27dc0b4b29517f2904f04eb11a5"
url: "https://pub.dev"
source: hosted
version: "1.3.1"
vector_math:
dependency: transitive
description:
@ -208,6 +656,46 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.4"
watcher:
dependency: transitive
description:
name: watcher
sha256: "6a7f46926b01ce81bfc339da6a7f20afbe7733eff9846f6d6a5466aa4c6667c0"
url: "https://pub.dev"
source: hosted
version: "1.0.2"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b
url: "https://pub.dev"
source: hosted
version: "2.4.0"
win32:
dependency: transitive
description:
name: win32
sha256: "5a751eddf9db89b3e5f9d50c20ab8612296e4e8db69009788d6c8b060a84191c"
url: "https://pub.dev"
source: hosted
version: "4.1.4"
xdg_directories:
dependency: transitive
description:
name: xdg_directories
sha256: ee1505df1426458f7f60aac270645098d318a8b4766d85fde75f76f2e21807d1
url: "https://pub.dev"
source: hosted
version: "1.0.0"
yaml:
dependency: transitive
description:
name: yaml
sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
url: "https://pub.dev"
source: hosted
version: "3.1.2"
sdks:
dart: ">=2.19.6 <3.0.0"
flutter: ">=2.12.0"
flutter: ">=3.3.0"

View File

@ -37,6 +37,13 @@ dependencies:
cupertino_icons: ^1.0.2
animate_gradient: ^0.0.2
percent_indicator: ^4.0.1
searchable_listview: ^2.4.0
empty_widget: ^0.0.5
assorted_layout_widgets: ^8.0.0
hive: ^2.2.3
hive_flutter: ^1.1.0
flutter_dotenv: ^5.0.2
dev_dependencies:
flutter_test:
@ -48,6 +55,8 @@ dev_dependencies:
# package. See that file for information about deactivating specific lint
# rules and activating additional ones.
flutter_lints: ^2.0.0
hive_generator: ^2.0.0
build_runner: ^2.3.3
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
@ -65,6 +74,7 @@ flutter:
- assets/images/fries.png
- assets/images/ice.png
- assets/images/tea.png
- .env
# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg