mirror of
https://github.com/Freika/dawarich.git
synced 2026-01-09 08:47:11 -05:00
43 lines
No EOL
904 B
JavaScript
43 lines
No EOL
904 B
JavaScript
import { Controller } from "@hotwired/stimulus"
|
|
|
|
export default class extends Controller {
|
|
static values = {
|
|
type: String,
|
|
autoDismiss: Boolean
|
|
}
|
|
|
|
connect() {
|
|
this.element.style.animation = 'slideInFromRight 0.3s ease-out forwards'
|
|
|
|
if (this.autoDismissValue) {
|
|
this.scheduleDismissal()
|
|
}
|
|
}
|
|
|
|
scheduleDismissal() {
|
|
// Auto-dismiss success/notice messages after 5 seconds
|
|
this.dismissTimeout = setTimeout(() => {
|
|
this.dismiss()
|
|
}, 5000)
|
|
}
|
|
|
|
dismiss() {
|
|
if (this.dismissTimeout) {
|
|
clearTimeout(this.dismissTimeout)
|
|
}
|
|
|
|
this.element.style.animation = 'slideOutToRight 0.3s ease-in forwards'
|
|
|
|
setTimeout(() => {
|
|
if (this.element.parentNode) {
|
|
this.element.parentNode.removeChild(this.element)
|
|
}
|
|
}, 300)
|
|
}
|
|
|
|
disconnect() {
|
|
if (this.dismissTimeout) {
|
|
clearTimeout(this.dismissTimeout)
|
|
}
|
|
}
|
|
} |