opencode-navigator 0.16.0 → 0.16.1

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/CHANGELOG.md ADDED
@@ -0,0 +1,18 @@
1
+ # Changelog
2
+
3
+ ## [0.16.1] - 2026-09-25
4
+
5
+ - Make the entire OpenCode or Navigator version label open its own update confirmation when an update is available. The separator and the other version remain inactive.
6
+ - Replace the small update arrow with a more prominent filled-circle Nerd Font indicator, retaining an ASCII fallback.
7
+ - Keep version-display assertions independent of release numbers.
8
+
9
+ ## [0.16.0] - 2026-09-25
10
+
11
+ - Show both OpenCode and Navigator versions in the OpenCode 2.x footer.
12
+ - Confirm updates from the footer or command palette, preserve the original installation method and scope, and report the outcome with a restart reminder.
13
+ - Refresh the deterministic screenshot gallery and keep the unminified bundle within its size limit.
14
+
15
+ Earlier release notes are available on [GitHub Releases](https://github.com/St1ggy/opencode-navigator/releases).
16
+
17
+ [0.16.1]: https://github.com/St1ggy/opencode-navigator/compare/v0.16.0...v0.16.1
18
+ [0.16.0]: https://github.com/St1ggy/opencode-navigator/compare/v0.15.0...v0.16.0
package/README.md CHANGED
@@ -6,6 +6,8 @@ with a configurable sidebar.
6
6
 
7
7
  ![OpenCode Navigator](https://raw.githubusercontent.com/St1ggy/opencode-navigator/main/screenshots/01-hero-sidebar.png)
8
8
 
9
+ See the [changelog](CHANGELOG.md) for release-by-release changes.
10
+
9
11
  ## Features
10
12
 
11
13
  - Theme-aware session title with the session creation date
@@ -31,7 +33,7 @@ with a configurable sidebar.
31
33
  - Copy the selected scope's layout and MCP states as versioned JSON, then validate and preview imports
32
34
  - Focus the sidebar with `Ctrl+Shift+F`, then navigate with arrows or `j`/`k`
33
35
  - Open sidebar shortcut mode with `Ctrl+Shift+B`; press `h` to toggle the panel
34
- - Keep OpenCode's compact footer while showing host and Navigator versions with independent update indicators; activate either indicator to confirm an in-place update through the current installation method and scope
36
+ - Keep OpenCode's compact footer while showing host and Navigator versions with independent update indicators; click a version label or its update icon to confirm an in-place update through the current installation method and scope
35
37
 
36
38
  Todo starts expanded. Subagents, skills, quick actions, LSP, and MCP start
37
39
  collapsed. Use `Save current layout as default` in sidebar settings to reuse the
package/dist/tui.js CHANGED
@@ -501,7 +501,7 @@ return leftRank - rightRank||left.bucket.localeCompare(right.bucket)||left.name.
501
501
 
502
502
 
503
503
 
504
- var ICONS={todo:["\uEAB3","[T]"],subagents:["\uEA7E","[A]"],skills:["\uEAA4","[S]"],actions:["\uEB9E","[Q]"],lsp:["\uEAC4","{}"],mcp:["\uEB2D","[M]"],sections:["\uEBEB","[]"],scope:["\uEB01","@"],presets:["\uEBD2","#"],settings:["\uEAF8","[=]"],reset:["\uEB37","R"],save:["\uEB4B","S"],add:["\uEA60","+"],edit:["\uEA73","[R]"],history:["\uEA82","[T]"],copy:["\uEBCC","[C]"],export:["\uEBAC","[E]"],compact:["\uEAF5","[-]"],checked:["\uEBB3","[x]"],unchecked:["\uEBB5","[ ]"],selected:["\uEAB6",">"],expanded:["\uEAB4","v"],collapsed:["\uEAB6",">"],radioOn:["\uEA71","(*)"],radioOff:["\uEABC","( )"],done:["\uEAB2","v"],busy:["\uEA71","*"],idle:["\uEABC","-"],close:["\uEA76","x"],error:["\uEA87","!"],retry:["\uEA77","~"],pending:["\uDB86\uDD78","..."],connected:["\uDB81\uDC3E","(*)"],disconnected:["\uDB81\uDC3D","( )"],favorite:["\uEB59","*"],favoriteEmpty:["\uEA6A","+"],bookmark:["\uDB80\uDCC0","*"],bookmarkEmpty:["\uDB80\uDCC3","+"],mcpFavorite:["\uDB80\uDCC0","*"],mcpFavoriteEmpty:["\uDB80\uDCC3","+"],recent:["\uEA82","~"],info:["\uEA74","i"],search:["\uEA6D","/"],up:["\uEAA1","^"],down:["\uEA9A","v"],left:["\uEA9B","<"],right:["\uEA9C",">"],keyEnter:["\uEBEA","enter"],keyTab:["\uDB80\uDF12","tab"],keyEscape:["\uDB84\uDEB7","esc"],keySpace:["\uDB84\uDC50","space"],delete:["\uEA81","del"],priorityMedium:["\uEA71","-"],help:["\uEB32","?"],selectionLeft:["\uE0B6"," "],selectionRight:["\uE0B4"," "],selectionTopLeft:["\uDBFC\uDC04"," "],selectionTopRight:["\uDBFC\uDC05"," "],selectionBottomLeft:["\uDBFC\uDC06"," "],selectionBottomRight:["\uDBFC\uDC07"," "]
504
+ var ICONS={todo:["\uEAB3","[T]"],subagents:["\uEA7E","[A]"],skills:["\uEAA4","[S]"],actions:["\uEB9E","[Q]"],lsp:["\uEAC4","{}"],mcp:["\uEB2D","[M]"],sections:["\uEBEB","[]"],scope:["\uEB01","@"],presets:["\uEBD2","#"],settings:["\uEAF8","[=]"],reset:["\uEB37","R"],save:["\uEB4B","S"],add:["\uEA60","+"],edit:["\uEA73","[R]"],history:["\uEA82","[T]"],copy:["\uEBCC","[C]"],export:["\uEBAC","[E]"],compact:["\uEAF5","[-]"],checked:["\uEBB3","[x]"],unchecked:["\uEBB5","[ ]"],selected:["\uEAB6",">"],expanded:["\uEAB4","v"],collapsed:["\uEAB6",">"],radioOn:["\uEA71","(*)"],radioOff:["\uEABC","( )"],done:["\uEAB2","v"],busy:["\uEA71","*"],idle:["\uEABC","-"],close:["\uEA76","x"],error:["\uEA87","!"],retry:["\uEA77","~"],pending:["\uDB86\uDD78","..."],connected:["\uDB81\uDC3E","(*)"],disconnected:["\uDB81\uDC3D","( )"],favorite:["\uEB59","*"],favoriteEmpty:["\uEA6A","+"],bookmark:["\uDB80\uDCC0","*"],bookmarkEmpty:["\uDB80\uDCC3","+"],mcpFavorite:["\uDB80\uDCC0","*"],mcpFavoriteEmpty:["\uDB80\uDCC3","+"],recent:["\uEA82","~"],info:["\uEA74","i"],search:["\uEA6D","/"],update:["\uDB80\uDC5F","^"],up:["\uEAA1","^"],down:["\uEA9A","v"],left:["\uEA9B","<"],right:["\uEA9C",">"],keyEnter:["\uEBEA","enter"],keyTab:["\uDB80\uDF12","tab"],keyEscape:["\uDB84\uDEB7","esc"],keySpace:["\uDB84\uDC50","space"],delete:["\uEA81","del"],priorityMedium:["\uEA71","-"],help:["\uEB32","?"],selectionLeft:["\uE0B6"," "],selectionRight:["\uE0B4"," "],selectionTopLeft:["\uDBFC\uDC04"," "],selectionTopRight:["\uDBFC\uDC05"," "],selectionBottomLeft:["\uDBFC\uDC06"," "],selectionBottomRight:["\uDBFC\uDC07"," "]
505
505
  }
506
506
  function uiIcon(name,style="nerd") {return ICONS[name][style==="text"?1:0]
507
507
  }
@@ -4925,18 +4925,21 @@ const theme=()=>props.api.theme.current
4925
4925
  return (()=>{var _el$=_$createElement32("box"),_el$2=_$createElement32("text"),_el$3=_$createTextNode24(` `)
4926
4926
  _$insertNode26(_el$,_el$2)
4927
4927
  _$setProp29(_el$,"flexDirection","row")
4928
+ _$setProp29(_el$,"onMouseDown",(event)=>{if (props.update)
4929
+ event.stopPropagation()
4930
+ })
4931
+ _$setProp29(_el$,"onMouseUp",(event)=>{const update=props.update
4932
+ if(!update)
4933
+ return
4934
+ event.stopPropagation()
4935
+ props.onUpdate?.(update)
4936
+ })
4928
4937
  _$insertNode26(_el$2,_el$3)
4929
4938
  _$insert26(_el$2,()=>props.label,_el$3)
4930
4939
  _$insert26(_el$2,()=>props.version,null)
4931
4940
  _$insert26(_el$,(()=>{var _c$=_$memo23(()=>!!props.update)
4932
4941
  return ()=>_c$()?(()=>{var _el$4=_$createElement32("text")
4933
- _$setProp29(_el$4,"onMouseDown",(event)=>event.stopPropagation())
4934
- _$setProp29(_el$4,"onMouseUp",(event)=>{event.stopPropagation()
4935
- const update=props.update
4936
- if(update)
4937
- props.onUpdate?.(update)
4938
- })
4939
- _$insert26(_el$4,()=>icons.icon("up"))
4942
+ _$insert26(_el$4,()=>icons.icon("update"))
4940
4943
  _$effect29((_$p)=>_$setProp29(_el$4,"fg",theme().warning,_$p))
4941
4944
  return _el$4
4942
4945
  })():null
@@ -7523,12 +7526,12 @@ throw result.error
7523
7526
  }
7524
7527
  return result.data?.type==="text"?result.data.content:undefined
7525
7528
  })
7526
- const versionStatus=createVersionStatus(api,"0.16.0")
7529
+ const versionStatus=createVersionStatus(api,"0.16.1")
7527
7530
  const versionUpdates=createVersionUpdateActions(api,versionStatus,createOpenCodeV1VersionUpdater(api,meta))
7528
7531
  api.slots.register({order:90,slots:{sidebar_footer(_context,props) {return _$createComponent64(IconProvider,{get style() {return preferences.lspIconStyle
7529
7532
  },get multilineCorners() {return preferences.cornerFont
7530
7533
  },get children() {return _$createComponent64(VersionFooter,{api,get sessionID() {return props.session_id
7531
- },navigatorVersion:"0.16.0",status:versionStatus,get onOpenCodeUpdate() {return versionUpdates.openCode
7534
+ },navigatorVersion:"0.16.1",status:versionStatus,get onOpenCodeUpdate() {return versionUpdates.openCode
7532
7535
  },get onNavigatorUpdate() {return versionUpdates.navigator
7533
7536
  }
7534
7537
  })
@@ -7545,7 +7548,7 @@ return
7545
7548
  return new TextDecoder().decode(await context.client.file.read({location:context.location,path:".opencode/navigator.json"
7546
7549
  }))
7547
7550
  })
7548
- const versionStatus=createVersionStatus(adapter.api,"0.16.0")
7551
+ const versionStatus=createVersionStatus(adapter.api,"0.16.1")
7549
7552
  const versionUpdates=createVersionUpdateActions(adapter.api,versionStatus,createOpenCodeV2VersionUpdater(context))
7550
7553
  const disposeFooter=context.ui.slot({append:"sidebar.footer",render:()=>_$createComponent64(IconProvider,{get style() {return preferences.lspIconStyle
7551
7554
  },get multilineCorners() {return preferences.cornerFont
@@ -7553,7 +7556,7 @@ const disposeFooter=context.ui.slot({append:"sidebar.footer",render:()=>_$create
7553
7556
  _$setProp54(_el$,"flexDirection","row")
7554
7557
  _$setProp54(_el$,"justifyContent","space-between")
7555
7558
  _$insert51(_el$,_$createComponent64(VersionSummary,{get api() {return adapter.api
7556
- },navigatorVersion:"0.16.0",status:versionStatus,get onOpenCodeUpdate() {return versionUpdates.openCode
7559
+ },navigatorVersion:"0.16.1",status:versionStatus,get onOpenCodeUpdate() {return versionUpdates.openCode
7557
7560
  },get onNavigatorUpdate() {return versionUpdates.navigator
7558
7561
  }
7559
7562
  }),null)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "opencode-navigator",
4
- "version": "0.16.0",
4
+ "version": "0.16.1",
5
5
  "description": "Search, navigate, and manage OpenCode sessions from the TUI",
6
6
  "type": "module",
7
7
  "packageManager": "bun@1.4.2",
@@ -30,6 +30,7 @@
30
30
  "assets",
31
31
  "scripts/install-font.mjs",
32
32
  "README.md",
33
+ "CHANGELOG.md",
33
34
  "LICENSE"
34
35
  ],
35
36
  "bin": {