This release implemented UI model 2.0 to C#Bot which completely overhauls the current UI implementation. You will therefore need to be aware of the new method of building the UI of your application, as well as steps to migrate your existing applications to this version.
Pages exist as they did before; they are routable locations in your application and contain child components or html. Security is still configured from the security model. Placing objects onto the page, will put them stacked vertically and can be re-arranged.
There are currently two types of layouts; Horizontal and Vertical. These layouts are a way of grouping content and positioning items either down the page or across. Layouts can have any other UI elements nested inside of them, including other layouts. You can therefore use them to build out pages to display content side by side, going down the page, or a combination of these.
UI elements are the basic building blocks you will use to construct your pages in the new UI diagram, there are currently 4 categories of UI Elements.
These are basic HTML elements and include:
- Text (p tags)
- Heading (h1-h6 tags)
- List (Unordered)
- Link (a tags)
- Button (button tags)
The button element is unique because it will create a placeholder call-back function for developers to implement their custom logic. Out of the box, it will not perform any action.
- Text area
- Radio Button Group
These inputs use the React components which you would expect to find in a Codebots application. They come by default with model bindings on input, so you can perform any operations in response to the users actions.
Extensions are the same as the previous ‘Extension Tiles’ and include ‘Timelines’, ‘Forms’, and ‘Data table’. Adding this to your page and selecting an entity, will display the component for this extension in the target application.
Functionally the same as the previous ‘Custom Tiles’, they serve as protected regions for developers to add in any other UI elements or custom React components.
For a more detailed information please see our Introduction to the User Interface Article.
- Add protected region in Crud Service
- Removed duplicated User Service protected regions
While V2 is releasing with exciting features, it is not a requirement to upgrade. V1 will still be supported, though no new features will be added. We are therefore giving users the option of upgrading to the latest minor V1 and will continue to release hotfix patches as they are required. If you require a hotfix on one of these older versions, you can request one through the support section on the Platform. V1 will be actively maintained a year following the launch of version 2.0, we will drop active support 13/01/2022.
If you would like to upgrade to V2, please use the Migration path steps below.
Codebots will attempt to migrate your existing models across to the new version 2.0; however if you have custom changes in your target application, these will need to be ported across manually. If you do not have any custom code from UI model V1, then you can skip these steps.
The Primary difference between V1 and V2 is that there are no longer
Wrapping Tile components, the components themselves are now placed directly on the page. For example if you created a
HomePage, your UI model would call its components directly in
/src/Views/Pages/HomePage.tsx whereas previously you would have put custom code into
/src/Views/Tiles/HomePageTile.tsx. You can therefore move all the code from the previous ‘Wrapping Tile’, into its new location in the ‘Home Page’.