chore: resolve undefined-field
This commit is contained in:
@@ -46,8 +46,7 @@ function M.fn(keep_buffers)
|
||||
end
|
||||
end)
|
||||
:recursor(function(n)
|
||||
n = n and n:as(DirectoryNode)
|
||||
return n and (n.group_next and { n.group_next } or n.nodes)
|
||||
return n.group_next and { n.group_next } or n.nodes
|
||||
end)
|
||||
:iterate()
|
||||
|
||||
|
||||
@@ -60,8 +60,7 @@ local function gen_iterator()
|
||||
end
|
||||
end)
|
||||
:recursor(function(node)
|
||||
node = node and node:as(DirectoryNode)
|
||||
return expansion_count < M.MAX_FOLDER_DISCOVERY and node and (node.group_next and { node.group_next } or (node.open and node.nodes))
|
||||
return expansion_count < M.MAX_FOLDER_DISCOVERY and (node.group_next and { node.group_next } or (node.open and node.nodes))
|
||||
end)
|
||||
:iterate()
|
||||
|
||||
|
||||
@@ -37,18 +37,18 @@ local function reset_filter(self, node_)
|
||||
local dir_ = node_:as(DirectoryNode)
|
||||
if dir_ then
|
||||
dir_.hidden_stats = vim.tbl_deep_extend("force", dir_.hidden_stats or {}, { live_filter = 0, })
|
||||
|
||||
Iterator.builder(dir_.nodes)
|
||||
:hidden()
|
||||
:applier(function(node)
|
||||
node.hidden = false
|
||||
local dir = node:as(DirectoryNode)
|
||||
if dir then
|
||||
dir.hidden_stats = vim.tbl_deep_extend("force", dir.hidden_stats or {}, { live_filter = 0, })
|
||||
end
|
||||
end)
|
||||
:iterate()
|
||||
end
|
||||
|
||||
Iterator.builder(node_.nodes)
|
||||
:hidden()
|
||||
:applier(function(node)
|
||||
node.hidden = false
|
||||
local dir = node:as(DirectoryNode)
|
||||
if dir then
|
||||
dir.hidden_stats = vim.tbl_deep_extend("force", dir.hidden_stats or {}, { live_filter = 0, })
|
||||
end
|
||||
end)
|
||||
:iterate()
|
||||
end
|
||||
|
||||
local overlay_bufnr = 0
|
||||
|
||||
@@ -204,28 +204,26 @@ local function reload_tree_at(toplevel)
|
||||
end
|
||||
|
||||
log.line("watcher", "git event executing '%s'", toplevel)
|
||||
local base = utils.get_node_from_path(toplevel)
|
||||
base = base and base:as(DirectoryNode)
|
||||
if not base then
|
||||
local root_node = utils.get_node_from_path(toplevel)
|
||||
if not root_node then
|
||||
return
|
||||
end
|
||||
|
||||
M.reload_project(toplevel, nil, function()
|
||||
local git_status = M.get_project(toplevel)
|
||||
|
||||
Iterator.builder(base.nodes)
|
||||
Iterator.builder(root_node.nodes)
|
||||
:hidden()
|
||||
:applier(function(node)
|
||||
local parent_ignored = node.parent and node.parent:is_git_ignored() or false
|
||||
node:update_git_status(parent_ignored, git_status)
|
||||
end)
|
||||
:recursor(function(node)
|
||||
local dir = node:as(DirectoryNode)
|
||||
return dir and #dir.nodes > 0 and dir.nodes
|
||||
return node.nodes and #node.nodes > 0 and node.nodes
|
||||
end)
|
||||
:iterate()
|
||||
|
||||
base.explorer.renderer:draw()
|
||||
root_node.explorer.renderer:draw()
|
||||
end)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user