#from core.execution.executioncontract import executeContract from core.execution.action import buildAction from core.execution.operation import buildOperation from core.apirequest import executeRequest from core.runtime.resolver import resolveItem from core.runtime.applyconditions import applyConditions #from plugins.rmass.actions import login, refresh_tokens from core.runtime import buildOutput from core.runtime.savedata import loadSave outputs = {} resolved = {} def buildMonitor(monitor, outputs): outputs = loadSave(monitor, outputs) response, outputs = executeRequest(monitor, outputs, resolved) if response is None: return outputs, None responsedata = response.json() readitems = resolveItem(monitor, responsedata) match, filter = applyConditions(monitor, readitems, outputs) outputs = buildOutput(response, monitor, outputs) if match: module = filter["execute"] if module.kind == "action": outputs, response = buildAction(module, outputs, None) if module.kind == "operation": outputs, responses = buildOperation(module, outputs) response = responses return outputs, response