Back to home page

EIC code displayed by LXR

 
 

    


Warning, /iDDS/monitor/data/scss/bootstrap/_modal.scss is written in an unsupported language. File is not indexed.

0001 // .modal-open      - body class for killing the scroll
0002 // .modal           - container to scroll within
0003 // .modal-dialog    - positioning shell for the actual modal
0004 // .modal-content   - actual modal w/ bg and corners and stuff
0005 
0006 
0007 .modal-open {
0008   // Kill the scroll on the body
0009   overflow: hidden;
0010 
0011   .modal {
0012     overflow-x: hidden;
0013     overflow-y: auto;
0014   }
0015 }
0016 
0017 // Container that the modal scrolls within
0018 .modal {
0019   position: fixed;
0020   top: 0;
0021   left: 0;
0022   z-index: $zindex-modal;
0023   display: none;
0024   width: 100%;
0025   height: 100%;
0026   overflow: hidden;
0027   // Prevent Chrome on Windows from adding a focus outline. For details, see
0028   // https://github.com/twbs/bootstrap/pull/10951.
0029   outline: 0;
0030   // We deliberately don't use `-webkit-overflow-scrolling: touch;` due to a
0031   // gnarly iOS Safari bug: https://bugs.webkit.org/show_bug.cgi?id=158342
0032   // See also https://github.com/twbs/bootstrap/issues/17695
0033 }
0034 
0035 // Shell div to position the modal with bottom padding
0036 .modal-dialog {
0037   position: relative;
0038   width: auto;
0039   margin: $modal-dialog-margin;
0040   // allow clicks to pass through for custom click handling to close modal
0041   pointer-events: none;
0042 
0043   // When fading in the modal, animate it to slide down
0044   .modal.fade & {
0045     @include transition($modal-transition);
0046     transform: $modal-fade-transform;
0047   }
0048   .modal.show & {
0049     transform: $modal-show-transform;
0050   }
0051 
0052   // When trying to close, animate focus to scale
0053   .modal.modal-static & {
0054     transform: $modal-scale-transform;
0055   }
0056 }
0057 
0058 .modal-dialog-scrollable {
0059   height: subtract(100%, $modal-dialog-margin * 2);
0060 
0061   .modal-content {
0062     max-height: 100%;
0063     overflow: hidden;
0064   }
0065 
0066   .modal-body {
0067     overflow-y: auto;
0068   }
0069 }
0070 
0071 .modal-dialog-centered {
0072   display: flex;
0073   align-items: center;
0074   min-height: subtract(100%, $modal-dialog-margin * 2);
0075 }
0076 
0077 // Actual modal
0078 .modal-content {
0079   position: relative;
0080   display: flex;
0081   flex-direction: column;
0082   width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`
0083   // counteract the pointer-events: none; in the .modal-dialog
0084   color: $modal-content-color;
0085   pointer-events: auto;
0086   background-color: $modal-content-bg;
0087   background-clip: padding-box;
0088   border: $modal-content-border-width solid $modal-content-border-color;
0089   @include border-radius($modal-content-border-radius);
0090   @include box-shadow($modal-content-box-shadow-xs);
0091   // Remove focus outline from opened modal
0092   outline: 0;
0093 }
0094 
0095 // Modal background
0096 .modal-backdrop {
0097   position: fixed;
0098   top: 0;
0099   left: 0;
0100   z-index: $zindex-modal-backdrop;
0101   width: 100vw;
0102   height: 100vh;
0103   background-color: $modal-backdrop-bg;
0104 
0105   // Fade for backdrop
0106   &.fade { opacity: 0; }
0107   &.show { opacity: $modal-backdrop-opacity; }
0108 }
0109 
0110 // Modal header
0111 // Top section of the modal w/ title and dismiss
0112 .modal-header {
0113   display: flex;
0114   flex-shrink: 0;
0115   align-items: center;
0116   justify-content: space-between; // Put modal header elements (title and dismiss) on opposite ends
0117   padding: $modal-header-padding;
0118   border-bottom: $modal-header-border-width solid $modal-header-border-color;
0119   @include border-top-radius($modal-content-inner-border-radius);
0120 
0121   .btn-close {
0122     padding: ($modal-header-padding-y / 2) ($modal-header-padding-x / 2);
0123     margin: ($modal-header-padding-y / -2) ($modal-header-padding-x / -2) ($modal-header-padding-y / -2) auto;
0124   }
0125 }
0126 
0127 // Title text within header
0128 .modal-title {
0129   margin-bottom: 0;
0130   line-height: $modal-title-line-height;
0131 }
0132 
0133 // Modal body
0134 // Where all modal content resides (sibling of .modal-header and .modal-footer)
0135 .modal-body {
0136   position: relative;
0137   // Enable `flex-grow: 1` so that the body take up as much space as possible
0138   // when there should be a fixed height on `.modal-dialog`.
0139   flex: 1 1 auto;
0140   padding: $modal-inner-padding;
0141 }
0142 
0143 // Footer (for actions)
0144 .modal-footer {
0145   display: flex;
0146   flex-wrap: wrap;
0147   flex-shrink: 0;
0148   align-items: center; // vertically center
0149   justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items
0150   padding: $modal-inner-padding - $modal-footer-margin-between / 2;
0151   border-top: $modal-footer-border-width solid $modal-footer-border-color;
0152   @include border-bottom-radius($modal-content-inner-border-radius);
0153 
0154   // Place margin between footer elements
0155   // This solution is far from ideal because of the universal selector usage,
0156   // but is needed to fix https://github.com/twbs/bootstrap/issues/24800
0157   > * {
0158     margin: $modal-footer-margin-between / 2;
0159   }
0160 }
0161 
0162 // Measure scrollbar width for padding body during modal show/hide
0163 .modal-scrollbar-measure {
0164   position: absolute;
0165   top: -9999px;
0166   width: 50px;
0167   height: 50px;
0168   overflow: scroll;
0169 }
0170 
0171 // Scale up the modal
0172 @include media-breakpoint-up(sm) {
0173   // Automatically set modal's width for larger viewports
0174   .modal-dialog {
0175     max-width: $modal-md;
0176     margin: $modal-dialog-margin-y-sm-up auto;
0177   }
0178 
0179   .modal-dialog-scrollable {
0180     height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
0181   }
0182 
0183   .modal-dialog-centered {
0184     min-height: subtract(100%, $modal-dialog-margin-y-sm-up * 2);
0185   }
0186 
0187   .modal-content {
0188     @include box-shadow($modal-content-box-shadow-sm-up);
0189   }
0190 
0191   .modal-sm { max-width: $modal-sm; }
0192 }
0193 
0194 @include media-breakpoint-up(lg) {
0195   .modal-lg,
0196   .modal-xl {
0197     max-width: $modal-lg;
0198   }
0199 }
0200 
0201 @include media-breakpoint-up(xl) {
0202   .modal-xl { max-width: $modal-xl; }
0203 }
0204 
0205 @each $breakpoint in map-keys($grid-breakpoints) {
0206   $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
0207   $postfix: if($infix != "", $infix + "-down", "");
0208 
0209   @include media-breakpoint-down($breakpoint) {
0210     .modal-fullscreen#{$postfix} {
0211       width: 100vw;
0212       max-width: none;
0213       height: 100%;
0214       margin: 0;
0215 
0216       .modal-content {
0217         height: 100%;
0218         border: 0;
0219         @include border-radius(0);
0220       }
0221 
0222       .modal-header {
0223         @include border-radius(0);
0224       }
0225 
0226       .modal-body {
0227         overflow-y: auto;
0228       }
0229 
0230       .modal-footer {
0231         @include border-radius(0);
0232       }
0233     }
0234   }
0235 }