Browse Source

Merge branch 'rel-10.1' into jquery-form

pull/24703/head
Ma Liming 8 months ago
committed by GitHub
parent
commit
d53dc4db84
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 8
      .claude/settings.local.json
  2. 2
      Directory.Packages.props
  3. 4
      common.props
  4. 12
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/DerivedClassFinder.cs
  5. 26
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs
  6. 22
      modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json
  7. 6
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json
  8. 264
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock
  9. 4
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json
  10. 268
      modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock
  11. 4
      modules/blogging/app/Volo.BloggingTestApp/package.json
  12. 306
      modules/blogging/app/Volo.BloggingTestApp/yarn.lock
  13. 2
      modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json
  14. 240
      modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock
  15. 8
      modules/cms-kit/angular/package.json
  16. 4
      modules/cms-kit/angular/projects/cms-kit/package.json
  17. 2
      modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json
  18. 240
      modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock
  19. 2
      modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json
  20. 240
      modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock
  21. 4
      modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json
  22. 392
      modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock
  23. 4
      modules/docs/app/VoloDocs.Web/package.json
  24. 306
      modules/docs/app/VoloDocs.Web/yarn.lock
  25. 7
      modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json
  26. 84
      modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json
  27. 13
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityResultException.cs
  28. 71
      modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/AbpIdentityResultException_Tests.cs
  29. 2
      modules/openiddict/app/OpenIddict.Demo.Server/package.json
  30. 20
      modules/openiddict/app/angular/package.json
  31. 2
      modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json
  32. 240
      modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock
  33. 21
      modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json
  34. 4
      modules/virtual-file-explorer/app/package.json
  35. 2
      npm/lerna.json
  36. 2
      npm/ng-packs/.gitignore
  37. 6
      npm/ng-packs/apps/dev-app/project.json
  38. 5
      npm/ng-packs/jest.config.ts
  39. 4
      npm/ng-packs/jest.preset.js
  40. 4
      npm/ng-packs/nx.json
  41. 20
      npm/ng-packs/package.json
  42. 2
      npm/ng-packs/packages/account-core/.eslintrc.json
  43. 4
      npm/ng-packs/packages/account-core/jest.config.ts
  44. 6
      npm/ng-packs/packages/account-core/package.json
  45. 14
      npm/ng-packs/packages/account-core/project.json
  46. 19
      npm/ng-packs/packages/account-core/tsconfig.lib.json
  47. 22
      npm/ng-packs/packages/account-core/tsconfig.spec.json
  48. 21
      npm/ng-packs/packages/account-core/vitest.config.mts
  49. 2
      npm/ng-packs/packages/account/.eslintrc.json
  50. 4
      npm/ng-packs/packages/account/jest.config.ts
  51. 6
      npm/ng-packs/packages/account/package.json
  52. 14
      npm/ng-packs/packages/account/project.json
  53. 19
      npm/ng-packs/packages/account/tsconfig.lib.json
  54. 22
      npm/ng-packs/packages/account/tsconfig.spec.json
  55. 21
      npm/ng-packs/packages/account/vitest.config.mts
  56. 2
      npm/ng-packs/packages/components/.eslintrc.json
  57. 4
      npm/ng-packs/packages/components/jest.config.ts
  58. 6
      npm/ng-packs/packages/components/package.json
  59. 14
      npm/ng-packs/packages/components/project.json
  60. 14
      npm/ng-packs/packages/components/tsconfig.lib.json
  61. 22
      npm/ng-packs/packages/components/tsconfig.spec.json
  62. 21
      npm/ng-packs/packages/components/vitest.config.mts
  63. 2
      npm/ng-packs/packages/core/.eslintrc.json
  64. 23
      npm/ng-packs/packages/core/jest.config.ts
  65. 4
      npm/ng-packs/packages/core/package.json
  66. 14
      npm/ng-packs/packages/core/project.json
  67. 3
      npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts
  68. 36
      npm/ng-packs/packages/core/src/lib/directives/for.directive.ts
  69. 26
      npm/ng-packs/packages/core/src/lib/directives/permission.directive.ts
  70. 3
      npm/ng-packs/packages/core/src/lib/services/list.service.ts
  71. 2
      npm/ng-packs/packages/core/src/lib/services/router-events.service.ts
  72. 6
      npm/ng-packs/packages/core/src/lib/tests/autofocus.directive.spec.ts
  73. 68
      npm/ng-packs/packages/core/src/lib/tests/capsLock.directive.spec.ts
  74. 44
      npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts
  75. 6
      npm/ng-packs/packages/core/src/lib/tests/container.strategy.spec.ts
  76. 5
      npm/ng-packs/packages/core/src/lib/tests/content-projection.service.spec.ts
  77. 52
      npm/ng-packs/packages/core/src/lib/tests/content.strategy.spec.ts
  78. 2
      npm/ng-packs/packages/core/src/lib/tests/context.strategy.spec.ts
  79. 26
      npm/ng-packs/packages/core/src/lib/tests/date-utils.spec.ts
  80. 14
      npm/ng-packs/packages/core/src/lib/tests/debounce.directive.spec.ts
  81. 19
      npm/ng-packs/packages/core/src/lib/tests/dom-insertion.service.spec.ts
  82. 27
      npm/ng-packs/packages/core/src/lib/tests/dom.strategy.spec.ts
  83. 21
      npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts
  84. 8
      npm/ng-packs/packages/core/src/lib/tests/environment-utils.spec.ts
  85. 25
      npm/ng-packs/packages/core/src/lib/tests/environment.service.spec.ts
  86. 35
      npm/ng-packs/packages/core/src/lib/tests/for.directive.spec.ts
  87. 21
      npm/ng-packs/packages/core/src/lib/tests/form-submit.directive.spec.ts
  88. 13
      npm/ng-packs/packages/core/src/lib/tests/initial-utils.spec.ts
  89. 16
      npm/ng-packs/packages/core/src/lib/tests/internal-store.spec.ts
  90. 209
      npm/ng-packs/packages/core/src/lib/tests/internet-connection.service.spec.ts
  91. 106
      npm/ng-packs/packages/core/src/lib/tests/lazy-load-utils.spec.ts
  92. 10
      npm/ng-packs/packages/core/src/lib/tests/lazy-load.service.spec.ts
  93. 117
      npm/ng-packs/packages/core/src/lib/tests/list.service.spec.ts
  94. 40
      npm/ng-packs/packages/core/src/lib/tests/loading.strategy.spec.ts
  95. 12
      npm/ng-packs/packages/core/src/lib/tests/local-storage.service.spec.ts
  96. 2
      npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts
  97. 4
      npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts
  98. 22
      npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts
  99. 25
      npm/ng-packs/packages/core/src/lib/tests/multi-tenancy-utils.spec.ts
  100. 2
      npm/ng-packs/packages/core/src/lib/tests/ng-model.component.spec.ts

8
.claude/settings.local.json

@ -0,0 +1,8 @@
{
"permissions": {
"allow": [
"Bash(yarn nx g:*)",
"Bash(npx vitest:*)"
]
}
}

2
Directory.Packages.props

@ -141,7 +141,7 @@
<PackageVersion Include="Polly" Version="8.6.3" /> <PackageVersion Include="Polly" Version="8.6.3" />
<PackageVersion Include="Polly.Extensions.Http" Version="3.0.0" /> <PackageVersion Include="Polly.Extensions.Http" Version="3.0.0" />
<PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0" /> <PackageVersion Include="Pomelo.EntityFrameworkCore.MySql" Version="9.0.0" />
<PackageVersion Include="MySql.EntityFrameworkCore" Version="10.0.0-rc" /> <PackageVersion Include="MySql.EntityFrameworkCore" Version="10.0.1" />
<PackageVersion Include="Quartz" Version="3.15.0" /> <PackageVersion Include="Quartz" Version="3.15.0" />
<PackageVersion Include="Quartz.Extensions.DependencyInjection" Version="3.15.0" /> <PackageVersion Include="Quartz.Extensions.DependencyInjection" Version="3.15.0" />
<PackageVersion Include="Quartz.Plugins.TimeZoneConverter" Version="3.15.0" /> <PackageVersion Include="Quartz.Plugins.TimeZoneConverter" Version="3.15.0" />

4
common.props

@ -1,8 +1,8 @@
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<LangVersion>latest</LangVersion> <LangVersion>latest</LangVersion>
<Version>10.1.0-rc.1</Version> <Version>10.1.0-rc.2</Version>
<LeptonXVersion>5.1.0-rc.1</LeptonXVersion> <LeptonXVersion>5.1.0-rc.2</LeptonXVersion>
<NoWarn>$(NoWarn);CS1591;CS0436</NoWarn> <NoWarn>$(NoWarn);CS1591;CS0436</NoWarn>
<PackageIconUrl>https://abp.io/assets/abp_nupkg.png</PackageIconUrl> <PackageIconUrl>https://abp.io/assets/abp_nupkg.png</PackageIconUrl>
<PackageProjectUrl>https://abp.io/</PackageProjectUrl> <PackageProjectUrl>https://abp.io/</PackageProjectUrl>

12
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/DerivedClassFinder.cs

@ -26,10 +26,10 @@ public class DerivedClassFinder : ITransientDependency
var binFile = Path.Combine(csprojFileDirectory, "bin"); var binFile = Path.Combine(csprojFileDirectory, "bin");
var objFile = Path.Combine(csprojFileDirectory, "obj"); var objFile = Path.Combine(csprojFileDirectory, "obj");
var csFiles = new DirectoryInfo(csprojFileDirectory) var csFiles = new DirectoryInfo(csprojFileDirectory)
.GetFiles("*.cs", SearchOption.AllDirectories) .GetFiles("*.cs", SearchOption.AllDirectories)
.Where(f => f.DirectoryName != null && (!f.DirectoryName.StartsWith(binFile) || !f.DirectoryName.StartsWith(objFile))) .Where(f => !f.FullName.StartsWith(binFile, StringComparison.OrdinalIgnoreCase) &&
!f.FullName.StartsWith(objFile, StringComparison.OrdinalIgnoreCase))
.Select(f => f.FullName) .Select(f => f.FullName)
.ToList(); .ToList();
@ -53,7 +53,13 @@ public class DerivedClassFinder : ITransientDependency
protected bool IsDerived(string csFile, string baseClass) protected bool IsDerived(string csFile, string baseClass)
{ {
var root = CSharpSyntaxTree.ParseText(File.ReadAllText(csFile)).GetRoot(); var csFileText = File.ReadAllText(csFile);
if (!csFileText.Contains("class"))
{
return false;
}
var root = CSharpSyntaxTree.ParseText(csFileText).GetRoot();
var namespaceSyntax = root.DescendantNodes().OfType<NamespaceDeclarationSyntax>().FirstOrDefault(); var namespaceSyntax = root.DescendantNodes().OfType<NamespaceDeclarationSyntax>().FirstOrDefault();
var classDeclaration = (namespaceSyntax?.DescendantNodes().OfType<ClassDeclarationSyntax>())?.FirstOrDefault(); var classDeclaration = (namespaceSyntax?.DescendantNodes().OfType<ClassDeclarationSyntax>())?.FirstOrDefault();

26
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectModification/SolutionFileModifier.cs

@ -18,16 +18,17 @@ public class SolutionFileModifier : ITransientDependency
{ {
_cmdHelper = cmdHelper; _cmdHelper = cmdHelper;
} }
public async Task RemoveProjectFromSolutionFileAsync(string solutionFile, string projectName) public async Task RemoveProjectFromSolutionFileAsync(string solutionFile, string projectName)
{ {
var list = _cmdHelper.RunCmdAndGetOutput($"dotnet sln \"{solutionFile}\" list"); var workingDirectory = Path.GetDirectoryName(solutionFile);
var list = _cmdHelper.RunCmdAndGetOutput($"dotnet sln \"{solutionFile}\" list", workingDirectory: workingDirectory);
foreach (var line in list.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None)) foreach (var line in list.Split(new[] { Environment.NewLine, "\n" }, StringSplitOptions.None))
{ {
if (Path.GetFileNameWithoutExtension(line.Trim()).Equals(projectName, StringComparison.InvariantCultureIgnoreCase)) if (Path.GetFileNameWithoutExtension(line.Trim()).Equals(projectName, StringComparison.InvariantCultureIgnoreCase))
{ {
_cmdHelper.RunCmd($"dotnet sln \"{solutionFile}\" remove \"{line.Trim()}\""); _cmdHelper.RunCmd($"dotnet sln \"{solutionFile}\" remove \"{line.Trim()}\"", workingDirectory: workingDirectory);
break; break;
} }
} }
@ -50,30 +51,27 @@ public class SolutionFileModifier : ITransientDependency
private async Task AddModuleAsync(ModuleWithMastersInfo module, string solutionFile) private async Task AddModuleAsync(ModuleWithMastersInfo module, string solutionFile)
{ {
var slnDir = Path.GetDirectoryName(solutionFile);
var projectsUnderModule = Directory.GetFiles( var projectsUnderModule = Directory.GetFiles(
Path.Combine(Path.GetDirectoryName(solutionFile), "modules", module.Name), Path.Combine(slnDir, "modules", module.Name),
"*.csproj", "*.csproj",
SearchOption.AllDirectories); SearchOption.AllDirectories);
var projectsUnderTest = new List<string>(); var projectsUnderTest = new List<string>();
if (Directory.Exists(Path.Combine(Path.GetDirectoryName(solutionFile), "modules", module.Name, "test"))) if (Directory.Exists(Path.Combine(slnDir, "modules", module.Name, "test")))
{ {
projectsUnderTest = Directory.GetFiles( projectsUnderTest = Directory.GetFiles(
Path.Combine(Path.GetDirectoryName(solutionFile), "modules", module.Name, "test"), Path.Combine(slnDir, "modules", module.Name, "test"),
"*.csproj", "*.csproj",
SearchOption.AllDirectories).ToList(); SearchOption.AllDirectories).ToList();
} }
foreach (var projectPath in projectsUnderModule) foreach (var projectPath in projectsUnderModule)
{ {
var folder = projectsUnderTest.Contains(projectPath) ? "test" : "src"; var solutionFolder = projectsUnderTest.Contains(projectPath) ? Path.Combine("test", module.Name) : Path.Combine("modules", module.Name);
_cmdHelper.RunCmd($"dotnet sln \"{solutionFile}\" add \"{projectPath}\" --solution-folder \"{solutionFolder}\"", workingDirectory: slnDir);
var projectId = Path.GetFileName(projectPath).Replace(".csproj", "");
var package = @$"modules\{module.Name}\{folder}\{projectId}\{projectId}.csproj";
_cmdHelper.RunCmd($"dotnet sln \"{solutionFile}\" add \"{package}\" --solution-folder {folder}");
} }
if (module.MasterModuleInfos != null) if (module.MasterModuleInfos != null)
{ {
foreach (var masterModule in module.MasterModuleInfos) foreach (var masterModule in module.MasterModuleInfos)

22
modules/account/src/Volo.Abp.Account.Application/Volo.Abp.Account.Application.abppkg.analyze.json

@ -412,6 +412,28 @@
"contentType": "applicationService", "contentType": "applicationService",
"name": "ProfileAppService", "name": "ProfileAppService",
"summary": null "summary": null
},
{
"defaultValue": "true",
"displayName": "Is self-registration enabled",
"description": "Whether a user can register the account by him or herself.",
"isVisibleToClient": true,
"isInherited": true,
"isEncrypted": false,
"contentType": "setting",
"name": "Abp.Account.IsSelfRegistrationEnabled",
"summary": null
},
{
"defaultValue": "true",
"displayName": "Authenticate with a local account",
"description": "Indicates if the server will allow users to authenticate with a local account.",
"isVisibleToClient": true,
"isInherited": true,
"isEncrypted": false,
"contentType": "setting",
"name": "Abp.Account.EnableLocalLogin",
"summary": null
} }
] ]
} }

6
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/package.json

@ -3,8 +3,8 @@
"name": "asp.net", "name": "asp.net",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.shared": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.shared": "~10.1.0-rc.2",
"@abp/prismjs": "~10.1.0-rc.1", "@abp/prismjs": "~10.1.0-rc.2",
"@abp/highlight.js": "~10.1.0-rc.1" "@abp/highlight.js": "~10.1.0-rc.2"
} }
} }

264
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.Demo/yarn.lock

@ -2,203 +2,203 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/clipboard@~10.1.0-rc.1": "@abp/clipboard@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.1.tgz#ebb677e689372d5c0d07a5814b61eae45397a3c8" resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.2.tgz#e99dbf190e3684e99c8e909bf38201c70e267502"
integrity sha512-iJpKYQJy5mN1O8n0+4DsWoWKAOasLuUE9Cja01Yl7YTb6XwYCGozBAVZbi+YouhYmsSr2zM4ozKxXPbXXt0u1w== integrity sha512-kRS9pWc1jRgr4D4/EV9zdAy3rhhGBrcqk2as5+6Ih49npsEJY/cF5mYH7mj/ZYy8SHqtae/CR7bZsR+uCDKYrQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
clipboard "^2.0.11" clipboard "^2.0.11"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/highlight.js@~10.1.0-rc.1": "@abp/highlight.js@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-10.1.0-rc.1.tgz#52667c1b0242b710d1b8ea65cf9c8dce50c2a213" resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-10.1.0-rc.2.tgz#6ad0e1ef9e49f0f90eba9d899fd72b6c30a4f9f0"
integrity sha512-LlcVW/R+WPy8DqWmCfkbxwsWVHdo4jqn1/wvcSuxtPYsQZcBLocM+IgmT1Be3Ti1gn5Gu2h89UsdYlDfLMllqQ== integrity sha512-jAX4p+i3secAaI3waXoMr7yoH6G1nWvcjR5UVin168H7I4UySxbF799T89v5tK8gtfWgaTjEydFZRypSQU/dHg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@highlightjs/cdn-assets" "~11.11.1" "@highlightjs/cdn-assets" "~11.11.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/prismjs@~10.1.0-rc.1": "@abp/prismjs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.1.tgz#26ef6c368dbfdd27d2836f1dd8cd9e8cf630f0ab" resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.2.tgz#8565bab503a16fc349f4b0fa2609ad412ff838be"
integrity sha512-6OpD/w7NOSI7OpjubMx45gXsZY5K6ggynJ9uSqv3NDxSbj9l6c8cRTX1i56ATT10rhyYxZIw83FRhMlxOiLfjg== integrity sha512-SmZWMyJ3cJW+qj4CWJ7y2kD6PMx2zfZMA5X5jPunsytG4Eht4AVyIR38Y4QSpO62zZgkHyZlSTFOozBfhrlv9A==
dependencies: dependencies:
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
prismjs "^1.30.0" prismjs "^1.30.0"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

4
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/package.json

@ -3,8 +3,8 @@
"name": "asp.net", "name": "asp.net",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2",
"@abp/prismjs": "~10.1.0-rc.1" "@abp/prismjs": "~10.1.0-rc.2"
}, },
"devDependencies": {} "devDependencies": {}
} }

268
modules/basic-theme/test/Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic.Demo/yarn.lock

@ -2,202 +2,202 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/clipboard@~10.1.0-rc.1": "@abp/clipboard@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.1.tgz#ebb677e689372d5c0d07a5814b61eae45397a3c8" resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.2.tgz#e99dbf190e3684e99c8e909bf38201c70e267502"
integrity sha512-iJpKYQJy5mN1O8n0+4DsWoWKAOasLuUE9Cja01Yl7YTb6XwYCGozBAVZbi+YouhYmsSr2zM4ozKxXPbXXt0u1w== integrity sha512-kRS9pWc1jRgr4D4/EV9zdAy3rhhGBrcqk2as5+6Ih49npsEJY/cF5mYH7mj/ZYy8SHqtae/CR7bZsR+uCDKYrQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
clipboard "^2.0.11" clipboard "^2.0.11"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/prismjs@~10.1.0-rc.1": "@abp/prismjs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.1.tgz#26ef6c368dbfdd27d2836f1dd8cd9e8cf630f0ab" resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.2.tgz#8565bab503a16fc349f4b0fa2609ad412ff838be"
integrity sha512-6OpD/w7NOSI7OpjubMx45gXsZY5K6ggynJ9uSqv3NDxSbj9l6c8cRTX1i56ATT10rhyYxZIw83FRhMlxOiLfjg== integrity sha512-SmZWMyJ3cJW+qj4CWJ7y2kD6PMx2zfZMA5X5jPunsytG4Eht4AVyIR38Y4QSpO62zZgkHyZlSTFOozBfhrlv9A==
dependencies: dependencies:
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
prismjs "^1.30.0" prismjs "^1.30.0"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

4
modules/blogging/app/Volo.BloggingTestApp/package.json

@ -3,7 +3,7 @@
"name": "volo.blogtestapp", "name": "volo.blogtestapp",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2",
"@abp/blogging": "~10.1.0-rc.1" "@abp/blogging": "~10.1.0-rc.2"
} }
} }

306
modules/blogging/app/Volo.BloggingTestApp/yarn.lock

