mirror of
https://github.com/ragestudio/comty.git
synced 2025-06-09 10:34:17 +00:00
75 lines
1.3 KiB
JavaScript
75 lines
1.3 KiB
JavaScript
import copyToClipboard from "@utils/copyToClipboard"
|
|
import download from "@utils/download"
|
|
|
|
export default {
|
|
"post-card": (items, parent, element, control) => {
|
|
if (!parent.id) {
|
|
parent = parent.parentNode
|
|
}
|
|
|
|
items.push({
|
|
label: "Copy ID",
|
|
icon: "FiCopy",
|
|
action: () => {
|
|
copyToClipboard(parent.id)
|
|
control.close()
|
|
},
|
|
})
|
|
|
|
items.push({
|
|
label: "Copy Link",
|
|
icon: "FiLink",
|
|
action: () => {
|
|
copyToClipboard(`${window.location.origin}/post/${parent.id}`)
|
|
control.close()
|
|
},
|
|
})
|
|
|
|
let media = null
|
|
|
|
if (parent.querySelector(".attachment")) {
|
|
media = parent.querySelector(".attachment")
|
|
media = media.querySelector("video, img")
|
|
|
|
if (media.querySelector("source")) {
|
|
media = media.querySelector("source")
|
|
}
|
|
}
|
|
|
|
if (media) {
|
|
items.push({
|
|
type: "separator",
|
|
})
|
|
|
|
items.push({
|
|
label: "Copy media URL",
|
|
icon: "FiCopy",
|
|
action: () => {
|
|
copyToClipboard(media.src)
|
|
control.close()
|
|
},
|
|
})
|
|
|
|
items.push({
|
|
label: "Open media in new tab",
|
|
icon: "FiExternalLink",
|
|
action: () => {
|
|
window.open(media.src, "_blank")
|
|
control.close()
|
|
},
|
|
})
|
|
|
|
items.push({
|
|
label: "Download media",
|
|
icon: "FiDownload",
|
|
action: () => {
|
|
download(media.src)
|
|
control.close()
|
|
},
|
|
})
|
|
}
|
|
|
|
return items
|
|
},
|
|
}
|