Files
OmniRoute/docs/i18n/lv/docs/frameworks/PLUGINS.md
Diego Rodrigues de Sa e Souza 8feea123bb feat(docs): mirror every docs/ page in all 65 locales (#14106)
* feat(docs): mirror every docs/ page in all 65 locales

Extends the documentation mirrors from the 22-page core set (#13940) to
every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors
(6,208 new), language bars rewritten for the full locale list, state
adopted so the blocking drift gate now covers all 152 pages.

run-translation.mjs: an oversized block made only of table rows or list
items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is
cut at item boundaries and rejoined without a blank line — the single
16-40 KB request outlived the backend socket for verbose scripts. 48
older mirrors whose tables had lost rows were retranslated with --force.

* docs(i18n): refresh mirrors for the sources the base changed since the branch cut

Section-level retranslation of the 29 docs (and README.md) whose source
or mirrors moved on release/v3.8.51 during the run, then state adoption;
the drift gate is green again on the merged tree.
2026-09-18 13:16:46 -03:00

7.8 KiB

OmniRoute CLI Plugin System (Latviešu)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


Paplašiniet omniroute CLI, nemainot tā kodolu. Spraudņi ievēro omniroute-cmd-* nosaukumu piešķiršanas principu, līdzīgi kā gh extension vai kubectl plugin.

Ātrā darba sākšana

# Instalēt spraudni no npm
omniroute plugin install stripe

# Instalēt lokālu spraudni izstrādes stadijā
omniroute plugin install ./my-plugin

# Uzskaitīt instalētos spraudņus
omniroute plugin list

# Izveidot jauna spraudņa sagatavi
omniroute plugin scaffold myplugin
cd omniroute-cmd-myplugin
omniroute plugin install .

Spraudņa uzbūve

Spraudnis ir npm pakotne ar nosaukumu omniroute-cmd-<name> (vai @scope/omniroute-cmd-<name>).

omniroute-cmd-myplugin/
├── package.json     # jābūt norādītiem "type": "module" un "main": "index.mjs"
├── index.mjs        # eksportē register(program, ctx) un neobligātu meta
└── README.md

package.json

{
  "name": "omniroute-cmd-myplugin",
  "version": "0.1.0",
  "type": "module",
  "main": "index.mjs",
  "engines": { "omniroute": ">=4.0.0" },
  "keywords": ["omniroute-plugin", "omniroute-cmd"]
}

index.mjs

export const meta = {
  name: "myplugin",
  version: "0.1.0",
  description: "Mans OmniRoute spraudnis",
  omnirouteApi: ">=4.0.0",
};

export function register(program, ctx) {
  program
    .command("myplugin")
    .description(meta.description)
    .option("-n, --name <name>")
    .action(async (opts, cmd) => {
      const gOpts = cmd.optsWithGlobals();
      const res = await ctx.apiFetch("/api/combos", {
        baseUrl: gOpts.baseUrl,
        apiKey: gOpts.apiKey,
      });
      const data = await res.json();
      ctx.emit(data, gOpts);
    });
}

Spraudņa konteksta API

ctx objekts, kas tiek nodots funkcijai register(program, ctx):

Īpašība Tips Apraksts
ctx.apiFetch(path, opts) async function Autentificēts pieprasījums OmniRoute serverim
ctx.emit(data, opts) function Izvade table/json/jsonl/csv formātā atbilstoši --output karogam
ctx.t(key) async function i18n tulkojuma uzmeklēšana
ctx.withSpinner(label, fn) async function Ietver asinhrono fn ar ora progresa indikatoru
ctx.baseUrl string Atrisinātais bāzes URL
ctx.apiKey string | null API atslēga, ja tā ir norādīta

Atklāšana

Spraudņi tiek atklāti šādās vietās:

  1. ~/.omniroute/plugins/<name>/ — lietotāja lokālās instalācijas
  2. OMNIROUTE_PLUGIN_PATH vides mainīgais — pielāgots direktorijs

Abi attiecas tikai uz CLI. Servera puses spraudņu izpildvidei (tirgus/plugin.json spraudņiem, kas darbojas starpniekserverī) ir savs skeneris ar atsevišķu pārrakstīšanas iestatījumu OMNIROUTE_PLUGINS_DIR — skatiet PLUGIN_MARKETPLACE.md → Spraudņu direktorijs. Viena iestatīšana neietekmē otru.

Ielādes kļūdas tiek pārtvertas un izdrukātas kā brīdinājumi — bojāts spraudnis nekad neizraisa CLI avāriju.

Drošība

Spraudņi darbojas ar tādām pašām Node.js procesa privilēģijām kā omniroute. Instalējiet spraudņus tikai no uzticamiem avotiem. omniroute plugin install parāda skaidru brīdinājumu un pieprasa --yes vai interaktīvu apstiprinājumu.

Publicēšana

  1. Pārliecinieties, ka package.json satur "keywords": ["omniroute-plugin"]
  2. Izpildiet npm publish kā parasti
  3. Lietotāji spraudņus var atrast ar omniroute plugin search <query> (meklē npm reģistrā)

Spraudņa piemērs

Minimālu funkcionējošu piemēru ar meta un register() skatiet vietnē examples/omniroute-cmd-hello/.