angular-cn/aio/tools/transforms/templates
Pete Bacon Darwin b94436d86c build(docs-infra): process and render ngmodule exports (#25734)
All directives and pipes must now be tagged with one ore more
public NgModule, from which they are exported.

If an item is exported transitively via a re-exported internal NgModule
then it may be that the item appears to be exported from more than
one public NgModule. For example, there are shared directives that
are exported in this way from `FormsModule` and `ReactiveFormsModule`.

The doc-gen will error and fail if a directive or pipe is not tagged correctly.

NgModule pages now list all the directives and pipes that are exported from it.
Directive and Pipe pages now list any NgModule from which they are exported.
Packages also now list any NgModules that are contained - previously they were
missed.

PR Close #25734
2018-09-19 16:18:24 -07:00
..
api build(docs-infra): process and render ngmodule exports (#25734) 2018-09-19 16:18:24 -07:00
lib refactor(docs-infra): refactor templates (#24378) 2018-08-31 09:42:10 -07:00
README.md docs(aio): tidy up tooling documentation (#18151) 2017-09-21 10:00:37 -07:00
content.template.html refactor(docs-infra): refactor templates (#24378) 2018-08-31 09:42:10 -07:00
data-module.template.js build(aio): move the `transforms` folder into the `tools` folder 2017-04-16 22:05:23 +01:00
example-region.template.html build(aio): move the `transforms` folder into the `tools` folder 2017-04-16 22:05:23 +01:00
json-doc.template.json build(aio): move the `transforms` folder into the `tools` folder 2017-04-16 22:05:23 +01:00
overview-dump.template.html refactor(docs-infra): refactor templates (#24378) 2018-08-31 09:42:10 -07:00
sitemap.template.xml build(aio): generate sitemap from the generated pages (#21689) 2018-01-22 12:55:15 -08:00

README.md

This folder contains the dgeni templates that are used to generate the API docs

Generally there is a template for each docType. Templates can extend and/or include other templates. Templates can also import macros from other template files.

Template inheritance

When extending a template, parent must declare blocks that can be overridden by the child. The template extension hierarchy looks like this (with declared blocks in parentheses):

  • layout/base.template.html (base)
    • module.template.html
    • layout/api-base.template.html (jumpNav, jumpNavLinks, whatItDoes, infoBar, securityConsiderations, deprecationNotes, howToUse, details)
      • class.template.html
        • directive.template.html
        • enum.template.html
      • var.template.html
        • const.template.html
        • let.template.html
      • decorator.template.html
      • function.template.html
      • interface.template.html
        • type-alias.template.html
      • pipe.template.html

Doc Properties

It is useful to know what properties are available on each doc type when working with the templates. The typescript Dgeni package is now written in TypeScript and there is a class for each of the types of API document. See https://github.com/angular/dgeni-packages/tree/master/typescript/src/api-doc-types. This is a good place to go to see what properties you can use in the templates.