Formulix Documentation← Retour au site
Formulix / 0.1.0

Tiptap 3

Extension avec nœuds atomiques et historique natif de ProseMirror.

Installation

Exécutez npm run build:integrations. Chargez dist/integrations/tiptap/formulix-ui.min.js avant de créer l’éditeur et importez l’extension ESM de dist/integrations/tiptap/index.js. Pour distribuer les sources et licences, utilisez npm run package:integrations. Conservez la même installation Tiptap que l’application. Version exécutée : 3.32.0.

Configuration

Ajoutez l’extension à l’éditeur existant. Reliez vos boutons à openFormulix avec les identifiants formula, conta, grafico ou quimica.

import Formulix from './formulix/index.js';
Formulix.configure({
  servidor: 'https://api.formulix.example',
  chave: 'YOUR_PUBLIC_KEY',
  idioma: 'fr',
  upload: uploadPng
});
editor.commands.openFormulix('formula'); // conta, grafico, quimica

Implémentez uploadPng(blob) : la fonction doit envoyer le PNG et renvoyer une Promise avec l’URL. Le callback upload est obligatoire pour graphiques et dessins. Le serveur de médias doit authentifier l’utilisateur et valider le PNG, la taille et les permissions.

API et clé publique

Renseignez l’URL HTTPS de l’API fournie par l’exploitant et la clé publique de votre compte. Enregistrez le domaine de l’éditeur dans le tableau de bord ; ses sous-domaines sont inclus. https://api.formulix.example et YOUR_PUBLIC_KEY sont des placeholders : ni un service disponible ni une vraie clé.

Le contenu des aperçus et insertions est envoyé à l’API. Utilisez uniquement la clé publique liée au domaine ; ne placez jamais d’identifiants d’administration, SMTP ou Mercado Pago dans le navigateur. Consultez l’authentification, les erreurs et les limites et le brouillon de confidentialité.

Utilisation et conservation

Ouvrez les onglets par les commandes et double-cliquez sur l’élément pour le modifier. Les nœuds formulixInline et formulixBloco sont atomiques et gardent du HTML filtré. Enregistrez editor.getJSON() ou editor.getHTML() en préservant MathML, tableaux et data-* dans le filtre du serveur.

Limites connues

La sélection suit les transactions tant que la boîte de dialogue reste ouverte. Si la cible disparaît pendant la réponse du service, la mise à jour est refusée. La lecture seule empêche les modifications. La collaboration distante/Yjs n’a pas été validée.

Vérifié en 3.32.0 : quatre types, JSON/HTML, historique, suivi de sélection, filtrage et lecture seule.

Le traitement du presse-papiers OMML/RTF de Word reste propre à TinyMCE. La parité des adaptateurs alpha, plusieurs langues simultanées, Firefox/WebKit et les appareils mobiles restent à valider.