Releases: devnonla/devnonla-ui
Releases · devnonla/devnonla-ui
Release list
v0.7.0
Added
EditableInput: inline display with a pencil control. While editing, a popover field saves viaonSave(type:text|password|textarea).EditableInput.Keyvalidates^[A-Z][A-Z0-9_]*$.Tablecolumnflex:trueshares leftover container width equally; a number is a weight. Text wraps in that width instead of forcing horizontal scroll. Ignored whenscroll.xorwidthis set.
Changed
- Outlined fields (Input, Select, DatePicker, TimePicker) use the ink
--inputborder instead of the glass frost border, so the stroke stays visible on a white page. Tablebody and header usetext-base(14px in this theme). Header cells use an ink wash (bg-foreground/4).
Upgrade notes
- Once
rowSelectionhas any selected key, a row click toggles selection and does not callonRow.onClick. Checkbox and radio clicks are unchanged.
v0.6.0
Added
Sidebar: grouped side nav from JSON (type: "group"+ items). Optional search,selectedKey/onSelect,hreffor links.iconmay be a Fluent name string.DesktopWindowremembers last collapsed position and size (persistKey, on by default;falseto disable).
Changed
DesktopWindowkeeps resize handles when expanded. Dragging an edge leaves expand and keeps the new size.
v0.5.1
Changed
- Hover/active on Button, Menu, Dropdown, Select, pickers, Pagination, and Tag uses ink tint (
ink-hover/ink-active) instead of gray/frost overlays. Menu highlight is ink, not a glass chip. Segmenteduses a sliding glass thumb on a frosted track.Splittergutter is a 1px line that thickens on hover/drag; the center handle pill is gone.AgentChatbox/AgentPanelcolumn is slightly wider.AgentChatboxcomposer padding is tighter. DefaultChatToolCallicon is a code block.
Fixed
ChatInputtextarea height no longer stays stretched after collapse; it remeasures when the composer width changes.
v0.5.0
Added
AgentChatbox/useAgentChatStream: chat surface where the app POSTs only the new user text and can resume a live SSE stream (send,resume,onStop).Dropdown/ContextMenuitems:type: "group"with an optional label.
Changed
ChatToolCallheader spacing;ChatInputclear icon is slightly smaller.
Upgrade notes
onToolActionand typeAgentToolActionare removed. Listen withtoolHooks(onCall/onResult).
v0.4.3
Changed
AgentPanelfooter status is smaller muted text (text-sm/text-tertiary-foreground).
Fixed
AgentPanel/useAgentStream: streamedtool-callevents merge into one card (same id, still running, or result-before-params) instead of stacking duplicates.- SSE
tool-call/tool-resultaccept field aliases (tool_call_id/callId,name,label,arguments/args,output).
v0.4.2
Fixed
AgentPanel/useAgentStream: a repeatedtool-callSSE event with the sametoolCallIdupdates the existing card (name, label, input) instead of adding a duplicate bubble.
v0.4.1
Changed
DesktopIconno longer wraps the default Fluent icon in a frosted squircle plate.- Meadow desktop icon grid uses a tighter icon–label gap and nav padding.
Upgrade notes
.nonla-desktop-icon-plateis removed. Custom default-icon chrome should go throughDesktopIconmedia.
v0.4.0
Added
Pagination: Ant Design-style pager (align,showTotal,showQuickJumper,showSizeChanger,simple,hideOnSinglePage,responsive, size changer, jump ellipses). Types:PaginationAlign,PaginationSemanticSlot,PaginationSizeChangerProps.Tablepaginationforwards the same Pagination options (showTotal,showQuickJumper,align, …).OverlayScrollautoHeightand a horizontal overlay thumb.ButtonCopy/CodeBlockCopyButtonsize(ControlSize).- Tailwind theme colors
--color-well/--color-well-strong;.nonla-chat-tool-result-ok. - Public types:
DesktopHeaderProps,DesktopWindowProps,WindowHeaderProps.
Changed
DesktopHeaderslots areleft/right(waslogo/leading/trailing/profile).DesktopWindowchrome isleft· title (double-click expands) ·right.WindowHeaderfills those slots from a child (left/right, notchildren).Spinvariant="agent"matrix uses brand cells and explicit small / default / large metrics.variant="subAgent"removed (same asagent).CodeBlockbody usesOverlayScroll.- Chat tool / message UI: lucide icons,
Spin variant="agent"for running tools, quieter tool cards.
Fixed
- Escape on an open Modal no longer closes
DesktopWindow. - Input number / password / search icons follow control size.
Upgrade notes
DesktopHeader:logo+leading→left;trailing+profile→right.WindowHeader: passleft/rightinstead ofchildren.- Replace
Spin variant="subAgent"withvariant="agent". ButtonCopy/CodeBlockCopyButtonsizeis"small" | "default" | "large", not the native button attribute.- Standalone
Pagination:showSizeChangerturns on whentotal > 50unlesssimpleor you passfalse.Tablestill defaultsshowSizeChanger={false}.
v0.3.0
Added
Splitter/Splitter.Panel— resizable split panels (orientation, min/max size,onResize).ColorPickerpanel: saturation/brightness, hue/alpha, HEX / RGB / HSB, presets,showText,allowClear, sizes.Colorhelper (toHexString,toRgbString,toHsbString,toCssString).
Changed
ColorPickerpublic API now matches Ant Design-style props (value/onChange(color, css),sizeas control size). SchemaFormcolorfields use the new picker.
Upgrade notes
- Replace
ColorPickerusage:onChangeis(color: Color, css: string) => void;sizeis"small" | "default" | "large";presetsis optional{ label, colors }[]. - Store
Colorin controlled mode to avoid HEX round-trip drift.
v0.2.0
Added
Shimmer— sweep highlight for live status text (import { Shimmer } from "devnonla-ui").<App>ConfigProvider:componentSize,useApp(),useToken(),usePopupContainer(), plus in-treemessage.*/Modal.confirmholders.getDesignToken()anduseControlSize()— live--nonla-*snapshot and size resolution (control prop → AppcomponentSize→ default).- Theme knobs
--nonla-z-base/--nonla-z-desktop/--nonla-z-window/--nonla-z-header/--nonla-z-popup-base(derived--nonla-z-drawer/--nonla-z-modal/--nonla-z-message/--nonla-z-popup). AgentPaneltoolUisandtoolHooks— extra tool cards win over builtins; hooks match byname(omit /"*"for every tool).- Chat helpers:
matchesToolName,matchesToolHook,builtinToolUis,matchesToolUIName,isToolRunning.
Changed
- Default
--nonla-brand#eb9d29→#f18d00;--nonla-solid-fgcharcoal → white (Button primary, Tag solid, Checkbox). - Tailwind spacing
control-sm/field-sm28 → 24,control-lg/field-lg36 → 40 (aligned with height knobs 24 / 32 / 40). - Overlays (Select, Dropdown, DatePicker, Modal, Drawer, …) portal through
App getPopupContainer. - Desktop window / icon plates use token z-index layers and
--nonla-window-glass. .darkis no longer an alias of the light seed block.
Upgrade notes
- Put one
<App>near the root somessage.*,Modal.confirm, overlays, andcomponentSizeshare theme. - Brand fill labels: override
--nonla-solid-fg/colors.solidFgif you still want charcoal on amber. - Replace class
nonla-chat-shimmerwithShimmeror.nonla-shimmer. resolveToolUI(toolName, extras?)— second argument is optional; extra UIs are checked first.