UNPKG

@redocly/graphql-docs

Version:

Redocly GraphQL docs

2 lines (1 loc) 644 B
import{useActiveSectionId as u}from"@redocly/theme";import{useLocation as l}from"react-router-dom";import{stripTrailingSlash as i}from"../common/utils/paths.js";const S=s=>{const t=l(),e=u(t);return a(s,e,t)},a=(s,t,e)=>s.map(o=>{const r=c(o,t,e),n=m(o,t,e);return{...o,items:a(o.items??[],t,e),active:r&&!n,hasActiveSubItem:n}}),c=(s,t,e)=>{if(!s.link)return!1;const[o,r]=s.link.split("#");return i(decodeURIComponent(e.pathname.toLocaleLowerCase()))===i(decodeURIComponent(o.toLocaleLowerCase()))&&(!r||r.toLocaleLowerCase()===t.toLocaleLowerCase())},m=(s,t,e)=>s.items?.some(o=>c(o,t,e)||m(o,t,e))??!1;export{S as useSidebarItemsWithState};