@orioncactuscorp/ui 1.7.0 → 1.9.0

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.
Files changed (44) hide show
  1. package/dist/components/Accordion/Accordion.css +1 -1
  2. package/dist/components/Alert/Alert.js +1 -1
  3. package/dist/components/Button/Button.css +1 -1
  4. package/dist/components/Checkbox/Checkbox.css +1 -1
  5. package/dist/components/Modal/Modal.css +1 -1
  6. package/dist/components/Modal/Modal.js +671 -517
  7. package/dist/components/Modal/bottomSheetGeometry.js +88 -0
  8. package/dist/components/Modal/modalScrollArbitration.js +8 -7
  9. package/dist/components/Modal/snapPoints.js +9 -8
  10. package/dist/components/Modal/useModalContentBlockTransition.js +64 -0
  11. package/dist/components/Modal/useModalDrag.js +917 -788
  12. package/dist/components/Radio/Radio.css +1 -1
  13. package/dist/components/ScrollArea/ScrollArea.css +1 -1
  14. package/dist/components/ScrollArea/ScrollArea.js +250 -223
  15. package/dist/components/ScrollArea/useScrollAreaGeometryStabilizer.js +36 -0
  16. package/dist/components/TextButton/TextButton.css +1 -1
  17. package/dist/components/TextButton/TextButton.module.scss.js +8 -6
  18. package/dist/components/internal/DisclosureIndicator.js +23 -23
  19. package/dist/styles.css +7 -7
  20. package/dist/ui/src/components/Modal/Modal.d.ts +2 -2
  21. package/dist/ui/src/components/Modal/Modal.d.ts.map +1 -1
  22. package/dist/ui/src/components/Modal/bottomSheetGeometry.d.ts +36 -0
  23. package/dist/ui/src/components/Modal/bottomSheetGeometry.d.ts.map +1 -0
  24. package/dist/ui/src/components/Modal/index.d.ts +1 -1
  25. package/dist/ui/src/components/Modal/index.d.ts.map +1 -1
  26. package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts +2 -1
  27. package/dist/ui/src/components/Modal/modalScrollArbitration.d.ts.map +1 -1
  28. package/dist/ui/src/components/Modal/snapPoints.d.ts +1 -0
  29. package/dist/ui/src/components/Modal/snapPoints.d.ts.map +1 -1
  30. package/dist/ui/src/components/Modal/types.d.ts +11 -1
  31. package/dist/ui/src/components/Modal/types.d.ts.map +1 -1
  32. package/dist/ui/src/components/Modal/useModalContentBlockTransition.d.ts +5 -0
  33. package/dist/ui/src/components/Modal/useModalContentBlockTransition.d.ts.map +1 -0
  34. package/dist/ui/src/components/Modal/useModalDrag.d.ts +5 -1
  35. package/dist/ui/src/components/Modal/useModalDrag.d.ts.map +1 -1
  36. package/dist/ui/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
  37. package/dist/ui/src/components/ScrollArea/useScrollAreaGeometryStabilizer.d.ts +11 -0
  38. package/dist/ui/src/components/ScrollArea/useScrollAreaGeometryStabilizer.d.ts.map +1 -0
  39. package/dist/ui/src/index.d.ts +1 -1
  40. package/dist/ui/src/index.d.ts.map +1 -1
  41. package/package.json +2 -1
  42. package/src/scss/mixins/_element.scss +161 -14
  43. package/src/scss/mixins/_element.test.ts +94 -5
  44. package/src/scss/mixins/_icon.scss +27 -0
@@ -1,10 +1,10 @@
1
1
  import { ModalBodyProps, ModalCloseProps, ModalContentProps, ModalFooterProps, ModalHeaderProps, ModalNavigationSectionProps, ModalRootProps, ModalTriggerProps } from './types';
2
2
  export declare function ModalRoot({ children, open, defaultOpen, modal, onOpenChange, canCloseAttempt: canCloseAttemptProp, onCloseAttempt, presentationState: presentationStateProp, defaultPresentationState, onPresentationStateChange, disablePointerDismissal, navigationDepth, dismissBehavior, }: ModalRootProps): import("react/jsx-runtime").JSX.Element;
3
3
  export declare function ModalTrigger({ className, children, render, nativeButton, }: ModalTriggerProps): import("react/jsx-runtime").JSX.Element;
