reshaped 2.5.6 → 2.5.7
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/bundle.css +1 -1
- package/bundle.js +7 -7
- package/components/_private/Flyout/Flyout.module.css +1 -1
- package/components/_private/Flyout/Flyout.types.d.ts +1 -0
- package/components/_private/Flyout/FlyoutContent.js +2 -2
- package/components/_private/Flyout/FlyoutControlled.js +1 -0
- package/hooks/_private/useFlyout.js +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
.content{--rs-flyout-gap:2;--rs-flyout-origin-x:50%;--rs-flyout-origin-y:50%;position:absolute}.inner{opacity:0;transform:scale(.8);transform-origin:var(--rs-flyout-origin-x) var(--rs-flyout-origin-y)}.content.--position-top,.content.--position-top-end,.content.--position-top-start{--rs-flyout-origin-y:100%;padding-bottom:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-bottom,.content.--position-bottom-end,.content.--position-bottom-start{--rs-flyout-origin-y:0%;padding-top:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-bottom-start,.content.--position-top-start{--rs-flyout-origin-x:0%}.content.--position-bottom-end,.content.--position-top-end{--rs-flyout-origin-x:100%}.content.--position-start,.content.--position-start-bottom,.content.--position-start-top{--rs-flyout-origin-x:100%;padding-right:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-end,.content.--position-end-bottom,.content.--position-end-top{--rs-flyout-origin-x:0%;padding-left:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-end-top,.content.--position-start-top{--rs-flyout-origin-y:0%}.content.--position-end-bottom,.content.--position-start-bottom{--rs-flyout-origin-y:100%}.content.--visible .inner{opacity:1;transform:scale(1)}.content.--animated .inner{transition:var(--rs-duration-fast) var(--rs-easing-accelerate);transition-property:opacity,transform}.content.--animated.--visible .inner{transition-timing-function:var(--rs-easing-decelerate)}
|
1
|
+
.content{--rs-flyout-gap:2;--rs-flyout-origin-x:50%;--rs-flyout-origin-y:50%;position:absolute}.inner{opacity:0;transform:scale(.8) translateY(0);transform-origin:var(--rs-flyout-origin-x) var(--rs-flyout-origin-y)}.content.--width-trigger .inner{transform:scale(1) translateY(var(--rs-unit-x2))}.content.--position-top,.content.--position-top-end,.content.--position-top-start{--rs-flyout-origin-y:100%;padding-bottom:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-bottom,.content.--position-bottom-end,.content.--position-bottom-start{--rs-flyout-origin-y:0%;padding-top:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-bottom-start,.content.--position-top-start{--rs-flyout-origin-x:0%}.content.--position-bottom-end,.content.--position-top-end{--rs-flyout-origin-x:100%}.content.--position-start,.content.--position-start-bottom,.content.--position-start-top{--rs-flyout-origin-x:100%;padding-right:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-end,.content.--position-end-bottom,.content.--position-end-top{--rs-flyout-origin-x:0%;padding-left:calc(var(--rs-unit-x1) * var(--rs-flyout-gap))}.content.--position-end-top,.content.--position-start-top{--rs-flyout-origin-y:0%}.content.--position-end-bottom,.content.--position-start-bottom{--rs-flyout-origin-y:100%}.content.--visible .inner{opacity:1;transform:scale(1) translateY(0)}.content.--animated .inner{transition:var(--rs-duration-fast) var(--rs-easing-accelerate);transition-property:opacity,transform}.content.--animated.--visible .inner{transition-timing-function:var(--rs-easing-decelerate)}
|
@@ -61,6 +61,7 @@ export type ContentProps = {
|
|
61
61
|
export type ContextProps = {
|
62
62
|
id: string;
|
63
63
|
flyout: ReturnType<typeof useFlyout>;
|
64
|
+
width?: FlyoutWidth;
|
64
65
|
triggerElRef: React.RefObject<HTMLButtonElement>;
|
65
66
|
flyoutElRef: React.RefObject<HTMLDivElement>;
|
66
67
|
handleClose: (options?: {
|
@@ -8,7 +8,7 @@ import { useFlyoutContext } from "./Flyout.context.js";
|
|
8
8
|
import s from "./Flyout.module.css";
|
9
9
|
const FlyoutContent = (props) => {
|
10
10
|
const { children, className, attributes } = props;
|
11
|
-
const { flyout, id, flyoutElRef, triggerElRef, handleTransitionEnd, triggerType, handleMouseEnter, handleMouseLeave, handleContentMouseDown, handleContentMouseUp, contentGap, contentClassName, contentAttributes, trapFocusMode, } = useFlyoutContext();
|
11
|
+
const { flyout, id, flyoutElRef, triggerElRef, handleTransitionEnd, triggerType, handleMouseEnter, handleMouseLeave, handleContentMouseDown, handleContentMouseUp, contentGap, contentClassName, contentAttributes, trapFocusMode, width, } = useFlyoutContext();
|
12
12
|
const { styles, status, position } = flyout;
|
13
13
|
const [mounted, setMounted] = React.useState(false);
|
14
14
|
useIsomorphicLayoutEffect(() => {
|
@@ -18,7 +18,7 @@ const FlyoutContent = (props) => {
|
|
18
18
|
return null;
|
19
19
|
const contentClassNames = classNames(s.content, status === "visible" && s["--visible"],
|
20
20
|
// Animate after correct position has been assigned
|
21
|
-
["visible", "hidden"].includes(status) && s["--animated"], position && s[`--position-${position}`]);
|
21
|
+
["visible", "hidden"].includes(status) && s["--animated"], position && s[`--position-${position}`], width === "trigger" && s["--width-trigger"]);
|
22
22
|
// className is applied to inner element because it has the transform and is treated like a real root element
|
23
23
|
const innerClassNames = classNames(s.inner, className, contentClassName);
|
24
24
|
let role;
|
@@ -208,7 +208,7 @@ const flyoutReducer = (state, action) => {
|
|
208
208
|
switch (action.type) {
|
209
209
|
case "render":
|
210
210
|
// Disable events before it's positioned to avoid mouseleave getting triggered
|
211
|
-
return Object.assign(Object.assign({}, state), { status: "rendered", styles: { pointerEvents: "none" } });
|
211
|
+
return Object.assign(Object.assign({}, state), { status: "rendered", styles: Object.assign({ pointerEvents: "none" }, resetStyles) });
|
212
212
|
case "position":
|
213
213
|
return Object.assign(Object.assign({}, state), { status: state.status === "visible" ? "visible" : "positioned", position: action.payload.position, styles: Object.assign(Object.assign({}, defaultStyles), action.payload.styles) });
|
214
214
|
case "show":
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "reshaped",
|
3
3
|
"description": "Professionally crafted design system in React & Figma for building products of any scale and complexity",
|
4
|
-
"version": "2.5.
|
4
|
+
"version": "2.5.7",
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
6
6
|
"email": "hello@reshaped.so",
|
7
7
|
"homepage": "https://reshaped.so",
|