Merge branch 'feature_dev_ankit' into dev_priya

dev_ankit^2
Priya Chetiwal 2025-02-07 17:39:58 +05:30
commit 4345a9c336
41 changed files with 3141 additions and 220 deletions

View File

@ -0,0 +1,16 @@
// Flutter web plugin registrant file.
//
// Generated file. Do not edit.
//
// @dart = 2.13
// ignore_for_file: type=lint
import 'package:file_picker/_internal/file_picker_web.dart';
import 'package:flutter_web_plugins/flutter_web_plugins.dart';
void registerPlugins([final Registrar? pluginRegistrar]) {
final Registrar registrar = pluginRegistrar ?? webPluginRegistrar;
FilePickerWeb.registerWith(registrar);
registrar.registerMessageHandler();
}

View File

@ -0,0 +1,341 @@
{
"configVersion": 2,
"packages": [
{
"name": "async",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.11.0",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "boolean_selector",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "characters",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.3.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "clock",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "collection",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.19.0",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "cross_file",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cross_file-0.3.4+2",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "cupertino_icons",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cupertino_icons-1.0.8",
"packageUri": "lib/",
"languageVersion": "3.1"
},
{
"name": "fake_async",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "ffi",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/ffi-2.1.3",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "file_picker",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/file_picker-8.3.1",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "flutter",
"rootUri": "file:///C:/src/flutter/flutter/packages/flutter",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "flutter_lints",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-5.0.0",
"packageUri": "lib/",
"languageVersion": "3.5"
},
{
"name": "flutter_plugin_android_lifecycle",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.24",
"packageUri": "lib/",
"languageVersion": "3.5"
},
{
"name": "flutter_test",
"rootUri": "file:///C:/src/flutter/flutter/packages/flutter_test",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "flutter_web_plugins",
"rootUri": "file:///C:/src/flutter/flutter/packages/flutter_web_plugins",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "get",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/get-4.6.6",
"packageUri": "lib/",
"languageVersion": "2.15"
},
{
"name": "http",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http-1.3.0",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "http_parser",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http_parser-4.1.2",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "intl",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/intl-0.20.1",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "leak_tracker",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker-10.0.7",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "leak_tracker_flutter_testing",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.8",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "leak_tracker_testing",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_testing-3.0.1",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "lints",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/lints-5.1.1",
"packageUri": "lib/",
"languageVersion": "3.6"
},
{
"name": "matcher",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.16+1",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "material_color_utilities",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.11.1",
"packageUri": "lib/",
"languageVersion": "2.17"
},
{
"name": "meta",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.15.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "path",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.9.0",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "path_provider",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider-2.1.5",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "path_provider_android",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_android-2.2.15",
"packageUri": "lib/",
"languageVersion": "3.5"
},
{
"name": "path_provider_foundation",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_foundation-2.4.1",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "path_provider_linux",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_linux-2.2.1",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "path_provider_platform_interface",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_platform_interface-2.1.2",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "path_provider_windows",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_windows-2.3.0",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "pixel_snap",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/pixel_snap-0.1.5",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "platform",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/platform-3.1.6",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "plugin_platform_interface",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/plugin_platform_interface-2.1.8",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "simple_gesture_detector",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/simple_gesture_detector-0.2.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "sizer",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/sizer-3.0.5",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "sky_engine",
"rootUri": "file:///C:/src/flutter/flutter/bin/cache/pkg/sky_engine",
"packageUri": "lib/",
"languageVersion": "3.2"
},
{
"name": "source_span",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.0",
"packageUri": "lib/",
"languageVersion": "2.18"
},
{
"name": "stack_trace",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.12.0",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "stream_channel",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.2",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "string_scanner",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.3.0",
"packageUri": "lib/",
"languageVersion": "3.1"
},
{
"name": "table_calendar",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/table_calendar-3.2.0",
"packageUri": "lib/",
"languageVersion": "3.0"
},
{
"name": "term_glyph",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "test_api",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.7.3",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "typed_data",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/typed_data-1.4.0",
"packageUri": "lib/",
"languageVersion": "3.5"
},
{
"name": "vector_math",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.1.4",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "vm_service",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vm_service-14.3.0",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "vph_common_widgets",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_common_widgets-0.0.3",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "vph_web_date_picker",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_web_date_picker-0.0.6",
"packageUri": "lib/",
"languageVersion": "2.19"
},
{
"name": "web",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/web-1.1.0",
"packageUri": "lib/",
"languageVersion": "3.4"
},
{
"name": "win32",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/win32-5.10.1",
"packageUri": "lib/",
"languageVersion": "3.5"
},
{
"name": "xdg_directories",
"rootUri": "file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/xdg_directories-1.1.0",
"packageUri": "lib/",
"languageVersion": "3.3"
},
{
"name": "shayog",
"rootUri": "../",
"packageUri": "lib/",
"languageVersion": "3.6"
}
],
"generated": "2025-02-07T11:05:55.892643Z",
"generator": "pub",
"generatorVersion": "3.6.1",
"flutterRoot": "file:///C:/src/flutter/flutter",
"flutterVersion": "3.27.3",
"pubCache": "file:///C:/Users/Admin/AppData/Local/Pub/Cache"
}

View File

@ -0,0 +1,221 @@
async
2.18
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.11.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/async-2.11.0/lib/
boolean_selector
2.17
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/boolean_selector-2.1.1/lib/
characters
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.3.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/characters-1.3.0/lib/
clock
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/clock-1.1.1/lib/
collection
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.19.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/collection-1.19.0/lib/
cross_file
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cross_file-0.3.4+2/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cross_file-0.3.4+2/lib/
cupertino_icons
3.1
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cupertino_icons-1.0.8/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/cupertino_icons-1.0.8/lib/
fake_async
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/fake_async-1.3.1/lib/
ffi
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/ffi-2.1.3/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/ffi-2.1.3/lib/
file_picker
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/file_picker-8.3.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/file_picker-8.3.1/lib/
flutter_lints
3.5
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-5.0.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_lints-5.0.0/lib/
flutter_plugin_android_lifecycle
3.5
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.24/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.24/lib/
get
2.15
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/get-4.6.6/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/get-4.6.6/lib/
http
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http-1.3.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http-1.3.0/lib/
http_parser
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http_parser-4.1.2/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/http_parser-4.1.2/lib/
intl
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/intl-0.20.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/intl-0.20.1/lib/
leak_tracker
3.2
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker-10.0.7/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker-10.0.7/lib/
leak_tracker_flutter_testing
3.2
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.8/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_flutter_testing-3.0.8/lib/
leak_tracker_testing
3.2
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_testing-3.0.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/leak_tracker_testing-3.0.1/lib/
lints
3.6
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/lints-5.1.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/lints-5.1.1/lib/
matcher
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.16+1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/matcher-0.12.16+1/lib/
material_color_utilities
2.17
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.11.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/material_color_utilities-0.11.1/lib/
meta
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.15.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/meta-1.15.0/lib/
path
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.9.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path-1.9.0/lib/
path_provider
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider-2.1.5/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider-2.1.5/lib/
path_provider_android
3.5
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_android-2.2.15/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_android-2.2.15/lib/
path_provider_foundation
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_foundation-2.4.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_foundation-2.4.1/lib/
path_provider_linux
2.19
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_linux-2.2.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_linux-2.2.1/lib/
path_provider_platform_interface
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_platform_interface-2.1.2/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_platform_interface-2.1.2/lib/
path_provider_windows
3.2
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_windows-2.3.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/path_provider_windows-2.3.0/lib/
pixel_snap
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/pixel_snap-0.1.5/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/pixel_snap-0.1.5/lib/
platform
3.2
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/platform-3.1.6/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/platform-3.1.6/lib/
plugin_platform_interface
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/plugin_platform_interface-2.1.8/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/plugin_platform_interface-2.1.8/lib/
simple_gesture_detector
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/simple_gesture_detector-0.2.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/simple_gesture_detector-0.2.1/lib/
sizer
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/sizer-3.0.5/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/sizer-3.0.5/lib/
source_span
2.18
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/source_span-1.10.0/lib/
stack_trace
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.12.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stack_trace-1.12.0/lib/
stream_channel
2.19
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.2/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/stream_channel-2.1.2/lib/
string_scanner
3.1
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.3.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/string_scanner-1.3.0/lib/
table_calendar
3.0
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/table_calendar-3.2.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/table_calendar-3.2.0/lib/
term_glyph
2.12
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/term_glyph-1.2.1/lib/
test_api
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.7.3/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/test_api-0.7.3/lib/
typed_data
3.5
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/typed_data-1.4.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/typed_data-1.4.0/lib/
vector_math
2.14
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.1.4/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vector_math-2.1.4/lib/
vm_service
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vm_service-14.3.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vm_service-14.3.0/lib/
vph_common_widgets
2.19
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_common_widgets-0.0.3/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_common_widgets-0.0.3/lib/
vph_web_date_picker
2.19
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_web_date_picker-0.0.6/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/vph_web_date_picker-0.0.6/lib/
web
3.4
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/web-1.1.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/web-1.1.0/lib/
win32
3.5
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/win32-5.10.1/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/win32-5.10.1/lib/
xdg_directories
3.3
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/xdg_directories-1.1.0/
file:///C:/Users/Admin/AppData/Local/Pub/Cache/hosted/pub.dev/xdg_directories-1.1.0/lib/
shayog
3.6
file:///C:/Users/Admin/Downloads/shayog/
file:///C:/Users/Admin/Downloads/shayog/lib/
sky_engine
3.2
file:///C:/src/flutter/flutter/bin/cache/pkg/sky_engine/
file:///C:/src/flutter/flutter/bin/cache/pkg/sky_engine/lib/
flutter
3.3
file:///C:/src/flutter/flutter/packages/flutter/
file:///C:/src/flutter/flutter/packages/flutter/lib/
flutter_test
3.3
file:///C:/src/flutter/flutter/packages/flutter_test/
file:///C:/src/flutter/flutter/packages/flutter_test/lib/
flutter_web_plugins
3.2
file:///C:/src/flutter/flutter/packages/flutter_web_plugins/
file:///C:/src/flutter/flutter/packages/flutter_web_plugins/lib/
2

