@xyd-js/framework 0.1.0-xyd.2 → 0.1.0-xyd.21

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 (40) hide show
  1. package/dist/hydration.js +63 -121
  2. package/dist/hydration.js.map +1 -1
  3. package/dist/index.d.ts +3 -1
  4. package/dist/index.js +0 -17
  5. package/dist/index.js.map +1 -1
  6. package/dist/react.js +103 -1437
  7. package/dist/react.js.map +1 -1
  8. package/package.json +19 -18
  9. package/dist/hydration.d.mts +0 -11
  10. package/dist/hydration.mjs +0 -245
  11. package/dist/hydration.mjs.map +0 -1
  12. package/dist/index.d.mts +0 -6
  13. package/dist/index.mjs +0 -1
  14. package/dist/index.mjs.map +0 -1
  15. package/dist/react.d.mts +0 -32
  16. package/dist/react.mjs +0 -1938
  17. package/dist/react.mjs.map +0 -1
  18. package/dist/sidebar-Dwf54qYp.d.mts +0 -15
  19. package/packages/hydration/README.md +0 -3
  20. package/packages/hydration/index.ts +0 -3
  21. package/packages/hydration/settings-to-props.ts +0 -325
  22. package/packages/react/README.md +0 -3
  23. package/packages/react/components/index.tsx +0 -337
  24. package/packages/react/components/sidebar/index.ts +0 -3
  25. package/packages/react/components/sidebar/sidebar-group.tsx +0 -240
  26. package/packages/react/components/sidebar/sidebar.tsx +0 -127
  27. package/packages/react/contexts/framework.tsx +0 -78
  28. package/packages/react/contexts/index.ts +0 -2
  29. package/packages/react/contexts/ui.tsx +0 -6
  30. package/packages/react/hooks/index.ts +0 -3
  31. package/packages/react/hooks/useMatchedNav.tsx +0 -29
  32. package/packages/react/index.ts +0 -12
  33. package/packages/react/utils/manualHydration.ts +0 -25
  34. package/packages/theme/context.tsx +0 -19
  35. package/packages/theme/index.ts +0 -0
  36. package/postcss.config.cjs +0 -5
  37. package/src/index.ts +0 -1
  38. package/src/types.ts +0 -5
  39. package/tsconfig.json +0 -45
  40. package/tsup.config.ts +0 -28
package/dist/react.js CHANGED
@@ -1,1290 +1,18 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
-
29
- // packages/react/index.ts
30
- var react_exports = {};
31
- __export(react_exports, {
32
- Framework: () => Framework,
33
- FwBreadcrumbs: () => FwBreadcrumbs,
34
- FwNav: () => FwNav,
35
- FwNavLinks: () => FwNavLinks,
36
- FwSidebarGroups: () => FwSidebarGroups,
37
- FwSubNav: () => FwSubNav,
38
- FwToc: () => FwToc,
39
- useMatchedSubNav: () => useMatchedSubNav
40
- });
41
- module.exports = __toCommonJS(react_exports);
42
-
43
1
  // packages/react/components/index.tsx
44
- var import_react13 = __toESM(require("react"));
45
- var import_react_router3 = require("react-router");
46
- var import_ui3 = require("@xyd-js/ui");
47
-
48
- // ../xyd-components/dist/index-C0sBj-Rt.js
49
- var import_react = __toESM(require("react"), 1);
50
- var n = "hutvd2b";
51
- var a = "hg9oorb";
52
- var r = "h6jev6x";
53
- var l = "i1uvewli";
54
- function c(t5) {
55
- var c2 = t5.children, o3 = t5.size, i3 = void 0 === o3 ? "sm" : o3, s2 = t5.kind, d3 = void 0 === s2 ? "warning" : s2;
56
- return import_react.default.createElement("div", { className: "\n ".concat(n, "\n \n ").concat("sm" === i3 && r, "\n \n ").concat("warning" === d3 && a, "\n ") }, import_react.default.createElement("span", { className: l }, c2));
57
- }
58
-
59
- // ../xyd-components/dist/tslib.es6-nZyJ5rcw.js
60
- function t2(t5, n4) {
61
- var e3 = {};
62
- for (var r4 in t5) Object.prototype.hasOwnProperty.call(t5, r4) && n4.indexOf(r4) < 0 && (e3[r4] = t5[r4]);
63
- if (null != t5 && "function" == typeof Object.getOwnPropertySymbols) {
64
- var o3 = 0;
65
- for (r4 = Object.getOwnPropertySymbols(t5); o3 < r4.length; o3++) n4.indexOf(r4[o3]) < 0 && Object.prototype.propertyIsEnumerable.call(t5, r4[o3]) && (e3[r4[o3]] = t5[r4[o3]]);
66
- }
67
- return e3;
68
- }
69
-
70
- // ../xyd-components/dist/writer.js
71
- var import_react7 = __toESM(require("react"), 1);
72
-
73
- // ../../node_modules/.pnpm/@radix-ui+react-icons@1.3.2_react@18.3.1/node_modules/@radix-ui/react-icons/dist/react-icons.esm.js
74
- var import_react2 = require("react");
75
- function _objectWithoutPropertiesLoose(source, excluded) {
76
- if (source == null) return {};
77
- var target = {};
78
- var sourceKeys = Object.keys(source);
79
- var key, i3;
80
- for (i3 = 0; i3 < sourceKeys.length; i3++) {
81
- key = sourceKeys[i3];
82
- if (excluded.indexOf(key) >= 0) continue;
83
- target[key] = source[key];
84
- }
85
- return target;
86
- }
87
- var _excluded$f = ["color"];
88
- var ArrowLeftIcon = /* @__PURE__ */ (0, import_react2.forwardRef)(function(_ref, forwardedRef) {
89
- var _ref$color = _ref.color, color = _ref$color === void 0 ? "currentColor" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$f);
90
- return (0, import_react2.createElement)("svg", Object.assign({
91
- width: "15",
92
- height: "15",
93
- viewBox: "0 0 15 15",
94
- fill: "none",
95
- xmlns: "http://www.w3.org/2000/svg"
96
- }, props, {
97
- ref: forwardedRef
98
- }), (0, import_react2.createElement)("path", {
99
- d: "M6.85355 3.14645C7.04882 3.34171 7.04882 3.65829 6.85355 3.85355L3.70711 7H12.5C12.7761 7 13 7.22386 13 7.5C13 7.77614 12.7761 8 12.5 8H3.70711L6.85355 11.1464C7.04882 11.3417 7.04882 11.6583 6.85355 11.8536C6.65829 12.0488 6.34171 12.0488 6.14645 11.8536L2.14645 7.85355C1.95118 7.65829 1.95118 7.34171 2.14645 7.14645L6.14645 3.14645C6.34171 2.95118 6.65829 2.95118 6.85355 3.14645Z",
100
- fill: color,
101
- fillRule: "evenodd",
102
- clipRule: "evenodd"
103
- }));
104
- });
105
- var _excluded$g = ["color"];
106
- var ArrowRightIcon = /* @__PURE__ */ (0, import_react2.forwardRef)(function(_ref, forwardedRef) {
107
- var _ref$color = _ref.color, color = _ref$color === void 0 ? "currentColor" : _ref$color, props = _objectWithoutPropertiesLoose(_ref, _excluded$g);
108
- return (0, import_react2.createElement)("svg", Object.assign({
109
- width: "15",
110
- height: "15",
111
- viewBox: "0 0 15 15",
112
- fill: "none",
113
- xmlns: "http://www.w3.org/2000/svg"
114
- }, props, {
115
- ref: forwardedRef
116
- }), (0, import_react2.createElement)("path", {
117
- d: "M8.14645 3.14645C8.34171 2.95118 8.65829 2.95118 8.85355 3.14645L12.8536 7.14645C13.0488 7.34171 13.0488 7.65829 12.8536 7.85355L8.85355 11.8536C8.65829 12.0488 8.34171 12.0488 8.14645 11.8536C7.95118 11.6583 7.95118 11.3417 8.14645 11.1464L11.2929 8H2.5C2.22386 8 2 7.77614 2 7.5C2 7.22386 2.22386 7 2.5 7H11.2929L8.14645 3.85355C7.95118 3.65829 7.95118 3.34171 8.14645 3.14645Z",
118
- fill: color,
119
- fillRule: "evenodd",
120
- clipRule: "evenodd"
121
- }));
122
- });
123
-
124
- // ../xyd-components/dist/UnderlineNav-rNUvd4IV.js
125
- var import_react6 = __toESM(require("react"), 1);
126
-
127
- // ../xyd-components/dist/_rollupPluginBabelHelpers-DOmTa7nq.js
128
- function t3(t5, r4) {
129
- (null == r4 || r4 > t5.length) && (r4 = t5.length);
130
- for (var e3 = 0, n4 = Array(r4); e3 < r4; e3++) n4[e3] = t5[e3];
131
- return n4;
132
- }
133
- function r2(t5) {
134
- if (Array.isArray(t5)) return t5;
135
- }
136
- function u() {
137
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
138
- }
139
- function h(t5, e3) {
140
- return r2(t5) || function(t6, r4) {
141
- var e4 = null == t6 ? null : "undefined" != typeof Symbol && t6[Symbol.iterator] || t6["@@iterator"];
142
- if (null != e4) {
143
- var n4, o3, i3, a3, u4 = [], c2 = true, f2 = false;
144
- try {
145
- if (i3 = (e4 = e4.call(t6)).next, 0 === r4) {
146
- if (Object(e4) !== e4) return;
147
- c2 = false;
148
- } else for (; !(c2 = (n4 = i3.call(e4)).done) && (u4.push(n4.value), u4.length !== r4); c2 = true) ;
149
- } catch (t7) {
150
- f2 = true, o3 = t7;
151
- } finally {
152
- try {
153
- if (!c2 && null != e4.return && (a3 = e4.return(), Object(a3) !== a3)) return;
154
- } finally {
155
- if (f2) throw o3;
156
- }
157
- }
158
- return u4;
159
- }
160
- }(t5, e3) || d(t5, e3) || u();
161
- }
162
- function d(r4, e3) {
163
- if (r4) {
164
- if ("string" == typeof r4) return t3(r4, e3);
165
- var n4 = {}.toString.call(r4).slice(8, -1);
166
- return "Object" === n4 && r4.constructor && (n4 = r4.constructor.name), "Map" === n4 || "Set" === n4 ? Array.from(r4) : "Arguments" === n4 || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n4) ? t3(r4, e3) : void 0;
167
- }
168
- }
169
-
170
- // ../../node_modules/.pnpm/@radix-ui+react-tabs@1.1.2_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@18.3.18_qsyrobternj736o5ex7scdd3r4/node_modules/@radix-ui/react-tabs/dist/index.mjs
171
- var React13 = __toESM(require("react"), 1);
172
-
173
- // ../../node_modules/.pnpm/@radix-ui+primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.mjs
174
- function composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {
175
- return function handleEvent(event) {
176
- originalEventHandler == null ? void 0 : originalEventHandler(event);
177
- if (checkForDefaultPrevented === false || !event.defaultPrevented) {
178
- return ourEventHandler == null ? void 0 : ourEventHandler(event);
179
- }
180
- };
181
- }
182
-
183
- // ../../node_modules/.pnpm/@radix-ui+react-context@1.1.1_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-context/dist/index.mjs
184
- var React = __toESM(require("react"), 1);
185
- var import_jsx_runtime = require("react/jsx-runtime");
186
- function createContextScope(scopeName, createContextScopeDeps = []) {
187
- let defaultContexts = [];
188
- function createContext32(rootComponentName, defaultContext) {
189
- const BaseContext = React.createContext(defaultContext);
190
- const index = defaultContexts.length;
191
- defaultContexts = [...defaultContexts, defaultContext];
192
- const Provider = (props) => {
193
- var _a;
194
- const { scope, children, ...context } = props;
195
- const Context = ((_a = scope == null ? void 0 : scope[scopeName]) == null ? void 0 : _a[index]) || BaseContext;
196
- const value = React.useMemo(() => context, Object.values(context));
197
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Context.Provider, { value, children });
198
- };
199
- Provider.displayName = rootComponentName + "Provider";
200
- function useContext22(consumerName, scope) {
201
- var _a;
202
- const Context = ((_a = scope == null ? void 0 : scope[scopeName]) == null ? void 0 : _a[index]) || BaseContext;
203
- const context = React.useContext(Context);
204
- if (context) return context;
205
- if (defaultContext !== void 0) return defaultContext;
206
- throw new Error(`\`${consumerName}\` must be used within \`${rootComponentName}\``);
207
- }
208
- return [Provider, useContext22];
209
- }
210
- const createScope = () => {
211
- const scopeContexts = defaultContexts.map((defaultContext) => {
212
- return React.createContext(defaultContext);
213
- });
214
- return function useScope(scope) {
215
- const contexts = (scope == null ? void 0 : scope[scopeName]) || scopeContexts;
216
- return React.useMemo(
217
- () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),
218
- [scope, contexts]
219
- );
220
- };
221
- };
222
- createScope.scopeName = scopeName;
223
- return [createContext32, composeContextScopes(createScope, ...createContextScopeDeps)];
224
- }
225
- function composeContextScopes(...scopes) {
226
- const baseScope = scopes[0];
227
- if (scopes.length === 1) return baseScope;
228
- const createScope = () => {
229
- const scopeHooks = scopes.map((createScope2) => ({
230
- useScope: createScope2(),
231
- scopeName: createScope2.scopeName
232
- }));
233
- return function useComposedScopes(overrideScopes) {
234
- const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {
235
- const scopeProps = useScope(overrideScopes);
236
- const currentScope = scopeProps[`__scope${scopeName}`];
237
- return { ...nextScopes2, ...currentScope };
238
- }, {});
239
- return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);
240
- };
241
- };
242
- createScope.scopeName = baseScope.scopeName;
243
- return createScope;
244
- }
245
-
246
- // ../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.1_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react_bkbd3syfptkiebtjifbhjosaba/node_modules/@radix-ui/react-roving-focus/dist/index.mjs
247
- var React11 = __toESM(require("react"), 1);
248
-
249
- // ../../node_modules/.pnpm/@radix-ui+react-collection@1.1.1_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@1_du3umibpgknzrmwryvhzp3lgou/node_modules/@radix-ui/react-collection/dist/index.mjs
250
- var import_react3 = __toESM(require("react"), 1);
251
-
252
- // ../../node_modules/.pnpm/@radix-ui+react-compose-refs@1.1.1_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-compose-refs/dist/index.mjs
253
- var React2 = __toESM(require("react"), 1);
254
- function setRef(ref, value) {
255
- if (typeof ref === "function") {
256
- return ref(value);
257
- } else if (ref !== null && ref !== void 0) {
258
- ref.current = value;
259
- }
260
- }
261
- function composeRefs(...refs) {
262
- return (node) => {
263
- let hasCleanup = false;
264
- const cleanups = refs.map((ref) => {
265
- const cleanup = setRef(ref, node);
266
- if (!hasCleanup && typeof cleanup == "function") {
267
- hasCleanup = true;
268
- }
269
- return cleanup;
270
- });
271
- if (hasCleanup) {
272
- return () => {
273
- for (let i3 = 0; i3 < cleanups.length; i3++) {
274
- const cleanup = cleanups[i3];
275
- if (typeof cleanup == "function") {
276
- cleanup();
277
- } else {
278
- setRef(refs[i3], null);
279
- }
280
- }
281
- };
282
- }
283
- };
284
- }
285
- function useComposedRefs(...refs) {
286
- return React2.useCallback(composeRefs(...refs), refs);
287
- }
288
-
289
- // ../../node_modules/.pnpm/@radix-ui+react-slot@1.1.1_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-slot/dist/index.mjs
290
- var React3 = __toESM(require("react"), 1);
291
- var import_jsx_runtime2 = require("react/jsx-runtime");
292
- var Slot = React3.forwardRef((props, forwardedRef) => {
293
- const { children, ...slotProps } = props;
294
- const childrenArray = React3.Children.toArray(children);
295
- const slottable = childrenArray.find(isSlottable);
296
- if (slottable) {
297
- const newElement = slottable.props.children;
298
- const newChildren = childrenArray.map((child) => {
299
- if (child === slottable) {
300
- if (React3.Children.count(newElement) > 1) return React3.Children.only(null);
301
- return React3.isValidElement(newElement) ? newElement.props.children : null;
302
- } else {
303
- return child;
304
- }
305
- });
306
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SlotClone, { ...slotProps, ref: forwardedRef, children: React3.isValidElement(newElement) ? React3.cloneElement(newElement, void 0, newChildren) : null });
307
- }
308
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(SlotClone, { ...slotProps, ref: forwardedRef, children });
309
- });
310
- Slot.displayName = "Slot";
311
- var SlotClone = React3.forwardRef((props, forwardedRef) => {
312
- const { children, ...slotProps } = props;
313
- if (React3.isValidElement(children)) {
314
- const childrenRef = getElementRef(children);
315
- return React3.cloneElement(children, {
316
- ...mergeProps(slotProps, children.props),
317
- // @ts-ignore
318
- ref: forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef
319
- });
320
- }
321
- return React3.Children.count(children) > 1 ? React3.Children.only(null) : null;
322
- });
323
- SlotClone.displayName = "SlotClone";
324
- var Slottable = ({ children }) => {
325
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_jsx_runtime2.Fragment, { children });
326
- };
327
- function isSlottable(child) {
328
- return React3.isValidElement(child) && child.type === Slottable;
329
- }
330
- function mergeProps(slotProps, childProps) {
331
- const overrideProps = { ...childProps };
332
- for (const propName in childProps) {
333
- const slotPropValue = slotProps[propName];
334
- const childPropValue = childProps[propName];
335
- const isHandler = /^on[A-Z]/.test(propName);
336
- if (isHandler) {
337
- if (slotPropValue && childPropValue) {
338
- overrideProps[propName] = (...args) => {
339
- childPropValue(...args);
340
- slotPropValue(...args);
341
- };
342
- } else if (slotPropValue) {
343
- overrideProps[propName] = slotPropValue;
344
- }
345
- } else if (propName === "style") {
346
- overrideProps[propName] = { ...slotPropValue, ...childPropValue };
347
- } else if (propName === "className") {
348
- overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(" ");
349
- }
350
- }
351
- return { ...slotProps, ...overrideProps };
352
- }
353
- function getElementRef(element) {
354
- var _a, _b;
355
- let getter = (_a = Object.getOwnPropertyDescriptor(element.props, "ref")) == null ? void 0 : _a.get;
356
- let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
357
- if (mayWarn) {
358
- return element.ref;
359
- }
360
- getter = (_b = Object.getOwnPropertyDescriptor(element, "ref")) == null ? void 0 : _b.get;
361
- mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
362
- if (mayWarn) {
363
- return element.props.ref;
364
- }
365
- return element.props.ref || element.ref;
366
- }
367
-
368
- // ../../node_modules/.pnpm/@radix-ui+react-collection@1.1.1_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@1_du3umibpgknzrmwryvhzp3lgou/node_modules/@radix-ui/react-collection/dist/index.mjs
369
- var import_jsx_runtime3 = require("react/jsx-runtime");
370
- function createCollection(name) {
371
- const PROVIDER_NAME = name + "CollectionProvider";
372
- const [createCollectionContext, createCollectionScope2] = createContextScope(PROVIDER_NAME);
373
- const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(
374
- PROVIDER_NAME,
375
- { collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }
376
- );
377
- const CollectionProvider = (props) => {
378
- const { scope, children } = props;
379
- const ref = import_react3.default.useRef(null);
380
- const itemMap = import_react3.default.useRef(/* @__PURE__ */ new Map()).current;
381
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(CollectionProviderImpl, { scope, itemMap, collectionRef: ref, children });
382
- };
383
- CollectionProvider.displayName = PROVIDER_NAME;
384
- const COLLECTION_SLOT_NAME = name + "CollectionSlot";
385
- const CollectionSlot = import_react3.default.forwardRef(
386
- (props, forwardedRef) => {
387
- const { scope, children } = props;
388
- const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
389
- const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
390
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Slot, { ref: composedRefs, children });
391
- }
392
- );
393
- CollectionSlot.displayName = COLLECTION_SLOT_NAME;
394
- const ITEM_SLOT_NAME = name + "CollectionItemSlot";
395
- const ITEM_DATA_ATTR = "data-radix-collection-item";
396
- const CollectionItemSlot = import_react3.default.forwardRef(
397
- (props, forwardedRef) => {
398
- const { scope, children, ...itemData } = props;
399
- const ref = import_react3.default.useRef(null);
400
- const composedRefs = useComposedRefs(forwardedRef, ref);
401
- const context = useCollectionContext(ITEM_SLOT_NAME, scope);
402
- import_react3.default.useEffect(() => {
403
- context.itemMap.set(ref, { ref, ...itemData });
404
- return () => void context.itemMap.delete(ref);
405
- });
406
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Slot, { ...{ [ITEM_DATA_ATTR]: "" }, ref: composedRefs, children });
407
- }
408
- );
409
- CollectionItemSlot.displayName = ITEM_SLOT_NAME;
410
- function useCollection2(scope) {
411
- const context = useCollectionContext(name + "CollectionConsumer", scope);
412
- const getItems = import_react3.default.useCallback(() => {
413
- const collectionNode = context.collectionRef.current;
414
- if (!collectionNode) return [];
415
- const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));
416
- const items = Array.from(context.itemMap.values());
417
- const orderedItems = items.sort(
418
- (a3, b2) => orderedNodes.indexOf(a3.ref.current) - orderedNodes.indexOf(b2.ref.current)
419
- );
420
- return orderedItems;
421
- }, [context.collectionRef, context.itemMap]);
422
- return getItems;
423
- }
424
- return [
425
- { Provider: CollectionProvider, Slot: CollectionSlot, ItemSlot: CollectionItemSlot },
426
- useCollection2,
427
- createCollectionScope2
428
- ];
429
- }
430
-
431
- // ../../node_modules/.pnpm/@radix-ui+react-id@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-id/dist/index.mjs
432
- var React6 = __toESM(require("react"), 1);
433
-
434
- // ../../node_modules/.pnpm/@radix-ui+react-use-layout-effect@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs
435
- var React5 = __toESM(require("react"), 1);
436
- var useLayoutEffect2 = Boolean(globalThis == null ? void 0 : globalThis.document) ? React5.useLayoutEffect : () => {
437
- };
438
-
439
- // ../../node_modules/.pnpm/@radix-ui+react-id@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-id/dist/index.mjs
440
- var useReactId = React6["useId".toString()] || (() => void 0);
441
- var count = 0;
442
- function useId(deterministicId) {
443
- const [id, setId] = React6.useState(useReactId());
444
- useLayoutEffect2(() => {
445
- if (!deterministicId) setId((reactId) => reactId ?? String(count++));
446
- }, [deterministicId]);
447
- return deterministicId || (id ? `radix-${id}` : "");
448
- }
449
-
450
- // ../../node_modules/.pnpm/@radix-ui+react-primitive@2.0.1_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@18_sspjpiczol7qxzbuuyfihuep4u/node_modules/@radix-ui/react-primitive/dist/index.mjs
451
- var React7 = __toESM(require("react"), 1);
452
- var ReactDOM = __toESM(require("react-dom"), 1);
453
- var import_jsx_runtime4 = require("react/jsx-runtime");
454
- var NODES = [
455
- "a",
456
- "button",
457
- "div",
458
- "form",
459
- "h2",
460
- "h3",
461
- "img",
462
- "input",
463
- "label",
464
- "li",
465
- "nav",
466
- "ol",
467
- "p",
468
- "span",
469
- "svg",
470
- "ul"
471
- ];
472
- var Primitive = NODES.reduce((primitive, node) => {
473
- const Node = React7.forwardRef((props, forwardedRef) => {
474
- const { asChild, ...primitiveProps } = props;
475
- const Comp = asChild ? Slot : node;
476
- if (typeof window !== "undefined") {
477
- window[Symbol.for("radix-ui")] = true;
478
- }
479
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Comp, { ...primitiveProps, ref: forwardedRef });
480
- });
481
- Node.displayName = `Primitive.${node}`;
482
- return { ...primitive, [node]: Node };
483
- }, {});
484
-
485
- // ../../node_modules/.pnpm/@radix-ui+react-use-callback-ref@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs
486
- var React8 = __toESM(require("react"), 1);
487
- function useCallbackRef(callback) {
488
- const callbackRef = React8.useRef(callback);
489
- React8.useEffect(() => {
490
- callbackRef.current = callback;
491
- });
492
- return React8.useMemo(() => (...args) => {
493
- var _a;
494
- return (_a = callbackRef.current) == null ? void 0 : _a.call(callbackRef, ...args);
495
- }, []);
496
- }
497
-
498
- // ../../node_modules/.pnpm/@radix-ui+react-use-controllable-state@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs
499
- var React9 = __toESM(require("react"), 1);
500
- function useControllableState({
501
- prop,
502
- defaultProp,
503
- onChange = () => {
504
- }
505
- }) {
506
- const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });
507
- const isControlled = prop !== void 0;
508
- const value = isControlled ? prop : uncontrolledProp;
509
- const handleChange = useCallbackRef(onChange);
510
- const setValue = React9.useCallback(
511
- (nextValue) => {
512
- if (isControlled) {
513
- const setter = nextValue;
514
- const value2 = typeof nextValue === "function" ? setter(prop) : nextValue;
515
- if (value2 !== prop) handleChange(value2);
516
- } else {
517
- setUncontrolledProp(nextValue);
518
- }
519
- },
520
- [isControlled, prop, setUncontrolledProp, handleChange]
521
- );
522
- return [value, setValue];
523
- }
524
- function useUncontrolledState({
525
- defaultProp,
526
- onChange
527
- }) {
528
- const uncontrolledState = React9.useState(defaultProp);
529
- const [value] = uncontrolledState;
530
- const prevValueRef = React9.useRef(value);
531
- const handleChange = useCallbackRef(onChange);
532
- React9.useEffect(() => {
533
- if (prevValueRef.current !== value) {
534
- handleChange(value);
535
- prevValueRef.current = value;
536
- }
537
- }, [value, prevValueRef, handleChange]);
538
- return uncontrolledState;
539
- }
540
-
541
- // ../../node_modules/.pnpm/@radix-ui+react-direction@1.1.0_@types+react@18.3.18_react@18.3.1/node_modules/@radix-ui/react-direction/dist/index.mjs
542
- var React10 = __toESM(require("react"), 1);
543
- var import_jsx_runtime5 = require("react/jsx-runtime");
544
- var DirectionContext = React10.createContext(void 0);
545
- function useDirection(localDir) {
546
- const globalDir = React10.useContext(DirectionContext);
547
- return localDir || globalDir || "ltr";
548
- }
549
-
550
- // ../../node_modules/.pnpm/@radix-ui+react-roving-focus@1.1.1_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react_bkbd3syfptkiebtjifbhjosaba/node_modules/@radix-ui/react-roving-focus/dist/index.mjs
551
- var import_jsx_runtime6 = require("react/jsx-runtime");
552
- var ENTRY_FOCUS = "rovingFocusGroup.onEntryFocus";
553
- var EVENT_OPTIONS = { bubbles: false, cancelable: true };
554
- var GROUP_NAME = "RovingFocusGroup";
555
- var [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);
556
- var [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(
557
- GROUP_NAME,
558
- [createCollectionScope]
559
- );
560
- var [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);
561
- var RovingFocusGroup = React11.forwardRef(
562
- (props, forwardedRef) => {
563
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });
564
- }
565
- );
566
- RovingFocusGroup.displayName = GROUP_NAME;
567
- var RovingFocusGroupImpl = React11.forwardRef((props, forwardedRef) => {
568
- const {
569
- __scopeRovingFocusGroup,
570
- orientation,
571
- loop = false,
572
- dir,
573
- currentTabStopId: currentTabStopIdProp,
574
- defaultCurrentTabStopId,
575
- onCurrentTabStopIdChange,
576
- onEntryFocus,
577
- preventScrollOnEntryFocus = false,
578
- ...groupProps
579
- } = props;
580
- const ref = React11.useRef(null);
581
- const composedRefs = useComposedRefs(forwardedRef, ref);
582
- const direction = useDirection(dir);
583
- const [currentTabStopId = null, setCurrentTabStopId] = useControllableState({
584
- prop: currentTabStopIdProp,
585
- defaultProp: defaultCurrentTabStopId,
586
- onChange: onCurrentTabStopIdChange
587
- });
588
- const [isTabbingBackOut, setIsTabbingBackOut] = React11.useState(false);
589
- const handleEntryFocus = useCallbackRef(onEntryFocus);
590
- const getItems = useCollection(__scopeRovingFocusGroup);
591
- const isClickFocusRef = React11.useRef(false);
592
- const [focusableItemsCount, setFocusableItemsCount] = React11.useState(0);
593
- React11.useEffect(() => {
594
- const node = ref.current;
595
- if (node) {
596
- node.addEventListener(ENTRY_FOCUS, handleEntryFocus);
597
- return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);
598
- }
599
- }, [handleEntryFocus]);
600
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
601
- RovingFocusProvider,
602
- {
603
- scope: __scopeRovingFocusGroup,
604
- orientation,
605
- dir: direction,
606
- loop,
607
- currentTabStopId,
608
- onItemFocus: React11.useCallback(
609
- (tabStopId) => setCurrentTabStopId(tabStopId),
610
- [setCurrentTabStopId]
611
- ),
612
- onItemShiftTab: React11.useCallback(() => setIsTabbingBackOut(true), []),
613
- onFocusableItemAdd: React11.useCallback(
614
- () => setFocusableItemsCount((prevCount) => prevCount + 1),
615
- []
616
- ),
617
- onFocusableItemRemove: React11.useCallback(
618
- () => setFocusableItemsCount((prevCount) => prevCount - 1),
619
- []
620
- ),
621
- children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
622
- Primitive.div,
623
- {
624
- tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,
625
- "data-orientation": orientation,
626
- ...groupProps,
627
- ref: composedRefs,
628
- style: { outline: "none", ...props.style },
629
- onMouseDown: composeEventHandlers(props.onMouseDown, () => {
630
- isClickFocusRef.current = true;
631
- }),
632
- onFocus: composeEventHandlers(props.onFocus, (event) => {
633
- const isKeyboardFocus = !isClickFocusRef.current;
634
- if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {
635
- const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);
636
- event.currentTarget.dispatchEvent(entryFocusEvent);
637
- if (!entryFocusEvent.defaultPrevented) {
638
- const items = getItems().filter((item) => item.focusable);
639
- const activeItem = items.find((item) => item.active);
640
- const currentItem = items.find((item) => item.id === currentTabStopId);
641
- const candidateItems = [activeItem, currentItem, ...items].filter(
642
- Boolean
643
- );
644
- const candidateNodes = candidateItems.map((item) => item.ref.current);
645
- focusFirst(candidateNodes, preventScrollOnEntryFocus);
646
- }
647
- }
648
- isClickFocusRef.current = false;
649
- }),
650
- onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))
651
- }
652
- )
653
- }
654
- );
655
- });
656
- var ITEM_NAME = "RovingFocusGroupItem";
657
- var RovingFocusGroupItem = React11.forwardRef(
658
- (props, forwardedRef) => {
659
- const {
660
- __scopeRovingFocusGroup,
661
- focusable = true,
662
- active = false,
663
- tabStopId,
664
- ...itemProps
665
- } = props;
666
- const autoId = useId();
667
- const id = tabStopId || autoId;
668
- const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);
669
- const isCurrentTabStop = context.currentTabStopId === id;
670
- const getItems = useCollection(__scopeRovingFocusGroup);
671
- const { onFocusableItemAdd, onFocusableItemRemove } = context;
672
- React11.useEffect(() => {
673
- if (focusable) {
674
- onFocusableItemAdd();
675
- return () => onFocusableItemRemove();
676
- }
677
- }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);
678
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
679
- Collection.ItemSlot,
680
- {
681
- scope: __scopeRovingFocusGroup,
682
- id,
683
- focusable,
684
- active,
685
- children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
686
- Primitive.span,
687
- {
688
- tabIndex: isCurrentTabStop ? 0 : -1,
689
- "data-orientation": context.orientation,
690
- ...itemProps,
691
- ref: forwardedRef,
692
- onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {
693
- if (!focusable) event.preventDefault();
694
- else context.onItemFocus(id);
695
- }),
696
- onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),
697
- onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
698
- if (event.key === "Tab" && event.shiftKey) {
699
- context.onItemShiftTab();
700
- return;
701
- }
702
- if (event.target !== event.currentTarget) return;
703
- const focusIntent = getFocusIntent(event, context.orientation, context.dir);
704
- if (focusIntent !== void 0) {
705
- if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;
706
- event.preventDefault();
707
- const items = getItems().filter((item) => item.focusable);
708
- let candidateNodes = items.map((item) => item.ref.current);
709
- if (focusIntent === "last") candidateNodes.reverse();
710
- else if (focusIntent === "prev" || focusIntent === "next") {
711
- if (focusIntent === "prev") candidateNodes.reverse();
712
- const currentIndex = candidateNodes.indexOf(event.currentTarget);
713
- candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);
714
- }
715
- setTimeout(() => focusFirst(candidateNodes));
716
- }
717
- })
718
- }
719
- )
720
- }
721
- );
722
- }
723
- );
724
- RovingFocusGroupItem.displayName = ITEM_NAME;
725
- var MAP_KEY_TO_FOCUS_INTENT = {
726
- ArrowLeft: "prev",
727
- ArrowUp: "prev",
728
- ArrowRight: "next",
729
- ArrowDown: "next",
730
- PageUp: "first",
731
- Home: "first",
732
- PageDown: "last",
733
- End: "last"
734
- };
735
- function getDirectionAwareKey(key, dir) {
736
- if (dir !== "rtl") return key;
737
- return key === "ArrowLeft" ? "ArrowRight" : key === "ArrowRight" ? "ArrowLeft" : key;
738
- }
739
- function getFocusIntent(event, orientation, dir) {
740
- const key = getDirectionAwareKey(event.key, dir);
741
- if (orientation === "vertical" && ["ArrowLeft", "ArrowRight"].includes(key)) return void 0;
742
- if (orientation === "horizontal" && ["ArrowUp", "ArrowDown"].includes(key)) return void 0;
743
- return MAP_KEY_TO_FOCUS_INTENT[key];
744
- }
745
- function focusFirst(candidates, preventScroll = false) {
746
- const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;
747
- for (const candidate of candidates) {
748
- if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;
749
- candidate.focus({ preventScroll });
750
- if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;
751
- }
752
- }
753
- function wrapArray(array, startIndex) {
754
- return array.map((_2, index) => array[(startIndex + index) % array.length]);
755
- }
756
- var Root = RovingFocusGroup;
757
- var Item = RovingFocusGroupItem;
758
-
759
- // ../../node_modules/.pnpm/@radix-ui+react-presence@1.1.2_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@18._pqwkltkxenlrsgmgun6icjiigu/node_modules/@radix-ui/react-presence/dist/index.mjs
760
- var React22 = __toESM(require("react"), 1);
761
- var React12 = __toESM(require("react"), 1);
762
- function useStateMachine(initialState, machine) {
763
- return React12.useReducer((state, event) => {
764
- const nextState = machine[state][event];
765
- return nextState ?? state;
766
- }, initialState);
767
- }
768
- var Presence = (props) => {
769
- const { present, children } = props;
770
- const presence = usePresence(present);
771
- const child = typeof children === "function" ? children({ present: presence.isPresent }) : React22.Children.only(children);
772
- const ref = useComposedRefs(presence.ref, getElementRef2(child));
773
- const forceMount = typeof children === "function";
774
- return forceMount || presence.isPresent ? React22.cloneElement(child, { ref }) : null;
775
- };
776
- Presence.displayName = "Presence";
777
- function usePresence(present) {
778
- const [node, setNode] = React22.useState();
779
- const stylesRef = React22.useRef({});
780
- const prevPresentRef = React22.useRef(present);
781
- const prevAnimationNameRef = React22.useRef("none");
782
- const initialState = present ? "mounted" : "unmounted";
783
- const [state, send] = useStateMachine(initialState, {
784
- mounted: {
785
- UNMOUNT: "unmounted",
786
- ANIMATION_OUT: "unmountSuspended"
787
- },
788
- unmountSuspended: {
789
- MOUNT: "mounted",
790
- ANIMATION_END: "unmounted"
791
- },
792
- unmounted: {
793
- MOUNT: "mounted"
794
- }
795
- });
796
- React22.useEffect(() => {
797
- const currentAnimationName = getAnimationName(stylesRef.current);
798
- prevAnimationNameRef.current = state === "mounted" ? currentAnimationName : "none";
799
- }, [state]);
800
- useLayoutEffect2(() => {
801
- const styles = stylesRef.current;
802
- const wasPresent = prevPresentRef.current;
803
- const hasPresentChanged = wasPresent !== present;
804
- if (hasPresentChanged) {
805
- const prevAnimationName = prevAnimationNameRef.current;
806
- const currentAnimationName = getAnimationName(styles);
807
- if (present) {
808
- send("MOUNT");
809
- } else if (currentAnimationName === "none" || (styles == null ? void 0 : styles.display) === "none") {
810
- send("UNMOUNT");
811
- } else {
812
- const isAnimating = prevAnimationName !== currentAnimationName;
813
- if (wasPresent && isAnimating) {
814
- send("ANIMATION_OUT");
815
- } else {
816
- send("UNMOUNT");
817
- }
818
- }
819
- prevPresentRef.current = present;
820
- }
821
- }, [present, send]);
822
- useLayoutEffect2(() => {
823
- if (node) {
824
- let timeoutId;
825
- const ownerWindow = node.ownerDocument.defaultView ?? window;
826
- const handleAnimationEnd = (event) => {
827
- const currentAnimationName = getAnimationName(stylesRef.current);
828
- const isCurrentAnimation = currentAnimationName.includes(event.animationName);
829
- if (event.target === node && isCurrentAnimation) {
830
- send("ANIMATION_END");
831
- if (!prevPresentRef.current) {
832
- const currentFillMode = node.style.animationFillMode;
833
- node.style.animationFillMode = "forwards";
834
- timeoutId = ownerWindow.setTimeout(() => {
835
- if (node.style.animationFillMode === "forwards") {
836
- node.style.animationFillMode = currentFillMode;
837
- }
838
- });
839
- }
840
- }
841
- };
842
- const handleAnimationStart = (event) => {
843
- if (event.target === node) {
844
- prevAnimationNameRef.current = getAnimationName(stylesRef.current);
845
- }
846
- };
847
- node.addEventListener("animationstart", handleAnimationStart);
848
- node.addEventListener("animationcancel", handleAnimationEnd);
849
- node.addEventListener("animationend", handleAnimationEnd);
850
- return () => {
851
- ownerWindow.clearTimeout(timeoutId);
852
- node.removeEventListener("animationstart", handleAnimationStart);
853
- node.removeEventListener("animationcancel", handleAnimationEnd);
854
- node.removeEventListener("animationend", handleAnimationEnd);
855
- };
856
- } else {
857
- send("ANIMATION_END");
858
- }
859
- }, [node, send]);
860
- return {
861
- isPresent: ["mounted", "unmountSuspended"].includes(state),
862
- ref: React22.useCallback((node2) => {
863
- if (node2) stylesRef.current = getComputedStyle(node2);
864
- setNode(node2);
865
- }, [])
866
- };
867
- }
868
- function getAnimationName(styles) {
869
- return (styles == null ? void 0 : styles.animationName) || "none";
870
- }
871
- function getElementRef2(element) {
872
- var _a, _b;
873
- let getter = (_a = Object.getOwnPropertyDescriptor(element.props, "ref")) == null ? void 0 : _a.get;
874
- let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
875
- if (mayWarn) {
876
- return element.ref;
877
- }
878
- getter = (_b = Object.getOwnPropertyDescriptor(element, "ref")) == null ? void 0 : _b.get;
879
- mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
880
- if (mayWarn) {
881
- return element.props.ref;
882
- }
883
- return element.props.ref || element.ref;
884
- }
885
-
886
- // ../../node_modules/.pnpm/@radix-ui+react-tabs@1.1.2_@types+react-dom@18.3.5_@types+react@18.3.18__@types+react@18.3.18_qsyrobternj736o5ex7scdd3r4/node_modules/@radix-ui/react-tabs/dist/index.mjs
887
- var import_jsx_runtime7 = require("react/jsx-runtime");
888
- var TABS_NAME = "Tabs";
889
- var [createTabsContext, createTabsScope] = createContextScope(TABS_NAME, [
890
- createRovingFocusGroupScope
891
- ]);
892
- var useRovingFocusGroupScope = createRovingFocusGroupScope();
893
- var [TabsProvider, useTabsContext] = createTabsContext(TABS_NAME);
894
- var Tabs = React13.forwardRef(
895
- (props, forwardedRef) => {
896
- const {
897
- __scopeTabs,
898
- value: valueProp,
899
- onValueChange,
900
- defaultValue,
901
- orientation = "horizontal",
902
- dir,
903
- activationMode = "automatic",
904
- ...tabsProps
905
- } = props;
906
- const direction = useDirection(dir);
907
- const [value, setValue] = useControllableState({
908
- prop: valueProp,
909
- onChange: onValueChange,
910
- defaultProp: defaultValue
911
- });
912
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
913
- TabsProvider,
914
- {
915
- scope: __scopeTabs,
916
- baseId: useId(),
917
- value,
918
- onValueChange: setValue,
919
- orientation,
920
- dir: direction,
921
- activationMode,
922
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
923
- Primitive.div,
924
- {
925
- dir: direction,
926
- "data-orientation": orientation,
927
- ...tabsProps,
928
- ref: forwardedRef
929
- }
930
- )
931
- }
932
- );
933
- }
934
- );
935
- Tabs.displayName = TABS_NAME;
936
- var TAB_LIST_NAME = "TabsList";
937
- var TabsList = React13.forwardRef(
938
- (props, forwardedRef) => {
939
- const { __scopeTabs, loop = true, ...listProps } = props;
940
- const context = useTabsContext(TAB_LIST_NAME, __scopeTabs);
941
- const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);
942
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
943
- Root,
944
- {
945
- asChild: true,
946
- ...rovingFocusGroupScope,
947
- orientation: context.orientation,
948
- dir: context.dir,
949
- loop,
950
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
951
- Primitive.div,
952
- {
953
- role: "tablist",
954
- "aria-orientation": context.orientation,
955
- ...listProps,
956
- ref: forwardedRef
957
- }
958
- )
959
- }
960
- );
961
- }
962
- );
963
- TabsList.displayName = TAB_LIST_NAME;
964
- var TRIGGER_NAME = "TabsTrigger";
965
- var TabsTrigger = React13.forwardRef(
966
- (props, forwardedRef) => {
967
- const { __scopeTabs, value, disabled = false, ...triggerProps } = props;
968
- const context = useTabsContext(TRIGGER_NAME, __scopeTabs);
969
- const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeTabs);
970
- const triggerId = makeTriggerId(context.baseId, value);
971
- const contentId = makeContentId(context.baseId, value);
972
- const isSelected = value === context.value;
973
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
974
- Item,
975
- {
976
- asChild: true,
977
- ...rovingFocusGroupScope,
978
- focusable: !disabled,
979
- active: isSelected,
980
- children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
981
- Primitive.button,
982
- {
983
- type: "button",
984
- role: "tab",
985
- "aria-selected": isSelected,
986
- "aria-controls": contentId,
987
- "data-state": isSelected ? "active" : "inactive",
988
- "data-disabled": disabled ? "" : void 0,
989
- disabled,
990
- id: triggerId,
991
- ...triggerProps,
992
- ref: forwardedRef,
993
- onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {
994
- if (!disabled && event.button === 0 && event.ctrlKey === false) {
995
- context.onValueChange(value);
996
- } else {
997
- event.preventDefault();
998
- }
999
- }),
1000
- onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
1001
- if ([" ", "Enter"].includes(event.key)) context.onValueChange(value);
1002
- }),
1003
- onFocus: composeEventHandlers(props.onFocus, () => {
1004
- const isAutomaticActivation = context.activationMode !== "manual";
1005
- if (!isSelected && !disabled && isAutomaticActivation) {
1006
- context.onValueChange(value);
1007
- }
1008
- })
1009
- }
1010
- )
1011
- }
1012
- );
1013
- }
1014
- );
1015
- TabsTrigger.displayName = TRIGGER_NAME;
1016
- var CONTENT_NAME = "TabsContent";
1017
- var TabsContent = React13.forwardRef(
1018
- (props, forwardedRef) => {
1019
- const { __scopeTabs, value, forceMount, children, ...contentProps } = props;
1020
- const context = useTabsContext(CONTENT_NAME, __scopeTabs);
1021
- const triggerId = makeTriggerId(context.baseId, value);
1022
- const contentId = makeContentId(context.baseId, value);
1023
- const isSelected = value === context.value;
1024
- const isMountAnimationPreventedRef = React13.useRef(isSelected);
1025
- React13.useEffect(() => {
1026
- const rAF = requestAnimationFrame(() => isMountAnimationPreventedRef.current = false);
1027
- return () => cancelAnimationFrame(rAF);
1028
- }, []);
1029
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Presence, { present: forceMount || isSelected, children: ({ present }) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
1030
- Primitive.div,
1031
- {
1032
- "data-state": isSelected ? "active" : "inactive",
1033
- "data-orientation": context.orientation,
1034
- role: "tabpanel",
1035
- "aria-labelledby": triggerId,
1036
- hidden: !present,
1037
- id: contentId,
1038
- tabIndex: 0,
1039
- ...contentProps,
1040
- ref: forwardedRef,
1041
- style: {
1042
- ...props.style,
1043
- animationDuration: isMountAnimationPreventedRef.current ? "0s" : void 0
1044
- },
1045
- children: present && children
1046
- }
1047
- ) });
1048
- }
1049
- );
1050
- TabsContent.displayName = CONTENT_NAME;
1051
- function makeTriggerId(baseId, value) {
1052
- return `${baseId}-trigger-${value}`;
1053
- }
1054
- function makeContentId(baseId, value) {
1055
- return `${baseId}-content-${value}`;
1056
- }
1057
- var Root2 = Tabs;
1058
- var List = TabsList;
1059
- var Trigger = TabsTrigger;
1060
- var Content = TabsContent;
1061
-
1062
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
1063
- var import_react5 = require("react");
1064
-
1065
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/shared/src/utils.js
1066
- var toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
1067
- var mergeClasses = (...classes) => classes.filter((className, index, array) => {
1068
- return Boolean(className) && array.indexOf(className) === index;
1069
- }).join(" ");
1070
-
1071
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
1072
- var import_react4 = require("react");
1073
-
1074
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/defaultAttributes.js
1075
- var defaultAttributes = {
1076
- xmlns: "http://www.w3.org/2000/svg",
1077
- width: 24,
1078
- height: 24,
1079
- viewBox: "0 0 24 24",
1080
- fill: "none",
1081
- stroke: "currentColor",
1082
- strokeWidth: 2,
1083
- strokeLinecap: "round",
1084
- strokeLinejoin: "round"
1085
- };
1086
-
1087
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/Icon.js
1088
- var Icon = (0, import_react4.forwardRef)(
1089
- ({
1090
- color = "currentColor",
1091
- size = 24,
1092
- strokeWidth = 2,
1093
- absoluteStrokeWidth,
1094
- className = "",
1095
- children,
1096
- iconNode,
1097
- ...rest
1098
- }, ref) => {
1099
- return (0, import_react4.createElement)(
1100
- "svg",
1101
- {
1102
- ref,
1103
- ...defaultAttributes,
1104
- width: size,
1105
- height: size,
1106
- stroke: color,
1107
- strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
1108
- className: mergeClasses("lucide", className),
1109
- ...rest
1110
- },
1111
- [
1112
- ...iconNode.map(([tag, attrs]) => (0, import_react4.createElement)(tag, attrs)),
1113
- ...Array.isArray(children) ? children : [children]
1114
- ]
1115
- );
1116
- }
1117
- );
1118
-
1119
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/createLucideIcon.js
1120
- var createLucideIcon = (iconName, iconNode) => {
1121
- const Component = (0, import_react5.forwardRef)(
1122
- ({ className, ...props }, ref) => (0, import_react5.createElement)(Icon, {
1123
- ref,
1124
- iconNode,
1125
- className: mergeClasses(`lucide-${toKebabCase(iconName)}`, className),
1126
- ...props
1127
- })
1128
- );
1129
- Component.displayName = `${iconName}`;
1130
- return Component;
1131
- };
1132
-
1133
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/chevron-left.js
1134
- var ChevronLeft = createLucideIcon("ChevronLeft", [
1135
- ["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]
1136
- ]);
1137
-
1138
- // ../../node_modules/.pnpm/lucide-react@0.447.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/chevron-right.js
1139
- var ChevronRight = createLucideIcon("ChevronRight", [
1140
- ["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]
1141
- ]);
1142
-
1143
- // ../xyd-components/dist/UnderlineNav-rNUvd4IV.js
1144
- var s = "hh34a3o";
1145
- var m = "hilz89t";
1146
- var o = "h1rnhmpa";
1147
- var u2 = "lajci2p";
1148
- var d2 = "iezrce7";
1149
- var v = "i1vhi0b8";
1150
- var h2 = "i1m2lps9";
1151
- var f = "r1new93p";
1152
- var E = "t1u3d3ty";
1153
- var N = "t4udf3g";
1154
- var p = "t1icpluq";
1155
- var b = "badgd67";
1156
- var g = "bcjznmh";
1157
- var w = "p13ekkiz";
1158
- var C = "h15733ml";
1159
- function k(t5) {
1160
- var a3 = t5.children, n4 = t5.href, r4 = t5.icon, c2 = t5.title, l2 = t5.kind, i3 = t5.size;
1161
- return import_react6.default.createElement("div", { className: "\n ".concat(s, "\n ").concat("secondary" === l2 && m, "\n ").concat("secondary" === l2 && "md" == i3 && o, "\n ") }, import_react6.default.createElement("a", { className: u2, href: n4 }, import_react6.default.createElement("div", { className: "\n ".concat(d2, "\n ").concat("secondary" === l2 && v, "\n ") }, r4 && import_react6.default.createElement("div", { className: h2 }, r4), import_react6.default.createElement("div", { className: f }, import_react6.default.createElement("div", { className: E }, import_react6.default.createElement("div", { className: "\n ".concat(E, " \n ").concat(N, "\n ").concat("md" == i3 && p, "\n ") }, c2), import_react6.default.createElement(z, null)), import_react6.default.createElement("div", { className: "\n ".concat(b, "\n ").concat("md" == i3 && g, "\n ") }, a3)))));
1162
- }
1163
- function z() {
1164
- return import_react6.default.createElement("div", { "data-pointer": "true", className: w }, import_react6.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24, fill: "currentColor", viewBox: "0 0 24 24" }, import_react6.default.createElement("path", { fillRule: "evenodd", d: "M9.293 7.293a1 1 0 0 1 1.414 0l4 4a1 1 0 0 1 0 1.414l-4 4a1 1 0 0 1-1.414-1.414L12.586 12 9.293 8.707a1 1 0 0 1 0-1.414Z", clipRule: "evenodd" })));
1165
- }
1166
- k.List = function(t5) {
1167
- var a3 = t5.children;
1168
- return import_react6.default.createElement("div", { className: C }, a3);
1169
- };
1170
- var x = "h3kfd8c";
1171
- var L = "l1et872q";
1172
- function y(t5) {
1173
- var a3 = t5.children;
1174
- return import_react6.default.createElement("ol", { className: x }, a3);
1175
- }
1176
- y.Item = function(t5) {
1177
- var a3 = t5.children;
1178
- return import_react6.default.createElement("li", { className: L }, a3);
1179
- };
1180
- var T = "h14vj3ri";
1181
- var j = "t1l6tz9b";
1182
- var R = "thzxr0l";
1183
- var B = "t1g1altt";
1184
- function I(t5) {
1185
- var a3 = t5.children;
1186
- return import_react6.default.createElement("table", { className: T }, a3);
1187
- }
1188
- I.Th = function(t5) {
1189
- var a3 = t5.children;
1190
- return import_react6.default.createElement("th", { className: j }, a3);
1191
- }, I.Tr = function(t5) {
1192
- var a3 = t5.children;
1193
- return import_react6.default.createElement("tr", { className: R }, a3);
1194
- }, I.Td = function(t5) {
1195
- var a3 = t5.children;
1196
- return import_react6.default.createElement("td", { className: B }, a3);
1197
- };
1198
- var q = "hh8vcxa";
1199
- var S = "b2p5907";
1200
- var V = "coeb6fw";
1201
- var W = "h196u2m6";
1202
- var _ = "i1hlflsk";
1203
- var G = "hownbu8";
1204
- var H = "cuwerl2";
1205
- var M = "hlivi01";
1206
- function P(s2) {
1207
- var m3 = s2.children, o3 = s2.items, u4 = s2.tabIndex, d3 = (0, import_react6.useState)(false), v3 = h(d3, 2), h4 = v3[0], f2 = v3[1], E4 = (0, import_react6.useState)(false), N3 = h(E4, 2), p3 = N3[0], b2 = N3[1], g2 = (0, import_react6.useRef)(null), w3 = (0, import_react6.useState)(o3[u4 || 0] || ""), C2 = h(w3, 2), k2 = C2[0], z2 = C2[1], x3 = function() {
1208
- if (g2.current) {
1209
- var e3 = g2.current, t5 = e3.scrollLeft, a3 = e3.scrollWidth, n4 = e3.clientWidth;
1210
- f2(t5 > 0), b2(t5 < a3 - n4);
1211
- }
1212
- };
1213
- (0, import_react6.useEffect)(function() {
1214
- return x3(), window.addEventListener("resize", x3), function() {
1215
- return window.removeEventListener("resize", x3);
1216
- };
1217
- }, []);
1218
- var L2 = function(e3) {
1219
- if (g2.current) {
1220
- var t5 = "left" === e3 ? -200 : 200;
1221
- g2.current.scrollBy({ left: t5, behavior: "smooth" });
1222
- }
1223
- };
1224
- return import_react6.default.createElement(Root2, { asChild: true, value: k2, onValueChange: z2 }, import_react6.default.createElement("div", { className: q }, import_react6.default.createElement("div", { className: S }, h4 && import_react6.default.createElement("button", { onClick: function() {
1225
- return L2("left");
1226
- }, className: W }, import_react6.default.createElement(ChevronLeft, { className: _ })), import_react6.default.createElement("div", { ref: g2, onScroll: x3, className: G }, import_react6.default.createElement("div", { className: H }, import_react6.default.createElement(List, null, o3.map(function(t5, a3) {
1227
- return import_react6.default.createElement(U, { key: a3, value: t5 }, t5);
1228
- })))), p3 && import_react6.default.createElement("button", { onClick: function() {
1229
- return L2("right");
1230
- }, className: W }, import_react6.default.createElement(ChevronRight, { className: _ }))), import_react6.default.createElement("div", { className: V }, m3)));
1231
- }
1232
- function U(t5) {
1233
- var a3 = t5.children, n4 = t5.value;
1234
- return import_react6.default.createElement(Trigger, { asChild: true, value: n4 }, import_react6.default.createElement("button", { className: "".concat(M) }, a3));
1235
- }
1236
- P.Content = function(t5) {
1237
- var a3 = t5.children, n4 = t5.value;
1238
- return import_react6.default.createElement(Content, { asChild: true, value: n4 }, a3);
1239
- };
1240
- var Z = "h1bta36o";
1241
- var A = "uxs4bf1";
1242
- var D = "ifn7ecb";
1243
- var F = "i441kmn";
1244
- function J(t5) {
1245
- var a3 = t5.children, n4 = t5.value, r4 = t5.onChange;
1246
- return import_react6.default.createElement(Root2, { asChild: true, value: n4, onValueChange: r4 }, import_react6.default.createElement("nav", { className: Z }, import_react6.default.createElement(List, { asChild: true }, import_react6.default.createElement("ul", { className: A }, a3))));
1247
- }
1248
- J.Item = function(t5) {
1249
- var a3 = t5.children, n4 = t5.value, r4 = t5.href;
1250
- return import_react6.default.createElement(Trigger, { asChild: true, value: n4 }, import_react6.default.createElement("li", { className: D }, import_react6.default.createElement("a", { href: r4, className: "".concat(F) }, a3)));
1251
- };
1252
-
1253
- // ../xyd-components/dist/writer.js
1254
- var i2 = "hwgsk4h";
1255
- var m2 = "i1b95bxl";
1256
- var o2 = "i1a3fa93";
1257
- var u3 = "i1dl7ywj";
1258
- function h3(e3) {
1259
- var a3 = e3.children, n4 = t2(e3, ["children"]);
1260
- return import_react7.default.createElement("a", Object.assign({}, n4), a3);
1261
- }
1262
- function p2(e3) {
1263
- return import_react7.default.createElement("div", { className: i2 }, e3.items.map(function(t5, a3) {
1264
- var s2 = a3 === e3.items.length - 1;
1265
- return import_react7.default.createElement(import_react7.Fragment, { key: t5.href + t5.title }, a3 > 0 && import_react7.default.createElement(ArrowRightIcon, { className: m2 }), import_react7.default.createElement("div", { className: "\n ".concat(o2, "\n ").concat(s2 && u3, "\n "), title: t5.title }, t5.href && !s2 ? import_react7.default.createElement(h3, { href: t5.href }, t5.title) : t5.title));
1266
- }));
1267
- }
1268
- var v2 = "h1xhrk1";
1269
- var E3 = "l1elq7ab";
1270
- var x2 = "i1mmatje";
1271
- function N2(e3) {
1272
- var a3 = e3.children, n4 = t2(e3, ["children"]);
1273
- return import_react7.default.createElement("a", Object.assign({}, n4), a3);
1274
- }
1275
- function j2(e3) {
1276
- return import_react7.default.createElement("div", { className: v2 }, e3.prev ? import_react7.default.createElement(N2, { href: e3.prev.href, title: e3.prev.title, className: E3 }, import_react7.default.createElement(ArrowLeftIcon, { className: x2 }), e3.prev.title) : import_react7.default.createElement("div", null), e3.next && import_react7.default.createElement(N2, { href: e3.next.href, title: e3.next.title, className: E3 }, e3.next.title, import_react7.default.createElement(ArrowRightIcon, { className: x2 })));
1277
- }
2
+ import React5, { isValidElement } from "react";
3
+ import { useLocation as useLocation3 } from "react-router";
4
+ import { Toc, SubNav, UISidebar as UISidebar2 } from "@xyd-js/ui";
5
+ import { Breadcrumbs, NavLinks } from "@xyd-js/components/writer";
1278
6
 
