|
| 1 | +--- |
| 2 | +title: Blazor Bootstrap v4.0.0 |
| 3 | +authors: |
| 4 | + name: Vikram Reddy |
| 5 | + title: Creator |
| 6 | + url: https://github.com/gvreddy04 |
| 7 | + image_url: https://avatars.githubusercontent.com/u/2337067 |
| 8 | +tags: [v4.0.0, blazor, bootstrap, blazorbootstrap, richtexteditor, fileinput, splitview, otpinput, charts, pdfviewer, grid, toasts] |
| 9 | +--- |
| 10 | + |
| 11 | +We are thrilled to release **Blazor Bootstrap v4.0.0** — a major milestone that introduces powerful new components, significant enhancements, and important breaking changes. This release targets **.NET 8**, **.NET 9**, and **.NET 10**. |
| 12 | + |
| 13 | +<!--truncate--> |
| 14 | + |
| 15 | +## ⚠️ Breaking Changes |
| 16 | + |
| 17 | +### .NET 6.0 support dropped |
| 18 | +.NET 6 has reached end-of-life. Blazor Bootstrap 4.0.0 supports **.NET 8**, **.NET 9**, and **.NET 10** only. Please upgrade your application before updating to this version. |
| 19 | + |
| 20 | +### Charts moved to BlazorExpress.ChartJS |
| 21 | +All chart components (`BarChart`, `LineChart`, `DoughnutChart`, `PieChart`, `PolarAreaChart`, `RadarChart`, `ScatterChart`) have been extracted from BlazorBootstrap and are now provided by the dedicated [BlazorExpress.ChartJS](https://chartjs.blazorexpress.com/) package. |
| 22 | + |
| 23 | +**Migration steps:** |
| 24 | +1. Install the `BlazorExpress.ChartJS` NuGet package. |
| 25 | +2. Replace `@using BlazorBootstrap` chart references with the BlazorExpress.ChartJS namespace. |
| 26 | +3. Load the BlazorExpress.ChartJS browser scripts. |
| 27 | +4. Migrate any chart API calls to the BlazorExpress.ChartJS API. |
| 28 | + |
| 29 | +See the [migration guide](https://docs.blazorbootstrap.com/components/charts) and the [BlazorExpress.ChartJS GitHub repo](https://github.com/BlazorExpress/BlazorExpress.ChartJS) for full details. |
| 30 | + |
| 31 | +--- |
| 32 | + |
| 33 | +## ✨ New Components |
| 34 | + |
| 35 | +### RichTextEditor |
| 36 | +A full-featured rich text editor component built on Quill.js, supporting text formatting, bullet/numbered lists, links, and image uploads. |
| 37 | + |
| 38 | +- PR [#1302](https://github.com/vikramlearning/blazorbootstrap/pull/1302), [#1304](https://github.com/vikramlearning/blazorbootstrap/pull/1304), [#1305](https://github.com/vikramlearning/blazorbootstrap/pull/1305), [#1308](https://github.com/vikramlearning/blazorbootstrap/pull/1308) |
| 39 | +- Docs: [Rich Text Editor](https://docs.blazorbootstrap.com/forms/rich-text-editor) |
| 40 | + |
| 41 | +### FileInput & DragAndDropFileInput |
| 42 | +Two new file selection components for modern file upload experiences: |
| 43 | +- `FileInput` — standard file picker with multi-select support. |
| 44 | +- `DragAndDropFileInput` — drop-zone style file picker with drag-and-drop support. |
| 45 | + |
| 46 | +- PR [#1293](https://github.com/vikramlearning/blazorbootstrap/pull/1293) |
| 47 | +- Docs: [File Input](https://docs.blazorbootstrap.com/forms/file-input) | [Drag & Drop File Input](https://docs.blazorbootstrap.com/forms/drag-and-drop-file-input) |
| 48 | + |
| 49 | +### SplitView |
| 50 | +A resizable split-panel layout component that lets users drag a divider to resize two side-by-side or top-and-bottom panes. |
| 51 | + |
| 52 | +- PR [#1283](https://github.com/vikramlearning/blazorbootstrap/pull/1283) |
| 53 | +- Docs: [SplitView](https://docs.blazorbootstrap.com/components/split-view) |
| 54 | + |
| 55 | +### OTP Input |
| 56 | +A one-time password (OTP) input component providing individual digit boxes and auto-advance behavior — ideal for verification code flows. |
| 57 | + |
| 58 | +- PR [#1238](https://github.com/vikramlearning/blazorbootstrap/pull/1238) |
| 59 | + |
| 60 | +--- |
| 61 | + |
| 62 | +## 🚀 Enhancements |
| 63 | + |
| 64 | +### Charts — Data Point Click Event |
| 65 | +Chart components (via BlazorExpress.ChartJS) now support a data point click event, enabling interactive drill-down scenarios. |
| 66 | + |
| 67 | +- PR [#1276](https://github.com/vikramlearning/blazorbootstrap/pull/1276) |
| 68 | + |
| 69 | +### PdfViewer |
| 70 | +- **Download support**: Users can now download the currently viewed PDF directly from the viewer (PR [#1288](https://github.com/vikramlearning/blazorbootstrap/pull/1288), [#1277](https://github.com/vikramlearning/blazorbootstrap/pull/1277)). |
| 71 | +- **Manual Zoom**: Manual zoom control added (PR [#956](https://github.com/vikramlearning/blazorbootstrap/pull/956)). |
| 72 | +- **Password prompt improvements**: Improved handling of cancellation in the password prompt (PR [#1255](https://github.com/vikramlearning/blazorbootstrap/pull/1255)). |
| 73 | + |
| 74 | +### ToastService |
| 75 | +- Async overloads added for `ShowAsync` to simplify fire-and-forget toast usage (PR [#1231](https://github.com/vikramlearning/blazorbootstrap/pull/1231)). |
| 76 | +- New constructor `ToastMessage(ToastType)` for quick toast creation (PR [#993](https://github.com/vikramlearning/blazorbootstrap/pull/993)). |
| 77 | + |
| 78 | +### ConfirmDialog |
| 79 | +- Auto-focus on the **Yes** button now handled natively in Blazor for improved accessibility (PR [#1259](https://github.com/vikramlearning/blazorbootstrap/pull/1259), [#1260](https://github.com/vikramlearning/blazorbootstrap/pull/1260), [#1261](https://github.com/vikramlearning/blazorbootstrap/pull/1261)). |
| 80 | + |
| 81 | +### Dropdown |
| 82 | +- Dropdown now closes when clicking outside the component (PR [#1251](https://github.com/vikramlearning/blazorbootstrap/pull/1251)). |
| 83 | + |
| 84 | +### EnumInput |
| 85 | +- Enum values can now display localized or custom display names using resource-backed attributes, reducing boilerplate in forms. |
| 86 | + |
| 87 | +### Layout — Sticky Header |
| 88 | +- Added a CSS custom property (`--bb-sticky-header-z-index`) to allow applications to control the sticky header z-index without overriding internal styles (PR [#1311](https://github.com/vikramlearning/blazorbootstrap/pull/1311)). |
| 89 | + |
| 90 | +### Google Map |
| 91 | +- Enhanced demo, script loading, and marker customization options (PR [#1292](https://github.com/vikramlearning/blazorbootstrap/pull/1292)). |
| 92 | + |
| 93 | +### CurrencyInput |
| 94 | +- Copy/Paste `KeyDown` handling improved (PR [#1205](https://github.com/vikramlearning/blazorbootstrap/pull/1205)). |
| 95 | + |
| 96 | +### Grid |
| 97 | +- Fixed rendering issues, page size reset bug (PR [#1203](https://github.com/vikramlearning/blazorbootstrap/pull/1203)). |
| 98 | + |
| 99 | +### Sidebar / Sidebar2 |
| 100 | +- Improved behavior on mobile devices (PR [#1203](https://github.com/vikramlearning/blazorbootstrap/pull/1203)). |
| 101 | + |
| 102 | +### SortableList |
| 103 | +- Refined grab cursor for sortable list items and handles (PR [#1253](https://github.com/vikramlearning/blazorbootstrap/pull/1253)). |
| 104 | + |
| 105 | +### Tooltip |
| 106 | +- Fixed typo in `TooltipColor.Secondary` CSS class name (PR [#1257](https://github.com/vikramlearning/blazorbootstrap/pull/1257)). |
| 107 | + |
| 108 | +--- |
| 109 | + |
| 110 | +## 🐛 Bug Fixes |
| 111 | + |
| 112 | +- Grid: Rendering issues and page size reset bug fixed (#1203). |
| 113 | +- SortableList: Grab cursor now correctly shown on items and handles (#1253). |
| 114 | +- Dropdown: Closes when clicking outside (#1251). |
| 115 | +- PdfViewer: Password prompt cancellation handled gracefully (#1255). |
| 116 | +- Tooltip: `TooltipColor.Secondary` CSS class name typo fixed (#1257). |
| 117 | + |
| 118 | +--- |
| 119 | + |
| 120 | +## 📚 Documentation & API Metadata |
| 121 | + |
| 122 | +Extensive API documentation metadata attributes (`[Parameter]`, `[EditorRequired]`, summary XML docs) have been added to all major components in this release, improving IntelliSense support and auto-generated API reference pages: |
| 123 | + |
| 124 | +- Accordion, Alert, Badge, Breadcrumb, Button, Callout, Card |
| 125 | +- Carousel, Collapse, ConfirmDialog |
| 126 | +- Dropdown |
| 127 | +- GoogleMap, Markdown, Modal |
| 128 | +- Offcanvas, Pagination, PdfViewer |
| 129 | +- Ribbon, Sidebar, Sidebar2 |
| 130 | +- SortableList, Spinner, Tabs, TextInput, ToastService, Toasts, Tooltips |
| 131 | + |
| 132 | +--- |
| 133 | + |
| 134 | +## 🔧 Upgrade Notes |
| 135 | + |
| 136 | +See the [Upgrade to v4.0.0 guide](https://docs.blazorbootstrap.com/blog/2025/12/01/upgrade-to-v4.0.0) for detailed migration instructions. |
| 137 | + |
| 138 | +--- |
| 139 | + |
| 140 | +## Links |
| 141 | +- [Docs Website - Blazor Bootstrap](https://docs.blazorbootstrap.com/) |
| 142 | +- [Demos Website - Blazor Bootstrap](https://demos.blazorbootstrap.com/) |
| 143 | +- [NuGet Package - Blazor.Bootstrap 4.0.0](https://www.nuget.org/packages/Blazor.Bootstrap/4.0.0) |
| 144 | +- [GitHub Release](https://github.com/vikramlearning/blazorbootstrap/releases/tag/v4.0.0) |
0 commit comments