@mintlify/msft-sdk 1.1.7 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/components/content-components/default-components.js +58 -37
  2. package/dist/components/content-components/default-components.js.map +1 -1
  3. package/dist/components/content-components/table/index.js +1 -1
  4. package/dist/components/content-components/tabs/tabs.js +1 -1
  5. package/dist/components/content-components/tabs/tabs.js.map +1 -1
  6. package/dist/components/docsLayout.js +62 -0
  7. package/dist/components/docsLayout.js.map +1 -0
  8. package/dist/components/docsPage.js +133 -0
  9. package/dist/components/docsPage.js.map +1 -0
  10. package/dist/components/nav-tree/dropdown-menu.js +1 -1
  11. package/dist/components/nav-tree/dropdown-menu.js.map +1 -1
  12. package/dist/components/nav-tree/index.js +101 -160
  13. package/dist/components/nav-tree/index.js.map +1 -1
  14. package/dist/components/page-context-menu.js +78 -72
  15. package/dist/components/page-context-menu.js.map +1 -1
  16. package/dist/components/toc/index.js +10 -10
  17. package/dist/components/toc/index.js.map +1 -1
  18. package/dist/index.d.ts +186 -210
  19. package/dist/index.js +36 -113
  20. package/dist/index.js.map +1 -1
  21. package/dist/parser/convert-html-to-mdx.js +7 -6
  22. package/dist/parser/convert-html-to-mdx.js.map +1 -1
  23. package/dist/plugins/sanitize/rehype-unwrap-image-links.js +12 -0
  24. package/dist/plugins/sanitize/rehype-unwrap-image-links.js.map +1 -0
  25. package/dist/styles.css +1 -1
  26. package/package.json +1 -1
  27. package/dist/components/page.js +0 -120
  28. package/dist/components/page.js.map +0 -1
  29. package/dist/plugins/extract-headings.js +0 -28
  30. package/dist/plugins/extract-headings.js.map +0 -1
@@ -1,66 +1,50 @@
1
- import { jsxs as e, jsx as t } from "react/jsx-runtime";
2
- import { useState as k } from "react";
3
- import { useComponents as g } from "../../context/components-context.js";
4
- import { DropdownMenu as v } from "./dropdown-menu.js";
5
- import { cn as h } from "../../utils/cn.js";
1
+ import { jsxs as r, jsx as n } from "react/jsx-runtime";
2
+ import { useState as v } from "react";
3
+ import { useComponents as k } from "../../context/components-context.js";
4
+ import { DropdownMenu as w } from "./dropdown-menu.js";
5
+ import { cn as p } from "../../utils/cn.js";
6
6
  /* empty css */
