Skip to content

Releases: webdoc-labs/webdoc

webdoc 1.5.2

11 Jul 03:34
Compare
Choose a tag to compare

🎁

  • Automatic inference of siteDomain, siteRoot for manifests loaded from a URL (#131) @bigtimebuddy

1.5.0

06 Jun 20:05
640ee26
Compare
Choose a tag to compare

πŸŽ‰ Feature(s)

  • Worker threads for indexing files in the parser (#126)

This cuts down webdoc's indexing time by 10-15% for mid-sized projects (~500-1000 files). It is disabled on small projects with less than ~50 files.

  • Publish source code in your documentation (#127)
    (enabled by default)
{
  "template": {
    "sources": true
  }
}
  • Analytics integration that supports Google Analytics and Plausible (#128)
{
  "template":  {
    "integrations": {
      "analytics": {
        "provider": "google-analytics",
        "trackingID": "UA-XXX-00"
      }
    }
  }
}
{
  "template":  {
    "integrations": {
      "analytics": {
        "provider": "plausible",
        "nakedDomain": "example.com"
      }
    }
  }
}
  • Alias for the tutorial template file in @webdoc/default-template (#129)

πŸ—žοΈ Bug fixes

  • Fix parser errors when using TypeScript's parameter properties syntax (#130)

You can now use the following syntax:

class Tree {
  /** @param root */
  constructor(public readonly root: TreeNode) {

  }
}

The property root won't have a description, however. The parameter "root" of the constructor will do.

1.4.0

23 May 21:31
Compare
Choose a tag to compare

πŸŽ‰ Features

  • Variants: Templates can have "variants" for rendering different variants of their sites. @webdoc/default-template now has a "plain" variant. The plain variant does not ship with any built-in scripts or stylesheets - it's completely up to you on how you want to style it. (#125)
  • Aliases: Templates can support "aliases" for some of their component files. @webdoc/default-template's plain variant has these aliases: (#125)
    • "header": The top app bar of the site.
    • "footer": Additional details at the bottom of the content.
    • "explorer": The left navigation.

1.3.3

02 May 22:09
Compare
Choose a tag to compare

πŸŽ‰ Features

{
  "opts": {
     "import": [
        "https://webdoc-labs.github.io/example-documentation/webdoc.api.json"
     ]
  }
}

1.3.2

02 May 01:50
Compare
Choose a tag to compare

πŸŽ‰ Features

  • Add previous/next navigation buttons to the default template (#119)

Screen Shot 2021-05-01 at 9 26 27 PM

  • Add support for customizing app bar items in @webdoc/default-template (template.appBar.items) (#120)
  • Add support for configuring the route of tutorials (template.routes.tutorials) (#120)

πŸ—žοΈ Bug fixes

  • Use CSS Grid for @webdoc/default-template's horizontal layout to fix scrolling issues in Safari (#119)
  • The explorer no longer contains a top-level "(overview)" if you do not provide a README file (#120)
  • An API reference is no longer outputted if the document tree is empty (i.e. you're using webdoc for tutorials only) (#120)

1.3.1

25 Apr 21:06
Compare
Choose a tag to compare

πŸ—žοΈ Bug fixes

  • Fix custom --site-root issue with tutorials and explorer.

1.3.0

25 Apr 20:39
Compare
Choose a tag to compare

πŸŽ‰ Features

  • Tutorials with JSDoc-like configuration (#109)
  • Experimental support for custom stylesheets (#114)
  • Add proper support for ES5 classes, declaring with prototype-assigned functions
  • Resolve @classdesc tag correctly, auto-generate constructors when not documented
/**
 * This constructor should only be used for custom contexts.
 *
 * @classdesc
 * {@link ExampleFactory} can be used to build examples.
 *
 * ```js
 * // TODO: Make the API interesting
 * ExampleFactory.getInstance()
 *  .build()
 * ```
 *
 * @param {ExampleContext}[context=null] - A custom context for the factory.
 * @class
 */
export function ExampleFactory(context= null) {

}

/**
 * Get the context of this factory.
 *
 * @return {ExampleContext}
 */
ExampleFactory.prototype.getContext = function() {
  return null;
}

/**
 * Build the road.
 */
ExampleFactory.prototype.build = function() {

}

/**
 * Gets a lazily-initialized, shared singleton instance of {@link ExampleFactory}.
 *
 * @returns {ExampleFactory}
 */
ExampleFactory.getInstance = function () {
  if (!ExampleFactory.__instance) {
    ExampleFactory.__instance = new ExampleFactory();
  }

  return ExampleFactory.__instance;
}

πŸ—žοΈ Bug fixes

  • Fix nested properties not being resolved correctly. The following should work now:
/**
 * @property options
 * @property options.flag - A flag.
 */
class C {}

1.2.2

24 Apr 13:57
Compare
Choose a tag to compare

πŸ—žοΈ Bug fixes

  • Republish @webdoc/template-library with #105's changes

1.2.1

18 Apr 00:13
Compare
Choose a tag to compare

πŸ—žοΈ Bug fixes

  • Fixed private access modifier inference for TypeScript methods (#106)
interface Resource {
    /** No need for explicit @private tag. */
    private _onPlay() {}
}
  • Fixed scope inference from canonical names in @memberof tags (#107)

The following snippet will correctly be inferred as "instance" scope instead of "static" scope based on the last separator "#" (instead of the first ".").

/** @method PIXI.Graphics#drawChamferRect. */
  • Fix data-type, readonly inference of TypeScript interface properties (#108)
interface MixinBase {
    /** No need for @readonly or @type {boolean} tags. */
    readonly isMounted: boolean;
}

1.2.0

07 Feb 20:29
Compare
Choose a tag to compare

πŸŽ‰ Features

  • Add concept of integrations for templates
  • Add search integration that works with Algolia DocSearch in @webdoc/default-template
  • Make applicationName configurable in @webdoc/default-template
  • Add meta property-content pairs in template configuration. This is useful if you want to add OpenGraph tags
  • Add siteDomain configuration. @webdoc/default-template will generate a sitemap.xml if the domain is provided

πŸ—’οΈ Documentation

  • Add README documentation for @webdoc/cli and @webdoc/model

πŸ—žοΈ Bug fixes

  • Sort package documents

External