allaw-ui 5.1.5 → 5.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -264,10 +264,16 @@ var FileUploader = function (_a) {
264
264
  */
265
265
  var cropImageToBlob = function (imageUrl, cropMetadata, outputWidth, outputHeight) { return __awaiter(void 0, void 0, void 0, function () {
266
266
  return __generator(this, function (_a) {
267
+ console.log("🔪 [FileUploader] cropImageToBlob appelé");
268
+ console.log(" - imageUrl:", imageUrl);
269
+ console.log(" - cropMetadata:", cropMetadata);
270
+ console.log(" - outputWidth:", outputWidth, "outputHeight:", outputHeight);
267
271
  return [2 /*return*/, new Promise(function (resolve, reject) {
268
272
  var img = new window.Image();
269
273
  img.crossOrigin = "anonymous";
270
274
  img.onload = function () {
275
+ console.log("✅ [FileUploader] Image chargée dans cropImageToBlob");
276
+ console.log(" - img.width:", img.width, "img.height:", img.height);
271
277
  try {
272
278
  // Créer un canvas aux dimensions de sortie
273
279
  var canvas = document.createElement("canvas");
@@ -348,22 +354,30 @@ var FileUploader = function (_a) {
348
354
  ctx.putImageData(imageData, 0, 0);
349
355
  }
350
356
  // Convertir en Blob PNG
357
+ console.log("🖼️ [FileUploader] Conversion canvas vers Blob...");
351
358
  canvas.toBlob(function (blob) {
352
359
  if (blob) {
360
+ console.log("✅ [FileUploader] Blob créé avec succès, taille:", blob.size);
353
361
  resolve(blob);
354
362
  }
355
363
  else {
364
+ console.error("❌ [FileUploader] Échec de la conversion canvas vers Blob");
356
365
  reject(new Error("Échec de la conversion canvas vers Blob"));
357
366
  }
358
367
  }, "image/png", 0.95);
359
368
  }
360
369
  catch (error) {
370
+ console.error("❌ [FileUploader] Erreur dans img.onload:", error);
361
371
  reject(error);
362
372
  }
363
373
  };
364
- img.onerror = function () {
374
+ img.onerror = function (error) {
375
+ console.error("❌ [FileUploader] Erreur de chargement de l'image");
376
+ console.error(" - imageUrl:", imageUrl);
377
+ console.error(" - error:", error);
365
378
  reject(new Error("Échec du chargement de l'image"));
366
379
  };
380
+ console.log("📤 [FileUploader] Définition de img.src:", imageUrl);
367
381
  img.src = imageUrl;
368
382
  })];
369
383
  });
@@ -372,33 +386,55 @@ var FileUploader = function (_a) {
372
386
  setShowCropper(false);
373
387
  };
374
388
  var handleCropConfirm = function (cropMetadata) { return __awaiter(void 0, void 0, void 0, function () {
375
- var dimensions, imageToCrop, croppedBlob, croppedFile, croppedContent, croppedUrl, error_2;
376
- return __generator(this, function (_a) {
377
- switch (_a.label) {
389
+ var dimensions, fileToUse, imageToCropUrl, croppedBlob, croppedFile, croppedContent, croppedUrl, error_2;
390
+ var _a, _b;
391
+ return __generator(this, function (_c) {
392
+ switch (_c.label) {
378
393
  case 0:
394
+ console.log("✂️ [FileUploader] handleCropConfirm appelé");
395
+ console.log(" - cropMetadata:", cropMetadata);
396
+ console.log(" - clientSideCrop:", clientSideCrop);
397
+ console.log(" - selectedFile:", selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.name, "size:", selectedFile === null || selectedFile === void 0 ? void 0 : selectedFile.size);
398
+ console.log(" - originalFileRef.current:", (_a = originalFileRef.current) === null || _a === void 0 ? void 0 : _a.name, "size:", (_b = originalFileRef.current) === null || _b === void 0 ? void 0 : _b.size);
399
+ console.log(" - originalImageUrlRef.current:", originalImageUrlRef.current);
400
+ console.log(" - previewUrl:", previewUrl);
379
401
  setShowCropper(false);
380
402
  setCropMetadata(cropMetadata);
381
403
  if (autoManageProgress) {
382
404
  startProgressSimulation();
383
405
  }
384
- if (!(selectedFile && fileContent && previewUrl)) return [3 /*break*/, 7];
385
- if (!clientSideCrop) return [3 /*break*/, 6];
386
- _a.label = 1;
406
+ if (!(selectedFile && fileContent)) return [3 /*break*/, 10];
407
+ if (!clientSideCrop) return [3 /*break*/, 9];
408
+ _c.label = 1;
387
409
  case 1:
388
- _a.trys.push([1, 4, , 5]);
410
+ _c.trys.push([1, 7, , 8]);
389
411
  dimensions = cropOutputDimensions[cropMetadata.shape] ||
390
412
  cropOutputDimensions.square || { width: 200, height: 200 };
391
- imageToCrop = originalImageUrlRef.current || previewUrl;
392
- return [4 /*yield*/, cropImageToBlob(imageToCrop, cropMetadata, dimensions.width, dimensions.height)];
413
+ console.log("📐 [FileUploader] Dimensions de sortie:", dimensions);
414
+ fileToUse = originalFileRef.current || selectedFile;
415
+ console.log("📁 [FileUploader] Fichier à utiliser pour le crop:", fileToUse.name, "size:", fileToUse.size, "type:", fileToUse.type);
416
+ imageToCropUrl = URL.createObjectURL(fileToUse);
417
+ console.log("🔗 [FileUploader] URL blob créée pour le crop:", imageToCropUrl);
418
+ _c.label = 2;
393
419
  case 2:
394
- croppedBlob = _a.sent();
395
- croppedFile = new File([croppedBlob], selectedFile.name.replace(/\.[^/.]+$/, ".png"), // Remplacer l'extension par .png
420
+ _c.trys.push([2, , 5, 6]);
421
+ // Cropper l'image côté client
422
+ console.log("🔄 [FileUploader] Appel de cropImageToBlob...");
423
+ return [4 /*yield*/, cropImageToBlob(imageToCropUrl, cropMetadata, dimensions.width, dimensions.height)];
424
+ case 3:
425
+ croppedBlob = _c.sent();
426
+ console.log("✅ [FileUploader] cropImageToBlob terminé, blob size:", croppedBlob.size);
427
+ croppedFile = new File([croppedBlob], fileToUse.name.replace(/\.[^/.]+$/, ".png"), // Remplacer l'extension par .png
396
428
  { type: "image/png" });
429
+ console.log("📄 [FileUploader] File croppé créé:", croppedFile.name, "size:", croppedFile.size);
397
430
  return [4 /*yield*/, croppedFile.arrayBuffer()];
398
- case 3:
399
- croppedContent = _a.sent();
431
+ case 4:
432
+ croppedContent = _c.sent();
433
+ console.log("📦 [FileUploader] Contenu du fichier croppé lu, size:", croppedContent.byteLength);
400
434
  croppedUrl = URL.createObjectURL(croppedBlob);
435
+ console.log("🖼️ [FileUploader] URL blob créée pour la preview:", croppedUrl);
401
436
  if (previewUrl && !initialPreviewUrl) {
437
+ console.log("🗑️ [FileUploader] Révoquement de l'ancienne previewUrl:", previewUrl);
402
438
  URL.revokeObjectURL(previewUrl);
403
439
  }
404
440
  setPreviewUrl(croppedUrl);
@@ -409,20 +445,29 @@ var FileUploader = function (_a) {
409
445
  // Plus besoin d'appliquer les transformations CSS
410
446
  setCropMetadata(null);
411
447
  // Appeler onFileRead avec le fichier croppé (pas de cropMetadata car déjà croppé)
448
+ console.log("📞 [FileUploader] Appel de onFileRead avec le fichier croppé");
412
449
  onFileRead === null || onFileRead === void 0 ? void 0 : onFileRead(croppedFile, croppedContent);
413
- return [3 /*break*/, 5];
414
- case 4:
415
- error_2 = _a.sent();
416
- console.error("Erreur lors du crop de l'image:", error_2);
450
+ return [3 /*break*/, 6];
451
+ case 5:
452
+ // Toujours nettoyer l'URL blob temporaire créée pour le crop
453
+ console.log("🗑️ [FileUploader] Révoquement de l'URL blob temporaire:", imageToCropUrl);
454
+ URL.revokeObjectURL(imageToCropUrl);
455
+ return [7 /*endfinally*/];
456
+ case 6: return [3 /*break*/, 8];
457
+ case 7:
458
+ error_2 = _c.sent();
459
+ console.error("❌ [FileUploader] Erreur lors du crop de l'image:", error_2);
460
+ console.error(" - error details:", error_2);
417
461
  // En cas d'erreur, fallback sur l'image originale avec métadonnées
462
+ console.log("🔄 [FileUploader] Fallback sur l'image originale");
418
463
  onFileRead === null || onFileRead === void 0 ? void 0 : onFileRead(selectedFile, fileContent, cropMetadata);
419
- return [3 /*break*/, 5];
420
- case 5: return [3 /*break*/, 7];
421
- case 6:
464
+ return [3 /*break*/, 8];
465
+ case 8: return [3 /*break*/, 10];
466
+ case 9:
422
467
  // Passer l'image originale avec les métadonnées au serveur
423
468
  onFileRead === null || onFileRead === void 0 ? void 0 : onFileRead(selectedFile, fileContent, cropMetadata);
424
- _a.label = 7;
425
- case 7: return [2 /*return*/];
469
+ _c.label = 10;
470
+ case 10: return [2 /*return*/];
426
471
  }
427
472
  });
428
473
  }); };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "allaw-ui",
3
- "version": "5.1.5",
3
+ "version": "5.1.6",
4
4
  "description": "Composants UI pour l'application Allaw",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",