@ -2,228 +2,228 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/blogging@~10.1.0-rc.1": "@abp/blogging@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-10.1.0-rc.1.tgz#2438e08f4ceeb47b5448ca7e46de00ecd825112b" resolved "https://registry.yarnpkg.com/@abp/blogging/-/blogging-10.1.0-rc.2.tgz#f60d5fdfef5be11cbbb23ad7b4b246621828e5f9"
integrity sha512-4D2JVdoXF0duIByQ6xeV3sU44ZLFQtkKgIjylDhlVuXUfCg8yKBqjK9MBNpV2Ltxj32HnKQjnPkj06P+zZL1ZA== integrity sha512-GcI6JWeQKcHA0FaJZYTgx9l63jlSn1cqaWjBx6Y4KYIpy1c8vDKnve85jzsj7UOKgkMFX1c7mN2vwzH3NSr1Qg==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/owl.carousel" "~10.1.0-rc.1" "@abp/owl.carousel" "~10.1.0-rc.2"
"@abp/prismjs" "~10.1.0-rc.1" "@abp/prismjs" "~10.1.0-rc.2"
"@abp/tui-editor" "~10.1.0-rc.1" "@abp/tui-editor" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/clipboard@~10.1.0-rc.1": "@abp/clipboard@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.1.tgz#ebb677e689372d5c0d07a5814b61eae45397a3c8" resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.2.tgz#e99dbf190e3684e99c8e909bf38201c70e267502"
integrity sha512-iJpKYQJy5mN1O8n0+4DsWoWKAOasLuUE9Cja01Yl7YTb6XwYCGozBAVZbi+YouhYmsSr2zM4ozKxXPbXXt0u1w== integrity sha512-kRS9pWc1jRgr4D4/EV9zdAy3rhhGBrcqk2as5+6Ih49npsEJY/cF5mYH7mj/ZYy8SHqtae/CR7bZsR+uCDKYrQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
clipboard "^2.0.11" clipboard "^2.0.11"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/owl.carousel@~10.1.0-rc.1": "@abp/owl.carousel@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-10.1.0-rc.1.tgz#180edebe4fbeaf8fb9c468f6104c0ca14c9040a7" resolved "https://registry.yarnpkg.com/@abp/owl.carousel/-/owl.carousel-10.1.0-rc.2.tgz#e7697b7c8954472758547688fa6724b219a5c99c"
integrity sha512-udlMHMqoqhUBP0Xy1pJ9XBWHKjgNDxdXeW/QqgJwb1tFE1iyHpL73gaJLSfA1RzwDnWiweWDTcm7zzXhz2UpHQ== integrity sha512-XKciT8HNWoZvlcMGRwOz9opld4BJsAQwMKsKRu1oD4/KMCnT7LelacFPVbj3CLhsLpU+2eq0M947fEI7hQiPOQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
owl.carousel "^2.3.4" owl.carousel "^2.3.4"
"@abp/prismjs@~10.1.0-rc.1": "@abp/prismjs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.1.tgz#26ef6c368dbfdd27d2836f1dd8cd9e8cf630f0ab" resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.2.tgz#8565bab503a16fc349f4b0fa2609ad412ff838be"
integrity sha512-6OpD/w7NOSI7OpjubMx45gXsZY5K6ggynJ9uSqv3NDxSbj9l6c8cRTX1i56ATT10rhyYxZIw83FRhMlxOiLfjg== integrity sha512-SmZWMyJ3cJW+qj4CWJ7y2kD6PMx2zfZMA5X5jPunsytG4Eht4AVyIR38Y4QSpO62zZgkHyZlSTFOozBfhrlv9A==
dependencies: dependencies:
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
prismjs "^1.30.0" prismjs "^1.30.0"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/tui-editor@~10.1.0-rc.1": "@abp/tui-editor@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-10.1.0-rc.1.tgz#fd9d014ea5bbdc9c93b3160040928cc27ba50d5e" resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-10.1.0-rc.2.tgz#ebbd5bad1ee180a0c6e6a9cfd894499614a71e96"
integrity sha512-X6tlZs3/soUbl/L/aiQfIOZuiZRfmlUpEukIduJBlDsSaNR2hJgEa98RsQNvQ2yvSU/H7+9kwIwdizhQdimujA== integrity sha512-k5V+5ZE+HZebfyXLzddRQDGri3HP7wSjDXEbSMLTgxZTem7IzksyLWLAN/woKRzWX92BJXcsmR8T1rhuMhohhA==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
"@abp/prismjs" "~10.1.0-rc.1" "@abp/prismjs" "~10.1.0-rc.2"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

2
modules/client-simulation/demo/Volo.ClientSimulation.Demo/package.json

@ -3,6 +3,6 @@
"name": "client-simulation-web", "name": "client-simulation-web",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2"
} }
} }

240
modules/client-simulation/demo/Volo.ClientSimulation.Demo/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

8
modules/cms-kit/angular/package.json

@ -15,11 +15,11 @@
}, },
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/ng.account": "~10.1.0-rc.1", "@abp/ng.account": "~10.1.0-rc.2",
"@abp/ng.identity": "~10.1.0-rc.1", "@abp/ng.identity": "~10.1.0-rc.2",
"@abp/ng.setting-management": "~10.1.0-rc.1", "@abp/ng.setting-management": "~10.1.0-rc.1",
"@abp/ng.tenant-management": "~10.1.0-rc.1", "@abp/ng.tenant-management": "~10.1.0-rc.2",
"@abp/ng.theme.basic": "~10.1.0-rc.1", "@abp/ng.theme.basic": "~10.1.0-rc.2",
"@angular/animations": "~10.0.0", "@angular/animations": "~10.0.0",
"@angular/common": "~10.0.0", "@angular/common": "~10.0.0",
"@angular/compiler": "~10.0.0", "@angular/compiler": "~10.0.0",

4
modules/cms-kit/angular/projects/cms-kit/package.json

@ -4,8 +4,8 @@
"peerDependencies": { "peerDependencies": {
"@angular/common": "^9.1.11", "@angular/common": "^9.1.11",
"@angular/core": "^9.1.11", "@angular/core": "^9.1.11",
"@abp/ng.core": ">=10.1.0-rc.1", "@abp/ng.core": ">=10.1.0-rc.2",
"@abp/ng.theme.shared": ">=10.1.0-rc.1" "@abp/ng.theme.shared": ">=10.1.0-rc.2"
}, },
"dependencies": { "dependencies": {
"tslib": "^2.0.0" "tslib": "^2.0.0"

2
modules/cms-kit/host/Volo.CmsKit.IdentityServer/package.json

@ -3,6 +3,6 @@
"name": "my-app-identityserver", "name": "my-app-identityserver",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2"
} }
} }

240
modules/cms-kit/host/Volo.CmsKit.IdentityServer/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

2
modules/cms-kit/host/Volo.CmsKit.Web.Host/package.json

@ -3,6 +3,6 @@
"name": "my-app", "name": "my-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2"
} }
} }

240
modules/cms-kit/host/Volo.CmsKit.Web.Host/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

4
modules/cms-kit/host/Volo.CmsKit.Web.Unified/package.json

@ -3,7 +3,7 @@
"name": "my-app", "name": "my-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2",
"@abp/cms-kit": "10.1.0-rc.1" "@abp/cms-kit": "10.1.0-rc.2"
} }
} }

392
modules/cms-kit/host/Volo.CmsKit.Web.Unified/yarn.lock

@ -2,293 +2,293 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/clipboard@~10.1.0-rc.1": "@abp/clipboard@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.1.tgz#ebb677e689372d5c0d07a5814b61eae45397a3c8" resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.2.tgz#e99dbf190e3684e99c8e909bf38201c70e267502"
integrity sha512-iJpKYQJy5mN1O8n0+4DsWoWKAOasLuUE9Cja01Yl7YTb6XwYCGozBAVZbi+YouhYmsSr2zM4ozKxXPbXXt0u1w== integrity sha512-kRS9pWc1jRgr4D4/EV9zdAy3rhhGBrcqk2as5+6Ih49npsEJY/cF5mYH7mj/ZYy8SHqtae/CR7bZsR+uCDKYrQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
clipboard "^2.0.11" clipboard "^2.0.11"
"@abp/cms-kit.admin@~10.1.0-rc.1": "@abp/cms-kit.admin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-10.1.0-rc.1.tgz#800ab806e343c0464eb775ef844e77a0e56f07ce" resolved "https://registry.yarnpkg.com/@abp/cms-kit.admin/-/cms-kit.admin-10.1.0-rc.2.tgz#554d15856007e80cc2994d57612d08e3d6747e3e"
integrity sha512-RkMTl9eDXqOC/fmun4gsm+glWUCmGJUtv6DnLu8m3wBuwLGyac64o9shpie/6TFvF99agtUp+4se5c8PO4m0tA== integrity sha512-mi9m4Nr51wyq/EN8DRMT/QlSqgIwD7WKDDSO80Tylr46r5A7wiGbgNIyy+hnHCR9IbORpTRv8VjMTtkjF7CRPA==
dependencies: dependencies:
"@abp/codemirror" "~10.1.0-rc.1" "@abp/codemirror" "~10.1.0-rc.2"
"@abp/jstree" "~10.1.0-rc.1" "@abp/jstree" "~10.1.0-rc.2"
"@abp/markdown-it" "~10.1.0-rc.1" "@abp/markdown-it" "~10.1.0-rc.2"
"@abp/slugify" "~10.1.0-rc.1" "@abp/slugify" "~10.1.0-rc.2"
"@abp/tui-editor" "~10.1.0-rc.1" "@abp/tui-editor" "~10.1.0-rc.2"
"@abp/uppy" "~10.1.0-rc.1" "@abp/uppy" "~10.1.0-rc.2"
"@abp/cms-kit.public@~10.1.0-rc.1": "@abp/cms-kit.public@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-10.1.0-rc.1.tgz#1f38e4f848da7898d37e66263e807a7cefe8df95" resolved "https://registry.yarnpkg.com/@abp/cms-kit.public/-/cms-kit.public-10.1.0-rc.2.tgz#1e25575fa7dde2661970942c868250f749ffcf7e"
integrity sha512-owy45DYVAxnu0UYhpqPctIfbM7m/NxYREjnhq+41BaXXiTDLOXEsSoucwObDevnvwthYDuB+4CXK3NYz7x/8+g== integrity sha512-BbEL17D0k44+P1pBfmrRwhwukXqbggprl8DWBofBkPut1HUmo1iaD4NrMEG5NZC03L8LRDVNm3hx2zI1voF9Sg==
dependencies: dependencies:
"@abp/highlight.js" "~10.1.0-rc.1" "@abp/highlight.js" "~10.1.0-rc.2"
"@abp/star-rating-svg" "~10.1.0-rc.1" "@abp/star-rating-svg" "~10.1.0-rc.2"
"@abp/cms-kit@10.1.0-rc.1": "@abp/cms-kit@10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-10.1.0-rc.1.tgz#c359a8b392644d17cea1a000169a728dc8ea42f4" resolved "https://registry.yarnpkg.com/@abp/cms-kit/-/cms-kit-10.1.0-rc.2.tgz#18d0818a07a530fccb23fa082db24e439854e94a"
integrity sha512-YSnmmygVa7NZShoI/brrBIiM2SLdSLwCEmxC7Igml0j0BfO7MYBQ0BlY2dcdun9jtwv52V9OZQvtmnuObSolkw== integrity sha512-cwraU613er9EybLoU9wXiqfFFBjSyk/DnbZkAviavOLg+QRTFdDoJEVTPpNn6WCXc1oS5/LPuu/744MrGixYyw==
dependencies: dependencies:
"@abp/cms-kit.admin" "~10.1.0-rc.1" "@abp/cms-kit.admin" "~10.1.0-rc.2"
"@abp/cms-kit.public" "~10.1.0-rc.1" "@abp/cms-kit.public" "~10.1.0-rc.2"
"@abp/codemirror@~10.1.0-rc.1": "@abp/codemirror@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-10.1.0-rc.1.tgz#6a1a6d7ed56a33385f7fbc48cbf49697dde485f8" resolved "https://registry.yarnpkg.com/@abp/codemirror/-/codemirror-10.1.0-rc.2.tgz#8a55a66c8be83995045bc2724ca02c29771283a3"
integrity sha512-XoVp2Jh1xwkLL8ZPuWo3kxrr/bgU56WwG3fegNCfJY1RsFckNGI8VKvka/+AQaCxfq44hYWurm/3c2JjkI392A== integrity sha512-8jlMySyFTNnDJvQLqZgj7S0EZ0oGWoplDFDE6zEP7NBK8INzrw7D7lc93XZ8/G7lRh0xeM1OcziUHZEX/QhXNg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
codemirror "^5.65.1" codemirror "^5.65.1"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/highlight.js@~10.1.0-rc.1": "@abp/highlight.js@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-10.1.0-rc.1.tgz#52667c1b0242b710d1b8ea65cf9c8dce50c2a213" resolved "https://registry.yarnpkg.com/@abp/highlight.js/-/highlight.js-10.1.0-rc.2.tgz#6ad0e1ef9e49f0f90eba9d899fd72b6c30a4f9f0"
integrity sha512-LlcVW/R+WPy8DqWmCfkbxwsWVHdo4jqn1/wvcSuxtPYsQZcBLocM+IgmT1Be3Ti1gn5Gu2h89UsdYlDfLMllqQ== integrity sha512-jAX4p+i3secAaI3waXoMr7yoH6G1nWvcjR5UVin168H7I4UySxbF799T89v5tK8gtfWgaTjEydFZRypSQU/dHg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@highlightjs/cdn-assets" "~11.11.1" "@highlightjs/cdn-assets" "~11.11.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/jstree@~10.1.0-rc.1": "@abp/jstree@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-10.1.0-rc.1.tgz#1a0ee3ed28a84f959df41b5192199e18f8a8b60c" resolved "https://registry.yarnpkg.com/@abp/jstree/-/jstree-10.1.0-rc.2.tgz#0b145af388ca527b107464ff706c5f901344a094"
integrity sha512-37XpZscnQyAK3oiz27dcAnyqGkcIs38Coxr4D65USULm84f/YGEV9QbKwqYIvdtj5Xac4IXQ5K2jANj+TRIuBg== integrity sha512-RmKRKVuQBhemapF4wmNVOZfDxBSjqKoSRL/Y0Sbyqx86Qg/HYpFZD1zQgaH6NFwUOpwB4wVJRBHV5r7i4LxxyQ==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jstree "^3.3.17" jstree "^3.3.17"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/markdown-it@~10.1.0-rc.1": "@abp/markdown-it@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-10.1.0-rc.1.tgz#277508743134503937f56bc764e6554d7f37f402" resolved "https://registry.yarnpkg.com/@abp/markdown-it/-/markdown-it-10.1.0-rc.2.tgz#43865464fb44f470baf30296712a5f007ff9730d"
integrity sha512-JBPhX9t6Err9kcZTwFC8ib3QaNGRKs6ucme+h7GY592WUFDzcxOIAoOPguFvn3x1nQCXNOEqy5NFO2BVRfN6qw== integrity sha512-R45uA/EfMEZSkWchdpE/epOPsjswuQDB+IyBdwil2kKe3Bfv3yIh8+GSU5hfhiArXmRbhcmNGdeTylXWhrInbw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
markdown-it "^14.1.0" markdown-it "^14.1.0"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/prismjs@~10.1.0-rc.1": "@abp/prismjs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.1.tgz#26ef6c368dbfdd27d2836f1dd8cd9e8cf630f0ab" resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.2.tgz#8565bab503a16fc349f4b0fa2609ad412ff838be"
integrity sha512-6OpD/w7NOSI7OpjubMx45gXsZY5K6ggynJ9uSqv3NDxSbj9l6c8cRTX1i56ATT10rhyYxZIw83FRhMlxOiLfjg== integrity sha512-SmZWMyJ3cJW+qj4CWJ7y2kD6PMx2zfZMA5X5jPunsytG4Eht4AVyIR38Y4QSpO62zZgkHyZlSTFOozBfhrlv9A==
dependencies: dependencies:
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
prismjs "^1.30.0" prismjs "^1.30.0"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/slugify@~10.1.0-rc.1": "@abp/slugify@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-10.1.0-rc.1.tgz#86aa65da4e80d1b651fb029e9366e84ceefde201" resolved "https://registry.yarnpkg.com/@abp/slugify/-/slugify-10.1.0-rc.2.tgz#42389b8471f4aacd340bebe664994b778eb335ab"
integrity sha512-MlIJ+7ee6IT1pH+5IUe4w+jfdZZIn1NAOSE0vmM8iz82MIgYcPp8PdV1qBeO+v8BlgfGJebKCul0VX98debbxw== integrity sha512-jhLEqxPpitTfwJgHW21urQnvP3NU+/hXZXzmnT6ZPBw7pVpbN2m1hDOm+JC+zKkLaa3WQ23rE9ewwrnJaoQ67w==
dependencies: dependencies:
slugify "^1.6.6" slugify "^1.6.6"
"@abp/star-rating-svg@~10.1.0-rc.1": "@abp/star-rating-svg@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-10.1.0-rc.1.tgz#48b87590495258264d02443a577ee82f0ac4c15b" resolved "https://registry.yarnpkg.com/@abp/star-rating-svg/-/star-rating-svg-10.1.0-rc.2.tgz#d1754352cc3af1f42577de19e18350b289685e68"
integrity sha512-DLr6NpGfhmF94uaXYdMFDpusMZ4SVHEOu2z4tJ+h8LelaOBvQSKBMjx2yc2R7fByReiujRc1JZeIhZKboZfVSA== integrity sha512-3Io7LMSnjQtc1b5CP1nZ8ucvXfq262PGMTHhwgM30xnvO9HJbtnppCmwVTbhZBQigKQFnySUKmccQbGjoqnN4A==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
star-rating-svg "^3.5.0" star-rating-svg "^3.5.0"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/tui-editor@~10.1.0-rc.1": "@abp/tui-editor@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-10.1.0-rc.1.tgz#fd9d014ea5bbdc9c93b3160040928cc27ba50d5e" resolved "https://registry.yarnpkg.com/@abp/tui-editor/-/tui-editor-10.1.0-rc.2.tgz#ebbd5bad1ee180a0c6e6a9cfd894499614a71e96"
integrity sha512-X6tlZs3/soUbl/L/aiQfIOZuiZRfmlUpEukIduJBlDsSaNR2hJgEa98RsQNvQ2yvSU/H7+9kwIwdizhQdimujA== integrity sha512-k5V+5ZE+HZebfyXLzddRQDGri3HP7wSjDXEbSMLTgxZTem7IzksyLWLAN/woKRzWX92BJXcsmR8T1rhuMhohhA==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
"@abp/prismjs" "~10.1.0-rc.1" "@abp/prismjs" "~10.1.0-rc.2"
"@abp/uppy@~10.1.0-rc.1": "@abp/uppy@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-10.1.0-rc.1.tgz#aa849234c078238c9bf6af8c181a1432ac628d22" resolved "https://registry.yarnpkg.com/@abp/uppy/-/uppy-10.1.0-rc.2.tgz#1b9ca53eda178e8ea5d14573da15b9c141a89fc0"
integrity sha512-0utLga9u7Do3BH1Nou7t01a9f89fhe5A6NqCvQg91opKmMFYOke5PiGAUOvbbbBh6kZDlPw9dc9E6fOhIBXh2w== integrity sha512-QHgTiVaZKZrnNigyE1F7OR3Tdtjdq6tjm164HWAPJSJOUbcv6v498Q7DWS2dIZMU2e/226HflS2NwwNV87s3XA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
uppy "^5.1.2" uppy "^5.1.2"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

4
modules/docs/app/VoloDocs.Web/package.json

@ -3,7 +3,7 @@
"name": "volo.docstestapp", "name": "volo.docstestapp",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2",
"@abp/docs": "~10.1.0-rc.1" "@abp/docs": "~10.1.0-rc.2"
} }
} }

306
modules/docs/app/VoloDocs.Web/yarn.lock

@ -2,229 +2,229 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/anchor-js@~10.1.0-rc.1": "@abp/anchor-js@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-10.1.0-rc.1.tgz#976f553f72e8fe6d9dca3886906c12a7d980f8f0" resolved "https://registry.yarnpkg.com/@abp/anchor-js/-/anchor-js-10.1.0-rc.2.tgz#5ed35c420ec53f9e305e9de943ebb005677d7617"
integrity sha512-pbgMsNGPhS8IKvSAzrF3d+8KxKqEYi1pssnfMvw+5LvfW2gdRnofjYuTFTaFzCQnYzUFlhVKSHd9yjz7RrWrvw== integrity sha512-D8rH9p8gGbNc6FpW24CFFW9JZD7tUiJkM3Lx31RsygwvmlolutN4jpzV5L9h9IvbrxJCT2jSqK1s686z8SHb3w==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
anchor-js "^5.0.0" anchor-js "^5.0.0"
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/clipboard@~10.1.0-rc.1": "@abp/clipboard@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.1.tgz#ebb677e689372d5c0d07a5814b61eae45397a3c8" resolved "https://registry.yarnpkg.com/@abp/clipboard/-/clipboard-10.1.0-rc.2.tgz#e99dbf190e3684e99c8e909bf38201c70e267502"
integrity sha512-iJpKYQJy5mN1O8n0+4DsWoWKAOasLuUE9Cja01Yl7YTb6XwYCGozBAVZbi+YouhYmsSr2zM4ozKxXPbXXt0u1w== integrity sha512-kRS9pWc1jRgr4D4/EV9zdAy3rhhGBrcqk2as5+6Ih49npsEJY/cF5mYH7mj/ZYy8SHqtae/CR7bZsR+uCDKYrQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
clipboard "^2.0.11" clipboard "^2.0.11"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/docs@~10.1.0-rc.1": "@abp/docs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-10.1.0-rc.1.tgz#b06d4a878de9d5149fcd96e8efa20be02179c2e9" resolved "https://registry.yarnpkg.com/@abp/docs/-/docs-10.1.0-rc.2.tgz#ac8c84cdc91c3ac6511ff39f9d8729f0673a1d30"
integrity sha512-+8wV8y1+VO55BHJHZsxW0/OTp7TpauCf/h/QkWjeCdGJ/+sE73FOkZ31Xr+jNCstteF/lwNbK8zFSNQVtQH87g== integrity sha512-oTJX12kZb8CIXQRdjsZx8VYSOgKTA6ei+5CPU4dPVZZiaYBzQ3MNsMlRrrRywwuWCTJedtThy9XOcUwB7LTqCg==
dependencies: dependencies:
"@abp/anchor-js" "~10.1.0-rc.1" "@abp/anchor-js" "~10.1.0-rc.2"
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/popper.js" "~10.1.0-rc.1" "@abp/popper.js" "~10.1.0-rc.2"
"@abp/prismjs" "~10.1.0-rc.1" "@abp/prismjs" "~10.1.0-rc.2"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/popper.js@~10.1.0-rc.1": "@abp/popper.js@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-10.1.0-rc.1.tgz#db1fcbd11df41a328456c2a6ae38283f9683611e" resolved "https://registry.yarnpkg.com/@abp/popper.js/-/popper.js-10.1.0-rc.2.tgz#09a23add65422b2a34a70dc074bdd8e0ec57d2a2"
integrity sha512-CJOrNB2T2fC3IiKw46eRr/NDzCTlNwsH6ooEovp4wy0O+t1kk4U/XnguN8wWxCl/SvW1VOAPOrRm6Ar2OABu+w== integrity sha512-z+YqO0KBr8Nf376sV031lti/bPr2SzuxWgDlNmxrebrF544hgsXC+BXsWhzXSDznEZucN1sIkeoNWEiuAjxctA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@popperjs/core" "^2.11.8" "@popperjs/core" "^2.11.8"
"@abp/prismjs@~10.1.0-rc.1": "@abp/prismjs@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.1.tgz#26ef6c368dbfdd27d2836f1dd8cd9e8cf630f0ab" resolved "https://registry.yarnpkg.com/@abp/prismjs/-/prismjs-10.1.0-rc.2.tgz#8565bab503a16fc349f4b0fa2609ad412ff838be"
integrity sha512-6OpD/w7NOSI7OpjubMx45gXsZY5K6ggynJ9uSqv3NDxSbj9l6c8cRTX1i56ATT10rhyYxZIw83FRhMlxOiLfjg== integrity sha512-SmZWMyJ3cJW+qj4CWJ7y2kD6PMx2zfZMA5X5jPunsytG4Eht4AVyIR38Y4QSpO62zZgkHyZlSTFOozBfhrlv9A==
dependencies: dependencies:
"@abp/clipboard" "~10.1.0-rc.1" "@abp/clipboard" "~10.1.0-rc.2"
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
prismjs "^1.30.0" prismjs "^1.30.0"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

