@tamagui/select 1.47.5 → 1.47.6
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/cjs/Select.js +82 -40
- package/dist/cjs/Select.js.map +1 -1
- package/dist/cjs/SelectContent.js +2 -1
- package/dist/cjs/SelectContent.js.map +1 -1
- package/dist/cjs/SelectImpl.js +38 -23
- package/dist/cjs/SelectImpl.js.map +2 -2
- package/dist/cjs/SelectItem.js +24 -12
- package/dist/cjs/SelectItem.js.map +1 -1
- package/dist/cjs/SelectTrigger.js +7 -6
- package/dist/cjs/SelectTrigger.js.map +1 -1
- package/dist/cjs/SelectViewport.js +6 -5
- package/dist/cjs/SelectViewport.js.map +1 -1
- package/dist/cjs/context.js +19 -4
- package/dist/cjs/context.js.map +1 -1
- package/dist/esm/Select.js +89 -41
- package/dist/esm/Select.js.map +1 -1
- package/dist/esm/SelectContent.js +3 -2
- package/dist/esm/SelectContent.js.map +1 -1
- package/dist/esm/SelectImpl.js +42 -23
- package/dist/esm/SelectImpl.js.map +1 -1
- package/dist/esm/SelectItem.js +28 -13
- package/dist/esm/SelectItem.js.map +1 -1
- package/dist/esm/SelectTrigger.js +8 -7
- package/dist/esm/SelectTrigger.js.map +1 -1
- package/dist/esm/SelectViewport.js +11 -6
- package/dist/esm/SelectViewport.js.map +1 -1
- package/dist/esm/context.js +14 -3
- package/dist/esm/context.js.map +1 -1
- package/dist/jsx/Select.js +66 -22
- package/dist/jsx/Select.js.map +1 -1
- package/dist/jsx/SelectContent.js +3 -2
- package/dist/jsx/SelectContent.js.map +1 -1
- package/dist/jsx/SelectImpl.js +38 -23
- package/dist/jsx/SelectImpl.js.map +1 -1
- package/dist/jsx/SelectItem.js +28 -13
- package/dist/jsx/SelectItem.js.map +1 -1
- package/dist/jsx/SelectTrigger.js +8 -7
- package/dist/jsx/SelectTrigger.js.map +1 -1
- package/dist/jsx/SelectViewport.js +11 -6
- package/dist/jsx/SelectViewport.js.map +1 -1
- package/dist/jsx/context.js +14 -3
- package/dist/jsx/context.js.map +1 -1
- package/package.json +19 -19
- package/src/Select.tsx +101 -49
- package/src/SelectContent.tsx +3 -2
- package/src/SelectImpl.tsx +46 -23
- package/src/SelectItem.tsx +33 -14
- package/src/SelectTrigger.tsx +8 -7
- package/src/SelectViewport.tsx +13 -6
- package/src/context.tsx +24 -8
- package/src/types.tsx +24 -18
- package/types/Select.d.ts.map +1 -1
- package/types/SelectContent.d.ts.map +1 -1
- package/types/SelectImpl.d.ts +2 -1
- package/types/SelectImpl.d.ts.map +1 -1
- package/types/SelectItem.d.ts.map +1 -1
- package/types/SelectTrigger.d.ts.map +1 -1
- package/types/SelectViewport.d.ts.map +1 -1
- package/types/context.d.ts +23 -2
- package/types/context.d.ts.map +1 -1
- package/types/types.d.ts +23 -16
- package/types/types.d.ts.map +1 -1
package/dist/cjs/Select.js
CHANGED
|
@@ -69,6 +69,7 @@ const SelectValue = SelectValueFrame.styleable(function SelectValue2({
|
|
|
69
69
|
...props
|
|
70
70
|
}, forwardedRef) {
|
|
71
71
|
const context = (0, import_context.useSelectContext)(VALUE_NAME, __scopeSelect);
|
|
72
|
+
const itemParentContext = (0, import_context.useSelectItemParentContext)(VALUE_NAME, __scopeSelect);
|
|
72
73
|
const composedRefs = (0, import_compose_refs.useComposedRefs)(forwardedRef, context.onValueNodeChange);
|
|
73
74
|
const children = childrenProp ?? context.selectedItem;
|
|
74
75
|
const isEmptyValue = context.value == null || context.value === "";
|
|
@@ -76,7 +77,7 @@ const SelectValue = SelectValueFrame.styleable(function SelectValue2({
|
|
|
76
77
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
77
78
|
SelectValueFrame,
|
|
78
79
|
{
|
|
79
|
-
size:
|
|
80
|
+
size: itemParentContext.size,
|
|
80
81
|
ref: composedRefs,
|
|
81
82
|
pointerEvents: "none",
|
|
82
83
|
...props,
|
|
@@ -123,6 +124,7 @@ const SelectItemText = React.forwardRef(
|
|
|
123
124
|
(props, forwardedRef) => {
|
|
124
125
|
const { __scopeSelect, className, ...itemTextProps } = props;
|
|
125
126
|
const context = (0, import_context.useSelectContext)(ITEM_TEXT_NAME, __scopeSelect);
|
|
127
|
+
const itemParentContext = (0, import_context.useSelectItemParentContext)(ITEM_TEXT_NAME, __scopeSelect);
|
|
126
128
|
const ref = React.useRef(null);
|
|
127
129
|
const composedRefs = (0, import_compose_refs.useComposedRefs)(forwardedRef, ref);
|
|
128
130
|
const itemContext = (0, import_SelectItem.useSelectItemContext)(ITEM_TEXT_NAME, __scopeSelect);
|
|
@@ -132,21 +134,21 @@ const SelectItemText = React.forwardRef(
|
|
|
132
134
|
SelectItemTextFrame,
|
|
133
135
|
{
|
|
134
136
|
className,
|
|
135
|
-
size:
|
|
137
|
+
size: itemParentContext.size,
|
|
136
138
|
id: itemContext.textId,
|
|
137
139
|
...itemTextProps,
|
|
138
140
|
ref: composedRefs
|
|
139
141
|
}
|
|
140
142
|
),
|
|
141
143
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
142
|
-
[props,
|
|
144
|
+
[props, itemParentContext.size, className, itemContext.textId]
|
|
143
145
|
);
|
|
144
146
|
(0, import_core.useIsomorphicLayoutEffect)(() => {
|
|
145
147
|
if (isSelected) {
|
|
146
148
|
context.setSelectedItem(contents);
|
|
147
149
|
}
|
|
148
150
|
}, [isSelected, contents]);
|
|
149
|
-
if (
|
|
151
|
+
if (itemParentContext.shouldRenderWebNative) {
|
|
150
152
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: props.children });
|
|
151
153
|
}
|
|
152
154
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: contents });
|
|
@@ -160,7 +162,7 @@ const SelectItemIndicatorFrame = (0, import_core.styled)(import_stacks.XStack, {
|
|
|
160
162
|
const SelectItemIndicator = React.forwardRef(
|
|
161
163
|
(props, forwardedRef) => {
|
|
162
164
|
const { __scopeSelect, ...itemIndicatorProps } = props;
|
|
163
|
-
const context = (0, import_context.
|
|
165
|
+
const context = (0, import_context.useSelectItemParentContext)(ITEM_INDICATOR_NAME, __scopeSelect);
|
|
164
166
|
const itemContext = (0, import_SelectItem.useSelectItemContext)(ITEM_INDICATOR_NAME, __scopeSelect);
|
|
165
167
|
if (context.shouldRenderWebNative) {
|
|
166
168
|
return null;
|
|
@@ -215,17 +217,18 @@ const SelectGroup = React.forwardRef(
|
|
|
215
217
|
const { __scopeSelect, ...groupProps } = props;
|
|
216
218
|
const groupId = React.useId();
|
|
217
219
|
const context = (0, import_context.useSelectContext)(GROUP_NAME, __scopeSelect);
|
|
218
|
-
const
|
|
220
|
+
const itemParentContext = (0, import_context.useSelectItemParentContext)(GROUP_NAME, __scopeSelect);
|
|
221
|
+
const size = itemParentContext.size ?? "$true";
|
|
219
222
|
const nativeSelectRef = React.useRef(null);
|
|
220
223
|
const content = function() {
|
|
221
|
-
if (
|
|
224
|
+
if (itemParentContext.shouldRenderWebNative) {
|
|
222
225
|
return (
|
|
223
226
|
// @ts-expect-error until we support typing based on tag
|
|
224
227
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(NativeSelectFrame, { asChild: true, size, value: context.value, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
225
228
|
NativeSelectTextFrame,
|
|
226
229
|
{
|
|
227
230
|
onChange: (event) => {
|
|
228
|
-
|
|
231
|
+
itemParentContext.onChange(event.currentTarget.value);
|
|
229
232
|
},
|
|
230
233
|
size,
|
|
231
234
|
ref: nativeSelectRef,
|
|
@@ -257,7 +260,7 @@ const LABEL_NAME = "SelectLabel";
|
|
|
257
260
|
const SelectLabel = React.forwardRef(
|
|
258
261
|
(props, forwardedRef) => {
|
|
259
262
|
const { __scopeSelect, ...labelProps } = props;
|
|
260
|
-
const context = (0, import_context.
|
|
263
|
+
const context = (0, import_context.useSelectItemParentContext)(LABEL_NAME, __scopeSelect);
|
|
261
264
|
const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);
|
|
262
265
|
if (context.shouldRenderWebNative) {
|
|
263
266
|
return null;
|
|
@@ -342,6 +345,13 @@ const Select = (0, import_core.withStaticProperties)(
|
|
|
342
345
|
transition: true
|
|
343
346
|
});
|
|
344
347
|
const [activeIndex, setActiveIndex] = React.useState(0);
|
|
348
|
+
const [emitValue, valueSubscribe] = useEmitter();
|
|
349
|
+
const [emitActiveIndex, activeIndexSubscribe] = useEmitter();
|
|
350
|
+
React.useEffect(() => {
|
|
351
|
+
queueMicrotask(() => {
|
|
352
|
+
emitValue(value);
|
|
353
|
+
});
|
|
354
|
+
}, [value]);
|
|
345
355
|
const selectedIndexRef = React.useRef(null);
|
|
346
356
|
const activeIndexRef = React.useRef(null);
|
|
347
357
|
const listContentRef = React.useRef([]);
|
|
@@ -353,45 +363,61 @@ const Select = (0, import_core.withStaticProperties)(
|
|
|
353
363
|
});
|
|
354
364
|
const shouldRenderWebNative = import_core.isWeb && (native === true || native === "web" || Array.isArray(native) && native.includes("web"));
|
|
355
365
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AdaptProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
356
|
-
import_context.
|
|
366
|
+
import_context.SelectItemParentProvider,
|
|
357
367
|
{
|
|
358
|
-
dir,
|
|
359
|
-
blockSelection: false,
|
|
360
|
-
size: sizeProp,
|
|
361
|
-
fallback: false,
|
|
362
|
-
selectedItem,
|
|
363
|
-
setSelectedItem,
|
|
364
|
-
forceUpdate,
|
|
365
|
-
valueNode,
|
|
366
|
-
onValueNodeChange: setValueNode,
|
|
367
|
-
scopeKey,
|
|
368
|
-
sheetBreakpoint,
|
|
369
368
|
scope: __scopeSelect,
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
activeIndex,
|
|
374
|
-
onChange: setValue,
|
|
375
|
-
selectedIndex,
|
|
376
|
-
setActiveIndex,
|
|
369
|
+
size: sizeProp,
|
|
370
|
+
activeIndexSubscribe,
|
|
371
|
+
valueSubscribe,
|
|
377
372
|
setOpen,
|
|
373
|
+
onChange: React.useCallback((val) => {
|
|
374
|
+
setValue(val);
|
|
375
|
+
emitValue(val);
|
|
376
|
+
}, []),
|
|
378
377
|
setSelectedIndex,
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
378
|
+
setValueAtIndex: React.useCallback((index, value2) => {
|
|
379
|
+
listContentRef.current[index] = value2;
|
|
380
|
+
}, []),
|
|
382
381
|
shouldRenderWebNative,
|
|
383
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
384
|
-
|
|
382
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
383
|
+
import_context.SelectProvider,
|
|
385
384
|
{
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
385
|
+
scope: __scopeSelect,
|
|
386
|
+
dir,
|
|
387
|
+
blockSelection: false,
|
|
388
|
+
fallback: false,
|
|
389
|
+
selectedItem,
|
|
390
|
+
setSelectedItem,
|
|
391
|
+
forceUpdate,
|
|
392
|
+
valueNode,
|
|
393
|
+
onValueNodeChange: setValueNode,
|
|
394
|
+
scopeKey,
|
|
395
|
+
sheetBreakpoint,
|
|
396
|
+
activeIndex,
|
|
397
|
+
selectedIndex,
|
|
398
|
+
setActiveIndex: React.useCallback((index) => {
|
|
399
|
+
setActiveIndex(index);
|
|
400
|
+
if (typeof index === "number") {
|
|
401
|
+
emitActiveIndex(index);
|
|
402
|
+
}
|
|
403
|
+
}, []),
|
|
391
404
|
value,
|
|
392
|
-
|
|
405
|
+
open,
|
|
406
|
+
native,
|
|
407
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectSheetController, { onOpenChange: setOpen, __scopeSelect, children: shouldRenderWebNative ? children : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
408
|
+
SelectImpl,
|
|
409
|
+
{
|
|
410
|
+
activeIndexRef,
|
|
411
|
+
listContentRef,
|
|
412
|
+
selectedIndexRef,
|
|
413
|
+
...props,
|
|
414
|
+
open,
|
|
415
|
+
value,
|
|
416
|
+
children
|
|
417
|
+
}
|
|
418
|
+
) })
|
|
393
419
|
}
|
|
394
|
-
)
|
|
420
|
+
)
|
|
395
421
|
}
|
|
396
422
|
) });
|
|
397
423
|
},
|
|
@@ -412,6 +438,22 @@ const Select = (0, import_core.withStaticProperties)(
|
|
|
412
438
|
Sheet: import_sheet.Sheet.Controlled
|
|
413
439
|
}
|
|
414
440
|
);
|
|
441
|
+
function useEmitter() {
|
|
442
|
+
const listeners = React.useRef();
|
|
443
|
+
if (!listeners.current) {
|
|
444
|
+
listeners.current = /* @__PURE__ */ new Set();
|
|
445
|
+
}
|
|
446
|
+
const emit = (value) => {
|
|
447
|
+
listeners.current.forEach((l) => l(value));
|
|
448
|
+
};
|
|
449
|
+
const subscribe = React.useCallback((listener) => {
|
|
450
|
+
listeners.current.add(listener);
|
|
451
|
+
return () => {
|
|
452
|
+
listeners.current.delete(listener);
|
|
453
|
+
};
|
|
454
|
+
}, []);
|
|
455
|
+
return [emit, subscribe];
|
|
456
|
+
}
|
|
415
457
|
Select.displayName = import_constants.SELECT_NAME;
|
|
416
458
|
// Annotate the CommonJS export names for ESM import in node:
|
|
417
459
|
0 && (module.exports = {
|
package/dist/cjs/Select.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Select.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["SelectValue", "value"]
|
|
6
6
|
}
|
|
@@ -35,11 +35,12 @@ const SelectContent = ({
|
|
|
35
35
|
...focusScopeProps
|
|
36
36
|
}) => {
|
|
37
37
|
const context = (0, import_context.useSelectContext)(CONTENT_NAME, __scopeSelect);
|
|
38
|
+
const itemParentContext = (0, import_context.useSelectItemParentContext)(CONTENT_NAME, __scopeSelect);
|
|
38
39
|
const themeName = (0, import_core.useThemeName)();
|
|
39
40
|
const showSheet = (0, import_useSelectBreakpointActive.useShowSelectSheet)(context);
|
|
40
41
|
const contents = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_core.Theme, { forceClassName: true, name: themeName, children });
|
|
41
42
|
const touch = (0, import_core.useIsTouchDevice)();
|
|
42
|
-
if (
|
|
43
|
+
if (itemParentContext.shouldRenderWebNative) {
|
|
43
44
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children });
|
|
44
45
|
}
|
|
45
46
|
if (showSheet) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SelectContent.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0BI;AA1BJ,mBAAgD;AAChD,kBAAsD;AACtD,yBAA4C;AAE5C,qBAA6D;AAE7D,uCAAmC;AAMnC,MAAM,eAAe;AAEd,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT,GAAG;AACL,MAA4C;AAC1C,QAAM,cAAU,iCAAiB,cAAc,aAAa;AAC5D,QAAM,wBAAoB,2CAA2B,cAAc,aAAa;AAChF,QAAM,gBAAY,0BAAa;AAC/B,QAAM,gBAAY,qDAAmB,OAAO;AAE5C,QAAM,WACJ,4CAAC,qBAAM,gBAAc,MAAC,MAAM,WACzB,UACH;AAGF,QAAM,YAAQ,8BAAiB;AAE/B,MAAI,kBAAkB,uBAAuB;AAC3C,WAAO,2EAAG,UAAS;AAAA,EACrB;AAEA,MAAI,WAAW;AACb,QAAI,CAAC,QAAQ,MAAM;AACjB,aAAO;AAAA,IACT;AACA,WAAO,2EAAG,oBAAS;AAAA,EACrB;AAEA,SACE,4CAAC,+BACC;AAAA,IAAC;AAAA;AAAA,MACC,OAAO,EAAE,QAAQ,eAAe,QAAQ,OAAO,SAAS,OAAO;AAAA,MAC/D,YAAY,CAAC,CAAC,QAAQ,QAAQ,CAAC;AAAA,MAE/B,sDAAC,iCAAW,MAAI,MAAC,SAAS,CAAC,CAAC,QAAQ,MAAO,GAAG,iBAC3C,oBACH;AAAA;AAAA,EACF,GACF;AAEJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/cjs/SelectImpl.js
CHANGED
|
@@ -28,13 +28,15 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var SelectImpl_exports = {};
|
|
30
30
|
__export(SelectImpl_exports, {
|
|
31
|
-
SelectInlineImpl: () => SelectInlineImpl
|
|
31
|
+
SelectInlineImpl: () => SelectInlineImpl,
|
|
32
|
+
useMemoDebug: () => useMemoDebug
|
|
32
33
|
});
|
|
33
34
|
module.exports = __toCommonJS(SelectImpl_exports);
|
|
34
35
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
35
36
|
var import_react = require("@floating-ui/react");
|
|
36
37
|
var import_core = require("@tamagui/core");
|
|
37
38
|
var React = __toESM(require("react"));
|
|
39
|
+
var import_react2 = require("react");
|
|
38
40
|
var import_react_dom = require("react-dom");
|
|
39
41
|
var import_constants = require("./constants");
|
|
40
42
|
var import_context = require("./context");
|
|
@@ -47,14 +49,12 @@ const SelectInlineImpl = (props) => {
|
|
|
47
49
|
listContentRef
|
|
48
50
|
} = props;
|
|
49
51
|
const selectContext = (0, import_context.useSelectContext)("SelectSheetImpl", __scopeSelect);
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
forceUpdate
|
|
57
|
-
} = selectContext;
|
|
52
|
+
const selectItemParentContext = (0, import_context.useSelectItemParentContext)(
|
|
53
|
+
"SelectSheetImpl",
|
|
54
|
+
__scopeSelect
|
|
55
|
+
);
|
|
56
|
+
const { setActiveIndex, selectedIndex, activeIndex, forceUpdate } = selectContext;
|
|
57
|
+
const { setOpen, setSelectedIndex } = selectItemParentContext;
|
|
58
58
|
const [scrollTop, setScrollTop] = React.useState(0);
|
|
59
59
|
const touch = (0, import_core.useIsTouchDevice)();
|
|
60
60
|
const listItemsRef = React.useRef([]);
|
|
@@ -258,7 +258,7 @@ const SelectInlineImpl = (props) => {
|
|
|
258
258
|
};
|
|
259
259
|
}
|
|
260
260
|
}, [open, refs, setOpen]);
|
|
261
|
-
|
|
261
|
+
React.useEffect(() => {
|
|
262
262
|
var _a, _b;
|
|
263
263
|
if (open && controlledScrolling) {
|
|
264
264
|
if (activeIndex != null) {
|
|
@@ -267,7 +267,7 @@ const SelectInlineImpl = (props) => {
|
|
|
267
267
|
}
|
|
268
268
|
setScrollTop(((_b = refs.floating.current) == null ? void 0 : _b.scrollTop) ?? 0);
|
|
269
269
|
}, [open, refs, controlledScrolling, activeIndex]);
|
|
270
|
-
|
|
270
|
+
React.useEffect(() => {
|
|
271
271
|
var _a;
|
|
272
272
|
if (open && fallback) {
|
|
273
273
|
if (selectedIndex != null) {
|
|
@@ -287,32 +287,47 @@ const SelectInlineImpl = (props) => {
|
|
|
287
287
|
...selectContext,
|
|
288
288
|
setScrollTop,
|
|
289
289
|
setInnerOffset,
|
|
290
|
-
setValueAtIndex: (index, value) => {
|
|
291
|
-
listContentRef.current[index] = value;
|
|
292
|
-
},
|
|
293
290
|
fallback,
|
|
294
|
-
interactions: interactionsContext,
|
|
295
291
|
floatingContext: context,
|
|
296
292
|
activeIndex,
|
|
297
293
|
canScrollDown: !!showDownArrow,
|
|
298
294
|
canScrollUp: !!showUpArrow,
|
|
299
295
|
controlledScrolling,
|
|
300
|
-
dataRef: context.dataRef,
|
|
301
|
-
listRef: listItemsRef,
|
|
302
296
|
blockSelection,
|
|
303
|
-
allowMouseUpRef,
|
|
304
297
|
upArrowRef,
|
|
305
298
|
downArrowRef,
|
|
306
|
-
selectTimeoutRef,
|
|
307
|
-
allowSelectRef,
|
|
308
299
|
update,
|
|
309
|
-
children
|
|
300
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
301
|
+
import_context.SelectItemParentProvider,
|
|
302
|
+
{
|
|
303
|
+
scope: __scopeSelect,
|
|
304
|
+
...selectItemParentContext,
|
|
305
|
+
allowMouseUpRef,
|
|
306
|
+
allowSelectRef,
|
|
307
|
+
dataRef: context.dataRef,
|
|
308
|
+
interactions: interactionsContext,
|
|
309
|
+
listRef: listItemsRef,
|
|
310
|
+
selectTimeoutRef,
|
|
311
|
+
children
|
|
312
|
+
}
|
|
313
|
+
)
|
|
310
314
|
}
|
|
311
315
|
);
|
|
312
316
|
};
|
|
313
|
-
const
|
|
317
|
+
const useMemoDebug = (fn, args) => {
|
|
318
|
+
let run = 1;
|
|
319
|
+
const res = (0, import_react2.useMemo)(() => {
|
|
320
|
+
run = 0;
|
|
321
|
+
return fn();
|
|
322
|
+
}, args);
|
|
323
|
+
if (run === 1) {
|
|
324
|
+
console.log("saved a run");
|
|
325
|
+
}
|
|
326
|
+
return res;
|
|
327
|
+
};
|
|
314
328
|
// Annotate the CommonJS export names for ESM import in node:
|
|
315
329
|
0 && (module.exports = {
|
|
316
|
-
SelectInlineImpl
|
|
330
|
+
SelectInlineImpl,
|
|
331
|
+
useMemoDebug
|
|
317
332
|
});
|
|
318
333
|
//# sourceMappingURL=SelectImpl.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SelectImpl.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
5
|
-
"names": ["props"]
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA+VM;AA/VN,mBAeO;AACP,kBAKO;AACP,YAAuB;AACvB,IAAAA,gBAAwB;AACxB,uBAA0B;AAE1B,uBAAuD;AACvD,qBAKO;AAIA,MAAM,mBAAmB,CAAC,UAA2B;AAC1D,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,QAAM,oBAAgB,iCAAiB,mBAAmB,aAAa;AACvE,QAAM,8BAA0B;AAAA,IAC9B;AAAA,IACA;AAAA,EACF;AACA,QAAM,EAAE,gBAAgB,eAAe,aAAa,YAAY,IAAI;AAEpE,QAAM,EAAE,SAAS,iBAAiB,IAAI;AAEtC,QAAM,CAAC,WAAW,YAAY,IAAI,MAAM,SAAS,CAAC;AAClD,QAAM,YAAQ,8BAAiB;AAE/B,QAAM,eAAe,MAAM,OAAkC,CAAC,CAAC;AAC/D,QAAM,cAAc,MAAM,OAA0B,IAAI;AACxD,QAAM,aAAa,MAAM,OAA8B,IAAI;AAC3D,QAAM,eAAe,MAAM,OAA8B,IAAI;AAC7D,QAAM,iBAAiB,MAAM,OAAO,KAAK;AACzC,QAAM,kBAAkB,MAAM,OAAO,IAAI;AACzC,QAAM,mBAAmB,MAAM,OAAY;AAC3C,QAAM,QAAQ,MAAM,OAAO;AAAA,IACzB,gBAAgB;AAAA,EAClB,CAAC;AAED,QAAM,CAAC,qBAAqB,sBAAsB,IAAI,MAAM,SAAS,KAAK;AAC1E,QAAM,CAAC,UAAU,WAAW,IAAI,MAAM,SAAS,KAAK;AACpD,QAAM,CAAC,aAAa,cAAc,IAAI,MAAM,SAAS,CAAC;AACtD,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,MAAM,SAAS,KAAK;AAChE,QAAM,gBAAgB,MAAM,OAAO,CAAC,CAAC;AAIrC,6CAA0B,MAAM;AAC9B,mBAAe,MAAM;AACnB,UAAI,CAAC,MAAM;AACT,qBAAa,CAAC;AACd,oBAAY,KAAK;AACjB,uBAAe,IAAI;AACnB,+BAAuB,KAAK;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA,EACH,GAAG,CAAC,MAAM,cAAc,CAAC;AAGzB,MAAI,qBAAS,sBAAU;AACrB,+CAA0B,MAAM;AAC9B,UAAI,CAAC;AAAM;AACX,YAAM,UAAU,CAAC,MAAkB;AACjC,YAAI,MAAM,QAAQ,gBAAgB;AAChC,kBAAQ,KAAK;AAAA,QACf;AAAA,MACF;AACA,eAAS,iBAAiB,WAAW,OAAO;AAC5C,aAAO,MAAM;AACX,iBAAS,oBAAoB,WAAW,OAAO;AAAA,MACjD;AAAA,IACF,GAAG,CAAC,IAAI,CAAC;AAAA,EACX;AAEA,QAAM,yBAAqB,mBAAK;AAAA,IAC9B,MAAM;AAAA,MACJ;AAAA,MACA,OAAO;AAAA,QACL,WAAW,EAAE,MAAM;AAAA,MACrB;AAAA,IACF,GAAG;AACD,oBAAc,UAAU;AAAA,QACtB;AAAA,QACA,WAAW;AAAA,MACb;AAAA,IACF;AAAA,IACA,SAAS;AAAA,EACX,CAAC;AAED,QAAM,EAAE,GAAG,GAAG,UAAU,SAAS,MAAM,OAAO,QAAI,0BAAY;AAAA,IAC5D;AAAA,IACA,cAAc;AAAA,IACd,WAAW;AAAA,IACX,YAAY,WACR;AAAA,UACE,qBAAO,CAAC;AAAA,MACR,GAAG;AAAA,QACD,YACI,oBAAM,EAAE,WAAW,MAAM,SAAS,gCAAe,CAAC,QAClD,mBAAK,EAAE,SAAS,gCAAe,CAAC;AAAA,MACtC;AAAA,MACA;AAAA,IACF,IACA;AAAA,UACE,oBAAM;AAAA,QACJ,SAAS;AAAA,QACT;AAAA,QACA,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,kBAAkB;AAAA,QAClB,SAAS;AAAA,QACT,iBAAiB,QAAQ,KAAK;AAAA,QAC9B,4BAA4B;AAAA,MAC9B,CAAC;AAAA,MACD;AAAA,IACF;AAAA,EACN,CAAC;AAED,6CAA0B,MAAM;AAC9B,WAAO,iBAAiB,UAAU,MAAM;AACxC,QAAI,MAAM;AACR,aAAO;AAAA,IACT;AACA,WAAO,MAAM,OAAO,oBAAoB,UAAU,MAAM;AAAA,EAC1D,GAAG,CAAC,QAAQ,IAAI,CAAC;AAEjB,QAAM,cAAc,KAAK;AAEzB,QAAM,cAAc,QAAQ,YAAY;AACxC,QAAM,gBACJ,QACA,YAAY,WACZ,YACE,YAAY,QAAQ,eAClB,YAAY,QAAQ,eACpB;AAEN,QAAM,mBAAe,8BAAgB;AAAA,QACnC,uBAAS,SAAS,EAAE,OAAO,YAAY,CAAC;AAAA,QACxC,yBAAW,SAAS,EAAE,cAAc,MAAM,CAAC;AAAA,QAC3C,sBAAQ,SAAS,EAAE,MAAM,UAAU,CAAC;AAAA,QACpC,6BAAe,SAAS;AAAA,MACtB,SAAS,CAAC;AAAA,MACV,UAAU;AAAA,MACV;AAAA,MACA,WAAW,KAAK;AAAA,IAClB,CAAC;AAAA,QACD,gCAAkB,SAAS;AAAA,MACzB,SAAS;AAAA,MACT,aAAa,eAAe;AAAA,MAC5B;AAAA,MACA,YAAY;AAAA,IACd,CAAC;AAAA,QACD,2BAAa,SAAS;AAAA,MACpB,SAAS;AAAA,MACT,SAAS,OAAO,iBAAiB;AAAA,MACjC;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AAED,QAAM,sBAAsB,MAAM,QAAQ,MAAM;AAC9C,WAAO;AAAA,MACL,GAAG;AAAA,MACH,oBAAoB;AAClB,eAAO,aAAa,kBAAkB;AAAA,UACpC,KAAK,KAAK;AAAA,UACV,WAAW;AAAA,UACX,UAAU,OAAO;AACf,gBACE,MAAM,QAAQ,WACb,MAAM,QAAQ,OAAO,CAAC,QAAQ,QAAQ,QAAQ,QAC/C;AACA,oBAAM,eAAe;AACrB,sBAAQ,IAAI;AAAA,YACd;AAAA,UACF;AAAA,QACF,CAAC;AAAA,MACH;AAAA,MACA,iBAAiBC,QAAO;AACtB,eAAO,aAAa,iBAAiB;AAAA,UACnC,KAAK,KAAK;AAAA,UACV,WAAW;AAAA,UACX,GAAGA;AAAA,UACH,OAAO;AAAA,YACL,UAAU;AAAA,YACV,KAAK,KAAK;AAAA,YACV,MAAM,KAAK;AAAA,YACX,SAAS;AAAA,YACT,gBAAgB;AAAA,YAChB,GAAG,cAAc;AAAA,YACjB,GAAGA,UAAA,gBAAAA,OAAO;AAAA,UACZ;AAAA,UACA,iBAAiB;AACf,mCAAuB,KAAK;AAC5B,kBAAM,QAAQ,iBAAiB;AAAA,UACjC;AAAA,UACA,iBAAiB;AACf,kBAAM,QAAQ,iBAAiB;AAAA,UACjC;AAAA,UACA,gBAAgB;AACd,kBAAM,QAAQ,iBAAiB;AAC/B,mCAAuB,KAAK;AAAA,UAC9B;AAAA,UACA,YAAY;AACV,mCAAuB,IAAI;AAAA,UAC7B;AAAA,UACA,cAAc,GAAG;AACf,cAAE,eAAe;AAAA,UACnB;AAAA,UACA,SAAS,OAAO;AAGd,4CAAU,MAAM,aAAa,MAAM,cAAc,SAAS,CAAC;AAAA,UAC7D;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF;AAAA,EACF,GAAG,CAAC,KAAK,UAAU,SAAS,KAAK,SAAS,SAAS,GAAG,GAAG,YAAY,CAAC;AAItE,6CAA0B,MAAM;AAC9B,QAAI,MAAM;AACR,uBAAiB,UAAU,WAAW,MAAM;AAC1C,uBAAe,UAAU;AAAA,MAC3B,GAAG,GAAG;AAEN,aAAO,MAAM;AACX,qBAAa,iBAAiB,OAAO;AAAA,MACvC;AAAA,IACF,OAAO;AACL,qBAAe,UAAU;AACzB,sBAAgB,UAAU;AAC1B,qBAAe,CAAC;AAChB,kBAAY,KAAK;AACjB,wBAAkB,KAAK;AAAA,IACzB;AAAA,EACF,GAAG,CAAC,IAAI,CAAC;AAET,6CAA0B,MAAM;AAC9B,QAAI,CAAC,QAAQ,MAAM,QAAQ,gBAAgB;AACzC,YAAM,QAAQ,iBAAiB;AAAA,IACjC;AAAA,EACF,GAAG,CAAC,IAAI,CAAC;AAIT,6CAA0B,MAAM;AAC9B,aAAS,cAAc,GAAiB;AAtR5C;AAuRM,YAAM,SAAS,EAAE;AACjB,UACE,IACE,UAAK,SAAS,YAAd,mBAAuB,SAAS,cAChC,gBAAW,YAAX,mBAAoB,SAAS,cAC7B,kBAAa,YAAb,mBAAsB,SAAS,WAEjC;AACA,gBAAQ,KAAK;AACb,+BAAuB,KAAK;AAAA,MAC9B;AAAA,IACF;AAEA,QAAI,MAAM;AACR,eAAS,iBAAiB,eAAe,aAAa;AACtD,aAAO,MAAM;AACX,iBAAS,oBAAoB,eAAe,aAAa;AAAA,MAC3D;AAAA,IACF;AAAA,EACF,GAAG,CAAC,MAAM,MAAM,OAAO,CAAC;AAIxB,QAAM,UAAU,MAAM;AA9SxB;AA+SI,QAAI,QAAQ,qBAAqB;AAC/B,UAAI,eAAe,MAAM;AACvB,2BAAa,QAAQ,WAAW,MAAhC,mBAAmC,eAAe,EAAE,OAAO,UAAU;AAAA,MACvE;AAAA,IACF;AAEA,mBAAa,UAAK,SAAS,YAAd,mBAAuB,cAAa,CAAC;AAAA,EACpD,GAAG,CAAC,MAAM,MAAM,qBAAqB,WAAW,CAAC;AAGjD,QAAM,UAAU,MAAM;AAzTxB;AA0TI,QAAI,QAAQ,UAAU;AACpB,UAAI,iBAAiB,MAAM;AACzB,2BAAa,QAAQ,aAAa,MAAlC,mBAAqC,eAAe,EAAE,OAAO,UAAU;AAAA,MACzE;AAAA,IACF;AAAA,EACF,GAAG,CAAC,MAAM,UAAU,aAAa,CAAC;AAIlC,6CAA0B,MAAM;AAC9B,QAAI,KAAK,SAAS,WAAW,UAAU;AACrC,WAAK,SAAS,QAAQ,MAAM,YAAY;AAAA,IAC1C;AAAA,EACF,GAAG,CAAC,MAAM,QAAQ,CAAC;AAOnB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,MACN,GAAI;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA,iBAAiB;AAAA,MACjB;AAAA,MACA,eAAe,CAAC,CAAC;AAAA,MACjB,aAAa,CAAC,CAAC;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACC,OAAO;AAAA,UACN,GAAG;AAAA,UACJ;AAAA,UACA;AAAA,UACA,SAAS,QAAQ;AAAA,UACjB,cAAc;AAAA,UACd,SAAS;AAAA,UACT;AAAA,UAEC;AAAA;AAAA,MACH;AAAA;AAAA,EAaF;AAEJ;AAIO,MAAM,eAA+B,CAAC,IAAI,SAAS;AACxD,MAAI,MAAM;AAEV,QAAM,UAAM,uBAAQ,MAAM;AACxB,UAAM;AACN,WAAO,GAAG;AAAA,EACZ,GAAG,IAAI;AAEP,MAAI,QAAQ,GAAG;AAEb,YAAQ,IAAI,aAAa;AAAA,EAC3B;AAEA,SAAO;AACT;",
|
|
5
|
+
"names": ["import_react", "props"]
|
|
6
6
|
}
|
package/dist/cjs/SelectItem.js
CHANGED
|
@@ -51,23 +51,36 @@ const SelectItem = React.forwardRef(
|
|
|
51
51
|
index,
|
|
52
52
|
...itemProps
|
|
53
53
|
} = props;
|
|
54
|
-
const context = (0, import_context.
|
|
55
|
-
const isSelected = context.value === value;
|
|
56
|
-
const textId = React.useId();
|
|
54
|
+
const context = (0, import_context.useSelectItemParentContext)(ITEM_NAME, __scopeSelect);
|
|
57
55
|
const {
|
|
58
|
-
selectedIndex,
|
|
59
56
|
setSelectedIndex,
|
|
60
57
|
listRef,
|
|
61
|
-
open,
|
|
62
58
|
setOpen,
|
|
63
59
|
onChange,
|
|
64
|
-
|
|
60
|
+
activeIndexSubscribe,
|
|
61
|
+
valueSubscribe,
|
|
65
62
|
allowMouseUpRef,
|
|
66
63
|
allowSelectRef,
|
|
67
64
|
setValueAtIndex,
|
|
68
65
|
selectTimeoutRef,
|
|
69
|
-
dataRef
|
|
66
|
+
dataRef,
|
|
67
|
+
interactions,
|
|
68
|
+
shouldRenderWebNative,
|
|
69
|
+
size
|
|
70
70
|
} = context;
|
|
71
|
+
const [isSelected, setSelected] = React.useState(false);
|
|
72
|
+
const [isActive, setActive] = React.useState(false);
|
|
73
|
+
React.useEffect(() => {
|
|
74
|
+
return activeIndexSubscribe((i) => {
|
|
75
|
+
setActive(index === i);
|
|
76
|
+
});
|
|
77
|
+
}, [index]);
|
|
78
|
+
React.useEffect(() => {
|
|
79
|
+
return valueSubscribe((val) => {
|
|
80
|
+
setSelected(val === value);
|
|
81
|
+
});
|
|
82
|
+
}, [value]);
|
|
83
|
+
const textId = React.useId();
|
|
71
84
|
const composedRefs = (0, import_compose_refs.useComposedRefs)(forwardedRef, (node) => {
|
|
72
85
|
if (!import_core.isWeb)
|
|
73
86
|
return;
|
|
@@ -85,7 +98,7 @@ const SelectItem = React.forwardRef(
|
|
|
85
98
|
onChange(value);
|
|
86
99
|
setOpen(false);
|
|
87
100
|
}
|
|
88
|
-
const selectItemProps =
|
|
101
|
+
const selectItemProps = interactions ? interactions.getItemProps({
|
|
89
102
|
...import_core.isWebTouchable ? {
|
|
90
103
|
onTouchStart() {
|
|
91
104
|
allowSelectRef.current = true;
|
|
@@ -130,8 +143,7 @@ const SelectItem = React.forwardRef(
|
|
|
130
143
|
}) : {
|
|
131
144
|
onPress: handleSelect
|
|
132
145
|
};
|
|
133
|
-
|
|
134
|
-
React.useLayoutEffect(() => {
|
|
146
|
+
(0, import_core.useIsomorphicLayoutEffect)(() => {
|
|
135
147
|
var _a;
|
|
136
148
|
if (isActive) {
|
|
137
149
|
(_a = listRef == null ? void 0 : listRef.current[index]) == null ? void 0 : _a.focus();
|
|
@@ -144,7 +156,7 @@ const SelectItem = React.forwardRef(
|
|
|
144
156
|
value,
|
|
145
157
|
textId: textId || "",
|
|
146
158
|
isSelected,
|
|
147
|
-
children:
|
|
159
|
+
children: shouldRenderWebNative ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("option", { value, children: props.children }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
148
160
|
import_list_item.ListItem,
|
|
149
161
|
{
|
|
150
162
|
tag: "div",
|
|
@@ -162,7 +174,7 @@ const SelectItem = React.forwardRef(
|
|
|
162
174
|
"aria-disabled": disabled || void 0,
|
|
163
175
|
"data-disabled": disabled ? "" : void 0,
|
|
164
176
|
tabIndex: disabled ? void 0 : -1,
|
|
165
|
-
size
|
|
177
|
+
size,
|
|
166
178
|
...itemProps,
|
|
167
179
|
...selectItemProps
|
|
168
180
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SelectItem.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkLU;AAlLV,0BAAgC;AAChC,kBAKO;AACP,uBAAwC;AACxC,YAAuB;AAEvB,qBAIO;AAOP,MAAM,YAAY;AAQX,MAAM,CAAC,2BAA2B,oBAAoB,QAC3D,oCAA4C,SAAS;AAShD,MAAM,aAAa,MAAM;AAAA,EAC9B,CAAC,OAAqC,iBAAiB;AACrD,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA,WAAW;AAAA,MACX,WAAW;AAAA,MACX;AAAA,MACA,GAAG;AAAA,IACL,IAAI;AACJ,UAAM,cAAU,2CAA2B,WAAW,aAAa;AAEnE,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,IAAI;AAEJ,UAAM,CAAC,YAAY,WAAW,IAAI,MAAM,SAAS,KAAK;AACtD,UAAM,CAAC,UAAU,SAAS,IAAI,MAAM,SAAS,KAAK;AAElD,UAAM,UAAU,MAAM;AACpB,aAAO,qBAAqB,CAAC,MAAM;AACjC,kBAAU,UAAU,CAAC;AAAA,MACvB,CAAC;AAAA,IACH,GAAG,CAAC,KAAK,CAAC;AAEV,UAAM,UAAU,MAAM;AACpB,aAAO,eAAe,CAAC,QAAQ;AAC7B,oBAAY,QAAQ,KAAK;AAAA,MAC3B,CAAC;AAAA,IACH,GAAG,CAAC,KAAK,CAAC;AAEV,UAAM,SAAS,MAAM,MAAM;AAE3B,UAAM,mBAAe,qCAAgB,cAAc,CAAC,SAAS;AAC3D,UAAI,CAAC;AAAO;AACZ,UAAI,gBAAgB,aAAa;AAC/B,YAAI,SAAS;AACX,kBAAQ,QAAQ,KAAK,IAAI;AAAA,QAC3B;AAAA,MACF;AAAA,IACF,CAAC;AAED,+CAA0B,MAAM;AAC9B,sBAAgB,OAAO,KAAK;AAAA,IAC9B,GAAG,CAAC,OAAO,iBAAiB,KAAK,CAAC;AAElC,aAAS,eAAe;AACtB,uBAAiB,KAAK;AACtB,eAAS,KAAK;AACd,cAAQ,KAAK;AAAA,IACf;AAEA,UAAM,kBAAkB,eACpB,aAAa,aAAa;AAAA,MACxB,GAAI,6BACA;AAAA,QACE,eAAe;AACb,yBAAgB,UAAU;AAC1B,0BAAiB,UAAU;AAAA,QAC7B;AAAA,MACF,IACA;AAAA,QACE,cAAc;AACZ,yBAAgB,UAAU;AAC1B,0BAAiB,UAAU;AAAA,QAC7B;AAAA,QACA,aAAa;AACX,yBAAgB,UAAU;AAC1B,0BAAiB,UAAU;AAAA,QAC7B;AAAA,MACF;AAAA,MAEJ,UAAU,OAAO;AACf,YACE,MAAM,QAAQ,WACb,MAAM,QAAQ,OAAO,EAAC,mCAAS,QAAQ,SACxC;AACA,gBAAM,eAAe;AACrB,uBAAa;AAAA,QACf,OAAO;AACL,yBAAgB,UAAU;AAAA,QAC5B;AAAA,MACF;AAAA,MAEA,UAAU;AACR,YAAI,eAAgB,SAAS;AAC3B,2BAAiB,KAAK;AACtB,kBAAQ,KAAK;AAAA,QACf;AAAA,MACF;AAAA,MAEA,YAAY;AACV,YAAI,CAAC,gBAAiB,SAAS;AAC7B;AAAA,QACF;AAEA,YAAI,eAAgB,SAAS;AAC3B,uBAAa;AAAA,QACf;AAIA,qBAAa,iBAAkB,OAAO;AACtC,yBAAkB,UAAU,WAAW,MAAM;AAC3C,yBAAgB,UAAU;AAAA,QAC5B,CAAC;AAAA,MACH;AAAA,IACF,CAAC,IACD;AAAA,MACE,SAAS;AAAA,IACX;AAEJ,+CAA0B,MAAM;AApKpC;AAqKM,UAAI,UAAU;AACZ,iDAAS,QAAQ,WAAjB,mBAAyB;AAAA,MAC3B;AAAA,IACF,GAAG,CAAC,QAAQ,CAAC;AAEb,WACE;AAAA,MAAC;AAAA;AAAA,QACC,OAAO;AAAA,QACP;AAAA,QACA,QAAQ,UAAU;AAAA,QAClB;AAAA,QAEC,kCACC,4CAAC,YAAO,OAAe,gBAAM,UAAS,IAEtC;AAAA,UAAC;AAAA;AAAA,YACC,KAAI;AAAA,YACJ,eAAe;AAAA,YACf,cAAY;AAAA,YACZ,YAAU;AAAA,YACV,YAAU;AAAA,YACV,YAAU;AAAA,YACV,QAAO;AAAA,YACP,cAAc;AAAA,YACd,KAAK;AAAA,YACL,mBAAiB;AAAA,YACjB,iBAAe;AAAA,YACf,cAAY,aAAa,WAAW;AAAA,YACpC,iBAAe,YAAY;AAAA,YAC3B,iBAAe,WAAW,KAAK;AAAA,YAC/B,UAAU,WAAW,SAAY;AAAA,YACjC;AAAA,YACC,GAAG;AAAA,YACH,GAAG;AAAA;AAAA,QACN;AAAA;AAAA,IAEJ;AAAA,EAEJ;AACF;AAEA,WAAW,cAAc;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -42,11 +42,12 @@ const SelectTrigger = React.forwardRef(
|
|
|
42
42
|
var _a;
|
|
43
43
|
const { __scopeSelect, disabled = false, unstyled = false, ...triggerProps } = props;
|
|
44
44
|
const context = (0, import_context.useSelectContext)(TRIGGER_NAME, __scopeSelect);
|
|
45
|
+
const itemParentContext = (0, import_context.useSelectItemParentContext)(TRIGGER_NAME, __scopeSelect);
|
|
45
46
|
const composedRefs = (0, import_compose_refs.useComposedRefs)(
|
|
46
47
|
forwardedRef,
|
|
47
48
|
(_a = context.floatingContext) == null ? void 0 : _a.refs.setReference
|
|
48
49
|
);
|
|
49
|
-
if (
|
|
50
|
+
if (itemParentContext.shouldRenderWebNative) {
|
|
50
51
|
return null;
|
|
51
52
|
}
|
|
52
53
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
@@ -67,7 +68,7 @@ const SelectTrigger = React.forwardRef(
|
|
|
67
68
|
},
|
|
68
69
|
borderWidth: 1
|
|
69
70
|
},
|
|
70
|
-
size:
|
|
71
|
+
size: itemParentContext.size,
|
|
71
72
|
"aria-expanded": context.open,
|
|
72
73
|
"aria-autocomplete": "none",
|
|
73
74
|
dir: context.dir,
|
|
@@ -75,16 +76,16 @@ const SelectTrigger = React.forwardRef(
|
|
|
75
76
|
"data-disabled": disabled ? "" : void 0,
|
|
76
77
|
...triggerProps,
|
|
77
78
|
ref: composedRefs,
|
|
78
|
-
...process.env.TAMAGUI_TARGET === "web" &&
|
|
79
|
-
...
|
|
79
|
+
...process.env.TAMAGUI_TARGET === "web" && itemParentContext.interactions ? {
|
|
80
|
+
...itemParentContext.interactions.getReferenceProps(),
|
|
80
81
|
onMouseDown() {
|
|
81
82
|
var _a2;
|
|
82
83
|
(_a2 = context.floatingContext) == null ? void 0 : _a2.update();
|
|
83
|
-
|
|
84
|
+
itemParentContext.setOpen(!context.open);
|
|
84
85
|
}
|
|
85
86
|
} : {
|
|
86
87
|
onPress() {
|
|
87
|
-
|
|
88
|
+
itemParentContext.setOpen(!context.open);
|
|
88
89
|
}
|
|
89
90
|
}
|
|
90
91
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/SelectTrigger.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAiCM;AAjCN,0BAAgC;AAEhC,uBAAwC;AACxC,YAAuB;AAEvB,qBAA6D;AAM7D,MAAM,eAAe;AAId,MAAM,gBAAgB,MAAM;AAAA,EACjC,SAASA,eAAc,OAAwC,cAAc;AAhB/E;AAiBI,UAAM,EAAE,eAAe,WAAW,OAAO,WAAW,OAAO,GAAG,aAAa,IAAI;AAE/E,UAAM,cAAU,iCAAiB,cAAc,aAAa;AAC5D,UAAM,wBAAoB,2CAA2B,cAAc,aAAa;AAChF,UAAM,mBAAe;AAAA,MACnB;AAAA,OACA,aAAQ,oBAAR,mBAAyB,KAAK;AAAA,IAChC;AAIA,QAAI,kBAAkB,uBAAuB;AAC3C,aAAO;AAAA,IACT;AAEA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAe;AAAA,QACf;AAAA,QACC,GAAI,CAAC,YAAY;AAAA,UAChB,cAAc;AAAA,UACd,UAAU;AAAA,UACV,YAAY;AAAA,UACZ,YAAY;AAAA,UACZ,WAAW;AAAA,UACX,YAAY;AAAA,YACV,cAAc;AAAA,YACd,cAAc;AAAA,YACd,cAAc;AAAA,UAChB;AAAA,UACA,aAAa;AAAA,QACf;AAAA,QACA,MAAM,kBAAkB;AAAA,QAExB,iBAAe,QAAQ;AAAA,QACvB,qBAAkB;AAAA,QAClB,KAAK,QAAQ;AAAA,QACb;AAAA,QACA,iBAAe,WAAW,KAAK;AAAA,QAC9B,GAAG;AAAA,QACJ,KAAK;AAAA,QACJ,GAAI,QAAQ,IAAI,mBAAmB,SAAS,kBAAkB,eAC3D;AAAA,UACE,GAAG,kBAAkB,aAAa,kBAAkB;AAAA,UACpD,cAAc;AA7D5B,gBAAAC;AA8DgB,aAAAA,MAAA,QAAQ,oBAAR,gBAAAA,IAAyB;AACzB,8BAAkB,QAAQ,CAAC,QAAQ,IAAI;AAAA,UACzC;AAAA,QACF,IACA;AAAA,UACE,UAAU;AACR,8BAAkB,QAAQ,CAAC,QAAQ,IAAI;AAAA,UACzC;AAAA,QACF;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;",
|
|
5
5
|
"names": ["SelectTrigger", "_a"]
|
|
6
6
|
}
|
|
@@ -62,6 +62,7 @@ const SelectViewport = SelectViewportFrame.styleable(
|
|
|
62
62
|
var _a;
|
|
63
63
|
const { __scopeSelect, children, disableScroll, ...viewportProps } = props;
|
|
64
64
|
const context = (0, import_context.useSelectContext)(import_constants.VIEWPORT_NAME, __scopeSelect);
|
|
65
|
+
const itemContext = (0, import_context.useSelectItemParentContext)(import_constants.VIEWPORT_NAME, __scopeSelect);
|
|
65
66
|
const breakpointActive = (0, import_useSelectBreakpointActive.useSelectBreakpointActive)(context.sheetBreakpoint);
|
|
66
67
|
(0, import_core.useIsomorphicLayoutEffect)(() => {
|
|
67
68
|
if (context.update) {
|
|
@@ -72,13 +73,13 @@ const SelectViewport = SelectViewportFrame.styleable(
|
|
|
72
73
|
forwardedRef,
|
|
73
74
|
(_a = context.floatingContext) == null ? void 0 : _a.refs.setFloating
|
|
74
75
|
);
|
|
75
|
-
if (
|
|
76
|
+
if (itemContext.shouldRenderWebNative) {
|
|
76
77
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children });
|
|
77
78
|
}
|
|
78
79
|
if (breakpointActive || !import_core.isWeb) {
|
|
79
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_portal.PortalItem, { hostName: `${context.scopeKey}SheetContents`, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_context.ForwardSelectContext, { context, children }) });
|
|
80
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_portal.PortalItem, { hostName: `${context.scopeKey}SheetContents`, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_context.ForwardSelectContext, { itemContext, context, children }) });
|
|
80
81
|
}
|
|
81
|
-
if (!
|
|
82
|
+
if (!itemContext.interactions) {
|
|
82
83
|
if (process.env.NODE_ENV === "development") {
|
|
83
84
|
console.warn(`No interactions provided to Select, potentially missing Adapt`);
|
|
84
85
|
}
|
|
@@ -87,7 +88,7 @@ const SelectViewport = SelectViewportFrame.styleable(
|
|
|
87
88
|
const {
|
|
88
89
|
style: { scrollbarWidth, listStyleType, overflow, ...restStyle },
|
|
89
90
|
...floatingProps
|
|
90
|
-
} =
|
|
91
|
+
} = itemContext.interactions.getFloatingProps();
|
|
91
92
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
92
93
|
!disableScroll && !props.unstyled && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
93
94
|
"style",
|
|
@@ -100,7 +101,7 @@ const SelectViewport = SelectViewportFrame.styleable(
|
|
|
100
101
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.FloatingFocusManager, { context: context.floatingContext, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_animate_presence.AnimatePresence, { children: context.open ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
101
102
|
SelectViewportFrame,
|
|
102
103
|
{
|
|
103
|
-
size:
|
|
104
|
+
size: itemContext.size,
|
|
104
105
|
role: "presentation",
|
|
105
106
|
...viewportProps,
|
|
106
107
|
ref: composedRefs,
|