ForgeDocumentação
pt

Documentação

Nomes globais de Total.js 5

Total.js 5 · total5@0.0.19 referenceglobals Executada com o Total.js 5

Total.js 5 expõe funções e objetos globais para roteamento, ações, armazenamento, mensagens e utilidades de aplicação.

NomeTipoO que fazReceita
ONfunctionRegista um ouvinte para um evento da aplicação.events
ONCEfunctionComo ON, mas o ouvinte só corre para o primeiro evento.events
OFFfunctionRemove um ouvinte registado com ON.events
EMITfunctionEmite um evento com até sete argumentos.events
LOADfunctionCarrega os ficheiros do projeto (controladores, definições...); o framework chama-o por si no arranque.load-and-npminstall
LOADCONFIGfunctionAnalisa um texto no formato de config e aplica-o a CONF.configuration-file
LOADRESOURCEfunctionCarrega um recurso (um ficheiro de tradução) a partir de um texto ou de um URL.localization
PAUSESERVERfunctionPausa ou retoma o servidor por nome: enquanto está em pausa, os pedidos recebem uma página 503.pause-server
DEBUGbooleantrue no modo debug, false no modo release.release-mode-and-debugging
CONFobjectA configuração da aplicação (o ficheiro config e os seus valores predefinidos).configuration-file
DEFobjectManipuladores e definições predefinidos do framework (DEF.onMail, DEF.helpers, DEF.onCSRFcheck...).view-helpers-and-config
FobjectO objeto do framework. Total é o mesmo objeto.utility-globals
TotalobjectO objeto do framework (igual a F). Total.run() inicia a aplicação.release-mode-and-debugging
MAINobjectUm objeto vazio que o framework cria para os dados da sua aplicação.utility-globals
REPOobjectUm objeto vazio que o framework cria para os seus próprios dados.utility-globals
FUNCobjectUm objeto vazio que o framework cria para as suas próprias funções.utility-globals
TEMPobjectUm objeto para dados temporários; o framework substitui-o por um novo objeto vazio de vez em quando.utility-globals
NOWobjectA data atual, atualizada pelo framework uma vez por minuto e por algumas chamadas como CACHE.utility-globals
EMPTYARRAYobjectUm array vazio congelado, para evitar criar novos.utility-globals
EMPTYOBJECTobjectUm objeto vazio congelado, para evitar criar novos.utility-globals
MODSobjectOs módulos carregados da pasta modules/, por id.utility-globals
PLUGINSobjectOs plugins carregados da pasta plugins/, por id.utility-globals
NOOPfunctionUma função que não faz nada.utility-globals
printfunctionO mesmo que console.log.utility-globals
REQUIREfunctionComo require, mas procura também na pasta node_modules da aplicação e aceita nomes node:.utility-globals

Rotas, ações e middleware

