Merge branch 'dev' into maliming/FodyConfigureAwait

pull/2645/head
maliming 6 years ago
commit ca74abd8d6

@ -37,7 +37,7 @@
"NugetPackageTarget.HttpApi": "Http Api",
"NugetPackageTarget.HttpApiClient": "Http Api Client",
"NugetPackageTarget.Web": "Web",
"NugetPackageTarget.EntityFrameworkCore": "EntityFramework Core",
"NugetPackageTarget.EntityFrameworkCore": "DeleteAllEntityFramework Core",
"NugetPackageTarget.MongoDB": "MongoDB",
"Edit": "Edit",
"Delete": "Delete",
@ -80,6 +80,8 @@
"LastSeenDate": "Last seen date",
"{0}Computer{1}WillBeRemovedFromRecords": "Computer of {0} ({1}) will be removed from records",
"OrganizationDeletionWarningMessage": "Organization will be deleted",
"This{0}AlreadyExistInThisOrganization": "This {0} already exist in this organization"
"This{0}AlreadyExistInThisOrganization": "This {0} already exist in this organization",
"AreYouSureYouWantToDeleteAllComputers": "Are you sure you want to delete all computers?",
"DeleteAll": "Delete all"
}
}

@ -79,6 +79,9 @@
"UniqueComputerId": "计算机唯一ID",
"LastSeenDate": "上次查看日期",
"{0}Computer{1}WillBeRemovedFromRecords": "计算机 {0} ({1}) 将从记录中删除",
"This{0}AlreadyExistInThisOrganization": "该组织中已经存在此 {0}"
"OrganizationDeletionWarningMessage": "组织将被删除",
"This{0}AlreadyExistInThisOrganization": "该组织中已经存在此 {0}",
"AreYouSureYouWantToDeleteAllComputers": "您确定要删除所有计算机吗?",
"DeleteAll": "删除所有"
}
}

@ -50,6 +50,20 @@ namespace Acme.BookStore
public DateTime PublishDate { get; set; }
public float Price { get; set; }
protected Book()
{
}
public Book(Guid id, string name, BookType type, DateTime publishDate, float price)
:base(id)
{
Name = name;
Type = type;
PublishDate = publishDate;
Price = price;
}
}
}
````

@ -57,25 +57,11 @@ namespace Acme.BookStore
public async Task SeedAsync(DataSeedContext context)
{
await _bookRepository.InsertAsync(
new Book
{
Id = _guidGenerator.Create(),
Name = "Test book 1",
Type = BookType.Fantastic,
PublishDate = new DateTime(2015, 05, 24),
Price = 21
}
new Book(_guidGenerator.Create(), "Test book 1", BookType.Fantastic, new DateTime(2015, 05, 24), 21)
);
await _bookRepository.InsertAsync(
new Book
{
Id = _guidGenerator.Create(),
Name = "Test book 2",
Type = BookType.Science,
PublishDate = new DateTime(2014, 02, 11),
Price = 15
}
new Book(_guidGenerator.Create(), "Test book 2", BookType.Science, new DateTime(2014, 02, 11), 15)
);
}
}

@ -8,6 +8,7 @@ namespace Volo.Abp.Cli.Licensing
public string OrganizationName { get; set; }
public string ApiKey { get; set; }
public DateTime? LicenseEndTime { get; set; }
public bool CanDownloadSourceCode { get; set; }
public string LicenseCode { get; set; }
}
}

@ -1,4 +1,5 @@
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Cli.ProjectBuilding.Building;
namespace Volo.Abp.Cli.ProjectBuilding
@ -6,5 +7,7 @@ namespace Volo.Abp.Cli.ProjectBuilding
public interface IModuleInfoProvider
{
Task<ModuleInfo> GetAsync(string name);
Task<List<ModuleInfo>> GetModuleListAsync();
}
}

