import {
ChangeDetectionStrategy,
Component,
inject,
input,
output,
} from '@angular/core'
import { MarketplacePkgBase } from '../../types'
import { CopyService, i18nPipe, LocalizePipe } from '@start9labs/shared'
import { DatePipe } from '@angular/common'
import { MarketplaceItemComponent } from './item.component'
@Component({
selector: 'marketplace-about',
template: `
@if (pkg().s9pks[0]?.[1]?.publishedAt; as published) {
}
@if (pkg().gitHash; as gitHash) {
} @else {
}
{{ 'Description' | i18n }}
`,
styles: `
.box-container {
background-color: rgb(39 39 42);
border-radius: 0.75rem;
padding: 1.25rem 1.75rem;
p {
font-size: 1rem;
line-height: 1.5rem;
margin-bottom: 0.75rem;
pointer-events: none;
}
}
.detail-container {
display: grid;
grid-auto-flow: row;
grid-auto-columns: minmax(0, 1fr);
& > * + * {
border-top-width: 1px;
border-bottom-width: 0;
border-color: rgb(113 113 122);
}
}
.item-pointer:hover {
cursor: pointer;
::ng-deep label {
cursor: pointer;
}
}
.item-copy:hover {
cursor: copy;
::ng-deep label {
cursor: copy;
}
}
.item-padding {
padding: 0.75rem 0.25rem;
}
* {
box-sizing: border-box;
border-width: 0;
border-style: solid;
border-color: rgb(var(--tw-color-gray-200) / 1);
}
`,
changeDetection: ChangeDetectionStrategy.OnPush,
imports: [MarketplaceItemComponent, DatePipe, i18nPipe, LocalizePipe],
})
export class MarketplaceAboutComponent {
readonly copyService = inject(CopyService)
readonly pkg = input.required()
readonly static = output<'license'>()
}