4.4 et core JS

Bonjour,
Je viens de cocher core JS.
beaucoup de plugins provoquent des erreurs.
Lors de l’ouverture d’un objet dans ZwaveJS :
core/ajax/eqLogic.ajax.php : ReferenceError /error: $ is not defined /async:true /type:POST /dataType:json /action:get
http://192.168.1.84/core/php/getResource.php?file=plugins/zwavejs/desktop/js/zwavejs.js&md5=3e77bc50989dd0232ff266e478546894&lang=fr_FR 20 ReferenceError: $ is not defined

Et aucun des boutons Réseau/Santé/Statistiques etc. ne fonctionnent.

Je ne suis pas du tout spécialiste du sujet. Je déduis de ce test que ZwaveJS n’est pas en pure JS
Y a til un plugin compatible pure JS pour commencer à s’en inspirer ?
Merci pour votre aide.

Hello,

Il y a pleins d’exemples dans le changelog :
https://doc.jeedom.com/fr_FR/dev/core4.4

Bad

Je ne dirai pas des exemples.
Y a t il un plugin qui est dans les clous pour le 4.4 pure JS ?
Le but est de m’en inspirer.
En fait je ne sais pas ce qu’implique du pure JS.
par exemple le $ ( cest du Jquery.
C’est cela qui devrait disparaitre ?
Par exemple le plugin template :

a ce code dans template.js :

$("#table_cmd").sortable({
  axis: "y",
  cursor: "move",
  items: ".cmd",
  placeholder: "ui-state-highlight",
  tolerance: "intersect",
  forcePlaceholderSize: true
})
C'est bien du Jquery.

et à la lecture de ton lien je viens de voir qu’il faut mettre :

"require" : "4.4"

dans info.json.

Salut,

Je ne réponds pas précisément mais juste pour confirmer que le problème c’est qu’il faudrait être en 4.4 pour que ça puisse fonctionner. Si on passe nos plugins en full JS ils ne fonctionneront plus si le core est < 4.4

Donc pour moi c’est bien trop tôt pour ce pencher sur la question étant donné que la 4.4 est encore en beta. Tant que 80 à 90% des utilisateurs ne seront pas sur Jeedom 4.4 ça ne sert pas à grand chose de passer trop de temps là dessus.

Enfin, sur un plugin qui n’évolue plus vraiment, rien n’empêche de modifier le code pour le rendre compatible full JS et de laisser ça dans un coin pour publier d’ici … 1 an, ou plus …

1 « J'aime »

En effet JQuery supprimé donc en gros il faut remplacer le $('selector') par: document.querySelector('selector')

jQuery UI Sortable

La lib jQuery Sortable sera supprimée dans une future version du Core. La Lib SortableJS a été intégré au Core : SortableJS

Il y a quelques exemples sur le site, je suppose que la syntaxe au final ressemblera à çà:

new Sortable( document.querySelector('#table_cmd'), {
    animation: 150,
    ghostClass: 'blue-background-class'
});

Le plugin template n’a qu’une branche master, ça vaudrait le coup de faire une branche beta avec les modifications 4.4

1 « J'aime »

Oui surtout que la doc dit que le plugin template est à jour.

A jour oui car le passage sans jQuery sera demandé (et non requis attention) en 4.5. En 4.4 c’est le core et on vous laisse la possibilité de tester votre plus sans le support de jQuery pour vous faire une idée de ce que ça fait.

Mal très mal :wink:

C’est sur mais vous aurez largement le temps et migrer et si vraiment c’est trop compliqué alors nous ne le forcerons pas et abandonnerons ce projet.

Après en vrai comparé au core le boulot sur les plugins c’est pas grand chose…

1 « J'aime »

Salut,

Je reviens un peu sur le sujet car celui-ci me parait bien adapté et je voulais essayer tranquillement d’adapter un plugin mais je ne trouve pas mon bonheur pour démarrer.

La doc : https://doc.jeedom.com/fr_FR/dev/core4.4 indique

Mais sauf si j’ai rien compris, le template.js est encore en jquery non ?

J’ai raté un truc ?

Je voulais aussi me lancer il y a peu et je suis arrivé également à la même conclusion… trop tôt, on verra pour 4.5 mais j’ai pas hâte !

OK merci pour ton intervention, je suis un peu rassuré :slight_smile:

C’est sûr que c’est un chantier, je voulais essayer de voir si je pouvais faire ça sur un plugin pas trop compliqué et faire 2 fichiers quand nécessaire suivant si Jeedom est en 4.4 ou inférieur mais sans avoir les bases avec le template ou même un plugin officiel Jeedom, l’opération me semble un peu compromise même s’il y a des exemples dans le lien sus-mentionné :stuck_out_tongue:

Bonjour
Le passage en full js vanillia du plugin template et en cours mais nous avons effectivement pas mal de retard. Pour le moment 100% des ressources sont sur le core pour le stabiliser un maximum avant de commencer de nouveau projet

1 « J'aime »

Je compte pas mettre plein de conditions partout, j’espère qu’ils vont brancher comme c’était le cas pour jeedom 3.

Et pour un gros plugin comme Homebridge j’importerai jquery 4.

J’étais pas dans le développement de plugins avant du coup je ne vois pas bien.

Tu conseilles d’attendre les « instructions » du coup avant de s’enquiquiner ?

Oui clairement.

2 « J'aime »