@ -28,7 +28,7 @@ namespace Volo.Abp.Cli.ProjectBuilding
public async Task<ModuleInfo> GetAsync(string name)
{
var moduleList = await GetModuleListAsync();
var moduleList = await GetModuleListInternalAsync();
var module = moduleList.FirstOrDefault(m => m.Name == name);
@ -40,7 +40,12 @@ namespace Volo.Abp.Cli.ProjectBuilding
return module;
}
private async Task<List<ModuleInfo>> GetModuleListAsync()
public async Task<List<ModuleInfo>> GetModuleListAsync()
{
return await GetModuleListInternalAsync();
}
private async Task<List<ModuleInfo>> GetModuleListInternalAsync()
{
using (var client = new CliHttpClient())
{

@ -13,6 +13,7 @@
"DefaultErrorMessage404": "Resource not found!",
"DefaultErrorMessage404Detail": "The resource requested could not found on the server!",
"EntityNotFoundErrorMessage": "There is no entity {0} with id = {1}!",
"Languages": "Languages",
"Error": "Error",
"AreYouSure": "Are you sure?",
"Cancel": "Cancel",

@ -13,6 +13,7 @@
"DefaultErrorMessage404": "Kaynak bulunamadı!",
"DefaultErrorMessage404Detail": "İstenilen kaynak sunucuda bulunamadı.",
"EntityNotFoundErrorMessage": "Id değeri {1} olan {0} türünden bir nesne bulunamadı!",
"Languages": "Diller",
"Error": "Hata",
"AreYouSure": "Emin misiniz?",
"Cancel": "Vazgeç",

@ -13,6 +13,7 @@
"DefaultErrorMessage404": "未找到资源!",
"DefaultErrorMessage404Detail": "未在服务中找到请求的资源!",
"EntityNotFoundErrorMessage": "实体 {0} 不存在,id = {1}!",
"Languages": "语言",
"Error": "错误",
"AreYouSure": "你确定吗?",
"Cancel": "取消",

@ -25,7 +25,8 @@ namespace Volo.Abp.Identity
IPasswordHasher<IdentityUser> passwordHasher,
IEnumerable<IUserValidator<IdentityUser>> userValidators,
IEnumerable<IPasswordValidator<IdentityUser>> passwordValidators,
ILookupNormalizer keyNormalizer, IdentityErrorDescriber errors,
ILookupNormalizer keyNormalizer,
IdentityErrorDescriber errors,
IServiceProvider services,
ILogger<IdentityUserManager> logger,
ICancellationTokenProvider cancellationTokenProvider)

@ -4,11 +4,26 @@ import { NgModule } from '@angular/core';
import { ThemeBasicModule } from '@abp/ng.theme.basic';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TableModule } from 'primeng/table';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@NgModule({
declarations: [],
imports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
exports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
imports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
exports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
providers: [],
})
export class SharedModule {}

