[prive ↪ issues_52_53_bugfixjs] 8 commits

spip/prive | 8 commits

Par placido, le 2 janvier 2025 à 13h16min :

build: ajaxCallback.js #52 #53
Closes #52
Closes #53

Modifié
javascript/ajaxCallback.js
javascript/ajaxCallback.min.js
javascript/presentation.js
javascript/presentation.min.js
javascript/retrocompat.min.js

Détails : build: ajaxCallback.js #52 #53 (55457aee) · Validations · spip / prive · GitLab

==============================
Par placido, le 2 janvier 2025 à 13h15min :

chore: réorganisation des import/export
cf : Modules ESM : inventaire des outils ; les nommer ; les ranger

debounce, throttle, slideUp, slideDown, slideToggle intègrent le module "ajaxCallback.js
« depliants.js » est renommé en « depliants_legacy.js », au sein du module « presentation.js »

Ajouté
javascript/ajaxCallback/src/dom-slide.js
javascript/ajaxCallback/src/perf.js
javascript/presentation/src/depliants_legacy.js
Modifié
javascript/ajaxCallback/src/main.js
javascript/presentation/src/hoverClass.js
javascript/presentation/src/logo.js
javascript/presentation/src/main.js

Détails : chore: réorganisation des import/export (927b5c8a) · Validations · spip / prive · GitLab

==============================
Par placido, le 2 janvier 2025 à 13h15min :

feat: (DRAFT) nouvelle version de parametre_url()
on fournit, en guide de test, une version rénovée de parametre_url, basée sur URLSearchParams, avec une gestion plus précise, notamment pour les valeurs tabulaires.

Un fichier de test passe en revue les nouvelles possibilités proposées, et permet de voir les éventuelles ruptures de compatibilité (voir les options d’import en tête du fichier javascript/ajaxCallBack/tests/url.test.js )

nouveautés notables :

parametre_url(url, 'suite', null)          // suppression
parametre_url(url, 'suite[]', 1)           // ajoute une entrée la valeur tabulaire
parametre_url(url, 'suite', [1,2,3])       // (sans []) écrase la valeur tabulaire pré-existante
parametre_url(url, 'suite[]', [1,2,3])     // complète la valeur tabulaire pré-éxistante

La version historique, renommée parametre_url_legacy est pour l’instant TOUJOURS INCLUSE dans ajaxCallback.js.

L’adoption (ou non) est à discuter ici :
ref : #51

Ajouté
javascript/ajaxCallback/tests/url.test.js
Modifié
javascript/ajaxCallback/src/main.js
javascript/ajaxCallback/src/url.js

Détails : feat: (DRAFT) nouvelle version de `parametre_url()` (b7b452ce) · Validations · spip / prive · GitLab

==============================
Par placido, le 2 janvier 2025 à 12h53min :

fix: la bonne syntaxe pour passer les arguments à Function.prototype.apply()
nouveau fichier de test : prive/javascript/ajaxCallback/tests/triggerAjaxload.test.js

Ajouté
javascript/ajaxCallback/tests/triggerAjaxload.test.js
Modifié
javascript/ajaxCallback/preload.js
javascript/ajaxCallback/src/ajaxbloc.js

Détails : fix: la bonne syntaxe pour passer les arguments à `Function.prototype.apply()` (0db5d137) · Validations · spip / prive · GitLab

==============================
Par placido, le 31 décembre 2024 à 10h46min :

feat: écrire des tests fonctionnels

lancer la ligne de commande bun test depuis le dossier ajaxCallback.js

on utilise happy-dom pour simuler un DOM.
On utilise un « mock » de la ressource externe « config.js » (qui renvoie un objet vide ; pour l’heure, c’est suffisant)

Deux tests disponibles :

  • formulaire_fix_markup_post_submit : (vérifier la conformité du markup de sortie par rapport au snapshot)
  • formulaire_switch_ajax : (vérifier le nombre de `input[name=« var_ajax »])

Ajouté
javascript/ajaxCallback/bunfig.toml
javascript/ajaxCallback/preload.js
javascript/ajaxCallback/tests/snapshots/formulaire_fix_markup_post_submit.test.js.snap
javascript/ajaxCallback/tests/formulaire_fix_markup_post_submit.test.js
javascript/ajaxCallback/tests/formulaire_switch_ajax.test.js
Modifié
javascript/ajaxCallback/package.json

Détails : feat: écrire des tests fonctionnels (21d5bd2e) · Validations · spip / prive · GitLab

==============================
Par placido, le 31 décembre 2024 à 10h46min :

fix: nommer l’export de config.js explicitement
Ce qui rend plus simple le « mock » du module pour les tests fonctionnels

Modifié
javascript/_init.js.html
javascript/ajaxCallback/src/ajaxbloc.js
javascript/ajaxCallback/src/ajaxform.js
javascript/ajaxCallback/src/anim.js
javascript/ajaxCallback/src/history.js
javascript/ajaxCallback/src/log.js
javascript/config.js.html
javascript/presentation/src/puces.js
javascript/retrocompat.js

Détails : fix: nommer l'export de `config.js` explicitement (d70947cf) · Validations · spip / prive · GitLab

==============================
Par placido, le 31 décembre 2024 à 10h46min :

fix: un cas supplémentaire où .image_loading doit être en position absolue

Modifié
javascript/ajaxCallback/src/anim.js
themes/spip/ajax.css

Détails : fix: un cas supplémentaire où `.image_loading` doit être en position absolue (3ca1f925) · Validations · spip / prive · GitLab

==============================
Par placido, le 31 décembre 2024 à 10h46min :

fix: formulaire_on_error rétablit l’affichage du bloc (endLoading) quelque soit l’erreur

  • formulaire_switch_ajax gère l’ajout/suppression de l’écouteur d’événement sur formulaire (bind/unbind)
  • Annotations supplémentaires + simplification de variables + linter

Modifié
javascript/ajaxCallback/src/ajaxbloc.js
javascript/ajaxCallback/src/ajaxform.js

Détails : fix: `formulaire_on_error` rétablit l'affichage du bloc (`endLoading`) quelque soit l'erreur (ee91b188) · Validations · spip / prive · GitLab