Plugin class abstract

A plugin as a project declares it in tool/flutterware.dart.

In v1 this carries identity and configuration only — nothing executable. Native plugins are compiled into the GUI binary, so the config file cannot add behaviour; it selects, configures and orders what is already linked in. That is what lets the config be a plain dart run that prints a manifest and exits, with no resident compiler and no config process.

The behaviour for each id lives GUI-side and produces a PluginReport. When the declarative tier lands (v2), third-party plugins will supply that behaviour here too; this class is the seam that stays.

Implementers

Constructors

Plugin(String id, {String? label})

Properties

config → Map<String, Object?>
Per-instance configuration, handed to the GUI-side implementation. Must be JSON-encodable — it crosses a process boundary.
no setter
hashCode → int
The hash code for this object.
no setterinherited
id → String
Stable and globally unique — flutterware.scenarios, acme.deploy. The GUI resolves its native implementation by this string.
final
label → String
What the sidebar row says. Defaults to the last dotted segment of id.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, Object?>
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
inherited