name: YYHotel-Business-ER
packages:
  - "app/"
  - "packages/cs_domain/"
  - "packages/cs_resources/"
  - "packages/cs_router/"
  - "packages/cs_shared/"
  - "packages/cs_widgets/"
  - "packages/cs_plugin_basic/"
  - "packages/cs_plugin_platform/"
  - "packages/cs_initializer/"
  - "packages/cpt_auth/"
  - "packages/cpt_job/"
  - "packages/cpt_labour/"
  - "packages/cpt_report/"



command:
  bootstrap:
    usePubspecOverrides: true


scripts:
  analyze:
    run: melos exec -- "flutter analyze"
    description: Run `flutter analyze` in all packages

  pub_get_all:
    run: dart pub global run melos exec --flutter "flutter pub get"
    description: 在每个子组件中运行 flutter pub get，用来获取和安装这些包的所有依赖

  build_all:
    run: dart pub global run melos exec --depends-on="build_runner" "flutter packages pub run build_runner build --delete-conflicting-outputs"
    description: 依赖了 build_runner 的组件执行 build_runner build 命令，用于自动生成JSON序列化、Freezed类等

  clean_all:
    run: melos exec -- "flutter clean"
    description: Run `flutter clean` in all packages

  clean_app:
    run: cd "$MELOS_ROOT_PATH/app" && flutter clean
    description: Run `flutter clean` in app module

  run_app:
    run: cd "$MELOS_ROOT_PATH/app" && flutter run
    description: 运行App模块.

  run_app2:
    run: melos exec --scope="app" -- "flutter run"
    description: 运行App模块方式2.

  build_apk:
    run: cd "$MELOS_ROOT_PATH/app" && flutter build apk
    description: 编译安卓Release的APK格式安装包.

  resource_get:
    run: |
      cd "$MELOS_ROOT_PATH/packages/cs_domain/" && flutter pub get
      melos exec --scope="cs_resources" -- "flutter pub get"
      cd "$MELOS_ROOT_PATH/packages/cs_widgets/" && flutter pub get
    description: 更新实体和资源模块

  format:
    run: melos exec -- "flutter format . --set-exit-if-changed"
    description: Run `flutter format .` in all packages

  test:
    run: melos exec --dir-exists=test -- "flutter test"
    description: Run `flutter test` in all packages
