@rocket.chat/fuselage 0.71.0 → 0.72.1

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 (49) hide show
  1. package/dist/components/AutoComplete/AutoComplete.d.ts.map +1 -1
  2. package/dist/components/Menu/Menu.d.ts +19 -23
  3. package/dist/components/Menu/Menu.d.ts.map +1 -1
  4. package/dist/components/Menu/MenuDropdown.d.ts.map +1 -0
  5. package/dist/components/Menu/MenuItem.d.ts.map +1 -0
  6. package/dist/components/Menu/{V2/MenuOption.d.ts → MenuOption.d.ts} +1 -1
  7. package/dist/components/Menu/MenuOption.d.ts.map +1 -0
  8. package/dist/components/Menu/MenuPopover.d.ts.map +1 -0
  9. package/dist/components/Menu/MenuSection.d.ts.map +1 -0
  10. package/dist/components/Menu/helpers/helpers.d.ts.map +1 -0
  11. package/dist/components/Menu/index.d.ts +3 -1
  12. package/dist/components/Menu/index.d.ts.map +1 -1
  13. package/dist/components/Menu/stately/MenuItem.d.ts.map +1 -0
  14. package/dist/components/Menu/stately/MenuSection.d.ts.map +1 -0
  15. package/dist/components/Menu/stately/PartialNode.d.ts.map +1 -0
  16. package/dist/components/Options/useVisible.d.ts.map +1 -1
  17. package/dist/components/OptionsPaginated/OptionsPaginated.d.ts.map +1 -1
  18. package/dist/components/PaginatedSelect/PaginatedMultiSelect.d.ts.map +1 -1
  19. package/dist/components/PaginatedSelect/PaginatedSelect.d.ts.map +1 -1
  20. package/dist/components/Select/Select.d.ts +1 -1
  21. package/dist/components/Select/SelectLegacy.d.ts.map +1 -1
  22. package/dist/fonts/InterVariable.woff2 +0 -0
  23. package/dist/fuselage.css +1 -1
  24. package/dist/fuselage.css.map +1 -1
  25. package/dist/fuselage.development.js +80 -174
  26. package/dist/fuselage.development.js.map +1 -1
  27. package/dist/fuselage.production.js +11 -11
  28. package/package.json +2 -2
  29. package/dist/components/Menu/V2/Menu.d.ts +0 -28
  30. package/dist/components/Menu/V2/Menu.d.ts.map +0 -1
  31. package/dist/components/Menu/V2/MenuDropdown.d.ts.map +0 -1
  32. package/dist/components/Menu/V2/MenuItem.d.ts.map +0 -1
  33. package/dist/components/Menu/V2/MenuOption.d.ts.map +0 -1
  34. package/dist/components/Menu/V2/MenuPopover.d.ts.map +0 -1
  35. package/dist/components/Menu/V2/MenuSection.d.ts.map +0 -1
  36. package/dist/components/Menu/V2/helpers/helpers.d.ts.map +0 -1
  37. package/dist/components/Menu/V2/index.d.ts +0 -5
  38. package/dist/components/Menu/V2/index.d.ts.map +0 -1
  39. package/dist/components/Menu/V2/stately/MenuItem.d.ts.map +0 -1
  40. package/dist/components/Menu/V2/stately/MenuSection.d.ts.map +0 -1
  41. package/dist/components/Menu/V2/stately/PartialNode.d.ts.map +0 -1
  42. /package/dist/components/Menu/{V2/MenuDropdown.d.ts → MenuDropdown.d.ts} +0 -0
  43. /package/dist/components/Menu/{V2/MenuItem.d.ts → MenuItem.d.ts} +0 -0
  44. /package/dist/components/Menu/{V2/MenuPopover.d.ts → MenuPopover.d.ts} +0 -0
  45. /package/dist/components/Menu/{V2/MenuSection.d.ts → MenuSection.d.ts} +0 -0
  46. /package/dist/components/Menu/{V2/helpers → helpers}/helpers.d.ts +0 -0
  47. /package/dist/components/Menu/{V2/stately → stately}/MenuItem.d.ts +0 -0
  48. /package/dist/components/Menu/{V2/stately → stately}/MenuSection.d.ts +0 -0
  49. /package/dist/components/Menu/{V2/stately → stately}/PartialNode.d.ts +0 -0
@@ -620,7 +620,7 @@ function AutoComplete({ value, filter, setFilter, options = [], renderItem, rend
620
620
  : selected;
621
621
  });
622
622
  }, [value]);
