@ -1,13 +0,0 @@ |
|||||
using System; |
|
||||
using System.Globalization; |
|
||||
using System.Runtime.CompilerServices; |
|
||||
using System.Threading.Tasks; |
|
||||
using Microsoft.Extensions.DependencyInjection; |
|
||||
|
|
||||
namespace Microsoft.AspNetCore.Components.WebAssembly.Hosting |
|
||||
{ |
|
||||
public static class AbpServerHostBuilderExtensions |
|
||||
{ |
|
||||
|
|
||||
} |
|
||||
} |
|
||||
@ -1,29 +0,0 @@ |
|||||
<Project Sdk="Microsoft.NET.Sdk.Razor"> |
|
||||
|
|
||||
<Import Project="..\..\..\configureawait.props" /> |
|
||||
<Import Project="..\..\..\common.props" /> |
|
||||
|
|
||||
<PropertyGroup> |
|
||||
<TargetFramework>net5.0</TargetFramework> |
|
||||
<AssemblyName>Volo.Abp.AspNetCore.Components.Server</AssemblyName> |
|
||||
<PackageId>Volo.Abp.AspNetCore.Components.Server</PackageId> |
|
||||
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;</AssetTargetFallback> |
|
||||
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute> |
|
||||
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute> |
|
||||
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute> |
|
||||
<RootNamespace /> |
|
||||
</PropertyGroup> |
|
||||
|
|
||||
<ItemGroup> |
|
||||
<ProjectReference Include="..\Volo.Abp.AspNetCore.Mvc.Client.Common\Volo.Abp.AspNetCore.Mvc.Client.Common.csproj" /> |
|
||||
<ProjectReference Include="..\Volo.Abp.UI\Volo.Abp.UI.csproj" /> |
|
||||
<ProjectReference Include="..\Volo.Abp.AspNetCore.Components\Volo.Abp.AspNetCore.Components.csproj" /> |
|
||||
</ItemGroup> |
|
||||
|
|
||||
<ItemGroup> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="$(MicrosoftPackageVersion)" /> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.Authorization" Version="$(MicrosoftPackageVersion)" /> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.2.0" /> |
|
||||
</ItemGroup> |
|
||||
|
|
||||
</Project> |
|
||||
@ -1,33 +0,0 @@ |
|||||
using System; |
|
||||
using System.Threading.Tasks; |
|
||||
using Microsoft.AspNetCore.Components; |
|
||||
using Microsoft.AspNetCore.Components.Routing; |
|
||||
using Volo.Abp.UI.Navigation; |
|
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic |
|
||||
{ |
|
||||
public partial class LoginDisplay : IDisposable |
|
||||
{ |
|
||||
[Inject] |
|
||||
protected IMenuManager MenuManager { get; set; } |
|
||||
|
|
||||
protected ApplicationMenu Menu { get; set; } |
|
||||
|
|
||||
protected override async Task OnInitializedAsync() |
|
||||
{ |
|
||||
Menu = await MenuManager.GetAsync(StandardMenus.User); |
|
||||
|
|
||||
Navigation.LocationChanged += OnLocationChanged; |
|
||||
} |
|
||||
|
|
||||
protected virtual void OnLocationChanged(object sender, LocationChangedEventArgs e) |
|
||||
{ |
|
||||
InvokeAsync(StateHasChanged); |
|
||||
} |
|
||||
|
|
||||
public void Dispose() |
|
||||
{ |
|
||||
Navigation.LocationChanged -= OnLocationChanged; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
@ -1,26 +0,0 @@ |
|||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Routing; |
|
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars; |
|
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.WebAssembly; |
|
||||
using Volo.Abp.Modularity; |
|
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.WebAssembly |
|
||||
{ |
|
||||
[DependsOn( |
|
||||
typeof(AbpAspNetCoreComponentsWebAssemblyThemingModule) |
|
||||
)] |
|
||||
public class AbpAspNetCoreComponentsWebAssemblyBasicThemeModule : AbpModule |
|
||||
{ |
|
||||
public override void ConfigureServices(ServiceConfigurationContext context) |
|
||||
{ |
|
||||
Configure<AbpRouterOptions>(options => |
|
||||
{ |
|
||||
options.AdditionalAssemblies.Add(typeof(AbpAspNetCoreComponentsWebAssemblyBasicThemeModule).Assembly); |
|
||||
}); |
|
||||
|
|
||||
Configure<AbpToolbarOptions>(options => |
|
||||
{ |
|
||||
options.Contributors.Add(new BasicThemeToolbarContributor()); |
|
||||
}); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
@ -1,20 +0,0 @@ |
|||||
using System.Threading.Tasks; |
|
||||
using Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic; |
|
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars; |
|
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.WebAssembly |
|
||||
{ |
|
||||
public class BasicThemeToolbarContributor : IToolbarContributor |
|
||||
{ |
|
||||
public Task ConfigureToolbarAsync(IToolbarConfigurationContext context) |
|
||||
{ |
|
||||
if (context.Toolbar.Name == StandardToolbars.Main) |
|
||||
{ |
|
||||
context.Toolbar.Items.Add(new ToolbarItem(typeof(LanguageSwitch))); |
|
||||
context.Toolbar.Items.Add(new ToolbarItem(typeof(LoginDisplay))); |
|
||||
} |
|
||||
|
|
||||
return Task.CompletedTask; |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
@ -1,3 +0,0 @@ |
|||||
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd"> |
|
||||
<ConfigureAwait ContinueOnCapturedContext="false" /> |
|
||||
</Weavers> |
|
||||
@ -1,7 +0,0 @@ |
|||||
@page "/authentication/{action}" |
|
||||
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication |
|
||||
<RemoteAuthenticatorView Action="@Action" /> |
|
||||
|
|
||||
@code{ |
|
||||
[Parameter] public string Action { get; set; } |
|
||||
} |
|
||||
@ -1,59 +0,0 @@ |
|||||
@namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic |
|
||||
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication |
|
||||
@using Volo.Abp.Users |
|
||||
@using Volo.Abp.MultiTenancy |
|
||||
@inject ICurrentUser CurrentUser |
|
||||
@inject ICurrentTenant CurrentTenant |
|
||||
@inject IJSRuntime JsRuntime |
|
||||
@inject NavigationManager Navigation |
|
||||
@inject SignOutSessionStateManager SignOutManager |
|
||||
<AuthorizeView> |
|
||||
<Authorized> |
|
||||
<Dropdown> |
|
||||
<DropdownToggle Color="Color.None"> |
|
||||
@if (CurrentTenant.Name != null) |
|
||||
{ |
|
||||
<span><i>@CurrentTenant.Name</i>\@CurrentUser.UserName</span> |
|
||||
} |
|
||||
else |
|
||||
{ |
|
||||
<span>@CurrentUser.UserName</span> |
|
||||
} |
|
||||
</DropdownToggle> |
|
||||
<DropdownMenu> |
|
||||
@if (Menu != null) |
|
||||
{ |
|
||||
@foreach (var menuItem in Menu.Items) |
|
||||
{ |
|
||||
<DropdownItem Clicked="@(() => NavigateToAsync(menuItem.Url, menuItem.Target))">@menuItem.DisplayName</DropdownItem> |
|
||||
} |
|
||||
} |
|
||||
<DropdownDivider /> |
|
||||
<DropdownItem Clicked="BeginSignOut">Logout</DropdownItem> |
|
||||
</DropdownMenu> |
|
||||
</Dropdown> |
|
||||
</Authorized> |
|
||||
<NotAuthorized> |
|
||||
<a class="nav-link" href="authentication/login">Log in</a> |
|
||||
</NotAuthorized> |
|
||||
</AuthorizeView> |
|
||||
@code{ |
|
||||
|
|
||||
private async Task NavigateToAsync(string uri, string target = null) |
|
||||
{ |
|
||||
if (target == "_blank") |
|
||||
{ |
|
||||
await JsRuntime.InvokeVoidAsync("open", uri, target); |
|
||||
} |
|
||||
else |
|
||||
{ |
|
||||
Navigation.NavigateTo(uri); |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
private async Task BeginSignOut() |
|
||||
{ |
|
||||
await SignOutManager.SetSignOutState(); |
|
||||
await NavigateToAsync("authentication/logout"); |
|
||||
} |
|
||||
} |
|
||||
@ -1,11 +0,0 @@ |
|||||
@using System.Net.Http |
|
||||
@using Microsoft.AspNetCore.Components.Authorization |
|
||||
@using Microsoft.AspNetCore.Components.Forms |
|
||||
@using Microsoft.AspNetCore.Components.Routing |
|
||||
@using Microsoft.AspNetCore.Components.Web |
|
||||
@using Microsoft.AspNetCore.Components.WebAssembly.Http |
|
||||
@using Microsoft.JSInterop |
|
||||
@using Blazorise |
|
||||
@using Blazorise.DataGrid |
|
||||
@using Volo.Abp.BlazoriseUI; |
|
||||
@using Volo.Abp.BlazoriseUI.Components; |
|
||||
@ -1,28 +0,0 @@ |
|||||
<Project Sdk="Microsoft.NET.Sdk.Razor"> |
|
||||
|
|
||||
<Import Project="..\..\..\configureawait.props" /> |
|
||||
<Import Project="..\..\..\common.props" /> |
|
||||
|
|
||||
<PropertyGroup> |
|
||||
<TargetFramework>net5.0</TargetFramework> |
|
||||
<AssemblyName>Volo.Abp.AspNetCore.Components.UI.BasicTheme.WebAssembly</AssemblyName> |
|
||||
<PackageId>Volo.Abp.AspNetCore.Components.UI.BasicTheme.WebAssembly</PackageId> |
|
||||
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;</AssetTargetFallback> |
|
||||
<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute> |
|
||||
<GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute> |
|
||||
<GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute> |
|
||||
<RootNamespace /> |
|
||||
</PropertyGroup> |
|
||||
|
|
||||
<ItemGroup> |
|
||||
<ProjectReference Include="..\Volo.Abp.AspNetCore.Components.UI.BasicTheme\Volo.Abp.AspNetCore.Components.UI.BasicTheme.csproj" /> |
|
||||
<ProjectReference Include="..\Volo.Abp.AspNetCore.Components.UI.Theming.WebAssembly\Volo.Abp.AspNetCore.Components.UI.Theming.WebAssembly.csproj" /> |
|
||||
</ItemGroup> |
|
||||
|
|
||||
<ItemGroup> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="$(MicrosoftPackageVersion)" /> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.Components.Authorization" Version="$(MicrosoftPackageVersion)" /> |
|
||||
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.2.0" /> |
|
||||
</ItemGroup> |
|
||||
|
|
||||
</Project> |
|
||||
@ -1,3 +0,0 @@ |
|||||
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd"> |
|
||||
<ConfigureAwait ContinueOnCapturedContext="false" /> |
|
||||
</Weavers> |
|
||||
@ -1,18 +0,0 @@ |
|||||
using Volo.Abp.BlazoriseUI; |
|
||||
using Volo.Abp.Http.Client.IdentityModel.WebAssembly; |
|
||||
using Volo.Abp.Modularity; |
|
||||
using Volo.Abp.UI.Navigation; |
|
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.WebAssembly |
|
||||
{ |
|
||||
[DependsOn( |
|
||||
typeof(AbpBlazoriseUIModule), |
|
||||
typeof(AbpHttpClientIdentityModelWebAssemblyModule), |
|
||||
typeof(AbpUiNavigationModule), |
|
||||
typeof(AbpAspNetCoreComponentsUiThemingModule) |
|
||||
)] |
|
||||
public class AbpAspNetCoreComponentsWebAssemblyThemingModule : AbpModule |
|
||||
{ |
|
||||
|
|
||||
} |
|
||||
} |
|
||||
@ -1,30 +0,0 @@ |
|||||
<?xml version="1.0" encoding="utf-8"?> |
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
|
||||
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
|
||||
<xs:element name="Weavers"> |
|
||||
<xs:complexType> |
|
||||
<xs:all> |
|
||||
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
|
||||
<xs:complexType> |
|
||||
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:all> |
|
||||
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:schema> |
|
||||
@ -1,15 +0,0 @@ |
|||||
<Project Sdk="Microsoft.NET.Sdk.Razor"> |
|
||||
|
|
||||
<Import Project="..\..\..\configureawait.props" /> |
|
||||
<Import Project="..\..\..\common.props" /> |
|
||||
|
|
||||
<PropertyGroup> |
|
||||
<TargetFramework>net5.0</TargetFramework> |
|
||||
</PropertyGroup> |
|
||||
|
|
||||
<ItemGroup> |
|
||||
<ProjectReference Include="..\Volo.Abp.AspNetCore.Components.UI.Theming\Volo.Abp.AspNetCore.Components.UI.Theming.csproj" /> |
|
||||
<ProjectReference Include="..\Volo.Abp.Http.Client.IdentityModel.WebAssembly\Volo.Abp.Http.Client.IdentityModel.WebAssembly.csproj" /> |
|
||||
</ItemGroup> |
|
||||
|
|
||||
</Project> |
|
||||
@ -1,3 +0,0 @@ |
|||||
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="FodyWeavers.xsd"> |
|
||||
<ConfigureAwait ContinueOnCapturedContext="false" /> |
|
||||
</Weavers> |
|
||||
@ -1,30 +0,0 @@ |
|||||
<?xml version="1.0" encoding="utf-8"?> |
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
|
||||
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
|
||||
<xs:element name="Weavers"> |
|
||||
<xs:complexType> |
|
||||
<xs:all> |
|
||||
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
|
||||
<xs:complexType> |
|
||||
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:all> |
|
||||
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:schema> |
|
||||
@ -1,30 +0,0 @@ |
|||||
<?xml version="1.0" encoding="utf-8"?> |
|
||||
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> |
|
||||
<!-- This file was generated by Fody. Manual changes to this file will be lost when your project is rebuilt. --> |
|
||||
<xs:element name="Weavers"> |
|
||||
<xs:complexType> |
|
||||
<xs:all> |
|
||||
<xs:element name="ConfigureAwait" minOccurs="0" maxOccurs="1"> |
|
||||
<xs:complexType> |
|
||||
<xs:attribute name="ContinueOnCapturedContext" type="xs:boolean" /> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:all> |
|
||||
<xs:attribute name="VerifyAssembly" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="VerifyIgnoreCodes" type="xs:string"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>A comma-separated list of error codes that can be safely ignored in assembly verification.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
<xs:attribute name="GenerateXsd" type="xs:boolean"> |
|
||||
<xs:annotation> |
|
||||
<xs:documentation>'false' to turn off automatic generation of the XML Schema file.</xs:documentation> |
|
||||
</xs:annotation> |
|
||||
</xs:attribute> |
|
||||
</xs:complexType> |
|
||||
</xs:element> |
|
||||
</xs:schema> |
|
||||
@ -1,185 +0,0 @@ |
|||||
var abp = abp || {}; |
|
||||
(function () { |
|
||||
abp.utils = abp.utils || {}; |
|
||||
|
|
||||
// DOM READY /////////////////////////////////////////////////////
|
|
||||
|
|
||||
abp.domReady = function (fn) { |
|
||||
if (document.readyState === "complete" || document.readyState === "interactive") { |
|
||||
setTimeout(fn, 1); |
|
||||
} else { |
|
||||
document.addEventListener("DOMContentLoaded", fn); |
|
||||
} |
|
||||
}; |
|
||||
|
|
||||
// COOKIES ///////////////////////////////////////////////////////
|
|
||||
|
|
||||
/** |
|
||||
* Sets a cookie value for given key. |
|
||||
* This is a simple implementation created to be used by ABP. |
|
||||
* Please use a complete cookie library if you need. |
|
||||
* @param {string} key |
|
||||
* @param {string} value |
|
||||
* @param {string} expireDate (optional). If not specified the cookie will expire at the end of session. |
|
||||
* @param {string} path (optional) |
|
||||
* @param {bool} secure (optional) |
|
||||
*/ |
|
||||
abp.utils.setCookieValue = function (key, value, expireDate, path, secure) { |
|
||||
var cookieValue = encodeURIComponent(key) + '='; |
|
||||
if (value) { |
|
||||
cookieValue = cookieValue + encodeURIComponent(value); |
|
||||
} |
|
||||
|
|
||||
if (expireDate) { |
|
||||
cookieValue = cookieValue + "; expires=" + expireDate; |
|
||||
} |
|
||||
|
|
||||
if (path) { |
|
||||
cookieValue = cookieValue + "; path=" + path; |
|
||||
} |
|
||||
|
|
||||
if (secure) { |
|
||||
cookieValue = cookieValue + "; secure"; |
|
||||
} |
|
||||
|
|
||||
document.cookie = cookieValue; |
|
||||
}; |
|
||||
|
|
||||
/** |
|
||||
* Gets a cookie with given key. |
|
||||
* This is a simple implementation created to be used by ABP. |
|
||||
* Please use a complete cookie library if you need. |
|
||||
* @param {string} key |
|
||||
* @returns {string} Cookie value or null |
|
||||
*/ |
|
||||
abp.utils.getCookieValue = function (key) { |
|
||||
var equalities = document.cookie.split('; '); |
|
||||
for (var i = 0; i < equalities.length; i++) { |
|
||||
if (!equalities[i]) { |
|
||||
continue; |
|
||||
} |
|
||||
|
|
||||
var splitted = equalities[i].split('='); |
|
||||
if (splitted.length != 2) { |
|
||||
continue; |
|
||||
} |
|
||||
|
|
||||
if (decodeURIComponent(splitted[0]) === key) { |
|
||||
return decodeURIComponent(splitted[1] || ''); |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
return null; |
|
||||
}; |
|
||||
|
|
||||
/** |
|
||||
* Deletes cookie for given key. |
|
||||
* This is a simple implementation created to be used by ABP. |
|
||||
* Please use a complete cookie library if you need. |
|
||||
* @param {string} key |
|
||||
* @param {string} path (optional) |
|
||||
*/ |
|
||||
abp.utils.deleteCookie = function (key, path) { |
|
||||
var cookieValue = encodeURIComponent(key) + '='; |
|
||||
|
|
||||
cookieValue = cookieValue + "; expires=" + (new Date(new Date().getTime() - 86400000)).toUTCString(); |
|
||||
|
|
||||
if (path) { |
|
||||
cookieValue = cookieValue + "; path=" + path; |
|
||||
} |
|
||||
|
|
||||
document.cookie = cookieValue; |
|
||||
} |
|
||||
|
|
||||
// DOM MANIPULATION
|
|
||||
|
|
||||
abp.utils.addClassToTag = function (tagName, className) { |
|
||||
var tags = document.getElementsByTagName(tagName); |
|
||||
for (var i = 0; i < tags.length; i++) { |
|
||||
tags[i].classList.add(className); |
|
||||
} |
|
||||
}; |
|
||||
|
|
||||
abp.utils.removeClassFromTag = function (tagName, className) { |
|
||||
var tags = document.getElementsByTagName(tagName); |
|
||||
for (var i = 0; i < tags.length; i++) { |
|
||||
tags[i].classList.remove(className); |
|
||||
} |
|
||||
}; |
|
||||
|
|
||||
abp.utils.hasClassOnTag = function (tagName, className) { |
|
||||
var tags = document.getElementsByTagName(tagName); |
|
||||
if (tags.length) { |
|
||||
return tags[0].classList.contains(className); |
|
||||
} |
|
||||
|
|
||||
return false; |
|
||||
}; |
|
||||
|
|
||||
abp.utils.replaceLinkHrefById = function (linkId, hrefValue) { |
|
||||
var link = document.getElementById(linkId); |
|
||||
|
|
||||
if (link && link.href !== hrefValue) { |
|
||||
link.href = hrefValue; |
|
||||
} |
|
||||
}; |
|
||||
|
|
||||
// FULL SCREEN /////////////////
|
|
||||
|
|
||||
abp.utils.toggleFullscreen = function() { |
|
||||
var elem = document.documentElement; |
|
||||
if (!document.fullscreenElement && !document.mozFullScreenElement && |
|
||||
!document.webkitFullscreenElement && !document.msFullscreenElement) { |
|
||||
if (elem.requestFullscreen) { |
|
||||
elem.requestFullscreen(); |
|
||||
} else if (elem.msRequestFullscreen) { |
|
||||
elem.msRequestFullscreen(); |
|
||||
} else if (elem.mozRequestFullScreen) { |
|
||||
elem.mozRequestFullScreen(); |
|
||||
} else if (elem.webkitRequestFullscreen) { |
|
||||
elem.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); |
|
||||
} |
|
||||
} else { |
|
||||
if (document.exitFullscreen) { |
|
||||
document.exitFullscreen(); |
|
||||
} else if (document.msExitFullscreen) { |
|
||||
document.msExitFullscreen(); |
|
||||
} else if (document.mozCancelFullScreen) { |
|
||||
document.mozCancelFullScreen(); |
|
||||
} else if (document.webkitExitFullscreen) { |
|
||||
document.webkitExitFullscreen(); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
abp.utils.requestFullscreen = function() { |
|
||||
var elem = document.documentElement; |
|
||||
if (!document.fullscreenElement && !document.mozFullScreenElement && |
|
||||
!document.webkitFullscreenElement && !document.msFullscreenElement) { |
|
||||
if (elem.requestFullscreen) { |
|
||||
elem.requestFullscreen(); |
|
||||
} else if (elem.msRequestFullscreen) { |
|
||||
elem.msRequestFullscreen(); |
|
||||
} else if (elem.mozRequestFullScreen) { |
|
||||
elem.mozRequestFullScreen(); |
|
||||
} else if (elem.webkitRequestFullscreen) { |
|
||||
elem.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
|
|
||||
abp.utils.exitFullscreen = function() { |
|
||||
if (!(!document.fullscreenElement && !document.mozFullScreenElement && |
|
||||
!document.webkitFullscreenElement && !document.msFullscreenElement)) { |
|
||||
if (document.exitFullscreen) { |
|
||||
document.exitFullscreen(); |
|
||||
} else if (document.msExitFullscreen) { |
|
||||
document.msExitFullscreen(); |
|
||||
} else if (document.mozCancelFullScreen) { |
|
||||
document.mozCancelFullScreen(); |
|
||||
} else if (document.webkitExitFullscreen) { |
|
||||
document.webkitExitFullscreen(); |
|
||||
} |
|
||||
} |
|
||||
} |
|
||||
})(); |
|
||||
@ -1,8 +1,8 @@ |
|||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Routing; |
using Volo.Abp.AspNetCore.Components.Web.Theming.Routing; |
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars; |
using Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars; |
||||
using Volo.Abp.Modularity; |
using Volo.Abp.Modularity; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Server |
namespace Volo.Abp.AspNetCore.Components.Web.BasicTheme.Server |
||||
{ |
{ |
||||
[DependsOn( |
[DependsOn( |
||||
typeof(AbpAspNetCoreComponentsUiBasicThemeModule) |
typeof(AbpAspNetCoreComponentsUiBasicThemeModule) |
||||
@ -1,8 +1,9 @@ |
|||||
using System.Threading.Tasks; |
using System.Threading.Tasks; |
||||
using Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic; |
using Volo.Abp.AspNetCore.Components.Web.BasicTheme.Server.Themes.Basic; |
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars; |
using Volo.Abp.AspNetCore.Components.Web.BasicTheme.Themes.Basic; |
||||
|
using Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Server |
namespace Volo.Abp.AspNetCore.Components.Web.BasicTheme.Server |
||||
{ |
{ |
||||
public class BasicThemeToolbarContributor : IToolbarContributor |
public class BasicThemeToolbarContributor : IToolbarContributor |
||||
{ |
{ |
||||
@ -1,4 +1,4 @@ |
|||||
@namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic |
@namespace Volo.Abp.AspNetCore.Components.Web.BasicTheme.Server.Themes.Basic |
||||
@using Volo.Abp.Users |
@using Volo.Abp.Users |
||||
@using Volo.Abp.MultiTenancy |
@using Volo.Abp.MultiTenancy |
||||
@inject ICurrentUser CurrentUser |
@inject ICurrentUser CurrentUser |
||||
@ -1,7 +1,7 @@ |
|||||
using Volo.Abp.AspNetCore.Components.UI.Theming; |
using Volo.Abp.AspNetCore.Components.Web.Theming; |
||||
using Volo.Abp.Modularity; |
using Volo.Abp.Modularity; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme |
namespace Volo.Abp.AspNetCore.Components.Web.BasicTheme |
||||
{ |
{ |
||||
[DependsOn( |
[DependsOn( |
||||
typeof(AbpAspNetCoreComponentsUiThemingModule) |
typeof(AbpAspNetCoreComponentsUiThemingModule) |
||||
@ -1,5 +1,5 @@ |
|||||
@using Volo.Abp.AspNetCore.Components.UI.Theming.Routing |
|
||||
@using Microsoft.Extensions.Options |
@using Microsoft.Extensions.Options |
||||
|
@using Volo.Abp.AspNetCore.Components.Web.Theming.Routing |
||||
@inject IOptions<AbpRouterOptions> RouterOptions |
@inject IOptions<AbpRouterOptions> RouterOptions |
||||
<CascadingAuthenticationState> |
<CascadingAuthenticationState> |
||||
<Router AppAssembly="RouterOptions.Value.AppAssembly" |
<Router AppAssembly="RouterOptions.Value.AppAssembly" |
||||
@ -1,9 +1,9 @@ |
|||||
using System.Collections.Generic; |
using System.Collections.Generic; |
||||
using System.Threading.Tasks; |
using System.Threading.Tasks; |
||||
using Microsoft.AspNetCore.Components; |
using Microsoft.AspNetCore.Components; |
||||
using Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars; |
using Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.BasicTheme.Themes.Basic |
namespace Volo.Abp.AspNetCore.Components.Web.BasicTheme.Themes.Basic |
||||
{ |
{ |
||||
public partial class NavToolbar |
public partial class NavToolbar |
||||
{ |
{ |
||||
@ -1,6 +1,6 @@ |
|||||
using System.Reflection; |
using System.Reflection; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Routing |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Routing |
||||
{ |
{ |
||||
public class AbpRouterOptions |
public class AbpRouterOptions |
||||
{ |
{ |
||||
@ -1,7 +1,7 @@ |
|||||
using System.Collections.Generic; |
using System.Collections.Generic; |
||||
using System.Reflection; |
using System.Reflection; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Routing |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Routing |
||||
{ |
{ |
||||
public class RouterAssemblyList : List<Assembly> |
public class RouterAssemblyList : List<Assembly> |
||||
{ |
{ |
||||
@ -1,7 +1,7 @@ |
|||||
using System.Collections.Generic; |
using System.Collections.Generic; |
||||
using JetBrains.Annotations; |
using JetBrains.Annotations; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public class AbpToolbarOptions |
public class AbpToolbarOptions |
||||
{ |
{ |
||||
@ -1,6 +1,6 @@ |
|||||
using System.Threading.Tasks; |
using System.Threading.Tasks; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public interface IToolbarContributor |
public interface IToolbarContributor |
||||
{ |
{ |
||||
@ -1,6 +1,6 @@ |
|||||
using System.Threading.Tasks; |
using System.Threading.Tasks; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public interface IToolbarManager |
public interface IToolbarManager |
||||
{ |
{ |
||||
@ -1,4 +1,4 @@ |
|||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public static class StandardToolbars |
public static class StandardToolbars |
||||
{ |
{ |
||||
@ -1,7 +1,7 @@ |
|||||
using System.Collections.Generic; |
using System.Collections.Generic; |
||||
using JetBrains.Annotations; |
using JetBrains.Annotations; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public class Toolbar |
public class Toolbar |
||||
{ |
{ |
||||
@ -1,7 +1,7 @@ |
|||||
using System; |
using System; |
||||
using JetBrains.Annotations; |
using JetBrains.Annotations; |
||||
|
|
||||
namespace Volo.Abp.AspNetCore.Components.UI.Theming.Toolbars |
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Toolbars |
||||
{ |
{ |
||||
public class ToolbarItem |
public class ToolbarItem |
||||
{ |
{ |
||||
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 262 B After Width: | Height: | Size: 262 B |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 761 B After Width: | Height: | Size: 761 B |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
|
Before Width: | Height: | Size: 231 B After Width: | Height: | Size: 231 B |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 5.8 KiB After Width: | Height: | Size: 5.8 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB |
|
Before Width: | Height: | Size: 242 B After Width: | Height: | Size: 242 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 541 B After Width: | Height: | Size: 541 B |
|
Before Width: | Height: | Size: 498 B After Width: | Height: | Size: 498 B |
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 609 B After Width: | Height: | Size: 609 B |
|
Before Width: | Height: | Size: 192 B After Width: | Height: | Size: 192 B |
|
Before Width: | Height: | Size: 290 B After Width: | Height: | Size: 290 B |
|
Before Width: | Height: | Size: 383 B After Width: | Height: | Size: 383 B |
|
Before Width: | Height: | Size: 294 B After Width: | Height: | Size: 294 B |
|
Before Width: | Height: | Size: 538 B After Width: | Height: | Size: 538 B |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 499 B After Width: | Height: | Size: 499 B |
|
Before Width: | Height: | Size: 292 B After Width: | Height: | Size: 292 B |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 228 B After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 568 B After Width: | Height: | Size: 568 B |