Website Structure
This commit is contained in:
parent
62812f2090
commit
71f0676a62
22365 changed files with 4265753 additions and 791 deletions
134
Frontend-Learner/node_modules/parse-imports-exports/statements.js
generated
vendored
Normal file
134
Frontend-Learner/node_modules/parse-imports-exports/statements.js
generated
vendored
Normal file
|
|
@ -0,0 +1,134 @@
|
|||
import { onBacktickError, onBacktickParse } from './backtickString.js';
|
||||
import { onCommonJsExportError, onCommonJsExportParse } from './commonJsExport.js';
|
||||
import { onDeclarationExportError, onDeclarationExportParse } from './declarationExport.js';
|
||||
import { onDynamicImportError, onDynamicImportParse } from './dynamicImport.js';
|
||||
import { onImportError, onImportParse } from './import.js';
|
||||
import { onNamedExportError, onNamedExportParse } from './namedExport.js';
|
||||
import { onDoubleQuoteError, onMultilineCommentError, onSinglelineCommentError, onSingleQuoteError, } from './onErrors.js';
|
||||
import { onRegexpError, onRegexpParse } from './regexp.js';
|
||||
import { onRequireError, onRequireParse } from './require.js';
|
||||
/**
|
||||
* Statements of ECMAScript comments.
|
||||
*/
|
||||
export const comments = [
|
||||
{
|
||||
onError: onSinglelineCommentError,
|
||||
tokens: ['\\/\\/', '$'],
|
||||
},
|
||||
{
|
||||
onError: onMultilineCommentError,
|
||||
tokens: ['\\/\\*', '\\*\\/'],
|
||||
},
|
||||
];
|
||||
/**
|
||||
* Get statements for parsing by options.
|
||||
*/
|
||||
export const getStatements = (options) => {
|
||||
const statements = [...baseStatements];
|
||||
if (!(options === null || options === void 0 ? void 0 : options.ignoreDynamicImports)) {
|
||||
statements.push(dynamicImportStatement);
|
||||
}
|
||||
if (!(options === null || options === void 0 ? void 0 : options.ignoreRequires)) {
|
||||
statements.push(requireStatement);
|
||||
}
|
||||
if (!(options === null || options === void 0 ? void 0 : options.ignoreCommonJsExports)) {
|
||||
statements.push(commonJsExportStatement);
|
||||
}
|
||||
if (!(options === null || options === void 0 ? void 0 : options.ignoreRegexpLiterals)) {
|
||||
statements.push(regexpLiteralStatement);
|
||||
}
|
||||
if (!(options === null || options === void 0 ? void 0 : options.ignoreStringLiterals)) {
|
||||
statements.unshift(...stringLiteralStatements);
|
||||
}
|
||||
return statements;
|
||||
};
|
||||
/**
|
||||
* Base statements for parsing `import`/`export` declarations.
|
||||
*/
|
||||
const baseStatements = [
|
||||
{
|
||||
canIncludeComments: true,
|
||||
onError: onImportError,
|
||||
onParse: onImportParse,
|
||||
tokens: ['^import ', '([\'"];?$)|(?<with>[\'"] with \\{)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
{
|
||||
canIncludeComments: true,
|
||||
onError: onNamedExportError,
|
||||
onParse: onNamedExportParse,
|
||||
tokens: ['^export (?<type>type )?\\{', '(\\};?$)|(?<quote>[\'"];?$)|(?<with>[\'"] with \\{)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
{
|
||||
canIncludeComments: true,
|
||||
onError: onDeclarationExportError,
|
||||
onParse: onDeclarationExportParse,
|
||||
tokens: ['^export ', '($)|(?<with>[\'"] with \\{)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
];
|
||||
/**
|
||||
* Statement for parsing CommonJS exports (`module.exports = ...`/`(module.)exports.foo = ...`).
|
||||
*/
|
||||
const commonJsExportStatement = {
|
||||
canIncludeComments: true,
|
||||
onError: onCommonJsExportError,
|
||||
onParse: onCommonJsExportParse,
|
||||
tokens: ['^(module\\.)?exports\\b', '='],
|
||||
shouldSearchBeforeComments: true,
|
||||
};
|
||||
/**
|
||||
* Statement for parsing dynamic import call (`import(...)`).
|
||||
*/
|
||||
const dynamicImportStatement = {
|
||||
canIncludeComments: true,
|
||||
onError: onDynamicImportError,
|
||||
onParse: onDynamicImportParse,
|
||||
tokens: ['\\bimport\\(', '[\'"]', '([\'"])|($)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
};
|
||||
/**
|
||||
* Statement for parsing regexp literal (`/.../`).
|
||||
*/
|
||||
const regexpLiteralStatement = {
|
||||
canIncludeComments: false,
|
||||
onError: onRegexpError,
|
||||
onParse: onRegexpParse,
|
||||
tokens: ['/', '((?<!\\\\)/)|($)'],
|
||||
shouldSearchBeforeComments: false,
|
||||
};
|
||||
/**
|
||||
* Statement for parsing require call (`require(...)`).
|
||||
*/
|
||||
const requireStatement = {
|
||||
canIncludeComments: true,
|
||||
onError: onRequireError,
|
||||
onParse: onRequireParse,
|
||||
tokens: ['\\brequire\\(', '[\'"]', '([\'"])|($)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
};
|
||||
/**
|
||||
* Statements for parsing string literals.
|
||||
*/
|
||||
const stringLiteralStatements = [
|
||||
{
|
||||
canIncludeComments: false,
|
||||
onError: onSingleQuoteError,
|
||||
tokens: ["'", "((?<!\\\\)')|($)"],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
{
|
||||
canIncludeComments: false,
|
||||
onError: onDoubleQuoteError,
|
||||
tokens: ['"', '((?<!\\\\)")|($)'],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
{
|
||||
canIncludeComments: false,
|
||||
onError: onBacktickError,
|
||||
onParse: onBacktickParse,
|
||||
tokens: ['`', '(?<!\\\\)`'],
|
||||
shouldSearchBeforeComments: true,
|
||||
},
|
||||
];
|
||||
Loading…
Add table
Add a link
Reference in a new issue