1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | import { Tool } from '../../ui' class InsertImageTool extends Tool { getClassNames() { return 'sc-insert-image-tool' } renderButton($$) { let button = super.renderButton($$) let input = $$('input').attr('type', 'file').ref('input') .on('change', this.onFileSelect) return [button, input] } onClick() { this.refs.input.click() } onFileSelect(e) { let files = e.currentTarget.files this.executeCommand({ files: Array.prototype.slice.call(files) }) } } export default InsertImageTool |