Activities of "mateusz.krauze"

I read this thread before but I wasn't paying enough attention I guess. Adding ~ in package.json works. Thanks a lot! :)

ABP Framework version: 9.0 - 9.1.1 UI Type: Angular Database System: EF Core (SQL Server) Auth Server Separated (for Angular): Yes

Exception message and full stack trace : NullInjectorError: NullInjectorError: No provider for InjectionToken SORT_COMPARE_FUNC!

ERROR NullInjectorError: NullInjectorError: No provider for InjectionToken SORT_COMPARE_FUNC!
    Angular 38
core.mjs:6537:18
        get
        get
        get
        injectInjectorOnly
        inject
        inject
        AbstractMenuService
        _UserMenuService
        getInheritedFactory
        UserMenuService_Factory
        hydrate
        runInInjectorProfilerContext
        hydrate
        get
        injectInjectorOnly
        inject
        inject
        configureUserMenu
        LEPTON_X_USER_MENU_PROVIDERS
        runInInjectionContext
        runInitializers
        bootstrap
        _callAndReportToErrorHandler
        bootstrap
        invoke
        onInvoke
        invoke
        run
        run
        bootstrap
        bootstrapModuleFactory
        bootstrapModule
        invoke
        run
        scheduleResolveOrReject
        invokeTask
        runTask
        drainMicroTaskQueue

Hello, I updated ABP version from 9.0 to 9.1 (as a solution for other issues) and i've got error above at runtime. Compilation goes fine, but frontend not working. Tried refreshing node_modules, cache etc. but nothing helps. I guess some package has inccorrect version, please take a look. Here is my package list:

 "dependencies": {
    "@abp/ng.account": "9.1.1",
    "@abp/ng.components": "9.1.1",
    "@abp/ng.core": "9.1.1",
    "@abp/ng.identity": "9.1.1",
    "@abp/ng.oauth": "9.1.1",
    "@abp/ng.setting-management": "9.1.1",
    "@angular/animations": "19.2.9",
    "@angular/cdk": "19.2.3",
    "@angular/common": "19.2.9",
    "@angular/compiler": "19.2.9",
    "@angular/core": "19.2.9",
    "@angular/forms": "19.2.9",
    "@angular/localize": "19.2.9",
    "@angular/platform-browser": "19.2.9",
    "@angular/platform-browser-dynamic": "19.2.9",
    "@angular/router": "19.2.9",
    "@fullcalendar/angular": "6.1.17",
    "@fullcalendar/core": "6.1.17",
    "@fullcalendar/daygrid": "6.1.17",
    "@fullcalendar/interaction": "6.1.17",
    "@fullcalendar/timegrid": "6.1.17",
    "@microsoft/signalr": "8.0.7",
    "@ng-bootstrap/ng-bootstrap": "18.0.0",
    "@popperjs/core": "^2.11.8",
    "@primeng/themes": "^19.1.0",
    "@typescript-eslint/utils": "8.31.0",
    "@volo/abp.commercial.ng.ui": "9.1.1",
    "@volo/abp.ng.account": "9.1.1",
    "@volo/abp.ng.audit-logging": "9.1.1",
    "@volo/abp.ng.gdpr": "9.1.1",
    "@volo/abp.ng.identity": "9.1.1",
    "@volo/abp.ng.language-management": "9.1.1",
    "@volo/abp.ng.lepton-x.core": "4.1.1",
    "@volo/abp.ng.openiddictpro": "9.1.1",
    "@volo/abp.ng.saas": "9.1.1",
    "@volo/abp.ng.text-template-management": "9.1.1",
    "@volosoft/abp.ng.theme.lepton-x": "4.1.2",
    "@volosoft/ngx-lepton-x": "4.1.2",
    "file-saver": "^2.0.5",
    "jquery": "^3.7.1",
    "jquery-ui-dist": "^1.13.2",
    "jspdf": "3.0.1",
    "jspdf-autotable": "5.0.2",
    "moment": "^2.29.4",
    "ngx-logger": "^5.0.11",
    "primeicons": "^7.0.0",
    "primeng": "19.1.0",
    "rxjs": "~7.8.0",
    "source-map": "0.7.4",
    "tslib": "^2.0.0",
    "xlsx": "^0.18.5",
    "zone.js": "0.15.0"
  },
  "devDependencies": {
    "@abp/ng.schematics": "9.1.1",
    "@angular-devkit/build-angular": "19",
    "@angular-eslint/builder": "19",
    "@angular-eslint/eslint-plugin": "19",
    "@angular-eslint/eslint-plugin-template": "19",
    "@angular-eslint/schematics": "19",
    "@angular-eslint/template-parser": "19",
    "@angular/cli": "19",
    "@angular/compiler-cli": "19",
    "@angular/language-service": "19",
    "@types/jasmine": "5.1.7",
    "@types/node": "22.14.1",
    "@typescript-eslint/eslint-plugin": "8.31.0",
    "@typescript-eslint/parser": "8.31.0",
    "eslint": "9.25.1",
    "jasmine-core": "5.6.0",
    "karma": "6.4.4",
    "karma-chrome-launcher": "3.2.0",
    "karma-coverage": "2.2.1",
    "karma-jasmine": "5.1.0",
    "karma-jasmine-html-reporter": "2.1.0",
    "ng-packagr": "19.2.2",
    "typescript": "5.8.3"
  }

