Files
medusa-store/www/apps/book/utils/number-sidebar-items.mjs
Shahed Nasser 4fe28f5a95 chore: reorganize docs apps (#7228)
* reorganize docs apps

* add README

* fix directory

* add condition for old docs
2024-05-03 17:36:38 +03:00

25 lines
741 B
JavaScript

/**
*
* @param {import("@/types").SidebarItemType[]} sidebarItems - The items to add numbers to their titles
* @param {number[]} numbering - The current numbering level
* @returns {import("@/types").SidebarItemType[]} The modified sidebar items
*/
export default function numberSidebarItems(sidebarItems, numbering = [1]) {
if (!numbering.length) {
numbering.push(1)
}
sidebarItems.forEach((item) => {
// append current number to the item's title
item.number = `${numbering.join(".")}.`
item.title = `${item.number} ${item.title.trim()}`
if (item.children) {
item.children = numberSidebarItems(item.children, [...numbering, 1])
}
numbering[numbering.length - 1]++
})
return sidebarItems
}