0.4.1 • Published 9 years ago

doxie.filter v0.4.1

Weekly downloads
1
License
MIT
Repository
github
Last release
9 years ago

Coveralls – test coverage
Travis – build status
David – status of dependencies
Stability: unstable
Code style: airbnb

A plugin for doxie.
Filter comments through a custom function.

Note: Don’t panic. doxie --filter is a flexible, low-level plugin. We’re working on higher-level plugins which you can drop into your project without fiddling with configuration.

CLI Usage

doxie --filter is a plugin for the command-line tool doxie. Most plugins are designed for dox data. Install all three if you haven’t already:

$ npm install --global dox doxie doxie.filter

Pass the option --filter to doxie to put the plugin in your pipeline. By default it will import the filter function from <pwd>/.doxie.filter.js and pipe your docs through it:

$ dox | doxie --filter

You can also specify a custom file to import the filter function from:

$ dox | doxie --filter ./build/my-custom-filter.js

Programmatic usage

doxie.filter can be used directly with doxie-core – the backend of doxie. Install both if you haven’t already:

$ npm install doxie-core doxie.filter

Pass the filter function directly as a parameter:

const doxie = require('doxie-core');
const filter = require('doxie.filter');
const myDoxData = {/* … */};

doxie([
  filter(({data}) => (!data || !data.isPrivate)),
])(myDoxData);

The filter function

Put the file .doxie.filter.js in the root directory of your project and export a single function from it. Every doc will be piped through your filter function. If it returns a truthy value, the doc will be kept. Otherwise it won’t be passed down the plugin pipeline.

Here’s a drop-in example written in ES5:

// `/.doxie.filter.js`

module.exports = function(doc) {return (
  // Keep the doc if it has no associated data (comes from a plugin, not from
  // a comment)
  !doc.data ||

  // Or if *dox* hasn’t marked it as private.
  !doc.data.isPrivate
);};
  • [data] {*}
    The data associated with a doc. If the doc corresponds comes from a dox comment, this will be the output from dox.

  • [output] {String}
    The rendered text output for a doc.

  • keep? {Boolean}
    If falsy, the doc won’t be passed down the plugin pipeline.

License

MIT © Studio B12 GmbH

0.4.1

9 years ago

0.4.0

9 years ago

0.3.2

9 years ago

0.3.1

9 years ago

0.3.0

9 years ago

0.2.1

9 years ago

0.2.0

9 years ago

0.1.1

9 years ago

0.1.0

9 years ago