 8a6f944655
			
		
	
	8a6f944655
	
	
	
		
			
			* Missing objects styling WIP - Grabbing prior work from `missing-items` branch; * Missing objects styling WIP - Grabbing prior work on hover and missing theme constants from `missing-items` branch; - Refined theme constants values; - Renamed relevant mixins and classes from "isUnknown" to "isMissing"; - Applied new hover and missing/unknown styling to Folder-view grid items; * Missing objects styling WIP - Significant refinements and additions to `is-missing`; - Normalize object type icons as a markup `*__type-icon` to support styling and positioning of `is-missing__indicator` as a markup element; - Application to tree items, l-browse-bar in main view, c-object-label, grid view; - Change hover approach in grid-items and tree to use filters; * Missing objects styling WIP - Styles added to object-name component in Inspector, markup simplified; - Styles added to Tabs view; * Missing objects styling WIP - Simplified and consolidated `is-missing` approach into `.c-object-label` class; - Modded `.c-object-label` class to use flex 1 1 auto, instead of 0 1 auto - be on the outlook for regression problems!; - TODO: wire up `is-missing` for real and Folder List view; * Missing objects styling WIP - Added `is-missing` styling to Folder list view; - Cleanups, simplification and normalization with tree items in list-item and list-view.scss; - Using `c-object-label` now in Folder list view; - Removed too-broad `<a>` color definition in table.scss; * Missing objects styling WIP - `is-missing` added to layout frames, with support for hidden frames and telemetry views. - Further styles enhancement; - Continued added wiring points into markup; * Missing objects styling WIP - `is-missing` added to mct-plot; - Significant improvements for cursor lock indicators in plots; * Missing objects styling WIP - Plot legend fixes, added overflow scrolling for collapsed and expanded legends; - Removed conmmented code; * Wire up 'is-missing' - Added property checks on domainObject for status 'missing'; * Fix linting issues * remove carat from eslint package Co-authored-by: Deep Tailor <deep.j.tailor@nasa.gov>
		
			
				
	
	
		
			150 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
			
		
		
	
	
			150 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
| /******************************* GRID VIEW */
 | |
| .l-grid-view {
 | |
|     display: flex;
 | |
|     flex-flow: column nowrap;
 | |
|     overflow: auto;
 | |
| 
 | |
|     &__item {
 | |
|         flex: 0 0 auto;
 | |
|         + .l-grid-view__item { margin-top: $interiorMargin; }
 | |
|     }
 | |
| 
 | |
|     body.desktop & {
 | |
|         flex-flow: row wrap;
 | |
|         &__item {
 | |
|             height: $gridItemDesk;
 | |
|             width: $gridItemDesk;
 | |
|             margin: 0 $interiorMargin $interiorMargin 0;
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| /******************************* GRID ITEMS */
 | |
| .c-grid-item {
 | |
|     // Mobile-first
 | |
|     @include button($bg: $colorItemBg, $fg: $colorItemFg);
 | |
|     cursor: pointer;
 | |
|     display: flex;
 | |
|     padding: $interiorMarginLg;
 | |
| 
 | |
|     &__type-icon {
 | |
|         filter: $colorKeyFilter;
 | |
|         flex: 0 0 $gridItemMobile;
 | |
|         font-size: floor($gridItemMobile / 2);
 | |
|         margin-right: $interiorMarginLg;
 | |
|     }
 | |
| 
 | |
|     &.is-alias {
 | |
|         // Object is an alias to an original.
 | |
|         [class*='__type-icon'] {
 | |
|             @include isAlias();
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     &.is-missing {
 | |
|         @include isMissing();
 | |
| 
 | |
|         [class*='__type-icon'],
 | |
|         [class*='__details'] {
 | |
|             opacity: $opacityMissing;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     &__details {
 | |
|         display: flex;
 | |
|         flex-flow: column nowrap;
 | |
|         flex: 1 1 auto;
 | |
|     }
 | |
| 
 | |
|     &__name {
 | |
|         @include ellipsize();
 | |
|         color: $colorItemFg;
 | |
|         font-size: 1.2em;
 | |
|         font-weight: 400;
 | |
|         margin-bottom: $interiorMarginSm;
 | |
|     }
 | |
| 
 | |
|     &__metadata {
 | |
|         color: $colorItemFgDetails;
 | |
|         font-size: 0.9em;
 | |
| 
 | |
|         body.mobile & {
 | |
|             [class*='__item-count'] {
 | |
|                 &:before {
 | |
|                     content: ' - ';
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     &__controls {
 | |
|         color: $colorItemFgDetails;
 | |
|         flex: 0 0 64px;
 | |
|         font-size: 1.2em;
 | |
|         display: flex;
 | |
|         align-items: center;
 | |
|         justify-content: flex-end;
 | |
| 
 | |
|         > * + * {
 | |
|             margin-left: $interiorMargin;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     body.desktop & {
 | |
|         $transOutMs: 300ms;
 | |
|         flex-flow: column nowrap;
 | |
|         transition: $transOutMs ease-in-out;
 | |
| 
 | |
|         &:hover {
 | |
|             filter: $filterItemHoverFg;
 | |
|             transition: $transIn;
 | |
| 
 | |
|             .c-grid-item__type-icon {
 | |
|                 transform: scale(1.1);
 | |
|                 transition: $transInBounce;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         > * {
 | |
|             margin: 0; // Reset from mobile
 | |
|         }
 | |
| 
 | |
|         &__controls {
 | |
|             align-items: baseline;
 | |
|             flex: 0 0 auto;
 | |
|             order: 1;
 | |
|             .c-info-button,
 | |
|             .c-pointer-icon { display: none; }
 | |
|         }
 | |
| 
 | |
|         &__type-icon {
 | |
|             flex: 1 1 auto;
 | |
|             font-size: floor($gridItemDesk / 3);
 | |
|             margin: $interiorMargin 22.5% $interiorMargin * 3 22.5%;
 | |
|             order: 2;
 | |
|             transform-origin: center;
 | |
|             transition: all $transOutMs ease-in-out;
 | |
|         }
 | |
| 
 | |
|         &__details {
 | |
|             flex: 0 0 auto;
 | |
|             justify-content: flex-end;
 | |
|             order: 3;
 | |
|         }
 | |
| 
 | |
|         &__metadata {
 | |
|             display: flex;
 | |
| 
 | |
|             &__type {
 | |
|                 flex: 1 1 auto;
 | |
|                 @include ellipsize();
 | |
|             }
 | |
| 
 | |
|             &__item-count {
 | |
|                 opacity: 0.7;
 | |
|                 flex: 0 0 auto;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |