{
- switch (action) {
- case "copyLink":
- navigator.clipboard.writeText(url)
- toast({
- duration: 1000,
- description: "Link copied to clipboard.",
- })
- break
- case "openInBrowser":
- window.open(url, "_blank")
- break
- case "share":
- window.electron.ipcRenderer.send("share-url", url)
- break
- }
- },
- [url],
- )
+ const { execAction } = useEntryActions(url)
return (
- {items.map((item) => (
+ {items[view].map((item) => (
{
+ const { toast } = useToast()
+
+ const execAction = useCallback(
+ (action: string) => {
+ switch (action) {
+ case "copyLink":
+ navigator.clipboard.writeText(url)
+ toast({
+ duration: 1000,
+ description: "Link copied to clipboard.",
+ })
+ break
+ case "openInBrowser":
+ window.open(url, "_blank")
+ break
+ case "share":
+ window.electron.ipcRenderer.send("share-url", url)
+ break
+ }
+ },
+ [toast],
+ )
+
+ return { execAction }
+}