Hoppa till innehåll

TypeScript-kod

TypeScript är standardspråket i rutan Kod. Typannotationerna tas bort vid kompileringen, och sedan körs koden i QuickJS-motorn.

SymbolRoll
inputVärdet som tas emot på ingångsporten
varsEn skrivskyddad ögonblicksbild av körningsvariablerna
__varsEn vy för läsning och skrivning: get, set, has, delete, clear, keys, toObject
console.log / .info / .warn / .errorSkriver till körningsloggen
fetch(...)HTTP-anrop, som dirigeras av brandväggen
returnDet returnerade värdet går ut på porten result

Kroppen omsluts av en asynkron funktion: return och await fungerar på toppnivå.

interface Commande {
id: number;
montant: number;
statut: 'payee' | 'attente' | 'annulee';
}
const commandes = input as Commande[];
const payees = commandes.filter((c) => c.statut === 'payee');
const total = payees.reduce((s, c) => s + c.montant, 0);
console.log(`${payees.length} commandes payées, total ${total}`);
__vars.set('totalPaye', total);
return { nombre: payees.length, total };

Tillgängligt som global variabel och via require(), utan att du behöver deklarera något i packages:

GlobalPaket
_, lodashlodash
momentmoment
uuiduuid
nanoidnanoid
CryptoJScrypto-js
Ajvajv
ajvFormatsajv-formats
chai, expect, assertchai
cheeriocheerio
xml2jsxml2js
const signature = CryptoJS.HmacSHA256(input.corps, vars.secret).toString();
return { signature };

Ett require() på en modul som inte är tillgänglig ger ett uttryckligt fel.

const reponse = await fetch(`${vars.baseUrl}/sante`);
const corps = await reponse.json();
if (corps.statut !== 'ok') throw new Error(`état ${corps.statut}`);
return corps;

Anropet går via brandväggen som all annan trafik, och det avbryts när körningen stoppas eller när tidsgränsen överskrids.

Deklarera dem i packages (npm); de paketeras en gång och monteras sedan offline.

Samma miljö exponerar skikten pm.* och bru.* — se JavaScript-kod.