autosubmit, live search

This commit is contained in:
2026-01-22 23:52:53 +01:00
parent 34ab3d80ae
commit 28532fb109
12 changed files with 263 additions and 182 deletions
+2
View File
@@ -0,0 +1,2 @@
import "@hotwired/turbo-rails"
import "controllers"
@@ -0,0 +1,7 @@
import { Application } from "@hotwired/stimulus"
const application = Application.start()
application.debug = false
window.Stimulus = application
export { application }
+4
View File
@@ -0,0 +1,4 @@
import { application } from "controllers/application"
import { eagerLoadControllersFrom } from "@hotwired/stimulus-loading"
eagerLoadControllersFrom("controllers", application)
@@ -0,0 +1,23 @@
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
static values = {
debounce: { type: Number, default: 250 }
}
connect() {
console.log("Search controller connected", this.element)
this.submitTimeoutId = null
}
queueSubmit(event) {
console.log("queueSubmit fired", event.target.value)
clearTimeout(this.submitTimeoutId)
this.submitTimeoutId = setTimeout(() => this.submit(), this.debounceValue)
}
submit() {
console.log("submit() called")
this.element.requestSubmit()
}
}