disqus-node
Advanced tools
Comparing version 0.8.0 to 0.9.0
@@ -0,1 +1,6 @@ | ||
##### 0.9.0 - 14 June 2014 | ||
###### Backwards compatible API changes | ||
- #10 - Implemented Topics | ||
##### 0.8.0 - 13 June 2014 | ||
@@ -2,0 +7,0 @@ |
173
Gruntfile.js
module.exports = function (grunt) { | ||
require('load-grunt-tasks')(grunt); | ||
require('time-grunt')(grunt); | ||
require('load-grunt-tasks')(grunt); | ||
require('time-grunt')(grunt); | ||
grunt.initConfig({ | ||
clean: { | ||
doc: ['doc/'] | ||
}, | ||
grunt.initConfig({ | ||
clean: { | ||
doc: ['doc/'], | ||
coverage: ['test/coverage/'] | ||
}, | ||
watch: { | ||
dist: { | ||
files: ['lib/**/*.js', 'README.md'], | ||
tasks: ['build'] | ||
} | ||
}, | ||
watch: { | ||
dist: { | ||
files: ['lib/**/*.js', 'README.md'], | ||
tasks: ['build'] | ||
} | ||
}, | ||
jshint: { | ||
options: { | ||
jshintrc: '.jshintrc' | ||
}, | ||
all: [ | ||
'Gruntfile.js', | ||
'lib/**/*.js', | ||
'test/**/*.js' | ||
] | ||
}, | ||
jshint: { | ||
options: { | ||
jshintrc: '.jshintrc' | ||
}, | ||
all: [ | ||
'Gruntfile.js', | ||
'lib/**/*.js', | ||
'test/unit/**/*.js', | ||
'test/requireHelper.js' | ||
] | ||
}, | ||
simplemocha: { | ||
options: { | ||
globals: [], | ||
timeout: 5000, | ||
ignoreLeaks: false, | ||
ui: 'bdd', | ||
reporter: 'spec' | ||
}, | ||
dist: { | ||
src: [ | ||
'test/**/*.js' | ||
] | ||
} | ||
}, | ||
simplemocha: { | ||
options: { | ||
globals: [], | ||
timeout: 5000, | ||
ignoreLeaks: false, | ||
ui: 'bdd', | ||
reporter: 'spec' | ||
}, | ||
dist: { | ||
src: [ | ||
'test/**/*.js' | ||
] | ||
} | ||
}, | ||
groc: { | ||
javascript: [ | ||
'lib/**/*.js', 'README.md' | ||
], | ||
options: { | ||
'out': 'doc/' | ||
} | ||
} | ||
}); | ||
groc: { | ||
javascript: [ | ||
'lib/**/*.js', 'doc.md' | ||
], | ||
options: { | ||
'out': 'doc/', | ||
'index': 'doc.md', | ||
'repository-url': 'https://github.com/jmdobry/disqus-node' | ||
} | ||
}, | ||
grunt.registerTask('doc', ['clean', 'groc']); | ||
mochaTest: { | ||
unit: { | ||
options: { | ||
reporter: 'spec' | ||
}, | ||
src: ['test/unit/**/*.js'] | ||
} | ||
}, | ||
grunt.registerTask('build', [ | ||
'jshint', | ||
'doc' | ||
]); | ||
env: { | ||
coverage: { | ||
APP_DIR_FOR_CODE_COVERAGE: '../test/coverage/instrument/lib/' | ||
} | ||
}, | ||
grunt.registerTask('default', [ | ||
'build' | ||
]); | ||
instrument: { | ||
files: 'lib/**/*.js', | ||
options: { | ||
lazy: true, | ||
basePath: 'test/coverage/instrument/' | ||
} | ||
}, | ||
grunt.registerTask('go', [ | ||
'build', | ||
'watch' | ||
]); | ||
storeCoverage: { | ||
options: { | ||
dir: 'test/coverage/reports' | ||
} | ||
}, | ||
makeReport: { | ||
src: 'test/coverage/reports/**/*.json', | ||
options: { | ||
type: 'lcov', | ||
dir: 'test/coverage/reports', | ||
print: 'detail' | ||
} | ||
}, | ||
coveralls: { | ||
options: { | ||
coverage_dir: 'test/coverage/reports' | ||
} | ||
} | ||
}); | ||
grunt.registerTask('doc', ['clean:doc', 'groc']); | ||
grunt.registerTask('build', [ | ||
'test', | ||
'doc' | ||
]); | ||
grunt.registerTask('default', [ | ||
'build' | ||
]); | ||
grunt.registerTask('test', ['jshint', 'mochaTest:unit']); | ||
grunt.registerTask('coverage', [ | ||
'clean:coverage', | ||
'env:coverage', | ||
'instrument', | ||
'test', | ||
'storeCoverage', | ||
'makeReport' | ||
]); | ||
grunt.registerTask('go', [ | ||
'build', | ||
'watch' | ||
]); | ||
}; |
@@ -8,6 +8,5 @@ /** | ||
*/ | ||
var Disqus = require('../'); | ||
var commander = require('commander'); | ||
var applications = new commander.Command('disqus applications'); | ||
var util = require('../util'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var applications = new Command('disqus applications'); | ||
@@ -44,7 +43,8 @@ applications | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).applications.listUsage(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).applications.listUsage(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = applications; |
@@ -8,6 +8,5 @@ /** | ||
*/ | ||
var Disqus = require('../'); | ||
var commander = require('commander'); | ||
var blacklists = new commander.Command('disqus blacklists'); | ||
var util = require('../util'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var blacklists = new Command('disqus blacklists'); | ||
@@ -54,7 +53,8 @@ blacklists | ||
.option('-r --retroactive [boolean]', 'Defaults to false.', false) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-u --user [array]', 'Looks up a user by ID. You may look up a user by username using the "username" query type. Defaults to [].', []) | ||
.option('-w --word [array]', 'Maximum length of 200. Defaults to [].', []) | ||
.action(function (options) { | ||
new Disqus(options).blacklists.add(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).blacklists.add(options, container.get('util').printCliResult); | ||
}); | ||
@@ -101,5 +101,6 @@ | ||
.option('-s --since [number]', 'Unix timestamp (or ISO datetime standard)', null) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).blacklists.list(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).blacklists.list(options, container.get('util').printCliResult); | ||
}); | ||
@@ -138,9 +139,10 @@ | ||
.option('-i --ip [array]', 'IP address in CIDR notation. Defaults to [].', []) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-u --user [array]', 'Looks up a user by ID. You may look up a user by username using the "username" query type. Defaults to [].', []) | ||
.option('-w --word [array]', 'Maximum length of 200. Defaults to [].', []) | ||
.action(function (forumId, options) { | ||
new Disqus(options).blacklists.remove(options, util.printCliResult); | ||
.action(function (options) { | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).blacklists.remove(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = blacklists; |
@@ -8,6 +8,5 @@ /** | ||
*/ | ||
var Disqus = require('../'); | ||
var commander = require('commander'); | ||
var categories = new commander.Command('disqus categories'); | ||
var util = require('../util'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var categories = new Command('disqus categories'); | ||
@@ -43,6 +42,7 @@ categories | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-t, --title <string>', 'Maximum length of 50') | ||
.action(function (options) { | ||
new Disqus(options).categories.create(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).categories.create(options, container.get('util').printCliResult); | ||
}); | ||
@@ -73,5 +73,6 @@ | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).categories.details(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).categories.details(options, container.get('util').printCliResult); | ||
}); | ||
@@ -110,5 +111,6 @@ | ||
.option('-s, --since_id [string]', 'Defaults to null.', null) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).categories.list(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).categories.list(options, container.get('util').printCliResult); | ||
}); | ||
@@ -153,5 +155,6 @@ | ||
.option('-s, --since [string]', 'Defaults to null.', null) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).categories.listPosts(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).categories.listPosts(options, container.get('util').printCliResult); | ||
}); | ||
@@ -192,7 +195,8 @@ | ||
.option('-s, --since [string]', 'Defaults to null.', null) | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).categories.listThreads(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).categories.listThreads(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = categories; |
@@ -8,6 +8,5 @@ /** | ||
*/ | ||
var Disqus = require('../'); | ||
var commander = require('commander'); | ||
var exports = new commander.Command('disqus exports'); | ||
var util = require('../util'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var exports = new Command('disqus exports'); | ||
@@ -44,7 +43,8 @@ exports | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).exports.exportForum(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).exports.exportForum(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = exports; |
@@ -8,6 +8,5 @@ /** | ||
*/ | ||
var Disqus = require('../'); | ||
var commander = require('commander'); | ||
var imports = new commander.Command('disqus imports'); | ||
var util = require('../util'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var imports = new Command('disqus imports'); | ||
@@ -33,3 +32,3 @@ imports | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-S, --api_secret <string> Your applications's api_secret. | ||
-S, --api_secret <string> Your application's api_secret. | ||
* ``` | ||
@@ -45,5 +44,6 @@ */ | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).imports.details(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).imports.details(options, container.get('util').printCliResult); | ||
}); | ||
@@ -67,3 +67,3 @@ | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-S, --api_secret <string> Your applications's api_secret. | ||
-S, --api_secret <string> Your application's api_secret. | ||
* ``` | ||
@@ -79,7 +79,8 @@ */ | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.action(function (options) { | ||
new Disqus(options).imports.list(options, util.printCliResult); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).imports.list(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = imports; |
@@ -42,2 +42,9 @@ var commander = require('commander'); | ||
.description('Execute command for the Imports resource.'); | ||
/** | ||
* ###### Topics | ||
* [API](/lib/api/topics.html) | [CLI](/lib/cli/topics.html) | [Disqus](https://disqus.com/api/docs/topics/) | ||
*/ | ||
disqus | ||
.command('topics <cmd> [options]') | ||
.description('Execute command for the Topics resource.'); | ||
@@ -53,2 +60,3 @@ exports.parse = function (primaryArgs, secondaryArgs) { | ||
case 'imports': | ||
case 'topics': | ||
if (!secondaryArgs.length) { | ||
@@ -55,0 +63,0 @@ primaryArgs.push('--help'); |
@@ -8,4 +8,5 @@ /** | ||
*/ | ||
var commander = require('commander'); | ||
var topics = new commander.Command('disqus topics'); | ||
var container = require('../container'); | ||
var Command = container.get('commander').Command; | ||
var topics = new Command('disqus topics'); | ||
@@ -25,7 +26,8 @@ topics | ||
-h, --help output usage information | ||
-A, --api_key <string> Your application's public api_key. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-t, --target <string> Looks up a topic by ID (slug). | ||
-h, --help output usage information | ||
-A, --access_token <string> Your access token. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-S, --api_secret <string> Your application's api_secret. | ||
-t, --target <string> Looks up a topic by ID (slug). | ||
* ``` | ||
@@ -36,26 +38,10 @@ */ | ||
.description('Follow a topic.') | ||
.option('-A, --api_key <string>', 'Your applications\'s public api_key.') | ||
.option('-A, --access_token <string>', 'Your access token.') | ||
.option('-H, --https [boolean]', 'Whether to use https. Defaults to true.', true) | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-t, --target <string>', 'Looks up a topic by ID (slug).') | ||
.action(function (options) { | ||
var Disqus = require('../'); | ||
var disqus = new Disqus({ | ||
logLevel: options.logLevel, | ||
api_key: options.api_key, | ||
api_secret: options.api_secret, | ||
https: options.https | ||
}); | ||
disqus.topics.follow({ | ||
target: options.target | ||
}, function (err, result) { | ||
if (err) { | ||
console.error(err); | ||
process.exit(1); | ||
} else { | ||
console.log(JSON.stringify(result, null, 2)); | ||
} | ||
}); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).topics.follow(options, container.get('util').printCliResult); | ||
}); | ||
@@ -73,11 +59,11 @@ | ||
-h, --help output usage information | ||
-A, --api_key <string> Your application's public api_key. | ||
-c, --cursor [string] Defaults to null. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-l, --limit [number] Defaults to 25. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-o, --order [string] Defaults to "asc". Choices: asc, desc. | ||
-s, --since_id [string] Defaults to null. | ||
-t, --topic <string> Looks up a topic by ID (slug). | ||
-h, --help output usage information | ||
-c, --cursor [string] Defaults to null. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-l, --limit [number] Defaults to 25. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-o, --order [string] Defaults to "asc". Choices: asc, desc. | ||
-s, --since_id [string] Defaults to null. | ||
-S, --api_secret <string> Your application's api_secret. | ||
-t, --topic <string> Looks up a topic by ID (slug). | ||
* ``` | ||
@@ -88,3 +74,2 @@ */ | ||
.description('Returns a list of users following a topic.') | ||
.option('-A, --api_key <string>', 'Your applications\'s public api_key.') | ||
.option('-c, --cursor [string]', 'Defaults to null.', null) | ||
@@ -96,25 +81,7 @@ .option('-H, --https [boolean]', 'Whether to use https. Defaults to true.', true) | ||
.option('-s, --since_id [string]', 'Defaults to null.', null) | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-t, --topic <string>', 'Looks up a topic by ID (slug).') | ||
.action(function (options) { | ||
var Disqus = require('../'); | ||
var disqus = new Disqus({ | ||
logLevel: options.logLevel, | ||
api_key: options.api_key, | ||
https: options.https | ||
}); | ||
disqus.topics.listFollowers({ | ||
topic: options.topic, | ||
since_id: options.since_id, | ||
cursor: options.cursor, | ||
limit: options.limit, | ||
order: options.order | ||
}, function (err, result) { | ||
if (err) { | ||
console.error(err); | ||
process.exit(1); | ||
} else { | ||
console.log(JSON.stringify(result, null, 2)); | ||
} | ||
}); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).topics.listFollowers(options, container.get('util').printCliResult); | ||
}); | ||
@@ -132,8 +99,8 @@ | ||
-h, --help output usage information | ||
-A, --api_key <string> Your application's public api_key. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-S, --api_secret <string> Your application's api_secret. | ||
-t, --target <string> Looks up a topic by ID (slug). | ||
-h, --help output usage information | ||
-A, --access_token <string> Your access token. | ||
-H, --https [boolean] Whether to use https. Defaults to true. | ||
-L, --logLevel [string] Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency. | ||
-S, --api_secret <string> Your application's api_secret. | ||
-t, --target <string> Looks up a topic by ID (slug). | ||
* ``` | ||
@@ -144,28 +111,12 @@ */ | ||
.description('Unfollow a topic.') | ||
.option('-A, --api_key <string>', 'Your applications\'s public api_key.') | ||
.option('-A, --access_token <string>', 'Your access token.') | ||
.option('-H, --https [boolean]', 'Whether to use https. Defaults to true.', true) | ||
.option('-L, --logLevel [string]', 'Output log level. Choices: debug, info, notice, warning, error, critical, alert, emergency.', 'info') | ||
.option('-S, --api_secret <string>', 'Your applications\'s api_secret.') | ||
.option('-S, --api_secret <string>', 'Your application\'s api_secret.') | ||
.option('-t, --target <string>', 'Looks up a topic by ID (slug).') | ||
.action(function (options) { | ||
var Disqus = require('../'); | ||
var disqus = new Disqus({ | ||
logLevel: options.logLevel, | ||
api_key: options.api_key, | ||
api_secret: options.api_secret, | ||
https: options.https | ||
}); | ||
disqus.topics.unfollow({ | ||
target: options.target | ||
}, function (err, result) { | ||
if (err) { | ||
console.error(err); | ||
process.exit(1); | ||
} else { | ||
console.log(JSON.stringify(result, null, 2)); | ||
} | ||
}); | ||
var Disqus = container.get('Disqus'); | ||
new Disqus(options).topics.unfollow(options, container.get('util').printCliResult); | ||
}); | ||
module.exports = topics; |
@@ -5,8 +5,3 @@ /** | ||
*/ | ||
var Log = require('log'); | ||
var Applications = require('./api/applications'); | ||
var Blacklists = require('./api/blacklists'); | ||
var Categories = require('./api/categories'); | ||
var Exports = require('./api/exports'); | ||
var Imports = require('./api/imports'); | ||
var container = require('./container'); | ||
@@ -37,2 +32,9 @@ /** | ||
var _this = this; | ||
var Log = container.get('Log'); | ||
var Applications = container.get('Applications'); | ||
var Blacklists = container.get('Blacklists'); | ||
var Categories = container.get('Categories'); | ||
var Exports = container.get('Exports'); | ||
var Imports = container.get('Imports'); | ||
var Topics = container.get('Topics'); | ||
@@ -63,3 +65,3 @@ /** | ||
* ###### api_secret | ||
* Must be a string. Required for actions that require authentication. | ||
* Must be a string. Required. | ||
*/ | ||
@@ -70,2 +72,10 @@ if ('api_secret' in options && typeof options.api_secret !== 'string') { | ||
/** | ||
* ###### access_token | ||
* Must be a string. Required for actions that require authentication. | ||
*/ | ||
if ('access_token' in options && typeof options.access_token !== 'string') { | ||
throw new Error('access_token must be a string!'); | ||
} | ||
this.config = { | ||
@@ -88,3 +98,3 @@ /** | ||
this.logger = new Log(this.config.logLevel); | ||
this.config.logger = new Log(this.config.logLevel); | ||
@@ -98,3 +108,3 @@ /** | ||
*/ | ||
this.applications = new Applications(this.config, this.logger); | ||
this.applications = new Applications(this.config); | ||
/** | ||
@@ -104,3 +114,3 @@ * ###### Blacklists | ||
*/ | ||
this.blacklists = new Blacklists(this.config, this.logger); | ||
this.blacklists = new Blacklists(this.config); | ||
/** | ||
@@ -110,3 +120,3 @@ * ###### Categories | ||
*/ | ||
this.categories = new Categories(this.config, this.logger); | ||
this.categories = new Categories(this.config); | ||
/** | ||
@@ -116,3 +126,3 @@ * ###### Exports | ||
*/ | ||
this.exports = new Exports(this.config, this.logger); | ||
this.exports = new Exports(this.config); | ||
/** | ||
@@ -122,7 +132,18 @@ * ###### Imports | ||
*/ | ||
this.imports = new Imports(this.config, this.logger); | ||
this.imports = new Imports(this.config); | ||
/** | ||
* ###### Topics | ||
* [API](/lib/api/topics.html) | [CLI](/lib/cli/topics.html) | [Disqus](https://disqus.com/api/docs/topics/) | ||
*/ | ||
this.topics = new Topics(this.config); | ||
this.logger.debug('Instantiated Disqus', JSON.stringify(this.config)); | ||
this.config.logger.debug('Instantiated Disqus', JSON.stringify(this.config, function (key, value) { | ||
if (key === 'logger') { | ||
return {}; | ||
} else { | ||
return value; | ||
} | ||
})); | ||
} | ||
module.exports = Disqus; |
@@ -5,3 +5,8 @@ var Promise = require('bluebird'); | ||
function parse(res) { | ||
var json = JSON.parse(res[1]); | ||
var json; | ||
try { | ||
json = JSON.parse(res[1]); | ||
} catch (err) { | ||
throw new Error('Failed to parse response from Disqus.'); | ||
} | ||
if (!('code' in json) || (json.code !== '0' && json.code !== 0)) { | ||
@@ -48,7 +53,5 @@ throw new Error(json.response); | ||
applyOptions: applyOptions, | ||
request: request, | ||
executeAPIMethod: function (method, options, config, logger, cb) { | ||
executeAPIMethod: function (method, options, config, cb) { | ||
return Promise.resolve({}) | ||
@@ -65,3 +68,3 @@ .then(function (qs) { | ||
}; | ||
logger.debug(JSON.stringify(opts)); | ||
config.logger.debug(JSON.stringify(opts)); | ||
return request(opts).then(parse); | ||
@@ -68,0 +71,0 @@ }).nodeify(cb); |
{ | ||
"name": "disqus-node", | ||
"version": "0.8.0", | ||
"version": "0.9.0", | ||
"description": "Disqus API bindings and CLI for NodeJS http://disqus.com/api/", | ||
@@ -36,3 +36,4 @@ "main": "./lib/index.js", | ||
"commander": "^2.2.0", | ||
"log": "^1.4.0" | ||
"log": "^1.4.0", | ||
"dependable": "^0.2.5" | ||
}, | ||
@@ -47,4 +48,9 @@ "devDependencies": { | ||
"load-grunt-tasks": "^0.5.0", | ||
"grunt-contrib-clean": "^0.5.0" | ||
"grunt-contrib-clean": "^0.5.0", | ||
"grunt-env": "^0.4.1", | ||
"grunt-mocha-test": "^0.11.0", | ||
"grunt-istanbul": "^0.3.0", | ||
"chai": "^1.9.1", | ||
"grunt-karma-coveralls": "^2.5.1" | ||
} | ||
} |
@@ -11,2 +11,13 @@ disqus-node | ||
[![Build Status](https://travis-ci.org/jmdobry/disqus-node.svg?branch=master)](https://travis-ci.org/jmdobry/disqus-node) | ||
[![Coverage Status](https://coveralls.io/repos/jmdobry/disqus-node/badge.png)](https://coveralls.io/r/jmdobry/disqus-node) | ||
[![Code Climate](https://codeclimate.com/github/jmdobry/disqus-node.png)](https://codeclimate.com/github/jmdobry/disqus-node) | ||
[![Dependency Status](https://gemnasium.com/jmdobry/disqus-node.svg)](https://gemnasium.com/jmdobry/disqus-node) | ||
## Documentation | ||
[API](http://disqus-node.pseudobry.com/lib/index.html) | [CLI](http://disqus-node.pseudobry.com/lib/cli/index.html) | ||
## Functional | ||
@@ -18,2 +29,3 @@ - Applications | ||
- Imports | ||
- Topics | ||
@@ -24,3 +36,2 @@ ## Not Yet Implemented | ||
- Threads | ||
- Topics | ||
- Trends | ||
@@ -30,6 +41,3 @@ - Users | ||
## Documentation | ||
[API](http://disqus-node.pseudobry.com/lib/index.html) | [CLI](http://disqus-node.pseudobry.com/lib/cli/index.html) | ||
## License | ||
[Apache License Version 2.0](https://github.com/jmdobry/disqus-node/blob/master/LICENSE) |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
40
77027
5
13
29
1774
4
1
+ Addeddependable@^0.2.5
+ Addeddependable@0.2.5(transitive)