Hi,
it seems you have missing configuration and wrong audience specified in authserver module
please make following changes.
Make changes while adding authentication in serenderAuthServerModule
Also there is no configuration added in appsetting for configuration["AuthServer:Authority"];
in serenderAuthServerModule
Hello gozdeyildirmaz ,
https://github.com/swimlane/ngx-datatable/issues/1124
Can you please check above link. I am able to reproduce NullInjectorError
with different service files.
By adding service in providers that issue is fixed at my end as follows:-
import { ScrollbarHelper, DimensionsHelper, ColumnChangesService } from '@swimlane/ngx-datatable'
--> imports
providers: [ScrollbarHelper, DimensionsHelper, ColumnChangesService ]
---> added service in providers in app.module.ts
file
Please try this , if you are not able to solve the issue with current approach please let me know or you may share snaps of module files.
Thanks
Hi,
we will check and let you know asap.
Hi,
Can you provide the tenant switching context like after a tenant switch are you reloading the page?
because once you do this.routesService.remove(permissionProhibitedPageIds);
then this code nonLazyRouteItem.invisible = false;
will not work on the items that you have removed.
if you can provide step to reproduce this i can look into it more clearly.
Hi,
first add this <PackageReference Include="Volo.CmsKit.Pro.Public.Web" Version="7.3.1" />
project refernece to your web module and then
you can achieve it by adding [DependsOn(typeof(CmsKitProPublicWebModule))]
to {YourProjectModule}WebModule
see below screenshot
and then you can view them in your admin app without login
Hello kirotech,
Could you please guide us how to reproduce this issue, share some steps to reproduce if possible.
Thank you
Hi,
if you want to share your solution so we can have a look at the issue please share to support@abp.io with mentioning the ticket number.
Hi,
Yes editing also works
see below video
https://aman-waiin.tinytake.com/df/14f12ff/thumbnail?type=attachments&version_no=0&file_version_no=0&thumbnail_size=preview
Hi,
Here is the end result
You can achieve this by doing following changes.
create a custom ** module and a route.module** file
in app-saas-routing.module.ts
const routes: Routes = [
{ path: '', redirectTo: 'teams', pathMatch: 'full' },
{
path: '',
component: RouterOutletComponent,
canActivate: [AuthGuard, PermissionGuard, SaasExtensionsGuard],
children: [
{
path: 'teams',
component: TenantsComponent,
data: {
requiredPolicy: 'Saas.Tenants',
},
},
{
path: 'edition',
component: EditionsComponent,
data: {
requiredPolicy: 'Saas.Editions',
},
},
],
},
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
})
export class AppSaasRoutingModule { }
in app-saas.module.ts
comment aut default saas add routes and you own routes
import { NgModule } from '@angular/core';
import { AppSaasRoutingModule } from './app-saas-routing.module';
import { SharedModule } from '../shared/shared.module';
import { SaasModule, SaasExtensionsGuard } from '@volo/abp.ng.saas';
@NgModule({
declarations: [
],
imports: [
SaasModule,
SharedModule,
AppSaasRoutingModule
],
exports : [SaasModule],
providers : [SaasExtensionsGuard]
})
export class AppSaasModule {
}
in app-routing.module.ts
and modify code in route.provider.ts
import { APP_INITIALIZER } from '@angular/core';
export const APP_ROUTE_PROVIDER = [
{ provide: APP_INITIALIZER, useFactory: configureRoutes, deps: [RoutesService], multi: true },
];
function configureRoutes(routes: RoutesService) {
return () => {
routes.remove(['Saas::Menu:Saas']); // here remove default saas menu
routes.add([
{
path: '/',
name: '::Menu:Home',
iconClass: 'fas fa-home',
order: 1,
layout: eLayoutType.application,
},
{
path: '/dashboard',
name: '::Menu:Dashboard',
iconClass: 'fas fa-chart-line',
order: 2,
layout: eLayoutType.application,
requiredPolicy: 'Penstore.Dashboard.Host || Penstore.Dashboard.Tenant',
},
{
name: 'Saas::Menu:Saas', //add your own menu
iconClass: 'fas fa-chart-line',
order: 3,
layout: eLayoutType.application,
requiredPolicy: "Saas.Tenants || Saas.Editions",
},
{
parentName : 'Saas::Menu:Saas',
name: "Saas::Tenants", //add your own menu
path: '/saas/teams',
iconClass: 'fas fa-chart-line',
order: 1,
layout: eLayoutType.application,
requiredPolicy: "Saas.Tenants",
},
{
parentName : "Saas::Menu:Saas",
name: "Saas::Editions", //add your own menu
path: "/saas/edition",
iconClass: 'fas fa-chart-line',
order: 2,
layout: eLayoutType.application,
requiredPolicy: "Saas.Editions",
}
]);
};
}