Globale Namen von Total.js 5
Total.js 5 zeigt globale Funktionen und Objekte für Routing, Aktionen, Speicherung, Nachrichten und Anwendungs-Tools.
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
ON | function | Registriert einen Listener für ein Anwendungsereignis. | events |
ONCE | function | Wie ON, aber der Listener läuft nur beim ersten Ereignis. | events |
OFF | function | Entfernt einen mit ON registrierten Listener. | events |
EMIT | function | Sendet ein Ereignis mit bis zu sieben Argumenten. | events |
LOAD | function | Lädt die Dateien des Projekts (Controller, Definitionen...); das Framework ruft es beim Start für dich auf. | load-and-npminstall |
LOADCONFIG | function | Parst einen Text im config-Format und wendet ihn auf CONF an. | configuration-file |
LOADRESOURCE | function | Lädt eine Ressource (eine Übersetzungsdatei) aus einem Text oder von einer URL. | localization |
PAUSESERVER | function | Pausiert oder setzt den Server nach Namen fort: Während der Pause erhalten Anfragen eine 503-Seite. | pause-server |
DEBUG | boolean | true im Debug-Modus, false im Release-Modus. | release-mode-and-debugging |
CONF | object | Die Konfiguration der Anwendung (die Datei config und ihre Standardwerte). | configuration-file |
DEF | object | Standard-Handler und -Einstellungen des Frameworks (DEF.onMail, DEF.helpers, DEF.onCSRFcheck...). | view-helpers-and-config |
F | object | Das Framework-Objekt. Total ist dasselbe Objekt. | utility-globals |
Total | object | Das Framework-Objekt (wie F). Total.run() startet die Anwendung. | release-mode-and-debugging |
MAIN | object | Ein leeres Objekt, das das Framework für die Daten deiner Anwendung erzeugt. | utility-globals |
REPO | object | Ein leeres Objekt, das das Framework für deine eigenen Daten erzeugt. | utility-globals |
FUNC | object | Ein leeres Objekt, das das Framework für deine eigenen Funktionen erzeugt. | utility-globals |
TEMP | object | Ein Objekt für temporäre Daten; das Framework ersetzt es von Zeit zu Zeit durch ein neues leeres Objekt. | utility-globals |
NOW | object | Das aktuelle Datum, vom Framework einmal pro Minute und von einigen Aufrufen wie CACHE aktualisiert. | utility-globals |
EMPTYARRAY | object | Ein eingefrorenes leeres Array, um das Erzeugen neuer zu vermeiden. | utility-globals |
EMPTYOBJECT | object | Ein eingefrorenes leeres Objekt, um das Erzeugen neuer zu vermeiden. | utility-globals |
MODS | object | Die geladenen Module des Ordners modules/, nach ID. | utility-globals |
PLUGINS | object | Die geladenen Plugins des Ordners plugins/, nach ID. | utility-globals |
NOOP | function | Eine Funktion, die nichts tut. | utility-globals |
print | function | Dasselbe wie console.log. | utility-globals |
REQUIRE | function | Wie require, sucht aber auch im Ordner node_modules der Anwendung und akzeptiert node:-Namen. | utility-globals |
Routing, Actions und Middleware
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
ROUTE | function | Deklariert eine Route (HTTP, SOCKET, FILE, API oder einen Fallback wie #404). | http-methods |
NEWACTION | function | Deklariert eine Action mit Input, Params, Query, Output und Berechtigungen. | actions-crud |
NEWSCHEMA | function | Gruppiert die Actions einer Entität unter einem Namen. | schemas |
ACTION | function | Führt eine Action aus deinem eigenen Code aus. | calling-actions-from-code |
EXEC | function | Dieselbe Funktion wie ACTION. | calling-actions-from-code |
NEWTRANSFORM | function | Fügt einer benannten Transformationskette einen Schritt hinzu. | transforms |
TRANSFORM | function | Schickt einen Wert durch eine Transformationskette. | transforms |
MIDDLEWARE | function | Registriert eine Middleware zur Verwendung in Routen mit #name. | middleware |
NEWMIDDLEWARE | function | Dieselbe Funktion wie MIDDLEWARE. | middleware |
PROXY | function | Leitet die Anfragen unter einem URL-Präfix an einen anderen Server weiter. | proxy |
CORS | function | Legt die Origins fest, die die Anwendung aus einem Browser aufrufen dürfen. | cors |
ErrorBuilder | function | Die Klasse, die Validierungsfehler sammelt. | errors-and-audit |
SUCCESS | function | Liefert das Objekt, das das Framework bei einer erfolgreichen Operation sendet ({ success: true, value: value }). | errors-and-audit |
ERROR | function | ERROR(name) liefert einen Callback, der den empfangenen Fehler unter diesem Namen protokolliert; ERROR() liefert den Standard-Fehler-Callback. | errors-and-audit |
UNAUTHORIZED | function | UNAUTHORIZED($, ...permissions) antwortet 401 und liefert true, wenn der Benutzer keine der Berechtigungen hat; es liefert false, wenn er eine davon hat oder Super-Administrator ist. | action-user-and-permissions |
AUTH | function | Authentifiziert jede Anfrage: eine Funktion oder die Optionen der eingebauten Sessions. | sessions-with-built-in-auth |
BLOCKED | function | Zählt die Aufrufe einer IP-Adresse und meldet, wann sie das Limit erreicht hat. | rate-limiting |
AUDIT | function | Hängt einen Audit-Eintrag (Benutzer, Nachricht und Typ) an eine Logdatei in logs/ an. | errors-and-audit |
Daten und Cache
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
NOSQL | function | Öffnet eine Tabelle der eingebauten NoSQL-Datenbank. | nosql-crud |
DATA | object | Datenbankunabhängiger Einstieg in den Query Builder. | data-api |
DB | function | Startet eine Abfrage mit dem Query Builder (DB().find('table').where(...).callback($)); die Abfrage führt der mit NEWDB registrierte Treiber aus. | query-builder-db |
NEWDB | function | Registriert einen Datenbanktreiber function(options, callback) für den Query Builder: den Standardtreiber oder einen benannten mit NEWDB('name', fn). | query-builder-db |
CACHE | object | Ein Speicher im Arbeitsspeicher mit Ablauf. | cache |
FILECACHE | function | Berechnet ein Ergebnis einmal und hält es eine Weile in einer Datei. | filecache |
MEMORIZE | function | Ein auf der Festplatte gespeichertes JSON-Objekt. | memorize |
FILESTORAGE | function | Ein Speicher für hochgeladene Dateien. | filestorage |
HTTP-, WebSocket- und Messaging-Clients
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
REQUEST | function | Low-Level-HTTP-Client. | request-and-download |
DOWNLOAD | function | Speichert die Antwort einer URL in einer Datei. | request-and-download |
RESTBuilder | function | Builder für Aufrufe anderer HTTP-APIs. | restbuilder |
AJAX | function | AJAX('METHOD /url/', data, callback) sendet eine Anfrage mit dem Header x-requested-with und liefert den geparsten Body; ohne Callback liefert es ein Promise. | ajax-requests |
API | function | Ruft eine Operation eines externen Dienstes über seinen Treiber auf: API('service', 'operation', data).callback($). | api-drivers |
NEWAPI | function | Registriert den Treiber function(options, next) eines Dienstes für API, mit optionaler Konfiguration. | api-drivers |
TotalAPI | function | Ruft einen Dienst der Total.js-Plattform über API('TAPI', name, model) auf. | remote-service-boundaries |
WEBSOCKETCLIENT | function | Ein WebSocket-Client für deine Anwendung. | websocket-client |
TMSCLIENT | function | Ein Client des Total Messaging Service. | tms |
PUBLISH | function | Sendet eine Nachricht an die TMS-Clients, die sie abonniert haben. | tms |
NEWPUBLISH | function | Deklariert eine Nachricht, die die Anwendung veröffentlicht. | tms |
SUBSCRIBE | function | Fügt einen Listener für eine Nachricht hinzu, die Clients an die Anwendung senden. | tms |
UNSUBSCRIBE | function | Entfernt die Listener einer TMS-Nachricht. | tms |
NEWSUBSCRIBE | function | Deklariert eine Nachricht, die die Anwendung empfängt. | tms |
NEWCALL | function | Deklariert eine Funktion, die TMS-Clients aufrufen können. | tms |
OPENCLIENT | function | Verbindet sich über WebSocket mit OpenPlatform für Fernaufrufe, Ereignisse und gemeinsame Verbindungen. | openclient-protocol |
PROXYCLIENT | function | Verbindet sich per WebSocket mit einem PROXYSERVER und beantwortet dessen Anfragen mit einem lokalen Server (ein Port oder ip:port). | proxy-tunnel |
PROXYSERVER | function | Macht die Anwendung zu einem Tunnel-Server: Die HTTP-Anfragen eines Endpunkts werden über eine WebSocket-Route an einen PROXYCLIENT gesendet. | proxy-tunnel |
LDAP | function | Verbindet sich mit einem LDAP-Server (Port 389, sofern ldap.port nichts anderes sagt) und ruft mit dem Ergebnis zurück. | ldap-openldap |
MAIL | function | Sendet eine E-Mail, deren Body eine View ist. | send-email |
HTMLMAIL | function | Sendet eine E-Mail, deren Body ein HTML-String ist. | send-email |
LOGMAIL | function | Sendet eine E-Mail, deren Body ein in einem <pre>-Block ausgegebener Text ist (übergeben Sie den Body als Text). | logmail |
Mail | object | Die Klasse hinter dem E-Mail-Versand (SMTP). | send-email |
AIMODEL | function | Startet eine Anfrage an ein mit NEWAIMODEL registriertes Sprachmodell: AIMODEL('name').user('text').callback($.callback()). | ai-models |
AIPARSER | function | Erzeugt einen Parser für die gestreamte Antwort eines KI-Anbieters (openai, claude...): write() nimmt Teile entgegen und end() liefert Inhalt, Denkprozess und Tool-Aufrufe. | ai-models |
NEWAIMODEL | function | Registriert den Treiber function(ai, done) eines oder mehrerer KI-Modelle für AIMODEL, mit optionaler Konfiguration. | ai-models |
PYPELINE | function | Führt aus der Anwendung eine Python-Datei des Ordners pypelines/ (oder Inline-Python-Code) aus und spricht mit ihr über JSON-Frames auf einem Socket. | pypeline |
Dateien, System und Worker
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
PATH | object | Helper, die Pfade in den Projektordnern bauen (PATH.root(), PATH.public(), PATH.tmp()...). | file-download |
MERGE | function | Registriert eine virtuelle, minifizierte Datei aus mehreren Dateien. | minification |
TOUCH | function | Leert die zwischengespeicherten minifizierten, temporären und Nicht-gefunden-Einträge einer URL oder aller. | touch-static-cache |
CLEANUP | function | Zerstört einen Stream, wenn er beendet ist. | cleanup-streams |
BACKUP | function | Packt ein Verzeichnis in eine Datei. | backup-restore-shell |
RESTORE | function | Entpackt eine mit BACKUP erstellte Datei. | backup-restore-shell |
SHELL | function | Führt einen Shell-Befehl im Projektordner aus. | backup-restore-shell |
NPMINSTALL | function | Installiert ein npm-Paket im Modulordner der Anwendung. | load-and-npminstall |
IMPORT | function | Lädt eine JavaScript-Datei von einer URL herunter und lädt sie. | import-remote-module |
Image | object | Bildverarbeitung mit GraphicsMagick oder ImageMagick. | images |
NEWTHREAD | function | Startet einen Worker-Thread. | workers-and-threads |
NEWFORK | function | Startet einen Kindprozess. | workers-and-threads |
NEWTHREADPOOL | function | Erstellt einen Pool von Workern, die sich die Aufgaben nacheinander ausleihen. | thread-pool |
CRON | function | Führt eine Funktion nach Zeitplan aus. | cron-jobs |
setTimeout2 | function | setTimeout mit einer ID: Ein erneuter Aufruf mit derselben ID ersetzt den vorherigen Timer. | debounce-timers |
clearTimeout2 | function | Bricht einen mit setTimeout2 erstellten Timer ab. | debounce-timers |
Flow | object | Der Manager der FlowStreams der Anwendung: Flow.load(schema), Flow.remove(id), Flow.instances und Flow.test() für eine Komponente. | flowstream, flowstream-component-test |
FlowStream | object | Dasselbe Objekt wie Flow. | flowstream |
NEWMACRO | function | Kompiliert ein Makro aus einem String. | macros |
NEWCOMPONENT | function | Kompiliert das HTML einer Komponente. | native-components |
COMPONENTATOR | function | Lädt ein Componentator-Paket nach public/ als ui-<name>-<hash>.min.js und speichert seine Adresse in F.repo[name]. | remote-service-boundaries |
Hilfsfunktionen, Templates und Lokalisierung
| Name | Art | Was es tut | Rezept |
|---|---|---|---|
U | object | Das Hilfsobjekt des Frameworks (U.extend(), U.clone()...). | utilities |
Utils | object | Dasselbe Objekt wie U. | utilities |
UID | function | Erzeugt eine kurze eindeutige, nach Zeit sortierte ID. | unique-ids-and-hashes |
GUID | function | Erzeugt einen zufälligen String der angegebenen Länge. | unique-ids-and-hashes |
HASH | function | Liefert einen schnellen numerischen Hash (nicht für Passwörter). | unique-ids-and-hashes |
CLONE | function | Erstellt eine tiefe Kopie eines Objekts. | utility-globals |
COPY | function | Kopiert die Eigenschaften des ersten Objekts in das zweite und liefert das zweite. | utility-globals |
DIFFARR | function | Vergleicht zwei Arrays von Objekten anhand einer Eigenschaft und liefert die hinzuzufügenden Objekte, die zu aktualisierenden Paare und die zu entfernenden Werte. | diffarr-sync-lists |
QUERIFY | function | Baut aus einem Objekt eine URL mit Query-String. | utility-globals |
PROMISIFY | function | PROMISIFY(fn, a, b, c) ruft eine Funktion auf, die als letztes Argument einen Callback nimmt, und liefert ein Promise. | utility-globals |
ENCRYPT | function | Wandelt einen Wert in ein undurchsichtiges Token um. | encrypt-and-decrypt |
DECRYPT | function | Liest einen Wert aus einem mit ENCRYPT erstellten Token. | encrypt-and-decrypt |
ENCRYPTREQ | function | Verschlüsselt einen Wert zusammen mit dem User-Agent einer Anfrage (und ihrer IP-Adresse im strengen Modus). | request-bound-tokens |
DECRYPTREQ | function | Liest einen mit ENCRYPTREQ erstellten Wert; liefert nichts, wenn die Anfrage nicht passt. | request-bound-tokens |
LOCALIZE | function | Wählt die Sprache jeder Anfrage. | localization |
TRANSLATE | function | Übersetzt die @(...)-Texte eines Strings in eine Sprache. | localization |
Tangular | object | Die Template-Engine (Tangular.render()). | tangular-templates |
Ta | object | Ein anderer Name für Tangular, die Template-Engine. | template-files |
Thelpers | object | Die in Tangular-Templates verfügbaren Helper-Funktionen. | tangular-templates |
TEMPLATE | function | Rendert ein Tangular-Template, das ein Text, eine Datei des Ordners templates oder eine URL ist, und liefert ein Promise mit dem Text. | template-files |
exports.install = function() {
ROUTE('GET /globals/', globals);
};
function globals($) {
var output = {};
for (var name of Object.getOwnPropertyNames(globalThis)) {
var value;
try {
value = globalThis[name];
} catch (e) {
value = undefined;
}
output[name] = typeof(value) === 'function' ? 'function' : value === null ? 'null' : typeof(value);
}
$.json(output);
}