@sparkelf/dsh-knowledge-base 0.1.1 → 0.1.2

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.
@@ -87,25 +87,6 @@ export interface KnowledgeFileTreeProps {
87
87
  * caller has no favourites store, which keeps the wrapper from touching the DOM at all.
88
88
  */
89
89
  isFavorite?: (relPath: string) => boolean;
90
- /**
91
- * Open the row context menu for one row.
92
- *
93
- * The explorer builds its own menu inside itself and marks the event handled, so the
94
- * only place to intercept is a capture-phase listener above it. This wrapper does
95
- * that and forwards the row here; the page then renders the SAME menu component the
96
- * home table uses, so both surfaces offer one action set.
97
- *
98
- * Absent means "leave the explorer's own menu alone", which is what a read-only
99
- * surface embedding this tree would want.
100
- */
101
- onRowContextMenu?: (relPath: string, isDir: boolean, at: {
102
- x: number;
103
- y: number;
104
- }, selection?: readonly {
105
- relPath: string;
106
- name: string;
107
- isDir: boolean;
108
- }[]) => void;
109
90
  /** The favourites star's accessible name. */
110
91
  favoriteMarkLabel?: string;
111
92
  }
@@ -26,6 +26,34 @@ export interface KnowledgeSelectionBarProps {
26
26
  onMove: () => void;
27
27
  /** Pin every selected path. */
28
28
  onPin: () => void;
29
+ /**
30
+ * The plugin's own actions, which used to live in a row context menu.
31
+ *
32
+ * They are here because the explorer's context menu cannot be extended: intercepting
33
+ * it meant REPLACING the six actions a reader already relies on (upload here, new
34
+ * folder, new file, zip-and-download, copy relative/absolute address). The bar is the
35
+ * honest place for them -- it appears on selection, offers no competition with the
36
+ * explorer's own menu, and is itself a primitive-shaped toolbar.
37
+ *
38
+ * Each is optional so a read-only surface can pass only what it supports.
39
+ */
40
+ onShare?: () => void;
41
+ /** Favourite every selected path (or unfavourite, when all are already starred). */
42
+ onFavorite?: () => void;
43
+ /** Whether every selected path is currently favourited, which picks the label. */
44
+ allFavorite?: boolean;
45
+ /** Ask a conversation to reference every selected path. */
46
+ onReference?: () => void;
47
+ /** Open the permission surface for the selection. */
48
+ onPermissions?: () => void;
49
+ /** Put the selection on the clipboard. */
50
+ onCut?: () => void;
51
+ /** Paste the clipboard into the selection's directory, when there is one. */
52
+ onPaste?: () => void;
53
+ /** Whether a paste is possible: clipboard non-empty and a destination known. */
54
+ canPaste?: boolean;
55
+ /** True when every selected path is pinned, which picks the pin label. */
56
+ allPinned?: boolean;
29
57
  /** Drop the selection. */
30
58
  onClear: () => void;
31
59
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sparkelf/dsh-knowledge-base",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "DataOps-backed knowledge base for DeepSeek Harness: a left-sidebar destination, Settings configuration, and index tooling over a mounted NAS view.",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",