UNPKG

awv3

Version:
32 lines (28 loc) 1.15 kB
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();`), ); }, ); } }