awv3
Version:
⚡ AWV3 embedded CAD
32 lines (28 loc) • 1.15 kB
JavaScript
import Plugin from '../../session/plugin';
import { buildFeaturePath } from '../../session/helpers';
import { Button } from '../../session/elements';
import { actions as connectionActions } from '../../session/store/connections';
const resources = ['isometric'].reduce(
(prev, item) => ({ ...prev, [item]: require('!!url-loader!awv3-icons/32x32/' + item + '.png') }),
{},
);
export default class DebugSeq extends Plugin {
constructor(session, args) {
super(session, { type: 'DebugSeq', icon: 'isometric', resources, ...args });
this.button = new Button(this, { name: 'Debug Step' });
this.addElement(this.button);
}
onEnabled() {
this.resetElements();
this.button.observe(
state => state.lastEvent,
event => {
let connection = this.session.activeConnection;
let path = buildFeaturePath(connection.tree, connection.tree.root);
this.session.dispatch(
connectionActions.execute(connection.id, `${path}.OperationSequence.DebugSequence();`),
);
},
);
}
}