@constl/mandataire-electron-principal
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

Mandataire Constellation : Processus Principal Électron

À utiliser avec @constl/mandataire-electron-rendu dans le processus de rendu Électron.

Installation

Utilisation : processus principal

Dans un fichier séparé, initialisez le gestionnaire qui connectra les fenêtres de votre appli Éllectron à Constellation.

// constellation.ts
import { GestionnaireFenêtres } from '@constl/mandataire-electron-principal';

const enDéveloppement = process.env.NODE_ENV !== 'production';

const importationIPA = import('@constl/ipa');
const importationServeur = import('@constl/serveur');

export const gestionnaireFenêtres = new GestionnaireFenêtres({ 
  enDéveloppement,
  importationIPA,
  importationServeur,
});

Connecter chaque nouvelle fenêtre de votre appli à Constellation au moment où vous la créez :

// main.ts
import {BrowserWindow} from 'electron';

fenêtre = new BrowserWindow();
gestionnaireFenêtres.connecterFenêtreÀConstellation(fenêtre);

Et surtout, n'oubliez pas de fermer Constellation lorsqu'on a fini.

// main.ts
app.on('will-quit', async () => {
  await gestionnaireFenêtres.fermerConstellation();
});

Utilisation : préchargeur

Dans votre code préchargeur, vous devez exposer les fonctions suivantes avec electron.contextBridge.exposeInMainWorld. Nous recommandons unplugin-auto-expose, qui simplifie grandement la tâche.

// preload.ts

export {
  envoyerMessageÀConstellation,
  écouterMessagesDeConstellation,
  envoyerMessageÀServeurConstellation,  // Uniquement si vous voulez inclure le serveur WS
  écouterMessagesDeServeurConstellation,  // Uniquement si vous voulez inclure le serveur WS
} from '@constl/mandataire-electron-principal';

Utilisation : préchargeur

Dans votre code préchargeur, vous devez exposer les fonctions suivantes avec electron.contextBridge.exposeInMainWorld. Nous recommandons unplugin-auto-expose, qui simplifie grandement la tâche.

// preload.ts

export {
  envoyerMessageÀConstellation,
  écouterMessagesDeConstellation,
  envoyerMessageÀServeurConstellation,  // Uniquement si vous voulez inclure le serveur WS
  écouterMessagesDeServeurConstellation,  // Uniquement si vous voulez inclure le serveur WS
} from '@constl/mandataire-electron-principal';

/@constl/mandataire-electron-principal/

    Package Sidebar

    Install

    npm i @constl/mandataire-electron-principal

    Weekly Downloads

    725

    Version

    1.0.1

    License

    AGPL-3.0-or-later

    Unpacked Size

    364 kB

    Total Files

    45

    Last publish

    Collaborators

    • julien.malard