@bebranded/bb-contents 1.0.34-beta → 1.0.36-beta

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.
Files changed (2) hide show
  1. package/bb-contents.js +31 -10
  2. package/package.json +1 -1
package/bb-contents.js CHANGED
@@ -17,8 +17,8 @@
17
17
 
18
18
  // Configuration
19
19
  const config = {
20
- version: '1.0.34-beta',
21
- debug: false, // Désactivé par défaut pour une console propre
20
+ version: '1.0.36-beta',
21
+ debug: true, // Activé temporairement pour debug
22
22
  prefix: 'bb-', // utilisé pour générer les sélecteurs (data-bb-*)
23
23
  i18n: {
24
24
  copied: 'Lien copié !'
@@ -84,6 +84,14 @@
84
84
 
85
85
  this.utils.log('Initialisation v' + this.config.version);
86
86
 
87
+ // Debug: Analyser l'environnement
88
+ this.utils.log('=== DEBUG ENVIRONNEMENT ===');
89
+ this.utils.log('Body attributes:', Array.from(document.body.attributes).map(attr => attr.name + '=' + attr.value));
90
+ this.utils.log('Scripts chargés:', document.querySelectorAll('script').length);
91
+ this.utils.log('Stylesheets chargés:', document.querySelectorAll('link[rel="stylesheet"]').length);
92
+ this.utils.log('Marquees détectés:', document.querySelectorAll('[bb-marquee]').length);
93
+ this.utils.log('Marquees déjà traités:', document.querySelectorAll('[bb-marquee][data-bb-marquee-processed]').length);
94
+
87
95
  // Détection du bb-performance-boost
88
96
  this._performanceBoostDetected = document.body.hasAttribute('bb-performance-boost');
89
97
  if (this._performanceBoostDetected) {
@@ -462,14 +470,27 @@
462
470
  const initAnimation = (retryCount = 0) => {
463
471
  // Attendre que le contenu soit dans le DOM
464
472
  requestAnimationFrame(() => {
465
- const contentWidth = mainBlock.offsetWidth;
466
- const contentHeight = mainBlock.offsetHeight;
473
+ // Calcul plus robuste des dimensions
474
+ const rect = mainBlock.getBoundingClientRect();
475
+ const contentWidth = rect.width || mainBlock.offsetWidth;
476
+ const contentHeight = rect.height || mainBlock.offsetHeight;
477
+
478
+ // Pour les marquees verticaux, utiliser la largeur du parent si nécessaire
479
+ let finalWidth = contentWidth;
480
+ let finalHeight = contentHeight;
481
+
482
+ if (isVertical && contentWidth < 10) {
483
+ // Si largeur trop petite, utiliser la largeur du parent
484
+ const parentRect = mainBlock.parentElement.getBoundingClientRect();
485
+ finalWidth = parentRect.width || mainBlock.parentElement.offsetWidth;
486
+ bbContents.utils.log('Largeur corrigée pour marquee vertical:', finalWidth, 'px (était:', contentWidth, 'px)');
487
+ }
467
488
 
468
489
  // Debug amélioré
469
- bbContents.utils.log('Debug - Largeur du contenu:', contentWidth, 'px', 'Hauteur:', contentHeight, 'px', 'Enfants:', mainBlock.children.length, 'Vertical:', isVertical, 'Direction:', direction, 'Tentative:', retryCount + 1);
490
+ bbContents.utils.log('Debug - Largeur du contenu:', finalWidth, 'px', 'Hauteur:', finalHeight, 'px', 'Enfants:', mainBlock.children.length, 'Vertical:', isVertical, 'Direction:', direction, 'Tentative:', retryCount + 1);
470
491
 
471
492
  // Si pas de contenu, réessayer avec délai progressif
472
- if ((isVertical && contentHeight === 0) || (!isVertical && contentWidth === 0)) {
493
+ if ((isVertical && finalHeight === 0) || (!isVertical && finalWidth === 0)) {
473
494
  if (retryCount < 5) {
474
495
  bbContents.utils.log('Contenu non prêt, nouvelle tentative dans', (200 + retryCount * 100), 'ms');
475
496
  setTimeout(() => initAnimation(retryCount + 1), 200 + retryCount * 100);
@@ -481,9 +502,9 @@
481
502
  }
482
503
 
483
504
  // Pour le vertical, s'assurer qu'on a une hauteur minimale
484
- if (isVertical && contentHeight < 50) {
505
+ if (isVertical && finalHeight < 50) {
485
506
  if (retryCount < 5) {
486
- bbContents.utils.log('Hauteur insuffisante pour le marquee vertical (' + contentHeight + 'px), nouvelle tentative dans', (200 + retryCount * 100), 'ms');
507
+ bbContents.utils.log('Hauteur insuffisante pour le marquee vertical (' + finalHeight + 'px), nouvelle tentative dans', (200 + retryCount * 100), 'ms');
487
508
  setTimeout(() => initAnimation(retryCount + 1), 200 + retryCount * 100);
488
509
  return;
489
510
  } else {
@@ -494,7 +515,7 @@
494
515
 
495
516
  if (isVertical) {
496
517
  // Animation JavaScript pour le vertical
497
- const contentSize = contentHeight;
518
+ const contentSize = finalHeight;
498
519
  const totalSize = contentSize * 4 + parseInt(gap) * 3; // 4 copies au lieu de 3
499
520
 
500
521
  // Ajuster la hauteur du scrollContainer seulement si pas en mode auto
@@ -542,7 +563,7 @@
542
563
  }
543
564
  } else {
544
565
  // Animation JavaScript pour l'horizontal (comme le vertical pour éviter les saccades)
545
- const contentSize = contentWidth;
566
+ const contentSize = finalWidth;
546
567
  const totalSize = contentSize * 4 + parseInt(gap) * 3;
547
568
  scrollContainer.style.width = totalSize + 'px';
548
569
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bebranded/bb-contents",
3
- "version": "1.0.34-beta",
3
+ "version": "1.0.36-beta",
4
4
  "description": "Contenus additionnels français pour Webflow",
5
5
  "main": "bb-contents.js",
6
6
  "scripts": {