const { connect } = require('preact-redux'); const preact = require('preact'); const { stringSort } = require('./../utils'); const { ConstructAvatar } = require('./construct'); const actions = require('./../actions'); const InstanceCreateForm = require('./instance.create.buttons'); const Inventory = require('./inventory'); const idSort = stringSort('id'); const addState = connect( function receiveState(state) { const { ws, constructs, constructRename, team, instanceList, mtxActive, } = state; function sendInstanceJoin(instance) { if (team.length) { return ws.sendInstanceJoin(instance.id, team); } return false; } function sendInstanceList() { return ws.sendInstanceList(); } function sendConstructAvatarReroll(id) { console.log('using', mtxActive, 'on', id); return ws.sendMtxApply(id, mtxActive, ''); } function sendConstructRename(id, name) { ws.sendMtxApply(id, 'Rename', name); } return { constructs, instanceList, mtxActive, constructRename, team, sendConstructRename, sendInstanceJoin, sendInstanceList, sendConstructAvatarReroll, }; }, function receiveDispatch(dispatch) { function setConstructRename(id) { dispatch(actions.setConstructRename(id)); } function clearMtxRename() { dispatch(actions.setConstructRename(null)); dispatch(actions.setMtxActive(null)); } return { clearMtxRename, setConstructRename, }; } ); function List(args) { const { team, constructs, constructRename, clearMtxRename, setConstructRename, sendConstructRename, sendInstanceJoin, sendInstanceList, instanceList, mtxActive, sendConstructAvatarReroll, } = args; function listElements() { if (!instanceList) return