@underpostnet/underpost
Version:
Underpost Platform — end-to-end CI/CD and application-delivery toolchain CLI. Covers bare metal, Kubernetes, K3s, kubeadm, LXD, container/image orchestration, secrets, databases, cron jobs, monitoring, SSH, runners, PWA + Workbox delivery, and release orc
27 lines (26 loc) • 1.03 kB
JavaScript
import { getId, getIsoDate } from './CommonJs.js';
import { Css, renderCssAttr, Themes } from './Css.js';
import { Modal } from './Modal.js';
import { append, prepend, s } from './VanillaJs.js';
class Badge {
static Tokens = {};
static async instance(options = { id: '', type: 'circle-red', classList: '', text: '', style: '' }) {
if (!options.id) options.id = getId(Badge.Tokens, 'badge-');
else options.id = 'badge-' + options.id;
if (options && options.style && !options.style.color) options.style.color = 'white';
if (!options.classList) options.classList = '';
const { id, type } = options;
Badge.Tokens[id] = { ...options };
switch (type) {
case 'circle-red':
options.classList += ' badge-notification-circle-red ';
break;
default:
break;
}
return html`<div class="badge wfm ${options.classList} ${id}" style="${renderCssAttr(options)}">
<div class="badge-text">${options?.text ? options.text : 'B'}</div>
</div>`;
}
}
export { Badge };