UNPKG

@postnord/web-components

Version:
120 lines (119 loc) 4.24 kB
/*! * Built with Stencil * By PostNord. */ import { h, Host } from "@stencil/core"; /** * @deprecated This component will be removed in v8. Please use the `pn-tablist` instead. * @see {@link https://portal.postnord.com/web-components/?path=/docs/components-navigation-tablist--docs Use `pn-tablist` instead.} */ export class PnPageNavItem { hostElement; /** The item value. Used by `pn-page-nav` to determine pre-selected item. */ value; /** Pass an href to the items if you want to have links that lead outside of your app. */ href; /** The SVG content of the icon you want. */ icon; /** Event is emitted when you select an item. */ itemselection; select(e) { if (this.value && !this.href) e.preventDefault(); this.itemselection.emit(this.value); } render() { return (h(Host, { key: '43346d6ed6211b3e6c4ee7c6dfd261112028445f' }, h("li", { key: '8a191825d21ae79f3c8bf69381151b8d258a7c64' }, h("a", { key: '3dab24d14cb027916343ae3b1f86ded224907ab6', href: this.href || '#', class: "pn-page-nav-item", onClick: e => this.select(e) }, this.icon && h("pn-icon", { key: 'fa382f49cb1602908dd53af48044826f934679cd', icon: this.icon, color: "white" }), h("slot", { key: '576b22e87a530ac0a8a19eaf8a094937ab227b67' }))))); } static get is() { return "pn-page-nav-item"; } static get originalStyleUrls() { return { "$": ["pn-page-nav-item.scss"] }; } static get styleUrls() { return { "$": ["pn-page-nav-item.css"] }; } static get properties() { return { "value": { "type": "string", "mutable": false, "complexType": { "original": "string", "resolved": "string", "references": {} }, "required": true, "optional": false, "docs": { "tags": [], "text": "The item value. Used by `pn-page-nav` to determine pre-selected item." }, "getter": false, "setter": false, "reflect": false, "attribute": "value" }, "href": { "type": "string", "mutable": false, "complexType": { "original": "string", "resolved": "string", "references": {} }, "required": false, "optional": false, "docs": { "tags": [], "text": "Pass an href to the items if you want to have links that lead outside of your app." }, "getter": false, "setter": false, "reflect": false, "attribute": "href" }, "icon": { "type": "string", "mutable": false, "complexType": { "original": "string", "resolved": "string", "references": {} }, "required": false, "optional": false, "docs": { "tags": [], "text": "The SVG content of the icon you want." }, "getter": false, "setter": false, "reflect": false, "attribute": "icon" } }; } static get events() { return [{ "method": "itemselection", "name": "itemselection", "bubbles": true, "cancelable": true, "composed": true, "docs": { "tags": [], "text": "Event is emitted when you select an item." }, "complexType": { "original": "string", "resolved": "string", "references": {} } }]; } static get elementRef() { return "hostElement"; } }