umberto 6.0.0 → 6.1.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.
- package/CHANGELOG.md +9 -0
- package/README.md +3 -0
- package/package.json +1 -1
- package/scripts/filter/before-post-render/set-layout.js +9 -11
- package/src/api-builder/classes/doc-data-factory.js +1 -1
- package/src/data-converter/converters/typedoc/typedocconverter.js +2 -2
- package/src/index.js +108 -146
- package/src/tasks/build-api-docs.js +4 -4
- package/src/tasks/build-documentation.js +9 -3
- package/src/tasks/build-sdk.js +25 -9
- package/src/tasks/copy-assets.js +9 -9
- package/src/tasks/create-sym-links.js +2 -3
- package/themes/umberto/layout/{404.pug → gloria/404.pug} +1 -1
- package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/class.pug +1 -1
- package/themes/umberto/layout/gloria/_api-docs/interface.pug +10 -0
- package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/mixin.pug +1 -1
- package/themes/umberto/layout/gloria/_api-docs/module.pug +10 -0
- package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/namespace.pug +1 -1
- package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/typedef.pug +1 -1
- package/themes/umberto/layout/{_partial → gloria/_partial}/gh-contribute.pug +2 -2
- package/themes/umberto/layout/{_partial → gloria/_partial}/head.pug +2 -2
- package/themes/umberto/layout/{_partial → gloria/_partial}/search-box.pug +1 -1
- package/themes/umberto/layout/{api.pug → gloria/api.pug} +1 -1
- package/themes/umberto/layout/{base.pug → gloria/base.pug} +1 -1
- package/themes/umberto/layout/{sdk.pug → gloria/sdk.pug} +1 -1
- package/themes/umberto/layout/umberto/404.pug +22 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_api-see-source.pug +11 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_api-title.pug +17 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_api-tree-item.pug +30 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_badge.pug +17 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_class-item.pug +29 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_dev-names.pug +9 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_error.pug +23 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_fires-item.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_hierarchy-item.pug +14 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_hierarchy-list.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_link-or-text.pug +43 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_method.pug +89 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_params.pug +44 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_property.pug +51 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_related.pug +8 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_return.pug +14 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_sidebox-list-item.pug +8 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_sidebox-list.pug +8 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/_type.pug +180 -0
- package/themes/umberto/layout/umberto/_api-docs/_mixin/type-parameter.pug +18 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/api-info-box.pug +30 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/api-subheader.pug +22 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/classes.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/config-options.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/constants.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/description.pug +9 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/events.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/filter.pug +40 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/functions.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/interfaces.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/loading-spinner.pug +2 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/methods.pug +19 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/namespaces.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/navtree.pug +13 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/properties.pug +19 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/type-parameters.pug +26 -0
- package/themes/umberto/layout/umberto/_api-docs/_partial/typedefs.pug +7 -0
- package/themes/umberto/layout/umberto/_api-docs/api-base.pug +45 -0
- package/themes/umberto/layout/{_api-docs/interface.pug → umberto/_api-docs/class.pug} +1 -1
- package/themes/umberto/layout/umberto/_api-docs/errors.pug +6 -0
- package/themes/umberto/layout/umberto/_api-docs/interface.pug +10 -0
- package/themes/umberto/layout/{_api-docs/module.pug → umberto/_api-docs/mixin.pug} +1 -1
- package/themes/umberto/layout/umberto/_api-docs/module.pug +10 -0
- package/themes/umberto/layout/umberto/_api-docs/namespace.pug +10 -0
- package/themes/umberto/layout/umberto/_api-docs/typedef.pug +37 -0
- package/themes/umberto/layout/umberto/_mixin/nav-tree-item.pug +13 -0
- package/themes/umberto/layout/umberto/_mixin/nav-tree-level.pug +38 -0
- package/themes/umberto/layout/umberto/_partial/docsearch.pug +21 -0
- package/themes/umberto/layout/umberto/_partial/dropdown.pug +12 -0
- package/themes/umberto/layout/umberto/_partial/feedback-widget.pug +20 -0
- package/themes/umberto/layout/umberto/_partial/footer.pug +6 -0
- package/themes/umberto/layout/umberto/_partial/gh-contribute.pug +8 -0
- package/themes/umberto/layout/umberto/_partial/google-analytics.pug +19 -0
- package/themes/umberto/layout/umberto/_partial/google-tag-manager.pug +18 -0
- package/themes/umberto/layout/umberto/_partial/head.pug +67 -0
- package/themes/umberto/layout/umberto/_partial/header.pug +64 -0
- package/themes/umberto/layout/umberto/_partial/nav-tree.pug +9 -0
- package/themes/umberto/layout/umberto/_partial/report-issue-widget.pug +26 -0
- package/themes/umberto/layout/umberto/_partial/rwd-breadcrumbs.pug +13 -0
- package/themes/umberto/layout/umberto/_partial/search-box.pug +6 -0
- package/themes/umberto/layout/umberto/_partial/vwo.pug +11 -0
- package/themes/umberto/layout/umberto/_sdk/_mixin/_sdk-sample-item.pug +5 -0
- package/themes/umberto/layout/umberto/_sdk/_mixin/_sdk-samples.pug +7 -0
- package/themes/umberto/layout/umberto/_sdk/_mixin/_sdk-tree-item.pug +7 -0
- package/themes/umberto/layout/umberto/_sdk/_mixin/_sdk-tree-level.pug +29 -0
- package/themes/umberto/layout/umberto/_sdk/_partial/navtree.pug +4 -0
- package/themes/umberto/layout/umberto/_sdk/page.pug +23 -0
- package/themes/umberto/layout/umberto/api.pug +27 -0
- package/themes/umberto/layout/umberto/base.pug +42 -0
- package/themes/umberto/layout/umberto/index.pug +17 -0
- package/themes/umberto/layout/umberto/page.pug +28 -0
- package/themes/umberto/layout/umberto/sdk.pug +29 -0
- package/themes/umberto/source/umberto/assets/_img/info-circle.svg +4 -0
- package/themes/umberto/source/umberto/assets/_img/triangle-right.svg +1 -0
- package/themes/umberto/src/umberto/css/_api-content.scss +32 -0
- package/themes/umberto/src/umberto/css/_api-info-box.scss +86 -0
- package/themes/umberto/src/umberto/css/_api-props-filter.scss +106 -0
- package/themes/umberto/src/umberto/css/_api-see-source.scss +35 -0
- package/themes/umberto/src/umberto/css/_api-subheader.scss +167 -0
- package/themes/umberto/src/umberto/css/_api-tree.scss +121 -0
- package/themes/umberto/src/umberto/css/_badge.scss +74 -0
- package/themes/umberto/src/umberto/css/_code-switcher.scss +61 -0
- package/themes/umberto/src/umberto/css/_collapsinglist.scss +262 -0
- package/themes/umberto/src/umberto/css/_content.scss +236 -0
- package/themes/umberto/src/umberto/css/_docsearch.scss +109 -0
- package/themes/umberto/src/umberto/css/_dropdown.scss +63 -0
- package/themes/umberto/src/umberto/css/_editor-icon.scss +26 -0
- package/themes/umberto/src/umberto/css/_feedback-widget.scss +11 -0
- package/themes/umberto/src/umberto/css/_font-external.scss +8 -0
- package/themes/umberto/src/umberto/css/_footer.scss +40 -0
- package/themes/umberto/src/umberto/css/_formatted.scss +285 -0
- package/themes/umberto/src/umberto/css/_guide-content.scss +37 -0
- package/themes/umberto/src/umberto/css/_guide-sdk-tree.scss +14 -0
- package/themes/umberto/src/umberto/css/_loading-spinner.scss +33 -0
- package/themes/umberto/src/umberto/css/_main.scss +59 -0
- package/themes/umberto/src/umberto/css/_navigation.scss +35 -0
- package/themes/umberto/src/umberto/css/_notice.scss +116 -0
- package/themes/umberto/src/umberto/css/_print.scss +20 -0
- package/themes/umberto/src/umberto/css/_prism.scss +223 -0
- package/themes/umberto/src/umberto/css/_rwd-breadcrumbs.scss +28 -0
- package/themes/umberto/src/umberto/css/_rwd-menu.scss +89 -0
- package/themes/umberto/src/umberto/css/_secondary-navigation.scss +152 -0
- package/themes/umberto/src/umberto/css/_theme-dark.scss +175 -0
- package/themes/umberto/src/umberto/css/_toggler.scss +46 -0
- package/themes/umberto/src/umberto/css/_top.scss +350 -0
- package/themes/umberto/src/umberto/css/_tree.scss +218 -0
- package/themes/umberto/src/umberto/css/_warning-banner.scss +46 -0
- package/themes/umberto/src/umberto/css/components/_lightbox.scss +12 -0
- package/themes/umberto/src/umberto/css/helpers/_color.scss +49 -0
- package/themes/umberto/src/umberto/css/helpers/_font.scss +60 -0
- package/themes/umberto/src/umberto/css/helpers/_globals.scss +129 -0
- package/themes/umberto/src/umberto/css/helpers/_reset.scss +52 -0
- package/themes/umberto/src/umberto/css/helpers/_spacing.scss +21 -0
- package/themes/umberto/src/umberto/css/pages/_sdk.scss +111 -0
- package/themes/umberto/src/umberto/css/styles.scss +117 -0
- package/themes/umberto/src/umberto/js/_anchors.js +57 -0
- package/themes/umberto/src/umberto/js/_apisearch.js +126 -0
- package/themes/umberto/src/umberto/js/_apitree.js +67 -0
- package/themes/umberto/src/umberto/js/_attachpermalinklistener.js +50 -0
- package/themes/umberto/src/umberto/js/_codeswitcherbuttons.js +146 -0
- package/themes/umberto/src/umberto/js/_collapsables.js +135 -0
- package/themes/umberto/src/umberto/js/_copymobileapinavigation.js +26 -0
- package/themes/umberto/src/umberto/js/_devnames.js +37 -0
- package/themes/umberto/src/umberto/js/_dropdowns.js +55 -0
- package/themes/umberto/src/umberto/js/_filtering.js +139 -0
- package/themes/umberto/src/umberto/js/_imageModal.js +16 -0
- package/themes/umberto/src/umberto/js/_pagenavigation.js +93 -0
- package/themes/umberto/src/umberto/js/_prism.js +104 -0
- package/themes/umberto/src/umberto/js/_rwdmenu.js +15 -0
- package/themes/umberto/src/umberto/js/_samplecode.js +23 -0
- package/themes/umberto/src/umberto/js/_sidenavigation.js +59 -0
- package/themes/umberto/src/umberto/js/_toc.js +93 -0
- package/themes/umberto/src/umberto/js/_tooltips.js +39 -0
- package/themes/umberto/src/umberto/js/_warningbanner.js +18 -0
- package/themes/umberto/src/umberto/js/app.js +70 -0
- package/themes/umberto/src/umberto/js/vendor/prism.js +45 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_api-see-source.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_api-title.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_api-tree-item.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_badge.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_class-item.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_dev-names.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_error.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_fires-item.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_hierarchy-item.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_hierarchy-list.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_link-or-text.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_method.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_params.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_property.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_related.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_return.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_sidebox-list-item.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_sidebox-list.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/_type.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_mixin/type-parameter.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/api-info-box.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/api-subheader.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/classes.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/config-options.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/constants.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/description.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/events.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/filter.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/functions.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/interfaces.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/loading-spinner.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/methods.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/namespaces.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/navtree.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/properties.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/type-parameters.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/_partial/typedefs.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/api-base.pug +0 -0
- /package/themes/umberto/layout/{_api-docs → gloria/_api-docs}/errors.pug +0 -0
- /package/themes/umberto/layout/{_mixin → gloria/_mixin}/nav-tree-item.pug +0 -0
- /package/themes/umberto/layout/{_mixin → gloria/_mixin}/nav-tree-level.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/docsearch.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/dropdown.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/feedback-widget.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/footer.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/google-analytics.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/google-tag-manager.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/header.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/nav-tree.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/report-issue-widget.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/rwd-breadcrumbs.pug +0 -0
- /package/themes/umberto/layout/{_partial → gloria/_partial}/vwo.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/_mixin/_sdk-sample-item.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/_mixin/_sdk-samples.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/_mixin/_sdk-tree-item.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/_mixin/_sdk-tree-level.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/_partial/navtree.pug +0 -0
- /package/themes/umberto/layout/{_sdk → gloria/_sdk}/page.pug +0 -0
- /package/themes/umberto/layout/{index.pug → gloria/index.pug} +0 -0
- /package/themes/umberto/layout/{page.pug → gloria/page.pug} +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/arrows.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/book.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/box-brown.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/box-orange.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/box-red.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/bulb.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/clipboard.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/cog.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/data.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/documentation.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/download.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/edit.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/exclamation-circle.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/eye.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/filter.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/filtering.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/folder.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/github.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/header-info-configs.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/header-info-events.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/header-info-methods.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/header-info-properties.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/heart.svg +0 -0
- /package/themes/umberto/source/{assets → gloria/assets}/_img/info-circle.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/info.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/list-nest.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/loupe.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/menu.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/plug.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/star-in-circle.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/tick.svg +0 -0
- /package/themes/{nova/source → umberto/source/gloria}/assets/_img/triangle-down.svg +0 -0
- /package/themes/umberto/source/{assets → gloria/assets}/_img/triangle-right.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/arrows.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/book.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/box-brown.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/box-orange.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/box-red.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/bulb.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/clipboard.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/cog.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/data.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/documentation.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/download.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/edit.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/exclamation-circle.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/eye.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/filter.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/filtering.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/folder.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/github.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/header-info-configs.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/header-info-events.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/header-info-methods.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/header-info-properties.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/heart.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/info.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/list-nest.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/loupe.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/menu.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/plug.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/star-in-circle.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/tick.svg +0 -0
- /package/themes/umberto/source/{assets → umberto/assets}/_img/triangle-down.svg +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-content.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-info-box.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-props-filter.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-see-source.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-subheader.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_api-tree.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_badge.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_code-switcher.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_collapsinglist.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_content.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_docsearch.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_dropdown.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_editor-icon.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_feedback-widget.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_font-external.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_footer.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_formatted.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_guide-content.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_guide-sdk-tree.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_loading-spinner.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_main.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_navigation.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_notice.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_print.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_prism.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_rwd-breadcrumbs.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_rwd-menu.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_secondary-navigation.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_theme-dark.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_toggler.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_top.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_tree.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/_warning-banner.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/components/_lightbox.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/helpers/_color.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/helpers/_font.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/helpers/_globals.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/helpers/_reset.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/helpers/_spacing.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/pages/_sdk.scss +0 -0
- /package/themes/umberto/src/{css → gloria/css}/styles.scss +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_anchors.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_apisearch.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_apitree.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_attachpermalinklistener.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_codeswitcherbuttons.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_collapsables.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_copymobileapinavigation.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_devnames.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_dropdowns.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_filtering.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_imageModal.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_pagenavigation.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_prism.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_rwdmenu.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_samplecode.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_sidenavigation.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_toc.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_tooltips.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/_warningbanner.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/app.js +0 -0
- /package/themes/umberto/src/{js → gloria/js}/vendor/prism.js +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export default function pageNavigation() {
|
|
7
|
+
const CLASS_NAMES = {
|
|
8
|
+
huge: 'api-subheader__navigation-dropdown--huge',
|
|
9
|
+
big: 'api-subheader__navigation-dropdown--big',
|
|
10
|
+
small: 'api-subheader__navigation-dropdown--small',
|
|
11
|
+
empty: 'api-subheader__navigation-dropdown--empty',
|
|
12
|
+
hidden: 'api-subheader__navigation-dropdown--hidden'
|
|
13
|
+
};
|
|
14
|
+
const mainNavigationElements = document.querySelectorAll( '.api-subheader__navigation > ul > li' );
|
|
15
|
+
for ( const element of mainNavigationElements ) {
|
|
16
|
+
const ul = createListFor( element );
|
|
17
|
+
|
|
18
|
+
element.appendChild( ul );
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
if ( !window.umberto ) {
|
|
22
|
+
window.umberto = {};
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
window.umberto.updateDropdowns = function updateDropdowns() {
|
|
26
|
+
for ( const element of mainNavigationElements ) {
|
|
27
|
+
const ul = element.querySelector( 'ul' );
|
|
28
|
+
const visibleItemsLength = ul.querySelectorAll( 'li:not(.api-subheader__navigation-dropdown--hidden)' ).length;
|
|
29
|
+
if ( !visibleItemsLength ) {
|
|
30
|
+
element.classList.add( CLASS_NAMES.hidden );
|
|
31
|
+
} else {
|
|
32
|
+
element.classList.remove( CLASS_NAMES.hidden );
|
|
33
|
+
setClass( ul, dropdownLengthType( visibleItemsLength ) );
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
function createListFor( element ) {
|
|
39
|
+
const links = getLinksFor( element );
|
|
40
|
+
const ul = document.createElement( 'ul' );
|
|
41
|
+
|
|
42
|
+
ul.classList.add( 'api-subheader__navigation-dropdown' );
|
|
43
|
+
ul.classList.add( dropdownLengthType( links.length ) );
|
|
44
|
+
|
|
45
|
+
for ( const link of links ) {
|
|
46
|
+
ul.appendChild( link );
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return ul;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function getLinksFor( element ) {
|
|
53
|
+
const outputList = [];
|
|
54
|
+
const lists = document.querySelectorAll( 'ul[data-type=' + element.dataset.type + ']' );
|
|
55
|
+
for ( const list of lists ) {
|
|
56
|
+
const links = list.querySelectorAll( 'li.collapsing-list__item' );
|
|
57
|
+
for ( const link of links ) {
|
|
58
|
+
const listItem = document.createElement( 'li' );
|
|
59
|
+
const clonedLink = link.querySelector( 'h3 a.member-name' ).cloneNode( true );
|
|
60
|
+
clonedLink.classList.add( 'api-subheader__navigation-link' );
|
|
61
|
+
listItem.appendChild( clonedLink );
|
|
62
|
+
Object.assign( listItem.dataset, link.dataset );
|
|
63
|
+
outputList.push( listItem );
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return outputList;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
function dropdownLengthType( elements ) {
|
|
70
|
+
if ( elements > 60 ) {
|
|
71
|
+
return CLASS_NAMES.huge;
|
|
72
|
+
} else if ( elements > 20 ) {
|
|
73
|
+
return CLASS_NAMES.big;
|
|
74
|
+
} else if ( elements > 0 ) {
|
|
75
|
+
return CLASS_NAMES.small;
|
|
76
|
+
} else {
|
|
77
|
+
return CLASS_NAMES.empty;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
function setClass( element, className ) {
|
|
82
|
+
if ( !element.classList.contains( className ) ) {
|
|
83
|
+
element.classList.add( className );
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
for ( const cls in CLASS_NAMES ) {
|
|
87
|
+
if ( CLASS_NAMES[ cls ] !== className ) {
|
|
88
|
+
element.classList.remove( CLASS_NAMES[ cls ] );
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import './vendor/prism';
|
|
7
|
+
|
|
8
|
+
export function setupPrism() {
|
|
9
|
+
const locationHref = window.location.href;
|
|
10
|
+
const isApiPage = !!locationHref.match( /\/api\// );
|
|
11
|
+
|
|
12
|
+
// For CKEditor 4 snippets (SDK) attach the "Download" button.
|
|
13
|
+
if ( locationHref.match( /\/ckeditor4\// ) && locationHref.match( /\/examples\// ) ) {
|
|
14
|
+
createDownloadButton();
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
Array.from( document.querySelectorAll( 'pre code' ) )
|
|
18
|
+
.filter( element => {
|
|
19
|
+
// Don't highlight code block's inside editor's content. See: #838.
|
|
20
|
+
if ( element.closest( '.ck-content' ) ) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Don't highlight the element if it contains the `no-highlight` class.
|
|
25
|
+
if ( element.classList.contains( 'no-highlight' ) ) {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return true;
|
|
30
|
+
} )
|
|
31
|
+
.forEach( element => {
|
|
32
|
+
const classList = element.classList.values();
|
|
33
|
+
const preElement = element.parentElement;
|
|
34
|
+
|
|
35
|
+
// Don't highlight the element if it has no parent.
|
|
36
|
+
if ( !preElement ) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
for ( const className of classList ) {
|
|
41
|
+
preElement.classList.add( `language-${ className }` );
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Render as `javascript` on API pages and as `plaintext` for others if the language is not specified.
|
|
45
|
+
if ( !preElement.classList.length ) {
|
|
46
|
+
preElement.classList.add( isApiPage ? 'language-javascript' : 'language-plaintext' );
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
element.setAttribute( 'data-prismjs-copy-success', 'Ready!' );
|
|
50
|
+
preElement.classList.add( 'highlight' );
|
|
51
|
+
|
|
52
|
+
window.Prism.highlightElement( element );
|
|
53
|
+
} );
|
|
54
|
+
|
|
55
|
+
// Add the `[title]` attribute to "Copy" button.
|
|
56
|
+
[ ...document.querySelectorAll( '.copy-to-clipboard-button' ) ]
|
|
57
|
+
.forEach( button => {
|
|
58
|
+
button.title = 'Copy the code to the clipboard';
|
|
59
|
+
} );
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Add the "Download" button to the code snippets.
|
|
64
|
+
*/
|
|
65
|
+
function createDownloadButton() {
|
|
66
|
+
window.Prism.plugins.toolbar.registerButton( 'download', env => {
|
|
67
|
+
const button = document.createElement( 'button' );
|
|
68
|
+
const span = document.createElement( 'span' );
|
|
69
|
+
|
|
70
|
+
span.innerHTML = 'Download';
|
|
71
|
+
button.appendChild( span );
|
|
72
|
+
button.classList.add( 'download-snippet-button' );
|
|
73
|
+
button.title = 'Download this snippet';
|
|
74
|
+
|
|
75
|
+
button.addEventListener( 'click', () => {
|
|
76
|
+
download( env.element.textContent, 'index.html', 'text/html' );
|
|
77
|
+
} );
|
|
78
|
+
|
|
79
|
+
return button;
|
|
80
|
+
} );
|
|
81
|
+
|
|
82
|
+
function download( data, filename, type ) {
|
|
83
|
+
const file = new Blob( [ data ], { type } );
|
|
84
|
+
|
|
85
|
+
if ( window.navigator.msSaveOrOpenBlob ) {
|
|
86
|
+
// IE10+
|
|
87
|
+
window.navigator.msSaveOrOpenBlob( file, filename );
|
|
88
|
+
} else {
|
|
89
|
+
// Others
|
|
90
|
+
const a = document.createElement( 'a' );
|
|
91
|
+
const url = URL.createObjectURL( file );
|
|
92
|
+
|
|
93
|
+
a.href = url;
|
|
94
|
+
a.download = filename;
|
|
95
|
+
document.body.appendChild( a );
|
|
96
|
+
|
|
97
|
+
a.click();
|
|
98
|
+
setTimeout( function() {
|
|
99
|
+
document.body.removeChild( a );
|
|
100
|
+
window.URL.revokeObjectURL( url );
|
|
101
|
+
} );
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export function rwdButton() {
|
|
7
|
+
// Handle the mobile menu button.
|
|
8
|
+
const rwdButton = document.querySelector( '.header__main-rwd-button a' );
|
|
9
|
+
const rwdTop = document.querySelector( '.top' );
|
|
10
|
+
|
|
11
|
+
rwdButton.addEventListener( 'click', e => {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
rwdTop.classList.toggle( 'rwd-menu-active' );
|
|
14
|
+
} );
|
|
15
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import $ from 'jquery';
|
|
7
|
+
|
|
8
|
+
export default function sampleCode() {
|
|
9
|
+
const headerHeight = document.querySelector( 'header.top' ).offsetHeight;
|
|
10
|
+
|
|
11
|
+
// Accordion toggling button.
|
|
12
|
+
$( '.sdk-sample-source-code__button' ).on( 'click', function( e ) {
|
|
13
|
+
e.preventDefault();
|
|
14
|
+
|
|
15
|
+
$( this ).toggleClass( 'active' );
|
|
16
|
+
$( this ).parent().find( '.sdk-sample-source-code__code-block' ).toggleClass( 'active' );
|
|
17
|
+
|
|
18
|
+
// scroll smoothly to the clicked content
|
|
19
|
+
$( 'html, body' ).animate( {
|
|
20
|
+
scrollTop: $( this ).offset().top - headerHeight - 20
|
|
21
|
+
}, 400 );
|
|
22
|
+
} );
|
|
23
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export default function sideNavigation() {
|
|
7
|
+
const folderButtons = Array.from( document.querySelectorAll( '.tree:not(.api-tree) .tree__item--folder' ) );
|
|
8
|
+
const guideTreeElement = document.getElementById( 'guidetree' );
|
|
9
|
+
const foldedClassName = 'tree__item-nested-list--hidden';
|
|
10
|
+
const activeClassName = '.tree__item__wrapper--active';
|
|
11
|
+
const localStorageKey = 'foldersState';
|
|
12
|
+
|
|
13
|
+
let foldersState = JSON.parse( window.localStorage.getItem( localStorageKey ) );
|
|
14
|
+
if ( foldersState === null ) {
|
|
15
|
+
foldersState = {};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
folderButtons.forEach( btn => {
|
|
19
|
+
const element = btn.parentNode.nextElementSibling; // Get <ul> element
|
|
20
|
+
const id = element.getAttribute( 'data-id' );
|
|
21
|
+
|
|
22
|
+
applyFolderState( element, foldersState[ id ] );
|
|
23
|
+
checkForActiveChildren( element, id );
|
|
24
|
+
|
|
25
|
+
btn.addEventListener( 'click', function() {
|
|
26
|
+
element.classList.toggle( foldedClassName );
|
|
27
|
+
saveFolderState( id, isFolded( element ) );
|
|
28
|
+
} );
|
|
29
|
+
} );
|
|
30
|
+
|
|
31
|
+
if ( guideTreeElement ) {
|
|
32
|
+
guideTreeElement.classList.add( 'state-applied' );
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function applyFolderState( element, folded ) {
|
|
36
|
+
if ( folded === false ) {
|
|
37
|
+
element.classList.remove( foldedClassName );
|
|
38
|
+
}
|
|
39
|
+
if ( folded === true ) {
|
|
40
|
+
element.classList.add( foldedClassName );
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function saveFolderState( id, state ) {
|
|
45
|
+
foldersState[ id ] = state;
|
|
46
|
+
window.localStorage.setItem( localStorageKey, JSON.stringify( foldersState ) );
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function checkForActiveChildren( element, id ) {
|
|
50
|
+
if ( element.querySelectorAll( activeClassName ).length > 0 ) {
|
|
51
|
+
element.classList.remove( foldedClassName );
|
|
52
|
+
saveFolderState( id, isFolded( element ) );
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function isFolded( element ) {
|
|
57
|
+
return element.classList.contains( foldedClassName );
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import $ from 'jquery';
|
|
7
|
+
import throttle from 'lodash/throttle';
|
|
8
|
+
|
|
9
|
+
export function trackArticlePosition() {
|
|
10
|
+
let headingsData = [];
|
|
11
|
+
const toc = $( '.secondary-navigation' );
|
|
12
|
+
const tocLinks = $( '.secondary-navigation a' );
|
|
13
|
+
const currentItemClass = 'secondary-navigation__current-position';
|
|
14
|
+
let tocItemClicked = false;
|
|
15
|
+
|
|
16
|
+
function getHeadingsData() {
|
|
17
|
+
headingsData = [];
|
|
18
|
+
|
|
19
|
+
$( ':header' ).each( function() {
|
|
20
|
+
const currentHeading = $( this );
|
|
21
|
+
const currentHeadingId = currentHeading.attr( 'id' );
|
|
22
|
+
|
|
23
|
+
if ( !currentHeadingId ) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
headingsData.unshift( {
|
|
28
|
+
top: currentHeading.offset().top,
|
|
29
|
+
tocItem: toc.find( `a[href$="#${ currentHeadingId }"]` )
|
|
30
|
+
} );
|
|
31
|
+
} );
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function updateToc() {
|
|
35
|
+
// Prevent updating when ToC item was clicked and page scrolled.
|
|
36
|
+
if ( tocItemClicked ) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// When ToC is not fixed to the right, there is no need for marking current position.
|
|
41
|
+
if ( toc.css( 'position' ) !== 'fixed' ) {
|
|
42
|
+
if ( tocLinks.hasClass( currentItemClass ) ) {
|
|
43
|
+
tocLinks.removeClass( currentItemClass );
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const scrollTop = $( window ).scrollTop();
|
|
50
|
+
const offsetAboveHeading = $( window ).height() / 3;
|
|
51
|
+
|
|
52
|
+
for ( const hd of headingsData ) {
|
|
53
|
+
if ( scrollTop > hd.top - offsetAboveHeading ) {
|
|
54
|
+
if ( !hd.tocItem.hasClass( currentItemClass ) ) {
|
|
55
|
+
tocLinks.removeClass( currentItemClass );
|
|
56
|
+
hd.tocItem.addClass( currentItemClass );
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if ( tocLinks.hasClass( currentItemClass ) ) {
|
|
64
|
+
tocLinks.removeClass( currentItemClass );
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
tocLinks.click( function() {
|
|
69
|
+
tocItemClicked = true;
|
|
70
|
+
|
|
71
|
+
if ( tocLinks.hasClass( currentItemClass ) ) {
|
|
72
|
+
tocLinks.removeClass( currentItemClass );
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
$( this ).addClass( currentItemClass );
|
|
76
|
+
setTimeout( () => {
|
|
77
|
+
tocItemClicked = false;
|
|
78
|
+
}, 200 );
|
|
79
|
+
} );
|
|
80
|
+
|
|
81
|
+
$( window ).resize( () => {
|
|
82
|
+
getHeadingsData();
|
|
83
|
+
updateToc();
|
|
84
|
+
} );
|
|
85
|
+
|
|
86
|
+
$( window ).scroll( throttle( updateToc, 100 ) );
|
|
87
|
+
|
|
88
|
+
// Timeout because highlight.js takes time to run and it changes headings position.
|
|
89
|
+
setTimeout( function() {
|
|
90
|
+
getHeadingsData();
|
|
91
|
+
updateToc();
|
|
92
|
+
}, 200 );
|
|
93
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import $ from 'jquery';
|
|
7
|
+
import tippy from 'tippy.js';
|
|
8
|
+
|
|
9
|
+
export function enableBadgeTooltips() {
|
|
10
|
+
$( '[data-badge-tooltip]' ).each( ( index, element ) => {
|
|
11
|
+
tippy( element, {
|
|
12
|
+
content: element.dataset.badgeTooltip,
|
|
13
|
+
placement: 'right',
|
|
14
|
+
duration: 150,
|
|
15
|
+
animation: 'scale',
|
|
16
|
+
theme: 'light-border',
|
|
17
|
+
zIndex: 1
|
|
18
|
+
} );
|
|
19
|
+
} );
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function createTooltip( target, content, options ) {
|
|
23
|
+
const tooltip = tippy( target, {
|
|
24
|
+
content,
|
|
25
|
+
...options
|
|
26
|
+
} );
|
|
27
|
+
|
|
28
|
+
const closeButton = tooltip.popper.querySelector( '.tippy-content__close-button' );
|
|
29
|
+
|
|
30
|
+
closeButton.addEventListener( 'click', () => {
|
|
31
|
+
tooltip.hide();
|
|
32
|
+
} );
|
|
33
|
+
|
|
34
|
+
target.addEventListener( 'click', () => {
|
|
35
|
+
tooltip.hide();
|
|
36
|
+
} );
|
|
37
|
+
|
|
38
|
+
return tooltip;
|
|
39
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import $ from 'jquery';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Displays a warning banner on top of the page with a pre-defined message.
|
|
10
|
+
*
|
|
11
|
+
* @param {String} message
|
|
12
|
+
*/
|
|
13
|
+
export default function showWarningBanner( message ) {
|
|
14
|
+
const warningElement = $( '<div class="warning-banner"></div>' );
|
|
15
|
+
|
|
16
|
+
warningElement.append( `<span>⚠️ Warning</span><span>${ message }</span>` );
|
|
17
|
+
warningElement.appendTo( 'header.top' );
|
|
18
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2017-2025, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// Polyfill for `window.Symbol`.
|
|
7
|
+
import '@babel/polyfill';
|
|
8
|
+
// Polyfill for `Element.closest()`.
|
|
9
|
+
import 'element-closest/browser';
|
|
10
|
+
|
|
11
|
+
import $ from 'jquery';
|
|
12
|
+
import { setupPrism } from './_prism';
|
|
13
|
+
import { enableCollapsables, hideTogglers } from './_collapsables';
|
|
14
|
+
import { enableAnchors } from './_anchors';
|
|
15
|
+
import { enableDropdowns } from './_dropdowns';
|
|
16
|
+
import { enableFiltering } from './_filtering';
|
|
17
|
+
import { trackArticlePosition } from './_toc';
|
|
18
|
+
import { expandApiTree, scrollApiTree } from './_apitree';
|
|
19
|
+
import { setUpFuse } from './_apisearch';
|
|
20
|
+
import pageNavigation from './_pagenavigation';
|
|
21
|
+
import { activateDevNames } from './_devnames';
|
|
22
|
+
import sideNavigation from './_sidenavigation';
|
|
23
|
+
import sampleCode from './_samplecode';
|
|
24
|
+
import copyMobileApiNavigation from './_copymobileapinavigation';
|
|
25
|
+
import { rwdButton } from './_rwdmenu';
|
|
26
|
+
import imageModal from './_imageModal';
|
|
27
|
+
import showWarningBanner from './_warningbanner';
|
|
28
|
+
import { enableBadgeTooltips, createTooltip } from './_tooltips';
|
|
29
|
+
import attachPermalinkListener from './_attachpermalinklistener';
|
|
30
|
+
import { createCodeSwitcherButtons } from './_codeswitcherbuttons';
|
|
31
|
+
|
|
32
|
+
// Changing documentation theme. To enable, type in the console: `localStorage.setItem( 'theme', 'theme-dark' )`.
|
|
33
|
+
if ( localStorage.getItem( 'theme' ) === 'theme-dark' ) {
|
|
34
|
+
document.getElementsByTagName( 'html' )[ 0 ].classList.add( 'theme-dark' );
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Set up the global variable.
|
|
38
|
+
window.umberto = {
|
|
39
|
+
// The `VERSION` value will be replaced by the `DefinePlugin` webpack plugin.
|
|
40
|
+
version: VERSION, // eslint-disable-line no-undef
|
|
41
|
+
showWarningBanner,
|
|
42
|
+
createTooltip
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
// Ask the SOS team before touching this 😛
|
|
46
|
+
window.open.closed = 1;
|
|
47
|
+
|
|
48
|
+
$( document ).ready( () => {
|
|
49
|
+
pageNavigation(); // pageNavigation - needs to be run before filtering initialization.
|
|
50
|
+
copyMobileApiNavigation(); // copy API Tree into mobile navigation
|
|
51
|
+
sideNavigation();
|
|
52
|
+
expandApiTree();
|
|
53
|
+
scrollApiTree();
|
|
54
|
+
enableFiltering();
|
|
55
|
+
setupPrism();
|
|
56
|
+
enableCollapsables();
|
|
57
|
+
hideTogglers();
|
|
58
|
+
enableAnchors();
|
|
59
|
+
enableDropdowns();
|
|
60
|
+
trackArticlePosition();
|
|
61
|
+
setUpFuse();
|
|
62
|
+
activateDevNames();
|
|
63
|
+
attachPermalinkListener();
|
|
64
|
+
rwdButton();
|
|
65
|
+
imageModal(); // lightbox for { @img } elements
|
|
66
|
+
// `sampleCode()` must be called after the `setupPrism()` function.
|
|
67
|
+
sampleCode(); // control accordion of sample code and buttons(copy/download)
|
|
68
|
+
enableBadgeTooltips(); // attaches tippy.js tooltip for all elements with data-badge-tooltip
|
|
69
|
+
createCodeSwitcherButtons();
|
|
70
|
+
} );
|