UNPKG

awv3

Version:
30 lines (26 loc) 1.11 kB
import Plugin from '../../session/plugin' import { Spacer, Group, Button, Input, Label, Selection, Checkbox, Dropdown, Console } from '../../session/elements' import { actions } from '../../session/store/connections' const resources = ['isometric'].reduce( (prev, item) => ({ ...prev, [item]: require('!!url-loader!awv3-icons/32x32/' + item + '.png') }), {}, ) export default class Import extends Plugin { constructor(session, args) { super(session, { type: 'Import', icon: 'isometric', resources, ...args }) let input = new Button(this, { name: 'Import', format: Button.Format.Upload }) input.observe( state => state.lastEvent, ({ result, filename }) => { this.store.dispatch(actions.readStream(this.connection.id, this.feature, result)) this.store.dispatch(actions.setName(this.connection.id, this.feature, filename)) }, ) this.addElement( new Group(this, { format: Group.Format.Table, children: [input], }), ) } }