Socket
Socket
Sign inDemoInstall

dgeni

Package Overview
Dependencies
18
Maintainers
3
Versions
28
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.4.12 to 0.4.13

4

CHANGELOG.md
# ChangeLog
## 0.4.13 11 January 2021
fix(Dgeni): do not print stack trace on error unless debugging (a3c870d)
## 0.4.12 14 March 2019

@@ -4,0 +8,0 @@

12

lib/Dgeni.d.ts

@@ -12,5 +12,3 @@ import { Package, PackageRef } from './Package';

injector: Injector;
packages: {
[key: string]: Package;
};
packages: Record<string, Package> | Package[];
processors: Processor[];

@@ -68,4 +66,4 @@ stopOnProcessingError: boolean;

*/
generate(): any;
runProcessor(processor: any, docs: any): any;
generate(): Promise<any[]>;
runProcessor(processor: any, docs: any): Promise<any>;
/**

@@ -77,5 +75,5 @@ * Trigger a dgeni event and run all the registered handlers

*/
triggerEvent(eventName: string, ...extras: any[]): any;
triggerProcessorEvent(eventName: string, processor: any, docs: any): any;
triggerEvent(eventName: string, ...extras: any[]): Promise<any[]>;
triggerProcessorEvent(eventName: string, processor: any, docs: any): Promise<any>;
info(): void;
}
"use strict";
var __spreadArrays = (this && this.__spreadArrays) || function () {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Dgeni = void 0;
/* tslint globals: require: true */
var _ = require('lodash');
var di = require('di');
var Q = require('q');
var Package_1 = require("./Package");

@@ -19,4 +25,4 @@ var processorValidation_1 = require("./legacyPackages/processorValidation");

function Dgeni(packages) {
var _this = this;
if (packages === void 0) { packages = []; }
var _this = this;
this.packages = {};

@@ -163,3 +169,9 @@ if (!Array.isArray(packages)) {

});
processingPromise.catch(function (error) { return log.error('Error processing docs: ', error.stack || error.message || error); });
processingPromise.catch(function (error) {
log.error(error.message);
if (error.stack) {
log.debug(error.stack);
}
log.error('Failed to process the docs');
});
return processingPromise.then(function (docs) {

@@ -173,3 +185,3 @@ _this.triggerEvent('generationEnd');

var log = this.injector.get('log');
var promise = Q(docs);
var promise = Promise.resolve(docs);
if (!processor.$process) {

@@ -190,6 +202,8 @@ return promise;

error.message = 'Error running processor "' + processor.name + '":\n' + error.message;
log.error(error.stack || error.message);
if (_this.stopOnProcessingError) {
return Q.reject(error);
return Promise.reject(error);
}
else {
log.error(error.message);
}
return docs;

@@ -210,3 +224,3 @@ });

var handlers = this.handlerMap[eventName];
var handlersPromise = Q();
var handlersPromise = Promise.resolve();
var results = [];

@@ -216,3 +230,3 @@ if (handlers) {

handlersPromise = handlersPromise.then(function () {
var handlerPromise = Q(handler.apply(void 0, [eventName].concat(extras)));
var handlerPromise = Promise.resolve(handler.apply(void 0, __spreadArrays([eventName], extras)));
handlerPromise.then(function (result) { return results.push(result); });

@@ -242,3 +256,2 @@ return handlerPromise;

};
;
Dgeni.Package = Package_1.Package;

@@ -245,0 +258,0 @@ return Dgeni;

@@ -29,5 +29,3 @@ #!/usr/bin/env node

// Run the document generation
dgeni.generate().then(function () {
console.log('Finished generating docs');
}).done();
dgeni.generate().then(function () { return console.log('Finished generating docs'); }, function (err) { return process.exit(1); });
//# sourceMappingURL=gen-docs.js.map

@@ -5,5 +5,5 @@ "use strict";

var Dgeni_2 = require("./Dgeni");
exports.Dgeni = Dgeni_2.Dgeni;
Object.defineProperty(exports, "Dgeni", { enumerable: true, get: function () { return Dgeni_2.Dgeni; } });
var Package_1 = require("./Package");
exports.Package = Package_1.Package;
Object.defineProperty(exports, "Package", { enumerable: true, get: function () { return Package_1.Package; } });
// This is a hack so that you can still require Dgeni

@@ -10,0 +10,0 @@ // in CommonJS as: `var Dgeni = require('dgeni');`

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var Q = require('q');
exports.processorValidationPackage = void 0;
var validate = require('validate.js');

@@ -13,3 +13,3 @@ var Package_1 = require("../Package");

var validationErrors = [];
var validationPromise = Q();
var validationPromise = Promise.resolve();
// Apply the validations on each processor

@@ -31,3 +31,3 @@ dgeni.processors.forEach(function (processor) {

if (validationErrors.length > 0 && dgeni.stopOnValidationError) {
return Q.reject(validationErrors);
return Promise.reject(validationErrors);
}

@@ -34,0 +34,0 @@ });

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Package = void 0;
/**

@@ -4,0 +5,0 @@ * A Dgeni Package containing processors, services and config blocks.

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var _ = require('lodash');
var diff = require('objectdiff').diff;
exports.docDiffLoggerPackage = void 0;
var clonedeep_1 = __importDefault(require("clonedeep"));
var objectdiff_1 = require("objectdiff");
var Package_1 = require("../Package");

@@ -17,5 +21,5 @@ var firstDocs, startDocs, endDocs, lastDocs;

return function capturePreviousDocs(event, processor, docs) {
firstDocs = firstDocs || _.cloneDeep(docs);
firstDocs = firstDocs || clonedeep_1.default(docs);
if (options.start === processor.name) {
startDocs = _.cloneDeep(docs);
startDocs = clonedeep_1.default(docs);
}

@@ -25,6 +29,6 @@ };

.eventHandler('processorEnd', function (log) {
return function (event, processor, docs) {
return function (_event, processor, docs) {
lastDocs = docs;
if (options.end === processor.name) {
endDocs = _.cloneDeep(docs);
endDocs = clonedeep_1.default(docs);
logDiff(log);

@@ -48,3 +52,3 @@ }

function logDiff(log) {
var changes = diff(startDocs || firstDocs, endDocs || lastDocs);
var changes = objectdiff_1.diff(startDocs || firstDocs, endDocs || lastDocs);
log.info(options);

@@ -51,0 +55,0 @@ log.info(changes);

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var _ = require('lodash');
exports.trackDocLoggerPackage = void 0;
var clonedeep_1 = __importDefault(require("clonedeep"));
var fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
var Package_1 = require("../Package");

@@ -18,4 +23,4 @@ var options = {

if (trackedDocs) {
if (!_.isEqual(trackedDocs, previousTrackedDocs)) {
trackedDocs = _.cloneDeep(trackedDocs);
if (!fast_deep_equal_1.default(trackedDocs, previousTrackedDocs)) {
trackedDocs = clonedeep_1.default(trackedDocs);
generations.push({ processor: processor.name, docs: trackedDocs });

@@ -22,0 +27,0 @@ previousTrackedDocs = trackedDocs;

@@ -16,2 +16,2 @@ /**

*/
export declare function sortByDependency(items: Object | any[], afterProp?: string, beforeProp?: string, nameProp?: string): any;
export declare function sortByDependency<T>(items: Record<string, T> | T[], afterProp?: string, beforeProp?: string, nameProp?: string): T[];
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var _ = require('lodash');
var DepGraph = require('dependency-graph').DepGraph;
exports.sortByDependency = void 0;
var dependency_graph_1 = require("dependency-graph");
/**

@@ -23,4 +23,4 @@ * @name sortByDependency

var map = {};
var depGraph = new DepGraph();
var addDependencies = function (item, dependencyProp, addBefore) {
var depGraph = new dependency_graph_1.DepGraph();
function addDependencies(item, dependencyProp, addBefore) {
if (addBefore === void 0) { addBefore = false; }

@@ -43,6 +43,7 @@ if (dependencyProp && item[dependencyProp]) {

}
};
_.forEach(items, function (item, index) {
}
Object.keys(items).forEach(function (itemKey) {
var item = items[itemKey];
if (!item[nameProp]) {
throw new Error('Missing ' + nameProp + ' property on item #' + (index + 1));
throw new Error('Missing ' + nameProp + ' property on item ' + itemKey);
}

@@ -52,9 +53,7 @@ map[item[nameProp]] = item;

});
_.forEach(items, function (item) {
Object.values(items).forEach(function (item) {
addDependencies(item, afterProp);
addDependencies(item, beforeProp, true);
});
return depGraph.overallOrder().map(function (itemName) {
return map[itemName];
});
return depGraph.overallOrder().map(function (itemName) { return map[itemName]; });
}

@@ -61,0 +60,0 @@ exports.sortByDependency = sortByDependency;

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getInjectablesFactory = void 0;
/**

@@ -4,0 +5,0 @@ * @dgService getInjectables

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.logFactory = void 0;
/**

@@ -4,0 +5,0 @@ * @dgService log

{
"name": "dgeni",
"version": "0.4.12",
"version": "0.4.13",
"description": "Flexible JavaScript documentation generator used by both AngularJS and Angular",

@@ -18,2 +18,3 @@ "main": "lib/index.js",

"build": "tsc",
"postbuild": "chmod +x lib/gen-docs.js",
"watch": "tsc -w",

@@ -31,8 +32,8 @@ "test": "mocha --require ts-node/register -R spec src/**/*.spec.ts",

"canonical-path": "~0.0.2",
"clonedeep": "^2.0.0",
"dependency-graph": "^0.7.0",
"di": "0.0.1",
"lodash": "^4.17.10",
"fast-deep-equal": "^3.1.3",
"objectdiff": "^1.1.0",
"optimist": "~0.6.1",
"q": "^1.5.1",
"validate.js": "^0.12.0",

@@ -47,3 +48,3 @@ "winston": "^2.1.1"

"chai-spies": "^1.0.0",
"dgeni-packages": "^0.26.0",
"dgeni-packages": "^0.28.4",
"mocha": "^5.2.0",

@@ -50,0 +51,0 @@ "ts-node": "^6.1.0",

const {expect, spy} = require('chai').use(require('chai-spies'));
const Q = require('q');
import {Dgeni} from './Dgeni';
import {Processor} from './Processor';
import {DocCollection} from './DocCollection';

@@ -378,5 +376,5 @@

function handler3() { return { message: 'info' }; }
function handler4() { return Q(); }
function handler5() { return Q(true); }
function handler6() { return Q({ message: 'info async'}); }
function handler4() { return Promise.resolve(); }
function handler5() { return Promise.resolve(true); }
function handler6() { return Promise.resolve({ message: 'info async'}); }

@@ -383,0 +381,0 @@ dgeni.package('test1', [])

/* tslint globals: require: true */
const _ = require('lodash');
const di = require('di');
const Q = require('q');

@@ -24,3 +22,3 @@ import {Package, PackageRef} from './Package';

injector: Injector;
packages: { [key: string]: Package } = {};
packages: Record<string, Package>|Package[] = {};
processors: Processor[];

@@ -177,3 +175,9 @@ stopOnProcessingError: boolean;

processingPromise.catch(error => log.error('Error processing docs: ', error.stack || error.message || error ));
processingPromise.catch(error => {
log.error(error.message);
if (error.stack) {
log.debug(error.stack);
}
log.error('Failed to process the docs');
});

@@ -189,3 +193,3 @@ return processingPromise.then(docs => {

const log = this.injector.get('log');
const promise = Q(docs);
const promise = Promise.resolve(docs);

@@ -212,4 +216,7 @@ if ( !processor.$process ) {

error.message = 'Error running processor "' + processor.name + '":\n' + error.message;
log.error(error.stack || error.message);
if ( this.stopOnProcessingError ) { return Q.reject(error); }
if ( this.stopOnProcessingError ) {
return Promise.reject(error);
} else {
log.error(error.message);
}
return docs;

@@ -227,3 +234,3 @@ });

const handlers = this.handlerMap[eventName];
let handlersPromise = Q();
let handlersPromise = Promise.resolve();
const results = [];

@@ -233,3 +240,3 @@ if (handlers) {

handlersPromise = handlersPromise.then(() => {
const handlerPromise = Q(handler(eventName, ...extras));
const handlerPromise = Promise.resolve(handler(eventName, ...extras));
handlerPromise.then(result => results.push(result));

@@ -262,3 +269,3 @@ return handlerPromise;

});
};
}
}

@@ -34,4 +34,5 @@ #!/usr/bin/env node

// Run the document generation
dgeni.generate().then(() => {
console.log('Finished generating docs');
}).done();
dgeni.generate().then(
() => console.log('Finished generating docs'),
err => process.exit(1)
);

@@ -1,2 +0,1 @@

const Q = require('q');
const validate = require('validate.js');

@@ -15,3 +14,3 @@ import {Package} from '../Package';

let validationPromise = Q();
let validationPromise = Promise.resolve();

@@ -35,3 +34,3 @@ // Apply the validations on each processor

if ( validationErrors.length > 0 && dgeni.stopOnValidationError ) {
return Q.reject(validationErrors);
return Promise.reject(validationErrors);
}

@@ -38,0 +37,0 @@ });

@@ -1,4 +0,5 @@

const _ = require('lodash');
const {diff} = require('objectdiff');
import cloneDeep from 'clonedeep';
import {diff} from 'objectdiff';
import {Package} from '../Package';
let firstDocs, startDocs, endDocs, lastDocs;

@@ -18,6 +19,6 @@ const options = {

return function capturePreviousDocs(event, processor, docs) {
firstDocs = firstDocs || _.cloneDeep(docs);
firstDocs = firstDocs || cloneDeep(docs);
if ( options.start === processor.name ) {
startDocs = _.cloneDeep(docs);
startDocs = cloneDeep(docs);
}

@@ -28,7 +29,7 @@ };

.eventHandler('processorEnd', function(log) {
return function(event, processor, docs) {
return function(_event, processor, docs) {
lastDocs = docs;
if ( options.end === processor.name ) {
endDocs = _.cloneDeep(docs);
endDocs = cloneDeep(docs);
logDiff(log);

@@ -35,0 +36,0 @@ }

@@ -1,2 +0,3 @@

const _ = require('lodash');
import cloneDeep from 'clonedeep';
import deepEqual from 'fast-deep-equal';
import {Package} from '../Package';

@@ -24,4 +25,4 @@

if ( trackedDocs ) {
if ( !_.isEqual(trackedDocs, previousTrackedDocs) ) {
trackedDocs = _.cloneDeep(trackedDocs);
if ( !deepEqual(trackedDocs, previousTrackedDocs) ) {
trackedDocs = cloneDeep(trackedDocs);
generations.push({ processor: processor.name, docs: trackedDocs });

@@ -28,0 +29,0 @@ previousTrackedDocs = trackedDocs;

@@ -1,3 +0,2 @@

const _ = require('lodash');
const {DepGraph} = require('dependency-graph');
import {DepGraph} from 'dependency-graph';

@@ -19,8 +18,8 @@ /**

*/
export function sortByDependency(items: Object | any[], afterProp?: string, beforeProp?: string, nameProp: string = 'name') {
export function sortByDependency<T>(items: Record<string, T>|T[], afterProp?: string, beforeProp?: string, nameProp: string = 'name'): T[] {
let map = {};
let depGraph = new DepGraph();
const map: Record<string, T> = {};
const depGraph = new DepGraph();
let addDependencies = function(item, dependencyProp, addBefore: boolean = false) {
function addDependencies(item: T, dependencyProp: string, addBefore: boolean = false) {
if ( dependencyProp && item[dependencyProp]) {

@@ -30,3 +29,3 @@ if ( !Array.isArray(item[dependencyProp]) ) {

}
item[dependencyProp].forEach(function(dependency) {
item[dependencyProp].forEach(dependency => {
if ( !map[dependency] ) {

@@ -42,7 +41,8 @@ throw new Error('Missing dependency: "' + dependency + '" on "' + item[nameProp] + '"');

}
};
}
_.forEach(items, function(item, index) {
Object.keys(items).forEach(itemKey => {
const item = items[itemKey];
if ( !item[nameProp] ) {
throw new Error('Missing ' + nameProp + ' property on item #' + (index + 1));
throw new Error('Missing ' + nameProp + ' property on item ' + itemKey);
}

@@ -53,4 +53,3 @@ map[item[nameProp]] = item;

_.forEach(items, function(item) {
Object.values(items).forEach(item => {
addDependencies(item, afterProp);

@@ -60,5 +59,3 @@ addDependencies(item, beforeProp, true);

return depGraph.overallOrder().map(function(itemName) {
return map[itemName];
});
return depGraph.overallOrder().map(itemName => map[itemName]);
};

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc