2024-10-26 14:21:00 -04:00
|
|
|
import SlimSelect from 'slim-select'
|
|
|
|
|
|
|
|
export default {
|
|
|
|
initalizeSlimSelect (el) {
|
|
|
|
// eslint-disable-next-line no-new
|
2025-01-12 16:51:27 -05:00
|
|
|
el.slimselect = new SlimSelect({
|
|
|
|
select: el,
|
|
|
|
settings: {
|
|
|
|
contentPosition: 'fixed'
|
|
|
|
}
|
|
|
|
})
|
2024-10-26 14:21:00 -04:00
|
|
|
|
|
|
|
const main = document.querySelector(`.ss-main[data-id="${el.dataset.id}"]`)
|
|
|
|
main.setAttribute('id', `${el.dataset.id}-main`)
|
|
|
|
main.setAttribute('phx-update', 'ignore')
|
|
|
|
|
|
|
|
const content = document.querySelector(`.ss-content[data-id="${el.dataset.id}"]`)
|
|
|
|
content.setAttribute('id', `${el.dataset.id}-content`)
|
|
|
|
content.setAttribute('phx-update', 'ignore')
|
|
|
|
},
|
|
|
|
updated () {
|
|
|
|
this.el.slimselect?.destroy()
|
|
|
|
this.initalizeSlimSelect(this.el)
|
|
|
|
},
|
|
|
|
mounted () {
|
|
|
|
this.initalizeSlimSelect(this.el)
|
|
|
|
}
|
|
|
|
}
|