summaryrefslogtreecommitdiff
path: root/frontend/src/sagas/prefabs.js
blob: 287a3cf8cd11f5f122b1d4e659e4e24c3a0510fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import {call, put, select} from "redux-saga/effects";
import {addToStore} from "../actions/objects";
import {addPrefab} from "../api/routes/prefabs";
import {getRackById} from "./objects";

export function* onAddPrefab(action) {
    try {
        const currentRackId = yield select((state) => state.objects.tile[state.interactionLevel.tileId].rackId)
        const currentRackJson = yield getRackById(currentRackId, false)
        const prefab = yield call(addPrefab, { name: action.name, rack: currentRackJson })
        yield put(addToStore('prefab', prefab))

    } catch (error) {
        console.error(error)
    }
}