Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
<PdfViewer Class="mb-3"
Url="@($"{DemoStringConstants.StaticAssets_Docs_Path}/pdf_password_protected.pdf")"
Url="@($"../{DemoStringConstants.StaticAssets_Docs_Path}/pdf_password_protected.pdf")"
Password="12345" />
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@if (showPdfViewer)
{
<PdfViewer Class="mb-3" Url="@($"{DemoStringConstants.StaticAssets_Docs_Path}/pdf_password_protected.pdf")" PromptForPassword="true" />
<PdfViewer Class="mb-3" Url="@($"../{DemoStringConstants.StaticAssets_Docs_Path}/pdf_password_protected.pdf")" PromptForPassword="true" />
}
else
{
Expand Down
185 changes: 118 additions & 67 deletions blazorbootstrap/Components/Offcanvas/Offcanvas.razor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ public partial class Offcanvas : BlazorBootstrapComponentBase

private Type? childComponent;

private DotNetObjectReference<Offcanvas> objRef = default!;
private DotNetObjectReference<Offcanvas>? objRef;

private Dictionary<string, object> parameters = default!;
private Dictionary<string, object>? parameters;

private string title = default!;
private string? title;

#endregion

Expand Down Expand Up @@ -69,11 +69,15 @@ protected override async Task OnInitializedAsync()
/// <summary>
/// Hides an offcanvas.
/// </summary>
[AddedVersion("1.0.0")]
[Description("Hides an offcanvas.")]
public async Task HideAsync() => await JSRuntime.InvokeVoidAsync("window.blazorBootstrap.offcanvas.hide", Id);

/// <summary>
/// Shows an offcanvas.
/// </summary>
[AddedVersion("1.0.0")]
[Description("Shows an offcanvas.")]
public async Task ShowAsync() => await ShowAsync(null, null, null);

/// <summary>
Expand All @@ -82,6 +86,8 @@ protected override async Task OnInitializedAsync()
/// <typeparam name="T"></typeparam>
/// <param name="title"></param>
/// <param name="parameters"></param>
[AddedVersion("1.0.0")]
[Description("Opens a offcanvas. T is component.")]
public async Task ShowAsync<T>(string title, Dictionary<string, object>? parameters = null) => await ShowAsync(title, typeof(T), parameters);

private async Task ShowAsync(string? title, Type? type, Dictionary<string, object>? parameters)
Expand All @@ -107,163 +113,208 @@ private async Task ShowAsync(string? title, Type? type, Dictionary<string, objec

/// <summary>
/// Gets or sets the body CSS class.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the body CSS class.")]
[ParameterTypeName("string?")]
[Parameter]
public string BodyCssClass { get; set; } = default!;
public string? BodyCssClass { get; set; }

/// <summary>
/// Gets or sets the body template.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the body template.")]
[ParameterTypeName("RenderFragment?")]
[Parameter]
public RenderFragment BodyTemplate { get; set; } = default!;
public RenderFragment? BodyTemplate { get; set; }

/// <summary>
/// If <see langword="true" />, offcanvas closes when escape key is pressed.
/// <para>
/// Default value is <see langword="true"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is true.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(true)]
[Description("If <b>true</b>, offcanvas closes when escape key is pressed.")]
[Parameter]
public bool CloseOnEscape { get; set; } = true;

/// <summary>
/// Gets or sets the footer CSS class.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the footer CSS class.")]
[ParameterTypeName("string?")]
[Parameter]
public string FooterCssClass { get; set; } = default!;
public string? FooterCssClass { get; set; }

/// <summary>
/// Gets or sets the footer template.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the footer template.")]
[ParameterTypeName("RenderFragment?")]
[Parameter]
public RenderFragment FooterTemplate { get; set; } = default!;
public RenderFragment? FooterTemplate { get; set; }

/// <summary>
/// Gets or sets the header CSS class.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the header CSS class.")]
[ParameterTypeName("string?")]
[Parameter]
public string HeaderCssClass { get; set; } = default!;
public string? HeaderCssClass { get; set; }

/// <summary>
/// Gets or sets the header template.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the header template.")]
[ParameterTypeName("RenderFragment?")]
[Parameter]
public RenderFragment HeaderTemplate { get; set; } = default!;
public RenderFragment? HeaderTemplate { get; set; }

/// <summary>
/// Indicates whether body scrolling is allowed while offcanvas is open.
/// <para>
/// Default value is <see langword="false"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is false.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(false)]
[Description("Indicates whether body scrolling is allowed while offcanvas is open.")]
[Parameter]
public bool IsScrollable { get; set; }

/// <summary>
/// This event is fired when an offcanvas element has been hidden from the user (will wait for CSS transitions to
/// complete).
/// This event is fired when an offcanvas element has been hidden from the user (will wait for CSS transitions to complete).
/// </summary>
[AddedVersion("1.0.0")]
[Description("This event is fired when an offcanvas element has been hidden from the user (will wait for CSS transitions to complete).")]
[Parameter]
public EventCallback OnHidden { get; set; }

/// <summary>
/// This event is fired immediately when the hide method has been called.
/// </summary>
[AddedVersion("1.0.0")]
[Description("This event is fired immediately when the hide method has been called.")]
[Parameter]
public EventCallback OnHiding { get; set; }

/// <summary>
/// This event fires immediately when the show instance method is called.
/// </summary>
[AddedVersion("1.0.0")]
[Description("This event fires immediately when the show instance method is called.")]
[Parameter]
public EventCallback OnShowing { get; set; }

/// <summary>
/// This event is fired when an offcanvas element has been made visible to the user (will wait for CSS transitions to
/// complete).
/// This event is fired when an offcanvas element has been made visible to the user (will wait for CSS transitions to complete).
/// </summary>
[AddedVersion("1.0.0")]
[Description("This event is fired when an offcanvas element has been made visible to the user (will wait for CSS transitions to complete).")]
[Parameter]
public EventCallback OnShown { get; set; }

/// <summary>
/// Gets or sets the offcanvas placement.
/// </summary>
/// <remarks>
/// <para>
/// Default value is <see cref="Placement.End" />.
/// </remarks>
/// </para>
/// </summary>
[AddedVersion("1.0.0")]
[DefaultValue(Placement.End)]
[Description("Gets or sets the offcanvas placement.")]
[Parameter]
public Placement Placement { get; set; } = Placement.End;

/// <summary>
/// If <see langword="true" />, modal shows close button in the header.
/// <para>
/// Default value is <see langword="true"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is true.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(true)]
[Description("If <b>true</b>, modal shows close button in the header.")]
[Parameter]
public bool ShowCloseButton { get; set; } = true;

/// <summary>
/// Gets or sets the offcanvas size.
/// </summary>
/// <remarks>
/// <para>
/// Default value is <see cref="OffcanvasSize.Regular" />.
/// </remarks>
/// </para>
/// </summary>
[AddedVersion("1.0.0")]
[DefaultValue(OffcanvasSize.Regular)]
[Description("Gets or sets the offcanvas size.")]
[Parameter]
public OffcanvasSize Size { get; set; } = OffcanvasSize.Regular;

/// <summary>
/// Gets or sets the tab index.
/// </summary>
/// <remarks>
/// <para>
/// Default value is -1.
/// </remarks>
/// </para>
/// </summary>
[AddedVersion("1.0.0")]
[DefaultValue(-1)]
[Description("Gets or sets the tab index.")]
[Parameter]
public int TabIndex { get; set; } = -1;

/// <summary>
/// Gets or sets the offcanvas title.
/// <para>
/// Default value is <see langword="null"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is null.
/// </remarks>
[Parameter]
public string Title { get; set; } = default!;

[Obsolete("Use `UseStaticBackdrop` parameter.")]
/// <summary>
/// Indicates whether to apply a backdrop on body while offcanvas is open.
/// </summary>
/// <remarks>
/// Default value is true.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(null)]
[Description("Gets or sets the offcanvas title.")]
[ParameterTypeName("string?")]
[Parameter]
public bool UseBackdrop { get; set; } = true;
public string? Title { get; set; }

/// <summary>
/// When `UseStaticBackdrop` is set to true, the offcanvas will not close when clicking outside of it.
/// When `UseStaticBackdrop` is set to <see langword="true"/>, the offcanvas will not close when clicking outside of it.
/// <para>
/// Default value is <see langword="false"/>.
/// </para>
/// </summary>
/// <remarks>
/// Default value is false.
/// </remarks>
[AddedVersion("1.0.0")]
[DefaultValue(false)]
[Description("When `UseStaticBackdrop` is set to <b>true</b>, the offcanvas will not close when clicking outside of it.")]
[Parameter]
public bool UseStaticBackdrop { get; set; }

Expand Down
Loading
Loading