1.1.0 • Published 12 months ago

@hperchec/vue-docgen-template v1.1.0

Weekly downloads
-
License
MIT
Repository
gitlab
Last release
12 months ago

@hperchec/vue-docgen-template

Template for vue-docgen-cli including:

  • script handlers to extract component documentation:
    • get extends informations
    • get mixins informations
    • parse props doc blocks with jsDoc
    • parse methods doc blocks with jsDoc
  • doc blocks tag features (see below)
  • template engine similar to jsdoc2md/dmd written with Handlebars.js
  • createConfig util to create vue-docgen-cli config

This template make markdown output friendly for markdownlint

Usage

Use the createConfig method in vue-docgen-cli docgen.config.js configuration file:

const { createConfig } = require('@hperchec/vue-docgen-template')

const docgenConfig = createConfig({
  componentsRoot: 'src/components', // the folder where CLI will start searching for components.
  components: '**/[A-Z]*.vue', // the glob to define what files should be documented as components (relative to componentRoot)
  outDir: 'docs' // folder to save components docs in (relative to the current working directory)
}, {
  /* Template options */
})

module.exports = docgenConfig

See also API docs

Options

The createConfig method takes vue-docgen-cli config object as first parameter and options as second parameter:

  • options.helper?: String | String[]: handlebars helpers file(s)
  • options.partial?: String | String[]: handlebars partial file(s)
  • options.template?: String: handlebars root template as string
  • options.jsDoc?: Object: jsDoc options

See also API docs

Document component

Documentation object

Documentation object has now the following properties:

  • category: component category from @category tag
  • deprecated: if component is deprecated (from @deprecated tag)
  • isGloballyRegistered: true if component has @global tag
  • see: from @see tag
  • since: from @since tag
  • version: from @version tag

Doc blocks

Doc blocks are now parsed by jsDoc engine as Doclet objects.

Added tags:

  • @category tag will add category to component Documentation object category property (Array)

Changes:

  • @deprecated tag is exposed to component Documentation object deprecated property (Boolean | String)
  • @global tag will mark component as globally registered by Vue. It sets component Documentation object isGloballyRegistered property (Boolean) to true.
  • @see tag is exposed to component Documentation object see property (Array)
  • @since tag is exposed to component Documentation object since property (String)
  • @version tag is exposed to component Documentation object version property (String)

Props

PropDescriptor object

PropDescriptor object has now the following properties:

  • category: prop category from @category tag
  • deprecated: if prop is deprecated (from @deprecated tag)
  • see: from @see tag
  • since: from @since tag
  • values: prop values from @values tag
  • version: from @version tag

Doc blocks

Doc blocks are now parsed by jsDoc engine as Doclet objects.

Added tags:

  • @category tag will add category to PropDescriptor object category property (Array)

Changes:

  • @deprecated tag is exposed to component Documentation object deprecated property (Boolean | String)
  • @see tag is exposed to component Documentation object see property (Array)
  • @since tag is exposed to component Documentation object since property (String)
  • @values tag will add category to PropDescriptor object values property (Array)
  • @version tag is exposed to component Documentation object version property (String)

Methods

MethodDescriptor object

MethodDescriptor object has now the following properties:

  • category: prop category from @category tag
  • deprecated: if prop is deprecated (from @deprecated tag)
  • see: from @see tag
  • since: from @since tag
  • version: from @version tag

Doc blocks

Doc blocks are now parsed by jsDoc engine as Doclet objects.

Added tags:

  • @category tag will add category to MethodDescriptor object category property (Array)

Changes:

  • @deprecated tag is exposed to component Documentation object deprecated property (Boolean | String)
  • @see tag is exposed to component Documentation object see property (Array)
  • @since tag is exposed to component Documentation object since property (String)
  • @version tag is exposed to component Documentation object version property (String)