Friday, September 20, 2024 3:42:13 AM
> settings

Customize


Authenticate

> role_selector_controller.ts
import { Controller } from "@hotwired/stimulus"
import Choices from "choices.js";
import "choices.js/public/assets/styles/choices.css";

// Connects to data-controller="role-selector"
export default class extends Controller {
  connect() {
    let element = this.element as HTMLElement;
    if (element.classList.contains("choices__input")) return;

    let rolesJSON = element.dataset.roles;
    if (rolesJSON == null || rolesJSON.length === 0) return;

    let roles = JSON.parse(rolesJSON);
    new Choices(element, { choices: roles, allowHTML: true });
  }
}
All opinions represented herein are my own
- © 2024 itsthedevman
- build 340fbb8