@ -21,19 +21,19 @@
"generate:changelog": "conventional-changelog -p angular -i CHANGELOG.md -s"
},
"devDependencies": {
"@abp/ng.account": "^2.0.0",
"@abp/ng.account.config": "^2.0.0",
"@abp/ng.core": "^2.0.0",
"@abp/ng.feature-management": "^2.0.0",
"@abp/ng.identity": "^2.0.0",
"@abp/ng.identity.config": "^2.0.0",
"@abp/ng.permission-management": "^2.0.0",
"@abp/ng.setting-management": "^2.0.0",
"@abp/ng.setting-management.config": "^2.0.0",
"@abp/ng.tenant-management": "^2.0.0",
"@abp/ng.tenant-management.config": "^2.0.0",
"@abp/ng.theme.basic": "^2.0.0",
"@abp/ng.theme.shared": "^2.0.0",
"@abp/ng.account": "^2.0.1",
"@abp/ng.account.config": "^2.0.1",
"@abp/ng.core": "^2.0.1",
"@abp/ng.feature-management": "^2.0.1",
"@abp/ng.identity": "^2.0.1",
"@abp/ng.identity.config": "^2.0.1",
"@abp/ng.permission-management": "^2.0.1",
"@abp/ng.setting-management": "^2.0.1",
"@abp/ng.setting-management.config": "^2.0.1",
"@abp/ng.tenant-management": "^2.0.1",
"@abp/ng.tenant-management.config": "^2.0.1",
"@abp/ng.theme.basic": "^2.0.1",
"@abp/ng.theme.shared": "^2.0.1",
"@angular-builders/jest": "^8.2.0",
"@angular-devkit/build-angular": "~0.803.21",
"@angular-devkit/build-ng-packagr": "~0.803.21",

@ -27,7 +27,8 @@
</div>
<div class="form-group">
<label for="email-address">{{ 'AbpIdentity::DisplayName:Email' | abpLocalization }}</label
><span> * </span><input type="text" id="email-address" class="form-control" formControlName="email" />
><span> * </span
><input type="text" id="email-address" class="form-control" formControlName="email" />
</div>
<div class="form-group">
<label for="phone-number">{{ 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization }}</label
@ -38,7 +39,7 @@
iconClass="fa fa-check"
buttonClass="btn btn-primary color-white"
[loading]="inProgress"
[disabled]="form?.invalid || form?.pristine"
[disabled]="form?.invalid"
>
{{ 'AbpIdentity::Save' | abpLocalization }}</abp-button
>

@ -48,4 +48,18 @@ export class AuthService {
take(1),
);
}
logout(): Observable<void> {
return this.rest
.request({
method: 'GET',
url: '/api/account/logout',
})
.pipe(
switchMap(() => {
this.oAuthService.logOut();
return this.store.dispatch(new GetAppConfiguration());
}),
);
}
}

