summaryrefslogtreecommitdiffstats
path: root/lua/mason-registry/init.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2025-03-03 16:50:31 +0100
committerWilliam Boman <william@redwill.se>2025-03-03 16:53:49 +0100
commit8960e33e797b55b7769947ec02b08aa3e291b1a4 (patch)
tree7cbcee4d781cd7e72eecdaf8b478f38c99588fb2 /lua/mason-registry/init.lua
parentfix(ui): fix initializing state (diff)
downloadmason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar.gz
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar.bz2
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar.lz
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar.xz
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.tar.zst
mason-8960e33e797b55b7769947ec02b08aa3e291b1a4.zip
refactor(registry)!: add events "update:success", "update:start", "update:progress" and "update:failed"
Diffstat (limited to 'lua/mason-registry/init.lua')
-rw-r--r--lua/mason-registry/init.lua10
1 files changed, 8 insertions, 2 deletions
diff --git a/lua/mason-registry/init.lua b/lua/mason-registry/init.lua
index ad8eef5a..bd35f073 100644
--- a/lua/mason-registry/init.lua
+++ b/lua/mason-registry/init.lua
@@ -113,10 +113,16 @@ function Registry.update(callback)
log.trace "Registry update already in progress."
return installer.channel:receive():get_or_throw()
else
+ Registry:emit("update:start", Registry.sources)
return installer
- .install(Registry.sources)
+ .install(Registry.sources, function(finished, all)
+ Registry:emit("update:progress", finished, all)
+ end)
:on_success(function(updated_registries)
- Registry:emit("update", updated_registries)
+ Registry:emit("update:success", updated_registries)
+ end)
+ :on_failure(function(errors)
+ Registry:emit("update:failed", errors)
end)
:get_or_throw()
end