awv3
Version:
⚡ AWV3 embedded CAD
25 lines (21 loc) • 1.06 kB
JavaScript
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]
})
);
}
}