Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
82 lines
No EOL
2.5 KiB
Text
82 lines
No EOL
2.5 KiB
Text
export class TopbarFeatures {
|
|
/**
|
|
* @param {ReportUIFeatures} reportUIFeatures
|
|
* @param {DOM} dom
|
|
*/
|
|
constructor(reportUIFeatures: ReportUIFeatures, dom: DOM);
|
|
/** @type {LH.Result} */
|
|
lhr: LH.Result;
|
|
_reportUIFeatures: import("./report-ui-features").ReportUIFeatures;
|
|
_dom: import("./dom.js").DOM;
|
|
_dropDownMenu: DropDownMenu;
|
|
_copyAttempt: boolean;
|
|
/** @type {HTMLElement} */
|
|
topbarEl: HTMLElement;
|
|
/** @type {HTMLElement} */
|
|
categoriesEl: HTMLElement;
|
|
/** @type {HTMLElement?} */
|
|
stickyHeaderEl: HTMLElement | null;
|
|
/** @type {HTMLElement} */
|
|
highlightEl: HTMLElement;
|
|
/**
|
|
* Handler for tool button.
|
|
* @param {Event} e
|
|
*/
|
|
onDropDownMenuClick(e: Event): void;
|
|
/**
|
|
* Keyup handler for the document.
|
|
* @param {KeyboardEvent} e
|
|
*/
|
|
onKeyUp(e: KeyboardEvent): void;
|
|
/**
|
|
* Handle copy events.
|
|
* @param {ClipboardEvent} e
|
|
*/
|
|
onCopy(e: ClipboardEvent): void;
|
|
/**
|
|
* Collapses all audit `<details>`.
|
|
* open a `<details>` element.
|
|
*/
|
|
collapseAllDetails(): void;
|
|
/**
|
|
* @param {LH.Result} lhr
|
|
*/
|
|
enable(lhr: LH.Result): void;
|
|
/**
|
|
* Copies the report JSON to the clipboard (if supported by the browser).
|
|
*/
|
|
onCopyButtonClick(): void;
|
|
/**
|
|
* Expands all audit `<details>`.
|
|
* Ideally, a print stylesheet could take care of this, but CSS has no way to
|
|
* open a `<details>` element.
|
|
*/
|
|
expandAllDetails(): void;
|
|
_print(): void;
|
|
/**
|
|
* Resets the state of page before capturing the page for export.
|
|
* When the user opens the exported HTML page, certain UI elements should
|
|
* be in their closed state (not opened) and the templates should be unstamped.
|
|
*/
|
|
resetUIState(): void;
|
|
/**
|
|
* Finds the first scrollable ancestor of `element`. Falls back to the document.
|
|
* @param {Element} element
|
|
* @return {Element | Document}
|
|
*/
|
|
_getScrollParent(element: Element): Element | Document;
|
|
/**
|
|
* Sets up listeners to collapse audit `<details>` when the user closes the
|
|
* print dialog, all `<details>` are collapsed.
|
|
*/
|
|
_setUpCollapseDetailsAfterPrinting(): void;
|
|
_setupStickyHeader(): void;
|
|
/**
|
|
* Toggle visibility and update highlighter position
|
|
*/
|
|
_updateStickyHeader(): void;
|
|
}
|
|
export type DOM = import("./dom.js").DOM;
|
|
export type ReportUIFeatures = import("./report-ui-features").ReportUIFeatures;
|
|
import { DropDownMenu } from './drop-down-menu.js';
|
|
//# sourceMappingURL=topbar-features.d.ts.map |