@loomweaver/plugin-sdk 0.7.8 → 0.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loomweaver/plugin-sdk",
3
- "version": "0.7.8",
3
+ "version": "0.7.9",
4
4
  "description": "LoomWeaver plugin contract: the public SDK a weaver depends on — ProductIdentity, Command, PluginContext and the host UI vocabulary.",
5
5
  "keywords": [
6
6
  "loomweaver",
@@ -199,9 +199,8 @@ export interface ContentRouteBase {
199
199
  /** Whether the user may close a tab of this route — carried through from {@link Surface.closable}. */
200
200
  readonly closable?: boolean;
201
201
  /**
202
- * Whether the host insets this surface from its pane edges (default `true`). Declare `false` for a
203
- * surface that owns its own edges a viewer, a canvas, a map, an edge-to-edge table. See
204
- * `SurfaceBase.padded`.
202
+ * Whether the host insets this surface from its pane edges. Absent, the product's own default
203
+ * applies, which is no inset unless the distribution asked for one. See `SurfaceBase.padded`.
205
204
  */
206
205
  readonly padded?: boolean;
207
206
  }
@@ -60,6 +60,11 @@ export interface RailItem {
60
60
  /**
61
61
  * Id of a registered {@link Command} this item triggers. Provide this **or** {@link run}; when
62
62
  * set, the host runs that command (so a keybinding/palette can share the same behaviour).
63
+ *
64
+ * The host never marks such an item as current, not even while the address its command opened is
65
+ * the one on screen: only a {@link workspace} entry is marked, because a command may do anything
66
+ * and the host cannot tell what "being there" would mean for it. An entry meant to read as a
67
+ * place the user is *in* belongs to a workspace, not to a command that navigates.
63
68
  */
64
69
  readonly command?: string;
65
70
  /**
@@ -190,13 +190,18 @@ export interface SurfaceBase {
190
190
  */
191
191
  readonly closable?: boolean;
192
192
  /**
193
- * Whether the host insets this surface from its pane edges. Defaults to `true` comfortable for the
194
- * prose, forms and lists most surfaces are. Declare `false` for a surface that **is** the content and
195
- * owns its own edges: a viewer, a canvas, a map, an edge-to-edge table. It travels with the surface,
196
- * so it holds wherever the user puts it — the URL pane, a split, a sidebar, a pop-out window.
193
+ * Whether the host insets this surface from its pane edges. Leave it out and the product decides:
194
+ * the host insets nothing unless the distribution asked it to, with `padding` on `provideShell`.
197
195
  *
198
- * Only the inset is yours to switch off; how wide it is stays a styling question, so a product that
199
- * wants a different amount everywhere writes plain unlayered CSS rather than asking for a token.
196
+ * Declare it where this surface differs from the product's answer, in either direction. `true` for
197
+ * the prose, forms and lists that read better with air around them; `false` for a surface that
198
+ * **is** the content and owns its own edges — a viewer, a canvas, a map, an edge-to-edge table —
199
+ * in a product that insets everything else. It travels with the surface, so it holds wherever the
200
+ * user puts it: the URL pane, a split, a sidebar, a pop-out window.
201
+ *
202
+ * Only whether there is an inset is yours; how wide it is stays a styling question, so a product
203
+ * that wants a different amount everywhere writes plain unlayered CSS rather than asking for a
204
+ * token.
200
205
  */
201
206
  readonly padded?: boolean;
202
207
  /**
package/src/lib/view.d.ts CHANGED
@@ -84,9 +84,8 @@ export interface View {
84
84
  /** Whether the user may close a tab of this view — carried through from {@link Surface.closable}. */
85
85
  readonly closable?: boolean;
86
86
  /**
87
- * Whether the host insets this surface from its pane edges (default `true`). Declare `false` for a
88
- * surface that owns its own edges a viewer, a canvas, a map, an edge-to-edge table. See
89
- * `SurfaceBase.padded`.
87
+ * Whether the host insets this surface from its pane edges. Absent, the product's own default
88
+ * applies, which is no inset unless the distribution asked for one. See `SurfaceBase.padded`.
90
89
  */
91
90
  readonly padded?: boolean;
92
91
  /** Component the host renders as the view body. */