623
- const handleSelect = (0, fuselage_hooks_1.useEffectEvent)(([newValue]) => {
623
+ const handleSelect = (0, fuselage_hooks_1.useStableCallback)(([newValue]) => {
624
624
  if (selected.some((item) => item.value === newValue)) {
625
625
  hide();
626
626
  return;
@@ -636,7 +636,7 @@ function AutoComplete({ value, filter, setFilter, options = [], renderItem, rend
636
636
  setFilter?.('');
637
637
  hide();
638
638
  });
639
- const handleRemove = (0, fuselage_hooks_1.useEffectEvent)((event) => {
639
+ const handleRemove = (0, fuselage_hooks_1.useStableCallback)((event) => {
640
640
  event.stopPropagation();
641
641
  event.preventDefault();
642
642
  const filtered = selected.filter((item) => item.value !== event.currentTarget.value);
@@ -650,12 +650,12 @@ function AutoComplete({ value, filter, setFilter, options = [], renderItem, rend
650
650
  const memoizedOptions = (0, react_1.useMemo)(() => options.map(({ value, label }) => [value, label]), [options]);
651
651
  const firstSelectedIndex = (0, react_1.useMemo)(() => options.findIndex((option) => selected[0]?.value === option.value), [options, selected]);
652
652
  const [cursor, handleKeyDown, , reset, [optionsAreVisible, hide, show]] = (0, Options_1.useCursor)(firstSelectedIndex, memoizedOptions, handleSelect);
653
- const handleOnBlur = (0, fuselage_hooks_1.useEffectEvent)((event) => {
653
+ const handleOnBlur = (0, fuselage_hooks_1.useStableCallback)((event) => {
654
654
  hide();
655
655
  onBlurAction(event);
656
656
  });
657
657
  (0, react_1.useEffect)(reset, [filter, reset]);
658
- return ((0, jsx_runtime_1.jsxs)(Box_1.Box, { "rcx-autocomplete": true, ref: containerRef, onClick: (0, fuselage_hooks_1.useEffectEvent)(() => ref.current?.focus()), flexGrow: 1, className: (0, react_1.useMemo)(() => [error && 'invalid', disabled && 'disabled'], [error, disabled]), children: [(0, jsx_runtime_1.jsx)(Box_1.Box, { display: 'flex', flexGrow: 1, alignItems: 'center', flexWrap: 'wrap', margin: 'neg-x4', role: 'group', children: (0, jsx_runtime_1.jsxs)(Margins_1.Margins, { all: 'x4', children: [(0, jsx_runtime_1.jsx)(InputBox_1.Input, { ref: ref, onChange: (0, fuselage_hooks_1.useEffectEvent)((e) => setFilter?.(e.currentTarget.value)), onBlur: handleOnBlur, onFocus: show, onKeyDown: handleKeyDown, placeholder: optionsAreVisible === AnimatedVisibility_1.AnimatedVisibility.HIDDEN || !value
658
+ return ((0, jsx_runtime_1.jsxs)(Box_1.Box, { "rcx-autocomplete": true, ref: containerRef, onClick: (0, fuselage_hooks_1.useStableCallback)(() => ref.current?.focus()), flexGrow: 1, className: (0, react_1.useMemo)(() => [error && 'invalid', disabled && 'disabled'], [error, disabled]), children: [(0, jsx_runtime_1.jsx)(Box_1.Box, { display: 'flex', flexGrow: 1, alignItems: 'center', flexWrap: 'wrap', margin: 'neg-x4', role: 'group', children: (0, jsx_runtime_1.jsxs)(Margins_1.Margins, { all: 'x4', children: [(0, jsx_runtime_1.jsx)(InputBox_1.Input, { ref: ref, onChange: (0, fuselage_hooks_1.useStableCallback)((e) => setFilter?.(e.currentTarget.value)), onBlur: handleOnBlur, onFocus: show, onKeyDown: handleKeyDown, placeholder: optionsAreVisible === AnimatedVisibility_1.AnimatedVisibility.HIDDEN || !value
659
659
  ? placeholder
660
660
  : undefined, order: 1, "rcx-input-box--undecorated": true, value: filter, disabled: disabled, ...props }), selected.map((itemSelected) => RenderSelected ? ((0, jsx_runtime_1.jsx)(RenderSelected, { selected: itemSelected, onRemove: handleRemove }, itemSelected.value)) : ((0, jsx_runtime_1.jsx)(Chip_1.Chip, { value: itemSelected.value, children: itemSelected.label, onClick: handleRemove }, itemSelected.value)))] }) }), (0, jsx_runtime_1.jsx)(Box_1.Box, { "rcx-autocomplete__addon": true, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { name: optionsAreVisible === AnimatedVisibility_1.AnimatedVisibility.VISIBLE
661
661
  ? 'cross'
@@ -3410,7 +3410,7 @@ const InputBox = (0, react_1.forwardRef)(function InputBox({ className, addon, e
3410
3410
  if (addon && innerRef.current && innerRef.current.parentElement) {
3411
3411
  innerRef.current.parentElement.classList.toggle('invalid', !innerRef.current.checkValidity());
3412
3412
  }
3413
- }, []);
3413
+ }, [addon, error]);
3414
3414
  const handleChange = (0, react_1.useCallback)((event) => {
3415
3415
  if (addon && innerRef.current && innerRef.current.parentElement) {
3416
3416
  innerRef.current.parentElement.classList.toggle('invalid', !innerRef.current.checkValidity());
@@ -3680,66 +3680,6 @@ Object.defineProperty(exports, "Margins", ({ enumerable: true, get: function ()
3680
3680
  /*!**************************************!*\
3681
3681
  !*** ./src/components/Menu/Menu.tsx ***!
3682
3682
  \**************************************/
3683
- /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3684
-
3685
-
3686
- Object.defineProperty(exports, "__esModule", ({ value: true }));
3687
- const jsx_runtime_1 = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
3688
- const react_1 = __webpack_require__(/*! react */ "react");
3689
- const Button_1 = __webpack_require__(/*! ../Button */ "./src/components/Button/index.ts");
3690
- const Options_1 = __webpack_require__(/*! ../Options */ "./src/components/Options/index.ts");
3691
- const PositionAnimated_1 = __webpack_require__(/*! ../PositionAnimated */ "./src/components/PositionAnimated/index.ts");
3692
- const menuAction = ([selected], options) => {
3693
- options[selected].action?.();
3694
- };
3695
- const mapOptions = (options) => Object.entries(options).map(([value, { type = 'option', label, disabled }]) => [
3696
- value,
3697
- label,
3698
- undefined,
3699
- disabled,
3700
- type,
3701
- ]);
3702
- const Menu = ({ tiny, mini, small = !(tiny || mini), options, optionWidth, placement = 'bottom-start', renderItem, maxHeight, icon = 'kebab', ...props }) => {
3703
- const mappedOptions = mapOptions(options);
3704
- const [cursor, handleKeyDown, handleKeyUp, reset, [visible, hide, show]] = (0, Options_1.useCursor)(-1, mappedOptions, (args, [, hide]) => {
3705
- menuAction(args, options);
3706
- reset();
3707
- hide();
3708
- });
3709
- const ref = (0, react_1.useRef)(null);
3710
- const onClick = (0, react_1.useCallback)(() => {
3711
- if (ref.current?.classList.contains('focus-visible')) {
3712
- ref.current.classList.remove('focus-visible');
3713
- hide();
3714
- return;
3715
- }
3716
- if (ref.current) {
3717
- ref.current.focus();
3718
- show();
3719
- ref.current.classList.add('focus-visible');
3720
- }
3721
- }, [hide, show]);
3722
- const handleSelection = (0, react_1.useCallback)((args) => {
3723
- menuAction(args, options);
3724
- reset();
3725
- hide();
3726
- }, [hide, reset, options]);
3727
- (0, react_1.useEffect)(() => {
3728
- if (visible === 'hidden') {
3729
- ref.current?.classList.remove('focus-visible');
3730
- }
3731
- }, [visible]);
3732
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Button_1.IconButton, { "data-testid": 'menu', ref: ref, small: small, tiny: tiny, mini: mini, onClick: onClick, onBlur: hide, onKeyUp: handleKeyUp, onKeyDown: handleKeyDown, icon: icon, ...props }), (0, jsx_runtime_1.jsx)(PositionAnimated_1.PositionAnimated, { width: 'auto', visible: visible, anchor: ref, placement: placement, children: (0, jsx_runtime_1.jsx)(Options_1.Options, { maxHeight: maxHeight, renderItem: renderItem, width: optionWidth, onSelect: handleSelection, options: mappedOptions, cursor: cursor, ref: ref }) })] }));
3733
- };
3734
- exports["default"] = Menu;
3735
-
3736
-
3737
- /***/ }),
3738
-
3739
- /***/ "./src/components/Menu/V2/Menu.tsx":
3740
- /*!*****************************************!*\
3741
- !*** ./src/components/Menu/V2/Menu.tsx ***!
3742
- \*****************************************/
3743
3683
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3744
3684
 
3745
3685
 
@@ -3752,10 +3692,10 @@ const react_1 = __webpack_require__(/*! react */ "react");
3752
3692
  const react_aria_1 = __webpack_require__(/*! react-aria */ "react-aria");
3753
3693
  const react_dom_1 = __webpack_require__(/*! react-dom */ "react-dom");
3754
3694
  const react_stately_1 = __webpack_require__(/*! react-stately */ "react-stately");
3755
- const Button_1 = __webpack_require__(/*! ../../Button */ "./src/components/Button/index.ts");
3756
- const MenuDropdown_1 = __importDefault(__webpack_require__(/*! ./MenuDropdown */ "./src/components/Menu/V2/MenuDropdown.tsx"));
3757
- const MenuPopover_1 = __importDefault(__webpack_require__(/*! ./MenuPopover */ "./src/components/Menu/V2/MenuPopover.tsx"));
3758
- const helpers_1 = __webpack_require__(/*! ./helpers/helpers */ "./src/components/Menu/V2/helpers/helpers.ts");
3695
+ const Button_1 = __webpack_require__(/*! ../Button */ "./src/components/Button/index.ts");
3696
+ const MenuDropdown_1 = __importDefault(__webpack_require__(/*! ./MenuDropdown */ "./src/components/Menu/MenuDropdown.tsx"));
3697
+ const MenuPopover_1 = __importDefault(__webpack_require__(/*! ./MenuPopover */ "./src/components/Menu/MenuPopover.tsx"));
3698
+ const helpers_1 = __webpack_require__(/*! ./helpers/helpers */ "./src/components/Menu/helpers/helpers.ts");
3759
3699
  const Menu = ({ icon = 'kebab', placement = 'bottom-start', title, is: MenuButton = Button_1.IconButton, className, pressed, maxWidth = 'x250', button, detached, ...props }) => {
3760
3700
  const state = (0, react_stately_1.useMenuTriggerState)(props);
3761
3701
  const ref = (0, react_1.useRef)(null);
@@ -3778,16 +3718,15 @@ const Menu = ({ icon = 'kebab', placement = 'bottom-start', title, is: MenuButto
3778
3718
  pressed: pressed || state.isOpen,
3779
3719
  })) : ((0, jsx_runtime_1.jsx)(MenuButton, { ...buttonProps, ref: ref, icon: icon, className: className, title: title, pressed: pressed || state.isOpen, small: defaultSmall, ...sizes })), detached ? (0, react_dom_1.createPortal)(popover, document.body) : popover] }));
3780
3720
  };
3781
- Menu.displayName = 'MenuV2';
3782
3721
  exports["default"] = Menu;
3783
3722
 
3784
3723
 
3785
3724
  /***/ }),
3786
3725
 
3787
- /***/ "./src/components/Menu/V2/MenuDropdown.tsx":
3788
- /*!*************************************************!*\
3789
- !*** ./src/components/Menu/V2/MenuDropdown.tsx ***!
3790
- \*************************************************/
3726
+ /***/ "./src/components/Menu/MenuDropdown.tsx":
3727
+ /*!**********************************************!*\
3728
+ !*** ./src/components/Menu/MenuDropdown.tsx ***!
3729
+ \**********************************************/
3791
3730
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3792
3731
 
3793
3732
 
@@ -3799,8 +3738,8 @@ const jsx_runtime_1 = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-ru
3799
3738
  const react_1 = __webpack_require__(/*! react */ "react");
3800
3739
  const react_aria_1 = __webpack_require__(/*! react-aria */ "react-aria");
3801
3740
  const react_stately_1 = __webpack_require__(/*! react-stately */ "react-stately");
3802
- const MenuItem_1 = __importDefault(__webpack_require__(/*! ./MenuItem */ "./src/components/Menu/V2/MenuItem.tsx"));
3803
- const MenuSection_1 = __importDefault(__webpack_require__(/*! ./MenuSection */ "./src/components/Menu/V2/MenuSection.tsx"));
3741
+ const MenuItem_1 = __importDefault(__webpack_require__(/*! ./MenuItem */ "./src/components/Menu/MenuItem.tsx"));
3742
+ const MenuSection_1 = __importDefault(__webpack_require__(/*! ./MenuSection */ "./src/components/Menu/MenuSection.tsx"));
3804
3743
  function MenuDropDown(props) {
3805
3744
  const state = (0, react_stately_1.useTreeState)(props);
3806
3745
  const ref = (0, react_1.useRef)(null);
@@ -3812,10 +3751,10 @@ exports["default"] = MenuDropDown;
3812
3751
 
3813
3752
  /***/ }),
3814
3753
 
3815
- /***/ "./src/components/Menu/V2/MenuItem.tsx":
3816
- /*!*********************************************!*\
3817
- !*** ./src/components/Menu/V2/MenuItem.tsx ***!
3818
- \*********************************************/
3754
+ /***/ "./src/components/Menu/MenuItem.tsx":
3755
+ /*!******************************************!*\
3756
+ !*** ./src/components/Menu/MenuItem.tsx ***!
3757
+ \******************************************/
3819
3758
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3820
3759
 
3821
3760
 
@@ -3826,8 +3765,8 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
3826
3765
  const jsx_runtime_1 = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
3827
3766
  const react_1 = __webpack_require__(/*! react */ "react");
3828
3767
  const react_aria_1 = __webpack_require__(/*! react-aria */ "react-aria");
3829
- const _1 = __webpack_require__(/*! . */ "./src/components/Menu/V2/index.ts");
3830
- const MenuOption_1 = __importDefault(__webpack_require__(/*! ./MenuOption */ "./src/components/Menu/V2/MenuOption.tsx"));
3768
+ const _1 = __webpack_require__(/*! . */ "./src/components/Menu/index.ts");
3769
+ const MenuOption_1 = __importDefault(__webpack_require__(/*! ./MenuOption */ "./src/components/Menu/MenuOption.tsx"));
3831
3770
  function MenuItem({ item, state }) {
3832
3771
  const ref = (0, react_1.useRef)(null);
3833
3772
  const { menuItemProps: { onPointerUp, ...menuItemProps }, isFocused, isDisabled, } = (0, react_aria_1.useMenuItem)({ key: item.key }, state, ref);
@@ -3838,17 +3777,17 @@ exports["default"] = MenuItem;
3838
3777
 
3839
3778
  /***/ }),
3840
3779
 
3841
- /***/ "./src/components/Menu/V2/MenuOption.tsx":
3842
- /*!***********************************************!*\
3843
- !*** ./src/components/Menu/V2/MenuOption.tsx ***!
3844
- \***********************************************/
3780
+ /***/ "./src/components/Menu/MenuOption.tsx":
3781
+ /*!********************************************!*\
3782
+ !*** ./src/components/Menu/MenuOption.tsx ***!
3783
+ \********************************************/
3845
3784
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3846
3785
 
3847
3786
 
3848
3787
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3849
3788
  const react_1 = __webpack_require__(/*! react */ "react");
3850
3789
  const react_2 = __webpack_require__(/*! react */ "react");
3851
- const prevent_1 = __webpack_require__(/*! ../../../helpers/prevent */ "./src/helpers/prevent.ts");
3790
+ const prevent_1 = __webpack_require__(/*! ../../helpers/prevent */ "./src/helpers/prevent.ts");
3852
3791
  const MenuOption = (0, react_2.forwardRef)(function MenuOption({ is: Tag = 'li', id, children, focus, selected, className, title, disabled, variant, onClick, ...props }, ref) {
3853
3792
  return ((0, react_1.createElement)(Tag, { ...props, key: id, id: id, ref: ref, "aria-selected": !!selected, "aria-disabled": !!disabled, title: title, onClick: (e) => {
3854
3793
  if (disabled) {
@@ -3872,19 +3811,19 @@ exports["default"] = (0, react_2.memo)(MenuOption);
3872
3811
 
3873
3812
  /***/ }),
3874
3813
 
3875
- /***/ "./src/components/Menu/V2/MenuPopover.tsx":
3876
- /*!************************************************!*\
3877
- !*** ./src/components/Menu/V2/MenuPopover.tsx ***!
3878
- \************************************************/
3814
+ /***/ "./src/components/Menu/MenuPopover.tsx":
3815
+ /*!*********************************************!*\
3816
+ !*** ./src/components/Menu/MenuPopover.tsx ***!
3817
+ \*********************************************/
3879
3818
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
3880
3819
 
3881
3820
 
3882
3821
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3883
3822
  const jsx_runtime_1 = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
3884
3823
  const fuselage_hooks_1 = __webpack_require__(/*! @rocket.chat/fuselage-hooks */ "@rocket.chat/fuselage-hooks");
3885
- const DropdownDesktop_1 = __webpack_require__(/*! ../../Dropdown/DropdownDesktop */ "./src/components/Dropdown/DropdownDesktop.tsx");
3886
- const DropdownMobile_1 = __webpack_require__(/*! ../../Dropdown/DropdownMobile */ "./src/components/Dropdown/DropdownMobile.tsx");
3887
- const Popover_1 = __webpack_require__(/*! ../../Popover */ "./src/components/Popover/index.ts");
3824
+ const DropdownDesktop_1 = __webpack_require__(/*! ../Dropdown/DropdownDesktop */ "./src/components/Dropdown/DropdownDesktop.tsx");
3825
+ const DropdownMobile_1 = __webpack_require__(/*! ../Dropdown/DropdownMobile */ "./src/components/Dropdown/DropdownMobile.tsx");
3826
+ const Popover_1 = __webpack_require__(/*! ../Popover */ "./src/components/Popover/index.ts");
3888
3827
  function MenuPopover({ children, state, offset = 4, maxWidth, ...props }) {
3889
3828
  const isMobile = !(0, fuselage_hooks_1.useBreakpoints)().includes('sm');
3890
3829
  if (isMobile) {
@@ -3897,10 +3836,10 @@ exports["default"] = MenuPopover;
3897
3836
 
3898
3837
  /***/ }),
3899
3838
 
3900
- /***/ "./src/components/Menu/V2/MenuSection.tsx":
3901
- /*!************************************************!*\
3902
- !*** ./src/components/Menu/V2/MenuSection.tsx ***!
3903
- \************************************************/
3839
+ /***/ "./src/components/Menu/MenuSection.tsx":
3840
+ /*!*********************************************!*\
3841
+ !*** ./src/components/Menu/MenuSection.tsx ***!
3842
+ \*********************************************/
3904
3843
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3905
3844
 
3906
3845
 
@@ -3910,10 +3849,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3910
3849
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3911
3850
  const jsx_runtime_1 = __webpack_require__(/*! react/jsx-runtime */ "react/jsx-runtime");
3912
3851
  const react_aria_1 = __webpack_require__(/*! react-aria */ "react-aria");
3913
- const Box_1 = __webpack_require__(/*! ../../Box */ "./src/components/Box/index.ts");
3914
- const Divider_1 = __webpack_require__(/*! ../../Divider */ "./src/components/Divider/index.ts");
3915
- const Option_1 = __webpack_require__(/*! ../../Option */ "./src/components/Option/index.ts");
3916
- const MenuItem_1 = __importDefault(__webpack_require__(/*! ./MenuItem */ "./src/components/Menu/V2/MenuItem.tsx"));
3852
+ const Box_1 = __webpack_require__(/*! ../Box */ "./src/components/Box/index.ts");
3853
+ const Divider_1 = __webpack_require__(/*! ../Divider */ "./src/components/Divider/index.ts");
3854
+ const Option_1 = __webpack_require__(/*! ../Option */ "./src/components/Option/index.ts");
3855
+ const MenuItem_1 = __importDefault(__webpack_require__(/*! ./MenuItem */ "./src/components/Menu/MenuItem.tsx"));
3917
3856
  function MenuSection({ section, state, }) {
3918
3857
  const { itemProps, headingProps, groupProps } = (0, react_aria_1.useMenuSection)({
3919
3858
  'heading': section.rendered,
@@ -3929,10 +3868,10 @@ exports["default"] = MenuSection;
3929
3868
 
3930
3869
  /***/ }),
3931
3870
 
3932
- /***/ "./src/components/Menu/V2/helpers/helpers.ts":
3933
- /*!***************************************************!*\
3934
- !*** ./src/components/Menu/V2/helpers/helpers.ts ***!
3935
- \***************************************************/
3871
+ /***/ "./src/components/Menu/helpers/helpers.ts":
3872
+ /*!************************************************!*\
3873
+ !*** ./src/components/Menu/helpers/helpers.ts ***!
3874
+ \************************************************/
3936
3875
  /***/ ((__unused_webpack_module, exports) => {
3937
3876
 
3938
3877
 
@@ -3973,10 +3912,10 @@ exports.getPlacement = getPlacement;
3973
3912
 
3974
3913
  /***/ }),
3975
3914
 
3976
- /***/ "./src/components/Menu/V2/index.ts":
3977
- /*!*****************************************!*\
3978
- !*** ./src/components/Menu/V2/index.ts ***!
3979
- \*****************************************/
3915
+ /***/ "./src/components/Menu/index.ts":
3916
+ /*!**************************************!*\
3917
+ !*** ./src/components/Menu/index.ts ***!
3918
+ \**************************************/
3980
3919
  /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
3981
3920
 
3982
3921
 
@@ -3984,14 +3923,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3984
3923
  return (mod && mod.__esModule) ? mod : { "default": mod };
3985
3924
  };
3986
3925
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3987
- exports.MenuItemDescription = exports.MenuItemTitle = exports.MenuItemSkeleton = exports.MenuItemInput = exports.MenuItemIcon = exports.MenuItemContent = exports.MenuItemColumn = exports.MenuItemAvatar = exports.MenuSection = exports.MenuItem = exports.MenuV2 = void 0;
3988
- var Menu_1 = __webpack_require__(/*! ./Menu */ "./src/components/Menu/V2/Menu.tsx");
3989
- Object.defineProperty(exports, "MenuV2", ({ enumerable: true, get: function () { return __importDefault(Menu_1).default; } }));
3990
- var MenuItem_1 = __webpack_require__(/*! ./stately/MenuItem */ "./src/components/Menu/V2/stately/MenuItem.tsx");
3926
+ exports.MenuItemDescription = exports.MenuItemTitle = exports.MenuItemSkeleton = exports.MenuItemInput = exports.MenuItemIcon = exports.MenuItemContent = exports.MenuItemColumn = exports.MenuItemAvatar = exports.MenuSection = exports.MenuItem = exports.Menu = void 0;
3927
+ var Menu_1 = __webpack_require__(/*! ./Menu */ "./src/components/Menu/Menu.tsx");
3928
+ Object.defineProperty(exports, "Menu", ({ enumerable: true, get: function () { return __importDefault(Menu_1).default; } }));
3929
+ var MenuItem_1 = __webpack_require__(/*! ./stately/MenuItem */ "./src/components/Menu/stately/MenuItem.tsx");
3991
3930
  Object.defineProperty(exports, "MenuItem", ({ enumerable: true, get: function () { return __importDefault(MenuItem_1).default; } }));
3992
- var MenuSection_1 = __webpack_require__(/*! ./stately/MenuSection */ "./src/components/Menu/V2/stately/MenuSection.tsx");
3931
+ var MenuSection_1 = __webpack_require__(/*! ./stately/MenuSection */ "./src/components/Menu/stately/MenuSection.tsx");
3993
3932
  Object.defineProperty(exports, "MenuSection", ({ enumerable: true, get: function () { return __importDefault(MenuSection_1).default; } }));
3994
- var Option_1 = __webpack_require__(/*! ../../Option */ "./src/components/Option/index.ts");
3933
+ var Option_1 = __webpack_require__(/*! ../Option */ "./src/components/Option/index.ts");
3995
3934
  Object.defineProperty(exports, "MenuItemAvatar", ({ enumerable: true, get: function () { return Option_1.OptionAvatar; } }));
3996
3935
  Object.defineProperty(exports, "MenuItemColumn", ({ enumerable: true, get: function () { return Option_1.OptionColumn; } }));
3997
3936
  Object.defineProperty(exports, "MenuItemContent", ({ enumerable: true, get: function () { return Option_1.OptionContent; } }));
@@ -4004,10 +3943,10 @@ Object.defineProperty(exports, "MenuItemDescription", ({ enumerable: true, get:
4004
3943
 
4005
3944
  /***/ }),
4006
3945
 
4007
- /***/ "./src/components/Menu/V2/stately/MenuItem.tsx":
4008
- /*!*****************************************************!*\
4009
- !*** ./src/components/Menu/V2/stately/MenuItem.tsx ***!
4010
- \*****************************************************/
3946
+ /***/ "./src/components/Menu/stately/MenuItem.tsx":
3947
+ /*!**************************************************!*\
3948
+ !*** ./src/components/Menu/stately/MenuItem.tsx ***!
3949
+ \**************************************************/
4011
3950
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4012
3951
 
4013
3952
 
@@ -4072,10 +4011,10 @@ exports["default"] = MenuItem;
4072
4011
 
4073
4012
  /***/ }),
4074
4013
 
4075
- /***/ "./src/components/Menu/V2/stately/MenuSection.tsx":
4076
- /*!********************************************************!*\
4077
- !*** ./src/components/Menu/V2/stately/MenuSection.tsx ***!
4078
- \********************************************************/
4014
+ /***/ "./src/components/Menu/stately/MenuSection.tsx":
4015
+ /*!*****************************************************!*\
4016
+ !*** ./src/components/Menu/stately/MenuSection.tsx ***!
4017
+ \*****************************************************/
4079
4018
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4080
4019
 
4081
4020
 
@@ -4121,39 +4060,6 @@ MenuSection.getCollectionNode = function* getCollectionNode(props) {
4121
4060
  exports["default"] = MenuSection;
4122
4061
 
4123
4062
 
4124
- /***/ }),
4125
-
4126
- /***/ "./src/components/Menu/index.ts":
4127
- /*!**************************************!*\
4128
- !*** ./src/components/Menu/index.ts ***!
4129
- \**************************************/
4130
- /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
4131
-
4132
-
4133
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4134
- if (k2 === undefined) k2 = k;
4135
- var desc = Object.getOwnPropertyDescriptor(m, k);
4136
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
4137
- desc = { enumerable: true, get: function() { return m[k]; } };
4138
- }
4139
- Object.defineProperty(o, k2, desc);
4140
- }) : (function(o, m, k, k2) {
4141
- if (k2 === undefined) k2 = k;
4142
- o[k2] = m[k];
4143
- }));
4144
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
4145
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
4146
- };
4147
- var __importDefault = (this && this.__importDefault) || function (mod) {
4148
- return (mod && mod.__esModule) ? mod : { "default": mod };
4149
- };
4150
- Object.defineProperty(exports, "__esModule", ({ value: true }));
4151
- exports.Menu = void 0;
4152
- var Menu_1 = __webpack_require__(/*! ./Menu */ "./src/components/Menu/Menu.tsx");
4153
- Object.defineProperty(exports, "Menu", ({ enumerable: true, get: function () { return __importDefault(Menu_1).default; } }));
4154
- __exportStar(__webpack_require__(/*! ./V2 */ "./src/components/Menu/V2/index.ts"), exports);
4155
-
4156
-
4157
4063
  /***/ }),
4158
4064
 
4159
4065
  /***/ "./src/components/Message/Message.tsx":
@@ -5992,7 +5898,7 @@ const MultiSelect = (0, react_1.forwardRef)(({ value, filter, setFilter, options
5992
5898
  }
5993
5899
  return null;
5994
5900
  };
5995
- const handleClick = (0, fuselage_hooks_1.useEffectEvent)(() => {
5901
+ const handleClick = (0, fuselage_hooks_1.useStableCallback)(() => {
5996
5902
  if (visible === AnimatedVisibility_1.AnimatedVisibility.VISIBLE) {
5997
5903
  return hide();
5998
5904
  }
@@ -6776,14 +6682,14 @@ const useCursor = (initial, options, onChange) => {
6776
6682
  const [cursor, setCursor] = (0, react_1.useState)(initial);
6777
6683
  const visibilityHandler = (0, useVisible_1.useVisible)();
6778
6684
  const [visibility, hide, show] = visibilityHandler;
6779
- const reset = (0, fuselage_hooks_1.useEffectEvent)(() => setCursor(0));
6780
- const handleKeyUp = (0, fuselage_hooks_1.useEffectEvent)((e) => {
6685
+ const reset = (0, fuselage_hooks_1.useStableCallback)(() => setCursor(0));
6686
+ const handleKeyUp = (0, fuselage_hooks_1.useStableCallback)((e) => {
6781
6687
  const { keyCode } = e;
6782
6688
  if (AnimatedVisibility_1.AnimatedVisibility.HIDDEN === visibility && keyCode === keyCodes.TAB) {
6783
6689
  return show();
6784
6690
  }
6785
6691
  });
6786
- const handleKeyDown = (0, fuselage_hooks_1.useEffectEvent)((e) => {
6692
+ const handleKeyDown = (0, fuselage_hooks_1.useStableCallback)((e) => {
6787
6693
  const isSelectableOption = ([, , , type]) => !type || type === 'option';
6788
6694
  const getLastIndex = () => findLastIndex(options, isSelectableOption);
6789
6695
  const { keyCode, key } = e;
@@ -6866,8 +6772,8 @@ const fuselage_hooks_1 = __webpack_require__(/*! @rocket.chat/fuselage-hooks */
6866
6772
  const AnimatedVisibility_1 = __webpack_require__(/*! ../AnimatedVisibility */ "./src/components/AnimatedVisibility/index.ts");
6867
6773
  const useVisible = (initialVisibility = AnimatedVisibility_1.AnimatedVisibility.HIDDEN) => {
6868
6774
  const [visible, setVisible] = (0, fuselage_hooks_1.useDebouncedState)(initialVisibility, 10);
6869
- const hide = (0, fuselage_hooks_1.useEffectEvent)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.HIDDEN));
6870
- const show = (0, fuselage_hooks_1.useEffectEvent)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.VISIBLE));
6775
+ const hide = (0, fuselage_hooks_1.useStableCallback)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.HIDDEN));
6776
+ const show = (0, fuselage_hooks_1.useStableCallback)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.VISIBLE));
6871
6777
  return [visible, hide, show];
6872
6778
  };
6873
6779
  exports.useVisible = useVisible;
@@ -6912,8 +6818,8 @@ exports.OptionsPaginated = (0, react_2.forwardRef)(({ withTitle, multiple, rende
6912
6818
  });
6913
6819
  const useVisible = (initialVisibility = AnimatedVisibility_1.AnimatedVisibility.HIDDEN) => {
6914
6820
  const [visible, setVisible] = (0, fuselage_hooks_1.useDebouncedState)(initialVisibility, 10);
6915
- const hide = (0, fuselage_hooks_1.useEffectEvent)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.HIDDEN));
6916
- const show = (0, fuselage_hooks_1.useEffectEvent)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.VISIBLE));
6821
+ const hide = (0, fuselage_hooks_1.useStableCallback)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.HIDDEN));
6822
+ const show = (0, fuselage_hooks_1.useStableCallback)(() => setVisible(AnimatedVisibility_1.AnimatedVisibility.VISIBLE));
6917
6823
  return [visible, hide, show];
6918
6824
  };
6919
6825
  exports.useVisible = useVisible;
@@ -6982,7 +6888,7 @@ const PaginatedMultiSelect = ({ withTitle, value, filter, options = [], error, d
6982
6888
  const [visible, hide, show] = (0, useVisible_1.useVisible)();
6983
6889
  const ref = (0, react_1.useRef)(null);
6984
6890
  const { ref: containerRef, borderBoxSize } = (0, fuselage_hooks_1.useResizeObserver)();
6985
- const handleClick = (0, fuselage_hooks_1.useEffectEvent)(() => {
6891
+ const handleClick = (0, fuselage_hooks_1.useStableCallback)(() => {
6986
6892
  if (visible === AnimatedVisibility_1.AnimatedVisibility.VISIBLE) {
6987
6893
  return hide();
6988
6894
  }
@@ -7083,7 +6989,7 @@ const PaginatedSelect = ({ value, withTitle, filter, setFilter: _setFilter, erro
7083
6989
  const currentValue = value !== undefined ? value : internalValue;
7084
6990
  const option = options.find((option) => option?.value === currentValue);
7085
6991
  const [visible, hide, show] = (0, useVisible_1.useVisible)();
7086
- const internalChangedByClick = (0, fuselage_hooks_1.useEffectEvent)(([value]) => {
6992
+ const internalChangedByClick = (0, fuselage_hooks_1.useStableCallback)(([value]) => {
7087
6993
  setInternalValue(value);
7088
6994
  onChange(value);
7089
6995
  hide();
@@ -7095,7 +7001,7 @@ const PaginatedSelect = ({ value, withTitle, filter, setFilter: _setFilter, erro
7095
7001
  const visibleText = isUnfilteredOrHidden
7096
7002
  ? valueLabel || placeholder
7097
7003
  : undefined;
7098
- const handleClick = (0, fuselage_hooks_1.useEffectEvent)(() => {
7004
+ const handleClick = (0, fuselage_hooks_1.useStableCallback)(() => {
7099
7005
  if (visible === AnimatedVisibility_1.AnimatedVisibility.VISIBLE) {
7100
7006
  return hide();
7101
7007
  }
@@ -7127,7 +7033,7 @@ const react_1 = __webpack_require__(/*! react */ "react");
7127
7033
  const InputBox_1 = __webpack_require__(/*! ../InputBox */ "./src/components/InputBox/index.ts");
7128
7034
  const PaginatedSelect_1 = __webpack_require__(/*! ./PaginatedSelect */ "./src/components/PaginatedSelect/PaginatedSelect.tsx");
7129
7035
  const PaginatedSelectFiltered = ({ filter, setFilter, options, placeholder, ...props }) => {
7130
- const anchor = (0, react_1.useMemo)(() => (0, react_1.forwardRef)(({ filter, onChange: _onChange, ...props }, ref) => ((0, jsx_runtime_1.jsx)(InputBox_1.Input, { mi: 4, flexGrow: 1, className: 'rcx-select__focus', ref: ref, placeholder: placeholder, value: filter, onChange: (0, fuselage_hooks_1.useEffectEvent)((e) => {
7036
+ const anchor = (0, react_1.useMemo)(() => (0, react_1.forwardRef)(({ filter, onChange: _onChange, ...props }, ref) => ((0, jsx_runtime_1.jsx)(InputBox_1.Input, { mi: 4, flexGrow: 1, className: 'rcx-select__focus', ref: ref, placeholder: placeholder, value: filter, onChange: (0, fuselage_hooks_1.useStableCallback)((e) => {
7131
7037
  setFilter(e.currentTarget.value);
7132
7038
  }), ...props, "rcx-input-box--undecorated": true }))), [placeholder, setFilter]);
7133
7039
  return ((0, jsx_runtime_1.jsx)(PaginatedSelect_1.PaginatedSelect, { placeholder: undefined, filter: filter, options: options, ...props, anchor: anchor }));
@@ -8042,7 +7948,7 @@ const pollTouchingEdges = (element, touchingEdgesRef, onScrollContent) => {
8042
7948
  const Scrollable = ({ children, horizontal, vertical, smooth, onScrollContent, }) => {
8043
7949
  const scrollTimeoutRef = (0, react_1.useRef)();
8044
7950
  const touchingEdgesRef = (0, react_1.useRef)({});
8045
- const handleScroll = (0, fuselage_hooks_1.useEffectEvent)((event) => {
7951
+ const handleScroll = (0, fuselage_hooks_1.useStableCallback)((event) => {
8046
7952
  const element = event.currentTarget;
8047
7953
  if (!scrollTimeoutRef.current) {
8048
7954
  pollTouchingEdges(element, touchingEdgesRef, onScrollContent);
@@ -8374,7 +8280,7 @@ const SelectFocus_1 = __importDefault(__webpack_require__(/*! ./SelectFocus */ "
8374
8280
  const Wrapper = (0, react_1.forwardRef)((props, ref) => ((0, jsx_runtime_1.jsx)(Box_1.Box, { is: 'div', "rcx-select__wrapper": true, ref: ref, ...props })));
8375
8281
  const useDidUpdate = (func, deps) => {
8376
8282
  const didMount = (0, react_1.useRef)(false);
8377
- const fn = (0, fuselage_hooks_1.useEffectEvent)(func);
8283
+ const fn = (0, fuselage_hooks_1.useStableCallback)(func);
8378
8284
  (0, react_1.useEffect)(() => {
8379
8285
  if (didMount.current) {
8380
8286
  fn();
@@ -8384,7 +8290,7 @@ const useDidUpdate = (func, deps) => {
8384
8290
  };
8385
8291
  const SelectLegacy = (0, react_1.forwardRef)(function SelectLegacy({ value, filter, error, disabled, options = [], anchor: Anchor = SelectFocus_1.default, onChange = () => { }, getValue = ([value] = ['', '']) => value, getLabel = ([, label] = ['', '']) => label, placeholder = '', renderItem, renderSelected: RenderSelected, renderOptions: _Options = Options_1.Options, addonIcon, customEmpty, ...props }, ref) {
8386
8292
  const [internalValue, setInternalValue] = (0, react_1.useState)(value || '');
8387
- const internalChangedByKeyboard = (0, fuselage_hooks_1.useEffectEvent)(([value]) => {
8293
+ const internalChangedByKeyboard = (0, fuselage_hooks_1.useStableCallback)(([value]) => {
8388
8294
  setInternalValue(value);
8389
8295
  onChange(value);
8390
8296
  });
@@ -8404,7 +8310,7 @@ const SelectLegacy = (0, react_1.forwardRef)(function SelectLegacy({ value, filt
8404
8310
  const innerRef = (0, react_1.useRef)(null);
8405
8311
  const anchorRef = (0, fuselage_hooks_1.useMergedRefs)(ref, innerRef);
8406
8312
  const removeFocusClass = () => innerRef.current?.classList.remove('focus-visible');
8407
- const internalChangedByClick = (0, fuselage_hooks_1.useEffectEvent)(([value]) => {
8313
+ const internalChangedByClick = (0, fuselage_hooks_1.useStableCallback)(([value]) => {
8408
8314
  setInternalValue(value);
8409
8315
  onChange(value);
8410
8316
  removeFocusClass();
@@ -8425,7 +8331,7 @@ const SelectLegacy = (0, react_1.forwardRef)(function SelectLegacy({ value, filt
8425
8331
  const valueLabel = getLabel(option);
8426
8332
  const visibleText = (filter === undefined || visible === AnimatedVisibility_1.AnimatedVisibility.HIDDEN) &&
8427
8333
  (valueLabel || placeholder || typeof placeholder === 'string');
8428
- const handleClick = (0, fuselage_hooks_1.useEffectEvent)(() => {
8334
+ const handleClick = (0, fuselage_hooks_1.useStableCallback)(() => {
8429
8335
  if (innerRef.current?.classList.contains('focus-visible')) {
8430
8336
  removeFocusClass();
8431
8337
  return hide();