Nomes globais de Total.js 5
Total.js 5 expõe funções e objetos globais para roteamento, ações, armazenamento, mensagens e utilidades de aplicação.
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
ON | function | Regista um ouvinte para um evento da aplicação. | events |
ONCE | function | Como ON, mas o ouvinte só corre para o primeiro evento. | events |
OFF | function | Remove um ouvinte registado com ON. | events |
EMIT | function | Emite um evento com até sete argumentos. | events |
LOAD | function | Carrega os ficheiros do projeto (controladores, definições...); o framework chama-o por si no arranque. | load-and-npminstall |
LOADCONFIG | function | Analisa um texto no formato de config e aplica-o a CONF. | configuration-file |
LOADRESOURCE | function | Carrega um recurso (um ficheiro de tradução) a partir de um texto ou de um URL. | localization |
PAUSESERVER | function | Pausa ou retoma o servidor por nome: enquanto está em pausa, os pedidos recebem uma página 503. | pause-server |
DEBUG | boolean | true no modo debug, false no modo release. | release-mode-and-debugging |
CONF | object | A configuração da aplicação (o ficheiro config e os seus valores predefinidos). | configuration-file |
DEF | object | Manipuladores e definições predefinidos do framework (DEF.onMail, DEF.helpers, DEF.onCSRFcheck...). | view-helpers-and-config |
F | object | O objeto do framework. Total é o mesmo objeto. | utility-globals |
Total | object | O objeto do framework (igual a F). Total.run() inicia a aplicação. | release-mode-and-debugging |
MAIN | object | Um objeto vazio que o framework cria para os dados da sua aplicação. | utility-globals |
REPO | object | Um objeto vazio que o framework cria para os seus próprios dados. | utility-globals |
FUNC | object | Um objeto vazio que o framework cria para as suas próprias funções. | utility-globals |
TEMP | object | Um objeto para dados temporários; o framework substitui-o por um novo objeto vazio de vez em quando. | utility-globals |
NOW | object | A data atual, atualizada pelo framework uma vez por minuto e por algumas chamadas como CACHE. | utility-globals |
EMPTYARRAY | object | Um array vazio congelado, para evitar criar novos. | utility-globals |
EMPTYOBJECT | object | Um objeto vazio congelado, para evitar criar novos. | utility-globals |
MODS | object | Os módulos carregados da pasta modules/, por id. | utility-globals |
PLUGINS | object | Os plugins carregados da pasta plugins/, por id. | utility-globals |
NOOP | function | Uma função que não faz nada. | utility-globals |
print | function | O mesmo que console.log. | utility-globals |
REQUIRE | function | Como require, mas procura também na pasta node_modules da aplicação e aceita nomes node:. | utility-globals |
Rotas, ações e middleware
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
ROUTE | function | Declara uma rota (HTTP, SOCKET, FILE, API ou um fallback como #404). | http-methods |
NEWACTION | function | Declara uma ação com a sua entrada, params, query, saída e permissões. | actions-crud |
NEWSCHEMA | function | Agrupa as ações de uma entidade sob um nome. | schemas |
ACTION | function | Executa uma ação a partir do seu próprio código. | calling-actions-from-code |
EXEC | function | A mesma função que ACTION. | calling-actions-from-code |
NEWTRANSFORM | function | Acrescenta um passo a uma cadeia de transformações com nome. | transforms |
TRANSFORM | function | Faz passar um valor por uma cadeia de transformações. | transforms |
MIDDLEWARE | function | Regista um middleware para usar nas rotas com #name. | middleware |
NEWMIDDLEWARE | function | A mesma função que MIDDLEWARE. | middleware |
PROXY | function | Reencaminha os pedidos sob um prefixo de URL para outro servidor. | proxy |
CORS | function | Define as origens que podem chamar a aplicação a partir de um navegador. | cors |
ErrorBuilder | function | A classe que recolhe os erros de validação. | errors-and-audit |
SUCCESS | function | Devolve o objeto que o framework envia numa operação bem-sucedida ({ success: true, value: value }). | errors-and-audit |
ERROR | function | ERROR(name) devolve um callback que regista o erro que recebe com esse nome; ERROR() devolve o callback de erro predefinido. | errors-and-audit |
UNAUTHORIZED | function | UNAUTHORIZED($, ...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 |
AUTH | function | Autentica cada pedido: uma função, ou as opções das sessões integradas. | sessions-with-built-in-auth |
BLOCKED | function | Conta as chamadas de um endereço IP e indica quando atingiu o limite. | rate-limiting |
AUDIT | function | Acrescenta uma entrada de auditoria (utilizador, mensagem e tipo) a um ficheiro de registo em logs/. | errors-and-audit |
Dados e cache
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
NOSQL | function | Abre uma tabela da base de dados NoSQL integrada. | nosql-crud |
DATA | object | Entrada independente da base de dados para o query builder. | data-api |
DB | function | Inicia uma consulta com o query builder (DB().find('table').where(...).callback($)); a consulta é executada pelo driver registado com NEWDB. | query-builder-db |
NEWDB | function | Regista 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 |
CACHE | object | Um armazenamento em memória com expiração. | cache |
FILECACHE | function | Calcula um resultado uma vez e guarda-o num ficheiro durante algum tempo. | filecache |
MEMORIZE | function | Um objeto JSON guardado em disco. | memorize |
FILESTORAGE | function | Um armazenamento para ficheiros carregados. | filestorage |
Clientes HTTP, WebSocket e de mensagens
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
REQUEST | function | Cliente HTTP de baixo nível. | request-and-download |
DOWNLOAD | function | Guarda a resposta de um URL num ficheiro. | request-and-download |
RESTBuilder | function | Construtor de chamadas a outras APIs HTTP. | restbuilder |
AJAX | function | AJAX('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 |
API | function | Chama uma operação de um serviço externo através do seu driver: API('service', 'operation', data).callback($). | api-drivers |
NEWAPI | function | Regista o driver function(options, next) de um serviço para API, com uma configuração opcional. | api-drivers |
TotalAPI | function | Chama um serviço da plataforma Total.js através de API('TAPI', name, model). | remote-service-boundaries |
WEBSOCKETCLIENT | function | Um cliente WebSocket para a sua aplicação. | websocket-client |
TMSCLIENT | function | Um cliente do Total Messaging Service. | tms |
PUBLISH | function | Envia uma mensagem aos clientes TMS que a subscreveram. | tms |
NEWPUBLISH | function | Declara uma mensagem que a aplicação publica. | tms |
SUBSCRIBE | function | Acrescenta um ouvinte para uma mensagem que os clientes enviam à aplicação. | tms |
UNSUBSCRIBE | function | Remove os ouvintes de uma mensagem TMS. | tms |
NEWSUBSCRIBE | function | Declara uma mensagem que a aplicação recebe. | tms |
NEWCALL | function | Declara uma função que os clientes TMS podem chamar. | tms |
OPENCLIENT | function | Liga-se ao OpenPlatform por WebSocket para chamadas remotas, eventos e ligações partilhadas. | openclient-protocol |
PROXYCLIENT | function | Liga-se a um PROXYSERVER por WebSocket e responde aos seus pedidos com um servidor local (uma porta ou ip:port). | proxy-tunnel |
PROXYSERVER | function | Transforma 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 |
LDAP | function | Liga-se a um servidor LDAP (porta 389, a menos que ldap.port diga outra coisa) e devolve o resultado no callback. | ldap-openldap |
MAIL | function | Envia um email cujo corpo é uma vista. | send-email |
HTMLMAIL | function | Envia um email cujo corpo é uma string de HTML. | send-email |
LOGMAIL | function | Envia um e-mail cujo corpo é um texto impresso num bloco <pre> (passe o corpo como texto). | logmail |
Mail | object | A classe por trás do envio de email (SMTP). | send-email |
AIMODEL | function | Inicia um pedido a um modelo de linguagem registado com NEWAIMODEL: AIMODEL('name').user('text').callback($.callback()). | ai-models |
AIPARSER | function | Cria 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 |
NEWAIMODEL | function | Regista o driver function(ai, done) de um ou mais modelos de IA para AIMODEL, com uma configuração opcional. | ai-models |
PYPELINE | function | Executa 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
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
PATH | object | Helpers que constroem caminhos nas pastas do projeto (PATH.root(), PATH.public(), PATH.tmp()...). | file-download |
MERGE | function | Regista um ficheiro virtual feito de vários ficheiros, minificado. | minification |
TOUCH | function | Limpa as entradas em cache minificadas, temporárias e de não encontrado de um URL, ou de todos. | touch-static-cache |
CLEANUP | function | Destrói um stream quando terminou. | cleanup-streams |
BACKUP | function | Empacota um diretório num só ficheiro. | backup-restore-shell |
RESTORE | function | Desempacota um ficheiro criado com BACKUP. | backup-restore-shell |
SHELL | function | Executa um comando de shell na pasta do projeto. | backup-restore-shell |
NPMINSTALL | function | Instala um pacote npm na pasta de módulos da aplicação. | load-and-npminstall |
IMPORT | function | Descarrega um ficheiro JavaScript de um URL e carrega-o. | import-remote-module |
Image | object | Processamento de imagens com GraphicsMagick ou ImageMagick. | images |
NEWTHREAD | function | Inicia um worker thread. | workers-and-threads |
NEWFORK | function | Inicia um processo filho. | workers-and-threads |
NEWTHREADPOOL | function | Cria um conjunto de workers que as tarefas pedem emprestados um de cada vez. | thread-pool |
CRON | function | Executa uma função segundo um agendamento. | cron-jobs |
setTimeout2 | function | setTimeout com um id: chamá-lo de novo com o mesmo id substitui o temporizador anterior. | debounce-timers |
clearTimeout2 | function | Cancela um temporizador criado com setTimeout2. | debounce-timers |
Flow | object | O gestor dos FlowStreams da aplicação: Flow.load(schema), Flow.remove(id), Flow.instances e Flow.test() para um componente. | flowstream, flowstream-component-test |
FlowStream | object | O mesmo objeto que Flow. | flowstream |
NEWMACRO | function | Compila uma macro a partir de uma string. | macros |
NEWCOMPONENT | function | Compila o HTML de um componente. | native-components |
COMPONENTATOR | function | Transfere 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
| Nome | Tipo | O que faz | Receita |
|---|---|---|---|
U | object | O objeto utilitário do framework (U.extend(), U.clone()...). | utilities |
Utils | object | O mesmo objeto que U. | utilities |
UID | function | Cria um id único curto ordenado por tempo. | unique-ids-and-hashes |
GUID | function | Cria uma string aleatória do comprimento indicado. | unique-ids-and-hashes |
HASH | function | Devolve um hash numérico rápido (não para palavras-passe). | unique-ids-and-hashes |
CLONE | function | Faz uma cópia profunda de um objeto. | utility-globals |
COPY | function | Copia as propriedades do primeiro objeto para o segundo e devolve o segundo. | utility-globals |
DIFFARR | function | Compara 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 |
QUERIFY | function | Constrói um URL com query string a partir de um objeto. | utility-globals |
PROMISIFY | function | PROMISIFY(fn, a, b, c) chama uma função que recebe um callback como último argumento e devolve uma promessa. | utility-globals |
ENCRYPT | function | Transforma um valor num token opaco. | encrypt-and-decrypt |
DECRYPT | function | Lê um valor de um token criado com ENCRYPT. | encrypt-and-decrypt |
ENCRYPTREQ | function | Cifra um valor juntamente com o user agent de um pedido (e o seu endereço IP em modo estrito). | request-bound-tokens |
DECRYPTREQ | function | Lê um valor criado com ENCRYPTREQ; não devolve nada quando o pedido não corresponde. | request-bound-tokens |
LOCALIZE | function | Escolhe a língua de cada pedido. | localization |
TRANSLATE | function | Traduz os textos @(...) de uma string para uma língua. | localization |
Tangular | object | O motor de modelos (Tangular.render()). | tangular-templates |
Ta | object | Outro nome de Tangular, o motor de modelos. | template-files |
Thelpers | object | As funções helper disponíveis nos modelos Tangular. | tangular-templates |
TEMPLATE | function | Renderiza um modelo Tangular que é um texto, um ficheiro da pasta templates ou um URL, e devolve uma promessa com o texto. | 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);
}