diff --git a/index.css b/index.css index 163921c1..5fbc01e7 100644 --- a/index.css +++ b/index.css @@ -151,6 +151,7 @@ table.content.detail td { white-space:break-spaces; } table.content.detail tr.action { background-color:var(--plugin-bg-color); position:sticky; bottom:0; } table.content.detail tr.action input.icons { display:none; } table.content.detail tr.action input { color:var(--notice-bg-color); } +table.content.detail tr.action input.danger { color:var(--danger-bg-color); } table.content.detail tr.action i { display:unset; color:var(--notice-bg-color); } table.content.detail tr.action i.bi-trash { color:var(--danger-bg-color); } fieldset.plugin.cmd.output>div.output { @@ -212,6 +213,7 @@ div.item.card div.status span { margin-right:5px; } div.item.card div.action { height:40px; } div.item.card div.action { position:absolute; right:0; } div.item.card div.action input[type=button] { border:none; margin-left:5px; } +div.item.card div.action input[type=button].danger { color:var(--danger-bg-color) } div.item.card div.action input[type=button]:last-child { margin-right:5px; } div.item.card div.output { padding:10px 0; display:flex; transition:left .2s; } body.mobile div.item.card div.output { width:100%; } @@ -521,7 +523,7 @@ input[type=button] { border:var(--input-border); border-radius:var(--button-radi body:not(.mobile) input[type=button]:hover { background-color:var(--hover-bg-color); color:var(--hover-fg-color); } input[type=button].danger:hover { color:var(--danger-fg-color); } input[type=button].notice:hover { background-color:var(--notice-bg-color); color:var(--notice-fg-color); } -input[type=button].danger { color:var(--danger-bg-color) !important; } +// input[type=button].danger { color:var(--danger-bg-color) !important; } input[type=button].notice { border:var(--box-notice); } body:not(.mobile) table.content tr:hover { background-color:var(--tr-hover-bg-color); } table.content tr.select { background-color:var(--tr-hover-bg-color); } diff --git a/plugin/table.js b/plugin/table.js index 3c8e8c56..c0d31d03 100644 --- a/plugin/table.js +++ b/plugin/table.js @@ -18,25 +18,32 @@ Volcanos(chat.ONIMPORT, { itemcards: function(can, msg, cb, cbs) { if (msg.IsDetail()) { var value = msg.TableDetail(); msg.Show(can) can.page.Select(can, can._output, html.TR, function(target) { - if (target.className.indexOf("_uid") > -1) { - can.page.ClassList.add(can, target, "hide") - } + target.className.indexOf("_uid") > -1 && can.page.ClassList.add(can, target, "hide") }) } else { can.page.Append(can, can._output, msg.Table(function(value) { return can.onimport.itemcard(can, value, cb(value), cbs) })), msg.Result() && can.onappend.board(can, msg) } + can.page.Select(can, can._output, html.INPUT_BUTTON, function(target) { + var style = can.Conf("_style."+target.name) + style && can.page.ClassList.add(can, target, style) + }) }, itemcard: function(can, value, list, cb) { + can.core.List(list, function(item) { if (!item || !item.list) { return } + for (var i = 0; i < item.list.length; i++) { + if (item.list[i] && typeof item.list[i] == code.STRING) { + item.list[i] = {text: item.list[i]} + } + } + }) cb = cb|| function(event) { can.Option("uid", value.uid), can.Update() } return {view: [[html.ITEM_CARD, value._uid? "uid-"+value._uid: ""].concat(value._style||[])], list: [ {view: html.ACTION, _init: function(target) { if (!value.action) { return } target.innerHTML = value.action can.page.Select(can, target, html.INPUT_BUTTON, function(target) { var style = can.Conf("_style."+target.name)||can.page.buttonStyle(can, target.name); style && can.onappend.style(can, style, target) - target.onclick = function(event) { can.onkeymap.prevent(event) - can.Update(can.request(event, value), [ctx.ACTION, target.name]) - } + target.onclick = function(event) { can.onkeymap.prevent(event), can.Update(can.request(event, value), [ctx.ACTION, target.name]) } }) }}, {view: html.OUTPUT, list: [ @@ -46,7 +53,7 @@ Volcanos(chat.ONIMPORT, { }}, ], onclick: function(event) { can.onmotion.select(can, event.currentTarget.parentNode, html.DIV_ITEM, event.currentTarget) - cb && cb(event) + cb && cb(event, value) }} }, card: function(can, msg, target, filter) { target = target||can.ui.content||can._output