Sha256: eb799816db37c854aac59830f2da037cdc673e8c5594bc4da35e444579f74cb8
Contents?: true
Size: 794 Bytes
Versions: 2
Compression:
Stored size: 794 Bytes
Contents
import { Controller } from '@hotwired/stimulus' export default class extends Controller { static get targets () { return ['textarea', 'count'] } connect () { this.update() } update () { this.resize() this.updateCount() } resize () { this.textareaTarget.style.height = 'auto' this.textareaTarget.setAttribute('style', 'height:' + (this.textareaTarget.scrollHeight) + 'px;overflow-y:hidden;') } updateCount () { if (this.textareaTarget.getAttribute('maxlength')) { this.updateCountLength() } } updateCountLength () { const current_length = this.textareaTarget.value.length const maximum_length = this.textareaTarget.getAttribute('maxlength') this.countTarget.textContent = `${current_length}/${maximum_length}` } }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
headmin-0.5.3 | app/assets/javascripts/headmin/controllers/textarea_controller.js |
headmin-0.5.2 | app/assets/javascripts/headmin/controllers/textarea_controller.js |