1
.dart_tool/version Normal file
View File

@ -0,0 +1 @@
3.27.3

3
.idea/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

View File

@ -0,0 +1,461 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DeviceStreaming">
<option name="deviceSelectionList">
<list>
<PersistentDeviceSelectionData>
<option name="api" value="27" />
<option name="brand" value="DOCOMO" />
<option name="codename" value="F01L" />
<option name="id" value="F01L" />
<option name="labId" value="google" />
<option name="manufacturer" value="FUJITSU" />
<option name="name" value="F-01L" />
<option name="screenDensity" value="360" />
<option name="screenX" value="720" />
<option name="screenY" value="1280" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="OPPO" />
<option name="codename" value="OP573DL1" />
<option name="id" value="OP573DL1" />
<option name="labId" value="google" />
<option name="manufacturer" value="OPPO" />
<option name="name" value="CPH2557" />
<option name="screenDensity" value="480" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="28" />
<option name="brand" value="DOCOMO" />
<option name="codename" value="SH-01L" />
<option name="id" value="SH-01L" />
<option name="labId" value="google" />
<option name="manufacturer" value="SHARP" />
<option name="name" value="AQUOS sense2 SH-01L" />
<option name="screenDensity" value="480" />
<option name="screenX" value="1080" />
<option name="screenY" value="2160" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="Lenovo" />
<option name="codename" value="TB370FU" />
<option name="formFactor" value="Tablet" />
<option name="id" value="TB370FU" />
<option name="labId" value="google" />
<option name="manufacturer" value="Lenovo" />
<option name="name" value="Tab P12" />
<option name="screenDensity" value="340" />
<option name="screenX" value="1840" />
<option name="screenY" value="2944" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="31" />
<option name="brand" value="samsung" />
<option name="codename" value="a51" />
<option name="id" value="a51" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy A51" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="akita" />
<option name="id" value="akita" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="motorola" />
<option name="codename" value="arcfox" />
<option name="id" value="arcfox" />
<option name="labId" value="google" />
<option name="manufacturer" value="Motorola" />
<option name="name" value="razr plus 2024" />
<option name="screenDensity" value="360" />
<option name="screenX" value="1080" />
<option name="screenY" value="1272" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="samsung" />
<option name="codename" value="b0q" />
<option name="id" value="b0q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S22 Ultra" />
<option name="screenDensity" value="600" />
<option name="screenX" value="1440" />
<option name="screenY" value="3088" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="32" />
<option name="brand" value="google" />
<option name="codename" value="bluejay" />
<option name="id" value="bluejay" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 6a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="caiman" />
<option name="id" value="caiman" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 9 Pro" />
<option name="screenDensity" value="360" />
<option name="screenX" value="960" />
<option name="screenY" value="2142" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="comet" />
<option name="default" value="true" />
<option name="id" value="comet" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 9 Pro Fold" />
<option name="screenDensity" value="390" />
<option name="screenX" value="2076" />
<option name="screenY" value="2152" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="29" />
<option name="brand" value="samsung" />
<option name="codename" value="crownqlteue" />
<option name="id" value="crownqlteue" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Note9" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2220" />
<option name="screenY" value="1080" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="dm2q" />
<option name="id" value="dm2q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="S23 Plus" />
<option name="screenDensity" value="450" />
<option name="screenX" value="1080" />
<option name="screenY" value="2340" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="dm3q" />
<option name="id" value="dm3q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S23 Ultra" />
<option name="screenDensity" value="600" />
<option name="screenX" value="1440" />
<option name="screenY" value="3088" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="e1q" />
<option name="default" value="true" />
<option name="id" value="e1q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S24" />
<option name="screenDensity" value="480" />
<option name="screenX" value="1080" />
<option name="screenY" value="2340" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="e3q" />
<option name="id" value="e3q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S24 Ultra" />
<option name="screenDensity" value="450" />
<option name="screenX" value="1440" />
<option name="screenY" value="3120" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="eos" />
<option name="id" value="eos" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Eos" />
<option name="screenDensity" value="320" />
<option name="screenX" value="384" />
<option name="screenY" value="384" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="felix" />
<option name="id" value="felix" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Fold" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2208" />
<option name="screenY" value="1840" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="felix" />
<option name="id" value="felix" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Fold" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2208" />
<option name="screenY" value="1840" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="felix_camera" />
<option name="id" value="felix_camera" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Fold (Camera-enabled)" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2208" />
<option name="screenY" value="1840" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="motorola" />
<option name="codename" value="fogona" />
<option name="id" value="fogona" />
<option name="labId" value="google" />
<option name="manufacturer" value="Motorola" />
<option name="name" value="moto g play - 2024" />
<option name="screenDensity" value="280" />
<option name="screenX" value="720" />
<option name="screenY" value="1600" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="g0q" />
<option name="id" value="g0q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="SM-S906U1" />
<option name="screenDensity" value="450" />
<option name="screenX" value="1080" />
<option name="screenY" value="2340" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="samsung" />
<option name="codename" value="gts8uwifi" />
<option name="formFactor" value="Tablet" />
<option name="id" value="gts8uwifi" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Tab S8 Ultra" />
<option name="screenDensity" value="320" />
<option name="screenX" value="1848" />
<option name="screenY" value="2960" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="husky" />
<option name="id" value="husky" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8 Pro" />
<option name="screenDensity" value="390" />
<option name="screenX" value="1008" />
<option name="screenY" value="2244" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="motorola" />
<option name="codename" value="java" />
<option name="id" value="java" />
<option name="labId" value="google" />
<option name="manufacturer" value="Motorola" />
<option name="name" value="G20" />
<option name="screenDensity" value="280" />
<option name="screenX" value="720" />
<option name="screenY" value="1600" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="komodo" />
<option name="id" value="komodo" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 9 Pro XL" />
<option name="screenDensity" value="360" />
<option name="screenX" value="1008" />
<option name="screenY" value="2244" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="lynx" />
<option name="id" value="lynx" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 7a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="motorola" />
<option name="codename" value="maui" />
<option name="id" value="maui" />
<option name="labId" value="google" />
<option name="manufacturer" value="Motorola" />
<option name="name" value="moto g play - 2023" />
<option name="screenDensity" value="280" />
<option name="screenX" value="720" />
<option name="screenY" value="1600" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="31" />
<option name="brand" value="google" />
<option name="codename" value="oriole" />
<option name="id" value="oriole" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 6" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="panther" />
<option name="id" value="panther" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 7" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="q5q" />
<option name="id" value="q5q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Z Fold5" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1812" />
<option name="screenY" value="2176" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="q6q" />
<option name="id" value="q6q" />
<option name="labId" value="google" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Z Fold6" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1856" />
<option name="screenY" value="2160" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="google" />
<option name="codename" value="r11" />
<option name="formFactor" value="Wear OS" />
<option name="id" value="r11" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Watch" />
<option name="screenDensity" value="320" />
<option name="screenX" value="384" />
<option name="screenY" value="384" />
<option name="type" value="WEAR_OS" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="google" />
<option name="codename" value="redfin" />
<option name="id" value="redfin" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 5" />
<option name="screenDensity" value="440" />
<option name="screenX" value="1080" />
<option name="screenY" value="2340" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="shiba" />
<option name="id" value="shiba" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="tangorpro" />
<option name="formFactor" value="Tablet" />
<option name="id" value="tangorpro" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Tablet" />
<option name="screenDensity" value="320" />
<option name="screenX" value="1600" />
<option name="screenY" value="2560" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="tokay" />
<option name="default" value="true" />
<option name="id" value="tokay" />
<option name="labId" value="google" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 9" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2424" />
</PersistentDeviceSelectionData>
</list>
</option>
</component>
</project>

6
.idea/misc.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectType">
<option name="id" value="io.flutter" />
</component>
</project>

9
.idea/modules.xml Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/shayog.iml" filepath="$PROJECT_DIR$/.idea/shayog.iml" />
<module fileurl="file://$PROJECT_DIR$/android/shayog_android.iml" filepath="$PROJECT_DIR$/android/shayog_android.iml" />
</modules>
</component>
</project>

16
.idea/shayog.iml Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/.pub" />
<excludeFolder url="file://$MODULE_DIR$/build" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Flutter Plugins" level="project" />
<orderEntry type="library" name="Dart SDK" level="project" />
<orderEntry type="library" name="Dart Packages" level="project" />
</component>
</module>

6
.idea/vcs.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

View File

