├── .fvmrc
├── .github
└── workflows__
│ └── build.yml
├── .gitignore
├── .metadata
├── README.md
├── analysis_options.yaml
├── android
├── .gitignore
├── .idea
│ ├── compiler.xml
│ ├── deploymentTargetDropDown.xml
│ ├── gradle.xml
│ ├── jarRepositories.xml
│ ├── kotlinc.xml
│ ├── misc.xml
│ ├── vcs.xml
│ └── workspace.xml
├── app
│ ├── .cxx
│ │ └── Debug
│ │ │ ├── 37735c6p
│ │ │ ├── hash_key.txt
│ │ │ └── x86
│ │ │ │ ├── .cmake
│ │ │ │ └── api
│ │ │ │ │ └── v1
│ │ │ │ │ ├── query
│ │ │ │ │ └── client-agp
│ │ │ │ │ │ ├── cache-v2
│ │ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ │ └── codemodel-v2
│ │ │ │ │ └── reply
│ │ │ │ │ ├── cache-v2-c1654af9bc0b5fdbee00.json
│ │ │ │ │ ├── cmakeFiles-v1-e1866fbb54a36229c63b.json
│ │ │ │ │ ├── codemodel-v2-4236f578afdae13ffbd8.json
│ │ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ │ └── index-2025-02-13T07-20-10-0424.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── CMakeFiles
│ │ │ │ ├── 3.22.1-g37088a8
│ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ ├── CompilerIdC
│ │ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ │ └── CompilerIdCXX
│ │ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ │ ├── TargetDirectories.txt
│ │ │ │ ├── cmake.check_cache
│ │ │ │ └── rules.ninja
│ │ │ │ ├── additional_project_files.txt
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── build.ninja
│ │ │ │ ├── build_file_index.txt
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── configure_fingerprint.bin
│ │ │ │ ├── metadata_generation_command.txt
│ │ │ │ ├── prefab_config.json
│ │ │ │ └── symbol_folder_index.txt
│ │ │ ├── 6j6h323x
│ │ │ ├── arm64-v8a
│ │ │ │ ├── .cmake
│ │ │ │ │ └── api
│ │ │ │ │ │ └── v1
│ │ │ │ │ │ ├── query
│ │ │ │ │ │ └── client-agp
│ │ │ │ │ │ │ ├── cache-v2
│ │ │ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ │ │ └── codemodel-v2
│ │ │ │ │ │ └── reply
│ │ │ │ │ │ ├── cache-v2-ccc05bfe3b32930096c1.json
│ │ │ │ │ │ ├── cmakeFiles-v1-0cdba34480cac20d13c8.json
│ │ │ │ │ │ ├── codemodel-v2-7a2ec240c2b3ab5e05fe.json
│ │ │ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ │ │ └── index-2025-02-18T06-08-23-0403.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── CMakeFiles
│ │ │ │ │ ├── 3.22.1-g37088a8
│ │ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ │ ├── CompilerIdC
│ │ │ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ │ │ └── CompilerIdCXX
│ │ │ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ │ │ ├── TargetDirectories.txt
│ │ │ │ │ ├── cmake.check_cache
│ │ │ │ │ └── rules.ninja
│ │ │ │ ├── additional_project_files.txt
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── build.ninja
│ │ │ │ ├── build_file_index.txt
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── configure_fingerprint.bin
│ │ │ │ ├── metadata_generation_command.txt
│ │ │ │ ├── prefab_config.json
│ │ │ │ └── symbol_folder_index.txt
│ │ │ ├── armeabi-v7a
│ │ │ │ ├── .cmake
│ │ │ │ │ └── api
│ │ │ │ │ │ └── v1
│ │ │ │ │ │ ├── query
│ │ │ │ │ │ └── client-agp
│ │ │ │ │ │ │ ├── cache-v2
│ │ │ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ │ │ └── codemodel-v2
│ │ │ │ │ │ └── reply
│ │ │ │ │ │ ├── cache-v2-99fcfaebe0a4d8f5aa63.json
│ │ │ │ │ │ ├── cmakeFiles-v1-06fd49f9424dbe9c3585.json
│ │ │ │ │ │ ├── codemodel-v2-fde5ba5b9df76f6dddc8.json
│ │ │ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ │ │ └── index-2025-02-18T06-11-56-0900.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── CMakeFiles
│ │ │ │ │ ├── 3.22.1-g37088a8
│ │ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ │ ├── CompilerIdC
│ │ │ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ │ │ └── CompilerIdCXX
│ │ │ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ │ │ ├── TargetDirectories.txt
│ │ │ │ │ ├── cmake.check_cache
│ │ │ │ │ └── rules.ninja
│ │ │ │ ├── additional_project_files.txt
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── build.ninja
│ │ │ │ ├── build_file_index.txt
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── configure_fingerprint.bin
│ │ │ │ ├── metadata_generation_command.txt
│ │ │ │ ├── prefab_config.json
│ │ │ │ └── symbol_folder_index.txt
│ │ │ ├── hash_key.txt
│ │ │ ├── x86
│ │ │ │ ├── .cmake
│ │ │ │ │ └── api
│ │ │ │ │ │ └── v1
│ │ │ │ │ │ ├── query
│ │ │ │ │ │ └── client-agp
│ │ │ │ │ │ │ ├── cache-v2
│ │ │ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ │ │ └── codemodel-v2
│ │ │ │ │ │ └── reply
│ │ │ │ │ │ ├── cache-v2-69da620ecbde92b3754f.json
│ │ │ │ │ │ ├── cmakeFiles-v1-3c9c8b596d331c2020ef.json
│ │ │ │ │ │ ├── codemodel-v2-9426df2d0a077f9cc7ee.json
│ │ │ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ │ │ └── index-2025-02-18T06-06-55-0656.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── CMakeFiles
│ │ │ │ │ ├── 3.22.1-g37088a8
│ │ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ │ ├── CompilerIdC
│ │ │ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ │ │ └── CompilerIdCXX
│ │ │ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ │ │ ├── TargetDirectories.txt
│ │ │ │ │ ├── cmake.check_cache
│ │ │ │ │ └── rules.ninja
│ │ │ │ ├── additional_project_files.txt
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── build.ninja
│ │ │ │ ├── build_file_index.txt
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── configure_fingerprint.bin
│ │ │ │ ├── metadata_generation_command.txt
│ │ │ │ ├── prefab_config.json
│ │ │ │ └── symbol_folder_index.txt
│ │ │ └── x86_64
│ │ │ │ ├── .cmake
│ │ │ │ └── api
│ │ │ │ │ └── v1
│ │ │ │ │ ├── query
│ │ │ │ │ └── client-agp
│ │ │ │ │ │ ├── cache-v2
│ │ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ │ └── codemodel-v2
│ │ │ │ │ └── reply
│ │ │ │ │ ├── cache-v2-bce4d2052f380763d339.json
│ │ │ │ │ ├── cmakeFiles-v1-dc138a803dcd89a7e0f6.json
│ │ │ │ │ ├── codemodel-v2-2f1ff5c15466be313bcc.json
│ │ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ │ └── index-2025-02-18T06-12-16-0939.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ ├── CMakeFiles
│ │ │ │ ├── 3.22.1-g37088a8
│ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ ├── CompilerIdC
│ │ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ │ └── CompilerIdCXX
│ │ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ │ ├── TargetDirectories.txt
│ │ │ │ ├── cmake.check_cache
│ │ │ │ └── rules.ninja
│ │ │ │ ├── additional_project_files.txt
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── build.ninja
│ │ │ │ ├── build_file_index.txt
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── configure_fingerprint.bin
│ │ │ │ ├── metadata_generation_command.txt
│ │ │ │ ├── prefab_config.json
│ │ │ │ └── symbol_folder_index.txt
│ │ │ └── f1x473wo
│ │ │ ├── hash_key.txt
│ │ │ └── x86
│ │ │ ├── .cmake
│ │ │ └── api
│ │ │ │ └── v1
│ │ │ │ ├── query
│ │ │ │ └── client-agp
│ │ │ │ │ ├── cache-v2
│ │ │ │ │ ├── cmakeFiles-v1
│ │ │ │ │ └── codemodel-v2
│ │ │ │ └── reply
│ │ │ │ ├── cache-v2-396077b89254c08214b4.json
│ │ │ │ ├── cmakeFiles-v1-aecbc0fd76d5ed16f8e6.json
│ │ │ │ ├── codemodel-v2-4fefd2ac256db1d590d7.json
│ │ │ │ ├── directory-.-Debug-f5ebdc15457944623624.json
│ │ │ │ └── index-2025-02-13T07-16-20-0075.json
│ │ │ ├── CMakeCache.txt
│ │ │ ├── CMakeFiles
│ │ │ ├── 3.22.1-g37088a8
│ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ ├── CMakeCXXCompiler.cmake
│ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ ├── CompilerIdC
│ │ │ │ │ ├── CMakeCCompilerId.c
│ │ │ │ │ └── CMakeCCompilerId.o
│ │ │ │ └── CompilerIdCXX
│ │ │ │ │ ├── CMakeCXXCompilerId.cpp
│ │ │ │ │ └── CMakeCXXCompilerId.o
│ │ │ ├── TargetDirectories.txt
│ │ │ ├── cmake.check_cache
│ │ │ └── rules.ninja
│ │ │ ├── additional_project_files.txt
│ │ │ ├── android_gradle_build.json
│ │ │ ├── android_gradle_build_mini.json
│ │ │ ├── build.ninja
│ │ │ ├── build_file_index.txt
│ │ │ ├── cmake_install.cmake
│ │ │ ├── configure_fingerprint.bin
│ │ │ ├── metadata_generation_command.txt
│ │ │ ├── prefab_config.json
│ │ │ └── symbol_folder_index.txt
│ ├── build.gradle
│ ├── release
│ │ └── output-metadata.json
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── kotlin
│ │ │ └── shop
│ │ │ │ └── itbug
│ │ │ │ ├── demo1
│ │ │ │ └── MainActivity.kt
│ │ │ │ └── flutter_simple_shop
│ │ │ │ └── MainActivity.kt
│ │ └── res
│ │ │ ├── drawable-v21
│ │ │ └── launch_background.xml
│ │ │ ├── drawable
│ │ │ ├── launch_background.xml
│ │ │ └── yw_1222.jpg
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_default.png
│ │ │ └── ic_launcher_v1.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_.png
│ │ │ └── ic_launcher_v1.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_.png
│ │ │ └── ic_launcher_v1.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_.png
│ │ │ └── ic_launcher_v1.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_launcher_.png
│ │ │ └── ic_launcher_v1.png
│ │ │ ├── values-night
│ │ │ └── styles.xml
│ │ │ ├── values
│ │ │ └── styles.xml
│ │ │ └── xml
│ │ │ └── network_security_config.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
├── build.gradle
├── gradle.properties
├── gradle
│ └── wrapper
│ │ └── gradle-wrapper.properties
├── key.properties
├── settings.gradle
└── settings_aar.gradle
├── api.hurl
├── assets
├── html
│ └── ys.html
├── icons
│ ├── dagou.png
│ ├── fanli.png
│ ├── hot.png
│ ├── jhs.png
│ ├── jinpai.png
│ ├── new.png
│ ├── px.png
│ ├── pxs.png
│ ├── pxx.png
│ ├── qg.png
│ ├── select.png
│ ├── select_no.png
│ ├── step1.png
│ ├── step2.png
│ ├── step3.png
│ ├── taobao.png
│ ├── taobao2.png
│ ├── tianmao.png
│ ├── tianmao2.png
│ ├── tuijian.png
│ └── youhuiquan.png
├── idea.jpeg
├── images
│ ├── 1.jpg
│ ├── ad.jpeg
│ ├── ad.jpg
│ ├── ad.png
│ ├── ava.jpg
│ ├── ava.png
│ ├── cool-background.png
│ ├── dd.png
│ ├── ddq.jpg
│ ├── ddq.png
│ ├── ewm.png
│ ├── failed.png
│ ├── lake.jpg
│ ├── lijigoumai.png
│ ├── loading.gif
│ ├── logo.png
│ ├── no_data.png
│ ├── order_help.jpg
│ ├── top_bg.png
│ ├── u-bg.jpg
│ ├── vip.png
│ ├── waimai
│ │ └── hb
│ │ │ ├── 1.png
│ │ │ ├── 2.png
│ │ │ ├── 3.png
│ │ │ ├── 4.png
│ │ │ └── sc_bg.png
│ ├── waimai1.png
│ ├── waimai2.png
│ └── xsms.png
├── json
│ └── emoji.json
├── nav
│ ├── fenlei-n.png
│ ├── fenlei.png
│ ├── home-n.png
│ ├── home.png
│ ├── jiujiu-n.png
│ ├── jiujiu.png
│ ├── my-n.png
│ ├── my.png
│ ├── shoucang-n.png
│ └── shoucang.png
└── svg
│ ├── at.svg
│ ├── banjia.svg
│ ├── biaoqing.svg
│ ├── brand.svg
│ ├── cate
│ ├── riyongpin.svg
│ ├── 厨具.svg
│ ├── 宠物.svg
│ ├── 小家电.svg
│ ├── 数码电器.svg
│ ├── 服饰类.svg
│ ├── 母婴食品.svg
│ ├── 生鲜-水果3.svg
│ ├── 美妆.svg
│ └── 零食.svg
│ ├── chf.svg
│ ├── diandian.svg
│ ├── dongtai.svg
│ ├── elm_logo.svg
│ ├── empty.svg
│ ├── err.svg
│ ├── fabu.svg
│ ├── gengduo.svg
│ ├── hot.svg
│ ├── jd.svg
│ ├── jianpan.svg
│ ├── jinhao.svg
│ ├── mt.svg
│ ├── new_version.svg
│ ├── order.svg
│ ├── order2.svg
│ ├── order3.svg
│ ├── order4.svg
│ ├── pdd.svg
│ ├── phb.svg
│ ├── pp.svg
│ ├── pyq.svg
│ ├── qq.svg
│ ├── rmtj.svg
│ ├── shangpin.svg
│ ├── tupian.svg
│ ├── tuwen.svg
│ ├── undraw_shopping_app_flsj.svg
│ ├── user
│ ├── dz.svg
│ ├── fx.svg
│ ├── llls.svg
│ ├── qb.svg
│ ├── sc.svg
│ ├── sz.svg
│ ├── yj.svg
│ └── zhuti.svg
│ ├── wechat.svg
│ ├── wepay.svg
│ ├── zhe.svg
│ ├── 天猫.svg
│ └── 淘宝.svg
├── devtools_options.yaml
├── ios
├── .gitignore
├── Flutter
│ ├── AppFrameworkInfo.plist
│ ├── Debug.xcconfig
│ ├── Release.xcconfig
│ └── ephemeral
│ │ ├── flutter_lldb_helper.py
│ │ └── flutter_lldbinit
├── Podfile
├── Podfile.lock
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ ├── IDEWorkspaceChecks.plist
│ │ └── WorkspaceSettings.xcsettings
├── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ ├── Icon-App-20x20@1x.png
│ │ │ ├── Icon-App-20x20@2x.png
│ │ │ ├── Icon-App-20x20@3x.png
│ │ │ ├── Icon-App-29x29@1x.png
│ │ │ ├── Icon-App-29x29@2x.png
│ │ │ ├── Icon-App-29x29@3x.png
│ │ │ ├── Icon-App-40x40@1x.png
│ │ │ ├── Icon-App-40x40@2x.png
│ │ │ ├── Icon-App-40x40@3x.png
│ │ │ ├── Icon-App-60x60@2x.png
│ │ │ ├── Icon-App-60x60@3x.png
│ │ │ ├── Icon-App-76x76@1x.png
│ │ │ ├── Icon-App-76x76@2x.png
│ │ │ ├── Icon-App-83.5x83.5@2x.png
│ │ │ ├── icon-1024.png
│ │ │ ├── icon-20-ipad.png
│ │ │ ├── icon-20@2x-ipad.png
│ │ │ ├── icon-20@2x.png
│ │ │ ├── icon-20@3x.png
│ │ │ ├── icon-29-ipad.png
│ │ │ ├── icon-29.png
│ │ │ ├── icon-29@2x-ipad.png
│ │ │ ├── icon-29@2x.png
│ │ │ ├── icon-29@3x.png
│ │ │ ├── icon-40.png
│ │ │ ├── icon-40@2x.png
│ │ │ ├── icon-40@3x.png
│ │ │ ├── icon-60@2x.png
│ │ │ ├── icon-60@3x.png
│ │ │ ├── icon-76.png
│ │ │ ├── icon-76@2x.png
│ │ │ └── icon-83.5@2x.png
│ │ ├── Contents.json
│ │ ├── LaunchImage.imageset
│ │ │ ├── Contents.json
│ │ │ ├── LaunchImage.png
│ │ │ ├── LaunchImage@2x.png
│ │ │ ├── LaunchImage@3x.png
│ │ │ └── README.md
│ │ └── yw_1222_baichuan.jpg
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── Runner-Bridging-Header.h
│ ├── Runner.entitlements
│ ├── mtopsdk_configuartion.plist
│ └── yw_1222_baichuan.jpg
├── RunnerTests
│ └── RunnerTests.swift
└── build
│ └── ios
│ └── Pods.build
│ └── Release-iphonesimulator
│ ├── FMDB.build
│ └── dgph
│ ├── Flutter.build
│ └── dgph
│ ├── Pods-Runner.build
│ └── dgph
│ ├── ReachabilitySwift.build
│ └── dgph
│ ├── ali_bc_taoke_sdk.build
│ └── dgph
│ ├── connectivity_plus.build
│ └── dgph
│ ├── dataoke_sdk.build
│ └── dgph
│ ├── dd_check_plugin.build
│ └── dgph
│ ├── dd_models.build
│ └── dgph
│ ├── file_selector_ios.build
│ └── dgph
│ ├── image_picker_ios.build
│ └── dgph
│ ├── network_info_plus.build
│ └── dgph
│ ├── package_info.build
│ └── dgph
│ ├── path_provider_foundation.build
│ └── dgph
│ ├── permission_handler_apple.build
│ └── dgph
│ ├── saver_gallery.build
│ └── dgph
│ ├── shared_preferences_foundation.build
│ └── dgph
│ ├── sqflite.build
│ └── dgph
│ ├── url_launcher_ios.build
│ └── dgph
│ └── webview_flutter_wkwebview.build
│ └── dgph
├── lib
├── ad.dart
├── api
│ ├── apis.dart
│ ├── base.dart
│ ├── model
│ │ ├── email_register_params.dart
│ │ ├── email_register_params.freezed.dart
│ │ ├── email_register_params.g.dart
│ │ ├── get_email_valid_code.dart
│ │ ├── get_email_valid_code.freezed.dart
│ │ ├── get_email_valid_code.g.dart
│ │ ├── login_params.dart
│ │ ├── login_params.freezed.dart
│ │ └── login_params.g.dart
│ ├── new
│ │ ├── base_api.dart
│ │ ├── carousel.dart
│ │ ├── category_api.dart
│ │ ├── full_api.dart
│ │ ├── get_user_by_token.dart
│ │ ├── hot_search_api.dart
│ │ ├── models.dart
│ │ ├── models.freezed.dart
│ │ ├── models.g.dart
│ │ ├── part.dart
│ │ ├── product_detail_info.dart
│ │ ├── products_api.dart
│ │ ├── search_key_word_api.dart
│ │ ├── super_search_api.dart
│ │ ├── test.dart
│ │ ├── text_api.dart
│ │ ├── topic_products.dart
│ │ └── zhe_app_key_api.dart
│ ├── report.dart
│ ├── resource.dart
│ ├── tkapi.dart
│ ├── user.dart
│ └── zhe_api.dart
├── app.dart
├── assets.dart
├── cache
│ ├── index.dart
│ └── privacy.dart
├── common
│ ├── api_ext.dart
│ ├── base_provider.dart
│ ├── components
│ │ ├── jd
│ │ │ ├── jd_category_mini_widget.dart
│ │ │ ├── jd_constant.dart
│ │ │ ├── jd_products_view.dart
│ │ │ ├── jd_types_model.dart
│ │ │ └── product_model.dart
│ │ ├── new_products
│ │ │ └── respose.dart
│ │ ├── pdd
│ │ │ ├── resp.dart
│ │ │ └── view.dart
│ │ └── 通用下拉列表,可以放在任何位置
│ ├── extend
│ │ └── string.dart
│ ├── im_item.dart
│ ├── index.dart
│ ├── jpa_list_widget.dart
│ ├── jpa_page_loading_more.dart
│ ├── no_shadow_croll_ehavior.dart
│ ├── service.dart
│ ├── simple_loadmore_base.dart
│ ├── toast.dart
│ ├── touch_callback.dart
│ ├── utils.dart
│ ├── view.dart
│ ├── view.freezed.dart
│ ├── widget_util.dart
│ └── widgets
│ │ ├── hot.dart
│ │ ├── loading_mixin.dart
│ │ └── simple_dialog.dart
├── constant
│ ├── color.dart
│ ├── context.dart
│ ├── ext.dart
│ ├── index.dart
│ ├── string.dart
│ └── style.dart
├── controller
│ ├── index.dart
│ └── scroll_controllers.dart
├── freezed
│ ├── add_favorites_params.dart
│ ├── add_favorites_params.freezed.dart
│ ├── add_favorites_params.g.dart
│ ├── anking_list_param.dart
│ ├── anking_list_param.freezed.dart
│ ├── anking_list_param.g.dart
│ ├── app_action_menu.dart
│ ├── app_action_menu.freezed.dart
│ ├── appbar_menu.dart
│ ├── appbar_menu.freezed.dart
│ ├── appbar_menu.g.dart
│ ├── application.dart
│ ├── base_layout.dart
│ ├── base_layout.freezed.dart
│ ├── comment.dart
│ ├── comment.freezed.dart
│ ├── comment.g.dart
│ ├── env_config.dart
│ ├── env_config.freezed.dart
│ ├── env_config.g.dart
│ ├── file_info.dart
│ ├── file_info.freezed.dart
│ ├── file_info.g.dart
│ ├── home_menu.dart
│ ├── home_menu.freezed.dart
│ ├── jpa_page.dart
│ ├── jpa_page.freezed.dart
│ ├── jpa_page.g.dart
│ ├── login_result_model.dart
│ ├── login_result_model.freezed.dart
│ ├── login_result_model.g.dart
│ ├── meituran_result.dart
│ ├── meituran_result.freezed.dart
│ ├── meituran_result.g.dart
│ ├── pager.dart
│ ├── pager.freezed.dart
│ ├── pager.g.dart
│ ├── product_share.dart
│ ├── product_share.freezed.dart
│ ├── product_share.g.dart
│ ├── report.dart
│ ├── report.freezed.dart
│ ├── report.g.dart
│ ├── resource_category.dart
│ ├── resource_category.freezed.dart
│ ├── resource_category.g.dart
│ ├── simple_result.dart
│ ├── simple_result.freezed.dart
│ ├── simple_result.g.dart
│ ├── test.dart
│ ├── test.freezed.dart
│ ├── test.g.dart
│ ├── text_model.dart
│ ├── text_model.freezed.dart
│ ├── text_model.g.dart
│ ├── user_order_info.dart
│ ├── user_order_info.freezed.dart
│ ├── user_order_info.g.dart
│ ├── xb_result.dart
│ ├── xb_result.freezed.dart
│ ├── xb_result.g.dart
│ ├── zhe_carousel_model.dart
│ ├── zhe_carousel_model.freezed.dart
│ ├── zhe_carousel_model.g.dart
│ ├── zhe_elm_model.dart
│ ├── zhe_elm_model.freezed.dart
│ ├── zhe_elm_model.g.dart
│ ├── zhe_product.dart
│ ├── zhe_product.freezed.dart
│ └── zhe_product.g.dart
├── index.dart
├── init.dart
├── main.dart
├── meet
│ ├── add_new_meet.dart
│ ├── list.dart
│ ├── meet_item_layout.dart
│ ├── meet_list_widget.dart
│ ├── meet_model.dart
│ ├── meet_model.freezed.dart
│ ├── meet_model.g.dart
│ └── model
│ │ ├── params.dart
│ │ ├── params.freezed.dart
│ │ └── params.g.dart
├── modals
│ ├── blog_category_model.dart
│ ├── blog_category_model.freezed.dart
│ ├── blog_category_model.g.dart
│ ├── coupon_data.dart
│ ├── dataoke
│ │ ├── activity_link_param.dart
│ │ ├── activity_link_result.dart
│ │ ├── brand_detail_result.dart
│ │ ├── brand_param.dart
│ │ ├── brand_product_param.dart
│ │ ├── category.dart
│ │ ├── category.freezed.dart
│ │ ├── category.g.dart
│ │ ├── comment_param.dart
│ │ ├── coupons_detail_link_param.dart
│ │ ├── ddq_result.dart
│ │ ├── detail_base_data.dart
│ │ ├── detail_base_data.freezed.dart
│ │ ├── detail_base_data.g.dart
│ │ ├── discount_two_param.dart
│ │ ├── discount_two_result.dart
│ │ ├── ff_convert_convert_util.dart
│ │ ├── halfday_result.dart
│ │ ├── high_commission_param.dart
│ │ ├── high_commission_result.dart
│ │ ├── history_price_result.dart
│ │ ├── hot_search_worlds_result.dart
│ │ ├── hotday_param.dart
│ │ ├── hotday_result.dart
│ │ ├── jd
│ │ │ ├── jd_product.dart
│ │ │ └── jd_req_param.dart
│ │ ├── live_data_result.dart
│ │ ├── nine_nine_param.dart
│ │ ├── nine_nine_result.dart
│ │ ├── pdd
│ │ │ └── pdd_category.dart
│ │ ├── product_detail_param.dart
│ │ ├── product_list_param.dart
│ │ ├── product_list_result.dart
│ │ ├── product_material_result.dart
│ │ ├── res_category.dart
│ │ ├── result.dart
│ │ ├── shop_convert_param.dart
│ │ ├── speider_param.dart
│ │ ├── speider_resullt.dart
│ │ ├── super_search_param.dart
│ │ ├── super_search_result.dart
│ │ ├── system_pic.dart
│ │ ├── taobao_oneprice_param.dart
│ │ ├── taobao_oneprice_result.dart
│ │ ├── top_param.dart
│ │ ├── user.dart
│ │ ├── wechat_param.dart
│ │ └── wechat_result.dart
│ ├── dd
│ │ ├── brand.dart
│ │ ├── brand.freezed.dart
│ │ ├── brand.g.dart
│ │ ├── carousel.dart
│ │ ├── carousel.freezed.dart
│ │ ├── carousel.g.dart
│ │ ├── product.dart
│ │ ├── product.freezed.dart
│ │ └── product.g.dart
│ ├── dd_sort.dart
│ ├── favorites_model.dart
│ ├── goods_detail_image.dart
│ ├── goods_info.dart
│ ├── goods_list_modal.dart
│ ├── index.dart
│ ├── order_list_model.dart
│ ├── page_info_model.dart
│ ├── page_info_model.freezed.dart
│ ├── page_info_model.g.dart
│ ├── params_model
│ │ ├── store_detail_params_model.dart
│ │ └── store_params_model.dart
│ ├── pdd_detail_model.dart
│ ├── pdd_product.dart
│ ├── pdd_search_item_model.dart
│ ├── rank_data.dart
│ ├── shop_info.dart
│ ├── shop_info.freezed.dart
│ └── shop_info.g.dart
├── network
│ ├── aes_util.dart
│ ├── dio_errors.dart
│ ├── http_request.dart
│ ├── interceptor
│ │ └── params_token_interceptor.dart
│ ├── network.dart
│ ├── request_params_util.dart
│ ├── request_util.dart
│ └── result_model.dart
├── pages
│ ├── activity_page
│ │ └── 活动页面
│ ├── best_seller_list.dart
│ ├── blog
│ │ └── write_blog
│ │ │ ├── components
│ │ │ └── blog_categorys.dart
│ │ │ └── view.dart
│ ├── brand_page
│ │ ├── brand_detail.dart
│ │ ├── category_delegate.dart
│ │ ├── components
│ │ │ ├── detail_brand_info.dart
│ │ │ ├── detail_product_list.dart
│ │ │ └── item.dart
│ │ ├── index.dart
│ │ ├── models
│ │ │ └── brand_detail_model.dart
│ │ ├── new
│ │ │ └── list.dart
│ │ └── provider
│ │ │ └── brand_provider.dart
│ ├── category_page
│ │ ├── index_home.dart
│ │ ├── left_widget.dart
│ │ └── right_widget.dart
│ ├── config
│ │ ├── desktop.dart
│ │ └── mobile.dart
│ ├── ddq_page
│ │ ├── goods_item.dart
│ │ ├── index_home.dart
│ │ └── sliver_app_bar_delegate.dart
│ ├── detail_page
│ │ ├── action_buttons.dart
│ │ ├── detail_imgs_widget.dart
│ │ ├── hdk
│ │ │ └── index_home.dart
│ │ ├── index_home.dart
│ │ ├── shop_info_widget.dart
│ │ └── swiper_widget.dart
│ ├── dynamic
│ │ ├── components
│ │ │ └── list.dart
│ │ ├── index.dart
│ │ ├── loading.dart
│ │ ├── model
│ │ │ └── wph_detail_resul.dart
│ │ ├── pages
│ │ │ ├── pyq.dart
│ │ │ └── wph.dart
│ │ ├── pyq_riverpod.dart
│ │ └── wph_riverpod.dart
│ ├── dynamic_page
│ │ ├── pages
│ │ │ └── add.dart
│ │ ├── state.dart
│ │ └── view.dart
│ ├── favorite_page
│ │ ├── actions.dart
│ │ ├── goods_item.dart
│ │ └── index_home.dart
│ ├── index.dart
│ ├── index_page
│ │ ├── component
│ │ │ ├── category_component.dart
│ │ │ ├── category_item_layout.dart
│ │ │ ├── category_notification_stream.dart
│ │ │ ├── component_title.dart
│ │ │ ├── home_banner.dart
│ │ │ ├── topic_carousel.dart
│ │ │ └── zhe_carousel_products.dart
│ │ ├── desktop
│ │ │ ├── components
│ │ │ │ ├── appbar.dart
│ │ │ │ └── title.dart
│ │ │ └── index.dart
│ │ ├── grid_menu.dart
│ │ ├── grid_menu_list.dart
│ │ ├── model
│ │ │ ├── category_model.dart
│ │ │ ├── index_carousel_item_model.dart
│ │ │ ├── index_grid_menu_item_model.dart
│ │ │ ├── menus.dart
│ │ │ ├── store_list_model.dart
│ │ │ └── topic_model.dart
│ │ ├── new
│ │ │ ├── component
│ │ │ │ ├── appbar.dart
│ │ │ │ ├── carousel.dart
│ │ │ │ ├── gridmenu
│ │ │ │ │ ├── menu_item.dart
│ │ │ │ │ ├── model.dart
│ │ │ │ │ └── view.dart
│ │ │ │ ├── index_tabbar.dart
│ │ │ │ ├── products.dart
│ │ │ │ └── two_column_comm.dart
│ │ │ ├── github
│ │ │ │ └── github.dart
│ │ │ ├── index.dart
│ │ │ ├── index_card_wrapper.dart
│ │ │ ├── index_riverpod.dart
│ │ │ └── waimai
│ │ │ │ ├── detail.dart
│ │ │ │ ├── index.dart
│ │ │ │ └── 外卖相关.txt
│ │ ├── public_widget_style.dart
│ │ └── store
│ │ │ ├── component_index.dart
│ │ │ ├── goods_card.dart
│ │ │ ├── goods_item_layout.dart
│ │ │ ├── price_layout.dart
│ │ │ └── store_card.dart
│ ├── jd
│ │ └── recommend
│ │ │ └── view.dart
│ ├── jiujiu_page
│ │ ├── goods_item_widget.dart
│ │ ├── goods_list_widget.dart
│ │ ├── image_nav.dart
│ │ └── new
│ │ │ ├── repository.dart
│ │ │ ├── types.dart
│ │ │ └── widget.dart
│ ├── loading
│ │ └── index_loading_skeleton_page.dart
│ ├── mianji
│ │ └── mianji
│ │ │ ├── apply.dart
│ │ │ └── view.dart
│ ├── new_goods_list
│ │ ├── components
│ │ │ ├── sort_widget.dart
│ │ │ └── subcategory_view.dart
│ │ ├── riverpod.dart
│ │ ├── v2
│ │ │ ├── appbar.dart
│ │ │ ├── goods_list_params_model.dart
│ │ │ ├── goods_list_params_model.freezed.dart
│ │ │ ├── index.dart
│ │ │ ├── page.dart
│ │ │ └── repository.dart
│ │ └── 商品列表.txt.dart
│ ├── order
│ │ ├── model.dart
│ │ └── user_order_index.dart
│ ├── other_page
│ │ └── not_found_page.dart
│ ├── panic_buying
│ │ ├── components
│ │ │ ├── appbar.dart
│ │ │ ├── categorys.dart
│ │ │ ├── daojishi.dart
│ │ │ ├── list.dart
│ │ │ └── view_status.dart
│ │ ├── repository.dart
│ │ ├── repository_v2.dart
│ │ ├── view.dart
│ │ └── 抢购_排行榜_页面.txt
│ ├── pinduoduo
│ │ ├── search
│ │ │ └── view.dart
│ │ └── 平多多页面
│ ├── public_detail
│ │ ├── abs.dart
│ │ ├── model.dart
│ │ ├── view.dart
│ │ └── 通用详情页面
│ ├── report
│ │ └── repost_index.dart
│ ├── search
│ │ ├── component
│ │ │ ├── helper_show.dart
│ │ │ ├── key_worlds.dart
│ │ │ └── suggest.dart
│ │ ├── list.dart
│ │ └── view.dart
│ ├── user_home_page
│ │ ├── ext.dart
│ │ ├── header
│ │ │ ├── appbar.dart
│ │ │ ├── index.dart
│ │ │ ├── money_count.dart
│ │ │ └── vip_header.dart
│ │ ├── index_home.dart
│ │ ├── login
│ │ │ ├── login_base.dart
│ │ │ ├── login_page.dart
│ │ │ └── register_page.dart
│ │ ├── new
│ │ │ ├── my_sliver_appbar.dart
│ │ │ └── user_center_page.dart
│ │ ├── order
│ │ │ ├── my_order.dart
│ │ │ ├── order_add.dart
│ │ │ └── order_widget.dart
│ │ ├── pages
│ │ │ ├── new_version_page.dart
│ │ │ ├── resource_list.dart
│ │ │ └── setting.dart
│ │ ├── setting
│ │ │ ├── index.dart
│ │ │ ├── mini_theme_setting.dart
│ │ │ ├── update_avatar.dart
│ │ │ ├── update_city.dart
│ │ │ ├── update_job.dart
│ │ │ ├── update_name.dart
│ │ │ └── update_string_attr.dart
│ │ ├── white
│ │ │ ├── components
│ │ │ │ ├── code_input.dart
│ │ │ │ ├── more_action_bottomsheet.dart
│ │ │ │ └── search_goods.dart
│ │ │ └── views
│ │ │ │ └── markdown_preview.dart
│ │ └── widgets
│ │ │ ├── list_item.dart
│ │ │ └── svg_title.dart
│ ├── xb
│ │ └── xianbao_index.dart
│ └── zhe
│ │ ├── riverpod.dart
│ │ ├── view.dart
│ │ └── 折上折页面.txt
├── personal
│ └── personal.dart
├── provider
│ ├── ddq_provider.dart
│ ├── dtk_index_goods_provider.dart
│ ├── goods_detail_provider.dart
│ ├── goods_list_provider.dart
│ ├── index.dart
│ ├── index_provider.dart
│ ├── jd_products_provider.dart
│ ├── riverpod
│ │ ├── base.dart
│ │ ├── category_riverpod.dart
│ │ ├── favorites
│ │ │ ├── model.dart
│ │ │ ├── model.freezed.dart
│ │ │ ├── model.g.dart
│ │ │ ├── repository
│ │ │ │ └── favorites_repository.dart
│ │ │ ├── riverpod.dart
│ │ │ ├── riverpod_model.dart
│ │ │ ├── riverpod_model.freezed.dart
│ │ │ └── riverpod_model.g.dart
│ │ ├── index
│ │ │ ├── index_products_model.dart
│ │ │ ├── index_products_model.freezed.dart
│ │ │ └── riverpod.dart
│ │ ├── model
│ │ │ ├── my_user.dart
│ │ │ ├── my_user.freezed.dart
│ │ │ ├── my_user.g.dart
│ │ │ ├── user.dart
│ │ │ ├── user.freezed.dart
│ │ │ └── user.g.dart
│ │ ├── search_riverpod.dart
│ │ ├── text_list_provider.dart
│ │ └── user_riverpod.dart
│ └── user_provider.dart
├── r_gen_file.dart
├── repository
│ ├── goods_list_repository.dart
│ ├── index.dart
│ ├── order_respository.dart
│ └── user_order.dart
├── res.dart
├── resource
│ ├── page.dart
│ ├── repository
│ │ └── my_resource_repository.dart
│ ├── view.dart
│ └── views
│ │ ├── detail.dart
│ │ ├── selec_resource_category_page.dart
│ │ └── write_page.dart
├── router.dart
├── service
│ ├── index.dart
│ └── user_api.dart
├── test.dart
├── util
│ ├── cache_util.dart
│ ├── color_util.dart
│ ├── fluro_convert_util.dart
│ ├── image_util.dart
│ ├── index.dart
│ ├── input_utils.dart
│ ├── navigator_util.dart
│ ├── number_cover.dart
│ ├── public.dart
│ ├── theme.dart
│ └── user.dart
└── widgets
│ ├── ad.dart
│ ├── app_action_menu.dart
│ ├── category
│ └── jd_category.dart
│ ├── component
│ ├── coupon_discount.dart
│ ├── custom_loading.dart
│ ├── custom_select_toolbar.dart
│ ├── custom_skeleton_container.dart
│ ├── dao_ji_shi.dart
│ ├── new_version_dialog.dart
│ └── tool_tip.dart
│ ├── coupon_price.dart
│ ├── ddq_times_widget.dart
│ ├── default_avatar_widget.dart
│ ├── default_user_name.dart
│ ├── desktop
│ ├── login_dailog.dart
│ └── string_dialog.dart
│ ├── desktop_widget.dart
│ ├── detail_simple_bborder_button.dart
│ ├── edit_page_handle.dart
│ ├── extended_image.dart
│ ├── favorite_add_btn.dart
│ ├── flexd
│ ├── index_header_flexd_widget.dart
│ └── index_main_goods_mini_title_bar.dart
│ ├── float_widget.dart
│ ├── icon_block_widget.dart
│ ├── image_download.dart
│ ├── image_wrapper.dart
│ ├── index.dart
│ ├── index_sticky_tabbar_delegate.dart
│ ├── input
│ └── setting_input.dart
│ ├── lazy_indexed_stack.dart
│ ├── loading
│ └── custom_loading_more_widget.dart
│ ├── loading_widget.dart
│ ├── login_tip_widget.dart
│ ├── logo.dart
│ ├── my_clipper.dart
│ ├── my_drawable_start_text.dart
│ ├── no_data.dart
│ ├── p.dart
│ ├── privacy_dialog.dart
│ ├── product_search_mini.dart
│ ├── pullto_refresh_header.dart
│ ├── resource_widegt.dart
│ ├── riverpod_error.dart
│ ├── simple_appbar.dart
│ ├── simple_price.dart
│ ├── sticky_tab_bar_delegate.dart
│ ├── tag_widget.dart
│ ├── title_widget.dart
│ ├── toast_postion.dart
│ ├── up_down_btn_widget.dart
│ ├── waterfall_goods_card.dart
│ ├── webview.dart
│ └── wrap.dart
├── linux
├── .gitignore
├── CMakeLists.txt
├── flutter
│ ├── CMakeLists.txt
│ ├── generated_plugin_registrant.cc
│ ├── generated_plugin_registrant.h
│ └── generated_plugins.cmake
├── main.cc
├── my_application.cc
├── my_application.h
└── runner
│ ├── CMakeLists.txt
│ ├── main.cc
│ ├── my_application.cc
│ └── my_application.h
├── macos
├── .gitignore
├── Flutter
│ ├── Flutter-Debug.xcconfig
│ ├── Flutter-Release.xcconfig
│ └── GeneratedPluginRegistrant.swift
├── Podfile
├── Podfile.lock
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ └── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ └── IDEWorkspaceChecks.plist
├── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ ├── Contents.json
│ │ │ ├── app_icon_1024.png
│ │ │ ├── app_icon_128.png
│ │ │ ├── app_icon_16.png
│ │ │ ├── app_icon_256.png
│ │ │ ├── app_icon_32.png
│ │ │ ├── app_icon_512.png
│ │ │ └── app_icon_64.png
│ ├── Base.lproj
│ │ └── MainMenu.xib
│ ├── Configs
│ │ ├── AppInfo.xcconfig
│ │ ├── Debug.xcconfig
│ │ ├── Release.xcconfig
│ │ └── Warnings.xcconfig
│ ├── DebugProfile.entitlements
│ ├── Info.plist
│ ├── MainFlutterWindow.swift
│ └── Release.entitlements
└── RunnerTests
│ └── RunnerTests.swift
├── ohos
├── .gitignore
├── AppScope
│ ├── app.json5
│ └── resources
│ │ └── base
│ │ ├── element
│ │ └── string.json
│ │ └── media
│ │ └── app_icon.png
├── build-profile.json5
├── entry
│ ├── .gitignore
│ ├── build-profile.json5
│ ├── hvigorfile.ts
│ ├── oh-package.json5
│ └── src
│ │ ├── main
│ │ ├── ets
│ │ │ ├── entryability
│ │ │ │ └── EntryAbility.ets
│ │ │ └── pages
│ │ │ │ └── Index.ets
│ │ ├── module.json5
│ │ └── resources
│ │ │ ├── base
│ │ │ ├── element
│ │ │ │ ├── color.json
│ │ │ │ └── string.json
│ │ │ ├── media
│ │ │ │ └── icon.png
│ │ │ └── profile
│ │ │ │ ├── buildinfo.json5
│ │ │ │ └── main_pages.json
│ │ │ ├── en_US
│ │ │ └── element
│ │ │ │ └── string.json
│ │ │ └── zh_CN
│ │ │ └── element
│ │ │ └── string.json
│ │ └── ohosTest
│ │ ├── ets
│ │ ├── test
│ │ │ ├── Ability.test.ets
│ │ │ └── List.test.ets
│ │ ├── testability
│ │ │ ├── TestAbility.ets
│ │ │ └── pages
│ │ │ │ └── Index.ets
│ │ └── testrunner
│ │ │ └── OpenHarmonyTestRunner.ts
│ │ ├── module.json5
│ │ └── resources
│ │ └── base
│ │ ├── element
│ │ ├── color.json
│ │ └── string.json
│ │ ├── media
│ │ └── icon.png
│ │ └── profile
│ │ └── test_pages.json
├── hvigor
│ └── hvigor-config.json5
├── hvigorfile.ts
└── oh-package.json5
├── pubspec.lock
├── pubspec.yaml
├── web
├── favicon.png
├── icons
│ ├── Icon-192.png
│ ├── Icon-512.png
│ ├── Icon-maskable-192.png
│ └── Icon-maskable-512.png
├── index.html
└── manifest.json
└── windows
├── .gitignore
├── CMakeLists.txt
├── flutter
├── CMakeLists.txt
├── generated_plugin_registrant.cc
├── generated_plugin_registrant.h
└── generated_plugins.cmake
└── runner
├── CMakeLists.txt
├── Runner.rc
├── flutter_window.cpp
├── flutter_window.h
├── main.cpp
├── resource.h
├── resources
└── app_icon.ico
├── run_loop.cpp
├── run_loop.h
├── runner.exe.manifest
├── utils.cpp
├── utils.h
├── win32_window.cpp
└── win32_window.h
/.fvmrc:
--------------------------------------------------------------------------------
1 | {
2 | "flutter": "3.22.1-ohos-0.1.1"
3 | }
--------------------------------------------------------------------------------
/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
--------------------------------------------------------------------------------
/android/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/android/.idea/deploymentTargetDropDown.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/android/.idea/kotlinc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/android/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/android/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/27.0.12077973/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "i686")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/37735c6p/x86",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/37735c6p/x86",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/37735c6p/x86/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/37735c6p/x86/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/37735c6p/obj/x86
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/27.0.12077973/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "aarch64")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/arm64-v8a",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/arm64-v8a",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/arm64-v8a/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/arm64-v8a/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/6j6h323x/obj/arm64-v8a
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/27.0.12077973/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "armv7-a")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/armeabi-v7a",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/armeabi-v7a",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/armeabi-v7a/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/6j6h323x/obj/armeabi-v7a
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/27.0.12077973/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "i686")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/6j6h323x/obj/x86
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/27.0.12077973/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "x86_64")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86_64",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/6j6h323x/x86_64",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/6j6h323x/x86_64/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/6j6h323x/x86_64/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/6j6h323x/obj/x86_64
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/cache-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/cache-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/cmakeFiles-v1
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/codemodel-v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/query/client-agp/codemodel-v2
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/.cmake/api/v1/reply/directory-.-Debug-f5ebdc15457944623624.json:
--------------------------------------------------------------------------------
1 | {
2 | "backtraceGraph" :
3 | {
4 | "commands" : [],
5 | "files" : [],
6 | "nodes" : []
7 | },
8 | "installers" : [],
9 | "paths" :
10 | {
11 | "build" : ".",
12 | "source" : "."
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Darwin-24.3.0")
2 | set(CMAKE_HOST_SYSTEM_NAME "Darwin")
3 | set(CMAKE_HOST_SYSTEM_VERSION "24.3.0")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "arm64")
5 |
6 | include("/Users/ldd/Library/Android/sdk/ndk/25.1.8937393/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "i686")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdC/CMakeCCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/3.22.1-g37088a8/CompilerIdCXX/CMakeCXXCompilerId.o
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/edit_cache.dir
2 | /Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/rebuild_cache.dir
3 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/additional_project_files.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/additional_project_files.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "/Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt"
4 | ],
5 | "cleanCommandsComponents": [
6 | [
7 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
8 | "-C",
9 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/f1x473wo/x86",
10 | "clean"
11 | ]
12 | ],
13 | "buildTargetsCommandComponents": [
14 | "/Users/ldd/Library/Android/sdk/cmake/3.22.1/bin/ninja",
15 | "-C",
16 | "/Users/ldd/flutter_simple_shop/android/app/.cxx/Debug/f1x473wo/x86",
17 | "{LIST_OF_TARGETS_TO_BUILD}"
18 | ],
19 | "libraries": {}
20 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/build_file_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/configure_fingerprint.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/.cxx/Debug/f1x473wo/x86/configure_fingerprint.bin
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/android/app/.cxx/Debug/f1x473wo/x86/symbol_folder_index.txt:
--------------------------------------------------------------------------------
1 | /Users/ldd/flutter_simple_shop/build/app/intermediates/cxx/Debug/f1x473wo/obj/x86
--------------------------------------------------------------------------------
/android/app/release/output-metadata.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 3,
3 | "artifactType": {
4 | "type": "APK",
5 | "kind": "Directory"
6 | },
7 | "applicationId": "shop.itbug.demo1",
8 | "variantName": "release",
9 | "elements": [
10 | {
11 | "type": "SINGLE",
12 | "filters": [],
13 | "attributes": [],
14 | "versionCode": 1,
15 | "versionName": "3.1.0",
16 | "outputFile": "app-release.apk"
17 | }
18 | ],
19 | "elementType": "File"
20 | }
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/shop/itbug/demo1/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package shop.itbug.demo1
2 |
3 | import androidx.annotation.NonNull;
4 | import io.flutter.embedding.android.FlutterActivity
5 | import io.flutter.embedding.engine.FlutterEngine
6 | import io.flutter.plugins.GeneratedPluginRegistrant
7 |
8 | class MainActivity: FlutterActivity() {
9 | override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
10 | GeneratedPluginRegistrant.registerWith(flutterEngine);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/shop/itbug/flutter_simple_shop/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package shop.itbug.flutter_simple_shop
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/yw_1222.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/drawable/yw_1222.jpg
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-hdpi/ic_launcher_default.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-hdpi/ic_launcher_v1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-mdpi/ic_launcher_.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-mdpi/ic_launcher_v1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xhdpi/ic_launcher_.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xhdpi/ic_launcher_v1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_v1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_v1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_v1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
--------------------------------------------------------------------------------
/android/app/src/main/res/xml/network_security_config.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | allprojects {
2 | repositories {
3 | google()
4 | mavenCentral()
5 | }
6 | }
7 |
8 | rootProject.buildDir = '../build'
9 | subprojects {
10 | project.buildDir = "${rootProject.buildDir}/${project.name}"
11 | }
12 | subprojects {
13 | project.evaluationDependsOn(':app')
14 | }
15 |
16 | tasks.register("clean", Delete) {
17 | delete rootProject.buildDir
18 | }
19 |
20 |
21 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx2536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Thu Feb 13 15:07:39 CST 2025
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
5 | zipStoreBase=GRADLE_USER_HOME
6 | zipStorePath=wrapper/dists
7 |
--------------------------------------------------------------------------------
/android/key.properties:
--------------------------------------------------------------------------------
1 | storePassword=hlx5219765
2 | keyPassword=hlx5219765
3 | keyAlias=key
4 | storeFile=C:/Users/lvccz/key.jks
--------------------------------------------------------------------------------
/android/settings_aar.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
--------------------------------------------------------------------------------
/api.hurl:
--------------------------------------------------------------------------------
1 | GET https://api.itbug.shop/tkapi/api/v1/dtk/apis/categorys
2 | HTTP 200
3 |
4 | GET https://api.itbug.shop/api/zhe/app-key
5 | HTTP 200
6 |
7 | GET https://api.itbug.shop/api/get-user-by-token
8 | Authorization : eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjEiLCJleHAiOjE3NDY3NTg3Mjh9._hDtH36DmGC8Bv9d1rDXKLhH9PuoV9lrGvvT31Lljp0
9 | HTTP 200
10 |
--------------------------------------------------------------------------------
/assets/icons/dagou.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/dagou.png
--------------------------------------------------------------------------------
/assets/icons/fanli.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/fanli.png
--------------------------------------------------------------------------------
/assets/icons/hot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/hot.png
--------------------------------------------------------------------------------
/assets/icons/jhs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/jhs.png
--------------------------------------------------------------------------------
/assets/icons/jinpai.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/jinpai.png
--------------------------------------------------------------------------------
/assets/icons/new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/new.png
--------------------------------------------------------------------------------
/assets/icons/px.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/px.png
--------------------------------------------------------------------------------
/assets/icons/pxs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/pxs.png
--------------------------------------------------------------------------------
/assets/icons/pxx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/pxx.png
--------------------------------------------------------------------------------
/assets/icons/qg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/qg.png
--------------------------------------------------------------------------------
/assets/icons/select.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/select.png
--------------------------------------------------------------------------------
/assets/icons/select_no.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/select_no.png
--------------------------------------------------------------------------------
/assets/icons/step1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/step1.png
--------------------------------------------------------------------------------
/assets/icons/step2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/step2.png
--------------------------------------------------------------------------------
/assets/icons/step3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/step3.png
--------------------------------------------------------------------------------
/assets/icons/taobao.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/taobao.png
--------------------------------------------------------------------------------
/assets/icons/taobao2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/taobao2.png
--------------------------------------------------------------------------------
/assets/icons/tianmao.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/tianmao.png
--------------------------------------------------------------------------------
/assets/icons/tianmao2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/tianmao2.png
--------------------------------------------------------------------------------
/assets/icons/tuijian.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/tuijian.png
--------------------------------------------------------------------------------
/assets/icons/youhuiquan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/icons/youhuiquan.png
--------------------------------------------------------------------------------
/assets/idea.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/idea.jpeg
--------------------------------------------------------------------------------
/assets/images/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/1.jpg
--------------------------------------------------------------------------------
/assets/images/ad.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ad.jpeg
--------------------------------------------------------------------------------
/assets/images/ad.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ad.jpg
--------------------------------------------------------------------------------
/assets/images/ad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ad.png
--------------------------------------------------------------------------------
/assets/images/ava.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ava.jpg
--------------------------------------------------------------------------------
/assets/images/ava.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ava.png
--------------------------------------------------------------------------------
/assets/images/cool-background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/cool-background.png
--------------------------------------------------------------------------------
/assets/images/dd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/dd.png
--------------------------------------------------------------------------------
/assets/images/ddq.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ddq.jpg
--------------------------------------------------------------------------------
/assets/images/ddq.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ddq.png
--------------------------------------------------------------------------------
/assets/images/ewm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/ewm.png
--------------------------------------------------------------------------------
/assets/images/failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/failed.png
--------------------------------------------------------------------------------
/assets/images/lake.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/lake.jpg
--------------------------------------------------------------------------------
/assets/images/lijigoumai.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/lijigoumai.png
--------------------------------------------------------------------------------
/assets/images/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/loading.gif
--------------------------------------------------------------------------------
/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/logo.png
--------------------------------------------------------------------------------
/assets/images/no_data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/no_data.png
--------------------------------------------------------------------------------
/assets/images/order_help.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/order_help.jpg
--------------------------------------------------------------------------------
/assets/images/top_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/top_bg.png
--------------------------------------------------------------------------------
/assets/images/u-bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/u-bg.jpg
--------------------------------------------------------------------------------
/assets/images/vip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/vip.png
--------------------------------------------------------------------------------
/assets/images/waimai/hb/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai/hb/1.png
--------------------------------------------------------------------------------
/assets/images/waimai/hb/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai/hb/2.png
--------------------------------------------------------------------------------
/assets/images/waimai/hb/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai/hb/3.png
--------------------------------------------------------------------------------
/assets/images/waimai/hb/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai/hb/4.png
--------------------------------------------------------------------------------
/assets/images/waimai/hb/sc_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai/hb/sc_bg.png
--------------------------------------------------------------------------------
/assets/images/waimai1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai1.png
--------------------------------------------------------------------------------
/assets/images/waimai2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/waimai2.png
--------------------------------------------------------------------------------
/assets/images/xsms.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/images/xsms.png
--------------------------------------------------------------------------------
/assets/nav/fenlei-n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/fenlei-n.png
--------------------------------------------------------------------------------
/assets/nav/fenlei.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/fenlei.png
--------------------------------------------------------------------------------
/assets/nav/home-n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/home-n.png
--------------------------------------------------------------------------------
/assets/nav/home.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/home.png
--------------------------------------------------------------------------------
/assets/nav/jiujiu-n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/jiujiu-n.png
--------------------------------------------------------------------------------
/assets/nav/jiujiu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/jiujiu.png
--------------------------------------------------------------------------------
/assets/nav/my-n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/my-n.png
--------------------------------------------------------------------------------
/assets/nav/my.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/my.png
--------------------------------------------------------------------------------
/assets/nav/shoucang-n.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/shoucang-n.png
--------------------------------------------------------------------------------
/assets/nav/shoucang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/assets/nav/shoucang.png
--------------------------------------------------------------------------------
/assets/svg/chf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/diandian.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/jd.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/order.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/order2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/phb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/qq.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/tupian.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/user/qb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/svg/user/zhuti.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/devtools_options.yaml:
--------------------------------------------------------------------------------
1 | extensions:
2 |
--------------------------------------------------------------------------------
/ios/.gitignore:
--------------------------------------------------------------------------------
1 | *.mode1v3
2 | *.mode2v3
3 | *.moved-aside
4 | *.pbxuser
5 | *.perspectivev3
6 | **/*sync/
7 | .sconsign.dblite
8 | .tags*
9 | **/.vagrant/
10 | **/DerivedData/
11 | Icon?
12 | **/Pods/
13 | **/.symlinks/
14 | profile
15 | xcuserdata
16 | **/.generated/
17 | Flutter/App.framework
18 | Flutter/Flutter.framework
19 | Flutter/Flutter.podspec
20 | Flutter/Generated.xcconfig
21 | Flutter/app.flx
22 | Flutter/app.zip
23 | Flutter/flutter_assets/
24 | Flutter/flutter_export_environment.sh
25 | ServiceDefinitions.json
26 | Runner/GeneratedPluginRegistrant.*
27 |
28 | # Exceptions to above rules.
29 | !default.mode1v3
30 | !default.mode2v3
31 | !default.pbxuser
32 | !default.perspectivev3
33 |
--------------------------------------------------------------------------------
/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/ios/Flutter/ephemeral/flutter_lldbinit:
--------------------------------------------------------------------------------
1 | #
2 | # Generated file, do not edit.
3 | #
4 |
5 | command script import --relative-to-command-file flutter_lldb_helper.py
6 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @main
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-1024.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29-ipad.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "author" : "xcode",
4 | "version" : 1
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images.
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/yw_1222_baichuan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/Assets.xcassets/yw_1222_baichuan.jpg
--------------------------------------------------------------------------------
/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
--------------------------------------------------------------------------------
/ios/Runner/Runner.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | aps-environment
6 | development
7 | com.apple.developer.associated-domains
8 |
9 | com.apple.developer.networking.wifi-info
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/ios/Runner/mtopsdk_configuartion.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | DefaultID
6 | OPEN
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner/yw_1222_baichuan.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ios/Runner/yw_1222_baichuan.jpg
--------------------------------------------------------------------------------
/ios/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Flutter
2 | import UIKit
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/FMDB.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/Flutter.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/Pods-Runner.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/ReachabilitySwift.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/ali_bc_taoke_sdk.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/connectivity_plus.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/dataoke_sdk.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/dd_check_plugin.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/dd_models.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/file_selector_ios.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/image_picker_ios.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/network_info_plus.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/package_info.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/path_provider_foundation.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/permission_handler_apple.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/saver_gallery.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/shared_preferences_foundation.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/sqflite.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/url_launcher_ios.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/ios/build/ios/Pods.build/Release-iphonesimulator/webview_flutter_wkwebview.build/dgph:
--------------------------------------------------------------------------------
1 | DGPH1.04Jul 8 202305:44:03 / Users ldd flutter_simple_shop ios Pods
--------------------------------------------------------------------------------
/lib/api/model/email_register_params.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'email_register_params.freezed.dart';
4 | part 'email_register_params.g.dart';
5 |
6 | @freezed
7 | sealed class EmailRegisterParams with _$EmailRegisterParams {
8 | const factory EmailRegisterParams({
9 | @JsonKey(name: 'email') @Default('') String email,
10 | @JsonKey(name: 'code') @Default('') String code,
11 | @JsonKey(name: 'password') @Default('') String password,
12 | }) = _EmailRegisterParams;
13 |
14 | factory EmailRegisterParams.fromJson(Map json) =>
15 | _$EmailRegisterParamsFromJson(json);
16 | }
17 |
--------------------------------------------------------------------------------
/lib/api/model/get_email_valid_code.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'get_email_valid_code.freezed.dart';
4 | part 'get_email_valid_code.g.dart';
5 |
6 | @freezed
7 | sealed class GetEmailValidCodeParams with _$GetEmailValidCodeParams {
8 | const factory GetEmailValidCodeParams({
9 | @JsonKey(name: 'email') @Default('') String email,
10 | }) = _GetEmailValidCodeParams;
11 |
12 | factory GetEmailValidCodeParams.fromJson(Map json) =>
13 | _$GetEmailValidCodeParamsFromJson(json);
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/model/get_email_valid_code.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'get_email_valid_code.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _GetEmailValidCodeParams _$GetEmailValidCodeParamsFromJson(
10 | Map json,
11 | ) => _GetEmailValidCodeParams(email: json['email'] as String? ?? '');
12 |
13 | Map _$GetEmailValidCodeParamsToJson(
14 | _GetEmailValidCodeParams instance,
15 | ) => {'email': instance.email};
16 |
--------------------------------------------------------------------------------
/lib/api/model/login_params.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'login_params.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _LoginParams _$LoginParamsFromJson(Map json) => _LoginParams(
10 | logintype: json['loginType'] as String? ?? '',
11 | password: json['password'] as String? ?? '',
12 | loginnumber: json['loginNumber'] as String? ?? '',
13 | );
14 |
15 | Map _$LoginParamsToJson(_LoginParams instance) =>
16 | {
17 | 'loginType': instance.logintype,
18 | 'password': instance.password,
19 | 'loginNumber': instance.loginnumber,
20 | };
21 |
--------------------------------------------------------------------------------
/lib/api/new/category_api.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class MyNewApiByCategoryApi extends MyBaseApi> {
4 | MyNewApiByCategoryApi() : super('/tkapi/api/v1/dtk/apis/categorys');
5 |
6 | @override
7 | List covertToModel(DartTypeModel data, RequestParams param) {
8 | if (data.whenOrNull(json: (v) => v['data']) case final List list
9 | when list.isNotEmpty) {
10 | return List.from(list.map(Category.fromJson));
11 | }
12 | return [];
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/new/full_api.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | abstract class MyFullApi extends MyBaseApi {
4 | MyFullApi() : super('', httpMethod: HttpMethod.get);
5 | }
6 |
--------------------------------------------------------------------------------
/lib/api/new/get_user_by_token.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class GetUserByTokenApi extends MyBaseApi {
4 | GetUserByTokenApi() : super('/api/get-user-by-token');
5 |
6 | @override
7 | MyUser covertToModel(DartTypeModel data, RequestParams param) {
8 | final map = data.tryGetMap;
9 | if (map != null) {
10 | return MyUser.fromJson(map);
11 | }
12 | throw const BaseApiException.businessException(message: '获取用户信息失败');
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/new/hot_search_api.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class MyNewApiByHotSearch extends MyBaseApi> {
4 | MyNewApiByHotSearch() : super('/tkapi/api/v1/dtk/apis/hot-search-worlds');
5 |
6 | @override
7 | List covertToModel(DartTypeModel data, RequestParams param) {
8 | if (data.whenOrNull(json: (v) => v['data']) case final List list
9 | when list.isNotEmpty) {
10 | return List.from(list.map(HotSearchWorlds.fromJson));
11 | }
12 | return [];
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/new/models.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'models.freezed.dart';
4 |
5 | part 'models.g.dart';
6 |
7 | @freezed
8 | sealed class TKCarousel with _$TKCarousel {
9 | const TKCarousel._();
10 |
11 | const factory TKCarousel({
12 | @JsonKey(name: 'activityID') @Default('') String activityID,
13 | @JsonKey(name: 'link') @Default('') String link,
14 | @JsonKey(name: 'sourceType') @Default(0) int sourceType,
15 | @JsonKey(name: 'topicID') @Default(0) int topicID,
16 | @JsonKey(name: 'topicImage') @Default('') String topicImage,
17 | @JsonKey(name: 'topicName') @Default('') String topicName,
18 | }) = _TKCarousel;
19 |
20 | factory TKCarousel.fromJson(dynamic json) => _$TKCarouselFromJson(json);
21 | }
22 |
--------------------------------------------------------------------------------
/lib/api/new/product_detail_info.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class MyNewApiDetailInfo extends MyBaseApi {
4 | MyNewApiDetailInfo() : super('/tkapi/api/v1/dtk/apis/product-detail-all/');
5 |
6 | @override
7 | DetailBaseDataResult covertToModel(DartTypeModel data, RequestParams param) {
8 | if (data.whenOrNull(json: (value) => value['data'])
9 | case final Map map) {
10 | return DetailBaseDataResult.fromJson(map);
11 | }
12 | throw const BaseApiException.businessException(message: '获取产品失败');
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/new/search_key_word_api.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class MySearchKeyWordApi extends MyBaseApi> {
4 | MySearchKeyWordApi()
5 | : super("/tkapi/api/v1/dtk/apis/search-worlds",
6 | httpMethod: HttpMethod.get);
7 |
8 | @override
9 | List covertToModel(DartTypeModel data, RequestParams param) {
10 | return data.whenOrNull(
11 | json: (value) {
12 | if (value['data']['hotWords'] case final List list) {
13 | return list.asStringList;
14 | }
15 | return null;
16 | },
17 | ) ??
18 | [];
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/api/new/super_search_api.dart:
--------------------------------------------------------------------------------
1 | part of "part.dart";
2 |
3 | ///超级搜索接口
4 | class SuperSearchApi extends MyBaseApi> {
5 | SuperSearchApi() : super("/tkapi/api/v1/dtk/apis/super-search");
6 |
7 | @override
8 | List covertToModel(DartTypeModel data, RequestParams param) {
9 | if (data.whenOrNull(json: (value) => value['data']['list']) case final List datas) {
10 | return List.from(datas.map(Product.fromJson));
11 | }
12 | return [];
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/new/test.dart:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/api/new/test.dart
--------------------------------------------------------------------------------
/lib/api/new/text_api.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | ///字典列表api
4 | ///
5 | class MyTextModeListApi extends MyBaseApi> {
6 | MyTextModeListApi()
7 | : super("/api/blog/getTextAll", httpMethod: HttpMethod.get);
8 |
9 | @override
10 | List covertToModel(DartTypeModel data, RequestParams param) {
11 | if (data.whenOrNull(json: (value) => value['data'])
12 | case final List data) {
13 | return List.from(data.map(TextModel.fromJson));
14 | }
15 | return [];
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/lib/api/new/topic_products.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | //主题商品
4 | class NewApiByTopicProducts extends MyBaseApi> {
5 | NewApiByTopicProducts() : super('/tkapi/api/v1/dtk/apis/topic-goods');
6 |
7 | @override
8 | List covertToModel(DartTypeModel data, RequestParams param) {
9 | if (data.whenOrNull(json: (v) => v['data']) case final List list
10 | when list.isNotEmpty) {
11 | return List.from(list.map(Product.fromJson));
12 | }
13 | return [];
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/lib/api/new/zhe_app_key_api.dart:
--------------------------------------------------------------------------------
1 | part of 'part.dart';
2 |
3 | class MyNewApiByZhetaokeAppKey extends MyBaseApi {
4 | MyNewApiByZhetaokeAppKey() : super('/api/zhe/app-key');
5 |
6 | @override
7 | String covertToModel(DartTypeModel data, RequestParams param) {
8 | if (data.whenOrNull(json: (value) => value['data']) case final String appKey
9 | when appKey.isNotEmpty) {
10 | return appKey;
11 | }
12 | throw const BaseApiException.businessException(
13 | message: '获取折淘客APP Key失败,请检查');
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/lib/api/report.dart:
--------------------------------------------------------------------------------
1 | part of 'apis.dart';
2 |
3 | ///添加举报api
4 | class MyApiWithAddReport extends AppCoreApiWithT {
5 | MyApiWithAddReport() : super('/api/report/save', HttpMethod.post);
6 |
7 | @override
8 | Report fromJson(Map json) => Report.fromJson(json);
9 | }
10 |
11 | ///我举报过的内容
12 | class MyApiWithReportList extends MyAppCoreApi {
13 | MyApiWithReportList() : super('/api/report/find-by-page');
14 | }
15 |
--------------------------------------------------------------------------------
/lib/api/tkapi.dart:
--------------------------------------------------------------------------------
1 | part of 'apis.dart';
2 |
3 | ///猜你喜欢
4 | class MyTaokeApiWithSimilarProducts extends MyAppCoreApi {
5 | MyTaokeApiWithSimilarProducts() : super('/tkapi/api/v1/dtk/apis/similar');
6 | }
7 |
8 | /// 线报
9 | /// GET /tkapi/api/v1/dtk/apis/speider
10 | /// 接口ID:90267022
11 | /// 接口地址:https://app.apifox.com/link/project/2906745/apis/api-90267022
12 | class TkXianbaoApi extends AppCoreApiWithT {
13 | TkXianbaoApi() : super('/tkapi/api/v1/dtk/apis/speider', HttpMethod.get);
14 |
15 | @override
16 | XbData fromJson(Map json) => XbData.fromJson(json);
17 | }
18 |
--------------------------------------------------------------------------------
/lib/api/user.dart:
--------------------------------------------------------------------------------
1 | part of 'apis.dart';
2 |
3 | class MyUserOrderListApi extends MyAppCoreApi with ApiPageMixin {
4 | MyUserOrderListApi() : super('/api/app/order/list');
5 | }
6 |
--------------------------------------------------------------------------------
/lib/cache/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | import 'package:dd_js_util/dd_js_util.dart';
4 |
5 | part 'privacy.dart';
6 |
--------------------------------------------------------------------------------
/lib/cache/privacy.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class PrivacyCache extends CacheBase {
4 | @override
5 | String get boxName => "privacy-cache";
6 | String keyName = "isAgree";
7 |
8 | ///是否已经同意了隐私政策
9 | Future isAgree() async {
10 | final result = await getValue(keyName, defaultValue: false);
11 | return result ?? false;
12 | }
13 |
14 | ///更新状态
15 | Future changePrivacyState(bool value) async {
16 | await setValue(keyName, value);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/common/base_provider.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | mixin BaseProvider on ChangeNotifier {
4 | bool initLoading = false;
5 |
6 | void setLoading(bool value) {
7 | initLoading = value;
8 | notifyListeners();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/lib/common/components/jd/jd_types_model.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | class JdTypeModel {
4 | String name;
5 | String id;
6 |
7 | JdTypeModel({required this.id, required this.name});
8 | }
9 |
--------------------------------------------------------------------------------
/lib/common/components/pdd/resp.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | class PddRecommendListResp extends LoadingMoreBase {
4 | int pageindex = 0;
5 | final bool _hasMore = true;
6 | bool forceRefresh = false;
7 |
8 | @override
9 | Future loadData([bool isLoadMoreAction = false]) async {
10 | return true;
11 | }
12 |
13 | @override
14 | bool get hasMore => _hasMore;
15 | }
16 |
--------------------------------------------------------------------------------
/lib/common/components/通用下拉列表,可以放在任何位置:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/common/components/通用下拉列表,可以放在任何位置
--------------------------------------------------------------------------------
/lib/common/extend/string.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | extension StringExtend on String {
4 | Future saveToCaceh(String saveKey) async {
5 | final token = TokenCache();
6 | token.setValue(saveKey, this);
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/lib/common/widgets/hot.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | class Hot extends StatelessWidget {
4 | final String text;
5 |
6 | const Hot({super.key, required this.text});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Container(
11 | margin: const EdgeInsets.only(top: 2.0, left: 5.0),
12 | alignment: Alignment.centerLeft,
13 | child: Row(
14 | mainAxisSize: MainAxisSize.min,
15 | children: [
16 | SvgPicture.asset('assets/svg/hot.svg', width: 22, height: 22),
17 | Expanded(
18 | child: Text(
19 | text,
20 | style: TextStyle(fontSize: 10, color: Colors.grey.shade400),
21 | ),
22 | )
23 | ],
24 | ),
25 | );
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/lib/common/widgets/loading_mixin.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | mixin LoadingMixin on State {
4 | bool loadingState = false;
5 |
6 | String error = '';
7 |
8 | void setError(String msg) {
9 | if (mounted) {
10 | setState(() {
11 | error = msg;
12 | });
13 | }
14 | }
15 |
16 | void setLoading(bool value) {
17 | if (mounted) {
18 | setState(() {
19 | loadingState = value;
20 | });
21 | }
22 | }
23 |
24 | Widget errorMsgWidget() {
25 | return Center(
26 | child: Text(error),
27 | );
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/lib/common/widgets/simple_dialog.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | // 简单的弹窗
4 | class MySimpleDialog extends StatelessWidget {
5 | final String message;
6 | final String? title;
7 |
8 | const MySimpleDialog({super.key, required this.message, this.title});
9 |
10 | @override
11 | Widget build(BuildContext context) {
12 | return AlertDialog(
13 | title: title == null ? null : Text(title!),
14 | content: Text(message),
15 | );
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/lib/constant/color.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | const primaryColor = Color.fromRGBO(247, 67, 106, 1.0);
4 |
--------------------------------------------------------------------------------
/lib/constant/ext.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | extension StringExt on String {
4 | ///跳转到浏览器
5 | void urlLinkTo() {
6 | canLaunchUrlString(this).then((value) {
7 | if (value) {
8 | launchUrlString(this);
9 | }
10 | });
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/constant/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | import 'package:flutter/material.dart';
4 | import 'package:responsive_builder/responsive_builder.dart';
5 | import 'package:url_launcher/url_launcher_string.dart';
6 |
7 | part 'color.dart';
8 | part 'context.dart';
9 | part 'ext.dart';
10 | part 'string.dart';
11 | part 'style.dart';
12 |
--------------------------------------------------------------------------------
/lib/constant/string.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | /// github开源地址
4 | const shopGithubUrl = 'https://github.com/mdddj/flutter_simple_shop';
5 |
--------------------------------------------------------------------------------
/lib/constant/style.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | BoxShadow boxShaow = const BoxShadow(
4 | color: Color.fromRGBO(0, 0, 0, 0.3),
5 | offset: Offset(0.5, 0.5), //阴影xy轴偏移量
6 | blurRadius: 3.0, //阴影模糊程度
7 | spreadRadius: 1 //阴影扩散程度
8 | );
9 |
10 | /// 首页顶部分类的高度
11 | const kHomeCateTabHeight = 35.0;
12 |
13 | // 默认边距
14 | const kDefaultPadding = 8.0;
15 |
16 | // 圆角
17 | const kDefaultRadius = 8.0;
18 |
--------------------------------------------------------------------------------
/lib/controller/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'scroll_controllers.dart';
4 |
--------------------------------------------------------------------------------
/lib/controller/scroll_controllers.dart:
--------------------------------------------------------------------------------
1 | // Flutter imports:
2 | import 'package:flutter/material.dart';
3 |
4 | class ScrollControllers {
5 |
6 | static void jiujiuScrollController(dynamic fun1,dynamic fun2,bool showToTopBtn) {
7 | var mController = ScrollController();
8 | mController.addListener((){
9 | if (mController.offset < 250 && showToTopBtn) {
10 | fun1();
11 | } else if (mController.offset >= 200 && showToTopBtn == false) {
12 | fun2();
13 | }
14 | });
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/freezed/anking_list_param.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'anking_list_param.freezed.dart';
4 | part 'anking_list_param.g.dart';
5 |
6 | @freezed
7 | sealed class AnkingListParam with _$AnkingListParam {
8 | const AnkingListParam._();
9 |
10 | const factory AnkingListParam({
11 | @JsonKey(name: 'rank') @Default('') String rank,
12 | @JsonKey(name: 'cid') @Default('') String cid,
13 | }) = _AnkingListParam;
14 |
15 | factory AnkingListParam.fromJson(Map json) =>
16 | _$AnkingListParamFromJson(json);
17 | }
18 |
--------------------------------------------------------------------------------
/lib/freezed/anking_list_param.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'anking_list_param.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _AnkingListParam _$AnkingListParamFromJson(Map json) =>
10 | _AnkingListParam(
11 | rank: json['rank'] as String? ?? '',
12 | cid: json['cid'] as String? ?? '',
13 | );
14 |
15 | Map _$AnkingListParamToJson(_AnkingListParam instance) =>
16 | {'rank': instance.rank, 'cid': instance.cid};
17 |
--------------------------------------------------------------------------------
/lib/freezed/app_action_menu.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:freezed_annotation/freezed_annotation.dart';
3 |
4 | import '../widgets/app_action_menu.dart';
5 |
6 | part 'app_action_menu.freezed.dart';
7 |
8 | extension AppActionMenuEx on AppActionMenu {
9 | Future show(BuildContext context) async {
10 | await showModalBottomSheet(
11 | context: context,
12 | builder: (_) {
13 | return AppActionMenuWidget(actionMenu: this);
14 | },
15 | );
16 | }
17 | }
18 |
19 | ///操作
20 | @freezed
21 | sealed class AppActionMenu with _$AppActionMenu {
22 | const AppActionMenu._();
23 |
24 | const factory AppActionMenu({
25 | @JsonKey(name: 'title') @Default('') String title,
26 | required List actions,
27 | }) = _AppActionMenu;
28 | }
29 |
--------------------------------------------------------------------------------
/lib/freezed/appbar_menu.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'appbar_menu.freezed.dart';
4 | part 'appbar_menu.g.dart';
5 |
6 | extension AppbarMenuEx on AppbarMenu {
7 | String getAssetPath(bool isSelect) {
8 | return !isSelect ? 'assets/nav/$icon-n.png' : 'assets/nav/$icon.png';
9 | }
10 | }
11 |
12 | @freezed
13 | abstract class AppbarMenu with _$AppbarMenu {
14 | const AppbarMenu._();
15 |
16 | const factory AppbarMenu({
17 | @JsonKey(name: 'icon') @Default('') String icon,
18 | @JsonKey(name: 'title') @Default('') String title,
19 | }) = _AppbarMenu;
20 |
21 | factory AppbarMenu.fromJson(Map json) =>
22 | _$AppbarMenuFromJson(json);
23 | }
24 |
--------------------------------------------------------------------------------
/lib/freezed/appbar_menu.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'appbar_menu.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _AppbarMenu _$AppbarMenuFromJson(Map json) => _AppbarMenu(
10 | icon: json['icon'] as String? ?? '',
11 | title: json['title'] as String? ?? '',
12 | );
13 |
14 | Map _$AppbarMenuToJson(_AppbarMenu instance) =>
15 | {'icon': instance.icon, 'title': instance.title};
16 |
--------------------------------------------------------------------------------
/lib/freezed/application.dart:
--------------------------------------------------------------------------------
1 | import 'package:dd_js_util/model/models.dart';
2 | import 'package:hooks_riverpod/hooks_riverpod.dart';
3 | import 'package:logger/logger.dart';
4 |
5 | import '../api/apis.dart';
6 | import '../common/view.dart';
7 | import '../index.dart';
8 |
9 | final application = FutureProvider.family(
10 | (ref, ctx) async {
11 | try {
12 | await NavigatorUtil.showPrivacyPolicyDialog(ctx.context);
13 | await ref.read(categoryRiverpod).init();
14 | await KZheTaokeApiWithAppkeyGet.doRequest(ref);
15 | ref.read(userRiverpod.notifier).startAppTryLogin();
16 | return ref.read(appModel(ctx));
17 | } on BaseApiException catch (e, s) {
18 | Logger().e(e, error: e, stackTrace: s);
19 | rethrow;
20 | }
21 | });
22 |
--------------------------------------------------------------------------------
/lib/freezed/base_layout.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'base_layout.freezed.dart';
4 |
5 | ///布局
6 | @freezed
7 | abstract class BaseLayout with _$BaseLayout {
8 | const BaseLayout._();
9 |
10 | factory BaseLayout.mobile() = MobileLayout;
11 |
12 | factory BaseLayout.table() = TableLayout;
13 |
14 | factory BaseLayout.desktop() = DesktopLayout;
15 | }
16 |
--------------------------------------------------------------------------------
/lib/freezed/env_config.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'env_config.freezed.dart';
4 | part 'env_config.g.dart';
5 |
6 | @freezed
7 | abstract class EnvConfig with _$EnvConfig {
8 | const EnvConfig._();
9 |
10 | const factory EnvConfig({
11 | @JsonKey(name: 'port') @Default('') String port,
12 | @JsonKey(name: 'host') @Default('') String host,
13 | @JsonKey(name: 'debugMode') @Default(false) bool debugMode,
14 | @JsonKey(name: 'fontFamily') @Default('') String fontFamily,
15 | }) = _EnvConfig;
16 |
17 | factory EnvConfig.fromJson(Map json) =>
18 | _$EnvConfigFromJson(json);
19 | }
20 |
--------------------------------------------------------------------------------
/lib/freezed/home_menu.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:freezed_annotation/freezed_annotation.dart';
3 |
4 | part 'home_menu.freezed.dart';
5 |
6 | @freezed
7 | sealed class HomeMenu with _$HomeMenu {
8 | const HomeMenu._();
9 |
10 | const factory HomeMenu({
11 | @JsonKey(name: 'title') @Default('') String title,
12 | @JsonKey(name: 'svgPath') @Default('') String svgpath,
13 | Widget? icon,
14 | @JsonKey(name: 'image') @Default('') String image,
15 | String? routerPath,
16 | Object? extra,
17 | VoidCallback? onTap,
18 | VoidCallback? onLongTap,
19 | }) = _HomeMenu;
20 | }
21 |
--------------------------------------------------------------------------------
/lib/freezed/login_result_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | import '../provider/riverpod/model/my_user.dart';
4 |
5 | part 'login_result_model.freezed.dart';
6 | part 'login_result_model.g.dart';
7 |
8 | @freezed
9 | sealed class LoginResultModel with _$LoginResultModel {
10 | const factory LoginResultModel({
11 | @JsonKey(name: 'token') required String token,
12 | @JsonKey(name: 'user') required MyUser user,
13 | }) = _LoginResultModel;
14 |
15 | factory LoginResultModel.fromJson(Map json) =>
16 | _$LoginResultModelFromJson(json);
17 | }
18 |
--------------------------------------------------------------------------------
/lib/freezed/login_result_model.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'login_result_model.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _LoginResultModel _$LoginResultModelFromJson(Map json) =>
10 | _LoginResultModel(
11 | token: json['token'] as String,
12 | user: MyUser.fromJson(json['user'] as Map),
13 | );
14 |
15 | Map _$LoginResultModelToJson(_LoginResultModel instance) =>
16 | {'token': instance.token, 'user': instance.user};
17 |
--------------------------------------------------------------------------------
/lib/freezed/meituran_result.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'meituran_result.freezed.dart';
4 | part 'meituran_result.g.dart';
5 |
6 | @freezed
7 | sealed class MeituanResult with _$MeituanResult {
8 | const MeituanResult._();
9 |
10 | const factory MeituanResult({
11 | @JsonKey(name: 'data') @Default('') String data,
12 | @JsonKey(name: 'des') @Default('') String des,
13 | @JsonKey(name: 'status') @Default(0) int status,
14 | @JsonKey(name: 'successful') @Default(false) bool successful,
15 | }) = _MeituanResult;
16 |
17 | factory MeituanResult.fromJson(Map json) =>
18 | _$MeituanResultFromJson(json);
19 | }
20 |
--------------------------------------------------------------------------------
/lib/meet/list.dart:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | import 'package:dd_js_util/dd_js_util.dart';
6 |
7 | import '../api/apis.dart';
8 | import '../common/index.dart';
9 | import 'meet_model.dart';
10 |
11 |
12 | ///面基列表
13 | class MeetListLoadMore extends SimpleLoadingMoreBaes {
14 | @override
15 | SelectMeetListData get api => SelectMeetListData();
16 |
17 |
18 | @override
19 | bool transformIsNomore(WrapJson data) {
20 | return data.getValue('last') as bool;
21 | }
22 |
23 | @override
24 | List transformResponseData(WrapJson data) {
25 | return List.from(data.getListValue('content').map(MeetModel.fromJson)).toList();
26 | }
27 |
28 |
29 |
30 | }
--------------------------------------------------------------------------------
/lib/modals/blog_category_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:dd_js_util/dd_js_util.dart';
2 | import 'package:freezed_annotation/freezed_annotation.dart';
3 |
4 | part 'blog_category_model.freezed.dart';
5 |
6 | part 'blog_category_model.g.dart';
7 |
8 | @freezed
9 | @Doc(message: "")
10 | sealed class BlogCategory with _$BlogCategory {
11 | const BlogCategory._();
12 |
13 | const factory BlogCategory({
14 | required int id,
15 | required String name,
16 | required String logo,
17 | required String intro,
18 | required int createTime,
19 | }) = _BlogCategory;
20 |
21 | factory BlogCategory.fromJson(Map json) =>
22 | _$BlogCategoryFromJson(json);
23 | }
24 |
--------------------------------------------------------------------------------
/lib/modals/dataoke/ff_convert_convert_util.dart:
--------------------------------------------------------------------------------
1 | // Dart imports:
2 |
3 | import 'dart:convert';
4 |
5 | class FFConvert {
6 | FFConvert._();
7 |
8 | static T? convert(dynamic value) {
9 | if (value == null) {
10 | return null;
11 | }
12 | return json.decode(value.toString()) as T?;
13 | }
14 | }
15 |
16 | // 尝试类型装换 -- 列表类型
17 | List tryCoverList(String result, String paramsKey) {
18 | if (result.isEmpty) return [];
19 | try {
20 | final map = jsonDecode(result);
21 | if (map[paramsKey] is List) {
22 | return map[paramsKey] as List;
23 | }
24 | } catch (_) {
25 | return [];
26 | }
27 |
28 | return [];
29 | }
30 |
--------------------------------------------------------------------------------
/lib/modals/dataoke/jd/jd_req_param.dart:
--------------------------------------------------------------------------------
1 | class JdReqParam {
2 | /// 频道ID:1-好券商品,2-精选卖场,10-9.9包邮,15-京东配送,22-实时热销榜,23-为你推荐,24-数码家电,25-超市,26-母婴玩具,27-家具日用,28-美妆穿搭,30-图书文具,31-今日必推,32-京东好物,33-京东秒杀,34-拼购商品,40-高收益榜,41-自营热卖榜,108-秒杀进行中,109-新品首发,110-自营,112-京东爆品,125-首购商品,129-高佣榜单,130-视频商品,153-历史最低价商品榜,210-极速版商品,238-新人价商品,247-京喜9.9,249-京喜秒杀,315-秒杀未开始,340-时尚趋势品,341-3C新品,342-智能新品,343-3C长尾商品,345-时尚新品,346-时尚爆品,1001-选品库
3 | final int eliteId;
4 |
5 | JdReqParam({required this.eliteId});
6 |
7 | Map toJson() {
8 | final map = {};
9 | map['eliteId'] = eliteId;
10 | return map;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/modals/dd/carousel.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'carousel.freezed.dart';
4 |
5 | part 'carousel.g.dart';
6 |
7 | @freezed
8 | sealed class Carousel with _$Carousel {
9 | const Carousel._();
10 |
11 | const factory Carousel({
12 | @Default('') String topicImage,
13 | @Default('') String activityId,
14 | @Default(0) int topicId,
15 | @Default(0) int sourceType,
16 | @Default('') String link,
17 | @Default('') String topicName,
18 | }) = _Carousel;
19 |
20 | factory Carousel.fromJson(Map json) =>
21 | _$CarouselFromJson(json);
22 | }
23 |
--------------------------------------------------------------------------------
/lib/modals/dd_sort.dart:
--------------------------------------------------------------------------------
1 | class DdSort {
2 | /// 综合排序
3 | static const String defaultSort = '0';
4 |
5 | /// 商品上架时间从高到低
6 | static const String timeHighToLow = '1';
7 |
8 | /// 销量从高到低
9 | static const String salesHighToLow = '2';
10 |
11 | /// 领券量从高到低
12 | static const String couponHighToLow = '3';
13 |
14 | /// 佣金比例从高到低
15 | static const String commissionHighToLow = '4';
16 |
17 | /// 价格(券后价)从高到低
18 | static const String priceHighToLow = '5';
19 |
20 | /// 价格(券后价)从低到高
21 | static const String priceLowToHigh = '6';
22 | }
23 |
--------------------------------------------------------------------------------
/lib/modals/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export './blog_category_model.dart';
4 | export './coupon_data.dart';
5 | export './favorites_model.dart';
6 | export './goods_detail_image.dart';
7 | export './goods_info.dart';
8 | export './goods_list_modal.dart';
9 | export './order_list_model.dart';
10 | export './page_info_model.dart';
11 | export './params_model/store_detail_params_model.dart';
12 | export './params_model/store_params_model.dart';
13 | export './pdd_detail_model.dart';
14 | export './pdd_product.dart';
15 | export './pdd_search_item_model.dart';
16 | export './rank_data.dart';
17 | export 'shop_info.dart';
18 |
--------------------------------------------------------------------------------
/lib/modals/params_model/store_detail_params_model.dart:
--------------------------------------------------------------------------------
1 |
2 | /// 品牌详情参数
3 | class StoreDetailParamsModel{
4 |
5 | String brandId;
6 | String pageSize;
7 | String pageId;
8 | StoreDetailParamsModel(this.brandId,this.pageSize,this.pageId);
9 | }
--------------------------------------------------------------------------------
/lib/modals/params_model/store_params_model.dart:
--------------------------------------------------------------------------------
1 |
2 | /// 加载品牌列表的参数
3 | class StoreListParamsModel {
4 |
5 | String cid;
6 | String pageId;
7 | String pageSize;
8 |
9 | StoreListParamsModel(this.cid,this.pageId,this.pageSize);
10 |
11 | }
--------------------------------------------------------------------------------
/lib/network/interceptor/params_token_interceptor.dart:
--------------------------------------------------------------------------------
1 | // Package imports:
2 | import 'package:dio/dio.dart';
3 |
4 | // Project imports:
5 | import '../http_request.dart';
6 |
7 | /// 参数拦截器
8 | class ParamsTokenInterceptor extends Interceptor{
9 |
10 | final String token;
11 | ParamsTokenInterceptor(this.token);
12 |
13 | @override
14 | void onRequest(RequestOptions options, RequestInterceptorHandler handler) {
15 | options.headers[HttpRequest.paramsHeaderKey] = token;
16 | options.headers['Accept'] = 'application/json';
17 | super.onRequest(options, handler);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/lib/network/network.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
--------------------------------------------------------------------------------
/lib/pages/activity_page/活动页面:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/activity_page/活动页面
--------------------------------------------------------------------------------
/lib/pages/category_page/left_widget.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | class LeftWidgetItem extends StatelessWidget {
4 | final Category item;
5 | final bool isCurrent;
6 |
7 | const LeftWidgetItem({required this.item, required this.isCurrent, super.key});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Container(
12 | height: 50,
13 | alignment: Alignment.center,
14 | decoration: BoxDecoration(color: isCurrent ? context.primaryColor : null),
15 | child: Text(
16 | item.cname,
17 | style: TextStyle(color: isCurrent ? context.colorScheme.inversePrimary : null),
18 | ),
19 | );
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/lib/pages/config/mobile.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | class MobileApp extends StatelessWidget {
4 | final StatefulNavigationShell child;
5 |
6 | const MobileApp({super.key, required this.child});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Scaffold(
11 | body: child,
12 | bottomNavigationBar: AppBottomNav(
13 | currentIndex: child.currentIndex, onIndexChange: child.goBranch),
14 | );
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/pages/dynamic/loading.dart:
--------------------------------------------------------------------------------
1 | // Flutter imports:
2 | import 'package:flutter/material.dart';
3 | import 'package:hooks_riverpod/hooks_riverpod.dart';
4 |
5 | // Project imports:
6 | import '../../widgets/index.dart';
7 | import 'pyq_riverpod.dart';
8 |
9 | class PyQLoading extends ConsumerWidget {
10 | const PyQLoading({super.key});
11 |
12 | @override
13 | Widget build(BuildContext context, WidgetRef ref) {
14 | final loading = ref.watch(pyqRiverpod.select((value) => value.loading));
15 | Widget container = Container();
16 | if (loading) {
17 | container = const LoadingWidget();
18 | }
19 | return SliverToBoxAdapter(
20 | child: container,
21 | );
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/pages/dynamic/wph_riverpod.dart:
--------------------------------------------------------------------------------
1 |
2 |
3 | // Flutter imports:
4 | import 'package:flutter/material.dart';
5 | import 'package:hooks_riverpod/hooks_riverpod.dart';
6 |
7 |
8 |
9 | final wphRiveroid = ChangeNotifierProvider((ref) => WphState());
10 | /// 唯品会
11 | class WphState extends ChangeNotifier {
12 |
13 | List products = [];
14 |
15 | int page = 1;
16 |
17 |
18 | Future init() async {
19 | }
20 |
21 |
22 | // 下一页
23 | Future nextPage() async {
24 | page ++ ;
25 | await init();
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/lib/pages/dynamic_page/state.dart:
--------------------------------------------------------------------------------
1 | class DynamicPageState {
2 | DynamicPageState() {
3 | ///Initialize variables
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/lib/pages/dynamic_page/view.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import '../../widgets/index.dart';
4 |
5 | // 动态发布页面
6 | class DynamicPagePage extends StatefulWidget {
7 | const DynamicPagePage({super.key});
8 |
9 | @override
10 | DynamicPagePageState createState() => DynamicPagePageState();
11 | }
12 |
13 | class DynamicPagePageState extends State {
14 | @override
15 | Widget build(BuildContext context) {
16 | return Scaffold(
17 | appBar: SimpleAppBar(title: '动态', actions: [
18 | TextButton(
19 | onPressed: () {},
20 | child: const Text('发布动态'),
21 | )
22 | ]),
23 | );
24 | }
25 |
26 | @override
27 | void dispose() {
28 | super.dispose();
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/lib/pages/index_page/desktop/components/appbar.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 |
3 | /// 桌面端的导航条
4 | class IndexAppbarWithDesktop extends StatelessWidget implements PreferredSizeWidget {
5 | const IndexAppbarWithDesktop({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context) {
9 | return AppBar(
10 | backgroundColor: Colors.white,
11 | elevation: 0,
12 | centerTitle: true,
13 | title: Container(
14 | color: Colors.grey,
15 | child: const Row(
16 | children: [Text('典典的小卖部')],
17 | ),
18 | ),
19 | );
20 | }
21 |
22 | @override
23 | Size get preferredSize => const Size.fromHeight(kToolbarHeight);
24 | }
25 |
--------------------------------------------------------------------------------
/lib/pages/index_page/desktop/components/title.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 |
3 | class AppTitle extends StatelessWidget {
4 | final String text;
5 |
6 | const AppTitle({super.key, required this.text});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Container(
11 | margin: const EdgeInsets.symmetric(vertical: kDefaultPadding),
12 | child: Text(
13 | text,
14 | style: context.textTheme.titleLarge?.copyWith(color: Colors.black, fontWeight: FontWeight.bold, fontSize: 15),
15 | ),
16 | );
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/pages/index_page/desktop/index.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 首页
4 | /// 桌面版本
5 | class IndexHomeV2 extends StatelessWidget {
6 | const IndexHomeV2({super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return CupertinoPageScaffold(
11 | child: ListView.builder(
12 | itemBuilder: itemBuilder,
13 | itemCount: 1,
14 | ));
15 | }
16 |
17 | Widget itemBuilder(BuildContext context, int index) {
18 | switch (index) {
19 | case 0:
20 | return const AppTitle(text: '典典的小卖部');
21 | default:
22 | return Container();
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/lib/pages/index_page/model/index_carousel_item_model.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 2020年11月18日09:45:15
4 | /// 轮播图模型设计
5 | /// v2.0
6 | class IndexCarouselItemModel {
7 | String? imageUrl; // 图片地址
8 | String? title; // 标题
9 | String? intro; // 介绍
10 | String? clickType; // 点击事件跳转类型
11 | String? params;
12 | VoidCallback? onTap;
13 |
14 | IndexCarouselItemModel({this.imageUrl, this.title, this.intro, this.clickType, this.params, this.onTap}); // 参数
15 | }
16 |
--------------------------------------------------------------------------------
/lib/pages/index_page/model/index_grid_menu_item_model.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 2020年11月17日 22:41:38
4 | /// 首页网格菜单模型
5 | /// v2.0
6 | class IndexGridMenuItemModel {
7 | String title; // 标题
8 | String iconUrl; // icon 网络地址
9 | IndexGridMenuItemModelClickModel clickType; // 响应事件类型
10 | Map? params;
11 | Widget? widget; // 跳转到的页面
12 | VoidCallback? onTap; // 点击事件
13 |
14 | IndexGridMenuItemModel(this.title, this.iconUrl, this.clickType, {this.params, this.widget, this.onTap}); // 参数
15 | }
16 |
17 | /// 点击事件响应类型
18 | enum IndexGridMenuItemModelClickModel {
19 | browser, // 跳转到浏览器BROWSER
20 | innerView, // 跳转到APP页面内INNER_VIEW
21 | taobao, // 跳转到淘宝appTAOBAO
22 | }
23 |
--------------------------------------------------------------------------------
/lib/pages/index_page/new/component/gridmenu/model.dart:
--------------------------------------------------------------------------------
1 | part of '../../../../index.dart';
2 |
3 | ///
4 | /// @Author 梁典典
5 | /// @Github 开源地址 https://github.com/mdddj/flutter_simple_shop
6 | /// @Description 功能描述 首页网格菜单模型
7 | /// @Date 创建时间 2021年7月2日 10:58:59
8 | ///
9 | class GridMenuModel {
10 | String title;
11 | String image;
12 |
13 | /// 如果是本地资源图片,必须是svg格式
14 | bool isAssets;
15 |
16 | VoidCallback onTap;
17 | Widget? icon;
18 |
19 | VoidCallback? onLongTap;
20 |
21 | GridMenuModel({required this.title, required this.image, required this.onTap, required this.isAssets, this.icon, this.onLongTap});
22 | }
23 |
--------------------------------------------------------------------------------
/lib/pages/index_page/new/component/products.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 |
3 | class IndexProductss extends ConsumerWidget {
4 | const IndexProductss({super.key});
5 |
6 | @override
7 | Widget build(BuildContext context, WidgetRef ref) {
8 | final list = ref.watch(indexStateRiverpod.select((value) => value.products));
9 | if (list.isEmpty) return const SliverToBoxAdapter();
10 | return ProductsList(list);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/pages/index_page/new/index_card_wrapper.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class IndexCardWrapper extends StatelessWidget {
4 | final Widget child;
5 |
6 | const IndexCardWrapper({super.key, required this.child});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Card(
11 | margin: EdgeInsets.zero,
12 | child: child,
13 | );
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/lib/pages/index_page/new/index_riverpod.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | final indexStateRiverpod = ChangeNotifierProvider((ref) => IndexState());
4 |
5 | /// 首页状态
6 | class IndexState extends ChangeNotifier {
7 | bool indexLoading = false;
8 |
9 | List products = [];
10 |
11 | // 每日榜单的商品列表
12 | List hotDayProducts = [];
13 |
14 | // 获取畅销榜单商品
15 | Future getHotDayProducts() async {
16 | notifyListeners();
17 | }
18 |
19 | /// 改变首页loading状态
20 | void changeLoadingState(bool value) {
21 | indexLoading = value;
22 | notifyListeners();
23 | }
24 |
25 | @Doc(message: '加载双列产品数据')
26 | Future fetch() async {}
27 |
28 | Future nextPage() async {
29 | await fetch();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/lib/pages/index_page/new/waimai/外卖相关.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/index_page/new/waimai/外卖相关.txt
--------------------------------------------------------------------------------
/lib/pages/index_page/public_widget_style.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | BoxDecoration box = const BoxDecoration(color: Colors.white, borderRadius: BorderRadius.all(Radius.circular(5)), boxShadow: [
4 | BoxShadow(
5 | color: Color.fromRGBO(0, 0, 0, 0.1),
6 | offset: Offset(1.0, 2.0), //阴影xy轴偏移量
7 | blurRadius: 5.0, //阴影模糊程度
8 | spreadRadius: -1 //阴影扩散程度
9 | )
10 | ]);
11 |
--------------------------------------------------------------------------------
/lib/pages/index_page/store/price_layout.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 价钱布局
4 | class PriceLayout extends StatelessWidget {
5 | final String original; // 原价
6 | final String discounts; // 优惠价
7 | const PriceLayout({super.key, required this.original, required this.discounts});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Wrap(
12 | children: [
13 | Text('¥ $original', style: context.textTheme.bodySmall?.copyWith(color: Colors.red)),
14 | if (discounts.isNotEmpty) Text('¥$discounts', maxLines: 1, overflow: TextOverflow.ellipsis, style: const TextStyle(fontSize: 12, color: Colors.grey, decoration: TextDecoration.lineThrough))
15 | ],
16 | );
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/pages/jiujiu_page/new/types.dart:
--------------------------------------------------------------------------------
1 | enum JiujiuTabTypes {
2 | recommend("推荐", "-1"),
3 | five('5.9元专区', '1'),
4 | ninenine('9.9元专区', '2'),
5 | nineteen('19.9元专区', '3');
6 |
7 | const JiujiuTabTypes(this.title, this.paramsValue);
8 |
9 | final String title;
10 | final String paramsValue;
11 | }
12 |
13 | const ninenineTypes = JiujiuTabTypes.values;
14 |
--------------------------------------------------------------------------------
/lib/pages/new_goods_list/components/sort_widget.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | class SortWidget extends StatelessWidget {
4 | final String? title;
5 | final bool? current;
6 | final Widget? icon;
7 |
8 | const SortWidget({this.title, this.current, this.icon, super.key}); //是否选中状态
9 |
10 | @override
11 | Widget build(BuildContext context) {
12 | return Tab(
13 | child: Row(
14 | mainAxisAlignment: MainAxisAlignment.center,
15 | children: [Text(title!), icon ?? Container()],
16 | ));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/pages/new_goods_list/v2/appbar.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 |
4 | ///导航
5 | class CategoryAppbar extends StatelessWidget implements PreferredSizeWidget {
6 | const CategoryAppbar({super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return AppBar(
11 | title: const Text("产品列表"),
12 | );
13 | }
14 |
15 | @override
16 | Size get preferredSize => const Size.fromHeight(kToolbarHeight+42);
17 | }
--------------------------------------------------------------------------------
/lib/pages/new_goods_list/v2/goods_list_params_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:dio/dio.dart';
2 | import 'package:freezed_annotation/freezed_annotation.dart';
3 |
4 | import '../../../modals/dataoke/category.dart';
5 | import '../../../modals/dd/product.dart';
6 | import '../../../modals/dd_sort.dart';
7 |
8 | part 'goods_list_params_model.freezed.dart';
9 |
10 | @unfreezed
11 | sealed class GoodsListParamsModel with _$GoodsListParamsModel {
12 | factory GoodsListParamsModel({
13 | required Category category,
14 | Subcategory? subcategor,
15 | @Default(DdSort.defaultSort) String sort,
16 | required List products,
17 | required int page,
18 | required bool initLoading,
19 | CancelToken? cancelToken,
20 | }) = _GoodsListParamsModel;
21 | }
22 |
--------------------------------------------------------------------------------
/lib/pages/new_goods_list/v2/page.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | import '../../../modals/dataoke/category.dart';
4 | import '../../index.dart';
5 |
6 | class CategoryListPage extends StatelessWidget {
7 | final Category category;
8 |
9 | const CategoryListPage({super.key, required this.category});
10 |
11 | @override
12 | Widget build(BuildContext context) {
13 | return Scaffold(
14 | appBar: AppBar(
15 | title: Text(category.cname),
16 | ),
17 | body: CategoryGoodsList(category),
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/pages/new_goods_list/商品列表.txt.dart:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/new_goods_list/商品列表.txt.dart
--------------------------------------------------------------------------------
/lib/pages/order/model.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | ///订单状态
4 | enum UserOrderStatus {
5 | all("全部", ""),
6 | payment("已付款", "Payment"),
7 | settlement("已结算", "Settlement"),
8 | success("成功", "Success"),
9 | expiration("已失效", "Expiration");
10 | const UserOrderStatus(this.title, this.requestParam);
11 |
12 | final String title;
13 | final String requestParam;
14 | }
--------------------------------------------------------------------------------
/lib/pages/other_page/not_found_page.dart:
--------------------------------------------------------------------------------
1 | // Flutter imports:
2 | import 'package:flutter/material.dart';
3 |
4 | // 资源未找到
5 | class NotFoundPage extends StatelessWidget {
6 | final String? title;
7 | final String? desc;
8 |
9 | const NotFoundPage({this.title, this.desc, super.key});
10 |
11 | @override
12 | Widget build(BuildContext context) {
13 | return Scaffold(
14 | appBar: AppBar(
15 | title: Text(title ?? '404'),
16 | ),
17 | body: Text(desc ?? '资源未找到!'),
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/pages/panic_buying/components/appbar.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 导航条
4 | class AppbarWithPanicBuying extends StatelessWidget {
5 | const AppbarWithPanicBuying({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context) {
9 | return const SliverAppBar(
10 | centerTitle: true,
11 | title: Text('排行榜'),
12 | backgroundColor: Colors.transparent,
13 | iconTheme: IconThemeData(color: Colors.white),
14 | );
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/pages/panic_buying/components/list.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | class ProductsList extends StatelessWidget {
4 | final List products;
5 |
6 | const ProductsList(this.products, {super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | if (products.isEmpty) {
11 | return SliverToBoxAdapter(
12 | child: Container(),
13 | );
14 | }
15 | return SliverPadding(padding: const EdgeInsets.all(8), sliver: SliverWaterfallFlow.count(crossAxisCount: 2, crossAxisSpacing: 8, mainAxisSpacing: 8, children: products.map(itemBuilder).toList()));
16 | }
17 |
18 | Widget itemBuilder(ProductModel item) {
19 | return utils.widgetUtils.renderProductCard(item);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/lib/pages/panic_buying/components/view_status.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 页面状态显示
4 | class ViewStatusWithPanicBuy extends ConsumerWidget {
5 | const ViewStatusWithPanicBuy({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context, WidgetRef ref) {
9 | final changeLoading = ref.watch(panicBuyingModelRiverpod.select((value) => value.changeLoading));
10 | if (changeLoading) {
11 | return const LoadingWidget();
12 | }
13 | return const SizedBox();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/lib/pages/panic_buying/抢购_排行榜_页面.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/panic_buying/抢购_排行榜_页面.txt
--------------------------------------------------------------------------------
/lib/pages/pinduoduo/平多多页面:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/pinduoduo/平多多页面
--------------------------------------------------------------------------------
/lib/pages/public_detail/abs.dart:
--------------------------------------------------------------------------------
1 | // Project imports:
2 | import 'model.dart';
3 |
4 | abstract class PublicDetailViewAbs {
5 |
6 | /// 加载所需数据
7 | Future fetchData();
8 |
9 | /// 点击分享事件
10 | Future onShare();
11 |
12 | /// 点击了领券按钮
13 | Future onGetCoupon();
14 |
15 | /// 获取类型名字
16 | String getTypeLabel();
17 | }
18 |
--------------------------------------------------------------------------------
/lib/pages/public_detail/通用详情页面:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/public_detail/通用详情页面
--------------------------------------------------------------------------------
/lib/pages/user_home_page/ext.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | ///riverpod 扩展函数
4 | extension RefExt on WidgetRef {
5 | ///获取当前已经登录的用户
6 | MyUser? get user => watch(userRiverpod.select((value) => value.user));
7 |
8 | ///判断用户是否已经登录
9 | bool get isLogin => user != null;
10 |
11 | bool isLoginFun() {
12 | return isLogin;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/header/money_count.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | /// 提现相关
4 | class MoneyCounterWidget extends StatelessWidget {
5 | const MoneyCounterWidget({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context) {
9 | return GridView.builder(
10 | gridDelegate:
11 | const SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3),
12 | itemBuilder: _itemBuilder);
13 | }
14 |
15 | Widget _itemBuilder(BuildContext innerContext, int index) {
16 | return const Column(
17 | children: [Text('100'), Text('累计提现')],
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/login/login_base.dart:
--------------------------------------------------------------------------------
1 | import '../../../provider/riverpod/model/my_user.dart';
2 |
3 | abstract class LoginBase {
4 |
5 |
6 | /// 设置用户信息到状态管理中
7 | /// [user] -
8 | void setUserInfoToProvider(MyUser user);
9 |
10 | /// 保存token到缓存
11 | /// [token] -
12 | void setTokenToCatch(String token);
13 |
14 | ///退出登录
15 | void logout();
16 | }
--------------------------------------------------------------------------------
/lib/pages/user_home_page/setting/update_city.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | ///设置-修改城市
4 | class UpdateUserCityPage extends ConsumerWidget {
5 | const UpdateUserCityPage({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context, WidgetRef ref) {
9 | return UpdateStringAttrWidget(
10 | paramsName: "city",
11 | title: "修改城市",
12 | initHintValue: "${ref.user?.city}",
13 | successCallback: (str) {
14 | ref.read(userRiverpod.notifier).updateUser((oldModel) => oldModel.copyWith(city: str));
15 | },
16 | );
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/setting/update_job.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | ///设置-修改工作
4 | class UpdateUserJobPage extends ConsumerWidget {
5 | const UpdateUserJobPage({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context, WidgetRef ref) {
9 | return UpdateStringAttrWidget(
10 | paramsName: "job",
11 | title: "修改工作",
12 | initHintValue: "${ref.user?.job}",
13 | successCallback: (str) {
14 | ref.read(userRiverpod.notifier).updateUser((oldModel) => oldModel.copyWith(job: str));
15 | },
16 | );
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/setting/update_name.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | class UpdateUserNamePage extends ConsumerWidget {
4 | const UpdateUserNamePage({super.key});
5 |
6 | @override
7 | Widget build(BuildContext context, WidgetRef ref) {
8 | return UpdateStringAttrWidget(
9 | paramsName: "name",
10 | title: "修改昵称",
11 | initHintValue: "${ref.user?.nickName}",
12 | successCallback: (str) {
13 | ref.read(userRiverpod.notifier).updateUser((MyUser oldModel) => oldModel.copyWith(nickName: str));
14 | });
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/white/components/more_action_bottomsheet.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 |
3 | // 更多操作
4 | class MoreActions extends StatelessWidget {
5 | final List actions;
6 |
7 | const MoreActions({super.key, required this.actions});
8 |
9 | /// 显示
10 | static Future show(List actions, BuildContext context) async {
11 | await showModalBottomSheet(context: context, builder: (_) => MoreActions(actions: actions));
12 | }
13 |
14 | @override
15 | Widget build(BuildContext context) {
16 | return SingleChildScrollView(
17 | child: Column(
18 | children: actions.map((e) => e).toList(),
19 | ),
20 | );
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/white/components/search_goods.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 |
3 | class SearchProduct extends StatelessWidget {
4 | const SearchProduct({super.key});
5 |
6 | @override
7 | Widget build(BuildContext context) {
8 | return Scaffold(
9 | appBar: AppBar(
10 | title: const Text('搜索产品'),
11 | ),
12 | body: SizedBox(
13 | height: context.kBodyHeight,
14 | child: const Column(
15 | children: [
16 | SizedBox(
17 | height: kToolbarHeight,
18 | child: CupertinoSearchTextField(),
19 | ),
20 | Expanded(child: ProductSearchMini(keyWorlds: ''))
21 | ],
22 | ),
23 | ),
24 | );
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/lib/pages/user_home_page/white/views/markdown_preview.dart:
--------------------------------------------------------------------------------
1 | part of '../../../index.dart';
2 | // Package imports:
3 |
4 | /// 预览markdown
5 | class MarkDownPreview extends StatelessWidget {
6 | final String data;
7 |
8 | const MarkDownPreview({super.key, required this.data});
9 |
10 | @override
11 | Widget build(BuildContext context) {
12 | return Scaffold(
13 | appBar: AppBar(
14 | title: const Text('预览'),
15 | ),
16 | body: SingleChildScrollView(
17 | child: Column(
18 | children: [MarkdownBody(data: data)],
19 | ),
20 | ),
21 | );
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/pages/zhe/折上折页面.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/lib/pages/zhe/折上折页面.txt
--------------------------------------------------------------------------------
/lib/provider/dtk_index_goods_provider.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class DtkIndexGoodsModal extends ChangeNotifier {
4 | List? goods = [];
5 |
6 | int page = 1; // 默认加载商品第一页数据
7 | List indexGoods = []; // 首页商品列表
8 |
9 | bool noMore = false; // 是否存在下一页 ,false 有,true没有下一页了
10 | bool isLoading = false; // 是否在加载数据中
11 |
12 | // 获取商品列表数据
13 | Future getGoodsList(int page) async {}
14 |
15 | void setLoadingState(bool isLoading) {
16 | isLoading = isLoading;
17 | notifyListeners();
18 | }
19 |
20 | void getNextPageData() {
21 | page++;
22 | getGoodsList(page);
23 | }
24 |
25 | // 获取榜单数据
26 | void getRankGoodsList() async {}
27 | }
28 |
--------------------------------------------------------------------------------
/lib/provider/jd_products_provider.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | final jdProductsRiverpod = ChangeNotifierProvider((ref) => JdProductsProviderState());
4 |
5 | /// 京东产品的状态
6 | class JdProductsProviderState extends ChangeNotifier {
7 | List products = [];
8 | String? selectProductTypeId;
9 |
10 | /// 设置当前选中的类别
11 | void setSelectProductTypeId(String? id) {
12 | selectProductTypeId = id;
13 | notifyListeners();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/base.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | extension RiverpodZhetaokeAppKeyStateEx on WidgetRef {
4 | String get zheAppKey => read(riverpodZhetaokeAppKeyState.notifier).state;
5 | }
6 |
7 | ///折淘客的APPkey
8 | final riverpodZhetaokeAppKeyState = StateProvider((ref) => '');
9 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/favorites/model.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | part 'model.freezed.dart';
4 |
5 | part 'model.g.dart';
6 |
7 | @unfreezed
8 | sealed class MyFavoritesModel with _$MyFavoritesModel {
9 | factory MyFavoritesModel({
10 | required String amount,
11 | required String arrivalPrice,
12 | required String createTime,
13 | required String endTime,
14 | required int id,
15 | required String imageUrl,
16 | required String productId,
17 | required String title,
18 | required String type,
19 | }) = _MyFavoritesModel;
20 |
21 | factory MyFavoritesModel.fromJson(dynamic json) =>
22 | _$MyFavoritesModelFromJson(json);
23 | }
24 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/favorites/riverpod.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | final riverpodWithFavorites = StateNotifierProvider((ref) => RiverpodFavoritesState());
4 |
5 | ///暂时弃用
6 | class RiverpodFavoritesState extends StateNotifier {
7 | RiverpodFavoritesState() : super(FavoritesStateModel(favorites: [], page: 0));
8 |
9 | ///加载用户的收藏夹数据
10 | Future loadData([bool isRefresh = false]) async {
11 | if (isRefresh) {
12 | state = FavoritesStateModel(favorites: [], page: 0);
13 | }
14 | await FavoritesFindListApi.doRequest(state.page);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/favorites/riverpod_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | import 'model.dart';
4 |
5 | part 'riverpod_model.freezed.dart';
6 |
7 | part 'riverpod_model.g.dart';
8 |
9 | @unfreezed
10 | sealed class FavoritesStateModel with _$FavoritesStateModel {
11 | factory FavoritesStateModel({
12 | required List favorites,
13 | required int page,
14 | }) = _FavoritesStateModel;
15 |
16 | factory FavoritesStateModel.fromJson(Map map) =>
17 | _$FavoritesStateModelFromJson(map);
18 | }
19 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/index/index_products_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | import '../../../modals/dd/product.dart';
4 |
5 | part 'index_products_model.freezed.dart';
6 |
7 | ///首页模型
8 | @freezed
9 | sealed class IndexProductsModel with _$IndexProductsModel {
10 | factory IndexProductsModel({
11 | required List products,
12 | required int page,
13 | }) = _IndexProductsModel;
14 | }
15 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/model/user.dart:
--------------------------------------------------------------------------------
1 | import 'package:freezed_annotation/freezed_annotation.dart';
2 |
3 | import 'my_user.dart';
4 |
5 | part 'user.freezed.dart';
6 |
7 | part 'user.g.dart';
8 |
9 | @freezed
10 | sealed class UserDetailModal with _$UserDetailModal {
11 | const factory UserDetailModal({MyUser? user}) = _UserDetailModal;
12 |
13 | factory UserDetailModal.fromJson(Map json) =>
14 | _$UserDetailModalFromJson(json);
15 | }
16 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/model/user.g.dart:
--------------------------------------------------------------------------------
1 | // GENERATED CODE - DO NOT MODIFY BY HAND
2 |
3 | part of 'user.dart';
4 |
5 | // **************************************************************************
6 | // JsonSerializableGenerator
7 | // **************************************************************************
8 |
9 | _UserDetailModal _$UserDetailModalFromJson(Map json) =>
10 | _UserDetailModal(
11 | user:
12 | json['user'] == null
13 | ? null
14 | : MyUser.fromJson(json['user'] as Map),
15 | );
16 |
17 | Map _$UserDetailModalToJson(_UserDetailModal instance) =>
18 | {'user': instance.user};
19 |
--------------------------------------------------------------------------------
/lib/provider/riverpod/text_list_provider.dart:
--------------------------------------------------------------------------------
1 | part of '../../index.dart';
2 |
3 | final textListAllProvider = FutureProvider(
4 | (ref) {
5 | return MyTextModeListApi()
6 | .request(RequestParams(showDefaultLoading: false));
7 | },
8 | );
9 |
--------------------------------------------------------------------------------
/lib/repository/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | import 'package:dd_js_util/dd_js_util.dart';
4 | import 'package:loading_more_list_fast/loading_more_list_fast.dart';
5 | import 'package:loading_more_list_library_fast/loading_more_list_library_fast.dart';
6 |
7 | import '../api/apis.dart';
8 | import '../common/index.dart';
9 | import '../freezed/user_order_info.dart';
10 | import '../modals/dd/product.dart';
11 | import '../modals/order_list_model.dart';
12 |
13 | part 'goods_list_repository.dart';
14 | part 'order_respository.dart';
15 | part 'user_order.dart';
16 |
--------------------------------------------------------------------------------
/lib/repository/user_order.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | ///用户订单的数据仓库
4 | class UserOrderRepository extends SimpleLoadingMoreBaes {
5 | final String status;
6 |
7 | UserOrderRepository(this.status);
8 |
9 | @override
10 | MyUserOrderListApi get api => MyUserOrderListApi();
11 |
12 | @override
13 | List transformResponseData(WrapJson data) {
14 | return List.from(data.getListValue('content').map(UserOrderInfo.fromJson));
15 | }
16 |
17 | @override
18 | Map get otherParams => status.isNotEmpty ? {"status": status} : {};
19 |
20 | @override
21 | bool transformIsNomore(WrapJson data) {
22 | return data.getValue('last') as bool;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/lib/res.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:hooks_riverpod/hooks_riverpod.dart';
3 |
4 | class Test extends ConsumerWidget {
5 | const Test({super.key});
6 |
7 | @override
8 | Widget build(BuildContext context, WidgetRef ref) {
9 | return SizedBox();
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/lib/service/index.dart:
--------------------------------------------------------------------------------
1 | library;
2 |
3 | export 'user_api.dart';
4 |
--------------------------------------------------------------------------------
/lib/service/user_api.dart:
--------------------------------------------------------------------------------
1 | import 'package:get_it/get_it.dart';
2 |
3 | class UserApi {
4 |
5 | static String get userToken => GetIt.instance.get().token;
6 |
7 | static String? _token;
8 | set token(String? v)=> _token = v;
9 | String get token => _token ?? '';
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/lib/test.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
--------------------------------------------------------------------------------
/lib/util/color_util.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class ColorUtil {
4 | /// 获取图片的主要颜色
5 | static Future getImageMainColor(String netImageUrl) async {
6 | var paletteGenerator = await PaletteGenerator.fromImageProvider(
7 | NetworkImage(MImageUtils.magesProcessor(netImageUrl)),
8 | maximumColorCount: 20,
9 | );
10 | return paletteGenerator.dominantColor!.color;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/util/public.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | Color getColor(String rgb) {
4 | var colorsRgb = rgb.split(',');
5 | return Color.fromRGBO(int.parse(colorsRgb[0]), int.parse(colorsRgb[1]), int.parse(colorsRgb[2]), 1);
6 | }
7 |
8 | void actionLog(String action, String key, dynamic value) {
9 | wtfLog({"操作": action, key: value});
10 | }
11 |
12 | Future appLaunchUrl(String url, {String? failMessage}) async {
13 | final uri = Uri.tryParse(url);
14 | if (uri != null) {
15 | if (!await launchUrl(uri)) {
16 | toast(failMessage ?? '无法访问:$url');
17 | throw Exception('无法访问$url');
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/util/user.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | extension UserHideWidgetEx on Widget {
4 | ///如果未登录,则隐藏这个组件
5 | Widget hideInVisitor() {
6 | return UserHideWidget(child: this);
7 | }
8 | }
9 |
10 | class UserHideWidget extends ConsumerWidget {
11 | final Widget child;
12 |
13 | const UserHideWidget({super.key, required this.child});
14 |
15 | @override
16 | Widget build(BuildContext context, WidgetRef ref) {
17 | if (!ref.isLogin) {
18 | return const SizedBox();
19 | }
20 | return child;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/lib/widgets/ad.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class AdTag extends StatelessWidget {
4 | const AdTag({super.key});
5 |
6 | @override
7 | Widget build(BuildContext context) {
8 | return const MiniTag(
9 | title: 'AD',
10 | );
11 | }
12 | }
13 |
14 | class MiniTag extends StatelessWidget {
15 | final String title;
16 |
17 | const MiniTag({super.key, required this.title});
18 |
19 | @override
20 | Widget build(BuildContext context) {
21 | return Container(
22 | padding: const EdgeInsets.symmetric(horizontal: 2, vertical: 1),
23 | decoration: BoxDecoration(color: context.colorScheme.primaryContainer),
24 | child: Text(title, style: context.textTheme.labelSmall?.copyWith(color: context.colorScheme.primary)),
25 | );
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/lib/widgets/component/coupon_discount.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | class CouponDiscountShow extends StatelessWidget {
4 | final String value;
5 |
6 | const CouponDiscountShow({super.key, required this.value});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | if (value == '0') return Container();
11 | return Chip(
12 | label: Text(
13 | '$value元隐藏券',
14 | ));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/widgets/component/tool_tip.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | // 提醒工具
4 | class ToolTip extends StatelessWidget {
5 | final VoidCallback? onClose;
6 | final String text; // 提示语
7 | const ToolTip({super.key, this.onClose, required this.text});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Container(
12 | margin: const EdgeInsets.all(12),
13 | padding: const EdgeInsets.all(12),
14 | decoration: BoxDecoration(color: Colors.cyan.shade50, borderRadius: BorderRadius.circular(5)),
15 | child: Row(
16 | children: [Expanded(child: Text(text)), IconButton(onPressed: onClose, icon: const Icon(Icons.clear))],
17 | ),
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/widgets/default_avatar_widget.dart:
--------------------------------------------------------------------------------
1 | import 'package:extended_image/extended_image.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | ///头像小部件
5 | class DefaultAvatarWidget extends StatelessWidget {
6 | final String url; //头像URL
7 | final double size;
8 |
9 | const DefaultAvatarWidget(this.url, {super.key, this.size = 40});
10 |
11 | @override
12 | Widget build(BuildContext context) {
13 | return ExtendedImage.network(
14 | url,
15 | shape: BoxShape.circle,
16 | width: size,
17 | height: size,
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/widgets/default_user_name.dart:
--------------------------------------------------------------------------------
1 | import 'package:dd_js_util/dd_js_util.dart';
2 | import 'package:flutter/cupertino.dart';
3 |
4 | import '../provider/riverpod/model/my_user.dart';
5 |
6 | class DefaultUsernameWidget extends StatelessWidget {
7 | final MyUser user;
8 | final EdgeInsets? padding;
9 |
10 | const DefaultUsernameWidget(this.user, {super.key, this.padding});
11 |
12 | @override
13 | Widget build(BuildContext context) {
14 | return Row(
15 | mainAxisSize: MainAxisSize.min,
16 | children: [
17 | Text(user.nickName, style: context.textTheme.titleMedium?.copyWith(fontWeight: FontWeight.bold)),
18 | ],
19 | );
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/lib/widgets/desktop_widget.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | extension DeskTopWidgetEx on Widget {
4 | Widget desktopLayout({required Widget Function(BuildContext context) child}) {
5 | return DeskTopWidget(child: child, mobile: (_) => this);
6 | }
7 | }
8 |
9 | class DeskTopWidget extends StatelessWidget {
10 | final Widget Function(BuildContext context) child;
11 | final Widget Function(BuildContext context) mobile;
12 |
13 | const DeskTopWidget({super.key, required this.child, required this.mobile});
14 |
15 | @override
16 | Widget build(BuildContext context) {
17 | return ScreenTypeLayout.builder(mobile: mobile, desktop: child);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/lib/widgets/detail_simple_bborder_button.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class DetailSimpleBorderButton extends StatelessWidget {
4 | final String text; // 文字
5 | final bool isCurrent; // 是否选中样式
6 |
7 | const DetailSimpleBorderButton({required this.text, required this.isCurrent, super.key});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Container(
12 | padding: const EdgeInsets.only(bottom: 10.0),
13 | decoration: BoxDecoration(border: isCurrent ? const Border(bottom: BorderSide(color: Colors.pinkAccent, width: 2.0)) : null),
14 | child: Text(text, style: TextStyle(color: isCurrent ? Colors.pinkAccent : Colors.black, fontWeight: isCurrent ? FontWeight.w600 : null)),
15 | );
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/lib/widgets/edit_page_handle.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | /// 点击空白处收起键盘
4 | class EditePageHandle extends StatelessWidget {
5 | final Widget child;
6 |
7 | const EditePageHandle({super.key, required this.child});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return GestureDetector(
12 | behavior: HitTestBehavior.translucent,
13 | onTap: () {
14 | FocusScope.of(context).requestFocus(FocusNode());
15 | },
16 | child: child,
17 | );
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/lib/widgets/flexd/index_main_goods_mini_title_bar.dart:
--------------------------------------------------------------------------------
1 | part of '../index.dart';
2 |
3 | class IndexMainGoodsMiniTitleBar extends SliverPersistentHeaderDelegate {
4 | final Widget? child;
5 | final double? height;
6 |
7 | IndexMainGoodsMiniTitleBar({this.child, this.height});
8 |
9 | @override
10 | Widget build(BuildContext context, double shrinkOffset, bool overlapsContent) {
11 | return Container(
12 | child: child,
13 | );
14 | }
15 |
16 | @override
17 | // TODO: implement maxExtent
18 | double get maxExtent => height!;
19 |
20 | @override
21 | // TODO: implement minExtent
22 | double get minExtent => height!;
23 |
24 | @override
25 | bool shouldRebuild(SliverPersistentHeaderDelegate oldDelegate) {
26 | return true;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/lib/widgets/float_widget.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class FloatWidget extends SliverPersistentHeaderDelegate {
4 | final Widget child;
5 | final double height;
6 |
7 | FloatWidget({required this.child, required this.height});
8 |
9 | @override
10 | Widget build(BuildContext context, double shrinkOffset, bool overlapsContent) {
11 | return child;
12 | }
13 |
14 | @override
15 | double get maxExtent => height;
16 |
17 | @override
18 | double get minExtent => height;
19 |
20 | @override
21 | bool shouldRebuild(covariant SliverPersistentHeaderDelegate oldDelegate) => false;
22 | }
23 |
--------------------------------------------------------------------------------
/lib/widgets/login_tip_widget.dart:
--------------------------------------------------------------------------------
1 | import 'package:dd_js_util/dd_js_util.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | import '../pages/index.dart';
5 |
6 | class LoginTipWidget extends StatelessWidget {
7 | const LoginTipWidget({super.key});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Center(
12 | child: Column(crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center, children: [
13 | const Text('请先登录进行下一步操作'),
14 | const SizedBox(
15 | height: 33,
16 | ),
17 | FilledButton(
18 | onPressed: () {
19 | context.navToWidget(to: const UserLoginPage());
20 | },
21 | child: const Text("登录"))
22 | ]),
23 | );
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/lib/widgets/logo.dart:
--------------------------------------------------------------------------------
1 | import 'package:dd_js_util/dd_js_util.dart';
2 | import 'package:flutter/material.dart';
3 | import 'package:flutter_svg/flutter_svg.dart';
4 |
5 | class Logo extends StatelessWidget {
6 | const Logo({super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Container(
11 | alignment: Alignment.center,
12 | child: SvgPicture.asset(
13 | 'assets/svg/diandian.svg',
14 | width: 34,
15 | height: 34,
16 | colorFilter: ColorFilter.mode(context.iconColor ?? Colors.red, BlendMode.srcIn),
17 | ),
18 | );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/widgets/my_clipper.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class MyClipper extends CustomClipper {
4 | @override
5 | Path getClip(Size size) {
6 | var path = Path();
7 | path.lineTo(0, size.height - 50);
8 | path.quadraticBezierTo(size.width / 2, size.height, size.width, size.height - 50);
9 | path.lineTo(size.width, 0);
10 | path.close();
11 | return path;
12 | }
13 |
14 | @override
15 | bool shouldReclip(CustomClipper oldClipper) {
16 | return false;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/widgets/no_data.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class NoDataWidget extends StatelessWidget {
4 | final String? title;
5 |
6 | const NoDataWidget({this.title, super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Center(
11 | child: Column(
12 | mainAxisAlignment: MainAxisAlignment.center,
13 | children: [
14 | Image.asset('assets/images/no_data.png', width: 250),
15 | Container(
16 | margin: const EdgeInsets.only(top: 30),
17 | child: Text(title ?? '商品已下架或者删除'),
18 | )
19 | ],
20 | ),
21 | );
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/widgets/sticky_tab_bar_delegate.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class StickyTabBarDelegate extends SliverPersistentHeaderDelegate {
4 | final TabBar child;
5 |
6 | StickyTabBarDelegate({required this.child});
7 |
8 | @override
9 | Widget build(BuildContext context, double shrinkOffset, bool overlapsContent) {
10 | return Container(
11 | decoration: const BoxDecoration(
12 | color: Colors.white,
13 | ),
14 | child: child,
15 | );
16 | }
17 |
18 | @override
19 | double get maxExtent => child.preferredSize.height;
20 |
21 | @override
22 | double get minExtent => child.preferredSize.height;
23 |
24 | @override
25 | bool shouldRebuild(SliverPersistentHeaderDelegate oldDelegate) {
26 | return true;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/lib/widgets/title_widget.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class TitleWidget extends StatelessWidget {
4 | final String? title; // 文本值
5 |
6 | const TitleWidget({required this.title, super.key});
7 |
8 | @override
9 | Widget build(BuildContext context) {
10 | return Text(
11 | title!,
12 | textAlign: TextAlign.left,
13 | maxLines: 2,
14 | overflow: TextOverflow.ellipsis,
15 | );
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/lib/widgets/webview.dart:
--------------------------------------------------------------------------------
1 | part of 'index.dart';
2 |
3 | class MyWebviewPage extends StatelessWidget {
4 | final String title;
5 | final String url;
6 |
7 | const MyWebviewPage({super.key, required this.title, required this.url});
8 |
9 | @override
10 | Widget build(BuildContext context) {
11 | return Scaffold(
12 | appBar: AppBar(title: Text(title)),
13 | body: WebViewWidget(
14 | controller: WebViewController()
15 | ..setJavaScriptMode(JavaScriptMode.unrestricted)
16 | ..loadRequest(Uri.parse(url))),
17 | );
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/linux/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral
2 |
--------------------------------------------------------------------------------
/linux/flutter/generated_plugin_registrant.cc:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #include "generated_plugin_registrant.h"
8 |
9 | #include
10 | #include
11 |
12 | void fl_register_plugins(FlPluginRegistry* registry) {
13 | g_autoptr(FlPluginRegistrar) file_selector_linux_registrar =
14 | fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin");
15 | file_selector_plugin_register_with_registrar(file_selector_linux_registrar);
16 | g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
17 | fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
18 | url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
19 | }
20 |
--------------------------------------------------------------------------------
/linux/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void fl_register_plugins(FlPluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/linux/main.cc:
--------------------------------------------------------------------------------
1 | #include "my_application.h"
2 |
3 | int main(int argc, char** argv) {
4 | g_autoptr(MyApplication) app = my_application_new();
5 | return g_application_run(G_APPLICATION(app), argc, argv);
6 | }
7 |
--------------------------------------------------------------------------------
/linux/my_application.h:
--------------------------------------------------------------------------------
1 | #ifndef FLUTTER_MY_APPLICATION_H_
2 | #define FLUTTER_MY_APPLICATION_H_
3 |
4 | #include
5 |
6 | G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION,
7 | GtkApplication)
8 |
9 | /**
10 | * my_application_new:
11 | *
12 | * Creates a new Flutter-based application.
13 | *
14 | * Returns: a new #MyApplication.
15 | */
16 | MyApplication* my_application_new();
17 |
18 | #endif // FLUTTER_MY_APPLICATION_H_
19 |
--------------------------------------------------------------------------------
/linux/runner/main.cc:
--------------------------------------------------------------------------------
1 | #include "my_application.h"
2 |
3 | int main(int argc, char** argv) {
4 | g_autoptr(MyApplication) app = my_application_new();
5 | return g_application_run(G_APPLICATION(app), argc, argv);
6 | }
7 |
--------------------------------------------------------------------------------
/linux/runner/my_application.h:
--------------------------------------------------------------------------------
1 | #ifndef FLUTTER_MY_APPLICATION_H_
2 | #define FLUTTER_MY_APPLICATION_H_
3 |
4 | #include
5 |
6 | G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION,
7 | GtkApplication)
8 |
9 | /**
10 | * my_application_new:
11 | *
12 | * Creates a new Flutter-based application.
13 | *
14 | * Returns: a new #MyApplication.
15 | */
16 | MyApplication* my_application_new();
17 |
18 | #endif // FLUTTER_MY_APPLICATION_H_
19 |
--------------------------------------------------------------------------------
/macos/.gitignore:
--------------------------------------------------------------------------------
1 | # Flutter-related
2 | **/Flutter/ephemeral/
3 | **/Pods/
4 |
5 | # Xcode-related
6 | **/dgph
7 | **/xcuserdata/
8 |
--------------------------------------------------------------------------------
/macos/Flutter/Flutter-Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
2 | #include "ephemeral/Flutter-Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/macos/Flutter/Flutter-Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
2 | #include "ephemeral/Flutter-Generated.xcconfig"
3 |
--------------------------------------------------------------------------------
/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/macos/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/macos/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | @main
5 | class AppDelegate: FlutterAppDelegate {
6 | override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
7 | return true
8 | }
9 |
10 | override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool {
11 | return true
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png
--------------------------------------------------------------------------------
/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png
--------------------------------------------------------------------------------
/macos/Runner/Configs/AppInfo.xcconfig:
--------------------------------------------------------------------------------
1 | // Application-level settings for the Runner target.
2 | //
3 | // This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the
4 | // future. If not, the values below would default to using the project name when this becomes a
5 | // 'flutter create' template.
6 |
7 | // The application's name. By default this is also the title of the Flutter window.
8 | PRODUCT_NAME = flutter_simple_shop
9 |
10 | // The application's bundle identifier
11 | PRODUCT_BUNDLE_IDENTIFIER = shop.itbug.flutterSimpleShop
12 |
13 | // The copyright displayed in application information
14 | PRODUCT_COPYRIGHT = Copyright © 2021 shop.itbug. All rights reserved.
15 |
--------------------------------------------------------------------------------
/macos/Runner/Configs/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Debug.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/macos/Runner/Configs/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../Flutter/Flutter-Release.xcconfig"
2 | #include "Warnings.xcconfig"
3 |
--------------------------------------------------------------------------------
/macos/Runner/Configs/Warnings.xcconfig:
--------------------------------------------------------------------------------
1 | WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings
2 | GCC_WARN_UNDECLARED_SELECTOR = YES
3 | CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES
4 | CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE
5 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES
6 | CLANG_WARN_PRAGMA_PACK = YES
7 | CLANG_WARN_STRICT_PROTOTYPES = YES
8 | CLANG_WARN_COMMA = YES
9 | GCC_WARN_STRICT_SELECTOR_MATCH = YES
10 | CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES
11 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES
12 | GCC_WARN_SHADOW = YES
13 | CLANG_WARN_UNREACHABLE_CODE = YES
14 |
--------------------------------------------------------------------------------
/macos/Runner/DebugProfile.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.cs.allow-jit
8 |
9 | com.apple.security.network.server
10 |
11 | com.apple.security.network.client
12 |
13 | com.apple.security.files.user-selected.read-only
14 |
15 |
16 |
--------------------------------------------------------------------------------
/macos/Runner/MainFlutterWindow.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 |
4 | class MainFlutterWindow: NSWindow {
5 | override func awakeFromNib() {
6 | let flutterViewController = FlutterViewController.init()
7 | let windowFrame = self.frame
8 | self.contentViewController = flutterViewController
9 | self.setFrame(windowFrame, display: true)
10 |
11 | RegisterGeneratedPlugins(registry: flutterViewController)
12 |
13 | super.awakeFromNib()
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/macos/Runner/Release.entitlements:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | com.apple.security.app-sandbox
6 |
7 | com.apple.security.cs.allow-jit
8 |
9 | com.apple.security.network.server
10 |
11 | com.apple.security.network.client
12 |
13 | com.apple.security.files.user-selected.read-only
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/macos/RunnerTests/RunnerTests.swift:
--------------------------------------------------------------------------------
1 | import Cocoa
2 | import FlutterMacOS
3 | import XCTest
4 |
5 | class RunnerTests: XCTestCase {
6 |
7 | func testExample() {
8 | // If you add code to the Runner application, consider adding tests here.
9 | // See https://developer.apple.com/documentation/xctest for more information about using XCTest.
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/ohos/.gitignore:
--------------------------------------------------------------------------------
1 | /node_modules
2 | /oh_modules
3 | /local.properties
4 | /.idea
5 | **/build
6 | /.hvigor
7 | .cxx
8 | /.clangd
9 | /.clang-format
10 | /.clang-tidy
11 | **/.test
12 | *.har
13 | **/BuildProfile.ets
14 | **/oh-package-lock.json5
15 | GeneratedPluginRegistrant.ets
16 |
17 | **/src/main/resources/rawfile/flutter_assets/
18 | **/libs/arm64-v8a/libapp.so
19 | **/libs/arm64-v8a/libflutter.so
20 | **/libs/arm64-v8a/libvmservice_snapshot.so
21 |
--------------------------------------------------------------------------------
/ohos/AppScope/app.json5:
--------------------------------------------------------------------------------
1 | {
2 | "app": {
3 | "bundleName": "shop.itbug.dd_simple_shop",
4 | "vendor": "example",
5 | "versionCode": 1000000,
6 | "versionName": "1.0.0",
7 | "icon": "$media:app_icon",
8 | "label": "$string:app_name"
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/ohos/AppScope/resources/base/element/string.json:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "app_name",
5 | "value": "dd_simple_shop"
6 | }
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/ohos/AppScope/resources/base/media/app_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ohos/AppScope/resources/base/media/app_icon.png
--------------------------------------------------------------------------------
/ohos/entry/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | /node_modules
3 | /oh_modules
4 | /.preview
5 | /build
6 | /.cxx
7 | /.test
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/base/element/color.json:
--------------------------------------------------------------------------------
1 | {
2 | "color": [
3 | {
4 | "name": "start_window_background",
5 | "value": "#FFFFFF"
6 | }
7 | ]
8 | }
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/base/element/string.json:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "module_desc",
5 | "value": "module description"
6 | },
7 | {
8 | "name": "EntryAbility_desc",
9 | "value": "description"
10 | },
11 | {
12 | "name": "EntryAbility_label",
13 | "value": "dd_simple_shop"
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/base/media/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ohos/entry/src/main/resources/base/media/icon.png
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/base/profile/buildinfo.json5:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "enable_impeller",
5 | "value": "true"
6 | }
7 | ]
8 | }
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/base/profile/main_pages.json:
--------------------------------------------------------------------------------
1 | {
2 | "src": [
3 | "pages/Index"
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/en_US/element/string.json:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "module_desc",
5 | "value": "module description"
6 | },
7 | {
8 | "name": "EntryAbility_desc",
9 | "value": "description"
10 | },
11 | {
12 | "name": "EntryAbility_label",
13 | "value": "dd_simple_shop"
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/ohos/entry/src/main/resources/zh_CN/element/string.json:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "module_desc",
5 | "value": "模块描述"
6 | },
7 | {
8 | "name": "EntryAbility_desc",
9 | "value": "description"
10 | },
11 | {
12 | "name": "EntryAbility_label",
13 | "value": "dd_simple_shop"
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/ohos/entry/src/ohosTest/resources/base/element/color.json:
--------------------------------------------------------------------------------
1 | {
2 | "color": [
3 | {
4 | "name": "start_window_background",
5 | "value": "#FFFFFF"
6 | }
7 | ]
8 | }
--------------------------------------------------------------------------------
/ohos/entry/src/ohosTest/resources/base/element/string.json:
--------------------------------------------------------------------------------
1 | {
2 | "string": [
3 | {
4 | "name": "module_test_desc",
5 | "value": "test ability description"
6 | },
7 | {
8 | "name": "TestAbility_desc",
9 | "value": "the test ability"
10 | },
11 | {
12 | "name": "TestAbility_label",
13 | "value": "test label"
14 | }
15 | ]
16 | }
--------------------------------------------------------------------------------
/ohos/entry/src/ohosTest/resources/base/media/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/ohos/entry/src/ohosTest/resources/base/media/icon.png
--------------------------------------------------------------------------------
/ohos/entry/src/ohosTest/resources/base/profile/test_pages.json:
--------------------------------------------------------------------------------
1 | {
2 | "src": [
3 | "testability/pages/Index"
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/ohos/hvigor/hvigor-config.json5:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) 2023 Hunan OpenValley Digital Industry Development Co., Ltd.
3 | * Licensed under the Apache License, Version 2.0 (the "License");
4 | * you may not use this file except in compliance with the License.
5 | * You may obtain a copy of the License at
6 | *
7 | * http://www.apache.org/licenses/LICENSE-2.0
8 | *
9 | * Unless required by applicable law or agreed to in writing, software
10 | * distributed under the License is distributed on an "AS IS" BASIS,
11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | * See the License for the specific language governing permissions and
13 | * limitations under the License.
14 | */
15 |
16 | {
17 | "modelVersion": "5.0.0",
18 | "dependencies": {
19 | }
20 | }
--------------------------------------------------------------------------------
/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/web/favicon.png
--------------------------------------------------------------------------------
/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/web/icons/Icon-maskable-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/web/icons/Icon-maskable-192.png
--------------------------------------------------------------------------------
/web/icons/Icon-maskable-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/web/icons/Icon-maskable-512.png
--------------------------------------------------------------------------------
/windows/.gitignore:
--------------------------------------------------------------------------------
1 | flutter/ephemeral/
2 |
3 | # Visual Studio user-specific files.
4 | *.suo
5 | *.user
6 | *.userosscache
7 | *.sln.docstates
8 |
9 | # Visual Studio build-related files.
10 | x64/
11 | x86/
12 |
13 | # Visual Studio cache files
14 | # files ending in .cache can be ignored
15 | *.[Cc]ache
16 | # but keep track of directories ending in .cache
17 | !*.[Cc]ache/
18 |
--------------------------------------------------------------------------------
/windows/flutter/generated_plugin_registrant.h:
--------------------------------------------------------------------------------
1 | //
2 | // Generated file. Do not edit.
3 | //
4 |
5 | // clang-format off
6 |
7 | #ifndef GENERATED_PLUGIN_REGISTRANT_
8 | #define GENERATED_PLUGIN_REGISTRANT_
9 |
10 | #include
11 |
12 | // Registers Flutter plugins.
13 | void RegisterPlugins(flutter::PluginRegistry* registry);
14 |
15 | #endif // GENERATED_PLUGIN_REGISTRANT_
16 |
--------------------------------------------------------------------------------
/windows/runner/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.15)
2 | project(runner LANGUAGES CXX)
3 |
4 | add_executable(${BINARY_NAME} WIN32
5 | "flutter_window.cpp"
6 | "main.cpp"
7 | "run_loop.cpp"
8 | "utils.cpp"
9 | "win32_window.cpp"
10 | "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc"
11 | "Runner.rc"
12 | "runner.exe.manifest"
13 | )
14 | apply_standard_settings(${BINARY_NAME})
15 | target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX")
16 | target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app)
17 | target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}")
18 | add_dependencies(${BINARY_NAME} flutter_assemble)
19 |
--------------------------------------------------------------------------------
/windows/runner/resource.h:
--------------------------------------------------------------------------------
1 | //{{NO_DEPENDENCIES}}
2 | // Microsoft Visual C++ generated include file.
3 | // Used by Runner.rc
4 | //
5 | #define IDI_APP_ICON 101
6 |
7 | // Next default values for new objects
8 | //
9 | #ifdef APSTUDIO_INVOKED
10 | #ifndef APSTUDIO_READONLY_SYMBOLS
11 | #define _APS_NEXT_RESOURCE_VALUE 102
12 | #define _APS_NEXT_COMMAND_VALUE 40001
13 | #define _APS_NEXT_CONTROL_VALUE 1001
14 | #define _APS_NEXT_SYMED_VALUE 101
15 | #endif
16 | #endif
17 |
--------------------------------------------------------------------------------
/windows/runner/resources/app_icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mdddj/flutter_simple_shop/bf4cc6729f68f1771440c7a5de8aa80164139d83/windows/runner/resources/app_icon.ico
--------------------------------------------------------------------------------
/windows/runner/utils.h:
--------------------------------------------------------------------------------
1 | #ifndef RUNNER_UTILS_H_
2 | #define RUNNER_UTILS_H_
3 |
4 | #include
5 | #include
6 |
7 | // Creates a console for the process, and redirects stdout and stderr to
8 | // it for both the runner and the Flutter library.
9 | void CreateAndAttachConsole();
10 |
11 | // Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string
12 | // encoded in UTF-8. Returns an empty std::string on failure.
13 | std::string Utf8FromUtf16(const wchar_t* utf16_string);
14 |
15 | // Gets the command line arguments passed in as a std::vector,
16 | // encoded in UTF-8. Returns an empty std::vector on failure.
17 | std::vector GetCommandLineArguments();
18 |
19 | #endif // RUNNER_UTILS_H_
20 |
--------------------------------------------------------------------------------