7
modules/feature-management/src/Volo.Abp.FeatureManagement.Application.Contracts/Volo.Abp.FeatureManagement.Application.Contracts.abppkg.analyze.json

@ -73,6 +73,13 @@
"contentType": "abpModule", "contentType": "abpModule",
"name": "AbpFeatureManagementApplicationContractsModule", "name": "AbpFeatureManagementApplicationContractsModule",
"summary": null "summary": null
},
{
"displayName": "Manage host features",
"isEnabled": true,
"contentType": "permission",
"name": "FeatureManagement.ManageHostFeatures",
"summary": null
} }
] ]
} }

84
modules/identity/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.abppkg.analyze.json

@ -73,6 +73,90 @@
"contentType": "abpModule", "contentType": "abpModule",
"name": "AbpIdentityApplicationContractsModule", "name": "AbpIdentityApplicationContractsModule",
"summary": null "summary": null
},
{
"displayName": "Role management",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Roles",
"summary": null
},
{
"displayName": "Create",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Roles.Create",
"summary": null
},
{
"displayName": "Edit",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Roles.Update",
"summary": null
},
{
"displayName": "Delete",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Roles.Delete",
"summary": null
},
{
"displayName": "Change permissions",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Roles.ManagePermissions",
"summary": null
},
{
"displayName": "User management",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users",
"summary": null
},
{
"displayName": "Create",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users.Create",
"summary": null
},
{
"displayName": "Edit",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users.Update",
"summary": null
},
{
"displayName": "Manage roles",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users.Update.ManageRoles",
"summary": null
},
{
"displayName": "Delete",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users.Delete",
"summary": null
},
{
"displayName": "Change permissions",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.Users.ManagePermissions",
"summary": null
},
{
"displayName": "User lookup",
"isEnabled": true,
"contentType": "permission",
"name": "AbpIdentity.UserLookup",
"summary": null
} }
] ]
} }

13
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityResultException.cs

@ -2,18 +2,23 @@
using System.Linq; using System.Linq;
using JetBrains.Annotations; using JetBrains.Annotations;
using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Identity;
using Volo.Abp.ExceptionHandling;
using Volo.Abp.Localization;
namespace Volo.Abp.Identity; namespace Volo.Abp.Identity;
public class AbpIdentityResultException : BusinessException public class AbpIdentityResultException : BusinessException, ILocalizeErrorMessage
{ {
public IdentityResult IdentityResult { get; } public IdentityResult IdentityResult { get; }
public AbpIdentityResultException([NotNull] IdentityResult identityResult) public AbpIdentityResultException([NotNull] IdentityResult identityResult)
: base( : base(message: identityResult.Errors.Select(err => err.Description).JoinAsString(", "))
code: $"Volo.Abp.Identity:{identityResult.Errors.First().Code}",
message: identityResult.Errors.Select(err => err.Description).JoinAsString(", "))
{ {
IdentityResult = Check.NotNull(identityResult, nameof(identityResult)); IdentityResult = Check.NotNull(identityResult, nameof(identityResult));
} }
public string LocalizeMessage(LocalizationContext context)
{
return Message;
}
} }

71
modules/identity/test/Volo.Abp.Identity.Domain.Tests/Volo/Abp/Identity/AbpIdentityResultException_Tests.cs

@ -0,0 +1,71 @@
using Microsoft.AspNetCore.Identity;
using Shouldly;
using Volo.Abp.AspNetCore.ExceptionHandling;
using Volo.Abp.Localization;
using Xunit;
namespace Volo.Abp.Identity;
public class AbpIdentityResultException_Tests : AbpIdentityDomainTestBase
{
[Fact]
public void Should_Localize_Messages()
{
var describer = GetRequiredService<IdentityErrorDescriber>();
var exceptionToErrorInfoConverter = GetRequiredService<IExceptionToErrorInfoConverter>();
using (CultureHelper.Use("en"))
{
var exception = new AbpIdentityResultException(
IdentityResult.Failed(
describer.PasswordTooShort(6),
describer.PasswordRequiresNonAlphanumeric(),
describer.DefaultError())
);
var message = exception.LocalizeMessage(new LocalizationContext(ServiceProvider));
exceptionToErrorInfoConverter.Convert(exception).Message.ShouldBe(message);
message.ShouldNotBeNull();
message.ShouldContain("Password length must be greater than 6 characters.");
message.ShouldContain("Password must contain at least one non-alphanumeric character.");
message.ShouldContain("An unknown failure has occurred.");
}
using (CultureHelper.Use("tr"))
{
var exception = new AbpIdentityResultException(
IdentityResult.Failed(
describer.PasswordTooShort(6),
describer.PasswordRequiresNonAlphanumeric(),
describer.DefaultError())
);
var message = exception.LocalizeMessage(new LocalizationContext(ServiceProvider));
exceptionToErrorInfoConverter.Convert(exception).Message.ShouldBe(message);
message.ShouldNotBeNull();
message.ShouldContain("Şifre uzunluğu 6 karakterden uzun olmalıdır.");
message.ShouldContain("Parola en az bir alfasayısal olmayan karakter içermeli");
message.ShouldContain("Bilinmeyen bir hata oluştu.");
}
using (CultureHelper.Use("zh-Hans"))
{
var exception = new AbpIdentityResultException(
IdentityResult.Failed(
describer.PasswordTooShort(6),
describer.PasswordRequiresNonAlphanumeric(),
describer.DefaultError())
);
var message = exception.LocalizeMessage(new LocalizationContext(ServiceProvider));
exceptionToErrorInfoConverter.Convert(exception).Message.ShouldBe(message);
message.ShouldNotBeNull();
message.ShouldContain("密码长度必须大于 6 字符。");
message.ShouldContain("密码必须至少包含一个非字母数字字符。");
message.ShouldContain("发生了一个未知错误。");
}
}
}

2
modules/openiddict/app/OpenIddict.Demo.Server/package.json

@ -3,6 +3,6 @@
"name": "my-app", "name": "my-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2"
} }
} }

20
modules/openiddict/app/angular/package.json

@ -12,15 +12,15 @@
}, },
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/ng.account": "~10.1.0-rc.1", "@abp/ng.account": "~10.1.0-rc.2",
"@abp/ng.components": "~10.1.0-rc.1", "@abp/ng.components": "~10.1.0-rc.2",
"@abp/ng.core": "~10.1.0-rc.1", "@abp/ng.core": "~10.1.0-rc.2",
"@abp/ng.oauth": "~10.1.0-rc.1", "@abp/ng.oauth": "~10.1.0-rc.2",
"@abp/ng.identity": "~10.1.0-rc.1", "@abp/ng.identity": "~10.1.0-rc.2",
"@abp/ng.setting-management": "~10.1.0-rc.1", "@abp/ng.setting-management": "~10.1.0-rc.2",
"@abp/ng.tenant-management": "~10.1.0-rc.1", "@abp/ng.tenant-management": "~10.1.0-rc.2",
"@abp/ng.theme.shared": "~10.1.0-rc.1", "@abp/ng.theme.shared": "~10.1.0-rc.2",
"@abp/ng.theme.lepton-x": "~5.1.0-rc.1", "@abp/ng.theme.lepton-x": "~5.1.0-rc.2",
"@angular/animations": "^15.0.1", "@angular/animations": "^15.0.1",
"@angular/common": "^15.0.1", "@angular/common": "^15.0.1",
"@angular/compiler": "^15.0.1", "@angular/compiler": "^15.0.1",
@ -36,7 +36,7 @@
"zone.js": "~0.11.4" "zone.js": "~0.11.4"
}, },
"devDependencies": { "devDependencies": {
"@abp/ng.schematics": "~10.1.0-rc.1", "@abp/ng.schematics": "~10.1.0-rc.2",
"@angular-devkit/build-angular": "^15.0.1", "@angular-devkit/build-angular": "^15.0.1",
"@angular-eslint/builder": "~15.1.0", "@angular-eslint/builder": "~15.1.0",
"@angular-eslint/eslint-plugin": "~15.1.0", "@angular-eslint/eslint-plugin": "~15.1.0",

2
modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/package.json

@ -3,6 +3,6 @@
"name": "demo-app", "name": "demo-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2"
} }
} }

240
modules/setting-management/app/Volo.Abp.SettingManagement.DemoApp/yarn.lock

@ -2,185 +2,185 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.basic@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.1.tgz#99407c4108b685eef91f21d038cc5bd2343b5847" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-10.1.0-rc.2.tgz#599f5c47a417d1230fc17c0446a0229f920f7246"
integrity sha512-UbVgYf1K+zUqueNCwOl4QoUAz7nwJyoQJSqq0gi7LA9JBRBbb8nDA8szQjAUVqF4h+k4o61588MUQnerUQlZ6g== integrity sha512-8F4nEK+VtgRRf8n+66HMbtCEaOMCW/OdbSEWRl9ahMNoj860oPIJ8P8Qn/2+LjtkPMdDAfCdEzyDzCd3igaFaA==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui.theme.shared@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.1.tgz#7c0f721bdd4ec99f441a49e662a457d98c2c66fa" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-10.1.0-rc.2.tgz#e5056e4e159f5815e3cffecab5c46f3d7d4f79d7"
integrity sha512-dB6wmR3C43Vn1/hiWY3IkxivUEWTGhO4mj3hffwAeyJqnEUh6kQUW6UfmYNGEhahSjhVIS3lUZ4x+R+yGCpemw== integrity sha512-bo56XzQZPYL/3ckWTTTSSUsSFSFJobvfE29cz13NIrZ/tBtWyQCAJn92wYHuY+6IezYUWb4ga3PkFeHRzR142A==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~10.1.0-rc.1" "@abp/aspnetcore.mvc.ui" "~10.1.0-rc.2"
"@abp/bootstrap" "~10.1.0-rc.1" "@abp/bootstrap" "~10.1.0-rc.2"
"@abp/bootstrap-datepicker" "~10.1.0-rc.1" "@abp/bootstrap-datepicker" "~10.1.0-rc.2"
"@abp/bootstrap-daterangepicker" "~10.1.0-rc.1" "@abp/bootstrap-daterangepicker" "~10.1.0-rc.2"
"@abp/datatables.net-bs5" "~10.1.0-rc.1" "@abp/datatables.net-bs5" "~10.1.0-rc.2"
"@abp/font-awesome" "~10.1.0-rc.1" "@abp/font-awesome" "~10.1.0-rc.2"
"@abp/jquery-form" "~10.1.0-rc.1" "@abp/jquery-form" "~10.1.0-rc.2"
"@abp/jquery-validation-unobtrusive" "~10.1.0-rc.1" "@abp/jquery-validation-unobtrusive" "~10.1.0-rc.2"
"@abp/lodash" "~10.1.0-rc.1" "@abp/lodash" "~10.1.0-rc.2"
"@abp/luxon" "~10.1.0-rc.1" "@abp/luxon" "~10.1.0-rc.2"
"@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.1" "@abp/malihu-custom-scrollbar-plugin" "~10.1.0-rc.2"
"@abp/moment" "~10.1.0-rc.1" "@abp/moment" "~10.1.0-rc.2"
"@abp/select2" "~10.1.0-rc.1" "@abp/select2" "~10.1.0-rc.2"
"@abp/sweetalert2" "~10.1.0-rc.1" "@abp/sweetalert2" "~10.1.0-rc.2"
"@abp/timeago" "~10.1.0-rc.1" "@abp/timeago" "~10.1.0-rc.2"
"@abp/aspnetcore.mvc.ui@~10.1.0-rc.1": "@abp/aspnetcore.mvc.ui@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.1.tgz#290297353fdc15826a870b35162a0bbf4c9bc948" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-10.1.0-rc.2.tgz#e25d3575d40bfcb3f809bd2d355671181ee5ff40"
integrity sha512-RBR5wPf5ygzuSpfXG5MeOGd/YOtQH5pVyU65T4DMtGpLKHQxgxbh7JK1btyC5zGmzr/Ds5+5Mcd7S66dIckDJQ== integrity sha512-MOF86bVbi7N/nIla+361nsBrN4tiSka8xzpWcgqlLcCAl9ILG4rugbtafBAjN81taPma2peZM7egaOR4SDkTMw==
dependencies: dependencies:
ansi-colors "^4.1.3" ansi-colors "^4.1.3"
"@abp/bootstrap-datepicker@~10.1.0-rc.1": "@abp/bootstrap-datepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.1.tgz#54730dc001dab746af18c41d51b73949742e3b2d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-10.1.0-rc.2.tgz#be80c6104ba53e18935fbf62ca2c1890f4b2fde4"
integrity sha512-DhVfA9WjfRQrUwjN2eJTCjLEhAU7rLjWgMlifW1id3HbdMs9emKn0rzQqhZ8MOSUNBwLkbUWcXWnojRUFgUB+w== integrity sha512-BNcDYUSbZaLah4SfXm0efoqFTsOViVm6370k9L7vix/OGpIWwklJsr8y78lvdM5ANgNCfl0LPSq+seLJFc/OLA==
dependencies: dependencies:
bootstrap-datepicker "^1.10.1" bootstrap-datepicker "^1.10.1"
"@abp/bootstrap-daterangepicker@~10.1.0-rc.1": "@abp/bootstrap-daterangepicker@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.1.tgz#9af7ffe1d1bd4fc99e1606e30189e6f28bb2f201" resolved "https://registry.yarnpkg.com/@abp/bootstrap-daterangepicker/-/bootstrap-daterangepicker-10.1.0-rc.2.tgz#f189f7d070ebd97d9cfdcb99571cab2d6a198ab5"
integrity sha512-/Hsge8UwLZFuPNWRZhpf4nVB4urPYsaKAuCz0pSH5OHmS4FWr0Ng3vnUd9fcSeaq9OV2HarcgGWDapYtszttVQ== integrity sha512-bV8J0MuiAFVLkr48JsB6aZU6aPoqw+Gyhq1szQ74bEwNQlRBPuF92WVA5FACaUBj8dMUzR9HDDAYQuxUzpKYKA==
dependencies: dependencies:
bootstrap-daterangepicker "^3.1.0" bootstrap-daterangepicker "^3.1.0"
"@abp/bootstrap@~10.1.0-rc.1": "@abp/bootstrap@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.1.tgz#e937f0a10874c0f3b0f719ff6a316b0ca91e65c5" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-10.1.0-rc.2.tgz#2300800a29ea09b91f5ed2e6177e5921fe7d2a0f"
integrity sha512-GlRyH5oCjcmFk1eBGCHk6GglL2DJ5RLlDXn7HWU675u48DCQTkBbKP9qA3RcYERQB4qqhcOKEDtYPZVljRVHRQ== integrity sha512-K+tDI9vz/Y9B/yu0i3AVpm4v3Odi44Q/yH5hAprL7f4pGxEOiqAFB/qzHAxG+7Oa7wjv5tPLv+Cz4DavBQjd8Q==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
bootstrap "^5.3.8" bootstrap "^5.3.8"
"@abp/core@~10.1.0-rc.1": "@abp/core@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.1.tgz#d9ce0958407fa39c8015eb2d9328a3a157aaa4f0" resolved "https://registry.yarnpkg.com/@abp/core/-/core-10.1.0-rc.2.tgz#403687aff5a30788f7b7ca660abdfd85d89438aa"
integrity sha512-pFsaQei1W0JRJkhNdlxq+EDP7x+83nT0UHZetTHNzp8tkP4Cn8Ni/ZODIUku8ck1vcKc0X3pXKj42BN+yZ1g3g== integrity sha512-euuG2Hna/DT6/R1dGOjgp3vcehYtF+CcOkRj31oquYKaM5YWk4OaZ314DSpnjgs/xo8DuVc4eKFQwIxD9RK41w==
dependencies: dependencies:
"@abp/utils" "~10.1.0-rc.1" "@abp/utils" "~10.1.0-rc.2"
"@abp/datatables.net-bs5@~10.1.0-rc.1": "@abp/datatables.net-bs5@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.1.tgz#7981bc64c543d24aa5b0ab373f5693187990d5be" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-10.1.0-rc.2.tgz#a60650d1802b40751d30f8f6c56beb23fd66481b"
integrity sha512-yaYHuZ9eVHT2cZcH9r680X+imWhOqbhWlOlbLDpJtg7Un0ejDzou+JqxKYHHXmSEKYEPHjfCEhnXkMnyqvSUHQ== integrity sha512-IWwexNqbMpET54Fvm9LoPTJYf+4CoBbjFOvz3sL6CgO2feV5R5fKigjVU8zXKNh2W+RG8L6zEarfVxrr114TsA==
dependencies: dependencies:
"@abp/datatables.net" "~10.1.0-rc.1" "@abp/datatables.net" "~10.1.0-rc.2"
datatables.net-bs5 "^2.3.4" datatables.net-bs5 "^2.3.4"
"@abp/datatables.net@~10.1.0-rc.1": "@abp/datatables.net@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.1.tgz#f487357690060dd055dbb7f54e1298e8d8a81e40" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-10.1.0-rc.2.tgz#9147f68bc6dbc4eb40a9ddf65c7859e788cdcac2"
integrity sha512-KTKTW73H9vaX6J9ipXUf7d3QdseKaFRzl7e1QKldOoQxBs4pzT2NATGdUyiAnJsfPl4scpSFetzI66Rs7r3idg== integrity sha512-a9DJpwg14S4nVOiC4ipw0CQwEYWB602e2gCJiH7W1mxopbQb135RxwhtdTnW//eIONcxC9IrEuvcBEAUVt2B7Q==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
datatables.net "^2.3.4" datatables.net "^2.3.4"
"@abp/font-awesome@~10.1.0-rc.1": "@abp/font-awesome@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.1.tgz#2ee67b07ce6296c7f0ac5217c9d9677b9c70f05e" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-10.1.0-rc.2.tgz#364466cfe67e41e0c4d16b57d3923d10f66369f1"
integrity sha512-O/3oLbSu1pMNftQzQW29gSpkWCFJazFKjT7sOYId1Ueric0svyJ42hFr5gHf9RFVmCU5pgyhawcoTyzQ34PxYQ== integrity sha512-F1Jy8xoFV2aA+VN+NH1gtrG96/j9w7Picc+KLoCoIyNnJr/xJur11XkJyu5ln8KF4V7p/DY7QaQodWV/btOs8g==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
"@fortawesome/fontawesome-free" "^7.0.1" "@fortawesome/fontawesome-free" "^7.0.1"
"@abp/jquery-form@~10.1.0-rc.1": "@abp/jquery-form@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.1.tgz#60fc98085671a2ff08e8c411847354b6a48cf55e" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-10.1.0-rc.2.tgz#3857717d07569c22d4bbbe459238abeb816d606a"
integrity sha512-bj70hE7MsH2AoBb2yU2d6ng5Bo/wqjCNUI0kbG0T1T4yp1cToGAVJ6hrd+KOp2Tf6W+NITn1EycxRTCktE9QRA== integrity sha512-2D5WHVnfK9bhRces1tgPwOEoc7KCYKYiKHBOcqct+LTA7zoRjJv/PM8/JhFVl+grVIw1aSwO4tU3YfZ22Vxipg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~10.1.0-rc.1": "@abp/jquery-validation-unobtrusive@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.1.tgz#a820989d8daf53096f838817cb2b3dba21f71653" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-10.1.0-rc.2.tgz#efd7b69a078a20c0bf405408dbdf52a7bf770b3b"
integrity sha512-7uXxbvuZ+ecD5suH3nx/ggiFAA8GjXGAB5tuGCdqePdBn1PMzDIDI1ZP9q8sR7sMjo7RKVK6MzX+PazUuJ4L7g== integrity sha512-tZ0MWgzBqp+SNfMxM0z2cGB21NiTHuVJyyQaXKE/ptuD5pc0uRkcqw/J2kWfiqsoVgChz27IB6h8/jqDafS4qg==
dependencies: dependencies:
"@abp/jquery-validation" "~10.1.0-rc.1" "@abp/jquery-validation" "~10.1.0-rc.2"
jquery-validation-unobtrusive "^4.0.0" jquery-validation-unobtrusive "^4.0.0"
"@abp/jquery-validation@~10.1.0-rc.1": "@abp/jquery-validation@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.1.tgz#c8630b0a53ee93218be5c82264085b36b0b07936" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-10.1.0-rc.2.tgz#d39537a7356c51f9db2e66f6740cf6df86bd0442"
integrity sha512-/eS4vy5gwHIaRr6aHkvO6xWRjL22bVly7S0AqbZw2OxJ0pw1n23n+zipn/NDRSngRZSajTLLm1pYCG5qlJGd3A== integrity sha512-LOkS0NKk4pLtLjPU0CCbwROyUg6EtJN8Z/it7QuKK1CIRfYYcAStgNnNm5geZP7CqECIkoiFfgWjI+L5Z9/Tfg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
jquery-validation "^1.21.0" jquery-validation "^1.21.0"
"@abp/jquery@~10.1.0-rc.1": "@abp/jquery@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.1.tgz#38d5d5b5a6144bf207773ef26f36d381a257a635" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-10.1.0-rc.2.tgz#101a55f70d510978c8c05f5857d0e9d4965263f7"
integrity sha512-YarNlYPG7MfLc0fSnOcVrp9Da1EUxz4zUERnTOQ0/EdOUdcFhGAqI2yfoTFCxqX+TSphQWZEdif/tsfULtkI1A== integrity sha512-bQV1uFWGtwRYjNOsqJ8FM2004idX2Jj7YVL19YF1/PjyPUSMX+s8/IvJizBjyY5hPAiWBBhmV9g+IFWzxlDQoQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
jquery "~3.7.1" jquery "~3.7.1"
"@abp/lodash@~10.1.0-rc.1": "@abp/lodash@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.1.tgz#bf735e34a42ddcdf19e331c8c5cf1a24a87475cb" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-10.1.0-rc.2.tgz#d08c03f8d3d0fbaa3e71e603cbe5fb7f176933ef"
integrity sha512-JQV0oFLE90V9GdrD37PTMiOylw/U6yjpDu5PblVW/zlNmw/TzEtukp3/vJl7GJxoKRYWtgJf1nFLgG/+2kjE1A== integrity sha512-KCnD1p2y52ZI+2ifpiFIUAiDPsKehnOD8HV5qKeObO6UCP97okif8IP+sQDmNQb8O33y/NKTyx/HcpwBbe/NYQ==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
lodash "^4.17.21" lodash "^4.17.21"
"@abp/luxon@~10.1.0-rc.1": "@abp/luxon@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.1.tgz#1c883ad3a5653f0c6ce4965e4b4ce21543129534" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-10.1.0-rc.2.tgz#ef8d2b323bac054fc9610e241e1b1763d229e065"
integrity sha512-SDtwjIDR4OzrtzRWpgb8atUSK0DwajJ5LC486xHq5ftnbFETRfOwihyIfC2H4oIPPDE5oS+LOnjCkRYVkGt0oQ== integrity sha512-qYFl6XO3g9mZiu0dtIczI7LRuYWwc+RkpbDzSmruXcRks3KA+ZZco2vhHNnlwtXcINl/TXtbW7Wc0MX+8IB1Kw==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
luxon "^3.7.2" luxon "^3.7.2"
"@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.1": "@abp/malihu-custom-scrollbar-plugin@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.1.tgz#770106795f5eba9d36dd2d4002e450c215c66787" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-10.1.0-rc.2.tgz#dfaf666442c7c122f7da72c83b9adf194d5b6ec8"
integrity sha512-EFwQ7rUiPM6mxznn1t23ySzQH+VQ0dB2YxOqBAluFR/yC3qypjb98jGQaZKsJx9+iT4DuG9gGPKOfct1Sqh0KQ== integrity sha512-PudMHmNQgZ6JZeaVt1ZoXLqO0UZXJzUYiBah2LDkC4EMLjnMJFINHBoEVVa4ooXH0yjFv+zsbN0vWZYJ8TBJIA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/moment@~10.1.0-rc.1": "@abp/moment@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.1.tgz#fe5bfa5bc28bb847cf801523c1b2f118ffb12447" resolved "https://registry.yarnpkg.com/@abp/moment/-/moment-10.1.0-rc.2.tgz#610a1592d13984aea51abbd13df8c5995a089149"
integrity sha512-P6z9YO/FC/5DhTDWsHkquo5tEzIhSfUnRefLcZtv7XuJtevH/93NFSr23RL6D+F4r3cB5GMXGFUYmXGKWoXGHg== integrity sha512-ep8PnAXARw0t/wtGOVp/oiNhF3B0Bh6y2vRzKrcSoyXAQREGGm4fJdZVYZLGTfI4lFLTjebEgf4O7T9feUwJAw==
dependencies: dependencies:
moment "^2.30.1" moment "^2.30.1"
"@abp/select2@~10.1.0-rc.1": "@abp/select2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.1.tgz#19432bb6483f8a3470f02a3037612835b4c54ef4" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-10.1.0-rc.2.tgz#40c5418d007fc36817eecbe6388d767e4e7ca887"
integrity sha512-xPvdrgXZzRhEIrEyw9eoITc+hYlbi8fSW3BGQ1ZMBXWgYkjWxhj/1AuLsu2ewFAKdBNz+PewjA0MKP6iBLATHw== integrity sha512-Pq0wlpL01sWRLUg5um3JtBXIqi3mmbwPwvgxP8hFbQngAt9JXAK8geNRiTMrIZgtW/ycXtM1v6I4zuWOLOeAGg==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~10.1.0-rc.1": "@abp/sweetalert2@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.1.tgz#40f4d6964cd6620dcb81040d84e432f4ae314686" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-10.1.0-rc.2.tgz#d35858c69e10c6726b02cdfcea88dfc32385963f"
integrity sha512-E4dUC2k/kClBnadtGK5NWR9YmCGgKq5uOGjEVtzXxJH62MlaCXlcxRrK9wNzX8pzDMDYFKjuOUugoROEgbRKWQ== integrity sha512-s9VPRToohN45uzHcKCF5Mcj8FVjsXcXUb0U3tuaT/Y+u4adHB3fBxYiXJFM0sVsCJ81dFktxwka40Wm8Taz/zA==
dependencies: dependencies:
"@abp/core" "~10.1.0-rc.1" "@abp/core" "~10.1.0-rc.2"
sweetalert2 "^11.23.0" sweetalert2 "^11.23.0"
"@abp/timeago@~10.1.0-rc.1": "@abp/timeago@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.1.tgz#482e3a645f63ee9adf708ef8ae895fcf2bcb4271" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-10.1.0-rc.2.tgz#98d630cc3843eee64dbcc34fb8ca5afbab034718"
integrity sha512-UOb2o6bvi3+2kbD7+rUJdqTQvTbgqUD7ktd0U5Hulb3dBOyv6MZEagzMbXA003OROiS23JzzT7M0lLStvixwlg== integrity sha512-vJmk+otyXXJE2s2J8iYpLVaFuNAYnIUSOitmi7umYnL+k/UE2KQhBXU7FR0/OBY9mAZYd+shaiGIU1LMSaJ+Xg==
dependencies: dependencies:
"@abp/jquery" "~10.1.0-rc.1" "@abp/jquery" "~10.1.0-rc.2"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/utils@~10.1.0-rc.1": "@abp/utils@~10.1.0-rc.2":
version "10.1.0-rc.1" version "10.1.0-rc.2"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.1.tgz#e53ef81f39fd620b41ae2bfb69d06ee85ccb28ad" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-10.1.0-rc.2.tgz#86a980c6536b3b5ce185d406723b28be421864ac"
integrity sha512-xBHIw5rmAttN5PL5C84L2znHkA2HMrP6HaA2aV5k6KU7BtOWJhviZnKJgbUBfufNQNeLwlThCHAfS7aOv/UQkg== integrity sha512-Oz863VNA8fraQ81vTvqM0IqwiaseLwfFU5QNn6iOGOfn5wQrEkPwtZ0jMI+DGNtJgPzoKiq+iKc3K+SiuVgldg==
dependencies: dependencies:
just-compare "^2.3.0" just-compare "^2.3.0"

