Contacts

manifest.json 70 lines

Files · 4
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970{
  "id": "com.lattice.contacts",
  "name": "Contacts",
  "icon": "👤",
  "color": "#3b82f6",
  "description": "Manage contact names, email addresses, phone numbers and birthdays.",
  "requested_permissions": {
    "storage": ["kv", "sql"],
    "network": { "allowlist": [] },
    "events": {
      "contact-added": {
        "description": "A contact was added.",
        "schema": {
          "type": "object",
          "properties": {
            "id": { "type": "integer", "description": "Contact ID." },
            "name": { "type": "string", "description": "Contact name." },
            "email": { "type": "string", "description": "Email address; empty means unknown." },
            "phone": { "type": "string", "description": "Phone number text; empty means unknown." },
            "birthday": { "type": "string", "description": "Birthday, YYYY-MM-DD; empty means unknown." },
            "notes": { "type": "string", "description": "Contact notes; empty means none." }
          },
          "required": ["id", "name", "email", "phone", "birthday", "notes"]
        }
      },
      "contact-updated": {
        "description": "A contact was updated.",
        "schema": {
          "type": "object",
          "properties": {
            "id": { "type": "integer", "description": "Contact ID." },
            "name": { "type": "string", "description": "Contact name." },
            "email": { "type": "string", "description": "Email address; empty means unknown." },
            "phone": { "type": "string", "description": "Phone number text; empty means unknown." },
            "birthday": { "type": "string", "description": "Birthday, YYYY-MM-DD; empty means unknown." },
            "notes": { "type": "string", "description": "Contact notes; empty means none." }
          },
          "required": ["id", "name", "email", "phone", "birthday", "notes"]
        }
      },
      "contact-removed": {
        "description": "A contact was removed.",
        "schema": {
          "type": "object",
          "properties": {
            "id": { "type": "integer", "description": "Contact ID." },
            "name": { "type": "string", "description": "Contact name." }
          },
          "required": ["id", "name"]
        }
      }
    },
    "listeners": {
      "add-contact": {
        "description": "Add a contact.",
        "schema": {
          "type": "object",
          "properties": {
            "name": { "type": "string", "description": "Nonempty contact name." },
            "email": { "type": "string", "description": "Email address; omitted or empty means unknown." },
            "phone": { "type": "string", "description": "Phone number text; omitted or empty means unknown." },
            "birthday": { "type": "string", "description": "Birthday, YYYY-MM-DD; omitted or empty means unknown." },
            "notes": { "type": "string", "description": "Contact notes; omitted or empty means none." }
          },
          "required": ["name"]
        }
      }
    }
  }
}