Browse Source

recherche et regle

28062025_02
Stephane 3 weeks ago
parent
commit
865410ae93
  1. BIN
      android/app/src/main/res/mipmap-hdpi/ic_launcher.png
  2. BIN
      android/app/src/main/res/mipmap-mdpi/ic_launcher.png
  3. BIN
      android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
  4. BIN
      android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
  5. BIN
      android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
  6. 4
      flutter_launcher_icons.yaml
  7. 2
      ios/Podfile
  8. 95
      ios/Podfile.lock
  9. 1
      ios/build/ios/XCBuildData/PIFCache/project/PROJECT@v11_mod=7e9f9a517e1b730b3eb5b9aa5a52f2df_hash=bfdfe7dc352907fc980b868725387e98plugins=1OJSG6M1FOV3XYQCBH7Z29RZ0FPR9XDE1-json
  10. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=0494408a253e7d0de37189ec920c855b-json
  11. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=05403e5553691610bda7462ed4c0de2d-json
  12. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=17dddceee6bb9a704ee499922895346e-json
  13. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=1a9262a19618644a742fccf75eee4c63-json
  14. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=1d938d1ca2e286102c35faa55f70bd7b-json
  15. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=2227a11f58beec16694eb2662b5a7a85-json
  16. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=23d39f0df67eb397f4a37d14c47cb5f3-json
  17. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=240f7548eb0380a27d246653fef186c7-json
  18. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=2a31010157f229c2913a8c78eeb86d17-json
  19. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=47d762426fd113486d1932e7e8607cb8-json
  20. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=498c39e3197b1f5c85aee67f2af9923f-json
  21. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=4a95d6b1b9c9a4e4e139e2c0111bbf11-json
  22. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=4cf41432834952b58c6a8f4f3292f16c-json
  23. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=5e244b610b9e421eb399911f5c4f9cae-json
  24. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=67c21b2f7ba1542ed191bd817322b7ea-json
  25. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=6b0cac1b50a2798ac10de5d518bb481e-json
  26. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=798917abe3087e978cf864b387aa5f68-json
  27. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=83d77e9aaaf9998b76c098e9fd4149f8-json
  28. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=8d498deb1eddfab0043a1107949e98c9-json
  29. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=a5075e062f26a57e3bad52e5f106e4ac-json
  30. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b0223446e6e623d17d095782aba79a6f-json
  31. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b14f57d781a2c3458c6f218e7839483c-json
  32. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b743372bd74c08ef01e1ff2e69f91888-json
  33. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=c16496fd11ec3226103203832a355be5-json
  34. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=d0ab9dc3b37823278e7caf5fe932daea-json
  35. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=d29feb89671b615e5c45759fdd0b001f-json
  36. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=da525478eb3aa054032332ae78b005d7-json
  37. 1
      ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=fbebf02af38d101cac27ae5c3678a88b-json
  38. 225
      lib/Views/HandleProduct.dart
  39. 4
      lib/Views/gestionProduct.dart
  40. 35
      lib/Views/gestionStock.dart
  41. 35
      macos/Podfile.lock
  42. 7
      macos/Runner/DebugProfile.entitlements
  43. 9
      macos/Runner/Info.plist
  44. 12
      macos/Runner/Release.entitlements

BIN
android/app/src/main/res/mipmap-hdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 544 B

After

Width:  |  Height:  |  Size: 6.5 KiB

BIN
android/app/src/main/res/mipmap-mdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 442 B

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 721 B

After

Width:  |  Height:  |  Size: 9.9 KiB

BIN
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 14 KiB

BIN
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 17 KiB

4
flutter_launcher_icons.yaml

@ -0,0 +1,4 @@
android: true
ios: true
macos: true
image_path: assets/youmaz2.png

2
ios/Podfile

@ -32,7 +32,7 @@ target 'Runner' do
use_frameworks! use_frameworks!
use_modular_headers! use_modular_headers!
# Add This Line # Add This Line
pod 'PhoneNumberKit', '~> 4.0.1' pod 'PhoneNumberKit'
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
# target 'RunnerTests' do # target 'RunnerTests' do
# inherit! :search_paths # inherit! :search_paths

95
ios/Podfile.lock

@ -38,11 +38,63 @@ PODS:
- Flutter (1.0.0) - Flutter (1.0.0)
- flutter_pdfview (1.0.2): - flutter_pdfview (1.0.2):
- Flutter - Flutter
- GoogleDataTransport (9.4.1):
- GoogleUtilities/Environment (~> 7.7)
- nanopb (< 2.30911.0, >= 2.30908.0)
- PromisesObjC (< 3.0, >= 1.2)
- GoogleMLKit/BarcodeScanning (6.0.0):
- GoogleMLKit/MLKitCore
- MLKitBarcodeScanning (~> 5.0.0)
- GoogleMLKit/MLKitCore (6.0.0):
- MLKitCommon (~> 11.0.0)
- GoogleToolboxForMac/Defines (4.2.1)
- GoogleToolboxForMac/Logger (4.2.1):
- GoogleToolboxForMac/Defines (= 4.2.1)
- "GoogleToolboxForMac/NSData+zlib (4.2.1)":
- GoogleToolboxForMac/Defines (= 4.2.1)
- GoogleUtilities/Environment (7.13.3):
- GoogleUtilities/Privacy
- PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/Logger (7.13.3):
- GoogleUtilities/Environment
- GoogleUtilities/Privacy
- GoogleUtilities/Privacy (7.13.3)
- GoogleUtilities/UserDefaults (7.13.3):
- GoogleUtilities/Logger
- GoogleUtilities/Privacy
- GoogleUtilitiesComponents (1.1.0):
- GoogleUtilities/Logger
- GTMSessionFetcher/Core (3.5.0)
- image_picker_ios (0.0.1): - image_picker_ios (0.0.1):
- Flutter - Flutter
- libphonenumber_plugin (0.0.1): - libphonenumber_plugin (0.0.1):
- Flutter - Flutter
- PhoneNumberKit - PhoneNumberKit
- MLImage (1.0.0-beta5)
- MLKitBarcodeScanning (5.0.0):
- MLKitCommon (~> 11.0)
- MLKitVision (~> 7.0)
- MLKitCommon (11.0.0):
- GoogleDataTransport (< 10.0, >= 9.4.1)
- GoogleToolboxForMac/Logger (< 5.0, >= 4.2.1)
- "GoogleToolboxForMac/NSData+zlib (< 5.0, >= 4.2.1)"
- GoogleUtilities/UserDefaults (< 8.0, >= 7.13.0)
- GoogleUtilitiesComponents (~> 1.0)
- GTMSessionFetcher/Core (< 4.0, >= 3.3.2)
- MLKitVision (7.0.0):
- GoogleToolboxForMac/Logger (< 5.0, >= 4.2.1)
- "GoogleToolboxForMac/NSData+zlib (< 5.0, >= 4.2.1)"
- GTMSessionFetcher/Core (< 4.0, >= 3.3.2)
- MLImage (= 1.0.0-beta5)
- MLKitCommon (~> 11.0)
- mobile_scanner (5.2.3):
- Flutter
- GoogleMLKit/BarcodeScanning (~> 6.0.0)
- nanopb (2.30910.0):
- nanopb/decode (= 2.30910.0)
- nanopb/encode (= 2.30910.0)
- nanopb/decode (2.30910.0)
- nanopb/encode (2.30910.0)
- open_file_ios (0.0.1): - open_file_ios (0.0.1):
- Flutter - Flutter
- path_provider_foundation (0.0.1): - path_provider_foundation (0.0.1):
@ -54,10 +106,11 @@ PODS:
- PhoneNumberKit/PhoneNumberKitCore (4.0.1) - PhoneNumberKit/PhoneNumberKitCore (4.0.1)
- PhoneNumberKit/UIKit (4.0.1): - PhoneNumberKit/UIKit (4.0.1):
- PhoneNumberKit/PhoneNumberKitCore - PhoneNumberKit/PhoneNumberKitCore
- PromisesObjC (2.4.0)
- SDWebImage (5.21.0): - SDWebImage (5.21.0):
- SDWebImage/Core (= 5.21.0) - SDWebImage/Core (= 5.21.0)
- SDWebImage/Core (5.21.0) - SDWebImage/Core (5.21.0)
- sqflite_darwin (0.0.4): - shared_preferences_foundation (0.0.1):
- Flutter - Flutter
- FlutterMacOS - FlutterMacOS
- SwiftyGif (5.4.5) - SwiftyGif (5.4.5)
@ -71,17 +124,30 @@ DEPENDENCIES:
- flutter_pdfview (from `.symlinks/plugins/flutter_pdfview/ios`) - flutter_pdfview (from `.symlinks/plugins/flutter_pdfview/ios`)
- image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
- libphonenumber_plugin (from `.symlinks/plugins/libphonenumber_plugin/ios`) - libphonenumber_plugin (from `.symlinks/plugins/libphonenumber_plugin/ios`)
- mobile_scanner (from `.symlinks/plugins/mobile_scanner/ios`)
- open_file_ios (from `.symlinks/plugins/open_file_ios/ios`) - open_file_ios (from `.symlinks/plugins/open_file_ios/ios`)
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
- PhoneNumberKit (~> 4.0.1) - PhoneNumberKit
- sqflite_darwin (from `.symlinks/plugins/sqflite_darwin/darwin`) - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
SPEC REPOS: SPEC REPOS:
trunk: trunk:
- DKImagePickerController - DKImagePickerController
- DKPhotoGallery - DKPhotoGallery
- GoogleDataTransport
- GoogleMLKit
- GoogleToolboxForMac
- GoogleUtilities
- GoogleUtilitiesComponents
- GTMSessionFetcher
- MLImage
- MLKitBarcodeScanning
- MLKitCommon
- MLKitVision
- nanopb
- PhoneNumberKit - PhoneNumberKit
- PromisesObjC
- SDWebImage - SDWebImage
- SwiftyGif - SwiftyGif
@ -98,12 +164,14 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/image_picker_ios/ios" :path: ".symlinks/plugins/image_picker_ios/ios"
libphonenumber_plugin: libphonenumber_plugin:
:path: ".symlinks/plugins/libphonenumber_plugin/ios" :path: ".symlinks/plugins/libphonenumber_plugin/ios"
mobile_scanner:
:path: ".symlinks/plugins/mobile_scanner/ios"
open_file_ios: open_file_ios:
:path: ".symlinks/plugins/open_file_ios/ios" :path: ".symlinks/plugins/open_file_ios/ios"
path_provider_foundation: path_provider_foundation:
:path: ".symlinks/plugins/path_provider_foundation/darwin" :path: ".symlinks/plugins/path_provider_foundation/darwin"
sqflite_darwin: shared_preferences_foundation:
:path: ".symlinks/plugins/sqflite_darwin/darwin" :path: ".symlinks/plugins/shared_preferences_foundation/darwin"
url_launcher_ios: url_launcher_ios:
:path: ".symlinks/plugins/url_launcher_ios/ios" :path: ".symlinks/plugins/url_launcher_ios/ios"
@ -114,16 +182,29 @@ SPEC CHECKSUMS:
file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be file_picker: a0560bc09d61de87f12d246fc47d2119e6ef37be
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
flutter_pdfview: 32bf27bda6fd85b9dd2c09628a824df5081246cf flutter_pdfview: 32bf27bda6fd85b9dd2c09628a824df5081246cf
GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
GoogleMLKit: 97ac7af399057e99182ee8edfa8249e3226a4065
GoogleToolboxForMac: d1a2cbf009c453f4d6ded37c105e2f67a32206d8
GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15
GoogleUtilitiesComponents: 679b2c881db3b615a2777504623df6122dd20afe
GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a
libphonenumber_plugin: d134f173b22bfa5ede50887071f087f309277f8c libphonenumber_plugin: d134f173b22bfa5ede50887071f087f309277f8c
MLImage: 1824212150da33ef225fbd3dc49f184cf611046c
MLKitBarcodeScanning: 10ca0845a6d15f2f6e911f682a1998b68b973e8b
MLKitCommon: afec63980417d29ffbb4790529a1b0a2291699e1
MLKitVision: e858c5f125ecc288e4a31127928301eaba9ae0c1
mobile_scanner: 92e8812bf22a8f84131e2a7f9d0f44dad1a4742b
nanopb: 438bc412db1928dac798aa6fd75726007be04262
open_file_ios: 5ff7526df64e4394b4fe207636b67a95e83078bb open_file_ios: 5ff7526df64e4394b4fe207636b67a95e83078bb
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564 path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
PhoneNumberKit: a74155066daa6450475f6a029068eb919fb00d5d PhoneNumberKit: a74155066daa6450475f6a029068eb919fb00d5d
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
SDWebImage: f84b0feeb08d2d11e6a9b843cb06d75ebf5b8868 SDWebImage: f84b0feeb08d2d11e6a9b843cb06d75ebf5b8868
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4 SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
url_launcher_ios: 694010445543906933d732453a59da0a173ae33d url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
PODFILE CHECKSUM: a28aa98e3ca7183648527da64078769adf630e89 PODFILE CHECKSUM: 40a81d716601cb7e489b5e5da42322c08f3e9b52
COCOAPODS: 1.16.2 COCOAPODS: 1.16.2

