read-cortex-json
v3.6.1
Published
The thing cortex uses to read cortex.json files or fallback to read cortex configurations from package.json
Downloads
43
Readme
read-cortex-json
The thing cortex uses to read cortex.json files or fallback to read cortex configurations from package.json.
Cortex supports both cortex.json
and the 'cortex'
field of package.json
. But with read-cortex-json
, you don't have to care about all this, and you should ALWAYS use this module to read and save cortex.json
.
Install
npm install read-cortex-json --save
Usage
var cortexJson = require('read-cortex-json');
cortexJson.read(cwd, callback)
- cwd
path
current working directory - callback
function(err, json)
- err
Error
- json
Object
Reads and returns the information of a cortex package.
cortexJson.read('/path/to/your/repo', function(err, json){
if (err) {
console.error('There was an error', e);
return;
}
console.log('The package data is:', json);
});
cortexJson.extra(cwd, callback)
This method is different from cortexJson.read()
that it will validate some stuff and flavors the object with some default values which cortex registry needs.
cortexJson.clean(cwd, json, callback)
Cleans and validate the json
.
This method will check the json
object first. If it is an old object, cortexJson.clean
will santitize it.
After cortexJson.clean()
and cortexJson.enhanced()
, there are always
main
, if no main entry found, it will befalse
css
, if no csses found, it will be[]
entries
, if no entries found, it will be[]
.cortex.main
will berequire.resolve()
d. That is, if there is aindex.js
, butcortex.main
is'index'
, and afterenhanced()
,cortex.main
will be'index.js'
.cortex.css
andcortex.entries
will always be an globbed array(even an empty array) afterenhanced()
- If a path, either from
main
,css
, orentries
, is explicitly defined but not found, an error will throw. - If a package has neither
main
,css
, norentries
, an'CORTEX_NO_ENTRY'
error will throw.
in the json
data.
cortexJson.enhance(cwd, callback)
It is a cortexJson.extra()
then cortexJson.clean()
cortexJson.save(cwd, json, callback)
- callback
function(err)
Save the json to the file.
cortexJson.package_root(cwd, callback)
- callback
function(root)
Traverses up from the cwd
and gets the first directory that contains a package file of cortex.
Sometimes user might run cortex commands inside the subtle directories of the current repo, and we must make sure cortex commands always run at the root directory.
cortexJson.cached_document(name, cache_root, callback)
- name
String
package name - cache_root
path
cache directory of the current profile - callback
function(err, document)
- document
json
Gets the cached document.