From 45850796dcc870af01134ad6abeb2c69bf18e7d3 Mon Sep 17 00:00:00 2001 From: Azmat-7860 Date: Sat, 12 Sep 2026 11:22:07 +0530 Subject: [PATCH] Adding base project of flutter-hybrid --- README.md | 16 + analysis_options.yaml | 28 + android/.gitignore | 13 + android/app/build.gradle | 67 + android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 33 + .../authsec_flutter_hybrid/MainActivity.kt | 6 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + android/app/src/main/res/values/styles.xml | 18 + android/app/src/profile/AndroidManifest.xml | 7 + android/authsec_flutter_hybrid_android.iml | 29 + android/build.gradle | 30 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle | 29 + assets/.DS_Store | Bin 0 -> 6148 bytes assets/fonts/HadWinIcons.ttf | Bin 0 -> 2396 bytes assets/fonts/OCRAStd.otf | Bin 0 -> 30636 bytes assets/icon/icon.png | Bin 0 -> 34912 bytes .../american-express-backside.png | Bin 0 -> 308485 bytes .../american-express-frontside.png | Bin 0 -> 468164 bytes .../card_flow_assets/default-backside.png | Bin 0 -> 327274 bytes .../card_flow_assets/default-frontside.png | Bin 0 -> 423389 bytes .../card_flow_assets/discover-backside.png | Bin 0 -> 234173 bytes .../card_flow_assets/discover-frontside.png | Bin 0 -> 279566 bytes .../card_flow_assets/maestro-backside.png | Bin 0 -> 270670 bytes .../card_flow_assets/maestro-frontside.png | Bin 0 -> 306022 bytes .../card_flow_assets/mastercard-backside.png | Bin 0 -> 235971 bytes .../card_flow_assets/mastercard-frontside.png | Bin 0 -> 383070 bytes .../images/card_flow_assets/visa-backside.png | Bin 0 -> 399871 bytes .../card_flow_assets/visa-frontside.png | Bin 0 -> 634144 bytes assets/images/checkmark.png | Bin 0 -> 29547 bytes assets/images/cloudnsuresp.svg | 190 ++ assets/images/download.jpeg | Bin 0 -> 6049 bytes assets/images/hadwin_system/cldnsure.png | Bin 0 -> 17774 bytes .../images/hadwin_system/cloudsure-logo.png | Bin 0 -> 2139 bytes .../hadwin_system/hadwin-adaptive-logo.png | Bin 0 -> 13063 bytes assets/images/hadwin_system/hadwin-banner.png | Bin 0 -> 71554 bytes .../images/hadwin_system/hadwin-logo-lite.png | Bin 0 -> 17373 bytes .../hadwin_system/hadwin-logo-with-name.png | Bin 0 -> 356160 bytes assets/images/hadwin_system/hadwin-logo.png | Bin 0 -> 945138 bytes assets/images/hadwin_system/hadwin-name.png | Bin 0 -> 21622 bytes .../hadwin-splash-screen-logo.png | Bin 0 -> 2320 bytes .../magicpattern-blob-1652765120695.png | Bin 0 -> 101368 bytes assets/images/image_not_found.png | Bin 0 -> 4250 bytes assets/images/img_1200pxdocxicon.png | Bin 0 -> 1877 bytes assets/images/img_1200pxpdffileicon.png | Bin 0 -> 3037 bytes assets/images/img_2560pxstripel.png | Bin 0 -> 15049 bytes assets/images/img_81_48x48.png | Bin 0 -> 19171 bytes assets/images/img_airplane_black_900.svg | 10 + assets/images/img_appstoreicon.png | Bin 0 -> 10226 bytes assets/images/img_arrowdown.svg | 3 + assets/images/img_arrowdown_blue_gray_200.svg | 3 + assets/images/img_arrowdown_blue_gray_400.svg | 3 + assets/images/img_arrowdown_blue_gray_600.svg | 3 + .../images/img_arrowgrowthsolid_red_700.svg | 3 + assets/images/img_arrowleft.svg | 3 + assets/images/img_arrowleft_blue_gray_900.svg | 3 + assets/images/img_arrowright.svg | 3 + assets/images/img_arrowright_blue_a700_1.svg | 3 + .../images/img_arrowright_blue_gray_400.svg | 3 + .../images/img_arrowright_blue_gray_600.svg | 3 + .../images/img_arrowright_blue_gray_600_1.svg | 3 + assets/images/img_arrowright_white_a700.svg | 3 + assets/images/img_arrowup_blue_gray_400.svg | 3 + assets/images/img_arrowup_green_600.svg | 3 + assets/images/img_bluetoothbsolid.svg | 3 + assets/images/img_brightness.svg | 11 + assets/images/img_calendar.svg | 4 + assets/images/img_calendar_24x24.svg | 3 + assets/images/img_calendar_blue_gray_400.svg | 3 + assets/images/img_call.svg | 3 + assets/images/img_car.svg | 6 + assets/images/img_chart.png | Bin 0 -> 53918 bytes assets/images/img_chartsmicro_blue_50_1.svg | 4 + .../images/img_chartsmicro_blue_50_45x150.svg | 4 + assets/images/img_check1.png | Bin 0 -> 12667 bytes assets/images/img_checkbox.svg | 3 + assets/images/img_checkmark.svg | 3 + assets/images/img_checkmark_16x16.svg | 3 + assets/images/img_checkmark_56x56.svg | 3 + assets/images/img_checkmark_green_600.svg | 3 + assets/images/img_clock.svg | 3 + assets/images/img_close.svg | 10 + assets/images/img_close_18x18.svg | 3 + assets/images/img_close_24x24.svg | 3 + assets/images/img_close_32x48.svg | 3 + assets/images/img_close_53x53.svg | 14 + assets/images/img_companylogo.png | Bin 0 -> 4383 bytes assets/images/img_contrast.svg | 3 + assets/images/img_dashboard.svg | 3 + assets/images/img_download.svg | 3 + assets/images/img_edit.svg | 4 + assets/images/img_ellipse12_24x24_1.png | Bin 0 -> 7322 bytes assets/images/img_ellipse12_24x24_2.png | Bin 0 -> 8079 bytes assets/images/img_ellipse13_24x25_1.png | Bin 0 -> 7389 bytes assets/images/img_ellipse13_24x25_2.png | Bin 0 -> 8928 bytes assets/images/img_ellipse15_24x24.png | Bin 0 -> 8188 bytes assets/images/img_ellipse27_18x18.png | Bin 0 -> 7590 bytes assets/images/img_ellipse28.png | Bin 0 -> 7647 bytes assets/images/img_ellipse3_60x60_1.png | Bin 0 -> 13825 bytes assets/images/img_ellipse3_60x60_2.png | Bin 0 -> 9676 bytes assets/images/img_ellipse54_18x18.png | Bin 0 -> 8102 bytes assets/images/img_ellipse5_150x150.png | Bin 0 -> 99387 bytes assets/images/img_ellipse66_24x24.png | Bin 0 -> 13963 bytes assets/images/img_eye.svg | 3 + assets/images/img_facebook.svg | 3 + assets/images/img_file.svg | 3 + assets/images/img_file_16x16.svg | 5 + assets/images/img_file_24x24.svg | 3 + assets/images/img_file_26x26.svg | 3 + assets/images/img_fingerprint.svg | 3 + assets/images/img_fire.svg | 10 + assets/images/img_flagargentina1.png | Bin 0 -> 2678 bytes assets/images/img_flagargentina1_1.png | Bin 0 -> 2514 bytes assets/images/img_flagargentina1_32x48.png | Bin 0 -> 2809 bytes assets/images/img_forward.svg | 3 + assets/images/img_frame9880.svg | 9 + assets/images/img_globe.svg | 96 + assets/images/img_globe_18x18.svg | 23 + assets/images/img_globe_white_a700.svg | 23 + assets/images/img_globe_white_a700_18x18.svg | 23 + assets/images/img_globe_yellow_800.svg | 96 + assets/images/img_globe_yellow_800_18x18.svg | 96 + assets/images/img_google.svg | 13 + assets/images/img_googleadsenselogo.png | Bin 0 -> 27426 bytes assets/images/img_grid.svg | 3 + assets/images/img_group10210.svg | 5 + assets/images/img_group10451.svg | 14 + assets/images/img_group10720.svg | 59 + assets/images/img_group10737.svg | 83 + assets/images/img_group10785.svg | 6 + assets/images/img_group1830.svg | 3 + assets/images/img_group185.svg | 8 + assets/images/img_group2507.svg | 8 + assets/images/img_group97.svg | 4 + assets/images/img_group9839.svg | 17 + assets/images/img_image122.png | Bin 0 -> 19049 bytes assets/images/img_image123.png | Bin 0 -> 37682 bytes assets/images/img_image124.png | Bin 0 -> 19806 bytes assets/images/img_image125.png | Bin 0 -> 35065 bytes assets/images/img_info.svg | 3 + assets/images/img_lightbulb.svg | 17 + assets/images/img_linkedin.svg | 4 + assets/images/img_linkedin_1_1.svg | 11 + assets/images/img_location.svg | 3 + assets/images/img_location_20x20.svg | 3 + assets/images/img_lock.svg | 27 + assets/images/img_lock_24x24.svg | 4 + assets/images/img_lock_53x53.svg | 4 + assets/images/img_mail.svg | 3 + assets/images/img_map.svg | 15 + assets/images/img_menu.svg | 3 + assets/images/img_menu_1.svg | 3 + assets/images/img_microphone.svg | 3 + assets/images/img_microphone_20x20.svg | 3 + assets/images/img_minimize.svg | 32 + assets/images/img_minussolid.svg | 3 + assets/images/img_mobile.svg | 7 + assets/images/img_moonoutline.svg | 3 + assets/images/img_music.svg | 3 + assets/images/img_notification.svg | 3 + assets/images/img_overflowmenu.svg | 5 + assets/images/img_overflowmenu_1.svg | 5 + assets/images/img_overflowmenu_16x16.svg | 5 + assets/images/img_overflowmenu_white_a700.svg | 10 + assets/images/img_pic.png | Bin 0 -> 24621 bytes assets/images/img_pic_1.png | Bin 0 -> 21573 bytes assets/images/img_pic_2.png | Bin 0 -> 29560 bytes assets/images/img_pic_3.png | Bin 0 -> 18676 bytes assets/images/img_pic_4.png | Bin 0 -> 28303 bytes assets/images/img_pic_44x44.png | Bin 0 -> 26710 bytes assets/images/img_pic_44x44_1.png | Bin 0 -> 24621 bytes assets/images/img_pic_44x44_2.png | Bin 0 -> 21573 bytes assets/images/img_pic_44x44_3.png | Bin 0 -> 28303 bytes assets/images/img_pic_50x50_1.png | Bin 0 -> 33331 bytes assets/images/img_pic_50x50_2.png | Bin 0 -> 36826 bytes assets/images/img_pic_50x50_3.png | Bin 0 -> 22676 bytes assets/images/img_play.svg | 3 + assets/images/img_plus_1.svg | 3 + assets/images/img_plus_40x40.svg | 3 + assets/images/img_plus_white_a700.svg | 3 + assets/images/img_profileimglarge_25.png | Bin 0 -> 41176 bytes assets/images/img_profileimglarge_40x40_1.png | Bin 0 -> 26188 bytes assets/images/img_profileimglarge_40x40_2.png | Bin 0 -> 15249 bytes assets/images/img_profileimglarge_40x40_3.png | Bin 0 -> 21499 bytes assets/images/img_profileimglarge_40x40_4.png | Bin 0 -> 28973 bytes assets/images/img_question.svg | 3 + assets/images/img_question_24x24.svg | 5 + assets/images/img_rectangle1.png | Bin 0 -> 6262 bytes assets/images/img_rectangle1314_190x396_2.png | Bin 0 -> 1451693 bytes assets/images/img_rectangle1_16x16.png | Bin 0 -> 5416 bytes assets/images/img_rectangle1_16x16_1.png | Bin 0 -> 5416 bytes assets/images/img_rectangle458_530x396.png | Bin 0 -> 1289065 bytes assets/images/img_rectangle458_706x396.png | Bin 0 -> 1727334 bytes assets/images/img_rectangle_102x102_1.png | Bin 0 -> 73843 bytes assets/images/img_rectangle_126x126_1.png | Bin 0 -> 95808 bytes assets/images/img_rectangle_126x126_2.png | Bin 0 -> 119953 bytes assets/images/img_rectangle_126x126_3.png | Bin 0 -> 44536 bytes assets/images/img_rectangle_126x126_4.png | Bin 0 -> 121834 bytes assets/images/img_rectangle_126x126_5.png | Bin 0 -> 78033 bytes assets/images/img_rectangle_126x126_6.png | Bin 0 -> 111867 bytes assets/images/img_rectangle_126x126_7.png | Bin 0 -> 63375 bytes assets/images/img_rectangle_126x126_8.png | Bin 0 -> 194444 bytes assets/images/img_refresh.svg | 3 + assets/images/img_refresh_24x24.svg | 3 + assets/images/img_rupaylogo1.png | Bin 0 -> 10955 bytes assets/images/img_rupaylogo1_18x56.png | Bin 0 -> 6260 bytes assets/images/img_search.svg | 3 + assets/images/img_search_blue_a100.svg | 3 + assets/images/img_search_blue_a700.svg | 17 + assets/images/img_search_blue_gray_200.svg | 3 + assets/images/img_search_blue_gray_400.svg | 3 + assets/images/img_search_blue_gray_900.svg | 3 + assets/images/img_search_white_a700.svg | 10 + assets/images/img_search_white_a700_20x20.svg | 10 + assets/images/img_settings.svg | 3 + assets/images/img_settings_1.svg | 6 + assets/images/img_settings_24x24.svg | 3 + assets/images/img_share_24x24.svg | 3 + assets/images/img_signal.svg | 3 + assets/images/img_signal_10x56.svg | 3 + assets/images/img_signal_gray_500.svg | 5 + .../images/img_smartwatchwhitesportband.svg | 19 + assets/images/img_sort.svg | 3 + assets/images/img_sportscricket.svg | 12 + assets/images/img_star.svg | 3 + assets/images/img_ticket.svg | 3 + assets/images/img_ticket_20x20.svg | 3 + assets/images/img_trash.svg | 3 + assets/images/img_twitter.svg | 3 + assets/images/img_twitter_20x20.svg | 3 + assets/images/img_uiiconmoonlight.svg | 3 + .../images/img_unsplashenrurz62wui_50x50.png | Bin 0 -> 29039 bytes assets/images/img_upload.svg | 3 + assets/images/img_user.svg | 3 + assets/images/img_user_24x24.svg | 6 + assets/images/img_vector.svg | 3 + assets/images/img_vector3_gray_900_01.svg | 3 + assets/images/img_vector_blue_a700_13x141.svg | 3 + assets/images/img_vector_blue_a700_34x360.svg | 3 + assets/images/img_vector_red_600.svg | 3 + assets/images/img_volume.svg | 3 + .../images/img_vscodeiconsfiletypeexcel.svg | 20 + assets/images/img_whatsapp.svg | 3 + assets/images/img_wordpresslogo1.png | Bin 0 -> 14243 bytes assets/images/img_x32location_red_700.svg | 3 + .../images/notification_assets/file-error.png | Bin 0 -> 18910 bytes assets/images/notification_assets/no-wifi.png | Bin 0 -> 12602 bytes ...online-shopping-yuliia-osadcha-bg-less.png | Bin 0 -> 1220564 bytes .../wfh-mohamed-chahin-bg-less.png | Bin 0 -> 1051402 bytes assets/images/piggy-bank.png | Bin 0 -> 27867 bytes .../american-express.png | Bin 0 -> 30132 bytes .../transparent_card_brands/diners-club.png | Bin 0 -> 50785 bytes .../transparent_card_brands/discover.png | Bin 0 -> 35783 bytes assets/images/transparent_card_brands/jcb.png | Bin 0 -> 25246 bytes .../transparent_card_brands/maestro.png | Bin 0 -> 35199 bytes .../transparent_card_brands/mastercard.png | Bin 0 -> 64686 bytes .../images/transparent_card_brands/rupay.png | Bin 0 -> 36626 bytes .../images/transparent_card_brands/solo.png | Bin 0 -> 24950 bytes .../images/transparent_card_brands/switch.png | Bin 0 -> 31839 bytes .../transparent_card_brands/union-pay.png | Bin 0 -> 51351 bytes .../images/transparent_card_brands/visa.png | Bin 0 -> 36677 bytes authsec_flutter_hybrid.iml | 17 + ios/.gitignore | 34 + ios/Flutter/AppFrameworkInfo.plist | 26 + ios/Flutter/Debug.xcconfig | 1 + ios/Flutter/Release.xcconfig | 1 + ios/Runner.xcodeproj/project.pbxproj | 614 ++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 + .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + ios/Runner/Base.lproj/LaunchScreen.storyboard | 37 + ios/Runner/Base.lproj/Main.storyboard | 26 + ios/Runner/Info.plist | 49 + ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + lib/.DS_Store | Bin 0 -> 10244 bytes lib/Entity/.DS_Store | Bin 0 -> 6148 bytes lib/Entity/test.dart | 1 + lib/LocalStorage/DatabaseHelper.dart | 128 ++ lib/LocalStorage/TableQuery.dart | 104 + lib/LocalStorage/UniController.dart | 96 + lib/LocalStorage/localSyncronize.dart | 168 ++ lib/Utils/color_constants.dart | 167 ++ lib/Utils/image_constant.dart | 465 +++++ lib/Utils/size_utils.dart | 120 ++ lib/dashboard_builder_authsec/.DS_Store | Bin 0 -> 6148 bytes .../Dashboard/Dashboard_api_service.dart | 50 + .../Dashboard_create_entity_screen.dart | 119 ++ .../Dashboard_entity_list_screen.dart | 303 +++ .../Dashboard_update_entity_screen.dart | 146 ++ lib/database/login_info_storage.dart | 61 + lib/database/user_data_storage.dart | 54 + lib/hadwin_components.dart | 31 + lib/logout/logoutbutton.dart | 48 + lib/main.dart | 223 ++ lib/providers/tab_navigation_provider.dart | 22 + lib/providers/token_manager.dart | 17 + lib/resources/api_constants.dart | 3 + lib/screens/.DS_Store | Bin 0 -> 10244 bytes .../Bookmarks/Bookmarks_api_service.dart | 106 + .../Bookmarks_create_entity_screen.dart | 111 + .../Bookmarks_entity_list_screen.dart | 562 +++++ .../Bookmarks_update_entity_screen.dart | 140 ++ lib/screens/Incident_Ticket/.DS_Store | Bin 0 -> 6148 bytes .../Incident_Ticket/ticket_create.dart | 293 +++ .../LayoutReportBuilder.dart | 975 +++++++++ lib/screens/Login Screen/.DS_Store | Bin 0 -> 6148 bytes lib/screens/Login Screen/form_component.dart | 342 +++ lib/screens/Login Screen/login_screen.dart | 586 ++++++ lib/screens/LogoutService/Logoutservice.dart | 21 + .../Barcode/Barcode_create_entity_screen.dart | 75 + .../Qr_BarCode_create_entity_screen.dart | 170 ++ .../Qrcode/Qrcode_create_entity_screen.dart | 75 + lib/screens/Setup/setup.dart | 127 ++ lib/screens/SysParameters/.DS_Store | Bin 0 -> 6148 bytes .../SystemParameterApiService.dart | 77 + .../SysParameters/SystemParameterScreen.dart | 533 +++++ .../dynamic_form/UpdatedynamicForm.dart | 279 +++ .../dynamic_form/create_dynamicform.dart | 333 +++ .../dynamic_form/dynamic_form_service.dart | 100 + .../list_dynamic_form_screen.dart | 224 ++ .../forgot_password/forgotPasswordScreen.dart | 130 ++ .../main_app_screen/CustomizeFooter.dart | 54 + .../main_app_screen/list_group_524.dart | 339 +++ lib/screens/main_app_screen/list_group__.dart | 54 + .../local_splash_screen_component.dart | 21 + .../main_app_screen/newlanding_page.dart | 1018 +++++++++ .../main_app_screen/notification_item.dart | 88 + .../tabbed_layout_component.dart | 993 +++++++++ .../profileManagement/Profilesettings.dart | 524 +++++ lib/screens/profileManagement/about.dart | 46 + .../apiserviceprofilemanagement.dart | 57 + .../profileManagement/changepassword.dart | 318 +++ .../settings_screen/credits_loading.dart | 102 + lib/screens/sign_up_screen/.DS_Store | Bin 0 -> 6148 bytes lib/screens/sign_up_screen/CreateAccount.dart | 263 +++ lib/screens/sign_up_screen/CreateUser.dart | 328 +++ .../sign_up_screen/RegistrationDetails.dart | 359 ++++ lib/screens/sign_up_screen/SignUpService.dart | 113 + lib/screens/sign_up_screen/SignUpUser.dart | 295 +++ .../StepGetEmailVerification.dart | 138 ++ .../sign_up_screen/StepGetRegistration.dart | 393 ++++ .../sign_up_screen/sign_up_screen.dart | 60 + .../sign_up_screen/sign_up_step_1.dart | 398 ++++ lib/screens/sign_up_screen/sign_up_steps.dart | 545 +++++ .../sign_up_screen/step_createAccount.dart | 555 +++++ lib/screens/splash_screen/splash_screen.dart | 84 + lib/theme/app_decoration.dart | 480 +++++ lib/theme/app_style.dart | 1014 +++++++++ lib/utilities/custom_date_grouping.dart | 240 +++ lib/utilities/display_error_alert.dart | 150 ++ lib/utilities/hadwin_icons.dart | 27 + lib/utilities/hadwin_markdown_viewer.dart | 191 ++ lib/utilities/make_api_request.dart | 54 + lib/utilities/slide_right_route.dart | 29 + lib/utilities/url_external_launcher.dart | 12 + lib/widgets/app_bar/appbar_image.dart | 46 + lib/widgets/app_bar/appbar_title.dart | 36 + lib/widgets/app_bar/custom_app_bar.dart | 56 + lib/widgets/custom_bottom_bar.dart | 132 ++ lib/widgets/custom_button.dart | 352 ++++ lib/widgets/custom_checkbox.dart | 148 ++ lib/widgets/custom_drop_down.dart | 199 ++ lib/widgets/custom_dropdown_field.dart | 162 ++ lib/widgets/custom_floating_button.dart | 92 + lib/widgets/custom_icon_button.dart | 260 +++ lib/widgets/custom_image_view.dart | 154 ++ lib/widgets/custom_radio_button.dart | 260 +++ lib/widgets/custom_search_view.dart | 203 ++ lib/widgets/custom_switch.dart | 49 + lib/widgets/custom_text_form_field.dart | 220 ++ linux/.gitignore | 1 + linux/CMakeLists.txt | 145 ++ linux/flutter/CMakeLists.txt | 88 + linux/flutter/generated_plugin_registrant.cc | 27 + linux/flutter/generated_plugin_registrant.h | 15 + linux/flutter/generated_plugins.cmake | 27 + linux/main.cc | 6 + linux/my_application.cc | 104 + linux/my_application.h | 18 + macos/.gitignore | 7 + macos/Flutter/Flutter-Debug.xcconfig | 1 + macos/Flutter/Flutter-Release.xcconfig | 1 + macos/Flutter/GeneratedPluginRegistrant.swift | 34 + macos/Runner.xcodeproj/project.pbxproj | 695 +++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 + .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + macos/Runner/AppDelegate.swift | 9 + .../AppIcon.appiconset/Contents.json | 68 + .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 102994 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 5680 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 520 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 14142 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 1066 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 36406 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 2218 bytes macos/Runner/Base.lproj/MainMenu.xib | 343 +++ macos/Runner/Configs/AppInfo.xcconfig | 14 + macos/Runner/Configs/Debug.xcconfig | 2 + macos/Runner/Configs/Release.xcconfig | 2 + macos/Runner/Configs/Warnings.xcconfig | 13 + macos/Runner/DebugProfile.entitlements | 12 + macos/Runner/Info.plist | 32 + macos/Runner/MainFlutterWindow.swift | 15 + macos/Runner/Release.entitlements | 8 + macos/RunnerTests/RunnerTests.swift | 12 + pubspec.lock | 1834 +++++++++++++++++ pubspec.yaml | 159 ++ test/widget_test.dart | 30 + web/favicon.png | Bin 0 -> 917 bytes web/icons/Icon-192.png | Bin 0 -> 5292 bytes web/icons/Icon-512.png | Bin 0 -> 8252 bytes web/icons/Icon-maskable-192.png | Bin 0 -> 5594 bytes web/icons/Icon-maskable-512.png | Bin 0 -> 20998 bytes web/index.html | 59 + web/manifest.json | 35 + windows/.gitignore | 17 + windows/CMakeLists.txt | 108 + windows/flutter/CMakeLists.txt | 109 + .../flutter/generated_plugin_registrant.cc | 29 + windows/flutter/generated_plugin_registrant.h | 15 + windows/flutter/generated_plugins.cmake | 29 + windows/runner/CMakeLists.txt | 40 + windows/runner/Runner.rc | 121 ++ windows/runner/flutter_window.cpp | 71 + windows/runner/flutter_window.h | 33 + windows/runner/main.cpp | 43 + windows/runner/resource.h | 16 + windows/runner/resources/app_icon.ico | Bin 0 -> 33772 bytes windows/runner/runner.exe.manifest | 20 + windows/runner/utils.cpp | 65 + windows/runner/utils.h | 19 + windows/runner/win32_window.cpp | 288 +++ windows/runner/win32_window.h | 102 + 471 files changed, 27188 insertions(+) create mode 100644 README.md create mode 100644 analysis_options.yaml create mode 100644 android/.gitignore create mode 100644 android/app/build.gradle create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/authsec_flutter_hybrid/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 android/app/src/main/res/drawable/launch_background.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/values-night/styles.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/authsec_flutter_hybrid_android.iml create mode 100644 android/build.gradle create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle create mode 100644 assets/.DS_Store create mode 100644 assets/fonts/HadWinIcons.ttf create mode 100644 assets/fonts/OCRAStd.otf create mode 100644 assets/icon/icon.png create mode 100644 assets/images/card_flow_assets/american-express-backside.png create mode 100644 assets/images/card_flow_assets/american-express-frontside.png create mode 100644 assets/images/card_flow_assets/default-backside.png create mode 100644 assets/images/card_flow_assets/default-frontside.png create mode 100644 assets/images/card_flow_assets/discover-backside.png create mode 100644 assets/images/card_flow_assets/discover-frontside.png create mode 100644 assets/images/card_flow_assets/maestro-backside.png create mode 100644 assets/images/card_flow_assets/maestro-frontside.png create mode 100644 assets/images/card_flow_assets/mastercard-backside.png create mode 100644 assets/images/card_flow_assets/mastercard-frontside.png create mode 100644 assets/images/card_flow_assets/visa-backside.png create mode 100644 assets/images/card_flow_assets/visa-frontside.png create mode 100644 assets/images/checkmark.png create mode 100644 assets/images/cloudnsuresp.svg create mode 100644 assets/images/download.jpeg create mode 100644 assets/images/hadwin_system/cldnsure.png create mode 100644 assets/images/hadwin_system/cloudsure-logo.png create mode 100644 assets/images/hadwin_system/hadwin-adaptive-logo.png create mode 100644 assets/images/hadwin_system/hadwin-banner.png create mode 100644 assets/images/hadwin_system/hadwin-logo-lite.png create mode 100644 assets/images/hadwin_system/hadwin-logo-with-name.png create mode 100644 assets/images/hadwin_system/hadwin-logo.png create mode 100644 assets/images/hadwin_system/hadwin-name.png create mode 100644 assets/images/hadwin_system/hadwin-splash-screen-logo.png create mode 100644 assets/images/hadwin_system/magicpattern-blob-1652765120695.png create mode 100644 assets/images/image_not_found.png create mode 100644 assets/images/img_1200pxdocxicon.png create mode 100644 assets/images/img_1200pxpdffileicon.png create mode 100644 assets/images/img_2560pxstripel.png create mode 100644 assets/images/img_81_48x48.png create mode 100644 assets/images/img_airplane_black_900.svg create mode 100644 assets/images/img_appstoreicon.png create mode 100644 assets/images/img_arrowdown.svg create mode 100644 assets/images/img_arrowdown_blue_gray_200.svg create mode 100644 assets/images/img_arrowdown_blue_gray_400.svg create mode 100644 assets/images/img_arrowdown_blue_gray_600.svg create mode 100644 assets/images/img_arrowgrowthsolid_red_700.svg create mode 100644 assets/images/img_arrowleft.svg create mode 100644 assets/images/img_arrowleft_blue_gray_900.svg create mode 100644 assets/images/img_arrowright.svg create mode 100644 assets/images/img_arrowright_blue_a700_1.svg create mode 100644 assets/images/img_arrowright_blue_gray_400.svg create mode 100644 assets/images/img_arrowright_blue_gray_600.svg create mode 100644 assets/images/img_arrowright_blue_gray_600_1.svg create mode 100644 assets/images/img_arrowright_white_a700.svg create mode 100644 assets/images/img_arrowup_blue_gray_400.svg create mode 100644 assets/images/img_arrowup_green_600.svg create mode 100644 assets/images/img_bluetoothbsolid.svg create mode 100644 assets/images/img_brightness.svg create mode 100644 assets/images/img_calendar.svg create mode 100644 assets/images/img_calendar_24x24.svg create mode 100644 assets/images/img_calendar_blue_gray_400.svg create mode 100644 assets/images/img_call.svg create mode 100644 assets/images/img_car.svg create mode 100644 assets/images/img_chart.png create mode 100644 assets/images/img_chartsmicro_blue_50_1.svg create mode 100644 assets/images/img_chartsmicro_blue_50_45x150.svg create mode 100644 assets/images/img_check1.png create mode 100644 assets/images/img_checkbox.svg create mode 100644 assets/images/img_checkmark.svg create mode 100644 assets/images/img_checkmark_16x16.svg create mode 100644 assets/images/img_checkmark_56x56.svg create mode 100644 assets/images/img_checkmark_green_600.svg create mode 100644 assets/images/img_clock.svg create mode 100644 assets/images/img_close.svg create mode 100644 assets/images/img_close_18x18.svg create mode 100644 assets/images/img_close_24x24.svg create mode 100644 assets/images/img_close_32x48.svg create mode 100644 assets/images/img_close_53x53.svg create mode 100644 assets/images/img_companylogo.png create mode 100644 assets/images/img_contrast.svg create mode 100644 assets/images/img_dashboard.svg create mode 100644 assets/images/img_download.svg create mode 100644 assets/images/img_edit.svg create mode 100644 assets/images/img_ellipse12_24x24_1.png create mode 100644 assets/images/img_ellipse12_24x24_2.png create mode 100644 assets/images/img_ellipse13_24x25_1.png create mode 100644 assets/images/img_ellipse13_24x25_2.png create mode 100644 assets/images/img_ellipse15_24x24.png create mode 100644 assets/images/img_ellipse27_18x18.png create mode 100644 assets/images/img_ellipse28.png create mode 100644 assets/images/img_ellipse3_60x60_1.png create mode 100644 assets/images/img_ellipse3_60x60_2.png create mode 100644 assets/images/img_ellipse54_18x18.png create mode 100644 assets/images/img_ellipse5_150x150.png create mode 100644 assets/images/img_ellipse66_24x24.png create mode 100644 assets/images/img_eye.svg create mode 100644 assets/images/img_facebook.svg create mode 100644 assets/images/img_file.svg create mode 100644 assets/images/img_file_16x16.svg create mode 100644 assets/images/img_file_24x24.svg create mode 100644 assets/images/img_file_26x26.svg create mode 100644 assets/images/img_fingerprint.svg create mode 100644 assets/images/img_fire.svg create mode 100644 assets/images/img_flagargentina1.png create mode 100644 assets/images/img_flagargentina1_1.png create mode 100644 assets/images/img_flagargentina1_32x48.png create mode 100644 assets/images/img_forward.svg create mode 100644 assets/images/img_frame9880.svg create mode 100644 assets/images/img_globe.svg create mode 100644 assets/images/img_globe_18x18.svg create mode 100644 assets/images/img_globe_white_a700.svg create mode 100644 assets/images/img_globe_white_a700_18x18.svg create mode 100644 assets/images/img_globe_yellow_800.svg create mode 100644 assets/images/img_globe_yellow_800_18x18.svg create mode 100644 assets/images/img_google.svg create mode 100644 assets/images/img_googleadsenselogo.png create mode 100644 assets/images/img_grid.svg create mode 100644 assets/images/img_group10210.svg create mode 100644 assets/images/img_group10451.svg create mode 100644 assets/images/img_group10720.svg create mode 100644 assets/images/img_group10737.svg create mode 100644 assets/images/img_group10785.svg create mode 100644 assets/images/img_group1830.svg create mode 100644 assets/images/img_group185.svg create mode 100644 assets/images/img_group2507.svg create mode 100644 assets/images/img_group97.svg create mode 100644 assets/images/img_group9839.svg create mode 100644 assets/images/img_image122.png create mode 100644 assets/images/img_image123.png create mode 100644 assets/images/img_image124.png create mode 100644 assets/images/img_image125.png create mode 100644 assets/images/img_info.svg create mode 100644 assets/images/img_lightbulb.svg create mode 100644 assets/images/img_linkedin.svg create mode 100644 assets/images/img_linkedin_1_1.svg create mode 100644 assets/images/img_location.svg create mode 100644 assets/images/img_location_20x20.svg create mode 100644 assets/images/img_lock.svg create mode 100644 assets/images/img_lock_24x24.svg create mode 100644 assets/images/img_lock_53x53.svg create mode 100644 assets/images/img_mail.svg create mode 100644 assets/images/img_map.svg create mode 100644 assets/images/img_menu.svg create mode 100644 assets/images/img_menu_1.svg create mode 100644 assets/images/img_microphone.svg create mode 100644 assets/images/img_microphone_20x20.svg create mode 100644 assets/images/img_minimize.svg create mode 100644 assets/images/img_minussolid.svg create mode 100644 assets/images/img_mobile.svg create mode 100644 assets/images/img_moonoutline.svg create mode 100644 assets/images/img_music.svg create mode 100644 assets/images/img_notification.svg create mode 100644 assets/images/img_overflowmenu.svg create mode 100644 assets/images/img_overflowmenu_1.svg create mode 100644 assets/images/img_overflowmenu_16x16.svg create mode 100644 assets/images/img_overflowmenu_white_a700.svg create mode 100644 assets/images/img_pic.png create mode 100644 assets/images/img_pic_1.png create mode 100644 assets/images/img_pic_2.png create mode 100644 assets/images/img_pic_3.png create mode 100644 assets/images/img_pic_4.png create mode 100644 assets/images/img_pic_44x44.png create mode 100644 assets/images/img_pic_44x44_1.png create mode 100644 assets/images/img_pic_44x44_2.png create mode 100644 assets/images/img_pic_44x44_3.png create mode 100644 assets/images/img_pic_50x50_1.png create mode 100644 assets/images/img_pic_50x50_2.png create mode 100644 assets/images/img_pic_50x50_3.png create mode 100644 assets/images/img_play.svg create mode 100644 assets/images/img_plus_1.svg create mode 100644 assets/images/img_plus_40x40.svg create mode 100644 assets/images/img_plus_white_a700.svg create mode 100644 assets/images/img_profileimglarge_25.png create mode 100644 assets/images/img_profileimglarge_40x40_1.png create mode 100644 assets/images/img_profileimglarge_40x40_2.png create mode 100644 assets/images/img_profileimglarge_40x40_3.png create mode 100644 assets/images/img_profileimglarge_40x40_4.png create mode 100644 assets/images/img_question.svg create mode 100644 assets/images/img_question_24x24.svg create mode 100644 assets/images/img_rectangle1.png create mode 100644 assets/images/img_rectangle1314_190x396_2.png create mode 100644 assets/images/img_rectangle1_16x16.png create mode 100644 assets/images/img_rectangle1_16x16_1.png create mode 100644 assets/images/img_rectangle458_530x396.png create mode 100644 assets/images/img_rectangle458_706x396.png create mode 100644 assets/images/img_rectangle_102x102_1.png create mode 100644 assets/images/img_rectangle_126x126_1.png create mode 100644 assets/images/img_rectangle_126x126_2.png create mode 100644 assets/images/img_rectangle_126x126_3.png create mode 100644 assets/images/img_rectangle_126x126_4.png create mode 100644 assets/images/img_rectangle_126x126_5.png create mode 100644 assets/images/img_rectangle_126x126_6.png create mode 100644 assets/images/img_rectangle_126x126_7.png create mode 100644 assets/images/img_rectangle_126x126_8.png create mode 100644 assets/images/img_refresh.svg create mode 100644 assets/images/img_refresh_24x24.svg create mode 100644 assets/images/img_rupaylogo1.png create mode 100644 assets/images/img_rupaylogo1_18x56.png create mode 100644 assets/images/img_search.svg create mode 100644 assets/images/img_search_blue_a100.svg create mode 100644 assets/images/img_search_blue_a700.svg create mode 100644 assets/images/img_search_blue_gray_200.svg create mode 100644 assets/images/img_search_blue_gray_400.svg create mode 100644 assets/images/img_search_blue_gray_900.svg create mode 100644 assets/images/img_search_white_a700.svg create mode 100644 assets/images/img_search_white_a700_20x20.svg create mode 100644 assets/images/img_settings.svg create mode 100644 assets/images/img_settings_1.svg create mode 100644 assets/images/img_settings_24x24.svg create mode 100644 assets/images/img_share_24x24.svg create mode 100644 assets/images/img_signal.svg create mode 100644 assets/images/img_signal_10x56.svg create mode 100644 assets/images/img_signal_gray_500.svg create mode 100644 assets/images/img_smartwatchwhitesportband.svg create mode 100644 assets/images/img_sort.svg create mode 100644 assets/images/img_sportscricket.svg create mode 100644 assets/images/img_star.svg create mode 100644 assets/images/img_ticket.svg create mode 100644 assets/images/img_ticket_20x20.svg create mode 100644 assets/images/img_trash.svg create mode 100644 assets/images/img_twitter.svg create mode 100644 assets/images/img_twitter_20x20.svg create mode 100644 assets/images/img_uiiconmoonlight.svg create mode 100644 assets/images/img_unsplashenrurz62wui_50x50.png create mode 100644 assets/images/img_upload.svg create mode 100644 assets/images/img_user.svg create mode 100644 assets/images/img_user_24x24.svg create mode 100644 assets/images/img_vector.svg create mode 100644 assets/images/img_vector3_gray_900_01.svg create mode 100644 assets/images/img_vector_blue_a700_13x141.svg create mode 100644 assets/images/img_vector_blue_a700_34x360.svg create mode 100644 assets/images/img_vector_red_600.svg create mode 100644 assets/images/img_volume.svg create mode 100644 assets/images/img_vscodeiconsfiletypeexcel.svg create mode 100644 assets/images/img_whatsapp.svg create mode 100644 assets/images/img_wordpresslogo1.png create mode 100644 assets/images/img_x32location_red_700.svg create mode 100644 assets/images/notification_assets/file-error.png create mode 100644 assets/images/notification_assets/no-wifi.png create mode 100644 assets/images/onboarding_assets/online-shopping-yuliia-osadcha-bg-less.png create mode 100644 assets/images/onboarding_assets/wfh-mohamed-chahin-bg-less.png create mode 100644 assets/images/piggy-bank.png create mode 100644 assets/images/transparent_card_brands/american-express.png create mode 100644 assets/images/transparent_card_brands/diners-club.png create mode 100644 assets/images/transparent_card_brands/discover.png create mode 100644 assets/images/transparent_card_brands/jcb.png create mode 100644 assets/images/transparent_card_brands/maestro.png create mode 100644 assets/images/transparent_card_brands/mastercard.png create mode 100644 assets/images/transparent_card_brands/rupay.png create mode 100644 assets/images/transparent_card_brands/solo.png create mode 100644 assets/images/transparent_card_brands/switch.png create mode 100644 assets/images/transparent_card_brands/union-pay.png create mode 100644 assets/images/transparent_card_brands/visa.png create mode 100644 authsec_flutter_hybrid.iml create mode 100644 ios/.gitignore create mode 100644 ios/Flutter/AppFrameworkInfo.plist create mode 100644 ios/Flutter/Debug.xcconfig create mode 100644 ios/Flutter/Release.xcconfig create mode 100644 ios/Runner.xcodeproj/project.pbxproj create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner/AppDelegate.swift create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 ios/Runner/Base.lproj/Main.storyboard create mode 100644 ios/Runner/Info.plist create mode 100644 ios/Runner/Runner-Bridging-Header.h create mode 100644 ios/RunnerTests/RunnerTests.swift create mode 100644 lib/.DS_Store create mode 100644 lib/Entity/.DS_Store create mode 100644 lib/Entity/test.dart create mode 100644 lib/LocalStorage/DatabaseHelper.dart create mode 100644 lib/LocalStorage/TableQuery.dart create mode 100644 lib/LocalStorage/UniController.dart create mode 100644 lib/LocalStorage/localSyncronize.dart create mode 100644 lib/Utils/color_constants.dart create mode 100644 lib/Utils/image_constant.dart create mode 100644 lib/Utils/size_utils.dart create mode 100644 lib/dashboard_builder_authsec/.DS_Store create mode 100644 lib/dashboard_builder_authsec/Dashboard/Dashboard_api_service.dart create mode 100644 lib/dashboard_builder_authsec/Dashboard/Dashboard_create_entity_screen.dart create mode 100644 lib/dashboard_builder_authsec/Dashboard/Dashboard_entity_list_screen.dart create mode 100644 lib/dashboard_builder_authsec/Dashboard/Dashboard_update_entity_screen.dart create mode 100644 lib/database/login_info_storage.dart create mode 100644 lib/database/user_data_storage.dart create mode 100644 lib/hadwin_components.dart create mode 100644 lib/logout/logoutbutton.dart create mode 100644 lib/main.dart create mode 100644 lib/providers/tab_navigation_provider.dart create mode 100644 lib/providers/token_manager.dart create mode 100644 lib/resources/api_constants.dart create mode 100644 lib/screens/.DS_Store create mode 100644 lib/screens/Bookmarks/Bookmarks_api_service.dart create mode 100644 lib/screens/Bookmarks/Bookmarks_create_entity_screen.dart create mode 100644 lib/screens/Bookmarks/Bookmarks_entity_list_screen.dart create mode 100644 lib/screens/Bookmarks/Bookmarks_update_entity_screen.dart create mode 100644 lib/screens/Incident_Ticket/.DS_Store create mode 100644 lib/screens/Incident_Ticket/ticket_create.dart create mode 100644 lib/screens/LayoutReportBuilder/LayoutReportBuilder.dart create mode 100644 lib/screens/Login Screen/.DS_Store create mode 100644 lib/screens/Login Screen/form_component.dart create mode 100644 lib/screens/Login Screen/login_screen.dart create mode 100644 lib/screens/LogoutService/Logoutservice.dart create mode 100644 lib/screens/QrBarCode/Barcode/Barcode_create_entity_screen.dart create mode 100644 lib/screens/QrBarCode/Qr_BarCode/Qr_BarCode_create_entity_screen.dart create mode 100644 lib/screens/QrBarCode/Qrcode/Qrcode_create_entity_screen.dart create mode 100644 lib/screens/Setup/setup.dart create mode 100644 lib/screens/SysParameters/.DS_Store create mode 100644 lib/screens/SysParameters/SystemParameterApiService.dart create mode 100644 lib/screens/SysParameters/SystemParameterScreen.dart create mode 100644 lib/screens/dynamic_form/UpdatedynamicForm.dart create mode 100644 lib/screens/dynamic_form/create_dynamicform.dart create mode 100644 lib/screens/dynamic_form/dynamic_form_service.dart create mode 100644 lib/screens/dynamic_form/list_dynamic_form_screen.dart create mode 100644 lib/screens/forgot_password/forgotPasswordScreen.dart create mode 100644 lib/screens/main_app_screen/CustomizeFooter.dart create mode 100644 lib/screens/main_app_screen/list_group_524.dart create mode 100644 lib/screens/main_app_screen/list_group__.dart create mode 100644 lib/screens/main_app_screen/local_splash_screen_component.dart create mode 100644 lib/screens/main_app_screen/newlanding_page.dart create mode 100644 lib/screens/main_app_screen/notification_item.dart create mode 100644 lib/screens/main_app_screen/tabbed_layout_component.dart create mode 100644 lib/screens/profileManagement/Profilesettings.dart create mode 100644 lib/screens/profileManagement/about.dart create mode 100644 lib/screens/profileManagement/apiserviceprofilemanagement.dart create mode 100644 lib/screens/profileManagement/changepassword.dart create mode 100644 lib/screens/settings_screen/credits_loading.dart create mode 100644 lib/screens/sign_up_screen/.DS_Store create mode 100644 lib/screens/sign_up_screen/CreateAccount.dart create mode 100644 lib/screens/sign_up_screen/CreateUser.dart create mode 100644 lib/screens/sign_up_screen/RegistrationDetails.dart create mode 100644 lib/screens/sign_up_screen/SignUpService.dart create mode 100644 lib/screens/sign_up_screen/SignUpUser.dart create mode 100644 lib/screens/sign_up_screen/StepGetEmailVerification.dart create mode 100644 lib/screens/sign_up_screen/StepGetRegistration.dart create mode 100644 lib/screens/sign_up_screen/sign_up_screen.dart create mode 100644 lib/screens/sign_up_screen/sign_up_step_1.dart create mode 100644 lib/screens/sign_up_screen/sign_up_steps.dart create mode 100644 lib/screens/sign_up_screen/step_createAccount.dart create mode 100644 lib/screens/splash_screen/splash_screen.dart create mode 100644 lib/theme/app_decoration.dart create mode 100644 lib/theme/app_style.dart create mode 100644 lib/utilities/custom_date_grouping.dart create mode 100644 lib/utilities/display_error_alert.dart create mode 100644 lib/utilities/hadwin_icons.dart create mode 100644 lib/utilities/hadwin_markdown_viewer.dart create mode 100644 lib/utilities/make_api_request.dart create mode 100644 lib/utilities/slide_right_route.dart create mode 100644 lib/utilities/url_external_launcher.dart create mode 100644 lib/widgets/app_bar/appbar_image.dart create mode 100644 lib/widgets/app_bar/appbar_title.dart create mode 100644 lib/widgets/app_bar/custom_app_bar.dart create mode 100644 lib/widgets/custom_bottom_bar.dart create mode 100644 lib/widgets/custom_button.dart create mode 100644 lib/widgets/custom_checkbox.dart create mode 100644 lib/widgets/custom_drop_down.dart create mode 100644 lib/widgets/custom_dropdown_field.dart create mode 100644 lib/widgets/custom_floating_button.dart create mode 100644 lib/widgets/custom_icon_button.dart create mode 100644 lib/widgets/custom_image_view.dart create mode 100644 lib/widgets/custom_radio_button.dart create mode 100644 lib/widgets/custom_search_view.dart create mode 100644 lib/widgets/custom_switch.dart create mode 100644 lib/widgets/custom_text_form_field.dart create mode 100644 linux/.gitignore create mode 100644 linux/CMakeLists.txt create mode 100644 linux/flutter/CMakeLists.txt create mode 100644 linux/flutter/generated_plugin_registrant.cc create mode 100644 linux/flutter/generated_plugin_registrant.h create mode 100644 linux/flutter/generated_plugins.cmake create mode 100644 linux/main.cc create mode 100644 linux/my_application.cc create mode 100644 linux/my_application.h create mode 100644 macos/.gitignore create mode 100644 macos/Flutter/Flutter-Debug.xcconfig create mode 100644 macos/Flutter/Flutter-Release.xcconfig create mode 100644 macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 macos/Runner.xcodeproj/project.pbxproj create mode 100644 macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 macos/Runner/AppDelegate.swift create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 macos/Runner/Base.lproj/MainMenu.xib create mode 100644 macos/Runner/Configs/AppInfo.xcconfig create mode 100644 macos/Runner/Configs/Debug.xcconfig create mode 100644 macos/Runner/Configs/Release.xcconfig create mode 100644 macos/Runner/Configs/Warnings.xcconfig create mode 100644 macos/Runner/DebugProfile.entitlements create mode 100644 macos/Runner/Info.plist create mode 100644 macos/Runner/MainFlutterWindow.swift create mode 100644 macos/Runner/Release.entitlements create mode 100644 macos/RunnerTests/RunnerTests.swift create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart create mode 100644 web/favicon.png create mode 100644 web/icons/Icon-192.png create mode 100644 web/icons/Icon-512.png create mode 100644 web/icons/Icon-maskable-192.png create mode 100644 web/icons/Icon-maskable-512.png create mode 100644 web/index.html create mode 100644 web/manifest.json create mode 100644 windows/.gitignore create mode 100644 windows/CMakeLists.txt create mode 100644 windows/flutter/CMakeLists.txt create mode 100644 windows/flutter/generated_plugin_registrant.cc create mode 100644 windows/flutter/generated_plugin_registrant.h create mode 100644 windows/flutter/generated_plugins.cmake create mode 100644 windows/runner/CMakeLists.txt create mode 100644 windows/runner/Runner.rc create mode 100644 windows/runner/flutter_window.cpp create mode 100644 windows/runner/flutter_window.h create mode 100644 windows/runner/main.cpp create mode 100644 windows/runner/resource.h create mode 100644 windows/runner/resources/app_icon.ico create mode 100644 windows/runner/runner.exe.manifest create mode 100644 windows/runner/utils.cpp create mode 100644 windows/runner/utils.h create mode 100644 windows/runner/win32_window.cpp create mode 100644 windows/runner/win32_window.h diff --git a/README.md b/README.md new file mode 100644 index 0000000..303317e --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# authsec_flutter_hybrid + +A new Flutter project. + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) + +For help getting started with Flutter development, view the +[online documentation](https://docs.flutter.dev/), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..6f56801 --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,13 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java + +# Remember to never publicly share your keystore. +# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle b/android/app/build.gradle new file mode 100644 index 0000000..9ee1421 --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,67 @@ +plugins { + id "com.android.application" + id "kotlin-android" + id "dev.flutter.flutter-gradle-plugin" +} + +def localProperties = new Properties() +def localPropertiesFile = rootProject.file('local.properties') +if (localPropertiesFile.exists()) { + localPropertiesFile.withReader('UTF-8') { reader -> + localProperties.load(reader) + } +} + +def flutterVersionCode = localProperties.getProperty('flutter.versionCode') +if (flutterVersionCode == null) { + flutterVersionCode = '1' +} + +def flutterVersionName = localProperties.getProperty('flutter.versionName') +if (flutterVersionName == null) { + flutterVersionName = '1.0' +} + +android { + namespace "com.example.authsec_flutter_hybrid" + compileSdkVersion flutter.compileSdkVersion + ndkVersion flutter.ndkVersion + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = '1.8' + } + + sourceSets { + main.java.srcDirs += 'src/main/kotlin' + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId "com.example.authsec_flutter_hybrid" + // You can update the following values to match your application needs. + // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. + minSdkVersion flutter.minSdkVersion + targetSdkVersion flutter.targetSdkVersion + versionCode flutterVersionCode.toInteger() + versionName flutterVersionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig signingConfigs.debug + } + } +} + +flutter { + source '../..' +} + +dependencies {} diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..b09befd --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/authsec_flutter_hybrid/MainActivity.kt b/android/app/src/main/kotlin/com/example/authsec_flutter_hybrid/MainActivity.kt new file mode 100644 index 0000000..d2d6f4f --- /dev/null +++ b/android/app/src/main/kotlin/com/example/authsec_flutter_hybrid/MainActivity.kt @@ -0,0 +1,6 @@ +package com.example.authsec_flutter_hybrid + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() { +} diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000..06952be --- /dev/null +++ b/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/authsec_flutter_hybrid_android.iml b/android/authsec_flutter_hybrid_android.iml new file mode 100644 index 0000000..1899969 --- /dev/null +++ b/android/authsec_flutter_hybrid_android.iml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/android/build.gradle b/android/build.gradle new file mode 100644 index 0000000..e83fb5d --- /dev/null +++ b/android/build.gradle @@ -0,0 +1,30 @@ +buildscript { + ext.kotlin_version = '1.7.10' + repositories { + google() + mavenCentral() + } + + dependencies { + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = '../build' +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(':app') +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..598d13f --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..3c472b9 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip diff --git a/android/settings.gradle b/android/settings.gradle new file mode 100644 index 0000000..7cd7128 --- /dev/null +++ b/android/settings.gradle @@ -0,0 +1,29 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + } + settings.ext.flutterSdkPath = flutterSdkPath() + + includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } + + plugins { + id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false + } +} + +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "7.3.0" apply false +} + +include ":app" diff --git a/assets/.DS_Store b/assets/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..ee8f8e880dc2802c6f768fed636354d9467607bf GIT binary patch literal 6148 zcmeHK&2AGh5S~dxo3ubSZ33kTX+Si77Zc^G) zB%Xi=;2C%TUVsaafOrJBa%21xl@K^^K`8P__BS5SjMtxKdkp|s9d_>mSOActA~3s5 z)o(=fi!vh_Z4rnv2ZJQ=MuSesJ2T$KU>GnA{BI11y}Jkj^uYxmruHv>>I}jlNw>DX zSQcg$vX>T@a{1+z%U7-ztm5igu~aNyD_>tP-`Kdh(YDq)u6N?cd>D1_^N`2YaLAtd zanNlHTrY_HX3Actjo_TMt<__No*h3W8YKt81lgG~1@W-OBVYQ0{<(q`K#BwozJ zu+Ebp4S3Z0skik!Ip(MPDeLb?Jx(Kz0(M#(2)E>j#R=g|e6!`ou^aiUdiEl8J1ne4 zRi382-wZq+sV^_cwA8G}Or)&rd{Zl0aUM^UJ4&&jq7;CN^JZP@xzfa>5f3A`&+-+g zt_*oPX*XdPp1={Dz&X5yckmuQz(@EDU*S70p@p|`6Yt?R?%*SQiU;W7F$Nf`1Q|Mr zrQFh}0TWWD7JAf(qmV~F*(Wj6A*MCw4CrOgt<3p6&GZZdhJn9lK%5UY6@iY%u|j!t zP$hmJM1NMG5Yok4LZGeD(KuE}JtU|?2~{ZSCkCo;vfJ9v(KuG9!U5&Tlt+(@`h|jW zbh6vh9neu|YQunGV48si)wIO@|KQK>|LGvpG7K07=86H#?ltzRG$nnv&P-0+wKkPk uRD=k>u|gR_mA;OpBCcZf-c>#}frxQ5jupyKva3+@BOq8YVi@>04Ez99i;~v> literal 0 HcmV?d00001 diff --git a/assets/fonts/HadWinIcons.ttf b/assets/fonts/HadWinIcons.ttf new file mode 100644 index 0000000000000000000000000000000000000000..869d8d6c8312e981aa00666c0b166badb6e6809a GIT binary patch literal 2396 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