From 0e7c801bfda3da3e353db0ec52a0765352b4f62a Mon Sep 17 00:00:00 2001 From: shylinux Date: Wed, 29 Jul 2020 11:39:40 +0800 Subject: [PATCH 1/9] opt some --- frame.js | 7 +++++++ index.css | 3 +++ 2 files changed, 10 insertions(+) diff --git a/frame.js b/frame.js index 12db16dd..cd165c5f 100644 --- a/frame.js +++ b/frame.js @@ -472,6 +472,13 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met } return {type: "td", inner: value, click: function(event) { var target = event.target; if (target.tagName == "INPUT" && target.type == "button") { + switch (target.value) { + case "复制": + navigator.clipboard.writeText(line.text).then(function() { + can.user.toast(can, "复制成功", "paste") + }) + return + } return run(event, event.target.value, value) } can.page.Select(can, can._option, "input.args", function(input) { if (input.name == key) { var data = input.dataset || {} diff --git a/index.css b/index.css index b3670c0d..6d5934ea 100644 --- a/index.css +++ b/index.css @@ -184,6 +184,9 @@ table td:hover { table td.select { background-color:red; } +table td input { + margin-left:4px; +} div.toast { color:yellow; From a0ddfb390d4505c334db89e953f732653d89619e Mon Sep 17 00:00:00 2001 From: shylinux Date: Wed, 29 Jul 2020 11:46:08 +0800 Subject: [PATCH 2/9] opt some --- plugin/input.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/plugin/input.js b/plugin/input.js index 666760c2..1d81ca4a 100644 --- a/plugin/input.js +++ b/plugin/input.js @@ -10,11 +10,10 @@ Volcanos("onaction", {help: "控件交互", list: [], }, onclick: function(event, can) { if (can.Conf("name") == "添加") { - setTimeout(async () => { - const text = await navigator.clipboard.readText(); - console.log(text); + navigator.clipboard.readText().then(function(text) { + console.log(text) can.run(event, ["action", "insert", "paste", "", text], function() {}) - }, 20) + }) return } From 61e81c48d909824c57ee324b3ac7ea62674c8839 Mon Sep 17 00:00:00 2001 From: shaoying Date: Wed, 29 Jul 2020 22:16:22 +0800 Subject: [PATCH 3/9] opt some --- plugin/story/spide.js | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/plugin/story/spide.js b/plugin/story/spide.js index 973606c3..dd570bad 100644 --- a/plugin/story/spide.js +++ b/plugin/story/spide.js @@ -25,15 +25,7 @@ Volcanos("onimport", {help: "导入数据", list: [], can.Action("scale", "1") can.sub.svg.Value("transform", "scale("+can.Action("scale")+")") can.onaction["横向"](event, can) - - return - can.Timer(100, function() { - can.core.Next(["base", "base/mdb", "base/log", "base/gdb", "base/ctx", "base/cli", "LICENSE"], function(value, next) { - can._tree[value].view.scrollIntoView() - can._tree[value].view.onclick() - can.Timer(500, next) - }) - }) + sub.Action("go", "run") }) } }, can.ui.content) @@ -66,7 +58,7 @@ Volcanos("onaction", {help: "组件菜单", list: ["编辑", "清空", ["view", var name = array.slice(0, index+1).join("/") list[last] = list[last] || {name: last, list: []} if (!item || list[name]) { return } - list[last].list.push(list[name] = {hide: true, name: item+(index==array.length-1? "": "/"), last: last, list: []}) + list[last].list.push(list[name] = {hide: true, file: value.path, name: item+(index==array.length-1? "": "/"), last: last, list: []}) }) }) return list @@ -84,14 +76,34 @@ Volcanos("onaction", {help: "组件菜单", list: ["编辑", "清空", ["view", }) return tree.height = height }, - _draw: function(can, tree, x, y) { var sub = can.sub, name = tree.name || can.Option("name") || "." + _draw: function(can, tree, x, y) { var sub = can.sub, name = tree.name || can.Option("path") || "." tree.view = sub.onimport.draw({}, sub, { shape: "text", point: [{x: x, y: y+tree.height*30/2}], style: {inner: name, "text-anchor": "start", "stroke-width": 1, fill: "yellow"}, }) + if (x+name.length*16 > can.width) { + can.width = x+name.length*20 + } tree.view.onclick = function(event) { + if (!name.endsWith("/")) { + if (!tree.tags) { tree.tags = true + console.log(tree) + can.run(event, [can.Option("path"), tree.file], function(msg) { + msg.Table(function(value) { + tree.list.push({name: value.name, last: tree, list: []}) + }) + + sub.svg.innerHTML = "" + tree.hide = !tree.hide + can.onaction["横向"](event, can) + }, true) + return + } + } + sub.svg.innerHTML = "" tree.hide = !tree.hide can.onaction["横向"](event, can) + if (!event) {return} event.stopPropagation() event.preventDefault() @@ -130,10 +142,12 @@ Volcanos("onaction", {help: "组件菜单", list: ["编辑", "清空", ["view", }, "横向": function(event, can) { var sub = can.sub + can.width = 0 can._tree = can._tree || can.onaction._tree(can, can._msg) can.onaction._height(can, can._tree[""]) sub.svg.Val("height", can._tree[""].height*30) can.onaction._draw(can, can._tree[""], 0, 0) + sub.svg.Val("width", can.width) }, "纵向": function(event, can) { }, From de1adc50a0b5484475bbd8ab683e5fedc40736c9 Mon Sep 17 00:00:00 2001 From: shylinux Date: Thu, 30 Jul 2020 09:20:56 +0800 Subject: [PATCH 4/9] add river.node --- lib/user.js | 5 ++-- pane/Action.js | 2 +- pane/River.js | 16 +++++++++-- plugin/local/code/inner.js | 11 +++++++- plugin/story/spide.js | 57 +++++++++++++++++++++++++------------- 5 files changed, 65 insertions(+), 26 deletions(-) diff --git a/lib/user.js b/lib/user.js index 0a6b0403..fc83ad75 100644 --- a/lib/user.js +++ b/lib/user.js @@ -37,8 +37,9 @@ var user = Volcanos("user", {help: "用户模块", {text: ["", "div", "duration"]}, ]}]) - can.Timer({value: 1000, length: (meta.duration||3000)/1000}, function(event, interval, index) { - if (index > 2) { ui.duration.innerHTML = index+"s..." } + can.Timer({value: 100, length: (meta.duration||1000)/100}, function(event, interval, index) { + console.log(index, interval) + if (index > 20) { ui.duration.innerHTML = (index/10)+"s..." } }, function() { can.page.Remove(can, ui.first) }) ui.Close = function() { can.page.Remove(can, ui.first) } diff --git a/pane/Action.js b/pane/Action.js index 27949627..657ea97c 100644 --- a/pane/Action.js +++ b/pane/Action.js @@ -37,7 +37,7 @@ Volcanos("onexport", {help: "导出数据", list: [], _init: function(can, msg, // 插件回调 return can.run(event, can.onengine[cmds[0]]? cmds: [river, storm, value.action].concat(cmds), function(msg) { can.run(msg._event, ["search", "Footer.onaction.ncmd"]); - can.user.toast(can, "执行成功", value.name, 2000); + can.user.toast(can, "执行成功", value.name, 1000); typeof cb == "function" && cb(msg) }, silent) } diff --git a/pane/River.js b/pane/River.js index 3311a0e9..f4b5dd10 100644 --- a/pane/River.js +++ b/pane/River.js @@ -55,7 +55,7 @@ Volcanos("onaction", {help: "控件交互", list: ["创建", "刷新"], _init: f can.user.Search(can, {"river": can.Conf("river")}) }, }) -Volcanos("ondetail", {help: "菜单交互", list: ["添加应用", "添加用户", "重命名", "共享", "删除"], _init: function(can, msg, list, cb, target) { +Volcanos("ondetail", {help: "菜单交互", list: ["添加应用", "添加设备", "添加用户", "重命名", "共享", "删除"], _init: function(can, msg, list, cb, target) { can.onexport._init(can, msg, list, cb, target) }, "添加工具": function(event, can, value) { @@ -80,13 +80,25 @@ Volcanos("ondetail", {help: "菜单交互", list: ["添加应用", "添加用户 return true }) }, + "添加设备": function(event, can, value) { + can.run(event, ["search", "Search.onimport.select", "space", "", ""], function(list) { + var args = []; can.core.List(list, function(item) { + args = args.concat([item[4]]) + }) + var toast = can.user.toast(can, "执行中...", "添加设备", 100000) + can.run(event, [can.Conf("river"), "action", "node"].concat(args), function(msg) { + toast.Close(), can.user.toast(can, "执行完成...", "添加设备", 1000) + // can.user.Search(can, {"river": can.Conf("river")}) + }) + }) + }, "添加用户": function(event, can, river, button) { can.run(event, ["search", "Search.onimport.select", "user", "", ""], function(list) { var args = []; can.core.List(list, function(item) { args = args.concat([item[5]]) }) can.run(event, [can.Conf("river"), "action", "user"].concat(args), function(msg) { - can.user.Search(can, {"river": can.Conf("river")}) + // can.user.Search(can, {"river": can.Conf("river")}) }) }) }, diff --git a/plugin/local/code/inner.js b/plugin/local/code/inner.js index f547aa46..c415fbbf 100644 --- a/plugin/local/code/inner.js +++ b/plugin/local/code/inner.js @@ -1,4 +1,9 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, list, cb, target) { target.innerHTML = "" + var feature = can.Conf("feature") + can.onaction.list = feature.action || can.onaction.list + can.Conf("height", feature.height || can.Conf("height")) + can.Conf("width", feature.width || can.Conf("width")) + if (can.Conf("height") < 600) { can.Conf("height", 600) } can.onimport._share(can); var width = can.Conf("width"), height = can.Conf("height") // can.page.Modify(can, target, {style: {"max-height": height-160+"px"}}) @@ -8,7 +13,8 @@ Volcanos("onimport", {help: "导入数据", _init: function(can, msg, list, cb, {view: "profile"}, {view: "holdon", list: [ - {view: "preview"}, {view: "content", style: {"max-width": can.Conf("width")-160+"px"}}, + {view: "preview"}, + {view: "content", style: {"max-width": can.Conf("width")-(feature.width?0:120)+"px"}}, ]}, {view: ["editor", "textarea"], onkeydown: function(event) { @@ -573,6 +579,9 @@ Volcanos("onaction", {help: "控件交互", list: [ }, true) }, + "关闭": function(event, can, msg) { + can.page.Remove(can, can._target.parentNode) + }, "串行": function(event, can, msg) { can.core.Next(can.page.Select(can, can._action, "div.file", function(item) { return item.innerHTML diff --git a/plugin/story/spide.js b/plugin/story/spide.js index dd570bad..8d039af6 100644 --- a/plugin/story/spide.js +++ b/plugin/story/spide.js @@ -84,29 +84,46 @@ Volcanos("onaction", {help: "组件菜单", list: ["编辑", "清空", ["view", can.width = x+name.length*20 } tree.view.onclick = function(event) { - if (!name.endsWith("/")) { - if (!tree.tags) { tree.tags = true - console.log(tree) - can.run(event, [can.Option("path"), tree.file], function(msg) { - msg.Table(function(value) { - tree.list.push({name: value.name, last: tree, list: []}) - }) - - sub.svg.innerHTML = "" - tree.hide = !tree.hide - can.onaction["横向"](event, can) - }, true) - return - } + if (name.endsWith("/") || tree.tags) { + sub.svg.innerHTML = "" + tree.hide = !tree.hide + can.onaction["横向"](event, can) + return } - sub.svg.innerHTML = "" - tree.hide = !tree.hide - can.onaction["横向"](event, can) + if (tree.name.endsWith("go") || + tree.name.endsWith("c") || + tree.name.endsWith("h")) { + can.run(event, [can.Option("path"), tree.file], function(msg) { + msg.Table(function(value) { tree.tags = true + tree.list.push({type: "tags", file: value.file, line: value.line, name: value.name, last: tree, list: []}) + }) - if (!event) {return} - event.stopPropagation() - event.preventDefault() + sub.svg.innerHTML = "" + tree.hide = !tree.hide + can.onaction["横向"](event, can) + }, true) + return + } + + tree.inner = can.onappend._init(can, {name: "inner", help: "源码", inputs: [ + {type: "text", name: "path", value: can.Option("path")}, + {type: "text", name: "file", value: tree.file}, + {type: "text", name: "line", value: tree.line}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.code.inner", feature: { + display: "/plugin/local/code/inner.js", style: "editor", width: 800, height: 600, + action: ["关闭"], + }}, Volcanos.meta.libs.concat(["/plugin/state.js"]), function(sub) { + sub.run = function(event, cmds, cb, silent) { + can.run(event, ["inner"].concat(cmds), cb, true) + } + }, document.body) + + can.page.Modify(can, tree.inner._target, {style: {position: "fixed", + left: event.x-(event.x>600? 400: 100), + top: event.y-(event.y>600? 400: 0), + }}) } tree.view.onmouseenter = function(event) { can.page.Remove(can, can.pos) From bc956d835e5ed32a44852f0e4ec0c376178770c8 Mon Sep 17 00:00:00 2001 From: shylinux Date: Thu, 30 Jul 2020 09:24:21 +0800 Subject: [PATCH 5/9] fix some --- lib/user.js | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/user.js b/lib/user.js index fc83ad75..05bf4241 100644 --- a/lib/user.js +++ b/lib/user.js @@ -38,7 +38,6 @@ var user = Volcanos("user", {help: "用户模块", ]}]) can.Timer({value: 100, length: (meta.duration||1000)/100}, function(event, interval, index) { - console.log(index, interval) if (index > 20) { ui.duration.innerHTML = (index/10)+"s..." } }, function() { can.page.Remove(can, ui.first) }) From 939cc60874e6cb3f25e8013ea18639fcb8d4fd80 Mon Sep 17 00:00:00 2001 From: shaoying Date: Thu, 30 Jul 2020 16:55:44 +0800 Subject: [PATCH 6/9] opt some --- frame.js | 5 +++-- plugin/input.js | 11 +++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/frame.js b/frame.js index cd165c5f..a8423c0c 100644 --- a/frame.js +++ b/frame.js @@ -235,7 +235,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met for (var k in sub._inputs) { sub._inputs[k]._target.focus(); break } }) }, target) }, - }, Volcanos.meta.libs.concat([item.display||"/plugin/input.js"]), function(input) { + }, Volcanos.meta.libs.concat([item.display||"/plugin/input.js"]), function(input) { input.sup = sub input.onimport._init(input, input.Conf(item), item.list||[], function() {}, input._target) if (location.protocol == "chrome-extension:") { @@ -264,7 +264,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met } break default: - msg.Option("_action", item.name) + cmds && cmds[0] == "action" || msg.Option("_action", item.name||item.value) } // 解析参数 @@ -310,6 +310,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met if (!cmds[i]) { cmds.pop() } else { break } } + var last = sub._history[sub._history.length-1]; !can.core.Eq(last, cmds) && cmds[0] != "action" && sub._history.push(cmds) return run(event, cmds, cb, silent) } diff --git a/plugin/input.js b/plugin/input.js index 1d81ca4a..f978ea08 100644 --- a/plugin/input.js +++ b/plugin/input.js @@ -10,6 +10,17 @@ Volcanos("onaction", {help: "控件交互", list: [], }, onclick: function(event, can) { if (can.Conf("name") == "添加") { + can.user.input(event, can, can.sup.Conf("feature").insert,function(event, button, data, list) { + var args = ["action", "insert"]; can.core.Item(data, function(key, value) { + key && value && args.push(key, value) + }) + can.run(event, args, function(msg) { + can.user.toast(can, "添加成功") + }) + return true + }) + return + navigator.clipboard.readText().then(function(text) { console.log(text) can.run(event, ["action", "insert", "paste", "", text], function() {}) From 44766bf44beaa0d33b496020338774f4eefd7f27 Mon Sep 17 00:00:00 2001 From: shylinux Date: Fri, 31 Jul 2020 09:06:07 +0800 Subject: [PATCH 7/9] opt some --- frame.js | 2 +- plugin/local/wiki/feel.js | 3 ++- plugin/local/wiki/word.css | 4 ++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/frame.js b/frame.js index a8423c0c..01ee0c25 100644 --- a/frame.js +++ b/frame.js @@ -465,7 +465,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met var msg = can.request(event) msg.Option(can.Option()), msg.Option(line) var cb = can.onaction[item] || can.onaction["运行"] - cb? cb(event, can, item): can.run(event, ["action", item, key, value.trim()], function(res) { + cb? cb(event, can, item): can.run(event, ["action", item, key=="value"? line.key: key, value.trim()], function(res) { can.ui.display.innerHTML = "" can.onappend.table(can, can.ui.display, "table", res) can.onappend.board(can, can.ui.display, "board", res) diff --git a/plugin/local/wiki/feel.js b/plugin/local/wiki/feel.js index 18f9be7e..ceb6afd2 100644 --- a/plugin/local/wiki/feel.js +++ b/plugin/local/wiki/feel.js @@ -42,7 +42,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, can.rate = can.ctrl.rate.value = 1 limit = can.ctrl.limit.value = parseInt(msg.Option("limit"))||1 - can.height = can.ctrl.height.value = parseInt(msg.Option("height"))||400 + can.height = can.ctrl.height.value = parseInt(msg.Option("height"))||200 can.Option("path") != "最近/" && can.onimport.page(can, list, begin, limit) }, page: function(can, list, begin, limit) { can.ui.display.innerHTML = "" @@ -62,6 +62,7 @@ Volcanos("onfigure", {help: "组件菜单", list: [], image: function(can, path) { return {img: path, height: can.height} }, + jpeg: function(can, path) { return can.onfigure.image(can, path) }, jpg: function(can, path) { return can.onfigure.image(can, path) }, png: function(can, path) { return can.onfigure.image(can, path) }, qrc: function(can, path) { return can.onfigure.image(can, path) }, diff --git a/plugin/local/wiki/word.css b/plugin/local/wiki/word.css index d9c85c23..a7753192 100644 --- a/plugin/local/wiki/word.css +++ b/plugin/local/wiki/word.css @@ -1,3 +1,7 @@ +fieldset li.H2 { + font-weight:bold; + font-size:20px; +} fieldset h2.story { clear:both; } From 1f583aebfa79fc0374f4d3768a133a459ec34e7f Mon Sep 17 00:00:00 2001 From: shylinux Date: Fri, 31 Jul 2020 09:11:54 +0800 Subject: [PATCH 8/9] opt some --- frame.js | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) diff --git a/frame.js b/frame.js index 01ee0c25..3b79c40f 100644 --- a/frame.js +++ b/frame.js @@ -47,6 +47,38 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { }, river: { + "serivce": {name: "运营群", storm: { + "wx": {name: "wx", action: [ + {name: "微信公众号", help: "wx", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/wx/wx.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "mp": {name: "mp", action: [ + {name: "微信小程序", help: "mp", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/mp/mp.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "lark": {name: "lark", action: [ + {name: "飞书机器人", help: "lark", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/lark/lark.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js", style: "word"}}, + ]}, + "share": {name: "share", action: [ + {name: "contexts", help: "shylinux/contexts", inputs: [ + {type: "text", name: "path", value: "learning/speak/20200724.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js", style: "word"}}, + ]}, + // "company": {name: "company", action: [ + // {name: "公司", help: "company", inputs: [ + // {type: "text", name: "path", value: "learning/社会/管理/company.shy"}, + // {type: "button", name: "查看", value: "auto"}, + // ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + // ]}, + }}, "product": {name: "产品群", storm: { "office": {name: "office", index: [ "web.wiki.draw.draw", @@ -59,6 +91,42 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { "web.code.chrome.chrome", "web.code.chrome.bookmark", ]}, + "english": {name: "english", action: [ + {name: "english", help: "英汉", inputs: [ + {type: "text", name: "word", value: "hi"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.alpha.find", feature: {}}, + {name: "chinese", help: "汉英", inputs: [ + {type: "text", name: "word", value: "你好"}, + {type: "text", name: "method", value: "line"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.alpha.find", feature: {}}, + {name: "wubi", help: "五笔", inputs: [ + {type: "text", name: "word", value: "wqvb"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.code.input.find", feature: {}}, + {name: "wubi", help: "五笔", inputs: [ + {type: "text", name: "word", value: "你好"}, + {type: "text", name: "method", value: "line"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.code.input.find", feature: {}}, + ]}, + "context": {name: "context", action: [ + {name: "knowledge", help: "智库", inputs: [ + {type: "text", name: "path", value: "learning/", action: "auto"}, + {type: "button", name: "查看", value: "auto"}, + {type: "button", name: "返回"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + {name: "index", help: "索引", inputs: [ + {type: "text", name: "path", value: "learning/index.shy", action: "auto"}, + {type: "button", name: "查看", value: "auto"}, + {type: "button", name: "返回"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + {name: "context", help: "编程", inputs: [ + {type: "text", name: "path", value: "learning/自然/编程/hi.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, }}, "project": {name: "研发群", storm: { "inner": {name: "inner", index: [ @@ -79,6 +147,60 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { "web.code.tmux.buffer", "web.code.tmux.session", ]}, + "vim": {name: "vim", action: [ + {name: "git", help: "git", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/git/git.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + {name: "vim", help: "vim", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/vim/vim.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "html": {name: "html", action: [ + {name: "spide", help: "爬虫", inputs: [ + {type: "text", name: "name", value: "icebergs"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.code.git.spide", feature: {display: "/plugin/story/spide.js"}}, + {name: "trend", help: "趋势", inputs: [ + {type: "text", name: "name", value: "icebergs"}, + {type: "text", name: "begin_time", value: "@date"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.code.git.trend", feature: {display: "/plugin/story/trend.js"}}, + {name: "draw", help: "绘图", inputs: [ + {type: "text", name: "path", value: "hi.svg"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.draw.draw", feature: {display: "/plugin/local/wiki/draw.js"}}, + {name: "HTML5", help: "网页", inputs: [ + {type: "text", name: "path", value: "icebergs/misc/chrome/chrome.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "nginx": {name: "nginx", action: [ + {name: "nginx", help: "代理", inputs: [ + {type: "text", name: "path", value: "nginx-story/src/main.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "golang": {name: "golang", action: [ + {name: "golang", help: "编程", inputs: [ + {type: "text", name: "path", value: "golang-story/src/main.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "redis": {name: "redis", action: [ + {name: "redis", help: "缓存", inputs: [ + {type: "text", name: "path", value: "redis-story/src/main.shy", action: "auto"}, + {type: "button", name: "查看", value: "auto"}, + {type: "button", name: "返回"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + "context": {name: "context", action: [ + {name: "context", help: "编程", inputs: [ + {type: "text", name: "path", value: "learning/自然/编程/context.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, }}, "profile": {name: "测试群", storm: { "pprof": {name: "pprof", index: [ @@ -94,6 +216,14 @@ Volcanos("onengine", { _init: function(can, meta, list, cb, target) { "web.code.docker.command", ]}, }}, + "operate": {name: "运维群", storm: { + "os": {name: "os", action: [ + {name: "操作系统", help: "os", inputs: [ + {type: "text", name: "path", value: "learning/自然/编程/system.shy"}, + {type: "button", name: "查看", value: "auto"}, + ], index: "web.wiki.word", feature: {display: "/plugin/local/wiki/word.js"}}, + ]}, + }}, }, search: function(event, can, msg, pane, cmds, cb) { var chain = cmds[1] var sub, mod = can, key, fun = can; can.core.List(chain.split("."), function(value, index, array) { From 6b45404e2ce30eaf25e727839d91ec6133dd46db Mon Sep 17 00:00:00 2001 From: shaoying Date: Fri, 31 Jul 2020 22:15:20 +0800 Subject: [PATCH 9/9] opt some --- frame.js | 7 +++++-- plugin/local/team/plan.js | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/frame.js b/frame.js index 3b79c40f..5aa0dd23 100644 --- a/frame.js +++ b/frame.js @@ -552,8 +552,11 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met case "select": item.values = typeof item.values == "string"? item.values.split(" "): item.values if (!item.values && item.value) { - item.values = item.value.split("|") + item.values = item.value.split("|") item.value = item.values[0] + if (item.values[0] == "day") { + item.value = item.values[1] + } } input.type = "select", input.list = item.values.map(function(value) { return {type: "option", value: value, inner: value} @@ -586,7 +589,7 @@ Volcanos("onappend", { _init: function(can, meta, list, cb, target, field) { met item.type == "text" && !target.placeholder && (target.placeholder = item.name || "") item.type == "text" && !target.title && (target.title = target.placeholder) // item.type == "button" && item.action == "auto" && can.run && can.run({}) - // item.type == "select" && (target.value = item.value || item.values[item.index||0]) + item.type == "select" && item.value && (target.value = item.value) return target }, table: function(can, target, type, msg, cb) { diff --git a/plugin/local/team/plan.js b/plugin/local/team/plan.js index 9ec2cd3d..65f6c1b2 100644 --- a/plugin/local/team/plan.js +++ b/plugin/local/team/plan.js @@ -130,7 +130,7 @@ Volcanos("onimport", {help: "导入数据", list: [], _init: function(can, msg, }) var head = ["hour"].concat(["周日", "周一", "周二", "周三", "周四", "周五", "周六"]); - var list = [0]; for (var i = 6; i < 24; i++) { list.push(i) } + var list = [0]; for (var i = 6; i < 24; i++) { list.push(can.base.Number(i, 2)) } function set(week, hour) { return can.base.Time(can.base.TimeAdd(begin_time, week-begin_time.getDay()+hour/24)) } var table = can.page.Append(can, can.ui.content, [{type: "table", list: