import { Controller } from "@hotwired/stimulus" import { get } from '@rails/request.js' export default class extends Controller { static values = { url: String } connect () { this.fetchingData = false } appendAttachments(event) { if (this.fetchingData) return const checkedCheckboxes = this.element.querySelectorAll('input[name="asset_ids[]"]:checked') const checkedValues = Array.from(checkedCheckboxes).map(checkbox => checkbox.value) this.getAttachments(checkedValues) this.dispatch("click", { target: document.getElementById('overlay'), prefix: null}) } async getAttachments(ids) { this.fetchingData = true await get(this.urlValue, { query: {asset_ids: ids.join(',')}, responseKind: "turbo-stream" } ) this.fetchingData = false } }