1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var nodeModulesFolderName = 'node_modules/';
|
4 | var libraryNameRegex = /node_modules\/((?:(?=@)[^\/]+\/[^\/]+|[^\/]+))\//;
|
5 | function getLibraryName(fileName) {
|
6 | var lastNodeModulesIndex = fileName.lastIndexOf(nodeModulesFolderName);
|
7 | if (lastNodeModulesIndex === -1) {
|
8 | return null;
|
9 | }
|
10 | var match = libraryNameRegex.exec(fileName.slice(lastNodeModulesIndex));
|
11 | if (match === null) {
|
12 | return null;
|
13 | }
|
14 | return match[1];
|
15 | }
|
16 | exports.getLibraryName = getLibraryName;
|
17 | function getTypesLibraryName(path) {
|
18 | var libraryName = getLibraryName(path);
|
19 | if (libraryName === null) {
|
20 | return null;
|
21 | }
|
22 | var typesFolderPrefix = '@types/';
|
23 | if (!libraryName.startsWith(typesFolderPrefix)) {
|
24 | return null;
|
25 | }
|
26 | return libraryName.substring(typesFolderPrefix.length);
|
27 | }
|
28 | exports.getTypesLibraryName = getTypesLibraryName;
|
29 | function isTypescriptLibFile(fileName) {
|
30 | return /node_modules[\\\/]typescript[\\\/]lib[\\\/]lib(\..+)?\.d\.ts$/i.test(fileName);
|
31 | }
|
32 | exports.isTypescriptLibFile = isTypescriptLibFile;
|