@brimveyn/aimux-config 0.10.3 → 0.10.5

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/actions.ts +11 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brimveyn/aimux-config",
3
- "version": "0.10.3",
3
+ "version": "0.10.5",
4
4
  "description": "TypeScript configuration API for aimux — keymaps, themes, and backends with a fluent builder.",
5
5
  "keywords": [
6
6
  "aimux",
package/src/actions.ts CHANGED
@@ -105,7 +105,13 @@ export const closeModal: KeyResult = r([{ type: 'close-modal' }], [], 'navigatio
105
105
 
106
106
  export const closeOverlayModal: KeyResult = r([{ type: 'close-modal' }])
107
107
 
108
- export const cancelNewTabModal: KeyResult = r([{ type: 'cancel-command-edit' }])
108
+ /**
109
+ * The picker has no separate filter mode to fall back to, so `cancel-command-edit`
110
+ * would only drop focus to `modal` — a focusMode the new-tab modal has no handler
111
+ * for, leaving it on screen and deaf to every key. Esc closes it, like every other
112
+ * picker. (Esc while editing a custom command is `cancelEditCustomCommand`.)
113
+ */
114
+ export const cancelNewTabModal: KeyResult = closeModal
109
115
 
110
116
  // ---------------------------------------------------------------------------
111
117
  // Dynamic actions (need ctx at runtime — ActionFn)
@@ -244,14 +250,11 @@ export const createWorkspaceModal: KeyResult = r(
244
250
  export const switchCreateWorkspaceField: KeyResult = r([{ type: 'switch-create-workspace-field' }])
245
251
 
246
252
  /**
247
- * An empty prompt is not a workspace: it names nothing, branches nothing and
248
- * gives the assistant nothing to do, so Enter is simply inert until it is typed.
253
+ * The prompt is optional: left empty, the workspace still gets cut and the
254
+ * assistant still launches it is simply handed nothing, and the workspace
255
+ * keeps its `wt-<project>` placeholder name.
249
256
  */
250
- export const confirmCreateWorkspace: ActionFn = (ctx: ModeContext) => {
251
- const { modal } = ctx.state
252
- if (modal.type === 'create-workspace' && modal.prompt.trim() === '') return r([])
253
- return r([], [{ type: 'create-workspace' }])
254
- }
257
+ export const confirmCreateWorkspace: KeyResult = r([], [{ type: 'create-workspace' }])
255
258
 
256
259
  /**
257
260
  * `Enter` creates, so the prompt needs another way to break a line. Inverted