"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.uniAppPagesPlugin = void 0; const path_1 = __importDefault(require("path")); const fs_extra_1 = __importDefault(require("fs-extra")); const uni_cli_shared_1 = require("@dcloudio/uni-cli-shared"); const utils_1 = require("../utils"); function uniAppPagesPlugin() { const pagesJsonPath = path_1.default.resolve(process.env.UNI_INPUT_DIR, 'pages.json'); const pagesJsonUTSPath = path_1.default.resolve(process.env.UNI_INPUT_DIR, uni_cli_shared_1.PAGES_JSON_UTS); return { name: 'uni:app-pages', apply: 'build', resolveId(id) { if ((0, utils_1.isPages)(id)) { return pagesJsonUTSPath; } }, load(id) { if ((0, utils_1.isPages)(id)) { return fs_extra_1.default.readFileSync(pagesJsonPath, 'utf8'); } }, transform(code, id) { if ((0, utils_1.isPages)(id)) { this.addWatchFile(path_1.default.resolve(process.env.UNI_INPUT_DIR, 'pages.json')); const pagesJson = (0, uni_cli_shared_1.normalizeUniAppXAppPagesJson)(code); this.emitFile({ fileName: uni_cli_shared_1.APP_CONFIG, type: 'asset', source: (0, uni_cli_shared_1.normalizeUniAppXAppConfig)(pagesJson, (0, uni_cli_shared_1.parseManifestJsonOnce)(process.env.UNI_INPUT_DIR)), }); return { code: (0, uni_cli_shared_1.normalizeAppPagesJson)(pagesJson), map: null, }; } }, }; } exports.uniAppPagesPlugin = uniAppPagesPlugin;