@using System.Text.Json
@using ArcaneLibs.Extensions
@using LibMatrix
@using LibMatrix.Helpers
Initial room state: |
@foreach (var (displayName, events) in new Dictionary>() {
{ "Important room state (before final access rules)", roomBuilder.ImportantState },
{ "Additional room state (after final access rules)", roomBuilder.InitialState },
}) {
@code
{
// private static readonly string[] ImplementedStates = { "m.room.avatar", "m.room.history_visibility", "m.room.guest_access", "m.room.server_acl" };
}
@* @displayName: @events.Count(x => !ImplementedStates.Contains(x.Type)) events *@
@displayName: @events.Count events
Remove all
Add new event
@if (events.Count > 1000) {
Warning: Too many initial state events! (more than 1000) - Please use the save/load feature in the state panel instead.
}
else {
int i = 0;
@foreach (var initialState in events) {
Event @(++i) (@GetRemoveButton(events, initialState))
@* *@
}
}
}
|
@code {
[Parameter]
public required RoomBuilder roomBuilder { get; set; }
[Parameter]
public required Action PageStateHasChanged { get; set; }
[Parameter]
public AuthenticatedHomeserverGeneric Homeserver { get; set; }
private RenderFragment GetRemoveButton(List events, StateEvent initialState) {
return @
Remove
;
}
}