umberto 9.3.0 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/CHANGELOG.md +24 -16
  2. package/LICENSE.md +0 -44
  3. package/README.md +0 -1
  4. package/hexo-shim.js +2 -2
  5. package/package.json +2 -9
  6. package/scripts/filter/after-post-render/{gloria.js → gloria.cjs} +3 -3
  7. package/scripts/filter/after-post-render/{insert-error-codes.js → insert-error-codes.cjs} +1 -1
  8. package/scripts/filter/after-post-render/{linker.js → linker.cjs} +1 -1
  9. package/scripts/filter/after-post-render/{parseicontag.js → parseicontag.cjs} +1 -1
  10. package/scripts/filter/after-post-render/{snippets.js → snippets.cjs} +2 -2
  11. package/scripts/filter/after-render/{process-svg.js → process-svg.cjs} +3 -3
  12. package/scripts/filter/before-post-render/{add-project-info-to-page.js → add-project-info-to-page.cjs} +2 -2
  13. package/scripts/filter/before-post-render/{add-repo-url.js → add-repo-url.cjs} +4 -4
  14. package/scripts/filter/before-post-render/{code-switcher.js → code-switcher.cjs} +1 -1
  15. package/scripts/filter/before-post-render/{execute-and-insert-function-results.js → execute-and-insert-function-results.cjs} +1 -1
  16. package/scripts/filter/before-post-render/gloria/{add-breadcrumbs-data-to-page.js → add-breadcrumbs-data-to-page.cjs} +4 -4
  17. package/scripts/filter/before-post-render/gloria/{prerender-admonitions.js → prerender-admonitions.cjs} +1 -1
  18. package/scripts/filter/before-post-render/gloria/{prerender-xml-pug-components.js → prerender-xml-pug-components.cjs} +5 -5
  19. package/scripts/filter/before-post-render/gloria/{render-post-render-pug-components.js → render-post-render-pug-components.cjs} +1 -1
  20. package/scripts/filter/before-post-render/{has-own-favicons.js → has-own-favicons.cjs} +1 -1
  21. package/scripts/filter/before-post-render/{infobox.js → infobox.cjs} +1 -1
  22. package/scripts/filter/before-post-render/{insertchangelog.js → insertchangelog.cjs} +1 -1
  23. package/scripts/filter/before-post-render/{replace-macros.js → replace-macros.cjs} +1 -1
  24. package/scripts/helper/{find-main-category-page.js → find-main-category-page.cjs} +1 -1
  25. package/scripts/helper/{normalize-badges.js → normalize-badges.cjs} +1 -1
  26. package/scripts/helper/{parse-href.js → parse-href.cjs} +1 -1
  27. package/scripts/helper/{u-capitalize.js → u-capitalize.cjs} +1 -1
  28. package/scripts/helper/{u-random-id.js → u-random-id.cjs} +1 -1
  29. package/scripts/helper/{u-remove-indentation.js → u-remove-indentation.cjs} +1 -1
  30. package/scripts/helper/{u-toc.js → u-toc.cjs} +1 -1
  31. package/scripts/utils/{concat-url-parts.js → concat-url-parts.cjs} +3 -3
  32. package/scripts/utils/{execute-and-insert-function-results.js → execute-and-insert-function-results.cjs} +7 -0
  33. package/scripts/utils/gloria-after-post-render/{append-copy-heading-buttons.js → append-copy-heading-buttons.cjs} +33 -16
  34. package/scripts/utils/{has-own-favicons.js → has-own-favicons.cjs} +6 -0
  35. package/scripts/utils/{inline-svg.js → inline-svg.cjs} +2 -2
  36. package/scripts/utils/{logcrossprojectreference.js → logcrossprojectreference.cjs} +6 -0
  37. package/scripts/utils/{parse-href.js → parse-href.cjs} +1 -1
  38. package/scripts/utils/{parseicontag.js → parseicontag.cjs} +7 -1
  39. package/scripts/utils/{parselinks.js → parselinks.cjs} +14 -6
  40. package/scripts/utils/pug-renderer/{create-prerender-pug-template.js → create-prerender-pug-template.cjs} +3 -3
  41. package/scripts/utils/pug-renderer/{render-pug-component.js → render-pug-component.cjs} +4 -4
  42. package/scripts/utils/pug-to-xml-binding/parser/{xml-components-parser.js → xml-components-parser.cjs} +2 -2
  43. package/scripts/utils/pug-to-xml-binding/{render-xml-pug-components-in-markdown.js → render-xml-pug-components-in-markdown.cjs} +3 -3
  44. package/scripts/utils/pug-to-xml-binding/{transform-xml-tree-to-pug.js → transform-xml-tree-to-pug.cjs} +1 -1
  45. package/scripts/utils/{spritesheet-svg.js → spritesheet-svg.cjs} +2 -2
  46. package/scripts/utils/{transform-markdown-admonitions.js → transform-markdown-admonitions.cjs} +1 -1
  47. package/src/api-builder/api-builder.js +84 -33
  48. package/src/api-builder/build-page-worker.js +9 -9
  49. package/src/api-builder/classes/description-parser.js +12 -14
  50. package/src/api-builder/classes/doc-data-factory.js +3 -5
  51. package/src/api-builder/classes/file-name-manager.js +2 -4
  52. package/src/api-builder/classes/html-file.js +2 -4
  53. package/src/api-builder/classes/navigation-tree.js +7 -9
  54. package/src/api-builder/classes/tree-node.js +1 -3
  55. package/src/api-builder/utils/findtargetdoclet.js +1 -3
  56. package/src/api-builder/utils/utils.js +19 -26
  57. package/src/data-converter/converters/jsdoc2umberto.js +2 -4
  58. package/src/data-converter/converters/jsduck2umberto.js +5 -7
  59. package/src/data-converter/converters/typedoc/abstractparser.js +3 -5
  60. package/src/data-converter/converters/typedoc/accessorparser.js +3 -5
  61. package/src/data-converter/converters/typedoc/classparser.js +3 -5
  62. package/src/data-converter/converters/typedoc/computedpropertyparser.js +3 -5
  63. package/src/data-converter/converters/typedoc/constantparser.js +3 -5
  64. package/src/data-converter/converters/typedoc/constructorparser.js +3 -5
  65. package/src/data-converter/converters/typedoc/errorparser.js +2 -4
  66. package/src/data-converter/converters/typedoc/eventparser.js +2 -4
  67. package/src/data-converter/converters/typedoc/functionparser.js +3 -5
  68. package/src/data-converter/converters/typedoc/interfaceparser.js +3 -5
  69. package/src/data-converter/converters/typedoc/methodparser.js +3 -5
  70. package/src/data-converter/converters/typedoc/moduleparser.js +3 -5
  71. package/src/data-converter/converters/typedoc/propertyparser.js +3 -5
  72. package/src/data-converter/converters/typedoc/referenceparser.js +3 -5
  73. package/src/data-converter/converters/typedoc/reflectionkind.js +24 -26
  74. package/src/data-converter/converters/typedoc/typedocconverter.js +3 -7
  75. package/src/data-converter/converters/typedoc/typeparser.js +3 -5
  76. package/src/data-converter/converters/typedoc2umberto.js +17 -19
  77. package/src/data-converter/data-collection.js +2 -5
  78. package/src/data-converter/data-provider.js +6 -8
  79. package/src/data-converter/doclet-collection.js +1 -4
  80. package/src/data-converter/middlewares/relation-fixer.js +3 -5
  81. package/src/helpers/capitalize.js +1 -3
  82. package/src/helpers/create-filtering-data-attribs.js +1 -3
  83. package/src/helpers/doc-formats.js +1 -3
  84. package/src/helpers/escape-longname.js +1 -3
  85. package/src/helpers/extract-longname.js +1 -3
  86. package/src/helpers/get-api-infobox-tooltip.js +3 -5
  87. package/src/helpers/get-docsearch-config.js +8 -6
  88. package/src/helpers/get-file-patterns-to-process.js +1 -3
  89. package/src/helpers/get-short-module-path.js +2 -4
  90. package/src/helpers/github-url.js +96 -103
  91. package/src/helpers/glob-to-regexp.js +3 -5
  92. package/src/helpers/html-safe.js +1 -3
  93. package/src/helpers/import-module.js +3 -5
  94. package/src/helpers/is-non-empty-array.js +1 -3
  95. package/src/helpers/log-with-time.js +2 -4
  96. package/src/helpers/resolve-path.js +5 -3
  97. package/src/helpers/snippets.js +50 -56
  98. package/src/helpers/split-longname.js +2 -4
  99. package/src/helpers/umberto-version.js +10 -0
  100. package/src/hexo/filter/extend-config.js +1 -3
  101. package/src/hexo/filter/project-locals.js +80 -8
  102. package/src/hexo/get-repo-urls.js +5 -6
  103. package/src/hexo/helper/get-page-group.js +1 -3
  104. package/src/hexo/project-globals.js +4 -6
  105. package/src/hexo-manager.js +12 -13
  106. package/src/index.js +28 -32
  107. package/src/sdk-builder/get-sdk-sources.js +11 -13
  108. package/src/sdk-builder/sdk-builder.js +11 -11
  109. package/src/tasks/build-api-docs.js +7 -9
  110. package/src/tasks/build-documentation.js +47 -36
  111. package/src/tasks/build-sdk.js +5 -5
  112. package/src/tasks/build-snippets.js +3 -5
  113. package/src/tasks/cache-files.js +4 -6
  114. package/src/tasks/compile-sass.js +8 -9
  115. package/src/tasks/copy-assets.js +3 -5
  116. package/src/tasks/copy-files.js +5 -7
  117. package/src/tasks/copy-project-docs.js +5 -7
  118. package/src/tasks/copy-project-icons.js +5 -7
  119. package/src/tasks/create-redirect-page.js +3 -5
  120. package/src/tasks/create-sitemap-index.js +3 -3
  121. package/src/tasks/create-sitemap-step.js +4 -4
  122. package/src/tasks/create-sitemap.js +6 -8
  123. package/src/tasks/create-sym-links.js +5 -7
  124. package/src/tasks/execute-hooks.js +3 -5
  125. package/src/tasks/get-extra-files.js +3 -5
  126. package/src/tasks/get-hexo-config.js +4 -4
  127. package/src/tasks/get-main-config.js +3 -5
  128. package/src/tasks/get-project-config.js +11 -8
  129. package/src/tasks/macro-replacer.js +1 -3
  130. package/src/tasks/minify-html-worker.js +5 -5
  131. package/src/tasks/minify-html.js +8 -10
  132. package/src/tasks/overwrite-api-guides.js +4 -6
  133. package/src/tasks/read-doc-sources.js +5 -7
  134. package/src/tasks/run-webpack.js +8 -6
  135. package/src/tasks/validate-links-collect-worker.js +6 -6
  136. package/src/tasks/validate-links-worker.js +6 -6
  137. package/src/tasks/validate-links.js +9 -11
  138. package/src/tasks/watcher.js +5 -7
  139. package/src/tasks/write-html-files.js +3 -5
  140. package/src/template/template-collection.js +13 -15
  141. package/themes/umberto/layout/gloria/_api-docs/_mixin/_api-tree-item.pug +18 -1
  142. package/themes/umberto/layout/gloria/_head/head.pug +5 -0
  143. package/themes/umberto/layout/umberto/_partial/head.pug +5 -0
  144. package/themes/umberto/src/gloria/css/components/_api-tree.scss +4 -0
  145. package/themes/umberto/src/gloria/js/app.js +32 -32
  146. package/themes/umberto/src/gloria/js/components/api-nav-tree.js +5 -5
  147. package/themes/umberto/src/gloria/js/components/api-toggle.js +2 -2
  148. package/themes/umberto/src/gloria/js/components/breadcrumbs.js +1 -1
  149. package/themes/umberto/src/gloria/js/components/code-block.js +5 -5
  150. package/themes/umberto/src/gloria/js/components/code-switcher.js +2 -2
  151. package/themes/umberto/src/gloria/js/components/dropdown.js +5 -5
  152. package/themes/umberto/src/gloria/js/components/expandable.js +1 -1
  153. package/themes/umberto/src/gloria/js/components/fake-devtools.js +4 -4
  154. package/themes/umberto/src/gloria/js/components/hash-link.js +2 -2
  155. package/themes/umberto/src/gloria/js/components/heading-link.js +2 -2
  156. package/themes/umberto/src/gloria/js/components/iframe.js +2 -2
  157. package/themes/umberto/src/gloria/js/components/mobile-overlay.js +5 -5
  158. package/themes/umberto/src/gloria/js/components/nav-tree.js +3 -3
  159. package/themes/umberto/src/gloria/js/components/tabs.js +2 -2
  160. package/themes/umberto/src/gloria/js/components/tooltip-popover.js +13 -13
  161. package/themes/umberto/src/gloria/js/helpers/animate-element.js +2 -2
  162. package/themes/umberto/src/gloria/js/helpers/create-anchor-positioning-watcher.js +1 -1
  163. package/themes/umberto/src/gloria/js/helpers/create-keyboard-focus-cycler.js +3 -3
  164. package/themes/umberto/src/gloria/js/helpers/focus-first-interactive.js +2 -2
  165. package/themes/umberto/src/gloria/js/helpers/highlight-code.js +1 -1
  166. package/themes/umberto/src/gloria/js/helpers/scroll-to-hash.js +1 -1
  167. package/themes/umberto/src/gloria/js/helpers/tween.js +2 -2
  168. package/themes/umberto/src/gloria/js/modules/algolia-search.js +4 -4
  169. package/themes/umberto/src/gloria/js/modules/api-filter.js +1 -1
  170. package/themes/umberto/src/gloria/js/modules/header-bar.js +4 -4
  171. package/themes/umberto/src/gloria/js/modules/header.js +2 -2
  172. package/themes/umberto/src/gloria/js/modules/links-prefetch.js +1 -1
  173. package/themes/umberto/src/gloria/js/modules/mobile-nav.js +7 -7
  174. package/themes/umberto/src/gloria/js/modules/sidebar.js +3 -3
  175. package/themes/umberto/src/gloria/js/modules/table-of-contents-api.js +9 -9
  176. package/themes/umberto/src/gloria/js/modules/table-of-contents.js +10 -10
  177. package/themes/umberto/src/gloria/js/public-api.js +15 -15
  178. package/themes/umberto/src/gloria/js/web-components/svg-icon.js +3 -3
  179. package/themes/umberto/src/umberto/js/_apitree.js +1 -1
  180. package/themes/umberto/src/umberto/js/_attachpermalinklistener.js +1 -1
  181. package/themes/umberto/src/umberto/js/_copymobileapinavigation.js +1 -1
  182. package/themes/umberto/src/umberto/js/_imageModal.js +1 -1
  183. package/themes/umberto/src/umberto/js/_pagenavigation.js +1 -1
  184. package/themes/umberto/src/umberto/js/_prism.js +1 -1
  185. package/themes/umberto/src/umberto/js/_samplecode.js +1 -1
  186. package/themes/umberto/src/umberto/js/_sidenavigation.js +1 -1
  187. package/themes/umberto/src/umberto/js/_toc.js +1 -1
  188. package/themes/umberto/src/umberto/js/_warningbanner.js +1 -1
  189. package/themes/umberto/src/umberto/js/app.js +19 -19
  190. package/src/tasks/validate-html-w3c.js +0 -35
  191. /package/scripts/filter/after-post-render/{basepath-replacer.js → basepath-replacer.cjs} +0 -0
  192. /package/scripts/filter/after-post-render/{fix-code-samples.js → fix-code-samples.cjs} +0 -0
  193. /package/scripts/filter/after-post-render/{gather-guides.js → gather-guides.cjs} +0 -0
  194. /package/scripts/filter/after-post-render/{img-linker.js → img-linker.cjs} +0 -0
  195. /package/scripts/filter/after-post-render/{import-guide.js → import-guide.cjs} +0 -0
  196. /package/scripts/filter/after-post-render/{process-variables.js → process-variables.cjs} +0 -0
  197. /package/scripts/filter/after-post-render/{time-end.js → time-end.cjs} +0 -0
  198. /package/scripts/filter/after-post-render/{time-start.js → time-start.cjs} +0 -0
  199. /package/scripts/filter/after-post-render/{validate-after-render.js → validate-after-render.cjs} +0 -0
  200. /package/scripts/filter/before-post-render/{change-output-path.js → change-output-path.cjs} +0 -0
  201. /package/scripts/filter/before-post-render/{set-layout.js → set-layout.cjs} +0 -0
  202. /package/scripts/filter/before-post-render/{validate-page-data.js → validate-page-data.cjs} +0 -0
  203. /package/scripts/helper/{get-pages-for-nav-tree.js → get-pages-for-nav-tree.cjs} +0 -0
  204. /package/scripts/helper/{mark-empty-categories.js → mark-empty-categories.cjs} +0 -0
  205. /package/scripts/helper/{u-extract-and-cache-title.js → u-extract-and-cache-title.cjs} +0 -0
  206. /package/scripts/helper/{u-split-to-title-and-content.js → u-split-to-title-and-content.cjs} +0 -0
  207. /package/scripts/utils/{add-indention.js → add-indention.cjs} +0 -0
  208. /package/scripts/utils/{capitalize.js → capitalize.cjs} +0 -0
  209. /package/scripts/utils/{compose.js → compose.cjs} +0 -0
  210. /package/scripts/utils/{decode-html-entities.js → decode-html-entities.cjs} +0 -0
  211. /package/scripts/utils/{drop-init-slash.js → drop-init-slash.cjs} +0 -0
  212. /package/scripts/utils/{drop-trailing-slash.js → drop-trailing-slash.cjs} +0 -0
  213. /package/scripts/utils/{drop-url-protocol.js → drop-url-protocol.cjs} +0 -0
  214. /package/scripts/utils/{findmaincategorypage.js → findmaincategorypage.cjs} +0 -0
  215. /package/scripts/utils/{getreportissuewidgeturl.js → getreportissuewidgeturl.cjs} +0 -0
  216. /package/scripts/utils/gloria-after-post-render/{apply-design-doc-classes.js → apply-design-doc-classes.cjs} +0 -0
  217. /package/scripts/utils/gloria-after-post-render/{wrap-table-into-wrappers.js → wrap-table-into-wrappers.cjs} +0 -0
  218. /package/scripts/utils/{insertchangelog.js → insertchangelog.cjs} +0 -0
  219. /package/scripts/utils/{measure-call.js → measure-call.cjs} +0 -0
  220. /package/scripts/utils/{normalizebadges.js → normalizebadges.cjs} +0 -0
  221. /package/scripts/utils/{parser-cursor.js → parser-cursor.cjs} +0 -0
  222. /package/scripts/utils/pug-to-xml-binding/parser/{walk-xml-tree.js → walk-xml-tree.cjs} +0 -0
  223. /package/scripts/utils/{random-id.js → random-id.cjs} +0 -0
  224. /package/scripts/utils/{remove-indentation.js → remove-indentation.cjs} +0 -0
  225. /package/scripts/utils/{shoulddisplaynewindicator.js → shoulddisplaynewindicator.cjs} +0 -0
  226. /package/scripts/utils/{toc.js → toc.cjs} +0 -0
  227. /package/scripts/utils/{transformcodeswitcher.js → transformcodeswitcher.cjs} +0 -0
  228. /package/scripts/utils/{transforminfobox.js → transforminfobox.cjs} +0 -0
  229. /package/scripts/utils/{uniq-by-last.js → uniq-by-last.cjs} +0 -0
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { scrollToHash } from '../helpers/scroll-to-hash';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { scrollToHash } from '../helpers/scroll-to-hash.js';
8
8
 
