Initial commit
This commit is contained in:
98
Backend/dist/Integrations/buildin/getiyo/actions/publishScene.js
vendored
Normal file
98
Backend/dist/Integrations/buildin/getiyo/actions/publishScene.js
vendored
Normal file
@@ -0,0 +1,98 @@
|
||||
exports.__esModule = true;
|
||||
module.exports = function (ActionAPI) {
|
||||
ActionAPI.handle(function (properties, status) {
|
||||
var connectionID = properties.connectionID != undefined ? properties.connectionID : 'none';
|
||||
var sceneID = properties.sceneID != undefined ? properties.sceneID : 'none';
|
||||
var displayID = properties.displayID != undefined ? properties.displayID : 'none';
|
||||
if (connectionID != 'none') {
|
||||
if (sceneID != 'none') {
|
||||
if (displayID != 'none') {
|
||||
var connection = ActionAPI.getConnection('channel', connectionID);
|
||||
if (connection) {
|
||||
var channel = connection.instance;
|
||||
return channel.publishScene(sceneID, displayID);
|
||||
}
|
||||
else
|
||||
status("Connection doesn't exist", 'error');
|
||||
}
|
||||
else
|
||||
status('No display specfied', 'error');
|
||||
}
|
||||
else
|
||||
status('No scene specfied', 'error');
|
||||
}
|
||||
else
|
||||
status('No connection specfied', 'error');
|
||||
});
|
||||
ActionAPI.onOpenEditor(function (EditorAPI, properties) {
|
||||
var connectionID = properties.connectionID != undefined ? properties.connectionID : 'none';
|
||||
var sceneID = properties.sceneID != undefined ? properties.sceneID : 'none';
|
||||
var displayID = properties.displayID != undefined ? properties.displayID : 'none';
|
||||
var connectionField = {
|
||||
id: 'connectionID',
|
||||
name: "Connection",
|
||||
type: "connection",
|
||||
connectionType: 'channel',
|
||||
value: connectionID
|
||||
};
|
||||
var sceneField = {
|
||||
id: 'sceneID',
|
||||
name: "Scene",
|
||||
type: "select",
|
||||
value: sceneID,
|
||||
values: []
|
||||
};
|
||||
var displayField = {
|
||||
id: 'displayID',
|
||||
name: "Display",
|
||||
type: "select",
|
||||
value: displayID,
|
||||
values: []
|
||||
};
|
||||
var lastConnectionID = null;
|
||||
var validate = function () {
|
||||
if (connectionID != lastConnectionID) {
|
||||
lastConnectionID = connectionID;
|
||||
if (lastConnectionID != "none") {
|
||||
var connection = ActionAPI.getConnection('channel', lastConnectionID);
|
||||
if (connection) {
|
||||
var channel = connection.instance;
|
||||
channel.getScenes().then(function (scenes) {
|
||||
sceneField.values = scenes.map(function (scene) { return { id: scene.id, text: scene.name }; });
|
||||
channel.getDisplays().then(function (displays) {
|
||||
displayField.values = displays.map(function (display) { return { id: display.id, text: display.name }; });
|
||||
EditorAPI.setFields([connectionField, sceneField, displayField]);
|
||||
})["catch"](function (error) {
|
||||
sceneField.values = [];
|
||||
EditorAPI.setFields([connectionField, sceneField, displayField]);
|
||||
});
|
||||
})["catch"](function (error) {
|
||||
sceneField.values = [];
|
||||
EditorAPI.setFields([connectionField, sceneField, displayField]);
|
||||
});
|
||||
}
|
||||
else {
|
||||
sceneField.values = [];
|
||||
EditorAPI.setFields([connectionField, sceneField, displayField]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
sceneField.values = [];
|
||||
EditorAPI.setFields([connectionField, sceneField, displayField]);
|
||||
}
|
||||
}
|
||||
};
|
||||
EditorAPI.onFieldChanges(function (fields) {
|
||||
var fieldObject = EditorAPI.tools.objectifyFieldsValues(fields);
|
||||
connectionID = fieldObject.connectionID;
|
||||
sceneID = fieldObject.sceneID;
|
||||
displayID = fieldObject.displayID;
|
||||
connectionField.value = connectionID;
|
||||
sceneField.value = sceneID;
|
||||
EditorAPI.saveProperties({ connectionID: connectionID, sceneID: sceneID, displayID: displayID });
|
||||
validate();
|
||||
});
|
||||
validate();
|
||||
});
|
||||
};
|
||||
//# sourceMappingURL=publishScene.js.map
|
||||
Reference in New Issue
Block a user