forked from x/volcanos
opt chat
This commit is contained in:
parent
efd7b47685
commit
42b78895f5
3
frame.js
3
frame.js
@ -113,6 +113,9 @@ Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta,
|
|||||||
value == undefined? (value = item.value): (item.value = value)
|
value == undefined? (value = item.value): (item.value = value)
|
||||||
}); return value
|
}); return value
|
||||||
},
|
},
|
||||||
|
Update: function() {
|
||||||
|
sub.onappend._output(sub, sub.Conf(), {}, sub.Pack())
|
||||||
|
},
|
||||||
Action: function(key, value) {
|
Action: function(key, value) {
|
||||||
if (typeof key == "object") { return sub.core.Item(key, sub.Action), key }
|
if (typeof key == "object") { return sub.core.Item(key, sub.Action), key }
|
||||||
sub.page.Select(sub, action, "textarea[name="+key+"],"+"input[name="+key+"],"+"select[name="+key+"]", function(item) {
|
sub.page.Select(sub, action, "textarea[name="+key+"],"+"input[name="+key+"],"+"select[name="+key+"]", function(item) {
|
||||||
|
@ -246,7 +246,8 @@ Volcanos("user", {help: "用户操作", agent: {
|
|||||||
msg._upload = upload[0].files[0], msg._progress = action.show
|
msg._upload = upload[0].files[0], msg._progress = action.show
|
||||||
|
|
||||||
can.run(event, ["action", "upload"], function(msg) {
|
can.run(event, ["action", "upload"], function(msg) {
|
||||||
can.user.toast(can, "上传成功"), can.run()
|
can.user.toast(can, "上传成功"), can.Update()
|
||||||
|
action.close()
|
||||||
}, true)
|
}, true)
|
||||||
},
|
},
|
||||||
show: function (event, value, total, loaded) { now = new Date()
|
show: function (event, value, total, loaded) { now = new Date()
|
||||||
|
@ -26,7 +26,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg,
|
|||||||
var commands = can.base.Obj(line.commands)
|
var commands = can.base.Obj(line.commands)
|
||||||
commands.length > 2 && can.onappend.plugin(can, {index: commands[2]}, function(sub) {
|
commands.length > 2 && can.onappend.plugin(can, {index: commands[2]}, function(sub) {
|
||||||
sub.run = function(event, cmds, cb) {
|
sub.run = function(event, cmds, cb) {
|
||||||
can.run(event, ["action", "command", "run", commands[2]].concat(cmds), cb)
|
can.run(event, [ctx.ACTION, cli.RUN, commands[2]].concat(cmds), cb)
|
||||||
}
|
}
|
||||||
|
|
||||||
can.search({}, ["Action.onexport.size"], function(msg, top, left, width, height) {
|
can.search({}, ["Action.onexport.size"], function(msg, top, left, width, height) {
|
||||||
|
@ -39,7 +39,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, conf,
|
|||||||
_hold: function(can, msg) { return true },
|
_hold: function(can, msg) { return true },
|
||||||
_back: function(can) {
|
_back: function(can) {
|
||||||
can._history.pop(); for (var his = can._history.pop(); his; his = can._history.pop()) {
|
can._history.pop(); for (var his = can._history.pop(); his; his = can._history.pop()) {
|
||||||
if (his[0] == "action") { continue }
|
if (his[0] == ctx.ACTION) { continue }
|
||||||
can.page.Select(can, can._option, "textarea.args,input.args,select.args", function(item, index) {
|
can.page.Select(can, can._option, "textarea.args,input.args,select.args", function(item, index) {
|
||||||
item.value = his[index]||""
|
item.value = his[index]||""
|
||||||
}), can.onappend._output(can, can.Conf(), {}, can.Pack())
|
}), can.onappend._output(can, can.Conf(), {}, can.Pack())
|
||||||
@ -71,7 +71,7 @@ Volcanos("onaction", {help: "交互操作", list: [
|
|||||||
], _init: function(can, msg, list, cb, target) {
|
], _init: function(can, msg, list, cb, target) {
|
||||||
},
|
},
|
||||||
_engine: function(event, can, button) {
|
_engine: function(event, can, button) {
|
||||||
can.onappend._output(can, can.Conf(), event, ["action", button].concat(can.Pack([], true)))
|
can.onappend._output(can, can.Conf(), event, [ctx.ACTION, button].concat(can.Pack([], true)))
|
||||||
},
|
},
|
||||||
"保存参数": function(event, can) { var meta = can.Conf()
|
"保存参数": function(event, can) { var meta = can.Conf()
|
||||||
var msg = can.request(event, {river: can.Conf("river"), storm: can.Conf("storm"), id: meta.id})
|
var msg = can.request(event, {river: can.Conf("river"), storm: can.Conf("storm"), id: meta.id})
|
||||||
@ -85,8 +85,8 @@ Volcanos("onaction", {help: "交互操作", list: [
|
|||||||
"共享工具": function(event, can) { var meta = can.Conf()
|
"共享工具": function(event, can) { var meta = can.Conf()
|
||||||
var ui = can.user.input(event, can, [{name: "name", value: meta.name}], function(event, button, data, list, args) {
|
var ui = can.user.input(event, can, [{name: "name", value: meta.name}], function(event, button, data, list, args) {
|
||||||
var msg = can.request(event, {arg: [
|
var msg = can.request(event, {arg: [
|
||||||
"type", "field",
|
kit.MDB_TYPE, "field",
|
||||||
"name", list[0], "text", JSON.stringify(can.Pack([], true)),
|
kit.MDB_NAME, list[0], kit.MDB_TEXT, JSON.stringify(can.Pack([], true)),
|
||||||
"river", meta.ctx||meta.key||"", "storm", meta.index||meta.cmd||meta.name,
|
"river", meta.ctx||meta.key||"", "storm", meta.index||meta.cmd||meta.name,
|
||||||
]})
|
]})
|
||||||
can.search(event, ["Header.onaction.share"])
|
can.search(event, ["Header.onaction.share"])
|
||||||
@ -125,7 +125,7 @@ Volcanos("onaction", {help: "交互操作", list: [
|
|||||||
},
|
},
|
||||||
"摄像头": function(event, can) {
|
"摄像头": function(event, can) {
|
||||||
var constraints = {audio: false, video: {width: 200, height: 200}}
|
var constraints = {audio: false, video: {width: 200, height: 200}}
|
||||||
var ui = can.page.Append(can, can._output, [{view: "action"}, {view: "capture", list: [{type: "video", _init: function(item) {
|
var ui = can.page.Append(can, can._output, [{view: ctx.ACTION}, {view: "capture", list: [{type: "video", _init: function(item) {
|
||||||
navigator.mediaDevices.getUserMedia(constraints).then(function(stream) {
|
navigator.mediaDevices.getUserMedia(constraints).then(function(stream) {
|
||||||
item.srcObject = stream, item.onloadedmetadata = function(e) {
|
item.srcObject = stream, item.onloadedmetadata = function(e) {
|
||||||
item.play()
|
item.play()
|
||||||
@ -157,44 +157,45 @@ Volcanos("onaction", {help: "交互操作", list: [
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
upload: function(event, can) { can.user.upload(event, can) },
|
upload: function(event, can) {
|
||||||
|
can.user.upload(event, can)
|
||||||
|
},
|
||||||
|
|
||||||
scanQRCode: function(event, can, cmd) {
|
scanQRCode: function(event, can, cmd) {
|
||||||
can.user.agent.scanQRCode(function(text) { var cmds = ["action", cmd]
|
can.user.agent.scanQRCode(function(text) { var cmds = [ctx.ACTION, cmd]
|
||||||
var data = can.base.parseJSON(text)
|
var data = can.base.parseJSON(text)
|
||||||
can.core.Item(data, function(key, value) { cmds.push(key, value) })
|
can.core.Item(data, function(key, value) { cmds.push(key, value) })
|
||||||
if (data["auth"]) {
|
if (data["auth"]) {
|
||||||
if (can.user.confirm("auth "+data["auth"])) {
|
if (can.user.confirm("auth "+data["auth"])) {
|
||||||
can.run(event, ["action", "auth", "space", data["auth"]])
|
can.run(event, [ctx.ACTION, "auth", "space", data["auth"]])
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
can.run(event, cmds, function(msg) { can.user.toast(can, "添加成功"), can.run() }, true)
|
can.run(event, cmds, function(msg) { can.user.toast(can, "添加成功"), can.Update() }, true)
|
||||||
}, can)
|
}, can)
|
||||||
},
|
},
|
||||||
scanQRCode0: function(event, can) { can.user.agent.scanQRCode() },
|
scanQRCode0: function(event, can) { can.user.agent.scanQRCode() },
|
||||||
getClipboardData: function(event, can, cmd) {
|
getClipboardData: function(event, can, cmd) {
|
||||||
if (navigator.clipboard) {
|
if (navigator.clipboard) {
|
||||||
navigator.clipboard.readText().then(text => {
|
navigator.clipboard.readText().then(text => {
|
||||||
can.run(event, can.base.Simple("action", cmd, can.base.parseJSON(text)), function(msg) {
|
can.run(event, can.base.Simple(ctx.ACTION, cmd, can.base.parseJSON(text)), function(msg) {
|
||||||
can.user.toast(can, text, "添加成功"), can.run()
|
can.user.toast(can, text, "添加成功"), can.Update()
|
||||||
}, true)
|
}, true)
|
||||||
}).catch((err) => { can.misc.Log(err) })
|
}).catch((err) => { can.misc.Log(err) })
|
||||||
return
|
|
||||||
} else {
|
} else {
|
||||||
can.user.input(event, can, [{type: "textarea"}], function(ev, button, data, list, args) {
|
can.user.input(event, can, [{type: "textarea"}], function(ev, button, data, list, args) {
|
||||||
can.run(event, can.base.Simple("action", cmd, can.base.parseJSON(list[0])), function(msg) {
|
can.run(event, can.base.Simple(ctx.ACTION, cmd, can.base.parseJSON(list[0])), function(msg) {
|
||||||
can.user.toast(can, list[0], "添加成功"), can.run()
|
can.user.toast(can, list[0], "添加成功"), can.Update()
|
||||||
}, true)
|
}, true)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getLocation: function(event, can, cmd) { var msg = can.request(can)
|
getLocation: function(event, can, cmd) { var msg = can.request(can)
|
||||||
can.user.agent.getLocation(function(res) { can.request(event, res)
|
can.user.agent.getLocation(function(res) { can.request(event, res)
|
||||||
can.user.input(event, can, ["type", "name", "text", "latitude", "longitude"], function(ev, button, data, list, arg) {
|
can.user.input(event, can, [kit.MDB_TYPE, kit.MDB_NAME, kit.MDB_TEXT, "latitude", "longitude"], function(ev, button, data, list, arg) {
|
||||||
can.core.Item(res, function(key, value) { arg.push(key, value) })
|
can.core.Item(res, function(key, value) { arg.push(key, value) })
|
||||||
can.run(event, ["action", cmd].concat(arg), function(msg) {
|
can.run(event, [ctx.ACTION, cmd].concat(arg), function(msg) {
|
||||||
can.user.toast(can, "添加成功"), can.run()
|
can.user.toast(can, "添加成功"), can.Update()
|
||||||
}, true)
|
}, true)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
Loading…
x
Reference in New Issue
Block a user