9
9
  /**
10
10
  * HashLink component.
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { copyToClipboard } from '../helpers/copy-to-clipboard';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { copyToClipboard } from '../helpers/copy-to-clipboard.js';
8
8
 
9
9
  /**
10
10
  * HeadingLink component.
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { html } from '../helpers/html-builder';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { html } from '../helpers/html-builder.js';
8
8
 
9
9
  /**
10
10
  * IFrame component.
@@ -3,11 +3,11 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { animateElement } from '../helpers/animate-element';
8
- import { bodyScroll } from '../helpers/body-scroll';
9
- import { onEscapeKeyPress } from '../helpers/escape-handler';
10
- import { createHeaderSpacerManager } from '../modules/header';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { animateElement } from '../helpers/animate-element.js';
8
+ import { bodyScroll } from '../helpers/body-scroll.js';
9
+ import { onEscapeKeyPress } from '../helpers/escape-handler.js';
10
+ import { createHeaderSpacerManager } from '../modules/header.js';
11
11
 
12
12
  /**
13
13
  * Events used to broadcast information to the children components of the overlay.
@@ -3,9 +3,9 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { toggleHeight } from '../helpers/toggle-height';
8
- import { getParentsUntil } from '../helpers/get-parents-until';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { toggleHeight } from '../helpers/toggle-height.js';
8
+ import { getParentsUntil } from '../helpers/get-parents-until.js';
9
9
 
10
10
  const SIDEBAR_LOCAL_STORAGE_KEY = 'foldersState';
11
11
 
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { createKeyboardFocusCycler, getHorizontalKeysMap } from '../helpers/create-keyboard-focus-cycler';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { createKeyboardFocusCycler, getHorizontalKeysMap } from '../helpers/create-keyboard-focus-cycler.js';
8
8
 
9
9
  /**
10
10
  * Component for managing tabbed interfaces.
@@ -3,19 +3,19 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from './base-component';
7
- import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher';
8
- import { createHoverManager } from '../helpers/create-hover-manager';
9
- import { isMobile } from '../helpers/is-mobile';
10
- import { html } from '../helpers/html-builder';
11
- import { cx } from '../helpers/classnames';
12
- import { randomId } from '../helpers/random-id';
13
- import { createAnchorPositioningWatcher } from '../helpers/create-anchor-positioning-watcher';
14
- import { createMutationObserver } from '../helpers/create-mutation-observer';
15
- import { createCleanupRegistry } from '../helpers/create-cleanup-registry';
16
- import { isElementDetached } from '../helpers/is-element-detached';
17
- import { afterDomReady } from '../helpers/after-dom-ready';
18
- import { timeout } from '../helpers/timeout';
6
+ import { BaseComponent } from './base-component.js';
7
+ import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher.js';
8
+ import { createHoverManager } from '../helpers/create-hover-manager.js';
9
+ import { isMobile } from '../helpers/is-mobile.js';
10
+ import { html } from '../helpers/html-builder.js';
11
+ import { cx } from '../helpers/classnames.js';
12
+ import { randomId } from '../helpers/random-id.js';
13
+ import { createAnchorPositioningWatcher } from '../helpers/create-anchor-positioning-watcher.js';
14
+ import { createMutationObserver } from '../helpers/create-mutation-observer.js';
15
+ import { createCleanupRegistry } from '../helpers/create-cleanup-registry.js';
16
+ import { isElementDetached } from '../helpers/is-element-detached.js';
17
+ import { afterDomReady } from '../helpers/after-dom-ready.js';
18
+ import { timeout } from '../helpers/timeout.js';
19
19
 
20
20
  /**
21
21
  * Tooltip component.
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { prefersReducedMotion } from './prefers-reduced-motion';
7
- import { timeout } from './timeout';
6
+ import { prefersReducedMotion } from './prefers-reduced-motion.js';
7
+ import { timeout } from './timeout.js';
8
8
 
9
9
  /**
10
10
  * Animates an element by adding and removing animation state classes.
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { getAllScrollableParents } from './get-all-scrollable-parents';
6
+ import { getAllScrollableParents } from './get-all-scrollable-parents.js';
7
7
 
8
8
  /**
9
9
  * Sets up positioning event listeners for an element.
@@ -3,9 +3,9 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { clamp } from './clamp';
7
- import { isFocusable } from './is-focusable';
8
- import { wrapAround } from './wrap-around';
6
+ import { clamp } from './clamp.js';
7
+ import { isFocusable } from './is-focusable.js';
8
+ import { wrapAround } from './wrap-around.js';
9
9
 
10
10
  /**
11
11
  * Creates a keyboard-based focus cycler for a list of elements.
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { isFocusable } from './is-focusable';
7
- import { timeout } from './timeout';
6
+ import { isFocusable } from './is-focusable.js';
7
+ import { timeout } from './timeout.js';
8
8
 
9
9
  /**
10
10
  * Focuses the first interactive/focusable element within a container.
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  import { codeToHtml } from 'shiki';
7
- import { dropDiffSuffix, isDiffLanguage } from './find-code-lang';
7
+ import { dropDiffSuffix, isDiffLanguage } from './find-code-lang.js';
8
8
 
9
9
  export async function highlightCode( codeString, lang ) {
10
10
  const transformers = [];
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { prefersReducedMotion } from './prefers-reduced-motion';
6
+ import { prefersReducedMotion } from './prefers-reduced-motion.js';
7
7
 
8
8
  export function scrollToHash( target, { margin = 32, pushState = true } = {} ) {
9
9
  const targetId = (
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { clamp } from './clamp';
7
- import { prefersReducedMotion } from './prefers-reduced-motion';
6
+ import { clamp } from './clamp.js';
7
+ import { prefersReducedMotion } from './prefers-reduced-motion.js';
8
8
 
9
9
  /**
10
10
  * Creates a tween animation that runs from 0 to 1 over a specified duration.
@@ -3,10 +3,10 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { identity } from '../helpers/identity';
8
- import { injectScript } from '../helpers/inject-script';
9
- import { compose } from '../helpers/compose';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { identity } from '../helpers/identity.js';
8
+ import { injectScript } from '../helpers/inject-script.js';
9
+ import { compose } from '../helpers/compose.js';
10
10
 
11
11
  const DOCSEARCH_JS_URL = 'https://cdn.jsdelivr.net/npm/@docsearch/js@3.9.0/dist/umd/index.min.js';
12
12
 
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
6
+ import { BaseComponent } from '../components/base-component.js';
7
7
 
8
8
  const API_FILTER_LOCAL_STORAGE_KEY = 'ApiFilterState';
9
9
 
@@ -3,10 +3,10 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { localStorageHelper } from '../helpers/local-storage-helper';
8
- import { isUnsafeProperty } from '../helpers/is-unsafe-key';
9
- import { Weeks } from '../helpers/date-time';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { localStorageHelper } from '../helpers/local-storage-helper.js';
8
+ import { isUnsafeProperty } from '../helpers/is-unsafe-key.js';
9
+ import { Weeks } from '../helpers/date-time.js';
10
10
 
11
11
  /**
12
12
  * Remember about renaming inline script in the header bar template.
@@ -3,8 +3,8 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { onHeaderBarStateChange } from './header-bar';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { onHeaderBarStateChange } from './header-bar.js';
8
8
 
9
9
  /**
10
10
  * Component for managing a header.
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { throttle } from '../helpers/throttle';
6
+ import { throttle } from '../helpers/throttle.js';
7
7
 
8
8
  /**
9
9
  * Maximum number of preloaded elements to keep in the DOM
@@ -3,13 +3,13 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { tween } from '../helpers/tween';
8
- import { lerp } from '../helpers/lerp';
9
- import { timeout } from '../helpers/timeout';
10
- import { focusFirstInteractive } from '../helpers/focus-first-interactive';
11
- import { easings } from '../helpers/cubic-bezier';
12
- import { onMobileOverlayStateChange } from '../components/mobile-overlay';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { tween } from '../helpers/tween.js';
8
+ import { lerp } from '../helpers/lerp.js';
9
+ import { timeout } from '../helpers/timeout.js';
10
+ import { focusFirstInteractive } from '../helpers/focus-first-interactive.js';
11
+ import { easings } from '../helpers/cubic-bezier.js';
12
+ import { onMobileOverlayStateChange } from '../components/mobile-overlay.js';
13
13
 
14
14
  /**
15
15
  * Mobile Navigation component.
@@ -3,9 +3,9 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { onHeaderResize } from './header';
8
- import { isHiddenElement } from '../helpers/is-hidden-element';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { onHeaderResize } from './header.js';
8
+ import { isHiddenElement } from '../helpers/is-hidden-element.js';
9
9
 
10
10
  export class Sidebar extends BaseComponent {
11
11
  /**
@@ -3,15 +3,15 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher';
8
- import { isHiddenElement } from '../helpers/is-hidden-element';
9
- import { onHeaderResize, createHeaderSpacerManager } from './header';
10
- import { onEscapeKeyPress } from '../helpers/escape-handler';
11
- import { isMobile } from '../helpers/is-mobile';
12
- import { bodyScroll } from '../helpers/body-scroll';
13
- import { toggleHeight } from '../helpers/toggle-height';
14
- import { animateElement } from '../helpers/animate-element';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher.js';
8
+ import { isHiddenElement } from '../helpers/is-hidden-element.js';
9
+ import { onHeaderResize, createHeaderSpacerManager } from './header.js';
10
+ import { onEscapeKeyPress } from '../helpers/escape-handler.js';
11
+ import { isMobile } from '../helpers/is-mobile.js';
12
+ import { bodyScroll } from '../helpers/body-scroll.js';
13
+ import { toggleHeight } from '../helpers/toggle-height.js';
14
+ import { animateElement } from '../helpers/animate-element.js';
15
15
 
16
16
  /**
17
17
  * API Table of Contents component.
@@ -3,16 +3,16 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { BaseComponent } from '../components/base-component';
7
- import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher';
8
- import { onEscapeKeyPress } from '../helpers/escape-handler';
9
- import { bodyScroll } from '../helpers/body-scroll';
10
- import { throttle } from '../helpers/throttle';
11
- import { isHiddenElement } from '../helpers/is-hidden-element';
12
- import { onHeaderResize, createHeaderSpacerManager, Header } from './header';
13
- import { animateElement } from '../helpers/animate-element';
14
- import { isMobile } from '../helpers/is-mobile';
15
- import { prefersReducedMotion } from '../helpers/prefers-reduced-motion';
6
+ import { BaseComponent } from '../components/base-component.js';
7
+ import { createOutsideClickWatcher } from '../helpers/create-outside-click-watcher.js';
8
+ import { onEscapeKeyPress } from '../helpers/escape-handler.js';
9
+ import { bodyScroll } from '../helpers/body-scroll.js';
10
+ import { throttle } from '../helpers/throttle.js';
11
+ import { isHiddenElement } from '../helpers/is-hidden-element.js';
12
+ import { onHeaderResize, createHeaderSpacerManager, Header } from './header.js';
13
+ import { animateElement } from '../helpers/animate-element.js';
14
+ import { isMobile } from '../helpers/is-mobile.js';
15
+ import { prefersReducedMotion } from '../helpers/prefers-reduced-motion.js';
16
16
 
17
17
  /**
18
18
  * Table of Contents component.
@@ -3,21 +3,21 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { activateTab, onTabActivation } from './components/tabs';
7
- import { createTooltipPopover } from './components/tooltip-popover';
8
- import { Header, onHeaderResize } from './modules/header';
9
- import { onHeaderBarStateChange } from './modules/header-bar';
10
- import { highlightCode } from './helpers/highlight-code';
11
- import { afterDomReady } from './helpers/after-dom-ready';
12
- import { throttle } from './helpers/throttle';
13
- import { fetchStylesheet } from './helpers/fetch-stylesheet';
14
- import { randomId } from './helpers/random-id';
15
- import { scrollToHash } from './helpers/scroll-to-hash';
16
- import { formatHtml } from './helpers/format-html';
17
- import { injectScript, injectScriptsInParallel } from './helpers/inject-script';
18
- import { injectStylesheet } from './helpers/inject-stylesheet';
19
- import { injectResourcePreload } from './helpers/inject-resource-preload';
20
- import { onDropdownSelection, selectDropdownItem } from './components/dropdown';
6
+ import { activateTab, onTabActivation } from './components/tabs.js';
7
+ import { createTooltipPopover } from './components/tooltip-popover.js';
8
+ import { Header, onHeaderResize } from './modules/header.js';
9
+ import { onHeaderBarStateChange } from './modules/header-bar.js';
10
+ import { highlightCode } from './helpers/highlight-code.js';
11
+ import { afterDomReady } from './helpers/after-dom-ready.js';
12
+ import { throttle } from './helpers/throttle.js';
13
+ import { fetchStylesheet } from './helpers/fetch-stylesheet.js';
14
+ import { randomId } from './helpers/random-id.js';
15
+ import { scrollToHash } from './helpers/scroll-to-hash.js';
16
+ import { formatHtml } from './helpers/format-html.js';
17
+ import { injectScript, injectScriptsInParallel } from './helpers/inject-script.js';
18
+ import { injectStylesheet } from './helpers/inject-stylesheet.js';
19
+ import { injectResourcePreload } from './helpers/inject-resource-preload.js';
20
+ import { onDropdownSelection, selectDropdownItem } from './components/dropdown.js';
21
21
 
22
22
  window.umberto = {
23
23
  // The `VERSION` value will be replaced by the `DefinePlugin` webpack plugin.
@@ -3,9 +3,9 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import { html } from '../helpers/html-builder';
7
- import { cx } from '../helpers/classnames';
8
- import { randomId } from '../helpers/random-id';
6
+ import { html } from '../helpers/html-builder.js';
7
+ import { cx } from '../helpers/classnames.js';
8
+ import { randomId } from '../helpers/random-id.js';
9
9
 
10
10
  /**
11
11
  * A web component that renders an SVG icon. This is equivalent to the `svg-icon` Pug mixin.
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  import $ from 'jquery';
7
- import throttle from 'lodash/throttle';
7
+ import throttle from 'lodash/throttle.js';
8
8
 
9
9
  /**
10
10
  * Expands corresponding API tree item on navigation tree when viewing a page.
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- export default function attachPermalinkListener() {
6
+ export function attachPermalinkListener() {
7
7
  const projectVersionElement = document.querySelector( 'meta[name=project-version]' );
8
8
  const projectSlugElement = document.querySelector( 'meta[name=project-slug]' );
9
9
 
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- export default function copyMobileApiNavigation() {
6
+ export function copyMobileApiNavigation() {
7
7
  // First check if it is API page.
8
8
  const apiTree = document.querySelector( '.side-navigation__inner--api' );
9
9
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  import mediumZoom from 'medium-zoom';
7
7
 
8
- export default function imageModal() {
8
+ export function imageModal() {
9
9
  const lightboxImages = document.querySelectorAll( '[data-lightbox]' );
10
10
 
11
11
  if ( !lightboxImages ) {
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- export default function pageNavigation() {
6
+ export function pageNavigation() {
7
7
  const CLASS_NAMES = {
8
8
  huge: 'api-subheader__navigation-dropdown--huge',
9
9
  big: 'api-subheader__navigation-dropdown--big',
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- import './vendor/prism';
6
+ import './vendor/prism.js';
7
7
 
8
8
  export function setupPrism() {
9
9
  const locationHref = window.location.href;
@@ -5,7 +5,7 @@
5
5
 
6
6
  import $ from 'jquery';
7
7
 
8
- export default function sampleCode() {
8
+ export function sampleCode() {
9
9
  const headerHeight = document.querySelector( 'header.top' ).offsetHeight;
10
10
 
11
11
  // Accordion toggling button.
@@ -3,7 +3,7 @@
3
3
  * For licensing, see LICENSE.md.
4
4
  */
