hunk.code_window:         typeof optimization.styles === 'object'
             ? optimization.styles
             : {
                 minify: !!optimization.styles,
                 // inlineCritical is always false unless explictly set.
                 inlineCritical: false,
               },
         fonts:
           typeof optimization.fonts === 'object'
             ? optimization.fonts
             : {
  
hunk.labels: keep keep keep keep replace replace keep keep keep keep keep
hunk.after_edit:               inlineCritical: !!optimization.styles,
  
hunk.file_path: packages/angular_devkit/build_angular/src/utils/normalize-optimization.ts
hunk.type: replace
file: /**
   * @license
   * Copyright Google LLC All Rights Reserved.
   *
   * Use of this source code is governed by an MIT-style license that can be
   * found in the LICENSE file at https://angular.io/license
   */
  
  import { Source } from '../engine/interface';
  import { HostTree } from '../tree/host-tree';
  
  function generateStringOfLength(l: number) {
    return new Array(l)
      .fill(0)
      .map((_x) => {
        return 'abcdefghijklmnopqrstuvwxyz'[Math.floor(Math.random() * 26)];
      })
      .join('');
  }
  
  function random(from: number, to: number) {
    return Math.floor(Math.random() * (to - from)) + from;
  }
  
  export interface RandomOptions {
    root?: string;
    multi?: boolean | number;
    multiFiles?: boolean | number;
  }
  
  export default function (options: RandomOptions): Source {
    return () => {
      const root = 'root' in options ? options.root : '/';
  
      const map = new HostTree();
      const nbFiles =
        'multiFiles' in options
          ? typeof options.multiFiles == 'number'
            ? options.multiFiles
            : random(2, 12)
          : 1;
  
      for (let i = 0; i < nbFiles; i++) {
        const path = 'a/b/c/d/e/f'.slice(Math.random() * 10);
        const fileName = generateStringOfLength(20);
        const content = generateStringOfLength(100);
  
        map.create(root + '/' + path + '/' + fileName, content);
      }
  
      return map;
    };
  }
  