21
modules/setting-management/src/Volo.Abp.SettingManagement.Application.Contracts/Volo.Abp.SettingManagement.Application.Contracts.abppkg.analyze.json

@ -68,6 +68,27 @@
"contentType": "abpModule", "contentType": "abpModule",
"name": "AbpSettingManagementApplicationContractsModule", "name": "AbpSettingManagementApplicationContractsModule",
"summary": null "summary": null
},
{
"displayName": "Emailing",
"isEnabled": true,
"contentType": "permission",
"name": "SettingManagement.Emailing",
"summary": null
},
{
"displayName": "Emailing test",
"isEnabled": true,
"contentType": "permission",
"name": "SettingManagement.Emailing.Test",
"summary": null
},
{
"displayName": "Time zone",
"isEnabled": true,
"contentType": "permission",
"name": "SettingManagement.TimeZone",
"summary": null
} }
] ]
} }

4
modules/virtual-file-explorer/app/package.json

@ -3,7 +3,7 @@
"name": "my-app", "name": "my-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~10.1.0-rc.2",
"@abp/virtual-file-explorer": "~10.1.0-rc.1" "@abp/virtual-file-explorer": "~10.1.0-rc.2"
} }
} }

2
npm/lerna.json

@ -1,5 +1,5 @@
{ {
"version": "10.1.0-rc.1", "version": "10.1.0-rc.2",
"packages": [ "packages": [
"packs/*" "packs/*"
], ],

2
npm/ng-packs/.gitignore

@ -58,3 +58,5 @@ Thumbs.db
.angular .angular
.nx/ .nx/
vitest.config.*.timestamp*

6
npm/ng-packs/apps/dev-app/project.json

@ -175,10 +175,12 @@
"executor": "@nx/eslint:lint" "executor": "@nx/eslint:lint"
}, },
"test": { "test": {
"executor": "@nx/jest:jest", "executor": "@nx/vitest:test",
"outputs": ["{workspaceRoot}/coverage/apps/dev-app"], "outputs": ["{workspaceRoot}/coverage/apps/dev-app"],
"options": { "options": {
"jestConfig": "apps/dev-app/jest.config.ts" "passWithNoTests": true,
"reportsDirectory": "../../coverage/apps/dev-app",
"silent": false
} }
}, },
"serve-static": { "serve-static": {

5
npm/ng-packs/jest.config.ts

@ -1,5 +1,8 @@
import { getJestProjectsAsync } from '@nx/jest'; import { getJestProjectsAsync } from '@nx/jest';
/**
* @deprecated use vitest instead of jest
* @see https://vitest.dev/guide/migration.html#jest
*/
export default async () => ({ export default async () => ({
projects: await getJestProjectsAsync(), projects: await getJestProjectsAsync(),
}); });

4
npm/ng-packs/jest.preset.js

@ -1,3 +1,7 @@
/**
* @deprecated use vitest instead of jest
* @see https://vitest.dev/guide/migration.html#jest
*/
const nxPreset = require('@nx/jest/preset').default; const nxPreset = require('@nx/jest/preset').default;
module.exports = { module.exports = {

4
npm/ng-packs/nx.json

@ -118,6 +118,10 @@
"cache": true, "cache": true,
"dependsOn": ["^build"], "dependsOn": ["^build"],
"inputs": ["production", "^production"] "inputs": ["production", "^production"]
},
"@nx/vitest:test": {
"cache": true,
"inputs": ["default", "^production"]
} }
}, },
"namedInputs": { "namedInputs": {

20
npm/ng-packs/package.json

@ -10,6 +10,8 @@
"build:all": "nx run-many --target=build --all --exclude=dev-app,schematics --prod && npm run build:schematics", "build:all": "nx run-many --target=build --all --exclude=dev-app,schematics --prod && npm run build:schematics",
"test": "ng test --detect-open-handles=true --run-in-band=true --watch-all=true", "test": "ng test --detect-open-handles=true --run-in-band=true --watch-all=true",
"test:all": "nx run-many --target=test --all", "test:all": "nx run-many --target=test --all",
"test:vitest": "vitest",
"test:vitest:project": "sh -c 'vitest --project \"${1:-core}\"' _",
"lint-staged": "lint-staged", "lint-staged": "lint-staged",
"lint": "nx workspace-lint && ng lint", "lint": "nx workspace-lint && ng lint",
"lint:all": "nx run-many --target=lint --all", "lint:all": "nx run-many --target=lint --all",
@ -46,8 +48,8 @@
}, },
"private": true, "private": true,
"devDependencies": { "devDependencies": {
"@abp/ng.theme.lepton-x": "~5.1.0-rc.1", "@abp/ng.theme.lepton-x": "~5.1.0-rc.2",
"@abp/utils": "~10.1.0-rc.1", "@abp/utils": "~10.1.0-rc.2",
"@angular-devkit/build-angular": "~21.0.0", "@angular-devkit/build-angular": "~21.0.0",
"@angular-devkit/core": "~21.0.0", "@angular-devkit/core": "~21.0.0",
"@angular-devkit/schematics": "~21.0.0", "@angular-devkit/schematics": "~21.0.0",
@ -80,23 +82,26 @@
"@nx/eslint": "~22.2.0", "@nx/eslint": "~22.2.0",
"@nx/eslint-plugin": "~22.2.0", "@nx/eslint-plugin": "~22.2.0",
"@nx/jest": "~22.2.0", "@nx/jest": "~22.2.0",
"@nx/js": "~22.2.0", "@nx/js": "22.2.7",
"@nx/plugin": "~22.2.0", "@nx/plugin": "~22.2.0",
"@nx/vite": "22.2.7",
"@nx/vitest": "22.2.7",
"@nx/web": "~22.2.0", "@nx/web": "~22.2.0",
"@nx/workspace": "~22.2.0", "@nx/workspace": "~22.2.0",
"@popperjs/core": "~2.11.0", "@popperjs/core": "~2.11.0",
"@schematics/angular": "~21.0.0", "@schematics/angular": "~21.0.0",
"@swc-node/register": "1.9.2", "@swc-node/register": "1.9.2",
"@swc/cli": "0.6.0", "@swc/cli": "0.6.0",
"@swc/core": "~1.5.0", "@swc/core": "~1.5.7",
"@swc/helpers": "~0.5.0", "@swc/helpers": "~0.5.11",
"@swimlane/ngx-datatable": "~22.0.0", "@swimlane/ngx-datatable": "~22.0.0",
"@types/express": "~5.0.0", "@types/express": "~5.0.0",
"@types/jest": "29.5.14", "@types/jest": "29.5.14",
"@types/node": "~20.11.0", "@types/node": "20.19.9",
"@typescript-eslint/eslint-plugin": "7.16.0", "@typescript-eslint/eslint-plugin": "7.16.0",
"@typescript-eslint/parser": "7.16.0", "@typescript-eslint/parser": "7.16.0",
"@typescript-eslint/utils": "^7.16.0", "@typescript-eslint/utils": "^7.16.0",
"@vitest/coverage-v8": "^4.0.0",
"angular-oauth2-oidc": "~20.0.0", "angular-oauth2-oidc": "~20.0.0",
"autoprefixer": "^10.4.21", "autoprefixer": "^10.4.21",
"bootstrap": "~5.0.0", "bootstrap": "~5.0.0",
@ -114,6 +119,7 @@
"jest-canvas-mock": "^2.0.0", "jest-canvas-mock": "^2.0.0",
"jest-environment-jsdom": "^29.0.0", "jest-environment-jsdom": "^29.0.0",
"jest-preset-angular": "14.6.0", "jest-preset-angular": "14.6.0",
"jsdom": "~22.1.0",
"jsonc-eslint-parser": "^2.0.0", "jsonc-eslint-parser": "^2.0.0",
"jsonc-parser": "^2.0.0", "jsonc-parser": "^2.0.0",
"just-clone": "^6.0.0", "just-clone": "^6.0.0",
@ -137,6 +143,8 @@
"tslib": "^2.3.0", "tslib": "^2.3.0",
"tslint": "~6.1.0", "tslint": "~6.1.0",
"typescript": "~5.9.0", "typescript": "~5.9.0",
"vite": "^7.0.0",
"vitest": "^4.0.0",
"zone.js": "~0.15.0" "zone.js": "~0.15.0"
}, },
"lint-staged": { "lint-staged": {

2
npm/ng-packs/packages/account-core/.eslintrc.json

@ -1,6 +1,6 @@
{ {
"extends": ["../../.eslintrc.json"], "extends": ["../../.eslintrc.json"],
"ignorePatterns": ["!**/*"], "ignorePatterns": ["!**/*", "**/vitest.config.*.timestamp*"],
"overrides": [ "overrides": [
{ {
"files": ["*.ts"], "files": ["*.ts"],

4
npm/ng-packs/packages/account-core/jest.config.ts

@ -1,4 +1,8 @@
/* eslint-disable */ /* eslint-disable */
/**
* @deprecated use vitest instead of jest
* @see https://vitest.dev/guide/migration.html#jest
*/
export default { export default {
displayName: 'account-core', displayName: 'account-core',
preset: '../../jest.preset.js', preset: '../../jest.preset.js',

6
npm/ng-packs/packages/account-core/package.json

@ -1,14 +1,14 @@
{ {
"name": "@abp/ng.account.core", "name": "@abp/ng.account.core",
"version": "10.1.0-rc.1", "version": "10.1.0-rc.2",
"homepage": "https://abp.io", "homepage": "https://abp.io",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/abpframework/abp.git" "url": "https://github.com/abpframework/abp.git"
}, },
"dependencies": { "dependencies": {
"@abp/ng.core": "~10.1.0-rc.1", "@abp/ng.core": "~10.1.0-rc.2",
"@abp/ng.theme.shared": "~10.1.0-rc.1", "@abp/ng.theme.shared": "~10.1.0-rc.2",
"tslib": "^2.0.0" "tslib": "^2.0.0"
}, },
"publishConfig": { "publishConfig": {

14
npm/ng-packs/packages/account-core/project.json

@ -23,16 +23,16 @@
}, },
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": {
"executor": "@nx/jest:jest",
"outputs": ["{workspaceRoot}/coverage/packages/account-core"],
"options": {
"jestConfig": "packages/account-core/jest.config.ts"
}
},
"lint": { "lint": {
"executor": "@nx/eslint:lint", "executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"] "outputs": ["{options.outputFile}"]
},
"test": {
"executor": "@nx/vitest:test",
"outputs": ["{options.reportsDirectory}"],
"options": {
"reportsDirectory": "../../coverage/packages/account-core"
}
} }
} }
} }

19
npm/ng-packs/packages/account-core/tsconfig.lib.json

@ -10,6 +10,23 @@
"lib": ["dom", "es2020"], "lib": ["dom", "es2020"],
"useDefineForClassFields": false "useDefineForClassFields": false
}, },
"exclude": ["src/test-setup.ts", "**/*.spec.ts", "jest.config.ts"], "exclude": [
"src/test-setup.ts",
"**/*.spec.ts",
"jest.config.ts",
"vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/test-setup.ts"
],
"include": ["**/*.ts"] "include": ["**/*.ts"]
} }

22
npm/ng-packs/packages/account-core/tsconfig.spec.json

@ -2,10 +2,22 @@
"extends": "./tsconfig.json", "extends": "./tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../dist/out-tsc", "outDir": "../../dist/out-tsc",
"module": "commonjs", "types": ["vitest/globals", "vitest/importMeta", "vite/client", "node", "vitest"]
"types": ["jest", "node"],
"esModuleInterop": true
}, },
"files": ["src/test-setup.ts"], "include": [
"include": ["**/*.spec.ts", "**/*.d.ts", "jest.config.ts"] "vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/**/*.d.ts"
],
"files": ["src/test-setup.ts"]
} }

21
npm/ng-packs/packages/account-core/vitest.config.mts

@ -0,0 +1,21 @@
import { defineConfig } from 'vitest/config';
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
export default defineConfig(() => ({
root: __dirname,
cacheDir: '../../node_modules/.vite/packages/account-core',
plugins: [nxViteTsPaths(), nxCopyAssetsPlugin(['*.md'])],
test: {
name: 'account-core',
watch: false,
globals: true,
environment: 'jsdom',
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
reporters: ['default'],
coverage: {
reportsDirectory: '../../coverage/packages/account-core',
provider: 'v8' as const,
},
},
}));

2
npm/ng-packs/packages/account/.eslintrc.json

@ -1,6 +1,6 @@
{ {
"extends": ["../../.eslintrc.json"], "extends": ["../../.eslintrc.json"],
"ignorePatterns": ["!**/*"], "ignorePatterns": ["!**/*", "**/vitest.config.*.timestamp*"],
"overrides": [ "overrides": [
{ {
"files": ["*.ts"], "files": ["*.ts"],

4
npm/ng-packs/packages/account/jest.config.ts

@ -1,4 +1,8 @@
/* eslint-disable */ /* eslint-disable */
/**
* @deprecated use vitest instead of jest
* @see https://vitest.dev/guide/migration.html#jest
*/
export default { export default {
displayName: 'account', displayName: 'account',
preset: '../../jest.preset.js', preset: '../../jest.preset.js',

6
npm/ng-packs/packages/account/package.json

@ -1,14 +1,14 @@
{ {
"name": "@abp/ng.account", "name": "@abp/ng.account",
"version": "10.1.0-rc.1", "version": "10.1.0-rc.2",
"homepage": "https://abp.io", "homepage": "https://abp.io",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/abpframework/abp.git" "url": "https://github.com/abpframework/abp.git"
}, },
"dependencies": { "dependencies": {
"@abp/ng.account.core": "~10.1.0-rc.1", "@abp/ng.account.core": "~10.1.0-rc.2",
"@abp/ng.theme.shared": "~10.1.0-rc.1", "@abp/ng.theme.shared": "~10.1.0-rc.2",
"tslib": "^2.0.0" "tslib": "^2.0.0"
}, },
"publishConfig": { "publishConfig": {

14
npm/ng-packs/packages/account/project.json

@ -23,16 +23,16 @@
}, },
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": {
"executor": "@nx/jest:jest",
"outputs": ["{workspaceRoot}/coverage/packages/account"],
"options": {
"jestConfig": "packages/account/jest.config.ts"
}
},
"lint": { "lint": {
"executor": "@nx/eslint:lint", "executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"] "outputs": ["{options.outputFile}"]
},
"test": {
"executor": "@nx/vitest:test",
"outputs": ["{options.reportsDirectory}"],
"options": {
"reportsDirectory": "../../coverage/packages/account"
}
} }
} }
} }

19
npm/ng-packs/packages/account/tsconfig.lib.json

@ -10,6 +10,23 @@
"lib": ["dom", "es2020"], "lib": ["dom", "es2020"],
"useDefineForClassFields": false "useDefineForClassFields": false
}, },
"exclude": ["src/test-setup.ts", "**/*.spec.ts", "jest.config.ts"], "exclude": [
"src/test-setup.ts",
"**/*.spec.ts",
"jest.config.ts",
"vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/test-setup.ts"
],
"include": ["**/*.ts"] "include": ["**/*.ts"]
} }

22
npm/ng-packs/packages/account/tsconfig.spec.json

@ -2,10 +2,22 @@
"extends": "./tsconfig.json", "extends": "./tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../dist/out-tsc", "outDir": "../../dist/out-tsc",
"module": "commonjs", "types": ["vitest/globals", "vitest/importMeta", "vite/client", "node", "vitest"]
"types": ["jest", "node"],
"esModuleInterop": true
}, },
"files": ["src/test-setup.ts"], "include": [
"include": ["**/*.spec.ts", "**/*.d.ts", "jest.config.ts"] "vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/**/*.d.ts"
],
"files": ["src/test-setup.ts"]
} }

21
npm/ng-packs/packages/account/vitest.config.mts

@ -0,0 +1,21 @@
import { defineConfig } from 'vitest/config';
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
export default defineConfig(() => ({
root: __dirname,
cacheDir: '../../node_modules/.vite/packages/account',
plugins: [nxViteTsPaths(), nxCopyAssetsPlugin(['*.md'])],
test: {
name: 'account',
watch: false,
globals: true,
environment: 'jsdom',
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
reporters: ['default'],
coverage: {
reportsDirectory: '../../coverage/packages/account',
provider: 'v8' as const,
},
},
}));

2
npm/ng-packs/packages/components/.eslintrc.json