Thanks in advance

Thanks, your tips seems going too far to us, so finally we made decission to uprade to 9.1.1.

Thanks for helping me

Unfortunately, due to Angular 19 requirement, i can't do this now. Is there another solution for me?

ABP Framework version: 9.0.0 UI Type: Angular (LeptonX) Database System: EF Core (SQLServer) Auth Server Separated (for Angular): Yes Exception message and full stack trace : Volo.Abp.Data.AbpDbConcurrencyException: The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded

status: 500, 
statusText: "OK", 
url: "https://localhost:44382/connect/revocat", 
ok: false, 
name: "HttpErrorResponse", 
message: "Http failure response for https://localhost:44382/connect/revocat: 500 OK", 
error: "Volo.Abp.Data.AbpDbConcurrencyException: The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
 ---> Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException: The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
   at Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.ThrowAggregateUpdateConcurrencyExceptionAsync(RelationalDataReader reader, Int32 commandIndex, Int32 expectedRowsAffected, Int32 rowsAffected, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.ConsumeResultSetWithRowsAffectedOnlyAsync(Int32 commandIndex, RelationalDataReader reader, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.ConsumeAsync(RelationalDataReader reader, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.ExecuteAsync(IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.ExecuteAsync(IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.SqlServer.Update.Internal.SqlServerModificationCommandBatch.ExecuteAsync(IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.ExecuteAsync(IEnumerable`1 commandBatches, IRelationalConnection connection, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.Storage.RelationalDatabase.SaveChangesAsync(IList`1 entries, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(IList`1 entriesToSave, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.SaveChangesAsync(StateManager stateManager, Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
   at Microsoft.EntityFrameworkCore.DbContext.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
   at Volo.Abp.EntityFrameworkCore.AbpDbContext`1.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at Volo.Abp.EntityFrameworkCore.AbpDbContext`1.SaveChangesAsync(Boolean acceptAllChangesOnSuccess, CancellationToken cancellationToken)
   at Volo.Abp.Uow.UnitOfWork.SaveChangesAsync(CancellationToken cancellationToken)
   at Volo.Abp.Uow.UnitOfWork.CompleteAsync(CancellationToken cancellationToken)
   at Volo.Abp.Uow.UnitOfWorkInterceptor.InterceptAsync(IAbpMethodInvocation invocation)
   at Volo.Abp.Castle.DynamicProxy.CastleAsyncAbpInterceptorAdapter`1.InterceptAsync(IInvocation invocation, IInvocationProceedInfo proceedInfo, Func`3 proceed)
   at Volo.Abp.Identity.IdentitySessionManager.RevokeAsync(IdentitySession session)
   at Volo.Abp.Identity.IdentitySessionManager.RevokeAsync(String sessionId)
   at Volo.Abp.Account.Web.Pages.Account.OpenIddictRevokeIdentitySessionOnRevocation.HandleAsync(HandleRevocationRequestContext context)
   at OpenIddict.Server.OpenIddictServerDispatcher.DispatchAsync[TContext](TContext context)
   at OpenIddict.Server.OpenIddictServerDispatcher.DispatchAsync[TContext](TContext context)
   at OpenIddict.Server.OpenIddictServerHandlers.Revocation.HandleRevocationRequest.HandleAsync(ProcessRequestContext context)
   at OpenIddict.Server.OpenIddictServerDispatcher.DispatchAsync[TContext](TContext context)
   at OpenIddict.Server.OpenIddictServerDispatcher.DispatchAsync[TContext](TContext context)
   at OpenIddict.Server.AspNetCore.OpenIddictServerAspNetCoreHandler.HandleRequestAsync()
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Volo.Abp.AspNetCore.Security.AbpSecurityHeadersMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.InterfaceMiddlewareBinder.<>c__DisplayClass2_0.<<CreateMiddleware>b__0>d.MoveNext()
--- End of stack trace from previous location ---
   at Volo.Abp.AspNetCore.Tracing.AbpCorrelationIdMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.InterfaceMiddlewareBinder.<>c__DisplayClass2_0.<<CreateMiddleware>b__0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.RequestLocalization.AbpRequestLocalizationMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.InterfaceMiddlewareBinder.<>c__DisplayClass2_0.<<CreateMiddleware>b__0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.RequestLocalization.AbpRequestLocalizationMiddleware.InvokeAsync(HttpContext context, RequestDelegate next)
   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.InterfaceMiddlewareBinder.<>c__DisplayClass2_0.<<CreateMiddleware>b__0>d.MoveNext()
--- End of stack trace from previous location ---
   at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext context)

Hi, After pressing the logout button error above is thrown and user remains on same page insted of login page. I checked the tips from the forum already. I tried this solution https://abp.io/support/questions/8917/VoloAbpDataAbpDbConcurrencyException-The-database-operation-was-expected-to-affect-1-rows but without effect.

Please share your advice, Regards

Hi, now it works perfectly!

Thank you!

ABP Framework version: 8.1.1 UI Type: Angular Database System: EF Core (MSSQL) Auth Server Separated (for Angular): Yes Exception message and full stack trace :NullInjectorError: No provider for InjectionToken CORE_OPTIONS

ERROR NullInjectorError: R3InjectorError(AppModule)[ApplicationInitStatus -> InjectionToken Application Initializer -> [object Object] -> ProfilePictureService -> RestService -> InjectionToken CORE_OPTIONS -> InjectionToken CORE_OPTIONS]: 
  NullInjectorError: No provider for InjectionToken CORE_OPTIONS!
    Angular 5
    RestService_Factory abp-ng.core.mjs:56
    Angular 6
    ProfilePictureService_Factory volo-abp.commercial.ng.ui-config.mjs:56
    Angular 54
    84429 main.ts:11
    Webpack 7
core.mjs:7404:22
    Angular 29
    84429 main.ts:11
    Webpack 7

Hi, I updated ABP version from 8.1.1 to 9.0 and i've got error above in runtime. I checked all the tips from the forum but without success. Compilation goes fine, but frontend not working. Removing lock file and modules doesn't help. Here is my package list:

  "dependencies": {
    "@abp/ng.account": "~9.0.0",
    "@abp/ng.components": "~9.0.0",
    "@abp/ng.core": "~9.0.0",
    "@abp/ng.identity": "~9.0.0",
    "@abp/ng.oauth": "~9.0.0",
    "@abp/ng.setting-management": "~9.0.0",
    "@abp/ng.theme.shared": "~9.0.0",
    "@angular/animations": "18",
    "@angular/cdk": "18",
    "@angular/common": "18",
    "@angular/compiler": "18",
    "@angular/core": "18",
    "@angular/forms": "18",
    "@angular/localize": "18",
    "@angular/platform-browser": "18",
    "@angular/platform-browser-dynamic": "18",
    "@angular/router": "18",
    "@fullcalendar/angular": "6.1.10",
    "@fullcalendar/core": "6.1.10",
    "@fullcalendar/daygrid": "6.1.10",
    "@fullcalendar/interaction": "6.1.10",
    "@fullcalendar/timegrid": "6.1.10",
    "@microsoft/signalr": "8.0.0",
    "@ng-bootstrap/ng-bootstrap": "16",
    "@popperjs/core": "^2.11.8",
    "@typescript-eslint/utils": "7.7.0",
    "@volo/abp.commercial.ng.ui": "~9.0.0",
    "@volo/abp.ng.account": "~9.0.0",
    "@volo/abp.ng.audit-logging": "~9.0.0",
    "@volo/abp.ng.gdpr": "~9.0.0",
    "@volo/abp.ng.identity": "~9.0.0",
    "@volo/abp.ng.language-management": "~9.0.0",
    "@volo/abp.ng.openiddictpro": "~9.0.0",
    "@volo/abp.ng.saas": "~9.0.0",
    "@volo/abp.ng.text-template-management": "~9.0.0",
    "@volosoft/abp.ng.theme.lepton-x": "3.3.4",
    "file-saver": "^2.0.5",
    "jquery": "^3.7.1",
    "jquery-ui-dist": "^1.13.2",
    "jspdf": "^2.5.1",
    "jspdf-autotable": "^3.5.29",
    "moment": "^2.29.4",
    "ngx-logger": "^5.0.11",
    "primeicons": "7.0.0",
    "primeng": "17.13.0",
    "rxjs": "~7.8.0",
    "source-map": "0.7.4",
    "tslib": "^2.0.0",
    "xlsx": "^0.18.5",
    "zone.js": "~0.14.0"
  },
  "devDependencies": {
    "@abp/ng.schematics": "~9.0.0",
    "@angular-devkit/build-angular": "18",
    "@angular-eslint/builder": "18",
    "@angular-eslint/eslint-plugin": "18",
    "@angular-eslint/eslint-plugin-template": "18",
    "@angular-eslint/schematics": "18",
    "@angular-eslint/template-parser": "18",
    "@angular/cli": "18",
    "@angular/compiler-cli": "18",
    "@angular/language-service": "18",
    "@types/jasmine": "~3.6.0",
    "@types/node": "^20.0.0",
    "@typescript-eslint/eslint-plugin": "6.9.1",
    "@typescript-eslint/parser": "6.9.1",
    "eslint": "^8.0.0",
    "jasmine-core": "~4.0.0",
    "karma": "~6.3.0",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage": "~2.1.0",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.7.0",
    "ng-packagr": "^17.3.0",
    "typescript": "5.4.5"
  }

Here is my app.module.ts file:

import { CoreModule, provideAbpCore, withOptions } from '@abp/ng.core';
import { GdprConfigModule, provideGdprConfig, withCookieConsentOptions } from '@volo/abp.ng.gdpr/config';
import { provideSettingManagementConfig, SettingManagementConfigModule } from '@abp/ng.setting-management/config';
import { ThemeSharedModule, CUSTOM_ERROR_HANDLERS, provideAbpThemeShared, withHttpErrorConfig } from '@abp/ng.theme.shared';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { CommercialUiConfigModule, provideCommercialUiConfig } from '@volo/abp.commercial.ng.ui/config';
import { AuditLoggingConfigModule, provideAuditLoggingConfig } from '@volo/abp.ng.audit-logging/config';
import { IdentityConfigModule, provideIdentityConfig } from '@volo/abp.ng.identity/config';
import { provideLanguageManagementConfig } from '@volo/abp.ng.language-management/config';
import { registerLocale } from '@volo/abp.ng.language-management/locale';
import { provideTextTemplateManagementConfig } from '@volo/abp.ng.text-template-management/config';
import { HttpErrorComponent, ThemeLeptonXModule } from '@volosoft/abp.ng.theme.lepton-x';
import { SideMenuLayoutModule } from '@volosoft/abp.ng.theme.lepton-x/layouts';
import { environment } from '../environments/environment';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { APP_ROUTE_PROVIDER } from './route.provider';
import { provideOpeniddictproConfig } from '@volo/abp.ng.openiddictpro/config';
import { provideFeatureManagementConfig } from '@abp/ng.feature-management';
import { provideAbpOAuth } from '@abp/ng.oauth';
import { LoggerModule, NgxLoggerLevel } from 'ngx-logger';
import { ConfirmationService } from 'primeng/api';
import { CustomErrorHandlerService } from './utils/error-handling/http-error-handler.service';

@NgModule({
  declarations: [AppComponent],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,
    AppRoutingModule,
    CoreModule,
    ThemeSharedModule,
    IdentityConfigModule,
    AuditLoggingConfigModule,
    SettingManagementConfigModule,
    ThemeLeptonXModule.forRoot(),
    SideMenuLayoutModule.forRoot(),
    CommercialUiConfigModule,
    GdprConfigModule,
    LoggerModule.forRoot({
      level: environment.production ? NgxLoggerLevel.WARN : NgxLoggerLevel.TRACE,
      colorScheme: ['purple', 'teal', 'gray', 'gray', 'red', 'red', 'red'],
      enableSourceMaps: !environment.production,
      disableConsoleLogging: environment.production
    }),
  ],
  providers: [
    APP_ROUTE_PROVIDER,
    { provide: CUSTOM_ERROR_HANDLERS, useExisting: CustomErrorHandlerService, multi: true },
    ConfirmationService,
    provideAbpCore(
      withOptions({
        environment,
        registerLocaleFn: registerLocale(),
      })
    ),
    provideAbpOAuth(),
    provideAbpThemeShared(withHttpErrorConfig({
      errorScreen: {
        component: HttpErrorComponent,
        forWhichErrors: [401, 403, 404, 500],
        hideCloseIcon: true,
      }
    })),
    provideIdentityConfig(),
    provideLanguageManagementConfig(),
    provideAuditLoggingConfig(),
    provideOpeniddictproConfig(),
    provideTextTemplateManagementConfig(),
    provideSettingManagementConfig(),
    provideCommercialUiConfig(),
    provideFeatureManagementConfig(),
    provideGdprConfig(withCookieConsentOptions({
      cookiePolicyUrl: 'gdpr-cookie-consent/cookie',
      privacyPolicyUrl: 'gdpr-cookie-consent/privacy'
    })),
  ],
  bootstrap: [AppComponent],
})
export class AppModule { }

Please help with this one. Best regards

Logs are clean, no errors and warnings during proxy generation. Here is my package.json:

{
  "name": "MyProject",
  "version": "0.2.0",
  "scripts": {
    "ng": "ng",
    "start": "ng lint --fix && ng serve --configuration local --open",
    "proxy": "abp generate-proxy -t ng --module app",
    "build:dev": "ng lint --fix && ng build --configuration dev",
    "watch": "ng build --watch --configuration development",
    "test": "ng test",
    "lint": "ng lint"
  },
  "private": true,
  "dependencies": {
    "@abp/ng.components": "~8.1.1",
    "@abp/ng.core": "~8.1.1",
    "@abp/ng.oauth": "~8.1.1",
    "@abp/ng.setting-management": "~8.1.1",
    "@abp/ng.theme.shared": "~8.1.1",
    "@abp/ng.account": "~8.1.1",
    "@abp/ng.identity": "~8.1.1",
    "@volo/abp.commercial.ng.ui": "~8.1.1",
    "@volo/abp.ng.account": "~8.1.1",
    "@volo/abp.ng.audit-logging": "~8.1.1",
    "@volo/abp.ng.gdpr": "~8.1.1",
    "@volo/abp.ng.identity": "~8.1.1",
    "@volo/abp.ng.openiddictpro": "~8.1.1",
    "@volo/abp.ng.language-management": "~8.1.1",
    "@volo/abp.ng.saas": "~8.1.1",
    "@volo/abp.ng.text-template-management": "~8.1.1",
    "@volosoft/abp.ng.theme.lepton-x": "~3.1.1",
    "@angular/animations": "^17.3.5",
    "@angular/cdk": "17.3.5",
    "@angular/common": "^17.3.5",
    "@angular/compiler": "^17.3.5",
    "@angular/core": "^17.3.5",
    "@angular/forms": "^17.3.5",
    "@angular/localize": "^17.3.5",
    "@angular/platform-browser-dynamic": "^17.3.5",
    "@angular/platform-browser": "^17.3.5",
    "@angular/router": "^17.3.5",
    "@fullcalendar/angular": "6.1.10",
    "@fullcalendar/core": "6.1.10",
    "@fullcalendar/daygrid": "6.1.10",
    "@fullcalendar/interaction": "6.1.10",
    "@fullcalendar/timegrid": "6.1.10",
    "@microsoft/signalr": "8.0.0",
    "@ng-bootstrap/ng-bootstrap": "16.0.0",
    "@popperjs/core": "^2.11.8",
    "@typescript-eslint/utils": "7.7.0",
    "file-saver": "^2.0.5",
    "jquery": "^3.7.1",
    "jquery-ui-dist": "^1.13.2",
    "jspdf": "^2.5.1",
    "jspdf-autotable": "^3.5.29",
    "moment": "^2.29.4",
    "ngx-logger": "^5.0.11",
    "primeicons": "7.0.0",
    "primeng": "17.13.0",
    "xlsx": "^0.18.5",
    "rxjs": "~7.8.0",
    "tslib": "^2.0.0",
    "zone.js": "~0.14.0"
    },
  "devDependencies": {
    "@abp/ng.schematics": "~8.1.1",
    "@angular-devkit/build-angular": "~17.1.0",
    "@angular-eslint/builder": "~17.2.0",
    "@angular-eslint/eslint-plugin": "~17.2.0",
    "@angular-eslint/eslint-plugin-template": "~17.2.0",
    "@angular-eslint/schematics": "~17.2.0",
    "@angular-eslint/template-parser": "~17.2.0",
    "@angular/cli": "~17.1.0",
    "@angular/compiler-cli": "~17.1.0",
    "@angular/language-service": "~17.1.0",
    "@types/jasmine": "~3.6.0",
    "@types/node": "^20.0.0",
    "@typescript-eslint/eslint-plugin": "6.9.1",
    "@typescript-eslint/parser": "6.9.1",
    "eslint": "^8.0.0",
    "jasmine-core": "~4.0.0",
    "karma": "~6.3.0",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage": "~2.1.0",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.7.0",
    "ng-packagr": "^17.3.0",
    "typescript": "~5.3.0"
  }
}

I saw this issue already, but i didn't found working solution there. The problem appears after upgrade to v8.1.1 (from v7.2.2) and no changes were made in backend.

  • ABP Framework version: v8.1.1
  • UI Type: Angular
  • Database System: EF Core (SQL Server)
  • Auth Server Separated (for Angular): yes
  • Exception message and full stack trace:

Error: src/app/proxy/models.ts:2:15 - error TS2303: Circular definition of import alias 'TKey'.

2 import type { TKey } from './models'; ~~~~

Error: src/app/proxy/models.ts:2:15 - error TS2459: Module '"./models"' declares 'TKey' locally, but it is not exported.

2 import type { TKey } from './models'; ~~~~

src/app/proxy/models.ts:2:15 2 import type { TKey } from './models'; ~~~~ 'TKey' is declared here.

  • Steps to reproduce the issue:

Just generate proxy using command: abp generate-proxy. After proxy is generated, error above appears. Removing this line: import type { TKey } from './models'; helps, but it's annoing to do it after each proxy generation.

Showing 1 to 10 of 12 entries
Boost Your Development
ABP Live Training
Packages
See Trainings
Mastering ABP Framework Book
Do you need assistance from an ABP expert?
Schedule a Meeting
Mastering ABP Framework Book
The Official Guide
Mastering
ABP Framework
Learn More
Mastering ABP Framework Book
Made with ❤️ on ABP v9.3.0-preview. Updated on May 12, 2025, 05:22