* docs(toh-6/dart): refactoring of 'add, edit, delete heroes' Refactoring of "add, edit, delete heroes" section of toh-6 from one big bottom-up step into small independent feature slices, where the user achieves a "milesone" (i.e., can run the full app) after each feature section. The section rewrite is shorter and offers a better UX. Other simplifications: - Error handling is consistent: in the hero service we log to the console, everwhere else we just let errors bubble up. - Hero service methods renamed based on function (create, update) rather then lower-level implementation (post, put). - @Output properties have been eliminated (since they weren't explained). E2E tests now pass on both the TS and Dart sides. * docs(toh-6/ts): refactoring of 'add, edit, delete heroes' Refactoring of "add, edit, delete heroes" section of toh-6 from one big bottom-up step into small independent feature slices, where the user achieves a "milesone" (i.e., can run the full app) after each feature section. The section rewrite is shorter and offers a better UX. Other simplifications: - Error handling is consistent: in the hero service we log to the console, everwhere else we just let errors bubble up. - Hero service methods renamed based on function (create, update) rather then lower-level implementation (post, put). - @Output properties have been eliminated (since they weren't explained). E2E tests now pass on both the TS and Dart sides. Post-Dart-review updates included. * docs(toh-6): ward tweaks
		
			
				
	
	
		
			69 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
/* #docregion */
 | 
						|
.selected {
 | 
						|
  background-color: #CFD8DC !important;
 | 
						|
  color: white;
 | 
						|
}
 | 
						|
.heroes {
 | 
						|
  margin: 0 0 2em 0;
 | 
						|
  list-style-type: none;
 | 
						|
  padding: 0;
 | 
						|
  width: 15em;
 | 
						|
}
 | 
						|
.heroes li {
 | 
						|
  cursor: pointer;
 | 
						|
  position: relative;
 | 
						|
  left: 0;
 | 
						|
  background-color: #EEE;
 | 
						|
  margin: .5em;
 | 
						|
  padding: .3em 0;
 | 
						|
  height: 1.6em;
 | 
						|
  border-radius: 4px;
 | 
						|
}
 | 
						|
.heroes li:hover {
 | 
						|
  color: #607D8B;
 | 
						|
  background-color: #DDD;
 | 
						|
  left: .1em;
 | 
						|
}
 | 
						|
.heroes li.selected:hover {
 | 
						|
  background-color: #BBD8DC !important;
 | 
						|
  color: white;
 | 
						|
}
 | 
						|
.heroes .text {
 | 
						|
  position: relative;
 | 
						|
  top: -3px;
 | 
						|
}
 | 
						|
.heroes .badge {
 | 
						|
  display: inline-block;
 | 
						|
  font-size: small;
 | 
						|
  color: white;
 | 
						|
  padding: 0.8em 0.7em 0 0.7em;
 | 
						|
  background-color: #607D8B;
 | 
						|
  line-height: 1em;
 | 
						|
  position: relative;
 | 
						|
  left: -1px;
 | 
						|
  top: -4px;
 | 
						|
  height: 1.8em;
 | 
						|
  margin-right: .8em;
 | 
						|
  border-radius: 4px 0 0 4px;
 | 
						|
}
 | 
						|
button {
 | 
						|
  font-family: Arial;
 | 
						|
  background-color: #eee;
 | 
						|
  border: none;
 | 
						|
  padding: 5px 10px;
 | 
						|
  border-radius: 4px;
 | 
						|
  cursor: pointer;
 | 
						|
  cursor: hand;
 | 
						|
}
 | 
						|
button:hover {
 | 
						|
  background-color: #cfd8dc;
 | 
						|
}
 | 
						|
/* #docregion additions */
 | 
						|
button.delete {
 | 
						|
  float:right;
 | 
						|
  margin-top: 2px;
 | 
						|
  margin-right: .8em;
 | 
						|
  background-color: gray !important;
 | 
						|
  color:white;
 | 
						|
}
 |