gridsmith-ui 0.30.1 → 0.30.2
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.
- package/CHANGELOG.md +21 -1
- package/dist/chat.js +14 -8
- package/dist/chat.js.map +1 -1
- package/dist/{chunk-R5QXMNW7.js → chunk-4HJDOZ2M.js} +107 -17
- package/dist/chunk-4HJDOZ2M.js.map +1 -0
- package/dist/{chunk-SJZWEBHL.js → chunk-ACLKDE5W.js} +6 -5
- package/dist/chunk-ACLKDE5W.js.map +1 -0
- package/dist/{chunk-OVHBQT3Z.js → chunk-BZRZENBS.js} +4 -4
- package/dist/{chunk-OVHBQT3Z.js.map → chunk-BZRZENBS.js.map} +1 -1
- package/dist/{chunk-ISONVOA7.js → chunk-HVGHGBKV.js} +4 -5
- package/dist/chunk-HVGHGBKV.js.map +1 -0
- package/dist/{chunk-KMKBOTFR.js → chunk-K6IDOCGE.js} +7 -9
- package/dist/chunk-K6IDOCGE.js.map +1 -0
- package/dist/{chunk-ULCACQSA.js → chunk-MIUSSYVE.js} +3 -3
- package/dist/{chunk-ULCACQSA.js.map → chunk-MIUSSYVE.js.map} +1 -1
- package/dist/{chunk-T52LAFKG.js → chunk-SIWERRP2.js} +7 -8
- package/dist/chunk-SIWERRP2.js.map +1 -0
- package/dist/{chunk-OX3NNMWG.js → chunk-SQHKC4HA.js} +8 -5
- package/dist/chunk-SQHKC4HA.js.map +1 -0
- package/dist/{chunk-SLRTSBCJ.js → chunk-USHW523V.js} +31 -10
- package/dist/chunk-USHW523V.js.map +1 -0
- package/dist/{chunk-UDJOIVKQ.js → chunk-WWN6CQKI.js} +34 -4
- package/dist/chunk-WWN6CQKI.js.map +1 -0
- package/dist/{chunk-NEUWZUK6.js → chunk-ZASGFL5D.js} +3 -3
- package/dist/{chunk-NEUWZUK6.js.map → chunk-ZASGFL5D.js.map} +1 -1
- package/dist/{chunk-IELIF4PJ.js → chunk-ZCDA74RQ.js} +3 -3
- package/dist/{chunk-IELIF4PJ.js.map → chunk-ZCDA74RQ.js.map} +1 -1
- package/dist/data-grid.js +6 -8
- package/dist/data-grid.js.map +1 -1
- package/dist/editor-mentions.js +2 -3
- package/dist/editor-mentions.js.map +1 -1
- package/dist/editor.js +2 -4
- package/dist/editor.js.map +1 -1
- package/dist/index.d.ts +14 -1
- package/dist/index.js +44 -38
- package/dist/index.js.map +1 -1
- package/dist/kanban.js +7 -9
- package/dist/kanban.js.map +1 -1
- package/dist/resizable.js +6 -8
- package/dist/resizable.js.map +1 -1
- package/dist/virtualized.js +6 -8
- package/dist/virtualized.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-HTXP5BMM.js +0 -38
- package/dist/chunk-HTXP5BMM.js.map +0 -1
- package/dist/chunk-ISONVOA7.js.map +0 -1
- package/dist/chunk-KMKBOTFR.js.map +0 -1
- package/dist/chunk-OX3NNMWG.js.map +0 -1
- package/dist/chunk-R5QXMNW7.js.map +0 -1
- package/dist/chunk-SJZWEBHL.js.map +0 -1
- package/dist/chunk-SLRTSBCJ.js.map +0 -1
- package/dist/chunk-T52LAFKG.js.map +0 -1
- package/dist/chunk-UDJOIVKQ.js.map +0 -1
- package/dist/chunk-WIUGPZOH.js +0 -88
- package/dist/chunk-WIUGPZOH.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { useAppShell, REACT_VERSION_PROBLEM, Breadcrumbs, useCrumbFollow, crumbGoes, useCornerInset, NAVBAR_INSET_PRIORITY, useOverlayMark, useDirtyGuard, useScrollbarInset, DrawerFooterCtx, OverlayMarkScope, OverlayCloseCtx, insetLessScrollbar, DiscardConfirm, OVERLAY_ROOT_ATTR, OverlayMarkCtx, useCompact, useElementWidth, DrawerPanel, useCloseSettle, besideRoom, PANEL_INSET_PRIORITY, Drawer, useRememberedWidth, pxOf, ResizeEdge, LAUNCHER_INSET_PRIORITY, defaultMaxWidth } from './chunk-
|
|
3
|
-
export { AppShell, Breadcrumbs, Drawer, SkipLink, useAppShell, useUnsavedChanges } from './chunk-
|
|
2
|
+
import { useAppShell, REACT_VERSION_PROBLEM, Breadcrumbs, useCrumbFollow, crumbGoes, useCornerInset, NAVBAR_INSET_PRIORITY, useOverlayMark, useDirtyGuard, useScrollbarInset, DrawerFooterCtx, OverlayMarkScope, OverlayCloseCtx, insetLessScrollbar, DiscardConfirm, OVERLAY_ROOT_ATTR, OverlayMarkCtx, useCompact, useElementWidth, DrawerPanel, useCloseSettle, besideRoom, PANEL_INSET_PRIORITY, Drawer, useRememberedWidth, pxOf, ResizeEdge, LAUNCHER_INSET_PRIORITY, defaultMaxWidth } from './chunk-K6IDOCGE.js';
|
|
3
|
+
export { AppShell, Breadcrumbs, Drawer, SkipLink, useAppShell, useUnsavedChanges } from './chunk-K6IDOCGE.js';
|
|
4
4
|
import { Skeleton, TITLE_TEXT } from './chunk-6C2IUMY7.js';
|
|
5
5
|
export { Skeleton } from './chunk-6C2IUMY7.js';
|
|
6
6
|
import { useScrollEdges, EDGE_FADE } from './chunk-3BRQRKDO.js';
|
|
7
|
-
import { Avatar, foldForSearch, useActiveOptionInView, shownMentions, matchMentions, mentionOptionId, MentionList, initialsOf } from './chunk-
|
|
8
|
-
export { Avatar } from './chunk-
|
|
9
|
-
import { Link } from './chunk-
|
|
10
|
-
export { CodeBlock, Divider, Link } from './chunk-
|
|
11
|
-
import { DropdownMenu } from './chunk-
|
|
12
|
-
export { DropdownMenu } from './chunk-
|
|
7
|
+
import { Avatar, foldForSearch, useActiveOptionInView, shownMentions, matchMentions, mentionOptionId, MentionList, initialsOf } from './chunk-ZASGFL5D.js';
|
|
8
|
+
export { Avatar } from './chunk-ZASGFL5D.js';
|
|
9
|
+
import { Link } from './chunk-SQHKC4HA.js';
|
|
10
|
+
export { CodeBlock, Divider, Link } from './chunk-SQHKC4HA.js';
|
|
11
|
+
import { DropdownMenu } from './chunk-HVGHGBKV.js';
|
|
12
|
+
export { DropdownMenu } from './chunk-HVGHGBKV.js';
|
|
13
13
|
import { useFillHeight, FillContext } from './chunk-DBHVJ7Z3.js';
|
|
14
|
-
import {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
import { localeCache, startOfDay, addDays, useWeekStart, useDateWords, localeDayFirst, dayKey, moveDay, addMonths, DateSegmentFields, getMonthGrid, isSameMonth, isSameDay, DatePicker, timeSegments, pad2, inferColumnKinds, useCardsSwitch, CARDS_BELOW, kindOfRenderedText, Checkbox, CardValue, SortIndicator, startOfWeek, endOfWeek, addMonthsClamped, isExcludedDay, CutCell, CutEmail, stepValue, separatorMovesOn, TIME_SEPARATORS, typeDigit, getEventsForDay, layoutWeek, isWeekend, getWeekDays, isBarEvent, layoutPieces, dayPieces, groupEventsByDay, timeToFraction } from './chunk-
|
|
18
|
-
export { Checkbox, CheckboxGroup, CheckboxGroupItem, DatePicker, HoverCard, TextOverflow } from './chunk-
|
|
19
|
-
import { useWholeListCheck, pagerPart, Pagination, Input, CHECK_FILL, Dropdown, FilterRowContext, SWITCH_KNOB_ON, SWITCH_KNOB_OFF, SWITCH_KNOB_MOTION, SWITCH_TRACK_ON, SWITCH_TRACK_OFF, useFieldControl, useField, OutsideField, NumberInput, InlineFieldError, Label, AddAnotherRowCtx, Field } from './chunk-
|
|
20
|
-
export { Dropdown, Field, InlineFieldError, Input, Label, NumberInput, Pagination, Popover, Textarea, Toggle, usePagination } from './chunk-
|
|
14
|
+
import { Badge } from './chunk-BZRZENBS.js';
|
|
15
|
+
export { Badge } from './chunk-BZRZENBS.js';
|
|
16
|
+
import { useKeyboardScroll } from './chunk-ACLKDE5W.js';
|
|
17
|
+
import { localeCache, startOfDay, addDays, useWeekStart, useDateWords, localeDayFirst, dayKey, moveDay, addMonths, DateSegmentFields, getMonthGrid, isSameMonth, isSameDay, DatePicker, timeSegments, pad2, inferColumnKinds, useCardsSwitch, CARDS_BELOW, kindOfRenderedText, Checkbox, CardValue, SortIndicator, startOfWeek, endOfWeek, addMonthsClamped, isExcludedDay, CutCell, CutEmail, stepValue, separatorMovesOn, TIME_SEPARATORS, typeDigit, getEventsForDay, layoutWeek, isWeekend, getWeekDays, isBarEvent, layoutPieces, dayPieces, groupEventsByDay, timeToFraction } from './chunk-SIWERRP2.js';
|
|
18
|
+
export { Checkbox, CheckboxGroup, CheckboxGroupItem, DatePicker, HoverCard, TextOverflow } from './chunk-SIWERRP2.js';
|
|
19
|
+
import { useWholeListCheck, pagerPart, Pagination, Input, CHECK_FILL, Dropdown, FilterRowContext, SWITCH_KNOB_ON, SWITCH_KNOB_OFF, SWITCH_KNOB_MOTION, SWITCH_TRACK_ON, SWITCH_TRACK_OFF, useFieldControl, useField, OutsideField, NumberInput, InlineFieldError, Label, AddAnotherRowCtx, Field } from './chunk-USHW523V.js';
|
|
20
|
+
export { Dropdown, Field, InlineFieldError, Input, Label, NumberInput, Pagination, Popover, Textarea, Toggle, usePagination } from './chunk-USHW523V.js';
|
|
21
21
|
import { useShellPreferences, PREFERENCE_HOUSE_DEFAULTS, formatRelativeTime, thresholdOf, toMillis, formatFullTime, datedMillis, preferenceActionKey, DAY, HOUR, MINUTE } from './chunk-TYNDXMBV.js';
|
|
22
22
|
export { PreferencesContext, formatFullTime, formatRelativeTime, preferenceActionKey, usePreferences } from './chunk-TYNDXMBV.js';
|
|
23
23
|
import { useFormatLocale, useHydrated, useToday, LocaleContext } from './chunk-LJYSVZMI.js';
|
|
@@ -27,22 +27,19 @@ import { useInputModality, inputModality } from './chunk-7RKC5C7G.js';
|
|
|
27
27
|
export { INPUT_MODALITY_ATTR, inputModality, installInputModality, useInputModality } from './chunk-7RKC5C7G.js';
|
|
28
28
|
import { FormChangeCtx, useReportedChange, useOptionalFormContext, FormCtx } from './chunk-72SDAX54.js';
|
|
29
29
|
export { useFormContext } from './chunk-72SDAX54.js';
|
|
30
|
-
import { Button, CardSurfaceCtx, useScrollsInside, SplitPaneCtx, RowsCtx, PageActionsCtx, ControlSizeContext, triggerType, SurfaceBoundary, Spinner, useFramesItself, TableCardCtx } from './chunk-
|
|
31
|
-
export { Button, ButtonSizeContext, ControlSizeContext, Spinner } from './chunk-
|
|
30
|
+
import { Button, CardSurfaceCtx, useScrollsInside, SplitPaneCtx, RowsCtx, PageActionsCtx, ControlSizeContext, triggerType, SurfaceBoundary, Spinner, useFramesItself, TableCardCtx } from './chunk-MIUSSYVE.js';
|
|
31
|
+
export { Button, ButtonSizeContext, ControlSizeContext, Spinner } from './chunk-MIUSSYVE.js';
|
|
32
32
|
import { elementType } from './chunk-NKUCS67T.js';
|
|
33
33
|
import { useBreakpoint, readBreakpointPx } from './chunk-ZHUVLBCC.js';
|
|
34
34
|
export { BreakpointWidthProvider, useBreakpoint } from './chunk-ZHUVLBCC.js';
|
|
35
|
-
import {
|
|
36
|
-
export {
|
|
37
|
-
import {
|
|
38
|
-
export {
|
|
39
|
-
import { useTextOverflow } from './chunk-IELIF4PJ.js';
|
|
40
|
-
export { useTextOverflow } from './chunk-IELIF4PJ.js';
|
|
41
|
-
import { AutoTooltip } from './chunk-UDJOIVKQ.js';
|
|
42
|
-
export { Tooltip } from './chunk-UDJOIVKQ.js';
|
|
35
|
+
import { useTextOverflow } from './chunk-ZCDA74RQ.js';
|
|
36
|
+
export { useTextOverflow } from './chunk-ZCDA74RQ.js';
|
|
37
|
+
import { AutoTooltip, useRevealFocus } from './chunk-WWN6CQKI.js';
|
|
38
|
+
export { Tooltip, useRevealFocus } from './chunk-WWN6CQKI.js';
|
|
43
39
|
import { Icon, slotIcon, warnOnce } from './chunk-L6HWACK7.js';
|
|
44
40
|
import { mergeRefs } from './chunk-7Q46JXSK.js';
|
|
45
|
-
import { useLatest, usePosition } from './chunk-
|
|
41
|
+
import { focusAfterSelfRemoval, FOCUSABLE, useFocusKeptInList, useLatest, FIELD, ZOOM_KEYS, rovingTabStop, useOverlayLayer, useFocusTrap, useFocusBeforeOpen, rememberOpener, focusInitial, OVERLAY_CLOSE_ATTR, usePopupFocus, usePosition, CONTROL_ANCESTOR, useGridKeyboard, focusAfterRemoval, useNonModalDialog, useReturnFocus } from './chunk-4HJDOZ2M.js';
|
|
42
|
+
export { useGridKeyboard } from './chunk-4HJDOZ2M.js';
|
|
46
43
|
import { cn, FOCUS_RING, GLASS_SURFACE, FOCUS_INSET, PEER_FOCUS_RING, GLASS_BACKDROP, FOCUS_ROOM, lockBodyScroll, unlockBodyScroll, OVERLAY_SURFACE, GLASS_OVERLAY, ERROR_HAS_FOCUS_RING, FIELD_HAS_FOCUS_RING, GROUP_FOCUS_RING, ERROR_ACTIVE_RING, ACTIVE_RING, ERROR_FOCUS_WITHIN_RING, FIELD_FOCUS_WITHIN_RING, GLASS_DROPDOWN, ERROR_FOCUS_RING, FIELD_FOCUS_RING, atLeastFocusRoom } from './chunk-YL5KD5RC.js';
|
|
47
44
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
48
45
|
import { forwardRef, useRef, useId, useEffect, useState, createContext, useCallback, useLayoutEffect, useMemo, useContext, isValidElement, memo, useImperativeHandle, useSyncExternalStore, Children, Fragment as Fragment$1, cloneElement, useReducer } from 'react';
|
|
@@ -8850,7 +8847,9 @@ function ExpandableDescription({ children, className }) {
|
|
|
8850
8847
|
);
|
|
8851
8848
|
}
|
|
8852
8849
|
function HorizontalLayout({ items, minItemWidth, className }) {
|
|
8853
|
-
|
|
8850
|
+
const [row, setRow] = useState(null);
|
|
8851
|
+
useKeyboardScroll(row, "Timeline", true, false, "x");
|
|
8852
|
+
return /* @__PURE__ */ jsx("div", { ref: setRow, "data-timeline-row": "", className: cn("relative flex items-start overflow-x-auto snap-x", FOCUS_INSET, className), children: items.map((item, i) => {
|
|
8854
8853
|
const isFirst = i === 0;
|
|
8855
8854
|
const isLast = i === items.length - 1;
|
|
8856
8855
|
return /* @__PURE__ */ jsxs("div", { className: "flex flex-1 shrink-0 flex-col items-center snap-start", style: { minWidth: minItemWidth }, children: [
|
|
@@ -12281,7 +12280,7 @@ function useScrollTrack(stopTab, enabled) {
|
|
|
12281
12280
|
};
|
|
12282
12281
|
}
|
|
12283
12282
|
var SCROLL_TRACK = "overflow-x-auto overflow-y-hidden [scrollbar-width:none] [&::-webkit-scrollbar]:hidden";
|
|
12284
|
-
function TabStrip({ overflow, fullWidth, track, className, children }) {
|
|
12283
|
+
function TabStrip({ overflow, fullWidth, track, label, className, children }) {
|
|
12285
12284
|
const scrolls = overflow === "scroll";
|
|
12286
12285
|
return /* @__PURE__ */ jsx("div", { className: cn("min-w-0 max-w-full", fullWidth && "w-full", className), children: /* @__PURE__ */ jsx(
|
|
12287
12286
|
"div",
|
|
@@ -12289,7 +12288,7 @@ function TabStrip({ overflow, fullWidth, track, className, children }) {
|
|
|
12289
12288
|
...scrolls ? track : {},
|
|
12290
12289
|
"data-gs-clip": scrolls ? void 0 : "",
|
|
12291
12290
|
className: cn("relative -m-[4px] p-[4px] scroll-px-[4px]", scrolls ? SCROLL_TRACK : "overflow-hidden"),
|
|
12292
|
-
children: /* @__PURE__ */ jsx("div", { role: "tablist", className: cn(trackClasses("horizontal"), scrolls ? "w-max min-w-full" : "w-full"), children })
|
|
12291
|
+
children: /* @__PURE__ */ jsx("div", { role: "tablist", "aria-label": label, className: cn(trackClasses("horizontal"), scrolls ? "w-max min-w-full" : "w-full"), children })
|
|
12293
12292
|
}
|
|
12294
12293
|
) });
|
|
12295
12294
|
}
|
|
@@ -12450,7 +12449,7 @@ function TabButton({
|
|
|
12450
12449
|
return btn;
|
|
12451
12450
|
}
|
|
12452
12451
|
function TabsList({ children, className }) {
|
|
12453
|
-
const { orientation, fullWidth, overflow, stopTab } = useTabsCtx();
|
|
12452
|
+
const { orientation, fullWidth, overflow, stopTab, label } = useTabsCtx();
|
|
12454
12453
|
const track = useScrollTrack(stopTab, orientation === "horizontal" && overflow === "scroll");
|
|
12455
12454
|
if (orientation === "vertical") {
|
|
12456
12455
|
return /* @__PURE__ */ jsx(
|
|
@@ -12458,12 +12457,13 @@ function TabsList({ children, className }) {
|
|
|
12458
12457
|
{
|
|
12459
12458
|
role: "tablist",
|
|
12460
12459
|
"aria-orientation": "vertical",
|
|
12460
|
+
"aria-label": label,
|
|
12461
12461
|
className: cn(trackClasses("vertical"), className),
|
|
12462
12462
|
children
|
|
12463
12463
|
}
|
|
12464
12464
|
);
|
|
12465
12465
|
}
|
|
12466
|
-
return /* @__PURE__ */ jsx(TabStrip, { overflow, fullWidth, track, className, children });
|
|
12466
|
+
return /* @__PURE__ */ jsx(TabStrip, { overflow, fullWidth, track, label, className, children });
|
|
12467
12467
|
}
|
|
12468
12468
|
function TabsTrigger({ value, children, count, icon, disabled, truncate, className }) {
|
|
12469
12469
|
const { activeTab, onTabChange, orientation, fullWidth, overflow, activation, stopTab, setFocusedTab } = useTabsCtx();
|
|
@@ -12510,6 +12510,7 @@ function TabsRoot(props) {
|
|
|
12510
12510
|
fullWidth = false,
|
|
12511
12511
|
overflow = "scroll",
|
|
12512
12512
|
activation = "automatic",
|
|
12513
|
+
"aria-label": ariaLabel,
|
|
12513
12514
|
className
|
|
12514
12515
|
} = props;
|
|
12515
12516
|
const isMobile = useBreakpoint("md");
|
|
@@ -12533,6 +12534,7 @@ function TabsRoot(props) {
|
|
|
12533
12534
|
options: tabs.filter((t) => !t.disabled).map((t) => ({ id: t.id, label: t.label, group: t.group })),
|
|
12534
12535
|
value: activeTab,
|
|
12535
12536
|
onChange: (v) => onTabChange(v),
|
|
12537
|
+
"aria-label": ariaLabel ?? "Contents",
|
|
12536
12538
|
className
|
|
12537
12539
|
}
|
|
12538
12540
|
) })
|
|
@@ -12544,6 +12546,7 @@ function TabsRoot(props) {
|
|
|
12544
12546
|
{
|
|
12545
12547
|
role: "tablist",
|
|
12546
12548
|
"aria-orientation": "vertical",
|
|
12549
|
+
"aria-label": ariaLabel,
|
|
12547
12550
|
className: cn(trackClasses("vertical"), className),
|
|
12548
12551
|
children: tabs.map((tab, i) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
12549
12552
|
tab.group && tab.group !== tabs[i - 1]?.group && /* @__PURE__ */ jsx(
|
|
@@ -12562,9 +12565,9 @@ function TabsRoot(props) {
|
|
|
12562
12565
|
}
|
|
12563
12566
|
);
|
|
12564
12567
|
}
|
|
12565
|
-
return /* @__PURE__ */ jsx(TabStrip, { overflow: arrayOverflow, fullWidth, track, className, children: tabs.map((tab, i) => /* @__PURE__ */ jsx(TabButton, { hasPanel: false, ...tab, orientation: effectiveOrientation, activeTab, onTabChange, fullWidth, isTabStop: i === stopIndex, setFocusedTab, onKeyDown: (e) => handleTabKeyDown(e, tab.id, () => tabs, effectiveOrientation, select) }, tab.id)) });
|
|
12568
|
+
return /* @__PURE__ */ jsx(TabStrip, { overflow: arrayOverflow, fullWidth, track, label: ariaLabel, className, children: tabs.map((tab, i) => /* @__PURE__ */ jsx(TabButton, { hasPanel: false, ...tab, orientation: effectiveOrientation, activeTab, onTabChange, fullWidth, isTabStop: i === stopIndex, setFocusedTab, onKeyDown: (e) => handleTabKeyDown(e, tab.id, () => tabs, effectiveOrientation, select) }, tab.id)) });
|
|
12566
12569
|
}
|
|
12567
|
-
return /* @__PURE__ */ jsx(TabsContext.Provider, { value: { activeTab, onTabChange, orientation: effectiveOrientation, fullWidth, overflow, activation, stopTab, setFocusedTab }, children: /* @__PURE__ */ jsx("div", { className, children: props.children }) });
|
|
12570
|
+
return /* @__PURE__ */ jsx(TabsContext.Provider, { value: { activeTab, onTabChange, orientation: effectiveOrientation, fullWidth, overflow, activation, stopTab, setFocusedTab, label: ariaLabel }, children: /* @__PURE__ */ jsx("div", { className, children: props.children }) });
|
|
12568
12571
|
}
|
|
12569
12572
|
var Tabs = Object.assign(TabsRoot, {
|
|
12570
12573
|
List: TabsList,
|
|
@@ -12614,7 +12617,7 @@ function SettingsLayout({
|
|
|
12614
12617
|
const stickyTop = shell ? "var(--ds-sticky-offset, 0px)" : "calc(var(--ds-navbar-height) + var(--ds-sticky-offset, 0px))";
|
|
12615
12618
|
if (layout === "tabs") {
|
|
12616
12619
|
return /* @__PURE__ */ jsxs("div", { ref: rootRef, "data-settings-layout": "tabs", className: cn("flex flex-col gap-ds-6", className), children: [
|
|
12617
|
-
/* @__PURE__ */ jsx("nav", { "aria-label": ariaLabel, children: /* @__PURE__ */ jsx(Tabs, { orientation: "horizontal", mobile: "dropdown", tabs, activeTab: value, onTabChange: onChange }) }),
|
|
12620
|
+
/* @__PURE__ */ jsx("nav", { "aria-label": ariaLabel, children: /* @__PURE__ */ jsx(Tabs, { orientation: "horizontal", mobile: "dropdown", tabs, activeTab: value, onTabChange: onChange, "aria-label": ariaLabel }) }),
|
|
12618
12621
|
/* @__PURE__ */ jsx("div", { "data-settings-panel": "", className: PANEL_CLASSES, style: PANEL_STYLE, children })
|
|
12619
12622
|
] });
|
|
12620
12623
|
}
|
|
@@ -12636,7 +12639,7 @@ function SettingsLayout({
|
|
|
12636
12639
|
);
|
|
12637
12640
|
}
|
|
12638
12641
|
return /* @__PURE__ */ jsxs("div", { ref: rootRef, "data-settings-layout": "sidebar", className: cn("flex flex-row items-start gap-ds-8", className), children: [
|
|
12639
|
-
/* @__PURE__ */ jsx("nav", { "aria-label": ariaLabel, className: "sticky self-start shrink-0", style: { width: `${railWidth}px`, top: stickyTop }, children: /* @__PURE__ */ jsx(Tabs, { orientation: "vertical", tabs, activeTab: value, onTabChange: onChange, className: "w-full" }) }),
|
|
12642
|
+
/* @__PURE__ */ jsx("nav", { "aria-label": ariaLabel, className: "sticky self-start shrink-0", style: { width: `${railWidth}px`, top: stickyTop }, children: /* @__PURE__ */ jsx(Tabs, { orientation: "vertical", tabs, activeTab: value, onTabChange: onChange, "aria-label": ariaLabel, className: "w-full" }) }),
|
|
12640
12643
|
/* @__PURE__ */ jsx("div", { "data-settings-panel": "", className: cn("flex-1", PANEL_CLASSES), style: PANEL_STYLE, children })
|
|
12641
12644
|
] });
|
|
12642
12645
|
}
|
|
@@ -12842,11 +12845,12 @@ function ScrollArea({
|
|
|
12842
12845
|
className,
|
|
12843
12846
|
orientation = "vertical",
|
|
12844
12847
|
maxHeight,
|
|
12845
|
-
maxWidth
|
|
12848
|
+
maxWidth,
|
|
12849
|
+
"aria-label": ariaLabel = "Scrollable content"
|
|
12846
12850
|
}) {
|
|
12847
12851
|
const viewportRef = useRef(null);
|
|
12848
12852
|
const [viewport, setViewport] = useState(null);
|
|
12849
|
-
|
|
12853
|
+
useKeyboardScroll(viewport, ariaLabel, true, false, orientation === "horizontal" ? "x" : orientation === "both" ? "both" : "y");
|
|
12850
12854
|
const viewportRefs = useCallback((node) => {
|
|
12851
12855
|
viewportRef.current = node;
|
|
12852
12856
|
setViewport(node);
|
|
@@ -12941,7 +12945,9 @@ function ScrollArea({
|
|
|
12941
12945
|
ref: viewportRefs,
|
|
12942
12946
|
onScroll: updateThumbs,
|
|
12943
12947
|
className: cn(
|
|
12944
|
-
|
|
12948
|
+
// the frame's corners, so the inset ring follows them rather than being cut by them (as the Table's region)
|
|
12949
|
+
"h-full w-full scroll-p-[4px] rounded-[inherit]",
|
|
12950
|
+
FOCUS_INSET,
|
|
12945
12951
|
orientation === "vertical" && "overflow-y-auto overflow-x-hidden",
|
|
12946
12952
|
orientation === "horizontal" && "overflow-x-auto overflow-y-hidden",
|
|
12947
12953
|
orientation === "both" && "overflow-auto",
|