UNPKG

nishant-design-system

Version:
103 lines (91 loc) 2.81 kB
@value (colorBackgroundTertiary, colorBackgroundPrimary, colorBackdropFill) from '../../styles/variables/_color.css'; @value (spaceNone, spaceSmall, spaceMedium, spaceXXSmall, spaceHalfFluid, spaceNegHalfFluid) from '../../styles/variables/_space.css'; @value (sizeFluid, size60) from '../../styles/variables/_size.css'; @value (elevationNone, elevationModal, elevationBackdrop) from '../../styles/variables/_elevation.css'; @value (opacity100, opacity0) from '../../styles/variables/_opacity.css'; @value (motionDurationNormal, motionEaseInEaseOut) from '../../styles/variables/_motion.css'; @value (borderRadiusMedium) from '../../styles/variables/_border.css'; .modalContainer { display: flex; align-items: center; justify-content: center; } .modal { position: fixed; top: spaceHalfFluid; left: spaceHalfFluid; transform: translate(spaceNegHalfFluid, spaceNegHalfFluid) scale(0.95); opacity: opacity0; composes: boxShadow4 from '../../styles/shadow.module.css'; display: flex; max-height: sizeFluid; flex-flow: column; background: colorBackgroundTertiary; overflow: auto; z-index: elevationModal; transition: opacity motionDurationNormal, transform motionDurationNormal; border-radius: borderRadiusMedium; } .modalContainer.open.in .modal { opacity: opacity100; transform: translate(spaceNegHalfFluid, spaceNegHalfFluid) scale(1); } .backdrop { display: flex; flex-flow: column; visibility: hidden; opacity: opacity0; background-color: transparent; backdrop-filter: blur(spaceNone); width: sizeFluid; height: sizeFluid; top: spaceNone; left: spaceNone; position: fixed; pointer-events: none; z-index: elevationNone; transition: visibility motionDurationNormal, backdrop-filter motionDurationNormal; } .modalContainer.open.in .backdrop { visibility: visible; opacity: opacity100; pointer-events: auto; z-index: elevationBackdrop; } .modalContainer.open.in .darkBackdrop { backdrop-filter: blur(spaceXXSmall); background-color: colorBackdropFill; } .modalHeader { composes: borderBottomPrimary from '../../styles/border.module.css'; composes: subTitleLarge from '../../styles/typography.module.css'; padding: spaceNone spaceSmall spaceNone spaceMedium; min-height: size60; display: flex; justify-content: space-between; align-items: center; gap: spaceMedium; } .headerContent { display: flex; } .modalBody { padding: spaceMedium; height: sizeFluid; overflow: auto; } .modalFooter { composes: borderTopPrimary from '../../styles/border.module.css'; background-color: colorBackgroundPrimary; margin-top: auto; padding: spaceMedium; display: flex; justify-content: flex-end; align-items: center; gap: spaceMedium; } .modalFooterActions { display: flex; gap: spaceSmall; }