1279
7
  // packages/react/contexts/framework.tsx
1280
- var import_react8 = __toESM(require("react"));
8
+ import React, { createContext, useContext } from "react";
1281
9
  var framework = {
1282
10
  settings: {},
1283
11
  sidebarGroups: []
1284
12
  };
1285
- var FrameworkContext = (0, import_react8.createContext)(framework);
13
+ var FrameworkContext = createContext(framework);
1286
14
  function Framework(props) {
1287
- return /* @__PURE__ */ import_react8.default.createElement(FrameworkContext.Provider, { value: {
15
+ return /* @__PURE__ */ React.createElement(FrameworkContext.Provider, { value: {
1288
16
  settings: props.settings,
1289
17
  sidebarGroups: props.sidebarGroups,
1290
18
  toc: props.toc,
@@ -1293,40 +21,40 @@ function Framework(props) {
1293
21
  } }, props.children);
1294
22
  }
1295
23
  function useSidebarGroups() {
1296
- const ctx = (0, import_react8.useContext)(FrameworkContext);
24
+ const ctx = useContext(FrameworkContext);
1297
25
  return ctx.sidebarGroups;
1298
26
  }
1299
27
  function useSettings() {
1300
- const ctx = (0, import_react8.useContext)(FrameworkContext);
28
+ const ctx = useContext(FrameworkContext);
1301
29
  return ctx.settings;
1302
30
  }
1303
31
  function useToC() {
1304
- const ctx = (0, import_react8.useContext)(FrameworkContext);
32
+ const ctx = useContext(FrameworkContext);
1305
33
  return ctx.toc;
1306
34
  }
1307
35
  function useBreadcrumbs() {
1308
- const ctx = (0, import_react8.useContext)(FrameworkContext);
36
+ const ctx = useContext(FrameworkContext);
1309
37
  return ctx.breadcrumbs;
1310
38
  }
1311
39
  function useNavLinks() {
1312
- const ctx = (0, import_react8.useContext)(FrameworkContext);
40
+ const ctx = useContext(FrameworkContext);
1313
41
  return ctx.navlinks;
1314
42
  }
1315
43
 
1316
44
  // packages/react/components/sidebar/sidebar-group.tsx
1317
- var import_react10 = __toESM(require("react"));
1318
- var import_react_router = require("react-router");
45
+ import React2, { createContext as createContext3, useContext as useContext2, useEffect, useState } from "react";
46
+ import { useLocation } from "react-router";
1319
47
 
1320
48
  // packages/react/contexts/ui.tsx
1321
- var import_react9 = require("react");
1322
- var UIContext = (0, import_react9.createContext)({
49
+ import { createContext as createContext2 } from "react";
50
+ var UIContext = createContext2({
1323
51
  href: "",
1324
- setHref: (v3) => {
52
+ setHref: (v) => {
1325
53
  }
1326
54
  });
1327
55
 
1328
56
  // packages/react/components/sidebar/sidebar-group.tsx
1329
- var groupContext = (0, import_react10.createContext)({
57
+ var groupContext = createContext3({
1330
58
  active: () => [false, () => {
1331
59
  }],
1332
60
  onClick: () => null
@@ -1344,14 +72,14 @@ function FwSidebarGroupContext({
1344
72
  } else {
1345
73
  groupBehaviour = useDefaultBehaviour(initialActiveItems);
1346
74
  }
1347
- const location = (0, import_react_router.useLocation)();
1348
- const [href, setHref] = (0, import_react10.useState)(location.pathname);
1349
- return /* @__PURE__ */ import_react10.default.createElement(UIContext.Provider, { value: {
75
+ const location = useLocation();
76
+ const [href, setHref] = useState(location.pathname);
77
+ return /* @__PURE__ */ React2.createElement(UIContext.Provider, { value: {
1350
78
  href,
1351
79
  setHref: (value) => {
1352
80
  setHref(value);
1353
81
  }
1354
- } }, /* @__PURE__ */ import_react10.default.createElement(groupContext.Provider, { value: {
82
+ } }, /* @__PURE__ */ React2.createElement(groupContext.Provider, { value: {
1355
83
  active: groupBehaviour,
1356
84
  onClick: clientSideRouting ? (event, item) => {
1357
85
  setHref(item.href);
@@ -1360,7 +88,7 @@ function FwSidebarGroupContext({
1360
88
  } }, children));
1361
89
  }
1362
90
  function useGroup() {
1363
- return (0, import_react10.useContext)(groupContext);
91
+ return useContext2(groupContext);
1364
92
  }
1365
93
  function getLastValue(set) {
1366
94
  let value;
@@ -1376,13 +104,13 @@ function stringify(item) {
1376
104
  });
1377
105
  }
1378
106
  function recursiveSearch(items, href, levels = []) {
1379
- for (let i3 = 0; i3 < items.length; i3++) {
1380
- const item = items[i3];
107
+ for (let i = 0; i < items.length; i++) {
108
+ const item = items[i];
1381
109
  if (item.href === href) {
1382
- return [...levels, i3];
110
+ return [...levels, i];
1383
111
  }
1384
112
  if (item.items) {
1385
- const result = recursiveSearch(item.items, href, [...levels, i3]);
113
+ const result = recursiveSearch(item.items, href, [...levels, i]);
1386
114
  if (result) {
1387
115
  return result;
1388
116
  }
@@ -1407,9 +135,9 @@ function calcActive(groups, url) {
1407
135
  }
1408
136
  function useDefaultBehaviour(initialActiveItems) {
1409
137
  const groups = useSidebarGroups();
1410
- const [weakSet] = (0, import_react10.useState)(() => new Set(initialActiveItems.map((item) => stringify(item))));
1411
- const [, setForceUpdate] = (0, import_react10.useState)(0);
1412
- (0, import_react10.useEffect)(() => {
138
+ const [weakSet] = useState(() => new Set(initialActiveItems.map((item) => stringify(item))));
139
+ const [, setForceUpdate] = useState(0);
140
+ useEffect(() => {
1413
141
  window.addEventListener("xyd.history.pushState", (event) => {
1414
142
  var _a;
1415
143
  const url = (_a = event.detail) == null ? void 0 : _a.url;
@@ -1447,9 +175,9 @@ function useDefaultBehaviour(initialActiveItems) {
1447
175
  ];
1448
176
  }
1449
177
  function useOnePathBehaviour(initialActiveItems) {
1450
- const [weakSet] = (0, import_react10.useState)(() => new Set(initialActiveItems.map((item) => stringify(item))));
1451
- const [lastLevel, setLastLevel] = (0, import_react10.useState)(false);
1452
- const [, setForceUpdate] = (0, import_react10.useState)(0);
178
+ const [weakSet] = useState(() => new Set(initialActiveItems.map((item) => stringify(item))));
179
+ const [lastLevel, setLastLevel] = useState(false);
180
+ const [, setForceUpdate] = useState(0);
1453
181
  const forceUpdate = () => setForceUpdate((prev) => prev + 1);
1454
182
  const addItem = (item) => {
1455
183
  weakSet.add(stringify(item));
@@ -1483,8 +211,8 @@ function useOnePathBehaviour(initialActiveItems) {
1483
211
  if ((item.level || 0) > (lastLevel || 0) || lastLevel == false) {
1484
212
  addItem(item);
1485
213
  } else {
1486
- const v3 = getLastValue(weakSet);
1487
- deleteItem(JSON.parse(v3));
214
+ const v = getLastValue(weakSet);
215
+ deleteItem(JSON.parse(v));
1488
216
  addItem(item);
1489
217
  }
1490
218
  }
@@ -1499,10 +227,11 @@ function scrollToDataSlug(event, item) {
1499
227
  }
1500
228
 
1501
229
  // packages/react/components/sidebar/sidebar.tsx
1502
- var import_react11 = __toESM(require("react"));
1503
- var import_ui2 = require("@xyd-js/ui");
230
+ import React3 from "react";
231
+ import { Badge } from "@xyd-js/components/writer";
232
+ import { UISidebar } from "@xyd-js/ui";
1504
233
  function FwSidebarItemGroup(props) {
1505
- return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(import_ui2.UISidebar.ItemHeader, null, props.group), props.items.map((item, index) => /* @__PURE__ */ import_react11.default.createElement(
234
+ return /* @__PURE__ */ React3.createElement(React3.Fragment, null, /* @__PURE__ */ React3.createElement(UISidebar.ItemHeader, null, props.group), props.items.map((item, index) => /* @__PURE__ */ React3.createElement(
1506
235
  FwSidebarItem,
1507
236
  {
1508
237
  key: index + item.href,
@@ -1517,7 +246,7 @@ function FwSidebarItemGroup(props) {
1517
246
  var components = {
1518
247
  Frontmatter: {
1519
248
  // TODO: css
1520
- Title: ({ children }) => /* @__PURE__ */ import_react11.default.createElement("div", { style: {
249
+ Title: ({ children }) => /* @__PURE__ */ React3.createElement("div", { style: {
1521
250
  display: "flex",
1522
251
  alignItems: "center",
1523
252
  justifyContent: "space-between",
@@ -1525,16 +254,16 @@ var components = {
1525
254
  gap: "10px"
1526
255
  } }, children)
1527
256
  },
1528
- Badge: ({ children }) => /* @__PURE__ */ import_react11.default.createElement(c, null, children)
257
+ Badge: ({ children, ...rest }) => /* @__PURE__ */ React3.createElement(Badge, { ...rest }, children)
1529
258
  };
1530
259
  function mdxExport(code, components2) {
1531
260
  const scope = {
1532
- Fragment: import_react11.default.Fragment,
1533
- jsxs: import_react11.default.createElement,
1534
- jsx: import_react11.default.createElement,
1535
- jsxDEV: import_react11.default.createElement,
1536
- _jsxs: import_react11.default.createElement,
1537
- _jsx: import_react11.default.createElement,
261
+ Fragment: React3.Fragment,
262
+ jsxs: React3.createElement,
263
+ jsx: React3.createElement,
264
+ jsxDEV: React3.createElement,
265
+ _jsxs: React3.createElement,
266
+ _jsx: React3.createElement,
1538
267
  ...components2
1539
268
  };
1540
269
  const fn = new Function(...Object.keys(scope), `return ${code}`);
@@ -1555,8 +284,8 @@ function FwSidebarItem(props) {
1555
284
  } else {
1556
285
  Title = () => props.title;
1557
286
  }
1558
- return /* @__PURE__ */ import_react11.default.createElement(
1559
- import_ui2.UISidebar.Item,
287
+ return /* @__PURE__ */ React3.createElement(
288
+ UISidebar.Item,
1560
289
  {
1561
290
  button: !!((_a = props.items) == null ? void 0 : _a.length),
1562
291
  href: props.href,
@@ -1565,8 +294,8 @@ function FwSidebarItem(props) {
1565
294
  setActive();
1566
295
  }
1567
296
  },
1568
- /* @__PURE__ */ import_react11.default.createElement(Title, null),
1569
- ((_b = props.items) == null ? void 0 : _b.length) && /* @__PURE__ */ import_react11.default.createElement(import_ui2.UISidebar.SubTree, { isOpen: isActive }, /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, (_c = props.items) == null ? void 0 : _c.map((item, index) => /* @__PURE__ */ import_react11.default.createElement(
297
+ /* @__PURE__ */ React3.createElement(Title, null),
298
+ ((_b = props.items) == null ? void 0 : _b.length) && /* @__PURE__ */ React3.createElement(UISidebar.SubTree, { isOpen: isActive }, /* @__PURE__ */ React3.createElement(React3.Fragment, null, (_c = props.items) == null ? void 0 : _c.map((item, index) => /* @__PURE__ */ React3.createElement(
1570
299
  FwSidebarItem,
1571
300
  {
1572
301
  key: index + item.href,
@@ -1581,32 +310,32 @@ function FwSidebarItem(props) {
1581
310
  }
1582
311
 
1583
312
  // packages/react/components/index.tsx
1584
- var import_ui4 = require("@xyd-js/ui");
313
+ import { Nav } from "@xyd-js/ui";
1585
314
 
1586
315
  // packages/react/utils/manualHydration.ts
1587
- var import_react12 = __toESM(require("react"));
316
+ import React4 from "react";
1588
317
  function manualHydration(obj, key = 0) {
1589
318
  if (typeof obj !== "object" || obj === null) {
1590
- return import_react12.default.createElement(import_react12.default.Fragment, { key });
319
+ return React4.createElement(React4.Fragment, { key });
1591
320
  }
1592
321
  const { type, props } = obj || {};
1593
322
  if (typeof type !== "string" && typeof type !== "function") {
1594
- return import_react12.default.createElement(import_react12.default.Fragment, { key });
323
+ return React4.createElement(React4.Fragment, { key });
1595
324
  }
1596
325
  let children = [];
1597
326
  if (props == null ? void 0 : props.children) {
1598
327
  if (Array.isArray(props.children)) {
1599
- children = props.children.map((child, i3) => manualHydration(child, key + i3)) || [];
328
+ children = props.children.map((child, i) => manualHydration(child, key + i)) || [];
1600
329
  } else {
1601
330
  children = [manualHydration(props.children, key)];
1602
331
  }
1603
332
  }
1604
333
  const elementProps = { ...props, children, key };
1605
- return import_react12.default.createElement(type, elementProps);
334
+ return React4.createElement(type, elementProps);
1606
335
  }
1607
336
 
1608
337
  // packages/react/hooks/useMatchedNav.tsx
1609
- var import_react_router2 = require("react-router");
338
+ import { useLocation as useLocation2 } from "react-router";
1610
339
  function normalizeHref(href) {
1611
340
  if (href.startsWith("/")) {
1612
341
  return href;
@@ -1616,7 +345,7 @@ function normalizeHref(href) {
1616
345
  function useMatchedSubNav() {
1617
346
  var _a, _b, _c;
1618
347
  const settings = useSettings();
1619
- const location = (0, import_react_router2.useLocation)();
348
+ const location = useLocation2();
1620
349
  const matchedSubnav = (_c = (_b = (_a = settings.structure) == null ? void 0 : _a.header) == null ? void 0 : _b.filter((item) => item.sub)) == null ? void 0 : _c.find((item) => {
1621
350
  var _a2;
1622
351
  return normalizeHref(location.pathname).startsWith(normalizeHref(((_a2 = item.sub) == null ? void 0 : _a2.match) || ""));
@@ -1631,28 +360,28 @@ function useMatchedSubNav() {
1631
360
  function FwNavLogo() {
1632
361
  var _a, _b, _c;
1633
362
  const settings = useSettings();
1634
- const logo = (0, import_react13.isValidElement)((_a = settings == null ? void 0 : settings.styling) == null ? void 0 : _a.logo) ? (_b = settings == null ? void 0 : settings.styling) == null ? void 0 : _b.logo : manualHydration((_c = settings == null ? void 0 : settings.styling) == null ? void 0 : _c.logo);
1635
- return /* @__PURE__ */ import_react13.default.createElement("a", { href: "/" }, logo);
363
+ const logo = isValidElement((_a = settings == null ? void 0 : settings.styling) == null ? void 0 : _a.logo) ? (_b = settings == null ? void 0 : settings.styling) == null ? void 0 : _b.logo : manualHydration((_c = settings == null ? void 0 : settings.styling) == null ? void 0 : _c.logo);
364
+ return /* @__PURE__ */ React5.createElement("a", { href: "/" }, logo);
1636
365
  }
1637
366
  function FwNav({ kind }) {
1638
367
  var _a, _b, _c;
1639
368
  const matchedSubnav = useMatchedSubNav();
1640
- const location = (0, import_react_router3.useLocation)();
369
+ const location = useLocation3();
1641
370
  const settings = useSettings();
1642
371
  const headers = matchedSubnav ? matchedSubnav == null ? void 0 : matchedSubnav.items : (_a = settings == null ? void 0 : settings.structure) == null ? void 0 : _a.header;
1643
372
  const active = headers == null ? void 0 : headers.find((item) => location.pathname.startsWith(item.url || ""));
1644
- return /* @__PURE__ */ import_react13.default.createElement(
1645
- import_ui4.Nav,
373
+ return /* @__PURE__ */ React5.createElement(
374
+ Nav,
1646
375
  {
1647
376
  value: (active == null ? void 0 : active.url) || "",
1648
377
  kind,
1649
- logo: /* @__PURE__ */ import_react13.default.createElement(FwNavLogo, null),
378
+ logo: /* @__PURE__ */ React5.createElement(FwNavLogo, null),
1650
379
  onChange: () => {
1651
380
  }
1652
381
  },
1653
382
  (_c = (_b = settings == null ? void 0 : settings.structure) == null ? void 0 : _b.header) == null ? void 0 : _c.map((item, index) => {
1654
- return /* @__PURE__ */ import_react13.default.createElement(
1655
- import_ui4.Nav.Item,
383
+ return /* @__PURE__ */ React5.createElement(
384
+ Nav.Item,
1656
385
  {
1657
386
  key: index + (item.url || "") + item.name,
1658
387
  href: (item == null ? void 0 : item.url) || "",
@@ -1665,13 +394,13 @@ function FwNav({ kind }) {
1665
394
  }
1666
395
  function FwSubNav() {
1667
396
  const matchedSubnav = useMatchedSubNav();
1668
- const location = (0, import_react_router3.useLocation)();
397
+ const location = useLocation3();
1669
398
  if (!matchedSubnav) {
1670
399
  return null;
1671
400
  }
1672
401
  const active = matchedSubnav == null ? void 0 : matchedSubnav.items.findLast((item) => location.pathname.startsWith(item.url || ""));
1673
- return /* @__PURE__ */ import_react13.default.createElement(
1674
- import_ui3.SubNav,
402
+ return /* @__PURE__ */ React5.createElement(
403
+ SubNav,
1675
404
  {
1676
405
  title: (matchedSubnav == null ? void 0 : matchedSubnav.name) || "",
1677
406
  value: (active == null ? void 0 : active.url) || "",
@@ -1679,18 +408,18 @@ function FwSubNav() {
1679
408
  }
1680
409
  },
1681
410
  matchedSubnav == null ? void 0 : matchedSubnav.items.map((item, index) => {
1682
- return /* @__PURE__ */ import_react13.default.createElement(import_ui3.SubNav.Item, { value: item.url || "", href: item.url }, item.name);
411
+ return /* @__PURE__ */ React5.createElement(SubNav.Item, { value: item.url || "", href: item.url }, item.name);
1683
412
  })
1684
413
  );
1685
414
  }
1686
415
  function recursiveSearch2(items, href, levels = []) {
1687
- for (let i3 = 0; i3 < items.length; i3++) {
1688
- const item = items[i3];
416
+ for (let i = 0; i < items.length; i++) {
417
+ const item = items[i];
1689
418
  if (item.href === href) {
1690
- return [...levels, i3];
419
+ return [...levels, i];
1691
420
  }
1692
421
  if (item.items) {
1693
- const result = recursiveSearch2(item.items, href, [...levels, i3]);
422
+ const result = recursiveSearch2(item.items, href, [...levels, i]);
1694
423
  if (result) {
1695
424
  return result;
1696
425
  }
@@ -1707,19 +436,19 @@ function FwSidebarGroups(props) {
1707
436
  if (typeof anchor.icon === "string") {
1708
437
  switch (anchor.icon) {
1709
438
  case "icon-cookbook": {
1710
- icon = /* @__PURE__ */ import_react13.default.createElement(IconCookbook, null);
439
+ icon = /* @__PURE__ */ React5.createElement(IconCookbook, null);
1711
440
  break;
1712
441
  }
1713
442
  case "icon-community": {
1714
- icon = /* @__PURE__ */ import_react13.default.createElement(IconCommunity, null);
443
+ icon = /* @__PURE__ */ React5.createElement(IconCommunity, null);
1715
444
  break;
1716
445
  }
1717
446
  case "icon-marketplace": {
1718
- icon = /* @__PURE__ */ import_react13.default.createElement(IconMarketplace, null);
447
+ icon = /* @__PURE__ */ React5.createElement(IconMarketplace, null);
1719
448
  break;
1720
449
  }
1721
450
  case "icon-sdk": {
1722
- icon = /* @__PURE__ */ import_react13.default.createElement(IconSDK, null);
451
+ icon = /* @__PURE__ */ React5.createElement(IconSDK, null);
1723
452
  break;
1724
453
  }
1725
454
  default: {
@@ -1727,11 +456,11 @@ function FwSidebarGroups(props) {
1727
456
  }
1728
457
  }
1729
458
  } else {
1730
- icon = (0, import_react13.isValidElement)(anchor.icon) ? anchor.icon : manualHydration(anchor.icon);
459
+ icon = isValidElement(anchor.icon) ? anchor.icon : manualHydration(anchor.icon);
1731
460
  }
1732
- return /* @__PURE__ */ import_react13.default.createElement(import_ui3.UISidebar.FooterItem, { href: anchor.url, icon }, anchor.name);
461
+ return /* @__PURE__ */ React5.createElement(UISidebar2.FooterItem, { href: anchor.url, icon }, anchor.name);
1733
462
  });
1734
- const location = (0, import_react_router3.useLocation)();
463
+ const location = useLocation3();
1735
464
  const initialActiveItems = [];
1736
465
  groups.forEach((group) => {
1737
466
  const activeLevels = recursiveSearch2(group.items, location.pathname) || [];
@@ -1742,14 +471,14 @@ function FwSidebarGroups(props) {
1742
471
  }, group.items);
1743
472
  return group;
1744
473
  });
1745
- return /* @__PURE__ */ import_react13.default.createElement(
474
+ return /* @__PURE__ */ React5.createElement(
1746
475
  FwSidebarGroupContext,
1747
476
  {
1748
477
  onePathBehaviour: props.onePathBehaviour,
1749
478
  clientSideRouting: props.clientSideRouting,
1750
479
  initialActiveItems
1751
480
  },
1752
- /* @__PURE__ */ import_react13.default.createElement(import_ui3.UISidebar, { footerItems: footerItems && footerItems }, groups == null ? void 0 : groups.map((group, index) => /* @__PURE__ */ import_react13.default.createElement(
481
+ /* @__PURE__ */ React5.createElement(UISidebar2, { footerItems: footerItems && footerItems }, groups == null ? void 0 : groups.map((group, index) => /* @__PURE__ */ React5.createElement(
1753
482
  FwSidebarItemGroup,
1754
483
  {
1755
484
  key: index + group.group,
@@ -1779,10 +508,10 @@ function FwToc() {
1779
508
  };
1780
509
  flatten(toc);
1781
510
  const tocFinal = flatToc.filter((item) => item.depth === 2);
1782
- const location = (0, import_react_router3.useLocation)();
511
+ const location = useLocation3();
1783
512
  const defaultValue = location.hash ? location.hash.replace("#", "") : (_a = tocFinal[0]) == null ? void 0 : _a.value;
1784
- return /* @__PURE__ */ import_react13.default.createElement(import_ui3.Toc, { defaultValue }, tocFinal.map((item, index) => /* @__PURE__ */ import_react13.default.createElement(
1785
- import_ui3.Toc.Item,
513
+ return /* @__PURE__ */ React5.createElement(Toc, { defaultValue }, tocFinal.map((item, index) => /* @__PURE__ */ React5.createElement(
514
+ Toc.Item,
1786
515
  {
1787
516
  key: index + item.value + item.depth,
1788
517
  value: item.value
@@ -1792,22 +521,18 @@ function FwToc() {
1792
521
  }
1793
522
  function FwBreadcrumbs() {
1794
523
  const breadcrumbs = useBreadcrumbs();
1795
- return /* @__PURE__ */ import_react13.default.createElement(
1796
- p2,
524
+ return /* @__PURE__ */ React5.createElement(
525
+ Breadcrumbs,
1797
526
  {
1798
527
  items: breadcrumbs || []
1799
528
  }
1800
529
  );
1801
530
  }
1802
531
  function FwNavLinks() {
1803
- var _a, _b;
1804
532
  const navlinks = useNavLinks();
1805
- if (typeof ((_a = navlinks == null ? void 0 : navlinks.prev) == null ? void 0 : _a.title) !== "string" || typeof ((_b = navlinks == null ? void 0 : navlinks.next) == null ? void 0 : _b.title) !== "string") {
1806
- return null;
1807
- }
1808
533
  if ((navlinks == null ? void 0 : navlinks.prev) || (navlinks == null ? void 0 : navlinks.next)) {
1809
- return /* @__PURE__ */ import_react13.default.createElement(
1810
- j2,
534
+ return /* @__PURE__ */ React5.createElement(
535
+ NavLinks,
1811
536
  {
1812
537
  prev: navlinks.prev,
1813
538
  next: navlinks.next
@@ -1817,7 +542,7 @@ function FwNavLinks() {
1817
542
  return null;
1818
543
  }
1819
544
  function IconCookbook() {
1820
- return /* @__PURE__ */ import_react13.default.createElement(
545
+ return /* @__PURE__ */ React5.createElement(
1821
546
  "svg",
1822
547
  {
1823
548
  xmlns: "http://www.w3.org/2000/svg",
@@ -1825,7 +550,7 @@ function IconCookbook() {
1825
550
  width: "1em",
1826
551
  height: "1em"
1827
552
  },
1828
- /* @__PURE__ */ import_react13.default.createElement(
553
+ /* @__PURE__ */ React5.createElement(
1829
554
  "path",
1830
555
  {
1831
556
  fillRule: "evenodd",
@@ -1836,7 +561,7 @@ function IconCookbook() {
1836
561
  );
1837
562
  }
1838
563
  function IconCommunity() {
1839
- return /* @__PURE__ */ import_react13.default.createElement(
564
+ return /* @__PURE__ */ React5.createElement(
1840
565
  "svg",
1841
566
  {
1842
567
  xmlns: "http://www.w3.org/2000/svg",
@@ -1845,7 +570,7 @@ function IconCommunity() {
1845
570
  width: "1em",
1846
571
  height: "1em"
1847
572
  },
1848
- /* @__PURE__ */ import_react13.default.createElement(
573
+ /* @__PURE__ */ React5.createElement(
1849
574
  "path",
1850
575
  {
1851
576
  fillRule: "evenodd",
@@ -1856,7 +581,7 @@ function IconCommunity() {
1856
581
  );
1857
582
  }
1858
583
  function IconMarketplace() {
1859
- return /* @__PURE__ */ import_react13.default.createElement(
584
+ return /* @__PURE__ */ React5.createElement(
1860
585
  "svg",
1861
586
  {
1862
587
  xmlns: "http://www.w3.org/2000/svg",
@@ -1865,7 +590,7 @@ function IconMarketplace() {
1865
590
  width: "1em",
1866
591
  height: "1em"
1867
592
  },
1868
- /* @__PURE__ */ import_react13.default.createElement(
593
+ /* @__PURE__ */ React5.createElement(
1869
594
  "path",
1870
595
  {
1871
596
  "fill-rule": "evenodd",
@@ -1873,7 +598,7 @@ function IconMarketplace() {
1873
598
  d: "M3.78163 3.28449C3.8768 2.96725 4.16879 2.75 4.5 2.75H19.5C19.8312 2.75 20.1232 2.96725 20.2184 3.28449L21.7184 8.28449C21.7393 8.3544 21.75 8.42701 21.75 8.5C21.75 10.5711 20.0711 12.25 18 12.25C16.7733 12.25 15.6842 11.661 15 10.7504C14.3158 11.661 13.2267 12.25 12 12.25C10.7733 12.25 9.68417 11.661 9 10.7504C8.31583 11.661 7.2267 12.25 6 12.25C3.92893 12.25 2.25 10.5711 2.25 8.5C2.25 8.42701 2.26066 8.3544 2.28163 8.28449L3.78163 3.28449ZM9.75 8.5C9.75 9.74264 10.7574 10.75 12 10.75C13.2426 10.75 14.25 9.74264 14.25 8.5C14.25 8.08579 14.5858 7.75 15 7.75C15.4142 7.75 15.75 8.08579 15.75 8.5C15.75 9.74264 16.7574 10.75 18 10.75C19.2083 10.75 20.1942 9.79754 20.2477 8.60244L18.942 4.25H5.05802L3.75229 8.60244C3.80584 9.79753 4.79169 10.75 6 10.75C7.24264 10.75 8.25 9.74264 8.25 8.5C8.25 8.08579 8.58579 7.75 9 7.75C9.41421 7.75 9.75 8.08579 9.75 8.5Z"
1874
599
  }
1875
600
  ),
1876
- /* @__PURE__ */ import_react13.default.createElement(
601
+ /* @__PURE__ */ React5.createElement(
1877
602
  "path",
1878
603
  {
1879
604
  "fill-rule": "evenodd",
@@ -1881,7 +606,7 @@ function IconMarketplace() {
1881
606
  d: "M4 10.25C4.41421 10.25 4.75 10.5858 4.75 11V19.75H6.5C6.91421 19.75 7.25 20.0858 7.25 20.5C7.25 20.9142 6.91421 21.25 6.5 21.25H4C3.58579 21.25 3.25 20.9142 3.25 20.5V11C3.25 10.5858 3.58579 10.25 4 10.25ZM20 10.25C20.4142 10.25 20.75 10.5858 20.75 11V20.5C20.75 20.9142 20.4142 21.25 20 21.25H10.5C10.0858 21.25 9.75 20.9142 9.75 20.5C9.75 20.0858 10.0858 19.75 10.5 19.75H19.25V11C19.25 10.5858 19.5858 10.25 20 10.25Z"
1882
607
  }
1883
608
  ),
1884
- /* @__PURE__ */ import_react13.default.createElement(
609
+ /* @__PURE__ */ React5.createElement(
1885
610
  "path",
1886
611
  {
1887
612
  d: "M12.003 19C11.31 18.9996 10.6384 18.7598 10.102 18.3213C9.56564 17.8829 9.19745 17.2726 9.05983 16.594C8.92222 15.9154 9.02364 15.2101 9.34693 14.5976C9.67022 13.9852 10.1955 13.5032 10.8337 13.2333C11.5673 12.9262 12.393 12.9221 13.1296 13.2222C13.8661 13.5222 14.4536 14.1018 14.7631 14.8338C15.0727 15.5659 15.0791 16.3907 14.7808 17.1274C14.4827 17.8642 13.9042 18.4527 13.1724 18.7641C12.8025 18.9205 12.4047 19.0007 12.003 19ZM11.1458 14.7215C11.1124 14.7215 11.0803 14.7348 11.0567 14.7584C11.0331 14.782 11.0198 14.8141 11.0198 14.8475V17.1923C11.0198 17.2258 11.0331 17.2578 11.0567 17.2814C11.0803 17.305 11.1124 17.3183 11.1458 17.3183C11.1671 17.3183 11.188 17.3128 11.2065 17.3024L13.3399 16.13C13.3597 16.1192 13.3761 16.1032 13.3876 16.0838C13.3991 16.0644 13.4052 16.0423 13.4052 16.0197C13.4052 15.9972 13.3991 15.9751 13.3876 15.9557C13.3761 15.9362 13.3597 15.9203 13.3399 15.9094L11.2063 14.7373C11.1879 14.727 11.1671 14.7215 11.1458 14.7215Z"
@@ -1890,7 +615,7 @@ function IconMarketplace() {
1890
615
  );
1891
616
  }
1892
617
  function IconSDK() {
1893
- return /* @__PURE__ */ import_react13.default.createElement(
618
+ return /* @__PURE__ */ React5.createElement(
1894
619
  "svg",
1895
620
  {
1896
621
  viewBox: "0 0 15 15",
@@ -1898,7 +623,7 @@ function IconSDK() {
1898
623
  width: "1em",
1899
624
  height: "1em"
1900
625
  },
1901
- /* @__PURE__ */ import_react13.default.createElement(
626
+ /* @__PURE__ */ React5.createElement(
1902
627
  "path",
1903
628
  {
1904
629
  d: "M7.28856 0.796908C7.42258 0.734364 7.57742 0.734364 7.71144 0.796908L13.7114 3.59691C13.8875 3.67906 14 3.85574 14 4.05V10.95C14 11.1443 13.8875 11.3209 13.7114 11.4031L7.71144 14.2031C7.57742 14.2656 7.42258 14.2656 7.28856 14.2031L1.28856 11.4031C1.11252 11.3209 1 11.1443 1 10.95V4.05C1 3.85574 1.11252 3.67906 1.28856 3.59691L7.28856 0.796908ZM2 4.80578L7 6.93078V12.9649L2 10.6316V4.80578ZM8 12.9649L13 10.6316V4.80578L8 6.93078V12.9649ZM7.5 6.05672L12.2719 4.02866L7.5 1.80176L2.72809 4.02866L7.5 6.05672Z",
@@ -1909,8 +634,7 @@ function IconSDK() {
1909
634
  )
1910
635
  );
1911
636
  }
1912
- // Annotate the CommonJS export names for ESM import in node:
1913
- 0 && (module.exports = {
637
+ export {
1914
638
  Framework,
1915
639
  FwBreadcrumbs,
1916
640
  FwNav,
@@ -1919,63 +643,5 @@ function IconSDK() {
1919
643
  FwSubNav,
1920
644
  FwToc,
1921
645
  useMatchedSubNav
1922
- });
1923
- /*! Bundled license information:
1924
-
1925
- lucide-react/dist/esm/shared/src/utils.js:
1926
- (**
1927
- * @license lucide-react v0.447.0 - ISC
1928
- *
1929
- * This source code is licensed under the ISC license.
1930
- * See the LICENSE file in the root directory of this source tree.
1931
- *)
1932
-
1933
- lucide-react/dist/esm/defaultAttributes.js:
1934
- (**
1935
- * @license lucide-react v0.447.0 - ISC
1936
- *
1937
- * This source code is licensed under the ISC license.
1938
- * See the LICENSE file in the root directory of this source tree.
1939
- *)
1940
-
1941
- lucide-react/dist/esm/Icon.js:
1942
- (**
1943
- * @license lucide-react v0.447.0 - ISC
1944
- *
1945
- * This source code is licensed under the ISC license.
1946
- * See the LICENSE file in the root directory of this source tree.
1947
- *)
1948
-
1949
- lucide-react/dist/esm/createLucideIcon.js:
1950
- (**
1951
- * @license lucide-react v0.447.0 - ISC
1952
- *
1953
- * This source code is licensed under the ISC license.
1954
- * See the LICENSE file in the root directory of this source tree.
1955
- *)
1956
-
1957
- lucide-react/dist/esm/icons/chevron-left.js:
1958
- (**
1959
- * @license lucide-react v0.447.0 - ISC
1960
- *
1961
- * This source code is licensed under the ISC license.
1962
- * See the LICENSE file in the root directory of this source tree.
1963
- *)
1964
-
1965
- lucide-react/dist/esm/icons/chevron-right.js:
1966
- (**
1967
- * @license lucide-react v0.447.0 - ISC
1968
- *
1969
- * This source code is licensed under the ISC license.
1970
- * See the LICENSE file in the root directory of this source tree.
1971
- *)
1972
-
1973
- lucide-react/dist/esm/lucide-react.js:
1974
- (**
1975
- * @license lucide-react v0.447.0 - ISC
1976
- *
1977
- * This source code is licensed under the ISC license.
1978
- * See the LICENSE file in the root directory of this source tree.
1979
- *)
1980
- */
646
+ };
1981
647
  //# sourceMappingURL=react.js.map