Skip to content

Commit ceb8109

Browse files
committed
feat(utilities): TextBgColor directive
1 parent 06373a1 commit ceb8109

File tree

5 files changed

+35
-3
lines changed

5 files changed

+35
-3
lines changed

projects/coreui-angular/src/lib/utilities/public_api.ts

+1
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ export { BorderDirective } from './border.directive';
44
export { RoundedDirective } from './rounded.directive';
55
export { ShadowOnScrollDirective } from './shadow-on-scroll.directive';
66
export { TextColorDirective } from './text-color.directive';
7+
export { TextBgColorDirective } from './text-bg-color.directive';
78
export { UtilitiesModule } from './utilities.module';
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { TextBgColorDirective } from './text-bg-color.directive';
2+
3+
describe('TextBgColorDirective', () => {
4+
it('should create an instance', () => {
5+
const directive = new TextBgColorDirective();
6+
expect(directive).toBeTruthy();
7+
});
8+
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import { Directive, HostBinding, Input } from '@angular/core';
2+
import { Colors } from '../coreui.types';
3+
4+
@Directive({
5+
selector: '[cTextBgColor]',
6+
standalone: true
7+
})
8+
export class TextBgColorDirective {
9+
10+
/**
11+
* Set text-bg-color of element
12+
* @type Colors
13+
*/
14+
@Input('cTextBgColor') textBgColor: Colors = '';
15+
16+
@HostBinding('class')
17+
get hostClasses(): any {
18+
const color = this.textBgColor;
19+
return {
20+
[`text-bg-${color}`]: !!color
21+
};
22+
}
23+
}

projects/coreui-angular/src/lib/utilities/text-color.directive.ts

-1
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,4 @@ export class TextColorDirective {
2121
};
2222
}
2323

24-
constructor() {}
2524
}

projects/coreui-angular/src/lib/utilities/utilities.module.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ import {
66
BorderDirective,
77
RoundedDirective,
88
ShadowOnScrollDirective,
9-
TextColorDirective
9+
TextColorDirective,
10+
TextBgColorDirective,
1011
} from './public_api';
1112

12-
const UTILITY_DIRECTIVES = [AlignDirective, BgColorDirective, BorderDirective, RoundedDirective, ShadowOnScrollDirective, TextColorDirective];
13+
const UTILITY_DIRECTIVES = [AlignDirective, BgColorDirective, BorderDirective, RoundedDirective, ShadowOnScrollDirective, TextColorDirective, TextBgColorDirective];
1314

1415
@NgModule({
1516
imports: [...UTILITY_DIRECTIVES], exports: [...UTILITY_DIRECTIVES]

0 commit comments

Comments
 (0)