@shoplflow/base 0.25.2 → 0.25.3

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/index.d.cts CHANGED
@@ -625,6 +625,20 @@ declare const Popper: {
625
625
  declare const PopperTrigger: React__default.ForwardRefExoticComponent<PopperTriggerProps & React__default.RefAttributes<HTMLDivElement>>;
626
626
  declare const PopperPortal: React__default.ForwardRefExoticComponent<PopperPortalProps & React__default.RefAttributes<HTMLDivElement>>;
627
627
 
628
+ interface ScrollbarRefType {
629
+ scrollTop(top: number): void;
630
+ scrollLeft(left: number): void;
631
+ scrollToTop(): void;
632
+ scrollToBottom(): void;
633
+ scrollToLeft(): void;
634
+ scrollToRight(): void;
635
+ getScrollLeft(): number;
636
+ getScrollTop(): number;
637
+ getScrollWidth(): number;
638
+ getScrollHeight(): number;
639
+ getClientWidth(): number;
640
+ getClientHeight(): number;
641
+ }
628
642
  interface ScrollAreaProps extends ScrollAreaOptionProps, ChildrenProps {
629
643
  }
630
644
  interface ScrollAreaOptionProps {
@@ -710,7 +724,7 @@ interface ScrollAreaOptionProps {
710
724
  style?: React$1.CSSProperties;
711
725
  }
712
726
 
713
- declare const ScrollArea: ({ children, ...rest }: ScrollAreaProps) => react_jsx_runtime.JSX.Element;
727
+ declare const ScrollArea: React__default.ForwardRefExoticComponent<ScrollAreaProps & React__default.RefAttributes<ScrollbarRefType>>;
714
728
 
715
729
  declare const DropdownOptionVariants: {
716
730
  readonly CLICK: "CLICK";
@@ -985,4 +999,4 @@ declare const Tooltip: {
985
999
  Content: ({ content, ...args }: TooltipContentProps) => react_jsx_runtime.JSX.Element;
986
1000
  };
987
1001
 
988
- export { Avatar, AvatarOptionProps, AvatarProps, AvatarSizeVariantType, AvatarSizeVariants, BackDropOptionProps, BackDropProps, BorderRadiusTokens, BoxShadowTokens, Button, ButtonComponent, ButtonOptionProps, ButtonProps, ButtonSizeVariantType, ButtonSizeVariants, ButtonStyleVariantType, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout, CalloutOptionProps, CalloutProps, CalloutType, CalloutTypes, Checkbox, CheckboxOptionProps, CheckboxProps, CheckboxStyleVariantType, CheckboxStyleVariants, ChipButton, ChipButtonOptionProps, ChipButtonProps, ChipButtonSizeVariantType, ChipButtonSizeVariants, ChipButtonStyleVariantType, ChipButtonStyleVariants, ChipToggle, ChipToggleOptionProps, ChipToggleProps, ChipToggleSizeVariantType, ChipToggleSizeVariants, ChipToggleStyleVariantType, ChipToggleStyleVariants, ColorTokens, DangerouslySetInnerHTML, Dropdown, DropdownButtonProps, DropdownContentProps, DropdownOptionProps, DropdownOptionVariantType, DropdownProps, DropdownSizeVariantType, FontWeightTokens, Icon, IconButton, IconButtonComponent, IconButtonOptionProps, IconButtonProps, IconButtonSizeVariantType, IconButtonSizeVariants, IconButtonStyleVariantType, IconButtonStyleVariants, IconOptionProps, IconProps, IconSizeVariants, IconSizeVariantsType, Input, InputButton, InputButtonOptionProps, InputButtonProps, InputOptionProps, InputProps, List, ListContent2ColumnsProps, ListOptionProps, ListProps, ListText2RowsProps, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu, MenuOptionProps, MenuProps, MenuSizeVariantType, MenuSizeVariants, MinusBoxOptionProps, MinusBoxProps, MinusButton, Modal, ModalBodyOptionProps, ModalBodyProps, ModalContainerOptionProps, ModalContainerProps, ModalContext, ModalFooterOptionProps, ModalFooterProps, ModalFooterType, ModalHandlerContext, ModalHeaderOptionProps, ModalHeaderProps, ModalHeaderType, ModalPortal as ModalProvider, ModalSize, ModalSizeType, ModalStateType, MotionStack, MotionStackComponentType, Popper, PopperOptionProps, PopperPortal, PopperPortalProps, PopperProps, PopperTrigger, PopperTriggerProps, RADIO_SYMBOL_KEY, Radio, RadioOptionProps, RadioProps, RemoveModalProps, ScrollArea, ScrollAreaOptionProps, ScrollAreaProps, SelectInputButton, SelectInputButtonOptionProps, SelectInputButtonProps, ShoplflowProvider, ShoplflowProviderProps, SpacingTokens, Stack, StackComponentType, StackGenericProps, StackOptionProps, StackProps, StyledIcon, StyledStack, Switch, SwitchOptionProps, SwitchProps, Tag, TagOptionProps, TagProps, TagSizeVariantType, TagSizeVariants, TagStyleVariantType, TagStyleVariants, Text, Text2Rows, TextArea, TextAreaOptionProps, TextAreaProps, TextOptionProps, TextProps, Tooltip, TooltipContentProps, TooltipOptionProps, TooltipProps, TypographyTokens, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
1002
+ export { Avatar, AvatarOptionProps, AvatarProps, AvatarSizeVariantType, AvatarSizeVariants, BackDropOptionProps, BackDropProps, BorderRadiusTokens, BoxShadowTokens, Button, ButtonComponent, ButtonOptionProps, ButtonProps, ButtonSizeVariantType, ButtonSizeVariants, ButtonStyleVariantType, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout, CalloutOptionProps, CalloutProps, CalloutType, CalloutTypes, Checkbox, CheckboxOptionProps, CheckboxProps, CheckboxStyleVariantType, CheckboxStyleVariants, ChipButton, ChipButtonOptionProps, ChipButtonProps, ChipButtonSizeVariantType, ChipButtonSizeVariants, ChipButtonStyleVariantType, ChipButtonStyleVariants, ChipToggle, ChipToggleOptionProps, ChipToggleProps, ChipToggleSizeVariantType, ChipToggleSizeVariants, ChipToggleStyleVariantType, ChipToggleStyleVariants, ColorTokens, DangerouslySetInnerHTML, Dropdown, DropdownButtonProps, DropdownContentProps, DropdownOptionProps, DropdownOptionVariantType, DropdownProps, DropdownSizeVariantType, FontWeightTokens, Icon, IconButton, IconButtonComponent, IconButtonOptionProps, IconButtonProps, IconButtonSizeVariantType, IconButtonSizeVariants, IconButtonStyleVariantType, IconButtonStyleVariants, IconOptionProps, IconProps, IconSizeVariants, IconSizeVariantsType, Input, InputButton, InputButtonOptionProps, InputButtonProps, InputOptionProps, InputProps, List, ListContent2ColumnsProps, ListOptionProps, ListProps, ListText2RowsProps, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu, MenuOptionProps, MenuProps, MenuSizeVariantType, MenuSizeVariants, MinusBoxOptionProps, MinusBoxProps, MinusButton, Modal, ModalBodyOptionProps, ModalBodyProps, ModalContainerOptionProps, ModalContainerProps, ModalContext, ModalFooterOptionProps, ModalFooterProps, ModalFooterType, ModalHandlerContext, ModalHeaderOptionProps, ModalHeaderProps, ModalHeaderType, ModalPortal as ModalProvider, ModalSize, ModalSizeType, ModalStateType, MotionStack, MotionStackComponentType, Popper, PopperOptionProps, PopperPortal, PopperPortalProps, PopperProps, PopperTrigger, PopperTriggerProps, RADIO_SYMBOL_KEY, Radio, RadioOptionProps, RadioProps, RemoveModalProps, ScrollArea, ScrollAreaOptionProps, ScrollAreaProps, ScrollbarRefType, SelectInputButton, SelectInputButtonOptionProps, SelectInputButtonProps, ShoplflowProvider, ShoplflowProviderProps, SpacingTokens, Stack, StackComponentType, StackGenericProps, StackOptionProps, StackProps, StyledIcon, StyledStack, Switch, SwitchOptionProps, SwitchProps, Tag, TagOptionProps, TagProps, TagSizeVariantType, TagSizeVariants, TagStyleVariantType, TagStyleVariants, Text, Text2Rows, TextArea, TextAreaOptionProps, TextAreaProps, TextOptionProps, TextProps, Tooltip, TooltipContentProps, TooltipOptionProps, TooltipProps, TypographyTokens, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
package/dist/index.d.ts CHANGED
@@ -625,6 +625,20 @@ declare const Popper: {
625
625
  declare const PopperTrigger: React__default.ForwardRefExoticComponent<PopperTriggerProps & React__default.RefAttributes<HTMLDivElement>>;
626
626
  declare const PopperPortal: React__default.ForwardRefExoticComponent<PopperPortalProps & React__default.RefAttributes<HTMLDivElement>>;
627
627
 
628
+ interface ScrollbarRefType {
629
+ scrollTop(top: number): void;
630
+ scrollLeft(left: number): void;
631
+ scrollToTop(): void;
632
+ scrollToBottom(): void;
633
+ scrollToLeft(): void;
634
+ scrollToRight(): void;
635
+ getScrollLeft(): number;
636
+ getScrollTop(): number;
637
+ getScrollWidth(): number;
638
+ getScrollHeight(): number;
639
+ getClientWidth(): number;
640
+ getClientHeight(): number;
641
+ }
628
642
  interface ScrollAreaProps extends ScrollAreaOptionProps, ChildrenProps {
629
643
  }
630
644
  interface ScrollAreaOptionProps {
@@ -710,7 +724,7 @@ interface ScrollAreaOptionProps {
710
724
  style?: React$1.CSSProperties;
711
725
  }
712
726
 
713
- declare const ScrollArea: ({ children, ...rest }: ScrollAreaProps) => react_jsx_runtime.JSX.Element;
727
+ declare const ScrollArea: React__default.ForwardRefExoticComponent<ScrollAreaProps & React__default.RefAttributes<ScrollbarRefType>>;
714
728
 
715
729
  declare const DropdownOptionVariants: {
716
730
  readonly CLICK: "CLICK";
@@ -985,4 +999,4 @@ declare const Tooltip: {
985
999
  Content: ({ content, ...args }: TooltipContentProps) => react_jsx_runtime.JSX.Element;
986
1000
  };
987
1001
 
988
- export { Avatar, AvatarOptionProps, AvatarProps, AvatarSizeVariantType, AvatarSizeVariants, BackDropOptionProps, BackDropProps, BorderRadiusTokens, BoxShadowTokens, Button, ButtonComponent, ButtonOptionProps, ButtonProps, ButtonSizeVariantType, ButtonSizeVariants, ButtonStyleVariantType, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout, CalloutOptionProps, CalloutProps, CalloutType, CalloutTypes, Checkbox, CheckboxOptionProps, CheckboxProps, CheckboxStyleVariantType, CheckboxStyleVariants, ChipButton, ChipButtonOptionProps, ChipButtonProps, ChipButtonSizeVariantType, ChipButtonSizeVariants, ChipButtonStyleVariantType, ChipButtonStyleVariants, ChipToggle, ChipToggleOptionProps, ChipToggleProps, ChipToggleSizeVariantType, ChipToggleSizeVariants, ChipToggleStyleVariantType, ChipToggleStyleVariants, ColorTokens, DangerouslySetInnerHTML, Dropdown, DropdownButtonProps, DropdownContentProps, DropdownOptionProps, DropdownOptionVariantType, DropdownProps, DropdownSizeVariantType, FontWeightTokens, Icon, IconButton, IconButtonComponent, IconButtonOptionProps, IconButtonProps, IconButtonSizeVariantType, IconButtonSizeVariants, IconButtonStyleVariantType, IconButtonStyleVariants, IconOptionProps, IconProps, IconSizeVariants, IconSizeVariantsType, Input, InputButton, InputButtonOptionProps, InputButtonProps, InputOptionProps, InputProps, List, ListContent2ColumnsProps, ListOptionProps, ListProps, ListText2RowsProps, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu, MenuOptionProps, MenuProps, MenuSizeVariantType, MenuSizeVariants, MinusBoxOptionProps, MinusBoxProps, MinusButton, Modal, ModalBodyOptionProps, ModalBodyProps, ModalContainerOptionProps, ModalContainerProps, ModalContext, ModalFooterOptionProps, ModalFooterProps, ModalFooterType, ModalHandlerContext, ModalHeaderOptionProps, ModalHeaderProps, ModalHeaderType, ModalPortal as ModalProvider, ModalSize, ModalSizeType, ModalStateType, MotionStack, MotionStackComponentType, Popper, PopperOptionProps, PopperPortal, PopperPortalProps, PopperProps, PopperTrigger, PopperTriggerProps, RADIO_SYMBOL_KEY, Radio, RadioOptionProps, RadioProps, RemoveModalProps, ScrollArea, ScrollAreaOptionProps, ScrollAreaProps, SelectInputButton, SelectInputButtonOptionProps, SelectInputButtonProps, ShoplflowProvider, ShoplflowProviderProps, SpacingTokens, Stack, StackComponentType, StackGenericProps, StackOptionProps, StackProps, StyledIcon, StyledStack, Switch, SwitchOptionProps, SwitchProps, Tag, TagOptionProps, TagProps, TagSizeVariantType, TagSizeVariants, TagStyleVariantType, TagStyleVariants, Text, Text2Rows, TextArea, TextAreaOptionProps, TextAreaProps, TextOptionProps, TextProps, Tooltip, TooltipContentProps, TooltipOptionProps, TooltipProps, TypographyTokens, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
1002
+ export { Avatar, AvatarOptionProps, AvatarProps, AvatarSizeVariantType, AvatarSizeVariants, BackDropOptionProps, BackDropProps, BorderRadiusTokens, BoxShadowTokens, Button, ButtonComponent, ButtonOptionProps, ButtonProps, ButtonSizeVariantType, ButtonSizeVariants, ButtonStyleVariantType, ButtonStyleVariants, CHECKBOX_SYMBOL_KEY, Callout, CalloutOptionProps, CalloutProps, CalloutType, CalloutTypes, Checkbox, CheckboxOptionProps, CheckboxProps, CheckboxStyleVariantType, CheckboxStyleVariants, ChipButton, ChipButtonOptionProps, ChipButtonProps, ChipButtonSizeVariantType, ChipButtonSizeVariants, ChipButtonStyleVariantType, ChipButtonStyleVariants, ChipToggle, ChipToggleOptionProps, ChipToggleProps, ChipToggleSizeVariantType, ChipToggleSizeVariants, ChipToggleStyleVariantType, ChipToggleStyleVariants, ColorTokens, DangerouslySetInnerHTML, Dropdown, DropdownButtonProps, DropdownContentProps, DropdownOptionProps, DropdownOptionVariantType, DropdownProps, DropdownSizeVariantType, FontWeightTokens, Icon, IconButton, IconButtonComponent, IconButtonOptionProps, IconButtonProps, IconButtonSizeVariantType, IconButtonSizeVariants, IconButtonStyleVariantType, IconButtonStyleVariants, IconOptionProps, IconProps, IconSizeVariants, IconSizeVariantsType, Input, InputButton, InputButtonOptionProps, InputButtonProps, InputOptionProps, InputProps, List, ListContent2ColumnsProps, ListOptionProps, ListProps, ListText2RowsProps, MODAL_FOOTER_KEY, MODAL_HEADER_KEY, Menu, MenuOptionProps, MenuProps, MenuSizeVariantType, MenuSizeVariants, MinusBoxOptionProps, MinusBoxProps, MinusButton, Modal, ModalBodyOptionProps, ModalBodyProps, ModalContainerOptionProps, ModalContainerProps, ModalContext, ModalFooterOptionProps, ModalFooterProps, ModalFooterType, ModalHandlerContext, ModalHeaderOptionProps, ModalHeaderProps, ModalHeaderType, ModalPortal as ModalProvider, ModalSize, ModalSizeType, ModalStateType, MotionStack, MotionStackComponentType, Popper, PopperOptionProps, PopperPortal, PopperPortalProps, PopperProps, PopperTrigger, PopperTriggerProps, RADIO_SYMBOL_KEY, Radio, RadioOptionProps, RadioProps, RemoveModalProps, ScrollArea, ScrollAreaOptionProps, ScrollAreaProps, ScrollbarRefType, SelectInputButton, SelectInputButtonOptionProps, SelectInputButtonProps, ShoplflowProvider, ShoplflowProviderProps, SpacingTokens, Stack, StackComponentType, StackGenericProps, StackOptionProps, StackProps, StyledIcon, StyledStack, Switch, SwitchOptionProps, SwitchProps, Tag, TagOptionProps, TagProps, TagSizeVariantType, TagSizeVariants, TagStyleVariantType, TagStyleVariants, Text, Text2Rows, TextArea, TextAreaOptionProps, TextAreaProps, TextOptionProps, TextProps, Tooltip, TooltipContentProps, TooltipOptionProps, TooltipProps, TypographyTokens, borderRadiusTokens, boxShadowTokens, colorTokens, fontWeightTokens, getDomain, spacingTokens, typographyTokens, useDomain, useHandleModal, useModalValue };
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import * as React2 from 'react';
2
- import React2__default, { forwardRef, createContext, useState, useEffect, useId, useCallback, useRef, useContext, useMemo } from 'react';
2
+ import React2__default, { forwardRef, useRef, useState, useCallback, useEffect, createContext, useId, useContext, useMemo } from 'react';
3
3
  import styled5 from '@emotion/styled';
4
4
  import { motion, AnimatePresence } from 'framer-motion';
5
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
+ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
6
6
  import { createPortal } from 'react-dom';
7
7
  import { css } from '@emotion/react';
8
- import { noop, OutSideClick, useParentElementClick, isNullOrUndefined } from '@shoplflow/utils';
8
+ import { useMergeRefs, noop, OutSideClick, useParentElementClick, isNullOrUndefined } from '@shoplflow/utils';
9
9
  import Scrollbars from 'react-custom-scrollbars-2';
10
10
  import { FloatingPortal, autoUpdate, offset, autoPlacement } from '@floating-ui/react';
11
11
  export { arrow, flip, hide, inline, offset, shift, size } from '@floating-ui/react';
@@ -771,10 +771,36 @@ var ModalFooter = ({ children }) => {
771
771
  };
772
772
  ModalFooter[MODAL_FOOTER_KEY] = true;
773
773
  var ModalFooter_default = ModalFooter;
774
- var ScrollArea = (_a) => {
774
+ var ScrollArea = forwardRef((_a, ref) => {
775
775
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
776
- return /* @__PURE__ */ jsx(Scrollbars, __spreadProps(__spreadValues({ autoHide: true, autoHideTimeout: 1e3, autoHideDuration: 200 }, rest), { "data-shoplflow": "ScrollArea", children }));
777
- };
776
+ const scrollRef = useRef(null);
777
+ const mergeRef = useMergeRefs(scrollRef, ref);
778
+ const [windowWidth, setWindowWidth] = useState(window.innerWidth);
779
+ const [windowHeight, setWindowHeight] = useState(window.innerHeight);
780
+ const onResize = useCallback(() => {
781
+ setWindowWidth(window.innerWidth);
782
+ setWindowHeight(window.innerHeight);
783
+ }, []);
784
+ useEffect(() => {
785
+ window.addEventListener("resize", onResize);
786
+ return () => {
787
+ window.removeEventListener("resize", onResize);
788
+ };
789
+ }, [onResize]);
790
+ return /* @__PURE__ */ jsx(Fragment, { children: Boolean(windowWidth) && Boolean(windowHeight) && /* @__PURE__ */ jsx(
791
+ Scrollbars,
792
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({
793
+ ref: mergeRef
794
+ }, rest), {
795
+ autoHide: true,
796
+ autoHideTimeout: 1e3,
797
+ autoHideDuration: 200
798
+ }), rest), {
799
+ "data-shoplflow": "ScrollArea",
800
+ children
801
+ })
802
+ ) });
803
+ });
778
804
  var ScrollArea_default = ScrollArea;
779
805
  var ModalBody = ({
780
806
  children,
@@ -1676,7 +1702,7 @@ function mergeRefs(...refs) {
1676
1702
  });
1677
1703
  };
1678
1704
  }
1679
- function useMergeRefs(...refs) {
1705
+ function useMergeRefs2(...refs) {
1680
1706
  return useMemo(() => mergeRefs(...refs), refs);
1681
1707
  }
1682
1708
  var Popper = ({
@@ -1712,7 +1738,7 @@ var PopperTrigger = forwardRef(
1712
1738
  (_a, ref) => {
1713
1739
  var _b = _a, { children, isOpen = false } = _b, rest = __objRest(_b, ["children", "isOpen"]);
1714
1740
  const { setReference, setIsOpen } = usePopper();
1715
- const refs = useMergeRefs(ref, setReference);
1741
+ const refs = useMergeRefs2(ref, setReference);
1716
1742
  useEffect(() => {
1717
1743
  setIsOpen(isOpen);
1718
1744
  }, [isOpen, setIsOpen]);
@@ -1723,7 +1749,7 @@ var PopperPortal = forwardRef(
1723
1749
  ({ children, animation: initialAnimation }, ref) => {
1724
1750
  const { floatingStyles, setFloating, isOpen } = usePopper();
1725
1751
  const animation = initialAnimation != null ? initialAnimation : fadeInOut;
1726
- const refs = useMergeRefs(ref, setFloating);
1752
+ const refs = useMergeRefs2(ref, setFloating);
1727
1753
  if (!isOpen) {
1728
1754
  return null;
1729
1755
  }
@@ -2739,7 +2765,7 @@ var Input = forwardRef(
2739
2765
  const [isHovered, setIsHovered] = useState(false);
2740
2766
  const uniqueId = useId();
2741
2767
  const inputRef = React2__default.useRef(null);
2742
- const refs = useMergeRefs(ref, inputRef);
2768
+ const refs = useMergeRefs2(ref, inputRef);
2743
2769
  const convertToString = useCallback((value2) => {
2744
2770
  if (typeof value2 !== "number") {
2745
2771
  return typeof value2 === "string" ? value2 : value2.join("");