lizaui 9.0.10 → 9.0.12
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/button/index.es.js +1 -1
- package/dist/calendar/index.cjs.js +11 -8
- package/dist/calendar/index.cjs.js.map +1 -1
- package/dist/calendar/index.es.js +12 -9
- package/dist/calendar/index.es.js.map +1 -1
- package/dist/checkbox/index.es.js +1 -1
- package/dist/chunks/{button-B0fpJrMg.js → button-CA3Y2GZ1.js} +2 -2
- package/dist/chunks/{button-B0fpJrMg.js.map → button-CA3Y2GZ1.js.map} +1 -1
- package/dist/chunks/{checkbox-C1Sssumg.js → checkbox-qzZKMLRN.js} +2 -2
- package/dist/chunks/{checkbox-C1Sssumg.js.map → checkbox-qzZKMLRN.js.map} +1 -1
- package/dist/chunks/{floating-ui.dom-DsMDyTcd.js → floating-ui.dom-N5ROFCJy.js} +1 -10
- package/dist/chunks/{floating-ui.dom-DsMDyTcd.js.map → floating-ui.dom-N5ROFCJy.js.map} +1 -1
- package/dist/chunks/{floating-ui.dom-Bd-QJw02.js → floating-ui.dom-NqZWWqNg.js} +4 -13
- package/dist/chunks/{floating-ui.dom-Bd-QJw02.js.map → floating-ui.dom-NqZWWqNg.js.map} +1 -1
- package/dist/chunks/index-CuySPbdY.js +559 -0
- package/dist/chunks/index-CuySPbdY.js.map +1 -0
- package/dist/chunks/index-DBDBh58Q.js +575 -0
- package/dist/chunks/index-DBDBh58Q.js.map +1 -0
- package/dist/chunks/index-DNSql2gU.js +662 -0
- package/dist/chunks/index-DNSql2gU.js.map +1 -0
- package/dist/chunks/{index-B4RTH1-D.js → index-DiC9dI6_.js} +4 -4
- package/dist/chunks/{index-B4RTH1-D.js.map → index-DiC9dI6_.js.map} +1 -1
- package/dist/chunks/index-DlZi5TkN.js +646 -0
- package/dist/chunks/index-DlZi5TkN.js.map +1 -0
- package/dist/chunks/{scroll-area-C0NhSIO2.js → scroll-area-BboZbU1u.js} +27 -27
- package/dist/chunks/{scroll-area-C0NhSIO2.js.map → scroll-area-BboZbU1u.js.map} +1 -1
- package/dist/chunks/{scroll-area-JgKF61tc.js → scroll-area-DKkgpH-S.js} +3 -3
- package/dist/chunks/{scroll-area-JgKF61tc.js.map → scroll-area-DKkgpH-S.js.map} +1 -1
- package/dist/chunks/{select-DGnc8VJi.js → select-MSYUKpRI.js} +83 -439
- package/dist/chunks/select-MSYUKpRI.js.map +1 -0
- package/dist/chunks/{select-Dpyj5dUk.js → select-s-z596Y4.js} +10 -366
- package/dist/chunks/select-s-z596Y4.js.map +1 -0
- package/dist/chunks/{textarea-D2_KC-J4.js → textarea-By2Vv44z.js} +36 -587
- package/dist/chunks/textarea-By2Vv44z.js.map +1 -0
- package/dist/chunks/{textarea-_HQpXiCX.js → textarea-ClJsk9Gp.js} +35 -586
- package/dist/chunks/textarea-ClJsk9Gp.js.map +1 -0
- package/dist/chunks/tooltip-BP--5Wj2.js +525 -0
- package/dist/chunks/tooltip-BP--5Wj2.js.map +1 -0
- package/dist/chunks/tooltip-KggPQa5m.js +541 -0
- package/dist/chunks/tooltip-KggPQa5m.js.map +1 -0
- package/dist/components/calendar/date-picker/date-picker.d.ts +1 -1
- package/dist/components/calendar/date-picker/date-picker.d.ts.map +1 -1
- package/dist/components/calendar/date-picker/interface/date-picker.interface.d.ts +3 -0
- package/dist/components/calendar/date-picker/interface/date-picker.interface.d.ts.map +1 -1
- package/dist/components/tooltip/tooltip-nice.d.ts +11 -0
- package/dist/components/tooltip/tooltip-nice.d.ts.map +1 -0
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/ui/tooltip.d.ts +8 -0
- package/dist/components/ui/tooltip.d.ts.map +1 -0
- package/dist/divider/index.es.js +1 -1
- package/dist/modal/index.es.js +1 -1
- package/dist/pagination/index.cjs.js +2 -2
- package/dist/pagination/index.es.js +3 -3
- package/dist/phone-input/index.cjs.js +2 -2
- package/dist/phone-input/index.es.js +3 -3
- package/dist/select-input/index.cjs.js +1 -1
- package/dist/select-input/index.es.js +2 -2
- package/dist/table/index.cjs.js +1 -1
- package/dist/table/index.es.js +2 -2
- package/dist/time-input/index.cjs.js +1 -1
- package/dist/time-input/index.es.js +2 -2
- package/dist/tooltip/index.cjs.js +1 -1
- package/dist/tooltip/index.es.js +1 -1
- package/dist/ui/index.cjs.js +292 -290
- package/dist/ui/index.cjs.js.map +1 -1
- package/dist/ui/index.es.js +182 -180
- package/dist/ui/index.es.js.map +1 -1
- package/package.json +10 -9
- package/dist/chunks/floating-ui.react-dom-CjlUwp8V.js +0 -294
- package/dist/chunks/floating-ui.react-dom-CjlUwp8V.js.map +0 -1
- package/dist/chunks/floating-ui.react-dom-D5BI9L2i.js +0 -310
- package/dist/chunks/floating-ui.react-dom-D5BI9L2i.js.map +0 -1
- package/dist/chunks/select-DGnc8VJi.js.map +0 -1
- package/dist/chunks/select-Dpyj5dUk.js.map +0 -1
- package/dist/chunks/textarea-D2_KC-J4.js.map +0 -1
- package/dist/chunks/textarea-_HQpXiCX.js.map +0 -1
- package/dist/chunks/tooltip-GGFk8ALK.js +0 -1402
- package/dist/chunks/tooltip-GGFk8ALK.js.map +0 -1
- package/dist/chunks/tooltip-JwIbppjO.js +0 -1387
- package/dist/chunks/tooltip-JwIbppjO.js.map +0 -1
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
const jsxRuntime = require("react/jsx-runtime");
|
|
3
3
|
const React = require("react");
|
|
4
4
|
const ReactDOM = require("react-dom");
|
|
5
|
-
const index$
|
|
6
|
-
const
|
|
7
|
-
const index = require("./index-C_sOsPRt.js");
|
|
8
|
-
const
|
|
9
|
-
const
|
|
5
|
+
const index$2 = require("./index-BPW1Qzmi.js");
|
|
6
|
+
const index = require("./index-DBDBh58Q.js");
|
|
7
|
+
const index$1 = require("./index-C_sOsPRt.js");
|
|
8
|
+
const textarea = require("./textarea-By2Vv44z.js");
|
|
9
|
+
const index$3 = require("./index-DNSql2gU.js");
|
|
10
10
|
const utils = require("./utils-ij3i9zTT.js");
|
|
11
11
|
function _interopNamespaceDefault(e) {
|
|
12
12
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
@@ -28,7 +28,7 @@ const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
|
|
28
28
|
const ReactDOM__namespace = /* @__PURE__ */ _interopNamespaceDefault(ReactDOM);
|
|
29
29
|
function createCollection(name) {
|
|
30
30
|
const PROVIDER_NAME = name + "CollectionProvider";
|
|
31
|
-
const [createCollectionContext, createCollectionScope2] =
|
|
31
|
+
const [createCollectionContext, createCollectionScope2] = index.createContextScope(PROVIDER_NAME);
|
|
32
32
|
const [CollectionProviderImpl, useCollectionContext] = createCollectionContext(
|
|
33
33
|
PROVIDER_NAME,
|
|
34
34
|
{ collectionRef: { current: null }, itemMap: /* @__PURE__ */ new Map() }
|
|
@@ -41,24 +41,24 @@ function createCollection(name) {
|
|
|
41
41
|
};
|
|
42
42
|
CollectionProvider.displayName = PROVIDER_NAME;
|
|
43
43
|
const COLLECTION_SLOT_NAME = name + "CollectionSlot";
|
|
44
|
-
const CollectionSlotImpl = index.createSlot(COLLECTION_SLOT_NAME);
|
|
44
|
+
const CollectionSlotImpl = index$1.createSlot(COLLECTION_SLOT_NAME);
|
|
45
45
|
const CollectionSlot = React.forwardRef(
|
|
46
46
|
(props, forwardedRef) => {
|
|
47
47
|
const { scope, children } = props;
|
|
48
48
|
const context = useCollectionContext(COLLECTION_SLOT_NAME, scope);
|
|
49
|
-
const composedRefs = index.useComposedRefs(forwardedRef, context.collectionRef);
|
|
49
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, context.collectionRef);
|
|
50
50
|
return /* @__PURE__ */ jsxRuntime.jsx(CollectionSlotImpl, { ref: composedRefs, children });
|
|
51
51
|
}
|
|
52
52
|
);
|
|
53
53
|
CollectionSlot.displayName = COLLECTION_SLOT_NAME;
|
|
54
54
|
const ITEM_SLOT_NAME = name + "CollectionItemSlot";
|
|
55
55
|
const ITEM_DATA_ATTR = "data-radix-collection-item";
|
|
56
|
-
const CollectionItemSlotImpl = index.createSlot(ITEM_SLOT_NAME);
|
|
56
|
+
const CollectionItemSlotImpl = index$1.createSlot(ITEM_SLOT_NAME);
|
|
57
57
|
const CollectionItemSlot = React.forwardRef(
|
|
58
58
|
(props, forwardedRef) => {
|
|
59
59
|
const { scope, children, ...itemData } = props;
|
|
60
60
|
const ref = React.useRef(null);
|
|
61
|
-
const composedRefs = index.useComposedRefs(forwardedRef, ref);
|
|
61
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, ref);
|
|
62
62
|
const context = useCollectionContext(ITEM_SLOT_NAME, scope);
|
|
63
63
|
React.useEffect(() => {
|
|
64
64
|
context.itemMap.set(ref, { ref, ...itemData });
|
|
@@ -88,329 +88,8 @@ function createCollection(name) {
|
|
|
88
88
|
createCollectionScope2
|
|
89
89
|
];
|
|
90
90
|
}
|
|
91
|
-
var NAME$1 = "Arrow";
|
|
92
|
-
var Arrow$1 = React__namespace.forwardRef((props, forwardedRef) => {
|
|
93
|
-
const { children, width = 10, height = 5, ...arrowProps } = props;
|
|
94
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
95
|
-
textarea.Primitive.svg,
|
|
96
|
-
{
|
|
97
|
-
...arrowProps,
|
|
98
|
-
ref: forwardedRef,
|
|
99
|
-
width,
|
|
100
|
-
height,
|
|
101
|
-
viewBox: "0 0 30 10",
|
|
102
|
-
preserveAspectRatio: "none",
|
|
103
|
-
children: props.asChild ? children : /* @__PURE__ */ jsxRuntime.jsx("polygon", { points: "0,0 30,0 15,10" })
|
|
104
|
-
}
|
|
105
|
-
);
|
|
106
|
-
});
|
|
107
|
-
Arrow$1.displayName = NAME$1;
|
|
108
|
-
var Root$1 = Arrow$1;
|
|
109
|
-
function useSize(element) {
|
|
110
|
-
const [size, setSize] = React__namespace.useState(void 0);
|
|
111
|
-
textarea.useLayoutEffect2(() => {
|
|
112
|
-
if (element) {
|
|
113
|
-
setSize({ width: element.offsetWidth, height: element.offsetHeight });
|
|
114
|
-
const resizeObserver = new ResizeObserver((entries) => {
|
|
115
|
-
if (!Array.isArray(entries)) {
|
|
116
|
-
return;
|
|
117
|
-
}
|
|
118
|
-
if (!entries.length) {
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
const entry = entries[0];
|
|
122
|
-
let width;
|
|
123
|
-
let height;
|
|
124
|
-
if ("borderBoxSize" in entry) {
|
|
125
|
-
const borderSizeEntry = entry["borderBoxSize"];
|
|
126
|
-
const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;
|
|
127
|
-
width = borderSize["inlineSize"];
|
|
128
|
-
height = borderSize["blockSize"];
|
|
129
|
-
} else {
|
|
130
|
-
width = element.offsetWidth;
|
|
131
|
-
height = element.offsetHeight;
|
|
132
|
-
}
|
|
133
|
-
setSize({ width, height });
|
|
134
|
-
});
|
|
135
|
-
resizeObserver.observe(element, { box: "border-box" });
|
|
136
|
-
return () => resizeObserver.unobserve(element);
|
|
137
|
-
} else {
|
|
138
|
-
setSize(void 0);
|
|
139
|
-
}
|
|
140
|
-
}, [element]);
|
|
141
|
-
return size;
|
|
142
|
-
}
|
|
143
|
-
var POPPER_NAME = "Popper";
|
|
144
|
-
var [createPopperContext, createPopperScope] = textarea.createContextScope(POPPER_NAME);
|
|
145
|
-
var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
|
|
146
|
-
var Popper = (props) => {
|
|
147
|
-
const { __scopePopper, children } = props;
|
|
148
|
-
const [anchor, setAnchor] = React__namespace.useState(null);
|
|
149
|
-
return /* @__PURE__ */ jsxRuntime.jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
|
|
150
|
-
};
|
|
151
|
-
Popper.displayName = POPPER_NAME;
|
|
152
|
-
var ANCHOR_NAME = "PopperAnchor";
|
|
153
|
-
var PopperAnchor = React__namespace.forwardRef(
|
|
154
|
-
(props, forwardedRef) => {
|
|
155
|
-
const { __scopePopper, virtualRef, ...anchorProps } = props;
|
|
156
|
-
const context = usePopperContext(ANCHOR_NAME, __scopePopper);
|
|
157
|
-
const ref = React__namespace.useRef(null);
|
|
158
|
-
const composedRefs = index.useComposedRefs(forwardedRef, ref);
|
|
159
|
-
const anchorRef = React__namespace.useRef(null);
|
|
160
|
-
React__namespace.useEffect(() => {
|
|
161
|
-
const previousAnchor = anchorRef.current;
|
|
162
|
-
anchorRef.current = virtualRef?.current || ref.current;
|
|
163
|
-
if (previousAnchor !== anchorRef.current) {
|
|
164
|
-
context.onAnchorChange(anchorRef.current);
|
|
165
|
-
}
|
|
166
|
-
});
|
|
167
|
-
return virtualRef ? null : /* @__PURE__ */ jsxRuntime.jsx(textarea.Primitive.div, { ...anchorProps, ref: composedRefs });
|
|
168
|
-
}
|
|
169
|
-
);
|
|
170
|
-
PopperAnchor.displayName = ANCHOR_NAME;
|
|
171
|
-
var CONTENT_NAME$1 = "PopperContent";
|
|
172
|
-
var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME$1);
|
|
173
|
-
var PopperContent = React__namespace.forwardRef(
|
|
174
|
-
(props, forwardedRef) => {
|
|
175
|
-
const {
|
|
176
|
-
__scopePopper,
|
|
177
|
-
side = "bottom",
|
|
178
|
-
sideOffset = 0,
|
|
179
|
-
align = "center",
|
|
180
|
-
alignOffset = 0,
|
|
181
|
-
arrowPadding = 0,
|
|
182
|
-
avoidCollisions = true,
|
|
183
|
-
collisionBoundary = [],
|
|
184
|
-
collisionPadding: collisionPaddingProp = 0,
|
|
185
|
-
sticky = "partial",
|
|
186
|
-
hideWhenDetached = false,
|
|
187
|
-
updatePositionStrategy = "optimized",
|
|
188
|
-
onPlaced,
|
|
189
|
-
...contentProps
|
|
190
|
-
} = props;
|
|
191
|
-
const context = usePopperContext(CONTENT_NAME$1, __scopePopper);
|
|
192
|
-
const [content, setContent] = React__namespace.useState(null);
|
|
193
|
-
const composedRefs = index.useComposedRefs(forwardedRef, (node) => setContent(node));
|
|
194
|
-
const [arrow, setArrow] = React__namespace.useState(null);
|
|
195
|
-
const arrowSize = useSize(arrow);
|
|
196
|
-
const arrowWidth = arrowSize?.width ?? 0;
|
|
197
|
-
const arrowHeight = arrowSize?.height ?? 0;
|
|
198
|
-
const desiredPlacement = side + (align !== "center" ? "-" + align : "");
|
|
199
|
-
const collisionPadding = typeof collisionPaddingProp === "number" ? collisionPaddingProp : { top: 0, right: 0, bottom: 0, left: 0, ...collisionPaddingProp };
|
|
200
|
-
const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [collisionBoundary];
|
|
201
|
-
const hasExplicitBoundaries = boundary.length > 0;
|
|
202
|
-
const detectOverflowOptions = {
|
|
203
|
-
padding: collisionPadding,
|
|
204
|
-
boundary: boundary.filter(isNotNull),
|
|
205
|
-
// with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
|
|
206
|
-
altBoundary: hasExplicitBoundaries
|
|
207
|
-
};
|
|
208
|
-
const { refs, floatingStyles, placement, isPositioned, middlewareData } = floatingUi_reactDom.useFloating({
|
|
209
|
-
// default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues
|
|
210
|
-
strategy: "fixed",
|
|
211
|
-
placement: desiredPlacement,
|
|
212
|
-
whileElementsMounted: (...args) => {
|
|
213
|
-
const cleanup = floatingUi_dom.autoUpdate(...args, {
|
|
214
|
-
animationFrame: updatePositionStrategy === "always"
|
|
215
|
-
});
|
|
216
|
-
return cleanup;
|
|
217
|
-
},
|
|
218
|
-
elements: {
|
|
219
|
-
reference: context.anchor
|
|
220
|
-
},
|
|
221
|
-
middleware: [
|
|
222
|
-
floatingUi_reactDom.offset({ mainAxis: sideOffset + arrowHeight, alignmentAxis: alignOffset }),
|
|
223
|
-
avoidCollisions && floatingUi_reactDom.shift({
|
|
224
|
-
mainAxis: true,
|
|
225
|
-
crossAxis: false,
|
|
226
|
-
limiter: sticky === "partial" ? floatingUi_reactDom.limitShift() : void 0,
|
|
227
|
-
...detectOverflowOptions
|
|
228
|
-
}),
|
|
229
|
-
avoidCollisions && floatingUi_reactDom.flip({ ...detectOverflowOptions }),
|
|
230
|
-
floatingUi_reactDom.size({
|
|
231
|
-
...detectOverflowOptions,
|
|
232
|
-
apply: ({ elements, rects, availableWidth, availableHeight }) => {
|
|
233
|
-
const { width: anchorWidth, height: anchorHeight } = rects.reference;
|
|
234
|
-
const contentStyle = elements.floating.style;
|
|
235
|
-
contentStyle.setProperty("--radix-popper-available-width", `${availableWidth}px`);
|
|
236
|
-
contentStyle.setProperty("--radix-popper-available-height", `${availableHeight}px`);
|
|
237
|
-
contentStyle.setProperty("--radix-popper-anchor-width", `${anchorWidth}px`);
|
|
238
|
-
contentStyle.setProperty("--radix-popper-anchor-height", `${anchorHeight}px`);
|
|
239
|
-
}
|
|
240
|
-
}),
|
|
241
|
-
arrow && floatingUi_reactDom.arrow({ element: arrow, padding: arrowPadding }),
|
|
242
|
-
transformOrigin({ arrowWidth, arrowHeight }),
|
|
243
|
-
hideWhenDetached && floatingUi_reactDom.hide({ strategy: "referenceHidden", ...detectOverflowOptions })
|
|
244
|
-
]
|
|
245
|
-
});
|
|
246
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
247
|
-
const handlePlaced = textarea.useCallbackRef(onPlaced);
|
|
248
|
-
textarea.useLayoutEffect2(() => {
|
|
249
|
-
if (isPositioned) {
|
|
250
|
-
handlePlaced?.();
|
|
251
|
-
}
|
|
252
|
-
}, [isPositioned, handlePlaced]);
|
|
253
|
-
const arrowX = middlewareData.arrow?.x;
|
|
254
|
-
const arrowY = middlewareData.arrow?.y;
|
|
255
|
-
const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
|
|
256
|
-
const [contentZIndex, setContentZIndex] = React__namespace.useState();
|
|
257
|
-
textarea.useLayoutEffect2(() => {
|
|
258
|
-
if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
259
|
-
}, [content]);
|
|
260
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
261
|
-
"div",
|
|
262
|
-
{
|
|
263
|
-
ref: refs.setFloating,
|
|
264
|
-
"data-radix-popper-content-wrapper": "",
|
|
265
|
-
style: {
|
|
266
|
-
...floatingStyles,
|
|
267
|
-
transform: isPositioned ? floatingStyles.transform : "translate(0, -200%)",
|
|
268
|
-
// keep off the page when measuring
|
|
269
|
-
minWidth: "max-content",
|
|
270
|
-
zIndex: contentZIndex,
|
|
271
|
-
["--radix-popper-transform-origin"]: [
|
|
272
|
-
middlewareData.transformOrigin?.x,
|
|
273
|
-
middlewareData.transformOrigin?.y
|
|
274
|
-
].join(" "),
|
|
275
|
-
// hide the content if using the hide middleware and should be hidden
|
|
276
|
-
// set visibility to hidden and disable pointer events so the UI behaves
|
|
277
|
-
// as if the PopperContent isn't there at all
|
|
278
|
-
...middlewareData.hide?.referenceHidden && {
|
|
279
|
-
visibility: "hidden",
|
|
280
|
-
pointerEvents: "none"
|
|
281
|
-
}
|
|
282
|
-
},
|
|
283
|
-
dir: props.dir,
|
|
284
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
285
|
-
PopperContentProvider,
|
|
286
|
-
{
|
|
287
|
-
scope: __scopePopper,
|
|
288
|
-
placedSide,
|
|
289
|
-
onArrowChange: setArrow,
|
|
290
|
-
arrowX,
|
|
291
|
-
arrowY,
|
|
292
|
-
shouldHideArrow: cannotCenterArrow,
|
|
293
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
294
|
-
textarea.Primitive.div,
|
|
295
|
-
{
|
|
296
|
-
"data-side": placedSide,
|
|
297
|
-
"data-align": placedAlign,
|
|
298
|
-
...contentProps,
|
|
299
|
-
ref: composedRefs,
|
|
300
|
-
style: {
|
|
301
|
-
...contentProps.style,
|
|
302
|
-
// if the PopperContent hasn't been placed yet (not all measurements done)
|
|
303
|
-
// we prevent animations so that users's animation don't kick in too early referring wrong sides
|
|
304
|
-
animation: !isPositioned ? "none" : void 0
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
)
|
|
308
|
-
}
|
|
309
|
-
)
|
|
310
|
-
}
|
|
311
|
-
);
|
|
312
|
-
}
|
|
313
|
-
);
|
|
314
|
-
PopperContent.displayName = CONTENT_NAME$1;
|
|
315
|
-
var ARROW_NAME$1 = "PopperArrow";
|
|
316
|
-
var OPPOSITE_SIDE = {
|
|
317
|
-
top: "bottom",
|
|
318
|
-
right: "left",
|
|
319
|
-
bottom: "top",
|
|
320
|
-
left: "right"
|
|
321
|
-
};
|
|
322
|
-
var PopperArrow = React__namespace.forwardRef(function PopperArrow2(props, forwardedRef) {
|
|
323
|
-
const { __scopePopper, ...arrowProps } = props;
|
|
324
|
-
const contentContext = useContentContext(ARROW_NAME$1, __scopePopper);
|
|
325
|
-
const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
|
|
326
|
-
return (
|
|
327
|
-
// we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
|
|
328
|
-
// doesn't report size as we'd expect on SVG elements.
|
|
329
|
-
// it reports their bounding box which is effectively the largest path inside the SVG.
|
|
330
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
331
|
-
"span",
|
|
332
|
-
{
|
|
333
|
-
ref: contentContext.onArrowChange,
|
|
334
|
-
style: {
|
|
335
|
-
position: "absolute",
|
|
336
|
-
left: contentContext.arrowX,
|
|
337
|
-
top: contentContext.arrowY,
|
|
338
|
-
[baseSide]: 0,
|
|
339
|
-
transformOrigin: {
|
|
340
|
-
top: "",
|
|
341
|
-
right: "0 0",
|
|
342
|
-
bottom: "center 0",
|
|
343
|
-
left: "100% 0"
|
|
344
|
-
}[contentContext.placedSide],
|
|
345
|
-
transform: {
|
|
346
|
-
top: "translateY(100%)",
|
|
347
|
-
right: "translateY(50%) rotate(90deg) translateX(-50%)",
|
|
348
|
-
bottom: `rotate(180deg)`,
|
|
349
|
-
left: "translateY(50%) rotate(-90deg) translateX(50%)"
|
|
350
|
-
}[contentContext.placedSide],
|
|
351
|
-
visibility: contentContext.shouldHideArrow ? "hidden" : void 0
|
|
352
|
-
},
|
|
353
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
354
|
-
Root$1,
|
|
355
|
-
{
|
|
356
|
-
...arrowProps,
|
|
357
|
-
ref: forwardedRef,
|
|
358
|
-
style: {
|
|
359
|
-
...arrowProps.style,
|
|
360
|
-
// ensures the element can be measured correctly (mostly for if SVG)
|
|
361
|
-
display: "block"
|
|
362
|
-
}
|
|
363
|
-
}
|
|
364
|
-
)
|
|
365
|
-
}
|
|
366
|
-
)
|
|
367
|
-
);
|
|
368
|
-
});
|
|
369
|
-
PopperArrow.displayName = ARROW_NAME$1;
|
|
370
|
-
function isNotNull(value) {
|
|
371
|
-
return value !== null;
|
|
372
|
-
}
|
|
373
|
-
var transformOrigin = (options) => ({
|
|
374
|
-
name: "transformOrigin",
|
|
375
|
-
options,
|
|
376
|
-
fn(data) {
|
|
377
|
-
const { placement, rects, middlewareData } = data;
|
|
378
|
-
const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
|
|
379
|
-
const isArrowHidden = cannotCenterArrow;
|
|
380
|
-
const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
|
|
381
|
-
const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
|
|
382
|
-
const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
|
|
383
|
-
const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
|
|
384
|
-
const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
|
|
385
|
-
const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
|
|
386
|
-
let x = "";
|
|
387
|
-
let y = "";
|
|
388
|
-
if (placedSide === "bottom") {
|
|
389
|
-
x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
|
|
390
|
-
y = `${-arrowHeight}px`;
|
|
391
|
-
} else if (placedSide === "top") {
|
|
392
|
-
x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
|
|
393
|
-
y = `${rects.floating.height + arrowHeight}px`;
|
|
394
|
-
} else if (placedSide === "right") {
|
|
395
|
-
x = `${-arrowHeight}px`;
|
|
396
|
-
y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
|
|
397
|
-
} else if (placedSide === "left") {
|
|
398
|
-
x = `${rects.floating.width + arrowHeight}px`;
|
|
399
|
-
y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
|
|
400
|
-
}
|
|
401
|
-
return { data: { x, y } };
|
|
402
|
-
}
|
|
403
|
-
});
|
|
404
|
-
function getSideAndAlignFromPlacement(placement) {
|
|
405
|
-
const [side, align = "center"] = placement.split("-");
|
|
406
|
-
return [side, align];
|
|
407
|
-
}
|
|
408
|
-
var Root2$1 = Popper;
|
|
409
|
-
var Anchor = PopperAnchor;
|
|
410
|
-
var Content = PopperContent;
|
|
411
|
-
var Arrow = PopperArrow;
|
|
412
91
|
const __iconNode = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
|
|
413
|
-
const ChevronUp = index$
|
|
92
|
+
const ChevronUp = index$2.createLucideIcon("chevron-up", __iconNode);
|
|
414
93
|
function usePrevious(value) {
|
|
415
94
|
const ref = React__namespace.useRef({ value, previous: value });
|
|
416
95
|
return React__namespace.useMemo(() => {
|
|
@@ -421,43 +100,15 @@ function usePrevious(value) {
|
|
|
421
100
|
return ref.current.previous;
|
|
422
101
|
}, [value]);
|
|
423
102
|
}
|
|
424
|
-
var VISUALLY_HIDDEN_STYLES = Object.freeze({
|
|
425
|
-
// See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
|
|
426
|
-
position: "absolute",
|
|
427
|
-
border: 0,
|
|
428
|
-
width: 1,
|
|
429
|
-
height: 1,
|
|
430
|
-
padding: 0,
|
|
431
|
-
margin: -1,
|
|
432
|
-
overflow: "hidden",
|
|
433
|
-
clip: "rect(0, 0, 0, 0)",
|
|
434
|
-
whiteSpace: "nowrap",
|
|
435
|
-
wordWrap: "normal"
|
|
436
|
-
});
|
|
437
|
-
var NAME = "VisuallyHidden";
|
|
438
|
-
var VisuallyHidden = React__namespace.forwardRef(
|
|
439
|
-
(props, forwardedRef) => {
|
|
440
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
441
|
-
textarea.Primitive.span,
|
|
442
|
-
{
|
|
443
|
-
...props,
|
|
444
|
-
ref: forwardedRef,
|
|
445
|
-
style: { ...VISUALLY_HIDDEN_STYLES, ...props.style }
|
|
446
|
-
}
|
|
447
|
-
);
|
|
448
|
-
}
|
|
449
|
-
);
|
|
450
|
-
VisuallyHidden.displayName = NAME;
|
|
451
|
-
var Root = VisuallyHidden;
|
|
452
103
|
var OPEN_KEYS = [" ", "Enter", "ArrowUp", "ArrowDown"];
|
|
453
104
|
var SELECTION_KEYS = [" ", "Enter"];
|
|
454
105
|
var SELECT_NAME = "Select";
|
|
455
106
|
var [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME);
|
|
456
|
-
var [createSelectContext, createSelectScope] =
|
|
107
|
+
var [createSelectContext, createSelectScope] = index.createContextScope(SELECT_NAME, [
|
|
457
108
|
createCollectionScope,
|
|
458
|
-
createPopperScope
|
|
109
|
+
index$3.createPopperScope
|
|
459
110
|
]);
|
|
460
|
-
var usePopperScope = createPopperScope();
|
|
111
|
+
var usePopperScope = index$3.createPopperScope();
|
|
461
112
|
var [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);
|
|
462
113
|
var [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);
|
|
463
114
|
var Select$1 = (props) => {
|
|
@@ -481,14 +132,14 @@ var Select$1 = (props) => {
|
|
|
481
132
|
const [trigger, setTrigger] = React__namespace.useState(null);
|
|
482
133
|
const [valueNode, setValueNode] = React__namespace.useState(null);
|
|
483
134
|
const [valueNodeHasChildren, setValueNodeHasChildren] = React__namespace.useState(false);
|
|
484
|
-
const direction = index$
|
|
485
|
-
const [open, setOpen] =
|
|
135
|
+
const direction = index$2.useDirection(dir);
|
|
136
|
+
const [open, setOpen] = index.useControllableState({
|
|
486
137
|
prop: openProp,
|
|
487
138
|
defaultProp: defaultOpen ?? false,
|
|
488
139
|
onChange: onOpenChange,
|
|
489
140
|
caller: SELECT_NAME
|
|
490
141
|
});
|
|
491
|
-
const [value, setValue] =
|
|
142
|
+
const [value, setValue] = index.useControllableState({
|
|
492
143
|
prop: valueProp,
|
|
493
144
|
defaultProp: defaultValue,
|
|
494
145
|
onChange: onValueChange,
|
|
@@ -498,7 +149,7 @@ var Select$1 = (props) => {
|
|
|
498
149
|
const isFormControl = trigger ? form || !!trigger.closest("form") : true;
|
|
499
150
|
const [nativeOptionsSet, setNativeOptionsSet] = React__namespace.useState(/* @__PURE__ */ new Set());
|
|
500
151
|
const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(";");
|
|
501
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Root2
|
|
152
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index$3.Root2, { ...popperScope, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
502
153
|
SelectProvider,
|
|
503
154
|
{
|
|
504
155
|
required,
|
|
@@ -509,7 +160,7 @@ var Select$1 = (props) => {
|
|
|
509
160
|
onValueNodeChange: setValueNode,
|
|
510
161
|
valueNodeHasChildren,
|
|
511
162
|
onValueNodeHasChildrenChange: setValueNodeHasChildren,
|
|
512
|
-
contentId:
|
|
163
|
+
contentId: index.useId(),
|
|
513
164
|
value,
|
|
514
165
|
onValueChange: setValue,
|
|
515
166
|
open,
|
|
@@ -566,7 +217,7 @@ var SelectTrigger$1 = React__namespace.forwardRef(
|
|
|
566
217
|
const popperScope = usePopperScope(__scopeSelect);
|
|
567
218
|
const context = useSelectContext(TRIGGER_NAME, __scopeSelect);
|
|
568
219
|
const isDisabled = context.disabled || disabled;
|
|
569
|
-
const composedRefs = index.useComposedRefs(forwardedRef, context.onTriggerChange);
|
|
220
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, context.onTriggerChange);
|
|
570
221
|
const getItems = useCollection(__scopeSelect);
|
|
571
222
|
const pointerTypeRef = React__namespace.useRef("touch");
|
|
572
223
|
const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {
|
|
@@ -589,8 +240,8 @@ var SelectTrigger$1 = React__namespace.forwardRef(
|
|
|
589
240
|
};
|
|
590
241
|
}
|
|
591
242
|
};
|
|
592
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
593
|
-
|
|
243
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index$3.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
244
|
+
index.Primitive.button,
|
|
594
245
|
{
|
|
595
246
|
type: "button",
|
|
596
247
|
role: "combobox",
|
|
@@ -605,13 +256,13 @@ var SelectTrigger$1 = React__namespace.forwardRef(
|
|
|
605
256
|
"data-placeholder": shouldShowPlaceholder(context.value) ? "" : void 0,
|
|
606
257
|
...triggerProps,
|
|
607
258
|
ref: composedRefs,
|
|
608
|
-
onClick:
|
|
259
|
+
onClick: index.composeEventHandlers(triggerProps.onClick, (event) => {
|
|
609
260
|
event.currentTarget.focus();
|
|
610
261
|
if (pointerTypeRef.current !== "mouse") {
|
|
611
262
|
handleOpen(event);
|
|
612
263
|
}
|
|
613
264
|
}),
|
|
614
|
-
onPointerDown:
|
|
265
|
+
onPointerDown: index.composeEventHandlers(triggerProps.onPointerDown, (event) => {
|
|
615
266
|
pointerTypeRef.current = event.pointerType;
|
|
616
267
|
const target = event.target;
|
|
617
268
|
if (target.hasPointerCapture(event.pointerId)) {
|
|
@@ -622,7 +273,7 @@ var SelectTrigger$1 = React__namespace.forwardRef(
|
|
|
622
273
|
event.preventDefault();
|
|
623
274
|
}
|
|
624
275
|
}),
|
|
625
|
-
onKeyDown:
|
|
276
|
+
onKeyDown: index.composeEventHandlers(triggerProps.onKeyDown, (event) => {
|
|
626
277
|
const isTypingAhead = searchRef.current !== "";
|
|
627
278
|
const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;
|
|
628
279
|
if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);
|
|
@@ -644,12 +295,12 @@ var SelectValue$1 = React__namespace.forwardRef(
|
|
|
644
295
|
const context = useSelectContext(VALUE_NAME, __scopeSelect);
|
|
645
296
|
const { onValueNodeHasChildrenChange } = context;
|
|
646
297
|
const hasChildren = children !== void 0;
|
|
647
|
-
const composedRefs = index.useComposedRefs(forwardedRef, context.onValueNodeChange);
|
|
648
|
-
|
|
298
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, context.onValueNodeChange);
|
|
299
|
+
index.useLayoutEffect2(() => {
|
|
649
300
|
onValueNodeHasChildrenChange(hasChildren);
|
|
650
301
|
}, [onValueNodeHasChildrenChange, hasChildren]);
|
|
651
302
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
652
|
-
|
|
303
|
+
index.Primitive.span,
|
|
653
304
|
{
|
|
654
305
|
...valueProps,
|
|
655
306
|
ref: composedRefs,
|
|
@@ -664,13 +315,13 @@ var ICON_NAME = "SelectIcon";
|
|
|
664
315
|
var SelectIcon = React__namespace.forwardRef(
|
|
665
316
|
(props, forwardedRef) => {
|
|
666
317
|
const { __scopeSelect, children, ...iconProps } = props;
|
|
667
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
318
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index.Primitive.span, { "aria-hidden": true, ...iconProps, ref: forwardedRef, children: children || "▼" });
|
|
668
319
|
}
|
|
669
320
|
);
|
|
670
321
|
SelectIcon.displayName = ICON_NAME;
|
|
671
322
|
var PORTAL_NAME = "SelectPortal";
|
|
672
323
|
var SelectPortal = (props) => {
|
|
673
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
324
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index.Portal, { asChild: true, ...props });
|
|
674
325
|
};
|
|
675
326
|
SelectPortal.displayName = PORTAL_NAME;
|
|
676
327
|
var CONTENT_NAME = "SelectContent";
|
|
@@ -678,7 +329,7 @@ var SelectContent$1 = React__namespace.forwardRef(
|
|
|
678
329
|
(props, forwardedRef) => {
|
|
679
330
|
const context = useSelectContext(CONTENT_NAME, props.__scopeSelect);
|
|
680
331
|
const [fragment, setFragment] = React__namespace.useState();
|
|
681
|
-
|
|
332
|
+
index.useLayoutEffect2(() => {
|
|
682
333
|
setFragment(new DocumentFragment());
|
|
683
334
|
}, []);
|
|
684
335
|
if (!context.open) {
|
|
@@ -695,7 +346,7 @@ SelectContent$1.displayName = CONTENT_NAME;
|
|
|
695
346
|
var CONTENT_MARGIN = 10;
|
|
696
347
|
var [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME);
|
|
697
348
|
var CONTENT_IMPL_NAME = "SelectContentImpl";
|
|
698
|
-
var Slot = index.createSlot("SelectContent.RemoveScroll");
|
|
349
|
+
var Slot = index$1.createSlot("SelectContent.RemoveScroll");
|
|
699
350
|
var SelectContentImpl = React__namespace.forwardRef(
|
|
700
351
|
(props, forwardedRef) => {
|
|
701
352
|
const {
|
|
@@ -722,7 +373,7 @@ var SelectContentImpl = React__namespace.forwardRef(
|
|
|
722
373
|
const context = useSelectContext(CONTENT_NAME, __scopeSelect);
|
|
723
374
|
const [content, setContent] = React__namespace.useState(null);
|
|
724
375
|
const [viewport, setViewport] = React__namespace.useState(null);
|
|
725
|
-
const composedRefs = index.useComposedRefs(forwardedRef, (node) => setContent(node));
|
|
376
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, (node) => setContent(node));
|
|
726
377
|
const [selectedItem, setSelectedItem] = React__namespace.useState(null);
|
|
727
378
|
const [selectedItemText, setSelectedItemText] = React__namespace.useState(
|
|
728
379
|
null
|
|
@@ -866,12 +517,12 @@ var SelectContentImpl = React__namespace.forwardRef(
|
|
|
866
517
|
onMountAutoFocus: (event) => {
|
|
867
518
|
event.preventDefault();
|
|
868
519
|
},
|
|
869
|
-
onUnmountAutoFocus:
|
|
520
|
+
onUnmountAutoFocus: index.composeEventHandlers(onCloseAutoFocus, (event) => {
|
|
870
521
|
context.trigger?.focus({ preventScroll: true });
|
|
871
522
|
event.preventDefault();
|
|
872
523
|
}),
|
|
873
524
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
874
|
-
|
|
525
|
+
index.DismissableLayer,
|
|
875
526
|
{
|
|
876
527
|
asChild: true,
|
|
877
528
|
disableOutsidePointerEvents: true,
|
|
@@ -899,7 +550,7 @@ var SelectContentImpl = React__namespace.forwardRef(
|
|
|
899
550
|
outline: "none",
|
|
900
551
|
...contentProps.style
|
|
901
552
|
},
|
|
902
|
-
onKeyDown:
|
|
553
|
+
onKeyDown: index.composeEventHandlers(contentProps.onKeyDown, (event) => {
|
|
903
554
|
const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;
|
|
904
555
|
if (event.key === "Tab") event.preventDefault();
|
|
905
556
|
if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);
|
|
@@ -936,7 +587,7 @@ var SelectItemAlignedPosition = React__namespace.forwardRef((props, forwardedRef
|
|
|
936
587
|
const contentContext = useSelectContentContext(CONTENT_NAME, __scopeSelect);
|
|
937
588
|
const [contentWrapper, setContentWrapper] = React__namespace.useState(null);
|
|
938
589
|
const [content, setContent] = React__namespace.useState(null);
|
|
939
|
-
const composedRefs = index.useComposedRefs(forwardedRef, (node) => setContent(node));
|
|
590
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, (node) => setContent(node));
|
|
940
591
|
const getItems = useCollection(__scopeSelect);
|
|
941
592
|
const shouldExpandOnScrollRef = React__namespace.useRef(false);
|
|
942
593
|
const shouldRepositionRef = React__namespace.useRef(true);
|
|
@@ -954,7 +605,7 @@ var SelectItemAlignedPosition = React__namespace.forwardRef((props, forwardedRef
|
|
|
954
605
|
const minContentWidth = triggerRect.width + leftDelta;
|
|
955
606
|
const contentWidth = Math.max(minContentWidth, contentRect.width);
|
|
956
607
|
const rightEdge = window.innerWidth - CONTENT_MARGIN;
|
|
957
|
-
const clampedLeft = index$
|
|
608
|
+
const clampedLeft = index$2.clamp(left, [
|
|
958
609
|
CONTENT_MARGIN,
|
|
959
610
|
// Prevents the content from going off the starting edge of the
|
|
960
611
|
// viewport. It may still go off the ending edge, but this can be
|
|
@@ -972,7 +623,7 @@ var SelectItemAlignedPosition = React__namespace.forwardRef((props, forwardedRef
|
|
|
972
623
|
const minContentWidth = triggerRect.width + rightDelta;
|
|
973
624
|
const contentWidth = Math.max(minContentWidth, contentRect.width);
|
|
974
625
|
const leftEdge = window.innerWidth - CONTENT_MARGIN;
|
|
975
|
-
const clampedRight = index$
|
|
626
|
+
const clampedRight = index$2.clamp(right, [
|
|
976
627
|
CONTENT_MARGIN,
|
|
977
628
|
Math.max(CONTENT_MARGIN, leftEdge - contentWidth)
|
|
978
629
|
]);
|
|
@@ -1040,9 +691,9 @@ var SelectItemAlignedPosition = React__namespace.forwardRef((props, forwardedRef
|
|
|
1040
691
|
context.dir,
|
|
1041
692
|
onPlaced
|
|
1042
693
|
]);
|
|
1043
|
-
|
|
694
|
+
index.useLayoutEffect2(() => position(), [position]);
|
|
1044
695
|
const [contentZIndex, setContentZIndex] = React__namespace.useState();
|
|
1045
|
-
|
|
696
|
+
index.useLayoutEffect2(() => {
|
|
1046
697
|
if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
|
|
1047
698
|
}, [content]);
|
|
1048
699
|
const handleScrollButtonChange = React__namespace.useCallback(
|
|
@@ -1073,7 +724,7 @@ var SelectItemAlignedPosition = React__namespace.forwardRef((props, forwardedRef
|
|
|
1073
724
|
zIndex: contentZIndex
|
|
1074
725
|
},
|
|
1075
726
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1076
|
-
|
|
727
|
+
index.Primitive.div,
|
|
1077
728
|
{
|
|
1078
729
|
...popperProps,
|
|
1079
730
|
ref: composedRefs,
|
|
@@ -1103,7 +754,7 @@ var SelectPopperPosition = React__namespace.forwardRef((props, forwardedRef) =>
|
|
|
1103
754
|
} = props;
|
|
1104
755
|
const popperScope = usePopperScope(__scopeSelect);
|
|
1105
756
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1106
|
-
Content,
|
|
757
|
+
index$3.Content,
|
|
1107
758
|
{
|
|
1108
759
|
...popperScope,
|
|
1109
760
|
...popperProps,
|
|
@@ -1134,7 +785,7 @@ var SelectViewport = React__namespace.forwardRef(
|
|
|
1134
785
|
const { __scopeSelect, nonce, ...viewportProps } = props;
|
|
1135
786
|
const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);
|
|
1136
787
|
const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);
|
|
1137
|
-
const composedRefs = index.useComposedRefs(forwardedRef, contentContext.onViewportChange);
|
|
788
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, contentContext.onViewportChange);
|
|
1138
789
|
const prevScrollTopRef = React__namespace.useRef(0);
|
|
1139
790
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1140
791
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1147,7 +798,7 @@ var SelectViewport = React__namespace.forwardRef(
|
|
|
1147
798
|
}
|
|
1148
799
|
),
|
|
1149
800
|
/* @__PURE__ */ jsxRuntime.jsx(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1150
|
-
|
|
801
|
+
index.Primitive.div,
|
|
1151
802
|
{
|
|
1152
803
|
"data-radix-select-viewport": "",
|
|
1153
804
|
role: "presentation",
|
|
@@ -1166,7 +817,7 @@ var SelectViewport = React__namespace.forwardRef(
|
|
|
1166
817
|
overflow: "hidden auto",
|
|
1167
818
|
...viewportProps.style
|
|
1168
819
|
},
|
|
1169
|
-
onScroll:
|
|
820
|
+
onScroll: index.composeEventHandlers(viewportProps.onScroll, (event) => {
|
|
1170
821
|
const viewport = event.currentTarget;
|
|
1171
822
|
const { contentWrapper, shouldExpandOnScrollRef } = viewportContext;
|
|
1172
823
|
if (shouldExpandOnScrollRef?.current && contentWrapper) {
|
|
@@ -1201,8 +852,8 @@ var [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GR
|
|
|
1201
852
|
var SelectGroup$1 = React__namespace.forwardRef(
|
|
1202
853
|
(props, forwardedRef) => {
|
|
1203
854
|
const { __scopeSelect, ...groupProps } = props;
|
|
1204
|
-
const groupId =
|
|
1205
|
-
return /* @__PURE__ */ jsxRuntime.jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
855
|
+
const groupId = index.useId();
|
|
856
|
+
return /* @__PURE__ */ jsxRuntime.jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsxRuntime.jsx(index.Primitive.div, { role: "group", "aria-labelledby": groupId, ...groupProps, ref: forwardedRef }) });
|
|
1206
857
|
}
|
|
1207
858
|
);
|
|
1208
859
|
SelectGroup$1.displayName = GROUP_NAME;
|
|
@@ -1211,7 +862,7 @@ var SelectLabel$1 = React__namespace.forwardRef(
|
|
|
1211
862
|
(props, forwardedRef) => {
|
|
1212
863
|
const { __scopeSelect, ...labelProps } = props;
|
|
1213
864
|
const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);
|
|
1214
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
865
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index.Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });
|
|
1215
866
|
}
|
|
1216
867
|
);
|
|
1217
868
|
SelectLabel$1.displayName = LABEL_NAME;
|
|
@@ -1231,11 +882,11 @@ var SelectItem$1 = React__namespace.forwardRef(
|
|
|
1231
882
|
const isSelected = context.value === value;
|
|
1232
883
|
const [textValue, setTextValue] = React__namespace.useState(textValueProp ?? "");
|
|
1233
884
|
const [isFocused, setIsFocused] = React__namespace.useState(false);
|
|
1234
|
-
const composedRefs = index.useComposedRefs(
|
|
885
|
+
const composedRefs = index$1.useComposedRefs(
|
|
1235
886
|
forwardedRef,
|
|
1236
887
|
(node) => contentContext.itemRefCallback?.(node, value, disabled)
|
|
1237
888
|
);
|
|
1238
|
-
const textId =
|
|
889
|
+
const textId = index.useId();
|
|
1239
890
|
const pointerTypeRef = React__namespace.useRef("touch");
|
|
1240
891
|
const handleSelect = () => {
|
|
1241
892
|
if (!disabled) {
|
|
@@ -1267,7 +918,7 @@ var SelectItem$1 = React__namespace.forwardRef(
|
|
|
1267
918
|
disabled,
|
|
1268
919
|
textValue,
|
|
1269
920
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1270
|
-
|
|
921
|
+
index.Primitive.div,
|
|
1271
922
|
{
|
|
1272
923
|
role: "option",
|
|
1273
924
|
"aria-labelledby": textId,
|
|
@@ -1279,18 +930,18 @@ var SelectItem$1 = React__namespace.forwardRef(
|
|
|
1279
930
|
tabIndex: disabled ? void 0 : -1,
|
|
1280
931
|
...itemProps,
|
|
1281
932
|
ref: composedRefs,
|
|
1282
|
-
onFocus:
|
|
1283
|
-
onBlur:
|
|
1284
|
-
onClick:
|
|
933
|
+
onFocus: index.composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),
|
|
934
|
+
onBlur: index.composeEventHandlers(itemProps.onBlur, () => setIsFocused(false)),
|
|
935
|
+
onClick: index.composeEventHandlers(itemProps.onClick, () => {
|
|
1285
936
|
if (pointerTypeRef.current !== "mouse") handleSelect();
|
|
1286
937
|
}),
|
|
1287
|
-
onPointerUp:
|
|
938
|
+
onPointerUp: index.composeEventHandlers(itemProps.onPointerUp, () => {
|
|
1288
939
|
if (pointerTypeRef.current === "mouse") handleSelect();
|
|
1289
940
|
}),
|
|
1290
|
-
onPointerDown:
|
|
941
|
+
onPointerDown: index.composeEventHandlers(itemProps.onPointerDown, (event) => {
|
|
1291
942
|
pointerTypeRef.current = event.pointerType;
|
|
1292
943
|
}),
|
|
1293
|
-
onPointerMove:
|
|
944
|
+
onPointerMove: index.composeEventHandlers(itemProps.onPointerMove, (event) => {
|
|
1294
945
|
pointerTypeRef.current = event.pointerType;
|
|
1295
946
|
if (disabled) {
|
|
1296
947
|
contentContext.onItemLeave?.();
|
|
@@ -1298,12 +949,12 @@ var SelectItem$1 = React__namespace.forwardRef(
|
|
|
1298
949
|
event.currentTarget.focus({ preventScroll: true });
|
|
1299
950
|
}
|
|
1300
951
|
}),
|
|
1301
|
-
onPointerLeave:
|
|
952
|
+
onPointerLeave: index.composeEventHandlers(itemProps.onPointerLeave, (event) => {
|
|
1302
953
|
if (event.currentTarget === document.activeElement) {
|
|
1303
954
|
contentContext.onItemLeave?.();
|
|
1304
955
|
}
|
|
1305
956
|
}),
|
|
1306
|
-
onKeyDown:
|
|
957
|
+
onKeyDown: index.composeEventHandlers(itemProps.onKeyDown, (event) => {
|
|
1307
958
|
const isTypingAhead = contentContext.searchRef?.current !== "";
|
|
1308
959
|
if (isTypingAhead && event.key === " ") return;
|
|
1309
960
|
if (SELECTION_KEYS.includes(event.key)) handleSelect();
|
|
@@ -1327,7 +978,7 @@ var SelectItemText = React__namespace.forwardRef(
|
|
|
1327
978
|
const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
1328
979
|
const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);
|
|
1329
980
|
const [itemTextNode, setItemTextNode] = React__namespace.useState(null);
|
|
1330
|
-
const composedRefs = index.useComposedRefs(
|
|
981
|
+
const composedRefs = index$1.useComposedRefs(
|
|
1331
982
|
forwardedRef,
|
|
1332
983
|
(node) => setItemTextNode(node),
|
|
1333
984
|
itemContext.onItemTextChange,
|
|
@@ -1339,12 +990,12 @@ var SelectItemText = React__namespace.forwardRef(
|
|
|
1339
990
|
[itemContext.disabled, itemContext.value, textContent]
|
|
1340
991
|
);
|
|
1341
992
|
const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;
|
|
1342
|
-
|
|
993
|
+
index.useLayoutEffect2(() => {
|
|
1343
994
|
onNativeOptionAdd(nativeOption);
|
|
1344
995
|
return () => onNativeOptionRemove(nativeOption);
|
|
1345
996
|
}, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);
|
|
1346
997
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1347
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
998
|
+
/* @__PURE__ */ jsxRuntime.jsx(index.Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),
|
|
1348
999
|
itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM__namespace.createPortal(itemTextProps.children, context.valueNode) : null
|
|
1349
1000
|
] });
|
|
1350
1001
|
}
|
|
@@ -1355,7 +1006,7 @@ var SelectItemIndicator = React__namespace.forwardRef(
|
|
|
1355
1006
|
(props, forwardedRef) => {
|
|
1356
1007
|
const { __scopeSelect, ...itemIndicatorProps } = props;
|
|
1357
1008
|
const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);
|
|
1358
|
-
return itemContext.isSelected ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1009
|
+
return itemContext.isSelected ? /* @__PURE__ */ jsxRuntime.jsx(index.Primitive.span, { "aria-hidden": true, ...itemIndicatorProps, ref: forwardedRef }) : null;
|
|
1359
1010
|
}
|
|
1360
1011
|
);
|
|
1361
1012
|
SelectItemIndicator.displayName = ITEM_INDICATOR_NAME;
|
|
@@ -1364,8 +1015,8 @@ var SelectScrollUpButton$1 = React__namespace.forwardRef((props, forwardedRef) =
|
|
|
1364
1015
|
const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
|
|
1365
1016
|
const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
|
|
1366
1017
|
const [canScrollUp, setCanScrollUp] = React__namespace.useState(false);
|
|
1367
|
-
const composedRefs = index.useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
|
|
1368
|
-
|
|
1018
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
|
|
1019
|
+
index.useLayoutEffect2(() => {
|
|
1369
1020
|
if (contentContext.viewport && contentContext.isPositioned) {
|
|
1370
1021
|
let handleScroll2 = function() {
|
|
1371
1022
|
const canScrollUp2 = viewport.scrollTop > 0;
|
|
@@ -1397,8 +1048,8 @@ var SelectScrollDownButton$1 = React__namespace.forwardRef((props, forwardedRef)
|
|
|
1397
1048
|
const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
|
|
1398
1049
|
const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
|
|
1399
1050
|
const [canScrollDown, setCanScrollDown] = React__namespace.useState(false);
|
|
1400
|
-
const composedRefs = index.useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
|
|
1401
|
-
|
|
1051
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
|
|
1052
|
+
index.useLayoutEffect2(() => {
|
|
1402
1053
|
if (contentContext.viewport && contentContext.isPositioned) {
|
|
1403
1054
|
let handleScroll2 = function() {
|
|
1404
1055
|
const maxScroll = viewport.scrollHeight - viewport.clientHeight;
|
|
@@ -1440,29 +1091,29 @@ var SelectScrollButtonImpl = React__namespace.forwardRef((props, forwardedRef) =
|
|
|
1440
1091
|
React__namespace.useEffect(() => {
|
|
1441
1092
|
return () => clearAutoScrollTimer();
|
|
1442
1093
|
}, [clearAutoScrollTimer]);
|
|
1443
|
-
|
|
1094
|
+
index.useLayoutEffect2(() => {
|
|
1444
1095
|
const activeItem = getItems().find((item) => item.ref.current === document.activeElement);
|
|
1445
1096
|
activeItem?.ref.current?.scrollIntoView({ block: "nearest" });
|
|
1446
1097
|
}, [getItems]);
|
|
1447
1098
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1448
|
-
|
|
1099
|
+
index.Primitive.div,
|
|
1449
1100
|
{
|
|
1450
1101
|
"aria-hidden": true,
|
|
1451
1102
|
...scrollIndicatorProps,
|
|
1452
1103
|
ref: forwardedRef,
|
|
1453
1104
|
style: { flexShrink: 0, ...scrollIndicatorProps.style },
|
|
1454
|
-
onPointerDown:
|
|
1105
|
+
onPointerDown: index.composeEventHandlers(scrollIndicatorProps.onPointerDown, () => {
|
|
1455
1106
|
if (autoScrollTimerRef.current === null) {
|
|
1456
1107
|
autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);
|
|
1457
1108
|
}
|
|
1458
1109
|
}),
|
|
1459
|
-
onPointerMove:
|
|
1110
|
+
onPointerMove: index.composeEventHandlers(scrollIndicatorProps.onPointerMove, () => {
|
|
1460
1111
|
contentContext.onItemLeave?.();
|
|
1461
1112
|
if (autoScrollTimerRef.current === null) {
|
|
1462
1113
|
autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);
|
|
1463
1114
|
}
|
|
1464
1115
|
}),
|
|
1465
|
-
onPointerLeave:
|
|
1116
|
+
onPointerLeave: index.composeEventHandlers(scrollIndicatorProps.onPointerLeave, () => {
|
|
1466
1117
|
clearAutoScrollTimer();
|
|
1467
1118
|
})
|
|
1468
1119
|
}
|
|
@@ -1472,7 +1123,7 @@ var SEPARATOR_NAME = "SelectSeparator";
|
|
|
1472
1123
|
var SelectSeparator$1 = React__namespace.forwardRef(
|
|
1473
1124
|
(props, forwardedRef) => {
|
|
1474
1125
|
const { __scopeSelect, ...separatorProps } = props;
|
|
1475
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1126
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index.Primitive.div, { "aria-hidden": true, ...separatorProps, ref: forwardedRef });
|
|
1476
1127
|
}
|
|
1477
1128
|
);
|
|
1478
1129
|
SelectSeparator$1.displayName = SEPARATOR_NAME;
|
|
@@ -1483,7 +1134,7 @@ var SelectArrow = React__namespace.forwardRef(
|
|
|
1483
1134
|
const popperScope = usePopperScope(__scopeSelect);
|
|
1484
1135
|
const context = useSelectContext(ARROW_NAME, __scopeSelect);
|
|
1485
1136
|
const contentContext = useSelectContentContext(ARROW_NAME, __scopeSelect);
|
|
1486
|
-
return context.open && contentContext.position === "popper" ? /* @__PURE__ */ jsxRuntime.jsx(Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;
|
|
1137
|
+
return context.open && contentContext.position === "popper" ? /* @__PURE__ */ jsxRuntime.jsx(index$3.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;
|
|
1487
1138
|
}
|
|
1488
1139
|
);
|
|
1489
1140
|
SelectArrow.displayName = ARROW_NAME;
|
|
@@ -1491,7 +1142,7 @@ var BUBBLE_INPUT_NAME = "SelectBubbleInput";
|
|
|
1491
1142
|
var SelectBubbleInput = React__namespace.forwardRef(
|
|
1492
1143
|
({ __scopeSelect, value, ...props }, forwardedRef) => {
|
|
1493
1144
|
const ref = React__namespace.useRef(null);
|
|
1494
|
-
const composedRefs = index.useComposedRefs(forwardedRef, ref);
|
|
1145
|
+
const composedRefs = index$1.useComposedRefs(forwardedRef, ref);
|
|
1495
1146
|
const prevValue = usePrevious(value);
|
|
1496
1147
|
React__namespace.useEffect(() => {
|
|
1497
1148
|
const select = ref.current;
|
|
@@ -1509,10 +1160,10 @@ var SelectBubbleInput = React__namespace.forwardRef(
|
|
|
1509
1160
|
}
|
|
1510
1161
|
}, [prevValue, value]);
|
|
1511
1162
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1512
|
-
|
|
1163
|
+
index.Primitive.select,
|
|
1513
1164
|
{
|
|
1514
1165
|
...props,
|
|
1515
|
-
style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },
|
|
1166
|
+
style: { ...index$3.VISUALLY_HIDDEN_STYLES, ...props.style },
|
|
1516
1167
|
ref: composedRefs,
|
|
1517
1168
|
defaultValue: value
|
|
1518
1169
|
}
|
|
@@ -1524,7 +1175,7 @@ function shouldShowPlaceholder(value) {
|
|
|
1524
1175
|
return value === "" || value === void 0;
|
|
1525
1176
|
}
|
|
1526
1177
|
function useTypeaheadSearch(onSearchChange) {
|
|
1527
|
-
const handleSearchChange =
|
|
1178
|
+
const handleSearchChange = index.useCallbackRef(onSearchChange);
|
|
1528
1179
|
const searchRef = React__namespace.useRef("");
|
|
1529
1180
|
const timerRef = React__namespace.useRef(0);
|
|
1530
1181
|
const handleTypeaheadSearch = React__namespace.useCallback(
|
|
@@ -1605,7 +1256,7 @@ function SelectTrigger({
|
|
|
1605
1256
|
...props,
|
|
1606
1257
|
children: [
|
|
1607
1258
|
children,
|
|
1608
|
-
/* @__PURE__ */ jsxRuntime.jsx(Icon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(index$
|
|
1259
|
+
/* @__PURE__ */ jsxRuntime.jsx(Icon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(index$2.ChevronDown, { className: "size-4 opacity-50" }) })
|
|
1609
1260
|
]
|
|
1610
1261
|
}
|
|
1611
1262
|
);
|
|
@@ -1653,7 +1304,7 @@ function SelectItem({ className, children, ...props }) {
|
|
|
1653
1304
|
),
|
|
1654
1305
|
...props,
|
|
1655
1306
|
children: [
|
|
1656
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(index$
|
|
1307
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(index$2.Check, { className: "size-4" }) }) }),
|
|
1657
1308
|
/* @__PURE__ */ jsxRuntime.jsx(ItemText, { children })
|
|
1658
1309
|
]
|
|
1659
1310
|
}
|
|
@@ -1687,15 +1338,10 @@ function SelectScrollDownButton({ className, ...props }) {
|
|
|
1687
1338
|
"data-slot": "select-scroll-down-button",
|
|
1688
1339
|
className: utils.cn("flex cursor-default items-center justify-center py-1", className),
|
|
1689
1340
|
...props,
|
|
1690
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(index$
|
|
1341
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(index$2.ChevronDown, { className: "size-4" })
|
|
1691
1342
|
}
|
|
1692
1343
|
);
|
|
1693
1344
|
}
|
|
1694
|
-
exports.Anchor = Anchor;
|
|
1695
|
-
exports.Arrow = Arrow;
|
|
1696
|
-
exports.Content = Content;
|
|
1697
|
-
exports.Root = Root;
|
|
1698
|
-
exports.Root2 = Root2$1;
|
|
1699
1345
|
exports.Select = Select;
|
|
1700
1346
|
exports.SelectContent = SelectContent;
|
|
1701
1347
|
exports.SelectGroup = SelectGroup;
|
|
@@ -1707,7 +1353,5 @@ exports.SelectSeparator = SelectSeparator;
|
|
|
1707
1353
|
exports.SelectTrigger = SelectTrigger;
|
|
1708
1354
|
exports.SelectValue = SelectValue;
|
|
1709
1355
|
exports.createCollection = createCollection;
|
|
1710
|
-
exports.createPopperScope = createPopperScope;
|
|
1711
1356
|
exports.usePrevious = usePrevious;
|
|
1712
|
-
|
|
1713
|
-
//# sourceMappingURL=select-DGnc8VJi.js.map
|
|
1357
|
+
//# sourceMappingURL=select-MSYUKpRI.js.map
|