UNPKG

@allurereport/web-awesome

Version:

The static files for Allure Awesome Report

31 lines (26 loc) 909 B
import type { RecursiveTree } from "@allurereport/web-components/global"; import type { AwesomeTreeLeaf } from "types"; type Localizer = (data: string, params?: Record<string, unknown>) => string; type Localizers = { tooltip: Localizer; }; export const createLeafLocalizer = (t: Localizers) => (leaf: AwesomeTreeLeaf): AwesomeTreeLeaf => { const tooltips = { transition: t.tooltip(leaf.transition), flaky: leaf.flaky && t.tooltip("flaky"), retries: leaf.retriesCount && t.tooltip("retries", { count: leaf.retriesCount }), }; return { ...leaf, tooltips, }; }; export const createTreeLocalizer = (t: Localizers) => (tree: RecursiveTree): RecursiveTree => ({ ...tree, leaves: tree.leaves.length ? tree.leaves.map(createLeafLocalizer(t)) : tree.leaves, trees: tree.trees.length ? tree.trees.map(createTreeLocalizer(t)) : tree.trees, });