diff --git a/.gitignore b/.gitignore index f9b324c..952cf48 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +server/web-session-storage.db package-lock.json project/mikupad.html mikupad_compiled.html diff --git a/mikupad.html b/mikupad.html index dbfaef8..44004e9 100644 --- a/mikupad.html +++ b/mikupad.html @@ -503,12 +503,22 @@ html.nockoffAI #sidebar { color: var(--color-base-50); } +.flex1 { + flex: 1; +} + .hbox { flex: none; display: grid; grid: auto / auto-flow minmax(min-content, 1fr); gap: 8px; } +.hbox-flex { + display: flex; + flex-wrap: wrap; + gap: 8px; +} + .vbox { flex: none; display: grid; @@ -524,7 +534,7 @@ html.nockoffAI #sidebar { font-size: 0.75rem; padding: 0 8px; } -.InputBox > input, .SelectBox > select, .TextArea > textarea { +.InputBox > div > input, .SelectBox > select, .TextArea > textarea { appearance: none; border: none; outline: none; @@ -537,33 +547,32 @@ html.nockoffAI #sidebar { border-radius: 2px; color: inherit; background: var(--color-base-30); - flex: none; } -html.monospace-dark .InputBox > input, html.monospace-dark .SelectBox > select, -html.nockoffAI .InputBox > input, html.nockoffAI .SelectBox > select { +html.monospace-dark .InputBox > div > input, html.monospace-dark .SelectBox > select, +html.nockoffAI .InputBox > div > input, html.nockoffAI .SelectBox > select { color: var(--color-light); } -.InputBox > input:read-only { +.InputBox > div > input:read-only { background: var(--color-base-60); } -html.monospace-dark .InputBox > input:read-only { +html.monospace-dark .InputBox > div > input:read-only { background: var(--color-base-30); } -html.nockoffAI .InputBox > input:read-only { +html.nockoffAI .InputBox > div > input:read-only { background: var(--color-disabled); } html.nockoffAI .SelectBox > select, html.nockoffAI .collapsible-header, -html.nockoffAI .InputBox > input { +html.nockoffAI .InputBox > div > input { background: var(--color-input); } html.nockoffAI .horz-separator { border-top: 3px dotted color-mix(in oklch, var(--color-base-100) 90%, var(--color-light)); } -.InputBox > input:focus-visible { +.InputBox > div > input:focus-visible { outline: 1px solid var(--color-base-0); } .SelectBox > select:disabled { @@ -581,13 +590,20 @@ html.nockoffAI .SelectBox > select:disabled { bottom: .08em; } -.InputBox > input.mixed-content { +.InputBox > div > input.mixed-content { outline: 1px solid yellow; } -.InputBox > input.rejected { +.InputBox > div > input.rejected { outline: 1px solid #ff3131; } +.InputBox > div > button { + margin-left: 4px; + padding: 4px; + line-height: 0; + margin-right: -8px; +} + .tooltip { position: relative; } @@ -1199,27 +1215,31 @@ async function openaiOobaAbortCompletion({ endpoint }) { } } -function InputBox({ label, tooltip, tooltipSize, value, type, datalist, onValueChange, ...props }) { +function InputBox({ label, className, tooltip, tooltipSize, value, type, datalist, onValueChange, children, ...props }) { return html`