@bebranded/bb-contents 1.0.114 → 1.0.115

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 +10 -20
  2. package/package.json +1 -1
package/bb-contents.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * BeBranded Contents
3
3
  * Contenus additionnels français pour Webflow
4
- * @version 1.0.114
4
+ * @version 1.0.115
5
5
  * @author BeBranded
6
6
  * @license MIT
7
7
  * @website https://www.bebranded.xyz
@@ -32,11 +32,11 @@
32
32
  window._bbContentsInitialized = true;
33
33
 
34
34
  // Log de démarrage simple (une seule fois)
35
- console.log('bb-contents | v1.0.114');
35
+ console.log('bb-contents | v1.0.115');
36
36
 
37
37
  // Configuration
38
38
  const config = {
39
- version: '1.0.114',
39
+ version: '1.0.115',
40
40
  debug: false, // Debug désactivé pour rendu propre
41
41
  prefix: 'bb-', // utilisé pour générer les sélecteurs (data-bb-*)
42
42
  youtubeEndpoint: null, // URL du worker YouTube (à définir par l'utilisateur)
@@ -390,6 +390,10 @@
390
390
  let imagesLoaded = 0;
391
391
  const totalImages = images.length;
392
392
 
393
+ // DÉCLARER isMobile et isSafari AVANT leur utilisation dans img.onload
394
+ const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
395
+ // Détecter spécifiquement Safari (pas Chrome mobile)
396
+ const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || /iPhone|iPad|iPod/.test(navigator.userAgent);
393
397
 
394
398
  // OPTIMISATION: Charger les images et appliquer les styles SVG AVANT le clonage
395
399
  // pour éviter les reflows qui causent la saccade de l'animation
@@ -488,11 +492,6 @@
488
492
  };
489
493
  });
490
494
 
491
- // SOLUTION SAFARI MOBILE SIMPLE : Attendre plus longtemps
492
- const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
493
- // Détecter spécifiquement Safari (pas Chrome mobile)
494
- const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || /iPhone|iPad|iPod/.test(navigator.userAgent);
495
-
496
495
  // Timeout plus long sur mobile pour laisser le temps aux images de se charger
497
496
  const maxWaitTime = isMobile ? 5000 : 3000; // 5 secondes sur mobile
498
497
  let waitTimeout = 0;
@@ -531,7 +530,9 @@
531
530
  }
532
531
  } else if (waitTimeout >= maxWaitTime) {
533
532
  // Timeout atteint : forcer le démarrage mais c'est un fallback
534
- console.warn('[MARQUEE] Timeout atteint, certaines images peuvent ne pas être chargées');
533
+ if (bbContents.config.debug) {
534
+ console.warn('[MARQUEE] Timeout atteint, certaines images peuvent ne pas être chargées');
535
+ }
535
536
  const renderDelay = isSafari && isMobile ? 1500 : (isMobile ? 1000 : 200);
536
537
  setTimeout(() => {
537
538
  startSafariAnimation();
@@ -559,14 +560,6 @@
559
560
  // Cela évite les reflows qui causaient la saccade de l'animation
560
561
  // Les copies héritent automatiquement des styles des images originales
561
562
 
562
- // Vérifier que les images ont une taille visible
563
- let imagesWithSize = 0;
564
- images.forEach(img => {
565
- if (img.offsetWidth > 0 && img.offsetHeight > 0) {
566
- imagesWithSize++;
567
- }
568
- });
569
-
570
563
  // Recalculer la taille après chargement des images
571
564
  const newContentSize = isVertical ? mainBlock.offsetHeight : mainBlock.offsetWidth;
572
565
 
@@ -623,12 +616,9 @@
623
616
  }
624
617
 
625
618
  // Fonction d'animation Safari optimisée
626
- let frameCount = 0;
627
619
  let lastTime = performance.now();
628
620
  const animate = (currentTime) => {
629
621
  if (!isPaused) {
630
- frameCount++;
631
-
632
622
  // OPTIMISATION SAFARI MOBILE : Utiliser le temps réel pour une animation plus fluide
633
623
  const deltaTime = isSafari && isMobile ? (currentTime - lastTime) / 16.67 : 1;
634
624
  lastTime = currentTime;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bebranded/bb-contents",
3
- "version": "1.0.114",
3
+ "version": "1.0.115",
4
4
  "description": "Contenus additionnels français pour Webflow",
5
5
  "main": "bb-contents.js",
6
6
  "scripts": {