TypeScript-kód
A TypeScript a Kód blokk alapértelmezett nyelve. A típusannotációk a fordításnál eltűnnek, majd a kód a QuickJS motorban fut.
Az API
Section titled “Az API”| Szimbólum | Szerep |
|---|---|
input | A bemeneti porton kapott érték |
vars | A futásváltozók csak olvasható pillanatképe |
__vars | Írható-olvasható nézet: get, set, has, delete, clear, keys, toObject |
console.log / .info / .warn / .error | A futtatási naplóba ír |
fetch(...) | HTTP-hívás, a tűzfalon átvezetve |
return | A visszaadott érték a result portra kerül |
A törzs egy aszinkron függvénybe van csomagolva: a return és az await a
legfelső szinten is működik.
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 };Beépített könyvtár
Section titled “Beépített könyvtár”Globális változóként és a require() révén is elérhető, anélkül hogy bármit
deklarálni kellene a packages mezőben:
| Globális | Csomag |
|---|---|
_, lodash | lodash |
moment | moment |
uuid | uuid |
nanoid | nanoid |
CryptoJS | crypto-js |
Ajv | ajv |
ajvFormats | ajv-formats |
chai, expect, assert | chai |
cheerio | cheerio |
xml2js | xml2js |
const signature = CryptoJS.HmacSHA256(input.corps, vars.secret).toString();return { signature };A nem elérhető modulra hívott require() kifejezett hibát vet.
Várakozás és hívás
Section titled “Várakozás és hívás”const reponse = await fetch(`${vars.baseUrl}/sante`);const corps = await reponse.json();if (corps.statut !== 'ok') throw new Error(`état ${corps.statut}`);return corps;A hívás a tűzfalon megy át, mint bármely más forgalom, és megszakad a futtatás leállításakor vagy az időkorlát túllépésekor.
Külső csomagok
Section titled “Külső csomagok”A packages mezőben kell deklarálni őket (npm); egyszer bundle-be kerülnek, majd
offline csatolódnak be.
Postman- és Bruno-kompatibilitás
Section titled “Postman- és Bruno-kompatibilitás”Ugyanez a környezet elérhetővé teszi a pm.* és a bru.* réteget — lásd:
JavaScript-kód.