import type { PluginManifest } from '@@/plugins/manifest'; // OAS — Officer Application Services. Build, sign and deliver iOS and Android apps to registered // devices: what EAS does, self-hosted. // // Ported from the standalone Bun/Hono service in `officer-oas/`, whose access control was an invite key // held in a browser's local storage. The rule we actually want is "the people already registered on the // platform", which is the thing the platform already knows how to enforce — so the key stops being // something a person holds and becomes something an account has. // // `appName` is the directory name: `oas`. export const manifest: PluginManifest = { publisher: 'officerdev', version: '1.0.0', platform: '>=1.0.0', label: 'OAS', summary: 'Build, sign and install iOS and Android apps on your own devices', icon: 'Smartphone', color: '#a78bfa', // One permission over the whole surface, which is also all the platform offers: the first entry // claims the plugin's entire route surface. Owner-only actions (publishing, retention, other people's // devices) are enforced inside the router with `isSuperAdmin`, not by a second permission. permissions: [ { key: 'oas', label: 'App install', description: 'Install Officer apps on your own devices', }, ], };