From a4ea45486b1709c1f041685a86da0596c7291f93 Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Wed, 14 May 2025 11:34:22 +0300 Subject: [PATCH 1/7] refactoring --- .../chart.js/src/chart.component.ts | 1 - .../tree/src/lib/components/tree.component.ts | 28 +++++++++++++++--- .../expanded-icon-template.directive.ts | 1 - .../templates/tree-node-template.directive.ts | 1 - .../email-setting-group.component.ts | 29 ++++++++++++++++--- 5 files changed, 49 insertions(+), 11 deletions(-) diff --git a/npm/ng-packs/packages/components/chart.js/src/chart.component.ts b/npm/ng-packs/packages/components/chart.js/src/chart.component.ts index d40b274443..c700a0bce8 100644 --- a/npm/ng-packs/packages/components/chart.js/src/chart.component.ts +++ b/npm/ng-packs/packages/components/chart.js/src/chart.component.ts @@ -16,7 +16,6 @@ import { let Chart: any; @Component({ - standalone: false, selector: 'abp-chart', template: `
Date: Wed, 14 May 2025 11:46:39 +0300 Subject: [PATCH 2/7] refactoring --- .../components/chart.js/src/chart.module.ts | 5 ++--- .../components/tree/src/lib/tree.module.ts | 14 +++----------- .../src/lib/setting-management-config.module.ts | 7 ++----- 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/npm/ng-packs/packages/components/chart.js/src/chart.module.ts b/npm/ng-packs/packages/components/chart.js/src/chart.module.ts index a34570dc84..b645568dca 100644 --- a/npm/ng-packs/packages/components/chart.js/src/chart.module.ts +++ b/npm/ng-packs/packages/components/chart.js/src/chart.module.ts @@ -1,11 +1,10 @@ -import { CommonModule } from '@angular/common'; import { NgModule } from '@angular/core'; import { ChartComponent } from './chart.component'; @NgModule({ - imports: [CommonModule], + imports: [ChartComponent], exports: [ChartComponent], - declarations: [ChartComponent], + declarations: [], providers: [], }) export class ChartModule {} diff --git a/npm/ng-packs/packages/components/tree/src/lib/tree.module.ts b/npm/ng-packs/packages/components/tree/src/lib/tree.module.ts index 2013c37588..9927db662b 100644 --- a/npm/ng-packs/packages/components/tree/src/lib/tree.module.ts +++ b/npm/ng-packs/packages/components/tree/src/lib/tree.module.ts @@ -1,19 +1,11 @@ -import { CoreModule } from '@abp/ng.core'; import { NgModule } from '@angular/core'; -import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation'; -import { NzTreeModule } from 'ng-zorro-antd/tree'; import { TreeComponent } from './components/tree.component'; import { ExpandedIconTemplateDirective } from './templates/expanded-icon-template.directive'; import { TreeNodeTemplateDirective } from './templates/tree-node-template.directive'; -const templates = [TreeNodeTemplateDirective, ExpandedIconTemplateDirective]; - -const exported = [...templates, TreeComponent]; - @NgModule({ - imports: [CoreModule, NzTreeModule, NgbDropdownModule, NzNoAnimationModule], - exports: [...exported], - declarations: [...exported], + imports: [TreeComponent, TreeNodeTemplateDirective, ExpandedIconTemplateDirective], + exports: [TreeComponent, TreeNodeTemplateDirective, ExpandedIconTemplateDirective], + declarations: [], }) export class TreeModule {} diff --git a/npm/ng-packs/packages/setting-management/config/src/lib/setting-management-config.module.ts b/npm/ng-packs/packages/setting-management/config/src/lib/setting-management-config.module.ts index 45b2340feb..791a3139d7 100644 --- a/npm/ng-packs/packages/setting-management/config/src/lib/setting-management-config.module.ts +++ b/npm/ng-packs/packages/setting-management/config/src/lib/setting-management-config.module.ts @@ -1,13 +1,10 @@ -import { ThemeSharedModule } from '@abp/ng.theme.shared'; import { ModuleWithProviders, NgModule } from '@angular/core'; -import { CoreModule } from '@abp/ng.core'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; import { EmailSettingGroupComponent } from './components/email-setting-group/email-setting-group.component'; import { provideSettingManagementConfig } from './providers'; @NgModule({ - imports: [CoreModule, ThemeSharedModule, NgxValidateCoreModule], - declarations: [EmailSettingGroupComponent], + imports: [EmailSettingGroupComponent], + declarations: [], exports: [EmailSettingGroupComponent], }) export class SettingManagementConfigModule { From b192c515f4bbb42c44b182182d35a74c15c4d0f4 Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Wed, 14 May 2025 12:29:58 +0300 Subject: [PATCH 3/7] refactoring --- npm/ng-packs/apps/dev-app/src/app/app.routes.ts | 13 ++++--------- .../lib/{account.config.ts => account.routes.ts} | 2 +- npm/ng-packs/packages/account/src/public-api.ts | 2 +- .../src/lib/directives/prop-data.directive.ts | 1 - .../src/lib/pipes/create-injector.pipe.ts | 1 - .../core/src/lib/directives/for.directive.ts | 1 - .../lib/{identity.config.ts => identity.routes.ts} | 2 +- npm/ng-packs/packages/identity/src/public-api.ts | 2 +- .../email-setting-group.component.ts | 8 +++++++- ...ement.config.ts => setting-management.routes.ts} | 2 +- .../packages/setting-management/src/public-api.ts | 2 +- ...gement.config.ts => tenant-management.routes.ts} | 4 +--- .../packages/tenant-management/src/public-api.ts | 2 +- .../src/lib/components/spinner/spinner.component.ts | 1 - 14 files changed, 19 insertions(+), 24 deletions(-) rename npm/ng-packs/packages/account/src/lib/{account.config.ts => account.routes.ts} (97%) rename npm/ng-packs/packages/identity/src/lib/{identity.config.ts => identity.routes.ts} (96%) rename npm/ng-packs/packages/setting-management/src/lib/{setting-management.config.ts => setting-management.routes.ts} (92%) rename npm/ng-packs/packages/tenant-management/src/lib/{tenant-management.config.ts => tenant-management.routes.ts} (94%) diff --git a/npm/ng-packs/apps/dev-app/src/app/app.routes.ts b/npm/ng-packs/apps/dev-app/src/app/app.routes.ts index 29a058386e..47462b7f8f 100644 --- a/npm/ng-packs/apps/dev-app/src/app/app.routes.ts +++ b/npm/ng-packs/apps/dev-app/src/app/app.routes.ts @@ -8,23 +8,18 @@ export const appRoutes: Routes = [ }, { path: 'account', - loadChildren: () => import('@abp/ng.account').then(m => m.createAccountRoutingConfiguration()), + loadChildren: () => import('@abp/ng.account').then(m => m.createRoutes()), }, { path: 'identity', - loadChildren: () => - import('@abp/ng.identity').then(m => m.createIdentityRoutingConfiguration()), + loadChildren: () => import('@abp/ng.identity').then(m => m.createRoutes()), }, { path: 'tenant-management', - loadChildren: () => - import('@abp/ng.tenant-management').then(m => m.createTenantManagementRoutingConfiguration()), + loadChildren: () => import('@abp/ng.tenant-management').then(m => m.createRoutes()), }, { path: 'setting-management', - loadChildren: () => - import('@abp/ng.setting-management').then(m => - m.createSettingManagementRoutingConfiguration(), - ), + loadChildren: () => import('@abp/ng.setting-management').then(m => m.createRoutes()), }, ]; diff --git a/npm/ng-packs/packages/account/src/lib/account.config.ts b/npm/ng-packs/packages/account/src/lib/account.routes.ts similarity index 97% rename from npm/ng-packs/packages/account/src/lib/account.config.ts rename to npm/ng-packs/packages/account/src/lib/account.routes.ts index 6ec29aceca..5fb4236ee1 100644 --- a/npm/ng-packs/packages/account/src/lib/account.config.ts +++ b/npm/ng-packs/packages/account/src/lib/account.routes.ts @@ -44,7 +44,7 @@ export function provideAccount(options: AccountConfigOptions = {}) { const canActivate = [authenticationFlowGuard]; -export const createAccountRoutingConfiguration = (options: AccountConfigOptions = {}): Routes => [ +export const createRoutes = (options: AccountConfigOptions = {}): Routes => [ { path: '', component: RouterOutletComponent, diff --git a/npm/ng-packs/packages/account/src/public-api.ts b/npm/ng-packs/packages/account/src/public-api.ts index a6c747de91..0e4be6fd23 100644 --- a/npm/ng-packs/packages/account/src/public-api.ts +++ b/npm/ng-packs/packages/account/src/public-api.ts @@ -7,4 +7,4 @@ export * from './lib/services'; export * from './lib/tokens'; export * from './lib/utils'; export * from './lib/resolvers'; -export * from './lib/account.config'; +export * from './lib/account.routes'; diff --git a/npm/ng-packs/packages/components/extensible/src/lib/directives/prop-data.directive.ts b/npm/ng-packs/packages/components/extensible/src/lib/directives/prop-data.directive.ts index 52ccd286ad..2bba45ff70 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/directives/prop-data.directive.ts +++ b/npm/ng-packs/packages/components/extensible/src/lib/directives/prop-data.directive.ts @@ -13,7 +13,6 @@ import { PropData, PropList } from '../models/props'; @Directive({ exportAs: 'abpPropData', selector: '[abpPropData]', - standalone: true, }) export class PropDataDirective> extends PropData> diff --git a/npm/ng-packs/packages/components/extensible/src/lib/pipes/create-injector.pipe.ts b/npm/ng-packs/packages/components/extensible/src/lib/pipes/create-injector.pipe.ts index 4b410fcea9..3536fa4dad 100644 --- a/npm/ng-packs/packages/components/extensible/src/lib/pipes/create-injector.pipe.ts +++ b/npm/ng-packs/packages/components/extensible/src/lib/pipes/create-injector.pipe.ts @@ -12,7 +12,6 @@ import { EXTENSIONS_ACTION_CALLBACK, EXTENSIONS_ACTION_DATA } from '../tokens/ex @Pipe({ name: 'createInjector', - standalone: true, }) export class CreateInjectorPipe implements PipeTransform { public transform( diff --git a/npm/ng-packs/packages/core/src/lib/directives/for.directive.ts b/npm/ng-packs/packages/core/src/lib/directives/for.directive.ts index 387cfac844..1e37e1c908 100644 --- a/npm/ng-packs/packages/core/src/lib/directives/for.directive.ts +++ b/npm/ng-packs/packages/core/src/lib/directives/for.directive.ts @@ -33,7 +33,6 @@ class RecordView { } @Directive({ - standalone: true, selector: '[abpFor]', }) export class ForDirective implements OnChanges { diff --git a/npm/ng-packs/packages/identity/src/lib/identity.config.ts b/npm/ng-packs/packages/identity/src/lib/identity.routes.ts similarity index 96% rename from npm/ng-packs/packages/identity/src/lib/identity.config.ts rename to npm/ng-packs/packages/identity/src/lib/identity.routes.ts index 04d26d81a3..dc7cda3f08 100644 --- a/npm/ng-packs/packages/identity/src/lib/identity.config.ts +++ b/npm/ng-packs/packages/identity/src/lib/identity.routes.ts @@ -44,7 +44,7 @@ export function provideIdentity(options: IdentityConfigOptions = {}): Provider[] ]; } -export const createIdentityRoutingConfiguration = (options: IdentityConfigOptions = {}): Routes => [ +export const createRoutes = (options: IdentityConfigOptions = {}): Routes => [ { path: '', component: RouterOutletComponent, diff --git a/npm/ng-packs/packages/identity/src/public-api.ts b/npm/ng-packs/packages/identity/src/public-api.ts index eaa4782d50..74cd5cce35 100644 --- a/npm/ng-packs/packages/identity/src/public-api.ts +++ b/npm/ng-packs/packages/identity/src/public-api.ts @@ -5,4 +5,4 @@ export * from './lib/identity.module'; export * from './lib/models'; export * from './lib/tokens'; export * from './lib/resolvers'; -export * from './lib/identity.config'; +export * from './lib/identity.routes'; diff --git a/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts b/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts index a0c7903bb5..7743cd34d9 100644 --- a/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts +++ b/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts @@ -18,7 +18,12 @@ import { finalize } from 'rxjs/operators'; import { SettingManagementPolicyNames } from '../../enums/policy-names'; import { EmailSettingsService } from '@abp/ng.setting-management/proxy'; import { EmailSettingsDto } from '../../proxy/models'; -import { ConfigStateService, LocalizationPipe, LocalizationService } from '@abp/ng.core'; +import { + ConfigStateService, + LocalizationPipe, + LocalizationService, + PermissionDirective, +} from '@abp/ng.core'; import { NgxValidateCoreModule, ValidationDirective } from '@ngx-validate/core'; import { CommonModule } from '@angular/common'; @@ -36,6 +41,7 @@ const { required, email } = Validators; ModalComponent, ModalCloseDirective, NgxValidateCoreModule, + PermissionDirective, ], }) export class EmailSettingGroupComponent implements OnInit { diff --git a/npm/ng-packs/packages/setting-management/src/lib/setting-management.config.ts b/npm/ng-packs/packages/setting-management/src/lib/setting-management.routes.ts similarity index 92% rename from npm/ng-packs/packages/setting-management/src/lib/setting-management.config.ts rename to npm/ng-packs/packages/setting-management/src/lib/setting-management.routes.ts index 773555d080..090df0ea56 100644 --- a/npm/ng-packs/packages/setting-management/src/lib/setting-management.config.ts +++ b/npm/ng-packs/packages/setting-management/src/lib/setting-management.routes.ts @@ -12,7 +12,7 @@ export function provideSettingManagement() { return []; } -export const createSettingManagementRoutingConfiguration = (): Routes => [ +export const createRoutes = (): Routes => [ { path: '', component: RouterOutletComponent, diff --git a/npm/ng-packs/packages/setting-management/src/public-api.ts b/npm/ng-packs/packages/setting-management/src/public-api.ts index aa3993a99e..673b3f281a 100644 --- a/npm/ng-packs/packages/setting-management/src/public-api.ts +++ b/npm/ng-packs/packages/setting-management/src/public-api.ts @@ -1,4 +1,4 @@ export * from './lib/setting-management.module'; export * from './lib/components/setting-management.component'; export * from './lib/enums'; -export * from './lib/setting-management.config'; +export * from './lib/setting-management.routes'; diff --git a/npm/ng-packs/packages/tenant-management/src/lib/tenant-management.config.ts b/npm/ng-packs/packages/tenant-management/src/lib/tenant-management.routes.ts similarity index 94% rename from npm/ng-packs/packages/tenant-management/src/lib/tenant-management.config.ts rename to npm/ng-packs/packages/tenant-management/src/lib/tenant-management.routes.ts index dfac357db4..7b38035d2f 100644 --- a/npm/ng-packs/packages/tenant-management/src/lib/tenant-management.config.ts +++ b/npm/ng-packs/packages/tenant-management/src/lib/tenant-management.routes.ts @@ -44,9 +44,7 @@ export function provideTenantManagement(options: TenantManagementConfigOptions = ]; } -export const createTenantManagementRoutingConfiguration = ( - options: TenantManagementConfigOptions = {}, -): Routes => [ +export const createRoutes = (options: TenantManagementConfigOptions = {}): Routes => [ { path: '', component: RouterOutletComponent, diff --git a/npm/ng-packs/packages/tenant-management/src/public-api.ts b/npm/ng-packs/packages/tenant-management/src/public-api.ts index 4d53dca426..0ab49e4f64 100644 --- a/npm/ng-packs/packages/tenant-management/src/public-api.ts +++ b/npm/ng-packs/packages/tenant-management/src/public-api.ts @@ -5,4 +5,4 @@ export * from './lib/models'; export * from './lib/tenant-management.module'; export * from './lib/tokens'; export * from './lib/resolvers'; -export * from './lib/tenant-management.config'; +export * from './lib/tenant-management.routes'; diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/spinner/spinner.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/spinner/spinner.component.ts index e1d3493261..4847d15652 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/spinner/spinner.component.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/spinner/spinner.component.ts @@ -2,7 +2,6 @@ import { Component } from '@angular/core'; @Component({ selector: 'abp-spinner', - standalone: true, template: `
From e1a7c05a26b7688def64dda9bd814042e5f5d0e2 Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Wed, 14 May 2025 14:53:05 +0300 Subject: [PATCH 4/7] unnecessary removed --- npm/ng-packs/apps/dev-app/src/app/app.component.ts | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/npm/ng-packs/apps/dev-app/src/app/app.component.ts b/npm/ng-packs/apps/dev-app/src/app/app.component.ts index a382ee499c..5220d57353 100644 --- a/npm/ng-packs/apps/dev-app/src/app/app.component.ts +++ b/npm/ng-packs/apps/dev-app/src/app/app.component.ts @@ -1,7 +1,6 @@ import { Component } from '@angular/core'; import { InternetConnectionStatusComponent, LoaderBarComponent } from '@abp/ng.theme.shared'; import { DynamicLayoutComponent } from '@abp/ng.core'; -import { RouterOutlet } from '@angular/router'; @Component({ selector: 'app-root', @@ -9,13 +8,7 @@ import { RouterOutlet } from '@angular/router'; - `, - imports: [ - LoaderBarComponent, - DynamicLayoutComponent, - InternetConnectionStatusComponent, - RouterOutlet, - ], + imports: [LoaderBarComponent, DynamicLayoutComponent, InternetConnectionStatusComponent], }) export class AppComponent {} From 86d3bdf1c41a4509a7472818fad8aa7825bc0285 Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Thu, 15 May 2025 14:56:02 +0300 Subject: [PATCH 5/7] app template migrated to standalone structure --- .../packages/core/src/lib/core.module.ts | 1 - .../email-setting-group.component.ts | 2 +- .../app/angular/src/app/app.component.ts | 4 +- templates/app/angular/src/app/app.config.ts | 46 +++++++++++++++ templates/app/angular/src/app/app.module.ts | 56 ------------------- .../{app-routing.module.ts => app.routes.ts} | 13 +---- .../src/app/home/home-routing.module.ts | 11 ---- .../src/app/home/home.component.spec.ts | 5 +- .../angular/src/app/home/home.component.ts | 5 +- .../app/angular/src/app/home/home.module.ts | 10 ---- .../app/angular/src/app/home/home.routes.ts | 9 +++ templates/app/angular/src/main.ts | 16 ++---- 12 files changed, 71 insertions(+), 107 deletions(-) create mode 100644 templates/app/angular/src/app/app.config.ts delete mode 100644 templates/app/angular/src/app/app.module.ts rename templates/app/angular/src/app/{app-routing.module.ts => app.routes.ts} (64%) delete mode 100644 templates/app/angular/src/app/home/home-routing.module.ts delete mode 100644 templates/app/angular/src/app/home/home.module.ts create mode 100644 templates/app/angular/src/app/home/home.routes.ts diff --git a/npm/ng-packs/packages/core/src/lib/core.module.ts b/npm/ng-packs/packages/core/src/lib/core.module.ts index dff03b51d7..de6ba78260 100644 --- a/npm/ng-packs/packages/core/src/lib/core.module.ts +++ b/npm/ng-packs/packages/core/src/lib/core.module.ts @@ -3,7 +3,6 @@ import { provideHttpClient, withInterceptorsFromDi, withXsrfConfiguration, - HTTP_INTERCEPTORS, } from '@angular/common/http'; import { ModuleWithProviders, NgModule } from '@angular/core'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; diff --git a/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts b/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts index 7743cd34d9..f61c158e0e 100644 --- a/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts +++ b/npm/ng-packs/packages/setting-management/config/src/lib/components/email-setting-group/email-setting-group.component.ts @@ -24,7 +24,7 @@ import { LocalizationService, PermissionDirective, } from '@abp/ng.core'; -import { NgxValidateCoreModule, ValidationDirective } from '@ngx-validate/core'; +import { NgxValidateCoreModule } from '@ngx-validate/core'; import { CommonModule } from '@angular/common'; const { required, email } = Validators; diff --git a/templates/app/angular/src/app/app.component.ts b/templates/app/angular/src/app/app.component.ts index 5476691764..68cc759e1b 100644 --- a/templates/app/angular/src/app/app.component.ts +++ b/templates/app/angular/src/app/app.component.ts @@ -1,12 +1,14 @@ import { Component } from '@angular/core'; +import { InternetConnectionStatusComponent, LoaderBarComponent } from '@abp/ng.theme.shared'; +import { DynamicLayoutComponent } from '@abp/ng.core'; @Component({ - standalone: false, selector: 'app-root', template: ` `, + imports: [LoaderBarComponent, DynamicLayoutComponent, InternetConnectionStatusComponent], }) export class AppComponent {} diff --git a/templates/app/angular/src/app/app.config.ts b/templates/app/angular/src/app/app.config.ts new file mode 100644 index 0000000000..0d7e64c80c --- /dev/null +++ b/templates/app/angular/src/app/app.config.ts @@ -0,0 +1,46 @@ +import {ApplicationConfig, importProvidersFrom} from '@angular/core'; +import { provideRouter } from '@angular/router'; +import {provideAnimations} from "@angular/platform-browser/animations"; + +import { appRoutes } from './app.routes'; +import { APP_ROUTE_PROVIDER } from './route.provider'; +import { provideAbpCore, withOptions } from '@abp/ng.core'; +import { environment } from '../environments/environment'; +import { registerLocale } from '@abp/ng.core/locale'; +import { provideAbpOAuth } from '@abp/ng.oauth'; +import { provideAbpThemeShared } from '@abp/ng.theme.shared'; +import { provideSettingManagementConfig } from '@abp/ng.setting-management/config'; +import { provideAccountConfig } from '@abp/ng.account/config'; +import { provideIdentityConfig } from '@abp/ng.identity/config'; +import { provideTenantManagementConfig } from '@abp/ng.tenant-management/config'; +import { provideFeatureManagementConfig } from '@abp/ng.feature-management'; +import {ThemeLeptonXModule} from "@abp/ng.theme.lepton-x"; +import {SideMenuLayoutModule} from "@abp/ng.theme.lepton-x/layouts"; +import {AccountLayoutModule} from "@abp/ng.theme.lepton-x/account"; + +export const appConfig: ApplicationConfig = { + providers: [ + provideRouter(appRoutes), + APP_ROUTE_PROVIDER, + provideAbpCore( + withOptions({ + environment, + registerLocaleFn: registerLocale(), + }) + ), + provideAbpOAuth(), + provideAbpThemeShared(), + provideSettingManagementConfig(), + provideAccountConfig(), + provideIdentityConfig(), + provideTenantManagementConfig(), + provideFeatureManagementConfig(), + provideAnimations(), + provideAbpCore(), + importProvidersFrom([ + ThemeLeptonXModule.forRoot(), + SideMenuLayoutModule.forRoot(), + AccountLayoutModule.forRoot(), + ]) + ], +}; diff --git a/templates/app/angular/src/app/app.module.ts b/templates/app/angular/src/app/app.module.ts deleted file mode 100644 index de45468f4a..0000000000 --- a/templates/app/angular/src/app/app.module.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { CoreModule, provideAbpCore, withOptions } from '@abp/ng.core'; -import { registerLocale } from '@abp/ng.core/locale'; -import { - InternetConnectionStatusComponent, - ThemeSharedModule, - provideAbpThemeShared, -} from '@abp/ng.theme.shared'; -import { provideFeatureManagementConfig } from '@abp/ng.feature-management'; -import { provideAbpOAuth } from '@abp/ng.oauth'; -import { provideIdentityConfig } from '@abp/ng.identity/config'; -import { provideSettingManagementConfig } from '@abp/ng.setting-management/config'; -import { provideTenantManagementConfig } from '@abp/ng.tenant-management/config'; -import { provideAccountConfig } from '@abp/ng.account/config'; -import { ThemeLeptonXModule } from '@abp/ng.theme.lepton-x'; -import { SideMenuLayoutModule } from '@abp/ng.theme.lepton-x/layouts'; -import { AccountLayoutModule } from '@abp/ng.theme.lepton-x/account'; -import { NgModule } from '@angular/core'; -import { BrowserModule } from '@angular/platform-browser'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { environment } from '../environments/environment'; -import { AppRoutingModule } from './app-routing.module'; -import { AppComponent } from './app.component'; -import { APP_ROUTE_PROVIDER } from './route.provider'; - -@NgModule({ - imports: [ - BrowserModule, - BrowserAnimationsModule, - AppRoutingModule, - CoreModule, - ThemeSharedModule, - ThemeLeptonXModule.forRoot(), - SideMenuLayoutModule.forRoot(), - AccountLayoutModule.forRoot(), - InternetConnectionStatusComponent, - ], - declarations: [AppComponent], - providers: [ - APP_ROUTE_PROVIDER, - provideAbpCore( - withOptions({ - environment, - registerLocaleFn: registerLocale(), - }) - ), - provideAbpOAuth(), - provideAbpThemeShared(), - provideSettingManagementConfig(), - provideAccountConfig(), - provideIdentityConfig(), - provideTenantManagementConfig(), - provideFeatureManagementConfig(), - ], - bootstrap: [AppComponent], -}) -export class AppModule {} diff --git a/templates/app/angular/src/app/app-routing.module.ts b/templates/app/angular/src/app/app.routes.ts similarity index 64% rename from templates/app/angular/src/app/app-routing.module.ts rename to templates/app/angular/src/app/app.routes.ts index 0d9f82ea25..6526f0b916 100644 --- a/templates/app/angular/src/app/app-routing.module.ts +++ b/templates/app/angular/src/app/app.routes.ts @@ -1,11 +1,10 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; +import { Routes } from '@angular/router'; -const routes: Routes = [ +export const appRoutes: Routes = [ { path: '', pathMatch: 'full', - loadChildren: () => import('./home/home.module').then(m => m.HomeModule), + loadChildren: () => import('./home/home.routes').then(m => m.homeRoutes), }, { path: 'account', @@ -26,9 +25,3 @@ const routes: Routes = [ import('@abp/ng.setting-management').then(m => m.SettingManagementModule.forLazy()), }, ]; - -@NgModule({ - imports: [RouterModule.forRoot(routes, {})], - exports: [RouterModule], -}) -export class AppRoutingModule {} diff --git a/templates/app/angular/src/app/home/home-routing.module.ts b/templates/app/angular/src/app/home/home-routing.module.ts deleted file mode 100644 index 7089990134..0000000000 --- a/templates/app/angular/src/app/home/home-routing.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; -import { HomeComponent } from './home.component'; - -const routes: Routes = [{ path: '', component: HomeComponent }]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class HomeRoutingModule {} diff --git a/templates/app/angular/src/app/home/home.component.spec.ts b/templates/app/angular/src/app/home/home.component.spec.ts index e02c272719..2243bfca92 100644 --- a/templates/app/angular/src/app/home/home.component.spec.ts +++ b/templates/app/angular/src/app/home/home.component.spec.ts @@ -6,8 +6,6 @@ import { HomeComponent } from "./home.component"; import { OAuthService } from 'angular-oauth2-oidc'; import { AuthService } from '@abp/ng.core'; - - describe("HomeComponent", () => { let fixture: ComponentFixture; const mockOAuthService = jasmine.createSpyObj('OAuthService', ['hasValidAccessToken']) @@ -15,11 +13,12 @@ describe("HomeComponent", () => { beforeEach( waitForAsync(() => { TestBed.configureTestingModule({ - declarations: [HomeComponent], + declarations: [], imports: [ CoreTestingModule.withConfig(), ThemeSharedTestingModule.withConfig(), NgxValidateCoreModule, + HomeComponent ], providers: [ /* mock providers here */ diff --git a/templates/app/angular/src/app/home/home.component.ts b/templates/app/angular/src/app/home/home.component.ts index 458f51628c..cf42b0f606 100644 --- a/templates/app/angular/src/app/home/home.component.ts +++ b/templates/app/angular/src/app/home/home.component.ts @@ -1,11 +1,12 @@ -import { AuthService } from '@abp/ng.core'; +import {AuthService, LocalizationPipe} from '@abp/ng.core'; import { Component, inject } from '@angular/core'; +import {CommonModule} from "@angular/common"; @Component({ - standalone: false, selector: 'app-home', templateUrl: './home.component.html', styleUrls: ['./home.component.scss'], + imports: [CommonModule, LocalizationPipe] }) export class HomeComponent { private authService = inject(AuthService); diff --git a/templates/app/angular/src/app/home/home.module.ts b/templates/app/angular/src/app/home/home.module.ts deleted file mode 100644 index 72d20ccc65..0000000000 --- a/templates/app/angular/src/app/home/home.module.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { HomeRoutingModule } from './home-routing.module'; -import { HomeComponent } from './home.component'; - -@NgModule({ - declarations: [HomeComponent], - imports: [SharedModule, HomeRoutingModule], -}) -export class HomeModule {} diff --git a/templates/app/angular/src/app/home/home.routes.ts b/templates/app/angular/src/app/home/home.routes.ts new file mode 100644 index 0000000000..b04601eddc --- /dev/null +++ b/templates/app/angular/src/app/home/home.routes.ts @@ -0,0 +1,9 @@ +import { Routes } from '@angular/router'; + +export const homeRoutes: Routes = [ + { + path: '', + pathMatch: 'full', + loadComponent: () => import('./home.component').then(m => m.HomeComponent), + }, +]; diff --git a/templates/app/angular/src/main.ts b/templates/app/angular/src/main.ts index fa4e0aef33..7180ec1a32 100644 --- a/templates/app/angular/src/main.ts +++ b/templates/app/angular/src/main.ts @@ -1,13 +1,5 @@ -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { bootstrapApplication } from '@angular/platform-browser'; +import { appConfig } from './app/app.config'; +import { AppComponent } from './app/app.component'; -import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; - -if (environment.production) { - enableProdMode(); -} - -platformBrowserDynamic() - .bootstrapModule(AppModule) - .catch(err => console.error(err)); +bootstrapApplication(AppComponent, appConfig).catch(err => console.error(err)); From 92000045d126ead334f6eb0d51a687c34e9c437c Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Thu, 15 May 2025 15:28:06 +0300 Subject: [PATCH 6/7] app nolayer template migrated to standalone structure --- .../angular/src/app/app.component.ts | 4 +- .../src/app/{app.module.ts => app.config.ts} | 53 +++++++------------ .../{app-routing.module.ts => app.routes.ts} | 13 ++--- .../src/app/home/home-routing.module.ts | 11 ---- .../angular/src/app/home/home.component.ts | 5 +- .../angular/src/app/home/home.module.ts | 10 ---- .../angular/src/app/home/home.routes.ts | 9 ++++ templates/app-nolayers/angular/src/main.ts | 16 ++---- 8 files changed, 42 insertions(+), 79 deletions(-) rename templates/app-nolayers/angular/src/app/{app.module.ts => app.config.ts} (50%) rename templates/app-nolayers/angular/src/app/{app-routing.module.ts => app.routes.ts} (64%) delete mode 100644 templates/app-nolayers/angular/src/app/home/home-routing.module.ts delete mode 100644 templates/app-nolayers/angular/src/app/home/home.module.ts create mode 100644 templates/app-nolayers/angular/src/app/home/home.routes.ts diff --git a/templates/app-nolayers/angular/src/app/app.component.ts b/templates/app-nolayers/angular/src/app/app.component.ts index 5476691764..5ef8f52ddb 100644 --- a/templates/app-nolayers/angular/src/app/app.component.ts +++ b/templates/app-nolayers/angular/src/app/app.component.ts @@ -1,12 +1,14 @@ import { Component } from '@angular/core'; +import {InternetConnectionStatusComponent, LoaderBarComponent} from "@abp/ng.theme.shared"; +import {DynamicLayoutComponent} from "@abp/ng.core"; @Component({ - standalone: false, selector: 'app-root', template: ` `, + imports: [LoaderBarComponent, DynamicLayoutComponent, InternetConnectionStatusComponent] }) export class AppComponent {} diff --git a/templates/app-nolayers/angular/src/app/app.module.ts b/templates/app-nolayers/angular/src/app/app.config.ts similarity index 50% rename from templates/app-nolayers/angular/src/app/app.module.ts rename to templates/app-nolayers/angular/src/app/app.config.ts index 48ae3ab98a..6247f27fce 100644 --- a/templates/app-nolayers/angular/src/app/app.module.ts +++ b/templates/app-nolayers/angular/src/app/app.config.ts @@ -1,38 +1,22 @@ -import { provideAccountConfig } from '@abp/ng.account/config'; -import { CoreModule, provideAbpCore, withOptions } from '@abp/ng.core'; +import {ApplicationConfig, importProvidersFrom} from '@angular/core'; +import {provideAnimations} from "@angular/platform-browser/animations"; + +import { appRoutes } from './app.routes'; +import { APP_ROUTE_PROVIDER } from './route.provider'; +import { provideAbpCore, withOptions } from '@abp/ng.core'; +import { environment } from '../environments/environment'; import { registerLocale } from '@abp/ng.core/locale'; -import { provideIdentityConfig } from '@abp/ng.identity/config'; +import { provideAbpOAuth } from '@abp/ng.oauth'; +import { provideAbpThemeShared } from '@abp/ng.theme.shared'; import { provideSettingManagementConfig } from '@abp/ng.setting-management/config'; +import { provideAccountConfig } from '@abp/ng.account/config'; +import { provideIdentityConfig } from '@abp/ng.identity/config'; import { provideTenantManagementConfig } from '@abp/ng.tenant-management/config'; -import { ThemeLeptonXModule } from '@abp/ng.theme.lepton-x'; -import { SideMenuLayoutModule } from '@abp/ng.theme.lepton-x/layouts'; -import { - InternetConnectionStatusComponent, - ThemeSharedModule, - provideAbpThemeShared, -} from '@abp/ng.theme.shared'; import { provideFeatureManagementConfig } from '@abp/ng.feature-management'; -import { provideAbpOAuth } from '@abp/ng.oauth'; -import { NgModule } from '@angular/core'; -import { BrowserModule } from '@angular/platform-browser'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { environment } from '../environments/environment'; -import { AppRoutingModule } from './app-routing.module'; -import { AppComponent } from './app.component'; -import { APP_ROUTE_PROVIDER } from './route.provider'; +import {ThemeLeptonXModule} from "@abp/ng.theme.lepton-x"; +import {SideMenuLayoutModule} from "@abp/ng.theme.lepton-x/layouts"; -@NgModule({ - imports: [ - BrowserModule, - BrowserAnimationsModule, - AppRoutingModule, - CoreModule, - ThemeSharedModule, - ThemeLeptonXModule.forRoot(), - SideMenuLayoutModule.forRoot(), - InternetConnectionStatusComponent, - ], - declarations: [AppComponent], +export const appConfig: ApplicationConfig = { providers: [ APP_ROUTE_PROVIDER, provideAbpCore( @@ -48,7 +32,10 @@ import { APP_ROUTE_PROVIDER } from './route.provider'; provideIdentityConfig(), provideTenantManagementConfig(), provideFeatureManagementConfig(), + provideAnimations(), + importProvidersFrom([ + ThemeLeptonXModule.forRoot(), + SideMenuLayoutModule.forRoot(), + ]) ], - bootstrap: [AppComponent], -}) -export class AppModule {} +}; diff --git a/templates/app-nolayers/angular/src/app/app-routing.module.ts b/templates/app-nolayers/angular/src/app/app.routes.ts similarity index 64% rename from templates/app-nolayers/angular/src/app/app-routing.module.ts rename to templates/app-nolayers/angular/src/app/app.routes.ts index 0d9f82ea25..6526f0b916 100644 --- a/templates/app-nolayers/angular/src/app/app-routing.module.ts +++ b/templates/app-nolayers/angular/src/app/app.routes.ts @@ -1,11 +1,10 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; +import { Routes } from '@angular/router'; -const routes: Routes = [ +export const appRoutes: Routes = [ { path: '', pathMatch: 'full', - loadChildren: () => import('./home/home.module').then(m => m.HomeModule), + loadChildren: () => import('./home/home.routes').then(m => m.homeRoutes), }, { path: 'account', @@ -26,9 +25,3 @@ const routes: Routes = [ import('@abp/ng.setting-management').then(m => m.SettingManagementModule.forLazy()), }, ]; - -@NgModule({ - imports: [RouterModule.forRoot(routes, {})], - exports: [RouterModule], -}) -export class AppRoutingModule {} diff --git a/templates/app-nolayers/angular/src/app/home/home-routing.module.ts b/templates/app-nolayers/angular/src/app/home/home-routing.module.ts deleted file mode 100644 index 7089990134..0000000000 --- a/templates/app-nolayers/angular/src/app/home/home-routing.module.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; -import { HomeComponent } from './home.component'; - -const routes: Routes = [{ path: '', component: HomeComponent }]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class HomeRoutingModule {} diff --git a/templates/app-nolayers/angular/src/app/home/home.component.ts b/templates/app-nolayers/angular/src/app/home/home.component.ts index 458f51628c..4fa3761541 100644 --- a/templates/app-nolayers/angular/src/app/home/home.component.ts +++ b/templates/app-nolayers/angular/src/app/home/home.component.ts @@ -1,11 +1,12 @@ -import { AuthService } from '@abp/ng.core'; +import {AuthService, LocalizationPipe} from '@abp/ng.core'; import { Component, inject } from '@angular/core'; +import {CommonModule} from "@angular/common"; @Component({ - standalone: false, selector: 'app-home', templateUrl: './home.component.html', styleUrls: ['./home.component.scss'], + imports: [CommonModule, LocalizationPipe], }) export class HomeComponent { private authService = inject(AuthService); diff --git a/templates/app-nolayers/angular/src/app/home/home.module.ts b/templates/app-nolayers/angular/src/app/home/home.module.ts deleted file mode 100644 index 72d20ccc65..0000000000 --- a/templates/app-nolayers/angular/src/app/home/home.module.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { HomeRoutingModule } from './home-routing.module'; -import { HomeComponent } from './home.component'; - -@NgModule({ - declarations: [HomeComponent], - imports: [SharedModule, HomeRoutingModule], -}) -export class HomeModule {} diff --git a/templates/app-nolayers/angular/src/app/home/home.routes.ts b/templates/app-nolayers/angular/src/app/home/home.routes.ts new file mode 100644 index 0000000000..b04601eddc --- /dev/null +++ b/templates/app-nolayers/angular/src/app/home/home.routes.ts @@ -0,0 +1,9 @@ +import { Routes } from '@angular/router'; + +export const homeRoutes: Routes = [ + { + path: '', + pathMatch: 'full', + loadComponent: () => import('./home.component').then(m => m.HomeComponent), + }, +]; diff --git a/templates/app-nolayers/angular/src/main.ts b/templates/app-nolayers/angular/src/main.ts index fa4e0aef33..7180ec1a32 100644 --- a/templates/app-nolayers/angular/src/main.ts +++ b/templates/app-nolayers/angular/src/main.ts @@ -1,13 +1,5 @@ -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { bootstrapApplication } from '@angular/platform-browser'; +import { appConfig } from './app/app.config'; +import { AppComponent } from './app/app.component'; -import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; - -if (environment.production) { - enableProdMode(); -} - -platformBrowserDynamic() - .bootstrapModule(AppModule) - .catch(err => console.error(err)); +bootstrapApplication(AppComponent, appConfig).catch(err => console.error(err)); From a1792c10445161b7dc885c0ba7af29a1c1c0963d Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Thu, 15 May 2025 16:29:29 +0300 Subject: [PATCH 7/7] module template migrated to standalone structure --- .../angular/src/app/app.config.ts | 3 +- .../projects/dev-app/src/app/app.component.ts | 6 ++- .../src/app/{app.module.ts => app.config.ts} | 46 ++++++++----------- .../{app-routing.module.ts => app.routes.ts} | 15 ++---- .../src/app/home/home-routing.module.ts | 16 ------- .../dev-app/src/app/home/home.component.ts | 1 - .../dev-app/src/app/home/home.module.ts | 10 ---- .../dev-app/src/app/home/home.routes.ts | 9 ++++ .../angular/projects/dev-app/src/main.ts | 15 ++---- .../src/my-project-name-config.module.ts | 12 ++--- .../components/my-project-name.component.ts | 1 - .../src/lib/my-project-name.module.ts | 23 ---------- ...ng.module.ts => my-project-name.routes.ts} | 11 +---- .../my-project-name/src/public-api.ts | 2 +- 14 files changed, 47 insertions(+), 123 deletions(-) rename templates/module/angular/projects/dev-app/src/app/{app.module.ts => app.config.ts} (54%) rename templates/module/angular/projects/dev-app/src/app/{app-routing.module.ts => app.routes.ts} (61%) delete mode 100644 templates/module/angular/projects/dev-app/src/app/home/home-routing.module.ts delete mode 100644 templates/module/angular/projects/dev-app/src/app/home/home.module.ts create mode 100644 templates/module/angular/projects/dev-app/src/app/home/home.routes.ts delete mode 100644 templates/module/angular/projects/my-project-name/src/lib/my-project-name.module.ts rename templates/module/angular/projects/my-project-name/src/lib/{my-project-name-routing.module.ts => my-project-name.routes.ts} (56%) diff --git a/templates/app-nolayers/angular/src/app/app.config.ts b/templates/app-nolayers/angular/src/app/app.config.ts index 6247f27fce..5fcd465589 100644 --- a/templates/app-nolayers/angular/src/app/app.config.ts +++ b/templates/app-nolayers/angular/src/app/app.config.ts @@ -1,6 +1,6 @@ import {ApplicationConfig, importProvidersFrom} from '@angular/core'; import {provideAnimations} from "@angular/platform-browser/animations"; - +import {provideRouter} from "@angular/router"; import { appRoutes } from './app.routes'; import { APP_ROUTE_PROVIDER } from './route.provider'; import { provideAbpCore, withOptions } from '@abp/ng.core'; @@ -18,6 +18,7 @@ import {SideMenuLayoutModule} from "@abp/ng.theme.lepton-x/layouts"; export const appConfig: ApplicationConfig = { providers: [ + provideRouter(appRoutes), APP_ROUTE_PROVIDER, provideAbpCore( withOptions({ diff --git a/templates/module/angular/projects/dev-app/src/app/app.component.ts b/templates/module/angular/projects/dev-app/src/app/app.component.ts index 3a2a61014e..bea8e842f1 100644 --- a/templates/module/angular/projects/dev-app/src/app/app.component.ts +++ b/templates/module/angular/projects/dev-app/src/app/app.component.ts @@ -1,11 +1,13 @@ import { Component } from '@angular/core'; +import {LoaderBarComponent} from "@abp/ng.theme.shared"; +import {DynamicLayoutComponent} from "@abp/ng.core"; @Component({ - standalone: false, selector: 'app-root', template: ` - + , `, + imports: [LoaderBarComponent, DynamicLayoutComponent] }) export class AppComponent {} diff --git a/templates/module/angular/projects/dev-app/src/app/app.module.ts b/templates/module/angular/projects/dev-app/src/app/app.config.ts similarity index 54% rename from templates/module/angular/projects/dev-app/src/app/app.module.ts rename to templates/module/angular/projects/dev-app/src/app/app.config.ts index ab0a3acb67..f05d9956cc 100644 --- a/templates/module/angular/projects/dev-app/src/app/app.module.ts +++ b/templates/module/angular/projects/dev-app/src/app/app.config.ts @@ -1,33 +1,24 @@ -import { provideAccountConfig } from '@abp/ng.account/config'; -import { CoreModule, provideAbpCore, withOptions } from '@abp/ng.core'; +import {ApplicationConfig} from '@angular/core'; +import {provideAnimations} from "@angular/platform-browser/animations"; +import {provideRouter} from "@angular/router"; +import { appRoutes } from './app.routes'; +import { APP_ROUTE_PROVIDER } from './route.provider'; +import { provideAbpCore, withOptions } from '@abp/ng.core'; +import { environment } from '../environments/environment'; import { registerLocale } from '@abp/ng.core/locale'; -import { provideIdentityConfig } from '@abp/ng.identity/config'; +import { provideAbpOAuth } from '@abp/ng.oauth'; +import { provideAbpThemeShared } from '@abp/ng.theme.shared'; import { provideSettingManagementConfig } from '@abp/ng.setting-management/config'; +import { provideAccountConfig } from '@abp/ng.account/config'; +import { provideIdentityConfig } from '@abp/ng.identity/config'; import { provideTenantManagementConfig } from '@abp/ng.tenant-management/config'; -import { ThemeBasicModule, provideThemeBasicConfig } from '@abp/ng.theme.basic'; -import { ThemeSharedModule, provideAbpThemeShared } from '@abp/ng.theme.shared'; import { provideFeatureManagementConfig } from '@abp/ng.feature-management'; -import { provideAbpOAuth } from '@abp/ng.oauth'; -import { NgModule } from '@angular/core'; -import { BrowserModule } from '@angular/platform-browser'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { MyProjectNameConfigModule } from '@my-company-name/my-project-name/config'; -import { environment } from '../environments/environment'; -import { AppRoutingModule } from './app-routing.module'; -import { AppComponent } from './app.component'; -import { APP_ROUTE_PROVIDER } from './route.provider'; +import {provideThemeBasicConfig} from "@abp/ng.theme.basic"; +import {provideMyProjectNameConfig} from "@my-company-name/my-project-name/config"; -@NgModule({ - imports: [ - BrowserModule, - BrowserAnimationsModule, - AppRoutingModule, - CoreModule, - ThemeSharedModule, - MyProjectNameConfigModule.forRoot(), - ThemeBasicModule, - ], +export const appConfig: ApplicationConfig = { providers: [ + provideRouter(appRoutes), APP_ROUTE_PROVIDER, provideAbpCore( withOptions({ @@ -44,9 +35,8 @@ import { APP_ROUTE_PROVIDER } from './route.provider'; provideIdentityConfig(), provideTenantManagementConfig(), provideFeatureManagementConfig(), + provideAnimations(), provideThemeBasicConfig(), + provideMyProjectNameConfig(), ], - declarations: [AppComponent], - bootstrap: [AppComponent], -}) -export class AppModule {} +}; diff --git a/templates/module/angular/projects/dev-app/src/app/app-routing.module.ts b/templates/module/angular/projects/dev-app/src/app/app.routes.ts similarity index 61% rename from templates/module/angular/projects/dev-app/src/app/app-routing.module.ts rename to templates/module/angular/projects/dev-app/src/app/app.routes.ts index ba7ee06b13..00eaac763d 100644 --- a/templates/module/angular/projects/dev-app/src/app/app-routing.module.ts +++ b/templates/module/angular/projects/dev-app/src/app/app.routes.ts @@ -1,11 +1,10 @@ -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; +import { Routes } from '@angular/router'; -const routes: Routes = [ +export const appRoutes: Routes = [ { path: '', pathMatch: 'full', - loadChildren: () => import('./home/home.module').then(m => m.HomeModule), + loadChildren: () => import('./home/home.routes').then(m => m.homeRoutes), }, { path: 'account', @@ -28,12 +27,6 @@ const routes: Routes = [ { path: 'my-project-name', loadChildren: () => - import('@my-company-name/my-project-name').then(m => m.MyProjectNameModule.forLazy()), + import('@my-company-name/my-project-name').then(m => m.myProjectNameRoutes), }, ]; - -@NgModule({ - imports: [RouterModule.forRoot(routes, {})], - exports: [RouterModule], -}) -export class AppRoutingModule {} diff --git a/templates/module/angular/projects/dev-app/src/app/home/home-routing.module.ts b/templates/module/angular/projects/dev-app/src/app/home/home-routing.module.ts deleted file mode 100644 index 634706a36c..0000000000 --- a/templates/module/angular/projects/dev-app/src/app/home/home-routing.module.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; -import { HomeComponent } from './home.component'; - -const routes: Routes = [ - { - path: '', - children: [{ path: '', component: HomeComponent }], - }, -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class HomeRoutingModule {} diff --git a/templates/module/angular/projects/dev-app/src/app/home/home.component.ts b/templates/module/angular/projects/dev-app/src/app/home/home.component.ts index a0f37a99ca..ab1f354e89 100644 --- a/templates/module/angular/projects/dev-app/src/app/home/home.component.ts +++ b/templates/module/angular/projects/dev-app/src/app/home/home.component.ts @@ -1,7 +1,6 @@ import { Component } from '@angular/core'; @Component({ - standalone: false, selector: 'app-home', templateUrl: './home.component.html', }) diff --git a/templates/module/angular/projects/dev-app/src/app/home/home.module.ts b/templates/module/angular/projects/dev-app/src/app/home/home.module.ts deleted file mode 100644 index 72d20ccc65..0000000000 --- a/templates/module/angular/projects/dev-app/src/app/home/home.module.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { NgModule } from '@angular/core'; -import { SharedModule } from '../shared/shared.module'; -import { HomeRoutingModule } from './home-routing.module'; -import { HomeComponent } from './home.component'; - -@NgModule({ - declarations: [HomeComponent], - imports: [SharedModule, HomeRoutingModule], -}) -export class HomeModule {} diff --git a/templates/module/angular/projects/dev-app/src/app/home/home.routes.ts b/templates/module/angular/projects/dev-app/src/app/home/home.routes.ts new file mode 100644 index 0000000000..b04601eddc --- /dev/null +++ b/templates/module/angular/projects/dev-app/src/app/home/home.routes.ts @@ -0,0 +1,9 @@ +import { Routes } from '@angular/router'; + +export const homeRoutes: Routes = [ + { + path: '', + pathMatch: 'full', + loadComponent: () => import('./home.component').then(m => m.HomeComponent), + }, +]; diff --git a/templates/module/angular/projects/dev-app/src/main.ts b/templates/module/angular/projects/dev-app/src/main.ts index c7b673cf44..7180ec1a32 100644 --- a/templates/module/angular/projects/dev-app/src/main.ts +++ b/templates/module/angular/projects/dev-app/src/main.ts @@ -1,12 +1,5 @@ -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { bootstrapApplication } from '@angular/platform-browser'; +import { appConfig } from './app/app.config'; +import { AppComponent } from './app/app.component'; -import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; - -if (environment.production) { - enableProdMode(); -} - -platformBrowserDynamic().bootstrapModule(AppModule) - .catch(err => console.error(err)); +bootstrapApplication(AppComponent, appConfig).catch(err => console.error(err)); diff --git a/templates/module/angular/projects/my-project-name/config/src/my-project-name-config.module.ts b/templates/module/angular/projects/my-project-name/config/src/my-project-name-config.module.ts index 6ce45aa112..d756a8ad0d 100644 --- a/templates/module/angular/projects/my-project-name/config/src/my-project-name-config.module.ts +++ b/templates/module/angular/projects/my-project-name/config/src/my-project-name-config.module.ts @@ -1,12 +1,6 @@ -import { ModuleWithProviders, NgModule } from '@angular/core'; +import {makeEnvironmentProviders} from '@angular/core'; import { MY_PROJECT_NAME_ROUTE_PROVIDERS } from './providers/route.provider'; -@NgModule() -export class MyProjectNameConfigModule { - static forRoot(): ModuleWithProviders { - return { - ngModule: MyProjectNameConfigModule, - providers: [MY_PROJECT_NAME_ROUTE_PROVIDERS], - }; - } +export function provideMyProjectNameConfig() { + return makeEnvironmentProviders([MY_PROJECT_NAME_ROUTE_PROVIDERS]) } diff --git a/templates/module/angular/projects/my-project-name/src/lib/components/my-project-name.component.ts b/templates/module/angular/projects/my-project-name/src/lib/components/my-project-name.component.ts index 21628304ac..3482489623 100644 --- a/templates/module/angular/projects/my-project-name/src/lib/components/my-project-name.component.ts +++ b/templates/module/angular/projects/my-project-name/src/lib/components/my-project-name.component.ts @@ -2,7 +2,6 @@ import { Component, inject, OnInit } from '@angular/core'; import { MyProjectNameService } from '../services/my-project-name.service'; @Component({ - standalone: false, selector: 'lib-my-project-name', template: `

my-project-name works!

`, styles: [], diff --git a/templates/module/angular/projects/my-project-name/src/lib/my-project-name.module.ts b/templates/module/angular/projects/my-project-name/src/lib/my-project-name.module.ts deleted file mode 100644 index 7e92915f4e..0000000000 --- a/templates/module/angular/projects/my-project-name/src/lib/my-project-name.module.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { NgModule, NgModuleFactory, ModuleWithProviders } from '@angular/core'; -import { CoreModule, LazyModuleFactory } from '@abp/ng.core'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { MyProjectNameComponent } from './components/my-project-name.component'; -import { MyProjectNameRoutingModule } from './my-project-name-routing.module'; - -@NgModule({ - declarations: [MyProjectNameComponent], - imports: [CoreModule, ThemeSharedModule, MyProjectNameRoutingModule], - exports: [MyProjectNameComponent], -}) -export class MyProjectNameModule { - static forChild(): ModuleWithProviders { - return { - ngModule: MyProjectNameModule, - providers: [], - }; - } - - static forLazy(): NgModuleFactory { - return new LazyModuleFactory(MyProjectNameModule.forChild()); - } -} diff --git a/templates/module/angular/projects/my-project-name/src/lib/my-project-name-routing.module.ts b/templates/module/angular/projects/my-project-name/src/lib/my-project-name.routes.ts similarity index 56% rename from templates/module/angular/projects/my-project-name/src/lib/my-project-name-routing.module.ts rename to templates/module/angular/projects/my-project-name/src/lib/my-project-name.routes.ts index f676a219d9..ae9f1dfcec 100644 --- a/templates/module/angular/projects/my-project-name/src/lib/my-project-name-routing.module.ts +++ b/templates/module/angular/projects/my-project-name/src/lib/my-project-name.routes.ts @@ -1,9 +1,8 @@ -import { NgModule } from '@angular/core'; import { RouterOutletComponent } from '@abp/ng.core'; -import { Routes, RouterModule } from '@angular/router'; +import { Routes } from '@angular/router'; import { MyProjectNameComponent } from './components/my-project-name.component'; -const routes: Routes = [ +export const myProjectNameRoutes: Routes = [ { path: '', pathMatch: 'full', @@ -16,9 +15,3 @@ const routes: Routes = [ ], }, ]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class MyProjectNameRoutingModule {} diff --git a/templates/module/angular/projects/my-project-name/src/public-api.ts b/templates/module/angular/projects/my-project-name/src/public-api.ts index 3bb54f6a9a..b445f589e0 100644 --- a/templates/module/angular/projects/my-project-name/src/public-api.ts +++ b/templates/module/angular/projects/my-project-name/src/public-api.ts @@ -4,4 +4,4 @@ export * from './lib/components/my-project-name.component'; export * from './lib/services/my-project-name.service'; -export * from './lib/my-project-name.module'; +export * from './lib/my-project-name.routes';