diff options
| author | jc0b <j@jc0b.computer> | 2020-07-27 16:48:51 +0200 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-08-24 19:48:24 +0200 |
| commit | 697a4be020d58e7d93966dd577fa590d73bf8d34 (patch) | |
| tree | 37843f6dc88174b31b69dd72a63414f657e42f80 /frontend/src/sagas/prefabs.js | |
| parent | ac32bdb6c33f546133dd4e1fd1dd400195354679 (diff) | |
Create prefabs from topologies
Diffstat (limited to 'frontend/src/sagas/prefabs.js')
| -rw-r--r-- | frontend/src/sagas/prefabs.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/frontend/src/sagas/prefabs.js b/frontend/src/sagas/prefabs.js new file mode 100644 index 00000000..94570404 --- /dev/null +++ b/frontend/src/sagas/prefabs.js @@ -0,0 +1,17 @@ +import {call, put, select} from "redux-saga/effects"; +import {addToStore} from "../actions/objects"; +import {addPrefab} from "../api/routes/prefabs"; +import {getTopologyAsObject} from "./objects"; + +export function* onAddPrefab(action) { + try { + const currentRackId = yield select((state) => state.objects.tile[state.interactionLevel.tileId].rack._id) + const currentRackJson = yield call(getTopologyAsObject, currentRackId) + //TODO: yield call the function in saga to export the specific part of the topology + const prefab = yield call(addPrefab, { name: action.name, rack: currentRackJson }) + yield put(addToStore('prefab', prefab)) + + } catch (error) { + console.error(error) + } +} |
