@@ -5,13 +5,14 @@ import { AccountsFilterPipe } from './accounts-filter.pipe';
|
||||
import { ChargesFilterPipe } from './charges-filter.pipe';
|
||||
import { ChargesPenaltyFilterPipe } from './charges-penalty-filter.pipe';
|
||||
import { FindPipe } from './find.pipe';
|
||||
import { UrlToStringPipe } from './url-to-string.pipe';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule
|
||||
],
|
||||
declarations: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe],
|
||||
providers: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe],
|
||||
exports: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe]
|
||||
declarations: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe, UrlToStringPipe],
|
||||
providers: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe, UrlToStringPipe],
|
||||
exports: [StatusLookupPipe, AccountsFilterPipe, ChargesFilterPipe, ChargesPenaltyFilterPipe, FindPipe, UrlToStringPipe]
|
||||
})
|
||||
export class PipesModule { }
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
import { UrlToStringPipe } from './url-to-string.pipe';
|
||||
|
||||
describe('UrlToStringPipe', () => {
|
||||
it('create an instance', () => {
|
||||
const pipe = new UrlToStringPipe();
|
||||
expect(pipe).toBeTruthy();
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,28 @@
|
||||
/** Angular Imports */
|
||||
import { Pipe, PipeTransform } from '@angular/core';
|
||||
|
||||
/**
|
||||
* URL to String pipe.
|
||||
* Transform eg: `self-service/users` :: `Self Service | Users`
|
||||
*/
|
||||
@Pipe({
|
||||
name: 'urlToString'
|
||||
})
|
||||
export class UrlToStringPipe implements PipeTransform {
|
||||
|
||||
transform(url: string): any {
|
||||
const urlSubstrings: string[] = url.slice(1).split('/');
|
||||
const stringRepresentation =
|
||||
urlSubstrings
|
||||
.map((path: string) => {
|
||||
return path.split('-')
|
||||
.map((str: string) => {
|
||||
return str.charAt(0).toUpperCase() + str.slice(1);
|
||||
})
|
||||
.join(' ');
|
||||
})
|
||||
.join(' | ');
|
||||
return stringRepresentation;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user