${p.name ?? p.kind ?? 'Pattern'}
${p.element ? html`${p.element}` : nothing}
${p.modality ? html`${p.modality}` : nothing}
${
p.dissociate
? html`${this.t('Dissociate')}`
: nothing
}
${typeof p.tightness === 'number' ? html`${this.t('{{percent}} tight', { percent: formatPercent(this.effectiveLang(), p.tightness, 0) })}` : nothing}
${
ordered.length
? html`
${ordered.map((name) => {
const glyph = planetGlyph(name);
const isApex = Boolean(p.apex) && name === p.apex;
return html`
${glyph ? html`${glyph}` : nothing}${name}${isApex ? html`${this.t('apex')}` : nothing}
`;
})}
`
: nothing
}
${
// The figure, its planets and its tightness are the finding; the
// paragraph is the reading of it. Same split as roxy-natal-chart, which
// renders the same `patterns` shape.
p.interpretation && !this.hideReadings
? html`
${p.interpretation}
`
: nothing
}
`;
}
}
declare global {
interface HTMLElementTagNameMap {
'roxy-aspects-table': RoxyAspectsTable;
}
}