Megabit / Blazorise

Blazorise is a component library built on top of Blazor with support for CSS frameworks like Bootstrap, Tailwind, Bulma, AntDesign, and Material.

Home Page:https://blazorise.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blazorise 0.9 Roadmap

stsrki opened this issue · comments

This is a tracking ticket for the planing features in Blazorise 0.9

Starting from 0.8 to 0.9 the main plan was to clean the code and fix bugs with minimum changes to the architecture. For 0.9 and up to 1.0 the plan is to introduce more providers, add more components, with possibly some breaking changes. All of this is necessary to bring Blazorise to the stable 1.0 version. I will try to keep the 1.0 release scheduled accordingly to the official Blazor web-assembly release date.

Release cycle

The 0.9 is going to be worked on for a long time. so the plan is to publish it periodically to MyGet. Every major update to 0.9 will be published as a 0.9-preview(n+1). It will be kind of a night-build. This way the users will be able to test all features before the official release.

MyGet feed for NuGet v3: https://www.myget.org/F/blazorise/api/v3/index.json

Milestones

0.9

  • #163 Implement Ant Design provider
  • #394 Custom filtering for DataGrid
  • #367 File Upload Component
  • #366 Color Picker
  • #365 Time Picker
  • #364 Sliders
  • #363 Switchers
  • #358 Snackbar Customization for Error/Success/Info/Warning
  • #351 Breadcrumb enhancements
  • #305 Rename SelectEdit to Select
  • #284 Live data charts
  • #259 Tab enhancements
  • #4 Rename boolean attributes

0.9.1

TODO

Backlog

Feedback

I will keep this ticket unlocked to allow anyone to give feedback and to request possible features for 0.9. If the conversation grow too much I will open another issue.

Feature request: Resizeable columns (drag-to-resize) in DataGrid.

Great job for making Blazorise available! It is awesome to use!

@GitteryCoder Going on the list

commented

It's awesome component lib. But only one question.
This is blazor components? meens no JS needed!
THEN WHYYYYYYY????
<script src="_content/Blazorise/blazorise.js"></script>
<script src="_content/Blazorise.Bootstrap/blazorise.bootstrap.js"></script>
<script src="_content/Blazorise.Charts/blazorise.charts.js"></script>
((((((

Hi @gem81

Blazor doesn't mean there is not going to be java-script. Even Microsoft said it goes side-by-side. The main obstacle for java-script dependency is that web assembly still doesn't have access to the DOM. Hopefully that will change in the future, but until then this is what we have.

All of these tasks are already tracked through #618, so closing this one.

This is by far the most productive UI library I have ever seen.

Is there any more plans for theme? It looks fairly incomplete

@imtrobin there are always some work planed for the theme. Currently I'm doing some refactorings that will help me do the changes easier for later.

@WillianGruber is also doing some work on UI configuration for theming the app. I guess he's almost finished?

I'm waiting for release of #898 to finish refactoring a complete ThemeCustomizer.

Tickets about theming that would also be included/help design the ThemeCustomizer:
#894
#893
#887
#886
#870
#810
#777
#600
#585
#568
#567
#413

Also, if we could define page background color/gradient through theme would be nice, something like

body {
    background: -webkit-linear-gradient(left, #93B874, #C9DCB9); 
    background: -o-linear-gradient(right, #93B874, #C9DCB9);
    background: -moz-linear-gradient(right, #93B874, #C9DCB9); 
    background: linear-gradient(to right, #93B874, #C9DCB9); 
    background-color: #93B874; 
}

Why through theme? Because then Blazorise could start to have predefined themes, and a Dark Theme predefinition would be nice to users. Maybe 5-10 predefined themes could be delivered.

Well, back to the point. I imagine #898 will be release soon?

I like the idea for page bacground color. #898 will be in the next preview. And for other tickets maybe I can do them as part of 0.9.2

commented

Hi! How use contextCommand in DataGrid CommandTemplate, where ContextCommand have to include:

public class CommandContext<TItem> : CommandContext
   {
       public TItem Item { get; set; }
   }

   public class NewCommandContext : CommandContext
   {

   }

   public class EditCommandContext<TItem> : CommandContext<TItem>
   {

   }

   public class DeleteCommandContext<TItem> : CommandContext<TItem>
   {

   }

   public class ButtonRowContext<TItem>
   {
       public NewCommandContext NewCommand { get; set; }
       public EditCommandContext<TItem> EditCommand { get; set; }
       public DeleteCommandContext<TItem> DeleteCommand { get; set; }
       public CommandContext ClearFilterCommand { get; set; }
   }

Hello @AlexaBuff can you explain what you are trying to do?
You should have access to the item where applicable thought the provided command context. Meaning that on the button row or command column you can access it.

Please do take a look at our documents about the command context feature right here :
https://blazorise.com/docs/extensions/datagrid/#command-templates

Let us know if you still have doubts.

And here's also a print screen if that helps:
image

commented

Thank you for your answer.
How I can customization my CommandContext.cs? If I add to my project CommandContext.cs from Blazorise Demo for DataGrid, I am getting an error: InvalidCastException: [A]Microsoft.AspNetCore.Components.RenderFragment1[Blazorise.DataGrid.ButtonRowContext1[BlazorCRUD.Data.Employee]] cannot be cast to [B]Microsoft.AspNetCore.Components.RenderFragment1[Blazorise.DataGrid.ButtonRowContext1[BlazorCRUD.Data.Employee]]. Type A originates from 'Microsoft.AspNetCore.Components, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' in the context 'Default' at location 'C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App\5.0.7\Microsoft.AspNetCore.Components.dll'. Type B originates from 'Microsoft.AspNetCore.Components, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' in the context 'Default' at location 'C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App\5.0.7\Microsoft.AspNetCore.Components.dll'.

If I try to change CommandContext.cs, I have fail, because this class generate from metadata and it only for read. I get CommandContext.cs without:
public class CommandContext : CommandContext
{
public TItem Item { get; set; }
}
public class NewCommandContext : CommandContext
{
}
public class EditCommandContext : CommandContext
{
}
public class DeleteCommandContext : CommandContext
{
}
public class ButtonRowContext
{
public NewCommandContext NewCommand { get; set; }
public EditCommandContext EditCommand { get; set; }
public DeleteCommandContext DeleteCommand { get; set; }
public CommandContext ClearFilterCommand { get; set; }
}
Снимок экрана 2021-07-09 083805

Thank you, Blazorise is very interesting!

Hello again @AlexaBuff
CommandContext is internally created and handled by Blazorise, and is then "handled" to you on the appropriate places (CommandTemplates/ButtonRow), so you can trigger internal commands(Clicked) or access usefull information(LocalizationString/Item).
So you shouldn't be able to do what you're trying to do here, as there is no way for you to tell Blazorise to use a custom CommandContext that you provide.

But what's your use case? Maybe there's a way we can help you achieve what you want?

Also, if you think it helps, you can provide a sample repository so we can take a look at your concrete problem.

commented

I undestand you, thank you. I stated studing Blazorise few days ago. And one more quenstion. Are you planning customizing modal dialog (popup) in CUID? For example include scrolling in popup.