@using OrchardCore.Forms.Models
@model OrchardCore.DisplayManagement.Views.ShapeViewModel<ButtonPart>
@{
    var formElementPart = Model.Value.ContentItem.As<FormElementPart>();
    var formInputElementPart = Model.Value.ContentItem.As<FormInputElementPart>();
    var elementId = formElementPart.Id;
    var elementName = formInputElementPart.Name;
    var id = !string.IsNullOrEmpty(elementId) ? elementId : !string.IsNullOrEmpty(elementName) ? Html.GenerateIdFromName(elementName) : default(string);
}
<button
    class="block cursor-pointer rounded-md bg-amber-300 px-4 py-2 text-gray-800 hover:bg-amber-500 disabled:cursor-not-allowed disabled:bg-gray-400 disabled:text-gray-600"
    type="@Model.Value.Type"
    name="@elementName"
    id="@elementId">
    @Model.Value.Text
</button>