This commit is contained in:
2023-08-29 20:06:52 +02:00
parent 7c2eec4446
commit 25702c073a
225 changed files with 1071 additions and 808 deletions

View File

@@ -1,7 +1,9 @@
exports.__esModule = true;
Object.defineProperty(exports, "__esModule", { value: true });
module.exports = function (ActionAPI) {
ActionAPI.handle(function (properties, status) {
var connectionID = properties.connectionID != undefined ? properties.connectionID : 'none';
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') {
@@ -25,60 +27,95 @@ module.exports = function (ActionAPI) {
status('No connection specfied', 'error');
});
ActionAPI.onOpenEditor(function (EditorAPI, properties) {
var connectionID = properties.connectionID != undefined ? properties.connectionID : 'none';
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",
name: 'Connection',
type: 'connection',
connectionType: 'channel',
value: connectionID
value: connectionID,
};
var sceneField = {
id: 'sceneID',
name: "Scene",
type: "select",
name: 'Scene',
type: 'select',
value: sceneID,
values: []
values: [],
};
var displayField = {
id: 'displayID',
name: "Display",
type: "select",
name: 'Display',
type: 'select',
value: displayID,
values: []
values: [],
};
var lastConnectionID = null;
var validate = function () {
if (connectionID != lastConnectionID) {
lastConnectionID = connectionID;
if (lastConnectionID != "none") {
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]);
channel
.getScenes()
.then(function (scenes) {
sceneField.values = scenes.map(function (scene) {
return { id: scene.id, text: scene.name };
});
})["catch"](function (error) {
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]);
EditorAPI.setFields([
connectionField,
sceneField,
displayField,
]);
});
}
else {
sceneField.values = [];
EditorAPI.setFields([connectionField, sceneField, displayField]);
EditorAPI.setFields([
connectionField,
sceneField,
displayField,
]);
}
}
else {
sceneField.values = [];
EditorAPI.setFields([connectionField, sceneField, displayField]);
EditorAPI.setFields([
connectionField,
sceneField,
displayField,
]);
}
}
};