@rocket.chat/fuselage 0.41.0 → 0.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 0.42.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#1087](https://github.com/RocketChat/fuselage/pull/1087) [`4cd95535b`](https://github.com/RocketChat/fuselage/commit/4cd95535b6c384af6cb56ce98e2045dbe65ef9de) Thanks [@ggazzo](https://github.com/ggazzo)! - feat(fuselage): Adds detached prop to render Menu on the document body
|
|
8
|
+
|
|
3
9
|
## 0.41.0
|
|
4
10
|
|
|
5
11
|
### Minor Changes
|
|
@@ -14,6 +14,7 @@ interface MenuButtonProps<T> extends AriaMenuProps<T>, MenuTriggerProps {
|
|
|
14
14
|
mini?: boolean;
|
|
15
15
|
placement?: UsePositionOptions['placement'];
|
|
16
16
|
title?: string;
|
|
17
|
+
detached?: boolean;
|
|
17
18
|
/**
|
|
18
19
|
* A component that renders an IconButton
|
|
19
20
|
*/
|
|
@@ -23,6 +24,6 @@ interface MenuButtonProps<T> extends AriaMenuProps<T>, MenuTriggerProps {
|
|
|
23
24
|
maxWidth?: string;
|
|
24
25
|
button?: React.ReactElement;
|
|
25
26
|
}
|
|
26
|
-
declare const Menu: <T extends object>({ icon, placement, title, is: MenuButton, className, pressed, maxWidth, button, ...props }: MenuButtonProps<T>) => JSX.Element;
|
|
27
|
+
declare const Menu: <T extends object>({ icon, placement, title, is: MenuButton, className, pressed, maxWidth, button, detached, ...props }: MenuButtonProps<T>) => JSX.Element;
|
|
27
28
|
export default Menu;
|
|
28
29
|
//# sourceMappingURL=Menu.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../../src/components/Menu/V2/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../../src/components/Menu/V2/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtD,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,UAAU,eAAe,CAAC,CAAC,CAAE,SAAQ,aAAa,CAAC,CAAC,CAAC,EAAE,gBAAgB;IACrE,IAAI,CAAC,EAAE,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,cAAc,CAAC,OAAO,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;IACpD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;CAC7B;AACD,QAAA,MAAM,IAAI,6JA+DT,CAAC;AACF,eAAe,IAAI,CAAC"}
|
|
@@ -6494,13 +6494,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
6494
6494
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6495
6495
|
var react_1 = __importStar(__webpack_require__(/*! react */ "react"));
|
|
6496
6496
|
var react_aria_1 = __webpack_require__(/*! react-aria */ "react-aria");
|
|
6497
|
+
var react_dom_1 = __webpack_require__(/*! react-dom */ "react-dom");
|
|
6497
6498
|
var react_stately_1 = __webpack_require__(/*! react-stately */ "react-stately");
|
|
6498
6499
|
var Button_1 = __webpack_require__(/*! ../../Button */ "./src/components/Button/index.ts");
|
|
6499
6500
|
var MenuDropdown_1 = __importDefault(__webpack_require__(/*! ./MenuDropdown */ "./src/components/Menu/V2/MenuDropdown.tsx"));
|
|
6500
6501
|
var MenuPopover_1 = __importDefault(__webpack_require__(/*! ./MenuPopover */ "./src/components/Menu/V2/MenuPopover.tsx"));
|
|
6501
6502
|
var helpers_1 = __webpack_require__(/*! ./helpers/helpers */ "./src/components/Menu/V2/helpers/helpers.ts");
|
|
6502
6503
|
var Menu = function (_a) {
|
|
6503
|
-
var _b = _a.icon, icon = _b === void 0 ? 'kebab' : _b, _c = _a.placement, placement = _c === void 0 ? 'bottom-start' : _c, title = _a.title, _d = _a.is, MenuButton = _d === void 0 ? Button_1.IconButton : _d, className = _a.className, pressed = _a.pressed, _e = _a.maxWidth, maxWidth = _e === void 0 ? 'x250' : _e, button = _a.button, props = __rest(_a, ["icon", "placement", "title", "is", "className", "pressed", "maxWidth", "button"]);
|
|
6504
|
+
var _b = _a.icon, icon = _b === void 0 ? 'kebab' : _b, _c = _a.placement, placement = _c === void 0 ? 'bottom-start' : _c, title = _a.title, _d = _a.is, MenuButton = _d === void 0 ? Button_1.IconButton : _d, className = _a.className, pressed = _a.pressed, _e = _a.maxWidth, maxWidth = _e === void 0 ? 'x250' : _e, button = _a.button, detached = _a.detached, props = __rest(_a, ["icon", "placement", "title", "is", "className", "pressed", "maxWidth", "button", "detached"]);
|
|
6504
6505
|
var state = (0, react_stately_1.useMenuTriggerState)(props);
|
|
6505
6506
|
var ref = (0, react_1.useRef)(null);
|
|
6506
6507
|
var _f = (0, react_aria_1.useMenuTrigger)({}, state, ref), menuTriggerProps = _f.menuTriggerProps, menuProps = _f.menuProps;
|
|
@@ -6508,10 +6509,11 @@ var Menu = function (_a) {
|
|
|
6508
6509
|
var large = props.large, medium = props.medium, tiny = props.tiny, mini = props.mini;
|
|
6509
6510
|
var sizes = { large: large, medium: medium, tiny: tiny, mini: mini };
|
|
6510
6511
|
var defaultSmall = !large && !medium && !tiny && !mini;
|
|
6512
|
+
var popover = state.isOpen && (react_1.default.createElement(MenuPopover_1.default, { state: state, triggerRef: ref, placement: (0, helpers_1.getPlacement)(placement), maxWidth: maxWidth },
|
|
6513
|
+
react_1.default.createElement(MenuDropdown_1.default, __assign({}, props, menuProps))));
|
|
6511
6514
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
6512
6515
|
button ? ((0, react_1.cloneElement)(button, __assign(__assign({}, buttonProps), { ref: ref, icon: icon, className: className, title: title, pressed: pressed || state.isOpen }))) : (react_1.default.createElement(MenuButton, __assign({}, buttonProps, { ref: ref, icon: icon, className: className, title: title, pressed: pressed || state.isOpen, small: defaultSmall }, sizes))),
|
|
6513
|
-
|
|
6514
|
-
react_1.default.createElement(MenuDropdown_1.default, __assign({}, props, menuProps))))));
|
|
6516
|
+
detached ? (0, react_dom_1.createPortal)(popover, document.body) : popover));
|
|
6515
6517
|
};
|
|
6516
6518
|
exports["default"] = Menu;
|
|
6517
6519
|
|