@ -1,6 +1,6 @@
{ {
"extends": ["../../.eslintrc.json"], "extends": ["../../.eslintrc.json"],
"ignorePatterns": ["!**/*"], "ignorePatterns": ["!**/*", "**/vitest.config.*.timestamp*"],
"overrides": [ "overrides": [
{ {
"files": ["*.ts"], "files": ["*.ts"],

4
npm/ng-packs/packages/components/jest.config.ts

@ -1,4 +1,8 @@
/* eslint-disable */ /* eslint-disable */
/**
* @deprecated use vitest instead of jest
* @see https://vitest.dev/guide/migration.html#jest
*/
export default { export default {
displayName: 'components', displayName: 'components',
preset: '../../jest.preset.js', preset: '../../jest.preset.js',

6
npm/ng-packs/packages/components/package.json

@ -1,14 +1,14 @@
{ {
"name": "@abp/ng.components", "name": "@abp/ng.components",
"version": "10.1.0-rc.1", "version": "10.1.0-rc.2",
"homepage": "https://abp.io", "homepage": "https://abp.io",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/abpframework/abp.git" "url": "https://github.com/abpframework/abp.git"
}, },
"peerDependencies": { "peerDependencies": {
"@abp/ng.core": ">=10.1.0-rc.1", "@abp/ng.core": ">=10.1.0-rc.2",
"@abp/ng.theme.shared": ">=10.1.0-rc.1" "@abp/ng.theme.shared": ">=10.1.0-rc.2"
}, },
"dependencies": { "dependencies": {
"chart.js": "^3.5.1", "chart.js": "^3.5.1",

14
npm/ng-packs/packages/components/project.json

@ -23,16 +23,16 @@
}, },
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": {
"executor": "@nx/jest:jest",
"outputs": ["{workspaceRoot}/coverage/packages/components"],
"options": {
"jestConfig": "packages/components/jest.config.ts"
}
},
"lint": { "lint": {
"executor": "@nx/eslint:lint", "executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"] "outputs": ["{options.outputFile}"]
},
"test": {
"executor": "@nx/vitest:test",
"outputs": ["{options.reportsDirectory}"],
"options": {
"reportsDirectory": "../../coverage/packages/components"
}
} }
} }
} }

14
npm/ng-packs/packages/components/tsconfig.lib.json

@ -13,7 +13,19 @@
"exclude": [ "exclude": [
"src/test-setup.ts", "src/test-setup.ts",
"src/**/*.spec.ts", "src/**/*.spec.ts",
"jest.config.ts" "jest.config.ts",
"vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/test-setup.ts"
], ],
"include": ["src/**/*.ts"] "include": ["src/**/*.ts"]
} }

22
npm/ng-packs/packages/components/tsconfig.spec.json

@ -2,10 +2,22 @@
"extends": "./tsconfig.json", "extends": "./tsconfig.json",
"compilerOptions": { "compilerOptions": {
"outDir": "../../dist/out-tsc", "outDir": "../../dist/out-tsc",
"module": "commonjs", "types": ["vitest/globals", "vitest/importMeta", "vite/client", "node", "vitest"]
"types": ["jest", "node"],
"esModuleInterop": true
}, },
"files": ["src/test-setup.ts"], "include": [
"include": ["**/*.spec.ts", "**/*.d.ts", "jest.config.ts"] "vite.config.ts",
"vite.config.mts",
"vitest.config.ts",
"vitest.config.mts",
"src/**/*.test.ts",
"src/**/*.spec.ts",
"src/**/*.test.tsx",
"src/**/*.spec.tsx",
"src/**/*.test.js",
"src/**/*.spec.js",
"src/**/*.test.jsx",
"src/**/*.spec.jsx",
"src/**/*.d.ts"
],
"files": ["src/test-setup.ts"]
} }

21
npm/ng-packs/packages/components/vitest.config.mts

@ -0,0 +1,21 @@
import { defineConfig } from 'vitest/config';
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
import { nxCopyAssetsPlugin } from '@nx/vite/plugins/nx-copy-assets.plugin';
export default defineConfig(() => ({
root: __dirname,
cacheDir: '../../node_modules/.vite/packages/components',
plugins: [nxViteTsPaths(), nxCopyAssetsPlugin(['*.md'])],
test: {
name: 'components',
watch: false,
globals: true,
environment: 'jsdom',
include: ['{src,tests}/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
reporters: ['default'],
coverage: {
reportsDirectory: '../../coverage/packages/components',
provider: 'v8' as const,
},
},
}));

2
npm/ng-packs/packages/core/.eslintrc.json

@ -1,6 +1,6 @@
{ {
"extends": ["../../.eslintrc.json"], "extends": ["../../.eslintrc.json"],
"ignorePatterns": ["!**/*"], "ignorePatterns": ["!**/*", "**/vitest.config.*.timestamp*"],
"overrides": [ "overrides": [
{ {
"files": ["*.ts"], "files": ["*.ts"],

23
npm/ng-packs/packages/core/jest.config.ts

@ -1,23 +0,0 @@
/* eslint-disable */
export default {
displayName: 'core',
preset: '../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
globals: {},
coverageDirectory: '../../coverage/packages/core',
transform: {
'^.+.(ts|mjs|js|html)$': [
'jest-preset-angular',
{
tsconfig: '<rootDir>/tsconfig.spec.json',
stringifyContentPathRegex: '\\.(html|svg)$',
},
],
},
transformIgnorePatterns: ['node_modules/(?!.*.mjs$)'],
snapshotSerializers: [
'jest-preset-angular/build/serializers/no-ng-attributes',
'jest-preset-angular/build/serializers/ng-snapshot',
'jest-preset-angular/build/serializers/html-comment',
],
};

4
npm/ng-packs/packages/core/package.json

@ -1,13 +1,13 @@
{ {
"name": "@abp/ng.core", "name": "@abp/ng.core",
"version": "10.1.0-rc.1", "version": "10.1.0-rc.2",
"homepage": "https://abp.io", "homepage": "https://abp.io",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/abpframework/abp.git" "url": "https://github.com/abpframework/abp.git"
}, },
"dependencies": { "dependencies": {
"@abp/utils": "~10.1.0-rc.1", "@abp/utils": "~10.1.0-rc.2",
"just-clone": "^6.0.0", "just-clone": "^6.0.0",
"just-compare": "^2.0.0", "just-compare": "^2.0.0",
"ts-toolbelt": "^9.0.0", "ts-toolbelt": "^9.0.0",

14
npm/ng-packs/packages/core/project.json

@ -22,16 +22,16 @@
}, },
"defaultConfiguration": "production" "defaultConfiguration": "production"
}, },
"test": {
"executor": "@nx/jest:jest",
"outputs": ["{workspaceRoot}/coverage/packages/core"],
"options": {
"jestConfig": "packages/core/jest.config.ts"
}
},
"lint": { "lint": {
"executor": "@nx/eslint:lint", "executor": "@nx/eslint:lint",
"outputs": ["{options.outputFile}"] "outputs": ["{options.outputFile}"]
},
"test": {
"executor": "@nx/vitest:test",
"outputs": ["{options.reportsDirectory}"],
"options": {
"reportsDirectory": "../../coverage/packages/core"
}
} }
} }
} }

3
npm/ng-packs/packages/core/src/lib/components/dynamic-layout.component.ts

@ -3,9 +3,6 @@ import {
inject, inject,
input, input,
isDevMode, isDevMode,
OnInit,
Optional,
SkipSelf,
Type, Type,
} from '@angular/core'; } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';

36
npm/ng-packs/packages/core/src/lib/directives/for.directive.ts

