Releases: bitrix24/b24ui
Releases · bitrix24/b24ui
v2.8.0
2.8.0 (2026-05-20)
Features
- Avatar/AvatarGroup: add
colorprop - Breadcrumb: add
colorprop - ChatMessage: add
colorprop andheaderslot - Error: add
iconprop andleadingslot - Error: add
avatarandcolorprops alongside icon - CommandPalette: search and highlight
descriptionfield - ContentSearch/DashboardSearch: enable Fuse.js token search by default
- DashboardGroup: add
storageOptionsprop - PageCard/PageCardGroup: add
avatarprop with Button.vue pattern
Bug Fixes
- ProsePrompt: type
iconprop asIconComponent - ProsePrompt: preserve copy formatting and centralize icon registry
- ProsePrompt: preserve line breaks and lists when copying prompt
- CommandPalette: preserve relative order of
ignoreFiltergroups - CommandPalette: only split tokens in highlight when
useTokenSearchis enabled - CommandPalette: update default fuse keys in docs and search components
- defineShortcuts: use
e.codefor alt shortcuts to handle macOS key remapping - useComponentProps: treat array-typed theme values as
ClassValueleaves - module: don't require
@nuxtjs/mdcwhen usingcontentoption
Docs
- Modal: host the Sales dynamics widget in a Modal; add marketing/promo composition example
- Card/Popover: add Sales dynamics widget recipe and entity-info popover example
- contributing: note when
items.coloris required; document embedded-Avatar pattern and value slots - remove stale "Soon" badges and coming-soon notes
Chore
- ci: add CI workflow and gate npm publish on it
- deps: update all non-major dependencies (tailwindcss
^4.3.0, reka-ui2.9.7, vue-tsc^3.2.8) - tests: update snapshots
v2.7.1
2.7.1 (2026-05-08)
Features
- PageCardGroup: new component
- Theme: override component prop defaults
- Separator: add
positionprop
Bug Fixes
- Banner: test localStorage
- Form: improve errors type
- module: pass computed ref directly to useHead innerHTML
Docs
- Search: stabilize Fuse config reference to prevent re-indexing on every keystroke
- Search: restore Ask AI item in search results via ignoreFilter group
- app: move Search inside ClientOnly alongside Chat
- prerender navigation and move theme-color to composable
- improve agent readability surfaces
- gate
defineOgImage/useSchemaOrginimport.meta.serverand pass missing props - improve og images compatibility with nuxt-og-image takumi
Tests
- improve test snapshots and stabilize Checkbox/CheckboxGroup/Table/Theme suites
Chore
- deps: update all non-major dependencies
- skills: add prose components definition
v2.7.0
2.7.0 (2026-05-01)
Features
- ProsePrompt: new component
- tw:size: improve size based on Tailwind CSS default widths (tsk:31740)
Bug Fixes
- ChatMessage: make actions slot accessible on touch devices
- ProseImg: close zoom overlay on Escape key
- Link: prevent double-prefixing with
@nuxtjs/i18nauto-localization - playgrounds/repl: use b24-icons
- playgrounds/repl: use b24Link props
- playgrounds/repl: error NuxtLink (tsk:32534)
- playgrounds/nuxt|demo: control size (tsk:32362)
- scripts/bx-translate-locales: rebase to .claude
Docs
- ColorMode: improve
- form: document
error-patternusage - upgrade
nuxt-og-imageand addnuxt-schema-org
Tests
- Countdown: improve
- DescriptionList: improve
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