Sha256: 5d3c652072d4c1d0b5a51466deb5725f164580b01bd2ebf753454b126f6f07f0
Contents?: true
Size: 911 Bytes
Versions: 20
Compression:
Stored size: 911 Bytes
Contents
import { Controller } from "@hotwired/stimulus" // Connects to data-controller="intl-tel-input" export default class extends Controller { static targets = ["input"] connect() { } disconnect() { this.inputTargetDisconnected() } inputTargetConnected() { if (!this.hasInputTarget) return; this.iti = window.intlTelInput(this.inputTarget, this.#buildOptions()) this.inputTarget.setAttribute("data-action", "turbo:morph-element->intl-tel-input#reconnect") } inputTargetDisconnected() { if (this.iti) this.iti.destroy() this.iti = null } reconnect() { this.inputTargetDisconnected() this.inputTargetConnected() } #buildOptions() { return { strictMode: true, hiddenInput: () => ({ phone: this.inputTarget.attributes.name.value }), loadUtilsOnInit: "https://cdn.jsdelivr.net/npm/intl-tel-input@24.8.1/build/js/utils.js", } } }
Version data entries
20 entries across 20 versions & 1 rubygems