@ -0,0 +1,34 @@
package io.flutter.plugins;
import androidx.annotation.Keep;
import androidx.annotation.NonNull;
import io.flutter.Log;
import io.flutter.embedding.engine.FlutterEngine;
/**
* Generated file. Do not edit.
* This file is generated by the Flutter tool based on the
* plugins that support the Android platform.
*/
@Keep
public final class GeneratedPluginRegistrant {
private static final String TAG = "GeneratedPluginRegistrant";
public static void registerWith(@NonNull FlutterEngine flutterEngine) {
try {
flutterEngine.getPlugins().add(new com.mr.flutter.plugin.filepicker.FilePickerPlugin());
} catch (Exception e) {
Log.e(TAG, "Error registering plugin file_picker, com.mr.flutter.plugin.filepicker.FilePickerPlugin", e);
}
try {
flutterEngine.getPlugins().add(new io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin());
} catch (Exception e) {
Log.e(TAG, "Error registering plugin flutter_plugin_android_lifecycle, io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin", e);
}
try {
flutterEngine.getPlugins().add(new io.flutter.plugins.pathprovider.PathProviderPlugin());
} catch (Exception e) {
Log.e(TAG, "Error registering plugin path_provider_android, io.flutter.plugins.pathprovider.PathProviderPlugin", e);
}
}
}

Binary file not shown.

160
android/gradlew vendored Normal file
View File

@ -0,0 +1,160 @@
#!/usr/bin/env bash
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
echo "$*"
}
die ( ) {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
esac
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"

90
android/gradlew.bat vendored Normal file
View File

@ -0,0 +1,90 @@
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windowz variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
goto execute
:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega

5
android/local.properties Normal file
View File

@ -0,0 +1,5 @@
sdk.dir=C:\\Users\\Admin\\AppData\\Local\\Android\\sdk
flutter.sdk=C:\\src\\flutter\\flutter
flutter.buildMode=release
flutter.versionName=1.0.0
flutter.versionCode=1

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="android" name="Android">
<configuration>
<option name="ALLOW_USER_CONFIGURATION" value="false" />
<option name="GEN_FOLDER_RELATIVE_PATH_APT" value="/gen" />
<option name="GEN_FOLDER_RELATIVE_PATH_AIDL" value="/gen" />
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/app/src/main/AndroidManifest.xml" />
<option name="RES_FOLDER_RELATIVE_PATH" value="/app/src/main/res" />
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/app/src/main/assets" />
<option name="LIBS_FOLDER_RELATIVE_PATH" value="/app/src/main/libs" />
<option name="PROGUARD_LOGS_FOLDER_RELATIVE_PATH" value="/app/src/main/proguard_logs" />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/app/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/app/src/main/kotlin" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" generated="true" />
</content>
<orderEntry type="jdk" jdkName="Android API 29 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Flutter for Android" level="project" />
<orderEntry type="library" name="KotlinJavaRuntime" level="project" />
</component>
</module>

View File

@ -0,0 +1,14 @@
// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=C:\src\flutter\flutter
FLUTTER_APPLICATION_PATH=C:\Users\Admin\Downloads\shayog
COCOAPODS_PARALLEL_CODE_SIGN=true
FLUTTER_TARGET=lib\main.dart
FLUTTER_BUILD_DIR=build
FLUTTER_BUILD_NAME=1.0.0
FLUTTER_BUILD_NUMBER=1
EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386
EXCLUDED_ARCHS[sdk=iphoneos*]=armv7
DART_OBFUSCATION=false
TRACK_WIDGET_CREATION=true
TREE_SHAKE_ICONS=false
PACKAGE_CONFIG=.dart_tool/package_config.json

View File

@ -0,0 +1,13 @@
#!/bin/sh
# This is a generated file; do not edit or check into version control.
export "FLUTTER_ROOT=C:\src\flutter\flutter"
export "FLUTTER_APPLICATION_PATH=C:\Users\Admin\Downloads\shayog"
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
export "FLUTTER_TARGET=lib\main.dart"
export "FLUTTER_BUILD_DIR=build"
export "FLUTTER_BUILD_NAME=1.0.0"
export "FLUTTER_BUILD_NUMBER=1"
export "DART_OBFUSCATION=false"
export "TRACK_WIDGET_CREATION=true"
export "TREE_SHAKE_ICONS=false"
export "PACKAGE_CONFIG=.dart_tool/package_config.json"

View File

@ -0,0 +1,19 @@
//
// Generated file. Do not edit.
//
// clang-format off
#ifndef GeneratedPluginRegistrant_h
#define GeneratedPluginRegistrant_h
#import <Flutter/Flutter.h>
NS_ASSUME_NONNULL_BEGIN
@interface GeneratedPluginRegistrant : NSObject
+ (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry;
@end
NS_ASSUME_NONNULL_END
#endif /* GeneratedPluginRegistrant_h */

View File

@ -0,0 +1,28 @@
//
// Generated file. Do not edit.
//
// clang-format off
#import "GeneratedPluginRegistrant.h"
#if __has_include(<file_picker/FilePickerPlugin.h>)
#import <file_picker/FilePickerPlugin.h>
#else
@import file_picker;
#endif
#if __has_include(<path_provider_foundation/PathProviderPlugin.h>)
#import <path_provider_foundation/PathProviderPlugin.h>
#else
@import path_provider_foundation;
#endif
@implementation GeneratedPluginRegistrant
+ (void)registerWithRegistry:(NSObject<FlutterPluginRegistry>*)registry {
[FilePickerPlugin registerWithRegistrar:[registry registrarForPlugin:@"FilePickerPlugin"]];
[PathProviderPlugin registerWithRegistrar:[registry registrarForPlugin:@"PathProviderPlugin"]];
}
@end

View File

@ -45,9 +45,10 @@ class InputField extends StatelessWidget {
// return Container(height: 0, color: Colors.transparent);
// },
style: 12.txtSBoldBlack,
maxLength: maxLength,
decoration: InputDecoration(
counterText: '',
maxLength: maxLength,
decoration: InputDecoration(counterText: '',
isDense: true,
hintStyle: 11.txtSBoldGrey,
maintainHintHeight: true,
@ -61,6 +62,7 @@ class InputField extends StatelessWidget {
focusedErrorBorder: underLineBorder ?? inputBorder,
filled: true,
hintText: title ?? "",
labelStyle: 12.txtSBoldGrey,
fillColor: AppColors.clrD9,
errorText: "",

View File

@ -87,6 +87,9 @@ class AppStrings {
static const String paymentView = "Payment View";
static const String transporterInbound = "Transporter Inbound Transaction";
static const String close = "Close";
static const String billDayConfiguration = "Bill Day Configuration";
static const String bufferDayConfiguration = "Buffer Day Configuration";
static const String ccnConfiguration = "CCN Configuration";
static const String utrAmt = "UTR Amount ";

View File

@ -1,42 +1,300 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:get/get_core/src/get_main.dart';
import 'package:get/get_state_manager/src/rx_flutter/rx_obx_widget.dart';
import 'package:shayog/feature/presentation/screens/admin/configuration_management/configuration_screen_controller.dart';
import '../../../../../components/common/common_btn.dart';
import '../../../../../components/common/input_field.dart';
import '../../../../../components/styles/app_colors.dart';
import '../../../../../components/styles/app_images.dart';
import '../../../../../components/styles/app_strings.dart';
import '../../../widgets/custom_table.dart';
class ConfigurationScreen extends StatelessWidget {
class ConfigurationScreen extends StatefulWidget {
const ConfigurationScreen({super.key});
@override
State<ConfigurationScreen> createState() => _ConfigurationScreenState();
}
class _ConfigurationScreenState extends State<ConfigurationScreen> {
final ctrl = Get.put(ConfigurationScreenController());
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: Column(
children: [
// Row 1 (Header Row)
Row(
children: [
CustomTable(text:"Header 1", isHeader: true),
CustomTable(text:"Header 2", isHeader: true),
CustomTable(text:"Header 3", isHeader: true),
],
),
Row(
children: [
CustomTable(text:"Row 1, Col 1"),
CustomTable(text:"Row 1, Col 2"),
CustomTable(text:"Row 1, Col 3"),
],
),
Row(
children: [
CustomTable(text:"Row 2, Col 1"),
CustomTable(text:"Row 2, Col 2"),
CustomTable(text:"Row 2, Col 3"),
],
Container(
padding: EdgeInsets.only(bottom: 4),
margin: EdgeInsets.all(8),
child: Column(
children: [
Container(
margin: EdgeInsets.only(bottom: 12),
height: 45,
color: AppColors.primaryClr,
child: Row(
children: [
ListView.separated(
padding: EdgeInsets.symmetric(horizontal: 16),
scrollDirection: Axis.horizontal,
shrinkWrap: true,
itemBuilder: (context, index) {
return Obx(
() => InkWell(
onTap: () {
ctrl.selectedState.value = index;
},
child: Container(
margin: EdgeInsets.only(bottom: 10, top: 10),
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
color:
ctrl.selectedState.value == index
? Colors.white
: AppColors.primaryClr,
width: 3))),
child: Center(
child: Text(
ctrl.userTabs[index].title ?? "",
style: TextStyle(
fontSize: 12,
fontWeight: FontWeight.w900,
color: Colors.white),
),
),
),
),
);
},
separatorBuilder: (context, index) {
return SizedBox(width: 16);
},
itemCount: ctrl.userTabs.length),
Spacer(),
InkWell(
child: Image.asset(AppImages.refresh,
height: 10, width: 10)),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
AppStrings.refresh,
style: TextStyle(
color: AppColors.white,
fontSize: 10,
fontWeight: FontWeight.normal),
),
),
],
),
),
],
),
),
],
Container(
padding: EdgeInsets.all(16),
color: AppColors.clrF2,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Plant",
),
SizedBox(height: 8),
InputField(
title: "Select Plant ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedInvoice.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl.selectedInvoice.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.invoiceNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"User Name",
),
SizedBox(height: 8),
InputField(
title: "Select User Name",
),
],
)),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Product Name",
),
SizedBox(height: 8),
InputField(
title: "Select Product Name ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedFreightNo.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl
// .selectedFreightNo.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.freightBillNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
],
),
Padding(
padding:
const EdgeInsets.only(top: 16.0, left: 0, right: 8),
child: Row(
children: [
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Bill day",
),
SizedBox(height: 8),
InputField(
title: "Select Bill Day",
),
],
)),
],
),
),
Padding(
padding: const EdgeInsets.all(16.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
CommonBtn(
bkClr: Colors.white,
text: AppStrings.cancel,
clickAction: () {},
),
SizedBox(width: 16),
CommonBtn(
bkClr: Colors.white,
text: AppStrings.submit,
clickAction: () {},
),
],
),
),
],
),
)
],
),
);
}
_commonText(String title) {
return Text(
title,
style: TextStyle(
fontSize: 13, color: Colors.black, fontWeight: FontWeight.w900),
);
}
}