4
- export declare function ModalContent({ className, children, variant, size, resize, backdrop, drag, peekable, snapPoints, defaultSnapPoint, snapPositions, defaultSnapPosition, initialFocus, peekHeight, closeThreshold, scrollLockTimeout, container, style, ...props }: ModalContentProps): import("react/jsx-runtime").JSX.Element;
4
+ export declare function ModalContent({ className, children, variant, size, resize, contentTransition, backdrop, drag, peekable, snapPoints, defaultSnapPoint, snapPositions, defaultSnapPosition, initialFocus, peekHeight, closeThreshold, scrollLockTimeout, container, style, ...props }: ModalContentProps): import("react/jsx-runtime").JSX.Element;
5
5
  export declare function ModalHeader({ className, title, children, leadingContent, trailingContent, closeLabel, closeButton, handle, ref, ...props }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
6
6
  export declare function ModalNavigationSection({ className, title, children, expanded, defaultExpanded, onExpandedChange, disabled, forceMount, handle, headingLevel, indicator, titleAsDialogTitle, navigationProps, panelProps, panelContentProps, ref, style, ...props }: ModalNavigationSectionProps): import("react/jsx-runtime").JSX.Element;
7
- export declare function ModalBody({ className, children, containerClassName, containerProps, ref, ...props }: ModalBodyProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function ModalBody({ className, children, layout, containerClassName, containerProps, ref, ...props }: ModalBodyProps): import("react/jsx-runtime").JSX.Element;
8
8
  export declare function ModalFooter({ className, children, background, ref, ...props }: ModalFooterProps): import("react/jsx-runtime").JSX.Element;
9
9
  export declare function ModalClose({ className, children, label, size, disabled, onClick, ...props }: ModalCloseProps): import("react/jsx-runtime").JSX.Element;
10
10
  declare const Modal: typeof ModalRoot & {
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/Modal.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EACV,cAAc,EAId,eAAe,EACf,iBAAiB,EAGjB,gBAAgB,EAChB,gBAAgB,EAEhB,2BAA2B,EAE3B,cAAc,EAEd,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAsMjB,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,KAAY,EACZ,YAAY,EACZ,eAAe,EAAE,mBAAmB,EACpC,cAAc,EACd,iBAAiB,EAAE,qBAAqB,EACxC,wBAAoC,EACpC,yBAAyB,EACzB,uBAAuB,EACvB,eAAmB,EACnB,eAAe,GAChB,EAAE,cAAc,2CAkNhB;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAc,EACd,QAAQ,EACR,MAAM,EACN,YAAY,GACb,EAAE,iBAAiB,2CAsBnB;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAc,EACd,QAAQ,EACR,OAAoB,EACpB,IAAe,EACf,MAAc,EACd,QAAiB,EACjB,IAAgB,EAChB,QAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAgVnB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAc,EACd,KAAK,EACL,QAAQ,EACR,cAAc,EACd,eAAe,EACf,UAAiB,EACjB,WAAkB,EAClB,MAAa,EACb,GAAG,EACH,GAAG,KAAK,EACT,EAAE,gBAAgB,2CAqDlB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAc,EACd,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,eAAsB,EACtB,gBAAgB,EAChB,QAAgB,EAChB,UAAiB,EACjB,MAAa,EACb,YAAgB,EAChB,SAAS,EACT,kBAAyB,EACzB,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,GAAG,EACH,KAAK,EACL,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAmK7B;AAED,wBAAgB,SAAS,CAAC,EACxB,SAAc,EACd,QAAQ,EACR,kBAAuB,EACvB,cAAc,EACd,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,2CA+DhB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAc,EACd,QAAQ,EACR,UAAmB,EACnB,GAAG,EACH,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA8BlB;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAc,EACd,QAA6B,EAC7B,KAAY,EACZ,IAAS,EACT,QAAQ,EACR,OAAO,EACP,GAAG,KAAK,EACT,EAAE,eAAe,2CAsBjB;AAED,QAAA,MAAM,KAAK;;;;;;;;;CAST,CAAC;AAEH,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/Modal.tsx"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EACV,cAAc,EAId,eAAe,EAEf,iBAAiB,EAGjB,gBAAgB,EAChB,gBAAgB,EAEhB,2BAA2B,EAG3B,cAAc,EAEd,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAuSjB,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,IAAI,EACJ,WAAW,EACX,KAAY,EACZ,YAAY,EACZ,eAAe,EAAE,mBAAmB,EACpC,cAAc,EACd,iBAAiB,EAAE,qBAAqB,EACxC,wBAAoC,EACpC,yBAAyB,EACzB,uBAAuB,EACvB,eAAmB,EACnB,eAAe,GAChB,EAAE,cAAc,2CAkNhB;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAc,EACd,QAAQ,EACR,MAAM,EACN,YAAY,GACb,EAAE,iBAAiB,2CAsBnB;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAc,EACd,QAAQ,EACR,OAAoB,EACpB,IAAe,EACf,MAAkB,EAClB,iBAA0B,EAC1B,QAAiB,EACjB,IAAgB,EAChB,QAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAoiBnB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAc,EACd,KAAK,EACL,QAAQ,EACR,cAAc,EACd,eAAe,EACf,UAAiB,EACjB,WAAkB,EAClB,MAAa,EACb,GAAG,EACH,GAAG,KAAK,EACT,EAAE,gBAAgB,2CAqDlB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAc,EACd,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,eAAsB,EACtB,gBAAgB,EAChB,QAAgB,EAChB,UAAiB,EACjB,MAAa,EACb,YAAgB,EAChB,SAAS,EACT,kBAAyB,EACzB,eAAe,EACf,UAAU,EACV,iBAAiB,EACjB,GAAG,EACH,KAAK,EACL,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAqK7B;AAED,wBAAgB,SAAS,CAAC,EACxB,SAAc,EACd,QAAQ,EACR,MAAkB,EAClB,kBAAuB,EACvB,cAAc,EACd,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,2CAgEhB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAc,EACd,QAAQ,EACR,UAAmB,EACnB,GAAG,EACH,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA8BlB;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAc,EACd,QAA6B,EAC7B,KAAY,EACZ,IAAS,EACT,QAAQ,EACR,OAAO,EACP,GAAG,KAAK,EACT,EAAE,eAAe,2CAsBjB;AAED,QAAA,MAAM,KAAK;;;;;;;;;CAST,CAAC;AAEH,eAAe,KAAK,CAAC"}
@@ -0,0 +1,36 @@
1
+ export type BottomSheetRestState = {
2
+ kind: 'default-snap';
3
+ } | {
4
+ index: number;
5
+ kind: 'snap';
6
+ } | {
7
+ kind: 'expanded';
8
+ } | {
9
+ kind: 'custom';
10
+ };
11
+ export interface BottomSheetRestStateOptions {
12
+ defaultTranslate: number;
13
+ sheetHeight: number;
14
+ snapHeights: readonly number[];
15
+ translate: number;
16
+ }
17
+ export interface ResizedBottomSheetTranslateOptions {
18
+ currentTranslate: number;
19
+ fallbackTranslate: number;
20
+ restState: BottomSheetRestState;
21
+ previousDefaultTranslate: number;
22
+ previousSheetHeight: number;
23
+ previousSnapHeights: readonly number[];
24
+ targetSheetHeight: number;
25
+ targetDefaultTranslate: number;
26
+ targetSnapHeights: readonly number[];
27
+ }
28
+ export interface ContentSizedBottomSheetHeightOptions {
29
+ contentHeight: number;
30
+ maxHeight?: number;
31
+ snapHeight?: number;
32
+ }
33
+ export declare function resolveContentSizedBottomSheetHeight({ contentHeight, maxHeight, snapHeight, }: ContentSizedBottomSheetHeightOptions): number;
34
+ export declare function resolveBottomSheetRestState({ defaultTranslate, sheetHeight, snapHeights, translate, }: BottomSheetRestStateOptions): BottomSheetRestState;
35
+ export declare function resolveResizedBottomSheetTranslate({ currentTranslate, fallbackTranslate, restState, previousDefaultTranslate, previousSheetHeight, previousSnapHeights, targetSheetHeight, targetDefaultTranslate, targetSnapHeights, }: ResizedBottomSheetTranslateOptions): number;
36
+ //# sourceMappingURL=bottomSheetGeometry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bottomSheetGeometry.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/bottomSheetGeometry.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB,MAAM,WAAW,2BAA2B;IAC1C,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kCAAkC;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,oBAAoB,CAAC;IAChC,wBAAwB,EAAE,MAAM,CAAC;IACjC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,oCAAoC;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAuBD,wBAAgB,oCAAoC,CAAC,EACnD,aAAa,EACb,SAAS,EACT,UAAU,GACX,EAAE,oCAAoC,UAOtC;AAED,wBAAgB,2BAA2B,CAAC,EAC1C,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,SAAS,GACV,EAAE,2BAA2B,GAAG,oBAAoB,CAkCpD;AAED,wBAAgB,kCAAkC,CAAC,EACjD,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,GAClB,EAAE,kCAAkC,UAyDpC"}
@@ -1,3 +1,3 @@
1
1
  export { default, ModalBody, ModalClose, ModalContent, ModalFooter, ModalHeader, ModalNavigationSection, ModalRoot, ModalTrigger, } from './Modal';
2
- export type { ModalBackdrop, ModalBodyProps, ModalCloseAttemptDetails, ModalCloseAttemptReason, ModalCloseProps, ModalContentProps, ModalDismissBehavior, ModalDismissBehaviorValue, ModalDrag, ModalFooterProps, ModalHeaderProps, ModalInitialFocus, ModalNavigationHeadingLevel, ModalNavigationSectionProps, ModalPlacement, ModalPresentationState, ModalResize, ModalRootProps, ModalSize, ModalSnapPoint, ModalSnapPosition, ModalTriggerProps, ModalVariant, } from './types';
2
+ export type { ModalBackdrop, ModalBodyLayout, ModalBodyProps, ModalCloseAttemptDetails, ModalCloseAttemptReason, ModalCloseProps, ModalContentTransition, ModalContentProps, ModalDismissBehavior, ModalDismissBehaviorValue, ModalDrag, ModalFooterProps, ModalHeaderProps, ModalInitialFocus, ModalNavigationHeadingLevel, ModalNavigationSectionProps, ModalPlacement, ModalPresentationState, ModalResize, ModalRootProps, ModalSize, ModalSnapPoint, ModalSnapPosition, ModalTriggerProps, ModalVariant, } from './types';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,2BAA2B,EAC3B,2BAA2B,EAC3B,cAAc,EACd,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,sBAAsB,EACtB,SAAS,EACT,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,aAAa,EACb,eAAe,EACf,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,2BAA2B,EAC3B,2BAA2B,EAC3B,cAAc,EACd,sBAAsB,EACtB,WAAW,EACX,cAAc,EACd,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC"}
@@ -20,11 +20,12 @@ export declare function shouldLockModalBodyTouchScroll({ target, chrome, bodyNod
20
20
  chrome: boolean;
21
21
  bodyNode: HTMLElement | null;
22
22
  }): boolean;
23
- export declare function getBottomTouchDragDecision({ target, deltaY, chrome, bodyNode, }: {
23
+ export declare function getBottomTouchDragDecision({ target, deltaY, chrome, bodyNode, canExpand, }: {
24
24
  target: EventTarget | null;
25
25
  deltaY: number;
26
26
  chrome: boolean;
27
27
  bodyNode: HTMLElement | null;
28
+ canExpand?: boolean;
28
29
  }): TouchDragDecision;
29
30
  export declare function getPopupTouchDragDecision({ target, bodyNode, }: {
30
31
  target: EventTarget | null;
@@ -1 +1 @@
1
- {"version":3,"file":"modalScrollArbitration.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/modalScrollArbitration.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC,CAAC;AA6BH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,IAAI,IAAI,WAAW,CAIrB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,WAIrD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,WAMxD;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,gBAAgB,CAMlB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,GAAG,IAAI,EACtB,QAAQ,EAAE,WAAW,GAAG,IAAI,sBAY7B;AAED,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,WAAW,GAAG,IAAI,EACxB,MAAM,EAAE,OAAO,QAUhB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,WA0BhE;AA+CD,wBAAgB,8BAA8B,CAAC,EAC7C,MAAM,EACN,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,WAWA;AAED,wBAAgB,0BAA0B,CAAC,EACzC,MAAM,EACN,MAAM,EACN,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,GAAG,iBAAiB,CAyBpB;AAED,wBAAgB,yBAAyB,CAAC,EACxC,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,GAAG,iBAAiB,CAUpB"}
1
+ {"version":3,"file":"modalScrollArbitration.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/modalScrollArbitration.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC,CAAC;AA6BH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,IAAI,IAAI,WAAW,CAIrB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,WAIrD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,WAMxD;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,WAAW,GAAG,IAAI,GACvB,gBAAgB,CAMlB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,GAAG,IAAI,EACtB,QAAQ,EAAE,WAAW,GAAG,IAAI,sBAY7B;AAED,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,WAAW,GAAG,IAAI,EACxB,MAAM,EAAE,OAAO,QAUhB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,WA0BhE;AA+CD,wBAAgB,8BAA8B,CAAC,EAC7C,MAAM,EACN,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,WAWA;AAED,wBAAgB,0BAA0B,CAAC,EACzC,MAAM,EACN,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,iBAAiB,CA6BpB;AAED,wBAAgB,yBAAyB,CAAC,EACxC,MAAM,EACN,QAAQ,GACT,EAAE;IACD,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;CAC9B,GAAG,iBAAiB,CAUpB"}
@@ -16,6 +16,7 @@ export declare function resolveModalSnapMetrics({ snapPoints, defaultSnapPoint,
16
16
  }): {
17
17
  snapHeights: number[];
18
18
  sheetHeight: number;
19
+ defaultHeight: number;
19
20
  visibleTranslate: number;
20
21
  } | undefined;
21
22
  export declare function resolveModalPopupSnapPositions({ defaultSnapPosition, snapPositions, surfaceMotion, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"snapPoints.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/snapPoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjE,MAAM,WAAW,yCAAyC;IACxD,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,iBAAiB,CAAC;IACvB,gBAAgB,CAAC,EAAE,yCAAyC,CAAC;IAC7D,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAaD,wBAAgB,uBAAuB,CAAC,EACtC,UAAU,EACV,gBAAgB,EAChB,cAAc,GACf,EAAE;IACD,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;CACxB;;;;cAyBA;AAkED,wBAAgB,8BAA8B,CAAC,EAC7C,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,EAAE;IACD,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,aAAa,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC5C,aAAa,EAAE,WAAW,CAAC;CAC5B;;;;;;;;;cA2DA"}
1
+ {"version":3,"file":"snapPoints.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/snapPoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjE,MAAM,WAAW,yCAAyC;IACxD,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,iBAAiB,CAAC;IACvB,gBAAgB,CAAC,EAAE,yCAAyC,CAAC;IAC7D,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAaD,wBAAgB,uBAAuB,CAAC,EACtC,UAAU,EACV,gBAAgB,EAChB,cAAc,GACf,EAAE;IACD,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,cAAc,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;CACxB;;;;;cA0BA;AAkED,wBAAgB,8BAA8B,CAAC,EAC7C,mBAAmB,EACnB,aAAa,EACb,aAAa,GACd,EAAE;IACD,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,aAAa,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC5C,aAAa,EAAE,WAAW,CAAC;CAC5B;;;;;;;;;cA2DA"}
@@ -4,7 +4,9 @@ import { BackgroundIconButtonButtonProps, BackgroundIconButtonProps } from '../B
4
4
  export type ModalVariant = 'adaptive' | 'bottom' | 'popup' | 'full';
5
5
  export type ModalPlacement = Exclude<ModalVariant, 'adaptive'>;
6
6
  export type ModalSize = 'small' | 'medium' | 'large';
7
- export type ModalResize = 'hug' | 'fixed';
7
+ export type ModalResize = 'content' | 'fixed';
8
+ export type ModalContentTransition = 'auto' | 'none';
9
+ export type ModalBodyLayout = 'content' | 'fill';
8
10
  export type ModalPresentationState = 'visible' | 'peeked';
9
11
  export type ModalBackdrop = 'auto' | 'visible' | 'hidden';
10
12
  export type ModalDrag = false | 'handle' | 'content';
@@ -84,6 +86,13 @@ export interface ModalContentProps extends Omit<React.ComponentPropsWithoutRef<'
84
86
  variant?: ModalVariant;
85
87
  size?: ModalSize;
86
88
  resize?: ModalResize;
89
+ /**
90
+ * Animates ModalContent block-size changes caused by replacing depth views or
91
+ * other content. Popup surfaces animate their content block, while bottom
92
+ * sheets animate their geometry layer so sheet height and translate stay in
93
+ * one owner.
94
+ */
95
+ contentTransition?: ModalContentTransition;
87
96
  backdrop?: ModalBackdrop;
88
97
  drag?: ModalDrag;
89
98
  peekable?: boolean;
@@ -124,6 +133,7 @@ export interface ModalNavigationSectionProps extends Omit<React.ComponentPropsWi
124
133
  }
125
134
  export interface ModalBodyProps extends Omit<React.ComponentPropsWithRef<'div'>, 'children'> {
126
135
  children?: React.ReactNode;
136
+ layout?: ModalBodyLayout;
127
137
  containerProps?: Omit<React.ComponentPropsWithoutRef<'section'>, 'children' | 'className' | 'ref'>;
128
138
  containerClassName?: string;
129
139
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function useModalContentBlockTransition({ enabled, node, }: {
2
+ enabled: boolean;
3
+ node: HTMLElement | null;
4
+ }): void;
5
+ //# sourceMappingURL=useModalContentBlockTransition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useModalContentBlockTransition.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/useModalContentBlockTransition.ts"],"names":[],"mappings":"AAmBA,wBAAgB,8BAA8B,CAAC,EAC7C,OAAO,EACP,IAAI,GACL,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CAC1B,QAoIA"}
@@ -1,14 +1,16 @@
1
1
  import { default as React } from 'react';
2
2
  import { ModalCloseAttemptDetails, ModalDrag, ModalPlacement, ModalSnapPosition } from './types';
3
- export declare function useModalDrag({ enabled, drag, open, placement, surfaceMotionRef, backdropRef, bodyNode, snapHeights, snapPositions, defaultSnapPosition, peekHeight, peekFallback, presentationState, setPresentationState, requestClose, canCloseAttempt, dismissible, visibleTranslate, closeThreshold, scrollLockTimeout, popupSnapLayoutVersion, }: {
3
+ export declare function useModalDrag({ enabled, drag, open, placement, surfaceMotionRef, surfaceMotionNode, backdropRef, bodyNode, snapHeights, sheetHeight, snapPositions, defaultSnapPosition, peekHeight, peekFallback, presentationState, setPresentationState, requestClose, canCloseAttempt, dismissible, preserveShadowOpacity, visibleTranslate, shouldDeferBottomSettle, closeThreshold, scrollLockTimeout, popupSnapLayoutVersion, }: {
4
4
  enabled: boolean;
5
5
  drag: ModalDrag;
6
6
  open: boolean;
7
7
  placement: ModalPlacement;
8
8
  surfaceMotionRef: React.RefObject<HTMLDivElement | null>;
9
+ surfaceMotionNode: HTMLDivElement | null;
9
10
  backdropRef: React.RefObject<HTMLDivElement | null>;
10
11
  bodyNode: HTMLElement | null;
11
12
  snapHeights?: readonly number[];
13
+ sheetHeight?: number;
12
14
  snapPositions?: readonly ModalSnapPosition[];
13
15
  defaultSnapPosition?: ModalSnapPosition;
14
16
  peekHeight?: number;
@@ -21,7 +23,9 @@ export declare function useModalDrag({ enabled, drag, open, placement, surfaceMo
21
23
  }) => boolean;
22
24
  canCloseAttempt: (details?: ModalCloseAttemptDetails) => boolean;
23
25
  dismissible?: boolean;
26
+ preserveShadowOpacity?: boolean;
24
27
  visibleTranslate?: number;
28
+ shouldDeferBottomSettle?: () => boolean;
25
29
  closeThreshold?: number;
26
30
  scrollLockTimeout?: number;
27
31
  popupSnapLayoutVersion?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"useModalDrag.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/useModalDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,wBAAwB,EACxB,SAAS,EACT,cAAc,EACd,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAq7BjB,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,WAAgC,EAChC,aAAoC,EACpC,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,WAAkB,EAClB,gBAAoB,EACpB,cAAqB,EACrB,iBAAuB,EACvB,sBAA0B,GAC3B,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzD,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,iBAAiB,EAAE,SAAS,GAAG,QAAQ,CAAC;IACxC,oBAAoB,EAAE,CAAC,iBAAiB,EAAE,SAAS,GAAG,QAAQ,KAAK,IAAI,CAAC;IACxE,YAAY,EAAE,CACZ,OAAO,CAAC,EAAE,wBAAwB,EAClC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,KAClD,OAAO,CAAC;IACb,eAAe,EAAE,CAAC,OAAO,CAAC,EAAE,wBAAwB,KAAK,OAAO,CAAC;IACjE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;2BA4tCW,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;2BAiNlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;yBAiNlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;6BAAlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;kCAWlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;0BA2IlC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC;wBAwLhC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC;;EA2I3C"}
1
+ {"version":3,"file":"useModalDrag.d.ts","sourceRoot":"","sources":["../../../../../src/components/Modal/useModalDrag.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,wBAAwB,EACxB,SAAS,EACT,cAAc,EACd,iBAAiB,EAClB,MAAM,SAAS,CAAC;AA07BjB,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,QAAQ,EACR,WAAgC,EAChC,WAAW,EACX,aAAoC,EACpC,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,YAAY,EACZ,eAAe,EACf,WAAkB,EAClB,qBAA6B,EAC7B,gBAAoB,EACpB,uBAAuB,EACvB,cAAqB,EACrB,iBAAuB,EACvB,sBAA0B,GAC3B,EAAE;IACD,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzD,iBAAiB,EAAE,cAAc,GAAG,IAAI,CAAC;IACzC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC7C,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,iBAAiB,EAAE,SAAS,GAAG,QAAQ,CAAC;IACxC,oBAAoB,EAAE,CAAC,iBAAiB,EAAE,SAAS,GAAG,QAAQ,KAAK,IAAI,CAAC;IACxE,YAAY,EAAE,CACZ,OAAO,CAAC,EAAE,wBAAwB,EAClC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,KAClD,OAAO,CAAC;IACb,eAAe,EAAE,CAAC,OAAO,CAAC,EAAE,wBAAwB,KAAK,OAAO,CAAC;IACjE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,uBAAuB,CAAC,EAAE,MAAM,OAAO,CAAC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;2BAw7CW,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;2BAmNlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;yBAiNlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;6BAAlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;kCAWlC,KAAK,CAAC,YAAY,CAAC,cAAc,CAAC;0BA2IlC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC;wBA0LhC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC;;EA2I3C"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScrollArea/ScrollArea.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA2DzE,wBAAgB,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAC9D,EAAE,EACF,IAAY,EACZ,QAAQ,EACR,SAAc,EACd,GAAG,EACH,mBAAmB,EAAE,eAA+B,EACpD,GAAG,KAAK,EACT,EAAE,eAAe,CAAC,CAAC,CAAC,GACnB,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,2CA21BlE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EACvE,EAAE,EACF,QAAQ,EACR,SAAc,EACd,GAAG,EACH,mBAAmB,EAAE,eAAyC,EAC9D,GAAG,KAAK,EACT,EAAE,wBAAwB,CAAC,CAAC,CAAC,2CAyB7B;AAED,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ScrollArea.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScrollArea/ScrollArea.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA4DzE,wBAAgB,UAAU,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EAC9D,EAAE,EACF,IAAY,EACZ,QAAQ,EACR,SAAc,EACd,GAAG,EACH,mBAAmB,EAAE,eAA+B,EACpD,GAAG,KAAK,EACT,EAAE,eAAe,CAAC,CAAC,CAAC,GACnB,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CAAC,CAAC,CAAC,CAAC,2CA44BlE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EACvE,EAAE,EACF,QAAQ,EACR,SAAc,EACd,GAAG,EACH,mBAAmB,EAAE,eAAyC,EAC9D,GAAG,KAAK,EACT,EAAE,wBAAwB,CAAC,CAAC,CAAC,2CAyB7B;AAED,eAAe,UAAU,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface ScrollAreaGeometryStabilizerOptions {
2
+ enabled: boolean;
3
+ getGeometrySignature: () => string;
4
+ updateGeometry: () => void;
5
+ }
6
+ export declare function useScrollAreaGeometryStabilizer({ enabled, getGeometrySignature, updateGeometry, }: ScrollAreaGeometryStabilizerOptions): {
7
+ cancelGeometryUpdate: () => void;
8
+ scheduleGeometryUpdate: () => void;
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=useScrollAreaGeometryStabilizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useScrollAreaGeometryStabilizer.d.ts","sourceRoot":"","sources":["../../../../../src/components/ScrollArea/useScrollAreaGeometryStabilizer.ts"],"names":[],"mappings":"AAQA,UAAU,mCAAmC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,MAAM,MAAM,CAAC;IACnC,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,OAAO,EACP,oBAAoB,EACpB,cAAc,GACf,EAAE,mCAAmC;;;EA4DrC"}
@@ -51,7 +51,7 @@ export type { AlertActionAreaProps, AlertActionInitialFocus, AlertActionProps, A
51
51
  export { default as Accordion, AccordionContent, AccordionDescription, AccordionDetails, AccordionItem, AccordionSummary, } from './components/Accordion';
52
52
  export type { AccordionContentProps, AccordionDescriptionProps, AccordionDetailsProps, AccordionHeadingLevel, AccordionItemProps, AccordionProps, AccordionSummaryProps, AccordionValue, } from './components/Accordion';
53
53
  export { default as Modal, ModalBody, ModalClose, ModalContent, ModalFooter, ModalHeader, ModalNavigationSection, ModalRoot, ModalTrigger, } from './components/Modal';
54
- export type { ModalBackdrop, ModalBodyProps, ModalCloseAttemptDetails, ModalCloseAttemptReason, ModalCloseProps, ModalContentProps, ModalDismissBehavior, ModalDismissBehaviorValue, ModalDrag, ModalFooterProps, ModalHeaderProps, ModalInitialFocus, ModalNavigationHeadingLevel, ModalNavigationSectionProps, ModalPlacement, ModalPresentationState, ModalResize, ModalRootProps, ModalSize, ModalSnapPoint, ModalSnapPosition, ModalTriggerProps, ModalVariant, } from './components/Modal';
54
+ export type { ModalBackdrop, ModalBodyLayout, ModalBodyProps, ModalCloseAttemptDetails, ModalCloseAttemptReason, ModalCloseProps, ModalContentProps, ModalDismissBehavior, ModalDismissBehaviorValue, ModalDrag, ModalFooterProps, ModalHeaderProps, ModalInitialFocus, ModalNavigationHeadingLevel, ModalNavigationSectionProps, ModalPlacement, ModalPresentationState, ModalResize, ModalRootProps, ModalSize, ModalSnapPoint, ModalSnapPosition, ModalTriggerProps, ModalVariant, } from './components/Modal';
55
55
  export { default as TooltipRoot, TooltipContent, TooltipProvider, TooltipTrigger, } from './components/Tooltip';
56
56
  export type { TooltipContentProps, TooltipRootProps, TooltipTriggerProps, } from './components/Tooltip';
57
57
  export { default as ScrollArea, ScrollAreaContainer, } from './components/ScrollArea';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orioncactuscorp/ui",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "description": "orioncactus UI foundations and core primitives",
5
5
  "private": false,
6
6
  "type": "module",
@@ -88,6 +88,7 @@
88
88
  "test:run": "vitest run",
89
89
  "test:coverage": "vitest run --coverage",
90
90
  "test:e2e": "bun run --cwd ../.. build && bun run --cwd ../.. example:build && playwright test",
91
+ "test:e2e:ci": "bun run --cwd ../.. example:build && playwright test",
91
92
  "storybook": "node ../../scripts/storybook-watchdog.mjs --cwd packages/ui --port 6006",
92
93
  "storybook:direct": "storybook dev -p 6006",
93
94
  "build-storybook": "storybook build"
@@ -57,53 +57,200 @@
57
57
  @return math.div(math.floor($spread * $precision), $precision) * 1px;
58
58
  }
59
59
 
60
+ $oc-border-side-tokens: (top, right, bottom, left) !default;
61
+ $oc-border-placement-tokens: (inset, outer) !default;
62
+ $oc-border-style-tokens: (solid) !default;
63
+
64
+ @function _oc-border-is-side-token($value) {
65
+ @return $value == all or list.index($oc-border-side-tokens, $value) != null;
66
+ }
67
+
68
+ @function _oc-border-is-placement-token($value) {
69
+ @return list.index($oc-border-placement-tokens, $value) != null;
70
+ }
71
+
72
+ @function _oc-border-is-style-token($value) {
73
+ @return list.index($oc-border-style-tokens, $value) != null;
74
+ }
75
+
76
+ @function _oc-border-list-looks-like-shorthand($value) {
77
+ @each $item in $value {
78
+ @if meta.type-of($item) == 'number' or _oc-border-is-side-token($item) or _oc-border-is-placement-token($item) or _oc-border-is-style-token($item) {
79
+ @return true;
80
+ }
81
+ }
82
+
83
+ @return false;
84
+ }
85
+
86
+ @function _oc-border-flatten-args($args) {
87
+ $tokens: ();
88
+
89
+ @each $arg in $args {
90
+ @if meta.type-of($arg) == 'list' and list.separator($arg) == space and not list.is-bracketed($arg) and _oc-border-list-looks-like-shorthand($arg) {
91
+ @each $item in $arg {
92
+ $tokens: list.append($tokens, $item);
93
+ }
94
+ } @else {
95
+ $tokens: list.append($tokens, $arg);
96
+ }
97
+ }
98
+
99
+ @return $tokens;
100
+ }
101
+
102
+ @function _oc-border-negative($width) {
103
+ @if meta.type-of($width) == 'number' {
104
+ @return -$width;
105
+ }
106
+
107
+ @return calc(#{$width} * -1);
108
+ }
109
+
110
+ @function _oc-border-shadow-item($width, $color, $side, $placement) {
111
+ @if $side == all {
112
+ @if $placement == inset {
113
+ @return inset 0 0 0 $width $color;
114
+ }
115
+
116
+ @return 0 0 0 $width $color;
117
+ }
118
+
119
+ @if $placement == inset {
120
+ @if $side == top {
121
+ @return inset 0 $width 0 0 $color;
122
+ }
123
+
124
+ @if $side == right {
125
+ @return inset _oc-border-negative($width) 0 0 0 $color;
126
+ }
127
+
128
+ @if $side == bottom {
129
+ @return inset 0 _oc-border-negative($width) 0 0 $color;
130
+ }
131
+
132
+ @return inset $width 0 0 0 $color;
133
+ }
134
+
135
+ @if $side == top {
136
+ @return 0 _oc-border-negative($width) 0 0 $color;
137
+ }
138
+
139
+ @if $side == right {
140
+ @return $width 0 0 0 $color;
141
+ }
142
+
143
+ @if $side == bottom {
144
+ @return 0 $width 0 0 $color;
145
+ }
146
+
147
+ @return _oc-border-negative($width) 0 0 0 $color;
148
+ }
149
+
150
+ @function _oc-border-shadow($width, $color, $sides, $placement) {
151
+ @if list.index($sides, all) != null {
152
+ @return _oc-border-shadow-item($width, $color, all, $placement);
153
+ }
154
+
155
+ $shadows: ();
156
+
157
+ @each $side in $sides {
158
+ $shadows: list.append($shadows, _oc-border-shadow-item($width, $color, $side, $placement), comma);
159
+ }
160
+
161
+ @return $shadows;
162
+ }
163
+
60
164
  @function _oc-border-args($args) {
61
- $count: list.length($args);
165
+ $tokens: _oc-border-flatten-args($args);
166
+ $count: list.length($tokens);
167
+ $width: null;
168
+ $color: null;
169
+ $sides: ();
170
+ $placement: inset;
62
171
 
63
172
  @if $count == 0 {
64
- @return (1px, currentColor);
173
+ @return (1px, currentcolor, (all), inset);
65
174
  }
66
175
 
67
- @if $count == 1 {
68
- $value: list.nth($args, 1);
176
+ @if list.length($args) == 2 and list.length(list.nth($args, 1)) == 1 and not _oc-border-is-side-token(list.nth($args, 1)) and not _oc-border-is-placement-token(list.nth($args, 1)) {
177
+ $second: list.nth($args, 2);
69
178
 
70
- @if meta.type-of($value) == 'number' {
71
- @return ($value, currentColor);
179
+ @if not _oc-border-is-side-token($second) and not _oc-border-is-placement-token($second) and not _oc-border-is-style-token($second) {
180
+ @return (list.nth($args, 1), $second, (all), inset);
72
181
  }
182
+ }
183
+
184
+ @each $token in $tokens {
185
+ @if meta.type-of($token) == 'number' {
186
+ @if $width != null {
187
+ @error 'oc-border accepts only one width token.';
188
+ }
189
+
190
+ $width: $token;
191
+ } @else if _oc-border-is-side-token($token) {
192
+ @if $token == all {
193
+ $sides: (all);
194
+ } @else if list.index($sides, all) == null and list.index($sides, $token) == null {
195
+ $sides: list.append($sides, $token);
196
+ }
197
+ } @else if _oc-border-is-placement-token($token) {
198
+ @if $placement != inset and $placement != $token {
199
+ @error 'oc-border accepts only one placement token.';
200
+ }
201
+
202
+ $placement: $token;
203
+ } @else if _oc-border-is-style-token($token) {
204
+ // Box-shadow strokes only support solid rendering; the token is accepted for CSS border shorthand familiarity.
205
+ } @else {
206
+ @if $color != null {
207
+ @error 'oc-border accepts only one color token.';
208
+ }
209
+
210
+ $color: $token;
211
+ }
212
+ }
213
+
214
+ @if $width == null {
215
+ $width: 1px;
216
+ }
73
217
 
74
- @return (1px, $value);
218
+ @if $color == null {
219
+ $color: currentcolor;
75
220
  }
76
221
 
77
- @if $count == 2 {
78
- @return (list.nth($args, 1), list.nth($args, 2));
222
+ @if list.length($sides) == 0 {
223
+ $sides: (all);
79
224
  }
80
225
 
81
- @error 'oc-border accepts zero, one, or two arguments.';
226
+ @return ($width, $color, $sides, $placement);
82
227
  }
83
228
 
84
229
  @mixin oc-border($args...) {
85
230
  $resolved: _oc-border-args($args);
86
231
  $width: list.nth($resolved, 1);
87
232
  $color: list.nth($resolved, 2);
233
+ $sides: list.nth($resolved, 3);
234
+ $placement: list.nth($resolved, 4);
88
235
 
89
- box-shadow: inset 0 0 0 $width $color;
236
+ box-shadow: _oc-border-shadow($width, $color, $sides, $placement);
90
237
 
91
238
  @if _oc-border-is-half-px($width) {
92
239
  /* stylelint-disable block-no-redundant-nested-style-rules, media-feature-range-notation -- WebKit rounds fractional inset strokes differently by DPR; nested selectors keep the correction scoped. */
93
240
  @supports (-webkit-backdrop-filter: none) {
94
241
  & {
95
- box-shadow: inset 0 0 0 _oc-border-webkit-base-spread($width) $color;
242
+ box-shadow: _oc-border-shadow(_oc-border-webkit-base-spread($width), $color, $sides, $placement);
96
243
  }
97
244
 
98
245
  @media only screen and (resolution: 2dppx) {
99
246
  & {
100
- box-shadow: inset 0 0 0 _oc-border-webkit-device-spread($width, 2) $color;
247
+ box-shadow: _oc-border-shadow(_oc-border-webkit-device-spread($width, 2), $color, $sides, $placement);
101
248
  }
102
249
  }
103
250
 
104
251
  @media only screen and (resolution: 3dppx) {
105
252
  & {
106
- box-shadow: inset 0 0 0 _oc-border-webkit-device-spread($width, 3) $color;
253
+ box-shadow: _oc-border-shadow(_oc-border-webkit-device-spread($width, 3), $color, $sides, $placement);
107
254
  }
108
255
  }
109
256
  }