@puzzleitc/puzzle-shell
Version:
The standard design for Puzzle tools
1,187 lines (1,186 loc) • 38.2 kB
JSON
{
"schemaVersion": "1.0.0",
"readme": "",
"modules": [
{
"kind": "javascript-module",
"path": "src/components/Backdrop.ts",
"declarations": [
{
"kind": "class",
"description": "Backdrop component to be appended to body, used in `pzsh-menu`\ncomponent.",
"name": "Backdrop",
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-backdrop",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Backdrop",
"declaration": {
"name": "Backdrop",
"module": "src/components/Backdrop.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-backdrop",
"declaration": {
"name": "Backdrop",
"module": "src/components/Backdrop.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Banner.ts",
"declarations": [
{
"kind": "class",
"description": "Component that may contain the search or the navigation (overlayed\nvia absolute positioning in the pzsh-menu component), part of the\nheader below the topbar.",
"name": "Banner",
"members": [
{
"kind": "field",
"name": "hasNav",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "hasSubnav",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "method",
"name": "handleMenuNavChange",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-banner",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Banner",
"declaration": {
"name": "Banner",
"module": "src/components/Banner.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-banner",
"declaration": {
"name": "Banner",
"module": "src/components/Banner.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Container.ts",
"declarations": [
{
"kind": "class",
"description": "Full height container component that expects to be \"slotted\" with\nheader, content and footer.",
"name": "Container",
"slots": [
{
"description": "Add header, content and footer in this slot.",
"name": ""
}
],
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-container",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Container",
"declaration": {
"name": "Container",
"module": "src/components/Container.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-container",
"declaration": {
"name": "Container",
"module": "src/components/Container.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Footer.ts",
"declarations": [
{
"kind": "class",
"description": "Component for the application's footer.",
"name": "Footer",
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-footer",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Footer",
"declaration": {
"name": "Footer",
"module": "src/components/Footer.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-footer",
"declaration": {
"name": "Footer",
"module": "src/components/Footer.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/FooterLink.ts",
"declarations": [
{
"kind": "class",
"description": "Footer action link.",
"name": "FooterLink",
"slots": [
{
"description": "Slot for the icon and the text",
"name": ""
}
],
"members": [
{
"kind": "field",
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"attribute": "href"
}
],
"attributes": [
{
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"fieldName": "href"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-footer-link",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "FooterLink",
"declaration": {
"name": "FooterLink",
"module": "src/components/FooterLink.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-footer-link",
"declaration": {
"name": "FooterLink",
"module": "src/components/FooterLink.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Hero.ts",
"declarations": [
{
"kind": "class",
"description": "Component that contains the application title, slogan and logo, below the header/banner.",
"name": "Hero",
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-hero",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Hero",
"declaration": {
"name": "Hero",
"module": "src/components/Hero.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-hero",
"declaration": {
"name": "Hero",
"module": "src/components/Hero.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Icon.ts",
"declarations": [
{
"kind": "variable",
"name": "icons",
"type": {
"text": "Record<string, TemplateResult>"
},
"default": "{ // prettier-ignore 'angle-down': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M17 9.17a1 1 0 00-1.41 0L12 12.71 8.46 9.17a1 1 0 00-1.41 0 1 1 0 000 1.42l4.24 4.24a1 1 0 001.42 0L17 10.59a1 1 0 000-1.42z\"/></svg> `, // prettier-ignore 'angle-up': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M17 13.41l-4.29-4.24a1 1 0 00-1.42 0l-4.24 4.24a1 1 0 000 1.42 1 1 0 001.41 0L12 11.29l3.54 3.54a1 1 0 00.7.29 1 1 0 00.71-.29 1 1 0 00.05-1.42z\"/></svg>`, // prettier-ignore bars: html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M3 8h18a1 1 0 000-2H3a1 1 0 000 2zm18 8H3a1 1 0 000 2h18a1 1 0 000-2zm0-5H3a1 1 0 000 2h18a1 1 0 000-2z\"/></svg>`, // prettier-ignore github: html`<svg xmlns=\"http://www.w3.org/2000/svg\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 2.247a10 10 0 00-3.162 19.487c.5.088.687-.212.687-.475 0-.237-.012-1.025-.012-1.862-2.513.462-3.163-.613-3.363-1.175a3.636 3.636 0 00-1.025-1.413c-.35-.187-.85-.65-.013-.662a2.001 2.001 0 011.538 1.025 2.137 2.137 0 002.912.825 2.104 2.104 0 01.638-1.338c-2.225-.25-4.55-1.112-4.55-4.937a3.892 3.892 0 011.025-2.688 3.594 3.594 0 01.1-2.65s.837-.262 2.75 1.025a9.427 9.427 0 015 0c1.912-1.3 2.75-1.025 2.75-1.025a3.593 3.593 0 01.1 2.65 3.869 3.869 0 011.025 2.688c0 3.837-2.338 4.687-4.563 4.937a2.368 2.368 0 01.675 1.85c0 1.338-.012 2.413-.012 2.75 0 .263.187.575.687.475A10.005 10.005 0 0012 2.247z\"/></svg>`, // prettier-ignore gitlab: html`<svg xmlns=\"http://www.w3.org/2000/svg\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M21.94 12.865l-1.066-3.28.001.005v-.005l-2.115-6.51a.833.833 0 00-.799-.57.822.822 0 00-.788.576l-2.007 6.178H8.834L6.824 3.08a.822.822 0 00-.788-.575H6.03a.839.839 0 00-.796.575L3.127 9.584l-.002.006.001-.005-1.069 3.28a1.195 1.195 0 00.435 1.34l9.229 6.705.004.003.012.008-.011-.008.002.001.001.001a.466.466 0 00.045.028l.006.004.004.002.003.001h.002l.005.003.025.01.023.01h.001l.004.002.005.002h.002l.006.002h.003c.011.004.022.006.034.009l.013.003h.002l.005.002.007.001h.007a.467.467 0 00.066.006h.001a.469.469 0 00.067-.005h.007l.007-.002.004-.001h.002l.014-.004.034-.008h.002l.006-.003h.002l.005-.002.004-.001h.001l.025-.011.023-.01.005-.002h.002l.003-.002.004-.002.007-.004a.468.468 0 00.044-.027l.004-.003.005-.003 9.23-6.706a1.195 1.195 0 00.434-1.339zm-3.973-9.18l1.81 5.574h-3.62zm-11.937 0L7.843 9.26h-3.62zm-2.984 9.757a.255.255 0 01-.092-.285l.794-2.438 5.822 7.464zm1.494-3.24h3.61l2.573 7.927zm7.165 10.696l-.006-.005-.011-.01-.02-.018.002.001.002.002a.473.473 0 00.043.037l.002.002zm.293-1.894l-1.514-4.665-1.344-4.138h5.72zm.31 1.88l-.01.008-.002.001-.005.005-.012.009.002-.002a.455.455 0 00.043-.036l.001-.002.002-.002zM15.851 10.2h3.61l-.74.947-5.447 6.98zm5.1 3.241l-6.523 4.74 5.824-7.463.791 2.437a.255.255 0 01-.092.286z\"/></svg>`, // prettier-ignore multiply: html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M13.41 12l6.3-6.29a1 1 0 10-1.42-1.42L12 10.59l-6.29-6.3a1 1 0 00-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 000 1.42 1 1 0 001.42 0l6.29-6.3 6.29 6.3a1 1 0 001.42 0 1 1 0 000-1.42z\"/></svg>`, // prettier-ignore 'plus-circle': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 2a10 10 0 1010 10A10 10 0 0012 2zm0 18a8 8 0 118-8 8 8 0 01-8 8zm4-9h-3V8a1 1 0 00-2 0v3H8a1 1 0 000 2h3v3a1 1 0 002 0v-3h3a1 1 0 000-2z\"/></svg>`, // prettier-ignore 'question-circle': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M11.29 15.29a1.58 1.58 0 00-.12.15.76.76 0 00-.09.18.64.64 0 00-.06.18 1.36 1.36 0 000 .2.84.84 0 00.08.38.9.9 0 00.54.54.94.94 0 00.76 0 .9.9 0 00.54-.54A1 1 0 0013 16a1 1 0 00-.29-.71 1 1 0 00-1.42 0zM12 2a10 10 0 1010 10A10 10 0 0012 2zm0 18a8 8 0 118-8 8 8 0 01-8 8zm0-13a3 3 0 00-2.6 1.5 1 1 0 101.73 1A1 1 0 0112 9a1 1 0 010 2 1 1 0 00-1 1v1a1 1 0 002 0v-.18A3 3 0 0012 7z\"/></svg>`, // prettier-ignore search: html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M21.71 20.29L18 16.61A9 9 0 1016.61 18l3.68 3.68a1 1 0 001.42 0 1 1 0 000-1.39zM11 18a7 7 0 117-7 7 7 0 01-7 7z\"/></svg>`, // prettier-ignore setting: html`<svg xmlns=\"http://www.w3.org/2000/svg\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M19.9 12.66a1 1 0 010-1.32l1.28-1.44a1 1 0 00.12-1.17l-2-3.46a1 1 0 00-1.07-.48l-1.88.38a1 1 0 01-1.15-.66l-.61-1.83a1 1 0 00-.95-.68h-4a1 1 0 00-1 .68l-.56 1.83a1 1 0 01-1.15.66L5 4.79a1 1 0 00-1 .48L2 8.73a1 1 0 00.1 1.17l1.27 1.44a1 1 0 010 1.32L2.1 14.1a1 1 0 00-.1 1.17l2 3.46a1 1 0 001.07.48l1.88-.38a1 1 0 011.15.66l.61 1.83a1 1 0 001 .68h4a1 1 0 00.95-.68l.61-1.83a1 1 0 011.15-.66l1.88.38a1 1 0 001.07-.48l2-3.46a1 1 0 00-.12-1.17zM18.41 14l.8.9-1.28 2.22-1.18-.24a3 3 0 00-3.45 2L12.92 20h-2.56L10 18.86a3 3 0 00-3.45-2l-1.18.24-1.3-2.21.8-.9a3 3 0 000-4l-.8-.9 1.28-2.2 1.18.24a3 3 0 003.45-2L10.36 4h2.56l.38 1.14a3 3 0 003.45 2l1.18-.24 1.28 2.22-.8.9a3 3 0 000 3.98zm-6.77-6a4 4 0 104 4 4 4 0 00-4-4zm0 6a2 2 0 112-2 2 2 0 01-2 2z\"/></svg>`, // prettier-ignore 'sign-out-alt': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12.59 13l-2.3 2.29a1 1 0 000 1.42 1 1 0 001.42 0l4-4a1 1 0 00.21-.33 1 1 0 000-.76 1 1 0 00-.21-.33l-4-4a1 1 0 10-1.42 1.42l2.3 2.29H3a1 1 0 000 2zM12 2a10 10 0 00-9 5.55 1 1 0 001.8.9A8 8 0 1112 20a7.93 7.93 0 01-7.16-4.45 1 1 0 00-1.8.9A10 10 0 1012 2z\"/></svg>`, // prettier-ignore 'sliders-v-alt': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M20 8.18V3a1 1 0 00-2 0v5.18a3 3 0 000 5.64V21a1 1 0 002 0v-7.18a3 3 0 000-5.64zM19 12a1 1 0 111-1 1 1 0 01-1 1zm-6 2.18V3a1 1 0 00-2 0v11.18a3 3 0 000 5.64V21a1 1 0 002 0v-1.18a3 3 0 000-5.64zM12 18a1 1 0 111-1 1 1 0 01-1 1zM6 6.18V3a1 1 0 00-2 0v3.18a3 3 0 000 5.64V21a1 1 0 002 0v-9.18a3 3 0 000-5.64zM5 10a1 1 0 111-1 1 1 0 01-1 1z\"/></svg>`, // prettier-ignore 'user': html`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M15.71 12.71a6 6 0 10-7.42 0 10 10 0 00-6.22 8.18 1 1 0 002 .22 8 8 0 0115.9 0 1 1 0 001 .89h.11a1 1 0 00.88-1.1 10 10 0 00-6.25-8.19zM12 12a4 4 0 114-4 4 4 0 01-4 4z\"/></svg>`, }"
},
{
"kind": "class",
"description": "Component to display built-in icons",
"name": "Icon",
"members": [
{
"kind": "field",
"name": "name",
"type": {
"text": "string"
},
"default": "\"\"",
"attribute": "name"
}
],
"attributes": [
{
"name": "name",
"type": {
"text": "string"
},
"default": "\"\"",
"fieldName": "name"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-icon",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "icons",
"declaration": {
"name": "icons",
"module": "src/components/Icon.ts"
}
},
{
"kind": "js",
"name": "Icon",
"declaration": {
"name": "Icon",
"module": "src/components/Icon.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-icon",
"declaration": {
"name": "Icon",
"module": "src/components/Icon.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Menu.ts",
"declarations": [
{
"kind": "class",
"description": "Responsive menu component that is coupled with the topbar component\n(for mobile menu toggling and actions display on desktop) and the\nbanner component (nav display on desktop) via events.",
"name": "Menu",
"slots": [
{
"description": "Slot for application navigation that is visible in the banner on desktop and moves into the hamburger menu on mobile",
"name": "nav"
},
{
"description": "Slot for menu content that is visible on the page on desktop (typically on the left of the content) and moves into the hamburger menu on mobile",
"name": "items"
},
{
"description": "Slot for application-wide menu actions (like help, logout etc.) that are visible in the topbar on desktop and move into the hamburger menu on mobile",
"name": "actions"
}
],
"members": [
{
"kind": "field",
"name": "open",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "scrollContainerSelector",
"type": {
"text": "string"
},
"default": "\"body\"",
"description": "The selector for the scroll container which will be blocked from\nscrolling while menu is open.",
"attribute": "scrollContainerSelector"
},
{
"kind": "field",
"name": "available",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "hasNav",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "hasSubnav",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "actionsObserver",
"type": {
"text": "MutationObserver"
},
"default": "new MutationObserver((mutations) => mutations.forEach(this.handleActionsChange.bind(this)), )"
},
{
"kind": "method",
"name": "toggleMenu",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "toggleBackdrop"
},
{
"kind": "method",
"name": "handleEvent",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "handleMenuClose",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "handleMenuNavigation",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "getMenuItems",
"return": {
"type": {
"text": "ReadonlyArray<HTMLElement>"
}
},
"description": "Flatten all menu actions & dropdown items to an array"
},
{
"kind": "method",
"name": "handleSlotChange",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "handleActionsChange"
},
{
"kind": "method",
"name": "updateMenuAvailablity"
},
{
"kind": "method",
"name": "hasMenuItems"
},
{
"kind": "method",
"name": "triggerMenuChange",
"parameters": [
{
"name": "available",
"type": {
"text": "boolean"
}
},
{
"name": "open",
"type": {
"text": "boolean"
}
}
],
"description": "Emit an event for the pzsh-topbar component to show/hide the\nhamburger menu button or update its open/closed state."
},
{
"kind": "method",
"name": "updateNavAvailability"
},
{
"kind": "method",
"name": "triggerNavChange",
"parameters": [
{
"name": "hasNav",
"type": {
"text": "boolean"
}
},
{
"name": "hasSubnav",
"type": {
"text": "boolean"
}
}
],
"description": "Emit an event for the pzsh-banner component to preserve spacing\nfor the absolute positioned nav."
}
],
"events": [
{
"name": "pzsh-menu-change",
"type": {
"text": "CustomEvent"
}
},
{
"name": "pzsh-menu-nav-change",
"type": {
"text": "CustomEvent"
}
}
],
"attributes": [
{
"name": "scrollContainerSelector",
"type": {
"text": "string"
},
"default": "\"body\"",
"description": "The selector for the scroll container which will be blocked from\nscrolling while menu is open.",
"fieldName": "scrollContainerSelector"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-menu",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Menu",
"declaration": {
"name": "Menu",
"module": "src/components/Menu.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-menu",
"declaration": {
"name": "Menu",
"module": "src/components/Menu.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/MenuAction.ts",
"declarations": [
{
"kind": "class",
"description": "Menu action with icon and text, will be render in the menu on\nmobile or in the topbar otherwise.",
"name": "MenuAction",
"slots": [
{
"description": "Slot for the icon and the text",
"name": ""
}
],
"members": [
{
"kind": "field",
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"attribute": "href"
},
{
"kind": "method",
"name": "focus",
"parameters": [
{
"name": "options",
"optional": true,
"type": {
"text": "FocusOptions"
}
}
]
}
],
"attributes": [
{
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"fieldName": "href"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-menu-action",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "MenuAction",
"declaration": {
"name": "MenuAction",
"module": "src/components/MenuAction.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-menu-action",
"declaration": {
"name": "MenuAction",
"module": "src/components/MenuAction.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/MenuDivider.ts",
"declarations": [
{
"kind": "class",
"description": "Divider to be used in the pzsh-menu component to separate menu\nactions (currently only effects mobile menu).",
"name": "MenuDivider",
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-menu-divider",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "MenuDivider",
"declaration": {
"name": "MenuDivider",
"module": "src/components/MenuDivider.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-menu-divider",
"declaration": {
"name": "MenuDivider",
"module": "src/components/MenuDivider.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/MenuDropdown.ts",
"declarations": [
{
"kind": "class",
"description": "Menu dropdown with icon and text, will be rendered as a dropdown\nmenu in the topbar on desktop, or with all items visible in the\nhamburger menu on mobile.",
"name": "MenuDropdown",
"slots": [
{
"description": "Slot for the icon and the text of the toggle button",
"name": "toggle"
},
{
"description": "Slot for dropdown menu items",
"name": "items"
}
],
"members": [
{
"kind": "field",
"name": "open",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "method",
"name": "handleEvent",
"parameters": [
{
"name": "e",
"type": {
"text": "MouseEvent | KeyboardEvent"
}
}
]
},
{
"kind": "method",
"name": "handleMenuClose",
"parameters": [
{
"name": "e",
"type": {
"text": "MouseEvent | KeyboardEvent"
}
}
]
},
{
"kind": "method",
"name": "handleMenuNavigation",
"parameters": [
{
"name": "e",
"type": {
"text": "MouseEvent | KeyboardEvent"
}
}
]
},
{
"kind": "method",
"name": "toggleMenu",
"parameters": [
{
"name": "event",
"optional": true,
"type": {
"text": "MouseEvent"
}
}
]
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-menu-dropdown",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "MenuDropdown",
"declaration": {
"name": "MenuDropdown",
"module": "src/components/MenuDropdown.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-menu-dropdown",
"declaration": {
"name": "MenuDropdown",
"module": "src/components/MenuDropdown.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/MenuDropdownItem.ts",
"declarations": [
{
"kind": "class",
"description": "Dropdown menu item with icon and text.",
"name": "MenuDropdownItem",
"slots": [
{
"description": "Slot for the icon and the text",
"name": ""
}
],
"members": [
{
"kind": "field",
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"attribute": "href"
},
{
"kind": "method",
"name": "focus",
"parameters": [
{
"name": "options",
"optional": true,
"type": {
"text": "FocusOptions"
}
}
]
}
],
"attributes": [
{
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"fieldName": "href"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-menu-dropdown-item",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "MenuDropdownItem",
"declaration": {
"name": "MenuDropdownItem",
"module": "src/components/MenuDropdownItem.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-menu-dropdown-item",
"declaration": {
"name": "MenuDropdownItem",
"module": "src/components/MenuDropdownItem.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Nav.ts",
"declarations": [
{
"kind": "class",
"description": "Main navigation of the application.",
"name": "Nav",
"slots": [
{
"description": "May contain pzsh-nav-item and pzsh-subnav components",
"name": ""
}
],
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-nav",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Nav",
"declaration": {
"name": "Nav",
"module": "src/components/Nav.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-nav",
"declaration": {
"name": "Nav",
"module": "src/components/Nav.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/NavItem.ts",
"declarations": [
{
"kind": "class",
"description": "Application navigation item to be used in pzsh-nav and pzsh-subnav\ncomponents.",
"name": "NavItem",
"slots": [
{
"description": "Navigation item label",
"name": ""
}
],
"members": [
{
"kind": "field",
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"attribute": "href"
},
{
"kind": "field",
"name": "active",
"type": {
"text": "boolean"
},
"default": "false",
"attribute": "active"
},
{
"kind": "method",
"name": "focus",
"parameters": [
{
"name": "options",
"optional": true,
"type": {
"text": "FocusOptions"
}
}
]
}
],
"attributes": [
{
"type": {
"text": "boolean"
},
"description": "Whether the item is currently active",
"name": "active",
"default": "false",
"fieldName": "active"
},
{
"name": "href",
"type": {
"text": "string"
},
"default": "\"#\"",
"fieldName": "href"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-nav-item",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "NavItem",
"declaration": {
"name": "NavItem",
"module": "src/components/NavItem.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-nav-item",
"declaration": {
"name": "NavItem",
"module": "src/components/NavItem.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Subnav.ts",
"declarations": [
{
"kind": "class",
"description": "Second level navigation to be use within pzsh-nav.",
"name": "Subnav",
"slots": [
{
"description": "May contain pzsh-nav-item components",
"name": ""
}
],
"members": [],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-subnav",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Subnav",
"declaration": {
"name": "Subnav",
"module": "src/components/Subnav.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-subnav",
"declaration": {
"name": "Subnav",
"module": "src/components/Subnav.ts"
}
}
]
},
{
"kind": "javascript-module",
"path": "src/components/Topbar.ts",
"declarations": [
{
"kind": "class",
"description": "Top application bar that contains the logo and optional\napplication-wide actions that are rendered via the menu\ncomponent. The topbar is coupled with the menu component via\nevents.",
"name": "Topbar",
"slots": [
{
"description": "for the logo SVG graphic",
"name": "Slot"
}
],
"members": [
{
"kind": "field",
"name": "menuAvailable",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "menuOpen",
"type": {
"text": "boolean"
},
"default": "false"
},
{
"kind": "field",
"name": "href",
"type": {
"text": "string"
},
"default": "\"\"",
"attribute": "href"
},
{
"kind": "method",
"name": "handleMenuChange",
"parameters": [
{
"name": "e",
"type": {
"text": "Event"
}
}
]
},
{
"kind": "method",
"name": "toggleMenu"
},
{
"kind": "method",
"name": "renderMenuButton"
},
{
"kind": "method",
"name": "renderLogo"
}
],
"events": [
{
"name": "pzsh-menu-toggle",
"type": {
"text": "CustomEvent"
}
}
],
"attributes": [
{
"name": "href",
"type": {
"text": "string"
},
"default": "\"\"",
"fieldName": "href"
}
],
"superclass": {
"name": "LitElement",
"package": "lit"
},
"tagName": "pzsh-topbar",
"customElement": true
}
],
"exports": [
{
"kind": "js",
"name": "Topbar",
"declaration": {
"name": "Topbar",
"module": "src/components/Topbar.ts"
}
},
{
"kind": "custom-element-definition",
"name": "pzsh-topbar",
"declaration": {
"name": "Topbar",
"module": "src/components/Topbar.ts"
}
}
]
}
]
}