Skip to content

Commit cdb730d

Browse files
committed
docs(#2934): revert API opts classes changes
1 parent ada718b commit cdb730d

File tree

10 files changed

+66
-83
lines changed

10 files changed

+66
-83
lines changed

lua/nvim-tree/_meta/api.lua

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,6 @@
11
---@meta
22
error("Cannot require a meta file")
33

4-
--
5-
-- API Options
6-
--
7-
8-
---@class (exact) nvim_tree.api.TreeOpenOpts
9-
---@field path? string root directory for the tree
10-
---@field current_window? boolean open the tree in the current window
11-
---@field winid? number open the tree in the specified winid, overrides current_window
12-
---@field find_file? boolean find the current buffer
13-
---@field update_root? boolean requires find_file, see [nvim-tree.update_focused_file.update_root]
14-
---@field focus? boolean focus the tree when opening, default true
15-
16-
---@class (exact) nvim_tree.api.TreeToggleOpts
17-
---@field path? string root directory for the tree
18-
---@field current_window? boolean open the tree in the current window
19-
---@field winid? number open the tree in the specified [winid], overrides current_window
20-
---@field find_file? boolean find the current buffer
21-
---@field update_root? boolean requires find_file, see [nvim-tree.update_focused_file.update_root]
22-
---@field focus? boolean focus the tree when opening, default true
23-
24-
---@class (exact) nvim_tree.api.TreeResizeOpts
25-
---@field width? string|function|number|table new [nvim-tree.view.width] value
26-
---@field absolute? number set the width
27-
---@field relative? number relative width adjustment
28-
29-
---@class (exact) nvim_tree.api.TreeFindFileOpts
30-
---@field buf? string|number absolute/relative path OR bufnr to find
31-
---@field open? boolean open the tree if necessary
32-
---@field current_window? boolean requires open, open in the current window
33-
---@field winid? number open the tree in the specified [winid], overrides current_window
34-
---@field update_root? boolean see [nvim-tree.update_focused_file.update_root]
35-
---@field focus? boolean focus the tree
36-
37-
---@class (exact) nvim_tree.api.CollapseOpts
38-
---@field keep_buffers? boolean do not collapse nodes with open buffers
39-
40-
---@class (exact) nvim_tree.api.TreeExpandOpts
41-
---@field expand_until? (fun(expansion_count: integer, node: Node): boolean) Return true if node should be expanded. expansion_count is the total number of folders expanded.
42-
43-
---@class (exact) nvim_tree.api.TreeIsVisibleOpts
44-
---@field tabpage? number as per [nvim_get_current_tabpage()]
45-
---@field any_tabpage? boolean visible on any tab, default false
46-
47-
---@class (exact) nvim_tree.api.TreeWinIdOpts
48-
---@field tabpage? number tabpage, 0 or nil for current, default nil
49-
50-
---@class (exact) nvim_tree.api.NodeEditOpts
51-
---@field quit_on_open? boolean quits the tree when opening the file
52-
---@field focus? boolean keep focus in the tree when opening the file
53-
54-
---@class (exact) nvim_tree.api.NodeBufferOpts
55-
---@field force? boolean delete/wipe even if buffer is modified, default false
56-
574
--
585
-- Nodes
596
--

lua/nvim-tree/actions/node/buffer.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@ local notify = require("nvim-tree.notify")
44
local M = {}
55

66
---@param node Node
7-
---@param opts nvim_tree.api.NodeBufferOpts|nil
7+
---@param opts ApiNodeDeleteWipeBufferOpts|nil
88
---@return nil
99
function M.delete(node, opts)
1010
M.delete_buffer("delete", node.absolute_path, opts)
1111
end
1212

1313
---@param node Node
14-
---@param opts nvim_tree.api.NodeBufferOpts|nil
14+
---@param opts ApiNodeDeleteWipeBufferOpts|nil
1515
---@return nil
1616
function M.wipe(node, opts)
1717
M.delete_buffer("wipe", node.absolute_path, opts)
@@ -21,7 +21,7 @@ end
2121

2222
---@param mode ApiNodeDeleteWipeBufferMode
2323
---@param filename string
24-
---@param opts nvim_tree.api.NodeBufferOpts|nil
24+
---@param opts ApiNodeDeleteWipeBufferOpts|nil
2525
---@return nil
2626
function M.delete_buffer(mode, filename, opts)
2727
if type(mode) ~= "string" then

lua/nvim-tree/actions/tree/find-file.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ local finders_find_file = require("nvim-tree.actions.finders.find-file")
66
local M = {}
77

88
--- Find file or buffer
9-
---@param opts nvim_tree.api.TreeFindFileOpts|nil|boolean legacy -> opts.buf
9+
---@param opts ApiTreeFindFileOpts|nil|boolean legacy -> opts.buf
1010
function M.fn(opts)
1111
-- legacy arguments
1212
if type(opts) == "string" then

lua/nvim-tree/actions/tree/modifiers/collapse.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ end
2626

2727
---Collapse a node, root if nil
2828
---@param node Node?
29-
---@param opts nvim_tree.api.CollapseOpts
29+
---@param opts ApiCollapseOpts
3030
local function collapse(node, opts)
3131
local explorer = core.get_explorer()
3232
if not explorer then
@@ -60,7 +60,7 @@ local function collapse(node, opts)
6060
end
6161

6262

63-
---@param opts nvim_tree.api.CollapseOpts|boolean|nil legacy -> opts.keep_buffers
63+
---@param opts ApiCollapseOpts|boolean|nil legacy -> opts.keep_buffers
6464
function M.all(opts)
6565
-- legacy arguments
6666
if type(opts) == "boolean" then
@@ -73,7 +73,7 @@ function M.all(opts)
7373
end
7474

7575
---@param node Node
76-
---@param opts nvim_tree.api.CollapseOpts?
76+
---@param opts ApiCollapseOpts?
7777
function M.node(node, opts)
7878
collapse(node, opts or {})
7979
end

lua/nvim-tree/actions/tree/modifiers/expand.lua

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ local function gen_iterator(should_descend)
125125
end
126126

127127
---@param node Node?
128-
---@param expand_opts nvim_tree.api.TreeExpandOpts?
128+
---@param expand_opts ApiTreeExpandOpts?
129129
local function expand_node(node, expand_opts)
130130
if not node then
131131
return
@@ -141,14 +141,14 @@ end
141141

142142
---Expand the directory node or the root
143143
---@param node Node
144-
---@param expand_opts nvim_tree.api.TreeExpandOpts?
144+
---@param expand_opts ApiTreeExpandOpts?
145145
function M.all(node, expand_opts)
146146
expand_node(node and node:as(DirectoryNode) or core.get_explorer(), expand_opts)
147147
end
148148

149149
---Expand the directory node or parent node
150150
---@param node Node
151-
---@param expand_opts nvim_tree.api.TreeExpandOpts?
151+
---@param expand_opts ApiTreeExpandOpts?
152152
function M.node(node, expand_opts)
153153
if not node then
154154
return

lua/nvim-tree/actions/tree/open.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ local finders_find_file = require("nvim-tree.actions.finders.find-file")
55
local M = {}
66

77
---Open the tree, focusing if already open.
8-
---@param opts nvim_tree.api.TreeOpenOpts|nil|string legacy -> opts.path
8+
---@param opts ApiTreeOpenOpts|nil|string legacy -> opts.path
99
function M.fn(opts)
1010
-- legacy arguments
1111
if type(opts) == "string" then

lua/nvim-tree/actions/tree/resize.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ local view = require("nvim-tree.view")
33
local M = {}
44

55
---Resize the tree, persisting the new size.
6-
---@param opts nvim_tree.api.TreeResizeOpts|nil
6+
---@param opts ApiTreeResizeOpts|nil
77
function M.fn(opts)
88
if opts == nil then
99
-- reset to config values

lua/nvim-tree/actions/tree/toggle.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ local finders_find_file = require("nvim-tree.actions.finders.find-file")
55
local M = {}
66

77
---Toggle the tree.
8-
---@param opts nvim_tree.api.TreeToggleOpts|nil|boolean legacy -> opts.find_file
8+
---@param opts ApiTreeToggleOpts|nil|boolean legacy -> opts.find_file
99
---@param no_focus string|nil legacy -> opts.focus
1010
---@param cwd boolean|nil legacy -> opts.path
1111
---@param bang boolean|nil legacy -> opts.update_root

lua/nvim-tree/api.lua

Lines changed: 51 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,6 @@ local FileLinkNode = require("nvim-tree.node.file-link")
1414
local RootNode = require("nvim-tree.node.root")
1515
local UserDecorator = require("nvim-tree.renderer.decorator.user")
1616

17-
-- Backwards compatibility aliases for renamed classes
18-
---@alias ApiTreeOpenOpts nvim_tree.api.TreeOpenOpts
19-
---@alias ApiTreeToggleOpts nvim_tree.api.TreeToggleOpts
20-
---@alias ApiTreeResizeOpts nvim_tree.api.TreeResizeOpts
21-
---@alias ApiTreeFindFileOpts nvim_tree.api.TreeFindFileOpts
22-
---@alias ApiCollapseOpts nvim_tree.api.CollapseOpts
23-
---@alias ApiTreeExpandOpts nvim_tree.api.TreeExpandOpts
24-
---@alias ApiTreeIsVisibleOpts nvim_tree.api.TreeIsVisibleOpts
25-
---@alias ApiTreeWinIdOpts nvim_tree.api.TreeWinIdOpts
26-
---@alias NodeEditOpts nvim_tree.api.NodeEditOpts
27-
---@alias ApiNodeDeleteWipeBufferOpts nvim_tree.api.NodeBufferOpts
28-
2917
local Api = {
3018
tree = {},
3119
node = {
@@ -135,15 +123,35 @@ local function wrap_explorer_member(explorer_member, member_method)
135123
end)
136124
end
137125

126+
---@class ApiTreeOpenOpts
127+
---@field path string|nil path
128+
---@field current_window boolean|nil default false
129+
---@field winid number|nil
130+
---@field find_file boolean|nil default false
131+
---@field update_root boolean|nil default false
132+
138133
Api.tree.open = wrap(actions.tree.open.fn)
139134
Api.tree.focus = Api.tree.open
140135

136+
---@class ApiTreeToggleOpts
137+
---@field path string|nil
138+
---@field current_window boolean|nil default false
139+
---@field winid number|nil
140+
---@field find_file boolean|nil default false
141+
---@field update_root boolean|nil default false
142+
---@field focus boolean|nil default true
143+
141144
Api.tree.toggle = wrap(actions.tree.toggle.fn)
142145
Api.tree.close = wrap(view.close)
143146
Api.tree.close_in_this_tab = wrap(view.close_this_tab_only)
144147
Api.tree.close_in_all_tabs = wrap(view.close_all_tabs)
145148
Api.tree.reload = wrap_explorer("reload_explorer")
146149

150+
---@class ApiTreeResizeOpts
151+
---@field width string|function|number|table|nil
152+
---@field absolute number|nil
153+
---@field relative number|nil
154+
147155
Api.tree.resize = wrap(actions.tree.resize.fn)
148156

149157
Api.tree.change_root = wrap(function(...)
@@ -171,11 +179,25 @@ Api.tree.change_root_to_parent = wrap_node(wrap_explorer("dir_up"))
171179
Api.tree.get_node_under_cursor = wrap_explorer("get_node_at_cursor")
172180
Api.tree.get_nodes = wrap_explorer("get_nodes")
173181

182+
---@class ApiTreeFindFileOpts
183+
---@field buf string|number|nil
184+
---@field open boolean|nil default false
185+
---@field current_window boolean|nil default false
186+
---@field winid number|nil
187+
---@field update_root boolean|nil default false
188+
---@field focus boolean|nil default false
189+
174190
Api.tree.find_file = wrap(actions.tree.find_file.fn)
175191
Api.tree.search_node = wrap(actions.finders.search_node.fn)
176192

193+
---@class ApiCollapseOpts
194+
---@field keep_buffers boolean|nil default false
195+
177196
Api.tree.collapse_all = wrap(actions.tree.modifiers.collapse.all)
178197

198+
---@class ApiTreeExpandOpts
199+
---@field expand_until (fun(expansion_count: integer, node: Node): boolean)|nil
200+
179201
Api.tree.expand_all = wrap_node(actions.tree.modifiers.expand.all)
180202
Api.tree.toggle_enable_filters = wrap_explorer_member("filters", "toggle")
181203
Api.tree.toggle_gitignore_filter = wrap_explorer_member_args("filters", "toggle", "git_ignored")
@@ -187,8 +209,15 @@ Api.tree.toggle_no_bookmark_filter = wrap_explorer_member_args("filters", "toggl
187209
Api.tree.toggle_help = wrap(help.toggle)
188210
Api.tree.is_tree_buf = wrap(utils.is_nvim_tree_buf)
189211

212+
---@class ApiTreeIsVisibleOpts
213+
---@field tabpage number|nil
214+
---@field any_tabpage boolean|nil default false
215+
190216
Api.tree.is_visible = wrap(view.is_visible)
191217

218+
---@class ApiTreeWinIdOpts
219+
---@field tabpage number|nil default nil
220+
192221
Api.tree.winid = wrap(view.winid)
193222

194223
Api.fs.create = wrap_node_or_nil(actions.fs.create_file.fn)
@@ -209,9 +238,13 @@ Api.fs.copy.filename = wrap_node(wrap_explorer_member("clipboard", "copy_filenam
209238
Api.fs.copy.basename = wrap_node(wrap_explorer_member("clipboard", "copy_basename"))
210239
Api.fs.copy.relative_path = wrap_node(wrap_explorer_member("clipboard", "copy_path"))
211240
---
241+
---@class NodeEditOpts
242+
---@field quit_on_open boolean|nil default false
243+
---@field focus boolean|nil default true
244+
212245
---@param mode string
213246
---@param node Node
214-
---@param edit_opts nvim_tree.api.NodeEditOpts?
247+
---@param edit_opts NodeEditOpts?
215248
local function edit(mode, node, edit_opts)
216249
local file_link = node:as(FileLinkNode)
217250
local path = file_link and file_link.link_to or node.absolute_path
@@ -239,10 +272,10 @@ end
239272

240273
---@param mode string
241274
---@param toggle_group boolean?
242-
---@return fun(node: Node, edit_opts: nvim_tree.api.NodeEditOpts?)
275+
---@return fun(node: Node, edit_opts: NodeEditOpts?)
243276
local function open_or_expand_or_dir_up(mode, toggle_group)
244277
---@param node Node
245-
---@param edit_opts nvim_tree.api.NodeEditOpts?
278+
---@param edit_opts NodeEditOpts?
246279
return function(node, edit_opts)
247280
local root = node:as(RootNode)
248281
local dir = node:as(DirectoryNode)
@@ -297,6 +330,9 @@ Api.node.navigate.opened.prev = wrap_node(actions.moves.item.fn({ where = "prev"
297330
Api.node.expand = wrap_node(actions.tree.modifiers.expand.node)
298331
Api.node.collapse = wrap_node(actions.tree.modifiers.collapse.node)
299332

333+
---@class ApiNodeDeleteWipeBufferOpts
334+
---@field force boolean|nil default false
335+
300336
Api.node.buffer.delete = wrap_node(function(node, opts)
301337
actions.node.buffer.delete(node, opts)
302338
end)

lua/nvim-tree/view.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ function M.abandon_all_windows()
438438
end
439439
end
440440

441-
---@param opts? nvim_tree.api.TreeIsVisibleOpts
441+
---@param opts table|nil
442442
---@return boolean
443443
function M.is_visible(opts)
444444
if opts and opts.tabpage then
@@ -487,7 +487,7 @@ function M.focus(winnr, open_if_closed)
487487
end
488488

489489
--- Retrieve the winid of the open tree.
490-
---@param opts nvim_tree.api.TreeWinIdOpts|nil
490+
---@param opts ApiTreeWinIdOpts|nil
491491
---@return number|nil winid unlike get_winnr(), this returns nil if the nvim-tree window is not visible
492492
function M.winid(opts)
493493
local tabpage = opts and opts.tabpage

0 commit comments

Comments
 (0)