7
- function C() {
8
- return /* @__PURE__ */ e("div", { className: "mint:ml-auto", children: [
9
- /* @__PURE__ */ t(
10
- "svg",
11
- {
12
- className: "mint:block mint:dark:hidden",
13
- width: "12",
14
- height: "12",
15
- viewBox: "0 0 12 12",
16
- fill: "none",
17
- xmlns: "http://www.w3.org/2000/svg",
18
- children: /* @__PURE__ */ t(
19
- "path",
20
- {
21
- d: "M2.49999 1C1.67157 1 0.999995 1.67157 0.999995 2.5V9.5C0.999995 10.3284 1.67157 11 2.49999 11H9.49996C10.3284 11 10.9999 10.3284 10.9999 9.5V7.26923C10.9999 6.99309 11.2238 6.76923 11.4999 6.76923C11.7761 6.76923 11.9999 6.99309 11.9999 7.26923V9.5C11.9999 10.8807 10.8807 12 9.49996 12H2.49999C1.11928 12 0 10.8807 0 9.5V2.5C0 1.11929 1.11928 0 2.49999 0H4.73075C5.00689 0 5.23074 0.223858 5.23074 0.5C5.23074 0.776142 5.00689 1 4.73075 1H2.49999ZM6.76926 0.5C6.76926 0.223858 6.99311 0 7.26925 0H11.5C11.7761 0 12 0.223858 12 0.5V4.73077C12 5.00691 11.7761 5.23077 11.5 5.23077C11.2239 5.23077 11 5.00691 11 4.73077V1.70711L7.6228 5.08433C7.42754 5.27959 7.11096 5.27959 6.9157 5.08433C6.72044 4.88906 6.72044 4.57248 6.9157 4.37722L10.2929 1H7.26925C6.99311 1 6.76926 0.776142 6.76926 0.5Z",
22
- fill: "#707070"
23
- }
24
- )
25
- }
26
- ),
27
- /* @__PURE__ */ t(
28
- "svg",
29
- {
30
- className: "mint:hidden mint:dark:block",
31
- width: "12",
32
- height: "12",
33
- viewBox: "0 0 12 12",
34
- fill: "none",
35
- xmlns: "http://www.w3.org/2000/svg",
36
- children: /* @__PURE__ */ t(
37
- "path",
38
- {
39
- d: "M2.49999 1C1.67157 1 0.999995 1.67157 0.999995 2.5V9.5C0.999995 10.3284 1.67157 11 2.49999 11H9.49996C10.3284 11 10.9999 10.3284 10.9999 9.5V7.26923C10.9999 6.99309 11.2238 6.76923 11.4999 6.76923C11.7761 6.76923 11.9999 6.99309 11.9999 7.26923V9.5C11.9999 10.8807 10.8807 12 9.49996 12H2.49999C1.11928 12 0 10.8807 0 9.5V2.5C0 1.11929 1.11928 0 2.49999 0H4.73075C5.00689 0 5.23074 0.223858 5.23074 0.5C5.23074 0.776142 5.00689 1 4.73075 1H2.49999ZM6.76926 0.5C6.76926 0.223858 6.99311 0 7.26925 0H11.5C11.7761 0 12 0.223858 12 0.5V4.73077C12 5.00691 11.7761 5.23077 11.5 5.23077C11.2239 5.23077 11 5.00691 11 4.73077V1.70711L7.6228 5.08433C7.42754 5.27959 7.11096 5.27959 6.9157 5.08433C6.72044 4.88906 6.72044 4.57248 6.9157 4.37722L10.2929 1H7.26925C6.99311 1 6.76926 0.776142 6.76926 0.5Z",
40
- fill: "#999999"
41
- }
42
- )
43
- }
44
- )
45
- ] });
7
+ function g({ isExpanded: t }) {
8
+ return /* @__PURE__ */ n(
9
+ "svg",
10
+ {
11
+ className: p(
12
+ "mint:w-[16px] mint:h-[16px] mint:shrink-0 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]",
13
+ t ? "mint:rotate-90" : "mint:rotate-0"
14
+ ),
15
+ fill: "none",
16
+ stroke: "currentColor",
17
+ viewBox: "0 0 24 24",
18
+ "aria-hidden": "true",
19
+ children: /* @__PURE__ */ n(
20
+ "path",
21
+ {
22
+ strokeLinecap: "round",
23
+ strokeLinejoin: "round",
24
+ strokeWidth: 2,
25
+ d: "M9 5l7 7-7 7"
26
+ }
27
+ )
28
+ }
29
+ );
46
30
  }
47
- function x({ item: n, activeId: l, level: m = 0 }) {
48
- const b = m === 0 ? !0 : n.expanded ?? !1, [i, f] = k(b), { LinkComponent: c } = g(), o = n.children && n.children.length > 0, u = o && !n.href, r = n.href && l === n.href, s = n.icon;
49
- if (u && m === 0)
50
- return /* @__PURE__ */ e(
31
+ function u({ item: t, activeId: l, level: m = 0 }) {
32
+ const f = m === 0 ? !0 : t.expanded ?? !1, [i, b] = v(f), { LinkComponent: c } = k(), o = t.children && t.children.length > 0, h = o && !t.href, e = t.href && l === t.href, s = t.icon;
33
+ if (h && m === 0)
34
+ return /* @__PURE__ */ r(
51
35
  "div",
52
36
  {
53
37
  id: "nav-group",
54
38
  className: "mint:mb-6",
55
39
  role: "group",
56
- "aria-label": n.toc_title,
40
+ "aria-label": t.toc_title,
57
41
  children: [
58
- /* @__PURE__ */ e("div", { className: "mint:text-sm mint:font-semibold mint:text-[#141414] mint:dark:text-white mint:mb-3 mint:flex mint:items-start mint:gap-2 mint:pl-3", children: [
59
- s && /* @__PURE__ */ t(s, { className: "mint:w-5 mint:h-5", "aria-hidden": "true" }),
60
- /* @__PURE__ */ t("span", { children: n.toc_title })
42
+ /* @__PURE__ */ r("div", { className: "mint:text-sm mint:font-semibold mint:text-[#141414] mint:dark:text-white mint:mb-3 mint:flex mint:items-start mint:gap-2 mint:pl-3", children: [
43
+ s && /* @__PURE__ */ n(s, { className: "mint:w-5 mint:h-5", "aria-hidden": "true" }),
44
+ /* @__PURE__ */ n("span", { children: t.toc_title })
61
45
  ] }),
62
- o && n.children && /* @__PURE__ */ t("ul", { className: "mint:flex mint:flex-col mint:gap-1", role: "list", children: n.children.map((a, d) => /* @__PURE__ */ t(
63
- x,
46
+ o && t.children && /* @__PURE__ */ n("ul", { className: "mint:flex mint:flex-col mint:gap-1", role: "list", children: t.children.map((a, d) => /* @__PURE__ */ n(
47
+ u,
64
48
  {
65
49
  item: a,
66
50
  activeId: l,
@@ -71,50 +55,29 @@ function x({ item: n, activeId: l, level: m = 0 }) {
71
55
  ]
72
56
  }
73
57
  );
74
- if (u && m > 0)
75
- return /* @__PURE__ */ e("li", { className: "mint:list-none", children: [
76
- /* @__PURE__ */ e(
58
+ if (h && m > 0)
59
+ return /* @__PURE__ */ r("li", { className: "mint:list-none", children: [
60
+ /* @__PURE__ */ r(
77
61
  "button",
78
62
  {
79
63
  id: "nav-group-toggle",
80
- onClick: () => f(!i),
64
+ onClick: () => b(!i),
81
65
  "aria-expanded": i,
82
- "aria-label": `${i ? "Collapse" : "Expand"} ${n.toc_title} section`,
83
- className: "mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:py-2 mint:px-3 mint:text-sm mint:rounded-lg mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
66
+ "aria-label": `${i ? "Collapse" : "Expand"} ${t.toc_title} section`,
67
+ className: "mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:gap-2 mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-lg mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
84
68
  children: [
85
- /* @__PURE__ */ t("span", { children: n.toc_title }),
86
- /* @__PURE__ */ t(
87
- "svg",
88
- {
89
- className: h(
90
- "mint:w-4 mint:h-4 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]",
91
- i ? "mint:rotate-90" : "mint:rotate-0"
92
- ),
93
- fill: "none",
94
- stroke: "currentColor",
95
- viewBox: "0 0 24 24",
96
- "aria-hidden": "true",
97
- children: /* @__PURE__ */ t(
98
- "path",
99
- {
100
- strokeLinecap: "round",
101
- strokeLinejoin: "round",
102
- strokeWidth: 2,
103
- d: "M9 5l7 7-7 7"
104
- }
105
- )
106
- }
107
- )
69
+ /* @__PURE__ */ n("span", { className: "mint:flex-1 mint:min-w-0", children: t.toc_title }),
70
+ /* @__PURE__ */ n(g, { isExpanded: i })
108
71
  ]
109
72
  }
110
73
  ),
111
- o && i && n.children && /* @__PURE__ */ t(
74
+ o && i && t.children && /* @__PURE__ */ n(
112
75
  "ul",
113
76
  {
114
77
  className: "mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3",
115
78
  role: "group",
116
- children: n.children.map((a, d) => /* @__PURE__ */ t(
117
- x,
79
+ children: t.children.map((a, d) => /* @__PURE__ */ n(
80
+ u,
118
81
  {
119
82
  item: a,
120
83
  activeId: l,
@@ -125,53 +88,32 @@ function x({ item: n, activeId: l, level: m = 0 }) {
125
88
  }
126
89
  )
127
90
  ] });
128
- const p = c || "a";
129
- return o ? /* @__PURE__ */ e("li", { className: "mint:list-none", children: [
130
- /* @__PURE__ */ e(
91
+ const x = c || "a";
92
+ return o ? /* @__PURE__ */ r("li", { className: "mint:list-none", children: [
93
+ /* @__PURE__ */ r(
131
94
  "button",
132
95
  {
133
96
  id: "nav-item-toggle",
134
- onClick: () => f(!i),
97
+ onClick: () => b(!i),
135
98
  "aria-expanded": i,
136
- "aria-label": `${i ? "Collapse" : "Expand"} ${n.toc_title} section`,
137
- className: h(
138
- "mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:py-2 mint:px-3 mint:text-sm mint:rounded-xl mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
139
- r && "mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:font-medium"
99
+ "aria-label": `${i ? "Collapse" : "Expand"} ${t.toc_title} section`,
100
+ className: p(
101
+ "mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:gap-2 mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-xl mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
102
+ e && "mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9]"
140
103
  ),
141
104
  children: [
142
- /* @__PURE__ */ t("span", { children: n.toc_title }),
143
- /* @__PURE__ */ t(
144
- "svg",
145
- {
146
- className: h(
147
- "mint:w-4 mint:h-4 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]",
148
- i ? "mint:rotate-90" : "mint:rotate-0"
149
- ),
150
- fill: "none",
151
- stroke: "currentColor",
152
- viewBox: "0 0 24 24",
153
- "aria-hidden": "true",
154
- children: /* @__PURE__ */ t(
155
- "path",
156
- {
157
- strokeLinecap: "round",
158
- strokeLinejoin: "round",
159
- strokeWidth: 2,
160
- d: "M9 5l7 7-7 7"
161
- }
162
- )
163
- }
164
- )
105
+ /* @__PURE__ */ n("span", { className: "mint:flex-1 mint:min-w-0", children: t.toc_title }),
106
+ /* @__PURE__ */ n(g, { isExpanded: i })
165
107
  ]
166
108
  }
167
109
  ),
168
- i && n.children && /* @__PURE__ */ t(
110
+ i && t.children && /* @__PURE__ */ n(
169
111
  "ul",
170
112
  {
171
113
  className: "mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3",
172
114
  role: "group",
173
- children: n.children.map((a, d) => /* @__PURE__ */ t(
174
- x,
115
+ children: t.children.map((a, d) => /* @__PURE__ */ n(
116
+ u,
175
117
  {
176
118
  item: a,
177
119
  activeId: l,
@@ -181,89 +123,88 @@ function x({ item: n, activeId: l, level: m = 0 }) {
181
123
  ))
182
124
  }
183
125
  )
184
- ] }) : /* @__PURE__ */ t("li", { className: "mint:list-none", children: /* @__PURE__ */ t(
185
- p,
126
+ ] }) : /* @__PURE__ */ n("li", { className: "mint:list-none", children: /* @__PURE__ */ n(
127
+ x,
186
128
  {
187
129
  id: "nav-item",
188
- href: n.href,
189
- "aria-current": r ? "page" : void 0,
190
- className: h(
191
- "mint:relative mint:block mint:py-2 mint:px-3 mint:text-sm mint:rounded-xl mint:transition-all mint:duration-150 mint:no-underline mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
192
- r && "mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:font-medium"
130
+ href: t.href,
131
+ "aria-current": e ? "page" : void 0,
132
+ className: p(
133
+ "mint:relative mint:block mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-xl mint:transition-all mint:duration-150 mint:no-underline mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2",
134
+ e && "mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9]"
193
135
  ),
194
- children: n.toc_title
136
+ children: t.toc_title
195
137
  }
196
138
  ) });
197
139
  }
198
- function _({
199
- navTree: n,
140
+ function j({
141
+ navTree: t,
200
142
  activeId: l,
201
143
  className: m = "",
202
- dropdown: b,
144
+ dropdown: f,
203
145
  activeHref: i,
204
- theme: f,
146
+ theme: b,
205
147
  bottomLinks: c
206
148
  }) {
207
- const { LinkComponent: o } = g();
208
- if (!n || n.items.length === 0)
149
+ const { LinkComponent: o } = k();
150
+ if (!t || t.items.length === 0)
209
151
  return null;
210
- const u = o || "a";
211
- return /* @__PURE__ */ e(
152
+ const h = o || "a";
153
+ return /* @__PURE__ */ r(
212
154
  "nav",
213
155
  {
214
156
  id: "nav-tree",
215
- className: h(
157
+ className: p(
216
158
  "mint:flex mint:flex-col mint:gap-2 mint:h-full mint:min-h-0",
217
159
  m,
218
- f === "dark" && "dark"
160
+ b === "dark" && "dark"
219
161
  ),
220
162
  "aria-label": "Documentation navigation",
221
163
  children: [
222
- /* @__PURE__ */ e(
164
+ /* @__PURE__ */ r(
223
165
  "div",
224
166
  {
225
167
  id: "nav-tree-content",
226
- className: "mint:flex-1 mint:overflow-y-auto mint:overflow-x-hidden mint:min-h-0 [scrollbar-gutter:stable] mint:pr-4 [scrollbar-width:thin] [scrollbar-color:rgba(0,0,0,0.2)_transparent] dark:[scrollbar-color:rgba(255,255,255,0.2)_transparent] mint:[&::-webkit-scrollbar]:w-1 mint:[&::-webkit-scrollbar-track]:bg-transparent mint:[&::-webkit-scrollbar-thumb]:bg-black/20 mint:dark:[&::-webkit-scrollbar-thumb]:bg-white/20 mint:[&::-webkit-scrollbar-thumb]:rounded mint:[&::-webkit-scrollbar-thumb:hover]:bg-black/30 mint:dark:[&::-webkit-scrollbar-thumb:hover]:bg-white/30",
168
+ className: "mint:flex-1 mint:overflow-y-auto mint:overflow-x-hidden mint:min-h-0 [scrollbar-gutter:stable] [scrollbar-width:thin] [scrollbar-color:rgba(0,0,0,0.2)_transparent] dark:[scrollbar-color:rgba(255,255,255,0.2)_transparent] mint:[&::-webkit-scrollbar]:w-1 mint:[&::-webkit-scrollbar-track]:bg-transparent mint:[&::-webkit-scrollbar-thumb]:bg-black/20 mint:dark:[&::-webkit-scrollbar-thumb]:bg-white/20 mint:[&::-webkit-scrollbar-thumb]:rounded mint:[&::-webkit-scrollbar-thumb:hover]:bg-black/30 mint:dark:[&::-webkit-scrollbar-thumb:hover]:bg-white/30",
227
169
  children: [
228
- b && /* @__PURE__ */ t(
229
- v,
170
+ f && /* @__PURE__ */ n(
171
+ w,
230
172
  {
231
- dropdown: b,
173
+ dropdown: f,
232
174
  activeHref: i,
233
175
  className: "mint:mb-6"
234
176
  }
235
177
  ),
236
- n.items.map((r, s) => /* @__PURE__ */ t(
237
- x,
178
+ t.items.map((e, s) => /* @__PURE__ */ n(
179
+ u,
238
180
  {
239
- item: r,
181
+ item: e,
240
182
  activeId: l
241
183
  },
242
- `${r.href}-${s}`
184
+ `${e.href}-${s}`
243
185
  ))
244
186
  ]
245
187
  }
246
188
  ),
247
- c && c.length > 0 && /* @__PURE__ */ e(
189
+ c && c.length > 0 && /* @__PURE__ */ r(
248
190
  "div",
249
191
  {
250
192
  id: "nav-tree-bottom-links",
251
193
  className: "mint:shrink-0 mint:w-full mint:bg-[#f0f0f0] mint:dark:bg-[#0f0f0f] mint:mt-auto",
252
194
  children: [
253
- /* @__PURE__ */ t("div", { className: "mint:h-px mint:w-full mint:bg-[#d1d1d1] mint:dark:bg-[#666666] mint:mb-3" }),
254
- /* @__PURE__ */ t("div", { className: "mint:flex mint:flex-col mint:gap-3 mint:p-3", children: c.map((r, s) => {
255
- const p = r.icon;
256
- return /* @__PURE__ */ e(
257
- u,
195
+ /* @__PURE__ */ n("div", { className: "mint:h-px mint:w-full mint:bg-[#d1d1d1] mint:dark:bg-[#666666] mint:mb-3" }),
196
+ /* @__PURE__ */ n("div", { className: "mint:flex mint:flex-col mint:gap-3 mint:p-3", children: c.map((e, s) => {
197
+ const x = e.icon;
198
+ return /* @__PURE__ */ r(
199
+ h,
258
200
  {
259
- href: r.href,
201
+ href: e.href,
260
202
  target: "_blank",
261
203
  rel: "noopener noreferrer",
262
- className: "mint:flex mint:items-center mint:gap-2 mint:text-sm mint:no-underline mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:text-[#141414] mint:dark:hover:text-[#e5e7eb]",
204
+ className: "mint:flex mint:items-center mint:gap-2 mint:text-sm mint:no-underline mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:text-[#141414] mint:dark:hover:text-[#e5e7eb]",
263
205
  children: [
264
- /* @__PURE__ */ t(p, { className: "mint:w-5 mint:h-5 mint:shrink-0" }),
265
- /* @__PURE__ */ t("span", { children: r.label }),
266
- /* @__PURE__ */ t(C, {})
206
+ /* @__PURE__ */ n(x, { className: "mint:w-5 mint:h-5 mint:shrink-0" }),
207
+ /* @__PURE__ */ n("span", { children: e.label })
267
208
  ]
268
209
  },
269
210
  s
@@ -277,7 +218,7 @@ function _({
277
218
  );
278
219
  }
279
220
  export {
280
- v as DropdownMenu,
281
- _ as NavTree
221
+ w as DropdownMenu,
222
+ j as NavTree
282
223
  };
283
224
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/nav-tree/index.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport type { NavItem, NavTreeData } from \"../../types\";\nimport { useComponents } from \"../../context/components-context\";\nimport { DropdownConfig, DropdownMenu } from \"./dropdown-menu\";\nimport { cn } from \"../../utils/cn\";\nexport { DropdownMenu } from \"./dropdown-menu\";\nexport type { DropdownConfig, DropdownItem } from \"./dropdown-menu\";\nexport { MobileNavTree } from \"./mobile-nav\";\nexport type { MobileNavTreeProps } from \"./mobile-nav\";\nimport \"../../styles.css\";\n\nexport interface BottomLinkConfig {\n href: string;\n label: string;\n icon: React.ComponentType<{ className?: string }>;\n}\n\ninterface NavTreeProps {\n navTree: NavTreeData;\n activeId?: string;\n className?: string;\n dropdown?: DropdownConfig;\n activeHref?: string;\n theme?: \"light\" | \"dark\" | \"system\";\n bottomLinks?: BottomLinkConfig[];\n}\n\ninterface TreeItemProps {\n item: NavItem;\n activeId?: string;\n level?: number;\n}\n\nfunction ExternalIcon() {\n return (\n <div className=\"mint:ml-auto\">\n <svg\n className=\"mint:block mint:dark:hidden\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M2.49999 1C1.67157 1 0.999995 1.67157 0.999995 2.5V9.5C0.999995 10.3284 1.67157 11 2.49999 11H9.49996C10.3284 11 10.9999 10.3284 10.9999 9.5V7.26923C10.9999 6.99309 11.2238 6.76923 11.4999 6.76923C11.7761 6.76923 11.9999 6.99309 11.9999 7.26923V9.5C11.9999 10.8807 10.8807 12 9.49996 12H2.49999C1.11928 12 0 10.8807 0 9.5V2.5C0 1.11929 1.11928 0 2.49999 0H4.73075C5.00689 0 5.23074 0.223858 5.23074 0.5C5.23074 0.776142 5.00689 1 4.73075 1H2.49999ZM6.76926 0.5C6.76926 0.223858 6.99311 0 7.26925 0H11.5C11.7761 0 12 0.223858 12 0.5V4.73077C12 5.00691 11.7761 5.23077 11.5 5.23077C11.2239 5.23077 11 5.00691 11 4.73077V1.70711L7.6228 5.08433C7.42754 5.27959 7.11096 5.27959 6.9157 5.08433C6.72044 4.88906 6.72044 4.57248 6.9157 4.37722L10.2929 1H7.26925C6.99311 1 6.76926 0.776142 6.76926 0.5Z\"\n fill=\"#707070\"\n />\n </svg>\n <svg\n className=\"mint:hidden mint:dark:block\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 12 12\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M2.49999 1C1.67157 1 0.999995 1.67157 0.999995 2.5V9.5C0.999995 10.3284 1.67157 11 2.49999 11H9.49996C10.3284 11 10.9999 10.3284 10.9999 9.5V7.26923C10.9999 6.99309 11.2238 6.76923 11.4999 6.76923C11.7761 6.76923 11.9999 6.99309 11.9999 7.26923V9.5C11.9999 10.8807 10.8807 12 9.49996 12H2.49999C1.11928 12 0 10.8807 0 9.5V2.5C0 1.11929 1.11928 0 2.49999 0H4.73075C5.00689 0 5.23074 0.223858 5.23074 0.5C5.23074 0.776142 5.00689 1 4.73075 1H2.49999ZM6.76926 0.5C6.76926 0.223858 6.99311 0 7.26925 0H11.5C11.7761 0 12 0.223858 12 0.5V4.73077C12 5.00691 11.7761 5.23077 11.5 5.23077C11.2239 5.23077 11 5.00691 11 4.73077V1.70711L7.6228 5.08433C7.42754 5.27959 7.11096 5.27959 6.9157 5.08433C6.72044 4.88906 6.72044 4.57248 6.9157 4.37722L10.2929 1H7.26925C6.99311 1 6.76926 0.776142 6.76926 0.5Z\"\n fill=\"#999999\"\n />\n </svg>\n </div>\n );\n}\n\nfunction TreeItemComponent({ item, activeId, level = 0 }: TreeItemProps) {\n const defaultExpanded = level === 0 ? true : item.expanded ?? false;\n const [isExpanded, setIsExpanded] = useState(defaultExpanded);\n const { LinkComponent } = useComponents();\n const hasChildren = item.children && item.children.length > 0;\n const isGroup = hasChildren && !item.href;\n const isActive = item.href && activeId === item.href;\n const Icon = item.icon;\n\n if (isGroup && level === 0) {\n return (\n <div\n id=\"nav-group\"\n className=\"mint:mb-6\"\n role=\"group\"\n aria-label={item.toc_title}\n >\n <div className=\"mint:text-sm mint:font-semibold mint:text-[#141414] mint:dark:text-white mint:mb-3 mint:flex mint:items-start mint:gap-2 mint:pl-3\">\n {Icon && <Icon className=\"mint:w-5 mint:h-5\" aria-hidden=\"true\" />}\n <span>{item.toc_title}</span>\n </div>\n {hasChildren && item.children && (\n <ul className=\"mint:flex mint:flex-col mint:gap-1\" role=\"list\">\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </div>\n );\n }\n\n if (isGroup && level > 0) {\n return (\n <li className=\"mint:list-none\">\n <button\n id=\"nav-group-toggle\"\n onClick={() => setIsExpanded(!isExpanded)}\n aria-expanded={isExpanded}\n aria-label={`${isExpanded ? \"Collapse\" : \"Expand\"} ${\n item.toc_title\n } section`}\n className=\"mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:py-2 mint:px-3 mint:text-sm mint:rounded-lg mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\"\n >\n <span>{item.toc_title}</span>\n <svg\n className={cn(\n \"mint:w-4 mint:h-4 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]\",\n isExpanded ? \"mint:rotate-90\" : \"mint:rotate-0\"\n )}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M9 5l7 7-7 7\"\n />\n </svg>\n </button>\n {hasChildren && isExpanded && item.children && (\n <ul\n className=\"mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3\"\n role=\"group\"\n >\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </li>\n );\n }\n\n const LinkElement = LinkComponent || \"a\";\n\n if (hasChildren) {\n return (\n <li className=\"mint:list-none\">\n <button\n id=\"nav-item-toggle\"\n onClick={() => setIsExpanded(!isExpanded)}\n aria-expanded={isExpanded}\n aria-label={`${isExpanded ? \"Collapse\" : \"Expand\"} ${\n item.toc_title\n } section`}\n className={cn(\n \"mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:py-2 mint:px-3 mint:text-sm mint:rounded-xl mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\",\n isActive &&\n \"mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:font-medium\"\n )}\n >\n <span>{item.toc_title}</span>\n <svg\n className={cn(\n \"mint:w-4 mint:h-4 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]\",\n isExpanded ? \"mint:rotate-90\" : \"mint:rotate-0\"\n )}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M9 5l7 7-7 7\"\n />\n </svg>\n </button>\n {isExpanded && item.children && (\n <ul\n className=\"mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3\"\n role=\"group\"\n >\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </li>\n );\n }\n\n return (\n <li className=\"mint:list-none\">\n <LinkElement\n id=\"nav-item\"\n href={item.href}\n aria-current={isActive ? \"page\" : undefined}\n className={cn(\n \"mint:relative mint:block mint:py-2 mint:px-3 mint:text-sm mint:rounded-xl mint:transition-all mint:duration-150 mint:no-underline mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\",\n isActive &&\n \"mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9] mint:font-medium\"\n )}\n >\n {item.toc_title}\n </LinkElement>\n </li>\n );\n}\n\nexport function NavTree({\n navTree,\n activeId,\n className = \"\",\n dropdown,\n activeHref,\n theme,\n bottomLinks,\n}: NavTreeProps) {\n const { LinkComponent } = useComponents();\n\n if (!navTree || navTree.items.length === 0) {\n return null;\n }\n\n const LinkElement = LinkComponent || \"a\";\n\n return (\n <nav\n id=\"nav-tree\"\n className={cn(\n \"mint:flex mint:flex-col mint:gap-2 mint:h-full mint:min-h-0\",\n className,\n theme === \"dark\" && \"dark\"\n )}\n aria-label=\"Documentation navigation\"\n >\n <div\n id=\"nav-tree-content\"\n className=\"mint:flex-1 mint:overflow-y-auto mint:overflow-x-hidden mint:min-h-0 [scrollbar-gutter:stable] mint:pr-4 [scrollbar-width:thin] [scrollbar-color:rgba(0,0,0,0.2)_transparent] dark:[scrollbar-color:rgba(255,255,255,0.2)_transparent] mint:[&::-webkit-scrollbar]:w-1 mint:[&::-webkit-scrollbar-track]:bg-transparent mint:[&::-webkit-scrollbar-thumb]:bg-black/20 mint:dark:[&::-webkit-scrollbar-thumb]:bg-white/20 mint:[&::-webkit-scrollbar-thumb]:rounded mint:[&::-webkit-scrollbar-thumb:hover]:bg-black/30 mint:dark:[&::-webkit-scrollbar-thumb:hover]:bg-white/30\"\n >\n {dropdown && (\n <DropdownMenu\n dropdown={dropdown}\n activeHref={activeHref}\n className=\"mint:mb-6\"\n />\n )}\n {navTree.items.map((item, index) => (\n <TreeItemComponent\n key={`${item.href}-${index}`}\n item={item}\n activeId={activeId}\n />\n ))}\n </div>\n {bottomLinks && bottomLinks.length > 0 && (\n <div\n id=\"nav-tree-bottom-links\"\n className=\"mint:shrink-0 mint:w-full mint:bg-[#f0f0f0] mint:dark:bg-[#0f0f0f] mint:mt-auto\"\n >\n <div className=\"mint:h-px mint:w-full mint:bg-[#d1d1d1] mint:dark:bg-[#666666] mint:mb-3\"></div>\n <div className=\"mint:flex mint:flex-col mint:gap-3 mint:p-3\">\n {bottomLinks.map((link, index) => {\n const Icon = link.icon;\n return (\n <LinkElement\n key={index}\n href={link.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"mint:flex mint:items-center mint:gap-2 mint:text-sm mint:no-underline mint:text-[#4b5563] mint:dark:text-[#9ca3af] mint:hover:text-[#141414] mint:dark:hover:text-[#e5e7eb]\"\n >\n <Icon className=\"mint:w-5 mint:h-5 mint:shrink-0\" />\n <span>{link.label}</span>\n <ExternalIcon />\n </LinkElement>\n );\n })}\n </div>\n </div>\n )}\n </nav>\n );\n}\n"],"names":["ExternalIcon","jsxs","jsx","TreeItemComponent","item","activeId","level","defaultExpanded","isExpanded","setIsExpanded","useState","LinkComponent","useComponents","hasChildren","isGroup","isActive","Icon","child","index","cn","LinkElement","NavTree","navTree","className","dropdown","activeHref","theme","bottomLinks","DropdownMenu","link"],"mappings":";;;;;;AAiCA,SAASA,IAAe;AACtB,SACE,gBAAAC,EAAC,OAAA,EAAI,WAAU,gBACb,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAM;AAAA,QACN,QAAO;AAAA,QACP,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,OAAM;AAAA,QAEN,UAAA,gBAAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,GAAE;AAAA,YACF,MAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MACP;AAAA,IAAA;AAAA,IAEF,gBAAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAM;AAAA,QACN,QAAO;AAAA,QACP,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,OAAM;AAAA,QAEN,UAAA,gBAAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,GAAE;AAAA,YACF,MAAK;AAAA,UAAA;AAAA,QAAA;AAAA,MACP;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;AAEA,SAASC,EAAkB,EAAE,MAAAC,GAAM,UAAAC,GAAU,OAAAC,IAAQ,KAAoB;AACvE,QAAMC,IAAkBD,MAAU,IAAI,KAAOF,EAAK,YAAY,IACxD,CAACI,GAAYC,CAAa,IAAIC,EAASH,CAAe,GACtD,EAAE,eAAAI,EAAA,IAAkBC,EAAA,GACpBC,IAAcT,EAAK,YAAYA,EAAK,SAAS,SAAS,GACtDU,IAAUD,KAAe,CAACT,EAAK,MAC/BW,IAAWX,EAAK,QAAQC,MAAaD,EAAK,MAC1CY,IAAOZ,EAAK;AAElB,MAAIU,KAAWR,MAAU;AACvB,WACE,gBAAAL;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAG;AAAA,QACH,WAAU;AAAA,QACV,MAAK;AAAA,QACL,cAAYG,EAAK;AAAA,QAEjB,UAAA;AAAA,UAAA,gBAAAH,EAAC,OAAA,EAAI,WAAU,sIACZ,UAAA;AAAA,YAAAe,KAAQ,gBAAAd,EAACc,GAAA,EAAK,WAAU,qBAAoB,eAAY,QAAO;AAAA,YAChE,gBAAAd,EAAC,QAAA,EAAM,UAAAE,EAAK,UAAA,CAAU;AAAA,UAAA,GACxB;AAAA,UACCS,KAAeT,EAAK,YACnB,gBAAAF,EAAC,QAAG,WAAU,sCAAqC,MAAK,QACrD,UAAAE,EAAK,SAAS,IAAI,CAACa,GAAOC,MACzB,gBAAAhB;AAAA,YAACC;AAAA,YAAA;AAAA,cAEC,MAAMc;AAAA,cACN,UAAAZ;AAAA,cACA,OAAOC,IAAQ;AAAA,YAAA;AAAA,YAHV,GAAGW,EAAM,IAAI,IAAIC,CAAK;AAAA,UAAA,CAK9B,EAAA,CACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAMR,MAAIJ,KAAWR,IAAQ;AACrB,WACE,gBAAAL,EAAC,MAAA,EAAG,WAAU,kBACZ,UAAA;AAAA,MAAA,gBAAAA;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,IAAG;AAAA,UACH,SAAS,MAAMQ,EAAc,CAACD,CAAU;AAAA,UACxC,iBAAeA;AAAA,UACf,cAAY,GAAGA,IAAa,aAAa,QAAQ,IAC/CJ,EAAK,SACP;AAAA,UACA,WAAU;AAAA,UAEV,UAAA;AAAA,YAAA,gBAAAF,EAAC,QAAA,EAAM,YAAK,UAAA,CAAU;AAAA,YACtB,gBAAAA;AAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAWiB;AAAA,kBACT;AAAA,kBACAX,IAAa,mBAAmB;AAAA,gBAAA;AAAA,gBAElC,MAAK;AAAA,gBACL,QAAO;AAAA,gBACP,SAAQ;AAAA,gBACR,eAAY;AAAA,gBAEZ,UAAA,gBAAAN;AAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,eAAc;AAAA,oBACd,gBAAe;AAAA,oBACf,aAAa;AAAA,oBACb,GAAE;AAAA,kBAAA;AAAA,gBAAA;AAAA,cACJ;AAAA,YAAA;AAAA,UACF;AAAA,QAAA;AAAA,MAAA;AAAA,MAEDW,KAAeL,KAAcJ,EAAK,YACjC,gBAAAF;AAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAU;AAAA,UACV,MAAK;AAAA,UAEJ,UAAAE,EAAK,SAAS,IAAI,CAACa,GAAOC,MACzB,gBAAAhB;AAAA,YAACC;AAAA,YAAA;AAAA,cAEC,MAAMc;AAAA,cACN,UAAAZ;AAAA,cACA,OAAOC,IAAQ;AAAA,YAAA;AAAA,YAHV,GAAGW,EAAM,IAAI,IAAIC,CAAK;AAAA,UAAA,CAK9B;AAAA,QAAA;AAAA,MAAA;AAAA,IACH,GAEJ;AAIJ,QAAME,IAAcT,KAAiB;AAErC,SAAIE,IAEA,gBAAAZ,EAAC,MAAA,EAAG,WAAU,kBACZ,UAAA;AAAA,IAAA,gBAAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAG;AAAA,QACH,SAAS,MAAMQ,EAAc,CAACD,CAAU;AAAA,QACxC,iBAAeA;AAAA,QACf,cAAY,GAAGA,IAAa,aAAa,QAAQ,IAC/CJ,EAAK,SACP;AAAA,QACA,WAAWe;AAAA,UACT;AAAA,UACAJ,KACE;AAAA,QAAA;AAAA,QAGJ,UAAA;AAAA,UAAA,gBAAAb,EAAC,QAAA,EAAM,YAAK,UAAA,CAAU;AAAA,UACtB,gBAAAA;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAWiB;AAAA,gBACT;AAAA,gBACAX,IAAa,mBAAmB;AAAA,cAAA;AAAA,cAElC,MAAK;AAAA,cACL,QAAO;AAAA,cACP,SAAQ;AAAA,cACR,eAAY;AAAA,cAEZ,UAAA,gBAAAN;AAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,eAAc;AAAA,kBACd,gBAAe;AAAA,kBACf,aAAa;AAAA,kBACb,GAAE;AAAA,gBAAA;AAAA,cAAA;AAAA,YACJ;AAAA,UAAA;AAAA,QACF;AAAA,MAAA;AAAA,IAAA;AAAA,IAEDM,KAAcJ,EAAK,YAClB,gBAAAF;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,MAAK;AAAA,QAEJ,UAAAE,EAAK,SAAS,IAAI,CAACa,GAAOC,MACzB,gBAAAhB;AAAA,UAACC;AAAA,UAAA;AAAA,YAEC,MAAMc;AAAA,YACN,UAAAZ;AAAA,YACA,OAAOC,IAAQ;AAAA,UAAA;AAAA,UAHV,GAAGW,EAAM,IAAI,IAAIC,CAAK;AAAA,QAAA,CAK9B;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GAEJ,IAKF,gBAAAhB,EAAC,MAAA,EAAG,WAAU,kBACZ,UAAA,gBAAAA;AAAA,IAACkB;AAAA,IAAA;AAAA,MACC,IAAG;AAAA,MACH,MAAMhB,EAAK;AAAA,MACX,gBAAcW,IAAW,SAAS;AAAA,MAClC,WAAWI;AAAA,QACT;AAAA,QACAJ,KACE;AAAA,MAAA;AAAA,MAGH,UAAAX,EAAK;AAAA,IAAA;AAAA,EAAA,GAEV;AAEJ;AAEO,SAASiB,EAAQ;AAAA,EACtB,SAAAC;AAAA,EACA,UAAAjB;AAAA,EACA,WAAAkB,IAAY;AAAA,EACZ,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC;AAAA,EACA,aAAAC;AACF,GAAiB;AACf,QAAM,EAAE,eAAAhB,EAAA,IAAkBC,EAAA;AAE1B,MAAI,CAACU,KAAWA,EAAQ,MAAM,WAAW;AACvC,WAAO;AAGT,QAAMF,IAAcT,KAAiB;AAErC,SACE,gBAAAV;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,IAAG;AAAA,MACH,WAAWkB;AAAA,QACT;AAAA,QACAI;AAAA,QACAG,MAAU,UAAU;AAAA,MAAA;AAAA,MAEtB,cAAW;AAAA,MAEX,UAAA;AAAA,QAAA,gBAAAzB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAG;AAAA,YACH,WAAU;AAAA,YAET,UAAA;AAAA,cAAAuB,KACC,gBAAAtB;AAAA,gBAAC0B;AAAA,gBAAA;AAAA,kBACC,UAAAJ;AAAA,kBACA,YAAAC;AAAA,kBACA,WAAU;AAAA,gBAAA;AAAA,cAAA;AAAA,cAGbH,EAAQ,MAAM,IAAI,CAAClB,GAAMc,MACxB,gBAAAhB;AAAA,gBAACC;AAAA,gBAAA;AAAA,kBAEC,MAAAC;AAAA,kBACA,UAAAC;AAAA,gBAAA;AAAA,gBAFK,GAAGD,EAAK,IAAI,IAAIc,CAAK;AAAA,cAAA,CAI7B;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,QAEFS,KAAeA,EAAY,SAAS,KACnC,gBAAA1B;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAG;AAAA,YACH,WAAU;AAAA,YAEV,UAAA;AAAA,cAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,2EAAA,CAA2E;AAAA,cAC1F,gBAAAA,EAAC,SAAI,WAAU,+CACZ,YAAY,IAAI,CAAC2B,GAAMX,MAAU;AAChC,sBAAMF,IAAOa,EAAK;AAClB,uBACE,gBAAA5B;AAAA,kBAACmB;AAAA,kBAAA;AAAA,oBAEC,MAAMS,EAAK;AAAA,oBACX,QAAO;AAAA,oBACP,KAAI;AAAA,oBACJ,WAAU;AAAA,oBAEV,UAAA;AAAA,sBAAA,gBAAA3B,EAACc,GAAA,EAAK,WAAU,kCAAA,CAAkC;AAAA,sBAClD,gBAAAd,EAAC,QAAA,EAAM,UAAA2B,EAAK,MAAA,CAAM;AAAA,wCACjB7B,GAAA,CAAA,CAAa;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBARTkB;AAAA,gBAAA;AAAA,cAWX,CAAC,EAAA,CACH;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/nav-tree/index.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport type { NavItem, NavTreeData } from \"../../types\";\nimport { useComponents } from \"../../context/components-context\";\nimport { DropdownConfig, DropdownMenu } from \"./dropdown-menu\";\nimport { cn } from \"../../utils/cn\";\nexport { DropdownMenu } from \"./dropdown-menu\";\nexport type { DropdownConfig, DropdownItem } from \"./dropdown-menu\";\nexport { MobileNavTree } from \"./mobile-nav\";\nexport type { MobileNavTreeProps } from \"./mobile-nav\";\nimport \"../../styles.css\";\n\nexport interface BottomLinkConfig {\n href: string;\n label: string;\n icon: React.ComponentType<{ className?: string }>;\n}\n\ninterface NavTreeProps {\n navTree: NavTreeData;\n activeId?: string;\n className?: string;\n dropdown?: DropdownConfig;\n activeHref?: string;\n theme?: \"light\" | \"dark\" | \"system\";\n bottomLinks?: BottomLinkConfig[];\n}\n\ninterface TreeItemProps {\n item: NavItem;\n activeId?: string;\n level?: number;\n}\n\nfunction ChevronIcon({ isExpanded }: { isExpanded: boolean }) {\n return (\n <svg\n className={cn(\n \"mint:w-[16px] mint:h-[16px] mint:shrink-0 mint:transition-transform mint:duration-150 mint:text-[#6b7280] mint:dark:text-[#9ca3af]\",\n isExpanded ? \"mint:rotate-90\" : \"mint:rotate-0\"\n )}\n fill=\"none\"\n stroke=\"currentColor\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M9 5l7 7-7 7\"\n />\n </svg>\n );\n}\n\nfunction TreeItemComponent({ item, activeId, level = 0 }: TreeItemProps) {\n const defaultExpanded = level === 0 ? true : item.expanded ?? false;\n const [isExpanded, setIsExpanded] = useState(defaultExpanded);\n const { LinkComponent } = useComponents();\n const hasChildren = item.children && item.children.length > 0;\n const isGroup = hasChildren && !item.href;\n const isActive = item.href && activeId === item.href;\n const Icon = item.icon;\n\n if (isGroup && level === 0) {\n return (\n <div\n id=\"nav-group\"\n className=\"mint:mb-6\"\n role=\"group\"\n aria-label={item.toc_title}\n >\n <div className=\"mint:text-sm mint:font-semibold mint:text-[#141414] mint:dark:text-white mint:mb-3 mint:flex mint:items-start mint:gap-2 mint:pl-3\">\n {Icon && <Icon className=\"mint:w-5 mint:h-5\" aria-hidden=\"true\" />}\n <span>{item.toc_title}</span>\n </div>\n {hasChildren && item.children && (\n <ul className=\"mint:flex mint:flex-col mint:gap-1\" role=\"list\">\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </div>\n );\n }\n\n if (isGroup && level > 0) {\n return (\n <li className=\"mint:list-none\">\n <button\n id=\"nav-group-toggle\"\n onClick={() => setIsExpanded(!isExpanded)}\n aria-expanded={isExpanded}\n aria-label={`${isExpanded ? \"Collapse\" : \"Expand\"} ${\n item.toc_title\n } section`}\n className=\"mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:gap-2 mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-lg mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\"\n >\n <span className=\"mint:flex-1 mint:min-w-0\">{item.toc_title}</span>\n <ChevronIcon isExpanded={isExpanded} />\n </button>\n {hasChildren && isExpanded && item.children && (\n <ul\n className=\"mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3\"\n role=\"group\"\n >\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </li>\n );\n }\n\n const LinkElement = LinkComponent || \"a\";\n\n if (hasChildren) {\n return (\n <li className=\"mint:list-none\">\n <button\n id=\"nav-item-toggle\"\n onClick={() => setIsExpanded(!isExpanded)}\n aria-expanded={isExpanded}\n aria-label={`${isExpanded ? \"Collapse\" : \"Expand\"} ${\n item.toc_title\n } section`}\n className={cn(\n \"mint:relative mint:text-left mint:w-full mint:flex mint:items-center mint:justify-between mint:gap-2 mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-xl mint:transition-all mint:duration-150 mint:bg-transparent mint:border-none mint:cursor-pointer mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\",\n isActive &&\n \"mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9]\"\n )}\n >\n <span className=\"mint:flex-1 mint:min-w-0\">{item.toc_title}</span>\n <ChevronIcon isExpanded={isExpanded} />\n </button>\n {isExpanded && item.children && (\n <ul\n className=\"mint:mt-1 mint:ml-2 mint:flex mint:flex-col mint:gap-1 mint:pl-3\"\n role=\"group\"\n >\n {item.children.map((child, index) => (\n <TreeItemComponent\n key={`${child.href}-${index}`}\n item={child}\n activeId={activeId}\n level={level + 1}\n />\n ))}\n </ul>\n )}\n </li>\n );\n }\n\n return (\n <li className=\"mint:list-none\">\n <LinkElement\n id=\"nav-item\"\n href={item.href}\n aria-current={isActive ? \"page\" : undefined}\n className={cn(\n \"mint:relative mint:block mint:py-2 mint:px-3 mint:text-[14px] mint:font-sans mint:font-normal mint:rounded-xl mint:transition-all mint:duration-150 mint:no-underline mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:bg-[rgba(75,85,99,0.05)] mint:hover:text-[#141414] mint:dark:hover:bg-[rgba(75,85,99,0.05)] mint:dark:hover:text-[#e5e7eb] mint:focus-visible:outline-2 mint:focus-visible:outline-[#643fb2] mint:focus-visible:outline-offset-2\",\n isActive &&\n \"mint:bg-[#e6e6e6] mint:dark:bg-[#2e2e2e] mint:text-[#643fb2] mint:dark:text-[#c9aaf9]\"\n )}\n >\n {item.toc_title}\n </LinkElement>\n </li>\n );\n}\n\nexport function NavTree({\n navTree,\n activeId,\n className = \"\",\n dropdown,\n activeHref,\n theme,\n bottomLinks,\n}: NavTreeProps) {\n const { LinkComponent } = useComponents();\n\n if (!navTree || navTree.items.length === 0) {\n return null;\n }\n\n const LinkElement = LinkComponent || \"a\";\n\n return (\n <nav\n id=\"nav-tree\"\n className={cn(\n \"mint:flex mint:flex-col mint:gap-2 mint:h-full mint:min-h-0\",\n className,\n theme === \"dark\" && \"dark\"\n )}\n aria-label=\"Documentation navigation\"\n >\n <div\n id=\"nav-tree-content\"\n className=\"mint:flex-1 mint:overflow-y-auto mint:overflow-x-hidden mint:min-h-0 [scrollbar-gutter:stable] [scrollbar-width:thin] [scrollbar-color:rgba(0,0,0,0.2)_transparent] dark:[scrollbar-color:rgba(255,255,255,0.2)_transparent] mint:[&::-webkit-scrollbar]:w-1 mint:[&::-webkit-scrollbar-track]:bg-transparent mint:[&::-webkit-scrollbar-thumb]:bg-black/20 mint:dark:[&::-webkit-scrollbar-thumb]:bg-white/20 mint:[&::-webkit-scrollbar-thumb]:rounded mint:[&::-webkit-scrollbar-thumb:hover]:bg-black/30 mint:dark:[&::-webkit-scrollbar-thumb:hover]:bg-white/30\"\n >\n {dropdown && (\n <DropdownMenu\n dropdown={dropdown}\n activeHref={activeHref}\n className=\"mint:mb-6\"\n />\n )}\n {navTree.items.map((item, index) => (\n <TreeItemComponent\n key={`${item.href}-${index}`}\n item={item}\n activeId={activeId}\n />\n ))}\n </div>\n {bottomLinks && bottomLinks.length > 0 && (\n <div\n id=\"nav-tree-bottom-links\"\n className=\"mint:shrink-0 mint:w-full mint:bg-[#f0f0f0] mint:dark:bg-[#0f0f0f] mint:mt-auto\"\n >\n <div className=\"mint:h-px mint:w-full mint:bg-[#d1d1d1] mint:dark:bg-[#666666] mint:mb-3\"></div>\n <div className=\"mint:flex mint:flex-col mint:gap-3 mint:p-3\">\n {bottomLinks.map((link, index) => {\n const Icon = link.icon;\n return (\n <LinkElement\n key={index}\n href={link.href}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"mint:flex mint:items-center mint:gap-2 mint:text-sm mint:no-underline mint:text-[#424242] mint:dark:text-[#9ca3af] mint:hover:text-[#141414] mint:dark:hover:text-[#e5e7eb]\"\n >\n <Icon className=\"mint:w-5 mint:h-5 mint:shrink-0\" />\n <span>{link.label}</span>\n </LinkElement>\n );\n })}\n </div>\n </div>\n )}\n </nav>\n );\n}\n"],"names":["ChevronIcon","isExpanded","jsx","cn","TreeItemComponent","item","activeId","level","defaultExpanded","setIsExpanded","useState","LinkComponent","useComponents","hasChildren","isGroup","isActive","Icon","jsxs","child","index","LinkElement","NavTree","navTree","className","dropdown","activeHref","theme","bottomLinks","DropdownMenu","link"],"mappings":"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"}