You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
869 B
32 lines
869 B
/* |
|
MIT License http://www.opensource.org/licenses/mit-license.php |
|
Author Yuta Hiroto @hiroppy |
|
*/ |
|
|
|
"use strict"; |
|
|
|
const Parser = require("../Parser"); |
|
|
|
/** @typedef {import("../Parser").ParserState} ParserState */ |
|
/** @typedef {import("../Parser").PreparsedAst} PreparsedAst */ |
|
|
|
class AssetSourceParser extends Parser { |
|
/** |
|
* @param {string | Buffer | PreparsedAst} source the source to parse |
|
* @param {ParserState} state the parser state |
|
* @returns {ParserState} the parser state |
|
*/ |
|
parse(source, state) { |
|
if (typeof source === "object" && !Buffer.isBuffer(source)) { |
|
throw new Error("AssetSourceParser doesn't accept preparsed AST"); |
|
} |
|
const { module } = state; |
|
module.buildInfo.strict = true; |
|
module.buildMeta.exportsType = "default"; |
|
state.module.buildMeta.defaultObject = false; |
|
|
|
return state; |
|
} |
|
} |
|
|
|
module.exports = AssetSourceParser;
|
|
|