19 lines
651 B
Kotlin
19 lines
651 B
Kotlin
package dev.inmo.postssystem.client.utils
|
|
|
|
import dev.inmo.postssystem.features.files.common.FullFileInfo
|
|
import dev.inmo.micro_utils.common.toArrayBuffer
|
|
import kotlinx.browser.document
|
|
import org.w3c.dom.HTMLAnchorElement
|
|
import org.w3c.dom.url.URL
|
|
import org.w3c.files.Blob
|
|
|
|
fun triggerDownloadFile(fullFileInfo: FullFileInfo) {
|
|
val hiddenElement = document.createElement("a") as HTMLAnchorElement
|
|
|
|
val url = URL.createObjectURL(Blob(arrayOf(fullFileInfo.byteArrayAllocator().toArrayBuffer())))
|
|
hiddenElement.href = url
|
|
hiddenElement.target = "_blank"
|
|
hiddenElement.download = fullFileInfo.name.name
|
|
hiddenElement.click()
|
|
}
|