/**
* Styled
, - and
- for displaying data
* as a list of key-value pair.
*
* Usage example:
* ```ts
*
*
* Red
*
*
* Large
*
*
* ```
*/
import { LitElement, html, css } from "lit";
import { property } from "lit/decorators.js";
import { classMap } from "lit/directives/class-map.js";
export class DescListItem extends LitElement {
static styles = css`
:host {
display: contents;
}
dt {
color: var(--sl-color-neutral-500);
font-size: var(--sl-font-size-x-small);
line-height: 1rem;
margin: var(--sl-spacing-3x-small) 0;
}
dd {
margin: 0;
padding: 0 0 var(--sl-spacing-2x-small);
color: var(--sl-color-neutral-700);
font-size: var(--sl-font-size-medium);
font-family: var(--font-monostyle-family);
font-variation-settings: var(--font-monostyle-variation);
line-height: 1rem;
}
.item {
display: flex;
justify-content: var(--justify-item, initial);
border-right: var(--border-right, 0px);
}
.content {
width: var(--width-full, initial);
}
`;
@property({ type: String })
label: string = "";
render() {
return html``;
}
}
export class DescList extends LitElement {
static styles = css`
dl {
display: grid;
margin: 0;
}
.vertical {
grid-template-columns: 100%;
gap: 1rem;
--width-full: 100%;
}
.horizontal {
--justify-item: center;
--border-right: 1px solid var(--sl-panel-border-color);
grid-auto-flow: column;
}
/* Although this only applies to .horizontal, apply to any last child
since we can't do complex selectors with ::slotted */
::slotted(*:last-of-type) {
--border-right: 0px;
}
`;
@property({ type: Boolean })
horizontal = false;
render() {
return html`
`;
}
}