flutter build web vert. Un seul helper, ImageCompressor, appelé par les DEUX chemins d'upload de resources_screen — c'est le motif qui a fait diverger Create et Upload côté serveur deux fois de suite : sur StoragePath en C1, sur le pré-vol de quota en C3. La compression se fait AVANT resourceCreate, pas avant l'upload. Le contrôle de quota livré en C3 porte sur sizeBytes à la création : le faire après aurait fait décider le serveur sur la taille du fichier d'origine, et compté au quota une image qui n'existe pas. Un quota qui compte 12x trop se remplit 12x trop vite. Deux écarts assumés par rapport à l'énoncé « 2560 px / JPEG q82 » : - Un PNG à canal alpha reste un PNG. Le passer en JPEG remplirait la transparence de noir, ce qui abîmerait logos et filigranes. Le redimensionnement s'applique dans les deux cas ; seul l'encodage diffère, et le type MIME suit — sinon Firebase servirait un JPEG étiqueté PNG. - Si le ré-encodage produit un fichier plus gros que l'original — ce qui arrive sur une petite image déjà bien encodée — l'original est conservé. Un échec de décodage renvoie aussi l'original plutôt que de bloquer l'upload. Défaut préexistant corrigé au passage : le second chemin d'upload ne renseignait sizeBytes ni avant ni après. Toutes les ressources créées par ce chemin comptent donc 0 octet au quota sur l'existant — même famille que ce que C1 et C3 ont trouvé côté serveur, et un argument de plus pour le backfill C2. image 4.2.0 déclarée explicitement : elle était déjà présente en transitif, dépendre d'un hasard de résolution pour une fonction utilisateur n'est pas tenable. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
168 lines
5.2 KiB
YAML
168 lines
5.2 KiB
YAML
name: manager_app
|
|
description: A new Flutter application.
|
|
|
|
# The following line prevents the package from being accidentally published to
|
|
# pub.dev using `pub publish`. This is preferred for private packages.
|
|
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
|
|
|
# The following defines the version and build number for your application.
|
|
# A version number is three numbers separated by dots, like 1.2.43
|
|
# followed by an optional build number separated by a +.
|
|
# Both the version and the builder number may be overridden in flutter
|
|
# build by specifying --build-name and --build-number, respectively.
|
|
# In Android, build-name is used as versionName while build-number used as versionCode.
|
|
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
|
|
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
|
|
# Read more about iOS versioning at
|
|
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
|
version: 3.0.0+10
|
|
|
|
environment:
|
|
sdk: ">=3.1.0 <4.0.0"
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
flutter_localizations:
|
|
sdk: flutter
|
|
|
|
rxdart:
|
|
provider:
|
|
auto_size_text:
|
|
#flutter_colorpicker: ^1.0.3
|
|
flutter_hsvcolor_picker: ^1.5.0
|
|
multiselect_formfield: ^0.1.7
|
|
material_segmented_control: ^5.0.0
|
|
convert: ^3.1.1
|
|
collection: any
|
|
#filepicker_windows: ^2.0.0
|
|
file_picker: ^6.1.1
|
|
image: ^4.2.0 # compression des images à l'upload (C4) — était déjà là en transitif
|
|
flare_flutter: ^3.0.1
|
|
flutter_svg: ^2.2.1
|
|
#dart_vlc: ^0.0.6
|
|
#video_player: ^2.1.1
|
|
drag_and_drop_lists: ^0.3.2
|
|
#path_provider: ^2.0.2
|
|
encrypt: ^5.0.3
|
|
qr_flutter: ^4.1.0
|
|
just_audio: ^0.9.42
|
|
just_audio_web: ^0.4.13
|
|
pdf: ^3.10.4
|
|
multi_select_flutter: ^4.1.3
|
|
youtube_player_iframe: ^5.0.0
|
|
location_picker_flutter_map: ^3.0.1
|
|
flutter_map: ^6.2.1
|
|
latlong2: ^0.9.1
|
|
go_router: ^16.2.0
|
|
|
|
#msix: ^2.1.3
|
|
#window_size:
|
|
# git:
|
|
# url: git://github.com/google/flutter-desktop-embedding.git
|
|
# path: plugins/window_size
|
|
# ref: 927f8cbc09b35d85245c095f2db8df9b186f6618
|
|
password_credential: ^0.3.2
|
|
diacritic: ^0.1.4
|
|
pasteboard: ^0.2.0
|
|
package_info_plus: ^4.2.0
|
|
manager_api_new:
|
|
path: manager_api_new
|
|
myinfomate_layout:
|
|
path: myinfomate_layout
|
|
|
|
# The following adds the Cupertino Icons font to your application.
|
|
# Use with the CupertinoIcons class for iOS style icons.
|
|
cupertino_icons: ^1.0.6
|
|
flutter_quill: 11.5.1
|
|
vsc_quill_delta_to_html: ^1.0.5
|
|
flutter_quill_delta_from_html: ^1.5.3
|
|
html: ^0.15.6
|
|
responsive_framework: ^1.4.0
|
|
tab_container: ^2.0.0
|
|
flutter_widget_from_html: ^0.15.3
|
|
firebase_storage: ^12.0.1
|
|
firebase_core: ^3.1.0
|
|
fl_chart: ^0.69.0
|
|
toastification: ^2.3.0
|
|
http: ^1.4.0
|
|
#another_flushbar: ^1.12.30
|
|
|
|
dependency_overrides:
|
|
intl: ^0.20.2
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
build_runner:
|
|
openapi_generator: ^6.1.0
|
|
flutter_web_plugins:
|
|
sdk: flutter
|
|
|
|
# For information on the generic Dart part of this file, see the
|
|
# following page: https://dart.dev/tools/pub/pubspec
|
|
|
|
# The following section is specific to Flutter.
|
|
flutter:
|
|
|
|
# The following line ensures that the Material Icons font is
|
|
# included with your application, so that you can use the icons in
|
|
# the material Icons class.
|
|
generate: true
|
|
uses-material-design: true
|
|
|
|
# To add assets to your application, add an assets section, like this:
|
|
assets:
|
|
- assets/images/
|
|
- assets/animations/
|
|
- assets/files/
|
|
- assets/files/policy_text.text
|
|
- assets/config/
|
|
- assets/fonts/
|
|
|
|
msix_config:
|
|
display_name: Manager
|
|
publisher_name: Manager-App
|
|
identity_name: Unov.Manager
|
|
msix_version: 1.0.0.0
|
|
certificate_path: C:/Users/Thomas Fransolet/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/msix-2.1.3/lib/assets/test_certificate.pfx
|
|
certificate_password: 1234
|
|
certificate_subject: CN=Unov
|
|
logo_path: C:\Users\Thomas Fransolet\Downloads\download.png
|
|
start_menu_icon_path: C:\Users\Thomas Fransolet\Downloads\download.png
|
|
tile_icon_path: C:\Users\Thomas Fransolet\Downloads\download.png
|
|
icons_background_color: ffffff
|
|
architecture: x64
|
|
capabilities: 'internetClient'
|
|
|
|
fonts:
|
|
- family: OpenSans
|
|
fonts:
|
|
- asset: fonts/OpenSans-Medium.ttf
|
|
|
|
# An image asset can refer to one or more resolution-specific "variants", see
|
|
# https://flutter.dev/assets-and-images/#resolution-aware.
|
|
|
|
# For details regarding adding assets from package dependencies, see
|
|
# https://flutter.dev/assets-and-images/#from-packages
|
|
|
|
# To add custom fonts to your application, add a fonts section here,
|
|
# in this "flutter" section. Each entry in this list should have a
|
|
# "family" key with the font family name, and a "fonts" key with a
|
|
# list giving the asset and other descriptors for the font. For
|
|
# example:
|
|
# fonts:
|
|
# - family: Schyler
|
|
# fonts:
|
|
# - asset: fonts/Schyler-Regular.ttf
|
|
# - asset: fonts/Schyler-Italic.ttf
|
|
# style: italic
|
|
# - family: Trajan Pro
|
|
# fonts:
|
|
# - asset: fonts/TrajanPro.ttf
|
|
# - asset: fonts/TrajanPro_Bold.ttf
|
|
# weight: 700
|
|
#
|
|
# For details regarding fonts from package dependencies,
|
|
# see https://flutter.dev/custom-fonts/#from-packages
|