UNPKG

@ianvs/prettier-plugin-sort-imports

Version:

A prettier plugins to sort imports in provided RegEx order

27 lines (26 loc) 924 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getImportNodes = void 0; const parser_1 = require("@babel/parser"); const traverse_1 = __importDefault(require("@babel/traverse")); const types_1 = require("@babel/types"); const getImportNodes = (code, options) => { const importNodes = []; const ast = (0, parser_1.parse)(code, { ...options, sourceType: 'module', }); (0, traverse_1.default)(ast, { ImportDeclaration(path) { const tsModuleParent = path.findParent((p) => (0, types_1.isTSModuleDeclaration)(p.node)); if (!tsModuleParent) { importNodes.push(path.node); } }, }); return importNodes; }; exports.getImportNodes = getImportNodes;