feat(ticket): add reusable ticket component with actions and styles

This commit is contained in:
2026-07-21 13:37:31 -03:00
parent 8f57af3cf5
commit 54826a7f8a
8 changed files with 321 additions and 137 deletions

View File

@@ -14,7 +14,9 @@
color: #666666;
cursor: pointer;
outline: none;
transition: color 0.15s ease-in-out, transform 0.1s ease-in-out;
transition:
color 0.15s ease-in-out,
transform 0.1s ease-in-out;
border-radius: 4px;
i {
@@ -40,7 +42,7 @@
// Disabled state
&:disabled {
color: #A0A0A0;
color: #a0a0a0;
cursor: not-allowed;
pointer-events: none;
}
@@ -74,3 +76,14 @@
font-size: 23px;
}
}
.icon-btn--download,
.icon-btn--share {
color: #a0a0a0;
i {
width: 15px;
height: 15px;
font-size: 15px;
}
}

View File

@@ -8,14 +8,16 @@ export type IconButtonVariant =
| 'angle-left'
| 'angle-up'
| 'angle-down'
| 'copy';
| 'copy'
| 'download'
| 'share';
@Component({
selector: 'app-icon-button',
imports: [NgClass],
templateUrl: './icon-button.component.html',
styleUrl: './icon-button.component.scss',
changeDetection: ChangeDetectionStrategy.OnPush
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class IconButtonComponent {
readonly variant = input.required<IconButtonVariant>();
@@ -33,7 +35,9 @@ export class IconButtonComponent {
'angle-left': 'fa-solid fa-angle-left',
'angle-up': 'fa-solid fa-angle-up',
'angle-down': 'fa-solid fa-angle-down',
copy: 'fa-solid fa-copy'
copy: 'fa-solid fa-copy',
download: 'fa-solid fa-download',
share: 'fa-solid fa-share-nodes',
};
return classes[this.variant()];
});