diff --git a/tools/src/app/app.routes.ts b/tools/src/app/app.routes.ts
index e087668..efeffb7 100644
--- a/tools/src/app/app.routes.ts
+++ b/tools/src/app/app.routes.ts
@@ -7,6 +7,7 @@ import { TextToCronComponent } from '../tools/client-side/text-to-cron/text-to-c
import { DdsToPngComponent } from '../tools/client-side/dds-to-png/dds-to-png.component';
import { ImageConverterComponent } from '../tools/server-side/image-converter/image-converter.component';
import { WordCounterComponent } from '../tools/client-side/word-counter/word-counter.component';
+import { ColorPickerComponent } from '../tools/client-side/color-picker/color-picker/color-picker.component';
export const routes: Routes = [
{
@@ -48,6 +49,11 @@ export const routes: Routes = [
path: 'text-counter',
pathMatch: 'full',
component: WordCounterComponent
+ },
+ {
+ path: 'color-picker',
+ pathMatch: 'full',
+ component: ColorPickerComponent
}
];
diff --git a/tools/src/app/header/header.component.ts b/tools/src/app/header/header.component.ts
index cf911cc..8e8af42 100644
--- a/tools/src/app/header/header.component.ts
+++ b/tools/src/app/header/header.component.ts
@@ -53,6 +53,11 @@ export class HeaderComponent implements OnInit {
label: 'Text to Cron Expression',
routerLink: 'text-to-cron',
routerLinkActiveOptions: { exact: true }
+ },
+ {
+ label: 'Color picker',
+ routerLink: 'color-picker',
+ routerLinkActiveOptions: { exact: true }
}
],
diff --git a/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.html b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.html
new file mode 100644
index 0000000..959ac43
--- /dev/null
+++ b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.html
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.scss b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.scss
new file mode 100644
index 0000000..179c313
--- /dev/null
+++ b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.scss
@@ -0,0 +1,18 @@
+.color-picker {
+ display: flex;
+ align-items: center;
+ gap: 10px;
+ }
+
+ .color-picker input[type="color"] {
+ width: 50px;
+ height: 50px;
+ border: none;
+ cursor: pointer;
+ }
+
+ .color-picker input[type="text"] {
+ padding: 5px;
+ font-size: 16px;
+ width: 100px;
+ }
\ No newline at end of file
diff --git a/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.spec.ts b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.spec.ts
new file mode 100644
index 0000000..08836cb
--- /dev/null
+++ b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.spec.ts
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ColorPickerComponent } from './color-picker.component';
+
+describe('ColorPickerComponent', () => {
+ let component: ColorPickerComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ imports: [ColorPickerComponent]
+ })
+ .compileComponents();
+
+ fixture = TestBed.createComponent(ColorPickerComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.ts b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.ts
new file mode 100644
index 0000000..e3735d8
--- /dev/null
+++ b/tools/src/tools/client-side/color-picker/color-picker/color-picker.component.ts
@@ -0,0 +1,26 @@
+import { CommonModule } from '@angular/common';
+import { Component } from '@angular/core';
+import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
+import { ButtonModule } from 'primeng/button';
+import { InputTextModule } from 'primeng/inputtext';
+
+@Component({
+ selector: 'app-color-picker',
+ standalone: true,
+ imports: [
+ CommonModule,
+ FormsModule,
+ InputTextModule,
+ ButtonModule,
+ ReactiveFormsModule
+ ],
+ templateUrl: './color-picker.component.html',
+ styleUrl: './color-picker.component.scss'
+})
+export class ColorPickerComponent {
+ colorControl = new FormControl('#ff0000');
+
+ onColorChange(value: string) {
+ this.colorControl.setValue(value);
+ }
+}