Stage workspace controls after bootstrap
This commit is contained in:
@@ -9,7 +9,9 @@ public partial class CharacterPanel
|
||||
{
|
||||
private void OpenCreateSkillModal(Guid? skillGroupId = null)
|
||||
{
|
||||
var selectedGroup = skillGroupId.HasValue ? SelectedCharacterSkillGroups.FirstOrDefault(group => group.Id == skillGroupId.Value) : null;
|
||||
var selectedGroup = skillGroupId.HasValue
|
||||
? SelectedCharacterSkillGroups.FirstOrDefault(group => group.Id == skillGroupId.Value)
|
||||
: null;
|
||||
|
||||
CreateSkillInitialModel = new()
|
||||
{
|
||||
@@ -176,7 +178,11 @@ public partial class CharacterPanel
|
||||
try
|
||||
{
|
||||
var selectedCharacterId = SelectedCharacterId!.Value;
|
||||
var createdGroup = await ApiClient.RequestAsync<SkillGroupSummary>("POST", $"/api/characters/{selectedCharacterId}/skill-groups", new CreateSkillGroupRequest(SkillGroupState.Model.Name.Trim(), SkillGroupState.Model.DiceRollDefinition.Trim(), SkillGroupState.Model.WildDice, SkillGroupState.Model.AllowFumble, SkillGroupState.Model.FumbleRange));
|
||||
var createdGroup = await ApiClient.RequestAsync<SkillGroupSummary>("POST",
|
||||
$"/api/characters/{selectedCharacterId}/skill-groups",
|
||||
new CreateSkillGroupRequest(SkillGroupState.Model.Name.Trim(),
|
||||
SkillGroupState.Model.DiceRollDefinition.Trim(), SkillGroupState.Model.WildDice,
|
||||
SkillGroupState.Model.AllowFumble, SkillGroupState.Model.FumbleRange));
|
||||
CloseSkillGroupModals();
|
||||
await SkillGroupCreated.InvokeAsync(createdGroup.Id);
|
||||
}
|
||||
@@ -230,7 +236,11 @@ public partial class CharacterPanel
|
||||
try
|
||||
{
|
||||
var editingSkillGroupId = EditingSkillGroupId!.Value;
|
||||
var updatedGroup = await ApiClient.RequestAsync<SkillGroupSummary>("PUT", $"/api/skill-groups/{editingSkillGroupId}", new UpdateSkillGroupRequest(SkillGroupState.Model.Name.Trim(), SkillGroupState.Model.DiceRollDefinition.Trim(), SkillGroupState.Model.WildDice, SkillGroupState.Model.AllowFumble, SkillGroupState.Model.FumbleRange));
|
||||
var updatedGroup = await ApiClient.RequestAsync<SkillGroupSummary>("PUT",
|
||||
$"/api/skill-groups/{editingSkillGroupId}",
|
||||
new UpdateSkillGroupRequest(SkillGroupState.Model.Name.Trim(),
|
||||
SkillGroupState.Model.DiceRollDefinition.Trim(), SkillGroupState.Model.WildDice,
|
||||
SkillGroupState.Model.AllowFumble, SkillGroupState.Model.FumbleRange));
|
||||
CloseSkillGroupModals();
|
||||
await SkillGroupUpdated.InvokeAsync(updatedGroup.Id);
|
||||
}
|
||||
@@ -276,7 +286,8 @@ public partial class CharacterPanel
|
||||
return true;
|
||||
|
||||
var filter = SkillFilterText.Trim();
|
||||
return skill.Name.Contains(filter, StringComparison.OrdinalIgnoreCase) || skill.DiceRollDefinition.Contains(filter, StringComparison.OrdinalIgnoreCase);
|
||||
return skill.Name.Contains(filter, StringComparison.OrdinalIgnoreCase) ||
|
||||
skill.DiceRollDefinition.Contains(filter, StringComparison.OrdinalIgnoreCase);
|
||||
}
|
||||
|
||||
private static string InitialsFor(string value)
|
||||
@@ -317,9 +328,13 @@ public partial class CharacterPanel
|
||||
|
||||
private bool IsD6Ruleset => RulesetFormHelpers.IsD6(SelectedCampaignRulesetId);
|
||||
private bool IsRolemasterRuleset => RulesetFormHelpers.IsRolemaster(SelectedCampaignRulesetId);
|
||||
private bool IsSkillGroupRolemasterOpenEnded => RulesetFormHelpers.IsRolemasterOpenEndedExpression(SkillGroupState.Model.DiceRollDefinition);
|
||||
|
||||
private string SkillGroupExpressionHelpText => IsRolemasterRuleset ? $"{RulesetFormHelpers.RolemasterExampleText()}. Negative modifiers are allowed." : "Enter the default expression for skills created in this group.";
|
||||
private bool IsSkillGroupRolemasterOpenEnded =>
|
||||
RulesetFormHelpers.IsRolemasterOpenEndedExpression(SkillGroupState.Model.DiceRollDefinition);
|
||||
|
||||
private string SkillGroupExpressionHelpText => IsRolemasterRuleset
|
||||
? $"{RulesetFormHelpers.RolemasterExampleText()}. Negative modifiers are allowed."
|
||||
: "Enter the default expression for skills created in this group.";
|
||||
|
||||
private bool ShowCreateSkillModal { get; set; }
|
||||
private bool ShowEditSkillModal { get; set; }
|
||||
@@ -335,78 +350,55 @@ public partial class CharacterPanel
|
||||
private bool IsSubmittingSkillGroup { get; set; }
|
||||
private string SkillFilterText { get; set; } = string.Empty;
|
||||
|
||||
[Inject]
|
||||
private RpgRollerApiClient ApiClient { get; set; } = null!;
|
||||
[Inject] private RpgRollerApiClient ApiClient { get; set; } = null!;
|
||||
|
||||
[Parameter]
|
||||
public bool IsCampaignDataLoading { get; set; }
|
||||
[Parameter] public bool IsCampaignDataLoading { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public CampaignRoster? SelectedCampaign { get; set; }
|
||||
[Parameter] public CampaignRoster? SelectedCampaign { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public Guid? SelectedCharacterId { get; set; }
|
||||
[Parameter] public Guid? SelectedCharacterId { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public CharacterSummary? SelectedCharacter { get; set; }
|
||||
[Parameter] public CharacterSummary? SelectedCharacter { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public bool IsMutating { get; set; }
|
||||
[Parameter] public bool IsMutating { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public IReadOnlyList<CharacterSheetSkill> SelectedCharacterSkills { get; set; } = [];
|
||||
[Parameter] public IReadOnlyList<CharacterSheetSkill> SelectedCharacterSkills { get; set; } = [];
|
||||
|
||||
[Parameter]
|
||||
public IReadOnlyList<CharacterSheetSkillGroup> SelectedCharacterSkillGroups { get; set; } = [];
|
||||
[Parameter] public IReadOnlyList<CharacterSheetSkillGroup> SelectedCharacterSkillGroups { get; set; } = [];
|
||||
|
||||
[Parameter]
|
||||
public string SelectedCampaignRulesetId { get; set; } = string.Empty;
|
||||
[Parameter] public string SelectedCampaignRulesetId { get; set; } = string.Empty;
|
||||
|
||||
[Parameter]
|
||||
public string RollVisibility { get; set; } = "public";
|
||||
[Parameter] public string RollVisibility { get; set; } = "public";
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<string> RollVisibilityChanged { get; set; }
|
||||
[Parameter] public bool EnableInteractiveControls { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public Func<Guid, string> OwnerLabel { get; set; } = _ => string.Empty;
|
||||
[Parameter] public EventCallback<string> RollVisibilityChanged { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public Func<CharacterSheetSkill, string> SkillDefinitionLabel { get; set; } = _ => string.Empty;
|
||||
[Parameter] public Func<Guid, string> OwnerLabel { get; set; } = _ => string.Empty;
|
||||
|
||||
[Parameter]
|
||||
public Func<CharacterSummary, bool> CanEditCharacter { get; set; } = _ => false;
|
||||
[Parameter] public Func<CharacterSheetSkill, string> SkillDefinitionLabel { get; set; } = _ => string.Empty;
|
||||
|
||||
[Parameter]
|
||||
public Func<CharacterSheetSkill, bool> CanEditSkill { get; set; } = _ => false;
|
||||
[Parameter] public Func<CharacterSummary, bool> CanEditCharacter { get; set; } = _ => false;
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> CharacterSelected { get; set; }
|
||||
[Parameter] public Func<CharacterSheetSkill, bool> CanEditSkill { get; set; } = _ => false;
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<CharacterSummary> EditCharacterRequested { get; set; }
|
||||
[Parameter] public EventCallback<Guid> CharacterSelected { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillCreated { get; set; }
|
||||
[Parameter] public EventCallback<CharacterSummary> EditCharacterRequested { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillUpdated { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillCreated { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillGroupCreated { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillUpdated { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillGroupUpdated { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillGroupCreated { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillDeleted { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillGroupUpdated { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<Guid> SkillGroupDeleted { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillDeleted { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<string> ErrorOccurred { get; set; }
|
||||
[Parameter] public EventCallback<Guid> SkillGroupDeleted { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public EventCallback<CharacterSheetSkill> RollRequested { get; set; }
|
||||
[Parameter] public EventCallback<string> ErrorOccurred { get; set; }
|
||||
|
||||
[Parameter] public EventCallback<CharacterSheetSkill> RollRequested { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user