Ada Eklentileri
Kavramlar

Manifest

manifest.json alanları; kimlik, izinler, yenilenme sıklığı ve ayarlar.

Her eklentinin kökünde bir manifest.json bulunur. adanotch init bunu adanotch/manifest.schema.json şemasıyla birlikte yazar, böylece editörün alanları tamamlar ve hataları işaretler.

manifest.json
{
  "$schema": "./adanotch/manifest.schema.json",
  "id": "local.username.hava-durumu",
  "name": "Hava Durumu",
  "version": "0.1.0",
  "adanotchVersion": ">=0.1.0",
  "main": "dist/index.js",
  "description": "Bulunduğun şehrin sıcaklığı adada.",
  "slots": ["compact", "expanded"],
  "permissions": ["network:api.open-meteo.com"],
  "refresh": "10m",
  "settings": [
    { "key": "city", "type": "text", "label": "Şehir", "default": "İstanbul" },
    {
      "key": "unit",
      "type": "select",
      "label": "Birim",
      "default": "c",
      "options": [
        { "value": "c", "label": "°C" },
        { "value": "f", "label": "°F" }
      ]
    }
  ]
}

Alanlar

Alan

Tür

triggers artık kullanılmıyor

Eski triggers alanı yok sayılır. Olaylara kodda AdanotchKit.events.on(...) ile abone ol. Olaylar ve zamanlayıcılar

Ayarlar

settings dizisindeki her öğe, Ayarlar › Eklentiler › eklentin sayfasında bir kontrol olur. Değerler kodda ctx.settings.<key> olarak gelir.

typeKontrolDeğerNot
toggleAnahtarboolean
numberSayı alanınumberunit ile birim gösterilir ("dk")
textMetin alanıstring
selectAçılır listestringoptions zorunlu
secretGizli alan—ctx.settings'e gelmez; secrets.get(key) ile okunur. default alamaz

Kodda aynı şekli bir arayüzle tanımla:

interface Settings {
  city: string;
  unit: "c" | "f";
}

AdanotchKit.activity<Settings>({
  async update(ctx) {
    ctx.settings.city; // string
  },
});

Gizli değerler için: Ağ ve gizli değerler.

Bu sayfada