options.js 643 B

12345678910111213141516171819202122232425
  1. 'use strict'
  2. module.exports = function parseOptions (params) {
  3. if (typeof params.plugins === 'function') {
  4. params.plugins = params.plugins.call(this, this)
  5. }
  6. let plugins
  7. if (typeof params.plugins === 'undefined') plugins = []
  8. else if (Array.isArray(params.plugins)) plugins = params.plugins
  9. else plugins = [ params.plugins ]
  10. const options = {}
  11. if (typeof params !== 'undefined') {
  12. options.parser = params.parser
  13. options.syntax = params.syntax
  14. options.stringifier = params.stringifier
  15. }
  16. const exec = params && params.exec
  17. return Promise.resolve({ options: options, plugins: plugins, exec: exec })
  18. }