()
| 918 | } |
| 919 | |
| 920 | function buildSelectionProxySection(): HTMLDivElement { |
| 921 | const prop = mkInput("prop", "opacity"); |
| 922 | prop.style.width = "80px"; |
| 923 | const val = mkInput("value", "0.5"); |
| 924 | val.style.width = "80px"; |
| 925 | const setStyle = mkBtn("setStyle", "primary", () => { |
| 926 | comp!.selection().setStyle({ [prop.value.trim()]: val.value.trim() || null }); |
| 927 | logEntry("op", { "selection().setStyle": { [prop.value]: val.value } }); |
| 928 | }); |
| 929 | const remove = mkBtn("remove", "danger", () => { |
| 930 | const ids = comp!.getSelection(); |
| 931 | comp!.selection().removeElement(); |
| 932 | logEntry("op", { "selection().removeElement": ids }); |
| 933 | setSelection(null); |
| 934 | }); |
| 935 | const current = mkNote(`current: ${comp!.getSelection().join(", ") || "(none)"}`); |
| 936 | return opSection("selection() proxy", opRow(current), opRow(prop, val, setStyle, remove)); |
| 937 | } |
| 938 | |
| 939 | function buildVersionsSection(): HTMLDivElement { |
| 940 | const display = mkNote(""); |
nothing calls this directly
no test coverage detected