H5-contact/node_modules/@dcloudio/uni-cli-shared/dist/mp/assets.js

60 lines
1.9 KiB
JavaScript

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createCopyComponentDirs = exports.isMiniProgramAssetFile = void 0;
const fs_1 = __importDefault(require("fs"));
const path_1 = __importDefault(require("path"));
const utils_1 = require("../vite/plugins/vitejs/utils");
const json_1 = require("../json");
const EXTNAMES = [
'.png',
'.jpg',
'.jpeg',
'.gif',
'.svg',
'.json',
'.cer',
'.mp3',
'.aac',
'.m4a',
'.mp4',
'.wav',
'.ogg',
'.silk',
'.wasm',
'.br',
'.cert',
];
function isMiniProgramAssetFile(filename) {
if (!path_1.default.isAbsolute(filename)) {
return false;
}
return EXTNAMES.includes(path_1.default.extname(filename));
}
exports.isMiniProgramAssetFile = isMiniProgramAssetFile;
function createCopyComponentDirs(dir) {
const dirs = [dir];
const uniModulesDir = 'uni_modules/*/' + dir + '/**/*';
dirs.push(uniModulesDir);
const inputDir = process.env.UNI_INPUT_DIR;
const platform = process.env.UNI_PLATFORM;
if (!inputDir || !platform) {
return dirs;
}
const pagesJsonFile = path_1.default.resolve((0, utils_1.normalizePath)(inputDir), 'pages.json');
if (!fs_1.default.existsSync(pagesJsonFile)) {
return dirs;
}
const { appJson } = (0, json_1.parseMiniProgramPagesJson)(fs_1.default.readFileSync(pagesJsonFile, 'utf8'), platform, { subpackages: true });
const roots = Object.values(appJson.subPackages || appJson.subpackages || {})
.map(({ root }) => root)
.filter(Boolean);
roots.forEach((root) => {
dirs.push((0, utils_1.normalizePath)(path_1.default.join(root, dir)), (0, utils_1.normalizePath)(path_1.default.join(root, uniModulesDir)));
});
return dirs;
}
exports.createCopyComponentDirs = createCopyComponentDirs;