/
Dante
/
node-core
Обзор
Документация
Войти
/
Dante
/
node-core
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
node_modules/ts-node/dist-raw/node-internal-modules-package_json_reader.js
44 строки
1 KB
Александр Данилюк
add
24 сен 2024, 12:59
24 сен 2024, 12:59
9eaeea8
Код
Авторство
О чём код?
// copied from https://github.com/nodejs/node/blob/v15.3.0/lib/internal/modules/package_json_reader.js 'use strict'; const { SafeMap } = require('./node-primordials'); const { internalModuleReadJSON } = require('./node-internalBinding-fs'); const { pathToFileURL } = require('url'); const { toNamespacedPath } = require('path'); // const { getOptionValue } = require('./node-options'); const cache = new SafeMap(); let manifest; /** * @param {string} jsonPath * @return {{string: string, containsKeys: boolean}} */ function read(jsonPath) { if (cache.has(jsonPath)) { return cache.get(jsonPath); } const [string, containsKeys] = internalModuleReadJSON( toNamespacedPath(jsonPath) ); const result = { string, containsKeys }; if (string !== undefined) { if (manifest === undefined) { // manifest = getOptionValue('--experimental-policy') ? // require('internal/process/policy').manifest : // null; // disabled for now. I am not sure if/how we should support this manifest = null; } if (manifest !== null) { const jsonURL = pathToFileURL(jsonPath); manifest.assertIntegrity(jsonURL, string); } } cache.set(jsonPath, result); return result; } module.exports = { read };