@tooee/commands 0.1.21 → 0.2.0

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/README.md CHANGED
@@ -4,6 +4,27 @@ Vim-inspired modal command system for Tooee.
4
4
 
5
5
  Part of the [Tooee](https://github.com/gingerhendrix/tooee) monorepo. See the main repo for documentation.
6
6
 
7
+ ## Command-context extensions
8
+
9
+ Packages extend `CommandContext` with TypeScript module augmentation and provide
10
+ runtime values with command-context providers. Use `useProvideCommandContextKey`
11
+ for one keyed slice so the value is checked against the augmented key:
12
+
13
+ ```tsx
14
+ declare module "@tooee/commands" {
15
+ interface CommandContext {
16
+ myApp: { selectedId: string | null }
17
+ }
18
+ }
19
+
20
+ useProvideCommandContextKey("myApp", () => ({ selectedId }))
21
+ ```
22
+
23
+ Key ownership is by convention: Tooee packages use short built-in keys such as
24
+ `view`, `ask`, `choose`, `overlay`, and `toast`; apps and third-party packages
25
+ should use app/package-specific keys to avoid collisions. If multiple providers
26
+ return the same top-level key, the last registered provider wins.
27
+
7
28
  ## Raw `useKeyboard` policy
8
29
 
9
30
  App-level `useKeyboard` handlers MUST guard against active overlays — either
@@ -36,3 +57,8 @@ exiting the app underneath an open picker. Inside `@tooee/commands` itself,
36
57
  not available. There is a regression test documenting this hazard in
37
58
  `test/surface.test.tsx` ("raw useKeyboard consumers bypass surface
38
59
  arbitration").
60
+
61
+ Renderable focus is the one thing the surface stack does not manage: compare
62
+ `useCommandSurfaceId()` (the surface a subtree registers to) against
63
+ `useActiveCommandSurface()` to blur an editor while a modal surface above it
64
+ owns the keyboard.
package/dist/context.d.ts CHANGED
@@ -46,6 +46,12 @@ export declare function useCommandContext(): {
46
46
  commands: Command[];
47
47
  invoke: (id: string) => void;
48
48
  };
49
+ /**
50
+ * Builds the live command context of the nearest surface — the same value
51
+ * command handlers receive. For callers that must hand a context to something
52
+ * outside the dispatch path (e.g. a context-menu entry resolver).
53
+ */
54
+ export declare function useBuildCommandContext(): () => CommandContext;
49
55
  /**
50
56
  * Internal: the stable registry facade for the nearest surface, without
51
57
  * subscribing to store changes. Registration hooks (useCommand/useActions)
@@ -55,6 +61,13 @@ export declare function useCommandContext(): {
55
61
  export declare function useSurfaceRegistry(): CommandRegistry;
56
62
  export declare function useCommandRegistry(): CommandContextValue;
57
63
  export declare function useCommandSequenceState(): CommandSequenceState | null;
64
+ /**
65
+ * Id of the command surface this subtree registers commands to: the nearest
66
+ * enclosing `CommandSurfaceProvider`'s id, or `ROOT_SURFACE_ID` at the app
67
+ * root. Compare against `useActiveCommandSurface()` to tell whether another
68
+ * modal surface currently owns keyboard input above this subtree.
69
+ */
70
+ export declare function useCommandSurfaceId(): string;
58
71
  /**
59
72
  * Metadata for the topmost modal command surface, or null when the root app is
60
73
  * the active surface. Intended for which-key/help to read shortcuts from the
@@ -74,5 +87,6 @@ export declare function useSurfaceCommands(surfaceId?: string): readonly Command
74
87
  export declare function useCommandStore(): CommandStore;
75
88
  export declare function useCommandGroup(group: CommandGroup): void;
76
89
  export declare function useProvideCommandContext(getter: () => Partial<CommandContext>): void;
90
+ export declare function useProvideCommandContextKey<K extends keyof CommandContext>(key: K, getter: () => CommandContext[K]): void;
77
91
  export {};
78
92
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAGd,OAAO,KAAK,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACd,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGrC,OAAO,EAOL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAA;AAE3B,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,eAAe,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAA;CAC5C;AAED,qFAAqF;AACrF,UAAU,wBAAwB;IAChC,YAAY,EAAE,YAAY,CAAA;IAC1B,+EAA+E;IAC/E,OAAO,EAAE,aAAa,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,QAAA,MAAM,cAAc,0DAAuD,CAAA;AAwB3E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAOD,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,MAAM,EACN,MAAM,EACN,WAAW,EACX,iBAAiB,GAClB,EAAE,oBAAoB,aAmDtB;AA+ED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,SAAS,CAAA;IACnB,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,0CAA0C;IAC1C,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,IAAI,CAAA;CACnB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,EAAE,EACF,IAAc,EACd,WAAsB,GACvB,EAAE,2BAA2B,aAkB7B;AAqFD,wBAAgB,iBAAiB,IAAI;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,CAqBzF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,CAMpD;AAED,wBAAgB,kBAAkB,IAAI,mBAAmB,CAsBxD;AAED,wBAAgB,uBAAuB,IAAI,oBAAoB,GAAG,IAAI,CAErE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,oBAAoB,GAAG,IAAI,CAkBrE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,OAAO,EAAE,CAUzE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAM9C;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CA+BzD;AAID,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CA0BpF"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"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"}
package/dist/context.js CHANGED
@@ -196,6 +196,19 @@ export function useCommandContext() {
196
196
  invoke: registry.invoke,
197
197
  }), [commandMap, registry]);
198
198
  }
199
+ /**
200
+ * Builds the live command context of the nearest surface — the same value
201
+ * command handlers receive. For callers that must hand a context to something
202
+ * outside the dispatch path (e.g. a context-menu entry resolver).
203
+ */
204
+ export function useBuildCommandContext() {
205
+ const ctx = useContext(CommandContext);
206
+ if (!ctx) {
207
+ throw new Error("useBuildCommandContext must be used within a CommandProvider");
208
+ }
209
+ const { surface } = ctx;
210
+ return useCallback(() => surface.buildCtx(), [surface]);
211
+ }
199
212
  /**
200
213
  * Internal: the stable registry facade for the nearest surface, without
201
214
  * subscribing to store changes. Registration hooks (useCommand/useActions)
@@ -230,6 +243,19 @@ export function useCommandRegistry() {
230
243
  export function useCommandSequenceState() {
231
244
  return useContext(CommandSequenceContext);
232
245
  }
246
+ /**
247
+ * Id of the command surface this subtree registers commands to: the nearest
248
+ * enclosing `CommandSurfaceProvider`'s id, or `ROOT_SURFACE_ID` at the app
249
+ * root. Compare against `useActiveCommandSurface()` to tell whether another
250
+ * modal surface currently owns keyboard input above this subtree.
251
+ */
252
+ export function useCommandSurfaceId() {
253
+ const ctx = useContext(CommandContext);
254
+ if (!ctx) {
255
+ throw new Error("useCommandSurfaceId must be used within a CommandProvider");
256
+ }
257
+ return ctx.surface.id;
258
+ }
233
259
  /**
234
260
  * Metadata for the topmost modal command surface, or null when the root app is
235
261
  * the active surface. Intended for which-key/help to read shortcuts from the
@@ -332,4 +358,7 @@ export function useProvideCommandContext(getter) {
332
358
  };
333
359
  }, [commandStore]);
334
360
  }
361
+ export function useProvideCommandContextKey(key, getter) {
362
+ useProvideCommandContext(() => ({ [key]: getter() }));
363
+ }
335
364
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,MAAM,EACN,WAAW,EACX,SAAS,EACT,OAAO,GAER,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAYjD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,uBAAuB,EACvB,QAAQ,GAIT,MAAM,oBAAoB,CAAA;AAiB3B,MAAM,cAAc,GAAG,aAAa,CAAkC,IAAI,CAAC,CAAA;AAC3E,MAAM,sBAAsB,GAAG,aAAa,CAA8B,IAAI,CAAC,CAAA;AAC/E,wEAAwE;AACxE,MAAM,0BAA0B,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;AAEnD;;;GAGG;AACH,MAAM,sBAAsB,GAAG,kBAAkB,CAAC;IAChD,IAAI,EAAE;QACJ,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ;QACvB,wEAAwE;QACxE,uEAAuE;QACvE,QAAQ,EAAE,GAAG,EAAE,CACb,CAAC;YACC,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;YACjB,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAA8B;KAClC;CACF,CAAC,CAAA;AAeF,MAAM,UAAU,eAAe,CAAC,EAC9B,QAAQ,EACR,MAAM,EACN,MAAM,EACN,WAAW,EACX,iBAAiB,GACI;IACrB,0EAA0E;IAC1E,0EAA0E;IAC1E,mDAAmD;IACnD,MAAM,aAAa,GAAG,MAAM,CAAa;QACvC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,IAAI,QAAQ;QACtC,yEAAyE;QACzE,8CAA8C;QAC9C,QAAQ,EAAE,GAAG,EAAE,CACb,CAAC;YACC,IAAI,EAAE,WAAW,IAAI,QAAQ;YAC7B,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;YACjB,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAA8B;KAClC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAA;IAClD,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC9B,QAAQ,CAAC,OAAO,GAAG,kBAAkB,CAAC;YACpC,MAAM;YACN,MAAM;YACN,iBAAiB;YACjB,IAAI,EAAE;gBACJ,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE;gBAC9C,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE;aACjD;SACF,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAA;IAErC,2EAA2E;IAC3E,4DAA4D;IAC5D,MAAM,gBAAgB,GAAG,WAAW,CAClC,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,eAAe,CAAC,EAC/C,CAAC,YAAY,CAAC,CACf,CAAA;IAED,OAAO,CACL,KAAC,YAAY,IAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,YACpE,KAAC,iBAAiB,IAChB,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,iBAAiB,YAEnC,QAAQ,GACS,GACP,CAChB,CAAA;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,EACzB,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,MAAM,EACN,MAAM,EACN,iBAAiB,GAQlB;IACC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;IACtB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAE5B,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAmB,EAAE;QAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;QAClE,MAAM,GAAG,GAAwB;YAC/B,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO;YACP,QAAQ,EAAE;gBACR,MAAM,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3C,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;aACnD;YACD,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAAA;QACD,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;YACtF,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;QAC9B,CAAC;QACD,OAAO,GAAqB,CAAA;IAC9B,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;IAE3B,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;IACpC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAA;IAE9B,0EAA0E;IAC1E,sEAAsE;IACtE,UAAU,CAAC,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAA;IAClD,UAAU,CAAC,OAAO,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAA;IACzD,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAA;IAE7D,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,IAAI,KAAK,CAAC,gBAAgB;YAAE,OAAM;QAClC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACtC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,KAAK,CAAC,cAAc,EAAE,CAAA;YACtB,MAAM,CAAC,MAAM,EAAE,EAAE,CAAA;QACnB,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,4EAA4E;IAC5E,gDAAgD;IAChD,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAE7D,MAAM,aAAa,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAEvF,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACL,YAAY;QACZ,OAAO,EAAE,YAAY,CAAC,UAAU;QAChC,SAAS,EAAE,MAAM;KAClB,CAAC,EACF,CAAC,YAAY,EAAE,MAAM,CAAC,CACvB,CAAA;IAED,OAAO,CACL,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ,YACtC,KAAC,sBAAsB,IAAC,KAAK,EAAE,aAAa,YAAG,QAAQ,GAA0B,GACzD,CAC3B,CAAA;AACH,CAAC;AAYD;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,EACrC,QAAQ,EACR,EAAE,EACF,IAAI,GAAG,OAAO,EACd,WAAW,GAAG,QAAQ,GACM;IAC5B,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IAE/B,0EAA0E;IAC1E,yDAAyD;IACzD,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAA;IAE5F,OAAO,CACL,KAAC,YAAY,IAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,YACpE,KAAC,mBAAmB,IAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,YACpC,QAAQ,GACW,GACT,CAChB,CAAA;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,EAC3B,QAAQ,EACR,EAAE,EACF,IAAI,GAKL;IACC,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IAE/B,MAAM,WAAW,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAA;IAC1D,MAAM,KAAK,GAAG,WAAW,GAAG,CAAC,CAAA;IAE7B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;IAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;IAEtB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAmB,EAAE;QAChD,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,OAAQ,CAAC,CAAA;QAC7D,MAAM,GAAG,GAAwB;YAC/B,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,OAAO;YACP,QAAQ,EAAE;gBACR,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;gBACjD,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;aACnD;YACD,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;SACf,CAAA;QACD,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;YACtF,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAA;QAC9B,CAAC;QACD,OAAO,GAAqB,CAAA;IAC9B,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;IAE3B,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAA;IACpC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAA;IAE9B,MAAM,SAAS,GAAG,MAAM,CAAuB,IAAI,CAAC,CAAA;IACpD,IACE,SAAS,CAAC,OAAO,KAAK,IAAI;QAC1B,SAAS,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE;QAC3B,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI;QAC/B,SAAS,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,EACjC,CAAC;QACD,SAAS,CAAC,OAAO,GAAG;YAClB,EAAE;YACF,IAAI;YACJ,KAAK;YACL,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO;YAC9B,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE;SACtC,CAAA;IACH,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAA;IAEhC,yEAAyE;IACzE,uCAAuC;IACvC,SAAS,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAA;IAEzE,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACL,YAAY;QACZ,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAC,EACF,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CACzC,CAAA;IAED,OAAO,CACL,KAAC,cAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ,YACtC,KAAC,0BAA0B,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAC9C,QAAQ,GAC2B,GACd,CAC3B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;IAC5E,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IAErC,2EAA2E;IAC3E,mEAAmE;IACnE,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CACvD,uBAAuB,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAC/C,CAAA;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAElD,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QAC3D,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,EACF,CAAC,UAAU,EAAE,QAAQ,CAAC,CACvB,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;IACjF,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IACvB,OAAO,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC7E,CAAC;IACD,OAAO,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAC7E,CAAC;IACD,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,CAAA;IAEhD,4EAA4E;IAC5E,8DAA8D;IAC9D,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACvE,MAAM,cAAc,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;IACvF,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAElD,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,QAAQ;QACR,SAAS;QACT,cAAc,EAAE,cAA4C;QAC5D,MAAM,EAAE,MAA6C;KACtD,CAAC,EACF,CAAC,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,CAAC,CAC9C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,UAAU,CAAC,sBAAsB,CAAC,CAAA;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;IAC9E,CAAC;IACD,OAAO,GAAG,CAAC,OAAO,CAAC,EAAE,CAAA;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB;IACrC,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,YAAY,IAAI,sBAAsB,CAAC,CAAC,KAAK,CAAA;IAEjE,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IAC7E,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAClD,OAAO,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACxB,OAAO;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,IAA0B;YACvC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;SAC5D,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;AAC1B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAkB;IACnD,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,YAAY,IAAI,sBAAsB,CAAC,CAAC,KAAK,CAAA;IAEjE,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1C,MAAM,EAAE,GAAG,SAAS,IAAI,wBAAwB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,eAAe,CAAA;QAClF,OAAO,uBAAuB,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;AACzF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,GAAG,CAAC,YAAY,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAmB;IACjD,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC9B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAA;IACxB,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,GAAG,CAAA;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAC9D,MAAM,UAAU,GAA2B;YACzC,GAAG,QAAQ,CAAC,OAAO;YACnB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;SAClC,CAAA;QACD,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;QACjE,OAAO,GAAG,EAAE;YACV,qEAAqE;YACrE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;QACrE,CAAC,CAAA;IACH,CAAC,EAAE;QACD,KAAK,CAAC,EAAE;QACR,KAAK,CAAC,MAAM;QACZ,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,WAAW;QACjB,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,KAAK;QACX,YAAY;QACZ,SAAS;KACV,CAAC,CAAA;AACJ,CAAC;AAED,IAAI,mBAAmB,GAAG,CAAC,CAAA;AAE3B,MAAM,UAAU,wBAAwB,CAAC,MAAqC;IAC5E,MAAM,GAAG,GAAG,UAAU,CAAC,cAAc,CAAC,CAAA;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAA;IACnF,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAA;IACzC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC3B,KAAK,CAAC,OAAO,GAAG,OAAO,mBAAmB,EAAE,EAAE,CAAA;IAChD,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAA;IAE1B,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,KAAK,CAAC,OAAQ,CAAA;QACzB,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,uBAAuB,CAAC;YACjD,EAAE;YACF,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE;SAClC,CAAC,CAAA;QACF,OAAO,GAAG,EAAE;YACV,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAC9D,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,GAAM,EACN,MAA+B;IAE/B,wBAAwB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAA4B,CAAC,CAAA;AAClF,CAAC"}
package/dist/index.d.ts CHANGED
@@ -6,7 +6,7 @@ export { parseHotkey } from "./parse.js";
6
6
  export { matchStep } from "./match.js";
7
7
  export { DEFAULT_SEQUENCE_TIMEOUT_MS, SequenceTracker } from "./sequence.js";
8
8
  export type { SequenceFeedResult, SequencePendingMatch, SequenceTrackerOptions, } from "./sequence.js";
9
- export { CommandProvider, CommandSurfaceProvider, useActiveCommandSurface, useCommandContext, useCommandGroup, useCommandRegistry, useCommandSequenceState, useCommandStore, useProvideCommandContext, useSurfaceCommands, } from "./context.js";
9
+ export { CommandProvider, CommandSurfaceProvider, useActiveCommandSurface, useBuildCommandContext, useCommandContext, useCommandGroup, useCommandRegistry, useCommandSequenceState, useCommandStore, useCommandSurfaceId, useProvideCommandContext, useProvideCommandContextKey, useSurfaceCommands, } from "./context.js";
10
10
  export { ROOT_SURFACE_ID, createCommandStore, selectActiveModalSurface, selectGroups, selectSequence, selectSurfaceCommandMap, selectSurfaceCommands, } from "./command-store.js";
11
11
  export type { CommandStore, CommandStoreConfig, CommandStoreContext, CommandStoreInstance, ContextGetter, CreateCommandStoreOptions, KeyDispatchResult, SurfaceRecord, } from "./command-store.js";
12
12
  export type { CommandProviderProps, CommandSurfaceProviderProps } from "./context.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,sBAAsB,GACvB,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC5E,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,GACd,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAA;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,UAAU,EACV,sBAAsB,GACvB,MAAM,YAAY,CAAA;AACnB,YAAY,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC5E,YAAY,EACV,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,EACb,yBAAyB,EACzB,iBAAiB,EACjB,aAAa,GACd,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAA;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA"}
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@ export { ModeProvider, useMode, useSetMode } from "./mode.js";
2
2
  export { parseHotkey } from "./parse.js";
3
3
  export { matchStep } from "./match.js";
4
4
  export { DEFAULT_SEQUENCE_TIMEOUT_MS, SequenceTracker } from "./sequence.js";
5
- export { CommandProvider, CommandSurfaceProvider, useActiveCommandSurface, useCommandContext, useCommandGroup, useCommandRegistry, useCommandSequenceState, useCommandStore, useProvideCommandContext, useSurfaceCommands, } from "./context.js";
5
+ export { CommandProvider, CommandSurfaceProvider, useActiveCommandSurface, useBuildCommandContext, useCommandContext, useCommandGroup, useCommandRegistry, useCommandSequenceState, useCommandStore, useCommandSurfaceId, useProvideCommandContext, useProvideCommandContextKey, useSurfaceCommands, } from "./context.js";
6
6
  export { ROOT_SURFACE_ID, createCommandStore, selectActiveModalSurface, selectGroups, selectSequence, selectSurfaceCommandMap, selectSurfaceCommands, } from "./command-store.js";
7
7
  export { useCommand } from "./use-command.js";
8
8
  export { useActions } from "./use-actions.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAM5E,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAY3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAM5E,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,oBAAoB,CAAA;AAY3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA"}
@@ -11,6 +11,12 @@ export interface UseCommandOptions {
11
11
  icon?: string;
12
12
  when?: CommandWhen;
13
13
  hidden?: boolean;
14
+ /**
15
+ * Register the command (default true). `false` unregisters it entirely — it
16
+ * cannot be invoked and never appears in the palette or which-key. Use this
17
+ * for genuinely disabled features; use `when` for context-dependent ones.
18
+ */
19
+ enabled?: boolean;
14
20
  }
15
21
  export declare function useCommand(options: UseCommandOptions): void;
16
22
  //# sourceMappingURL=use-command.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-command.d.ts","sourceRoot":"","sources":["../src/use-command.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGrC,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAuC3D"}
1
+ {"version":3,"file":"use-command.d.ts","sourceRoot":"","sources":["../src/use-command.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACtE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGrC,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,cAAc,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,IAAI,EAAE,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CA0C3D"}
@@ -11,6 +11,8 @@ export function useCommand(options) {
11
11
  // register and observe commands, e.g. the command palette provider).
12
12
  const modesKey = options.modes?.join("|") ?? "";
13
13
  useEffect(() => {
14
+ if (options.enabled === false)
15
+ return;
14
16
  const command = {
15
17
  id: options.id,
16
18
  title: options.title,
@@ -35,6 +37,7 @@ export function useCommand(options) {
35
37
  options.group,
36
38
  options.icon,
37
39
  options.hidden,
40
+ options.enabled,
38
41
  registry,
39
42
  ]);
40
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-command.js","sourceRoot":"","sources":["../src/use-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAejD,MAAM,UAAU,UAAU,CAAC,OAA0B;IACnD,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAA;IACrC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAE5B,wEAAwE;IACxE,4EAA4E;IAC5E,uEAAuE;IACvE,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;IAE/C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAY;YACvB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,CAAC,GAAG,IAAoC,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;YACzF,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,uEAAuE;YACvE,8DAA8D;YAC9D,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK;YAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAClF,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAA;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnC,CAAC,EAAE;QACD,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,MAAM;QACd,QAAQ;QACR,OAAO,CAAC,QAAQ;QAChB,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,MAAM;QACd,QAAQ;KACT,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"use-command.js","sourceRoot":"","sources":["../src/use-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAqBjD,MAAM,UAAU,UAAU,CAAC,OAA0B;IACnD,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAA;IACrC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAE5B,wEAAwE;IACxE,4EAA4E;IAC5E,uEAAuE;IACvE,sEAAsE;IACtE,qEAAqE;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;IAE/C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;YAAE,OAAM;QAErC,MAAM,OAAO,GAAY;YACvB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,CAAC,GAAG,IAAoC,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;YACzF,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,uEAAuE;YACvE,8DAA8D;YAC9D,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK;YAC/B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAClF,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAA;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACnC,CAAC,EAAE;QACD,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,MAAM;QACd,QAAQ;QACR,OAAO,CAAC,QAAQ;QAChB,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,MAAM;QACd,OAAO,CAAC,OAAO;QACf,QAAQ;KACT,CAAC,CAAA;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tooee/commands",
3
- "version": "0.1.21",
3
+ "version": "0.2.0",
4
4
  "description": "Vim-inspired modal command system for Tooee",
5
5
  "keywords": [
6
6
  "cli",
@@ -40,15 +40,15 @@
40
40
  "@xstate/store-react": "^2"
41
41
  },
42
42
  "devDependencies": {
43
- "@opentui/core": "^0.2.15",
44
- "@opentui/react": "^0.2.15",
43
+ "@opentui/core": "^0.4.3",
44
+ "@opentui/react": "^0.4.3",
45
45
  "@types/bun": "^1.3.10",
46
46
  "@types/react": "^19.2.14",
47
47
  "typescript": "^5.9.3"
48
48
  },
49
49
  "peerDependencies": {
50
- "@opentui/core": "^0.2.15",
51
- "@opentui/react": "^0.2.15",
50
+ "@opentui/core": "^0.4.3",
51
+ "@opentui/react": "^0.4.3",
52
52
  "react": "^18.0.0 || ^19.0.0"
53
53
  }
54
54
  }
package/src/context.tsx CHANGED
@@ -371,6 +371,20 @@ export function useCommandContext(): { commands: Command[]; invoke: (id: string)
371
371
  )
372
372
  }
373
373
 
374
+ /**
375
+ * Builds the live command context of the nearest surface — the same value
376
+ * command handlers receive. For callers that must hand a context to something
377
+ * outside the dispatch path (e.g. a context-menu entry resolver).
378
+ */
379
+ export function useBuildCommandContext(): () => CommandContext {
380
+ const ctx = useContext(CommandContext)
381
+ if (!ctx) {
382
+ throw new Error("useBuildCommandContext must be used within a CommandProvider")
383
+ }
384
+ const { surface } = ctx
385
+ return useCallback(() => surface.buildCtx(), [surface])
386
+ }
387
+
374
388
  /**
375
389
  * Internal: the stable registry facade for the nearest surface, without
376
390
  * subscribing to store changes. Registration hooks (useCommand/useActions)
@@ -413,6 +427,20 @@ export function useCommandSequenceState(): CommandSequenceState | null {
413
427
  return useContext(CommandSequenceContext)
414
428
  }
415
429
 
430
+ /**
431
+ * Id of the command surface this subtree registers commands to: the nearest
432
+ * enclosing `CommandSurfaceProvider`'s id, or `ROOT_SURFACE_ID` at the app
433
+ * root. Compare against `useActiveCommandSurface()` to tell whether another
434
+ * modal surface currently owns keyboard input above this subtree.
435
+ */
436
+ export function useCommandSurfaceId(): string {
437
+ const ctx = useContext(CommandContext)
438
+ if (!ctx) {
439
+ throw new Error("useCommandSurfaceId must be used within a CommandProvider")
440
+ }
441
+ return ctx.surface.id
442
+ }
443
+
416
444
  /**
417
445
  * Metadata for the topmost modal command surface, or null when the root app is
418
446
  * the active surface. Intended for which-key/help to read shortcuts from the
@@ -529,3 +557,10 @@ export function useProvideCommandContext(getter: () => Partial<CommandContext>):
529
557
  }
530
558
  }, [commandStore])
531
559
  }
560
+
561
+ export function useProvideCommandContextKey<K extends keyof CommandContext>(
562
+ key: K,
563
+ getter: () => CommandContext[K],
564
+ ): void {
565
+ useProvideCommandContext(() => ({ [key]: getter() }) as Pick<CommandContext, K>)
566
+ }
package/src/index.ts CHANGED
@@ -29,12 +29,15 @@ export {
29
29
  CommandProvider,
30
30
  CommandSurfaceProvider,
31
31
  useActiveCommandSurface,
32
+ useBuildCommandContext,
32
33
  useCommandContext,
33
34
  useCommandGroup,
34
35
  useCommandRegistry,
35
36
  useCommandSequenceState,
36
37
  useCommandStore,
38
+ useCommandSurfaceId,
37
39
  useProvideCommandContext,
40
+ useProvideCommandContextKey,
38
41
  useSurfaceCommands,
39
42
  } from "./context.js"
40
43
  export {
@@ -14,6 +14,12 @@ export interface UseCommandOptions {
14
14
  icon?: string
15
15
  when?: CommandWhen
16
16
  hidden?: boolean
17
+ /**
18
+ * Register the command (default true). `false` unregisters it entirely — it
19
+ * cannot be invoked and never appears in the palette or which-key. Use this
20
+ * for genuinely disabled features; use `when` for context-dependent ones.
21
+ */
22
+ enabled?: boolean
17
23
  }
18
24
 
19
25
  export function useCommand(options: UseCommandOptions): void {
@@ -29,6 +35,8 @@ export function useCommand(options: UseCommandOptions): void {
29
35
  const modesKey = options.modes?.join("|") ?? ""
30
36
 
31
37
  useEffect(() => {
38
+ if (options.enabled === false) return
39
+
32
40
  const command: Command = {
33
41
  id: options.id,
34
42
  title: options.title,
@@ -53,6 +61,7 @@ export function useCommand(options: UseCommandOptions): void {
53
61
  options.group,
54
62
  options.icon,
55
63
  options.hidden,
64
+ options.enabled,
56
65
  registry,
57
66
  ])
58
67
  }