Releases: bitrix24/b24ui
Releases · bitrix24/b24ui
v2.6.1
2.6.1 (2026-04-27)
Features
- CommandPalette): add
searchDelayprop
Bug Fixes
- ContentSearch/DashboardSearch: pick shared props from CommandPalette
- ContentSearch: speed up navigation mapping
- ChatMessage/ChatMessages: preserve generic message type in slot scope
- Drawer: handle RTL mode
- ContextMenu|DropdownMenu|EditorSuggestionMenu|InputMenu|NavigationMenu|Select: improve select state
Chore
- scripts/b24-self-task: run AI with task description from bitrix24 (tsk:32364)
- scripts/bx-translate-locales: run AI for translate
v2.6.0
2.6.0 (2026-04-23)
⚠ BREAKING CHANGES
- **module ** use
moduleDependenciesto manipulate options
Features
- add standalone Vue REPL playground
- Sidebar: new component
- ChatShimmer: new component
- ChatReasoning: new component
- ChatTool: new component
- Tooltip: support global content configuration via App tooltip prop
- DropdownMenu: add
filterprop - InputMenu: add
autocompleteprop - Checkbox/Switch: add support for
trueValue/falseValue - FileUpload: add
fileImageprop - Table: implement row pinning
- unplugin: add support for prose components
- InputTime: add
rangeprop - ChatMessage: add
filesslot - EditorSuggestionMenu: expose suggestion matching options
- Select: support
item-alignedposition mode - components: resolve
defaultVariantsin template logic - CommandPalette: add
group-labelslot - Textarea: expose
autoResizemethod - Link: auto-localize internal links when
@nuxtjs/i18nis installed - Table: support sticky header/footer in virtualized mode
- Card: add
titleanddescriptionprops
Bug Fixes
- Error: support
statusandstatusTextproperties - ContentSurround: handle RTL mode
- Avatar: use resolved size for image width/height
- ProsePre: move shiki line highlight styles to theme
- Modal|Slideover: improve theme
- ChatShimmer: handle RTL mode
- DashboardSearchButton: use valid HTML structure for trailing slot
- module: only auto-import public composables and allow Vite opt-out
- FileUpload: make multiple, accept and reset options reactive
- Editor: guard
liftcalls for unavailable list extensions - NavigationMenu: improve RTL support for viewport and indicator
- NavigationMenu: propagate disabled state to item in vertical orientation
- Modal/Slideover/Popover/Drawer: prevent double
close:preventemit - ChatMessages: keep indicator visible until first content arrives
- ChatMessage: hide files slot when no file parts exist
- AI: use
part.statefor streaming detection and deprecateisReasoningStreaming - module: inline defaultVariants and prefix in dev template
- ChatPrompt: guard enter during composition
- DashboardSidebar: always pass
collapsed: falsein mobile menu slots - module: transpile
reka-uito prevent injection errors - Modal/Slideover/Drawer: suppress reka ui title and description warnings
- Header/DashboardSidebar/Sidebar: allow autofocus in menu for proper focus trapping
- ChatMessages: reset scroll icon when messages are cleared
- ChatMessages: prevent layout shift caused by indicator during streaming
- Link: ensure single-root rendering for
v-showand$elresolution - module: use relative
tagPriorityfor inline style tags - InputTags: add missing field group variant
- ProsePre: get code from DOM if
codeprop is missing - FieldGroup: prevent context from leaking into portals
- ChatPromptSubmit: ignore
disabledprop when status is notready - ChatMessages: use MutationObserver for auto-scroll during streaming
- ProseCodeCollapse: match background on overscroll
- ProseImg: respect markdown width attribute
- InputDate/InputTime: increase segments width
- useDevice: use breakpointsTailwind from '@vueuse/core'
- ContentToc: use links for scrollspy instead of hardcoded h2/h3
- Accordion/Tabs: use item value as stable key to avoid remounts
- Modal/Slideover: drop empty header wrapper when empty
- FileUpload: use form field
colorandhighlightinstead of raw props - Tooltip: resolve incorrect style application for content slot via b24ui and class
- LocaleSelect: resolve incorrect flag display
Docs
- improve build performance and client-side navigation
- table: add column span example
- editor: reorder drag handle as last child in examples
- content: update filenames to be consistent
- input: fix duplicated calling code in phone number example
- add Vue imports to code examples in Vue mode
- ComponentCode/ComponentExample: include framework in code key
- ComponentCode/ComponentExample: pre-render both framework code variants
- header: add animated toggle example
- chat: render user messages as plain text instead of markdown
- select: remove
byprop mention - installation: replace
classRegexwithclassFunctionsfor Tailwind CSS IntelliSense - Chat: add line height to user message text
- Chat: extract theme guide into tool and add framework context
- mcp: update to latest version
- chat: update tool names to match consolidated MCP tools
- chat: pass current page context and handle request abort
- chat: call tools directly instead of self-referential HTTP
- chat: migrate from
@nuxtjs/mdcto@comark/nuxt - calendar: improve date range picker example
- improve agent readability score
- form: update elements example
- form: add missing input tags in example
v2.5.3
v2.5.2
Features
- useDevice: new composables for detect the current platform (Bitrix24 mobile/desktop app or web) and screen size
- playgrounds: improve page shortcuts
Bug Fixes
- NavigationMenu: improve theme
- DashboardSidebar|Header: improve menu
Docs
- dashboard: improve
v2.5.1
v2.4.2
2.4.2 (2026-03-19)
Features
- platform added utilities for determining the execution environment
- DashboardToolbar improve theme
- NavigationMenu improve theme and colors for
light - DashboardNavbar improve theme
- DropdownMenu improve theme
- DashboardSidebar improve theme
- DashboardPanel improve theme
- Table improve theme
Bug Fixes
- Input|Textarea: padding for
noPadding+loading - components: improve
disabledstate - CommandPalette: improve
backbutton and divide color
Chore
- platform: improve
- air: mark
--air-theme-bg-image-blurredasdeprecate. Now we use something likebackdrop-blur-mdorbackdrop-blur-md
v2.4.1
2.4.1 (2026-03-04)
Features
- designSystem: add tw
scrollbar-both-edges - colorMode: add appConfig colorModeStorageKey
Bug Fixes
- Page: make slot presence reactive for variant computation
- useResizable: use function declaration to prevent false auto-import
- ContentToc: add relative positioning to content slot
- components: improve arrow styling with
stroke-defaultandfill-bg - components: improve slots return types and tests
Docs
- deprecated: mark components as deprecated
- navigation-menu: improve examples
- input: add phone number example
v2.4.0
2.4.0 (2026-02-26)
Features
- plugins\platform: detect
bitrixMobile - Theme: new component
- Toaster: prevent duplicate toasts and add pulse animation
- Form: add HTML5 validation to programmatic submit
- NavigationMenu: handle
chipin items - NavigationMenu: allow tooltip usage in
horizontalorientation - ScrollArea: add
skipMeasurementvirtualize option - dictionary: add menu icon
- dictionary: add panel icon
- Theme: new component
- Drawer: new component
- Header|Main|Footer|FooterColumns: new component
- Page|PageAside|PageBody|PageHeader|PageSection|PageFeature: new component
- DashboardNavbar|DashboardPanel|DashboardResizeHandle|DashboardSidebar|DashboardSidebarCollapse|DashboardSidebarToggle|DashboardToolbar: new component
- Header: add
autoCloseprop
Bug Fixes
- Prose.A: add prop
raw - ColorModeImage: add baseURL support for public paths
- Table: improve perfs with
shallowRefwhen watch deep is disabled - EditorMentionMenu: use
charprop as mention prefix instead of always@ - Checkbox/Switch: prevent
data-stateconflict when used inside Tooltip - defineShortcuts: add alt key guard
- ChatMessages: prevent flash at top before scrolling to bottom on mount
- InputMenu/Select/SelectMenu: exclude cosmetic items from model value type
- colorMode: improve
- InputMenu/SelectMenu: sort filtered items by match relevance
- Toast: allow
updateto keep toast open and reset duration - Toast: improve animation smoothness
- components: nullable and optional type support
- components: add
fixedprop to prevent responsive text size reduction - types: improve
DotPathKeysaccuracy andGetItemKeysperformance - NavigationMenu: allow clicking trailing slot in horizontal orientation
- NavigationMenu: unique auto-generated item values for grouped items
- defineShortcuts: allow shifted special character shortcuts
- types: resolve
isArrayOfArraytype return - NavigationMenu: prevent navigation when clicking trailing area in horizontal orientation
- components: prevent
transformUIfrom mutating cacheduseComponentUIvalue
v2.3.0
2.3.0 (2026-02-12)
⚠ BREAKING CHANGES
- component-meta:
B24UIMetaremove from dist. Processing of this data is transferred to the future mcp documentation server.
Features
- Calendar: add
weekNumbersprop - CommandPalette/InputMenu/SelectMenu: handle virtualizer
estimateSizeas function - CommandPalette: add
inputprop - CommandPalette: add
sizeprop - components: add
byprop - components: add
valueKeyprop - Editor: add
placeholder.modeprop - Editor: add
sizeprop in menus - Editor: add
taskListhandler - Editor: add support for code inside links
- Editor: handle boolean in
imageandmentionprops - EditorMentionMenu: handle async search with
ignoreFilterprop - EditorDragHandle: proxy
nested/nestedOptionsprops and emithoverevent - InputMenu/Select/SelectMenu: expose
viewportReffor infinite scroll - InputMenu/SelectMenu: add
clearprop - Link: support custom navigate function in vue
- ProseTd/ProseTh: handle
alignprop - Timeline/Stepper: add wrapper slot and fix dynamic slot conditions
- Timeline: add
selectevent
Bug Fixes
- Banner: isolate banner visibility using per-instance CSS variables
- Banner: prevent XSS via id prop injection
- CommandPalette/ContextMenu/DropdownMenu: keyboard selection on link items
- CommandPalette: prevent XSS in search highlight
- ContentSurround: align next link to right on tablet without prev
- defineShortcuts: check shift modifier for special character shortcuts
- Editor: set
contentTypewhen updating value - Editor: support all heading levels by default
- EditorToolbar: prevent
onClickfrom being called twice on items - EditorToolbar: prevent disabled dropdown when items have no kind
- EditorToolbar: proxy size prop to dropdown menu
- Error: render as
maininstead ofdiv - FileUpload: emit null when clearing file
- FileUpload: keep input visible when preview is disabled with multiple files
- useOverlay: refine close event argument extraction
- CheckboxGroup: update
update:modelValueemit type - InputMenu/InputNumber/SelectMenu: proxy
sizeto buttons - InputMenu: prevent focus on trailing button
- Modal/Popover/Slideover: prevent unexpected close on touch when interacting with other overlays
- ChatMessages: allow message props to override role defaults
- useEditorMenu: rank filtered results by relevance
- NavigationMenu: streamline linkLabelExternalIcon rendering by nesting component into linkLabel
- Skeleton: improve colors