PageSourceSearch

https://thehiddenjams.org/assets/controllers/request_artist_form_controller-b12ada03.js

js thehiddenjams.org collected 2026-10-04 05:29:56 UTC 1,541 bytes, 45 lines download raw bytes

1import { Controller } from "@hotwired/stimulus"
2
3export default class extends Controller {
4  static targets = ["entry", "inputTemplate"]
5  static values = { closeIconUrl: String }
6
7  addInput(e) {
8    e?.preventDefault()
9    e?.stopPropagation()
10    const template = this.inputTemplateTarget
11    const clone = template.content.cloneNode(true)
12    const icon = clone.querySelector(".request-artist-remove-icon")
13    if (icon && this.closeIconUrlValue) icon.src = this.closeIconUrlValue
14    this.entryTarget.insertBefore(clone, this.entryTarget.querySelector(".request-artist-add-btn"))
15    this.updateRemoveButtonsVisibility()
16  }
17
18  removeInput(e) {
19    e?.preventDefault()
20    e?.stopPropagation()
21    const block = e.currentTarget.closest(".request-artist-input-block")
22    if (block) block.remove()
23    this.updateRemoveButtonsVisibility()
24  }
25
26  updateRemoveButtonsVisibility() {
27    const blocks = this.entryTarget.querySelectorAll(".request-artist-input-block")
28    const removeButtons = this.entryTarget.querySelectorAll(".request-artist-remove-btn")
29    const shouldShow = blocks.length > 1
30    removeButtons.forEach(btn => btn.classList.toggle("hidden", !shouldShow))
31  }
32
33  resetForm() {
34    const blocks = this.entryTarget.querySelectorAll(".request-artist-input-block")
35    blocks.forEach((block, i) => {
36      if (i === 0) {
37        const input = block.querySelector(".request-artist-input")
38        if (input) input.value = ""
39      } else {
40        block.remove()
41      }
42    })
43    this.updateRemoveButtonsVisibility()
44  }
45}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.