mirror of
https://shylinux.com/x/volcanos
synced 2025-04-25 16:58:06 +08:00
add some
This commit is contained in:
parent
54a7872244
commit
ac01242ec1
@ -415,14 +415,13 @@ Volcanos("page", {
|
|||||||
getquery: function(can, target) {
|
getquery: function(can, target) {
|
||||||
var list = []; for (var p = target; p; p = p.parentNode) {
|
var list = []; for (var p = target; p; p = p.parentNode) {
|
||||||
if (can.page.tagis(p, "body")) { list.pop(); break }
|
if (can.page.tagis(p, "body")) { list.pop(); break }
|
||||||
list.push(can.core.Keys(p.tagName, can.core.List(p.classList).join(".")))
|
list.push(can.core.Keys(p.tagName.toLowerCase(), can.core.List(p.classList).join(".")), ">")
|
||||||
if (can.page.tagis(p, html.FIELDSET)) {
|
if (can.page.tagis(p, html.FIELDSET)) {
|
||||||
if (can.page.tagis(p, "fieldset.story.web.chat.tutor.float")) { return "" }
|
if (can.page.tagis(p, "fieldset.web.chat.tutor")) { return "" }
|
||||||
break
|
list.pop(); break
|
||||||
}
|
}
|
||||||
list.push(">")
|
|
||||||
}
|
}
|
||||||
return list.reverse().join("").toLowerCase()
|
return list.reverse().join("")
|
||||||
},
|
},
|
||||||
theme: function(cb) { var themeMedia = window.matchMedia("(prefers-color-scheme: dark)")
|
theme: function(cb) { var themeMedia = window.matchMedia("(prefers-color-scheme: dark)")
|
||||||
cb && themeMedia.addListener(function(event) { cb(event.matches? html.DARK: html.LIGHT) })
|
cb && themeMedia.addListener(function(event) { cb(event.matches? html.DARK: html.LIGHT) })
|
||||||
|
@ -9,7 +9,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg) { var river = can.Conf(chat.R
|
|||||||
can.user.info.nodetype == web.WORKER && item._command == web.WORD && (list = [river, storm, item._command])
|
can.user.info.nodetype == web.WORKER && item._command == web.WORD && (list = [river, storm, item._command])
|
||||||
}
|
}
|
||||||
can.onappend.plugin(can, item, function(sub, meta, skip) {
|
can.onappend.plugin(can, item, function(sub, meta, skip) {
|
||||||
if (can.base.isIn(meta.index, "can._notfound")) { sub.Conf(ctx.INDEX, msg.detail[index+3]) }
|
if (msg.detail && can.base.isIn(meta.index, "can._notfound")) { sub.Conf(ctx.INDEX, msg.detail[index+3]) }
|
||||||
sub.run = function(event, cmds, cb) { return can.run(can.request(event, {pod: meta.pod||meta.space}), (can.base.beginWith(meta.index, "can.")? [meta.index]: [river, storm, meta.id||meta.index]).concat(cmds), cb) }
|
sub.run = function(event, cmds, cb) { return can.run(can.request(event, {pod: meta.pod||meta.space}), (can.base.beginWith(meta.index, "can.")? [meta.index]: [river, storm, meta.id||meta.index]).concat(cmds), cb) }
|
||||||
sub.onexport.output = function() { msg.Length() > 1 && can.onexport.isauto(can) && can.page.style(can, sub._output, html.HEIGHT, "", html.MAX_HEIGHT, ""), can.onaction.layout(can, list[3]) }
|
sub.onexport.output = function() { msg.Length() > 1 && can.onexport.isauto(can) && can.page.style(can, sub._output, html.HEIGHT, "", html.MAX_HEIGHT, ""), can.onaction.layout(can, list[3]) }
|
||||||
can.onaction.layout(can, list[3]), can.onimport._tabs(can, sub, meta), can._plugins = (can._plugins||[]).concat([sub])
|
can.onaction.layout(can, list[3]), can.onimport._tabs(can, sub, meta), can._plugins = (can._plugins||[]).concat([sub])
|
||||||
@ -19,7 +19,8 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg) { var river = can.Conf(chat.R
|
|||||||
}, function() { can.onaction.layout(can, list[3]), _select._tabs.click() })
|
}, function() { can.onaction.layout(can, list[3]), _select._tabs.click() })
|
||||||
},
|
},
|
||||||
_tabs: function(can, sub, meta) {
|
_tabs: function(can, sub, meta) {
|
||||||
var tabs = [{view: [html.ITEM, "", can.user.trans(can, meta.name, meta.help)], title: meta.help, onclick: function(event) { can._current = sub
|
var tabs = [{view: [[html.ITEM, meta.name], "", can.user.trans(can, meta.name, meta.help)], title: meta.help, onclick: function(event) { can._current = sub
|
||||||
|
can.onengine.signal(can, "onevent", can.request(event, {query: can.page.getquery(can, event.target)}))
|
||||||
can.onmotion.select(can, can._output, html.FIELDSET_PLUGIN, sub._target), can.onmotion.select(can, can._action, html.DIV_ITEM, sub._tabs), can.onmotion.select(can, can._header_tabs, html.DIV_ITEM, sub._header_tabs)
|
can.onmotion.select(can, can._output, html.FIELDSET_PLUGIN, sub._target), can.onmotion.select(can, can._action, html.DIV_ITEM, sub._tabs), can.onmotion.select(can, can._header_tabs, html.DIV_ITEM, sub._header_tabs)
|
||||||
can.onmotion.delay(can, function() { sub._header_tabs.scrollIntoViewIfNeeded() })
|
can.onmotion.delay(can, function() { sub._header_tabs.scrollIntoViewIfNeeded() })
|
||||||
var layout = can.onexport.layout(can); layout == FREE || (can._output.scrollTop = sub._target.offsetTop-10)
|
var layout = can.onexport.layout(can); layout == FREE || (can._output.scrollTop = sub._target.offsetTop-10)
|
||||||
|
@ -17,7 +17,7 @@ body.mobile fieldset.Footer>div.output { font-style:italic; height:var(--footer-
|
|||||||
body.mobile fieldset.Footer>div.output div.toast { display:none; }
|
body.mobile fieldset.Footer>div.output div.toast { display:none; }
|
||||||
body.mobile fieldset.Footer>div.output div.cmd { display:none; }
|
body.mobile fieldset.Footer>div.output div.cmd { display:none; }
|
||||||
|
|
||||||
.picker { box-shadow:#626bd0 0px 2px 10px 5px !important; position:relative; top: -5px; transition:all 0.5s; }
|
.picker { box-shadow:var(--notice-bg-color) 0px 0px 20px 5px !important; position:relative; left:-5px; top: -5px; transition:all 0.5s; background-color:blue !important; color:white !important; }
|
||||||
div.view span.string { color:#f29766; }
|
div.view span.string { color:#f29766; }
|
||||||
div.view span.keyword { color:#5cadd4; }
|
div.view span.keyword { color:#5cadd4; }
|
||||||
div.item:not(.string):not(.number):not(.boolean)>span.value { color:var(--disable-fg-color); font-style:italic; }
|
div.item:not(.string):not(.number):not(.boolean)>span.value { color:var(--disable-fg-color); font-style:italic; }
|
||||||
|
@ -28,7 +28,6 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target) { can._wss = can.onda
|
|||||||
case web.CLEAR:
|
case web.CLEAR:
|
||||||
case cli.CLOSE: break
|
case cli.CLOSE: break
|
||||||
default: var list = can.core.Split(event.target.value, lex.SP)
|
default: var list = can.core.Split(event.target.value, lex.SP)
|
||||||
// can.onexport._float(can, "cli", list[0], list.slice(1), function(sub) { can.getActionSize(function(left) { can.page.style(can, sub._target, html.LEFT, left+html.PLUGIN_MARGIN, html.RIGHT, "") }) })
|
|
||||||
can.onexport._float(can, "cli", {index: "can.console", display: "/plugin/local/code/xterm.js"}, list, function(sub) { can.getActionSize(function(left) { can.page.style(can, sub._target, html.LEFT, left+html.PLUGIN_MARGIN, html.RIGHT, "") }) })
|
can.onexport._float(can, "cli", {index: "can.console", display: "/plugin/local/code/xterm.js"}, list, function(sub) { can.getActionSize(function(left) { can.page.style(can, sub._target, html.LEFT, left+html.PLUGIN_MARGIN, html.RIGHT, "") }) })
|
||||||
}
|
}
|
||||||
}}, "", target, [chat.TITLE]) },
|
}}, "", target, [chat.TITLE]) },
|
||||||
@ -42,9 +41,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target) { can._wss = can.onda
|
|||||||
_data: function(can, name, item) { can.db[name] = can.db[name]||can.request(), can.db[name].Push(item), can.onimport.count(can, name) },
|
_data: function(can, name, item) { can.db[name] = can.db[name]||can.request(), can.db[name].Push(item), can.onimport.count(can, name) },
|
||||||
value: function(can, name, value) { can.page.Select(can, can._output, "div.item>span."+name, function(target) { target.innerHTML = value }) },
|
value: function(can, name, value) { can.page.Select(can, can._output, "div.item>span."+name, function(target) { target.innerHTML = value }) },
|
||||||
count: function(can, name) { can.page.Select(can, can._output, can.core.Keys(html.SPAN, name), function(item) { item.innerHTML = can.Conf(name, parseInt(can.Conf(name)||"0")+1+"")+"" }) },
|
count: function(can, name) { can.page.Select(can, can._output, can.core.Keys(html.SPAN, name), function(item) { item.innerHTML = can.Conf(name, parseInt(can.Conf(name)||"0")+1+"")+"" }) },
|
||||||
ntip: function(can, msg, time, title, content) { can.onimport._data(can, NTIP, {time: time,
|
ntip: function(can, msg, time, title, content) { can.onimport._data(can, NTIP, {time: time, title: title, content: content}), can.page.Modify(can, can.ui.toast, [time, title, content].join(lex.SP)) },
|
||||||
// fileline: can.base.trimPrefix(msg.Option("log.caller"), location.origin+nfs.PS),
|
|
||||||
title: title, content: content}), can.page.Modify(can, can.ui.toast, [time, title, content].join(lex.SP)) },
|
|
||||||
ncmd: function(can, msg, _follow, _cmds) { can.onimport._data(can, NCMD, {time: can.base.Time(), follow: _follow, cmds: _cmds}), can.onimport.nlog(can, NLOG) },
|
ncmd: function(can, msg, _follow, _cmds) { can.onimport._data(can, NCMD, {time: can.base.Time(), follow: _follow, cmds: _cmds}), can.onimport.nlog(can, NLOG) },
|
||||||
nlog: function(can, name) { can.onimport.count(can, name) },
|
nlog: function(can, name) { can.onimport.count(can, name) },
|
||||||
menu: function(can, cmds, cb, trans) { can.base.isString(cmds) && (cmds = [cmds])
|
menu: function(can, cmds, cb, trans) { can.base.isString(cmds) && (cmds = [cmds])
|
||||||
@ -56,31 +53,20 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target) { can._wss = can.onda
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
Volcanos(chat.ONACTION, {_init: function(can) {},
|
Volcanos(chat.ONACTION, {_init: function(can) {},
|
||||||
onsize: function(can) {
|
onsize: function(can) { can.ConfHeight(can._target.offsetHeight), can.ConfWidth(can._target.offsetWidth)
|
||||||
can.ConfHeight(can._target.offsetHeight), can.ConfWidth(can._target.offsetWidth)
|
can.onimport.value(can, html.HEIGHT, can.page.height()), can.onimport.value(can, html.WIDTH, can.page.width())
|
||||||
can.onimport.value(can, html.HEIGHT, can.page.height())
|
|
||||||
can.onimport.value(can, html.WIDTH, can.page.width())
|
|
||||||
},
|
},
|
||||||
onlogin: function(can, msg) { can.run(can.request({}, {_method: http.GET}), [], function(msg) { can.onmotion.clear(can), can.onimport._init(can, msg, can._output) }) },
|
onlogin: function(can, msg) { can.run(can.request({}, {_method: http.GET}), [], function(msg) { can.onmotion.clear(can), can.onimport._init(can, msg, can._output) }) },
|
||||||
ontoast: function(can, msg) { can.core.CallFunc(can.onimport.ntip, {can: can, msg: msg}) },
|
ontoast: function(can, msg) { can.core.CallFunc(can.onimport.ntip, {can: can, msg: msg}) },
|
||||||
onremote: function(can, msg) { can.core.CallFunc(can.onimport.ncmd, {can: can, msg: msg}) },
|
onremote: function(can, msg) { can.core.CallFunc(can.onimport.ncmd, {can: can, msg: msg}) },
|
||||||
onunload: function(can) { can._wss && can._wss.close() },
|
onunload: function(can) { can._wss && can._wss.close() },
|
||||||
onrecord: function(can, msg) { var zone = can.misc.sessionStorage(can, "web.chat.script:zone")
|
onrecord: function(can, msg) { var zone = can.misc.sessionStorage(can, "web.chat.script:zone"); zone && can.runAction(can.request(), nfs.SCRIPT, [zone].concat(msg.cmds[0])) },
|
||||||
zone && can.runAction(can.request(), nfs.SCRIPT, [zone].concat(msg.cmds[0]))
|
|
||||||
},
|
|
||||||
onaction_cmd: function(can) { can.onappend.style(can, html.HIDE) },
|
onaction_cmd: function(can) { can.onappend.style(can, html.HIDE) },
|
||||||
onstorm_select: function(event, can, river, storm) {
|
onstorm_select: function(event, can, river, storm) { event.isTrusted != undefined && can.onimport._data(can, chat.TUTOR, {time: can.base.Time(), type: chat.STORM, text: [river, storm].join(",")}) },
|
||||||
event.isTrusted != undefined && can.onimport._data(can, chat.TUTOR, {type: chat.STORM, text: [river, storm].join(",")})
|
ontheme: function(event, can, theme) { event.isTrusted && theme && can.onimport._data(can, chat.TUTOR, {time: can.base.Time(), type: chat.THEME, text: theme}) },
|
||||||
},
|
onevent: function(event, can, query) { event.isTrusted && query && can.onimport._data(can, chat.TUTOR, {time: can.base.Time(), type: event.type, text: query}) },
|
||||||
onremove: function(event, can, query) {
|
onproject: function(event, can, query) { event.isTrusted && query && can.onimport._data(can, chat.TUTOR, {time: can.base.Time(), type: "item", text: query}) },
|
||||||
event.isTrusted != undefined && query && can.onimport._data(can, chat.TUTOR, {type: "remove", text: query})
|
onremove: function(event, can, query) { event.isTrusted && query && can.onimport._data(can, chat.TUTOR, {time: can.base.Time(), type: "remove", text: query}) },
|
||||||
},
|
|
||||||
onevent: function(event, can, query) {
|
|
||||||
event.isTrusted != undefined && query && can.onimport._data(can, chat.TUTOR, {type: event.type, text: query})
|
|
||||||
},
|
|
||||||
ontheme: function(event, can, theme) {
|
|
||||||
event.isTrusted != undefined && can.onimport._data(can, chat.TUTOR, {type: chat.THEME, text: theme})
|
|
||||||
},
|
|
||||||
oncommand_focus: function(can) { can.page.Select(can, can._output, ["div.cmd", html.INPUT], function(target) { can.onmotion.focus(can, target) }) },
|
oncommand_focus: function(can) { can.page.Select(can, can._output, ["div.cmd", html.INPUT], function(target) { can.onmotion.focus(can, target) }) },
|
||||||
onlayout: function(can, layout, before) { if (can.user.isMobile) { return }
|
onlayout: function(can, layout, before) { if (can.user.isMobile) { return }
|
||||||
can.page.ClassList.del(can, can._target, before), can.page.ClassList.add(can, can._target, layout)
|
can.page.ClassList.del(can, can._target, before), can.page.ClassList.add(can, can._target, layout)
|
||||||
@ -91,7 +77,6 @@ Volcanos(chat.ONACTION, {_init: function(can) {},
|
|||||||
})
|
})
|
||||||
}) }) },
|
}) }) },
|
||||||
})
|
})
|
||||||
// Volcanos(chat.ONEXPORT, {list: [NTIP, NLOG, NCMD, NKEY, html.WIDTH, html.HEIGHT, nfs.VERSION],
|
|
||||||
Volcanos(chat.ONEXPORT, {list: [cli.BEGIN, nfs.VERSION],
|
Volcanos(chat.ONEXPORT, {list: [cli.BEGIN, nfs.VERSION],
|
||||||
height: function(can) { can.onexport._float(can, html.HEIGHT, "can.view") },
|
height: function(can) { can.onexport._float(can, html.HEIGHT, "can.view") },
|
||||||
width: function(can) { can.onexport._float(can, html.WIDTH, "can.data") },
|
width: function(can) { can.onexport._float(can, html.WIDTH, "can.data") },
|
||||||
|
@ -30,9 +30,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target, cb) {
|
|||||||
can.base.isFunc(button)? button(event, button): can.onaction[button](event, can, button), can.onkeymap.prevent(event)
|
can.base.isFunc(button)? button(event, button): can.onaction[button](event, can, button), can.onkeymap.prevent(event)
|
||||||
}}]) },
|
}}]) },
|
||||||
_vimer_zone: function(can, msg, target) { msg.Table(function(value) { var action = can.page.parseAction(can, value)
|
_vimer_zone: function(can, msg, target) { msg.Table(function(value) { var action = can.page.parseAction(can, value)
|
||||||
can.onimport.item(can, {
|
can.onimport.item(can, {type: value.type, status: value.status,
|
||||||
type: value.type,
|
|
||||||
status: value.status,
|
|
||||||
icon: can.misc.Resource(can, value.icon||value.icons||value.avatar_url),
|
icon: can.misc.Resource(can, value.icon||value.icons||value.avatar_url),
|
||||||
name: can.page.Color(value[can.Conf(mdb.FIELD)||mdb.VIEW]||value[mdb.NAME]||value[mdb.TEXT]||value[mdb.TYPE]),
|
name: can.page.Color(value[can.Conf(mdb.FIELD)||mdb.VIEW]||value[mdb.NAME]||value[mdb.TEXT]||value[mdb.TYPE]),
|
||||||
title: value[mdb.TEXT]||value.description,
|
title: value[mdb.TEXT]||value.description,
|
||||||
@ -114,6 +112,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target, cb) {
|
|||||||
].concat(item._label||[], [
|
].concat(item._label||[], [
|
||||||
item.action && {icon: "bi bi-three-dots", onclick: function(event) { can.onimport._menu(event, can, item, cbs) }},
|
item.action && {icon: "bi bi-three-dots", onclick: function(event) { can.onimport._menu(event, can, item, cbs) }},
|
||||||
]), _init: function(target) {
|
]), _init: function(target) {
|
||||||
|
can.ui[item.path] = target
|
||||||
item._select && can.onmotion.delay(can, function() { target.click() })
|
item._select && can.onmotion.delay(can, function() { target.click() })
|
||||||
}, onclick: function(event) {
|
}, onclick: function(event) {
|
||||||
cb(event)
|
cb(event)
|
||||||
@ -124,6 +123,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target, cb) {
|
|||||||
item: function(can, item, cb, cbs, _target) {
|
item: function(can, item, cb, cbs, _target) {
|
||||||
return can.page.Append(can, _target||can.ui.project||can._output, [can.onimport._item(can, item, function(event) { var target = event.currentTarget
|
return can.page.Append(can, _target||can.ui.project||can._output, [can.onimport._item(can, item, function(event) { var target = event.currentTarget
|
||||||
can.onmotion.select(can, target.parentNode, html.DIV_ITEM, target)
|
can.onmotion.select(can, target.parentNode, html.DIV_ITEM, target)
|
||||||
|
can.onengine.signal(can, "onproject", can.request(event, {type: "item", query: can.page.getquery(can, can._fields)+","+item.path}))
|
||||||
var show = target._list && can.onmotion.toggle(can, target._list); cb(event, item, show, target)
|
var show = target._list && can.onmotion.toggle(can, target._list); cb(event, item, show, target)
|
||||||
}, cbs)])._target
|
}, cbs)])._target
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user