From 8eff6488df4d5aa6bf94be1e26d4809fd255cfa5 Mon Sep 17 00:00:00 2001 From: shy Date: Tue, 13 Feb 2024 03:55:47 +0800 Subject: [PATCH] add island.matrix --- const.js | 8 ++++++-- frame.js | 4 +++- index.css | 4 +++- plugin/table.js | 2 +- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/const.js b/const.js index e29ed341..f1499c67 100644 --- a/const.js +++ b/const.js @@ -13,6 +13,7 @@ var ice = { TB: "\t", SP: " ", DF: ":", EQ: "=", AT: "@", QS: "?", PS: "/", PT: ".", FS: ",", NL: "\n", LT: "<", GT: ">", OK: "ok", TRUE: "true", FALSE: "false", SUCCESS: "success", PROCESS: "process", FAILURE: "failure", + CONTEXTS: "contexts", HTTP: "http", HOME: "home", HELP: "help", COPY: "copy", MAIN: "main", AUTO: "auto", @@ -389,16 +390,19 @@ var icon = { "export": "bi bi-box-arrow-up", "import": "bi bi-box-arrow-in-down", compile: "bi bi-tools", publish: "bi bi-send-check", version: "bi bi-tags", upgrade: "bi bi-rocket-takeoff", install: "bi bi-box-arrow-in-down", - vimer: "bi bi-code-slash", repos: "bi bi-git", build: "bi bi-tools", tag: "bi bi-tags", + // vimer: "bi bi-code-slash", + vimer: "bi bi-file-earmark-code", + repos: "bi bi-git", build: "bi bi-tools", tag: "bi bi-tags", xterm: "bi bi-terminal", cmds: "bi bi-terminal", + portal: "bi bi-globe", desktop: "bi bi-window-desktop", admin: "bi bi-window-sidebar", dream: "bi bi-grid-3x3-gap", space: "bi bi-grid-3x3-gap", configs: "bi bi-gear", config: "bi bi-gear", conf: "bi bi-gear", logs: "bi bi-calendar4-week", save: "bi bi-floppy", trash: "bi bi-trash", notifications: "bi bi-chat-right-text", play: "bi bi-play-circle", app: "bi bi-box-arrow-down-left", - main: "bi bi-box-arrow-up-right", portal: "bi bi-box-arrow-up-right", + main: "bi bi-box-arrow-up-right", } var svg = { GROUP: "group", PID: "pid", GRID: "grid", diff --git a/frame.js b/frame.js index 0ba7b103..e3c8dc23 100644 --- a/frame.js +++ b/frame.js @@ -271,7 +271,9 @@ Volcanos(chat.ONAPPEND, {_init: function(can, meta, list, cb, target, field) { var p = can._history[can._history.length-1]; p && p._opts && can.request(event, p._opts) return can.onengine._plugin(event, can, msg, can, cmds, cb) || can.run(event, cmds, function(msg) { if (can.base.isFunc(cb)) { return cb(msg) } if (silent) { return } var _can = can._fields? can.sup: can; if (_can == (msg._can._fields? msg._can.sup: msg._can)) { if (can.core.CallFunc([_can, chat.ONIMPORT, ice.MSG_PROCESS], {can: _can, msg: msg})) { return } } - if (cmds && cmds[0] == ctx.ACTION) { if (can.base.isIn(cmds[1], mdb.CREATE, mdb.INSERT, mdb.PRUNES, mdb.EXPORT, mdb.IMPORT, "exports", "imports", nfs.TRASH) || msg.Length() == 0 && !msg.Result()) { return can.user.toastSuccess(can, cmds[1]), can.Update() } } + if (cmds && cmds[0] == ctx.ACTION) { if (can.base.isIn(cmds[1], mdb.CREATE, mdb.INSERT, mdb.PRUNES, mdb.EXPORT, mdb.IMPORT, "exports", "imports", nfs.TRASH) || msg.Length() == 0 && !msg.Result()) { + return can._toast || can.user.toastSuccess(can, cmds[1], ice.SUCCESS), can.Update() + } } can.onappend._output(can, msg, meta.display||msg.Option(ice.MSG_DISPLAY)||meta.feature.display) }) }, diff --git a/index.css b/index.css index 633515c4..89ad41de 100644 --- a/index.css +++ b/index.css @@ -528,7 +528,7 @@ div.item.button.create>span.icon { font-size:28px; line-height:28px; height:var( div.item.button.insert>span.icon { font-size:28px; line-height:28px; height:var(--action-height); } div.item.button.refresh>span.icon { font-size:28px; line-height:28px; height:var(--action-height); } body.windows div.item.button.refresh>span.icon { font-size:22px; line-height:30px; } -div.item.button._space.icons { margin-left:20px; flex-grow:1; } +div.item.button._space.icons { margin-left:var(--action-height); flex-grow:1; } div.item.button._space.icons:hover { background-color:unset; cursor:unset; } fieldset.inner fieldset.story div.item.button._space.icons { margin-left:0; flex-grow:1; } div.tabs>span { font-style:italic; } @@ -566,6 +566,8 @@ fieldset.float:not(.plug)>form.option>div.text.filter>span.value { display:none; fieldset.float:not(.plug)>form.option>div.text>span.icon { display:none; } body:not(.mobile) fieldset.float:not(.plug)>form.option>div.item:last-child { margin-right:var(--action-height); } body:not(.mobile) fieldset.float:not(.plug)>div.action>div.item:last-child { margin-right:var(--action-height); } +fieldset.float>form.option>div.item:last-child { margin-right:0; } +fieldset.float>div.action>div.item.button._space.icons { margin-left:0; } /* svg */ svg text { font-size:var(--svg-font-size); font-family:var(--svg-font-family); stroke:var(--body-fg-color); fill:var(--body-fg-color); cursor:pointer; } svg text.offline { stroke:var(--disable-fg-color); fill:var(--disable-fg-color); } diff --git a/plugin/table.js b/plugin/table.js index bc20d6fd..aae763b6 100644 --- a/plugin/table.js +++ b/plugin/table.js @@ -9,7 +9,7 @@ Volcanos(chat.ONIMPORT, {_init: function(can, msg, target) { } }, card: function(can, msg, target) { target = target||can.ui.content||can._output - var list = msg.Table(function(value) { value.icon = value.icon||value.image + var list = msg.Table(function(value) { value.icon = value.icons||value.icon||value.image var img = can.misc.Resource(can, value.icon, value.type == web.MASTER? "": value.name) if (img.indexOf("/require/") == 0 && value.origin) { img = value.origin + img } return {view: [[html.ITEM, value.type, value.status]], list: [