@dxos/react-ui-stack 0.7.4 → 0.7.5-labs.071a3e2
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/dist/lib/browser/index.mjs +228 -130
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +229 -129
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +228 -130
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/components/LayoutControls.d.ts.map +1 -1
- package/dist/types/src/components/Stack.d.ts +3 -0
- package/dist/types/src/components/Stack.d.ts.map +1 -1
- package/dist/types/src/components/Stack.stories.d.ts.map +1 -1
- package/dist/types/src/components/StackContext.d.ts +9 -4
- package/dist/types/src/components/StackContext.d.ts.map +1 -1
- package/dist/types/src/components/StackItem.d.ts +14 -9
- package/dist/types/src/components/StackItem.d.ts.map +1 -1
- package/dist/types/src/components/StackItemContent.d.ts +35 -2
- package/dist/types/src/components/StackItemContent.d.ts.map +1 -1
- package/dist/types/src/components/StackItemDragHandle.d.ts +6 -0
- package/dist/types/src/components/StackItemDragHandle.d.ts.map +1 -0
- package/dist/types/src/components/StackItemHeading.d.ts.map +1 -1
- package/dist/types/src/components/StackItemResizeHandle.d.ts +1 -0
- package/dist/types/src/components/StackItemResizeHandle.d.ts.map +1 -1
- package/dist/types/src/components/StackItemSigil.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -0
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +28 -26
- package/src/components/LayoutControls.tsx +1 -3
- package/src/components/Stack.stories.tsx +5 -4
- package/src/components/Stack.tsx +73 -10
- package/src/components/StackContext.tsx +13 -4
- package/src/components/StackItem.tsx +49 -16
- package/src/components/StackItemContent.tsx +48 -33
- package/src/components/StackItemDragHandle.tsx +22 -0
- package/src/components/StackItemHeading.tsx +3 -5
- package/src/components/StackItemResizeHandle.tsx +27 -15
- package/src/components/StackItemSigil.tsx +90 -103
- package/src/components/index.ts +1 -0
- package/dist/types/src/testing/EditorContent.d.ts +0 -8
- package/dist/types/src/testing/EditorContent.d.ts.map +0 -1
- package/src/testing/EditorContent.tsx +0 -60
package/dist/lib/node/index.cjs
CHANGED
|
@@ -35,47 +35,61 @@ __export(node_exports, {
|
|
|
35
35
|
Stack: () => Stack,
|
|
36
36
|
StackContext: () => StackContext,
|
|
37
37
|
StackItem: () => StackItem,
|
|
38
|
+
StackItemContext: () => StackItemContext,
|
|
39
|
+
autoScrollRootAttributes: () => autoScrollRootAttributes,
|
|
38
40
|
railGridHorizontal: () => railGridHorizontal,
|
|
39
41
|
railGridVertical: () => railGridVertical,
|
|
40
|
-
translations: () => translations_default
|
|
42
|
+
translations: () => translations_default,
|
|
43
|
+
useStack: () => useStack,
|
|
44
|
+
useStackItem: () => useStackItem
|
|
41
45
|
});
|
|
42
46
|
module.exports = __toCommonJS(node_exports);
|
|
47
|
+
var import_combine = require("@atlaskit/pragmatic-drag-and-drop/combine");
|
|
48
|
+
var import_adapter = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
49
|
+
var import_element = require("@atlaskit/pragmatic-drag-and-drop-auto-scroll/element");
|
|
50
|
+
var import_closest_edge = require("@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge");
|
|
43
51
|
var import_react_tabster = require("@fluentui/react-tabster");
|
|
52
|
+
var import_react_compose_refs = require("@radix-ui/react-compose-refs");
|
|
44
53
|
var import_react = __toESM(require("react"));
|
|
54
|
+
var import_react_ui = require("@dxos/react-ui");
|
|
45
55
|
var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
46
56
|
var import_react2 = require("react");
|
|
47
|
-
var
|
|
48
|
-
var
|
|
49
|
-
var
|
|
57
|
+
var import_combine2 = require("@atlaskit/pragmatic-drag-and-drop/combine");
|
|
58
|
+
var import_adapter2 = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
59
|
+
var import_preserve_offset_on_source = require("@atlaskit/pragmatic-drag-and-drop/element/preserve-offset-on-source");
|
|
60
|
+
var import_scroll_just_enough_into_view = require("@atlaskit/pragmatic-drag-and-drop/element/scroll-just-enough-into-view");
|
|
61
|
+
var import_closest_edge2 = require("@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge");
|
|
50
62
|
var import_react_tabster2 = require("@fluentui/react-tabster");
|
|
51
|
-
var
|
|
63
|
+
var import_react_compose_refs2 = require("@radix-ui/react-compose-refs");
|
|
52
64
|
var import_react3 = __toESM(require("react"));
|
|
65
|
+
var import_react_ui2 = require("@dxos/react-ui");
|
|
53
66
|
var import_react_ui_theme2 = require("@dxos/react-ui-theme");
|
|
54
67
|
var import_react4 = __toESM(require("react"));
|
|
55
68
|
var import_react_ui_theme3 = require("@dxos/react-ui-theme");
|
|
56
|
-
var
|
|
69
|
+
var import_react_slot = require("@radix-ui/react-slot");
|
|
57
70
|
var import_react5 = __toESM(require("react"));
|
|
71
|
+
var import_react_tabster3 = require("@fluentui/react-tabster");
|
|
72
|
+
var import_react6 = __toESM(require("react"));
|
|
58
73
|
var import_react_ui_attention = require("@dxos/react-ui-attention");
|
|
59
74
|
var import_react_ui_theme4 = require("@dxos/react-ui-theme");
|
|
60
|
-
var
|
|
75
|
+
var import_adapter3 = require("@atlaskit/pragmatic-drag-and-drop/element/adapter");
|
|
61
76
|
var import_disable_native_drag_preview = require("@atlaskit/pragmatic-drag-and-drop/element/disable-native-drag-preview");
|
|
62
77
|
var import_prevent_unhandled = require("@atlaskit/pragmatic-drag-and-drop/prevent-unhandled");
|
|
63
|
-
var import_react6 = __toESM(require("react"));
|
|
64
|
-
var import_react_ui_theme5 = require("@dxos/react-ui-theme");
|
|
65
78
|
var import_react7 = __toESM(require("react"));
|
|
79
|
+
var import_react_ui_theme5 = require("@dxos/react-ui-theme");
|
|
80
|
+
var import_react8 = __toESM(require("react"));
|
|
66
81
|
var import_keyboard = require("@dxos/keyboard");
|
|
67
|
-
var
|
|
82
|
+
var import_react_ui3 = require("@dxos/react-ui");
|
|
68
83
|
var import_react_ui_attention2 = require("@dxos/react-ui-attention");
|
|
69
84
|
var import_react_ui_theme6 = require("@dxos/react-ui-theme");
|
|
70
85
|
var import_util = require("@dxos/util");
|
|
71
|
-
var import_react8 = __toESM(require("react"));
|
|
72
86
|
var import_react9 = __toESM(require("react"));
|
|
73
|
-
var
|
|
87
|
+
var import_react10 = __toESM(require("react"));
|
|
88
|
+
var import_react_ui4 = require("@dxos/react-ui");
|
|
74
89
|
var StackContext = /* @__PURE__ */ (0, import_react2.createContext)({
|
|
75
90
|
orientation: "vertical",
|
|
76
91
|
rail: true,
|
|
77
|
-
size: "intrinsic"
|
|
78
|
-
separators: true
|
|
92
|
+
size: "intrinsic"
|
|
79
93
|
});
|
|
80
94
|
var useStack = () => (0, import_react2.useContext)(StackContext);
|
|
81
95
|
var StackItemContext = /* @__PURE__ */ (0, import_react2.createContext)({
|
|
@@ -88,7 +102,13 @@ var StackItemContext = /* @__PURE__ */ (0, import_react2.createContext)({
|
|
|
88
102
|
var useStackItem = () => (0, import_react2.useContext)(StackItemContext);
|
|
89
103
|
var railGridHorizontal = "grid-rows-[[rail-start]_var(--rail-size)_[content-start]_1fr_[content-end]]";
|
|
90
104
|
var railGridVertical = "grid-cols-[[rail-start]_var(--rail-size)_[content-start]_1fr_[content-end]]";
|
|
91
|
-
var
|
|
105
|
+
var autoScrollRootAttributes = {
|
|
106
|
+
"data-drag-autoscroll": "idle"
|
|
107
|
+
};
|
|
108
|
+
var Stack = /* @__PURE__ */ (0, import_react.forwardRef)(({ children, classNames, style, orientation = "vertical", rail = true, size = "intrinsic", onRearrange, itemsCount = import_react.Children.count(children), ...props }, forwardedRef) => {
|
|
109
|
+
const [stackElement, stackRef] = (0, import_react.useState)(null);
|
|
110
|
+
const composedItemRef = (0, import_react_compose_refs.composeRefs)(stackRef, forwardedRef);
|
|
111
|
+
const [dropping, setDropping] = (0, import_react.useState)(false);
|
|
92
112
|
const arrowNavigationGroup = (0, import_react_tabster.useArrowNavigationGroup)({
|
|
93
113
|
axis: orientation
|
|
94
114
|
});
|
|
@@ -96,28 +116,80 @@ var Stack = /* @__PURE__ */ (0, import_react.forwardRef)(({ children, classNames
|
|
|
96
116
|
[orientation === "horizontal" ? "gridTemplateColumns" : "gridTemplateRows"]: `repeat(${itemsCount}, min-content)`,
|
|
97
117
|
...style
|
|
98
118
|
};
|
|
119
|
+
const selfDroppable = !!(itemsCount < 1 && onRearrange && props.id);
|
|
120
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
121
|
+
if (!stackElement || !selfDroppable) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
const acceptSourceType = orientation === "horizontal" ? "column" : "card";
|
|
125
|
+
return (0, import_combine.combine)((0, import_adapter.dropTargetForElements)({
|
|
126
|
+
element: stackElement,
|
|
127
|
+
getData: ({ input, element }) => {
|
|
128
|
+
return (0, import_closest_edge.attachClosestEdge)({
|
|
129
|
+
id: props.id,
|
|
130
|
+
type: orientation === "horizontal" ? "card" : "column"
|
|
131
|
+
}, {
|
|
132
|
+
input,
|
|
133
|
+
element,
|
|
134
|
+
allowedEdges: [
|
|
135
|
+
orientation === "horizontal" ? "left" : "top"
|
|
136
|
+
]
|
|
137
|
+
});
|
|
138
|
+
},
|
|
139
|
+
onDragEnter: ({ source }) => {
|
|
140
|
+
if (source.data.type === acceptSourceType) {
|
|
141
|
+
setDropping(true);
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
onDrag: ({ source }) => {
|
|
145
|
+
if (source.data.type === acceptSourceType) {
|
|
146
|
+
setDropping(true);
|
|
147
|
+
}
|
|
148
|
+
},
|
|
149
|
+
onDragLeave: () => setDropping(false),
|
|
150
|
+
onDrop: ({ self, source }) => {
|
|
151
|
+
setDropping(false);
|
|
152
|
+
if (source.data.type === acceptSourceType && selfDroppable) {
|
|
153
|
+
onRearrange(source.data, self.data, (0, import_closest_edge.extractClosestEdge)(self.data));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}), (0, import_element.autoScrollForElements)({
|
|
157
|
+
element: stackElement,
|
|
158
|
+
getAllowedAxis: () => orientation
|
|
159
|
+
}));
|
|
160
|
+
}, [
|
|
161
|
+
stackElement,
|
|
162
|
+
selfDroppable,
|
|
163
|
+
orientation
|
|
164
|
+
]);
|
|
99
165
|
return /* @__PURE__ */ import_react.default.createElement(StackContext.Provider, {
|
|
100
166
|
value: {
|
|
101
167
|
orientation,
|
|
102
168
|
rail,
|
|
103
169
|
size,
|
|
104
|
-
|
|
170
|
+
onRearrange
|
|
105
171
|
}
|
|
106
172
|
}, /* @__PURE__ */ import_react.default.createElement("div", {
|
|
107
173
|
...props,
|
|
108
174
|
...arrowNavigationGroup,
|
|
109
|
-
className: (0, import_react_ui_theme.mx)("grid relative", rail ? orientation === "horizontal" ? railGridHorizontal : railGridVertical : orientation === "horizontal" ? "grid-rows-1" : "grid-cols-1", size === "contain" && (orientation === "horizontal" ? "overflow-x-auto min-bs-0 bs-full max-bs-full" : "overflow-y-auto min-is-0 is-full max-is-full"),
|
|
175
|
+
className: (0, import_react_ui_theme.mx)("grid relative", rail ? orientation === "horizontal" ? railGridHorizontal : railGridVertical : orientation === "horizontal" ? "grid-rows-1 pli-1" : "grid-cols-1 plb-1", size === "contain" && (orientation === "horizontal" ? "overflow-x-auto min-bs-0 bs-full max-bs-full" : "overflow-y-auto min-is-0 is-full max-is-full"), classNames),
|
|
176
|
+
"data-rail": rail,
|
|
110
177
|
"aria-orientation": orientation,
|
|
111
178
|
style: styles,
|
|
112
|
-
ref:
|
|
113
|
-
}, children
|
|
179
|
+
ref: composedItemRef
|
|
180
|
+
}, children, selfDroppable && dropping && /* @__PURE__ */ import_react.default.createElement(import_react_ui.ListItem.DropIndicator, {
|
|
181
|
+
lineInset: 8,
|
|
182
|
+
terminalInset: -8,
|
|
183
|
+
gap: -8,
|
|
184
|
+
edge: orientation === "horizontal" ? "left" : "top"
|
|
185
|
+
})));
|
|
114
186
|
});
|
|
115
|
-
var StackItemContent = ({ children, toolbar
|
|
116
|
-
const { size
|
|
187
|
+
var StackItemContent = /* @__PURE__ */ (0, import_react4.forwardRef)(({ children, toolbar, statusbar, classNames, size = "intrinsic", ...props }, forwardedRef) => {
|
|
188
|
+
const { size: stackItemSize } = useStack();
|
|
117
189
|
return /* @__PURE__ */ import_react4.default.createElement("div", {
|
|
118
190
|
role: "none",
|
|
119
191
|
...props,
|
|
120
|
-
className: (0, import_react_ui_theme3.mx)("group grid grid-cols-[100%]",
|
|
192
|
+
className: (0, import_react_ui_theme3.mx)("group grid grid-cols-[100%]", stackItemSize === "contain" && "min-bs-0 overflow-hidden", size === "video" ? "aspect-video" : size === "square" && "aspect-square", classNames),
|
|
121
193
|
style: {
|
|
122
194
|
gridTemplateRows: [
|
|
123
195
|
...toolbar ? [
|
|
@@ -128,35 +200,43 @@ var StackItemContent = ({ children, toolbar = true, statusbar, classNames, ...pr
|
|
|
128
200
|
"var(--statusbar-size)"
|
|
129
201
|
] : []
|
|
130
202
|
].join(" ")
|
|
131
|
-
}
|
|
203
|
+
},
|
|
204
|
+
ref: forwardedRef
|
|
205
|
+
}, children);
|
|
206
|
+
});
|
|
207
|
+
var StackItemDragHandle = ({ asChild, children }) => {
|
|
208
|
+
const { selfDragHandleRef } = useStackItem();
|
|
209
|
+
const Root = asChild ? import_react_slot.Slot : "div";
|
|
210
|
+
return /* @__PURE__ */ import_react5.default.createElement(Root, {
|
|
211
|
+
ref: selfDragHandleRef,
|
|
212
|
+
role: "button"
|
|
132
213
|
}, children);
|
|
133
214
|
};
|
|
134
215
|
var StackItemHeading = ({ children, classNames, ...props }) => {
|
|
135
216
|
const { orientation } = useStack();
|
|
136
|
-
const { selfDragHandleRef } = useStackItem();
|
|
137
217
|
const focusableGroupAttrs = (0, import_react_tabster3.useFocusableGroup)({
|
|
138
218
|
tabBehavior: "limited"
|
|
139
219
|
});
|
|
140
|
-
return /* @__PURE__ */
|
|
220
|
+
return /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
141
221
|
role: "heading",
|
|
142
222
|
...props,
|
|
143
223
|
tabIndex: 0,
|
|
144
224
|
...focusableGroupAttrs,
|
|
145
|
-
className: (0, import_react_ui_theme4.mx)("flex items-center
|
|
146
|
-
ref: selfDragHandleRef
|
|
225
|
+
className: (0, import_react_ui_theme4.mx)("flex items-center dx-focus-ring-inset-over-all relative !border-is-0", orientation === "horizontal" ? "bs-[--rail-size]" : "is-[--rail-size] flex-col", classNames)
|
|
147
226
|
}, children);
|
|
148
227
|
};
|
|
149
|
-
var StackItemHeadingLabel = /* @__PURE__ */ (0,
|
|
228
|
+
var StackItemHeadingLabel = /* @__PURE__ */ (0, import_react6.forwardRef)(({ attendableId, related, classNames, ...props }, forwardedRef) => {
|
|
150
229
|
const { hasAttention, isAncestor, isRelated } = (0, import_react_ui_attention.useAttention)(attendableId);
|
|
151
|
-
return /* @__PURE__ */
|
|
230
|
+
return /* @__PURE__ */ import_react6.default.createElement("h1", {
|
|
152
231
|
...props,
|
|
153
232
|
"data-attention": (related && isRelated || hasAttention || isAncestor).toString(),
|
|
154
|
-
className: (0, import_react_ui_theme4.mx)("pli-1 min-is-0 is-0 grow truncate font-medium text-baseText data-[attention=true]:text-accentText", classNames),
|
|
233
|
+
className: (0, import_react_ui_theme4.mx)("pli-1 min-is-0 is-0 grow truncate font-medium text-baseText data-[attention=true]:text-accentText self-center", classNames),
|
|
155
234
|
ref: forwardedRef
|
|
156
235
|
});
|
|
157
236
|
});
|
|
158
237
|
var REM = parseFloat(getComputedStyle(document.documentElement).fontSize);
|
|
159
|
-
var
|
|
238
|
+
var MIN_WIDTH = 20;
|
|
239
|
+
var MIN_HEIGHT = 3;
|
|
160
240
|
var measureStackItem = (element) => {
|
|
161
241
|
const stackItemElement = element.closest("[data-dx-stack-item]");
|
|
162
242
|
return stackItemElement?.getBoundingClientRect() ?? {
|
|
@@ -165,19 +245,19 @@ var measureStackItem = (element) => {
|
|
|
165
245
|
};
|
|
166
246
|
};
|
|
167
247
|
var getNextSize = (startSize, location, client) => {
|
|
168
|
-
return Math.max(
|
|
248
|
+
return Math.max(client === "clientX" ? MIN_WIDTH : MIN_HEIGHT, startSize + (location.current.input[client] - location.initial.input[client]) / REM);
|
|
169
249
|
};
|
|
170
250
|
var StackItemResizeHandle = () => {
|
|
171
251
|
const { orientation } = useStack();
|
|
172
252
|
const { setSize, size } = useStackItem();
|
|
173
|
-
const buttonRef = (0,
|
|
174
|
-
const dragStartSize = (0,
|
|
253
|
+
const buttonRef = (0, import_react7.useRef)(null);
|
|
254
|
+
const dragStartSize = (0, import_react7.useRef)(size);
|
|
175
255
|
const client = orientation === "horizontal" ? "clientX" : "clientY";
|
|
176
|
-
(0,
|
|
256
|
+
(0, import_react7.useLayoutEffect)(() => {
|
|
177
257
|
if (!buttonRef.current || buttonRef.current.hasAttribute("draggable")) {
|
|
178
258
|
return;
|
|
179
259
|
}
|
|
180
|
-
(0,
|
|
260
|
+
(0, import_adapter3.draggable)({
|
|
181
261
|
element: buttonRef.current,
|
|
182
262
|
onGenerateDragPreview: ({ nativeSetDragImage }) => {
|
|
183
263
|
(0, import_disable_native_drag_preview.disableNativeDragPreview)({
|
|
@@ -204,38 +284,40 @@ var StackItemResizeHandle = () => {
|
|
|
204
284
|
}
|
|
205
285
|
});
|
|
206
286
|
}, []);
|
|
207
|
-
return /* @__PURE__ */
|
|
287
|
+
return /* @__PURE__ */ import_react7.default.createElement("button", {
|
|
208
288
|
ref: buttonRef,
|
|
209
|
-
className: (0, import_react_ui_theme5.mx)(orientation === "horizontal" ? "cursor-col-resize" : "cursor-row-resize
|
|
210
|
-
}, /* @__PURE__ */
|
|
289
|
+
className: (0, import_react_ui_theme5.mx)("group absolute", orientation === "horizontal" ? "cursor-col-resize is-3 bs-full inline-end-[-1px] !border-lb-0 before:inset-block-0 before:inline-end-0 before:is-1" : "cursor-row-resize bs-3 is-full block-end-[-1px] !border-li-0 before:inset-inline-0 before:block-end-0 before:bs-1", "before:transition-opacity before:duration-100 before:ease-in-out before:opacity-0 hover:before:opacity-100 focus-visible:before:opacity-100 active:before:opacity-100", "before:absolute before:block before:bg-accentFocusIndicator")
|
|
290
|
+
}, /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
211
291
|
role: "none",
|
|
212
|
-
className: "absolute
|
|
213
|
-
}, /* @__PURE__ */
|
|
292
|
+
className: (0, import_react_ui_theme5.mx)("absolute flex items-center group-hover:opacity-0 group-focus-visible:opacity-0 group-active:opacity-0", orientation === "horizontal" ? "block-start-0 inline-end-px bs-[--rail-size]" : "inline-start-0 block-end-px is-[--rail-size] flex justify-center")
|
|
293
|
+
}, /* @__PURE__ */ import_react7.default.createElement(DragHandleSignifier, {
|
|
294
|
+
orientation
|
|
295
|
+
})));
|
|
214
296
|
};
|
|
215
|
-
var DragHandleSignifier = () => {
|
|
216
|
-
return /* @__PURE__ */
|
|
297
|
+
var DragHandleSignifier = ({ orientation }) => {
|
|
298
|
+
return /* @__PURE__ */ import_react7.default.createElement("svg", {
|
|
217
299
|
xmlns: "http://www.w3.org/2000/svg",
|
|
218
300
|
viewBox: "0 0 256 256",
|
|
219
301
|
fill: "currentColor",
|
|
220
|
-
className: "shrink-0 bs-[1em] is-[1em] text-unAccent"
|
|
221
|
-
}, /* @__PURE__ */
|
|
302
|
+
className: (0, import_react_ui_theme5.mx)("shrink-0 bs-[1em] is-[1em] text-unAccent", orientation === "vertical" && "rotate-90")
|
|
303
|
+
}, /* @__PURE__ */ import_react7.default.createElement("path", {
|
|
222
304
|
d: "M256,64c-8.8,0-16-7.2-16-16s7.2-16,16-16v32Z"
|
|
223
|
-
}), /* @__PURE__ */
|
|
305
|
+
}), /* @__PURE__ */ import_react7.default.createElement("path", {
|
|
224
306
|
d: "M256,120c-8.8,0-16-7.2-16-16s7.2-16,16-16v32Z"
|
|
225
|
-
}), /* @__PURE__ */
|
|
307
|
+
}), /* @__PURE__ */ import_react7.default.createElement("path", {
|
|
226
308
|
d: "M256,176c-8.8,0-16-7.2-16-16s7.2-16,16-16v32Z"
|
|
227
|
-
}), /* @__PURE__ */
|
|
309
|
+
}), /* @__PURE__ */ import_react7.default.createElement("path", {
|
|
228
310
|
d: "M256,232c-8.8,0-16-7.2-16-16s7.2-16,16-16v32Z"
|
|
229
311
|
}));
|
|
230
312
|
};
|
|
231
|
-
var MenuSignifierHorizontal = () => /* @__PURE__ */
|
|
313
|
+
var MenuSignifierHorizontal = () => /* @__PURE__ */ import_react9.default.createElement("svg", {
|
|
232
314
|
className: "absolute block-end-[7px]",
|
|
233
315
|
width: 20,
|
|
234
316
|
height: 2,
|
|
235
317
|
viewBox: "0 0 20 2",
|
|
236
318
|
stroke: "currentColor",
|
|
237
319
|
opacity: 0.5
|
|
238
|
-
}, /* @__PURE__ */
|
|
320
|
+
}, /* @__PURE__ */ import_react9.default.createElement("line", {
|
|
239
321
|
x1: 0.5,
|
|
240
322
|
y1: 0.75,
|
|
241
323
|
x2: 19,
|
|
@@ -261,35 +343,40 @@ var translations_default = [
|
|
|
261
343
|
}
|
|
262
344
|
}
|
|
263
345
|
];
|
|
264
|
-
var StackItemSigilButton = /* @__PURE__ */ (0,
|
|
346
|
+
var StackItemSigilButton = /* @__PURE__ */ (0, import_react8.forwardRef)(({ attendableId, classNames, related, children, ...props }, forwardedRef) => {
|
|
265
347
|
const { hasAttention, isAncestor, isRelated } = (0, import_react_ui_attention2.useAttention)(attendableId);
|
|
266
348
|
const variant = related && isRelated || hasAttention || isAncestor ? "primary" : "ghost";
|
|
267
|
-
return /* @__PURE__ */
|
|
349
|
+
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.Button, {
|
|
268
350
|
...props,
|
|
269
351
|
variant,
|
|
270
352
|
classNames: [
|
|
271
|
-
"
|
|
353
|
+
"shrink-0 pli-0 min-bs-0 is-[--rail-action] bs-[--rail-action] relative app-no-drag",
|
|
272
354
|
classNames
|
|
273
355
|
],
|
|
274
356
|
ref: forwardedRef
|
|
275
|
-
}, /* @__PURE__ */
|
|
357
|
+
}, /* @__PURE__ */ import_react8.default.createElement(MenuSignifierHorizontal, null), children);
|
|
276
358
|
});
|
|
277
|
-
var StackItemSigil = /* @__PURE__ */ (0,
|
|
278
|
-
const { t } = (0,
|
|
279
|
-
const suppressNextTooltip = (0,
|
|
280
|
-
const [optionsMenuOpen, setOptionsMenuOpen] = (0,
|
|
281
|
-
const
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
359
|
+
var StackItemSigil = /* @__PURE__ */ (0, import_react8.forwardRef)(({ actions: actionGroups, onAction, triggerLabel, attendableId, icon, related, children }, forwardedRef) => {
|
|
360
|
+
const { t } = (0, import_react_ui3.useTranslation)(translationKey);
|
|
361
|
+
const suppressNextTooltip = (0, import_react8.useRef)(false);
|
|
362
|
+
const [optionsMenuOpen, setOptionsMenuOpen] = (0, import_react8.useState)(false);
|
|
363
|
+
const hasActions = actionGroups && actionGroups.length > 0;
|
|
364
|
+
const button = /* @__PURE__ */ import_react8.default.createElement(StackItemSigilButton, {
|
|
365
|
+
attendableId,
|
|
366
|
+
related,
|
|
367
|
+
// TODO(wittjosiah): Better disabling of interactive styles when no action are available.
|
|
368
|
+
// Remove underscore icon when no actions are available?
|
|
369
|
+
classNames: !hasActions && "cursor-default"
|
|
370
|
+
}, /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
371
|
+
className: "sr-only"
|
|
372
|
+
}, triggerLabel), /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.Icon, {
|
|
373
|
+
icon,
|
|
374
|
+
size: 5
|
|
375
|
+
}));
|
|
376
|
+
if (!hasActions) {
|
|
377
|
+
return button;
|
|
378
|
+
}
|
|
379
|
+
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Root, {
|
|
293
380
|
open: optionsMenuOpen,
|
|
294
381
|
onOpenChange: (nextOpen) => {
|
|
295
382
|
if (!nextOpen) {
|
|
@@ -297,30 +384,20 @@ var StackItemSigil = /* @__PURE__ */ (0, import_react7.forwardRef)(({ actions: a
|
|
|
297
384
|
}
|
|
298
385
|
return setOptionsMenuOpen(nextOpen);
|
|
299
386
|
}
|
|
300
|
-
}, /* @__PURE__ */
|
|
301
|
-
asChild: true
|
|
302
|
-
}, /* @__PURE__ */ import_react7.default.createElement(import_react_ui.DropdownMenu.Trigger, {
|
|
387
|
+
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Trigger, {
|
|
303
388
|
asChild: true,
|
|
304
389
|
ref: forwardedRef
|
|
305
|
-
}, /* @__PURE__ */
|
|
306
|
-
attendableId,
|
|
307
|
-
related
|
|
308
|
-
}, /* @__PURE__ */ import_react7.default.createElement("span", {
|
|
309
|
-
className: "sr-only"
|
|
310
|
-
}, triggerLabel), /* @__PURE__ */ import_react7.default.createElement(import_react_ui.Icon, {
|
|
311
|
-
icon,
|
|
312
|
-
size: 5
|
|
313
|
-
})))), /* @__PURE__ */ import_react7.default.createElement(import_react_ui.DropdownMenu.Portal, null, /* @__PURE__ */ import_react7.default.createElement(import_react_ui.DropdownMenu.Content, {
|
|
390
|
+
}, button), /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Portal, null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Content, {
|
|
314
391
|
classNames: "z-[31]"
|
|
315
|
-
}, /* @__PURE__ */
|
|
316
|
-
const separator = index > 0 ? /* @__PURE__ */
|
|
317
|
-
return /* @__PURE__ */
|
|
392
|
+
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Viewport, null, actionGroups?.map((actions, index) => {
|
|
393
|
+
const separator = index > 0 ? /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Separator, null) : null;
|
|
394
|
+
return /* @__PURE__ */ import_react8.default.createElement(import_react8.Fragment, {
|
|
318
395
|
key: index
|
|
319
396
|
}, separator, actions.map((action) => {
|
|
320
397
|
const shortcut = typeof action.properties.keyBinding === "string" ? action.properties.keyBinding : action.properties.keyBinding?.[(0, import_util.getHostPlatform)()];
|
|
321
398
|
const menuItemType = action.properties.menuItemType;
|
|
322
|
-
const Root = menuItemType === "toggle" ?
|
|
323
|
-
return /* @__PURE__ */
|
|
399
|
+
const Root = menuItemType === "toggle" ? import_react_ui3.DropdownMenu.CheckboxItem : import_react_ui3.DropdownMenu.Item;
|
|
400
|
+
return /* @__PURE__ */ import_react8.default.createElement(Root, {
|
|
324
401
|
key: action.id,
|
|
325
402
|
onClick: (event) => {
|
|
326
403
|
if (action.properties.disabled) {
|
|
@@ -337,38 +414,33 @@ var StackItemSigil = /* @__PURE__ */ (0, import_react7.forwardRef)(({ actions: a
|
|
|
337
414
|
...action.properties?.testId && {
|
|
338
415
|
"data-testid": action.properties.testId
|
|
339
416
|
}
|
|
340
|
-
}, /* @__PURE__ */
|
|
417
|
+
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.Icon, {
|
|
341
418
|
icon: action.properties.icon ?? "ph--placeholder--regular",
|
|
342
419
|
size: 4
|
|
343
|
-
}), /* @__PURE__ */
|
|
420
|
+
}), /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
344
421
|
className: "grow truncate"
|
|
345
|
-
}, (0,
|
|
422
|
+
}, (0, import_react_ui3.toLocalizedString)(action.properties.label ?? "", t)), menuItemType === "toggle" && /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.ItemIndicator, {
|
|
346
423
|
asChild: true
|
|
347
|
-
}, /* @__PURE__ */
|
|
424
|
+
}, /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.Icon, {
|
|
348
425
|
icon: "ph--check--regular",
|
|
349
426
|
size: 4
|
|
350
|
-
})), shortcut && /* @__PURE__ */
|
|
427
|
+
})), shortcut && /* @__PURE__ */ import_react8.default.createElement("span", {
|
|
351
428
|
className: (0, import_react_ui_theme6.mx)("shrink-0", import_react_ui_theme6.descriptionText)
|
|
352
429
|
}, (0, import_keyboard.keySymbols)(shortcut).join("")));
|
|
353
430
|
}));
|
|
354
|
-
}), children), /* @__PURE__ */
|
|
355
|
-
style: {
|
|
356
|
-
zIndex: 70
|
|
357
|
-
},
|
|
358
|
-
side: "bottom"
|
|
359
|
-
}, triggerLabel, /* @__PURE__ */ import_react7.default.createElement(import_react_ui.Tooltip.Arrow, null))));
|
|
431
|
+
}), children), /* @__PURE__ */ import_react8.default.createElement(import_react_ui3.DropdownMenu.Arrow, null))));
|
|
360
432
|
});
|
|
361
433
|
var DEFAULT_HORIZONTAL_SIZE = 44;
|
|
362
434
|
var DEFAULT_VERTICAL_SIZE = "min-content";
|
|
363
435
|
var DEFAULT_EXTRINSIC_SIZE = DEFAULT_HORIZONTAL_SIZE;
|
|
364
|
-
var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, children, classNames,
|
|
436
|
+
var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, children, classNames, size: propsSize, onSizeChange, role, order, style, disableRearrange, focusIndicatorVariant = "over-all", ...props }, forwardedRef) => {
|
|
365
437
|
const [itemElement, itemRef] = (0, import_react3.useState)(null);
|
|
366
438
|
const [selfDragHandleElement, selfDragHandleRef] = (0, import_react3.useState)(null);
|
|
367
|
-
const [
|
|
368
|
-
const { orientation, rail,
|
|
439
|
+
const [closestEdge, setEdge] = (0, import_react3.useState)(null);
|
|
440
|
+
const { orientation, rail, onRearrange } = useStack();
|
|
369
441
|
const [size = orientation === "horizontal" ? DEFAULT_HORIZONTAL_SIZE : DEFAULT_VERTICAL_SIZE, setInternalSize] = (0, import_react3.useState)(propsSize);
|
|
370
442
|
const Root = role ?? "div";
|
|
371
|
-
const composedItemRef = (0,
|
|
443
|
+
const composedItemRef = (0, import_react_compose_refs2.composeRefs)(itemRef, forwardedRef);
|
|
372
444
|
const setSize = (0, import_react3.useCallback)((nextSize, commit) => {
|
|
373
445
|
setInternalSize(nextSize);
|
|
374
446
|
if (commit) {
|
|
@@ -379,10 +451,10 @@ var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, child
|
|
|
379
451
|
]);
|
|
380
452
|
const type = orientation === "horizontal" ? "column" : "card";
|
|
381
453
|
(0, import_react3.useLayoutEffect)(() => {
|
|
382
|
-
if (!itemElement || !onRearrange) {
|
|
454
|
+
if (!itemElement || !onRearrange || disableRearrange) {
|
|
383
455
|
return;
|
|
384
456
|
}
|
|
385
|
-
return (0,
|
|
457
|
+
return (0, import_combine2.combine)((0, import_adapter2.draggable)({
|
|
386
458
|
element: itemElement,
|
|
387
459
|
...selfDragHandleElement && {
|
|
388
460
|
dragHandle: selfDragHandleElement
|
|
@@ -390,11 +462,31 @@ var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, child
|
|
|
390
462
|
getInitialData: () => ({
|
|
391
463
|
id: item.id,
|
|
392
464
|
type
|
|
393
|
-
})
|
|
394
|
-
|
|
465
|
+
}),
|
|
466
|
+
onGenerateDragPreview: ({ nativeSetDragImage, source, location }) => {
|
|
467
|
+
document.body.setAttribute("data-drag-preview", "true");
|
|
468
|
+
(0, import_scroll_just_enough_into_view.scrollJustEnoughIntoView)({
|
|
469
|
+
element: source.element
|
|
470
|
+
});
|
|
471
|
+
const { x, y } = (0, import_preserve_offset_on_source.preserveOffsetOnSource)({
|
|
472
|
+
element: source.element,
|
|
473
|
+
input: location.current.input
|
|
474
|
+
})({
|
|
475
|
+
container: source.element.offsetParent ?? document.body
|
|
476
|
+
});
|
|
477
|
+
nativeSetDragImage?.(source.element, x, y);
|
|
478
|
+
},
|
|
479
|
+
onDragStart: () => {
|
|
480
|
+
document.body.removeAttribute("data-drag-preview");
|
|
481
|
+
itemElement?.closest("[data-drag-autoscroll]")?.setAttribute("data-drag-autoscroll", "active");
|
|
482
|
+
},
|
|
483
|
+
onDrop: () => {
|
|
484
|
+
itemElement?.closest("[data-drag-autoscroll]")?.setAttribute("data-drag-autoscroll", "idle");
|
|
485
|
+
}
|
|
486
|
+
}), (0, import_adapter2.dropTargetForElements)({
|
|
395
487
|
element: itemElement,
|
|
396
488
|
getData: ({ input, element }) => {
|
|
397
|
-
return (0,
|
|
489
|
+
return (0, import_closest_edge2.attachClosestEdge)({
|
|
398
490
|
id: item.id,
|
|
399
491
|
type
|
|
400
492
|
}, {
|
|
@@ -411,19 +503,19 @@ var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, child
|
|
|
411
503
|
},
|
|
412
504
|
onDragEnter: ({ self, source }) => {
|
|
413
505
|
if (source.data.type === self.data.type) {
|
|
414
|
-
setEdge((0,
|
|
506
|
+
setEdge((0, import_closest_edge2.extractClosestEdge)(self.data));
|
|
415
507
|
}
|
|
416
508
|
},
|
|
417
509
|
onDrag: ({ self, source }) => {
|
|
418
510
|
if (source.data.type === self.data.type) {
|
|
419
|
-
setEdge((0,
|
|
511
|
+
setEdge((0, import_closest_edge2.extractClosestEdge)(self.data));
|
|
420
512
|
}
|
|
421
513
|
},
|
|
422
514
|
onDragLeave: () => setEdge(null),
|
|
423
515
|
onDrop: ({ self, source }) => {
|
|
424
516
|
setEdge(null);
|
|
425
517
|
if (source.data.type === self.data.type) {
|
|
426
|
-
onRearrange(source.data, self.data, (0,
|
|
518
|
+
onRearrange(source.data, self.data, (0, import_closest_edge2.extractClosestEdge)(self.data));
|
|
427
519
|
}
|
|
428
520
|
}
|
|
429
521
|
}));
|
|
@@ -447,7 +539,7 @@ var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, child
|
|
|
447
539
|
...props,
|
|
448
540
|
tabIndex: 0,
|
|
449
541
|
...focusGroupAttrs,
|
|
450
|
-
className: (0, import_react_ui_theme2.mx)("group/stack-item grid relative
|
|
542
|
+
className: (0, import_react_ui_theme2.mx)("group/stack-item grid relative", focusIndicatorVariant === "over-all" ? "dx-focus-ring-inset-over-all" : orientation === "horizontal" ? "dx-focus-ring-group-x" : "dx-focus-ring-group-y", size === "min-content" && (orientation === "horizontal" ? "is-min" : "bs-min"), orientation === "horizontal" ? "grid-rows-subgrid" : "grid-cols-subgrid", rail && (orientation === "horizontal" ? "row-span-2" : "col-span-2"), classNames),
|
|
451
543
|
"data-dx-stack-item": true,
|
|
452
544
|
style: {
|
|
453
545
|
...size !== "min-content" && {
|
|
@@ -459,7 +551,11 @@ var StackItemRoot = /* @__PURE__ */ (0, import_react3.forwardRef)(({ item, child
|
|
|
459
551
|
...style
|
|
460
552
|
},
|
|
461
553
|
ref: composedItemRef
|
|
462
|
-
}, children
|
|
554
|
+
}, children, closestEdge && /* @__PURE__ */ import_react3.default.createElement(import_react_ui2.ListItem.DropIndicator, {
|
|
555
|
+
lineInset: 8,
|
|
556
|
+
terminalInset: -8,
|
|
557
|
+
edge: closestEdge
|
|
558
|
+
})));
|
|
463
559
|
});
|
|
464
560
|
var StackItem = {
|
|
465
561
|
Root: StackItemRoot,
|
|
@@ -467,51 +563,51 @@ var StackItem = {
|
|
|
467
563
|
Heading: StackItemHeading,
|
|
468
564
|
HeadingLabel: StackItemHeadingLabel,
|
|
469
565
|
ResizeHandle: StackItemResizeHandle,
|
|
566
|
+
DragHandle: StackItemDragHandle,
|
|
470
567
|
Sigil: StackItemSigil,
|
|
471
568
|
SigilButton: StackItemSigilButton
|
|
472
569
|
};
|
|
473
570
|
var LayoutControl = ({ icon, label, ...props }) => {
|
|
474
|
-
return /* @__PURE__ */
|
|
571
|
+
return /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Tooltip.Root, null, /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Tooltip.Trigger, {
|
|
475
572
|
asChild: true
|
|
476
|
-
}, /* @__PURE__ */
|
|
573
|
+
}, /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Button, {
|
|
477
574
|
variant: "ghost",
|
|
478
575
|
...props
|
|
479
|
-
}, /* @__PURE__ */
|
|
576
|
+
}, /* @__PURE__ */ import_react10.default.createElement("span", {
|
|
480
577
|
className: "sr-only"
|
|
481
|
-
}, label), /* @__PURE__ */
|
|
578
|
+
}, label), /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Icon, {
|
|
482
579
|
icon
|
|
483
|
-
}))), /* @__PURE__ */
|
|
484
|
-
side: "bottom"
|
|
485
|
-
classNames: "z-[70]"
|
|
580
|
+
}))), /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Tooltip.Portal, null, /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.Tooltip.Content, {
|
|
581
|
+
side: "bottom"
|
|
486
582
|
}, label)));
|
|
487
583
|
};
|
|
488
|
-
var LayoutControls = /* @__PURE__ */ (0,
|
|
489
|
-
const { t } = (0,
|
|
584
|
+
var LayoutControls = /* @__PURE__ */ (0, import_react10.forwardRef)(({ onClick, variant = "default", capabilities: can, isSolo, pin, close = false, children, ...props }, forwardedRef) => {
|
|
585
|
+
const { t } = (0, import_react_ui4.useTranslation)(translationKey);
|
|
490
586
|
const buttonClassNames = variant === "hide-disabled" ? "disabled:hidden !p-1" : "!p-1";
|
|
491
|
-
return /* @__PURE__ */
|
|
587
|
+
return /* @__PURE__ */ import_react10.default.createElement(import_react_ui4.ButtonGroup, {
|
|
492
588
|
...props,
|
|
493
589
|
ref: forwardedRef
|
|
494
590
|
}, pin && !isSolo && [
|
|
495
591
|
"both",
|
|
496
592
|
"start"
|
|
497
|
-
].includes(pin) && /* @__PURE__ */
|
|
593
|
+
].includes(pin) && /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
498
594
|
label: t("pin start label"),
|
|
499
595
|
variant: "ghost",
|
|
500
596
|
classNames: buttonClassNames,
|
|
501
597
|
onClick: () => onClick?.("pin-start"),
|
|
502
598
|
icon: "ph--caret-line-left--regular"
|
|
503
|
-
}), can.solo && /* @__PURE__ */
|
|
599
|
+
}), can.solo && /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
504
600
|
label: t("solo layout label"),
|
|
505
601
|
classNames: buttonClassNames,
|
|
506
602
|
onClick: () => onClick?.("solo"),
|
|
507
603
|
icon: isSolo ? "ph--arrows-in--regular" : "ph--arrows-out--regular"
|
|
508
|
-
}), !isSolo && can.solo && /* @__PURE__ */
|
|
604
|
+
}), !isSolo && can.solo && /* @__PURE__ */ import_react10.default.createElement(import_react10.default.Fragment, null, /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
509
605
|
label: t("increment start label"),
|
|
510
606
|
disabled: !can.incrementStart,
|
|
511
607
|
classNames: buttonClassNames,
|
|
512
608
|
onClick: () => onClick?.("increment-start"),
|
|
513
609
|
icon: "ph--caret-left--regular"
|
|
514
|
-
}), /* @__PURE__ */
|
|
610
|
+
}), /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
515
611
|
label: t("increment end label"),
|
|
516
612
|
disabled: !can.incrementEnd,
|
|
517
613
|
classNames: buttonClassNames,
|
|
@@ -520,12 +616,12 @@ var LayoutControls = /* @__PURE__ */ (0, import_react9.forwardRef)(({ onClick, v
|
|
|
520
616
|
})), pin && !isSolo && [
|
|
521
617
|
"both",
|
|
522
618
|
"end"
|
|
523
|
-
].includes(pin) && /* @__PURE__ */
|
|
619
|
+
].includes(pin) && /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
524
620
|
label: t("pin end label"),
|
|
525
621
|
classNames: buttonClassNames,
|
|
526
622
|
onClick: () => onClick?.("pin-end"),
|
|
527
623
|
icon: "ph--caret-line-right--regular"
|
|
528
|
-
}), close && !isSolo && /* @__PURE__ */
|
|
624
|
+
}), close && !isSolo && /* @__PURE__ */ import_react10.default.createElement(LayoutControl, {
|
|
529
625
|
label: t(`${typeof close === "string" ? "minify" : "close"} label`),
|
|
530
626
|
classNames: buttonClassNames,
|
|
531
627
|
onClick: () => onClick?.("close"),
|
|
@@ -542,8 +638,12 @@ var LayoutControls = /* @__PURE__ */ (0, import_react9.forwardRef)(({ onClick, v
|
|
|
542
638
|
Stack,
|
|
543
639
|
StackContext,
|
|
544
640
|
StackItem,
|
|
641
|
+
StackItemContext,
|
|
642
|
+
autoScrollRootAttributes,
|
|
545
643
|
railGridHorizontal,
|
|
546
644
|
railGridVertical,
|
|
547
|
-
translations
|
|
645
|
+
translations,
|
|
646
|
+
useStack,
|
|
647
|
+
useStackItem
|
|
548
648
|
});
|
|
549
649
|
//# sourceMappingURL=index.cjs.map
|