NomeTipoO que fazReceita
ROUTEfunctionDeclara uma rota (HTTP, SOCKET, FILE, API ou um fallback como #404).http-methods
NEWACTIONfunctionDeclara uma ação com a sua entrada, params, query, saída e permissões.actions-crud
NEWSCHEMAfunctionAgrupa as ações de uma entidade sob um nome.schemas
ACTIONfunctionExecuta uma ação a partir do seu próprio código.calling-actions-from-code
EXECfunctionA mesma função que ACTION.calling-actions-from-code
NEWTRANSFORMfunctionAcrescenta um passo a uma cadeia de transformações com nome.transforms
TRANSFORMfunctionFaz passar um valor por uma cadeia de transformações.transforms
MIDDLEWAREfunctionRegista um middleware para usar nas rotas com #name.middleware
NEWMIDDLEWAREfunctionA mesma função que MIDDLEWARE.middleware
PROXYfunctionReencaminha os pedidos sob um prefixo de URL para outro servidor.proxy
CORSfunctionDefine as origens que podem chamar a aplicação a partir de um navegador.cors
ErrorBuilderfunctionA classe que recolhe os erros de validação.errors-and-audit
SUCCESSfunctionDevolve o objeto que o framework envia numa operação bem-sucedida ({ success: true, value: value }).errors-and-audit
ERRORfunctionERROR(name) devolve um callback que regista o erro que recebe com esse nome; ERROR() devolve o callback de erro predefinido.errors-and-audit
UNAUTHORIZEDfunctionUNAUTHORIZED($, ...permissions) responde 401 e devolve true quando o utilizador não tem nenhuma das permissões; devolve false quando tem uma delas ou é super administrador.action-user-and-permissions
AUTHfunctionAutentica cada pedido: uma função, ou as opções das sessões integradas.sessions-with-built-in-auth
BLOCKEDfunctionConta as chamadas de um endereço IP e indica quando atingiu o limite.rate-limiting
AUDITfunctionAcrescenta uma entrada de auditoria (utilizador, mensagem e tipo) a um ficheiro de registo em logs/.errors-and-audit

Dados e cache

NomeTipoO que fazReceita
NOSQLfunctionAbre uma tabela da base de dados NoSQL integrada.nosql-crud
DATAobjectEntrada independente da base de dados para o query builder.data-api
DBfunctionInicia uma consulta com o query builder (DB().find('table').where(...).callback($)); a consulta é executada pelo driver registado com NEWDB.query-builder-db
NEWDBfunctionRegista um driver de base de dados function(options, callback) para o query builder: o predefinido, ou um com nome com NEWDB('name', fn).query-builder-db
CACHEobjectUm armazenamento em memória com expiração.cache
FILECACHEfunctionCalcula um resultado uma vez e guarda-o num ficheiro durante algum tempo.filecache
MEMORIZEfunctionUm objeto JSON guardado em disco.memorize
FILESTORAGEfunctionUm armazenamento para ficheiros carregados.filestorage

Clientes HTTP, WebSocket e de mensagens

NomeTipoO que fazReceita
REQUESTfunctionCliente HTTP de baixo nível.request-and-download
DOWNLOADfunctionGuarda a resposta de um URL num ficheiro.request-and-download
RESTBuilderfunctionConstrutor de chamadas a outras APIs HTTP.restbuilder
AJAXfunctionAJAX('METHOD /url/', data, callback) faz um pedido com o cabeçalho x-requested-with e devolve o corpo analisado; devolve uma promessa quando não há callback.ajax-requests
APIfunctionChama uma operação de um serviço externo através do seu driver: API('service', 'operation', data).callback($).api-drivers
NEWAPIfunctionRegista o driver function(options, next) de um serviço para API, com uma configuração opcional.api-drivers
TotalAPIfunctionChama um serviço da plataforma Total.js através de API('TAPI', name, model).remote-service-boundaries
WEBSOCKETCLIENTfunctionUm cliente WebSocket para a sua aplicação.websocket-client
TMSCLIENTfunctionUm cliente do Total Messaging Service.tms
PUBLISHfunctionEnvia uma mensagem aos clientes TMS que a subscreveram.tms
NEWPUBLISHfunctionDeclara uma mensagem que a aplicação publica.tms
SUBSCRIBEfunctionAcrescenta um ouvinte para uma mensagem que os clientes enviam à aplicação.tms
UNSUBSCRIBEfunctionRemove os ouvintes de uma mensagem TMS.tms
NEWSUBSCRIBEfunctionDeclara uma mensagem que a aplicação recebe.tms
NEWCALLfunctionDeclara uma função que os clientes TMS podem chamar.tms
OPENCLIENTfunctionLiga-se ao OpenPlatform por WebSocket para chamadas remotas, eventos e ligações partilhadas.openclient-protocol
PROXYCLIENTfunctionLiga-se a um PROXYSERVER por WebSocket e responde aos seus pedidos com um servidor local (uma porta ou ip:port).proxy-tunnel
PROXYSERVERfunctionTransforma a aplicação num servidor de túnel: os pedidos HTTP de um endpoint são enviados por uma rota WebSocket para um PROXYCLIENT.proxy-tunnel
LDAPfunctionLiga-se a um servidor LDAP (porta 389, a menos que ldap.port diga outra coisa) e devolve o resultado no callback.ldap-openldap
MAILfunctionEnvia um email cujo corpo é uma vista.send-email
HTMLMAILfunctionEnvia um email cujo corpo é uma string de HTML.send-email
LOGMAILfunctionEnvia um e-mail cujo corpo é um texto impresso num bloco <pre> (passe o corpo como texto).logmail
MailobjectA classe por trás do envio de email (SMTP).send-email
AIMODELfunctionInicia um pedido a um modelo de linguagem registado com NEWAIMODEL: AIMODEL('name').user('text').callback($.callback()).ai-models
AIPARSERfunctionCria um analisador para a resposta em streaming de um fornecedor de IA (openai, claude...): write() recebe pedaços e end() devolve o conteúdo, o raciocínio e as chamadas a ferramentas.ai-models
NEWAIMODELfunctionRegista o driver function(ai, done) de um ou mais modelos de IA para AIMODEL, com uma configuração opcional.ai-models
PYPELINEfunctionExecuta a partir da aplicação um ficheiro Python da pasta pypelines/ (ou código Python em linha) e comunica com ele através de tramas JSON num socket.pypeline

Ficheiros, sistema e workers

NomeTipoO que fazReceita
PATHobjectHelpers que constroem caminhos nas pastas do projeto (PATH.root(), PATH.public(), PATH.tmp()...).file-download
MERGEfunctionRegista um ficheiro virtual feito de vários ficheiros, minificado.minification
TOUCHfunctionLimpa as entradas em cache minificadas, temporárias e de não encontrado de um URL, ou de todos.touch-static-cache
CLEANUPfunctionDestrói um stream quando terminou.cleanup-streams
BACKUPfunctionEmpacota um diretório num só ficheiro.backup-restore-shell
RESTOREfunctionDesempacota um ficheiro criado com BACKUP.backup-restore-shell
SHELLfunctionExecuta um comando de shell na pasta do projeto.backup-restore-shell
NPMINSTALLfunctionInstala um pacote npm na pasta de módulos da aplicação.load-and-npminstall
IMPORTfunctionDescarrega um ficheiro JavaScript de um URL e carrega-o.import-remote-module
ImageobjectProcessamento de imagens com GraphicsMagick ou ImageMagick.images
NEWTHREADfunctionInicia um worker thread.workers-and-threads
NEWFORKfunctionInicia um processo filho.workers-and-threads
NEWTHREADPOOLfunctionCria um conjunto de workers que as tarefas pedem emprestados um de cada vez.thread-pool
CRONfunctionExecuta uma função segundo um agendamento.cron-jobs
setTimeout2functionsetTimeout com um id: chamá-lo de novo com o mesmo id substitui o temporizador anterior.debounce-timers
clearTimeout2functionCancela um temporizador criado com setTimeout2.debounce-timers
FlowobjectO gestor dos FlowStreams da aplicação: Flow.load(schema), Flow.remove(id), Flow.instances e Flow.test() para um componente.flowstream, flowstream-component-test
FlowStreamobjectO mesmo objeto que Flow.flowstream
NEWMACROfunctionCompila uma macro a partir de uma string.macros
NEWCOMPONENTfunctionCompila o HTML de um componente.native-components
COMPONENTATORfunctionTransfere um bundle Componentator para public/ como ui-<name>-<hash>.min.js e guarda o endereço em F.repo[name].remote-service-boundaries

Utilitários, modelos e localização

NomeTipoO que fazReceita
UobjectO objeto utilitário do framework (U.extend(), U.clone()...).utilities
UtilsobjectO mesmo objeto que U.utilities
UIDfunctionCria um id único curto ordenado por tempo.unique-ids-and-hashes
GUIDfunctionCria uma string aleatória do comprimento indicado.unique-ids-and-hashes
HASHfunctionDevolve um hash numérico rápido (não para palavras-passe).unique-ids-and-hashes
CLONEfunctionFaz uma cópia profunda de um objeto.utility-globals
COPYfunctionCopia as propriedades do primeiro objeto para o segundo e devolve o segundo.utility-globals
DIFFARRfunctionCompara dois arrays de objetos por uma propriedade e devolve os objetos a acrescentar, os pares a atualizar e os valores a remover.diffarr-sync-lists
QUERIFYfunctionConstrói um URL com query string a partir de um objeto.utility-globals
PROMISIFYfunctionPROMISIFY(fn, a, b, c) chama uma função que recebe um callback como último argumento e devolve uma promessa.utility-globals
ENCRYPTfunctionTransforma um valor num token opaco.encrypt-and-decrypt
DECRYPTfunctionLê um valor de um token criado com ENCRYPT.encrypt-and-decrypt
ENCRYPTREQfunctionCifra um valor juntamente com o user agent de um pedido (e o seu endereço IP em modo estrito).request-bound-tokens
DECRYPTREQfunctionLê um valor criado com ENCRYPTREQ; não devolve nada quando o pedido não corresponde.request-bound-tokens
LOCALIZEfunctionEscolhe a língua de cada pedido.localization
TRANSLATEfunctionTraduz os textos @(...) de uma string para uma língua.localization
TangularobjectO motor de modelos (Tangular.render()).tangular-templates
TaobjectOutro nome de Tangular, o motor de modelos.template-files
ThelpersobjectAs funções helper disponíveis nos modelos Tangular.tangular-templates
TEMPLATEfunctionRenderiza um modelo Tangular que é um texto, um ficheiro da pasta templates ou um URL, e devolve uma promessa com o texto.template-files
controllers/globals.js
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);
}