Der Styleguide bringt eine Reihe von Basisjavaskripten mit, welche die Verteilung der Inhalte auf die einzelnen Seiten übernehmen. Hierbei gibt es ein übergeordnetes Steuerungsskript aber auch Einzelskripte welche verschiedene Aufgaben für den Aufbau der Seiten ausführen. Diese Basisskripte können nur durch eine Überschreibung über einen eigenen Styleguide ausgetauscht werden. Zudem gibt es die Elementskripte welche die Aufteilung und Platzierung von Styleguidekomponenten übernehmen. Diese Skripte leiten alle von der Basisklasse PrintElement
ab und sind für jeweils eine Styleguidekomponente verantwortlich. Ein solches Elementskript kann pro Styleguidekomponente über das Attribut data-print-module
definiert werden.
PrintLoader
Diese Basisklasse lädt per HTML-Attribut definierte Javascriptdateien nach und versucht diese auszuführen. Hierbei wird keine Seitenaufteilung vorgenommen sondern nur das definierte Javascript ausgeführt um bspw. Diagramme zu erzeugen. Das zu nutzende HTML-Attribut ist data-styleguide-module
. Hier muss wie bei anderen HTML-Attributen (bspw. data-js
, data-module
, etc.) der Pfad zur Javascriptdatei angegeben werden.
PrintSource
Hier findet die Aufteilung auf einzelne Seitenelemente statt. Es werden nacheindander alle Basisseiten (data-print-element="source"
) verarbeitet. Jedes zu verarbeitende Element kann über das HTML-Attribut data-print-module
eine eigene Javascriptklasse definieren. Diese Klassen müssen alle von der Basisklasse PrintElement
ableiten.
Die nachfolgenden Methoden können zusätzlich implementiert werden, wenn diese benötigt werden.
Methodendefinition | Beschreibung |
---|---|
PrintElement::height(element) | Diese Methode wird abgerufen um die Höhe des in element übergebenen Elements zu ermitteln. |
PrintElement::update(element) | Diese Methode wird vor einer Höhenermittlung ausgeführt und kann genutzt werden um bspw. Inhalte des element -Elements ein-/auszublenden. |
PrintCounter
Hier werden die Zählerdefinitionen verarbeitet und die Ergebnisse ausgegeben.
PrintPlaceholder
Hier werden die Platzhalterdefinitionen verarbeitet.
Puppeteer per Kommandozeile
Mit brandbox-saas/puppeteer
steht eine Implementation von Puppeteer zur Verfügung welche mit dem Javascript des Styleguides zusammenarbeitet. Dieses Javascript verfügt über Parameter welche nachfolgend erklärt werden:
node puppeteer.js --source="[Quelle]" --target="[Zielverzeichnis]"
Parametername | Beschreibung |
---|---|
source | Definiert die Quelle für Puppeteer und damit dem Browser innerhalb von Puppeteer. Es kann hier eine normale URL, wie auch in einem Browser, definiert werden. |
target | Definiert das Zielverzeichnis für die erstellten HTML-Dateien. Wenn das Verzeichnis nicht exisitiert, wird das Javascript versuchen dieses zu erstellen. |
timeout | Legt die maximale Zeit in Millisekunden fest die das Puppeteer-Javascript Inaktivität durch das Styleguide-Javascript dudelt, bevor das Puppeteer-Javascript den Prozess mit einem Fehler beendet. |
abort | Wenn dieser Parameter gesetzt wurde, bricht das Puppeteer-Javascript beim ersten Fehler ab, ansonsten werden Fehler zwar geloggt aber das Puppeteer-Javascript läuft bis zum Ende. |