QA Details page: - Enables QA tab with ability to start automated analysis QA Run + view a and manual review status - Pages listed with review status + overall crawl review status shown on QA details (relates to #1508) - Initial placeholder for QA run analytics (part of #1589) - Addresses a good deal of #1477 Automated Analysis QA in Review Mode: - Ability to select from multiple analysis QA runs / view QA runs in QA details - Shows analysis screenshot, text and resources compare and replay tabs (fixes #1496) - Sorting by worst screenshot / worst text score for each QA run - Includes pages sidebar with screenshot/text/resource compare results (fixes #1497) Manual Review QA in Review Mode: - Per-page replay available as separate tab (fixes #1499) - Supports thumbs up, thumbs down, notes for each page - Supports entering review status approval (good/acceptable/bad can be entered when finishing review --------- Co-authored-by: Emma Segal-Grossman <hi@emma.cafe> Co-authored-by: Ilya Kreymer <ikreymer@gmail.com> Co-authored-by: Henry Wilkinson <henry@wilkinson.graphics>
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| const path = require("path");
 | |
| 
 | |
| const { merge } = require("webpack-merge");
 | |
| 
 | |
| const devServerConfig = require("./config/dev-server.js");
 | |
| const [main, vnc] = require("./webpack.config.js");
 | |
| 
 | |
| const shoelaceAssetsSrcPath = path.resolve(
 | |
|   __dirname,
 | |
|   "node_modules/@shoelace-style/shoelace/dist/assets",
 | |
| );
 | |
| const shoelaceAssetsPublicPath = "shoelace/assets";
 | |
| 
 | |
| module.exports = [
 | |
|   merge(main, {
 | |
|     devtool: "eval-cheap-source-map",
 | |
|     devServer: {
 | |
|       watchFiles: ["src/**/*", __filename],
 | |
|       open: true,
 | |
|       compress: false,
 | |
|       hot: false,
 | |
|       static: [
 | |
|         {
 | |
|           directory: shoelaceAssetsSrcPath,
 | |
|           publicPath: "/" + shoelaceAssetsPublicPath,
 | |
|         },
 | |
|       ],
 | |
|       historyApiFallback: true,
 | |
|       proxy: devServerConfig.proxy,
 | |
|       onBeforeSetupMiddleware: devServerConfig.onBeforeSetupMiddleware,
 | |
|       port: 9870,
 | |
|     },
 | |
|     cache: {
 | |
|       type: "filesystem",
 | |
|       hashAlgorithm: "xxhash64",
 | |
|       buildDependencies: {
 | |
|         config: [__filename],
 | |
|       },
 | |
|     },
 | |
|   }),
 | |
|   {
 | |
|     ...vnc,
 | |
|     mode: "production",
 | |
|   },
 | |
| ];
 |