@salt-ds/lab 1.0.0-alpha.93 → 1.0.0-alpha.94
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 +104 -0
- package/css/salt-lab.css +163 -122
- package/dist-cjs/index.js +6 -8
- package/dist-cjs/index.js.map +1 -1
- package/dist-cjs/toolbar-next/ToolbarContentNext.css.js +6 -0
- package/dist-cjs/toolbar-next/ToolbarContentNext.css.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarContentNext.js +32 -0
- package/dist-cjs/toolbar-next/ToolbarContentNext.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarNext.css.js +6 -0
- package/dist-cjs/toolbar-next/ToolbarNext.css.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarNext.js +394 -0
- package/dist-cjs/toolbar-next/ToolbarNext.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflow.css.js +6 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflow.css.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflow.js +705 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflow.js.map +1 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflowFloatingBoundary.js +165 -0
- package/dist-cjs/toolbar-next/ToolbarNextOverflowFloatingBoundary.js.map +1 -0
- package/dist-cjs/toolbar-next/TooltrayNext.css.js +6 -0
- package/dist-cjs/toolbar-next/TooltrayNext.css.js.map +1 -0
- package/dist-cjs/toolbar-next/TooltrayNext.js +55 -0
- package/dist-cjs/toolbar-next/TooltrayNext.js.map +1 -0
- package/dist-cjs/toolbar-next/toolbarNextKeyboardUtils.js +391 -0
- package/dist-cjs/toolbar-next/toolbarNextKeyboardUtils.js.map +1 -0
- package/dist-cjs/toolbar-next/toolbarNextUtils.js +215 -0
- package/dist-cjs/toolbar-next/toolbarNextUtils.js.map +1 -0
- package/dist-cjs/toolbar-next/useToolbarNextKeyboardNavigation.js +334 -0
- package/dist-cjs/toolbar-next/useToolbarNextKeyboardNavigation.js.map +1 -0
- package/dist-cjs/toolbar-next/useToolbarNextOverflow.js +743 -0
- package/dist-cjs/toolbar-next/useToolbarNextOverflow.js.map +1 -0
- package/dist-es/index.js +3 -4
- package/dist-es/index.js.map +1 -1
- package/dist-es/toolbar-next/ToolbarContentNext.css.js +4 -0
- package/dist-es/toolbar-next/ToolbarContentNext.css.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarContentNext.js +30 -0
- package/dist-es/toolbar-next/ToolbarContentNext.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarNext.css.js +4 -0
- package/dist-es/toolbar-next/ToolbarNext.css.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarNext.js +392 -0
- package/dist-es/toolbar-next/ToolbarNext.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarNextOverflow.css.js +4 -0
- package/dist-es/toolbar-next/ToolbarNextOverflow.css.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarNextOverflow.js +700 -0
- package/dist-es/toolbar-next/ToolbarNextOverflow.js.map +1 -0
- package/dist-es/toolbar-next/ToolbarNextOverflowFloatingBoundary.js +159 -0
- package/dist-es/toolbar-next/ToolbarNextOverflowFloatingBoundary.js.map +1 -0
- package/dist-es/toolbar-next/TooltrayNext.css.js +4 -0
- package/dist-es/toolbar-next/TooltrayNext.css.js.map +1 -0
- package/dist-es/toolbar-next/TooltrayNext.js +53 -0
- package/dist-es/toolbar-next/TooltrayNext.js.map +1 -0
- package/dist-es/toolbar-next/toolbarNextKeyboardUtils.js +372 -0
- package/dist-es/toolbar-next/toolbarNextKeyboardUtils.js.map +1 -0
- package/dist-es/toolbar-next/toolbarNextUtils.js +211 -0
- package/dist-es/toolbar-next/toolbarNextUtils.js.map +1 -0
- package/dist-es/toolbar-next/useToolbarNextKeyboardNavigation.js +332 -0
- package/dist-es/toolbar-next/useToolbarNextKeyboardNavigation.js.map +1 -0
- package/dist-es/toolbar-next/useToolbarNextOverflow.js +741 -0
- package/dist-es/toolbar-next/useToolbarNextOverflow.js.map +1 -0
- package/dist-types/index.d.ts +1 -1
- package/dist-types/toolbar-next/ToolbarContentNext.d.ts +11 -0
- package/dist-types/toolbar-next/ToolbarNext.d.ts +12 -0
- package/dist-types/toolbar-next/ToolbarNextOverflow.d.ts +34 -0
- package/dist-types/toolbar-next/ToolbarNextOverflowFloatingBoundary.d.ts +16 -0
- package/dist-types/toolbar-next/TooltrayNext.d.ts +37 -0
- package/dist-types/toolbar-next/index.d.ts +3 -0
- package/dist-types/toolbar-next/toolbarNextKeyboardUtils.d.ts +39 -0
- package/dist-types/toolbar-next/toolbarNextUtils.d.ts +42 -0
- package/dist-types/toolbar-next/useToolbarNextKeyboardNavigation.d.ts +41 -0
- package/dist-types/toolbar-next/useToolbarNextOverflow.d.ts +37 -0
- package/package.json +2 -2
- package/dist-cjs/tree/Tree.css.js +0 -6
- package/dist-cjs/tree/Tree.css.js.map +0 -1
- package/dist-cjs/tree/Tree.js +0 -303
- package/dist-cjs/tree/Tree.js.map +0 -1
- package/dist-cjs/tree/TreeContext.js +0 -31
- package/dist-cjs/tree/TreeContext.js.map +0 -1
- package/dist-cjs/tree/TreeNode.css.js +0 -6
- package/dist-cjs/tree/TreeNode.css.js.map +0 -1
- package/dist-cjs/tree/TreeNode.js +0 -103
- package/dist-cjs/tree/TreeNode.js.map +0 -1
- package/dist-cjs/tree/TreeNodeExpansionIcon.css.js +0 -6
- package/dist-cjs/tree/TreeNodeExpansionIcon.css.js.map +0 -1
- package/dist-cjs/tree/TreeNodeExpansionIcon.js +0 -62
- package/dist-cjs/tree/TreeNodeExpansionIcon.js.map +0 -1
- package/dist-cjs/tree/TreeNodeLabel.css.js +0 -6
- package/dist-cjs/tree/TreeNodeLabel.css.js.map +0 -1
- package/dist-cjs/tree/TreeNodeLabel.js +0 -26
- package/dist-cjs/tree/TreeNodeLabel.js.map +0 -1
- package/dist-cjs/tree/TreeNodeTrigger.css.js +0 -6
- package/dist-cjs/tree/TreeNodeTrigger.css.js.map +0 -1
- package/dist-cjs/tree/TreeNodeTrigger.js +0 -153
- package/dist-cjs/tree/TreeNodeTrigger.js.map +0 -1
- package/dist-cjs/tree/treeModel.js +0 -61
- package/dist-cjs/tree/treeModel.js.map +0 -1
- package/dist-cjs/tree/useTree.js +0 -337
- package/dist-cjs/tree/useTree.js.map +0 -1
- package/dist-es/tree/Tree.css.js +0 -4
- package/dist-es/tree/Tree.css.js.map +0 -1
- package/dist-es/tree/Tree.js +0 -301
- package/dist-es/tree/Tree.js.map +0 -1
- package/dist-es/tree/TreeContext.js +0 -26
- package/dist-es/tree/TreeContext.js.map +0 -1
- package/dist-es/tree/TreeNode.css.js +0 -4
- package/dist-es/tree/TreeNode.css.js.map +0 -1
- package/dist-es/tree/TreeNode.js +0 -101
- package/dist-es/tree/TreeNode.js.map +0 -1
- package/dist-es/tree/TreeNodeExpansionIcon.css.js +0 -4
- package/dist-es/tree/TreeNodeExpansionIcon.css.js.map +0 -1
- package/dist-es/tree/TreeNodeExpansionIcon.js +0 -60
- package/dist-es/tree/TreeNodeExpansionIcon.js.map +0 -1
- package/dist-es/tree/TreeNodeLabel.css.js +0 -4
- package/dist-es/tree/TreeNodeLabel.css.js.map +0 -1
- package/dist-es/tree/TreeNodeLabel.js +0 -24
- package/dist-es/tree/TreeNodeLabel.js.map +0 -1
- package/dist-es/tree/TreeNodeTrigger.css.js +0 -4
- package/dist-es/tree/TreeNodeTrigger.css.js.map +0 -1
- package/dist-es/tree/TreeNodeTrigger.js +0 -151
- package/dist-es/tree/TreeNodeTrigger.js.map +0 -1
- package/dist-es/tree/treeModel.js +0 -57
- package/dist-es/tree/treeModel.js.map +0 -1
- package/dist-es/tree/useTree.js +0 -335
- package/dist-es/tree/useTree.js.map +0 -1
- package/dist-types/tree/Tree.d.ts +0 -36
- package/dist-types/tree/TreeContext.d.ts +0 -77
- package/dist-types/tree/TreeNode.d.ts +0 -25
- package/dist-types/tree/TreeNodeExpansionIcon.d.ts +0 -4
- package/dist-types/tree/TreeNodeLabel.d.ts +0 -4
- package/dist-types/tree/TreeNodeTrigger.d.ts +0 -8
- package/dist-types/tree/index.d.ts +0 -4
- package/dist-types/tree/treeModel.d.ts +0 -24
- package/dist-types/tree/useTree.d.ts +0 -68
|
@@ -0,0 +1,394 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var core = require('@salt-ds/core');
|
|
5
|
+
var styles = require('@salt-ds/styles');
|
|
6
|
+
var window = require('@salt-ds/window');
|
|
7
|
+
var clsx = require('clsx');
|
|
8
|
+
var react = require('react');
|
|
9
|
+
var ToolbarNext$1 = require('./ToolbarNext.css.js');
|
|
10
|
+
var ToolbarNextOverflow = require('./ToolbarNextOverflow.js');
|
|
11
|
+
var ToolbarNextOverflowFloatingBoundary = require('./ToolbarNextOverflowFloatingBoundary.js');
|
|
12
|
+
var toolbarNextKeyboardUtils = require('./toolbarNextKeyboardUtils.js');
|
|
13
|
+
var toolbarNextUtils = require('./toolbarNextUtils.js');
|
|
14
|
+
var useToolbarNextKeyboardNavigation = require('./useToolbarNextKeyboardNavigation.js');
|
|
15
|
+
var useToolbarNextOverflow = require('./useToolbarNextOverflow.js');
|
|
16
|
+
|
|
17
|
+
const withBaseName = core.makePrefixer("saltToolbarNext");
|
|
18
|
+
const withOverflowBaseName = core.makePrefixer("saltToolbarNextOverflow");
|
|
19
|
+
const bandPositions = ["start", "center", "end"];
|
|
20
|
+
function cloneMeasureDecorations(itemId, slot, decorations) {
|
|
21
|
+
return decorations.map((decoration, index) => {
|
|
22
|
+
return react.cloneElement(decoration, {
|
|
23
|
+
key: `${itemId}-${slot}-measurement-${String(decoration.key ?? index)}`
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
const ToolbarNext = react.forwardRef(
|
|
28
|
+
function ToolbarNext2({
|
|
29
|
+
children,
|
|
30
|
+
className,
|
|
31
|
+
onBlurCapture,
|
|
32
|
+
onFocusCapture,
|
|
33
|
+
onKeyDownCapture,
|
|
34
|
+
onPointerDownCapture,
|
|
35
|
+
appearance = "bordered",
|
|
36
|
+
variant = "primary",
|
|
37
|
+
...rest
|
|
38
|
+
}, ref) {
|
|
39
|
+
const targetWindow = window.useWindow();
|
|
40
|
+
styles.useComponentCssInjection({
|
|
41
|
+
testId: "salt-toolbar-next",
|
|
42
|
+
css: ToolbarNext$1,
|
|
43
|
+
window: targetWindow
|
|
44
|
+
});
|
|
45
|
+
const { mode, content } = toolbarNextUtils.normalizeToolbarChildren(children);
|
|
46
|
+
const overflowContent = react.useMemo(
|
|
47
|
+
() => toolbarNextUtils.normalizeToolbarChildren(children).content,
|
|
48
|
+
[children]
|
|
49
|
+
);
|
|
50
|
+
const allItems = react.useMemo(
|
|
51
|
+
() => content.flatMap((contentArea) => contentArea.items),
|
|
52
|
+
[content]
|
|
53
|
+
);
|
|
54
|
+
const {
|
|
55
|
+
containerRef,
|
|
56
|
+
getBandRef,
|
|
57
|
+
getItemRef,
|
|
58
|
+
getNamedTriggerMeasureRef,
|
|
59
|
+
getNamedTriggerRef,
|
|
60
|
+
getContentRef,
|
|
61
|
+
getTriggerMeasureRef,
|
|
62
|
+
overflowGroups,
|
|
63
|
+
overflowTriggerGroups,
|
|
64
|
+
overflowedIds
|
|
65
|
+
} = useToolbarNextOverflow.useToolbarNextOverflow({ content: overflowContent });
|
|
66
|
+
const handleRef = core.useForkRef(ref, containerRef);
|
|
67
|
+
const invalidCompositionWarnedRef = react.useRef(false);
|
|
68
|
+
const itemHostRefCallbacks = react.useRef(
|
|
69
|
+
/* @__PURE__ */ new Map()
|
|
70
|
+
);
|
|
71
|
+
const [itemHostNodes, setItemHostNodes] = react.useState({});
|
|
72
|
+
const sharedOverflowGroups = react.useMemo(
|
|
73
|
+
() => overflowGroups.filter((group) => !group.named),
|
|
74
|
+
[overflowGroups]
|
|
75
|
+
);
|
|
76
|
+
const namedOverflowGroups = react.useMemo(
|
|
77
|
+
() => overflowGroups.filter((group) => group.named),
|
|
78
|
+
[overflowGroups]
|
|
79
|
+
);
|
|
80
|
+
const overflowTriggerGroupByKey = react.useMemo(
|
|
81
|
+
() => new Map(
|
|
82
|
+
overflowTriggerGroups.map((group) => [group.key, group])
|
|
83
|
+
),
|
|
84
|
+
[overflowTriggerGroups]
|
|
85
|
+
);
|
|
86
|
+
const namedTriggerMeasureItems = react.useMemo(
|
|
87
|
+
() => allItems.filter((item) => {
|
|
88
|
+
return item.overflowMode !== "none" && item.overflowGroup !== "shared";
|
|
89
|
+
}),
|
|
90
|
+
[allItems]
|
|
91
|
+
);
|
|
92
|
+
const bandsByPosition = react.useMemo(() => {
|
|
93
|
+
return bandPositions.reduce(
|
|
94
|
+
(bands, position) => {
|
|
95
|
+
bands[position] = content.filter(
|
|
96
|
+
(contentArea) => contentArea.position === position
|
|
97
|
+
);
|
|
98
|
+
return bands;
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
start: [],
|
|
102
|
+
center: [],
|
|
103
|
+
end: []
|
|
104
|
+
}
|
|
105
|
+
);
|
|
106
|
+
}, [content]);
|
|
107
|
+
const hasCenteredLayout = bandsByPosition.center.length > 0;
|
|
108
|
+
const keyboardNavigation = useToolbarNextKeyboardNavigation.useToolbarNextKeyboardNavigation({
|
|
109
|
+
items: allItems,
|
|
110
|
+
overflowedIds,
|
|
111
|
+
scopeRef: containerRef
|
|
112
|
+
});
|
|
113
|
+
const overflowedIdsKey = react.useMemo(
|
|
114
|
+
() => Array.from(overflowedIds).sort().join("\0"),
|
|
115
|
+
[overflowedIds]
|
|
116
|
+
);
|
|
117
|
+
const previousOverflowedIdsKeyRef = react.useRef(overflowedIdsKey);
|
|
118
|
+
const getItemHostRef = react.useCallback(
|
|
119
|
+
(id, kind) => {
|
|
120
|
+
const callbackKey = `${id}:${kind}`;
|
|
121
|
+
const existing = itemHostRefCallbacks.current.get(callbackKey);
|
|
122
|
+
if (existing) {
|
|
123
|
+
return existing;
|
|
124
|
+
}
|
|
125
|
+
const callback = (node) => {
|
|
126
|
+
setItemHostNodes((previous) => {
|
|
127
|
+
var _a;
|
|
128
|
+
if (((_a = previous[id]) == null ? void 0 : _a[kind]) === node) {
|
|
129
|
+
return previous;
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
...previous,
|
|
133
|
+
[id]: {
|
|
134
|
+
...previous[id],
|
|
135
|
+
[kind]: node
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
itemHostRefCallbacks.current.set(callbackKey, callback);
|
|
141
|
+
return callback;
|
|
142
|
+
},
|
|
143
|
+
[]
|
|
144
|
+
);
|
|
145
|
+
const itemOwnerHostNodes = react.useMemo(() => {
|
|
146
|
+
return allItems.reduce(
|
|
147
|
+
(hosts, item) => {
|
|
148
|
+
const nodes = itemHostNodes[item.id];
|
|
149
|
+
hosts[item.id] = (nodes == null ? void 0 : nodes.overflow) ?? (nodes == null ? void 0 : nodes.main) ?? (nodes == null ? void 0 : nodes.measurement) ?? null;
|
|
150
|
+
return hosts;
|
|
151
|
+
},
|
|
152
|
+
{}
|
|
153
|
+
);
|
|
154
|
+
}, [allItems, itemHostNodes]);
|
|
155
|
+
const overflowedMeasurementItems = react.useMemo(() => {
|
|
156
|
+
return allItems.filter((item) => {
|
|
157
|
+
var _a;
|
|
158
|
+
return overflowedIds.has(item.id) && !((_a = itemHostNodes[item.id]) == null ? void 0 : _a.overflow);
|
|
159
|
+
});
|
|
160
|
+
}, [allItems, itemHostNodes, overflowedIds]);
|
|
161
|
+
core.useIsomorphicLayoutEffect(() => {
|
|
162
|
+
const overflowChanged = previousOverflowedIdsKeyRef.current !== overflowedIdsKey;
|
|
163
|
+
previousOverflowedIdsKeyRef.current = overflowedIdsKey;
|
|
164
|
+
if (!overflowChanged) {
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
const doc = targetWindow == null ? void 0 : targetWindow.document;
|
|
168
|
+
const rememberedFocus = keyboardNavigation.rememberedFocusRef.current;
|
|
169
|
+
if (!doc || !rememberedFocus) {
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const activeElement = doc.activeElement;
|
|
173
|
+
const focusWasLost = !activeElement || activeElement === doc.body || activeElement === doc.documentElement || !activeElement.isConnected;
|
|
174
|
+
const target = keyboardNavigation.getEntryFocusable();
|
|
175
|
+
if (!focusWasLost) {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
if (!target) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
const focusTarget = () => {
|
|
182
|
+
if (target.isConnected) {
|
|
183
|
+
target.focus({ preventScroll: true });
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
if (targetWindow == null ? void 0 : targetWindow.requestAnimationFrame) {
|
|
187
|
+
const frame = targetWindow.requestAnimationFrame(focusTarget);
|
|
188
|
+
return () => {
|
|
189
|
+
targetWindow.cancelAnimationFrame(frame);
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
queueMicrotask(focusTarget);
|
|
193
|
+
}, [
|
|
194
|
+
keyboardNavigation.getEntryFocusable,
|
|
195
|
+
keyboardNavigation.rememberedFocusRef,
|
|
196
|
+
overflowedIdsKey,
|
|
197
|
+
targetWindow
|
|
198
|
+
]);
|
|
199
|
+
react.useEffect(() => {
|
|
200
|
+
if (process.env.NODE_ENV !== "production") {
|
|
201
|
+
if (mode === "invalid" && !invalidCompositionWarnedRef.current) {
|
|
202
|
+
console.warn(
|
|
203
|
+
"ToolbarNext children must be authored in one composition model: either TooltrayNext/Divider children directly in ToolbarNext, or ToolbarContentNext children containing TooltrayNext/Divider items."
|
|
204
|
+
);
|
|
205
|
+
invalidCompositionWarnedRef.current = true;
|
|
206
|
+
}
|
|
207
|
+
if (mode !== "invalid") {
|
|
208
|
+
invalidCompositionWarnedRef.current = false;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}, [mode]);
|
|
212
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
213
|
+
"div",
|
|
214
|
+
{
|
|
215
|
+
className: clsx.clsx(
|
|
216
|
+
withBaseName(),
|
|
217
|
+
{
|
|
218
|
+
[withBaseName("fallback")]: mode === "invalid",
|
|
219
|
+
[withBaseName("layout")]: mode !== "invalid"
|
|
220
|
+
},
|
|
221
|
+
withBaseName(variant),
|
|
222
|
+
withBaseName(appearance),
|
|
223
|
+
className
|
|
224
|
+
),
|
|
225
|
+
...rest,
|
|
226
|
+
"data-centered": mode !== "invalid" && hasCenteredLayout ? "" : void 0,
|
|
227
|
+
"data-mode": mode,
|
|
228
|
+
...{ [toolbarNextKeyboardUtils.TOOLBAR_NEXT_SCOPE_ROOT_ATTR]: "main" },
|
|
229
|
+
ref: handleRef,
|
|
230
|
+
onBlurCapture: (event) => {
|
|
231
|
+
keyboardNavigation.handleBlurCapture(event);
|
|
232
|
+
onBlurCapture == null ? void 0 : onBlurCapture(event);
|
|
233
|
+
},
|
|
234
|
+
onFocusCapture: (event) => {
|
|
235
|
+
keyboardNavigation.handleFocusCapture(event);
|
|
236
|
+
onFocusCapture == null ? void 0 : onFocusCapture(event);
|
|
237
|
+
},
|
|
238
|
+
onKeyDownCapture: (event) => {
|
|
239
|
+
keyboardNavigation.handleKeyDownCapture(event);
|
|
240
|
+
onKeyDownCapture == null ? void 0 : onKeyDownCapture(event);
|
|
241
|
+
},
|
|
242
|
+
onPointerDownCapture: (event) => {
|
|
243
|
+
keyboardNavigation.handlePointerDownCapture(event);
|
|
244
|
+
onPointerDownCapture == null ? void 0 : onPointerDownCapture(event);
|
|
245
|
+
},
|
|
246
|
+
role: "toolbar",
|
|
247
|
+
"aria-orientation": "horizontal",
|
|
248
|
+
children: mode === "invalid" ? children : /* @__PURE__ */ jsxRuntime.jsxs(ToolbarNextOverflowFloatingBoundary.ToolbarNextOverflowFloatingBoundaryProvider, { children: [
|
|
249
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
250
|
+
ToolbarNextOverflow.ToolbarNextOverflowOwners,
|
|
251
|
+
{
|
|
252
|
+
hostNodes: itemOwnerHostNodes,
|
|
253
|
+
items: allItems
|
|
254
|
+
}
|
|
255
|
+
),
|
|
256
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { "aria-hidden": true, className: withBaseName("measurements"), children: [
|
|
257
|
+
overflowTriggerGroups.filter((group) => !group.named).map((group) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
258
|
+
core.Button,
|
|
259
|
+
{
|
|
260
|
+
appearance: "transparent",
|
|
261
|
+
className: withBaseName("measureTrigger"),
|
|
262
|
+
ref: getTriggerMeasureRef(group.key),
|
|
263
|
+
sentiment: "neutral",
|
|
264
|
+
tabIndex: -1,
|
|
265
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
266
|
+
ToolbarNextOverflow.ToolbarNextOverflowTriggerContent,
|
|
267
|
+
{
|
|
268
|
+
label: group.label,
|
|
269
|
+
named: group.named
|
|
270
|
+
}
|
|
271
|
+
)
|
|
272
|
+
},
|
|
273
|
+
group.id
|
|
274
|
+
)),
|
|
275
|
+
namedTriggerMeasureItems.map((item) => {
|
|
276
|
+
const group = overflowTriggerGroupByKey.get(
|
|
277
|
+
item.overflowGroupKey
|
|
278
|
+
);
|
|
279
|
+
if (!group) {
|
|
280
|
+
return null;
|
|
281
|
+
}
|
|
282
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
283
|
+
"div",
|
|
284
|
+
{
|
|
285
|
+
className: withOverflowBaseName("slot"),
|
|
286
|
+
ref: getNamedTriggerMeasureRef(item.id),
|
|
287
|
+
children: [
|
|
288
|
+
cloneMeasureDecorations(
|
|
289
|
+
item.id,
|
|
290
|
+
"leading",
|
|
291
|
+
item.leadingDecorations
|
|
292
|
+
),
|
|
293
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: withOverflowBaseName("item"), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
294
|
+
core.Button,
|
|
295
|
+
{
|
|
296
|
+
appearance: "transparent",
|
|
297
|
+
className: withOverflowBaseName("trigger"),
|
|
298
|
+
sentiment: "neutral",
|
|
299
|
+
tabIndex: -1,
|
|
300
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
301
|
+
ToolbarNextOverflow.ToolbarNextOverflowTriggerContent,
|
|
302
|
+
{
|
|
303
|
+
label: group.label,
|
|
304
|
+
named: group.named
|
|
305
|
+
}
|
|
306
|
+
)
|
|
307
|
+
}
|
|
308
|
+
) })
|
|
309
|
+
]
|
|
310
|
+
},
|
|
311
|
+
`measure-${item.id}`
|
|
312
|
+
);
|
|
313
|
+
}),
|
|
314
|
+
overflowedMeasurementItems.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
315
|
+
"div",
|
|
316
|
+
{
|
|
317
|
+
className: withOverflowBaseName("slot"),
|
|
318
|
+
ref: getItemRef(item.id),
|
|
319
|
+
children: [
|
|
320
|
+
cloneMeasureDecorations(
|
|
321
|
+
item.id,
|
|
322
|
+
"leading",
|
|
323
|
+
item.leadingDecorations
|
|
324
|
+
),
|
|
325
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: withOverflowBaseName("item"), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
326
|
+
"div",
|
|
327
|
+
{
|
|
328
|
+
className: withOverflowBaseName("itemHost"),
|
|
329
|
+
ref: getItemHostRef(item.id, "measurement")
|
|
330
|
+
}
|
|
331
|
+
) }),
|
|
332
|
+
cloneMeasureDecorations(
|
|
333
|
+
item.id,
|
|
334
|
+
"trailing",
|
|
335
|
+
item.trailingDecorations
|
|
336
|
+
)
|
|
337
|
+
]
|
|
338
|
+
},
|
|
339
|
+
`measure-item-${item.id}`
|
|
340
|
+
))
|
|
341
|
+
] }),
|
|
342
|
+
bandPositions.map((position) => {
|
|
343
|
+
const bandContent = bandsByPosition[position];
|
|
344
|
+
const shouldRenderBand = hasCenteredLayout ? true : position === "end" ? bandContent.length > 0 || sharedOverflowGroups.length > 0 : bandContent.length > 0;
|
|
345
|
+
if (!shouldRenderBand) {
|
|
346
|
+
return null;
|
|
347
|
+
}
|
|
348
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
349
|
+
"div",
|
|
350
|
+
{
|
|
351
|
+
className: withBaseName("band"),
|
|
352
|
+
"data-band-position": position,
|
|
353
|
+
ref: getBandRef(position),
|
|
354
|
+
children: [
|
|
355
|
+
bandContent.map((contentArea) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
356
|
+
ToolbarNextOverflow.ToolbarNextOverflowContent,
|
|
357
|
+
{
|
|
358
|
+
focusMemoryRef: keyboardNavigation.rememberedFocusRef,
|
|
359
|
+
getItemHostRef,
|
|
360
|
+
getItemRef,
|
|
361
|
+
getNamedTriggerRef,
|
|
362
|
+
getContentRef,
|
|
363
|
+
onItemFocus: keyboardNavigation.rememberItemFocus,
|
|
364
|
+
overflowGroups: namedOverflowGroups.filter(
|
|
365
|
+
(group) => group.contentKey === contentArea.key
|
|
366
|
+
),
|
|
367
|
+
overflowedIds,
|
|
368
|
+
content: contentArea
|
|
369
|
+
},
|
|
370
|
+
contentArea.key
|
|
371
|
+
)),
|
|
372
|
+
position === "end" ? sharedOverflowGroups.map((group) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
373
|
+
ToolbarNextOverflow.ToolbarNextOverflowMenu,
|
|
374
|
+
{
|
|
375
|
+
focusMemoryRef: keyboardNavigation.rememberedFocusRef,
|
|
376
|
+
getItemHostRef,
|
|
377
|
+
group,
|
|
378
|
+
onItemFocus: keyboardNavigation.rememberItemFocus
|
|
379
|
+
},
|
|
380
|
+
group.id
|
|
381
|
+
)) : null
|
|
382
|
+
]
|
|
383
|
+
},
|
|
384
|
+
position
|
|
385
|
+
);
|
|
386
|
+
})
|
|
387
|
+
] })
|
|
388
|
+
}
|
|
389
|
+
);
|
|
390
|
+
}
|
|
391
|
+
);
|
|
392
|
+
|
|
393
|
+
exports.ToolbarNext = ToolbarNext;
|
|
394
|
+
//# sourceMappingURL=ToolbarNext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolbarNext.js","sources":["../src/toolbar-next/ToolbarNext.tsx"],"sourcesContent":["import {\n Button,\n makePrefixer,\n useForkRef,\n useIsomorphicLayoutEffect,\n} from \"@salt-ds/core\";\nimport { useComponentCssInjection } from \"@salt-ds/styles\";\nimport { useWindow } from \"@salt-ds/window\";\nimport { clsx } from \"clsx\";\nimport {\n type ComponentPropsWithoutRef,\n cloneElement,\n forwardRef,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport type { ToolbarContentNextPosition } from \"./ToolbarContentNext\";\nimport toolbarNextCss from \"./ToolbarNext.css\";\nimport {\n type ToolbarNextItemHostKind,\n ToolbarNextOverflowContent,\n ToolbarNextOverflowMenu,\n ToolbarNextOverflowOwners,\n ToolbarNextOverflowTriggerContent,\n} from \"./ToolbarNextOverflow\";\nimport { ToolbarNextOverflowFloatingBoundaryProvider } from \"./ToolbarNextOverflowFloatingBoundary\";\nimport { TOOLBAR_NEXT_SCOPE_ROOT_ATTR } from \"./toolbarNextKeyboardUtils\";\nimport {\n normalizeToolbarChildren,\n type ToolbarNextOverflowItem,\n} from \"./toolbarNextUtils\";\nimport { useToolbarNextKeyboardNavigation } from \"./useToolbarNextKeyboardNavigation\";\nimport { useToolbarNextOverflow } from \"./useToolbarNextOverflow\";\n\nexport interface ToolbarNextProps extends ComponentPropsWithoutRef<\"div\"> {\n /**\n * Visual treatment of the toolbar. Defaults to `\"bordered\"`.\n */\n appearance?: \"bordered\" | \"transparent\";\n /**\n * Styling variant. Defaults to `\"primary\"`.\n */\n variant?: \"primary\" | \"secondary\" | \"tertiary\";\n}\n\nconst withBaseName = makePrefixer(\"saltToolbarNext\");\nconst withOverflowBaseName = makePrefixer(\"saltToolbarNextOverflow\");\nconst bandPositions: ToolbarContentNextPosition[] = [\"start\", \"center\", \"end\"];\n\ntype ToolbarNextItemHostNodes = Partial<\n Record<ToolbarNextItemHostKind, HTMLDivElement | null>\n>;\n\nfunction cloneMeasureDecorations(\n itemId: string,\n slot: \"leading\" | \"trailing\",\n decorations: ToolbarNextOverflowItem[\"leadingDecorations\"],\n) {\n return decorations.map((decoration, index) => {\n return cloneElement(decoration, {\n key: `${itemId}-${slot}-measurement-${String(decoration.key ?? index)}`,\n });\n });\n}\n\nexport const ToolbarNext = forwardRef<HTMLDivElement, ToolbarNextProps>(\n function ToolbarNext(\n {\n children,\n className,\n onBlurCapture,\n onFocusCapture,\n onKeyDownCapture,\n onPointerDownCapture,\n appearance = \"bordered\",\n variant = \"primary\",\n ...rest\n },\n ref,\n ) {\n const targetWindow = useWindow();\n useComponentCssInjection({\n testId: \"salt-toolbar-next\",\n css: toolbarNextCss,\n window: targetWindow,\n });\n\n const { mode, content } = normalizeToolbarChildren(children);\n const overflowContent = useMemo(\n () => normalizeToolbarChildren(children).content,\n [children],\n );\n\n const allItems = useMemo(\n () => content.flatMap((contentArea) => contentArea.items),\n [content],\n );\n\n const {\n containerRef,\n getBandRef,\n getItemRef,\n getNamedTriggerMeasureRef,\n getNamedTriggerRef,\n getContentRef,\n getTriggerMeasureRef,\n overflowGroups,\n overflowTriggerGroups,\n overflowedIds,\n } = useToolbarNextOverflow({ content: overflowContent });\n\n const handleRef = useForkRef(ref, containerRef);\n const invalidCompositionWarnedRef = useRef(false);\n const itemHostRefCallbacks = useRef(\n new Map<string, (node: HTMLDivElement | null) => void>(),\n );\n const [itemHostNodes, setItemHostNodes] = useState<\n Record<string, ToolbarNextItemHostNodes>\n >({});\n\n const sharedOverflowGroups = useMemo(\n () => overflowGroups.filter((group) => !group.named),\n [overflowGroups],\n );\n\n const namedOverflowGroups = useMemo(\n () => overflowGroups.filter((group) => group.named),\n [overflowGroups],\n );\n\n const overflowTriggerGroupByKey = useMemo(\n () =>\n new Map(\n overflowTriggerGroups.map((group) => [group.key, group] as const),\n ),\n [overflowTriggerGroups],\n );\n\n const namedTriggerMeasureItems = useMemo(\n () =>\n allItems.filter((item) => {\n return (\n item.overflowMode !== \"none\" && item.overflowGroup !== \"shared\"\n );\n }),\n [allItems],\n );\n\n const bandsByPosition = useMemo(() => {\n return bandPositions.reduce<\n Record<ToolbarContentNextPosition, typeof content>\n >(\n (bands, position) => {\n bands[position] = content.filter(\n (contentArea) => contentArea.position === position,\n );\n return bands;\n },\n {\n start: [],\n center: [],\n end: [],\n },\n );\n }, [content]);\n const hasCenteredLayout = bandsByPosition.center.length > 0;\n const keyboardNavigation = useToolbarNextKeyboardNavigation({\n items: allItems,\n overflowedIds,\n scopeRef: containerRef,\n });\n const overflowedIdsKey = useMemo(\n () => Array.from(overflowedIds).sort().join(\"\\0\"),\n [overflowedIds],\n );\n const previousOverflowedIdsKeyRef = useRef(overflowedIdsKey);\n\n const getItemHostRef = useCallback(\n (id: string, kind: ToolbarNextItemHostKind) => {\n const callbackKey = `${id}:${kind}`;\n const existing = itemHostRefCallbacks.current.get(callbackKey);\n\n if (existing) {\n return existing;\n }\n\n const callback = (node: HTMLDivElement | null) => {\n setItemHostNodes((previous) => {\n if (previous[id]?.[kind] === node) {\n return previous;\n }\n\n return {\n ...previous,\n [id]: {\n ...previous[id],\n [kind]: node,\n },\n };\n });\n };\n\n itemHostRefCallbacks.current.set(callbackKey, callback);\n return callback;\n },\n [],\n );\n\n const itemOwnerHostNodes = useMemo(() => {\n return allItems.reduce<Record<string, HTMLDivElement | null>>(\n (hosts, item) => {\n const nodes = itemHostNodes[item.id];\n\n hosts[item.id] =\n nodes?.overflow ?? nodes?.main ?? nodes?.measurement ?? null;\n return hosts;\n },\n {},\n );\n }, [allItems, itemHostNodes]);\n\n const overflowedMeasurementItems = useMemo(() => {\n return allItems.filter((item) => {\n return overflowedIds.has(item.id) && !itemHostNodes[item.id]?.overflow;\n });\n }, [allItems, itemHostNodes, overflowedIds]);\n\n useIsomorphicLayoutEffect(() => {\n const overflowChanged =\n previousOverflowedIdsKeyRef.current !== overflowedIdsKey;\n previousOverflowedIdsKeyRef.current = overflowedIdsKey;\n\n if (!overflowChanged) {\n return;\n }\n\n const doc = targetWindow?.document;\n const rememberedFocus = keyboardNavigation.rememberedFocusRef.current;\n\n if (!doc || !rememberedFocus) {\n return;\n }\n\n const activeElement = doc.activeElement;\n const focusWasLost =\n !activeElement ||\n activeElement === doc.body ||\n activeElement === doc.documentElement ||\n !activeElement.isConnected;\n const target = keyboardNavigation.getEntryFocusable();\n\n if (!focusWasLost) {\n return;\n }\n\n if (!target) {\n return;\n }\n\n const focusTarget = () => {\n if (target.isConnected) {\n target.focus({ preventScroll: true });\n }\n };\n\n if (targetWindow?.requestAnimationFrame) {\n const frame = targetWindow.requestAnimationFrame(focusTarget);\n\n return () => {\n targetWindow.cancelAnimationFrame(frame);\n };\n }\n\n queueMicrotask(focusTarget);\n }, [\n keyboardNavigation.getEntryFocusable,\n keyboardNavigation.rememberedFocusRef,\n overflowedIdsKey,\n targetWindow,\n ]);\n\n useEffect(() => {\n if (process.env.NODE_ENV !== \"production\") {\n if (mode === \"invalid\" && !invalidCompositionWarnedRef.current) {\n console.warn(\n \"ToolbarNext children must be authored in one composition model: either TooltrayNext/Divider children directly in ToolbarNext, or ToolbarContentNext children containing TooltrayNext/Divider items.\",\n );\n invalidCompositionWarnedRef.current = true;\n }\n\n if (mode !== \"invalid\") {\n invalidCompositionWarnedRef.current = false;\n }\n }\n }, [mode]);\n\n return (\n <div\n className={clsx(\n withBaseName(),\n {\n [withBaseName(\"fallback\")]: mode === \"invalid\",\n [withBaseName(\"layout\")]: mode !== \"invalid\",\n },\n withBaseName(variant),\n withBaseName(appearance),\n className,\n )}\n {...rest}\n data-centered={mode !== \"invalid\" && hasCenteredLayout ? \"\" : undefined}\n data-mode={mode}\n {...{ [TOOLBAR_NEXT_SCOPE_ROOT_ATTR]: \"main\" }}\n ref={handleRef}\n onBlurCapture={(event) => {\n keyboardNavigation.handleBlurCapture(event);\n onBlurCapture?.(event);\n }}\n onFocusCapture={(event) => {\n keyboardNavigation.handleFocusCapture(event);\n onFocusCapture?.(event);\n }}\n onKeyDownCapture={(event) => {\n keyboardNavigation.handleKeyDownCapture(event);\n onKeyDownCapture?.(event);\n }}\n onPointerDownCapture={(event) => {\n keyboardNavigation.handlePointerDownCapture(event);\n onPointerDownCapture?.(event);\n }}\n role=\"toolbar\"\n aria-orientation=\"horizontal\"\n >\n {mode === \"invalid\" ? (\n children\n ) : (\n <ToolbarNextOverflowFloatingBoundaryProvider>\n <ToolbarNextOverflowOwners\n hostNodes={itemOwnerHostNodes}\n items={allItems}\n />\n <div aria-hidden className={withBaseName(\"measurements\")}>\n {overflowTriggerGroups\n .filter((group) => !group.named)\n .map((group) => (\n <Button\n appearance=\"transparent\"\n className={withBaseName(\"measureTrigger\")}\n key={group.id}\n ref={getTriggerMeasureRef(group.key)}\n sentiment=\"neutral\"\n tabIndex={-1}\n >\n <ToolbarNextOverflowTriggerContent\n label={group.label}\n named={group.named}\n />\n </Button>\n ))}\n {namedTriggerMeasureItems.map((item) => {\n const group = overflowTriggerGroupByKey.get(\n item.overflowGroupKey,\n );\n\n if (!group) {\n return null;\n }\n\n return (\n <div\n className={withOverflowBaseName(\"slot\")}\n key={`measure-${item.id}`}\n ref={getNamedTriggerMeasureRef(item.id)}\n >\n {cloneMeasureDecorations(\n item.id,\n \"leading\",\n item.leadingDecorations,\n )}\n <div className={withOverflowBaseName(\"item\")}>\n <Button\n appearance=\"transparent\"\n className={withOverflowBaseName(\"trigger\")}\n sentiment=\"neutral\"\n tabIndex={-1}\n >\n <ToolbarNextOverflowTriggerContent\n label={group.label}\n named={group.named}\n />\n </Button>\n </div>\n </div>\n );\n })}\n {overflowedMeasurementItems.map((item) => (\n <div\n className={withOverflowBaseName(\"slot\")}\n key={`measure-item-${item.id}`}\n ref={getItemRef(item.id)}\n >\n {cloneMeasureDecorations(\n item.id,\n \"leading\",\n item.leadingDecorations,\n )}\n <div className={withOverflowBaseName(\"item\")}>\n <div\n className={withOverflowBaseName(\"itemHost\")}\n ref={getItemHostRef(item.id, \"measurement\")}\n />\n </div>\n {cloneMeasureDecorations(\n item.id,\n \"trailing\",\n item.trailingDecorations,\n )}\n </div>\n ))}\n </div>\n {bandPositions.map((position) => {\n const bandContent = bandsByPosition[position];\n const shouldRenderBand = hasCenteredLayout\n ? true\n : position === \"end\"\n ? bandContent.length > 0 || sharedOverflowGroups.length > 0\n : bandContent.length > 0;\n\n if (!shouldRenderBand) {\n return null;\n }\n\n return (\n <div\n className={withBaseName(\"band\")}\n data-band-position={position}\n key={position}\n ref={getBandRef(position)}\n >\n {bandContent.map((contentArea) => (\n <ToolbarNextOverflowContent\n focusMemoryRef={keyboardNavigation.rememberedFocusRef}\n getItemHostRef={getItemHostRef}\n getItemRef={getItemRef}\n getNamedTriggerRef={getNamedTriggerRef}\n getContentRef={getContentRef}\n key={contentArea.key}\n onItemFocus={keyboardNavigation.rememberItemFocus}\n overflowGroups={namedOverflowGroups.filter(\n (group) => group.contentKey === contentArea.key,\n )}\n overflowedIds={overflowedIds}\n content={contentArea}\n />\n ))}\n {position === \"end\"\n ? sharedOverflowGroups.map((group) => (\n <ToolbarNextOverflowMenu\n focusMemoryRef={keyboardNavigation.rememberedFocusRef}\n getItemHostRef={getItemHostRef}\n group={group}\n key={group.id}\n onItemFocus={keyboardNavigation.rememberItemFocus}\n />\n ))\n : null}\n </div>\n );\n })}\n </ToolbarNextOverflowFloatingBoundaryProvider>\n )}\n </div>\n );\n },\n);\n"],"names":["makePrefixer","cloneElement","forwardRef","ToolbarNext","useWindow","useComponentCssInjection","toolbarNextCss","normalizeToolbarChildren","useMemo","useToolbarNextOverflow","useForkRef","useRef","useState","useToolbarNextKeyboardNavigation","useCallback","useIsomorphicLayoutEffect","useEffect","jsx","clsx","TOOLBAR_NEXT_SCOPE_ROOT_ATTR","jsxs","ToolbarNextOverflowFloatingBoundaryProvider","ToolbarNextOverflowOwners","Button","ToolbarNextOverflowTriggerContent","ToolbarNextOverflowContent","ToolbarNextOverflowMenu"],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var css_248z = ".saltToolbarNextOverflow-content {\n position: relative;\n}\n\n.saltToolbarNextOverflow-slot,\n.saltToolbarNextOverflow-panelItem {\n align-items: center;\n display: flex;\n flex-shrink: 0;\n gap: var(--salt-spacing-100);\n min-width: 0;\n}\n\n.saltToolbarNextOverflow-slot[data-align=\"end\"] {\n margin-inline-start: auto;\n}\n\n.saltToolbarNextOverflow-slot[data-align=\"center\"] {\n margin-inline-start: auto;\n margin-inline-end: auto;\n}\n\n.saltToolbarNextOverflow-item {\n align-items: center;\n display: flex;\n flex-shrink: 0;\n min-width: 0;\n}\n\n.saltToolbarNextOverflow-menu {\n display: flex;\n flex-shrink: 0;\n}\n\n.saltToolbarNextOverflow-itemHost,\n.saltToolbarNextOverflow-contentHost {\n display: contents;\n}\n\n.saltToolbarNextOverflow-trigger {\n white-space: nowrap;\n}\n\n.saltToolbarNextOverflow-panel {\n background: var(--salt-container-primary-background);\n border: var(--salt-size-fixed-100) var(--salt-borderStyle-solid) var(--salt-selectable-borderColor-selected);\n border-radius: var(--salt-palette-corner, 0);\n box-shadow: var(--salt-overlayable-shadow-popout);\n box-sizing: border-box;\n max-width: min(32rem, calc(100vw - var(--salt-spacing-300)));\n overflow: auto;\n position: absolute;\n z-index: var(--salt-zIndex-flyover);\n}\n\n/* TODO: improve this as brittle */\n.saltToolbarNextOverflow-floatingDescendant.saltToolbarNextOverflow-floatingDescendant {\n z-index: calc(var(--salt-zIndex-flyover) + var(--salt-zIndex-default));\n}\n\n.saltToolbarNextOverflow-panelContent {\n align-items: center;\n display: flex;\n flex-wrap: wrap;\n gap: var(--salt-spacing-100);\n max-width: inherit;\n min-width: max-content;\n padding: var(--salt-spacing-100);\n}\n\n.saltToolbarNextOverflow-panel .saltTooltrayNext[data-align=\"center\"],\n.saltToolbarNextOverflow-panel .saltTooltrayNext[data-align=\"end\"] {\n margin-inline-start: 0;\n margin-inline-end: 0;\n}\n\n.saltToolbarNextOverflow-panel .saltTooltrayNext > * {\n inline-size: auto;\n}\n\n.saltToolbarNextOverflow-content > .saltToolbarNextOverflow-slot .saltTooltrayNext[data-align=\"center\"],\n.saltToolbarNextOverflow-content > .saltToolbarNextOverflow-slot .saltTooltrayNext[data-align=\"end\"] {\n margin-inline-start: 0;\n margin-inline-end: 0;\n}\n";
|
|
4
|
+
|
|
5
|
+
module.exports = css_248z;
|
|
6
|
+
//# sourceMappingURL=ToolbarNextOverflow.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolbarNextOverflow.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|