Can you try changing the request url in RagEngineService since backend expects this url /api/rag-engine/example instead of this /api/rag-engine/sample?
//modules/ragengine/src/RagEngine.HttpApi/Samples/ExampleController.cs
[Route("api/rag-engine/example")]
public class ExampleController : RagEngineController, ISampleAppService
{
[HttpGet]
[Route("authorized")]
[Authorize]
public async Task GetAuthorizedAsync()
{
return await _sampleAppService.GetAsync();
}
}
Hello,
Thank you for giving details about this problem. The issue occurs since this endpoint expects authorization
//modules/ragengine/src/RagEngine.HttpApi/Samples/ExampleController.cs
[Area(RagEngineRemoteServiceConsts.ModuleName)]
[RemoteService(Name = RagEngineRemoteServiceConsts.RemoteServiceName)]
[Route("api/rag-engine/example")]
public class ExampleController : RagEngineController, ISampleAppService
{
[HttpGet]
[Route("authorized")]
[Authorize]
public async Task<SampleDto> GetAuthorizedAsync()
{
return await _sampleAppService.GetAsync();
}
}
We will be making the necessary adjustments. Until we release the fix, you can solve this by adding a guard for the route like this:
//app.routes.ts
import { authGuard } from '@abp/ng.core';
export const APP_ROUTES: Routes = [
{ path: 'rag-engine', children: RAG_ENGINE_ROUTES, canActivate: [authGuard] },
];
You can let us know if you need further assistance. Thank you for your cooperation.
Hello, this problem is addressed for the next patch release. You can follow the process here: https://github.com/abpframework/abp/releases
Until the issue is fixed, you could try changing the import to the theme package instead:
//app.config.ts
import { provideLogo, withEnvironmentOptions } from '@volo/ngx-lepton-x.core';
//...
You can let us know if you need further assistance. Thank you for your cooperation.
This may be because of the dropdown positioning styles. Could you try these final adjustments?
// angular/src/styles.scss
.lpx-header-top {
justify-content: space-between;
}
.lpx-menu-dropdown {
position: fixed; /* Changed from absolute */
/* Add initial position off-screen or matching expected position */
top: -9999px;
left: -9999px;
}
Yes, I mean this file /angular/src/styles.scss. Could you try putting the rule at the top of this file?
Thank you for your cooperation.
Hello,
You can put it in the styles.scss file.
Thank you for specifying the problem again. This seems like a simple override issue. Could you try putting the css rule at the top of the file?
Hello,
You can achieve this by replacing the top navbar and the navbar components by utilizing this feature: https://abp.io/docs/latest/framework/ui/angular/component-replacement
Here are the keys and the components that you need to implement:
import { TopMenuNavbarComponent } from '@volosoft/ngx-lepton-x/layouts';
@Component({
selector: 'app-my-top-navbar',
imports: [TopMenuNavbarComponent],
template: `<lpx-top-menu-navbar />`,
})
export class MyTopNavbar {}
@Component({
selector: 'app-my-navbar',
imports: [],
template: ``,
})
export class MyNavbar {}
You may need this style override
//angular/src/styles.scss
:root .lpx-header-top {
justify-content: space-between;
}
Lastly, you need to replace the related components
import { eThemeLeptonXComponents } from '@volosoft/abp.ng.theme.lepton-x';
import { MyNavbar } from './my-navbar/my-navbar';
import { MyTopNavbar } from './my-top-navbar/my-top-navbar';
//...
export class AppComponent {
private replaceComponent = inject(ReplaceableComponentsService);
constructor() {
this.replaceComponent.add({
component: MyTopNavbar,
key: eThemeLeptonXComponents.TopNavbar,
});
this.replaceComponent.add({
component: MyNavbar,
key: eThemeLeptonXComponents.Navbar,
});
}
}