diff --git a/.changeset/silver-dots-sleep.md b/.changeset/silver-dots-sleep.md new file mode 100644 index 000000000..9184466ef --- /dev/null +++ b/.changeset/silver-dots-sleep.md @@ -0,0 +1,5 @@ +--- +"@cube-dev/ui-kit": patch +--- + +Fix minimum dialog size. diff --git a/src/components/GlobalStyles.tsx b/src/components/GlobalStyles.tsx index dfbda3471..766803caf 100644 --- a/src/components/GlobalStyles.tsx +++ b/src/components/GlobalStyles.tsx @@ -166,7 +166,7 @@ const GlobalStylesElement = createGlobalStyle` } .cube-notification-container { - min-width: 288px; + min-width: var(--min-dialog-size); max-width: 340px; width: calc(100vw - 32px); position: fixed; diff --git a/src/components/organisms/Modal/Modal.tsx b/src/components/organisms/Modal/Modal.tsx index c20107fef..155a79b69 100644 --- a/src/components/organisms/Modal/Modal.tsx +++ b/src/components/organisms/Modal/Modal.tsx @@ -209,7 +209,7 @@ export function Modal(allProps: CubeModalProps) { shadow={true} border={false} radius="1x" - width={`288px (100% - 32px) ${ + width={`@min-dialog-size (100% - 32px) ${ typeof width === 'number' ? `${width}px` : width || '360px' }`} style={{ textAlign: 'left' }} diff --git a/src/components/overlays/Dialog/Dialog.tsx b/src/components/overlays/Dialog/Dialog.tsx index 67e2d434b..9e64f2a7d 100644 --- a/src/components/overlays/Dialog/Dialog.tsx +++ b/src/components/overlays/Dialog/Dialog.tsx @@ -42,7 +42,7 @@ const DialogElement = tasty({ placeItems: 'stretch', placeContent: 'stretch', width: { - '': '288px @dialog-size 90vw', + '': '@min-dialog-size @dialog-size 90vw', '[data-type="fullscreen"]': '90vw 90vw', '[data-type="fullscreenTakeover"]': '100vw 100vw', '[data-type="panel"]': 'auto', @@ -287,7 +287,7 @@ const DialogContent = forwardRef(function DialogContent( {...dialogProps} tabIndex={undefined} mods={{ dismissable: isDismissable }} - style={{ '--dialog-size': `${sizePxMap[size] || 288}px` }} + style={{ '--dialog-size': `${sizePxMap[size] || sizePxMap.small}px` }} data-type={type} data-size={size} > diff --git a/src/components/overlays/Modal/Modal.tsx b/src/components/overlays/Modal/Modal.tsx index f40495466..93d32d973 100644 --- a/src/components/overlays/Modal/Modal.tsx +++ b/src/components/overlays/Modal/Modal.tsx @@ -52,7 +52,7 @@ const ModalElement = tasty({ '[data-type="panel"]': 'auto', }, width: { - '': '288px 90vw', + '': '@min-dialog-size 90vw', '[data-type="panel"]': 'auto', }, pointerEvents: 'none', diff --git a/src/components/overlays/Modal/Tray.tsx b/src/components/overlays/Modal/Tray.tsx index 7d6f72dda..f8e5fe523 100644 --- a/src/components/overlays/Modal/Tray.tsx +++ b/src/components/overlays/Modal/Tray.tsx @@ -34,7 +34,7 @@ const TrayElement = tasty({ }, zIndex: 10, height: 'max 90dvh', - width: '288px 90vw', + width: '@min-dialog-size 90vw', pointerEvents: 'auto', transition: 'transform .25s ease-in-out, opacity .25s linear, visibility 0ms linear', diff --git a/src/tokens.ts b/src/tokens.ts index 235aedb9b..61b189b19 100644 --- a/src/tokens.ts +++ b/src/tokens.ts @@ -48,6 +48,7 @@ const TOKENS = { 'leaf-sharp-radius': '0px', 'fade-width': '32px', transition: '80ms', + 'min-dialog-size': 'min(288px, calc(100vw - (2 * var(--gap))))', 'clear-color': 'transparent', 'border-color': color('dark', 0.1), 'border-opaque-color': 'rgb(227 227 233)',