interactions.allInteractions returns an array of interactions. And each of those interactions contains a “triggerNode” and a nested “interactions” array, which is a little confusing:
{triggerNode: Ellipse ('Ellipse 1') {...}, interactions: [{trigger: [Object], action: [Object]}]}
The elements in the nested “interactions” array contain “trigger.type” and “action.type”. This code works for me in XD 34:
const interactions = require("interactions");
let allInteractions = interactions.allInteractions;
console.log("All interactions length: " + allInteractions.length);
allInteractions.forEach(myInt => {
console.log("myInt: ", myInt);
if (myInt.triggerNode) {
console.log("myInt.triggerNode: ", myInt.triggerNode);
}
if (myInt.interactions) {
console.log(" myInt.interactions.length: " + myInt.interactions.length);
myInt.interactions.forEach(myDetailedInt => {
console.log(" myDetailedInt: ", myDetailedInt);
if (myDetailedInt.trigger) {
console.log(" myDetailedInt.trigger.type: ", myDetailedInt.trigger.type);
}
if (myDetailedInt.action) {
console.log(" myDetailedInt.action.type: ", myDetailedInt.action.type);
}
});
}
});