View File

@ -0,0 +1,24 @@
import 'package:get/get_rx/src/rx_types/rx_types.dart';
import 'package:get/get_state_manager/src/simple/get_controllers.dart';
import '../../../../../components/common/common_model.dart';
import '../../../../../components/styles/app_strings.dart';
class ConfigurationScreenController extends GetxController{
var selectedState = 0.obs;
RxBool isSelected = false.obs;
RxList userTabs = <CommonModel>[
CommonModel(title: AppStrings.billDayConfiguration),
CommonModel(title: AppStrings.bufferDayConfiguration),
CommonModel(title: AppStrings.ccnConfiguration),
].obs;
var selectedInvoice = '41896424644'.obs; // Default value
var selectedFreightNo = '9841651635426'.obs; // Default value
void toggleContainer() {
isSelected.value = true;
print("isSelected.value..${isSelected.value}");
}
var invoiceNoItems = ['41896424644', '41896424644',
'41896424644', '41896424644','41896424644'].obs;
var freightBillNoItems = ['9841651635426','9841651635426','9841651635426','9841651635426','9841651635426'];
}

View File

@ -1,3 +1,4 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:shayog/components/styles/textStyles.dart';
@ -342,10 +343,6 @@ class FreightBillScreen extends StatelessWidget {
TableRow(
decoration: BoxDecoration(color: AppColors.secondaryClr),
children: [
_cellText(
text: "SR. No.",
clr: Colors.black,
fontWeight: FontWeight.bold),
_cellText(
text: "Transporter Name",
clr: Colors.black,
@ -378,7 +375,6 @@ class FreightBillScreen extends StatelessWidget {
fontWeight: FontWeight.bold),
]),
TableRow(children: [
_cellText(text: "01"),
_cellText(text: "User 1"),
_cellText(text: "9841651635426", clr: AppColors.primaryClr),
_cellText(text: "1 August 2024"),
@ -389,7 +385,6 @@ class FreightBillScreen extends StatelessWidget {
_cellText(text: "78646646"),
]),
TableRow(children: [
_cellText(text: "02"),
_cellText(text: "User 2"),
_cellText(text: "9841651635426", clr: AppColors.primaryClr),
_cellText(text: "1 August 2024"),
@ -400,7 +395,6 @@ class FreightBillScreen extends StatelessWidget {
_cellText(text: "78646646"),
]),
TableRow(children: [
_cellText(text: "03"),
_cellText(text: "User 3"),
_cellText(text: "9841651635426", clr: AppColors.primaryClr),
_cellText(text: "1 August 2024"),
@ -411,7 +405,6 @@ class FreightBillScreen extends StatelessWidget {
_cellText(text: "-"),
]),
TableRow(children: [
_cellText(text: "04"),
_cellText(text: "User 4"),
_cellText(text: "9841651635426", clr: AppColors.primaryClr),
_cellText(text: "1 August 2024"),
@ -422,7 +415,6 @@ class FreightBillScreen extends StatelessWidget {
_cellText(text: "78646646"),
]),
TableRow(children: [
_cellText(text: "05"),
_cellText(text: "User 5"),
_cellText(text: "9841651635426", clr: AppColors.primaryClr),
_cellText(text: "1 August 2024"),

View File

@ -6,6 +6,7 @@ import '../../../../../../components/styles/app_strings.dart';
class MasterCtrl extends GetxController{
var selectedUser = 0.obs;
RxBool isSelected = false.obs;
var supplierCode = 'Supplier Code'.obs;
var bpGrouping = 'BP Grouping'.obs;
var accountGrp = 'Supplier Account Group'.obs;
@ -24,4 +25,8 @@ class MasterCtrl extends GetxController{
CommonModel(title: AppStrings.plantMaster),
].obs;
void toggleContainer() {
isSelected.value = true;
print("isSelected.value..${isSelected.value}");
}
}

View File

@ -1,6 +1,8 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import '../../../../../components/common/common_btn.dart';
import '../../../../../components/common/custom_drop_down.dart';
import '../../../../../components/common/input_field.dart';
import '../../../../../components/styles/app_colors.dart';
import '../../../../../components/styles/app_images.dart';
import '../../../../../components/styles/app_strings.dart';
@ -79,6 +81,7 @@ class MasterScreen extends StatelessWidget {
),
),
InkWell(
onTap: masterCtrl.toggleContainer,
child: Image.asset(AppImages.filter,
height: 12, width: 12)),
Padding(
@ -107,13 +110,371 @@ class MasterScreen extends StatelessWidget {
],
),
),
Obx(
() => masterCtrl.isSelected.value
? Container(
padding: EdgeInsets.all(16),
color: AppColors.clrF2,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Supplier Code",
),
SizedBox(height: 8),
InputField(
title: "Enter Supplier Code ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedInvoice.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl.selectedInvoice.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.invoiceNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Supplier Name",
),
SizedBox(height: 8),
InputField(
title: "Enter Supplier Name",
),
],
)),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Supplier Account Group",
),
SizedBox(height: 8),
InputField(
title: "Supplier Account Group ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedFreightNo.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl
// .selectedFreightNo.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.freightBillNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
],
),
Padding(
padding:
const EdgeInsets.only(top: 16.0, left: 0, right: 8),
child: Row(
children: [
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"State",
),
SizedBox(height: 8),
InputField(
title: "Select State ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedInvoice.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl.selectedInvoice.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.invoiceNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
SizedBox(width: 16,),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"BP Group",
),
SizedBox(height: 8),
InputField(
title: "Select BP Group ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedInvoice.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl.selectedInvoice.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.invoiceNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
SizedBox(width: 16,),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_commonText(
"Status",
),
SizedBox(height: 8),
InputField(
title: "Select Status ",
),
// Obx(
// () => Container(
// padding: EdgeInsets.only(left: 8),
// height: 35,
// decoration: BoxDecoration(
// borderRadius:
// BorderRadius.circular(4.0),
// color: AppColors.clrD9,
// border: Border.all(
// color: AppColors.clrGrey)),
// child: DropdownButton<String>(
// icon: Icon(
// Icons
// .keyboard_arrow_down_outlined,
// size: 20,
// color: AppColors.darkGrey),
//
// isExpanded: true,
// underline: SizedBox(),
//
// value: ctrl
// .selectedInvoice.value,
// // Use the selected value
// onChanged: (String? newValue) {
// if (newValue != null) {
// ctrl.selectedInvoice.value =
// newValue; // Update the selected value
// }
// },
// items: ctrl.invoiceNoItems
// .map((String value) {
// return DropdownMenuItem<String>(
// value: value.toString(),
// child: Text(
// value,
// style: TextStyle(
// fontSize: 12,
// color:
// AppColors.darkGrey),
// ),
// );
// }).toList(),
// ),
// ),
// ),
],
)),
],
),
),
Padding(
padding: const EdgeInsets.all(16.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
CommonBtn(
bkClr: Colors.white,
text: AppStrings.cancel,
clickAction: () {},
),
SizedBox(width: 16),
CommonBtn(
text: AppStrings.submit,
clickAction: () {},
),
],
),
),
],
),
)
: SizedBox(),
),
SizedBox(height: 20,),
Obx(() {
switch (masterCtrl.selectedUser.value) {
case 0:
return _tableView();
default:
default:
return Text("");
}
}),
@ -129,10 +490,11 @@ _tableView(){
TableRow(
decoration: BoxDecoration(color: AppColors.secondaryClr),
children: [
_cellText(text: "SR. No."),
// _cellText(text: "SR. No."),
//CustomTable(text: "SR. NO."),
CustomDropdown<String>(
items: masterCtrl.supplier,
backClr: AppColors.clrD9,
itemLabel: (item) => item,
onSelected: (selected) {
if (selected != null) {
@ -142,6 +504,7 @@ _tableView(){
hintText: 'Supplier Code'),
CustomDropdown<String>(
items: masterCtrl.supplier,
backClr: AppColors.clrD9,
itemLabel: (item) => item,
onSelected: (selected) {
if (selected != null) {
@ -151,6 +514,7 @@ _tableView(){
hintText: 'BP Grouping'),
CustomDropdown<String>(
items: masterCtrl.supplier,
backClr: AppColors.clrD9,
itemLabel: (item) => item,
onSelected: (selected) {
if (selected != null) {
@ -160,6 +524,7 @@ _tableView(){
hintText: 'Supplier Account Group'),
CustomDropdown<String>(
items: masterCtrl.supplier,
backClr: AppColors.clrD9,
itemLabel: (item) => item,
onSelected: (selected) {
if (selected != null) {
@ -170,7 +535,6 @@ _tableView(){
_cellText(text: "Legal Entity"),
]),
TableRow(children: [
_cellText(text: "01"),
_cellText(text: "11059440"),
_cellText(text: "ZIPT"),
_cellText(text: "ZIPT"),
@ -178,7 +542,6 @@ _tableView(){
_cellText(text: "0"),
]),
TableRow(children: [
_cellText(text: "02"),
_cellText(text: "11059440"),
_cellText(text: "ZIPT"),
_cellText(text: "ZIPT"),
@ -187,7 +550,6 @@ _tableView(){
]),
TableRow(children: [
_cellText(text: "03"),
_cellText(text: "11059440"),
_cellText(text: "ZIPT"),
_cellText(text: "ZIPT"),
@ -195,7 +557,6 @@ _tableView(){
_cellText(text: "0"),
]),
TableRow(children: [
_cellText(text: "04"),
_cellText(text: "11059440"),
_cellText(text: "ZIPT"),
_cellText(text: "ZIPT"),
@ -219,4 +580,11 @@ _tableView(){
),
);
}
_commonText(String title) {
return Text(
title,
style: TextStyle(
fontSize: 13, color: Colors.black, fontWeight: FontWeight.w900),
);
}
}

View File

@ -24,9 +24,9 @@ class GetAllUserResModel {
GetAllUserResModel({
this.content,
this.pageable,
this.last,
this.totalElements,
this.totalPages,
this.last,
this.size,
this.number,
this.sort,
@ -38,9 +38,9 @@ class GetAllUserResModel {
factory GetAllUserResModel.fromJson(Map<String, dynamic> json) => GetAllUserResModel(
content: json["content"] == null ? [] : List<List<AllUser>>.from(json["content"]!.map((x) => List<AllUser>.from(x.map((x) => AllUser.fromJson(x))))),
pageable: json["pageable"] == null ? null : Pageable.fromJson(json["pageable"]),
last: json["last"],
totalElements: json["totalElements"],
totalPages: json["totalPages"],
last: json["last"],
size: json["size"],
number: json["number"],
sort: json["sort"] == null ? null : Sort.fromJson(json["sort"]),
@ -52,9 +52,9 @@ class GetAllUserResModel {
Map<String, dynamic> toJson() => {
"content": content == null ? [] : List<dynamic>.from(content!.map((x) => List<dynamic>.from(x.map((x) => x.toJson())))),
"pageable": pageable?.toJson(),
"last": last,
"totalElements": totalElements,
"totalPages": totalPages,
"last": last,
"size": size,
"number": number,
"sort": sort?.toJson(),

View File

@ -0,0 +1,48 @@
// To parse this JSON data, do
//
// final getInvoiceRequest = getInvoiceRequestFromJson(jsonString);
import 'dart:convert';
GetInvoiceRequest getInvoiceRequestFromJson(String str) =>
GetInvoiceRequest.fromJson(json.decode(str));
String getInvoiceRequestToJson(GetInvoiceRequest data) =>
json.encode(data.toJson());
class GetInvoiceRequest {
final String? invoiceId;
final String? freightBillNo;
final String? invFromDate;
final String? invToDate;
final String? freightFromDate;
final String? freightToDate;
GetInvoiceRequest({
this.invoiceId,
this.freightBillNo,
this.invFromDate,
this.invToDate,
this.freightFromDate,
this.freightToDate,
});
factory GetInvoiceRequest.fromJson(Map<String, dynamic> json) =>
GetInvoiceRequest(
invoiceId: json["invoice_id"],
freightBillNo: json["freightBillNo"],
invFromDate: json["invFromDate"],
invToDate: json["invToDate"],
freightFromDate: json["freightFromDate"],
freightToDate: json["freightToDate"],
);
Map<String, dynamic> toJson() => {
"invoice_id": invoiceId,
"freightBillNo": freightBillNo,
"invFromDate": invFromDate,
"invToDate": invToDate,
"freightFromDate": freightFromDate,
"freightToDate": freightToDate,
};
}

View File

@ -7,8 +7,10 @@ import 'package:shayog/services/network/get_requests.dart';
import 'package:shayog/services/network/post_request.dart';
import '../../../../../../components/common/common_model.dart';
import '../../../../../../components/styles/app_strings.dart';
import '../../../../../../services/network/post_request.dart';
import '../../model/get_invoice_response.dart';
class InvoiceManagementController extends GetxController {
class InvoiceManagementController extends GetxController{
var selectedState = 0.obs;
Rx<String> selectedPlant = "Select Plant".obs;
Rx<String> selectedFreightBill = "Select Bill No.".obs;
@ -56,7 +58,7 @@ class InvoiceManagementController extends GetxController {
CommonModel(title: AppStrings.viewInvoice),
CommonModel(title: AppStrings.cancelledInvoice),
CommonModel(title: AppStrings.ccnView),
].obs; // Default value
].obs;// Default value
RxInt totalPages = 3.obs;
RxInt totalElements = 3.obs;
var pageSize = 2.obs;
@ -71,7 +73,10 @@ class InvoiceManagementController extends GetxController {
TextEditingController fromController = TextEditingController();
DateTime fromSelectedDate = DateTime.now(); // Initialize with a default value
RxBool dateCheck = false.obs;
// Validation variables
RxBool showPlantError = false.obs;
RxBool showProductError = false.obs;
RxBool showTransactionError = false.obs;
String getFormattedDate(DateTime date) {
return "${date.day.toString().padLeft(2, '0')}-${date.month.toString()
.padLeft(2, '0')}-${date.year}";
@ -86,10 +91,24 @@ class InvoiceManagementController extends GetxController {
// RxBool showProductErrorViewFreight = false.obs;
var freightViewLoader = false.obs;
var freightBillData = <FreightBill>[].obs;
RxBool isFilterVisibleGenerateFreight = false.obs;
var selectTransactionTypeFreight = ''.obs;
var selectProductFreight = ''.obs;
RxString selectPlantViewFreight = ''.obs;
var selectProductViewFreight = ''.obs;
RxString selectPlantPending = ''.obs;
var selectProductPending = ''.obs;
var selectLocationPending = ''.obs;
var selectTransactionTypePending = ''.obs;
RxBool showPlantErrorPending = false.obs;
RxBool showProductErrorPending = false.obs;
RxBool showTransactionErrorPending = false.obs;
void toggleContainer() {
isSelected.value = true;
}
void toggleFilter() {
isFilterVisibleGenerateFreight.value =
!isFilterVisibleGenerateFreight.value;
if (!isFilterVisibleGenerateFreight.value) {
clearFiltersGenerateFreightBill(); }}
@override
@ -98,8 +117,29 @@ class InvoiceManagementController extends GetxController {
getFreightBills();
super.onInit();
}
void clearFiltersGenerateFreightBill() {
selectPlantFreight.value = '';
selectProductFreight.value = '';
selectTransactionTypeFreight.value = '';
fromController.clear();
showPlantError.value = false;
showProductError.value = false;
showTransactionError.value = false;
}
void toggleViewFreight() {
isFilterVisibleViewFreight.value = !isFilterVisibleViewFreight.value;
if (!isFilterVisibleViewFreight.value) {
clearFiltersViewFreight();
}
}
void togglePending() {
isFilterVisiblePendingGeneration.value =
!isFilterVisiblePendingGeneration.value;
if (!isFilterVisiblePendingGeneration.value) {
clearFiltersPendingGeneration();
}
}
getInvoiceView() async {
try {
invoiceViewLoader.value = true;
@ -128,7 +168,6 @@ class InvoiceManagementController extends GetxController {
invoiceViewLoader.value = false;
}
}
void changeSort(String field) {
if (field == sortField.value) {
sortDirection.value = sortDirection.value == "asc" ? "desc" : "asc";
@ -142,7 +181,28 @@ class InvoiceManagementController extends GetxController {
RxBool showPlantErrorFreight = false.obs;
RxBool showProductErrorFreight = false.obs;
RxString selectPlantFreight = ''.obs;
RxBool isFilterVisibleViewFreight = false.obs;
RxBool isFilterVisiblePendingGeneration = false.obs;
RxBool showPlantErrorViewFreight = false.obs;
RxBool showProductErrorViewFreight = false.obs;
void clearFiltersViewFreight() {
selectPlantViewFreight.value = '';
selectProductViewFreight.value = '';
selectFreightBillValidate.value = '';
fromController.clear();
showPlantErrorViewFreight.value = false;
showProductErrorViewFreight.value = false;
showTransactionErrorViewFreight.value = false;
}
void clearFiltersPendingGeneration() {
selectPlantPending.value = '';
selectProductPending.value = '';
selectTransactionTypePending.value = '';
fromController.clear();
showPlantErrorPending.value = false;
showProductErrorPending.value = false;
showTransactionErrorPending.value = false;
}
getFreightBills() async {
try {
isLoading.value = true;
@ -157,93 +217,7 @@ class InvoiceManagementController extends GetxController {
} finally {
isLoading.value = false;
}
}
}
// void clearFiltersViewFreight() {
// selectPlantViewFreight.value = '';
// selectProductViewFreight.value = '';
// selectFreightBillValidate.value = '';
// fromController.clear();
// showPlantErrorViewFreight.value = false;
// showProductErrorViewFreight.value = false;
// showTransactionErrorViewFreight.value = false;
// }
// void handleFilterSubmitViewFreightBill() {
// print('submit call');
// validateFieldsViewFreightBill();
// if (selectPlantViewFreight.value.isEmpty ||
// selectProductViewFreight.value.isEmpty
// // ||
// // selectTransactionTypeViewFreight.value.isEmpty
// ) {
// print('submit call 22');
// } else {
// print('submit call 1');
// displayFilteredDataFromViewFreight();
// }
// }
// void validateFieldsViewFreightBill() {
// showPlantErrorViewFreight.value = selectPlantViewFreight.value.isEmpty;
// showTransactionErrorViewFreight.value =
// selectFreightBillValidate.value.isEmpty;
// showProductErrorViewFreight.value = selectProductViewFreight.value.isEmpty;
// }
//
// void displayFilteredDataFromViewFreight() async {
// try {
// freightViewLoader.value = true;
// Map<String, String> requestBody = {
// "plant": selectPlantViewFreight.value,
// "productNane": selectProductViewFreight.value,
// "freightBillNo": selectFreightBillValidate.value,
// "transactionType": "",
// "fromLocation": "",
// "grnFromDate": "",
// "grnToDate": "",
// };
//
// var response = await PostRequests.viewFreightBill(requestBody);
//
// if (response != null) {
// List<FreightBill> flattenedContent =
// response.content!.expand((list) => list).toList();
//
// List<FreightBill> filteredData = flattenedContent.where((item) {
// // Plant filter
// bool plantMatch = selectPlantViewFreight.value.isEmpty ||
// item.plantCode.toString().toLowerCase() ==
// selectPlantViewFreight.value.toLowerCase();
//
// // Product filter
// bool productMatch = selectProductViewFreight.value.isEmpty ||
// item.materialCode.toString().toLowerCase() ==
// selectProductViewFreight.value.toLowerCase();
//
// // Freight bill filter
// bool freightBillMatch = selectFreightBillValidate.value.isEmpty ||
// item.freightbillCode.toString().toLowerCase() ==
// selectFreightBillValidate.value.toLowerCase();
//
//
// return plantMatch && productMatch && freightBillMatch;
// }).toList();
// freightBillData.assignAll(filteredData);
//
// // Update pagination values
// totalPages.value = response.totalPages ?? 0;
// totalElements.value = response.totalElements ?? 0;
// } else {
// freightBillData.clear();
// }
// } catch (e) {
// freightBillData.clear();
// } finally {
// freightViewLoader.value = false;
// }
// }
}

View File

@ -1,15 +1,27 @@
import 'dart:io';
import 'package:file_picker/file_picker.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:intl/intl.dart';
import 'package:path_provider/path_provider.dart';
import 'package:shayog/components/styles/textStyles.dart';
import 'package:shayog/feature/presentation/screens/transporter/invoice_management/cancelled_view/cancelled_view_screen.dart';
import 'package:shayog/feature/presentation/screens/transporter/invoice_management/ccn_view/ccn_view_screen.dart';
import 'package:shayog/feature/presentation/screens/transporter/invoice_management/payment_view/payment_view_screen.dart';
import 'package:shayog/feature/presentation/screens/transporter/invoice_management/view_invoice/view_invoice_screen.dart';
import 'package:shayog/feature/presentation/widgets/text_view.dart';
import 'package:sizer/sizer.dart';
import 'package:vph_web_date_picker/vph_web_date_picker.dart';
import '../../../../../../components/common/common_btn.dart';
import '../../../../../../components/common/common_button.dart';
import '../../../../../../components/common/custom_drop_down.dart';
import '../../../../../../components/common/data_cell.dart';
import '../../../../../../components/common/input_field.dart';
import '../../../../../../components/styles/app_colors.dart';
import '../../../../../../components/styles/app_images.dart';
import '../../../../../../components/styles/app_strings.dart';
import '../../../../widgets/text_view.dart';
import '../../invoice_management/ccn_view/ccn_view_screen.dart';
import '../../invoice_management/payment_view/ctrl/payment_view_ctrl.dart';
import '../../invoice_management/cancelled_view/cancelled_view_screen.dart';
import '../../invoice_management/payment_view/payment_view_screen.dart';
import '../ctrl/invoice_management_controller.dart';
class InvoiceManagement extends StatefulWidget {
@ -20,6 +32,8 @@ class InvoiceManagement extends StatefulWidget {
}
class _TransportViewState extends State<InvoiceManagement> {
final ScrollController horizontalScrollController = ScrollController();
final ScrollController verticalScrollController = ScrollController();
final ctrl = Get.put(InvoiceManagementController());
final paymentCtrl = Get.put(PaymentViewCtrl());
@override
@ -27,87 +41,331 @@ class _TransportViewState extends State<InvoiceManagement> {
return Column(
children: [
Container(
margin: EdgeInsets.symmetric(horizontal: 16, vertical: 8),
height: 50,
color: AppColors.primaryClr,
child: Row(
padding: EdgeInsets.only(bottom: 4),
margin: EdgeInsets.all(16),
child: Column(
children: [
ListView.separated(
shrinkWrap: true,
padding: EdgeInsets.symmetric(horizontal: 16),
scrollDirection: Axis.horizontal,
itemBuilder: (context, index) {
return Obx(
() => InkWell(
onTap: () {
ctrl.selectedState.value = index;
},
child: Container(
margin: EdgeInsets.only(bottom: 10, top: 10),
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
color: ctrl.selectedState.value == index
? Colors.white
: AppColors.primaryClr,
width: 3))),
child: Center(
child: TextView(
text: ctrl.invoiceTabs[index].title ?? "",
style: 12.txtBoldWhite,
),
),
Container(
margin: EdgeInsets.only(bottom: 12),
height: 55,
color: AppColors.primaryClr,
child: Row(
children: [
ListView.separated(
padding: EdgeInsets.symmetric(horizontal: 16),
scrollDirection: Axis.horizontal,
shrinkWrap: true,
itemBuilder: (context, index) {
return Obx(
() => InkWell(
onTap: () {
ctrl.selectedState.value = index;
},
child: Container(
margin: EdgeInsets.only(bottom: 10, top: 10),
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
color: ctrl.selectedState.value ==
index
? Colors.white
: AppColors.primaryClr,
width: 3))),
child: Center(
child: Text(
ctrl.userTabs[index].title ?? "",
style: TextStyle(
fontSize: 12,
fontWeight: FontWeight.w900,
color: Colors.white),
),
),
),
),
);
},
separatorBuilder: (context, index) {
return SizedBox(width: 16);
},
itemCount: ctrl.userTabs.length),
Spacer(),
InkWell(
child: Image.asset(AppImages.refresh,
height: 10, width: 10)),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
AppStrings.refresh,
style: TextStyle(
color: AppColors.white,
fontSize: 10,
fontWeight: FontWeight.normal),
),
),
);
},
separatorBuilder: (context, index) {
return SizedBox(width: 16);
},
itemCount: ctrl.invoiceTabs.length,
),
Spacer(),
InkWell(
onTap: (){
paymentCtrl.resetDropdowns();
},
child: Image.asset(AppImages.refresh, height: 16, width: 16)),
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(
AppStrings.refresh,
style: 12.txtBoldWhite,
),
),
InkWell(
onTap: () {
switch (ctrl.selectedState.value) {
case 0:
return ctrl.invoiceFilter();
case 1:
return ctrl.cancelledFilter();
case 2:
return ctrl.paymentFilter();
default:
return ctrl.ccnFilter();
}
},
child: Image.asset(AppImages.filter, height: 16, width: 16),
),
Padding(
padding: const EdgeInsets.all(8.0),
child: TextView(
text: AppStrings.filter,
style: 12.txtBoldWhite,
GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: () {
print("cdgsa");
ctrl.isSelected.value = !ctrl.isSelected.value;
// if (ctrl.isSelected.value == 0) {
// ctrl.toggleFilter();
// } else if (ctrl.isSelected.value == 1) {
// ctrl.toggleViewFreight();
// } else if (ctrl.isSelected.value == 2) {
// ctrl.togglePending();
// }
},
child: Row(
children: [
Image.asset(AppImages.filter,
height: 16, width: 16),
Padding(
padding: const EdgeInsets.all(8.0),
child: TextView(
text: AppStrings.filter,
style: 12.txtBoldWhite,
),
),
],
),
),
],
),
),
],
),
),
Obx(
() => ctrl.isSelected.value
? Container(
padding: EdgeInsets.all(8),
color: AppColors.clrF2,
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
children: [
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
TextView(text: "Plant", isRequired: true),
SizedBox(height: 8),
CustomDropdown(
backClr: AppColors.clrD9,
borderClr: AppColors.clrGrey,
items: ctrl.plant,
itemLabel: (item) =>
"${item.plantCode} - ${item.plantDesc}",
onSelected: (selected) {
if (selected != null) {
ctrl.selectPlantFreight.value =
selected.plantCode ?? "";
ctrl.showPlantErrorFreight.value =
false;
}
},
hintText: "Select Plant",
),
Obx(() =>
ctrl.showPlantErrorFreight.value
? Text(
'Required',
style: TextStyle(
color: Colors.red,
fontSize: 12),
)
: Text('')),
],
),
),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
TextView(text: "Freight Bill Date",isRequired: true,),
Container(
height: 35,
child: TextFormField(
key: ctrl.fromTextFieldKey,
controller: ctrl.fromController,
onTap: () async {
final pickedDate =
await showWebDatePicker(
width: 20.w,
context: ctrl
.fromTextFieldKey.currentContext!,
initialDate:
ctrl.fromSelectedDate,
firstDate: DateTime(2000),
lastDate: DateTime.now(),
);
if (pickedDate != null) {
ctrl.fromSelectedDate =
pickedDate;
String formattedDate = ctrl
.getFormattedDate(pickedDate);
ctrl.fromController.text =
formattedDate;
ctrl.dateCheck.value = true;
}
},
decoration: InputDecoration(
fillColor: AppColors.clrD9,
filled: true,
hintText: 'Select Freight Bill Date ',
hintStyle: TextStyle(
fontSize: 12,
overflow: TextOverflow.ellipsis),
border: OutlineInputBorder(
borderRadius:
BorderRadius.circular(2.0),
borderSide:
BorderSide(color: AppColors.black),
),
enabledBorder: OutlineInputBorder(
borderRadius:
BorderRadius.circular(2.0),
borderSide: BorderSide(
color: AppColors.clrGrey),
),
focusedBorder: OutlineInputBorder(
borderRadius:
BorderRadius.circular(2.0),
borderSide: BorderSide(
color: AppColors.clrGrey),
),
disabledBorder: OutlineInputBorder(
borderRadius:
BorderRadius.circular(2.0),
borderSide: BorderSide(
color: AppColors.clrGrey),
),
suffixIcon: ctrl.dateCheck.value
? InkWell(
onTap: () {
ctrl.dateCheck.value =
false;
ctrl.fromController
.clear();
ctrl.fromSelectedDate =
DateTime.now();
},
child: Icon(Icons.close,
size: 1.2.w),
)
: null,
contentPadding:
const EdgeInsets.symmetric(
horizontal: 12.0, vertical: 0.0),
),
),
),
],
),
),
SizedBox(width: 16),
Expanded(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
TextView(
text: "Freight Bill No.", isRequired: true),
SizedBox(height: 8),
CustomDropdown<String>(
backClr: AppColors.clrD9,
borderClr: AppColors.clrGrey,
items: ctrl.freightBill,
itemLabel: (item) => item,
onSelected: (selected) {
if (selected != null) {
ctrl.selectFreightBillValidate.value =
selected;
ctrl.showTransactionErrorViewFreight
.value = false;
}
},
hintText: "Select Freight Bill No.",
),
Obx(() => ctrl
.showTransactionErrorViewFreight.value
? Text(
'Required',
style: TextStyle(
color: Colors.red, fontSize: 12),
)
: Text('')),
],
),
),
],
),
// Padding(
// padding:
// const EdgeInsets.only(top: 16.0, left: 0, right: 8),
// child: Row(
// children: [
// Expanded(
// child: Column(
// mainAxisAlignment: MainAxisAlignment.start,
// crossAxisAlignment: CrossAxisAlignment.start,
// children: [
// _commonText(
// "Freight Bill Date",
// ),
// SizedBox(height: 8),
// InputField(
// title: "Select Bill Date",
// ),
// ],
// )),
// ],
// ),
// ),
// Expanded(
// //flex: 2,
// child: Column(
// children: [
// TextView(
// text: "",
// ),
// Padding(
// padding: const EdgeInsets.only(top: 8.0),
// child: Row(
// mainAxisAlignment: MainAxisAlignment.end,
// children: [
// CommonBtn(
// bkClr: Colors.white,
// text: AppStrings.cancel,
// clickAction: () {},
// ),
// SizedBox(width: 16),
// CommonBtn(
// text: AppStrings.submit,
// clickAction: () {},
// ),
// ],
// ),
// ),
// ],
// ))
],
),
)
: SizedBox(),
),
Obx(() {
switch (ctrl.selectedState.value) {
case 0:
return ViewInvoice();
return _tableView();
case 1:
return CancelledView();
case 2:
@ -119,4 +377,213 @@ class _TransportViewState extends State<InvoiceManagement> {
],
);
}
_tableView() {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 16),
child: Column(
children: [
Scrollbar(
thumbVisibility: true,
controller: verticalScrollController,
child: SingleChildScrollView(
controller: verticalScrollController,
child: Scrollbar(
thumbVisibility: true,
controller: horizontalScrollController,
child: SingleChildScrollView(
scrollDirection: Axis.horizontal,
controller: horizontalScrollController,
child: Container(
decoration: BoxDecoration(
border: Border.all(
color: Colors.grey.shade400,
width: 1.0,
),
),
child: DataTable(
dataRowHeight: 40,
headingRowHeight: 40,
headingRowColor: WidgetStateProperty.all(AppColors.clrF2),
border: TableBorder(
horizontalInside: BorderSide(color: AppColors.clrGrey),
verticalInside: BorderSide(color: AppColors.clrGrey),
bottom: BorderSide(color: AppColors.clrGrey),
left: BorderSide(color: AppColors.clrGrey),
right: BorderSide(color: AppColors.clrGrey),
top: BorderSide(color: AppColors.clrGrey),
),
columns: [
dataColumn(" SAP Reference No."),
//dataColumn(AppStrings.productName, onSort: (_, __) => ctrl.changeSort(AppStrings.productName.toLowerCase())),
dataColumn("Freight Bill No."),
//dataColumn(AppStrings.getInvoiceDate),
dataColumn("Freight Bill date"),
dataColumn("Plant Code/Plant Desc."),
dataColumn("Material Code/Material Desc."),
dataColumn("Freight Bill Amount"),
dataColumn("GST Amount"),
dataColumn("Status"),
dataColumn("CCN Amount"),
dataColumn("View CCN"),
dataColumn("View Invoice"),
dataColumn("Add Signature"),
],
rows: List<DataRow>.generate(ctrl.getInvoiceData.length,
(index) {
final getInvoice = ctrl.getInvoiceData[index];
return DataRow(
cells: [
editableCell(index, "${getInvoice.sapReferenceno}"),
editableCell(index, getInvoice.freightbillCode),
editableCell(
index,
DateFormat("dd MMMM yyyy").format(
DateTime.parse('${getInvoice.createdOn}'))),
editableCell(index, "${getInvoice.plantCode} - ${getInvoice.plantDesc}",),
editableCell(index, "${getInvoice.materialCode} - ${getInvoice.materialDescription}",),
editableCell(index, (getInvoice.shipmentCost.toString() ?? "-")),
editableCell(
index, "-"),
editableCell(index, getInvoice.status.toUpperCase()),
editableCell(index,"-"),
editableCell(index, "-"),
editableCell(index, "View Invoice",isLink: true),
DataCell(
Row(
mainAxisSize: MainAxisSize.min,
children: [
Container(
padding: EdgeInsets.all(4),
decoration: BoxDecoration(
border: Border.all(color: Colors.blue),
borderRadius: BorderRadius.circular(4),
),
child: InkWell(
onTap: () { },
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Icon(Icons.download,
size: 16, color: Colors.blue),
SizedBox(width: 4),
Text('Download',
style: TextStyle(
color: Colors.blue,
fontSize: 12)),
],
),
),
),
SizedBox(width: 8),
Container(
padding: EdgeInsets.all(4),
decoration: BoxDecoration(
border: Border.all(color: Colors.blue),
borderRadius: BorderRadius.circular(4),
),
child: InkWell(
onTap: () => handleFileUpload(index),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Icon(Icons.upload,
size: 16, color: Colors.blue),
SizedBox(width: 4),
Text('Upload',
style: TextStyle(
color: Colors.blue,
fontSize: 12)),
],
),
),
),
//###################### This Function is used to close or cut uploaded File in Local #######################
// if (uploadedFiles.containsKey(index))
// IconButton(
// icon: Icon(Icons.close, size: 16, color: Colors.red),
// onPressed: () {
// setState(() {
// uploadedFiles.remove(index);
// });
// },
// ),
//###########################################################################################################
],
),
),
],
);
}),
),
),
),
),
),
),
// CustomPagination(
// currentPage: controller.currentPage.value,
// totalPages: controller.totalPages.value,
// onPageChanged: (int page) {
// controller.onPageChanged(page);
// },
// ),
],
),
);
}
Future<void> handleFileUpload(int index) async {
try {
FilePickerResult? result = await FilePicker.platform.pickFiles(
type: FileType.custom,
allowedExtensions: ['pdf', 'doc', 'docx', 'xlsx', 'xls'],
allowMultiple: false,
);
if (result != null) {
PlatformFile file = result.files.first;
// Validate file size (optional)
if (file.size > 10 * 1024 * 1024) { // 10MB limit
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text('File size must be less than 10MB'),
backgroundColor: Colors.red,
),
);
return;
}
final appDir = await getApplicationDocumentsDirectory();
final String filePath = '${appDir.path}/${file.name}';
File(file.path!).copy(filePath);
setState(() {
//uploadedFiles[index] = file.name;
});
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text('File uploaded: ${file.name}'),
backgroundColor: Colors.green,
),
);
}
} catch (e) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text('Error uploading file: ${e.toString()}'),
backgroundColor: Colors.red,
),
);
}
}
_commonText(String title) {
return Text(
title,
style: TextStyle(
fontSize: 13, color: Colors.black, fontWeight: FontWeight.w900),
);
}
}

View File

@ -0,0 +1,253 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class DropdownDateRange extends StatefulWidget {
@override
_DropdownDateRangeState createState() => _DropdownDateRangeState();
}
class _DropdownDateRangeState extends State<DropdownDateRange> {
bool isCalendarVisible = false;
DateTime selectedStartDate = DateTime.now();
DateTime selectedEndDate = DateTime.now().add(Duration(days: 5));
DateTime displayedStartMonth = DateTime.now();
DateTime displayedEndMonth = DateTime.now().add(Duration(days: 60));
List<String> weekdays = ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];
List<String> months = [
'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December'
];
@override
Widget build(BuildContext context) {
return Material(
color: Colors.transparent,
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
// Clickable Container
GestureDetector(
onTap: () {
setState(() {
isCalendarVisible = !isCalendarVisible;
});
},
child: Container(
padding: EdgeInsets.symmetric(horizontal: 16, vertical: 12),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(4),
border: Border.all(color: Colors.grey.shade300),
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Text(
'${selectedStartDate.day} ${months[selectedStartDate.month - 1]} ${selectedStartDate.year} - '
'${selectedEndDate.day} ${months[selectedEndDate.month - 1]} ${selectedEndDate.year}',
style: TextStyle(fontSize: 14),
),
SizedBox(width: 8),
Icon(Icons.arrow_drop_down),
],
),
),
),
// Dropdown Calendar
if (isCalendarVisible)
Container(
margin: EdgeInsets.only(top: 8),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(8),
boxShadow: [
BoxShadow(
color: Colors.grey.withOpacity(0.2),
spreadRadius: 1,
blurRadius: 8,
offset: Offset(0, 4),
),
],
),
child: Column(
children: [
Padding(
padding: EdgeInsets.all(16),
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
_buildCalendar(displayedStartMonth, true),
SizedBox(width: 32),
_buildCalendar(displayedEndMonth, false),
],
),
),
],
),
),
],
),
);
}
Widget _buildCalendar(DateTime displayedMonth, bool isStartCalendar) {
return Container(
width: 280,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(8),
),
child: Column(
children: [
// Month Header
Padding(
padding: EdgeInsets.all(8),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
IconButton(
icon: Icon(Icons.chevron_left),
onPressed: () {
setState(() {
if (isStartCalendar) {
displayedStartMonth = DateTime(
displayedStartMonth.year,
displayedStartMonth.month - 1,
);
} else {
displayedEndMonth = DateTime(
displayedEndMonth.year,
displayedEndMonth.month - 1,
);
}
});
},
),
Text(
'${months[displayedMonth.month - 1]} (${displayedMonth.year})',
style: TextStyle(fontWeight: FontWeight.bold),
),
IconButton(
icon: Icon(Icons.chevron_right),
onPressed: () {
setState(() {
if (isStartCalendar) {
displayedStartMonth = DateTime(
displayedStartMonth.year,
displayedStartMonth.month + 1,
);
} else {
displayedEndMonth = DateTime(
displayedEndMonth.year,
displayedEndMonth.month + 1,
);
}
});
},
),
],
),
),
// Weekday Headers
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: weekdays.map((day) =>
Container(
width: 32,
alignment: Alignment.center,
child: Text(
day,
style: TextStyle(
fontSize: 12,
color: Colors.grey[600],
),
),
),
).toList(),
),
// Calendar Grid
Container(
padding: EdgeInsets.symmetric(vertical: 8),
child: Column(
children: _buildCalendarDays(displayedMonth),
),
),
],
),
);
}
List<Widget> _buildCalendarDays(DateTime displayedMonth) {
List<Widget> weeks = [];
DateTime firstDay = DateTime(displayedMonth.year, displayedMonth.month, 1);
int daysInMonth = DateTime(displayedMonth.year, displayedMonth.month + 1, 0).day;
int firstWeekdayOfMonth = firstDay.weekday;
int currentDay = 1 - firstWeekdayOfMonth + 1;
for (int week = 0; week < 6; week++) {
List<Widget> days = [];
for (int i = 0; i < 7; i++) {
if (currentDay <= 0 || currentDay > daysInMonth) {
days.add(Container(width: 32, height: 32));
} else {
final date = DateTime(displayedMonth.year, displayedMonth.month, currentDay);
final isSelected = date.isAfter(selectedStartDate.subtract(Duration(days: 1))) &&
date.isBefore(selectedEndDate.add(Duration(days: 1)));
final isToday = date.year == DateTime.now().year &&
date.month == DateTime.now().month &&
date.day == DateTime.now().day;
days.add(
GestureDetector(
onTap: () {
setState(() {
if (date.isBefore(selectedEndDate)) {
selectedStartDate = date;
} else {
selectedEndDate = date;
}
});
},
child: Container(
width: 32,
height: 32,
alignment: Alignment.center,
decoration: BoxDecoration(
color: isSelected ? Colors.blue : Colors.transparent,
borderRadius: BorderRadius.circular(16),
border: isToday ? Border.all(color: Colors.blue) : null,
),
child: Text(
currentDay.toString(),
style: TextStyle(
color: isSelected ? Colors.white : Colors.black,
fontWeight: isToday ? FontWeight.bold : FontWeight.normal,
),
),
),
),
);
}
currentDay++;
}
weeks.add(
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: days,
),
);
}
return weeks;
}
}

