* feat(#2948): add UserDecorator, proof of concept * feat(#2948): add UserDecorator, proof of concept * feat(#2948): add UserDecorator, proof of concept * feat(#2948): add UserDecorator * feat(#2948): add UserDecorator * feat(#2948): add UserDecorator * feat(#2948): add Decorator node icon override * feat(#2948): add nvim_tree.api.* node classes * feat(#2948): extract _meta following nvim pattern * feat(#2948): extract _meta following nvim pattern * feat(#2948): add decorator registry and order * feat(#2948): add decorator registry and order * feat(#2948): tidy * feat(#2948): document API * feat(#2948): document API * feat(#2948): document API * feat(#2948): pass api nodes to user decorators * feat(#2948): document API * feat(#2948): use renderer.decorators to define order and register * feat(#2948): tidy decorator args and complete documentation * feat(#2948): decorator classes specified by prefix rather than suffix * feat(#2948): improve doc * feat(#2948): improve doc * feat(#2948): improve doc * feat(#2948): additional user decorator safety * feat(#2948): create nvim_tree.api.decorator.UserDecorator class in API, add :extend * feat(#2948): improve doc
35 lines
847 B
Lua
35 lines
847 B
Lua
local DirectoryNode = require("nvim-tree.node.directory")
|
|
|
|
---@class (exact) RootNode: DirectoryNode
|
|
local RootNode = DirectoryNode:extend()
|
|
|
|
---@class RootNode
|
|
---@overload fun(args: NodeArgs): RootNode
|
|
|
|
---@protected
|
|
---@param args NodeArgs
|
|
function RootNode:new(args)
|
|
RootNode.super.new(self, args)
|
|
end
|
|
|
|
---Root is never a dotfile
|
|
---@return boolean
|
|
function RootNode:is_dotfile()
|
|
return false
|
|
end
|
|
|
|
function RootNode:destroy()
|
|
DirectoryNode.destroy(self)
|
|
end
|
|
|
|
---Create a sanitized partial copy of a node, populating children recursively.
|
|
---@param api_nodes table<number, nvim_tree.api.Node>? optional map of uids to api node to populate
|
|
---@return nvim_tree.api.RootNode cloned
|
|
function RootNode:clone(api_nodes)
|
|
local clone = DirectoryNode.clone(self, api_nodes) --[[@as nvim_tree.api.RootNode]]
|
|
|
|
return clone
|
|
end
|
|
|
|
return RootNode
|