kibana/docs
Rudolf Meijering 5c457972d4
Generate core API docs from TSDoc comments (#32148)
* Generate core API docs from TSDoc comments

Uses api-extractor and api-documenter to generate documentation for
the Kibana core API from TSDoc comments in the source code.

Documentation can be generated using `npm run docs:api`.

I used --no-verify to ignore the following pre-commit hook errors:
1. Filenames MUST use snake_case - api-extractor.json
   It's possible to specify a different config file, but I prefer to keep the "standard" config file name.
2. UNHANDLED ERROR: Unable to find tsconfig.json file selecting "common/core_api_review/kibana.api.ts". Ensure one exists and it is listed in "src/dev/typescript/projects.ts"
   This is not a source file, so safe to ignore.

* Flesh out API docs a little bit

* Ignore snake_case check for api-extractor.json

* Ignore api-extractor's review file from pre-commit check

* Try to fix build failing by using masters yarn.lock

* I'm being stupid

* Found a better home for ignoring common/core_api_review/kibana.api.ts

* Node script for detecting core API changes

I initially wanted to include this as a precommit hook, but it takes
quite long to execute (~12s) so might be better suited as a test or
as part of the release process.

The script currently fails because api-extractor uses an older version
of typescript.

* Fix tslint precommit hook ignore condition

* Write tsdoc-metadata.json into ./build

* Add LogMeta and ElasticSearch to exported types & docs

* Suppress logging when running api-extractor from script

* Improve check_core_api_changes script and run as test

* Inline api-extractor.json config

* Fix check_core_api_changes --help flag

* LogMeta TSDoc comments

* check_core_api_changes: fail if api-extractor produces warnings or errors

And print more useful messages to the console

* Move ignored ts files list into dev/file

* Add back build:types since api-exporter cannot operate on source files

* Upgrade api-exporter/documenter

* api-extractor: independantly analyze core/public and core/server

Becasue of https://github.com/Microsoft/web-build-tools/issues/1029
api-extractor can't use core/index.ts as a single entry point for
analyzing the public and server API's as isolated namespaces.

Instead we analyze these projects separately. This introduces other
problems like the api review files and documentation always being
called "kibana." from the package.json filename.

* Build types as part of build task

* Include types in typescript browser compilation

* Force inclusion of core/public for building types

* Fix api review filename in api-exporter errors

* Update docs and API review files

* Fix api-extractor warnings

* Remove ts file ignored list since it's no longer necessary

* Rename exported api package name

* Review comments

* Export other missing types

* Upgrade api-documenter to latest beta

* Export more missing types

* Fix warnings and add api-exporter to Jenkins tests

* Correctly handle runBuildTypes() exceptions

* Fix another swallowed exception

* Fix api-extractor warnings after master merge
2019-04-03 12:26:00 +02:00
..
api [DOCS] Updates Create Pipeline doc (#34359) 2019-04-02 11:47:42 -07:00
apm [APM][Docs] Update documentation for 7.0 (#31940) 2019-03-14 09:00:37 -07:00
canvas [DOCS] Adds X-Pack icon for Canvas (#34173) 2019-04-01 11:26:32 -07:00
dev-tools [DOCS] Use search profiler attribute (#28209) 2019-01-08 10:28:02 -08:00
development Generate core API docs from TSDoc comments (#32148) 2019-04-03 12:26:00 +02:00
discover Makes KQL the default query language for new searches (#27092) 2019-02-06 17:18:25 -05:00
getting-started Docs/gettingstarted (#32145) (#32218) 2019-03-26 14:45:35 -05:00
graph [DOCS] Removes abbrevtitles from parts (#34002) 2019-03-27 13:23:32 -07:00
images [DOCS]Replace CCR and CCS with attributes (#33143) 2019-03-13 14:14:08 -04:00
infrastructure [Infra + Logs UI] Add source configuration ui to the docs (#33535) 2019-03-22 12:25:08 +01:00
limitations [DOCS] Adds known limitation for exporting a data table (#25561) 2018-11-13 09:07:22 -08:00
logs [Infra + Logs UI] Add source configuration ui to the docs (#33535) 2019-03-22 12:25:08 +01:00
management [DOCS] Adds X-Pack icon for index management (#34175) 2019-04-01 09:56:46 -07:00
maps [DOCS] Adds X-Pack icon for maps (#34170) 2019-04-01 08:32:11 -07:00
migration [DOCS] Adds settings section to breaking changes (#34328) 2019-04-02 07:48:04 -07:00
ml [DOCS] Overview of automated annotations (#29456) 2019-01-28 13:18:22 -08:00
monitoring [DOCS] Work around for titleabbrev errors (#34201) 2019-04-01 13:23:59 -07:00
plugins Add ElastAlert Kibana Plugin to known plugins list (#23598) 2018-09-28 10:47:27 +02:00
release-notes [DOCS] Removes abbrevtitles from parts (#34002) 2019-03-27 13:23:32 -07:00
reporting [DOCS]Update UI names in Reporting doc (#34073) 2019-03-28 13:16:28 -04:00
security [DOCS] Fixes anchor in ordered list (#34092) 2019-03-28 10:17:35 -07:00
settings [Infra + Logs UI] Add source configuration ui to the docs (#33535) 2019-03-22 12:25:08 +01:00
setup adding yml switch for using interpreter in expressions (#33832) 2019-04-01 15:35:12 +02:00
spaces [DOCS] Adds descriptions and examples to spaces security doc (#30113) 2019-02-05 15:59:37 -08:00
timelion Fix misspellings (#19981) 2018-06-26 20:17:41 -07:00
uptime [Uptime] Add first draft of uptime docs (#31814) 2019-03-22 12:59:53 -04:00
visualize [Docs]Fixes links in Vega docs (#31283) 2019-02-19 10:31:37 -05:00
api.asciidoc [docs] Add docs for Upgrade Assistant APIs (#30330) 2019-02-13 14:12:19 -06:00
canvas.asciidoc [DOCS] Adds X-Pack icon for Canvas (#34173) 2019-04-01 11:26:32 -07:00
CHANGELOG.asciidoc [DOCS] Removes abbrevtitles from parts (#34002) 2019-03-27 13:23:32 -07:00
dashboard.asciidoc Remove Dashboard dark theme setion from docs (#32863) 2019-03-11 14:07:34 -06:00
dev-tools.asciidoc [DOCS] Creates dev-tools folder (#19528) 2018-05-29 22:37:51 -07:00
development.asciidoc Adding RBAC Phase 1 Docs (#21178) 2018-08-13 12:06:25 -04:00
discover.asciidoc [Docs]Updates to Discover docs (#29868) 2019-02-04 10:20:24 -05:00
getting-started.asciidoc [DOCS]Add sample data (#32244) 2019-03-05 13:27:30 -05:00
gs-index.asciidoc Add link to the EUI docs to Kibana docs (#11835) 2018-03-21 14:16:32 -07:00
index.asciidoc [Uptime] Add first draft of uptime docs (#31814) 2019-03-22 12:59:53 -04:00
index.x.asciidoc [DOCS] Removes redundant index.asciidoc files (#19192) 2018-05-18 11:50:51 -07:00
introduction.asciidoc docs: Overhaul of doc structure for 5.0+ (#8821) 2016-10-24 21:41:32 -04:00
limitations.asciidoc [DOCS] Fixes link title (#26599) 2018-12-04 08:49:37 -08:00
management.asciidoc [DOCS] Adds documentation for remote cluster and CCR UIs (#28944) 2019-01-18 09:32:24 -05:00
migration.asciidoc [DOCS] Adds placeholders for release notes, breaking changes, highlights (#30545) 2019-02-08 12:56:52 -08:00
plugins.asciidoc [plugin cli] defer optimization (#26983) 2019-01-29 10:35:55 -06:00
redirects.asciidoc [DOCS] Removes X-Pack settings section (#30554) 2019-02-11 08:17:25 -08:00
setup.asciidoc [DOCS] Removes X-Pack settings section (#30554) 2019-02-11 08:17:25 -08:00
timelion.asciidoc [DOCS] Timelion Getting Started Guide (#11065) 2017-04-26 16:11:03 -07:00
visualize.asciidoc Fix misspellings (#19981) 2018-06-26 20:17:41 -07:00