Commit Graph

155 Commits

Author SHA1 Message Date
Andreas Hocevar
dd44ecf185 Only document enums when they have API properties 2020-03-28 14:17:56 +01:00
Maximilian Krög
873cccc4f3 Add default exported enums to apidoc 2020-03-12 22:29:46 +01:00
Maximilian Krög
f2477622c3 Remove redundant check if doclet kind is typedef 2020-03-12 22:29:34 +01:00
Maximilian Krög
058ca59233 Also correctly detect default exports without an identifier 2020-03-12 21:36:19 +01:00
Maximilian Krög
1d7d7a7eef Sort events / observables in all cases
Right now this only changes the order of events of the UrlTile class.
2020-03-01 00:25:11 +01:00
Maximilian Krög
d28be3c160 Fix building apidoc on windows 2020-02-28 21:44:06 +01:00
Maximilian Krög
e484eca1a1 Some more cleanup
No need to sort beforehand and therefore sorting can be done at last too.
Also forEach is just fine, no need for underscore.

This changes the navigation default order for modules to be after classes
when the name is the same.
2020-02-27 23:47:22 +01:00
Maximilian Krög
bc8499472c Current item may be undefined
Worked fine before, but better safe than sorry.
2020-02-27 22:58:07 +01:00
Maximilian Krög
47ed2963c4 Default exported classes have same prettyname as modules 2020-02-27 22:57:55 +01:00
Maximilian Krög
c2505f938e Remove measuring code 2020-02-22 14:30:44 +01:00
Maximilian Krög
6b9a35b7b9 Always sort top level matches before member matches 2020-02-22 14:30:25 +01:00
Maximilian Krög
df8c0f3e6f Avoid deprecated jquery :eq selector 2020-02-22 01:07:43 +01:00
Maximilian Krög
bf2a7bd21a Allow toggel on whole title, add toggle transition 2020-02-22 01:07:41 +01:00
Maximilian Krög
ee8ec6f03a Shorter css paths in navigation 2020-02-21 22:58:05 +01:00
Maximilian Krög
b46b250d75 On toggle when searching show unfiltered instead of hiding all 2020-02-21 22:58:05 +01:00
Maximilian Krög
2dec296aae Use css to show / hide items; track matched items
... to improve search speed.

Instead of marking all items as hidden, and then marking the matched
ones again, this keeps track of all matched items and only
removes those that no longer match and adds those that previously did
not match.
2020-02-21 22:57:53 +01:00
Maximilian Krög
646ecfd405 Weight function prefer classes over modules 2020-02-21 22:56:54 +01:00
Maximilian Krög
99d9a9ff86 Use strict mode 2020-02-21 22:56:54 +01:00
Maximilian Krög
15beb1f2c6 Put more weight on the base name 2020-02-21 22:56:53 +01:00
Maximilian Krög
b613e8e77f Fix regex dot escape 2020-02-21 22:56:53 +01:00
Maximilian Krög
ccafb4b91d Improved weight function.
++++ Full match from start to end
+++  Full match between word boundaries
++   Begin matches at word boundary, multiple matches are better
+    Matches somewhere

