forked from x/volcanos
opt some
This commit is contained in:
parent
2a698564f3
commit
e3d2746cfc
46
frame.js
46
frame.js
@ -1,5 +1,4 @@
|
|||||||
Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta, list, cb, target) {
|
Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta, list, cb, target) {
|
||||||
Volcanos.meta._load_time = can.base.Time()
|
|
||||||
can.run = function(event, cmds, cb) { var msg = can.request(event); cmds = cmds||[]
|
can.run = function(event, cmds, cb) { var msg = can.request(event); cmds = cmds||[]
|
||||||
return (can.onengine[cmds[0]]||can.onengine._remote)(event, can, msg, can, cmds, cb)
|
return (can.onengine[cmds[0]]||can.onengine._remote)(event, can, msg, can, cmds, cb)
|
||||||
}
|
}
|
||||||
@ -8,12 +7,21 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
|
|||||||
can.misc.CookieSessid(can, can.misc.Search(can, ice.MSG_SESSID))
|
can.misc.CookieSessid(can, can.misc.Search(can, ice.MSG_SESSID))
|
||||||
return can.misc.Search(can, ice.MSG_SESSID, "")
|
return can.misc.Search(can, ice.MSG_SESSID, "")
|
||||||
}
|
}
|
||||||
window.addEventListener("orientationchange", function(event) {
|
|
||||||
can.onengine.signal(can, "orientationchange")
|
|
||||||
})
|
|
||||||
|
|
||||||
if (can.user.isExtension) { Volcanos.meta.args = can.base.Obj(localStorage.getItem(ctx.ARGS), {}) }
|
|
||||||
can.page.Select(can, target, html.IFRAME, function(item) { can.page.Remove(can, item) })
|
can.page.Select(can, target, html.IFRAME, function(item) { can.page.Remove(can, item) })
|
||||||
|
if (can.user.isExtension) { Volcanos.meta.args = can.base.Obj(localStorage.getItem(ctx.ARGS), {}) }
|
||||||
|
|
||||||
|
can.onengine.listen(can, chat.ONSEARCH, function(msg, word) { if (word[0] == ctx.COMMAND || word[1] != "") { var meta = can.onengine.plugin.meta
|
||||||
|
var list = word[1] == ""? meta: meta[word[1]]? kit.Dict(word[1], meta[word[1]]): {}
|
||||||
|
can.core.Item(list, function(name, command) { name = can.base.trimPrefix(name, "can.")
|
||||||
|
can.core.List(msg.Option(ice.MSG_FIELDS).split(ice.FS), function(item) {
|
||||||
|
msg.Push(item, kit.Dict(ice.CTX, "onengine", ice.CMD, "command",
|
||||||
|
mdb.TYPE, "can", mdb.NAME, name, mdb.TEXT, command.help,
|
||||||
|
ctx.CONTEXT, "can", ctx.COMMAND, name
|
||||||
|
)[item]||"")
|
||||||
|
})
|
||||||
|
})
|
||||||
|
} })
|
||||||
|
|
||||||
can.core.Next(list, function(item, next) { item.type = chat.PANEL
|
can.core.Next(list, function(item, next) { item.type = chat.PANEL
|
||||||
can.onappend._init(can, can.base.Copy(item, can.core.Value(can._root, [chat.RIVER, item.name])), item.list, function(panel) {
|
can.onappend._init(can, can.base.Copy(item, can.core.Value(can._root, [chat.RIVER, item.name])), item.list, function(panel) {
|
||||||
@ -27,9 +35,8 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
|
|||||||
}, target)
|
}, target)
|
||||||
}, function() { can.misc.Log(can.user.title(), ice.RUN, can)
|
}, function() { can.misc.Log(can.user.title(), ice.RUN, can)
|
||||||
can.require([can.volcano], null, function(can, name, sub) { can[name] = sub })
|
can.require([can.volcano], null, function(can, name, sub) { can[name] = sub })
|
||||||
can.onmotion._init(can, target), can.onkeymap._init(can)
|
can.onlayout.topic(can), can.onmotion._init(can, target), can.onkeymap._init(can)
|
||||||
can.onlayout.topic(can), can.onengine.signal(can, chat.ONMAIN, can.request())
|
can.onengine.signal(can, chat.ONMAIN, can.request()), can.base.isFunc(cb) && cb()
|
||||||
can.onmotion.float.auto(can, target), can.base.isFunc(cb) && cb()
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
_search: function(event, can, msg, panel, cmds, cb) {
|
_search: function(event, can, msg, panel, cmds, cb) {
|
||||||
@ -83,41 +90,29 @@ Volcanos("onengine", {help: "搜索引擎", list: [], _init: function(can, meta,
|
|||||||
plugin: shy("添加插件", {}, [], function(can, name, command) { name = can.base.trimPrefix(name, "can.")
|
plugin: shy("添加插件", {}, [], function(can, name, command) { name = can.base.trimPrefix(name, "can.")
|
||||||
var type = html.TEXT; command.list = can.core.List(command.list, function(item) {
|
var type = html.TEXT; command.list = can.core.List(command.list, function(item) {
|
||||||
switch (typeof item) {
|
switch (typeof item) {
|
||||||
case lang.OBJECT: return type = item.type||type, item
|
|
||||||
case lang.STRING: return can.core.SplitInput(item)
|
case lang.STRING: return can.core.SplitInput(item)
|
||||||
|
case lang.OBJECT: return type = item.type||type, item
|
||||||
}
|
}
|
||||||
}), arguments.callee.meta[can.core.Keys("can", name)] = command
|
}), arguments.callee.meta[can.core.Keys("can", name)] = command
|
||||||
}),
|
}),
|
||||||
listen: shy("监听事件", {}, [], function(can, name, cb) { arguments.callee.meta[name] = (arguments.callee.meta[name]||[]).concat(cb) }),
|
listen: shy("监听事件", {}, [], function(can, name, cb) { arguments.callee.meta[name] = (arguments.callee.meta[name]||[]).concat(cb) }),
|
||||||
signal: shy("触发事件", function(can, name, msg) { msg = msg||can.request()
|
signal: shy("触发事件", function(can, name, msg) { msg = msg||can.request()
|
||||||
can.misc.Log("signal", name, name == chat.ONREMOTE? msg.Option("_msg"): msg)
|
can.misc.Log(gdb.SIGNAL, name, name == chat.ONREMOTE? msg.Option("_msg"): msg)
|
||||||
can.core.List(can.onengine.listen.meta[name], function(cb) { can.core.CallFunc(cb, {event: msg._event, msg: msg}) })
|
can.core.List(can.onengine.listen.meta[name], function(cb) { can.core.CallFunc(cb, {event: msg._event, msg: msg}) })
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
Volcanos("ondaemon", {help: "推荐引擎", list: [], _init: function(can, name) { if (can.user.isLocalFile) { return }
|
Volcanos("ondaemon", {help: "推荐引擎", list: [], _init: function(can, name) { if (can.user.isLocalFile) { return }
|
||||||
can.misc.WSS(can, {type: html.CHROME, name: can.misc.Search(can, "daemon")||name||""}, function(event, msg, cmd, arg) { if (!msg) { return }
|
can.misc.WSS(can, {type: html.CHROME, name: can.misc.Search(can, cli.DAEMON)||name||""}, function(event, msg, cmd, arg) { if (!msg) { return }
|
||||||
var sub = can.ondaemon._list[msg.Option(ice.MSG_TARGET)]
|
var sub = can.ondaemon._list[msg.Option(ice.MSG_TARGET)]
|
||||||
can.base.isFunc(can.ondaemon[cmd])? can.core.CallFunc(can.ondaemon[cmd], {
|
can.base.isFunc(can.ondaemon[cmd])? can.core.CallFunc(can.ondaemon[cmd], {
|
||||||
can: can, sub: sub, msg: msg, cmd: cmd, arg: arg, cb: function() { msg.Reply() },
|
can: can, sub: sub, msg: msg, cmd: cmd, arg: arg, cb: function() { msg.Reply() },
|
||||||
}): can.onengine._search({}, can, msg, can, ["_search", cmd].concat(arg), function() { msg.Reply() })
|
}): can.onengine._search({}, can, msg, can, ["_search", cmd].concat(arg), function() { msg.Reply() })
|
||||||
})
|
})
|
||||||
can.onengine.listen(can, chat.ONSEARCH, function(msg, word) { if (word[0] == ctx.COMMAND || word[1] != "") { var meta = can.onengine.plugin.meta
|
|
||||||
var list = word[1] == ""? meta: meta[word[1]]? kit.Dict(word[1], meta[word[1]]): {}
|
|
||||||
can.core.Item(list, function(name, command) { name = can.base.trimPrefix(name, "can.")
|
|
||||||
can.core.List(msg.Option(ice.MSG_FIELDS).split(ice.FS), function(item) {
|
|
||||||
msg.Push(item, kit.Dict(ice.CTX, "onengine", ice.CMD, "command",
|
|
||||||
mdb.TYPE, "can", mdb.NAME, name, mdb.TEXT, command.help,
|
|
||||||
ctx.CONTEXT, "can", ctx.COMMAND, name
|
|
||||||
)[item]||"")
|
|
||||||
})
|
|
||||||
})
|
|
||||||
} })
|
|
||||||
}, _list: [""],
|
}, _list: [""],
|
||||||
pwd: function(can, msg, arg) { can.ondaemon._list[0] = arg[0] },
|
|
||||||
refresh: function(can, msg, sub) { sub.Update() },
|
refresh: function(can, msg, sub) { sub.Update() },
|
||||||
|
pwd: function(can, msg, arg) { can.ondaemon._list[0] = arg[0] },
|
||||||
grow: function(can, msg, sub, arg) { can.onimport._grow(sub, can.page.Color(arg.join(""))) },
|
grow: function(can, msg, sub, arg) { can.onimport._grow(sub, can.page.Color(arg.join(""))) },
|
||||||
toast: function(can, msg, arg) { can.core.CallFunc(can.user.toast, {can: can, msg: msg, cmds: arg}) },
|
toast: function(can, msg, arg) { can.core.CallFunc(can.user.toast, {can: can, msg: msg, cmds: arg}) },
|
||||||
confirm: function(can, msg, arg) { if (can.user.confirm(arg[0])) { msg.Echo(ice.TRUE) } },
|
|
||||||
})
|
})
|
||||||
Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, list, cb, target, field) {
|
Volcanos("onappend", {help: "渲染引擎", list: [], _init: function(can, meta, list, cb, target, field) {
|
||||||
meta.name = (meta.name||"").split(ice.SP)[0].split(ice.PT).pop()
|
meta.name = (meta.name||"").split(ice.SP)[0].split(ice.PT).pop()
|
||||||
@ -628,6 +623,9 @@ Volcanos("onlayout", {help: "页面布局", list: [], _init: function(can, targe
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
Volcanos("onmotion", {help: "动态特效", list: [], _init: function(can, target) {
|
Volcanos("onmotion", {help: "动态特效", list: [], _init: function(can, target) {
|
||||||
|
window.addEventListener("orientationchange", function(event) {
|
||||||
|
can.onengine.signal(can, "orientationchange")
|
||||||
|
}), can.onmotion.float.auto(can, target)
|
||||||
},
|
},
|
||||||
focus: function(can, target) { if (!target) { return }
|
focus: function(can, target) { if (!target) { return }
|
||||||
target.setSelectionRange && target.setSelectionRange(0, -1), target.focus()
|
target.setSelectionRange && target.setSelectionRange(0, -1), target.focus()
|
||||||
|
32
proto.js
32
proto.js
@ -6,17 +6,17 @@ var kit = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
var ice = {
|
var ice = {
|
||||||
SP: " ", PS: "/", PT: ".", DF: ":", FS: ",", NL: "\n", LT: "<", GT: ">",
|
TB: "\t", SP: " ", DF: ":", PS: "/", PT: ".", FS: ",", NL: "\n", LT: "<", GT: ">",
|
||||||
POD: "pod", CTX: "ctx", CMD: "cmd", ARG: "arg", OPT: "opt",
|
|
||||||
RUN: "run", RES: "res", ERR: "err",
|
|
||||||
PWD: "./",
|
|
||||||
|
|
||||||
OK: "ok", TRUE: "true", FALSE: "false", SUCCESS: "success", FAILURE: "failure", PROCESS: "process",
|
OK: "ok", TRUE: "true", FALSE: "false", SUCCESS: "success", FAILURE: "failure", PROCESS: "process",
|
||||||
|
|
||||||
AUTO: "auto", LIST: "list", BACK: "back", EXEC: "exec",
|
AUTO: "auto", LIST: "list", BACK: "back", EXEC: "exec",
|
||||||
SHOW: "show", HIDE: "hide", HELP: "help", HTTP: "http",
|
SHOW: "show", HIDE: "hide", HELP: "help", HTTP: "http",
|
||||||
VIEW: "view", MODE: "mode", SHIP: "ship", COPY: "copy",
|
VIEW: "view", MODE: "mode", SHIP: "ship", COPY: "copy",
|
||||||
|
|
||||||
|
POD: "pod", CTX: "ctx", CMD: "cmd", ARG: "arg", RES: "res",
|
||||||
|
RUN: "run", ERR: "err", OPT: "opt",
|
||||||
|
PWD: "./",
|
||||||
|
|
||||||
MSG_DETAIL: "detail",
|
MSG_DETAIL: "detail",
|
||||||
MSG_OPTION: "option",
|
MSG_OPTION: "option",
|
||||||
MSG_APPEND: "append",
|
MSG_APPEND: "append",
|
||||||
@ -53,28 +53,30 @@ var ice = {
|
|||||||
|
|
||||||
var ctx = {
|
var ctx = {
|
||||||
CONTEXT: "context", COMMAND: "command", ACTION: "action", CONFIG: "config",
|
CONTEXT: "context", COMMAND: "command", ACTION: "action", CONFIG: "config",
|
||||||
INDEX: "index", ARGS: "args", STYLE: "style", INPUTS: "inputs", FEATURE: "feature",
|
STYLE: "style", INDEX: "index", ARGS: "args", INPUTS: "inputs", FEATURE: "feature",
|
||||||
|
}
|
||||||
|
var gdb = {
|
||||||
|
SIGNAL: "signal",
|
||||||
}
|
}
|
||||||
var cli = {
|
var cli = {
|
||||||
START: "start", STOP: "stop",
|
START: "start", STOP: "stop", OPEN: "open", CLOSE: "close", BEGIN: "begin", END: "end",
|
||||||
OPEN: "open", CLOSE: "close",
|
|
||||||
BEGIN: "begin", END: "end",
|
|
||||||
|
|
||||||
MAIN: "main", MAKE: "make", SHOW: "show",
|
MAIN: "main", MAKE: "make",
|
||||||
EXEC: "exec", DONE: "done", CODE: "code", COST: "cost",
|
EXEC: "exec", DONE: "done",
|
||||||
|
CODE: "code", COST: "cost", BACK: "back", FROM: "from",
|
||||||
ERROR: "error", CLEAR: "clear", REFRESH: "refresh",
|
ERROR: "error", CLEAR: "clear", REFRESH: "refresh",
|
||||||
FROM: "from", BACK: "back",
|
SHOW: "show",
|
||||||
|
DAEMON: "daemon",
|
||||||
|
|
||||||
RED: "red", GREEN: "green", BLUE: "blue",
|
RED: "red", GREEN: "green", BLUE: "blue",
|
||||||
YELLOW: "yellow", CYAN: "cyan", PURPLE: "purple", MAGENTA: "magenta",
|
YELLOW: "yellow", CYAN: "cyan", PURPLE: "purple", MAGENTA: "magenta",
|
||||||
WHITE: "white", BLACK: "black",
|
WHITE: "white", BLACK: "black",
|
||||||
}
|
}
|
||||||
var web = {
|
var web = {
|
||||||
SPACE: "space", SHARE: "share",
|
SHARE: "share", SPACE: "space",
|
||||||
}
|
}
|
||||||
var aaa = {
|
var aaa = {
|
||||||
PASSWORD: "password",
|
PASSWORD: "password", USERNAME: "username", USERNICK: "usernick", BACKGROUND: "background", AVATAR: "avatar",
|
||||||
USERNAME: "username", USERNICK: "usernick", BACKGROUND: "background", AVATAR: "avatar",
|
|
||||||
LANGUAGE: "language", ENGLISH: "english", CHINESE: "chinese",
|
LANGUAGE: "language", ENGLISH: "english", CHINESE: "chinese",
|
||||||
LOGIN: "login", LOGOUT: "logout", INVITE: "invite",
|
LOGIN: "login", LOGOUT: "logout", INVITE: "invite",
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user