AI-Studio/app/MindWork AI Studio/Pages/Plugins.razor

71 lines
2.6 KiB
Plaintext

@using AIStudio.Tools.PluginSystem
@attribute [Route(Routes.PLUGINS)]
<div class="inner-scrolling-context">
<MudText Typo="Typo.h3" Class="mb-2">
Plugins
</MudText>
<PreviewExperimental ApplyInnerScrollingFix="true"/>
<InnerScrolling>
<MudTable Items="@PluginFactory.AvailablePlugins" Hover="@true" GroupBy="@this.groupConfig" Class="border-dashed border rounded-lg">
<ColGroup>
<col style="width: 2em;" />
<col/>
<col/>
<col style="width: 12em;"/>
</ColGroup>
<HeaderContent>
<MudTh colspan="2">Plugins</MudTh>
<MudTh>Actions</MudTh>
</HeaderContent>
<GroupHeaderTemplate>
<MudTh Class="mud-table-cell-custom-group" colspan="3">
@switch (context.Key)
{
case GROUP_ENABLED:
<MudText Typo="Typo.h6" Class="mb-2">
Enabled Plugins
</MudText>
break;
case GROUP_DISABLED:
<MudText Typo="Typo.h6" Class="mb-2">
Disabled Plugins
</MudText>
break;
case GROUP_INTERNAL:
<MudText Typo="Typo.h6" Class="mb-2">
Internal Plugins
</MudText>
break;
}
</MudTh>
</GroupHeaderTemplate>
<RowTemplate>
<MudTd>
<MudAvatar Size="Size.Medium" Class="align-content-stretch">
<div class="plugin-icon-container">
@((MarkupString)context.IconSVG)
</div>
</MudAvatar>
</MudTd>
<MudTd>
<MudStack>
<MudText Typo="Typo.h6">
@context.Name
</MudText>
<MudText Typo="Typo.body1">
@context.Description
</MudText>
</MudStack>
</MudTd>
<MudTd>
Actions...
</MudTd>
</RowTemplate>
</MudTable>
</InnerScrolling>
</div>