@astryxdesign/core 0.7.6 → 0.7.7-canary.6442361
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/BottomSheet/BottomSheetPanel.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetPanel.js +16 -9
- package/dist/Chat/ChatComposerInput.d.ts +9 -0
- package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
- package/dist/Chat/ChatComposerInput.js +2 -0
- package/dist/Chat/ChatMessage.js +2 -2
- package/dist/Chat/chatMessage.vars.stylex.d.ts +8 -8
- package/dist/Chat/chatMessage.vars.stylex.js +8 -8
- package/dist/Drawer/Drawer.d.ts.map +1 -1
- package/dist/Drawer/Drawer.js +6 -0
- package/dist/DropdownMenu/useMenuOverflow.d.ts +13 -3
- package/dist/DropdownMenu/useMenuOverflow.d.ts.map +1 -1
- package/dist/DropdownMenu/useMenuOverflow.js +31 -8
- package/dist/Link/Link.d.ts.map +1 -1
- package/dist/Link/Link.js +1 -0
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +25 -13
- package/dist/Slider/Slider.d.ts.map +1 -1
- package/dist/Slider/Slider.js +404 -131
- package/dist/Slider/sliderTouchController.d.ts +189 -0
- package/dist/Slider/sliderTouchController.d.ts.map +1 -0
- package/dist/Slider/sliderTouchController.js +1017 -0
- package/dist/Slider/useSliderTouch.d.ts +22 -0
- package/dist/Slider/useSliderTouch.d.ts.map +1 -0
- package/dist/Slider/useSliderTouch.js +56 -0
- package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
- package/dist/Typeahead/BaseTypeahead.js +10 -8
- package/dist/astryx.css +27 -6
- package/dist/gestures/GestureArena.d.ts.map +1 -1
- package/dist/gestures/GestureArena.js +4 -1
- package/dist/gestures/GestureHost.d.ts +72 -2
- package/dist/gestures/GestureHost.d.ts.map +1 -1
- package/dist/gestures/GestureHost.js +643 -5
- package/dist/gestures/GestureRecognizer.d.ts +15 -1
- package/dist/gestures/GestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/GestureRecognizer.js +12 -0
- package/dist/gestures/PanGestureRecognizer.d.ts +8 -0
- package/dist/gestures/PanGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/PinchGestureRecognizer.d.ts +5 -1
- package/dist/gestures/PinchGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/PinchGestureRecognizer.js +10 -0
- package/dist/gestures/ScreenEdgePanGestureRecognizer.d.ts +3 -3
- package/dist/gestures/ScreenEdgePanGestureRecognizer.d.ts.map +1 -1
- package/dist/gestures/ScreenEdgePanGestureRecognizer.js +7 -5
- package/dist/gestures/nativeScroll.d.ts +16 -2
- package/dist/gestures/nativeScroll.d.ts.map +1 -1
- package/dist/gestures/nativeScroll.js +39 -8
- package/dist/gestures/recognizerInternals.d.ts +4 -2
- package/dist/gestures/recognizerInternals.d.ts.map +1 -1
- package/dist/gestures/types.d.ts +11 -0
- package/dist/gestures/types.d.ts.map +1 -1
- package/dist/gestures/types.js +7 -0
- package/dist/gestures/wheelSegmenter.d.ts +45 -0
- package/dist/gestures/wheelSegmenter.d.ts.map +1 -0
- package/dist/gestures/wheelSegmenter.js +98 -0
- package/dist/motion/animator.d.ts.map +1 -1
- package/dist/motion/animator.js +77 -14
- package/dist/motion/uikit/index.d.ts +2 -1
- package/dist/motion/uikit/index.d.ts.map +1 -1
- package/dist/motion/uikit/index.js +2 -1
- package/dist/motion/uikit/slider.d.ts +97 -0
- package/dist/motion/uikit/slider.d.ts.map +1 -0
- package/dist/motion/uikit/slider.js +111 -0
- package/dist/motion/uikit/springs.d.ts +46 -1
- package/dist/motion/uikit/springs.d.ts.map +1 -1
- package/dist/motion/uikit/springs.js +48 -4
- package/package.json +5 -5
- package/src/BottomSheet/BottomSheetPanel.tsx +16 -9
- package/src/Chat/Chat.doc.mjs +1 -0
- package/src/Chat/ChatComposerInput.doc.mjs +11 -0
- package/src/Chat/ChatComposerInput.tsx +11 -0
- package/src/Chat/ChatMessage.tsx +2 -2
- package/src/Chat/chatMessage.vars.stylex.ts +8 -8
- package/src/Drawer/Drawer.tsx +6 -0
- package/src/DropdownMenu/useMenuOverflow.ts +44 -8
- package/src/Link/Link.tsx +3 -0
- package/src/Selector/Selector.tsx +29 -2
- package/src/Slider/Slider.doc.mjs +11 -7
- package/src/Slider/Slider.tsx +539 -132
- package/src/Slider/sliderTouchController.ts +1209 -0
- package/src/Slider/useSliderTouch.ts +78 -0
- package/src/Typeahead/BaseTypeahead.tsx +9 -8
- package/src/gestures/GestureArena.ts +1 -0
- package/src/gestures/GestureHost.ts +765 -5
- package/src/gestures/GestureRecognizer.ts +28 -0
- package/src/gestures/PanGestureRecognizer.ts +8 -0
- package/src/gestures/PinchGestureRecognizer.ts +16 -1
- package/src/gestures/README.md +63 -0
- package/src/gestures/ScreenEdgePanGestureRecognizer.ts +7 -5
- package/src/gestures/nativeScroll.ts +49 -9
- package/src/gestures/recognizerInternals.ts +9 -2
- package/src/gestures/types.ts +12 -0
- package/src/gestures/wheelSegmenter.ts +114 -0
- package/src/motion/animator.ts +115 -19
- package/src/motion/uikit/index.ts +2 -1
- package/src/motion/uikit/slider.ts +105 -0
- package/src/motion/uikit/springs.ts +37 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BottomSheetPanel.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheetPanel.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA+B5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAQvB,QAAA,MAAM,cAAc;;;;CAIV,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAC5D,YAAY,EAAC,oBAAoB,EAAC,CAAC;AA4CnC,eAAO,MAAM,2BAA2B,2DACkB,CAAC;AAsM3D,MAAM,MAAM,sBAAsB,GAChC,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,GACjC;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAC;AAEtB,UAAU,qBAAsB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,KAAK,EAAE,qBAAqB,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAC5C,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACjD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC7D;AA2HD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,eAAe,EACf,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,cAAsB,EACtB,cAAc,EACd,eAAe,EACf,qBAA4B,EAC5B,kBAA0B,EAC1B,SAAS,EACT,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,GAAG,KAAK,EACT,EAAE,qBAAqB,+
|
|
1
|
+
{"version":3,"file":"BottomSheetPanel.d.ts","sourceRoot":"","sources":["../../src/BottomSheet/BottomSheetPanel.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AA+B5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,eAAe,CAAC;AAQvB,QAAA,MAAM,cAAc;;;;CAIV,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAC5D,YAAY,EAAC,oBAAoB,EAAC,CAAC;AA4CnC,eAAO,MAAM,2BAA2B,2DACkB,CAAC;AAsM3D,MAAM,MAAM,sBAAsB,GAChC,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,qBAAqB,GAC7B;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC,GAChB;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAC,GACjC;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC;CACzB,GACD;IAAC,IAAI,EAAE,SAAS,CAAA;CAAC,CAAC;AAEtB,UAAU,qBAAsB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAC/D,+CAA+C;IAC/C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,KAAK,EAAE,qBAAqB,CAAC;IAC7B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;IAC5C,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACjD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gFAAgF;IAChF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAC;IAC3D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACzD,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC7D;AA2HD,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,EAC/B,GAAG,EACH,KAAK,EACL,eAAe,EACf,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,cAAsB,EACtB,cAAc,EACd,eAAe,EACf,qBAA4B,EAC5B,kBAA0B,EAC1B,SAAS,EACT,cAAc,EACd,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,GAAG,KAAK,EACT,EAAE,qBAAqB,+BAyZvB;yBAjbe,gBAAgB"}
|
|
@@ -444,10 +444,23 @@ export function BottomSheetPanel({
|
|
|
444
444
|
if (motion == null) {
|
|
445
445
|
return;
|
|
446
446
|
}
|
|
447
|
-
|
|
447
|
+
// React can run this effect again for the same motion, for example when
|
|
448
|
+
// a Suspense boundary shows this content again. The passive effect below
|
|
449
|
+
// does not run again then, so the motion it started stays started, and a
|
|
450
|
+
// completion completes at once instead of waiting for that effect.
|
|
451
|
+
if (startedMotionRef.current !== motion) {
|
|
452
|
+
startedMotionRef.current = null;
|
|
453
|
+
}
|
|
448
454
|
pendingMotionCompleteRef.current = null;
|
|
455
|
+
const complete = () => {
|
|
456
|
+
if (startedMotionRef.current === motion) {
|
|
457
|
+
onMotionCompleteRef.current?.(motion);
|
|
458
|
+
} else {
|
|
459
|
+
pendingMotionCompleteRef.current = motion;
|
|
460
|
+
}
|
|
461
|
+
};
|
|
449
462
|
if (motion === 'entering' && reactivatedEntranceRef.current) {
|
|
450
|
-
|
|
463
|
+
complete();
|
|
451
464
|
return;
|
|
452
465
|
}
|
|
453
466
|
// What ends a motion: the fade is opacity, and the entrance, alignment and
|
|
@@ -456,13 +469,7 @@ export function BottomSheetPanel({
|
|
|
456
469
|
// opacity. The entrance still waits on its instant transform, so the
|
|
457
470
|
// retained sheet's fade starts at once and the two fades cross.
|
|
458
471
|
const crossFadeMotion = isCrossFade && motion === 'exiting';
|
|
459
|
-
return waitForTransition(elementRef.current, motion === 'fading' || crossFadeMotion ? 'opacity' : 'transform',
|
|
460
|
-
if (startedMotionRef.current === motion) {
|
|
461
|
-
onMotionCompleteRef.current?.(motion);
|
|
462
|
-
} else {
|
|
463
|
-
pendingMotionCompleteRef.current = motion;
|
|
464
|
-
}
|
|
465
|
-
});
|
|
472
|
+
return waitForTransition(elementRef.current, motion === 'fading' || crossFadeMotion ? 'opacity' : 'transform', complete);
|
|
466
473
|
}, [motion, isCrossFade]);
|
|
467
474
|
// The snap is transform-only; the layout height reconciles when it lands.
|
|
468
475
|
// waitForTransition — the same helper the motion states use — resolves that
|
|
@@ -27,6 +27,7 @@ import type { BaseProps } from '../BaseProps.js';
|
|
|
27
27
|
import type { SearchableItem, SearchSource } from '../Typeahead/types.js';
|
|
28
28
|
import { type UseChatPasteAsTokenReturn } from './useChatPasteAsToken.js';
|
|
29
29
|
import { type BadgeProps } from '../Badge/index.js';
|
|
30
|
+
import type { EnterKeyHint } from '../Field/textEntryTraits.js';
|
|
30
31
|
/** Imperative handle exposed by ChatComposerInput via handleRef */
|
|
31
32
|
export interface ChatComposerInputHandle {
|
|
32
33
|
/** Insert a token (badge chip) at the current cursor position */
|
|
@@ -180,6 +181,14 @@ export interface ChatComposerInputProps extends Omit<BaseProps<HTMLDivElement>,
|
|
|
180
181
|
* never submits while a composition is in progress.
|
|
181
182
|
*/
|
|
182
183
|
onKeyDown?: (event: KeyboardEvent<HTMLDivElement>) => void;
|
|
184
|
+
/**
|
|
185
|
+
* What the Return key of a touch keyboard says (the native
|
|
186
|
+
* `enterkeyhint`). Enter sends the message, so the key says so: iOS shows
|
|
187
|
+
* its Send key. When `onKeyDown` makes Enter insert a line break on touch
|
|
188
|
+
* keyboards, pass `'enter'` so the key shows Return again.
|
|
189
|
+
* @default 'send'
|
|
190
|
+
*/
|
|
191
|
+
enterKeyHint?: EnterKeyHint;
|
|
183
192
|
}
|
|
184
193
|
export declare function ChatComposerInput(props: ChatComposerInputProps): import("react").JSX.Element;
|
|
185
194
|
export declare namespace ChatComposerInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatComposerInput.d.ts","sourceRoot":"","sources":["../../src/Chat/ChatComposerInput.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAML,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,cAAc,EAEpB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,cAAc,EAAE,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAqBrE,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAQ,KAAK,UAAU,EAAC,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatComposerInput.d.ts","sourceRoot":"","sources":["../../src/Chat/ChatComposerInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -150,6 +150,7 @@ export function ChatComposerInput(props) {
|
|
|
150
150
|
onFiles,
|
|
151
151
|
onSubmit = composerCtx?.onSubmit,
|
|
152
152
|
onKeyDown: onKeyDownProp,
|
|
153
|
+
enterKeyHint = 'send',
|
|
153
154
|
xstyle,
|
|
154
155
|
className,
|
|
155
156
|
style,
|
|
@@ -638,6 +639,7 @@ export function ChatComposerInput(props) {
|
|
|
638
639
|
,
|
|
639
640
|
tabIndex: 0,
|
|
640
641
|
contentEditable: !isDisabled,
|
|
642
|
+
enterKeyHint: enterKeyHint,
|
|
641
643
|
suppressContentEditableWarning: true,
|
|
642
644
|
onInput: handleInput,
|
|
643
645
|
onClick: handleEditorClick,
|
package/dist/Chat/ChatMessage.js
CHANGED
|
@@ -67,7 +67,7 @@ const styles = {
|
|
|
67
67
|
$$css: true
|
|
68
68
|
},
|
|
69
69
|
avatarOffset: {
|
|
70
|
-
"--
|
|
70
|
+
"--_chat-avatar-offset": "xwbd0jv x1p8rq6b",
|
|
71
71
|
$$css: true
|
|
72
72
|
},
|
|
73
73
|
contentColumn: {
|
|
@@ -188,7 +188,7 @@ export function ChatMessage({
|
|
|
188
188
|
}), stylex.props(styles.avatarOffset, styles.root, rootAlignment, hasAvatar && rootGap, xstyle), className, styleProp),
|
|
189
189
|
children: [hasAvatar && /*#__PURE__*/_jsx("div", {
|
|
190
190
|
...{
|
|
191
|
-
className: "xjl7jj x2lah0s
|
|
191
|
+
className: "xjl7jj x2lah0s xb1t4hs"
|
|
192
192
|
},
|
|
193
193
|
children: avatar
|
|
194
194
|
}), /*#__PURE__*/_jsxs("div", {
|
|
@@ -2,15 +2,15 @@ import * as stylex from '@stylexjs/stylex';
|
|
|
2
2
|
/**
|
|
3
3
|
* Per-message values ChatMessage sets on its article for its own slots.
|
|
4
4
|
*
|
|
5
|
-
* `
|
|
6
|
-
* bubble in this message renders a name, else none. Each article sets
|
|
7
|
-
* its own `:has([data-chat-name])`, a parent-relative rule: a
|
|
8
|
-
* `:has(~ …)` in the global stylesheet makes WebKit re-check
|
|
9
|
-
* sibling on each insertion into any container, so filling one
|
|
10
|
-
* quadratically. A message nested in another sets its own value, so it
|
|
11
|
-
* inherits the outer message's.
|
|
5
|
+
* `--_chat-avatar-offset` is the avatar's top spacing: the name row's spacing
|
|
6
|
+
* when a bubble in this message renders a name, else none. Each article sets
|
|
7
|
+
* it from its own `:has([data-chat-name])`, a parent-relative rule: a
|
|
8
|
+
* sibling-relative `:has(~ …)` in the global stylesheet makes WebKit re-check
|
|
9
|
+
* every earlier sibling on each insertion into any container, so filling one
|
|
10
|
+
* grows quadratically. A message nested in another sets its own value, so it
|
|
11
|
+
* never inherits the outer message's.
|
|
12
12
|
*/
|
|
13
13
|
export declare const chatMessageVars: stylex.VarGroup<Readonly<{
|
|
14
|
-
|
|
14
|
+
'--_chat-avatar-offset': string;
|
|
15
15
|
}>, symbol>;
|
|
16
16
|
//# sourceMappingURL=chatMessage.vars.stylex.d.ts.map
|
|
@@ -5,15 +5,15 @@ import * as stylex from '@stylexjs/stylex';
|
|
|
5
5
|
/**
|
|
6
6
|
* Per-message values ChatMessage sets on its article for its own slots.
|
|
7
7
|
*
|
|
8
|
-
* `
|
|
9
|
-
* bubble in this message renders a name, else none. Each article sets
|
|
10
|
-
* its own `:has([data-chat-name])`, a parent-relative rule: a
|
|
11
|
-
* `:has(~ …)` in the global stylesheet makes WebKit re-check
|
|
12
|
-
* sibling on each insertion into any container, so filling one
|
|
13
|
-
* quadratically. A message nested in another sets its own value, so it
|
|
14
|
-
* inherits the outer message's.
|
|
8
|
+
* `--_chat-avatar-offset` is the avatar's top spacing: the name row's spacing
|
|
9
|
+
* when a bubble in this message renders a name, else none. Each article sets
|
|
10
|
+
* it from its own `:has([data-chat-name])`, a parent-relative rule: a
|
|
11
|
+
* sibling-relative `:has(~ …)` in the global stylesheet makes WebKit re-check
|
|
12
|
+
* every earlier sibling on each insertion into any container, so filling one
|
|
13
|
+
* grows quadratically. A message nested in another sets its own value, so it
|
|
14
|
+
* never inherits the outer message's.
|
|
15
15
|
*/
|
|
16
16
|
export const chatMessageVars = {
|
|
17
|
-
|
|
17
|
+
"--_chat-avatar-offset": "var(--_chat-avatar-offset)",
|
|
18
18
|
__varGroupHash__: "x1v1du0q"
|
|
19
19
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../src/Drawer/Drawer.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAgC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIpE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAQ5C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../src/Drawer/Drawer.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,OAAO,EAAgC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIpE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAQ5C,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AAkB7C,OAAO,KAAK,EAAC,WAAW,EAAe,MAAM,WAAW,CAAC;AA6MzD,MAAM,WAAW,WAAY,SAAQ,SAAS,CAAC,iBAAiB,CAAC;IAC/D,iDAAiD;IACjD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAEnC;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;OAMG;IACH,YAAY,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAExC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAEvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExB;;;;;OAKG;IACH,YAAY,CAAC,EAAE;QACb;;;;;;WAMG;QACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;KAC/B,CAAC;IAEF;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IAExB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IAEtB;;;OAGG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,MAAM,CAAC,EACrB,MAAM,EAAE,UAAU,EAClB,YAAY,EACZ,IAAY,EACZ,KAAW,EACX,YAAY,EACZ,KAAK,EACL,QAAe,EACf,OAAgB,EAChB,OAAO,EACP,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,aAAa,EACxB,GAAG,EACH,GAAG,KAAK,EACT,EAAE,WAAW,+BAyMb;yBA3Ne,MAAM"}
|
package/dist/Drawer/Drawer.js
CHANGED
|
@@ -69,6 +69,7 @@ import { LayerDepthProvider, useLayerDismissal } from "../Layer/index.js";
|
|
|
69
69
|
import { layerTextReset } from "../Layer/layerTextReset.stylex.js";
|
|
70
70
|
import { layerStructureReset } from "../Layer/layerStructureReset.stylex.js";
|
|
71
71
|
import { LayerContentBoundary } from "../Layer/layerScopedContext.js";
|
|
72
|
+
import { useModalOutlet } from "../Layer/modalOutlet.js";
|
|
72
73
|
import { layerClickBoundary } from "../Layer/layerClickBoundary.js";
|
|
73
74
|
import { ModalAnnounceProvider } from "../hooks/ModalAnnounceProvider.js";
|
|
74
75
|
import { composeEventHandlers, mergeProps, themeProps } from "../utils/index.js";
|
|
@@ -302,6 +303,11 @@ export function Drawer({
|
|
|
302
303
|
isModal: hasScrim,
|
|
303
304
|
setIsRendered
|
|
304
305
|
});
|
|
306
|
+
|
|
307
|
+
// Toasts outside an open modal are inert, so the open drawer hosts them.
|
|
308
|
+
// It releases them when its exit starts.
|
|
309
|
+
// showModal() must run first, so keep this call after useDrawerDialogPresence.
|
|
310
|
+
useModalOutlet(dialogRef, isOpen && hasScrim);
|
|
305
311
|
const handleDismiss = useCallback(() => {
|
|
306
312
|
onOpenChange(false);
|
|
307
313
|
}, [onOpenChange]);
|
|
@@ -1,10 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @file useMenuOverflow.ts
|
|
3
|
-
* @input Menu element ref, rendered content, and
|
|
3
|
+
* @input Menu element ref, rendered content, open state, and optionally the
|
|
4
|
+
* overflow its owner expects from the content alone
|
|
4
5
|
* @output Returns whether the open menu overflows its block-size constraint
|
|
5
6
|
* @position Shared responsive helper for DropdownMenu and DropdownMenuSubMenu
|
|
6
7
|
*/
|
|
7
8
|
import { type ReactNode, type RefObject } from 'react';
|
|
8
|
-
/**
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Detect block-axis overflow without making a fitting menu a scroll container.
|
|
11
|
+
*
|
|
12
|
+
* `expectedOverflow` is the answer the owner can give before any measure (a
|
|
13
|
+
* long option list cannot fit). Until a measure of the same `content` says
|
|
14
|
+
* otherwise, it is the result, so the first open already renders the right
|
|
15
|
+
* class: a class that flips after the open measure restyles the whole list
|
|
16
|
+
* a second time. A measure still runs on every open and corrects a wrong
|
|
17
|
+
* guess.
|
|
18
|
+
*/
|
|
19
|
+
export declare function useMenuOverflow(menuRef: RefObject<HTMLElement | null>, content: ReactNode, isOpen: boolean, expectedOverflow?: boolean): boolean;
|
|
10
20
|
//# sourceMappingURL=useMenuOverflow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMenuOverflow.d.ts","sourceRoot":"","sources":["../../src/DropdownMenu/useMenuOverflow.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"useMenuOverflow.d.ts","sourceRoot":"","sources":["../../src/DropdownMenu/useMenuOverflow.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EACtC,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,OAAO,EACf,gBAAgB,CAAC,EAAE,OAAO,GACzB,OAAO,CA4ET"}
|
|
@@ -4,24 +4,44 @@
|
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* @file useMenuOverflow.ts
|
|
7
|
-
* @input Menu element ref, rendered content, and
|
|
7
|
+
* @input Menu element ref, rendered content, open state, and optionally the
|
|
8
|
+
* overflow its owner expects from the content alone
|
|
8
9
|
* @output Returns whether the open menu overflows its block-size constraint
|
|
9
10
|
* @position Shared responsive helper for DropdownMenu and DropdownMenuSubMenu
|
|
10
11
|
*/
|
|
11
|
-
import { useCallback, useState } from 'react';
|
|
12
|
+
import { useCallback, useRef, useState } from 'react';
|
|
12
13
|
import { useIsomorphicLayoutEffect } from "../hooks/useIsomorphicLayoutEffect.js";
|
|
13
14
|
|
|
14
|
-
/**
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Detect block-axis overflow without making a fitting menu a scroll container.
|
|
17
|
+
*
|
|
18
|
+
* `expectedOverflow` is the answer the owner can give before any measure (a
|
|
19
|
+
* long option list cannot fit). Until a measure of the same `content` says
|
|
20
|
+
* otherwise, it is the result, so the first open already renders the right
|
|
21
|
+
* class: a class that flips after the open measure restyles the whole list
|
|
22
|
+
* a second time. A measure still runs on every open and corrects a wrong
|
|
23
|
+
* guess.
|
|
24
|
+
*/
|
|
25
|
+
export function useMenuOverflow(menuRef, content, isOpen, expectedOverflow) {
|
|
26
|
+
// The content each measure stands for, kept only for an owner that gives
|
|
27
|
+
// an expected answer (a caller whose content is a new element on every
|
|
28
|
+
// render compares nothing); set before the measuring effects run.
|
|
29
|
+
const contentRef = useRef(null);
|
|
30
|
+
useIsomorphicLayoutEffect(() => {
|
|
31
|
+
contentRef.current = expectedOverflow === undefined ? null : content;
|
|
32
|
+
});
|
|
33
|
+
const [measured, setMeasured] = useState(null);
|
|
17
34
|
const measureOverflow = useCallback(() => {
|
|
18
35
|
const menu = menuRef.current;
|
|
19
36
|
if (!menu) {
|
|
20
37
|
return;
|
|
21
38
|
}
|
|
22
|
-
const
|
|
39
|
+
const hasOverflow = menu.scrollHeight > menu.clientHeight + 1;
|
|
23
40
|
// eslint-disable-next-line @eslint-react/set-state-in-effect -- DOM overflow measurement controls whether this menu becomes a scroll container
|
|
24
|
-
|
|
41
|
+
setMeasured(current => current != null && current.hasOverflow === hasOverflow && Object.is(current.content, contentRef.current) ? current : {
|
|
42
|
+
content: contentRef.current,
|
|
43
|
+
hasOverflow
|
|
44
|
+
});
|
|
25
45
|
}, [menuRef]);
|
|
26
46
|
useIsomorphicLayoutEffect(() => {
|
|
27
47
|
if (!isOpen) {
|
|
@@ -56,5 +76,8 @@ export function useMenuOverflow(menuRef, content, isOpen) {
|
|
|
56
76
|
measureOverflow();
|
|
57
77
|
}
|
|
58
78
|
}, [content, isOpen, measureOverflow]);
|
|
59
|
-
|
|
79
|
+
if (expectedOverflow === undefined) {
|
|
80
|
+
return measured?.hasOverflow ?? false;
|
|
81
|
+
}
|
|
82
|
+
return measured != null && Object.is(measured.content, content) ? measured.hasOverflow : expectedOverflow;
|
|
60
83
|
}
|
package/dist/Link/Link.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link/Link.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAc5C,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../src/Link/Link.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAc5C,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,UAAU,EACV,WAAW,EACZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,SAAS,CAAC;AAuH/C,MAAM,WAAW,SAAU,SAAQ,SAAS,CAC1C,iBAAiB,GAAG,iBAAiB,CACtC;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACvD;;;;;OAKG;IACH,EAAE,CAAC,EAAE,iBAAiB,CAAC;IACvB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;OAEG;IACH,cAAc,CAAC,EAAE,KAAK,CAAC,2BAA2B,CAAC;IACnD;;;OAGG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC,CAAC;IACzE;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,EACnB,EAAE,EACF,KAAK,EACL,IAAI,EACJ,YAAoB,EACpB,UAAkB,EAClB,cAAsB,EACtB,WAAW,EAAE,oBAAoB,EACjC,MAAM,EAAE,eAAe,EACvB,OAAO,EACP,OAAO,EACP,YAAoB,EACpB,IAAa,EACb,IAAI,EACJ,MAAM,EACN,KAAgB,EAChB,OAAkB,EAClB,QAAY,EACZ,QAAQ,EACR,GAAG,EAAE,YAAY,EACjB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,SAAS,+BA8JX;yBAvLe,IAAI"}
|
package/dist/Link/Link.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../src/Selector/Selector.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,EAUZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,OAAO,EAAuB,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAC;AAE5D,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../src/Selector/Selector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,8 @@ import { useIndicator } from "../Indicator/index.js";
|
|
|
27
27
|
import { Field, inputStatusBorderStyles, inputStatusHoverShadowStyles, inputWrapperStyles } from "../Field/index.js";
|
|
28
28
|
import { Divider } from "../Divider/index.js";
|
|
29
29
|
import { layerAnimations } from "../Layer/layerAnimations.stylex.js";
|
|
30
|
+
import "../motion/reducedMotion.stylex.js";
|
|
31
|
+
import { reducedMotionFadeConsts } from "../motion/reducedMotion.stylex.js";
|
|
30
32
|
import { useKeepLayerOpenProps } from "../Layer/useLayer.js";
|
|
31
33
|
import { InternalInputClearButton } from "../Field/InputClearButton.js";
|
|
32
34
|
import { Spinner } from "../Spinner/index.js";
|
|
@@ -67,6 +69,14 @@ import { registerEnglishFallback, useComponentTranslator } from "../i18n/useComp
|
|
|
67
69
|
import english from "../i18n/generated-english/Selector/Selector.generated.js";
|
|
68
70
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
69
71
|
registerEnglishFallback(english);
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* A guess, confirmed by the open measure: more options than this overflow
|
|
75
|
+
* the popover listbox's 300 px block size even at 24 px rows, under the
|
|
76
|
+
* smallest default row (28 px). A wrong guess (a theme with shorter rows, a
|
|
77
|
+
* taller bottom sheet) costs only the measure's correction.
|
|
78
|
+
*/
|
|
79
|
+
const MOST_ROWS_THAT_FIT = 12;
|
|
70
80
|
const styles = {
|
|
71
81
|
triggerContainer: {
|
|
72
82
|
kVAEAm: "x1n2onr6",
|
|
@@ -750,7 +760,9 @@ export function Selector(props) {
|
|
|
750
760
|
return match == null ? -1 : Number(match[1]);
|
|
751
761
|
}, []);
|
|
752
762
|
// Re-measured when the option set changes; the count is the dependency.
|
|
753
|
-
|
|
763
|
+
// A list longer than the most rows that can fit cannot fit, so it starts
|
|
764
|
+
// as a scroll container and the open measure only confirms it.
|
|
765
|
+
const listboxHasOverflow = useMenuOverflow(listboxRef, filteredItems.length, surface.isOpen, filteredItems.length > MOST_ROWS_THAT_FIT);
|
|
754
766
|
const listboxPress = useMenuPress({
|
|
755
767
|
menuRef: listboxRef,
|
|
756
768
|
itemSelector: '[role="option"]:not([aria-disabled="true"])',
|
|
@@ -1083,16 +1095,16 @@ export function Selector(props) {
|
|
|
1083
1095
|
...listboxPress.menuProps,
|
|
1084
1096
|
...{
|
|
1085
1097
|
0: {
|
|
1086
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr
|
|
1098
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261"
|
|
1087
1099
|
},
|
|
1088
1100
|
2: {
|
|
1089
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr
|
|
1101
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e"
|
|
1090
1102
|
},
|
|
1091
1103
|
1: {
|
|
1092
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr
|
|
1104
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261 x2hg6jq"
|
|
1093
1105
|
},
|
|
1094
1106
|
3: {
|
|
1095
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr
|
|
1107
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e x2hg6jq"
|
|
1096
1108
|
}
|
|
1097
1109
|
}[!!listboxHasOverflow << 1 | !!(surface.activePresentation === 'popover' && variant === 'input') << 0],
|
|
1098
1110
|
children: renderOptions()
|
|
@@ -1114,28 +1126,28 @@ export function Selector(props) {
|
|
|
1114
1126
|
onKeyDown: surface.activePresentation === 'bottom-sheet' ? handleTriggerKeyDown : undefined,
|
|
1115
1127
|
...{
|
|
1116
1128
|
0: {
|
|
1117
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr
|
|
1129
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261"
|
|
1118
1130
|
},
|
|
1119
1131
|
4: {
|
|
1120
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr
|
|
1132
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e"
|
|
1121
1133
|
},
|
|
1122
1134
|
2: {
|
|
1123
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr
|
|
1135
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261 x2hg6jq"
|
|
1124
1136
|
},
|
|
1125
1137
|
6: {
|
|
1126
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr
|
|
1138
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1hc1fzr x19991ni xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e x2hg6jq"
|
|
1127
1139
|
},
|
|
1128
1140
|
1: {
|
|
1129
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj x1j4r261 xg01cxk
|
|
1141
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261 xg01cxk x13b0p5u"
|
|
1130
1142
|
},
|
|
1131
1143
|
5: {
|
|
1132
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj xge0x1e xish69e xg01cxk
|
|
1144
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x7a5moj xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e xg01cxk x13b0p5u"
|
|
1133
1145
|
},
|
|
1134
1146
|
3: {
|
|
1135
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k x1j4r261 x2hg6jq xg01cxk
|
|
1147
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas x1j4r261 x2hg6jq xg01cxk x13b0p5u"
|
|
1136
1148
|
},
|
|
1137
1149
|
7: {
|
|
1138
|
-
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k xge0x1e xish69e x2hg6jq xg01cxk
|
|
1150
|
+
className: "x9f619 xuyqlj2 x1odjw0f x1a2a7pz xu0wf1k xuedmi6 x7jh41u xuh6ohu xwji4o3 x15tucas xge0x1e xish69e x2hg6jq xg01cxk x13b0p5u"
|
|
1139
1151
|
}
|
|
1140
1152
|
}[!!listboxHasOverflow << 2 | !!(surface.activePresentation === 'popover' && variant === 'input') << 1 | !!(surface.activePresentation === 'popover' && !isPositioned) << 0],
|
|
1141
1153
|
children: renderOptions()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../src/Slider/Slider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../src/Slider/Slider.tsx"],"names":[],"mappings":"AA+CA,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAMhD,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAwB9C,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAC3C,mBAAmB,CAAC,cAAc,CAAC,EACnC,UAAU,CACX;IACC,mDAAmD;IACnD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,8FAA8F;IAC9F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uCAAuC;IACvC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,uEAAuE;IACvE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,6DAA6D;IAC7D,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,8DAA8D;IAC9D,KAAK,CAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,iEAAiE;IACjE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACvD,8CAA8C;IAC9C,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAC7C,iEAAiE;IACjE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAChD,8CAA8C;IAC9C,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAuf/D;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,EAAC,GAAG,EAAE,GAAG,KAAK,EAAC,EAAE,WAAW,+BAwmClD;yBAxmCe,MAAM"}
|