[WIP] [skip ci]

This commit is contained in:
Kieran Eglin 2024-05-02 15:39:28 -07:00
parent 7090349abd
commit 0fd35cf72b
No known key found for this signature in database
GPG key ID: 193984967FCF432D
2 changed files with 24 additions and 4 deletions

View file

@ -22,6 +22,12 @@ window.copyTextToClipboard = async (text) => {
} }
} }
window.copyWithCallbacks = async (text, onCopy, onAfterDelay, delay = 4000) => {
await window.copyTextToClipboard(text)
onCopy()
setTimeout(onAfterDelay, delay)
}
window.markVersionAsSeen = (versionString) => { window.markVersionAsSeen = (versionString) => {
localStorage.setItem('seenVersion', versionString) localStorage.setItem('seenVersion', versionString)
} }

View file

@ -3,15 +3,29 @@
<span <span
x-data="{ copied: false }" x-data="{ copied: false }"
x-on:click={" x-on:click={"
window.copyTextToClipboard('#{rss_feed_url(@conn, @source)}') copyWithCallbacks(
copied = true '#{rss_feed_url(@conn, @source)}',
setTimeout(() => copied = false, 4000) () => copied = true,
"} () => copied = false
)
"}
> >
Copy RSS Feed Copy RSS Feed
<span x-show="copied" x-transition.duration.150ms><.icon name="hero-check" class="ml-2 h-4 w-4" /></span> <span x-show="copied" x-transition.duration.150ms><.icon name="hero-check" class="ml-2 h-4 w-4" /></span>
</span> </span>
</:option> </:option>
<:option>
<span x-data="{ copied: false }" x-on:click={~s"
copyWithCallbacks(
`#{Jason.Formatter.pretty_print(Phoenix.json_library().encode!(@source))}`,
() => copied = true,
() => copied = false
)
"}>
Copy JSON
<span x-show="copied" x-transition.duration.150ms><.icon name="hero-check" class="ml-2 h-4 w-4" /></span>
</span>
</:option>
<:option :if={@source.download_media}> <:option :if={@source.download_media}>
<.link <.link
href={~p"/sources/#{@source}/force_download"} href={~p"/sources/#{@source}/force_download"}