No. One of the things that we've recently got in the framework that the team has been working on is the form elements and our validation systems. We have a new validation system that is now expanded and it's been added as an available inline provider, as we call them, that allows you to not only implement any type of component or element as a validatable item to an extent, but we've also added new functionality for how you can perform validation, including asynchronous calls in addition to the already existing version two functionality that's available today.
This validation system is built into the new form components in addition to being available inline, as displayed here on the right, where we can now take something that was previously kind of hard coded into inputs and now is something that is flexible and can be used in multiple places. We've also worked a lot on improving the style diversity of input components with a new concept that is in material design called density. I'll talk a little bit more about that later.
In addition to a lot of these new features and functionalities, we still have ported over all of the existing version two styling. That's in addition to the new available options for density that we've created. One of the cool things that we've recently implemented were an animation positioning system for how our menus and our dialogues are what we typically call detachable components, how those operate. And one of the new things that we have that is applied to our system is the way that menus and dialogues animate whenever their activator is clicked is a transform that is based upon the activator's location. So as you can see in the animation here, whenever we open up the dialogue, as opposed to it being an element that just animates from the center of the screen, we're actually now transforming these detachable elements from their original activator location to really kind of improve the visual feel of the actual functionality, but also to improve the performance and how smooth it is whenever you're working with these components so that there is crisp animation, there's no jitteriness, and this is one of my more favorite parts of the new version with all of the way that menus as well work and how they position on the screen. We have a lot more functionality that allows the user to make some really nice aesthetic designs and decisions within their application and just giving the user more options overall.
We have some normalized concepts that I'd like to call semantic customization options that we have began to kind of normalize or pull together multiple different design aspects within beautify and try to put them under a particular category or similar options between multiple components. So that when you're working across the framework, you'll have different components that you're working with, but they'll still be based upon the same kind of interface that you're working with, with multiple different components. And kind of what I mean by that is we have a new concept called variants and what this is, it's a way for us to take some of our mutually design exclusive properties and functionality within version two and kind of put it behind a naming convention so that we can reuse this throughout and actually expand the functionality that is used or available, excuse me, for multiple different components.
An example being the five available that exist primarily in card-based components are contained text, text outline and plane. And in these different design styles are represented in version two, but they're not represented behind any specific naming convention. So what we've kind of done is to homogenize this functionality. We've made it so that it is reusable throughout any card S component alerts. Sheets, banners, list items that give you some additional control over the, not only the, uh, the visual aspect of the component, but, uh, you know, kind of, I stated before, homogenizing making this similar throughout multiple different implementations so that we can, uh, have a similar and same functionality for multiple components that didn't even have the ability to implement these styles in version two.
One of the other things that we have implemented conceptually is, uh, the density from material design and what density is, is a, uh, declaration of how high or vertically, how much a component takes up space-wise whereas size is it modifies components, padding, modifies font size and, and general takes up potentially a larger space on X axis, whereas density, we're just kind of reducing the height. So what we've done here is we've, we've added the ability to combine multiple different aspects of sizing that's available in the framework version two for right now, we have, you know, regular sizing for extra small, small, default, large, extra large. With the introduction of density for version three, we've taken the, some components that you may have worked with that had a, a dense property. It's now been kind of split into two, which those are now compact and comfortable. And these are essentially iterations of a certain pixels, four pixels to be exact, that reduces in scales so that a button or an input will maintain the same visual look. However, it will take up physically less vertical space. And then for components that support both size and density, these actually work together. So you can do things such as having an extra large compact button. If you so choose. And what this does is it gives a lot more options for the user to be able to build their application so that you don't have to have such blocky design or something that is, it takes up a lot of space on the page.
Comments