5
5
 
6
- export default function sideNavigation() {
6
+ export function sideNavigation() {
7
7
  const folderButtons = Array.from( document.querySelectorAll( '.tree:not(.api-tree) .tree__item--folder' ) );
8
8
  const guideTreeElement = document.getElementById( 'guidetree' );
9
9
  const foldedClassName = 'tree__item-nested-list--hidden';
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  import $ from 'jquery';
7
- import throttle from 'lodash/throttle';
7
+ import throttle from 'lodash/throttle.js';
8
8
 
9
9
  export function trackArticlePosition() {
10
10
  let headingsData = [];
@@ -10,7 +10,7 @@ import $ from 'jquery';
10
10
  *
11
11
  * @param {String} message
12
12
  */
13
- export default function showWarningBanner( message ) {
13
+ export function showWarningBanner( message ) {
14
14
  const warningElement = $( '<div class="warning-banner"></div>' );
15
15
 
16
16
  warningElement.append( `<span>⚠️ Warning</span><span>${ message }</span>` );
@@ -4,25 +4,25 @@
4
4
  */
5
5
 
6
6
  import $ from 'jquery';
7
- import { setupPrism } from './_prism';
8
- import { enableCollapsables, hideTogglers } from './_collapsables';
9
- import { enableAnchors } from './_anchors';
10
- import { enableDropdowns } from './_dropdowns';
11
- import { enableFiltering } from './_filtering';
12
- import { trackArticlePosition } from './_toc';
13
- import { expandApiTree, scrollApiTree } from './_apitree';
14
- import { setUpFuse } from './_apisearch';
15
- import pageNavigation from './_pagenavigation';
16
- import { activateDevNames } from './_devnames';
17
- import sideNavigation from './_sidenavigation';
18
- import sampleCode from './_samplecode';
19
- import copyMobileApiNavigation from './_copymobileapinavigation';
20
- import { rwdButton } from './_rwdmenu';
21
- import imageModal from './_imageModal';
22
- import showWarningBanner from './_warningbanner';
23
- import { enableBadgeTooltips, createTooltip } from './_tooltips';
24
- import attachPermalinkListener from './_attachpermalinklistener';
25
- import { createCodeSwitcherButtons } from './_codeswitcherbuttons';
7
+ import { setupPrism } from './_prism.js';
8
+ import { enableCollapsables, hideTogglers } from './_collapsables.js';
9
+ import { enableAnchors } from './_anchors.js';
10
+ import { enableDropdowns } from './_dropdowns.js';
11
+ import { enableFiltering } from './_filtering.js';
12
+ import { trackArticlePosition } from './_toc.js';
13
+ import { expandApiTree, scrollApiTree } from './_apitree.js';
14
+ import { setUpFuse } from './_apisearch.js';
15
+ import { pageNavigation } from './_pagenavigation.js';
16
+ import { activateDevNames } from './_devnames.js';
17
+ import { sideNavigation } from './_sidenavigation.js';
18
+ import { sampleCode } from './_samplecode.js';
19
+ import { copyMobileApiNavigation } from './_copymobileapinavigation.js';
20
+ import { rwdButton } from './_rwdmenu.js';
21
+ import { imageModal } from './_imageModal.js';
22
+ import { showWarningBanner } from './_warningbanner.js';
23
+ import { enableBadgeTooltips, createTooltip } from './_tooltips.js';
24
+ import { attachPermalinkListener } from './_attachpermalinklistener.js';
25
+ import { createCodeSwitcherButtons } from './_codeswitcherbuttons.js';
26
26
 
27
27
  // Changing documentation theme. To enable, type in the console: `localStorage.setItem( 'theme', 'theme-dark' )`.
28
28
  if ( localStorage.getItem( 'theme' ) === 'theme-dark' ) {
@@ -1,35 +0,0 @@
1
- /**
2
- * @license Copyright (c) 2017-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md.
4
- */
5
-
6
- const { spawn } = require( 'node:child_process' );
7
- const vnu = require( 'vnu-jar' );
8
-
9
- module.exports = ( buildPath, { verbose } = {} ) => new Promise( ( resolve, reject ) => {
10
- const args = [ '-jar', vnu, '--skip-non-html', '--also-check-css', '--exit-zero-always', '--format', 'text' ];
11
- if ( !verbose ) {
12
- args.push( '--errors-only' );
13
- }
14
- args.push( buildPath );
15
- const proc = spawn( 'java', args );
16
-
17
- proc.stderr.on( 'data', data => {
18
- process.stdout.write( data );
19
- } );
20
-
21
- proc.stdout.on( 'data', data => {
22
- process.stdout.write( data );
23
- } );
24
-
25
- proc.on( 'close', code => {
26
- if ( code !== 0 ) {
27
- console.log( `Process exit with code: ${ code }` );
28
- reject( code );
29
- }
30
- else {
31
- resolve();
32
- }
33
- } );
34
- } );
35
-