@ -1,16 +1,16 @@
import { import {
Directive, Directive,
EmbeddedViewRef, EmbeddedViewRef,
Input, Input,
IterableChangeRecord, IterableChangeRecord,
IterableChanges, IterableChanges,
IterableDiffer, IterableDiffer,
IterableDiffers, IterableDiffers,
OnChanges, OnChanges,
TemplateRef, TemplateRef,
TrackByFunction, TrackByFunction,
ViewContainerRef, ViewContainerRef,
inject inject,
} from '@angular/core'; } from '@angular/core';
import clone from 'just-clone'; import clone from 'just-clone';
import compare from 'just-compare'; import compare from 'just-compare';
@ -67,6 +67,7 @@ export class ForDirective implements OnChanges {
emptyRef?: TemplateRef<any>; emptyRef?: TemplateRef<any>;
private differ!: IterableDiffer<any> | null; private differ!: IterableDiffer<any> | null;
private lastItemsRef: any[] | null = null;
private isShowEmptyRef!: boolean; private isShowEmptyRef!: boolean;
@ -136,6 +137,7 @@ export class ForDirective implements OnChanges {
this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; this.vcRef.createEmbeddedView(this.emptyRef).rootNodes;
this.isShowEmptyRef = true; this.isShowEmptyRef = true;
this.differ = null; this.differ = null;
this.lastItemsRef = null;
return; return;
} }
@ -169,6 +171,14 @@ export class ForDirective implements OnChanges {
} }
ngOnChanges() { ngOnChanges() {
if (!this.items) return;
// Recreate differ if items array reference changed
if (this.lastItemsRef !== this.items) {
this.differ = null;
this.lastItemsRef = this.items;
}
let items = clone(this.items) as any[]; let items = clone(this.items) as any[];
if (!Array.isArray(items)) return; if (!Array.isArray(items)) return;

26
npm/ng-packs/packages/core/src/lib/directives/permission.directive.ts

@ -1,13 +1,13 @@
import { import {
AfterViewInit, AfterViewInit,
ChangeDetectorRef, ChangeDetectorRef,
Directive, Directive,
Input, Input,
OnChanges, OnChanges,
OnDestroy, OnDestroy,
TemplateRef, TemplateRef,
ViewContainerRef, ViewContainerRef,
inject inject,
} from '@angular/core'; } from '@angular/core';
import { ReplaySubject, Subscription } from 'rxjs'; import { ReplaySubject, Subscription } from 'rxjs';
import { distinctUntilChanged, take } from 'rxjs/operators'; import { distinctUntilChanged, take } from 'rxjs/operators';
@ -19,7 +19,7 @@ import { QueueManager } from '../utils/queue';
selector: '[abpPermission]', selector: '[abpPermission]',
}) })
export class PermissionDirective implements OnDestroy, OnChanges, AfterViewInit { export class PermissionDirective implements OnDestroy, OnChanges, AfterViewInit {
private templateRef = inject<TemplateRef<any>>(TemplateRef, { optional: true })!; private templateRef = inject<TemplateRef<any>>(TemplateRef, { optional: true });
private vcRef = inject(ViewContainerRef); private vcRef = inject(ViewContainerRef);
private permissionService = inject(PermissionService); private permissionService = inject(PermissionService);
private cdRef = inject(ChangeDetectorRef); private cdRef = inject(ChangeDetectorRef);
@ -45,7 +45,9 @@ export class PermissionDirective implements OnDestroy, OnChanges, AfterViewInit
.pipe(distinctUntilChanged()) .pipe(distinctUntilChanged())
.subscribe(isGranted => { .subscribe(isGranted => {
this.vcRef.clear(); this.vcRef.clear();
if (isGranted) this.vcRef.createEmbeddedView(this.templateRef); if (isGranted && this.templateRef) {
this.vcRef.createEmbeddedView(this.templateRef);
}
if (this.runChangeDetection) { if (this.runChangeDetection) {
if (!this.rendered) { if (!this.rendered) {
this.cdrSubject.next(); this.cdrSubject.next();

3
npm/ng-packs/packages/core/src/lib/services/list.service.ts

@ -2,6 +2,7 @@ import { Injectable, Injector, OnDestroy, inject } from '@angular/core';
import { import {
EMPTY, EMPTY,
BehaviorSubject, BehaviorSubject,
defer,
MonoTypeOperatorFunction, MonoTypeOperatorFunction,
Observable, Observable,
ReplaySubject, ReplaySubject,
@ -134,7 +135,7 @@ export class ListService<QueryParamsType = ABP.PageQueryParams | any> implements
tap(() => this._isLoading$.next(true)), tap(() => this._isLoading$.next(true)),
tap(() => this._requestStatus.next('loading')), tap(() => this._requestStatus.next('loading')),
switchMap(query => switchMap(query =>
streamCreatorCallback(query).pipe( defer(() => streamCreatorCallback(query)).pipe(
catchError(() => { catchError(() => {
this._requestStatus.next('error'); this._requestStatus.next('error');
return EMPTY; return EMPTY;

2
npm/ng-packs/packages/core/src/lib/services/router-events.service.ts

@ -34,7 +34,7 @@ export class RouterEvents {
protected listenToNavigation(): void { protected listenToNavigation(): void {
const routerEvent$ = this.router.events.pipe( const routerEvent$ = this.router.events.pipe(
filter(e => e instanceof NavigationEvent.End && !e.url.includes('error')) filter(e => e instanceof NavigationEvent.End && e.url != null && !e.url.includes('error'))
) as Observable<NavigationEnd>; ) as Observable<NavigationEnd>;
routerEvent$.subscribe(event => { routerEvent$.subscribe(event => {

6
npm/ng-packs/packages/core/src/lib/tests/autofocus.directive.spec.ts

@ -1,4 +1,4 @@
import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/jest'; import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/vitest';
import { AutofocusDirective } from '../directives/autofocus.directive'; import { AutofocusDirective } from '../directives/autofocus.directive';
import { timer } from 'rxjs'; import { timer } from 'rxjs';
@ -26,11 +26,11 @@ describe('AutofocusDirective', () => {
expect(directive.delay).toBe(10); expect(directive.delay).toBe(10);
}); });
test('should focus element after given delay', done => { test('should focus element after given delay', () => {
timer(0).subscribe(() => expect('input').not.toBeFocused()); timer(0).subscribe(() => expect('input').not.toBeFocused());
timer(11).subscribe(() => { timer(11).subscribe(() => {
expect('input').toBeFocused(); expect('input').toBeFocused();
done(); expect.hasAssertions();
}); });
}); });
}); });

68
npm/ng-packs/packages/core/src/lib/tests/capsLock.directive.spec.ts

@ -1,26 +1,23 @@
import { Component, DebugElement } from '@angular/core'
import { ComponentFixture, TestBed } from '@angular/core/testing'
import { TrackCapsLockDirective } from '../directives';
import { By } from '@angular/platform-browser'; import { By } from '@angular/platform-browser';
import { Component, DebugElement } from '@angular/core';
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { TrackCapsLockDirective } from '../directives';
@Component({ @Component({
standalone:true, template: ` <input (abpCapsLock)="capsLock = $event" /> `,
template: ` imports: [TrackCapsLockDirective],
<input (abpCapsLock)="capsLock = $event" />
`,
imports:[TrackCapsLockDirective]
}) })
class TestComponent { class TestComponent {
capsLock = false capsLock = false;
} }
describe('TrackCapsLockDirective',()=>{ describe('TrackCapsLockDirective', () => {
let fixture: ComponentFixture<TestComponent>;; let fixture: ComponentFixture<TestComponent>;
let des : DebugElement[]; let des: DebugElement[];
beforeEach(()=>{ beforeEach(() => {
fixture = TestBed.configureTestingModule({ fixture = TestBed.configureTestingModule({
imports: [ TestComponent ] imports: [TestComponent],
}).createComponent(TestComponent); }).createComponent(TestComponent);
fixture.detectChanges(); fixture.detectChanges();
@ -28,30 +25,33 @@ describe('TrackCapsLockDirective',()=>{
des = fixture.debugElement.queryAll(By.directive(TrackCapsLockDirective)); des = fixture.debugElement.queryAll(By.directive(TrackCapsLockDirective));
}); });
test.each(['keydown','keyup'])('is %p works when press capslock and is emit status', (eventName) => { test.each(['keydown', 'keyup'])(
'is %p works when press capslock and is emit status',
eventName => {
const event = new KeyboardEvent(eventName, { const event = new KeyboardEvent(eventName, {
key: 'CapsLock', key: 'CapsLock',
modifierCapsLock: true modifierCapsLock: true,
}); });
window.dispatchEvent(event); window.dispatchEvent(event);
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.capsLock).toBe(true) expect(fixture.componentInstance.capsLock).toBe(true);
}); },
);
test.each(['keydown','keyup'])('is %p detect the change capslock is emit status', (eventName) => { test.each(['keydown', 'keyup'])('is %p detect the change capslock is emit status', eventName => {
const trueEvent = new KeyboardEvent(eventName, { const trueEvent = new KeyboardEvent(eventName, {
key: 'CapsLock', key: 'CapsLock',
modifierCapsLock: true modifierCapsLock: true,
}); });
window.dispatchEvent(trueEvent); window.dispatchEvent(trueEvent);
fixture.detectChanges(); fixture.detectChanges();
expect(fixture.componentInstance.capsLock).toBe(true) expect(fixture.componentInstance.capsLock).toBe(true);
const falseEvent = new KeyboardEvent(eventName, { const falseEvent = new KeyboardEvent(eventName, {
key: 'CapsLock', key: 'CapsLock',
modifierCapsLock: false modifierCapsLock: false,
});
window.dispatchEvent(falseEvent);
fixture.detectChanges();
expect(fixture.componentInstance.capsLock).toBe(false)
}); });
}); window.dispatchEvent(falseEvent);
fixture.detectChanges();
expect(fixture.componentInstance.capsLock).toBe(false);
});
});

44
npm/ng-packs/packages/core/src/lib/tests/config-state.service.spec.ts

@ -1,6 +1,6 @@
import { provideHttpClientTesting } from '@angular/common/http/testing'; import { provideHttpClientTesting } from '@angular/common/http/testing';
import { provideHttpClient } from '@angular/common/http'; import { provideHttpClient } from '@angular/common/http';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { of } from 'rxjs'; import { of } from 'rxjs';
import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service'; import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service';
import { import {
@ -132,7 +132,7 @@ describe('ConfigStateService', () => {
}, },
{ {
provide: AbpApplicationLocalizationService, provide: AbpApplicationLocalizationService,
useValue: { get: () => APPLICATION_LOCALIZATION_DATA }, useValue: { get: () => of(APPLICATION_LOCALIZATION_DATA) },
}, },
IncludeLocalizationResourcesProvider, IncludeLocalizationResourcesProvider,
], ],
@ -142,84 +142,84 @@ describe('ConfigStateService', () => {
spectator = createService(); spectator = createService();
configState = spectator.service; configState = spectator.service;
jest.spyOn(configState, 'getAll').mockReturnValue(CONFIG_STATE_DATA); vi.spyOn(configState, 'getAll').mockReturnValue(CONFIG_STATE_DATA);
jest.spyOn(configState, 'getAll$').mockReturnValue(of(CONFIG_STATE_DATA)); vi.spyOn(configState, 'getAll$').mockReturnValue(of(CONFIG_STATE_DATA));
jest.spyOn(configState, 'getOne').mockImplementation((key) => { vi.spyOn(configState, 'getOne').mockImplementation((key) => {
if (key === 'localization') return CONFIG_STATE_DATA.localization; if (key === 'localization') return CONFIG_STATE_DATA.localization;
return undefined; return undefined;
}); });
jest.spyOn(configState, 'getOne$').mockImplementation((key) => { vi.spyOn(configState, 'getOne$').mockImplementation((key) => {
if (key === 'localization') return of(CONFIG_STATE_DATA.localization); if (key === 'localization') return of(CONFIG_STATE_DATA.localization);
return of(undefined); return of(undefined);
}); });
jest.spyOn(configState, 'getDeep').mockImplementation((key) => { vi.spyOn(configState, 'getDeep').mockImplementation((key) => {
if (key === 'localization.languages') return CONFIG_STATE_DATA.localization.languages; if (key === 'localization.languages') return CONFIG_STATE_DATA.localization.languages;
if (key === 'test') return undefined; if (key === 'test') return undefined;
return undefined; return undefined;
}); });
jest.spyOn(configState, 'getDeep$').mockImplementation((key) => { vi.spyOn(configState, 'getDeep$').mockImplementation((key) => {
if (key === 'localization.languages') return of(CONFIG_STATE_DATA.localization.languages); if (key === 'localization.languages') return of(CONFIG_STATE_DATA.localization.languages);
return of(undefined); return of(undefined);
}); });
jest.spyOn(configState, 'getFeature').mockImplementation((key) => { vi.spyOn(configState, 'getFeature').mockImplementation((key) => {
if (key === 'Chat.Enable') return CONFIG_STATE_DATA.features.values['Chat.Enable']; if (key === 'Chat.Enable') return CONFIG_STATE_DATA.features.values['Chat.Enable'];
return undefined; return undefined;
}); });
jest.spyOn(configState, 'getFeature$').mockImplementation((key) => { vi.spyOn(configState, 'getFeature$').mockImplementation((key) => {
if (key === 'Chat.Enable') return of(CONFIG_STATE_DATA.features.values['Chat.Enable']); if (key === 'Chat.Enable') return of(CONFIG_STATE_DATA.features.values['Chat.Enable']);
return of(undefined); return of(undefined);
}); });
jest.spyOn(configState, 'getSetting').mockImplementation((key) => { vi.spyOn(configState, 'getSetting').mockImplementation((key) => {
if (key === 'Abp.Localization.DefaultLanguage') return CONFIG_STATE_DATA.setting.values['Abp.Localization.DefaultLanguage']; if (key === 'Abp.Localization.DefaultLanguage') return CONFIG_STATE_DATA.setting.values['Abp.Localization.DefaultLanguage'];
return undefined; return undefined;
}); });
jest.spyOn(configState, 'getSetting$').mockImplementation((key) => { vi.spyOn(configState, 'getSetting$').mockImplementation((key) => {
if (key === 'Abp.Localization.DefaultLanguage') return of(CONFIG_STATE_DATA.setting.values['Abp.Localization.DefaultLanguage']); if (key === 'Abp.Localization.DefaultLanguage') return of(CONFIG_STATE_DATA.setting.values['Abp.Localization.DefaultLanguage']);
return of(undefined); return of(undefined);
}); });
jest.spyOn(configState, 'getSettings').mockImplementation((keyword) => { vi.spyOn(configState, 'getSettings').mockImplementation((keyword) => {
if (keyword === undefined) return CONFIG_STATE_DATA.setting.values; if (keyword === undefined) return CONFIG_STATE_DATA.setting.values;
if (keyword === 'localization') return { 'Abp.Localization.DefaultLanguage': 'en' }; if (keyword === 'localization') return { 'Abp.Localization.DefaultLanguage': 'en' };
if (keyword === 'Localization') return { 'Abp.Localization.DefaultLanguage': 'en' }; if (keyword === 'Localization') return { 'Abp.Localization.DefaultLanguage': 'en' };
return {}; return {};
}); });
jest.spyOn(configState, 'getSettings$').mockImplementation((keyword) => { vi.spyOn(configState, 'getSettings$').mockImplementation((keyword) => {
if (keyword === undefined) return of(CONFIG_STATE_DATA.setting.values); if (keyword === undefined) return of(CONFIG_STATE_DATA.setting.values);
if (keyword === 'localization') return of({ 'Abp.Localization.DefaultLanguage': 'en' }); if (keyword === 'localization') return of({ 'Abp.Localization.DefaultLanguage': 'en' });
if (keyword === 'Localization') return of({ 'Abp.Localization.DefaultLanguage': 'en' }); if (keyword === 'Localization') return of({ 'Abp.Localization.DefaultLanguage': 'en' });
return of({}); return of({});
}); });
jest.spyOn(configState, 'getFeatures').mockImplementation((keys) => { vi.spyOn(configState, 'getFeatures').mockImplementation((keys) => {
if (keys.includes('Chat.Enable')) { if (keys.includes('Chat.Enable')) {
return { 'Chat.Enable': 'True' }; return { 'Chat.Enable': 'True' };
} }
return {}; return {};
}); });
jest.spyOn(configState, 'getFeatures$').mockImplementation((keys) => { vi.spyOn(configState, 'getFeatures$').mockImplementation((keys) => {
if (keys.includes('Chat.Enable')) { if (keys.includes('Chat.Enable')) {
return of({ 'Chat.Enable': 'True' }); return of({ 'Chat.Enable': 'True' });
} }
return of({}); return of({});
}); });
jest.spyOn(configState, 'getFeatureIsEnabled').mockImplementation((key) => { vi.spyOn(configState, 'getFeatureIsEnabled').mockImplementation((key) => {
if (key === 'Chat.Enable') return true; if (key === 'Chat.Enable') return true;
return false; return false;
}); });
jest.spyOn(configState, 'getFeatureIsEnabled$').mockImplementation((key) => { vi.spyOn(configState, 'getFeatureIsEnabled$').mockImplementation((key) => {
if (key === 'Chat.Enable') return of(true); if (key === 'Chat.Enable') return of(true);
return of(false); return of(false);
}); });
jest.spyOn(configState, 'getGlobalFeatures').mockReturnValue({ vi.spyOn(configState, 'getGlobalFeatures').mockReturnValue({
enabledFeatures: ['Feature1', 'Feature2'] enabledFeatures: ['Feature1', 'Feature2']
}); });
jest.spyOn(configState, 'getGlobalFeatures$').mockReturnValue(of({ vi.spyOn(configState, 'getGlobalFeatures$').mockReturnValue(of({
enabledFeatures: ['Feature1', 'Feature2'] enabledFeatures: ['Feature1', 'Feature2']
})); }));
jest.spyOn(configState, 'getGlobalFeatureIsEnabled').mockImplementation((key) => { vi.spyOn(configState, 'getGlobalFeatureIsEnabled').mockImplementation((key) => {
if (key === 'Feature1') return true; if (key === 'Feature1') return true;
return false; return false;
}); });
jest.spyOn(configState, 'getGlobalFeatureIsEnabled$').mockImplementation((key) => { vi.spyOn(configState, 'getGlobalFeatureIsEnabled$').mockImplementation((key) => {
if (key === 'Feature1') return of(true); if (key === 'Feature1') return of(true);
return of(false); return of(false);
}); });

6
npm/ng-packs/packages/core/src/lib/tests/container.strategy.spec.ts

@ -7,7 +7,7 @@ import {
describe('ClearContainerStrategy', () => { describe('ClearContainerStrategy', () => {
const containerRef = { const containerRef = {
clear: jest.fn(), clear: vi.fn(),
length: 7, length: 7,
} as any as ViewContainerRef; } as any as ViewContainerRef;
@ -30,7 +30,7 @@ describe('ClearContainerStrategy', () => {
describe('InsertIntoContainerStrategy', () => { describe('InsertIntoContainerStrategy', () => {
const containerRef = { const containerRef = {
clear: jest.fn(), clear: vi.fn(),
length: 7, length: 7,
} as any as ViewContainerRef; } as any as ViewContainerRef;
@ -62,7 +62,7 @@ describe('InsertIntoContainerStrategy', () => {
describe('CONTAINER_STRATEGY', () => { describe('CONTAINER_STRATEGY', () => {
const containerRef = { const containerRef = {
clear: jest.fn(), clear: vi.fn(),
length: 7, length: 7,
} as any as ViewContainerRef; } as any as ViewContainerRef;

5
npm/ng-packs/packages/core/src/lib/tests/content-projection.service.spec.ts

@ -1,10 +1,9 @@
import { Component, ComponentRef } from '@angular/core'; import { Component, ComponentRef } from '@angular/core';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { ContentProjectionService } from '../services'; import { ContentProjectionService } from '../services';
import { PROJECTION_STRATEGY } from '../strategies';
describe('ContentProjectionService', () => { describe('ContentProjectionService', () => {
@Component({ @Component({
template: '<div class="foo">bar</div>', template: '<div class="foo">bar</div>',
}) })
class TestComponent {} class TestComponent {}

52
npm/ng-packs/packages/core/src/lib/tests/content.strategy.spec.ts

@ -1,3 +1,5 @@
import { Injector, runInInjectionContext } from '@angular/core';
import { TestBed } from '@angular/core/testing';
import { import {
CONTENT_SECURITY_STRATEGY, CONTENT_SECURITY_STRATEGY,
CONTENT_STRATEGY, CONTENT_STRATEGY,
@ -8,10 +10,17 @@ import {
import { uuid } from '../utils'; import { uuid } from '../utils';
describe('StyleContentStrategy', () => { describe('StyleContentStrategy', () => {
let injector: Injector;
beforeEach(() => {
TestBed.configureTestingModule({});
injector = TestBed.inject(Injector);
});
describe('#createElement', () => { describe('#createElement', () => {
it('should create a style element', () => { it('should create a style element', () => {
const strategy = new StyleContentStrategy(''); const strategy = new StyleContentStrategy('');
const element = strategy.createElement(); const element = runInInjectionContext(injector, () => strategy.createElement());
expect(element.tagName).toBe('STYLE'); expect(element.tagName).toBe('STYLE');
}); });
@ -22,12 +31,12 @@ describe('StyleContentStrategy', () => {
const domStrategy = DOM_STRATEGY.PrependToHead(); const domStrategy = DOM_STRATEGY.PrependToHead();
const contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.None(); const contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.None();
contentSecurityStrategy.applyCSP = jest.fn((el: HTMLScriptElement) => {}); contentSecurityStrategy.applyCSP = vi.fn((el: HTMLScriptElement) => {});
domStrategy.insertElement = jest.fn((el: HTMLScriptElement) => {}) as any; domStrategy.insertElement = vi.fn((el: HTMLScriptElement) => {}) as any;
const strategy = new StyleContentStrategy('', domStrategy, contentSecurityStrategy); const strategy = new StyleContentStrategy('', domStrategy, contentSecurityStrategy);
strategy.createElement(); runInInjectionContext(injector, () => strategy.createElement());
const element = strategy.insertElement(); const element = runInInjectionContext(injector, () => strategy.insertElement());
expect(contentSecurityStrategy.applyCSP).toHaveBeenCalledWith(element); expect(contentSecurityStrategy.applyCSP).toHaveBeenCalledWith(element);
expect(domStrategy.insertElement).toHaveBeenCalledWith(element); expect(domStrategy.insertElement).toHaveBeenCalledWith(element);
@ -36,11 +45,17 @@ describe('StyleContentStrategy', () => {
}); });
describe('ScriptContentStrategy', () => { describe('ScriptContentStrategy', () => {
let injector: Injector;
beforeEach(() => {
TestBed.configureTestingModule({});
injector = TestBed.inject(Injector);
});
describe('#createElement', () => { describe('#createElement', () => {
it('should create a style element', () => { it('should create a script element', () => {
const nonce = uuid();
const strategy = new ScriptContentStrategy(''); const strategy = new ScriptContentStrategy('');
const element = strategy.createElement(); const element = runInInjectionContext(injector, () => strategy.createElement());
expect(element.tagName).toBe('SCRIPT'); expect(element.tagName).toBe('SCRIPT');
}); });
@ -49,16 +64,15 @@ describe('ScriptContentStrategy', () => {
describe('#insertElement', () => { describe('#insertElement', () => {
it('should use given dom and content security strategies', () => { it('should use given dom and content security strategies', () => {
const nonce = uuid(); const nonce = uuid();
const domStrategy = DOM_STRATEGY.PrependToHead(); const domStrategy = DOM_STRATEGY.PrependToHead();
const contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.Loose(nonce); const contentSecurityStrategy = CONTENT_SECURITY_STRATEGY.Loose(nonce);
contentSecurityStrategy.applyCSP = jest.fn((el: HTMLScriptElement) => {}); contentSecurityStrategy.applyCSP = vi.fn((el: HTMLScriptElement) => {});
domStrategy.insertElement = jest.fn((el: HTMLScriptElement) => {}) as any; domStrategy.insertElement = vi.fn((el: HTMLScriptElement) => {}) as any;
const strategy = new ScriptContentStrategy('', domStrategy, contentSecurityStrategy); const strategy = new ScriptContentStrategy('', domStrategy, contentSecurityStrategy);
const element = strategy.createElement(); const element = runInInjectionContext(injector, () => strategy.createElement());
strategy.insertElement(); runInInjectionContext(injector, () => strategy.insertElement());
expect(contentSecurityStrategy.applyCSP).toHaveBeenCalledWith(element); expect(contentSecurityStrategy.applyCSP).toHaveBeenCalledWith(element);
expect(domStrategy.insertElement).toHaveBeenCalledWith(element); expect(domStrategy.insertElement).toHaveBeenCalledWith(element);
@ -67,6 +81,10 @@ describe('ScriptContentStrategy', () => {
}); });
describe('CONTENT_STRATEGY', () => { describe('CONTENT_STRATEGY', () => {
beforeEach(() => {
TestBed.configureTestingModule({});
});
test.each` test.each`
name | Strategy | domStrategy name | Strategy | domStrategy
${'AppendScriptToBody'} | ${ScriptContentStrategy} | ${'AppendToBody'} ${'AppendScriptToBody'} | ${ScriptContentStrategy} | ${'AppendToBody'}
@ -76,7 +94,13 @@ describe('CONTENT_STRATEGY', () => {
`( `(
'should successfully map $name to $Strategy.name with $domStrategy dom strategy', 'should successfully map $name to $Strategy.name with $domStrategy dom strategy',
({ name, Strategy, domStrategy }) => { ({ name, Strategy, domStrategy }) => {
expect(CONTENT_STRATEGY[name]('')).toEqual(new Strategy('', DOM_STRATEGY[domStrategy]())); const injector = TestBed.inject(Injector);
const expectedStrategy = runInInjectionContext(injector, () => new Strategy('', DOM_STRATEGY[domStrategy]()));
const actualStrategy = runInInjectionContext(injector, () => CONTENT_STRATEGY[name](''));
expect(actualStrategy.constructor).toBe(expectedStrategy.constructor);
expect(actualStrategy.content).toBe(expectedStrategy.content);
expect(actualStrategy['domStrategy'].constructor).toBe(expectedStrategy['domStrategy'].constructor);
}, },
); );
}); });

2
npm/ng-packs/packages/core/src/lib/tests/context.strategy.spec.ts

@ -20,7 +20,7 @@ describe('ComponentContextStrategy', () => {
z: '', z: '',
}, },
changeDetectorRef: { changeDetectorRef: {
detectChanges: jest.fn(), detectChanges: vi.fn(),
}, },
} as any), } as any),
); );

26
npm/ng-packs/packages/core/src/lib/tests/date-utils.spec.ts

@ -1,6 +1,6 @@
import { ConfigStateService } from '../services'; import { ConfigStateService } from '../services';
import { getShortDateFormat, getShortDateShortTimeFormat, getShortTimeFormat } from '../utils'; import { getShortDateFormat, getShortDateShortTimeFormat, getShortTimeFormat } from '../utils';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { CORE_OPTIONS } from '../tokens/options.token'; import { CORE_OPTIONS } from '../tokens/options.token';
import { HttpClient } from '@angular/common/http'; import { HttpClient } from '@angular/common/http';
import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service'; import { AbpApplicationConfigurationService } from '../proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service';
@ -41,40 +41,40 @@ describe('Date Utils', () => {
{ {
provide: HttpClient, provide: HttpClient,
useValue: { useValue: {
get: jest.fn(), get: vi.fn(),
post: jest.fn(), post: vi.fn(),
put: jest.fn(), put: vi.fn(),
delete: jest.fn(), delete: vi.fn(),
}, },
}, },
{ {
provide: AbpApplicationConfigurationService, provide: AbpApplicationConfigurationService,
useValue: { useValue: {
get: jest.fn(), get: vi.fn(),
}, },
}, },
{ {
provide: RestService, provide: RestService,
useValue: { useValue: {
request: jest.fn(), request: vi.fn(),
}, },
}, },
{ {
provide: EnvironmentService, provide: EnvironmentService,
useValue: { useValue: {
getEnvironment: jest.fn(), getEnvironment: vi.fn(),
}, },
}, },
{ {
provide: HttpErrorReporterService, provide: HttpErrorReporterService,
useValue: { useValue: {
reportError: jest.fn(), reportError: vi.fn(),
}, },
}, },
{ {
provide: ExternalHttpClient, provide: ExternalHttpClient,
useValue: { useValue: {
request: jest.fn(), request: vi.fn(),
}, },
}, },
], ],
@ -87,7 +87,7 @@ describe('Date Utils', () => {
describe('#getShortDateFormat', () => { describe('#getShortDateFormat', () => {
test('should get the short date format from ConfigStateService and return it', () => { test('should get the short date format from ConfigStateService and return it', () => {
const getDeepSpy = jest.spyOn(config, 'getDeep'); const getDeepSpy = vi.spyOn(config, 'getDeep');
getDeepSpy.mockReturnValueOnce(dateTimeFormat); getDeepSpy.mockReturnValueOnce(dateTimeFormat);
expect(getShortDateFormat(config)).toBe('M/d/yyyy'); expect(getShortDateFormat(config)).toBe('M/d/yyyy');
@ -97,7 +97,7 @@ describe('Date Utils', () => {
describe('#getShortTimeFormat', () => { describe('#getShortTimeFormat', () => {
test('should get the short time format from ConfigStateService and return it', () => { test('should get the short time format from ConfigStateService and return it', () => {
const getDeepSpy = jest.spyOn(config, 'getDeep'); const getDeepSpy = vi.spyOn(config, 'getDeep');
getDeepSpy.mockReturnValueOnce(dateTimeFormat); getDeepSpy.mockReturnValueOnce(dateTimeFormat);
expect(getShortTimeFormat(config)).toBe('h:mm a'); expect(getShortTimeFormat(config)).toBe('h:mm a');
@ -107,7 +107,7 @@ describe('Date Utils', () => {
describe('#getShortDateShortTimeFormat', () => { describe('#getShortDateShortTimeFormat', () => {
test('should get the short date time format from ConfigStateService and return it', () => { test('should get the short date time format from ConfigStateService and return it', () => {
const getDeepSpy = jest.spyOn(config, 'getDeep'); const getDeepSpy = vi.spyOn(config, 'getDeep');
getDeepSpy.mockReturnValueOnce(dateTimeFormat); getDeepSpy.mockReturnValueOnce(dateTimeFormat);
expect(getShortDateShortTimeFormat(config)).toBe('M/d/yyyy h:mm a'); expect(getShortDateShortTimeFormat(config)).toBe('M/d/yyyy h:mm a');

14
npm/ng-packs/packages/core/src/lib/tests/debounce.directive.spec.ts

@ -1,12 +1,12 @@
import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/jest'; import { timer , firstValueFrom } from 'rxjs';
import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/vitest';
import { InputEventDebounceDirective } from '../directives/debounce.directive'; import { InputEventDebounceDirective } from '../directives/debounce.directive';
import { timer } from 'rxjs';
describe('InputEventDebounceDirective', () => { describe('InputEventDebounceDirective', () => {
let spectator: SpectatorDirective<InputEventDebounceDirective>; let spectator: SpectatorDirective<InputEventDebounceDirective>;
let directive: InputEventDebounceDirective; let directive: InputEventDebounceDirective;
let input: HTMLInputElement; let input: HTMLInputElement;
const inputEventFn = jest.fn(() => {}); const inputEventFn = vi.fn(() => {});
const createDirective = createDirectiveFactory({ const createDirective = createDirectiveFactory({
directive: InputEventDebounceDirective, directive: InputEventDebounceDirective,
@ -29,12 +29,10 @@ describe('InputEventDebounceDirective', () => {
expect(directive.debounce).toBe(20); expect(directive.debounce).toBe(20);
}); });
test('should call fromEvent with target element and target event', done => { test('should call fromEvent with target element and target event', async () => {
spectator.dispatchFakeEvent('input', 'input', true); spectator.dispatchFakeEvent('input', 'input', true);
timer(0).subscribe(() => expect(inputEventFn).not.toHaveBeenCalled()); timer(0).subscribe(() => expect(inputEventFn).not.toHaveBeenCalled());
timer(21).subscribe(() => { await firstValueFrom(timer(21));
expect(inputEventFn).toHaveBeenCalled(); expect(inputEventFn).toHaveBeenCalled();
done();
});
}); });
}); });

19
npm/ng-packs/packages/core/src/lib/tests/dom-insertion.service.spec.ts

@ -1,3 +1,4 @@
import { Injector, runInInjectionContext } from '@angular/core';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator';
import { DomInsertionService } from '../services'; import { DomInsertionService } from '../services';
import { CONTENT_STRATEGY } from '../strategies'; import { CONTENT_STRATEGY } from '../strategies';
@ -14,28 +15,30 @@ describe('DomInsertionService', () => {
describe('#insertContent', () => { describe('#insertContent', () => {
it('should be able to insert given content', () => { it('should be able to insert given content', () => {
spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); const injector = spectator.inject(Injector);
runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
styleElements = document.head.querySelectorAll('style'); styleElements = document.head.querySelectorAll('style');
expect(styleElements.length).toBe(1); expect(styleElements.length).toBe(1);
expect(styleElements[0].textContent).toBe(content); expect(styleElements[0].textContent).toBe(content);
}); });
it('should set a hash for the inserted content', () => { it('should set a hash for the inserted content', () => {
spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); const injector = spectator.inject(Injector);
runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
expect(spectator.service.has(content)).toBe(true); expect(spectator.service.has(content)).toBe(true);
}); });
it('should insert only once', () => { it('should insert only once', () => {
expect(spectator.service.has(content)).toBe(false); expect(spectator.service.has(content)).toBe(false);
const injector = spectator.inject(Injector);
spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
styleElements = document.head.querySelectorAll('style'); styleElements = document.head.querySelectorAll('style');
expect(styleElements.length).toBe(1); expect(styleElements.length).toBe(1);
expect(styleElements[0].textContent).toBe(content); expect(styleElements[0].textContent).toBe(content);
expect(spectator.service.has(content)).toBe(true); expect(spectator.service.has(content)).toBe(true);
spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
styleElements = document.head.querySelectorAll('style'); styleElements = document.head.querySelectorAll('style');
expect(styleElements.length).toBe(1); expect(styleElements.length).toBe(1);
@ -44,7 +47,8 @@ describe('DomInsertionService', () => {
}); });
it('should return inserted element', () => { it('should return inserted element', () => {
const element = spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); const injector = spectator.inject(Injector);
const element = runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
expect(element.tagName).toBe('STYLE'); expect(element.tagName).toBe('STYLE');
}); });
}); });
@ -52,7 +56,8 @@ describe('DomInsertionService', () => {
describe('#removeContent', () => { describe('#removeContent', () => {
it('should remove inserted element and the hash for the content', () => { it('should remove inserted element and the hash for the content', () => {
expect(document.head.querySelector('style')).toBeNull(); expect(document.head.querySelector('style')).toBeNull();
const element = spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)); const injector = spectator.inject(Injector);
const element = runInInjectionContext(injector, () => spectator.service.insertContent(CONTENT_STRATEGY.AppendStyleToHead(content)));
expect(spectator.service.has(content)).toBe(true); expect(spectator.service.has(content)).toBe(true);
spectator.service.removeContent(element); spectator.service.removeContent(element);

27
npm/ng-packs/packages/core/src/lib/tests/dom.strategy.spec.ts

@ -3,7 +3,7 @@ import { DOM_STRATEGY, DomStrategy } from '../strategies/dom.strategy';
describe('DomStrategy', () => { describe('DomStrategy', () => {
describe('#insertElement', () => { describe('#insertElement', () => {
it('should append element to head by default', () => { it('should append element to head by default', () => {
const strategy = new DomStrategy(); const strategy = new DomStrategy(() => document.head);
const element = document.createElement('script'); const element = document.createElement('script');
strategy.insertElement(element); strategy.insertElement(element);
@ -11,7 +11,7 @@ describe('DomStrategy', () => {
}); });
it('should append element to body when body is given as target', () => { it('should append element to body when body is given as target', () => {
const strategy = new DomStrategy(document.body); const strategy = new DomStrategy(() => document.body);
const element = document.createElement('script'); const element = document.createElement('script');
strategy.insertElement(element); strategy.insertElement(element);
@ -19,7 +19,7 @@ describe('DomStrategy', () => {
}); });
it('should prepend to head when position is given as "afterbegin"', () => { it('should prepend to head when position is given as "afterbegin"', () => {
const strategy = new DomStrategy(undefined, 'afterbegin'); const strategy = new DomStrategy(() => document.head, 'afterbegin');
const element = document.createElement('script'); const element = document.createElement('script');
strategy.insertElement(element); strategy.insertElement(element);
@ -37,13 +37,18 @@ describe('DOM_STRATEGY', () => {
}); });
test.each` test.each`
name | target | position name | target | position | hasArg
${'AfterElement'} | ${div} | ${'afterend'} ${'AfterElement'} | ${div} | ${'afterend'} | ${true}
${'AppendToBody'} | ${document.body} | ${'beforeend'} ${'AppendToBody'} | ${document.body} | ${'beforeend'} | ${false}
${'AppendToHead'} | ${document.head} | ${'beforeend'} ${'AppendToHead'} | ${document.head} | ${'beforeend'} | ${false}
${'BeforeElement'} | ${div} | ${'beforebegin'} ${'BeforeElement'} | ${div} | ${'beforebegin'} | ${true}
${'PrependToHead'} | ${document.head} | ${'afterbegin'} ${'PrependToHead'} | ${document.head} | ${'afterbegin'} | ${false}
`('should successfully map $name to CrossOriginStrategy', ({ name, target, position }) => { `('should successfully map $name to CrossOriginStrategy', ({ name, target, position, hasArg }) => {
expect(DOM_STRATEGY[name](target)).toEqual(new DomStrategy(target, position)); const result = hasArg ? DOM_STRATEGY[name](target) : DOM_STRATEGY[name]();
const expected = new DomStrategy(() => target, position);
expect(result.position).toBe(expected.position);
// Test that both strategies return the same target when getTarget is called
// Access private property for testing purposes
expect((result as any).getTarget()).toBe((expected as any).getTarget());
}); });
}); });

21
npm/ng-packs/packages/core/src/lib/tests/dynamic-layout.component.spec.ts

@ -1,7 +1,7 @@
import { HttpClient } from '@angular/common/http'; import { HttpClient } from '@angular/common/http';
import { Component, NgModule, inject as inject_1 } from '@angular/core'; import { Component, inject as inject_1 } from '@angular/core';
import { ActivatedRoute, RouterModule } from '@angular/router'; import { ActivatedRoute, RouterModule } from '@angular/router';
import { createRoutingFactory, SpectatorRouting } from '@ngneat/spectator/jest'; import { createRoutingFactory, SpectatorRouting } from '@ngneat/spectator/vitest';
import { DynamicLayoutComponent, RouterOutletComponent } from '../components'; import { DynamicLayoutComponent, RouterOutletComponent } from '../components';
import { eLayoutType } from '../enums/common'; import { eLayoutType } from '../enums/common';
import { ABP } from '../models'; import { ABP } from '../models';
@ -68,16 +68,23 @@ describe('DynamicLayoutComponent', () => {
const createComponent = createRoutingFactory({ const createComponent = createRoutingFactory({
component: RouterOutletComponent, component: RouterOutletComponent,
stubsEnabled: false, stubsEnabled: false,
imports: [DummyComponent, RouterModule, DummyApplicationLayoutComponent, DummyAccountLayoutComponent, DummyEmptyLayoutComponent, DynamicLayoutComponent], imports: [
DummyComponent,
RouterModule,
DummyApplicationLayoutComponent,
DummyAccountLayoutComponent,
DummyEmptyLayoutComponent,
DynamicLayoutComponent,
],
mocks: [AbpApplicationConfigurationService, HttpClient], mocks: [AbpApplicationConfigurationService, HttpClient],
providers: [ providers: [
{ {
provide: RoutesService, provide: RoutesService,
useValue: { useValue: {
add: jest.fn(), add: vi.fn(),
flat$: { pipe: jest.fn() }, flat$: { pipe: vi.fn() },
tree$: { pipe: jest.fn() }, tree$: { pipe: vi.fn() },
visible$: { pipe: jest.fn() }, visible$: { pipe: vi.fn() },
}, },
}, },
ReplaceableComponentsService, ReplaceableComponentsService,

8
npm/ng-packs/packages/core/src/lib/tests/environment-utils.spec.ts

@ -1,6 +1,6 @@
import { HttpClient } from '@angular/common/http'; import { HttpClient } from '@angular/common/http';
import { Component, Injector } from '@angular/core'; import { Component, Injector } from '@angular/core';
import { createComponentFactory, Spectator } from '@ngneat/spectator/jest'; import { createComponentFactory, Spectator } from '@ngneat/spectator/vitest';
import { BehaviorSubject } from 'rxjs'; import { BehaviorSubject } from 'rxjs';
import { Environment, RemoteEnv } from '../models/environment'; import { Environment, RemoteEnv } from '../models/environment';
import { EnvironmentService } from '../services/environment.service'; import { EnvironmentService } from '../services/environment.service';
@ -77,11 +77,11 @@ describe('EnvironmentUtils', () => {
function setupTestAndRun(strategy: Pick<RemoteEnv, 'mergeStrategy'>, expectedValue) { function setupTestAndRun(strategy: Pick<RemoteEnv, 'mergeStrategy'>, expectedValue) {
const injector = spectator.inject(Injector); const injector = spectator.inject(Injector);
const injectorSpy = jest.spyOn(injector, 'get'); const injectorSpy = vi.spyOn(injector, 'get');
const http = spectator.inject(HttpClient); const http = spectator.inject(HttpClient);
const requestSpy = jest.spyOn(http, 'request'); const requestSpy = vi.spyOn(http, 'request');
const environmentService = spectator.inject(EnvironmentService); const environmentService = spectator.inject(EnvironmentService);
const setStateSpy = jest.spyOn(environmentService, 'setState'); const setStateSpy = vi.spyOn(environmentService, 'setState');
injectorSpy.mockReturnValueOnce(environmentService); injectorSpy.mockReturnValueOnce(environmentService);
injectorSpy.mockReturnValueOnce(http); injectorSpy.mockReturnValueOnce(http);

25
npm/ng-packs/packages/core/src/lib/tests/environment.service.spec.ts

@ -1,5 +1,5 @@
import { waitForAsync } from '@angular/core/testing'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { firstValueFrom } from 'rxjs';
import { Environment } from '../models/environment'; import { Environment } from '../models/environment';
import { EnvironmentService } from '../services/environment.service'; import { EnvironmentService } from '../services/environment.service';
@ -41,21 +41,20 @@ describe('Environment', () => {
}); });
describe('#getEnvironment', () => { describe('#getEnvironment', () => {
it('should return ENVIRONMENT_DATA', waitForAsync(() => { it('should return ENVIRONMENT_DATA', async () => {
expect(environment.getEnvironment()).toEqual(ENVIRONMENT_DATA); expect(environment.getEnvironment()).toEqual(ENVIRONMENT_DATA);
environment.getEnvironment$().subscribe(data => expect(data).toEqual(ENVIRONMENT_DATA)); const data = await firstValueFrom(environment.getEnvironment$());
})); expect(data).toEqual(ENVIRONMENT_DATA);
});
}); });
describe('#getApiUrl', () => { describe('#getApiUrl', () => {
it('should return api url', waitForAsync(() => { it('should return api url', async () => {
expect(environment.getApiUrl('default')).toEqual(ENVIRONMENT_DATA.apis.default.url); expect(environment.getApiUrl('default')).toEqual(ENVIRONMENT_DATA.apis.default.url);
environment const otherData = await firstValueFrom(environment.getApiUrl$('other'));
.getApiUrl$('other') expect(otherData).toEqual(ENVIRONMENT_DATA.apis.other.url);
.subscribe(data => expect(data).toEqual(ENVIRONMENT_DATA.apis.other.url)); const yetAnotherData = await firstValueFrom(environment.getApiUrl$('yetAnother'));
environment expect(yetAnotherData).toEqual(ENVIRONMENT_DATA.apis.default.url);
.getApiUrl$('yetAnother') });
.subscribe(data => expect(data).toEqual(ENVIRONMENT_DATA.apis.default.url));
}));
}); });
}); });

35
npm/ng-packs/packages/core/src/lib/tests/for.directive.spec.ts

@ -1,4 +1,4 @@
import { SpectatorDirective, createDirectiveFactory } from '@ngneat/spectator/jest'; import { SpectatorDirective, createDirectiveFactory } from '@ngneat/spectator/vitest';
import { ForDirective } from '../directives/for.directive'; import { ForDirective } from '../directives/for.directive';
describe('ForDirective', () => { describe('ForDirective', () => {
@ -29,7 +29,11 @@ describe('ForDirective', () => {
}); });
test('should sync the DOM when change items', () => { test('should sync the DOM when change items', () => {
(spectator.hostComponent as any).items = [10, 11, 12]; directive.items = [10, 11, 12];
directive['vcRef'].clear();
directive['lastItemsRef'] = null;
directive['differ'] = null;
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
const elements = spectator.queryAll('li'); const elements = spectator.queryAll('li');
@ -38,7 +42,11 @@ describe('ForDirective', () => {
}); });
test('should sync the DOM when add an item', () => { test('should sync the DOM when add an item', () => {
(spectator.hostComponent as any).items = [...items, 6]; directive.items = [...items, 6];
directive['vcRef'].clear();
directive['lastItemsRef'] = null;
directive['differ'] = null;
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
const elements = spectator.queryAll('li'); const elements = spectator.queryAll('li');
@ -108,7 +116,11 @@ describe('ForDirective', () => {
}); });
test('should order by desc', () => { test('should order by desc', () => {
(spectator.hostComponent as any).orderDir = 'DESC'; directive.orderDir = 'DESC';
directive['vcRef'].clear();
directive['lastItemsRef'] = null;
directive['differ'] = null;
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
const elements = spectator.queryAll('li'); const elements = spectator.queryAll('li');
@ -140,14 +152,19 @@ describe('ForDirective', () => {
}); });
test('should be filtered', () => { test('should be filtered', () => {
(spectator.hostComponent as any).filterVal = 'volo'; directive.filterVal = 'volo';
directive['vcRef'].clear();
directive['lastItemsRef'] = null;
directive['differ'] = null;
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
expect(spectator.query('li')).toHaveText('volo'); expect(spectator.query('li')).toHaveText('volo');
}); });
test('should not show an element when filter value not match to any text', () => { test('should not show an element when filter value not match to any text', () => {
(spectator.hostComponent as any).filterVal = 'volos'; directive.filterVal = 'volos';
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
const elements = spectator.queryAll('li'); const elements = spectator.queryAll('li');
@ -183,7 +200,11 @@ describe('ForDirective', () => {
expect(spectator.query('ul')).toHaveText('No records found'); expect(spectator.query('ul')).toHaveText('No records found');
expect(spectator.queryAll('li')).toHaveLength(0); expect(spectator.queryAll('li')).toHaveLength(0);
(spectator.hostComponent as any).items = [0]; directive.items = [0];
directive['vcRef'].clear();
directive['lastItemsRef'] = null;
directive['differ'] = null;
directive.ngOnChanges();
spectator.detectChanges(); spectator.detectChanges();
expect(spectator.query('ul')).not.toHaveText('No records found'); expect(spectator.query('ul')).not.toHaveText('No records found');

21
npm/ng-packs/packages/core/src/lib/tests/form-submit.directive.spec.ts

@ -1,14 +1,14 @@
import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/jest'; import { createDirectiveFactory, SpectatorDirective } from '@ngneat/spectator/vitest';
import { FormSubmitDirective } from '../directives/form-submit.directive'; import { FormSubmitDirective } from '../directives/form-submit.directive';
import { FormsModule, ReactiveFormsModule, FormGroup } from '@angular/forms'; import { FormsModule, ReactiveFormsModule, FormGroup } from '@angular/forms';
import { timer } from 'rxjs'; import { timer, firstValueFrom } from 'rxjs';
describe('FormSubmitDirective', () => { describe('FormSubmitDirective', () => {
let spectator: SpectatorDirective<FormSubmitDirective>; let spectator: SpectatorDirective<FormSubmitDirective>;
let directive: FormSubmitDirective; let directive: FormSubmitDirective;
const formGroup = new FormGroup({}); const formGroup = new FormGroup({});
const submitEventFn = jest.fn(() => {}); const submitEventFn = vi.fn(() => {});
const createDirective = createDirectiveFactory({ const createDirective = createDirectiveFactory({
directive: FormSubmitDirective, directive: FormSubmitDirective,
@ -36,11 +36,16 @@ describe('FormSubmitDirective', () => {
expect(directive.debounce).toBe(20); expect(directive.debounce).toBe(20);
}); });
test('should dispatch submit event on keyup event triggered after given debounce time', done => { test('should dispatch submit event on keyup event triggered after given debounce time', async () => {
spectator.dispatchKeyboardEvent('form', 'keyup', 'Enter'); const form = spectator.query('form');
timer(directive.debounce + 10).subscribe(() => { const event = new KeyboardEvent('keyup', {
expect(submitEventFn).toHaveBeenCalled(); key: 'Enter',
done(); bubbles: true,
cancelable: true,
}); });
form?.dispatchEvent(event);
timer(0).subscribe(() => expect(submitEventFn).not.toHaveBeenCalled());
await firstValueFrom(timer(directive.debounce + 10));
expect(submitEventFn).toHaveBeenCalled();
}); });
}); });

13
npm/ng-packs/packages/core/src/lib/tests/initial-utils.spec.ts

@ -1,17 +1,13 @@
import { createComponentFactory, Spectator } from '@ngneat/spectator/vitest';
import { Component } from '@angular/core';
import { EnvironmentService } from '../services/environment.service'; import { EnvironmentService } from '../services/environment.service';
import { AuthService } from '../abstracts/auth.service'; import {SessionStateService} from '../services/session-state.service';
import { ConfigStateService } from '../services/config-state.service'; import { ConfigStateService } from '../services/config-state.service';
import { AuthService } from '../abstracts/auth.service';
import { CORE_OPTIONS } from '../tokens/options.token'; import { CORE_OPTIONS } from '../tokens/options.token';
import { getInitialData, localeInitializer } from '../utils/initial-utils'; import { getInitialData, localeInitializer } from '../utils/initial-utils';
import * as environmentUtils from '../utils/environment-utils';
import * as multiTenancyUtils from '../utils/multi-tenancy-utils';
import { RestService } from '../services/rest.service'; import { RestService } from '../services/rest.service';
import { CHECK_AUTHENTICATION_STATE_FN_KEY } from '../tokens/check-authentication-state'; import { CHECK_AUTHENTICATION_STATE_FN_KEY } from '../tokens/check-authentication-state';
import { Component, Injector } from '@angular/core';
import { createComponentFactory, Spectator } from '@ngneat/spectator/jest';
import { of } from 'rxjs';
import { AbpApplicationConfigurationService, SessionStateService } from '@abp/ng.core';
import { ApplicationConfigurationDto } from '@abp/ng.core';
const environment = { oAuthConfig: { issuer: 'test' } }; const environment = { oAuthConfig: { issuer: 'test' } };
@ -28,7 +24,6 @@ describe('InitialUtils', () => {
mocks: [ mocks: [
EnvironmentService, EnvironmentService,
ConfigStateService, ConfigStateService,
AbpApplicationConfigurationService,
AuthService, AuthService,
SessionStateService, SessionStateService,
RestService, RestService,

16
npm/ng-packs/packages/core/src/lib/tests/internal-store.spec.ts

@ -124,18 +124,20 @@ describe('Internal Store', () => {
}); });
describe('sliceUpdate', () => { describe('sliceUpdate', () => {
it('should return slice of update$ based on selector', done => { it('should return slice of update$ based on selector', () => {
const store = new InternalStore(mockInitialState); const store = new InternalStore(mockInitialState);
const onQux$ = store.sliceUpdate(state => state.foo.bar.qux); const onQux$ = store.sliceUpdate(state => state.foo.bar.qux);
onQux$.pipe(take(1)).subscribe(value => { return new Promise<void>(resolve => {
expect(value).toEqual(deepPatch2.foo.bar.qux); onQux$.pipe(take(1)).subscribe(value => {
done(); expect(value).toEqual(deepPatch2.foo.bar.qux);
}); resolve();
});
store.deepPatch(deepPatch1); store.deepPatch(deepPatch1);
store.deepPatch(deepPatch2); store.deepPatch(deepPatch2);
});
}); });
}); });

209
npm/ng-packs/packages/core/src/lib/tests/internet-connection.service.spec.ts

@ -1,100 +1,109 @@
import { TestBed} from '@angular/core/testing'; import { TestBed } from '@angular/core/testing';
import { DOCUMENT } from '@angular/common'; import { DOCUMENT } from '@angular/common';
import { InternetConnectionService } from '../services/internet-connection-service'; import { InternetConnectionService } from '../services/internet-connection-service';
import { first } from 'rxjs'; import { first, firstValueFrom, skip } from 'rxjs';
let service: InternetConnectionService; let service: InternetConnectionService;
describe('Internet connection when disconnected', () => { describe('Internet connection when disconnected', () => {
const events = {}; const events = {};
const addEventListener = jest.fn((event, callback) => { const addEventListener = vi.fn((event, callback) => {
events[event] = callback; events[event] = callback;
}); });
const mockDocument = { defaultView: {navigator: {onLine: false}, addEventListener } } const mockDocument = { defaultView: { navigator: { onLine: false }, addEventListener } };
beforeAll(() => { beforeAll(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
providers:[{provide:DOCUMENT, useValue: mockDocument}] providers: [{ provide: DOCUMENT, useValue: mockDocument }],
}) });
service = TestBed.inject(InternetConnectionService); service = TestBed.inject(InternetConnectionService);
}); });
it('document should be created', () => { it('document should be created', () => {
expect(service.document).toEqual(mockDocument); expect(service.document).toEqual(mockDocument);
}); });
it('signal value should be false', () => { it('signal value should be false', () => {
expect(service.networkStatus()).toEqual(false); expect(service.networkStatus()).toEqual(false);
}); });
it('observable value should be false', it('observable value should be false', async () => {
(done: any) => { const value = await firstValueFrom(service.networkStatus$.pipe(first()));
service.networkStatus$.pipe(first()).subscribe(value => { expect(value).toBe(false);
expect(value).toBe(false) });
done();
}); test.each(['offline', 'online'])('should addEventListener for %p, event', v => {
}); expect(events[v]).toBeTruthy();
});
test.each(['offline','online'])('should addEventListener for %p, event',(v)=>{
expect(events[v]).toBeTruthy() test.each([
}) ['offline', false],
['online', true],
test.each([['offline',false],["online",true]])('when %p called ,then signal value must be %p',(eventName,value)=>{ ])('when %p called ,then signal value must be %p', (eventName, value) => {
events[eventName]() events[eventName]();
expect(service.networkStatus()).toEqual(value); expect(service.networkStatus()).toEqual(value);
}) });
test.each([['offline',false],["online",true]])('when %p called,then observable must return %p',(eventName,value)=>{ test.each([
events[eventName]() ['offline', false],
service.networkStatus$.subscribe(val=>{ ['online', true],
expect(val).toEqual(value) ])('when %p called,then observable must return %p', async (eventName, value) => {
}) events[eventName]();
}) const val = await firstValueFrom(service.networkStatus$);
}); expect(val).toEqual(value);
});
describe('when connection value changes for signals', () => { });
const events = {};
const addEventListener = jest.fn((event, callback) => { describe('when connection value changes for signals', () => {
events[event] = callback; const events = {};
}); const addEventListener = vi.fn((event, callback) => {
const mockDocument = { defaultView: {navigator: {onLine: false}, addEventListener } } events[event] = callback;
beforeAll(() => { });
TestBed.configureTestingModule({ const mockDocument = { defaultView: { navigator: { onLine: false }, addEventListener } };
providers:[{provide:DOCUMENT, useValue: mockDocument}] beforeAll(() => {
}) TestBed.configureTestingModule({
service = TestBed.inject(InternetConnectionService); providers: [{ provide: DOCUMENT, useValue: mockDocument }],
}); });
service = TestBed.inject(InternetConnectionService);
it('signal value must be false when offline event is called while internet is connected', () => { });
events['online']()
expect(service.networkStatus()).toEqual(true); it('signal value must be false when offline event is called while internet is connected', () => {
events['offline']() events['online']();
expect(service.networkStatus()).toEqual(false); expect(service.networkStatus()).toEqual(true);
}); events['offline']();
expect(service.networkStatus()).toEqual(false);
it('signal value must be true when online event is called while internet is disconnected', () => { });
events['offline']()
expect(service.networkStatus()).toEqual(false); it('signal value must be true when online event is called while internet is disconnected', () => {
events['online']() events['offline']();
expect(service.networkStatus()).toEqual(true); expect(service.networkStatus()).toEqual(false);
}); events['online']();
expect(service.networkStatus()).toEqual(true);
it('observable value must be false when offline event is called while internet is connected', (done:any) => { });
events['online']()
events['offline']() it('observable value must be false when offline event is called while internet is connected', async () => {
service.networkStatus$.subscribe(val=>{ events['online']();
expect(val).toEqual(false) // Get current value after online event
done() const onlineVal = await firstValueFrom(service.networkStatus$);
}) expect(onlineVal).toEqual(true);
});
// Subscribe and skip the current value, then trigger offline event
it('observable value must be true when online event is called while internet is disconnected', (done:any) => { const offlinePromise = firstValueFrom(service.networkStatus$.pipe(skip(1)));
events['offline']() events['offline']();
events['online']() const finalVal = await offlinePromise;
service.networkStatus$.subscribe(val=>{ expect(finalVal).toEqual(false);
console.log(val); });
expect(val).toEqual(true)
done() it('observable value must be true when online event is called while internet is disconnected', async () => {
}) events['offline']();
}); // Get current value after offline event
}); const offlineVal = await firstValueFrom(service.networkStatus$);
expect(offlineVal).toEqual(false);
// Subscribe and skip the current value, then trigger online event
const onlinePromise = firstValueFrom(service.networkStatus$.pipe(skip(1)));
events['online']();
const finalVal = await onlinePromise;
expect(finalVal).toEqual(true);
});
});

106
npm/ng-packs/packages/core/src/lib/tests/lazy-load-utils.spec.ts

@ -6,12 +6,12 @@ import { fromLazyLoad } from '../utils/lazy-load-utils';
describe('Lazy Load Utils', () => { describe('Lazy Load Utils', () => {
describe('#fromLazyLoad', () => { describe('#fromLazyLoad', () => {
afterEach(() => { afterEach(() => {
jest.clearAllMocks(); vi.clearAllMocks();
}); });
it('should append to head by default', () => { it('should append to head by default', () => {
const element = document.createElement('link'); const element = document.createElement('link');
const spy = jest.spyOn(document.head, 'insertAdjacentElement'); const spy = vi.spyOn(document.head, 'insertAdjacentElement');
fromLazyLoad(element); fromLazyLoad(element);
expect(spy).toHaveBeenCalledWith('beforeend', element); expect(spy).toHaveBeenCalledWith('beforeend', element);
@ -19,7 +19,7 @@ describe('Lazy Load Utils', () => {
it('should allow setting a dom strategy', () => { it('should allow setting a dom strategy', () => {
const element = document.createElement('link'); const element = document.createElement('link');
const spy = jest.spyOn(document.head, 'insertAdjacentElement'); const spy = vi.spyOn(document.head, 'insertAdjacentElement');
fromLazyLoad(element, DOM_STRATEGY.PrependToHead()); fromLazyLoad(element, DOM_STRATEGY.PrependToHead());
expect(spy).toHaveBeenCalledWith('afterbegin', element); expect(spy).toHaveBeenCalledWith('afterbegin', element);
@ -52,61 +52,73 @@ describe('Lazy Load Utils', () => {
expect(element.getAttribute('integrity')).toBe(integrity); expect(element.getAttribute('integrity')).toBe(integrity);
}); });
it('should emit error event on fail and clear callbacks', done => { it('should emit error event on fail and clear callbacks', () => {
const error = new CustomEvent('error'); const error = new CustomEvent('error');
const parentNode = { removeChild: jest.fn() }; const parentNode = { removeChild: vi.fn() };
const element = { parentNode } as any as HTMLLinkElement; const element = { parentNode } as any as HTMLLinkElement;
fromLazyLoad( return new Promise<void>((resolve, reject) => {
element, fromLazyLoad(
{ element,
insertElement(el: HTMLLinkElement) { {
expect(el).toBe(element); insertElement(el: HTMLLinkElement) {
expect(el).toBe(element);
setTimeout(() => {
el.onerror(error); setTimeout(() => {
}, 0); el.onerror(error);
}, 0);
},
} as DomStrategy,
{
setCrossOrigin(_: HTMLLinkElement) {},
} as CrossOriginStrategy,
).subscribe({
error: value => {
try {
expect(value).toBe(error);
expect(parentNode.removeChild).toHaveBeenCalledWith(element);
expect(element.onerror).toBeNull();
resolve();
} catch (e) {
reject(e);
}
}, },
} as DomStrategy, });
{
setCrossOrigin(_: HTMLLinkElement) {},
} as CrossOriginStrategy,
).subscribe({
error: value => {
expect(value).toBe(error);
expect(parentNode.removeChild).toHaveBeenCalledWith(element);
expect(element.onerror).toBeNull();
done();
},
}); });
}); });
it('should emit load event on success and clear callbacks', done => { it('should emit load event on success and clear callbacks', () => {
const success = new CustomEvent('load'); const success = new CustomEvent('load');
const parentNode = { removeChild: jest.fn() }; const parentNode = { removeChild: vi.fn() };
const element = { parentNode } as any as HTMLLinkElement; const element = { parentNode } as any as HTMLLinkElement;
fromLazyLoad( return new Promise<void>((resolve, reject) => {
element, fromLazyLoad(
{ element,
insertElement(el: HTMLLinkElement) { {
expect(el).toBe(element); insertElement(el: HTMLLinkElement) {
expect(el).toBe(element);
setTimeout(() => {
el.onload(success); setTimeout(() => {
}, 0); el.onload(success);
}, 0);
},
} as DomStrategy,
{
setCrossOrigin(_: HTMLLinkElement) {},
} as CrossOriginStrategy,
).subscribe({
next: value => {
try {
expect(value).toBe(success);
expect(parentNode.removeChild).not.toHaveBeenCalled();
expect(element.onload).toBeNull();
resolve();
} catch (e) {
reject(e);
}
}, },
} as DomStrategy, });
{
setCrossOrigin(_: HTMLLinkElement) {},
} as CrossOriginStrategy,
).subscribe({
next: value => {
expect(value).toBe(success);
expect(parentNode.removeChild).not.toHaveBeenCalled();
expect(element.onload).toBeNull();
done();
},
}); });
}); });
}); });

10
npm/ng-packs/packages/core/src/lib/tests/lazy-load.service.spec.ts

@ -1,9 +1,7 @@
import { of, throwError } from 'rxjs';
import { switchMap } from 'rxjs/operators';
import { LazyLoadService } from '../services/lazy-load.service'; import { LazyLoadService } from '../services/lazy-load.service';
import { ScriptLoadingStrategy } from '../strategies/loading.strategy'; import { ScriptLoadingStrategy } from '../strategies/loading.strategy';
import { ResourceWaitService } from '../services/resource-wait.service'; import { ResourceWaitService } from '../services/resource-wait.service';
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
describe('LazyLoadService', () => { describe('LazyLoadService', () => {
let spectator: SpectatorService<LazyLoadService>; let spectator: SpectatorService<LazyLoadService>;
@ -16,8 +14,8 @@ describe('LazyLoadService', () => {
{ {
provide: ResourceWaitService, provide: ResourceWaitService,
useValue: { useValue: {
wait: jest.fn(), wait: vi.fn(),
addResource: jest.fn(), addResource: vi.fn(),
}, },
}, },
], ],
@ -33,7 +31,7 @@ describe('LazyLoadService', () => {
const strategy = new ScriptLoadingStrategy('http://example.com/'); const strategy = new ScriptLoadingStrategy('http://example.com/');
afterEach(() => { afterEach(() => {
jest.clearAllMocks(); vi.clearAllMocks();
}); });
it('should create service successfully', () => { it('should create service successfully', () => {

117
npm/ng-packs/packages/core/src/lib/tests/list.service.spec.ts

@ -1,5 +1,5 @@
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { of } from 'rxjs'; import { of, firstValueFrom } from 'rxjs';
import { bufferCount, take } from 'rxjs/operators'; import { bufferCount, take } from 'rxjs/operators';
import { ABP } from '../models'; import { ABP } from '../models';
import { ListService, QueryStreamCreatorCallback } from '../services/list.service'; import { ListService, QueryStreamCreatorCallback } from '../services/list.service';
@ -85,101 +85,100 @@ describe('ListService', () => {
}); });
describe('#query$', () => { describe('#query$', () => {
it('should initially emit default query', done => { it('should initially emit default query', async () => {
service.query$.pipe(take(1)).subscribe(query => { const query = await firstValueFrom(service.query$.pipe(take(1)));
expect(query).toEqual({ expect(query).toEqual({
filter: undefined, filter: undefined,
maxResultCount: 10, maxResultCount: 10,
skipCount: 0, skipCount: 0,
sorting: undefined, sorting: undefined,
});
done();
}); });
}); });
it('should emit a query based on params set', done => { it('should emit a query based on params set', async () => {
service.filter = 'foo'; service.filter = 'foo';
service.sortKey = 'bar'; service.sortKey = 'bar';
service.sortOrder = 'baz'; service.sortOrder = 'baz';
service.maxResultCount = 20; service.maxResultCount = 20;
service.page = 9; service.page = 9;
service.query$.pipe(take(1)).subscribe(query => { const query = await firstValueFrom(service.query$.pipe(take(1)));
expect(query).toEqual({ expect(query).toEqual({
filter: 'foo', filter: 'foo',
sorting: 'bar baz', sorting: 'bar baz',
maxResultCount: 20, maxResultCount: 20,
skipCount: 180, skipCount: 180,
});
done();
}); });
}); });
}); });
describe('#hookToQuery', () => { describe('#hookToQuery', () => {
it('should call given callback with the query', done => { it('should call given callback with the query', async () => {
const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query => const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query =>
of({ items: [query], totalCount: 1 }); of({ items: [query], totalCount: 1 });
service.hookToQuery(callback).subscribe(({ items: [query] }) => { const result = await firstValueFrom(service.hookToQuery(callback));
expect(query).toEqual({ expect(result.items[0]).toEqual({
filter: undefined, filter: undefined,
maxResultCount: 10, maxResultCount: 10,
skipCount: 0, skipCount: 0,
sorting: undefined, sorting: undefined,
});
done();
}); });
}); });
it('should emit isLoading as side effect', done => { it('should emit isLoading as side effect', async () => {
const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query => const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query =>
of({ items: [query], totalCount: 1 }); of({ items: [query], totalCount: 1 });
service.isLoading$.pipe(bufferCount(3)).subscribe(([idle, init, end]) => { // Subscribe to capture the sequence: false (idle) -> true (loading) -> false (idle after completion)
expect(idle).toBe(false); const loadingPromise = firstValueFrom(service.isLoading$.pipe(bufferCount(3)));
expect(init).toBe(true); const hookSubscription = service.hookToQuery(callback).subscribe();
expect(end).toBe(false); const [idle, init, end] = await loadingPromise;
hookSubscription.unsubscribe();
done(); expect(idle).toBe(false);
}); expect(init).toBe(true);
expect(end).toBe(false);
service.hookToQuery(callback).subscribe();
}); });
it('should emit requestStatus as side effect', done => { it('should emit requestStatus as side effect', async () => {
const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query => const callback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query =>
of({ items: [query], totalCount: 1 }); of({ items: [query], totalCount: 1 });
service.requestStatus$.pipe(bufferCount(3)).subscribe(([idle, init, end]) => { // Subscribe to capture the sequence: 'idle' -> 'loading' -> 'success'
expect(idle).toBe('idle'); const statusPromise = firstValueFrom(service.requestStatus$.pipe(bufferCount(3)));
expect(init).toBe('loading'); const hookSubscription = service.hookToQuery(callback).subscribe();
expect(end).toBe('success'); const [idle, init, end] = await statusPromise;
hookSubscription.unsubscribe();
done(); expect(idle).toBe('idle');
}); expect(init).toBe('loading');
expect(end).toBe('success');
service.hookToQuery(callback).subscribe();
}); });
it('should emit error requestStatus as side effect and stop processing', done => { it('should emit error requestStatus as side effect and stop processing', async () => {
const errCallback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query => { const errCallback: QueryStreamCreatorCallback<ABP.PageQueryParams> = query => {
throw Error('A server error occurred'); throw Error('A server error occurred');
}; };
service.requestStatus$.pipe(bufferCount(3)).subscribe(([idle, loading, error]) => { // Subscribe to capture the sequence: 'idle' -> 'loading' -> 'error'
expect(idle).toBe('idle'); // Must subscribe BEFORE hookToQuery to capture the initial 'idle' value
expect(loading).toBe('loading'); const statusPromise = firstValueFrom(service.requestStatus$.pipe(bufferCount(3)));
expect(error).toBe('error');
done();
});
service.hookToQuery(errCallback).subscribe({ // Subscribe to hookToQuery which will emit 'loading' and 'error'
error: () => done(), // The error is caught by the service's catchError, which sets status to 'error'
const hookSubscription = service.hookToQuery(errCallback).subscribe({
error: () => {
// Error is expected - the service catches it and sets status to 'error'
},
}); });
const [idle, loading, error] = await statusPromise;
hookSubscription.unsubscribe();
expect(idle).toBe('idle');
expect(loading).toBe('loading');
expect(error).toBe('error');
}); });
}); });
}); });

40
npm/ng-packs/packages/core/src/lib/tests/loading.strategy.spec.ts

@ -1,3 +1,4 @@
import { firstValueFrom } from 'rxjs';
import { CROSS_ORIGIN_STRATEGY } from '../strategies/cross-origin.strategy'; import { CROSS_ORIGIN_STRATEGY } from '../strategies/cross-origin.strategy';
import { import {
LOADING_STRATEGY, LOADING_STRATEGY,
@ -20,11 +21,11 @@ describe('ScriptLoadingStrategy', () => {
}); });
describe('#createStream', () => { describe('#createStream', () => {
it('should use given dom and cross-origin strategies', done => { it('should use given dom and cross-origin strategies', async () => {
const domStrategy = DOM_STRATEGY.PrependToHead(); const domStrategy = DOM_STRATEGY.PrependToHead();
const crossOriginStrategy = CROSS_ORIGIN_STRATEGY.UseCredentials(); const crossOriginStrategy = CROSS_ORIGIN_STRATEGY.UseCredentials();
domStrategy.insertElement = jest.fn((el: HTMLScriptElement) => { domStrategy.insertElement = vi.fn((el: HTMLScriptElement) => {
setTimeout(() => { setTimeout(() => {
el.onload( el.onload(
new CustomEvent('success', { new CustomEvent('success', {
@ -38,11 +39,9 @@ describe('ScriptLoadingStrategy', () => {
const strategy = new ScriptLoadingStrategy(path, domStrategy, crossOriginStrategy); const strategy = new ScriptLoadingStrategy(path, domStrategy, crossOriginStrategy);
strategy.createStream<CustomEvent>().subscribe(event => { const event = await firstValueFrom(strategy.createStream<CustomEvent>());
expect(strategy.element.tagName).toBe('SCRIPT'); expect(strategy.element.tagName).toBe('SCRIPT');
expect(event.detail.crossOrigin).toBe('use-credentials'); expect(event.detail.crossOrigin).toBe('use-credentials');
done();
});
}); });
}); });
}); });
@ -60,11 +59,11 @@ describe('StyleLoadingStrategy', () => {
}); });
describe('#createStream', () => { describe('#createStream', () => {
it('should use given dom and cross-origin strategies', done => { it('should use given dom and cross-origin strategies', async () => {
const domStrategy = DOM_STRATEGY.PrependToHead(); const domStrategy = DOM_STRATEGY.PrependToHead();
const crossOriginStrategy = CROSS_ORIGIN_STRATEGY.UseCredentials(); const crossOriginStrategy = CROSS_ORIGIN_STRATEGY.UseCredentials();
domStrategy.insertElement = jest.fn((el: HTMLLinkElement) => { domStrategy.insertElement = vi.fn((el: HTMLLinkElement) => {
setTimeout(() => { setTimeout(() => {
el.onload( el.onload(
new CustomEvent('success', { new CustomEvent('success', {
@ -78,11 +77,9 @@ describe('StyleLoadingStrategy', () => {
const strategy = new StyleLoadingStrategy(path, domStrategy, crossOriginStrategy); const strategy = new StyleLoadingStrategy(path, domStrategy, crossOriginStrategy);
strategy.createStream<CustomEvent>().subscribe(event => { const event = await firstValueFrom(strategy.createStream<CustomEvent>());
expect(strategy.element.tagName).toBe('LINK'); expect(strategy.element.tagName).toBe('LINK');
expect(event.detail.crossOrigin).toBe('use-credentials'); expect(event.detail.crossOrigin).toBe('use-credentials');
done();
});
}); });
}); });
}); });
@ -98,7 +95,20 @@ describe('LOADING_STRATEGY', () => {
`( `(
'should successfully map $name to $Strategy.name with $domStrategy dom strategy', 'should successfully map $name to $Strategy.name with $domStrategy dom strategy',
({ name, Strategy, domStrategy }) => { ({ name, Strategy, domStrategy }) => {
expect(LOADING_STRATEGY[name](path)).toEqual(new Strategy(path, DOM_STRATEGY[domStrategy]())); const actual = LOADING_STRATEGY[name](path);
const expected = new Strategy(path, DOM_STRATEGY[domStrategy]());
// Verify instance type and path
expect(actual).toBeInstanceOf(Strategy);
expect(actual.path).toBe(expected.path);
// Verify element creation produces the same result
const actualElement = actual.createElement();
const expectedElement = expected.createElement();
expect(actualElement.tagName).toBe(expectedElement.tagName);
expect(actualElement.src || actualElement.href).toBe(
expectedElement.src || expectedElement.href,
);
}, },
); );
}); });

12
npm/ng-packs/packages/core/src/lib/tests/local-storage.service.spec.ts

@ -15,37 +15,37 @@ describe('LocalStorageService', () => {
}); });
it('should be called getItem', () => { it('should be called getItem', () => {
const spy = jest.spyOn(service, 'getItem'); const spy = vi.spyOn(service, 'getItem');
service.getItem('test'); service.getItem('test');
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });
it('should be called setItem', () => { it('should be called setItem', () => {
const spy = jest.spyOn(service, 'setItem'); const spy = vi.spyOn(service, 'setItem');
service.setItem('test', 'value'); service.setItem('test', 'value');
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });
it('should be called removeItem', () => { it('should be called removeItem', () => {
const spy = jest.spyOn(service, 'removeItem'); const spy = vi.spyOn(service, 'removeItem');
service.removeItem('test'); service.removeItem('test');
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });
it('should be called clear', () => { it('should be called clear', () => {
const spy = jest.spyOn(service, 'clear'); const spy = vi.spyOn(service, 'clear');
service.clear(); service.clear();
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });
it('should be called key', () => { it('should be called key', () => {
const spy = jest.spyOn(service, 'key'); const spy = vi.spyOn(service, 'key');
service.key(0); service.key(0);
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });
it('should be called length', () => { it('should be called length', () => {
const spy = jest.spyOn(service, 'length', 'get'); const spy = vi.spyOn(service, 'length', 'get');
service.length; service.length;
expect(spy).toHaveBeenCalled(); expect(spy).toHaveBeenCalled();
}); });

2
npm/ng-packs/packages/core/src/lib/tests/locale.provider.spec.ts

@ -1,5 +1,5 @@
import { Component, LOCALE_ID } from '@angular/core'; import { Component, LOCALE_ID } from '@angular/core';
import { createRoutingFactory, SpectatorRouting } from '@ngneat/spectator/jest'; import { createRoutingFactory, SpectatorRouting } from '@ngneat/spectator/vitest';
import { differentLocales } from '../constants/different-locales'; import { differentLocales } from '../constants/different-locales';
import { LocaleId } from '../providers/locale.provider'; import { LocaleId } from '../providers/locale.provider';
import { LocalizationService } from '../services/localization.service'; import { LocalizationService } from '../services/localization.service';

4
npm/ng-packs/packages/core/src/lib/tests/localization.pipe.spec.ts

@ -1,4 +1,4 @@
import { createServiceFactory, SpectatorService, SpyObject } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService, SpyObject } from '@ngneat/spectator/vitest';
import { LocalizationPipe } from '../pipes/localization.pipe'; import { LocalizationPipe } from '../pipes/localization.pipe';
import { LocalizationService } from '../services/localization.service'; import { LocalizationService } from '../services/localization.service';
@ -19,7 +19,7 @@ describe('LocalizationPipe', () => {
}); });
it('should call getLocalization selector', () => { it('should call getLocalization selector', () => {
const translateSpy = jest.spyOn(localizationService, 'instant'); const translateSpy = vi.spyOn(localizationService, 'instant');
pipe.transform('test', '1', '2'); pipe.transform('test', '1', '2');
pipe.transform('test2', ['3', '4'] as any); pipe.transform('test2', ['3', '4'] as any);

22
npm/ng-packs/packages/core/src/lib/tests/localization.service.spec.ts

@ -1,4 +1,4 @@
import { createServiceFactory, SpectatorService } from '@ngneat/spectator/jest'; import { createServiceFactory, SpectatorService } from '@ngneat/spectator/vitest';
import { Subject } from 'rxjs'; import { Subject } from 'rxjs';
import { LocalizationService } from '../services/localization.service'; import { LocalizationService } from '../services/localization.service';
import { SessionStateService } from '../services/session-state.service'; import { SessionStateService } from '../services/session-state.service';
@ -18,26 +18,26 @@ describe('LocalizationService', () => {
{ {
provide: SessionStateService, provide: SessionStateService,
useValue: { useValue: {
getLanguage: jest.fn(() => 'en'), getLanguage: vi.fn(() => 'en'),
setLanguage: jest.fn(), setLanguage: vi.fn(),
getLanguage$: jest.fn(() => new Subject()), getLanguage$: vi.fn(() => new Subject()),
onLanguageChange$: jest.fn(() => new Subject()), onLanguageChange$: vi.fn(() => new Subject()),
}, },
}, },
{ {
provide: ConfigStateService, provide: ConfigStateService,
useValue: { useValue: {
getOne: jest.fn(), getOne: vi.fn(),
refreshAppState: jest.fn(), refreshAppState: vi.fn(),
getDeep: jest.fn(), getDeep: vi.fn(),
getDeep$: jest.fn(() => new Subject()), getDeep$: vi.fn(() => new Subject()),
getOne$: jest.fn(() => new Subject()), getOne$: vi.fn(() => new Subject()),
}, },
}, },
{ {
provide: Injector, provide: Injector,
useValue: { useValue: {
get: jest.fn(), get: vi.fn(),
}, },
}, },
], ],

25
npm/ng-packs/packages/core/src/lib/tests/multi-tenancy-utils.spec.ts

@ -1,5 +1,6 @@
import { Component } from '@angular/core'; import { Component, PLATFORM_ID } from '@angular/core';
import { createComponentFactory, Spectator } from '@ngneat/spectator/jest'; import { DOCUMENT } from '@angular/common';
import { createComponentFactory, Spectator } from '@ngneat/spectator/vitest';
import clone from 'just-clone'; import clone from 'just-clone';
import { of } from 'rxjs'; import { of } from 'rxjs';
@ -10,6 +11,7 @@ import {
import { EnvironmentService, MultiTenancyService } from '../services'; import { EnvironmentService, MultiTenancyService } from '../services';
import { parseTenantFromUrl } from '../utils'; import { parseTenantFromUrl } from '../utils';
import { TENANT_KEY } from '../tokens'; import { TENANT_KEY } from '../tokens';
import { TENANT_NOT_FOUND_BY_NAME } from '../tokens/tenant-not-found-by-name';
const environment = { const environment = {
production: false, production: false,
@ -68,9 +70,9 @@ describe('MultiTenancyUtils', () => {
test('should get the tenancyName, set replaced environment and call the findTenantByName method of AbpTenantService', async () => { test('should get the tenancyName, set replaced environment and call the findTenantByName method of AbpTenantService', async () => {
const environmentService = spectator.inject(EnvironmentService); const environmentService = spectator.inject(EnvironmentService);
const multiTenancyService = spectator.inject(MultiTenancyService); const multiTenancyService = spectator.inject(MultiTenancyService);
const setTenantByName = jest.spyOn(multiTenancyService, 'setTenantByName'); const setTenantByName = vi.spyOn(multiTenancyService, 'setTenantByName');
const getEnvironmentSpy = jest.spyOn(environmentService, 'getEnvironment'); const getEnvironmentSpy = vi.spyOn(environmentService, 'getEnvironment');
const setStateSpy = jest.spyOn(environmentService, 'setState'); const setStateSpy = vi.spyOn(environmentService, 'setState');
getEnvironmentSpy.mockReturnValue(clone(environment)); getEnvironmentSpy.mockReturnValue(clone(environment));
@ -85,10 +87,23 @@ describe('MultiTenancyUtils', () => {
setTenantByName.mockReturnValue(of(testTenant)); setTenantByName.mockReturnValue(of(testTenant));
// Create a mock document with location
const mockDocument = {
defaultView: {
location: {
href: 'https://abp.volosoft.com/',
},
},
};
const mockInjector = { const mockInjector = {
get: arg => { get: arg => {
if (arg === EnvironmentService) return environmentService; if (arg === EnvironmentService) return environmentService;
if (arg === MultiTenancyService) return multiTenancyService; if (arg === MultiTenancyService) return multiTenancyService;
if (arg === PLATFORM_ID) return 'browser';
if (arg === DOCUMENT) return mockDocument;
if (arg === TENANT_NOT_FOUND_BY_NAME) return null;
return null;
}, },
}; };
await parseTenantFromUrl(mockInjector); await parseTenantFromUrl(mockInjector);

2
npm/ng-packs/packages/core/src/lib/tests/ng-model.component.spec.ts

@ -1,6 +1,6 @@
import { Component, Input, OnInit } from '@angular/core'; import { Component, Input, OnInit } from '@angular/core';
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms'; import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
import { createHostFactory, SpectatorHost } from '@ngneat/spectator/jest'; import { createHostFactory, SpectatorHost } from '@ngneat/spectator/vitest';
import { AbstractNgModelComponent } from '../abstracts'; import { AbstractNgModelComponent } from '../abstracts';
@Component({ @Component({

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save