# A Flow beállításai, a config fájl és a mappák

> A Flow beállításai (név, komponens- és sablonkatalógusok, környezet, biztonsági mentés, tokenek), a config fájl sorai, a folyamok környezete, valamint a bővítmények és a helyi komponensek mappái.

Framework: flow
Product: Flow (flow@11.1)
Language: hu
Content-SHA256: ca7b1c28bd3309911c762ca87ca9eb83a7b3afc1b8d965727e0beb875a5921d5
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: 
Review: not-recorded

## A `config` fájl

A Flow gyökerében lévő `config` fájl az alkalmazás beállításait tartalmazza. A lényegesek:

| Sor | Jelentés |
|---|---|
| `name` | az alkalmazás által mutatott név (a beállításokban módosítható) |
| `$api : /fapi/` | a JSON API címe |
| `flowstream_worker : fork` | minden FlowStream a saját folyamatában fut |
| `$proxytimeout : 120` | másodpercek, amennyit egy folyam egy HTTP-kérés megválaszolására kaphat |
| `cookie`, `cookie_secret` | az első indításkor jönnek létre, és a `databases/config.json` fájlban maradnak |

Más beállításokat is beolvas, ha léteznek: `directory` (a folyamok mappája; alapértelmezés szerint a `flowstream/` az alkalmazás mellett), `flowstream_memory` (alapértelmezett memóriakorlát az új folyamoknak), `flowstream_sandbox` és `flowstream_asfiles` (minden folyamnak átadja), `components` és `templates` (a katalógusok első értékei) és `backup`.

## Beállítások az alkalmazásban

A szuperadminisztrátor megnyitja a beállításokat, és ezeket találja:

- **name**: a telepítés neve;
- **components** és **components2**: a komponenskatalógus címe (egy `db.json` fájl, alapértelmezetten `https://cdn.totaljs.com/flowstream/webcomponents/db.json`) és egy opcionális második katalógus, hogy a saját komponenseidet a hivatalosak mellett kínálhasd;
- **templates**: a folyamsablonok katalógusa (alapértelmezetten `https://cdn.totaljs.com/flowstream/templates/db.json`);
- **env**: `dev`, `test` vagy `prod`. A folyamok olvassák, és a módosítása mindet egyenként újraindítja;
- **backup**: a folyamok minden mentése az előző `database.json` fájlt egy dátumot és percet tartalmazó fájlra nevezi át, `database_yyyyMMddHHmm.bk`;
- **token**: a véletlenszerű token a `/private/` címhez (lásd [az API-t](/en/flow/manage-flowstreams-with-the-api/));
- **darkmode** és **notify**;
- **op_reqtoken** és **op_restoken**: egy [OpenPlatform](/en/openplatform/how-an-app-connects/) tokenjei; ha mindkettő be van állítva, az emberek azzal az OpenPlatformmal jelentkeznek be.

A bővítmények saját beállításokat adhatnak ugyanahhoz az űrlaphoz. A tároló tartalmaz egyet, a *Bookmarks*-ot, a mentett komponensek listáját, amelyet a `bookmarks` jogosultsággal rendelkezők használhatnak.

## Változók

Minden folyamnak megvannak a saját **változói**, és létezik egy **globális változók** halmaza is; mindkettő szerkeszthető a szerkesztőben vagy a `Variables|read` és `Variables|save` hívásokkal. A komponens ezeket olvassa, hogy ne kelljen címeket és kulcsokat a tervbe írni, a módosítás pedig azonnal eléri a futó folyamokat.

## Helyi komponensek: `--components--`

A tároló `--components--` mappája néhány, az alkalmazással együtt szállított komponenst tartalmaz: `checkfreespace`, `checklog`, `checkpg`, `checkurl`, `console` és `print`. A hivatalos katalógus sokkal nagyobb, lásd [a komponenstárolót](/en/flow/the-components-repository/).

## Bővítmények

A bővítmény hozzátesz valamit minden folyam szerkesztőjéhez. Másolj egy `.html` fájlt az `extensions/` mappába (a tároló a `--extensions--/` mappában dokumentálja egy `test.html` mintával), és a Flow minden folyamhoz betölti: a `<script total>` és a `</script>` közötti rész a folyammal együtt fut, a fájl többi része pedig a szerkesztőhöz adódik.

## Egy folyam környezete

Minden folyam indításakor a Flow megadja neki a mappát, ahol a fájljait tartja (`directory`), a globális változókat, a telepítés `env` értékét, a memóriakorlátját és a bővítménybetöltőt (`extensions.js`). Az összeomló folyamot a Flow újraindítja, a statisztikáit (üzenetek, függő, hibák, memória és folyamatazonosító) a `Streams` adja vissza.
