tasks/catena.js
function streamLicense (grunt, fileData, options) {
    let content = grunt.file.read(options.license);

    // Use JSDoc license tag to preserve file content as
    // comment when minifying.
    if (options.deploy && options.minify) {
        content = `/**@license ${content}*/`;
    } else {
        content = `/*\x0A${content}*/\x0A\x0A`;
    }

    stream.write(content, () => {
        streamWrapperStart(grunt, fileData, options);
    });
}
function streamLicense (grunt, fileData, options) {
    let content = grunt.file.read(options.license);

    // Use JSDoc license tag to preserve file content as
    // comment when minifying.
    if (options.deploy && options.minify) {
        content = `/**@license ${content}*/`;
    } else {
        content = `/*\x0A${content}*/\x0A\x0A`;
    }

    stream.write(content, () => {
        streamWrapperStart(grunt, fileData, options);
    });
}
function streamLicense ( grunt , fileData , options ) { let content = grunt . file . read ( options . license ) ; // Use JSDoc license tag to preserve file content as // comment when minifying. if ( options . deploy && options . minify ) { content = ` ${ content } ` ; } else { content = ` \x0A ${ content } \x0A \x0A ` ; } stream . write ( content , ( ) => { streamWrapperStart ( grunt , fileData , options ) ; } ) ; }
Prepend license in the starting wrapper.

@function streamLicense
@param {Object} grunt
@param {Object} fileData
@param {Object} options
@api private
Prepend license in the starting wrapper .