mirror of
https://shylinux.com/x/volcanos
synced 2025-04-25 16:58:06 +08:00
50 lines
1.6 KiB
JavaScript
50 lines
1.6 KiB
JavaScript
Volcanos("onengine", {
|
|
river: {
|
|
one: {name: "some", storm: {
|
|
one: {name: "some", action: [
|
|
{name: "show", help: "some"},
|
|
]},
|
|
two: {name: "some"},
|
|
}},
|
|
two: {name: "some", storm: {
|
|
one: {name: "some"},
|
|
two: {name: "two", action: {
|
|
show: {name: "show", help: "some", inputs: [
|
|
{type: "text", name: "arg"},
|
|
]},
|
|
}},
|
|
}},
|
|
three: {name: "some"},
|
|
},
|
|
|
|
remote: function(event, can, msg, pane, cmds, cb) { var meta = can.onengine;
|
|
return false
|
|
var river = meta.river[msg.Option("river")]
|
|
var storm = river && river.storm[msg.Option("storm")]
|
|
|
|
msg.Clear("append"); switch (pane._name) {
|
|
case "River":
|
|
can.core.Item(meta.river, function(key, value) {
|
|
msg.Push("key", key)
|
|
msg.Push("name", value.name)
|
|
})
|
|
break
|
|
case "Storm":
|
|
river && can.core.Item(river.storm, function(key, value) {
|
|
msg.Push("key", key)
|
|
msg.Push("name", value.name)
|
|
})
|
|
break
|
|
case "Action":
|
|
storm && can.core.List(storm.action, function(value) {
|
|
msg.Push("name", value.name)
|
|
msg.Push("help", value.help)
|
|
})
|
|
break
|
|
}
|
|
typeof cb == "function" && cb(msg);
|
|
return true
|
|
},
|
|
}, [], function(can) { })
|
|
|