dap-design-system
Version:
Official design system for the DÁP (dap.gov.hu)
68 lines (67 loc) • 2.1 kB
JavaScript
import { clsx as m } from "../../node_modules/clsx/dist/clsx.js";
import "../../node_modules/@lit/reactive-element/reactive-element.js";
import "../../node_modules/lit-html/lit-html.js";
import "../../node_modules/lit-element/lit-element.js";
import { property as r } from "../../node_modules/@lit/reactive-element/decorators/property.js";
import { ifDefined as a } from "../../node_modules/lit-html/directives/if-defined.js";
import { html as c } from "../../node_modules/lit-html/static.js";
import { DdsElement as h } from "../../internal/dds-hu-element.js";
import u from "./sidenav-item.scss.js";
import { unsafeCSS as d } from "../../node_modules/@lit/reactive-element/css-tag.js";
var v = Object.defineProperty, i = (n, p, f, y) => {
for (var e = void 0, o = n.length - 1, l; o >= 0; o--)
(l = n[o]) && (e = l(p, f, e) || e);
return e && v(p, f, e), e;
};
const s = class s extends h {
constructor() {
super(...arguments), this.active = !1, this.current = "page", this.spacing = "none", this.size = "xs";
}
render() {
return c`
<li
part="base"
role="listitem"
class=${m(
"sidenav-item",
`sidenav-item--spacing-${this.spacing}`,
`sidenav-item--${this.size}`,
{
"sidenav-item--active": this.active
}
)}>
<a
part="link"
href=${this.href}
class="sidenav-item__link"
aria-current=${a(this.active ? this.current : void 0)}
target=${a(this.href ? "_self" : void 0)}
rel=${a(this.href ? "noreferrer noopener" : void 0)}>
<slot></slot>
<slot name="suffix"></slot>
</a>
</li>
`;
}
};
s.tagName = "dap-ds-sidenav-item", s.styles = d(u);
let t = s;
i([
r()
], t.prototype, "href");
i([
r({ type: Boolean, reflect: !0 })
], t.prototype, "active");
i([
r({ reflect: !0 })
], t.prototype, "current");
i([
r({ reflect: !0 })
], t.prototype, "spacing");
i([
r({ reflect: !0, type: String })
], t.prototype, "size");
export {
t as default
};
//# sourceMappingURL=sidenav-item.component.js.map