123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.moduleNamespace = moduleNamespace;
- function moduleNamespace(root, module) {
- var moduleNamespace = getDefaultNamespace(module);
- root.walkAtRules("use", function (rule) {
- var customNamespace = getCustomNamespace(module, rule);
- switch (customNamespace) {
- case null:
- return;
- case "*":
- moduleNamespace = null;
- return;
- default:
- moduleNamespace = customNamespace;
- }
- });
- return moduleNamespace;
- }
- function getDefaultNamespace(module) {
- return module.match(/([^/:]+)$/)[1].replace(/\.[^.]+$/, "");
- }
- function getCustomNamespace(module, rule) {
- var ruleParamsParts = rule.params.split(new RegExp("[\"']".concat(module, "['\"][ \n]*as")));
- if (ruleParamsParts.length < 2) {
- return null;
- }
- var secondRuleParamsPart = ruleParamsParts[1].trim();
- return !secondRuleParamsPart.startsWith("*") ? secondRuleParamsPart.split(" ")[0] : "*";
- }
|