@bebranded/bb-contents 1.0.124 → 1.0.126

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 +28 -15
  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.124
4
+ * @version 1.0.126
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.124');
35
+ console.log('bb-contents | v1.0.126');
36
36
 
37
37
  // Configuration
38
38
  const config = {
39
- version: '1.0.124',
39
+ version: '1.0.126',
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)
@@ -134,7 +134,6 @@
134
134
  try {
135
135
  module.init(scope);
136
136
  } catch (error) {
137
- console.error('[BB Contents] Erreur dans le module', moduleName, error);
138
137
  // Continuer avec les autres modules même si un échoue
139
138
  }
140
139
  }
@@ -603,7 +602,6 @@
603
602
  } else if (waitTimeout >= maxWaitTime) {
604
603
  // Timeout atteint : forcer le démarrage mais c'est un fallback
605
604
  if (bbContents.config.debug) {
606
- console.warn('[MARQUEE] Timeout atteint, certaines images peuvent ne pas être chargées');
607
605
  }
608
606
  const renderDelay = isSafari && isMobile ? 1500 : (isMobile ? 1000 : 200);
609
607
  setTimeout(() => {
@@ -1290,24 +1288,39 @@
1290
1288
  defaultCountry = self.findCountry(element.value);
1291
1289
  }
1292
1290
 
1293
- // Trier les pays : préférés en haut dans l'ordre exact spécifié
1291
+ // Trier les pays : préférés en haut dans l'ordre exact spécifié, puis les autres par ordre alphabétique
1294
1292
  let sortedCountries = self.countries.slice();
1295
1293
  if (preferredCountries.length > 0) {
1296
- // Créer un map pour l'ordre des préférés
1297
- const preferredOrder = {};
1298
- preferredCountries.forEach(function(code, index) {
1299
- preferredOrder[code] = index;
1300
- });
1301
- // Trier : préférés dans l'ordre exact, puis les autres
1302
- sortedCountries = preferredCountries.map(function(code) {
1294
+ // Pays préférés dans l'ordre exact spécifié
1295
+ const preferred = preferredCountries.map(function(code) {
1303
1296
  return self.countries.find(function(c) {
1304
1297
  return c.alpha2 === code;
1305
1298
  });
1306
1299
  }).filter(function(c) {
1307
1300
  return c !== undefined;
1308
- }).concat(sortedCountries.filter(function(c) {
1301
+ });
1302
+
1303
+ // Pays non-préférés triés par ordre alphabétique
1304
+ const others = sortedCountries.filter(function(c) {
1309
1305
  return preferredCountries.indexOf(c.alpha2) === -1;
1310
- }));
1306
+ }).sort(function(a, b) {
1307
+ const nameA = a.name[language].toLowerCase();
1308
+ const nameB = b.name[language].toLowerCase();
1309
+ if (nameA < nameB) return -1;
1310
+ if (nameA > nameB) return 1;
1311
+ return 0;
1312
+ });
1313
+
1314
+ sortedCountries = preferred.concat(others);
1315
+ } else {
1316
+ // Tous les pays par ordre alphabétique si pas de préférés
1317
+ sortedCountries = sortedCountries.sort(function(a, b) {
1318
+ const nameA = a.name[language].toLowerCase();
1319
+ const nameB = b.name[language].toLowerCase();
1320
+ if (nameA < nameB) return -1;
1321
+ if (nameA > nameB) return 1;
1322
+ return 0;
1323
+ });
1311
1324
  }
1312
1325
 
1313
1326
  // Créer le wrapper
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bebranded/bb-contents",
3
- "version": "1.0.124",
3
+ "version": "1.0.126",
4
4
  "description": "Contenus additionnels français pour Webflow",
5
5
  "main": "bb-contents.js",
6
6
  "scripts": {