Releases: bitfoundation/bitplatform
v-9.8.0
What's Changed
bit BlazorUI
- Add Clear button to BitNumberField by @Cyrus-Sushiant in #10754
- Fix component @ref issues in BitNavPanel by @msynk in #10798
- Fix BitButtonGroup issues in Toggle mode by @msynk in #10802
- Add FixedToggle parameter to BitButtonGroup by @msynk in #10803
- Add setting system theme to BitTheme infrastructure by @msynk in #10805
- Fix issues of ToggleKey in BitButtonGroup by @msynk in #10810
- Add Toggled property to ClassStyles of BitNavPanel by @Cyrus-Sushiant in #10826
- Add toggle public api to BitNavPanel by @msynk in #10833
- Fix issues of BitModal by @msynk in #10848
bit Boilerplate
- Add modal based quick sign-in feature to the Boilerplate by @ysmoradi in #10843
- Add open page url on push notification tap feature to the Boilerplate by @ysmoradi in #10762
- Add ability to manage notifications by user by @ysmoradi in #10868
- Improve Boilerplate concurrency handling by @ysmoradi in #10779
- Improve Boilerplate smtp client registration by @ysmoradi in #10823
- Log warning - error for get requests with body in Boilerplate by @ysmoradi in #10824
- Improve appsettings management in integrated api mode by @ysmoradi in #10858
- Make sure local http server is listening by @ysmoradi in #10860
- Use fresh user data in authorize view's authorized fragment by @ysmoradi in #10862
- Delete user session when refresh token endpoint returns 401 by @ysmoradi in #10864
- Reset otp requested on for two factor enabled users during otp sign-in by @ysmoradi in #10832
bit Toolings
- Fix error of BSWUP force-start when there is no SW available by @msynk in #10768
- Fix js disposing issues in Butil by @msynk in #10852
Docs
Full Changelog: v-9.7.4...v-9.8.0
v-9.7.4
What's Changed
bit Boilerplate now gives you powerful Feature Gating by User Groups for precise control over your application's functionality.
This means you can easily restrict sensitive features to admins, roll out experimental features to early adopters for feedback, or offer premium features exclusively to high-tier customers.
Essentially, you can dynamically hide or reveal any feature using our robust Feature Management tied to these user groups. This is invaluable for controlled rollouts, A/B testing, and tailoring user experiences, a flexible way to manage feature access, evolve your product, and target specific user segments effectively.
bit BlazorUI
- Improve theme colors of BlazorUI by @msynk in #10753
- Add HideSearchBox parameter in BitNavPanel by @Cyrus-Sushiant in #10663
- Fix issue in SetIsSeleted method in BitDropdown by @Cyrus-Sushiant in #10674
- Improve Toggle mode in BitButtonGroup by @Cyrus-Sushiant in #10682
- Add missing size parameters to BitBasicList by @msynk in #10703
- Add ExpandAll and AllExpanded to BitNav by @msynk in #10708
- Add missing parameters to BitNavPanel by @msynk in #10716
- Fix animation issues of BitBouncingDotsLoading by @msynk in #10724
- Hide empty list message when no items provided by @msynk in #10742
- Add NoShadow parameter to BitCard by @msynk in #10741
- Fix spinner sizes in BitButton by @msynk in #10744
- Add ForceBreak and missing demo samples to BitText by @msynk in #10743
- Fix NoCollapse issues of BitNav by @msynk in #10751
bit Boilerplate
- Add manage Roles page to Boilerplate by @msynk in #10686
- Add user management feature to Boilerplate by @msynk in #10730
- Improve Boilerplate claim based authorization by @ysmoradi in #10684
- Add vscode extensions.json to Boilerplate by @ysmoradi in #10739
- Add azure adb2c / Entra support to Boilerplate by @ysmoradi in #10689
- Improve ScssCompilerService in Boilerplate by @ysmoradi in #10676
- add hotReloadCssChanges to Boilerplate Visual Studio settings by @ysmoradi in #10678
- Fix sitemap.xml issue in Boilerplate by @ysmoradi in #10707
- Improve push notification subscription management in Boilerplate by @ysmoradi in #10718
- Add quick sign-in feature to the Boilerplate by @ysmoradi in #10720
- Use background job to send push notifications in Boilerplate by @ysmoradi in #10735
bit Toolings
- Add missing namespace in HttpClientProxySourceGenerator by @Md23Mh in #10667
- Fix bit Besql issue with compiled models on iOS/macOS by @ysmoradi in #10680
- Force start Blazor when SW is not supported by @msynk in #10711
Full Changelog: v-9.7.3...v-9.7.4
v-9.7.3
What's Changed
bit BlazorUI
Resolve read only issue in BitNumberField by @Cyrus-Sushiant in #10586
Fix arrow keys issue in BitNumberField by @Cyrus-Sushiant in #10602
Fix issues of Items updating in BitNavPanel by @msynk in #10646
bit Boilerplate
Add Claim based authorization feature to the Boilerplate by @ysmoradi in #10636
Add AdService to Boilerplate to earn money by showing rewarded ads in all platforms by @msynk in #10590
Improvements over Blazor Hybrid apps integration with web browser features such as webAuthn by @ysmoradi in #10596
Fix Boilerplate issue with in-app store review by @ysmoradi in #10585
Add ability to read other user logs by super users in Boilerplate by @ysmoradi in #10589
Fixed incorrect Swedish translations by @Kyemate in #10619
bit Toolings
Add WebAuthn to Butil by @msynk in #10601
New Contributors
Full Changelog: v-9.7.2...v-9.7.3
v-9.7.2
What's Changed
bit BlazorUI
- Add new provider function parameters to BitFileUpload by @msynk in #10546
- Add Reversed parameter in BitPersona component by @Cyrus-Sushiant in #10545
- Add missing logical properties to BitPosition by @msynk in #10543
- Enable mouse wheel support in BitNumberField by @Cyrus-Sushiant in #10554
- Add Reversed parameter in BitChoiceGroup component by @Cyrus-Sushiant in #10530
bit Boilerplate
- Use fresh access token while uploading photos by @ysmoradi in #10558
- Web.slnf now uses slnx format rather than the legacy format by @ysmoradi in #10560
- Add hot reload enabling settings to VS settings file in Boilerplate by @msynk in #10568
bit Toolings
Stability improvements for bit ResxTranslator, SCSS Compiler Service and Diagnostic Modal in #10532, #10534 and #10539 by @ysmoradi and @msynk
Full Changelog: v-9.7.0...v-9.7.2
v-9.7.0
What's Changed
bit BlazorUI
-
BitRichTextEditor: Powered by QuillJS, this component delivers a robust rich text editing experience for dynamic content creation #10356 by @msynk
-
TimeZone Improvements: Enhanced timezone support in BitCalendar, BitDatePicker, and BitRangeDatePicker for precise, pro-grade global apps #10413 by @Cyrus-Sushiant
-
Component Disposal: Optimized disposal across all components for smoother performance and reliable resource cleanup #10394 by @msynk
-
Media Query Enhancements: Bit Media Query now lets you trigger C# methods based on responsive conditions, boosting app flexibility #10469 by @msynk
-
New loading types: A sleek, user-friendly loading interface in BitLoadingComponent to enhance data operation visuals #10488 by @msynk
-
Flag Component: New component with flags for all countries, perfect for globalized apps #10511 by @msynk
bit Boilerplate
-
AI Chat Feature: Added AI chat to help users troubleshoot, navigate, search products, and give feedback in real time #10407 by @ysmoradi
-
AI Text Embedding: Introduced Vector and RAG-based AI text embedding for smarter search and recommendations #10479 by @ysmoradi
-
Hangfire Integration: Added Hangfire for advanced background job handling, streamlining asynchronous tasks #10470 by @ysmoradi
-
Encoding Configuration: Set Visual Studio’s default encoding to
utf-8-nobom;65001
for consistency with modern tools like VSCode #10387 by @ysmoradi -
Project Template Attachments: Revamped attachment structure to support multiple product images in various sizes for richer visuals #10465 by @ysmoradi
-
BitOtp Usage: Rolled out BitOtp across the app for better UX and stronger security #10355 by @ysmoradi
-
Link Preview Meta Tags: Added meta tags to product pages for optimized, eye-catching link previews on social platforms #10499 by @msynk
-
Modal UX: Modals now close with Android’s back button, improving mobile navigation #10506 by @msynk
-
Default Database Schema: Included a default database schema in DbContext for easier, consistent setups #10434 by @ArvinDev1400
bit Resx Translator
- New Tool: bit resx translator dotnet tool auto-translates resx files using your chosen LLM, saving time #10510 by @ysmoradi
bit Toolings
- Bup Project Removal: Dropped Bup project, leveraging PWA everywhere via Bit.Bswup for streamlined workflows #10404 by @msynk
New Contributors
- @ArvinDev1400 made their first contribution in #10434
Full Changelog: v-9.6.1...v-9.7.0
v-9.6.1
What's Changed
bit BlazorUI
- Fixed small issues in BitDatePicker
- Improvements over BitTag by adding missing colors and Reversed parameter
bit Boilerplate
- Fix External JS Runner close issue on some Android Devices
- Elevated access token will only be sent to devices with 2fa enabled or those after social sign-in
Full Changelog: v-9.6.0...v-9.6.1
v-9.6.0
What's Changed
bit BlazorUI
- Added Markdown Viewer components with support for Pre-rendering and SEO, along with a Markdown Editor and a service for converting Markdown to HTML, usable on both server and client sides.
- Introduced Timezone and Readonly features to the Date Picker and Date Range Picker components, and updated the color of selected days.
- Enhanced File Upload functionality with the addition of HideFileView and Append capabilities.
- Fixed issues in Bit Infinite Scroll.
- Added color options to BitNavPanel and BitSearchBox components.
- Improved the BitImage component.
- Removed the BitSpinButton component after enhancements were made to BitNumberField.
- Integrated BitNav features into BitNavPanel like Item Template
- Added BitPageVisibility to detect page visibility changes, enabling the Carousel to pause when the application is minimized.
- Resolved issues with IconOnly and IconUrl in BitButton when used with Href.
bit Boilerplate
- Implemented FIDO2 / WebAuthN across all clients, enabling login with FaceId and Fingerprint.
- Added a Clear Cache button to the Diagnostic Modal.
- Transform all appsettings*.json for all projects (Shared, Client.Core etc) during CD Pipeline execution.
- Relocated settings related to pre-rendering and Blazor mode from the
Client.Web
to the server. - Users registering via social sign-in are now marked as confirmed, even without providing an email or phone number.
- Switched to SymmetricSecurityKey for generating JWT Tokens, replacing the use of PFX.
bit Bswup
Introduced a preRenderMode setting to bswup, allowing flexible configuration of your web application based on the following scenarios:
self.prerenderMode = 'none'; // Demo: https://adminpanel.bitplatform.dev/ (No pre-rendering + offline support)
self.prerenderMode = 'always'; // Demo: https://sales.bitplatform.dev/ (Always show pre-render, no offline support)
self.prerenderMode = 'initial'; // Demo: https://todo.bitplatform.dev/ (Pre-render on first site visit + offline support)
bit Toolings
- Added automatic warnings for the use of non-async methods in EF-Core.
- Improved the performance of the SetParametersAsyncSourceGenerator output source and fixed related issues.
- Introducing bit BlazorES2019
Full Changelog: v-9.5.1...v-9.6.0
v-9.5.1
What's Changed
bit BlazorUI
- Reset callouts opacity after closing in responsive mode (#10039) by @msynk in #10041
- Add IconNavUrl parameter to BitNavPanel (#10042) by @msynk in #10047
- Add BitMediaQuery component (#10037) by @msynk in #10044
- Fix issues of persist feature of BlazorUI theme (#10059) by @msynk in #10063
- Add ReadOnly parameter implementation to BitTimePicker (#9977) by @Cyrus-Sushiant in #10071
bit Boilerplate
- Fix new layout issues in Boilerplate (#10038) by @msynk in #10040
- Fix concurrent social sign-in issue in Boilerplate (#10036) by @ysmoradi in #10052
- Add Eruda devtools to Boilerplate (#10051) by @msynk in #10053
- Lazy load System.Private.Xml.wasm in Boilerplate (#10075) by @ysmoradi in #10076
- Cancel current cancellation token source on AppComponentBase's disposal in Boilerplate (#10077) by @ysmoradi in #10078
- Improve Boilerplate logging (#10079) by @ysmoradi in #10080
- maintain return-url during email confirmation re-send in Boilerplate (#10083) by @ysmoradi in #10084
bit Besql
- Lazy load System.Private.Xml.wasm in bit Besql (#10073) by @ysmoradi in #10074
- fix bit Besql issue with IL Linker (#10068) by @ysmoradi in #10069
bit Butil
Full Changelog: v-9.5.0...v-9.5.1
v-9.5.0
We are excited to announce a new stable release with the following enhancements:
infra
- Applied
IsAotCompatible
to Libraries
To improve compatibility,IsAotCompatible
has been applied to libraries.
bit Boilerplate
-
Improved Layout Transition for Authenticated Users
Since cached pre-rendered pages in CDN Edge or ASP.NET Core Output Cache are user-agnostic, they do not contain user-specific information. To ensure smooth transitions from the anonymous layout to the authenticated layout, visual differences between the two states have been minimized. #10024 -
Configurable Output Caching
Added the ability to enable or disable ASP.NET Core Output Cache and CDN Edge Cache. -
Automatic URI Escaping
Uri.EscapeData
is now automatically applied to route values and query strings. -
In-Memory Cache for HTTP Client
Introduced an in-memory cache for the HTTP client to enhance performance in Blazor Hybrid, which lacks a default HTTP cache. -
Enhanced Server-Side Logging
Improved logging on the server side for better debugging and diagnostics. -
Extended Error Reporting to Clients
Now supports sending additional error details to the client. -
Cascading Parameters for Modals
Modals can now access cascading parameters such as theme and direction. -
Faster Startup for Windows Version
Optimized initialization to improve startup speed on Windows. -
Better Server Connection Error Handling
Improved detection and handling of server connection issues.
bit BlazorUI
-
Added
ReadOnly
to More Components
Additional components now support a read-only mode. -
Added Required Asterisk to More Components
Components that require user input now display a required asterisk. -
Enhanced File Uploader
Added Append functionality to the File Uploader component. -
User-Selectable Theme Persistence
The selected theme is now stored and persists across sessions. -
Memory Leak Fixes
Resolved memory leaks and improved dispose handling for multiple components
Thank you for your continued support! Enjoy the new features and improvements.
What's Changed
infra
bit Boilerplate
- Update layout to reduce UI shift while prerendering in Boilerplate (#10024) by @msynk in #10025
- add configuration for response caching of Boilerplate (#9881) by @ysmoradi in #9882
- Refactor Boilerplate project template url escaping (#9869) by @ysmoradi in #9874
- Use Uri.EscapeDataString instead of HttpUtility.UrlEncode in Boilerplate (#9868) by @ysmoradi in #9875
- Refactor Boilerplate sales module's product page response cache purge (#9870) by @ysmoradi in #9876
- Remove
--windows
parameter from Boilerplate docs in platform website (#9866) by @ysmoradi in #9873 - Improve msbuild configuration in Boilerplate (#9852) by @ysmoradi in #9853
- Improve return-url implementation in Boilerplate (#9854) by @ysmoradi in #9856
- Remove invalid entries from Boilerplate's compilerconfig.json (#9899) by @ysmoradi in #9902
- Limit Boilerplate diag logger's in memory entries to 1,000 (#9898) by @ysmoradi in #9903
- Add in-memory caching delegating handler to Boilerplate (#9897) by @ysmoradi in #9900
- Add share access token feature to Boilerplate (#9909) by @ysmoradi in #9910
- Improve Boilerplate memory management (#9911) by @ysmoradi in #9912
- Add product short id to Boilerplate's sales module (#9929) by @ysmoradi in #9930
- Enrich exceptions logs in Boilerplate server exception handler (#9933) by @ysmoradi in #9934
- fix social-signin error in signup page of Boilerplate (#9941) by @sammirdubey in #9942
- Move up BitModalContainer in MainLayout for modals to have access to cascading parameters in Boilerplate (#9944) by @ysmoradi in #9951
- Enhance app insights integration in Boilerplate (#9945) by @ysmoradi in #9950
- Fix race conditions for simultaneous refresh token requests in Boilerplate (#9946) by @ysmoradi in #9949
- Improve CurrentCancellationToken handling in Boilerplate AppComponentBase (#9947) by @ysmoradi in #9948
- Improve mechanism to start Blazor in windows apps (#9961) by @ysmoradi in #9962
- Fix BitSnackBar NRE in Boilerplate (#9963) by @ysmoradi in #9964
- Refactor Boilerplate http client pipeline (#9966) by @ysmoradi in #9967
- Add missing ServerConnectionException detection checks in Boilerplate (#9985) by @ysmoradi in #9987
- Add more app insights load guard in Boilerplate (#9986) by @ysmoradi in #9988
- Fix invalid dotnet new template configuration in Boilerplate windows project (#9989) by @ysmoradi in #9990
- Improve Boilerplate diagnostic utilities (#10001) by @ysmoradi in #10009
- Correct render order of the common components in Boilerplate (#10011) by @msynk in #10012
- Improve http response exception handling in Boilerplate (#10014) by @ysmoradi in #10015
- Fix sign-in button's return-url issue in Boilerplate (#10022) by @ysmoradi in #10023
- Make Diagnostic controller work with anonymous sessions in Boilerplate (#10020) by @ysmoradi in #10021
bit BlazorUI
- Add ReadOnly parameter implementation to BitCircularTimePicker (#9978) by @Cyrus-Sushiant in #9980
- Show missing required asterisk in BitDatePicker's label (#9862) by @Cyrus-Sushiant in #9880
- Show missing required asterisk in BitDateRangePicker's label (#9888) by @Cyrus-Sushiant in #9889
- Show missing required asterisk in BitCircularTimePicker's label (#9890) by @Cyrus-Sushiant in #9892
- Add Append parameter to BitFileUpload component (#1562) by @Cyrus-Sushiant in #9887
- Add persist feature to BitTheme (#9707) by @msynk in #9885
- Show missing required asterisk in BitTimePicker's label (#9893) by @Cyrus-Sushiant in #9894
- Fix disposed timer issue in BitCarousel component (#9877) by @msynk in #9878
- Add IconUrl parameter to BitButton component (#9863) by @msynk in #9864
- Ignore RenderingCancelledException in render page function of BitPdfReader (#9850) by @msynk in #9908
- Add PersistScroll parameter to BitAppShell component (#9913) by @msynk in #9915
- Tune persist scroll feature of BitAppShell (#9925) by @msynk in #9926
- Improve disposable implementation in BlazorUI components (#9919) by @msynk in #9924
- Fix issues of timer utilization in BitCarousel (#9952) by @msynk in #9954
- Improve js & disposing implementation of BitCircularTimePicker (#9953) by @msynk in #9956
- Improve behavior of PersistScroll feature of BitAppShell (#9939) by @msynk in #9940
- Fix BitSnackbar container issue preventing user interaction (#9965) by @msynk in #9968
- Correct OnDismiss event calling in BitModal component (#10016) by @msynk in #10017
- Add darkTheme and lightTheme to init options of BitTheme js api (#10026) by @msynk in #10027
- Fix IconOnly issue in anchor mode of BitActionButton (#10030) by @msynk in #10031
bit SourceGenerators
v-9.4.1
We are excited to announce a new hotfix release mainly focusing on sales module in Boilerplate:
Full Changelog: v-9.4.0...v-9.4.1
bit Boilerplate
- Add missing Sales condition to ProductDto in Boilerplate (#9831) by @msynk in #9835
- Add sales entry to showcases section in repo's main readme (#9837) by @msynk in #9838
- Improve Boilerplate todo sample (#9840) by @ysmoradi in #9841
bit BlazorUI
Full Changelog: v-9.4.0...v-9.4.1