1
ios/build/ios/XCBuildData/PIFCache/project/PROJECT@v11_mod=7e9f9a517e1b730b3eb5b9aa5a52f2df_hash=bfdfe7dc352907fc980b868725387e98plugins=1OJSG6M1FOV3XYQCBH7Z29RZ0FPR9XDE1-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=0494408a253e7d0de37189ec920c855b-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=05403e5553691610bda7462ed4c0de2d-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=17dddceee6bb9a704ee499922895346e-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=1a9262a19618644a742fccf75eee4c63-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=1d938d1ca2e286102c35faa55f70bd7b-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=2227a11f58beec16694eb2662b5a7a85-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=23d39f0df67eb397f4a37d14c47cb5f3-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=240f7548eb0380a27d246653fef186c7-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=2a31010157f229c2913a8c78eeb86d17-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e988660f504b67cd568a692e296f07f10e5","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SwiftyGif","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SwiftyGif","INFOPLIST_FILE":"Target Support Files/SwiftyGif/ResourceBundle-SwiftyGif-SwiftyGif-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"SwiftyGif","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e985e443d8c100c089879ec09e1edd6f9cb","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e985ef3d7c611762a00791c0dce3b9c1050","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SwiftyGif","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SwiftyGif","INFOPLIST_FILE":"Target Support Files/SwiftyGif/ResourceBundle-SwiftyGif-SwiftyGif-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"SwiftyGif","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e982c7cb25390ded4c879095950e69476e3","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e985ef3d7c611762a00791c0dce3b9c1050","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SwiftyGif","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SwiftyGif","INFOPLIST_FILE":"Target Support Files/SwiftyGif/ResourceBundle-SwiftyGif-SwiftyGif-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"SwiftyGif","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98b1c2c6a5fb9838908cd71b35862110e2","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e984126d34170f98c65c70def8f5b8f20ec","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98a6afbe0825a5caf22666104c86cb5308","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e988549d5cdb73a77eca3da12a5c007a47e","guid":"bfdfe7dc352907fc980b868725387e9816c93ab2ca4dc1378da7325dd567c14e"}],"guid":"bfdfe7dc352907fc980b868725387e983bd1d13fb7a36851b0c1ede064ecb5bf","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e98f5cd644fc2aeb8654450a2168f52697c","name":"SwiftyGif-SwiftyGif","productReference":{"guid":"bfdfe7dc352907fc980b868725387e9824d08d80a11ec6e34ca1c1e17eca0844","name":"SwiftyGif.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=47d762426fd113486d1932e7e8607cb8-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e980c993d7ddef2cd989a58977310054417","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/PhoneNumberKit","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"PhoneNumberKit","INFOPLIST_FILE":"Target Support Files/PhoneNumberKit/ResourceBundle-PhoneNumberKitPrivacy-PhoneNumberKit-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"PhoneNumberKitPrivacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9866c425b89616e6c5ec0d6996b12e2dc1","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98376c2f2df2f6bfe63740e04a95ffe2b5","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/PhoneNumberKit","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"PhoneNumberKit","INFOPLIST_FILE":"Target Support Files/PhoneNumberKit/ResourceBundle-PhoneNumberKitPrivacy-PhoneNumberKit-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"PhoneNumberKitPrivacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e981784057da42771ea9dd544b8b67ee6a6","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98376c2f2df2f6bfe63740e04a95ffe2b5","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/PhoneNumberKit","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"PhoneNumberKit","INFOPLIST_FILE":"Target Support Files/PhoneNumberKit/ResourceBundle-PhoneNumberKitPrivacy-PhoneNumberKit-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"PhoneNumberKitPrivacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9805ee69a5db135e23a1a137abf3b37883","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98a65b97a42f777915e9f5af4d3c0cc6ef","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98b9fe88cce4579466975917fbf5aea6f5","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e98d975c131fcea719de40a0868fbedd482","guid":"bfdfe7dc352907fc980b868725387e98ae62a96c61d566598d3f008991516132"}],"guid":"bfdfe7dc352907fc980b868725387e98eb78db11c6c8d3a25e4501a28bb3ea45","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e9830efee903e29d8dc896f9a9a5aa8ca9d","name":"PhoneNumberKit-PhoneNumberKitPrivacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e98bf04cb0cc0ec9fc576a20a91ae4a14e8","name":"PhoneNumberKitPrivacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=498c39e3197b1f5c85aee67f2af9923f-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=4a95d6b1b9c9a4e4e139e2c0111bbf11-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=4cf41432834952b58c6a8f4f3292f16c-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98098898a87882e0ba60461ed53ee0d4e3","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/sqflite_darwin","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"sqflite_darwin","INFOPLIST_FILE":"Target Support Files/sqflite_darwin/ResourceBundle-sqflite_darwin_privacy-sqflite_darwin-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"sqflite_darwin_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98af19cace04cb499ddc25346d7f47e62a","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e982b339f852b9159289fe803f2621270f6","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/sqflite_darwin","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"sqflite_darwin","INFOPLIST_FILE":"Target Support Files/sqflite_darwin/ResourceBundle-sqflite_darwin_privacy-sqflite_darwin-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"sqflite_darwin_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e982f4dccd4b9824a05c78189a9571a1980","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e982b339f852b9159289fe803f2621270f6","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/sqflite_darwin","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"sqflite_darwin","INFOPLIST_FILE":"Target Support Files/sqflite_darwin/ResourceBundle-sqflite_darwin_privacy-sqflite_darwin-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"sqflite_darwin_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98bcc3274107fde69d9d7509cefb7fcd88","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98216295202790db25e9b0e34e90a1aeef","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98344c817d6c09d693bfccb3c532e743c6","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e989259fb844fd2e715518b85fddf032f47","guid":"bfdfe7dc352907fc980b868725387e987c4f28e59ad920f4fca69d20cf180876"}],"guid":"bfdfe7dc352907fc980b868725387e984cfc7d039a36266507dad559262c4ee1","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e9883134bb5f399cb37a1eb075d4fea30d8","name":"sqflite_darwin-sqflite_darwin_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e9849c1d4b1200fcbf6f387f94121c7d0bf","name":"sqflite_darwin_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=5e244b610b9e421eb399911f5c4f9cae-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=67c21b2f7ba1542ed191bd817322b7ea-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=6b0cac1b50a2798ac10de5d518bb481e-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e983f9ec39d3e84781fd2f5a36ca1a80506","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/url_launcher_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"url_launcher_ios","INFOPLIST_FILE":"Target Support Files/url_launcher_ios/ResourceBundle-url_launcher_ios_privacy-url_launcher_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"url_launcher_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e987265dd0b465c65f58583a7f6eb722c5c","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98c67589f1a2ce7a8d2b3953fd1c9e7a59","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/url_launcher_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"url_launcher_ios","INFOPLIST_FILE":"Target Support Files/url_launcher_ios/ResourceBundle-url_launcher_ios_privacy-url_launcher_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"url_launcher_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98770a5de6c02fc1fab4b8e0e55f7c3355","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98c67589f1a2ce7a8d2b3953fd1c9e7a59","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/url_launcher_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"url_launcher_ios","INFOPLIST_FILE":"Target Support Files/url_launcher_ios/ResourceBundle-url_launcher_ios_privacy-url_launcher_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"url_launcher_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9881f6e4414693308b29a159a116fda4e1","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e983f1601c37c12cb60ac7bde5bccf7b7ea","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e9878c0a878e6869c4a747b51e38e264060","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e98294df81e7bab02110569395536fccd2e","guid":"bfdfe7dc352907fc980b868725387e9829d123b9c14728f272d2f181d228418e"}],"guid":"bfdfe7dc352907fc980b868725387e98b05ac2031006599d69596e969bf569b8","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e9891b3b8cc56823cdea4b418e009a423b2","name":"url_launcher_ios-url_launcher_ios_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e9827df8da513ac7d6928fc311b53a7155d","name":"url_launcher_ios_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=798917abe3087e978cf864b387aa5f68-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=83d77e9aaaf9998b76c098e9fd4149f8-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9845c9ef11ede518490fc9d6929e898522","buildSettings":{"ASSETCATALOG_COMPILER_APPICON_NAME":"AppIcon","ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME":"AccentColor","CLANG_ENABLE_OBJC_WEAK":"NO","ENABLE_USER_SCRIPT_SANDBOXING":"NO","IPHONEOS_DEPLOYMENT_TARGET":"12.0","LD_RUNPATH_SEARCH_PATHS":"$(inherited) @executable_path/Frameworks","ONLY_ACTIVE_ARCH":"NO","SDKROOT":"iphoneos","TARGETED_DEVICE_FAMILY":"1,2"},"guid":"bfdfe7dc352907fc980b868725387e982cf0da236cf10d087750aa1434da9227","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9874d05dd0b084952d606802c8e305b268","buildSettings":{"ASSETCATALOG_COMPILER_APPICON_NAME":"AppIcon","ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME":"AccentColor","CLANG_ENABLE_OBJC_WEAK":"NO","ENABLE_USER_SCRIPT_SANDBOXING":"NO","IPHONEOS_DEPLOYMENT_TARGET":"12.0","LD_RUNPATH_SEARCH_PATHS":"$(inherited) @executable_path/Frameworks","SDKROOT":"iphoneos","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES"},"guid":"bfdfe7dc352907fc980b868725387e98cc28f154213fd8181aa70d4c188a8335","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9874d05dd0b084952d606802c8e305b268","buildSettings":{"ASSETCATALOG_COMPILER_APPICON_NAME":"AppIcon","ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME":"AccentColor","CLANG_ENABLE_OBJC_WEAK":"NO","ENABLE_USER_SCRIPT_SANDBOXING":"NO","IPHONEOS_DEPLOYMENT_TARGET":"12.0","LD_RUNPATH_SEARCH_PATHS":"$(inherited) @executable_path/Frameworks","SDKROOT":"iphoneos","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES"},"guid":"bfdfe7dc352907fc980b868725387e981f19fefc6e52ad9e4e005a2248234387","name":"Release"}],"buildPhases":[],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e989da425bb6d6d5d8dbb95e4afffb82217","name":"Flutter","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"","configurationName":"Release","provisioningStyle":0}],"type":"aggregate"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=8d498deb1eddfab0043a1107949e98c9-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e986930a4bb647f427b124c91b4304b3779","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/path_provider_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"path_provider_foundation","INFOPLIST_FILE":"Target Support Files/path_provider_foundation/ResourceBundle-path_provider_foundation_privacy-path_provider_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"path_provider_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e989e73560a7b2519b4f32ffa652fbdd236","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9811fb4b1ff39ef46a5b54abff58b39232","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/path_provider_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"path_provider_foundation","INFOPLIST_FILE":"Target Support Files/path_provider_foundation/ResourceBundle-path_provider_foundation_privacy-path_provider_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"path_provider_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98462f63a3d7aacd57b89f76dab1c799e5","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9811fb4b1ff39ef46a5b54abff58b39232","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/path_provider_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"path_provider_foundation","INFOPLIST_FILE":"Target Support Files/path_provider_foundation/ResourceBundle-path_provider_foundation_privacy-path_provider_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"path_provider_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98727c787420ee2ab7343bb57882873569","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98106ffc7884aca9a29ebf5fddf5b11607","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e989d0320a7552287e16e40195cd920f1c7","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e9849193480861cca9555a074f31073df3e","guid":"bfdfe7dc352907fc980b868725387e982f77944f90f08bae32b83f1efff7d152"}],"guid":"bfdfe7dc352907fc980b868725387e9880c6d8312df72d0f8d9311053be3c0cb","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e987ea64ee8d53085bf9edd1a57aaf8cbb5","name":"path_provider_foundation-path_provider_foundation_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e986e649604f74c414a7c2dbe5ef4cc4e75","name":"path_provider_foundation_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=a5075e062f26a57e3bad52e5f106e4ac-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b0223446e6e623d17d095782aba79a6f-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e989e4d61be8423b8a76e1f0acae4344c0c","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/DKPhotoGallery","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"DKPhotoGallery","INFOPLIST_FILE":"Target Support Files/DKPhotoGallery/ResourceBundle-DKPhotoGallery-DKPhotoGallery-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"DKPhotoGallery","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9827b0d67fe20e61d70ea51e1e426fa5a4","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98ce25403f2e31ba3d19062269561c847e","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/DKPhotoGallery","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"DKPhotoGallery","INFOPLIST_FILE":"Target Support Files/DKPhotoGallery/ResourceBundle-DKPhotoGallery-DKPhotoGallery-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"DKPhotoGallery","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98df96ed2e51e7449182a642516de846e8","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98ce25403f2e31ba3d19062269561c847e","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/DKPhotoGallery","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"DKPhotoGallery","INFOPLIST_FILE":"Target Support Files/DKPhotoGallery/ResourceBundle-DKPhotoGallery-DKPhotoGallery-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"DKPhotoGallery","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9876ab7af6c01b94d92d8635675e0a1e9f","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98d4cceebc8223c203bda3ae043d4f5a2a","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98e3bb8fa9ad529b16922d74183d3e157e","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e98d290f95eda1d47523b5bfb4841891302","guid":"bfdfe7dc352907fc980b868725387e9877a16b4dcabff5ab7984c585d54c83cf"},{"fileReference":"bfdfe7dc352907fc980b868725387e983d8bce4e570c9338d5f5931c9ba86e89","guid":"bfdfe7dc352907fc980b868725387e9834bf0ed335b3589d93255c918a288123"},{"fileReference":"bfdfe7dc352907fc980b868725387e98a7725f51944b5ffc23b0346377fa1496","guid":"bfdfe7dc352907fc980b868725387e982d22b6c46d36583f0dd323e5502aa8d8"},{"fileReference":"bfdfe7dc352907fc980b868725387e9816be827b3d572d08a67dd5dec7a269db","guid":"bfdfe7dc352907fc980b868725387e98bfe1f8f8d6fb8ce49b0e510f209ce544"},{"fileReference":"bfdfe7dc352907fc980b868725387e98779af039b1704e42a85a53a76916a9e7","guid":"bfdfe7dc352907fc980b868725387e9844db95573d52e5489d14e78135f3f83b"}],"guid":"bfdfe7dc352907fc980b868725387e98dfeee6176dd4d9244fcd403266fdb0fe","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e98d3f65728b12dd217475d1283ee417937","name":"DKPhotoGallery-DKPhotoGallery","productReference":{"guid":"bfdfe7dc352907fc980b868725387e9845db4417944723d8b91f4a6c67e94d3c","name":"DKPhotoGallery.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b14f57d781a2c3458c6f218e7839483c-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98b02e34bf30053adbd95f2df89ceb6980","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/image_picker_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"image_picker_ios","INFOPLIST_FILE":"Target Support Files/image_picker_ios/ResourceBundle-image_picker_ios_privacy-image_picker_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"image_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e980e74c599f81be6f51219d3e76fff560f","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9802d37552ee35230789525435ce1d185e","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/image_picker_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"image_picker_ios","INFOPLIST_FILE":"Target Support Files/image_picker_ios/ResourceBundle-image_picker_ios_privacy-image_picker_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"image_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98f594875355b0109ba3661824011fa560","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9802d37552ee35230789525435ce1d185e","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/image_picker_ios","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"image_picker_ios","INFOPLIST_FILE":"Target Support Files/image_picker_ios/ResourceBundle-image_picker_ios_privacy-image_picker_ios-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"image_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e988954c2ab32b8061670d7f0c9acf42716","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98a740d66d499d64a7ef449f54d5a207d1","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e980d40062b93aac519c10ddca67d541c47","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e989ffd990970f195ec0fc35388981bd27e","guid":"bfdfe7dc352907fc980b868725387e98941bb438e2ce43c8015fb5cb21d95876"}],"guid":"bfdfe7dc352907fc980b868725387e983700146dfed5a2f1f7852252478cbd41","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e98082dc85da1fc941e5234c7cc1f11b27d","name":"image_picker_ios-image_picker_ios_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e98cba567c8a049008de84f093e54e3191c","name":"image_picker_ios_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=b743372bd74c08ef01e1ff2e69f91888-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=c16496fd11ec3226103203832a355be5-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e98c4b3f901f783f87404585b53fbe73d83","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SDWebImage","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SDWebImage","INFOPLIST_FILE":"Target Support Files/SDWebImage/ResourceBundle-SDWebImage-SDWebImage-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"SDWebImage","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98d16fd49f72ef628cda2f9600716a0e19","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e981b703fcabd23454c5e4a540fb7bd3bff","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SDWebImage","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SDWebImage","INFOPLIST_FILE":"Target Support Files/SDWebImage/ResourceBundle-SDWebImage-SDWebImage-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"SDWebImage","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9884cd3653c7bd548396122d2e6fa40603","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e981b703fcabd23454c5e4a540fb7bd3bff","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/SDWebImage","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"SDWebImage","INFOPLIST_FILE":"Target Support Files/SDWebImage/ResourceBundle-SDWebImage-SDWebImage-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"9.0","PRODUCT_NAME":"SDWebImage","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98bcea497f976315de9514ba2ba60be88a","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e986a94baaf1a74b5ddccfd58051c18594c","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e988765330156fb2b1afdd444ae816c2c38","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e984d55a8610fe1c60f6bf809c2766925c4","guid":"bfdfe7dc352907fc980b868725387e98fbe4bda3c50532ddd96a2f19707793b9"}],"guid":"bfdfe7dc352907fc980b868725387e989477d9a49c5d2345a6ddd9ae61f2de6c","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e9826e2628dc041aabe2d77e75ccb1dc95b","name":"SDWebImage-SDWebImage","productReference":{"guid":"bfdfe7dc352907fc980b868725387e986798c379d76b6055dc2d719d4bd63a69","name":"SDWebImage.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=d0ab9dc3b37823278e7caf5fe932daea-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9892664ed2fccbc2dcf887a88fa8db78c5","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/shared_preferences_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"shared_preferences_foundation","INFOPLIST_FILE":"Target Support Files/shared_preferences_foundation/ResourceBundle-shared_preferences_foundation_privacy-shared_preferences_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"shared_preferences_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e989e2c69ee3fa07967191e9ea90584fcc7","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e986b02bf13c98fc749b18b9f7571f81941","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/shared_preferences_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"shared_preferences_foundation","INFOPLIST_FILE":"Target Support Files/shared_preferences_foundation/ResourceBundle-shared_preferences_foundation_privacy-shared_preferences_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"shared_preferences_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e9812d0cfe09638a29fdee36bcc4ae60b5f","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e986b02bf13c98fc749b18b9f7571f81941","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/shared_preferences_foundation","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"shared_preferences_foundation","INFOPLIST_FILE":"Target Support Files/shared_preferences_foundation/ResourceBundle-shared_preferences_foundation_privacy-shared_preferences_foundation-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"shared_preferences_foundation_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e989814c574dba090de4779eefb20a7e305","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e980667bfb91f71a4cc0820e9dc7084b81b","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e98712ccf80cc6b994c2efd367e8aba88e1","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e98c7f646795b6b2f40f13308ac061bf3eb","guid":"bfdfe7dc352907fc980b868725387e98298935b0809b0783469ddb570c766123"}],"guid":"bfdfe7dc352907fc980b868725387e98e01785208e008b1f7274dc7ec968aa64","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e98e0be3b0d5ad56f1985578b1f97431765","name":"shared_preferences_foundation-shared_preferences_foundation_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e98ad625504a4c1e61077bbfd33bd1d1785","name":"shared_preferences_foundation_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=d29feb89671b615e5c45759fdd0b001f-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=da525478eb3aa054032332ae78b005d7-json

