mirror of
https://shylinux.com/x/volcanos
synced 2025-04-25 16:58:06 +08:00
opt state.js
This commit is contained in:
parent
fe8c3fb5e2
commit
d4ee97fd23
1
const.js
1
const.js
@ -353,6 +353,7 @@ var html = {value: {
|
|||||||
var icon = {
|
var icon = {
|
||||||
CHEVRON_DOWN: "bi bi-chevron-down", SEARCH: "bi bi-search", TERMINAL: "bi bi-terminal",
|
CHEVRON_DOWN: "bi bi-chevron-down", SEARCH: "bi bi-search", TERMINAL: "bi bi-terminal",
|
||||||
SUN: "bi bi-sun", MOON: "bi bi-moon-stars",
|
SUN: "bi bi-sun", MOON: "bi bi-moon-stars",
|
||||||
|
help: "bi bi-question-square",
|
||||||
}
|
}
|
||||||
var svg = {
|
var svg = {
|
||||||
GROUP: "group", PID: "pid", GRID: "grid",
|
GROUP: "group", PID: "pid", GRID: "grid",
|
||||||
|
4
frame.js
4
frame.js
@ -176,7 +176,7 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) {
|
|||||||
}, [item.display, chat.PLUGIN_INPUT_JS], function(sub) { sub.Conf(item)
|
}, [item.display, chat.PLUGIN_INPUT_JS], function(sub) { sub.Conf(item)
|
||||||
sub._fields = can
|
sub._fields = can
|
||||||
if (item.type == html.TEXT) { can.page.Append(can, sub._target.parentNode, [{text: [sub._target.value, html.SPAN, mdb.VALUE]}]) }
|
if (item.type == html.TEXT) { can.page.Append(can, sub._target.parentNode, [{text: [sub._target.value, html.SPAN, mdb.VALUE]}]) }
|
||||||
if (item.type == html.BUTTON && can.base.isIn(item.name, mdb.CREATE, mdb.INSERT, mdb.PRUNES, mdb.PRUNE)) {
|
if (item.type == html.BUTTON && can.base.isIn(item.name, mdb.CREATE, mdb.INSERT, mdb.PRUNES, mdb.PRUNE, ice.HELP)) {
|
||||||
can.onappend.icons(can, sub._target, item.name, function(event) {
|
can.onappend.icons(can, sub._target, item.name, function(event) {
|
||||||
can.Update(event, [ctx.ACTION, item.name].concat(can.page.SelectArgs(sub)))
|
can.Update(event, [ctx.ACTION, item.name].concat(can.page.SelectArgs(sub)))
|
||||||
})
|
})
|
||||||
@ -194,7 +194,7 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) {
|
|||||||
})
|
})
|
||||||
}; var auto; can.core.Next(can.core.Value(can, [chat.ONIMPORT, mdb.LIST])||meta.inputs, add, function() {
|
}; var auto; can.core.Next(can.core.Value(can, [chat.ONIMPORT, mdb.LIST])||meta.inputs, add, function() {
|
||||||
skip || can.Conf(ice.AUTO) == "delay" || auto && auto.click()
|
skip || can.Conf(ice.AUTO) == "delay" || auto && auto.click()
|
||||||
meta._help && add({type: html.BUTTON, name: ice.HELP, onclick: function(event) { can.onappend._float(can, {index: web.WIKI_WORD}, [meta._help]) }}, function() {})
|
can.core.Item(can.Option()).length == 0 && meta._help && add({type: html.BUTTON, name: ice.HELP, onclick: function(event) { can.onappend._float(can, {index: web.WIKI_WORD}, [meta._help]) }}, function() {})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
_action: function(can, list, action, meta, hold, limit) { meta = meta||can.onaction||{}, action = action||can._action, hold || can.onmotion.clear(can, action)
|
_action: function(can, list, action, meta, hold, limit) { meta = meta||can.onaction||{}, action = action||can._action, hold || can.onmotion.clear(can, action)
|
||||||
|
@ -59,7 +59,9 @@ Volcanos("page", {
|
|||||||
} else if (item.text) { var list = can.core.List(item.text); if (can.base.isArray(list[2])) { list[2] = list[2].join(lex.SP) }
|
} else if (item.text) { var list = can.core.List(item.text); if (can.base.isArray(list[2])) { list[2] = list[2].join(lex.SP) }
|
||||||
data.innerHTML = list[0]||data.innerHTML||"", type = list[1]||item.type||html.SPAN, list[2] && can.page.ClassList.add(can, data, list[2])
|
data.innerHTML = list[0]||data.innerHTML||"", type = list[1]||item.type||html.SPAN, list[2] && can.page.ClassList.add(can, data, list[2])
|
||||||
} else if (item.icon) { var list = can.core.List(item.icon)
|
} else if (item.icon) { var list = can.core.List(item.icon)
|
||||||
if (can.page.unicode[list[0]]) {
|
if (icon[item.icon]) {
|
||||||
|
type = "i", data.className = icon[item.icon]
|
||||||
|
} else if (can.page.unicode[list[0]]) {
|
||||||
type = html.SPAN, name = list[0], data.className = "icon "+list[0], data.innerText = can.page.unicode[list[0]]
|
type = html.SPAN, name = list[0], data.className = "icon "+list[0], data.innerText = can.page.unicode[list[0]]
|
||||||
} else {
|
} else {
|
||||||
type = "i", data.className = list[0]
|
type = "i", data.className = list[0]
|
||||||
@ -301,7 +303,7 @@ Volcanos("page", {
|
|||||||
height: function() { return window.innerHeight },
|
height: function() { return window.innerHeight },
|
||||||
width: function() { return window.innerWidth },
|
width: function() { return window.innerWidth },
|
||||||
ismodkey: function(event) { return [code.META, code.ALT, code.CONTROL, code.SHIFT].indexOf(event.key) > -1 },
|
ismodkey: function(event) { return [code.META, code.ALT, code.CONTROL, code.SHIFT].indexOf(event.key) > -1 },
|
||||||
unicode: {
|
unicode: { // https://symbl.cc/cn/
|
||||||
refresh: "↻", goback: "↺", play: "▶", create: "+", insert: "+", prunes: "♻︎", prune: "♻︎",
|
refresh: "↻", goback: "↺", play: "▶", create: "+", insert: "+", prunes: "♻︎", prune: "♻︎",
|
||||||
select: "▿", remove: "✕", delete: "✕",
|
select: "▿", remove: "✕", delete: "✕",
|
||||||
menu: "☰", open: "▾", close: "▸",
|
menu: "☰", open: "▾", close: "▸",
|
||||||
@ -313,6 +315,7 @@ Volcanos("page", {
|
|||||||
lt: "❮", gt: "❯",
|
lt: "❮", gt: "❯",
|
||||||
inner: "...",
|
inner: "...",
|
||||||
favor: "\u2606",
|
favor: "\u2606",
|
||||||
|
help: "\u2753",
|
||||||
},
|
},
|
||||||
inputs: function(can, list, type) { var _list = []; for (var i = 0; i < list.length; i++) { switch (list[i]) {
|
inputs: function(can, list, type) { var _list = []; for (var i = 0; i < list.length; i++) { switch (list[i]) {
|
||||||
case "": _list.push(""); break
|
case "": _list.push(""); break
|
||||||
|
@ -144,6 +144,7 @@ Volcanos("user", {
|
|||||||
}) }
|
}) }
|
||||||
var isinput = can.page.tagis(event.target, html.INPUT)
|
var isinput = can.page.tagis(event.target, html.INPUT)
|
||||||
var ui = can.page.Append(can, document.body, [{view: [[chat.CARTE, meta._style||msg.Option("_style")||can.base.replaceAll(can.ConfIndex()||"", nfs.PT, lex.SP)||"", chat.FLOAT]], list: can.core.List(list, function(item, index) {
|
var ui = can.page.Append(can, document.body, [{view: [[chat.CARTE, meta._style||msg.Option("_style")||can.base.replaceAll(can.ConfIndex()||"", nfs.PT, lex.SP)||"", chat.FLOAT]], list: can.core.List(list, function(item, index) {
|
||||||
|
if (typeof item == code.FUNCTION) { item = item(can); if (!item) { return } }
|
||||||
if (item === "") { return {type: html.HR} }
|
if (item === "") { return {type: html.HR} }
|
||||||
if (item == web.FILTER) { return {
|
if (item == web.FILTER) { return {
|
||||||
input: [html.FILTER, function(event) { if (event.key == code.ESCAPE) { return carte.close() } can.onkeymap.selectItems(event, can, carte._target) } ],
|
input: [html.FILTER, function(event) { if (event.key == code.ESCAPE) { return carte.close() } can.onkeymap.selectItems(event, can, carte._target) } ],
|
||||||
|
@ -77,14 +77,23 @@ Volcanos(chat.ONIMPORT, {
|
|||||||
can.page.SelectArgs(can, can._action, "", function(target) { target.value = his[i++]||"" }); break
|
can.page.SelectArgs(can, can._action, "", function(target) { target.value = his[i++]||"" }); break
|
||||||
} can.Update(event) },
|
} can.Update(event) },
|
||||||
})
|
})
|
||||||
Volcanos(chat.ONACTION, {list: [
|
Volcanos(chat.ONACTION, {list: ["刷新数据", "刷新界面", "切换浮动", "切换全屏", "共享工具", "生成链接",
|
||||||
"刷新数据", "刷新界面", "切换浮动", "切换全屏", "共享工具", "打开链接", "生成链接",
|
function(can) { if (!can.isCmdMode()) { return "打开链接" } }, function(can) { if (can.isCmdMode()) { return "打开首页" } },
|
||||||
["视图", "参数", "操作", "状态", "专注", "项目", "预览", "演示"],
|
function(can) { if (can.ConfSpace() || can.isCmdMode() && can.misc.Search(can, ice.POD)) { return "打开空间" } },
|
||||||
["数据", "保存参数", "清空参数", "复制数据", "下载数据", "添加工具", "清空数据"],
|
["视图", "参数",
|
||||||
|
function(can) { if (can._action.innerHTML) { return "操作" } },
|
||||||
|
function(can) { if (can._status.innerHTML) { return "状态" } },
|
||||||
|
function(can) { if (can.sub.ui.project) { return "专注" } },
|
||||||
|
function(can) { if (can.sub.ui.project) { return "项目" } },
|
||||||
|
function(can) { if (can.sub.ui.profile) { return "预览" } },
|
||||||
|
function(can) { if (can.sub.ui.display) { return "演示" } },
|
||||||
|
"插件",
|
||||||
|
],
|
||||||
|
// ["数据", "保存参数", "清空参数", "复制数据", "下载数据", "清空数据"],
|
||||||
["调试",
|
["调试",
|
||||||
"查看文档", "查看脚本", "查看源码",
|
function(can) { if (can.Conf("_help")) { return "查看文档" } },
|
||||||
"查看通知", "查看视图", "查看数据",
|
"查看脚本", "查看源码",
|
||||||
"会话存储", "本地存储",
|
"查看通知", "查看视图", "查看数据", "会话存储", "本地存储",
|
||||||
"查看报文", "查看配置", "查看日志",
|
"查看报文", "查看配置", "查看日志",
|
||||||
"删除工具",
|
"删除工具",
|
||||||
],
|
],
|
||||||
@ -133,6 +142,11 @@ Volcanos(chat.ONACTION, {list: [
|
|||||||
"项目": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.project) }) },
|
"项目": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.project) }) },
|
||||||
"预览": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.profile) }) },
|
"预览": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.profile) }) },
|
||||||
"演示": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.display) }) },
|
"演示": function(event, can) { can.onaction._view(can, function(sub) { sub.ui && sub.ui.project && can.onmotion.toggle(can, sub.ui.display) }) },
|
||||||
|
"插件": function(event, can) {
|
||||||
|
can.user.input(event, can, [ctx.INDEX, ctx.ARGS], function(data) {
|
||||||
|
var sub = can.sub; sub.onimport.tool(sub, [data], function(sub) { sub.select() })
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
"保存参数": function(event, can) { can.search(event, ["River.ondetail.保存参数"]) },
|
"保存参数": function(event, can) { can.search(event, ["River.ondetail.保存参数"]) },
|
||||||
"清空参数": function(event, can) { can.page.SelectArgs(can, can._option, "", function(target) { return target.value = "" }) },
|
"清空参数": function(event, can) { can.page.SelectArgs(can, can._option, "", function(target) { return target.value = "" }) },
|
||||||
@ -141,11 +155,9 @@ Volcanos(chat.ONACTION, {list: [
|
|||||||
can.user.downloads(can, sub.onexport.table(sub), list[0], nfs.CSV), can.user.downloads(can, sub.onexport.board(sub), list[0], nfs.TXT)
|
can.user.downloads(can, sub.onexport.table(sub), list[0], nfs.CSV), can.user.downloads(can, sub.onexport.board(sub), list[0], nfs.TXT)
|
||||||
}) },
|
}) },
|
||||||
"清空数据": function(event, can) { can.onmotion.clear(can, can._output) },
|
"清空数据": function(event, can) { can.onmotion.clear(can, can._output) },
|
||||||
"添加工具": function(event, can) {
|
|
||||||
can.user.input(event, can, [ctx.INDEX, ctx.ARGS], function(data) {
|
"打开首页": function(event, can) { can.user.open(location.origin) },
|
||||||
var sub = can.sub; sub.onimport.tool(sub, [data], function(sub) { sub.select() })
|
"打开空间": function(event, can) { can.user.open(can.misc.MergePodCmd(can, {pod: can.ConfSpace()||can.misc.Search(can, ice.POD)})) },
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
"查看文档": function(event, can) { can.requests(event, {action: ice.HELP}), can.onengine.signal(can, "ondebugs", can.requestPodCmd(event)) },
|
"查看文档": function(event, can) { can.requests(event, {action: ice.HELP}), can.onengine.signal(can, "ondebugs", can.requestPodCmd(event)) },
|
||||||
"查看脚本": function(event, can) { can.onappend._float(can, web.CODE_INNER, can.misc.SplitPath(can, can.sub._path)) },
|
"查看脚本": function(event, can) { can.onappend._float(can, web.CODE_INNER, can.misc.SplitPath(can, can.sub._path)) },
|
||||||
@ -179,6 +191,9 @@ Volcanos(chat.ONACTION, {list: [
|
|||||||
}, _close: function(event, can) { can.page.Remove(can, can._target) },
|
}, _close: function(event, can) { can.page.Remove(can, can._target) },
|
||||||
clear: function(event, can) { can.onmotion.clear(can, can._output) },
|
clear: function(event, can) { can.onmotion.clear(can, can._output) },
|
||||||
actions: function(event, can) { can.onmotion.toggle(can, can._action) },
|
actions: function(event, can) { can.onmotion.toggle(can, can._action) },
|
||||||
|
help: function(event, can) {
|
||||||
|
can.onappend._float(can, {index: web.WIKI_WORD}, [can.Conf("_help")])
|
||||||
|
},
|
||||||
full: function(event, can) { can.onaction["切换全屏"](event, can, "切换全屏", can.sub) },
|
full: function(event, can) { can.onaction["切换全屏"](event, can, "切换全屏", can.sub) },
|
||||||
prev: function(event, can) { can.runAction(event, mdb.PREV, [can.Status(mdb.TOTAL)||0, can.Option(mdb.LIMIT)||can.Action(mdb.LIMIT)||can._msg.Option("cache.limit")||"", can.Option(mdb.OFFEND)||can.Action(mdb.OFFEND)||""], function(msg) { can.onimport._process(can, msg) }) },
|
prev: function(event, can) { can.runAction(event, mdb.PREV, [can.Status(mdb.TOTAL)||0, can.Option(mdb.LIMIT)||can.Action(mdb.LIMIT)||can._msg.Option("cache.limit")||"", can.Option(mdb.OFFEND)||can.Action(mdb.OFFEND)||""], function(msg) { can.onimport._process(can, msg) }) },
|
||||||
next: function(event, can) { can.runAction(event, mdb.NEXT, [can.Status(mdb.TOTAL)||0, can.Option(mdb.LIMIT)||can.Action(mdb.LIMIT)||can._msg.Option("cache.limit")||"", can.Option(mdb.OFFEND)||can.Action(mdb.OFFEND)||""], function(msg) { can.onimport._process(can, msg) }) },
|
next: function(event, can) { can.runAction(event, mdb.NEXT, [can.Status(mdb.TOTAL)||0, can.Option(mdb.LIMIT)||can.Action(mdb.LIMIT)||can._msg.Option("cache.limit")||"", can.Option(mdb.OFFEND)||can.Action(mdb.OFFEND)||""], function(msg) { can.onimport._process(can, msg) }) },
|
||||||
|
Loading…
x
Reference in New Issue
Block a user