View File

@ -1,3 +1,4 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:shayog/components/styles/textStyles.dart';
import 'dart:math' as math;

View File

@ -17,7 +17,7 @@ class MyApp extends StatelessWidget {
return GetMaterialApp(
debugShowCheckedModeBanner: false,
title: 'Shayog',
initialRoute: PageRoutes.login,
initialRoute: PageRoutes.dashboard,
onGenerateRoute: Navigation.onGenerateRoutes,
// home: DashboardScreen(),
);

View File

@ -2,7 +2,6 @@ import 'dart:convert';
import 'package:flutter/cupertino.dart';
import 'package:get/get.dart';
import 'package:http/http.dart' as http;
import 'package:shayog/services/prefrences/prefrences.dart';
import 'package:shayog/utils/helpers.dart';
import '../../utils/alert_service.dart';
import '../model/common_res_model.dart';

View File

@ -2,6 +2,8 @@
//
//
//
// import 'package:shared_preferences/shared_preferences.dart';
//
// class Preferences {
//
@ -14,6 +16,13 @@
// static const prefKeyParent = 'pref_key_parent';
// static const userRoleKey = 'pref_key_user_role';
//
// // static late SharedPreferences _prefs;
//
// // static Future createInstance() async {
// // _prefs = await SharedPreferences.getInstance();
// // return;
// // }
// static late SharedPreferences _prefs;
//
// static Future createInstance() async {

View File

@ -1,4 +1,5 @@
import 'package:flutter/cupertino.dart';
import 'package:intl/intl.dart';
class Helpers {
Helpers._();
@ -21,6 +22,11 @@ class Helpers {
return code >= 200 && code < 300;
}
String trimDateUsingDateTime(String dateTimeString) {
DateTime dateTime = DateTime.parse(dateTimeString);
return "${dateTime.year}-${dateTime.month.toString().padLeft(2, '0')}-${dateTime.day.toString().padLeft(2, '0')}";
}
// static String getImgUrl(String? url) {
// debugPrint("url ======= = $url");
//

View File

@ -18,8 +18,10 @@ class Validations {
var enteredValue = value?.trim() ?? '';
if (enteredValue.isEmpty) {
return 'Required';
} else if (enteredValue.length != 10) {
} else if (enteredValue.length!= 10) {
return "Not a valid number";
}else if (enteredValue.contains(RegExp(r'[^0-9]'))) {
return "Only digits are allowed";
} else {
return null;
}

View File

@ -0,0 +1,11 @@
// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=C:\src\flutter\flutter
FLUTTER_APPLICATION_PATH=C:\Users\Admin\Downloads\shayog
COCOAPODS_PARALLEL_CODE_SIGN=true
FLUTTER_BUILD_DIR=build
FLUTTER_BUILD_NAME=1.0.0
FLUTTER_BUILD_NUMBER=1
DART_OBFUSCATION=false
TRACK_WIDGET_CREATION=true
TREE_SHAKE_ICONS=false
PACKAGE_CONFIG=.dart_tool/package_config.json

View File

@ -0,0 +1,12 @@
#!/bin/sh
# This is a generated file; do not edit or check into version control.
export "FLUTTER_ROOT=C:\src\flutter\flutter"
export "FLUTTER_APPLICATION_PATH=C:\Users\Admin\Downloads\shayog"
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
export "FLUTTER_BUILD_DIR=build"
export "FLUTTER_BUILD_NAME=1.0.0"
export "FLUTTER_BUILD_NUMBER=1"
export "DART_OBFUSCATION=false"
export "TRACK_WIDGET_CREATION=true"
export "TREE_SHAKE_ICONS=false"
export "PACKAGE_CONFIG=.dart_tool/package_config.json"

15
shayog.iml Normal file
View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/.pub" />
<excludeFolder url="file://$MODULE_DIR$/build" />
</content>
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Dart SDK" level="project" />
<orderEntry type="library" name="Dart Packages" level="project" />
<orderEntry type="library" name="Flutter Plugins" level="project" />
</component>
</module>