File diff suppressed because one or more lines are too long

1
ios/build/ios/XCBuildData/PIFCache/target/TARGET@v11_hash=fbebf02af38d101cac27ae5c3678a88b-json

@ -0,0 +1 @@
{"buildConfigurations":[{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e9840af901554a0b46373640fbc5c6c7dfb","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/file_picker","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"file_picker","INFOPLIST_FILE":"Target Support Files/file_picker/ResourceBundle-file_picker_ios_privacy-file_picker-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","ONLY_ACTIVE_ARCH":"NO","PRODUCT_NAME":"file_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e989cad7c6d22d8c37f977d95171fc16497","name":"Debug"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e980d5a370773f8535b798fccfe62daed8b","buildSettings":{"CLANG_ENABLE_OBJC_WEAK":"NO","CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/file_picker","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"file_picker","INFOPLIST_FILE":"Target Support Files/file_picker/ResourceBundle-file_picker_ios_privacy-file_picker-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"file_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","VALIDATE_PRODUCT":"YES","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98465f876e14f9756787564170ea2583fc","name":"Profile"},{"baseConfigurationFileReference":"bfdfe7dc352907fc980b868725387e980d5a370773f8535b798fccfe62daed8b","buildSettings":{"CODE_SIGNING_ALLOWED":"NO","CODE_SIGNING_IDENTITY":"-","CODE_SIGNING_REQUIRED":"NO","CONFIGURATION_BUILD_DIR":"$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/file_picker","EXPANDED_CODE_SIGN_IDENTITY":"-","IBSC_MODULE":"file_picker","INFOPLIST_FILE":"Target Support Files/file_picker/ResourceBundle-file_picker_ios_privacy-file_picker-Info.plist","IPHONEOS_DEPLOYMENT_TARGET":"12.0","PRODUCT_NAME":"file_picker_ios_privacy","SDKROOT":"iphoneos","SKIP_INSTALL":"YES","TARGETED_DEVICE_FAMILY":"1,2","WRAPPER_EXTENSION":"bundle"},"guid":"bfdfe7dc352907fc980b868725387e98771542af12ca1dd2f9a64664358bfe87","name":"Release"}],"buildPhases":[{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e9879927a51648a49d0d47af5cd9daa3a41","type":"com.apple.buildphase.sources"},{"buildFiles":[],"guid":"bfdfe7dc352907fc980b868725387e989a3c262f82281c6d58b03f8f98b079b2","type":"com.apple.buildphase.frameworks"},{"buildFiles":[{"fileReference":"bfdfe7dc352907fc980b868725387e98cf65933b4a63d330f803e2e112507b15","guid":"bfdfe7dc352907fc980b868725387e981d9e89a298c2524cd7a572e4fab5e9d2"}],"guid":"bfdfe7dc352907fc980b868725387e98a61ce9f0bf5c1bc1a13882e5104d4e35","type":"com.apple.buildphase.resources"}],"buildRules":[],"dependencies":[],"guid":"bfdfe7dc352907fc980b868725387e985452a642045cac0ef7c37f93da2d994e","name":"file_picker-file_picker_ios_privacy","productReference":{"guid":"bfdfe7dc352907fc980b868725387e985ae769d0b989789f9e90cfb215ac5a2e","name":"file_picker_ios_privacy.bundle","type":"product"},"productTypeIdentifier":"com.apple.product-type.bundle","provisioningSourceData":[{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Debug","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Profile","provisioningStyle":0},{"bundleIdentifierFromInfoPlist":"${PRODUCT_BUNDLE_IDENTIFIER}","configurationName":"Release","provisioningStyle":0}],"type":"standard"}

225
lib/Views/HandleProduct.dart

@ -56,13 +56,14 @@ class _ProductManagementPageState extends State<ProductManagementPage> {
debugPrint('Erreur lors du chargement des catégories: $e'); debugPrint('Erreur lors du chargement des catégories: $e');
// Garder la catégorie par défaut en cas d'erreur // Garder la catégorie par défaut en cas d'erreur
} }
} }
// Catégories prédéfinies pour l'ajout de produits // Catégories prédéfinies pour l'ajout de produits
List<String> _availableCategories = ['Non catégorisé']; List<String> _availableCategories = ['Non catégorisé'];
bool _isUserSuperAdmin() { bool _isUserSuperAdmin() {
return _userController.role == 'Super Admin'; return _userController.role == 'Super Admin';
} }
// Variables pour l'import Excel (conservées du code original) // Variables pour l'import Excel (conservées du code original)
bool _isImporting = false; bool _isImporting = false;
double _importProgress = 0.0; double _importProgress = 0.0;
@ -108,7 +109,8 @@ bool _isUserSuperAdmin() {
bool showAddNewPoint = false; bool showAddNewPoint = false;
// 🎨 Widget pour les cartes d'information // 🎨 Widget pour les cartes d'information
Widget _buildInfoCard(String label, String value, IconData icon, Color color) { Widget _buildInfoCard(
String label, String value, IconData icon, Color color) {
return Container( return Container(
padding: const EdgeInsets.all(12), padding: const EdgeInsets.all(12),
decoration: BoxDecoration( decoration: BoxDecoration(
@ -141,9 +143,11 @@ Widget _buildInfoCard(String label, String value, IconData icon, Color color) {
], ],
), ),
); );
} }
// 🎨 Widget pour les étapes de transfert // 🎨 Widget pour les étapes de transfert
Widget _buildTransferStep(String label, String pointDeVente, IconData icon, Color color) { Widget _buildTransferStep(
String label, String pointDeVente, IconData icon, Color color) {
return Container( return Container(
padding: const EdgeInsets.all(12), padding: const EdgeInsets.all(12),
decoration: BoxDecoration( decoration: BoxDecoration(
@ -184,22 +188,26 @@ Widget _buildTransferStep(String label, String pointDeVente, IconData icon, Colo
], ],
), ),
); );
} }
// 🎨 INTERFACE AMÉLIORÉE: Dialog moderne pour demande de transfert // 🎨 INTERFACE AMÉLIORÉE: Dialog moderne pour demande de transfert
Future<void> _showDemandeTransfertDialog(Product product) async { Future<void> _showDemandeTransfertDialog(Product product) async {
final quantiteController = TextEditingController(text: '1'); final quantiteController = TextEditingController(text: '1');
final notesController = TextEditingController(); final notesController = TextEditingController();
final _formKey = GlobalKey<FormState>(); final _formKey = GlobalKey<FormState>();
// Récupérer les infos du point de vente source // Récupérer les infos du point de vente source
final pointDeVenteSource = await _appDatabase.getPointDeVenteNomById(product.pointDeVenteId ?? 0); final pointDeVenteSource = await _appDatabase
final pointDeVenteDestination = await _appDatabase.getPointDeVenteNomById(_userController.pointDeVenteId); .getPointDeVenteNomById(product.pointDeVenteId ?? 0);
final pointDeVenteDestination = await _appDatabase
.getPointDeVenteNomById(_userController.pointDeVenteId);
await showDialog( await showDialog(
context: context, context: context,
barrierDismissible: false, barrierDismissible: false,
builder: (context) => AlertDialog( builder: (context) => AlertDialog(
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)), shape:
RoundedRectangleBorder(borderRadius: BorderRadius.circular(16)),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
content: Container( content: Container(
width: 400, width: 400,
@ -286,7 +294,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
const SizedBox(width: 12), const SizedBox(width: 12),
Expanded( Expanded(
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment:
CrossAxisAlignment.start,
children: [ children: [
Text( Text(
'Produit à transférer', 'Produit à transférer',
@ -325,14 +334,16 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
'Stock disponible', 'Stock disponible',
'${product.stock ?? 0}', '${product.stock ?? 0}',
Icons.inventory, Icons.inventory,
product.stock != null && product.stock! > 0 product.stock != null &&
product.stock! > 0
? Colors.green ? Colors.green
: Colors.red, : Colors.red,
), ),
), ),
], ],
), ),
if (product.reference != null && product.reference!.isNotEmpty) ...[ if (product.reference != null &&
product.reference!.isNotEmpty) ...[
const SizedBox(height: 8), const SizedBox(height: 8),
Text( Text(
'Référence: ${product.reference}', 'Référence: ${product.reference}',
@ -362,7 +373,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
children: [ children: [
Row( Row(
children: [ children: [
Icon(Icons.arrow_forward, color: Colors.orange.shade700), Icon(Icons.arrow_forward,
color: Colors.orange.shade700),
const SizedBox(width: 8), const SizedBox(width: 8),
Text( Text(
'Informations de transfert', 'Informations de transfert',
@ -386,7 +398,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
), ),
), ),
Container( Container(
margin: const EdgeInsets.symmetric(horizontal: 8), margin: const EdgeInsets.symmetric(
horizontal: 8),
child: Icon( child: Icon(
Icons.arrow_forward, Icons.arrow_forward,
color: Colors.orange.shade700, color: Colors.orange.shade700,
@ -396,7 +409,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
Expanded( Expanded(
child: _buildTransferStep( child: _buildTransferStep(
'VERS', 'VERS',
pointDeVenteDestination ?? 'Chargement...', pointDeVenteDestination ??
'Chargement...',
Icons.store, Icons.store,
Colors.green.shade600, Colors.green.shade600,
), ),
@ -428,19 +442,24 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
children: [ children: [
IconButton( IconButton(
onPressed: () { onPressed: () {
int currentQty = int.tryParse(quantiteController.text) ?? 1; int currentQty =
int.tryParse(quantiteController.text) ??
1;
if (currentQty > 1) { if (currentQty > 1) {
quantiteController.text = (currentQty - 1).toString(); quantiteController.text =
(currentQty - 1).toString();
} }
}, },
icon: Icon(Icons.remove, color: Colors.grey.shade600), icon: Icon(Icons.remove,
color: Colors.grey.shade600),
), ),
Expanded( Expanded(
child: TextFormField( child: TextFormField(
controller: quantiteController, controller: quantiteController,
decoration: const InputDecoration( decoration: const InputDecoration(
border: InputBorder.none, border: InputBorder.none,
contentPadding: EdgeInsets.symmetric(horizontal: 16), contentPadding:
EdgeInsets.symmetric(horizontal: 16),
hintText: 'Quantité', hintText: 'Quantité',
), ),
textAlign: TextAlign.center, textAlign: TextAlign.center,
@ -457,7 +476,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
if (qty <= 0) { if (qty <= 0) {
return 'Quantité invalide'; return 'Quantité invalide';
} }
if (product.stock != null && qty > product.stock!) { if (product.stock != null &&
qty > product.stock!) {
return 'Quantité supérieure au stock disponible'; return 'Quantité supérieure au stock disponible';
} }
return null; return null;
@ -466,20 +486,22 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
), ),
IconButton( IconButton(
onPressed: () { onPressed: () {
int currentQty = int.tryParse(quantiteController.text) ?? 1; int currentQty =
int.tryParse(quantiteController.text) ??
1;
int maxStock = product.stock ?? 999; int maxStock = product.stock ?? 999;
if (currentQty < maxStock) { if (currentQty < maxStock) {
quantiteController.text = (currentQty + 1).toString(); quantiteController.text =
(currentQty + 1).toString();
} }
}, },
icon: Icon(Icons.add, color: Colors.grey.shade600), icon: Icon(Icons.add,
color: Colors.grey.shade600),
), ),
], ],
), ),
), ),
// Boutons d'action avec design moderne // Boutons d'action avec design moderne
Row( Row(
children: [ children: [
@ -487,10 +509,12 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
child: TextButton( child: TextButton(
onPressed: () => Navigator.pop(context), onPressed: () => Navigator.pop(context),
style: TextButton.styleFrom( style: TextButton.styleFrom(
padding: const EdgeInsets.symmetric(vertical: 16), padding: const EdgeInsets.symmetric(
vertical: 16),
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12), borderRadius: BorderRadius.circular(12),
side: BorderSide(color: Colors.grey.shade300), side: BorderSide(
color: Colors.grey.shade300),
), ),
), ),
child: Text( child: Text(
@ -508,9 +532,12 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
flex: 2, flex: 2,
child: ElevatedButton.icon( child: ElevatedButton.icon(
onPressed: () async { onPressed: () async {
if (!_formKey.currentState!.validate()) return; if (!_formKey.currentState!.validate())
return;
final qty = int.tryParse(quantiteController.text) ?? 0; final qty =
int.tryParse(quantiteController.text) ??
0;
if (qty <= 0) { if (qty <= 0) {
Get.snackbar( Get.snackbar(
'Erreur', 'Erreur',
@ -528,8 +555,10 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
await _appDatabase.createDemandeTransfert( await _appDatabase.createDemandeTransfert(
produitId: product.id!, produitId: product.id!,
pointDeVenteSourceId: product.pointDeVenteId!, pointDeVenteSourceId:
pointDeVenteDestinationId: _userController.pointDeVenteId, product.pointDeVenteId!,
pointDeVenteDestinationId:
_userController.pointDeVenteId,
demandeurId: _userController.userId, demandeurId: _userController.userId,
quantite: qty, quantite: qty,
notes: notesController.text.isNotEmpty notes: notesController.text.isNotEmpty
@ -544,7 +573,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
backgroundColor: Colors.green, backgroundColor: Colors.green,
colorText: Colors.white, colorText: Colors.white,
duration: const Duration(seconds: 4), duration: const Duration(seconds: 4),
icon: const Icon(Icons.check_circle, color: Colors.white), icon: const Icon(Icons.check_circle,
color: Colors.white),
); );
} catch (e) { } catch (e) {
Get.snackbar( Get.snackbar(
@ -559,7 +589,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
setState(() => _isLoading = false); setState(() => _isLoading = false);
} }
}, },
icon: const Icon(Icons.send, color: Colors.white), icon: const Icon(Icons.send,
color: Colors.white),
label: const Text( label: const Text(
'Envoyer la demande', 'Envoyer la demande',
style: TextStyle( style: TextStyle(
@ -570,7 +601,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
), ),
style: ElevatedButton.styleFrom( style: ElevatedButton.styleFrom(
backgroundColor: Colors.blue.shade600, backgroundColor: Colors.blue.shade600,
padding: const EdgeInsets.symmetric(vertical: 16), padding: const EdgeInsets.symmetric(
vertical: 16),
shape: RoundedRectangleBorder( shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12), borderRadius: BorderRadius.circular(12),
), ),
@ -590,10 +622,7 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
), ),
), ),
); );
} }
// Fonction pour mettre à jour le QR preview // Fonction pour mettre à jour le QR preview
void updateQrPreview() { void updateQrPreview() {
@ -1391,7 +1420,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
String normalized = strValue.replaceAll(',', '.'); String normalized = strValue.replaceAll(',', '.');
double numValue = double.parse(normalized); double numValue = double.parse(normalized);
String imeiStr = numValue.toInt().toString(); String imeiStr = numValue.toInt().toString();
print('🔄 IMEI converti depuis notation scientifique: $strValue$imeiStr'); print(
'🔄 IMEI converti depuis notation scientifique: $strValue$imeiStr');
return imeiStr; return imeiStr;
} catch (e) { } catch (e) {
print('❌ Erreur conversion IMEI: $e'); print('❌ Erreur conversion IMEI: $e');
@ -1404,7 +1434,7 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
// Pour les autres champs // Pour les autres champs
return cellValue.toString().trim(); return cellValue.toString().trim();
} }
void _startPointDeVenteAssignmentScanning() { void _startPointDeVenteAssignmentScanning() {
if (_isScanning) return; if (_isScanning) return;
@ -1433,7 +1463,8 @@ Future<void> _showDemandeTransfertDialog(Product product) async {
}); });
}); });
} }
Map<String, dynamic> _normalizeRowData(
Map<String, dynamic> _normalizeRowData(
List<Data?> row, Map<String, int> mapping, int rowIndex) { List<Data?> row, Map<String, int> mapping, int rowIndex) {
final normalizedData = <String, dynamic>{}; final normalizedData = <String, dynamic>{};
@ -1506,17 +1537,19 @@ Map<String, dynamic> _normalizeRowData(
// Normalisation de la mémoire interne // Normalisation de la mémoire interne
if (mapping.containsKey('memoire_interne')) { if (mapping.containsKey('memoire_interne')) {
final memoire = _cleanValue(_getColumnValue(row, mapping, 'memoire_interne')); final memoire =
_cleanValue(_getColumnValue(row, mapping, 'memoire_interne'));
if (memoire != null && memoire.isNotEmpty) { if (memoire != null && memoire.isNotEmpty) {
final memoireValue = memoire.replaceAll('GB', 'Go').replaceAll('go', 'Go'); final memoireValue =
memoire.replaceAll('GB', 'Go').replaceAll('go', 'Go');
normalizedData['memoire_interne'] = memoireValue; normalizedData['memoire_interne'] = memoireValue;
} }
} }
// 🔥 IMPORTANT: Normaliser l'IMEI EN PREMIER avant de gérer le stock // 🔥 IMPORTANT: Normaliser l'IMEI EN PREMIER avant de gérer le stock
// 🔥 Normalisation de l'IMEI (simplifié car _getColumnValue le gère maintenant) // 🔥 Normalisation de l'IMEI (simplifié car _getColumnValue le gère maintenant)
String? imeiValue; String? imeiValue;
if (mapping.containsKey('imei')) { if (mapping.containsKey('imei')) {
final imei = _cleanValue(_getColumnValue(row, mapping, 'imei')); final imei = _cleanValue(_getColumnValue(row, mapping, 'imei'));
if (imei != null && imei.isNotEmpty) { if (imei != null && imei.isNotEmpty) {
@ -1527,7 +1560,6 @@ if (mapping.containsKey('imei')) {
if (cleanedImei.length >= 10 && if (cleanedImei.length >= 10 &&
cleanedImei.length <= 15 && cleanedImei.length <= 15 &&
RegExp(r'^\d+$').hasMatch(cleanedImei)) { RegExp(r'^\d+$').hasMatch(cleanedImei)) {
imeiValue = cleanedImei.length > 15 imeiValue = cleanedImei.length > 15
? cleanedImei.substring(0, 15) ? cleanedImei.substring(0, 15)
: cleanedImei; : cleanedImei;
@ -1535,10 +1567,11 @@ if (mapping.containsKey('imei')) {
normalizedData['imei'] = imeiValue; normalizedData['imei'] = imeiValue;
print('✅ IMEI valide enregistré: $imeiValue'); print('✅ IMEI valide enregistré: $imeiValue');
} else { } else {
print('⚠️ IMEI invalide ignoré: "$cleanedImei" (longueur: ${cleanedImei.length})'); print(
'⚠️ IMEI invalide ignoré: "$cleanedImei" (longueur: ${cleanedImei.length})');
}
} }
} }
}
// Le reste du code reste identique... // Le reste du code reste identique...
@ -1546,7 +1579,8 @@ if (mapping.containsKey('imei')) {
if (mapping.containsKey('point_de_vente')) { if (mapping.containsKey('point_de_vente')) {
final pv = _cleanValue(_getColumnValue(row, mapping, 'point_de_vente')); final pv = _cleanValue(_getColumnValue(row, mapping, 'point_de_vente'));
if (pv != null && pv.isNotEmpty) { if (pv != null && pv.isNotEmpty) {
normalizedData['point_de_vente'] = pv.replaceAll(RegExp(r'\s+'), ' ').trim(); normalizedData['point_de_vente'] =
pv.replaceAll(RegExp(r'\s+'), ' ').trim();
} }
} }
@ -1567,21 +1601,21 @@ if (mapping.containsKey('imei')) {
final stockValue = _cleanValue(_getColumnValue(row, mapping, 'stock')); final stockValue = _cleanValue(_getColumnValue(row, mapping, 'stock'));
// Try parsing as int first // Try parsing as int first
int? stock = int.tryParse(stockValue ?? ''); int? stock = int.tryParse(stockValue ?? '');
// If parsing as int fails, try parsing as double and convert to int // If parsing as int fails, try parsing as double and convert to int
if (stock == null && stockValue != null && stockValue.isNotEmpty) { if (stock == null && stockValue != null && stockValue.isNotEmpty) {
final doubleValue = double.tryParse(stockValue); final doubleValue = double.tryParse(stockValue);
if (doubleValue != null) { if (doubleValue != null) {
stock = doubleValue.toInt(); stock = doubleValue.toInt();
} }
} }
// Final fallback: ensure at least 1 // Final fallback: ensure at least 1
stock ??= 1; stock ??= 1;
// Never allow 0 or negative values // Never allow 0 or negative values
normalizedData['stock'] = stock > 0 ? stock : 1; normalizedData['stock'] = stock > 0 ? stock : 1;
print('📦 Stock depuis Excel: $stock (pas d\'IMEI)'); print('📦 Stock depuis Excel: $stock (pas d\'IMEI)');
} else { } else {
@ -1597,8 +1631,9 @@ normalizedData['stock'] = stock > 0 ? stock : 1;
} }
return normalizedData; return normalizedData;
} }
Map<String, int> _mapHeaders(List<Data?> headerRow) {
Map<String, int> _mapHeaders(List<Data?> headerRow) {
Map<String, int> columnMapping = {}; Map<String, int> columnMapping = {};
for (int i = 0; i < headerRow.length; i++) { for (int i = 0; i < headerRow.length; i++) {
@ -1609,7 +1644,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
print('📋 En-tête colonne $i: "$header"'); print('📋 En-tête colonne $i: "$header"');
// Nom du produit // Nom du produit
if ((header.contains('NOM') && header.contains('PRODUIT')) || header == 'NOM') { if ((header.contains('NOM') && header.contains('PRODUIT')) ||
header == 'NOM') {
columnMapping['name'] = i; columnMapping['name'] = i;
print(' ✅ Mappé vers name'); print(' ✅ Mappé vers name');
} }
@ -1634,7 +1670,9 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
print(' ✅ Mappé vers ram'); print(' ✅ Mappé vers ram');
} }
// Mémoire interne // Mémoire interne
else if (header == 'INTERNE' || header.contains('MEMOIRE INTERNE') || header.contains('STOCKAGE')) { else if (header == 'INTERNE' ||
header.contains('MEMOIRE INTERNE') ||
header.contains('STOCKAGE')) {
columnMapping['memoire_interne'] = i; columnMapping['memoire_interne'] = i;
print(' ✅ Mappé vers memoire_interne'); print(' ✅ Mappé vers memoire_interne');
} }
@ -1654,18 +1692,19 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
print(' ✅ Mappé vers stock'); print(' ✅ Mappé vers stock');
} }
// Point de vente // Point de vente
else if (header.contains('BOUTIQUE') || header.contains('POINT') || header == 'MAGASIN') { else if (header.contains('BOUTIQUE') ||
header.contains('POINT') ||
header == 'MAGASIN') {
columnMapping['point_de_vente'] = i; columnMapping['point_de_vente'] = i;
print(' ✅ Mappé vers point_de_vente'); print(' ✅ Mappé vers point_de_vente');
} } else {
else {
print(' ⚠️ Non reconnu'); print(' ⚠️ Non reconnu');
} }
} }
print('\n🎯 MAPPING FINAL: $columnMapping\n'); print('\n🎯 MAPPING FINAL: $columnMapping\n');
return columnMapping; return columnMapping;
} }
Widget _buildAssignmentScannerPage() { Widget _buildAssignmentScannerPage() {
return Scaffold( return Scaffold(
@ -1891,7 +1930,9 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
child: Icon(Icons.check_circle, color: Colors.green.shade700), child: Icon(Icons.check_circle, color: Colors.green.shade700),
), ),
const SizedBox(width: 12), const SizedBox(width: 12),
const Expanded(child: Text( 'demande attribution réussie en attente de validation!')), const Expanded(
child: Text(
'demande attribution réussie en attente de validation!')),
], ],
), ),
content: Column( content: Column(
@ -1907,7 +1948,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
), ),
const SizedBox(height: 8), const SizedBox(height: 8),
Text('IMEI: ${product.imei}'), Text('IMEI: ${product.imei}'),
Text('Prix: ${NumberFormat('#,##0.00', 'fr_FR').format(product.price)} MGA'), Text(
'Prix: ${NumberFormat('#,##0.00', 'fr_FR').format(product.price)} MGA'),
const SizedBox(height: 12), const SizedBox(height: 12),
Container( Container(
padding: const EdgeInsets.all(8), padding: const EdgeInsets.all(8),
@ -2227,7 +2269,9 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
_filteredProducts = _products.where((product) { _filteredProducts = _products.where((product) {
final matchesSearch = product.name.toLowerCase().contains(query) || final matchesSearch = product.name.toLowerCase().contains(query) ||
product.description!.toLowerCase().contains(query) || product.description!.toLowerCase().contains(query) ||
product.reference!.toLowerCase().contains(query); product.reference!.toLowerCase().contains(query) ||
(product.marque ?? '').toLowerCase().contains(query) ||
(product.imei ?? '').toLowerCase().contains(query);
final matchesCategory = _selectedCategory == 'Tous' || final matchesCategory = _selectedCategory == 'Tous' ||
product.category == _selectedCategory; product.category == _selectedCategory;
@ -3152,13 +3196,13 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
icon: const Icon(Icons.qr_code_2, color: Colors.blue), icon: const Icon(Icons.qr_code_2, color: Colors.blue),
tooltip: 'Voir QR Code', tooltip: 'Voir QR Code',
), ),
if(_isUserSuperAdmin()) if (_isUserSuperAdmin())
IconButton( IconButton(
onPressed: () => _editProduct(product), onPressed: () => _editProduct(product),
icon: const Icon(Icons.edit, color: Colors.orange), icon: const Icon(Icons.edit, color: Colors.orange),
tooltip: 'Modifier', tooltip: 'Modifier',
), ),
if(_isUserSuperAdmin()) if (_isUserSuperAdmin())
IconButton( IconButton(
onPressed: () => _deleteProduct(product), onPressed: () => _deleteProduct(product),
icon: const Icon(Icons.delete, color: Colors.red), icon: const Icon(Icons.delete, color: Colors.red),
@ -3330,6 +3374,7 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
}); });
} }
} }
void _showQRCode(Product product) { void _showQRCode(Product product) {
RxBool showFullUrl = false.obs; RxBool showFullUrl = false.obs;
RxInt nombreAImprimer = (product.stock ?? 1).obs; // 🔹 Valeur modifiable RxInt nombreAImprimer = (product.stock ?? 1).obs; // 🔹 Valeur modifiable
@ -3372,7 +3417,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
style: const TextStyle(fontSize: 14), style: const TextStyle(fontSize: 14),
), ),
style: ElevatedButton.styleFrom( style: ElevatedButton.styleFrom(
backgroundColor: showFullUrl.value ? Colors.blue : Colors.green, backgroundColor:
showFullUrl.value ? Colors.blue : Colors.green,
foregroundColor: Colors.white, foregroundColor: Colors.white,
minimumSize: const Size(double.infinity, 40), minimumSize: const Size(double.infinity, 40),
), ),
@ -3408,12 +3454,14 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
children: [ children: [
Row( Row(
children: [ children: [
Icon(Icons.inventory_2, size: 16, color: Colors.grey.shade600), Icon(Icons.inventory_2,
size: 16, color: Colors.grey.shade600),
const SizedBox(width: 8), const SizedBox(width: 8),
Expanded( Expanded(
child: Text( child: Text(
product.name, product.name,
style: const TextStyle(fontWeight: FontWeight.bold, fontSize: 14), style: const TextStyle(
fontWeight: FontWeight.bold, fontSize: 14),
), ),
), ),
], ],
@ -3423,7 +3471,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
// 🔹 Nouveau champ : nombre à imprimer // 🔹 Nouveau champ : nombre à imprimer
Row( Row(
children: [ children: [
const Icon(Icons.format_list_numbered, size: 16, color: Colors.deepPurple), const Icon(Icons.format_list_numbered,
size: 16, color: Colors.deepPurple),
const SizedBox(width: 8), const SizedBox(width: 8),
Expanded( Expanded(
child: TextField( child: TextField(
@ -3432,9 +3481,11 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
labelText: 'Nombre d\'étiquettes à imprimer', labelText: 'Nombre d\'étiquettes à imprimer',
border: const OutlineInputBorder(), border: const OutlineInputBorder(),
isDense: true, isDense: true,
contentPadding: const EdgeInsets.symmetric(horizontal: 8, vertical: 8), contentPadding: const EdgeInsets.symmetric(
horizontal: 8, vertical: 8),
), ),
controller: TextEditingController(text: nombreAImprimer.value.toString()), controller: TextEditingController(
text: nombreAImprimer.value.toString()),
onChanged: (val) { onChanged: (val) {
final parsed = int.tryParse(val); final parsed = int.tryParse(val);
if (parsed != null && parsed > 0) { if (parsed != null && parsed > 0) {
@ -3449,7 +3500,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
Row( Row(
children: [ children: [
Icon(Icons.label, size: 16, color: Colors.orange.shade600), Icon(Icons.label,
size: 16, color: Colors.orange.shade600),
const SizedBox(width: 8), const SizedBox(width: 8),
Text( Text(
'Format: Étiquette Niimbot B1 (50x15mm)', 'Format: Étiquette Niimbot B1 (50x15mm)',
@ -3493,7 +3545,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
}, },
icon: const Icon(Icons.settings, size: 18), icon: const Icon(Icons.settings, size: 18),
label: const Text('Paramètres'), label: const Text('Paramètres'),
style: TextButton.styleFrom(foregroundColor: Colors.blue.shade700), style:
TextButton.styleFrom(foregroundColor: Colors.blue.shade700),
), ),
// 🔹 Imprimer selon le nombre choisi // 🔹 Imprimer selon le nombre choisi
@ -3529,7 +3582,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
style: ElevatedButton.styleFrom( style: ElevatedButton.styleFrom(
backgroundColor: Colors.orange.shade600, backgroundColor: Colors.orange.shade600,
foregroundColor: Colors.white, foregroundColor: Colors.white,
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), padding:
const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
), ),
), ),
@ -3542,7 +3596,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
); );
}), }),
); );
} }
Future<void> _generatePDF(Product product, String qrUrl) async { Future<void> _generatePDF(Product product, String qrUrl) async {
final pdf = pw.Document(); final pdf = pw.Document();
@ -4648,7 +4703,9 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
icon: Icons.info_outline, icon: Icons.info_outline,
color: Colors.blue, color: Colors.blue,
children: [ children: [
_buildModernInfoRow('Prix', '${NumberFormat('#,##0.00', 'fr_FR').format(product.price)} MGA', _buildModernInfoRow(
'Prix',
'${NumberFormat('#,##0.00', 'fr_FR').format(product.price)} MGA',
Icons.payments_outlined), Icons.payments_outlined),
_buildModernInfoRow('Catégorie', product.category, _buildModernInfoRow('Catégorie', product.category,
Icons.category_outlined), Icons.category_outlined),
@ -4962,7 +5019,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
foregroundColor: Colors.white, foregroundColor: Colors.white,
), ),
const SizedBox(height: 8), const SizedBox(height: 8),
if (_userController.username == 'superadmin'|| _userController.username == 'admin') ...[ if (_userController.username == 'superadmin' ||
_userController.username == 'admin') ...[
FloatingActionButton( FloatingActionButton(
heroTag: 'importBtn', heroTag: 'importBtn',
onPressed: _isImporting ? null : _importFromExcel, onPressed: _isImporting ? null : _importFromExcel,
@ -4973,6 +5031,8 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
), ),
], ],
const SizedBox(height: 8), const SizedBox(height: 8),
if (_userController.username == 'superadmin' ||
_userController.username == 'admin') ...[
FloatingActionButton.extended( FloatingActionButton.extended(
heroTag: 'addBtn', heroTag: 'addBtn',
onPressed: _showAddProductDialog, onPressed: _showAddProductDialog,
@ -4982,6 +5042,7 @@ Map<String, int> _mapHeaders(List<Data?> headerRow) {
foregroundColor: Colors.white, foregroundColor: Colors.white,
), ),
], ],
],
), ),
body: Column( body: Column(
children: [ children: [

4
lib/Views/gestionProduct.dart

@ -85,7 +85,9 @@ class GestionProduit extends StatelessWidget {
} }
Widget _buildProductImage(String? imagePath) { Widget _buildProductImage(String? imagePath) {
if (imagePath != null && imagePath.isNotEmpty && File(imagePath).existsSync()) { if (imagePath != null &&
imagePath.isNotEmpty &&
File(imagePath).existsSync()) {
return CircleAvatar( return CircleAvatar(
backgroundImage: FileImage(File(imagePath)), backgroundImage: FileImage(File(imagePath)),
); );

35
lib/Views/gestionStock.dart

@ -6,6 +6,7 @@ import 'package:youmazgestion/Models/produit.dart';
import 'package:youmazgestion/Components/app_bar.dart'; import 'package:youmazgestion/Components/app_bar.dart';
import 'package:youmazgestion/Components/appDrawer.dart'; import 'package:youmazgestion/Components/appDrawer.dart';
import 'package:youmazgestion/Services/stock_managementDatabase.dart'; import 'package:youmazgestion/Services/stock_managementDatabase.dart';
import 'package:youmazgestion/controller/userController.dart';
class GestionStockPage extends StatefulWidget { class GestionStockPage extends StatefulWidget {
const GestionStockPage({super.key}); const GestionStockPage({super.key});
@ -44,15 +45,19 @@ class _GestionStockPageState extends State<GestionStockPage> {
setState(() { setState(() {
_filteredProducts = _products.where((product) { _filteredProducts = _products.where((product) {
final matchesSearch = product.name.toLowerCase().contains(query) || final matchesSearch = product.name.toLowerCase().contains(query) ||
(product.reference?.toLowerCase().contains(query) ?? false); (product.reference?.toLowerCase().contains(query) ?? false) ||
final matchesCategory = _selectedCategory == null || ((product.imei ?? '').toLowerCase().contains(query));
product.category == _selectedCategory; final matchesCategory =
_selectedCategory == null || product.category == _selectedCategory;
final matchesPointDeVente = _selectedIdPointDeVente == null || final matchesPointDeVente = _selectedIdPointDeVente == null ||
product.pointDeVenteId == _selectedIdPointDeVente; // Nouveau filtre product.pointDeVenteId == _selectedIdPointDeVente; // Nouveau filtre
final matchesStockFilter = !_showLowStockOnly || final matchesStockFilter = !_showLowStockOnly ||
(product.stock ?? 0) <= 5; // Seuil pour stock faible (product.stock ?? 0) <= 5; // Seuil pour stock faible
return matchesSearch && matchesCategory && matchesPointDeVente && matchesStockFilter; return matchesSearch &&
matchesCategory &&
matchesPointDeVente &&
matchesStockFilter;
}).toList(); }).toList();
// Trier les produits // Trier les produits
@ -162,7 +167,8 @@ class _GestionStockPageState extends State<GestionStockPage> {
// Filtre par point de vente // Filtre par point de vente
Expanded( Expanded(
child: FutureBuilder<List<Map<String, dynamic>>>( child: FutureBuilder<List<Map<String, dynamic>>>(
future: _database.getPointsDeVente(), // Vous devez implémenter cette méthode future: _database
.getPointsDeVente(), // Vous devez implémenter cette méthode
builder: (context, snapshot) { builder: (context, snapshot) {
if (!snapshot.hasData) { if (!snapshot.hasData) {
return const SizedBox(); return const SizedBox();
@ -184,7 +190,8 @@ class _GestionStockPageState extends State<GestionStockPage> {
...pointsDeVente.map((point) { ...pointsDeVente.map((point) {
return DropdownMenuItem<int>( return DropdownMenuItem<int>(
value: point['id'], value: point['id'],
child: Text(point['nom'] ?? 'Point ${point['id']}'), child: Text(
point['nom'] ?? 'Point ${point['id']}'),
); );
}), }),
], ],
@ -327,7 +334,8 @@ class _GestionStockPageState extends State<GestionStockPage> {
); );
} }
Widget _buildStatCard(String title, String value, IconData icon, Color color) { Widget _buildStatCard(
String title, String value, IconData icon, Color color) {
return Column( return Column(
children: [ children: [
Icon(icon, color: color), Icon(icon, color: color),
@ -349,6 +357,7 @@ class _GestionStockPageState extends State<GestionStockPage> {
} }
Widget _buildProductCard(Product product) { Widget _buildProductCard(Product product) {
final UserController _userController = Get.find<UserController>();
final stock = product.stock ?? 0; final stock = product.stock ?? 0;
Color stockColor; Color stockColor;
IconData stockIcon; IconData stockIcon;
@ -410,11 +419,14 @@ class _GestionStockPageState extends State<GestionStockPage> {
), ),
], ],
), ),
if (_userController.username == 'superadmin' ||
_userController.username == 'admin') ...[
IconButton( IconButton(
icon: const Icon(Icons.edit), icon: const Icon(Icons.edit),
onPressed: () => _showAddStockDialog(product), onPressed: () => _showAddStockDialog(product),
), ),
], ],
],
), ),
), ),
); );
@ -436,13 +448,14 @@ class _GestionStockPageState extends State<GestionStockPage> {
children: [ children: [
if (isNew) if (isNew)
TextField( TextField(
decoration: const InputDecoration(labelText: 'Nom du produit'), decoration:
const InputDecoration(labelText: 'Nom du produit'),
), ),
if (isNew) if (isNew) const SizedBox(height: 12),
const SizedBox(height: 12),
TextField( TextField(
controller: controller, controller: controller,
decoration: const InputDecoration(labelText: 'Quantité en stock'), decoration:
const InputDecoration(labelText: 'Quantité en stock'),
keyboardType: TextInputType.number, keyboardType: TextInputType.number,
), ),
], ],

35
macos/Podfile.lock

@ -4,25 +4,38 @@ PODS:
- file_selector_macos (0.0.1): - file_selector_macos (0.0.1):
- FlutterMacOS - FlutterMacOS
- FlutterMacOS (1.0.0) - FlutterMacOS (1.0.0)
- mobile_scanner (7.0.0):
- Flutter
- FlutterMacOS
- open_file_mac (0.0.1): - open_file_mac (0.0.1):
- FlutterMacOS - FlutterMacOS
- path_provider_foundation (0.0.1): - path_provider_foundation (0.0.1):
- Flutter - Flutter
- FlutterMacOS - FlutterMacOS
- sqflite_darwin (0.0.4): - printing (1.0.0):
- FlutterMacOS
- screen_retriever (0.0.1):
- FlutterMacOS
- shared_preferences_foundation (0.0.1):
- Flutter - Flutter
- FlutterMacOS - FlutterMacOS
- url_launcher_macos (0.0.1): - url_launcher_macos (0.0.1):
- FlutterMacOS - FlutterMacOS
- window_manager (0.2.0):
- FlutterMacOS
DEPENDENCIES: DEPENDENCIES:
- file_picker (from `Flutter/ephemeral/.symlinks/plugins/file_picker/macos`) - file_picker (from `Flutter/ephemeral/.symlinks/plugins/file_picker/macos`)
- file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`)
- FlutterMacOS (from `Flutter/ephemeral`) - FlutterMacOS (from `Flutter/ephemeral`)
- mobile_scanner (from `Flutter/ephemeral/.symlinks/plugins/mobile_scanner/darwin`)
- open_file_mac (from `Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos`) - open_file_mac (from `Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos`)
- path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`)
- sqflite_darwin (from `Flutter/ephemeral/.symlinks/plugins/sqflite_darwin/darwin`) - printing (from `Flutter/ephemeral/.symlinks/plugins/printing/macos`)
- screen_retriever (from `Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos`)
- shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`)
- url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`)
- window_manager (from `Flutter/ephemeral/.symlinks/plugins/window_manager/macos`)
EXTERNAL SOURCES: EXTERNAL SOURCES:
file_picker: file_picker:
@ -31,23 +44,35 @@ EXTERNAL SOURCES:
:path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos
FlutterMacOS: FlutterMacOS:
:path: Flutter/ephemeral :path: Flutter/ephemeral
mobile_scanner:
:path: Flutter/ephemeral/.symlinks/plugins/mobile_scanner/darwin
open_file_mac: open_file_mac:
:path: Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos :path: Flutter/ephemeral/.symlinks/plugins/open_file_mac/macos
path_provider_foundation: path_provider_foundation:
:path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin
sqflite_darwin: printing:
:path: Flutter/ephemeral/.symlinks/plugins/sqflite_darwin/darwin :path: Flutter/ephemeral/.symlinks/plugins/printing/macos
screen_retriever:
:path: Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos
shared_preferences_foundation:
:path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin
url_launcher_macos: url_launcher_macos:
:path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos
window_manager:
:path: Flutter/ephemeral/.symlinks/plugins/window_manager/macos
SPEC CHECKSUMS: SPEC CHECKSUMS:
file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a
file_selector_macos: 6280b52b459ae6c590af5d78fc35c7267a3c4b31 file_selector_macos: 6280b52b459ae6c590af5d78fc35c7267a3c4b31
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
mobile_scanner: 9157936403f5a0644ca3779a38ff8404c5434a93
open_file_mac: 01874b6d6a2c1485ac9b126d7105b99102dea2cf open_file_mac: 01874b6d6a2c1485ac9b126d7105b99102dea2cf
path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564 path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 printing: c4cf83c78fd684f9bc318e6aadc18972aa48f617
screen_retriever: 4f97c103641aab8ce183fa5af3b87029df167936
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673 url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673
window_manager: 1d01fa7ac65a6e6f83b965471b1a7fdd3f06166c
PODFILE CHECKSUM: 7eb978b976557c8c1cd717d8185ec483fd090a82 PODFILE CHECKSUM: 7eb978b976557c8c1cd717d8185ec483fd090a82

7
macos/Runner/DebugProfile.entitlements

@ -8,5 +8,12 @@
<true/> <true/>
<key>com.apple.security.network.server</key> <key>com.apple.security.network.server</key>
<true/> <true/>
<key>com.apple.security.files.user-selected.read-write</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
</dict> </dict>
</plist> </plist>

9
macos/Runner/Info.plist

@ -26,7 +26,16 @@
<string>$(PRODUCT_COPYRIGHT)</string> <string>$(PRODUCT_COPYRIGHT)</string>
<key>NSMainNibFile</key> <key>NSMainNibFile</key>
<string>MainMenu</string> <string>MainMenu</string>
<key>NSCameraUsageDescription</key>
<string>L'app a besoin de la caméra pour scanner des QR codes.</string>
<key>NSPrincipalClass</key> <key>NSPrincipalClass</key>
<string>NSApplication</string> <string>NSApplication</string>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
</dict> </dict>
</plist> </plist>

12
macos/Runner/Release.entitlements

@ -4,5 +4,17 @@
<dict> <dict>
<key>com.apple.security.app-sandbox</key> <key>com.apple.security.app-sandbox</key>
<true/> <true/>
<key>com.apple.security.files.user-selected.read-write</key>
<true/>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.network.server</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
</dict> </dict>
</plist> </plist>

Loading…
Cancel
Save