@dxos/app-framework - v0.10.0
    Preparing search index...

    Class EdgeRegistryPluginProvider

    Implements Registry.PluginProvider against the Edge /registry HTTP endpoints.

    Lives in app-framework (rather than the more obvious home of @dxos/edge-client) because edge-client doesn't depend on app-framework; siting the implementation here keeps the dependency arrow app-framework → edge-client and avoids a cycle. The class needs only the public EdgeHttpClient type, so a one-way type-import is enough.

    listVersions is served directly from the releases array inlined on each entry — no separate endpoint is needed.

    Implements

    Index

    Constructors

    Methods

    • Returns a single plugin entry for the given id. If version is omitted, returns the latest. Fails if the plugin or version is not found.

      Parameters

      • id: string
      • Optionalversion: string

      Returns Effect<
          {
              profile: {
                  author?: string;
                  createdAt?: string;
                  dependsOn?: readonly string[];
                  description?: string;
                  homePage?: string;
                  icon?: { hue?: string; key: string };
                  key: string;
                  name: string;
                  screenshots?: readonly { dark?: string; light?: string }[];
                  source?: string;
                  spec?: string;
                  tags?: readonly string[];
              };
              release?: {
                  createdAt?: string;
                  dependencies?: { readonly [key: string]: string };
                  manifestHash?: string;
                  moduleUrl: string;
                  pluginKey?: string;
                  version: string;
              };
          },
          Error,
      >

    • Returns all registry plugins (latest version of each).

      Returns Effect<
          readonly {
              profile: {
                  author?: string;
                  createdAt?: string;
                  dependsOn?: readonly string[];
                  description?: string;
                  homePage?: string;
                  icon?: { hue?: string; key: string };
                  key: string;
                  name: string;
                  screenshots?: readonly { dark?: string; light?: string }[];
                  source?: string;
                  spec?: string;
                  tags?: readonly string[];
              };
              release?: {
                  createdAt?: string;
                  dependencies?: { readonly [key: string]: string };
                  manifestHash?: string;
                  moduleUrl: string;
                  pluginKey?: string;
                  version: string;
              };
          }[],
          Error,
      >

    • Returns all known versions of a plugin, identified by its composer plugin id (NSID). Ordered newest-first. Must return at least one entry.

      Parameters

      • id: string

      Returns Effect<
          readonly {
              createdAt?: string;
              dependencies?: { readonly [key: string]: string };
              manifestHash?: string;
              moduleUrl: string;
              pluginKey?: string;
              version: string;
          }[],
          Error,
      >