name: immich_mobile
description: Immich - selfhosted backup media file on mobile phone

publish_to: 'none'
version: 3.0.0+3053

environment:
  sdk: '>=3.12.0 <4.0.0'
  flutter: 3.44.1

dependencies:
  async: ^2.13.1
  auto_route: ^11.1.0
  background_downloader: ^9.5.4
  cast: ^2.1.0
  collection: ^1.19.1
  connectivity_plus: ^7.0.0
  crop_image: ^1.0.17
  crypto: ^3.0.7
  device_info_plus: ^12.4.0
  diacritic: ^0.1.6
  drift: ^2.32.1
  drift_sqlite_async: 0.3.1
  dynamic_color: ^1.8.1
  easy_localization: ^3.0.8
  ffi: ^2.2.0
  flutter:
    sdk: flutter
  flutter_displaymode: ^0.7.0
  flutter_hooks: ^0.21.3+1
  flutter_local_notifications: ^17.2.4
  flutter_secure_storage: ^9.2.4
  flutter_svg: ^2.2.4
  flutter_udid: ^4.1.2
  flutter_web_auth_2: ^5.0.2
  fluttertoast: ^8.2.14
  geolocator: ^14.0.2
  home_widget: ^0.8.1
  hooks_riverpod: ^2.6.1
  http: ^1.6.0
  image_picker: ^1.2.1
  immich_ui:
    path: './packages/ui'
  intl: ^0.20.2
  local_auth: ^2.3.0
  logging: ^1.3.0
  maplibre_gl: ^0.22.0
  native_video_player:
    git:
      url: https://github.com/immich-app/native_video_player
      ref: 'cdf621bdb7edaf996e118a58a48f6441187d79c6'
  network_info_plus: ^6.1.4
  octo_image: ^2.1.0
  openapi:
    path: openapi
  package_info_plus: ^8.3.1
  path: ^1.9.1
  path_provider: ^2.1.5
  path_provider_foundation: ^2.6.0
  permission_handler: ^11.4.0
  photo_manager: ^3.9.0
  pinput: ^5.0.2
  punycode: ^1.0.0
  scroll_date_picker: ^3.8.0
  scrollable_positioned_list: ^0.3.8
  share_handler: ^0.0.25
  share_plus: ^10.1.4
  sliver_tools: ^0.2.12
  stream_transform: ^2.1.1
  sqlite3: ^3.3.2
  sqlite_async: 0.14.2
  sqlite3_connection_pool: ^0.2.6
  thumbhash: 0.1.0+1
  timezone: ^0.9.4
  url_launcher: ^6.3.2
  uuid: ^4.5.3
  wakelock_plus: ^1.3.3
  worker_manager: ^7.2.9
  web_socket: ^1.0.1
  socket_io_client:
    git:
      url: https://github.com/mertalev/socket.io-client-dart
      ref: 'e1d813a240b5d5b7e2f141b2b605c5429b7cd006' # https://github.com/rikulo/socket.io-client-dart/pull/435
  cupertino_http:
    git:
      url: https://github.com/mertalev/http
      ref: 'a0a933358517c6d01cff37fc2a2752ee2d744a3c' # https://github.com/dart-lang/http/pull/1876
      path: pkgs/cupertino_http/
  ok_http:
    git:
      url: https://github.com/mertalev/http
      ref: '549c24b0a4d3881a9a44b70f4873450d43c1c4af' # https://github.com/dart-lang/http/pull/1877
      path: pkgs/ok_http/

dev_dependencies:
  auto_route_generator: ^10.5.0
  build_runner: ^2.13.1
  # Drift generator
  drift_dev: ^2.32.1
  fake_async: ^1.3.3
  file: ^7.0.1 # for MemoryFileSystem
  flutter_launcher_icons: ^0.14.4
  flutter_lints: ^5.0.0
  flutter_native_splash: ^2.4.7
  flutter_test:
    sdk: flutter
  integration_test:
    sdk: flutter
  mocktail: ^1.0.5
  # Type safe platform code
  pigeon: ^26.3.4

# cast 2.1.0 declares a loose bonsoir range but its code targets the 5.x API.
# Pin bonsoir to 5.x until cast releases a version compatible with bonsoir 6.x.
dependency_overrides:
  bonsoir: ^5.1.11

flutter:
  uses-material-design: true
  assets:
    - assets/
    - assets/feature_message/
  fonts:
    - family: GoogleSans
      fonts:
        - asset: fonts/GoogleSans/GoogleSans-Regular.ttf
          weight: 400
        - asset: fonts/GoogleSans/GoogleSans-Italic.ttf
          style: italic
        - asset: fonts/GoogleSans/GoogleSans-Medium.ttf
          weight: 500
        - asset: fonts/GoogleSans/GoogleSans-SemiBold.ttf
          weight: 600
        - asset: fonts/GoogleSans/GoogleSans-Bold.ttf
          weight: 700
    - family: GoogleSansCode
      fonts:
        - asset: fonts/GoogleSansCode/GoogleSansCode-Regular.ttf
          weight: 400
        - asset: fonts/GoogleSansCode/GoogleSansCode-Medium.ttf
          weight: 500
        - asset: fonts/GoogleSansCode/GoogleSansCode-SemiBold.ttf
          weight: 600
flutter_launcher_icons:
  image_path_android: 'assets/immich-logo.png'
  adaptive_icon_background: '#ffffff'
  adaptive_icon_foreground: 'assets/immich-logo-android-adaptive-icon.png'
  image_path_ios: 'assets/immich-logo-w-bg.png'
  android: 'ic_launcher'
  ios: false
  remove_alpha_ios: true

analyzer:
  exclude:
    - openapi/**