@ -249,7 +249,7 @@ export class ConfigState {
if (index < 0) return;
const parent = flattedRoutes[index];
if (parent.url.replace('/', '')) {
if ((parent.url || '').replace('/', '')) {
route.url = `${parent.url}/${route.path}`;
} else {
route.url = `/${route.path}`;

@ -119,7 +119,7 @@ export class UsersComponent implements OnInit {
}
buildForm() {
this.store.dispatch(new GetRoles()).subscribe(() => {
this.store.dispatch(new GetRoles({ maxResultCount: 1000, skipCount: 0 })).subscribe(() => {
this.roles = this.store.selectSnapshot(IdentityState.getRoles);
this.form = this.fb.group({
userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],
@ -136,7 +136,7 @@ export class UsersComponent implements OnInit {
this.roles.map(role =>
this.fb.group({
[role.name]: [
this.selectedUserRoles.length
this.selected.id
? !!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))
: role.isDefault,
],
@ -181,7 +181,7 @@ export class UsersComponent implements OnInit {
)
.subscribe((state: Identity.State) => {
this.selected = state.selectedUser;
this.selectedUserRoles = state.selectedUserRoles;
this.selectedUserRoles = state.selectedUserRoles || [];
this.openModal();
});
}

@ -22,7 +22,7 @@
<hr class="mt-2 mb-2" />
<div class="row">
<div class="col-12 col-md-4">
<div class="col-md-4">
<ul class="nav nav-pills flex-column">
<li *ngFor="let group of groups$ | async; trackBy: trackByFn" class="nav-item">
<a
@ -34,7 +34,7 @@
</li>
</ul>
</div>
<div class="col-12 col-md-8">
<div class="col-md-8">
<h4>{{ selectedGroup?.displayName }}</h4>
<hr class="mt-2 mb-3" />
<div class="pl-1 pt-1">

@ -25,7 +25,6 @@ import {
import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';
import { Navigate, RouterState } from '@ngxs/router-plugin';
import { Select, Store } from '@ngxs/store';
import { OAuthService } from 'angular-oauth2-oidc';
import compare from 'just-compare';
import { fromEvent, Observable } from 'rxjs';
import { debounceTime, filter, map } from 'rxjs/operators';
@ -33,6 +32,7 @@ import snq from 'snq';
import { AddNavigationElement } from '../../actions';
import { Layout } from '../../models/layout';
import { LayoutState } from '../../states';
import { AuthService } from 'packages/core/src/lib/services/auth.service';
@Component({
selector: 'abp-layout-application',
@ -78,7 +78,10 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
get defaultLanguage$(): Observable<string> {
return this.languages$.pipe(
map(
languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),
languages =>
snq(
() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName,
),
'',
),
);
@ -86,7 +89,11 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
get dropdownLanguages$(): Observable<ApplicationConfiguration.Language[]> {
return this.languages$.pipe(
map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),
map(
languages =>
snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)),
[],
),
);
}
@ -100,7 +107,11 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
trackElementByFn: TrackByFunction<ABP.FullRoute> = (_, element) => element;
constructor(private store: Store, private oauthService: OAuthService, private renderer: Renderer2) {}
constructor(
private store: Store,
private renderer: Renderer2,
private authService: AuthService,
) {}
private checkWindowWidth() {
setTimeout(() => {
@ -121,7 +132,9 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
}
ngAfterViewInit() {
const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);
const navigations = this.store
.selectSnapshot(LayoutState.getNavigationElements)
.map(({ name }) => name);
if (navigations.indexOf('LanguageRef') < 0) {
this.store.dispatch(
@ -145,10 +158,7 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
this.checkWindowWidth();
fromEvent(window, 'resize')
.pipe(
takeUntilDestroy(this),
debounceTime(150),
)
.pipe(takeUntilDestroy(this), debounceTime(150))
.subscribe(() => {
this.checkWindowWidth();
});
@ -161,13 +171,13 @@ export class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {
}
logout() {
this.oauthService.logOut();
this.store.dispatch(
new Navigate(['/'], null, {
state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },
}),
);
this.store.dispatch(new GetAppConfiguration());
this.authService.logout().subscribe(() => {
this.store.dispatch(
new Navigate(['/'], null, {
state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },
}),
);
});
}
openChange(event: boolean, childrenContainer: HTMLDivElement) {

@ -2,26 +2,26 @@
# yarn lockfile v1
"@abp/ng.account.config@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.account.config/-/ng.account.config-2.0.0.tgz#ed49d728e6cb5cac5bf562b2db6e65276a2d550c"
integrity sha512-r7n5NLaAg6xtMQK6KCoCwJALsj3+cftqbPU1mTJqoEiZQCejOUFA9Gk85i3t//MRUeD3j/ghzUYUa6b2elQwXQ==
"@abp/ng.account.config@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.account.config/-/ng.account.config-2.0.1.tgz#7777a09e434d2d592790f8598fd5ec0fbed70161"
integrity sha512-qyunC9FzC5cYL7IgExyVNIzvhBjKQN1Lk35uzCPr2vJTddyEUW+4bdFfSxtwg23O1LWAuMeE4sTAg/pv0R7AUQ==
dependencies:
tslib "^1.9.0"
"@abp/ng.account@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-2.0.0.tgz#ac1ea6b51190d68c647699fb9a6d185ad728ec3e"
integrity sha512-UC/mTFermfrnAmm2Y6ZrsbKi4EyPzoASeRzoZ5LL0usyEIKb4N9l7Z7kxr5ih2+OPVSW9TmDfgw/zwn3HlrrWw==
"@abp/ng.account@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.account/-/ng.account-2.0.1.tgz#e1e25224a27472a28ff85337000e301174775191"
integrity sha512-bR8xolzq/rtQ+HZnOUDKpR/FT6SSGEFq0r0HMttPG9hiTD1HNthHfx8JaQjPBCAw43WhGIIxLgcRkitu6aXAyA==
dependencies:
"@abp/ng.account.config" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.account.config" "^2.0.1"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.core@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-2.0.0.tgz#9da38d0d3a32a5f7239034a37c3f4f14be745f30"
integrity sha512-pp3u+3bYMSygx88+t4929tkp7a5ja8k8IPeoho2SiJgC2ni546ecX10Yt02X1C8DBEhBr7b6Fn7eQI0VTA4zYA==
"@abp/ng.core@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.core/-/ng.core-2.0.1.tgz#11471a2bc96f03c97c5bcea6d0c9fd81284a103a"
integrity sha512-fa2QK7x0VUovxX5JiXZMoBKuE23xjsW6Pp1+ZuFdKxRG8eP5yoAmkLuNKDEhzy9ancDac8wLUetvnUx/QZKCXQ==
dependencies:
"@ngxs/router-plugin" "^3.5.1"
"@ngxs/storage-plugin" "^3.5.1"
@ -32,86 +32,86 @@
snq "^1.0.3"
tslib "^1.9.0"
"@abp/ng.feature-management@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-2.0.0.tgz#a9192bb24ca66d9eb0cf653695da2502ebaa7710"
integrity sha512-7DQapIj28Bh7MtSGKJLLd98i2vWGJgA/4hx3jjQ0WT94NnuyZPKsYwSGcJbVgbTV3PyLWcDCdmhh2NloL2O0lw==
"@abp/ng.feature-management@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.feature-management/-/ng.feature-management-2.0.1.tgz#884451d35f642f585eb9bdf7361c859e670f030d"
integrity sha512-11uoLEnTj2shFz3bFTOHsCKixWDQiuaJbsT66ui0Rs9bWUTwMQUu1s4yzAZPHi/ooAFJUTX+H52rWtUnHwpK2A==
dependencies:
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.identity.config@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.identity.config/-/ng.identity.config-2.0.0.tgz#4912b513e919778356cec45ceda4bc032e0cc9b6"
integrity sha512-LfEwy57+Yx8nZXvzgFn8aYVnZSFrhBxFvD1twrTrddQRKltO+wSXV8p6boem8KRU2KWpbH0NYhnBNOxPYGHF6g==
"@abp/ng.identity.config@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.identity.config/-/ng.identity.config-2.0.1.tgz#3f3b2c4f70fecb2e02ac35bdb1546f51e54b87fd"
integrity sha512-lNtrKq6+QGYokN59QjteupbMN/LjtwAQlnZ5J75LHK8YoEMMzyVpK2GVKdgO3xrgcvfDSpz+OVjePNxyykbejA==
dependencies:
tslib "^1.9.0"
"@abp/ng.identity@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-2.0.0.tgz#33ba9c94042a48c7c004a4df499a669f75997a25"
integrity sha512-qjtiIJy+fpn9JDZjndqtNPnGWPNc1pMQP4cV+UVm8RUG5U3nMI8RfEYyuDKluSGPAF2Qncl3husjpmZjZaEO9w==
"@abp/ng.identity@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.identity/-/ng.identity-2.0.1.tgz#1168ef8186614a229d6e5ada2afecd8885a074af"
integrity sha512-+B2I/xsl3qOb56BZn9gZL8icu9/YS8i9CEYJmBvjxmtUzvUV6GfNhDf83BfThJO7wZn9d+GEbHY544kjKl+kwg==
dependencies:
"@abp/ng.identity.config" "^2.0.0"
"@abp/ng.permission-management" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.identity.config" "^2.0.1"
"@abp/ng.permission-management" "^2.0.1"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.permission-management@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-2.0.0.tgz#b7956a274945bac9b3bfb16cfcacd70af531d82e"
integrity sha512-ZCuitlFgP1S/Y1Us5nIS9Fw9Jz9Jb7RRboTb6ysbMcLcOkgYJn2d806fnEQh/TkJHpTJDNZYIk27/DlaOQN2xg==
"@abp/ng.permission-management@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.permission-management/-/ng.permission-management-2.0.1.tgz#9e0abcc014db8bae08b8eb1380fdfbf05e988971"
integrity sha512-eKKvFtix8qoA+Il7o+39o9lMfQcSlcLme+H/Ry5crr865PcxJQ9j0nwoRBfkNRpUb8XbjyDkS3Paink7mSBZVQ==
dependencies:
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.setting-management.config@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.setting-management.config/-/ng.setting-management.config-2.0.0.tgz#4013b5d6bf7a34fc93ab1df3734c50bb60588b0e"
integrity sha512-eVIzsSQHMz1+Y4Pri8dec31NP3pGwqeX9oFN6YdiIlXL7i0Lqvf9o1ZvMvZ6iIX7GJsOilTgd9Rw7ccZnZTaEQ==
"@abp/ng.setting-management.config@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.setting-management.config/-/ng.setting-management.config-2.0.1.tgz#436e6d9ba20f93a7707548057a21cde30cfcd612"
integrity sha512-pizWCfGOCNp+zP3Pc7zPQ3NKHG9lZJTVeE+RxHXQ+TTlg9xKSlojvQnzIwTKfQPQv0lREalDimNA2PXWvzsTAQ==
dependencies:
tslib "^1.9.0"
"@abp/ng.setting-management@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-2.0.0.tgz#9babb94b66aba3d95b44457e9301bbf2d7ea10b5"
integrity sha512-tRYRW/SlS52o9kO3yojJarYf0IFYNigXJaJPBOla1RPWW9fM63irCUq+NAI5bRUkxPHDQPfpE8qJC32DPM6a1Q==
"@abp/ng.setting-management@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.setting-management/-/ng.setting-management-2.0.1.tgz#7fc35fcae6db50ae6c9182feeb066dd91f26dd68"
integrity sha512-CiMzvhhimKn0B6jCcejUW5Io9rm7K2H6+gyIi6G3xrewMqVfyROB6bLebtX7KKy5291qzhqZH0MTQxZQnAMxUQ==
dependencies:
"@abp/ng.setting-management.config" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.setting-management.config" "^2.0.1"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.tenant-management.config@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management.config/-/ng.tenant-management.config-2.0.0.tgz#ee2357596263019eae9fcbefe8fd927242b81e87"
integrity sha512-HMZh7HBrFcMXLXGvEjwSOF0ncDcZUtUez1J4ll6oMBVbL4xgfJxIggODin9OMMdQOkLjzYY4BGS+Iwjzh5DR2g==
"@abp/ng.tenant-management.config@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management.config/-/ng.tenant-management.config-2.0.1.tgz#f65a0641dbe57f0128c220fa559c75ebee8e0531"
integrity sha512-EAk1+GEGFB0Uys9FFlrBo1frr8mFp32ogOviw4fCGl0rNZpI+uh7L7q5OQiP2EvK5CDu1OQd9wZm9IVbIWHpHw==
dependencies:
tslib "^1.9.0"
"@abp/ng.tenant-management@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-2.0.0.tgz#24dfbaf234e567244bdd4cc882ed6952d873e6b3"
integrity sha512-Qn/JLJcCMYYZ+5IuF5jSHzwB9dprnQqoVv8i8vuXS1dyooBoqIIKNMs0E/GOsNu5MPABYrd24YODGi2Nso/OxA==
"@abp/ng.tenant-management@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.tenant-management/-/ng.tenant-management-2.0.1.tgz#182addc7bd800841681e75260173b90ccd88ba07"
integrity sha512-zosVzejfuUG/ZLralkZv860AHxVJ9ScED//ulst8IJG4QWg55pOTgMtHn27HkIb/z45QVWeVAbEENG2SS+ezkQ==
dependencies:
"@abp/ng.feature-management" "^2.0.0"
"@abp/ng.tenant-management.config" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.feature-management" "^2.0.1"
"@abp/ng.tenant-management.config" "^2.0.1"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.theme.basic@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-2.0.0.tgz#c492bd513bb8a14d4df7b1ed24316543b41cb710"
integrity sha512-WH7DKzF8MkK1fG8uCYGQWJmkJPliyKi2/UwimmFie5UxFsII05rvZZAa+/EILVfMyob+4AkDeU79gZ/EWUJeZg==
"@abp/ng.theme.basic@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.theme.basic/-/ng.theme.basic-2.0.1.tgz#af7047dba43b2701ea1d4b9cec8c2bfd52227b1f"
integrity sha512-ExwgzHoyXgtWNhzcs/c2tmZJrJFZQgC0iDC5AWDmOQDf63U2aDujMHiTHRD4lmnB5O5odE9/aN631QnHXj987w==
dependencies:
"@abp/ng.theme.shared" "^2.0.0"
"@abp/ng.theme.shared" "^2.0.1"
tslib "^1.9.0"
"@abp/ng.theme.shared@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-2.0.0.tgz#d241d597d0bb58d50514522d133448f12672708f"
integrity sha512-akTvtNLKkpdWxLko6jMR261FSNEMNcRp1bvvOE2Auged9luXZYneNfaExnoLkBQhRuxmLKBYLPHyyueGRy2v2g==
"@abp/ng.theme.shared@^2.0.1":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@abp/ng.theme.shared/-/ng.theme.shared-2.0.1.tgz#16dd66f5b54d9b528a22bc48f209b413dc33f52d"
integrity sha512-Yle+dGpYNGMcTEc6/+P1tgKLSgnCkLvG9BfgNdOSFq3vBp5AHj2ip2w2+uX6Svo9Fll8Tth9P6BpRpwvQ3CqwQ==
dependencies:
"@abp/ng.core" "^2.0.0"
"@abp/ng.core" "^2.0.1"
"@angular/cdk" "^8.2.3"
"@fortawesome/fontawesome-free" "^5.11.2"
"@ng-bootstrap/ng-bootstrap" "^5.1.4"

@ -4,11 +4,26 @@ import { NgModule } from '@angular/core';
import { ThemeBasicModule } from '@abp/ng.theme.basic';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TableModule } from 'primeng/table';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@NgModule({
declarations: [],
imports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
exports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
imports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
exports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
providers: [],
})
export class SharedModule {}

@ -4,11 +4,26 @@ import { NgModule } from '@angular/core';
import { ThemeBasicModule } from '@abp/ng.theme.basic';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TableModule } from 'primeng/table';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@NgModule({
declarations: [],
imports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
exports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
imports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
exports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
providers: [],
})
export class SharedModule {}

@ -6,7 +6,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -6,7 +6,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -12,7 +12,7 @@
<PreserveCompilationContext>true</PreserveCompilationContext>
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -12,7 +12,7 @@
<PreserveCompilationContext>true</PreserveCompilationContext>
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -12,7 +12,7 @@
<PreserveCompilationContext>true</PreserveCompilationContext>
<MvcRazorExcludeRefAssembliesFromPublish>false</MvcRazorExcludeRefAssembliesFromPublish>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-4681b4fd-151f-4221-84a4-929d86723e4c</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -4,11 +4,26 @@ import { NgModule } from '@angular/core';
import { ThemeBasicModule } from '@abp/ng.theme.basic';
import { ThemeSharedModule } from '@abp/ng.theme.shared';
import { TableModule } from 'primeng/table';
import { NgxValidateCoreModule } from '@ngx-validate/core';
@NgModule({
declarations: [],
imports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
exports: [CoreModule, ThemeSharedModule, ThemeBasicModule, TableModule, NgbDropdownModule],
imports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
exports: [
CoreModule,
ThemeSharedModule,
ThemeBasicModule,
TableModule,
NgbDropdownModule,
NgxValidateCoreModule,
],
providers: [],
})
export class SharedModule {}

@ -6,7 +6,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -4,7 +4,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -6,7 +6,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
</PropertyGroup>
<ItemGroup>

@ -6,7 +6,7 @@
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>MyCompanyName.MyProjectName</RootNamespace>
<PreserveCompilationReferences>true</PreserveCompilationReferences>
<UserSecretsId>MyCompanyName-MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
<UserSecretsId>MyCompanyName.MyProjectName-c2d31439-b723-48e2-b061-5ebd7aeb6010</UserSecretsId>
</PropertyGroup>
<ItemGroup>

Loading…
Cancel
Save