
Security Fundamentals
Obfuscation 101: Unmasking the Tricks Behind Malicious Code
Attackers use obfuscation to hide malware in open source packages. Learn how to spot these techniques across npm, PyPI, Maven, and more.
@lucca-front/ng
Advanced tools
Add title
properties in your routes config:
const routes: Routes = [
{
path: '',
data: {
title: 'Parent title',
},
children: [
{
path: ':requestId',
data: {
title: 'Sub route title',
},
},
],
},
];
The service should now be able to collect all title
properties defined for the current url. Each time a new title
is found for a child, it will be translated and prepended, ending with YourAppName - Lucca
.
ex: Sub route title - Parent title - YourAppName - Lucca
For dynamic titles, the prependTitle
method from LuTitleService
enables you to add a custom title.
In a component, you could do the following:
const userName: string = this.userService.getCurrentUser();
this.luTitleService.prependTitle(userName);
You can also replace the first fragment using:
const userName: string = this.userService.getOtherUser();
this.luTitleService.overrideFirstTitlePart(userName);
Both prependTitle
and overrideFirstTitlePart
can also be called using Observable<string>
:
const selectedUser$ = this.userStore.selected$;
this.luTitleService.prependTitle(selectedUser$);
You will need to:
@lucca-front/ng
YourAppNameTranslateService
) that implements the ILuTitleTranslateService
app.module.ts
and import LuTitleModule
LuTitleService
in your app.component.ts
YourAppNameTranslateService
be used in combination with the token LU_TITLE_TRANSLATE_SERVICE
.
This service should implement the ILuTitleTranslateService
interface. It allows you to use any translation service (ngx-translate
, transloco
, ...etc).
You should end up with the following if you are using ngx-translate
:
@Injectable({ providedIn: 'root' })
export class CoreRhTranslateService implements ILuTitleTranslateService {
constructor(private translateService: TranslateService) {}
translate(key: string, args: unknown): string {
return this.translateService.instant(key, args);
}
}
or if you are using transloco
:
@Injectable({ providedIn: 'root' })
export class CoreRhTranslateService implements ILuTitleTranslateService {
constructor(private translateService: TranslocoService) {}
translate(key: string, args: HashMap): string {
return this.translateService.translate(key, args);
}
}
app.module.ts
configImport the LuTitleModule
and provide the service you just created to the token LU_TITLE_TRANSLATE_SERVICE
in the app.module.ts
:
@NgModule({
imports: [
LuTitleModule
],
provide: [
{
provide: LU_TITLE_TRANSLATE_SERVICE,
useExisting: YourAppNameTranslateService
}
]
LuTitleService
In the the app.component.ts
, init the LuTitleService by passing the name of you app:
this.luTitleService.init('**YourAppName**');
FAQs
A library of icons made by the team @Lucca
We found that @lucca-front/ng demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security Fundamentals
Attackers use obfuscation to hide malware in open source packages. Learn how to spot these techniques across npm, PyPI, Maven, and more.
Security News
Join Socket for exclusive networking events, rooftop gatherings, and one-on-one meetings during BSidesSF and RSA 2025 in San Francisco.
Security News
Biome's v2.0 beta introduces custom plugins, domain-specific linting, and type-aware rules while laying groundwork for HTML support and embedded language features in 2025.