Classes with (multiple) members matching at the beginning are
weighted higher.
2020-02-21 22:56:51 +01:00
Maximilian Krög
1b4ed08bc5 Indent line-wrapped class names 2020-02-21 22:55:32 +01:00
Maximilian Krög
cc561dab8e Allow word wrap before '.' and '~' in class names 2020-02-21 22:55:32 +01:00
Maximilian Krög
8b857eed26 Change prettyname of classes
Now also includes the class name if it is different than its module name.
`ol/source/Vector` -> `ol/source/Vector~VectorSource`.
2020-02-21 22:55:32 +01:00
Maximilian Krög
7640bcd163 Only match the displayed name of items when searching
Currently the search term is matched against the longname of members.
Because of this most members are matched when searching for a
class / module and also searching for 'mod' matches everything as
all longnames start with 'module:'
2020-02-21 22:55:32 +01:00
Maximilian Krög
d3b9b25429 Search if the search input is not empty after page loads
Firefox remembers input on the same page if a normal reload is performed.
In this case the results for the search term should be shown automatically.
2020-02-21 22:55:32 +01:00
Maximilian Krög
f7871d6103 Store search data in lowercase and compare in lowercase
This way we can do the search case-sensitive after only converting
the search term to lowercase.
2020-02-21 22:55:32 +01:00
Maximilian Krög
b9455bfad9 Remove unnecessary / duplicate code. 2020-02-21 22:55:31 +01:00
Maximilian Krög
2b8582fcad Catch errors when search term is an invalid regular expression
On error search escape special characters, with only '.' matching
any characters.
2020-02-21 22:50:57 +01:00
Maximilian Krög
d56513b722 Add code to measure search function speed 2020-02-21 22:50:57 +01:00
Maximilian Krög
99ecce2a87 Provide the searchTerm as argument to doSearch function 2020-02-21 22:50:57 +01:00
Maximilian Krög
b919074aa3 Skip searches when typing fast / slow cpu. 2020-02-21 22:50:57 +01:00
Maximilian Krög
6187118166 Hide member-lists, show current item when clearing input 2020-02-21 22:50:57 +01:00
Maximilian Krög
f5a996a64e Highlight current anchor with css instead of js.
The `:target` selector is supported by all browsers.
2020-02-21 22:50:57 +01:00
Andreas Hocevar
8750cb0b1a Merge pull request #10653 from ahocevar/apidoc-nav
More reliable check for module content beyond classes
2020-02-13 14:30:26 +01:00
Andreas Hocevar
32238806a6 Merge pull request #10617 from MoonE/apidoc-performance
Improve apidoc generation performance
2020-02-13 11:03:02 +01:00
Andreas Hocevar
4e1ca0a986 More reliable check for module content beyond classes 2020-02-13 10:41:52 +01:00
Maximilian Krög
300cc282e4 Generate valid html for the apidoc navigation
Only `<li>` can be a direct descendant of `<ul>` tags.
2020-02-10 00:10:05 +01:00
Maximilian Krög
5d922fc53b Cleanup navigation.tmpl and the generated html
- Add a function that is used to generate all four types of member lists.
- Only use one line per list item.
- Don't generate empty `class=""` attributes when item is stable.
- Remove closing `</li>` tag, as is allowed by the html 5 standard.

Overall this reduces the filesize for the generated html pages by ~33%.
2020-02-10 00:09:33 +01:00
Maximilian Krög
c0f058f5cf Variable should be reset on each loop but wasn't
The ancestors variable is always set once the first augmented doclet is found.
The incompleteDoclet variable is also not reset between loops.
2020-02-07 00:08:14 +01:00
Maximilian Krög
2e4f989d7b Store api members as object map instead of array. 2020-02-07 00:08:14 +01:00
Maximilian Krög
0c04293d5f Generate navigation html only once for all pages.
This reduces the time for apidoc generation by ~30%.
2020-02-07 00:08:07 +01:00
Andreas Hocevar
f8f7f83be7 Do not expose static render function of controls 2020-01-29 20:21:08 +01:00
Andreas Hocevar
e3f9e250ab Sort doc navigation properly and add missing modules 2020-01-29 14:04:52 +01:00
Andreas Hocevar
afba861ab5 Merge pull request #10543 from MoonE/jsdoc-api-mustnothavevalue
@api tag must not have a value.
2020-01-20 09:33:28 +01:00
Maximilian Krög
e2dc67546e Only generate module apidoc pages when it contains api tags 2020-01-19 15:51:48 +01:00
Maximilian Krög
9cc7ef4b96 Use correct config for tags which must not have a value. 2020-01-18 20:15:10 +01:00
Maximilian Krög
9622a8ca93 Fix link in apidocs to ObjectEvent. 2019-12-27 23:35:19 +01:00
Tim Schaub
76333f72ba Merge pull request #10204 from tschaub/doc-layout
Avoid scrolling over navigation
2019-10-27 17:05:39 -06:00
Tim Schaub
0f87df0ade Add the default to the type column 2019-10-26 17:27:04 -06:00