Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5.
mw.loader.using('ext.visualEditor.desktopArticleTarget.init').then(function () {
  mw.hook('ve.activationComplete').add(function () {
    if (typeof ve === 'undefined' || typeof ve.ui === 'undefined') {
      console.error("VisualEditor non è pronto.");
      return;
    }

    const refText = `<ref>{{TooltipCita
 | abstract = Inserisci qui il testo del tooltip
 | cita = {{cita libro|autore=...|titolo=...|anno=...}}
}}</ref>`;

    function TooltipCitaTool() {}
    OO.inheritClass(TooltipCitaTool, ve.ui.Tool);
    TooltipCitaTool.static.name = 'tooltipCita';
    TooltipCitaTool.static.group = 'cite';
    TooltipCitaTool.static.icon = 'quote';
    TooltipCitaTool.static.title = '📌 Tooltip con abstract';

    TooltipCitaTool.prototype.onSelect = function () {
      const surface = this.toolbar.getSurface();
      surface.getModel().getFragment().insertContent(refText);
      this.setActive(false);
    };

    TooltipCitaTool.prototype.onUpdateState = function () {};

    ve.ui.toolFactory.register(TooltipCitaTool);
    ve.ui.commandRegistry.register(
      new ve.ui.Command('tooltipCita', 'window', 'open', null)
    );

    ve.init.target.toolbar.tools.addItems(['tooltipCita']);
    console.log("📌 TooltipCita caricato con successo.");
  });
});