@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
212 lines (184 loc) • 5.16 kB
JavaScript
import { createStaticStyles } from "antd-style";
//#region src/Menu/sharedStyle.ts
const styles = createStaticStyles(({ css: css$1, cssVar: cssVar$1 }) => ({
danger: css$1`
color: ${cssVar$1.colorError} !important;
&:hover {
background: ${cssVar$1.colorErrorBg} !important;
}
`,
empty: css$1`
cursor: default;
font-style: italic;
color: ${cssVar$1.colorTextTertiary};
`,
extra: css$1`
margin-inline-start: auto;
padding-inline-start: 16px;
font-size: 12px;
color: ${cssVar$1.colorTextTertiary};
`,
groupLabel: css$1`
user-select: none;
padding-block: 8px 4px;
padding-inline: 12px;
font-size: 12px;
font-weight: 500;
line-height: 16px;
color: ${cssVar$1.colorTextTertiary};
text-transform: uppercase;
`,
icon: css$1`
display: flex;
flex-shrink: 0;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
margin-inline-end: 8px;
`,
item: css$1`
cursor: pointer;
user-select: none;
position: relative;
overflow: hidden;
display: flex;
align-items: center;
width: 100%;
min-height: 36px;
padding-block: 8px;
padding-inline: 12px;
border-radius: ${cssVar$1.borderRadius};
font-size: 14px;
line-height: 20px;
color: ${cssVar$1.colorText};
outline: none;
transition: all 150ms ${cssVar$1.motionEaseOut};
&:hover {
background: ${cssVar$1.colorFillTertiary};
}
&:active {
background: ${cssVar$1.colorFillSecondary};
}
&[data-disabled] {
cursor: not-allowed;
color: ${cssVar$1.colorTextDisabled};
opacity: 0.5;
&:hover {
background: transparent;
}
}
&[data-highlighted]:not([data-disabled]) {
background: ${cssVar$1.colorFillTertiary};
}
&[data-state='open']:not([data-disabled]),
&[data-open]:not([data-disabled]),
&[aria-expanded='true']:not([data-disabled]) {
background: ${cssVar$1.colorFillTertiary};
}
`,
itemContent: css$1`
display: flex;
flex: 1;
gap: 0;
align-items: center;
`,
label: css$1`
overflow: hidden;
flex: 1;
text-overflow: ellipsis;
white-space: nowrap;
& a,
& a:visited,
& a:hover,
& a:active {
color: inherit;
}
`,
popup: css$1`
min-width: 120px;
padding: 4px;
border-radius: ${cssVar$1.borderRadius};
background: ${cssVar$1.colorBgElevated};
outline: none;
box-shadow:
0 0 15px 0 #00000008,
0 2px 30px 0 #00000014,
0 0 0 1px ${cssVar$1.colorBorder} inset;
`,
positioner: css$1`
z-index: 1100;
&[data-hover-trigger] {
--lobe-dropdown-animation-duration: 140ms;
--lobe-dropdown-animation-translate: 6px;
--lobe-dropdown-animation-scale: 0.98;
--lobe-dropdown-animation-ease-in: ease-in;
--lobe-dropdown-animation-ease-out: ${cssVar$1.motionEaseOut};
--lobe-dropdown-translate-x: 0;
--lobe-dropdown-translate-y: calc(var(--lobe-dropdown-animation-translate) * -1);
& > * {
will-change: opacity, transform;
animation: none;
}
&[data-open] > * {
transform: translate3d(0, 0, 0) scale(1);
opacity: 1;
transition:
opacity var(--lobe-dropdown-animation-duration) var(--lobe-dropdown-animation-ease-out),
transform var(--lobe-dropdown-animation-duration) var(--lobe-dropdown-animation-ease-out);
}
&[data-open] > *[data-starting-style] {
transform: translate3d(
var(--lobe-dropdown-translate-x),
var(--lobe-dropdown-translate-y),
0
)
scale(var(--lobe-dropdown-animation-scale));
opacity: 0;
}
&[data-closed] > * {
transform: translate3d(
var(--lobe-dropdown-translate-x),
var(--lobe-dropdown-translate-y),
0
)
scale(var(--lobe-dropdown-animation-scale));
opacity: 0;
transition:
opacity var(--lobe-dropdown-animation-duration) var(--lobe-dropdown-animation-ease-in),
transform var(--lobe-dropdown-animation-duration) var(--lobe-dropdown-animation-ease-in);
}
&[data-placement='top'],
&[data-placement='topCenter'],
&[data-placement='topLeft'],
&[data-placement='topRight'] {
--lobe-dropdown-translate-y: var(--lobe-dropdown-animation-translate);
}
&[data-placement='bottom'],
&[data-placement='bottomCenter'],
&[data-placement='bottomLeft'],
&[data-placement='bottomRight'] {
--lobe-dropdown-translate-y: calc(var(--lobe-dropdown-animation-translate) * -1);
}
}
`,
separator: css$1`
height: 1px;
margin-block: 4px;
margin-inline: 0;
background: ${cssVar$1.colorBorder};
`,
submenuArrow: css$1`
display: flex;
flex-shrink: 0;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
margin-inline-start: auto;
padding-inline-start: 8px;
`
}));
//#endregion
export { styles };
//# sourceMappingURL=sharedStyle.mjs.map