@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.
- package/dist/components/AutoComplete/AutoComplete.d.ts.map +1 -1
- package/dist/components/Menu/Menu.d.ts +19 -23
- package/dist/components/Menu/Menu.d.ts.map +1 -1
- package/dist/components/Menu/MenuDropdown.d.ts.map +1 -0
- package/dist/components/Menu/MenuItem.d.ts.map +1 -0
- package/dist/components/Menu/{V2/MenuOption.d.ts → MenuOption.d.ts} +1 -1
- package/dist/components/Menu/MenuOption.d.ts.map +1 -0
- package/dist/components/Menu/MenuPopover.d.ts.map +1 -0
- package/dist/components/Menu/MenuSection.d.ts.map +1 -0
- package/dist/components/Menu/helpers/helpers.d.ts.map +1 -0
- package/dist/components/Menu/index.d.ts +3 -1
- package/dist/components/Menu/index.d.ts.map +1 -1
- package/dist/components/Menu/stately/MenuItem.d.ts.map +1 -0
- package/dist/components/Menu/stately/MenuSection.d.ts.map +1 -0
- package/dist/components/Menu/stately/PartialNode.d.ts.map +1 -0
- package/dist/components/Options/useVisible.d.ts.map +1 -1
- package/dist/components/OptionsPaginated/OptionsPaginated.d.ts.map +1 -1
- package/dist/components/PaginatedSelect/PaginatedMultiSelect.d.ts.map +1 -1
- package/dist/components/PaginatedSelect/PaginatedSelect.d.ts.map +1 -1
- package/dist/components/Select/Select.d.ts +1 -1
- package/dist/components/Select/SelectLegacy.d.ts.map +1 -1
- package/dist/fonts/InterVariable.woff2 +0 -0
- package/dist/fuselage.css +1 -1
- package/dist/fuselage.css.map +1 -1
- package/dist/fuselage.development.js +80 -174
- package/dist/fuselage.development.js.map +1 -1
- package/dist/fuselage.production.js +11 -11
- package/package.json +2 -2
- package/dist/components/Menu/V2/Menu.d.ts +0 -28
- package/dist/components/Menu/V2/Menu.d.ts.map +0 -1
- package/dist/components/Menu/V2/MenuDropdown.d.ts.map +0 -1
- package/dist/components/Menu/V2/MenuItem.d.ts.map +0 -1
- package/dist/components/Menu/V2/MenuOption.d.ts.map +0 -1
- package/dist/components/Menu/V2/MenuPopover.d.ts.map +0 -1
- package/dist/components/Menu/V2/MenuSection.d.ts.map +0 -1
- package/dist/components/Menu/V2/helpers/helpers.d.ts.map +0 -1
- package/dist/components/Menu/V2/index.d.ts +0 -5
- package/dist/components/Menu/V2/index.d.ts.map +0 -1
- package/dist/components/Menu/V2/stately/MenuItem.d.ts.map +0 -1
- package/dist/components/Menu/V2/stately/MenuSection.d.ts.map +0 -1
- package/dist/components/Menu/V2/stately/PartialNode.d.ts.map +0 -1
- /package/dist/components/Menu/{V2/MenuDropdown.d.ts → MenuDropdown.d.ts} +0 -0
- /package/dist/components/Menu/{V2/MenuItem.d.ts → MenuItem.d.ts} +0 -0
- /package/dist/components/Menu/{V2/MenuPopover.d.ts → MenuPopover.d.ts} +0 -0
- /package/dist/components/Menu/{V2/MenuSection.d.ts → MenuSection.d.ts} +0 -0
- /package/dist/components/Menu/{V2/helpers → helpers}/helpers.d.ts +0 -0
- /package/dist/components/Menu/{V2/stately → stately}/MenuItem.d.ts +0 -0
- /package/dist/components/Menu/{V2/stately → stately}/MenuSection.d.ts +0 -0
- /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.
|
|
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.
|
|
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.
|
|
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.
|
|
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__(/*!
|
|
3756
|
-
const MenuDropdown_1 = __importDefault(__webpack_require__(/*! ./MenuDropdown */ "./src/components/Menu/
|
|
3757
|
-
const MenuPopover_1 = __importDefault(__webpack_require__(/*! ./MenuPopover */ "./src/components/Menu/
|
|
3758
|
-
const helpers_1 = __webpack_require__(/*! ./helpers/helpers */ "./src/components/Menu/
|
|
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/
|
|
3788
|
-
|
|
3789
|
-
!*** ./src/components/Menu/
|
|
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/
|
|
3803
|
-
const MenuSection_1 = __importDefault(__webpack_require__(/*! ./MenuSection */ "./src/components/Menu/
|
|
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/
|
|
3816
|
-
|
|
3817
|
-
!*** ./src/components/Menu/
|
|
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/
|
|
3830
|
-
const MenuOption_1 = __importDefault(__webpack_require__(/*! ./MenuOption */ "./src/components/Menu/
|
|
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/
|
|
3842
|
-
|
|
3843
|
-
!*** ./src/components/Menu/
|
|
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__(/*!
|
|
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/
|
|
3876
|
-
|
|
3877
|
-
!*** ./src/components/Menu/
|
|
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__(/*!
|
|
3886
|
-
const DropdownMobile_1 = __webpack_require__(/*!
|
|
3887
|
-
const Popover_1 = __webpack_require__(/*!
|
|
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/
|
|
3901
|
-
|
|
3902
|
-
!*** ./src/components/Menu/
|
|
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__(/*!
|
|
3914
|
-
const Divider_1 = __webpack_require__(/*!
|
|
3915
|
-
const Option_1 = __webpack_require__(/*!
|
|
3916
|
-
const MenuItem_1 = __importDefault(__webpack_require__(/*! ./MenuItem */ "./src/components/Menu/
|
|
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/
|
|
3933
|
-
|
|
3934
|
-
!*** ./src/components/Menu/
|
|
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/
|
|
3977
|
-
|
|
3978
|
-
!*** ./src/components/Menu/
|
|
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.
|
|
3988
|
-
var Menu_1 = __webpack_require__(/*! ./Menu */ "./src/components/Menu/
|
|
3989
|
-
Object.defineProperty(exports, "
|
|
3990
|
-
var MenuItem_1 = __webpack_require__(/*! ./stately/MenuItem */ "./src/components/Menu/
|
|
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/
|
|
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__(/*!
|
|
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/
|
|
4008
|
-
|
|
4009
|
-
!*** ./src/components/Menu/
|
|
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/
|
|
4076
|
-
|
|
4077
|
-
!*** ./src/components/Menu/
|
|
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.
|
|
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.
|
|
6780
|
-
const handleKeyUp = (0, fuselage_hooks_1.
|
|
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.
|
|
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.
|
|
6870
|
-
const show = (0, fuselage_hooks_1.
|
|
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.
|
|
6916
|
-
const show = (0, fuselage_hooks_1.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
8334
|
+
const handleClick = (0, fuselage_hooks_1.useStableCallback)(() => {
|
|
8429
8335
|
if (innerRef.current?.classList.contains('focus-visible')) {
|
|
8430
8336
|
removeFocusClass();
|
|
8431
8337
|
return hide();
|