Releases: shesha-io/shesha-framework
Releases · shesha-io/shesha-framework
[email protected]
Release Notes
💪 Enhancements
- TextField and Text Area Components: Added a
spell check
property, which currently works hand-in-hand with the browser's spell check setting, requiring the browser's spell check feature to be active as well. - DateField Component: Added a
disabled time mode
property to control which time values are enabled or disabled. - Entity Reference Component: Added
Icon and Text
as new display type options.
[email protected]
Release Notes
🚀 What's New in Shesha
- Chevron Component
- The new chevron (›) arrow-shaped indicator guides users through navigation and shows clickable areas in an application.
- It contains cool features like Customizable Items, Customizable Styles, and Configured Actions.
- Adding a Chevron Component is as simply as adding any other component to your form.
Chevron_Component.mp4
- Kanban Component
- Kanban board visually organizes tasks into columns like 'To Do,' 'In Progress,' and 'Done,' allowing teams to track project status at a glance.
- It contains Drag and Drop functionalities, Customizable Columns and Cards, Collapsible Cards, and Customizable Styles.
Kanban_Component.mp4
- Chart Component
- With the new chart component, users can now create dynamic chart visualizations from entry data or API endpoints.
💪 Enhancements
-
Form Edit Mode
- Edit Mode has been revamped with an entirely new UI and a more streamlined experience.
- The Edit Mode toggle has been consolidated into a single switch, simplifying the user interface and reducing clutter.
- Smooth animations now accompany the Edit Mode UI, providing functionality only when needed.
- To exit the new Edit Mode UI, you can either click on the close icon next to the form name or toggle off the Edit Mode switch.
- The showinfo option has been removed from the dropdown for a cleaner setup, and this change is evident in the screenshot below.
-
Component Responsiveness
- You can now separate your size according to screen size, for more responsive components based on the size of screen.
- Responsive styling is available on Desktop, Tablet and Mobile screens.
- Components can adapt dynamically to different device options, with customizable size, margins, height and width, and even border styles to ensure they appear correctly on any screen size.
- Startup Optimization: Improved solution startup time by bypassing the bootstrapper process for unchanged DLLs.
- Startup Optimization: Improved solution startup time by optimizing the
PermissionObjectBootstrapper
process for faster performance. - Improved Text Components: Exposed value variable in
Textfield
andText Area
components'onChange
property. - CRUD API Swagger Updates: Refined documentation for CRUD endpoints to prevent readonly properties from appearing in Create and Update operations.
- Container Component Enhancement: Added shadow control for better UI customization.
- Enhanced DynamicDto Mapping Methods
🐞 Bug Fixes
- Subform Data Update Issue: Resolved issue where subform didn’t update correctly without clearing selected values.
- Dialog Error: Fixed error when re-rendering dialogs after clearing dialog arguments.
- Theme Color Transition: Corrected initial display to immediately reflect the primary theme color. (Note: Adding app/app-provider.tsx at the project level is required for the loader line to inherit the primary system color.)
- Inline Editing in DataTable: Addressed issue preventing inline editing from displaying values within subforms.
- Dropdown Width: Removed hardcoded 100% width from dropdown component for flexible styling.
Starter Template Update
- Login Page Update: Updated login page to utilize configurable forms for customization.
- Organization Naming Constraint: Prevented users from setting "Shesha" as the organization name in the starter project creator page.
- Form Template Removal: Removed GUID form template from the starter project database.
[email protected]
Release Notes
Enhancement
Modal dialog renderer #2254.
Bug Fixes
- Fixed JSON serialization: Resolved an issue with JsonUserType serialization.
- Elmah log file fix: Fixed an issue with Elmah logging.
- Subform data refresh: Addressed an issue where the subform did not update when data was changed without clearing the selected values #2256.
[email protected]
Release Notes
Bug Fixes
- Adding await UnitOfWorkManager.Current.SaveChangesAsync() to commit inserts
[email protected]
Release Notes
Enhancements
- Ehanced System Login Restriction Access:
- If no specific frontends are specified, the user will, by default, have access to all frontend applications.
- Login Failure for Unauthorized Frontends: If a user is not authorized for a particular frontend, the login process will fail.
- Restricted Frontend Access: When frontend access is restricted, the user can only log in to the specific frontends for which they have permissions.
- Added a navigator-API
Bug Fixes
globalState
Not Rerendering Automatically: Fixed an issue where globalState did not rerender automatically and required a manual action to refresh.- Side Menu Hard Reload: Addressed an issue where the side menu caused a hard reload when a selected menu item rendered the Shesha setting forms.
- Entity Picker Error on Nested Property: Resolved an issue where configuring a display property with a nested property in the Entity Picker caused an error on the getAll endpoint during form rendering.
[email protected]
Release Notes
Enhancements
- Ehanced System Login Restriction Access:
- If no specific frontends are specified, the user will, by default, have access to all frontend applications.
- Login Failure for Unauthorized Frontends: If a user is not authorized for a particular frontend, the login process will fail.
- Restricted Frontend Access: When frontend access is restricted, the user can only log in to the specific frontends for which they have permissions.
Bug Fixes
globalState
Not Rerendering Automatically: Fixed an issue where globalState did not rerender automatically and required a manual action to refresh.- Side Menu Hard Reload: Addressed an issue where the side menu caused a hard reload when a selected menu item rendered the Shesha setting forms.
- Entity Picker Error on Nested Property: Resolved an issue where configuring a display property with a nested property in the Entity Picker caused an error on the getAll endpoint during form rendering.
[email protected]
Release Notes
Enhancements
- Ehanced Form Settings: Introduced configurable form lifecycle management, providing more flexibility in form handling.
- Appearance: Contains all settings related to form view (layout, size etc).
- Data: Contains settings related to data processing and form lifecylce.
- Security: Security related settings.
- Enhanced App Settings Page: Expanded the App Settings page to manage front-end specific settings in addition to general settings, including Default URL, Theme, and Main Menu configurations.
- Default URL: This is the url the user should be redirected to if the user is not authenticated and does not specify a specific page.
- Main Menu Settings: Here you can configure the sidebar menu items by adjusting their settings and ordering.
- Theme Settings: Here you customise the theme color of the application.
- Enhanced Button Component: Added additional styling properties to the Button Component for improved customization.
- Exposed getAnonymousForms Endpoint: Made the getAnonymousForms endpoint accessible for easier integration.
- Improved JavaScript Settings Component: Updated the JS settings component for better performance and user experience.
- Configurable User Profile: Allowed additional configurations to be configured below the user logged information.
- Added
addDelayedUpdateData
variable which is required for files when using a script method. - Style Section Hidden in Table: The style section is now hidden for Textfield and Autocomplete components when rendered within a table.
- Font Weight on Table Column Names: Increased the font weight to 600 for table column names to enhance visibility and readability.
- Reset Wizard State Action: Exposed an action on Wizard actions that allows resetting the wizard state.
Bug Fixes
- Component Label Issue: Fixed an issue where components (Address, Entity Reference, Subform, ChildEntitiesTag Group) did not append the label by default when a property name was selected.
- Base64 Image Rendering: Resolved a problem with Base64 images not rendering in the Image component and container background property.
- CRUD Operations Column Expansion: Corrected the unexpected expansion of CRUD operations columns when using the toogle columns selector option.
- Table View Component Issue: Fixed the "add item" modal in the newly created Table view component, which was not closeable by default.
- Permission Configurations Import: Addressed a bug causing the application to break when importing permission configurations with ConfigMigrations.
- setFormData Initialization: Resolved an issue where setFormData used on Initialization did not append values to the specified field in forms.
- Backend Endpoint Management: Fixed the issue where the backend did not properly remove or reinstate endpoints when disabled or enabled.
- Duplicate Records from Button Clicks: Fixed a bug causing duplicate records due to multiple clicks on the default, custom buttons and datalist during network delays.
- Notes Component Overflow Issue: Fixed an issue where clicking 'More' on long notes caused them to overlap outside the line section on the Notes component.
[email protected]
Release Notes
Enhancements
- Configurable Login Page: The login page has been converted to a configurable form, enhancing flexibility and customization options for user authentication.
- Image Background Support: Added support for rendering an image background on the container, allowing for more customizable and visually appealing designs.
- Additional Styling Properties: Exposed additional styling properties on
autocomplete
,image
,textfield
, andcontainer
components. - Permission Check Enhancements: Improved the
user.hasPermissionAsync
API to allow checking for permissions scoped by permissionnedEntityId, providing more granular control over permission checks. - Side Menu Update: Updated the
Visibility
property on the side menu to theHidden
property, improving clarity and functionality. - User-Specific Settings: Added APIs to store user-specific settings and preferences, enhancing personalization options.
Bug Fixes
- SubForm Context Restriction: Restricted access to contexts for JavaScript code in components inside SubForms, enhancing security and data integrity.
- Wizard Validation Extension: Extended wizard validations to apply to subforms rendered within the wizard component, ensuring comprehensive validation coverage.
- Entity Configurations Formatting: Fixed an issue where formatting on the Entity Configurations was overwriting the component formatting on a DataTable, ensuring consistent formatting.
- React Error Resolution: Resolved "Minified React error #185" thrown when rendering Datalist with form sourceType in DataTable, improving stability and user experience.
- Side Menu Behavior: Addressed an issue where the side menu was unintentionally collapsing and expanding on page load, ensuring consistent navigation behavior.
- Permission-based Filter Access: Ensured that users without appropriate permissions cannot access filters that are assigned permissions, maintaining proper access control and security.
- Action Refresh Table: Fixed an issue where the refresh table action fails when used on custom buttons.
- Form Refresh Action: Resolved an error that occurred when the form:refresh action was used on a stand-alone form/table
[email protected]
Release Notes
Enhancements
- Added an access property on form settings to support:
Anonymous
,Any authenticated
, andRequires permissions
values. This allows configurators to specify required access at a view level. - Required permissions of
Navigate to
menu items now automatically inherit from the required permissions of the targeted view. Currently supports theform
navigation option. - Provided a helper function on
SheshaAppServiceBase
to performMapToDynamicDtoListAsync
. - Cleaned up the logon and OTP tables in the starter template database.
- Added an advanced filter component with a badge to indicate that filtering has been applied.
- Removed AppService or custom endpoints from the backend when
access
is set todisabled
.
Bug Fixes
- Fixed an issue where the autocomplete custom query parameter was not accepting dynamically defined values.
- Removed dot in
Select All Rows
cell. - Fixed a bug where updated query parameter values were not saved in action configurations.
- Resolved an issue preventing configuration of a custom create URL without enabling
Can Edit Inline
in DataTable configuration. - Fixed an issue where the
RichTextEditor
component displayed the value on top of the placeholder text when rendered in an edit dialog. - Fixed the
table view selector
component to save updated changes. - Ensured the navigation link on hover appears only on action configurations set to navigate.
- Removed the default icon if not specified in the side menu configuration.
- Fixed an issue where the API actual access value was not updated until a refresh was performed.
Configuration Changes
- Updated forgot password to have access value.
UX Changes
- CSS and layout improvements of the forms designer.
- Cleaned up Permissioned Objects and Entity Configuration UI.
Breaking Changes
- Consolidated security-related settings into a single form. A backend update is also required.
[email protected]
Release Notes
Enhancements
- Enhanced Image component to support additional image sources.
- 'Lightning' button is now selected by default upon binding a property.
- API security can now be configured.
- Implemented Icon Picker component styling.
- Hid irrelevant action options in the side menu.
- FormApi migration:
- Migrated some form methods and variables into FormApi:
setFormData
->form.setFormData
(deprecated, useform.setFieldsValu
e orform.setFieldValue
in the future)formMode
->form.formMode
formData
->form.data
(used only foronNewRowInitialize
andonRowSave
custom events of DataTable and DataList)
- Migrated some form methods and variables into FormApi:
- Added
Disable item value
property of dropdown component.
Bug Fixes
- Style property not working correctly on the Reference List status
- Error displayed twice for 'This Field is Required' on Button Type property.
- Side menu performs a hard-reload when the configuration used is a navigation URL.
- Switching off the edit mode switch auto-redirects to the configurable header design.
- RichTextEditor fails to display data when rendered in an edit dialog.
- Dragging and dropping an item outside a group in the side menu results in item duplication.
- Custom endpoint returns an int instead of the referenceList item name.
- Properties set to 'audited' in the Entity Configuration are not logged in the audit log.
- Components do not adhere to the specified permissions.
- Ghost property appended when files are attached to a dataList.
- Fixed sideways scroller when the canvas is zoomed.
- DataList component does not display data in designer mode.
- Fixed GetAuditTrail endpoint parameters.
- If a form has tab and button components configured, a 415 error is displayed upon saving.