Extract filtering for enabled targets so that the index of the targets is always the same for the bridge message callback

This commit is contained in:
Jay Ohms
2026-01-08 22:28:59 -05:00
parent 8cff72e0ba
commit 2e55f67d9b
2 changed files with 18 additions and 10 deletions
@@ -10,20 +10,24 @@ export default class extends BridgeComponent {
}
notifyBridgeOfConnect() {
const items = this.itemTargets
.filter(target => !target.closest("[data-bridge-disabled]"))
const items = this.#enabledItemTargets
.map((target, index) => {
const element = new BridgeElement(target)
return { title: element.title, index }
})
this.send("connect", { items }, message => {
this.clickItem(message)
this.#clickItem(message)
})
}
clickItem(message) {
#clickItem(message) {
const selectedIndex = message.data.selectedIndex
this.itemTargets[selectedIndex].click()
this.#enabledItemTargets[selectedIndex].click()
}
get #enabledItemTargets() {
return this.itemTargets
.filter(target => !target.closest("[data-bridge-disabled]"))
}
}