16 agent tools, event handler for auto-linking, sync job every 15m. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
97 lines
3.4 KiB
JavaScript
97 lines
3.4 KiB
JavaScript
/**
|
|
* Shared UI component declarations for plugin frontends.
|
|
*
|
|
* These components are exported from `@paperclipai/plugin-sdk/ui` and are
|
|
* provided by the host at runtime. They match the host's design tokens and
|
|
* visual language, reducing the boilerplate needed to build consistent plugin UIs.
|
|
*
|
|
* **Plugins are not required to use these components.** They exist to reduce
|
|
* boilerplate and keep visual consistency. A plugin may render entirely custom
|
|
* UI using any React component library.
|
|
*
|
|
* Component implementations are provided by the host — plugin bundles contain
|
|
* only the type declarations; the runtime implementations are injected via the
|
|
* host module registry.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components In `@paperclipai/plugin-sdk/ui`
|
|
*/
|
|
import { renderSdkUiComponent } from "./runtime.js";
|
|
// ---------------------------------------------------------------------------
|
|
// Component declarations (provided by host at runtime)
|
|
// ---------------------------------------------------------------------------
|
|
// These are declared as ambient values so plugin TypeScript code can import
|
|
// and use them with full type-checking. The host's module registry provides
|
|
// the concrete React component implementations at bundle load time.
|
|
/**
|
|
* Displays a single metric with an optional trend indicator and sparkline.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
function createSdkUiComponent(name) {
|
|
return function PaperclipSdkUiComponent(props) {
|
|
return renderSdkUiComponent(name, props);
|
|
};
|
|
}
|
|
export const MetricCard = createSdkUiComponent("MetricCard");
|
|
/**
|
|
* Displays an inline status badge (ok / warning / error / info / pending).
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const StatusBadge = createSdkUiComponent("StatusBadge");
|
|
/**
|
|
* Sortable, paginated data table.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const DataTable = createSdkUiComponent("DataTable");
|
|
/**
|
|
* Line or bar chart for time-series data.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const TimeseriesChart = createSdkUiComponent("TimeseriesChart");
|
|
/**
|
|
* Renders Markdown text as HTML.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const MarkdownBlock = createSdkUiComponent("MarkdownBlock");
|
|
/**
|
|
* Renders a definition-list of label/value pairs.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const KeyValueList = createSdkUiComponent("KeyValueList");
|
|
/**
|
|
* Row of action buttons wired to the plugin bridge's `performAction` handlers.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const ActionBar = createSdkUiComponent("ActionBar");
|
|
/**
|
|
* Scrollable, timestamped log output viewer.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const LogView = createSdkUiComponent("LogView");
|
|
/**
|
|
* Collapsible JSON tree for debugging or raw data inspection.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const JsonTree = createSdkUiComponent("JsonTree");
|
|
/**
|
|
* Loading indicator.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.6 — Shared Components
|
|
*/
|
|
export const Spinner = createSdkUiComponent("Spinner");
|
|
/**
|
|
* React error boundary that prevents plugin rendering errors from crashing
|
|
* the host page.
|
|
*
|
|
* @see PLUGIN_SPEC.md §19.7 — Error Propagation Through The Bridge
|
|
*/
|
|
export const ErrorBoundary = createSdkUiComponent("ErrorBoundary");
|
|
//# sourceMappingURL=components.js.map
|