From daaab21b76be6fb5a6836ff0a87f8d7ee5ff7506 Mon Sep 17 00:00:00 2001 From: Tania Allard Date: Tue, 16 Apr 2024 14:45:19 +0100 Subject: [PATCH] FEAT - Restyle interactive elements to be more accessible (#1564) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Consistent focus ring (first pass) (#1549) * wip * Style focus state in header nav * update focus ring style on all focussable elements * simplify * fix links in mobile sidebar overlay * put focus rings around a few more focusable elements * polish * update comment * review * better align focus ring on collapsible admonitions * comment and simplify sphinx-togglebutton focus ring * make css override more explicit * Fix SD link-card focus ring and on homepage, bring links inside card * Update docs/index.md --------- Co-authored-by: Daniel McCloy * Resolve current sidebar link notch and focus ring (#1561) * Fix sidebar current notch * focus-ring-radius * missed a spot 0.125rem * keep focus ring on top * Restyle Sphinx Design tabs (#1555) * restyle sphinx design tabs * increase panel border radius * increase line height, zero padding-y * use shadow variable * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Fix tabbed panel colors (#1567) * Header nav link styles (focus, hover, current) (#1545) * Implement header nav link styles * add comments * add comment * changes from implementation review * Consistent focus ring (first pass) (#1549) * wip * Style focus state in header nav * update focus ring style on all focussable elements * simplify * fix links in mobile sidebar overlay * put focus rings around a few more focusable elements * polish * update comment * review * better align focus ring on collapsible admonitions * comment and simplify sphinx-togglebutton focus ring * make css override more explicit * Fix SD link-card focus ring and on homepage, bring links inside card * Update docs/index.md --------- Co-authored-by: Daniel McCloy * Resolve current sidebar link notch and focus ring (#1561) * Fix sidebar current notch * focus-ring-radius * missed a spot 0.125rem * keep focus ring on top * Restyle Sphinx Design tabs (#1555) * restyle sphinx design tabs * increase panel border radius * increase line height, zero padding-y * use shadow variable * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Fix tabbed panel colors (#1567) * update feature focus (#1569) * docs: add instructions for custom SVG icons (#1490) * docs: add instructions for custom SVG icons * docs: minor tweaks in SVG icon instructions * docs: some more tweaks to SVG icon instructions * Update docs/user_guide/header-links.rst Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * Change literalinclude to code-block in header links * Update docs/user_guide/header-links.rst Co-authored-by: Daniel McCloy * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst --------- Co-authored-by: tgresavage Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: Daniel McCloy * fix: make table background transparent (#1546) * fix: make table background transparent * fix: make table background transparent * fix: add color-theme option to html tag (#1536) * Silence warnings (#1542) * avoid webpack warning during asset compile * avoid frozen modules warning during import * try to make jupyterlite quieter * add config option to silence warnings * fix tests * add docs * hide conditional warning logic in utils * bump: 0.14.2 → 0.14.3 * chore: back to dev * docs: add the list of component using a directive (#1476) * fix: create the component list automatically * fix: read the first comment as documentation * docs: add disclaimer on .html suffix * docs: document every component with a simple one liner * fix: use regex to identify comments * update component branch (#15) * Change default logo alt text (#1472) * Default logo alt text only if no extra text * change default logo * use docstitle as default logo alt text * update docs to reflect change * Apply suggestions from code review Co-authored-by: Daniel McCloy * use string formatting operator * Update docs/user_guide/branding.rst * docs fixes * Update docs/user_guide/branding.rst * add test * Update pyproject.toml * revert to original --------- Co-authored-by: Daniel McCloy Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * chore(i18n) catalan (#1488) i18n: Translate sphinx.po in ca 100% translated source file: 'sphinx.po' on 'ca'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * Build(deps): Bump postcss and css-loader (#1494) Bumps [postcss](https://github.com/postcss/postcss) to 8.4.31 and updates ancestor dependency [css-loader](https://github.com/webpack-contrib/css-loader). These dependencies need to be updated together. Updates `postcss` from 8.4.21 to 8.4.31 - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.4.21...8.4.31) Updates `css-loader` from 3.6.0 to 6.8.1 - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v3.6.0...v6.8.1) --- updated-dependencies: - dependency-name: postcss dependency-type: indirect - dependency-name: css-loader dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Revert "Build(deps): Bump postcss and css-loader" (#1509) Revert "Build(deps): Bump postcss and css-loader (#1494)" This reverts commit 185a37aa36820f77bffa4c87a772092e9e7cc380. * Update pst docs buttons (#1502) * call them button-links * copy edit * docs: link back to GitHub from PyPI metadata (#1504) This will add a "Source" link in the PyPI page. * navigation_with_keys = False (#1503) * navigation_with_keys = False * None -> False * Apply suggestions from code review --------- Co-authored-by: Daniel McCloy * fix: convert "stable" to actual version number (#1512) * convert "stable" to actual version number * fix tests re: navigation_with_keys * try bumping autoapi * refactor: use nbsphinx as the default execution lib (#1482) * refactor: use nbsphinx as the default execution lib * add nbstripout to the pre-commits' * add pandoc to the readthedocs deps * refactor: clean the notebook * move the example to the correct folder * fix: solve link issue * install pandoc in the test environment * fix: display of large table in executed cells * avoid Userwarnings from matplotlib * hide the matplotlib wrning management cell * Update readthedocs.yml * build: use pandoc_binary to install pandoc * docs: add reference to pandoc in the setup * update docs * remove pypandoc_binary * Update pyproject.toml Co-authored-by: gabalafou * ci: use back setup-pandoc * Trigger CI build --------- Co-authored-by: Gabriel Fouasnon * BUG - Clear alt_text in conf.py (#1471) * comment out alt_text in conf.py * set alt_text to empty string * remove alt_text from conf.py * fix: use 12rambau fork until it's merged with nikeee repo (#1517) * deps: drop support for Sphinx 5 (#1516) * remove ref to myst-nb * update minimal supported version of sphinx * Fix: (webpack.config.js) css-loader API change (#1508) * Fix: (webpack.config.js) css-loader API change The build was broken in /. This change fixes the build, and it seems to be in accordance with the current API as described at . Closes . * dedup * restore version bump --------- Co-authored-by: Daniel McCloy * Fix duplicate HTML IDs (#1425) * Fix duplicate HTML IDs * fix tests * Do not animate the version admonitions colors. (#1424) Otherwise a delay has to be added to the accessibility color contrast checks, to wait for the colors to fully transition. * BUG - Remove redundant ARIA in breadcrumb navigation (#1426) * style(i18n): French Typo fixed (#1430) * Add the ability to add a center section to the footer (#1432) * Add a center section for the footer * Add docs for footer_center * Add a test site for the center footer * test it in our own docs * remove new test site * add footer test --------- Co-authored-by: Daniel McCloy * Build(deps): Bump actions/checkout from 3 to 4 (#1433) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add dropdown_text argument to generate_header_nav_html (#1423) * Add dropdown_text argument to generate_header_nav_html * Add a test, fix typo in theme.conf and remove header_dropdown_text from docs/conf.py * fixed? --------- Co-authored-by: Daniel McCloy * fix: rollback ref and Id changes (#1438) * bump: version 0.13.3 → 0.14.0 (#1440) * bump version * update version switcher * back to dev * fix: change the z-index of the dropdown (#1442) In order to be on top of the primary sidebar on small screens. * fix: set the same background for dark/light (#1443) * fix: set the same background for dark/light et the same background color for all state of the search field. It is currently only applied when hovered * fix: wrong css selector * Update src/pydata_sphinx_theme/assets/styles/components/_search.scss * Update src/pydata_sphinx_theme/assets/styles/components/_search.scss * Fix duplicate HTML IDs * fix tests * unique_html_id * backwards-compat generate_header_nav_html * feedback review * update fixture * ughhhh...caching * code cleanup * fix test snapshot * put comment inside def --------- Signed-off-by: dependabot[bot] Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Daniel McCloy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alenka Frim Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * chore: build the devcontainer automatically in codespace (#1483) * chore: build the devcontainer automaticallyin codespace * refactor: lint * add pandoc to the environment * Fix font color in search input box (#1524) * Fix color * Use --pst-color-text-base * docs: add DecentralChain (#1528) Co-authored-by: jourlez * Updates for file src/pydata_sphinx_theme/locale/en/LC_MESSAGES/sphinx.po in ru [Manual Sync] (#1527) i18n: Translate sphinx.po in ru [Manual Sync] 96% of minimum 20% translated source file: 'sphinx.po' on 'ru'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * ignore transient errors in windows build CI (#1520) * use warning list * clean up notebook * refactor to pass on all platforms? * simplify * fix logic * iterate backwards * fix plaform detection? also don't log unnecessarily * ignore empty string warnings * remove notebook metawarning * Revert "remove notebook metawarning" This reverts commit 42f46723eb9eeea7603efb91fbfb6bdfa1de28b3. * try again * debug the mysterious empty warning * escape color codes * import * triage by intermittency, not by platform; better var names * simplify * fix list.remove * undo what I broke * Update tests/utils/check_warnings.py * refactor: remove extention on component set-up (#1529) * use event.key for search shortcut (#1525) * use event.key for search shortcut * suggestions from review * caps lock --------- Signed-off-by: dependabot[bot] Co-authored-by: gabalafou Co-authored-by: Daniel McCloy Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez * fix: use a directive instead of raw html * fix: make links externals * fix: set reference in paragraphs * fix: missing parameter * fix: use the stem for the component name * refactor: remove never used variables * standardize component descriptions --------- Signed-off-by: dependabot[bot] Co-authored-by: gabalafou Co-authored-by: Daniel McCloy Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez * fix: primer link in docs (#1556) * docs: add data-content (#1559) Reproduce the change made in Sphinx 7 https://github.com/sphinx-doc/sphinx/commit/8e730ae303ae686705ea12f44ef11da926a87cf5#diff-a5066e933cbf65adc46e0d1ab9a0b44e0a53ca64cc95dca7e6aa902aed6bd468R105 * Obviate background-from-color-variable (#1558) * Obviate background-from-color-variable * backwards compatibility --------- Signed-off-by: dependabot[bot] Co-authored-by: gresavage Co-authored-by: tgresavage Co-authored-by: Daniel McCloy Co-authored-by: gabalafou Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez Co-authored-by: Chris Holdgraf * simplify (do not change state of hover) * fix icon links * forgot to add pydata-icon.js * Restore hover styles to sidebar toggles --------- Signed-off-by: dependabot[bot] Co-authored-by: Daniel McCloy Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: gresavage Co-authored-by: tgresavage Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez Co-authored-by: Chris Holdgraf * Buttons meet WCAG criteria (#1589) * Match buttons to design system * back to top button * switch to stable version button * remove sd-sphinx-override class which seems to do nothing * underline * center * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss Co-authored-by: Tania Allard * don't forget outline buttons --------- Co-authored-by: Tania Allard * Up/down chevrons and "expand"/"collapse" for Sphinx-togglebutton (#1605) * Up/down chevrons and "expand"/"collapse" text for Sphinx-togglebutton * Add translation strings * Keyboard handlers to open and close mobile sidebars (#1585) * Consistent focus ring (first pass) (#1549) * wip * Style focus state in header nav * update focus ring style on all focussable elements * simplify * fix links in mobile sidebar overlay * put focus rings around a few more focusable elements * polish * update comment * review * better align focus ring on collapsible admonitions * comment and simplify sphinx-togglebutton focus ring * make css override more explicit * Fix SD link-card focus ring and on homepage, bring links inside card * Update docs/index.md --------- Co-authored-by: Daniel McCloy * Resolve current sidebar link notch and focus ring (#1561) * Fix sidebar current notch * focus-ring-radius * missed a spot 0.125rem * keep focus ring on top * Restyle Sphinx Design tabs (#1555) * restyle sphinx design tabs * increase panel border radius * increase line height, zero padding-y * use shadow variable * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Fix tabbed panel colors (#1567) * update feature focus (#1569) * docs: add instructions for custom SVG icons (#1490) * docs: add instructions for custom SVG icons * docs: minor tweaks in SVG icon instructions * docs: some more tweaks to SVG icon instructions * Update docs/user_guide/header-links.rst Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * Change literalinclude to code-block in header links * Update docs/user_guide/header-links.rst Co-authored-by: Daniel McCloy * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst * Update docs/user_guide/header-links.rst --------- Co-authored-by: tgresavage Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: Daniel McCloy * fix: make table background transparent (#1546) * fix: make table background transparent * fix: make table background transparent * fix: add color-theme option to html tag (#1536) * Silence warnings (#1542) * avoid webpack warning during asset compile * avoid frozen modules warning during import * try to make jupyterlite quieter * add config option to silence warnings * fix tests * add docs * hide conditional warning logic in utils * bump: 0.14.2 → 0.14.3 * chore: back to dev * docs: add the list of component using a directive (#1476) * fix: create the component list automatically * fix: read the first comment as documentation * docs: add disclaimer on .html suffix * docs: document every component with a simple one liner * fix: use regex to identify comments * update component branch (#15) * Change default logo alt text (#1472) * Default logo alt text only if no extra text * change default logo * use docstitle as default logo alt text * update docs to reflect change * Apply suggestions from code review Co-authored-by: Daniel McCloy * use string formatting operator * Update docs/user_guide/branding.rst * docs fixes * Update docs/user_guide/branding.rst * add test * Update pyproject.toml * revert to original --------- Co-authored-by: Daniel McCloy Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * chore(i18n) catalan (#1488) i18n: Translate sphinx.po in ca 100% translated source file: 'sphinx.po' on 'ca'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * Build(deps): Bump postcss and css-loader (#1494) Bumps [postcss](https://github.com/postcss/postcss) to 8.4.31 and updates ancestor dependency [css-loader](https://github.com/webpack-contrib/css-loader). These dependencies need to be updated together. Updates `postcss` from 8.4.21 to 8.4.31 - [Release notes](https://github.com/postcss/postcss/releases) - [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md) - [Commits](https://github.com/postcss/postcss/compare/8.4.21...8.4.31) Updates `css-loader` from 3.6.0 to 6.8.1 - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v3.6.0...v6.8.1) --- updated-dependencies: - dependency-name: postcss dependency-type: indirect - dependency-name: css-loader dependency-type: direct:development ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Revert "Build(deps): Bump postcss and css-loader" (#1509) Revert "Build(deps): Bump postcss and css-loader (#1494)" This reverts commit 185a37aa36820f77bffa4c87a772092e9e7cc380. * Update pst docs buttons (#1502) * call them button-links * copy edit * docs: link back to GitHub from PyPI metadata (#1504) This will add a "Source" link in the PyPI page. * navigation_with_keys = False (#1503) * navigation_with_keys = False * None -> False * Apply suggestions from code review --------- Co-authored-by: Daniel McCloy * fix: convert "stable" to actual version number (#1512) * convert "stable" to actual version number * fix tests re: navigation_with_keys * try bumping autoapi * refactor: use nbsphinx as the default execution lib (#1482) * refactor: use nbsphinx as the default execution lib * add nbstripout to the pre-commits' * add pandoc to the readthedocs deps * refactor: clean the notebook * move the example to the correct folder * fix: solve link issue * install pandoc in the test environment * fix: display of large table in executed cells * avoid Userwarnings from matplotlib * hide the matplotlib wrning management cell * Update readthedocs.yml * build: use pandoc_binary to install pandoc * docs: add reference to pandoc in the setup * update docs * remove pypandoc_binary * Update pyproject.toml Co-authored-by: gabalafou * ci: use back setup-pandoc * Trigger CI build --------- Co-authored-by: Gabriel Fouasnon * BUG - Clear alt_text in conf.py (#1471) * comment out alt_text in conf.py * set alt_text to empty string * remove alt_text from conf.py * fix: use 12rambau fork until it's merged with nikeee repo (#1517) * deps: drop support for Sphinx 5 (#1516) * remove ref to myst-nb * update minimal supported version of sphinx * Fix: (webpack.config.js) css-loader API change (#1508) * Fix: (webpack.config.js) css-loader API change The build was broken in /. This change fixes the build, and it seems to be in accordance with the current API as described at . Closes . * dedup * restore version bump --------- Co-authored-by: Daniel McCloy * Fix duplicate HTML IDs (#1425) * Fix duplicate HTML IDs * fix tests * Do not animate the version admonitions colors. (#1424) Otherwise a delay has to be added to the accessibility color contrast checks, to wait for the colors to fully transition. * BUG - Remove redundant ARIA in breadcrumb navigation (#1426) * style(i18n): French Typo fixed (#1430) * Add the ability to add a center section to the footer (#1432) * Add a center section for the footer * Add docs for footer_center * Add a test site for the center footer * test it in our own docs * remove new test site * add footer test --------- Co-authored-by: Daniel McCloy * Build(deps): Bump actions/checkout from 3 to 4 (#1433) Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/checkout dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Add dropdown_text argument to generate_header_nav_html (#1423) * Add dropdown_text argument to generate_header_nav_html * Add a test, fix typo in theme.conf and remove header_dropdown_text from docs/conf.py * fixed? --------- Co-authored-by: Daniel McCloy * fix: rollback ref and Id changes (#1438) * bump: version 0.13.3 → 0.14.0 (#1440) * bump version * update version switcher * back to dev * fix: change the z-index of the dropdown (#1442) In order to be on top of the primary sidebar on small screens. * fix: set the same background for dark/light (#1443) * fix: set the same background for dark/light et the same background color for all state of the search field. It is currently only applied when hovered * fix: wrong css selector * Update src/pydata_sphinx_theme/assets/styles/components/_search.scss * Update src/pydata_sphinx_theme/assets/styles/components/_search.scss * Fix duplicate HTML IDs * fix tests * unique_html_id * backwards-compat generate_header_nav_html * feedback review * update fixture * ughhhh...caching * code cleanup * fix test snapshot * put comment inside def --------- Signed-off-by: dependabot[bot] Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Daniel McCloy Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alenka Frim Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * chore: build the devcontainer automatically in codespace (#1483) * chore: build the devcontainer automaticallyin codespace * refactor: lint * add pandoc to the environment * Fix font color in search input box (#1524) * Fix color * Use --pst-color-text-base * docs: add DecentralChain (#1528) Co-authored-by: jourlez * Updates for file src/pydata_sphinx_theme/locale/en/LC_MESSAGES/sphinx.po in ru [Manual Sync] (#1527) i18n: Translate sphinx.po in ru [Manual Sync] 96% of minimum 20% translated source file: 'sphinx.po' on 'ru'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * ignore transient errors in windows build CI (#1520) * use warning list * clean up notebook * refactor to pass on all platforms? * simplify * fix logic * iterate backwards * fix plaform detection? also don't log unnecessarily * ignore empty string warnings * remove notebook metawarning * Revert "remove notebook metawarning" This reverts commit 42f46723eb9eeea7603efb91fbfb6bdfa1de28b3. * try again * debug the mysterious empty warning * escape color codes * import * triage by intermittency, not by platform; better var names * simplify * fix list.remove * undo what I broke * Update tests/utils/check_warnings.py * refactor: remove extention on component set-up (#1529) * use event.key for search shortcut (#1525) * use event.key for search shortcut * suggestions from review * caps lock --------- Signed-off-by: dependabot[bot] Co-authored-by: gabalafou Co-authored-by: Daniel McCloy Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez * fix: use a directive instead of raw html * fix: make links externals * fix: set reference in paragraphs * fix: missing parameter * fix: use the stem for the component name * refactor: remove never used variables * standardize component descriptions --------- Signed-off-by: dependabot[bot] Co-authored-by: gabalafou Co-authored-by: Daniel McCloy Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez * fix: primer link in docs (#1556) * docs: add data-content (#1559) Reproduce the change made in Sphinx 7 https://github.com/sphinx-doc/sphinx/commit/8e730ae303ae686705ea12f44ef11da926a87cf5#diff-a5066e933cbf65adc46e0d1ab9a0b44e0a53ca64cc95dca7e6aa902aed6bd468R105 * Obviate background-from-color-variable (#1558) * Obviate background-from-color-variable * backwards compatibility --------- Signed-off-by: dependabot[bot] Co-authored-by: gresavage Co-authored-by: tgresavage Co-authored-by: Daniel McCloy Co-authored-by: gabalafou Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez Co-authored-by: Chris Holdgraf * Keyboard handlers to open and close mobile sidebars * Update src/pydata_sphinx_theme/__init__.py --------- Signed-off-by: dependabot[bot] Co-authored-by: Daniel McCloy Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: gresavage Co-authored-by: tgresavage Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez Co-authored-by: Chris Holdgraf * Merge main into feature-focus (#1685) * Build(deps): Bump actions/setup-python from 4 to 5 (#1590) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Use pytest-regressions to mark expected a11y test failures (#1501) * Use pytest-regressions with a11y tests to mark expected failures * Update tests/test_a11y.py * frozen data class * Revert "frozen data class" This reverts commit 3b0c73e93d1f1b52f45b4918015c66fe5142c294. --------- Co-authored-by: Daniel McCloy * FIX: avoid implicit string comparison in Sphinx 7.26 (#1592) * FIX: avoid implicit string comparison in Sphinx 7.26 * lint --------- Co-authored-by: Daniel McCloy * Build(deps): Bump actions/upload-artifact from 3 to 4 (#1598) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update fontawesome from 6.1.2 to 6.5.1 (#1600) * Fix landmark-unique error due to in-page TOC (#1607) * landmark unique error due to in-page TOC * Apply suggestions from code review Co-authored-by: Tania Allard * fix lint? --------- Co-authored-by: Tania Allard * Feature: Add support for per-page secondary sidebar content (#1572) * Add ability to set per-page secondary sidebars * Add additional secondary sidebar content tests; expanded utils docstring * Update translation files (#1606) * Bump minimum Python from 3.8 to 3.9; add 3.12 to CIs (#1610) drop py3.8, add py3.12 * Fix: more efficient determination of when to hide primary sidebar (#1609) * minor refactors suggested by Ruff * move TOC generation from layout.html to sidebar-primary.html * replace @lru_cache(None) with plain @cache * get sidebar TOC length without rendering it * fixup rebase/stash snafu * bugfix * Fix "More" links in mobile sidebar (#1604) Fix #1603 * bump: 0.14.4 → 0.15.0rc0 * Updates for file src/pydata_sphinx_theme/locale/en/LC_MESSAGES/sphinx.po in fr (#1618) i18n: Translate sphinx.po in fr 100% translated source file: 'sphinx.po' on 'fr'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * bump: 0.14.4 → 0.15.0 * fix: drop the dev test (#1623) * fix: remove Site navigation header (#1615) * fix: remove Site navigation header * test: edit the test suit * fix: align all breadcrumb elements (#1619) * fix: log information when warnings are disabled (#1617) * bump: 0.15.0 → 0.15.1 * back to dev * fix: align the search button with other icons (#1620) * test: display the search button for demo purposes * fix: only display the search icon * fix: remove needless adjustements * fix: rollback to default search * chore: trigger CI * Fix sticky header (#1630) * Fix sticky header * regression test * maybe fix missing sidebar? (#1632) * maybe fix missing sidebar? * simplify * purge internal defaults & use theme config setting * formatting * refactor and simplify toctree code * DOC: Add missing "footer_center" in layout overview diagram (#1640) * Make bootstrap globally available (#1639) * Make bootstrap globally available * Include docs about bootstrap programmatic API * Add Brightway to Featured Example Gallery Grid (#1580) * initial commit * test: the png images are not build during tests --------- Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * fix: move the release instructions to the repository (#1621) * fix: update text and links * fix: add code highlight * fix: wire correct file in our documentation * chore: trigger CI * remove mention of semantic versioning Co-authored-by: Daniel McCloy * refactor: lint * Update RELEASE.md --------- Co-authored-by: Daniel McCloy * Make search event listener only trigger with “K”/“k” (#1646) * More speedups to section TOC rendering (#1642) * small refactor, comments, cleanup * docstring cleanups * mark as unsafe for parallel write * Update src/pydata_sphinx_theme/toctree.py * Allow only theme_footer_center to be set (#1653) * fix: allow user to control the back-to-top button presence (#1616) * fix: put the btt button closer to age bottom * test: remove the btt button to check * test: fallback to default behaviour * refactor: rollback to previous state * use proper variable name * Update src/pydata_sphinx_theme/theme/pydata_sphinx_theme/layout.html --------- Co-authored-by: Daniel McCloy * remove toggle button for secondary sidebar if empty (#1637) * in CIs, pin sphinx dev temporarily * bump: 0.15.1 -> 0.15.2 * bump version to dev * FIX make theme switcher have consistent widths (#1651) * unpin sphinx in CI (#1665) * FIX make search button closer to other icons in topbar (#1659) * Build(deps): Bump actions/cache from 3 to 4 (#1667) Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * update dependabot labels (#1668) * only do security updates for NPM (#1674) * Restore search snippet highlights in search results page (#1678) * Apply default_mode to the html data-theme attribute (#1663) * Don't try to populate version switcher w/ relative path on local static site (#1660) * Don't try to populate version switcher on static sites * Fix comment spelling * Update src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js --------- Co-authored-by: Daniel McCloy * handle null result from queryselector (#1683) fix queryselector * Add pst-header-nav-item id to fix tests --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Daniel McCloy Co-authored-by: Angus Hollands Co-authored-by: Sebastiaan Huber Co-authored-by: Tania Allard Co-authored-by: Peyton Murray Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: Joris Van den Bossche Co-authored-by: Michael Wisely <108433848+michael-wisely-gravwell@users.noreply.github.com> Co-authored-by: Michael Weinold <23102087+michaelweinold@users.noreply.github.com> Co-authored-by: Philipp A Co-authored-by: Colin Marquardt Co-authored-by: Pierre Marchand Co-authored-by: Yao Xiao <108576690+Charlie-XIAO@users.noreply.github.com> Co-authored-by: Charles Co-authored-by: David Stansby * Merge main into feature-focus (#1708) * Build(deps): Bump actions/setup-python from 4 to 5 (#1590) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/actions/setup-python/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Use pytest-regressions to mark expected a11y test failures (#1501) * Use pytest-regressions with a11y tests to mark expected failures * Update tests/test_a11y.py * frozen data class * Revert "frozen data class" This reverts commit 3b0c73e93d1f1b52f45b4918015c66fe5142c294. --------- Co-authored-by: Daniel McCloy * FIX: avoid implicit string comparison in Sphinx 7.26 (#1592) * FIX: avoid implicit string comparison in Sphinx 7.26 * lint --------- Co-authored-by: Daniel McCloy * Build(deps): Bump actions/upload-artifact from 3 to 4 (#1598) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update fontawesome from 6.1.2 to 6.5.1 (#1600) * Fix landmark-unique error due to in-page TOC (#1607) * landmark unique error due to in-page TOC * Apply suggestions from code review Co-authored-by: Tania Allard * fix lint? --------- Co-authored-by: Tania Allard * Feature: Add support for per-page secondary sidebar content (#1572) * Add ability to set per-page secondary sidebars * Add additional secondary sidebar content tests; expanded utils docstring * Update translation files (#1606) * Bump minimum Python from 3.8 to 3.9; add 3.12 to CIs (#1610) drop py3.8, add py3.12 * Fix: more efficient determination of when to hide primary sidebar (#1609) * minor refactors suggested by Ruff * move TOC generation from layout.html to sidebar-primary.html * replace @lru_cache(None) with plain @cache * get sidebar TOC length without rendering it * fixup rebase/stash snafu * bugfix * Fix "More" links in mobile sidebar (#1604) Fix #1603 * bump: 0.14.4 → 0.15.0rc0 * Updates for file src/pydata_sphinx_theme/locale/en/LC_MESSAGES/sphinx.po in fr (#1618) i18n: Translate sphinx.po in fr 100% translated source file: 'sphinx.po' on 'fr'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> * bump: 0.14.4 → 0.15.0 * fix: drop the dev test (#1623) * fix: remove Site navigation header (#1615) * fix: remove Site navigation header * test: edit the test suit * fix: align all breadcrumb elements (#1619) * fix: log information when warnings are disabled (#1617) * bump: 0.15.0 → 0.15.1 * back to dev * fix: align the search button with other icons (#1620) * test: display the search button for demo purposes * fix: only display the search icon * fix: remove needless adjustements * fix: rollback to default search * chore: trigger CI * Fix sticky header (#1630) * Fix sticky header * regression test * maybe fix missing sidebar? (#1632) * maybe fix missing sidebar? * simplify * purge internal defaults & use theme config setting * formatting * refactor and simplify toctree code * DOC: Add missing "footer_center" in layout overview diagram (#1640) * Make bootstrap globally available (#1639) * Make bootstrap globally available * Include docs about bootstrap programmatic API * Add Brightway to Featured Example Gallery Grid (#1580) * initial commit * test: the png images are not build during tests --------- Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> * fix: move the release instructions to the repository (#1621) * fix: update text and links * fix: add code highlight * fix: wire correct file in our documentation * chore: trigger CI * remove mention of semantic versioning Co-authored-by: Daniel McCloy * refactor: lint * Update RELEASE.md --------- Co-authored-by: Daniel McCloy * Make search event listener only trigger with “K”/“k” (#1646) * More speedups to section TOC rendering (#1642) * small refactor, comments, cleanup * docstring cleanups * mark as unsafe for parallel write * Update src/pydata_sphinx_theme/toctree.py * Allow only theme_footer_center to be set (#1653) * fix: allow user to control the back-to-top button presence (#1616) * fix: put the btt button closer to age bottom * test: remove the btt button to check * test: fallback to default behaviour * refactor: rollback to previous state * use proper variable name * Update src/pydata_sphinx_theme/theme/pydata_sphinx_theme/layout.html --------- Co-authored-by: Daniel McCloy * remove toggle button for secondary sidebar if empty (#1637) * in CIs, pin sphinx dev temporarily * bump: 0.15.1 -> 0.15.2 * bump version to dev * FIX make theme switcher have consistent widths (#1651) * unpin sphinx in CI (#1665) * FIX make search button closer to other icons in topbar (#1659) * Build(deps): Bump actions/cache from 3 to 4 (#1667) Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * update dependabot labels (#1668) * only do security updates for NPM (#1674) * Restore search snippet highlights in search results page (#1678) * Apply default_mode to the html data-theme attribute (#1663) * Don't try to populate version switcher w/ relative path on local static site (#1660) * Don't try to populate version switcher on static sites * Fix comment spelling * Update src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js --------- Co-authored-by: Daniel McCloy * handle null result from queryselector (#1683) fix queryselector * ENH make search result heading a bit away from the search input box (#1690) ENH make search result heading a bit away from the search box * ENH animation for the top banner (#1693) * ENH animation for the top banner * unset forcefully set styles to let css take over; animation also added for version warning banner * make transition a bit longer * resolve conversations * retrigger CI * Update src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js --------- Co-authored-by: Daniel McCloy * docs: typo in a link in the release instructions (#1704) * Build(deps): Bump codecov/codecov-action from 3 to 4 (#1706) Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3 to 4. - [Release notes](https://github.com/codecov/codecov-action/releases) - [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/codecov/codecov-action/compare/v3...v4) --- updated-dependencies: - dependency-name: codecov/codecov-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Build(deps): Bump treosh/lighthouse-ci-action from 10 to 11 (#1705) Bumps [treosh/lighthouse-ci-action](https://github.com/treosh/lighthouse-ci-action) from 10 to 11. - [Release notes](https://github.com/treosh/lighthouse-ci-action/releases) - [Commits](https://github.com/treosh/lighthouse-ci-action/compare/v10...v11) --- updated-dependencies: - dependency-name: treosh/lighthouse-ci-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Daniel McCloy Co-authored-by: Angus Hollands Co-authored-by: Sebastiaan Huber Co-authored-by: Tania Allard Co-authored-by: Peyton Murray Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: Joris Van den Bossche Co-authored-by: Michael Wisely <108433848+michael-wisely-gravwell@users.noreply.github.com> Co-authored-by: Michael Weinold <23102087+michaelweinold@users.noreply.github.com> Co-authored-by: Philipp A Co-authored-by: Colin Marquardt Co-authored-by: Pierre Marchand Co-authored-by: Yao Xiao <108576690+Charlie-XIAO@users.noreply.github.com> Co-authored-by: Charles Co-authored-by: David Stansby * Make TOC sections expandable and collapsible by keyboard (#1582) * Consistent focus ring (first pass) (#1549) * wip * Style focus state in header nav * update focus ring style on all focussable elements * simplify * fix links in mobile sidebar overlay * put focus rings around a few more focusable elements * polish * update comment * review * better align focus ring on collapsible admonitions * comment and simplify sphinx-togglebutton focus ring * make css override more explicit * Fix SD link-card focus ring and on homepage, bring links inside card * Update docs/index.md --------- Co-authored-by: Daniel McCloy * Resolve current sidebar link notch and focus ring (#1561) * Fix sidebar current notch * focus-ring-radius * missed a spot 0.125rem * keep focus ring on top * Restyle Sphinx Design tabs (#1555) * restyle sphinx design tabs * increase panel border radius * increase line height, zero padding-y * use shadow variable * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Update src/pydata_sphinx_theme/assets/styles/extensions/_sphinx_design.scss * Fix tabbed panel colors (#1567) * aria attributes do not update if user uses mouse instead of keyboard * details/summary, no checkbox * clean up * details["open"] * make it work for nav level 0 * pull link outside of details tag * make it work with show nav level 0 * make level 0 heading clickable * comments * restore .current notches to toc parents * fix tests * clean up * more comments * make toggle icon bigger at level 0 * comments * clarify comment * remove list-captions class from in-page toc styles * Update tests/test_build.py * Update src/pydata_sphinx_theme/toctree.py Co-authored-by: Tania Allard * update test for verbose HTML boolean attribute * more HTML boolean attribute notation updates * Update comment about link vs non-link HTML structure --------- Co-authored-by: Daniel McCloy Co-authored-by: Tania Allard * Independently style "Switch to stable version" link (#1721) * Independently style switch to stable version link * hover and focus * docs and css cleanup * Use focus ring Sass variables * text-wrap class * Update docs/user_guide/web-components.rst Co-authored-by: Tania Allard * Update docs/user_guide/web-components.rst Co-authored-by: Tania Allard * Update src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js Co-authored-by: Tania Allard * Update src/pydata_sphinx_theme/assets/styles/sections/_announcement.scss Co-authored-by: Tania Allard * use var --pst-color-danger-text --------- Co-authored-by: Tania Allard * Ensure old test files are removed * Run pre-commit * Add to the accessibility support section of the docs (#1730) * add entry to the docs * Apply suggestions from code review Co-authored-by: Daniel McCloy --------- Co-authored-by: Tania Allard Co-authored-by: Daniel McCloy * Feature focus review fixes (#1736) * fix search bar hover * fix overlapping focus and hover rings on More dropdown toggle * point chevron up * fix translations * conf.py fixes * Revert changes to horizontal spacing in header nav (#1738) * revert changes to horizontal spacing in header nav * keep outline offset at 3px * set Codecov verbose flag to true (#1743) --------- Signed-off-by: dependabot[bot] Co-authored-by: gabalafou Co-authored-by: Daniel McCloy Co-authored-by: Rambaud Pierrick <12rambau@users.noreply.github.com> Co-authored-by: gresavage Co-authored-by: tgresavage Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Ned Batchelder Co-authored-by: Adam Porter Co-authored-by: Denis Bitouzé Co-authored-by: Stuart Mumford Co-authored-by: Alenka Frim Co-authored-by: Harutaka Kawamura Co-authored-by: jourlez Co-authored-by: Chris Holdgraf Co-authored-by: Angus Hollands Co-authored-by: Sebastiaan Huber Co-authored-by: Peyton Murray Co-authored-by: Joris Van den Bossche Co-authored-by: Michael Wisely <108433848+michael-wisely-gravwell@users.noreply.github.com> Co-authored-by: Michael Weinold <23102087+michaelweinold@users.noreply.github.com> Co-authored-by: Philipp A Co-authored-by: Colin Marquardt Co-authored-by: Pierre Marchand Co-authored-by: Yao Xiao <108576690+Charlie-XIAO@users.noreply.github.com> Co-authored-by: Charles Co-authored-by: David Stansby --- .github/workflows/tests.yml | 1 + babel.cfg | 3 +- docs/_static/pydata-icon.js | 16 ++ docs/_static/pydata-logo.png | Bin 1900 -> 0 bytes docs/conf.py | 12 +- docs/examples/gallery.md | 4 +- docs/index.md | 8 +- docs/user_guide/accessibility.md | 8 + docs/user_guide/styling.rst | 24 +-- docs/user_guide/web-components.rst | 27 ++- src/pydata_sphinx_theme/__init__.py | 12 ++ .../assets/scripts/pydata-sphinx-theme.js | 86 ++++++++- .../assets/styles/abstracts/_links.scss | 98 ++++++++++- .../assets/styles/base/_base.scss | 30 ++++ .../assets/styles/components/_icon-links.scss | 9 + .../styles/components/_navbar-links.scss | 26 --- .../assets/styles/components/_search.scss | 19 +- .../styles/components/_switcher-theme.scss | 17 +- .../styles/components/_switcher-version.scss | 13 +- .../assets/styles/components/_toc-inpage.scss | 7 +- .../assets/styles/content/_admonitions.scss | 5 +- .../assets/styles/extensions/_copybutton.scss | 9 + .../styles/extensions/_sphinx_design.scss | 99 +++++++++-- .../styles/extensions/_togglebutton.scss | 71 ++++++++ .../assets/styles/sections/_announcement.scss | 25 +++ .../assets/styles/sections/_header.scss | 41 +++-- .../styles/sections/_sidebar-primary.scss | 165 +++++++++++++----- .../styles/sections/_sidebar-toggle.scss | 14 +- .../assets/styles/sections/_skip-link.scss | 20 ++- .../assets/styles/variables/_bootstrap.scss | 13 ++ .../assets/styles/variables/_layout.scss | 4 + .../locale/ca/LC_MESSAGES/sphinx.po | 38 ++-- .../locale/cs/LC_MESSAGES/sphinx.po | 39 +++-- .../locale/en/LC_MESSAGES/sphinx.po | 27 ++- .../locale/es/LC_MESSAGES/sphinx.po | 42 +++-- .../locale/fr/LC_MESSAGES/sphinx.po | 39 +++-- .../locale/ru/LC_MESSAGES/sphinx.po | 25 ++- src/pydata_sphinx_theme/locale/sphinx.pot | 28 +-- .../theme/pydata_sphinx_theme/layout.html | 14 +- .../pydata_sphinx_theme/sections/header.html | 8 +- src/pydata_sphinx_theme/toctree.py | 129 +++++++++----- tests/test_build.py | 23 +-- tests/test_build/math_header_item.html | 2 +- tests/test_build/navbar_ix.html | 8 +- tests/test_build/sidebar_subpage.html | 8 +- .../test_navbar_no_in_page_headers.html | 4 +- tests/test_build/test_sidebars_captions.html | 37 ++-- .../test_build/test_sidebars_nested_page.html | 37 ++-- 48 files changed, 1031 insertions(+), 363 deletions(-) create mode 100644 docs/_static/pydata-icon.js delete mode 100644 docs/_static/pydata-logo.png diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b32f6964cc..c8381aa897 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -97,6 +97,7 @@ jobs: uses: codecov/codecov-action@v4 with: fail_ci_if_error: true + verbose: true env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/babel.cfg b/babel.cfg index 6d040b9b98..c835a5d514 100644 --- a/babel.cfg +++ b/babel.cfg @@ -1,4 +1,5 @@ -# See https://github.com/sphinx-doc/sphinx/blob/6.1.x/babel.cfg +# See https://github.com/python-babel/babel/blob/2a1709a7768f6f07c3d2dbfdb03d3c8a6bd80aef/docs/messages.rst#extraction-method-mapping-and-configuration +[python: **.py] [jinja2: **.html] encoding = utf-8 ignore_tags = script,style diff --git a/docs/_static/pydata-icon.js b/docs/_static/pydata-icon.js new file mode 100644 index 0000000000..d111ec8348 --- /dev/null +++ b/docs/_static/pydata-icon.js @@ -0,0 +1,16 @@ +/******************************************************************************* + * Set a custom icon for PyData + */ +FontAwesome.library.add( + (faListOldStyle = { + prefix: "fa-custom", + iconName: "pydata", + icon: [ + 24, // viewBox width + 24, // viewBox height + [], // ligature + "e002", // unicode codepoint - private use area + "M12.1,17.8v5.8l-5-2.9v-5.8L12.1,17.8z M12.1,12v5.8l-5-2.9V9.1L12.1,12z M17,9.1L12.1,12v5.8l4.9-2.9V9.1z M12.1,6.2L7,9.1l5,2.9L17,9.1L12.1,6.2z M17,9.1V3.3l-4.9-2.8v5.8L17,9.1z", + ], + }) +); diff --git a/docs/_static/pydata-logo.png b/docs/_static/pydata-logo.png deleted file mode 100644 index bfdf323b971b3e0852ff1d8189c8d08c88557cce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1900 zcmV-y2b1`TP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGqB>(^xB>_oNB=7(L2LVY$K~!i%%~@$| zR81kWGS^pvYEBYlMJd5s`?IT@XTnNJLOT)D)vp8UZ6J zHVDQ9E&h;Q5J8Ya_q{XiOlLaNnfE;R&3jUY>CpE&uka;b=id9yUCuk-+{RS#sK5)Nicmn16)fD zG#U-)k7&_-XxV^j(hc%Lr-eSIA2>@rnzm)Z^jRKwd#l$zO4uXP5qHxQh$ z9E}?XqUFHrqCxj0*CW!p3p6ow0njB3Mtk`=)UQcI%Qwrw;>X^u67-O?2vlU%J4i9m z1{k1E7zAhODb&3c4abd>LO;3eVQFU`~y4cz>kj3mTnRkcay#EiaVd zZ7g5xA!*SHJ*3nbC3qXl7kflnyu%8<-FoLM_cMA#T0xo5!!RrduA09AmxJ1GOUaWG zyp83HDoIOR4Z%{h5zU1Q5jG_saa*gQ?>iLE+H2sP4zi;S_(7GH`waos;*U|kHU;*} zMQ~PKLjCGQn2&Bkc+PIbZK;4hJ`JvhYaoxrp524r(|GIe1+X650&TBoXoAAURyTNu z4K8CTLME<4uklO4a~wy{%d0t~iO`(gQU zJ!QI)q5~ZS?*ZOnA%`jvN{bE|yBIE06`H@C3upORgy(*OpvPtia*+e&jxY()2fJ&S z4=;x%AXsq1mjj;QDFU3i4xv*vBRK0NILgj~r<2_k05UGci{DUaLtv%;_eOFGF$7w zx0w->w+AsR&)}jf8B-R$f!|J@6>a1}k+d$?nvnbTuLz`DpObc;ol{3++(Xeo`Drxl zUkDAI5!%o=7Cy0u1Rfm8h{wp)^dj*@ix$!T4a>IAp{a z;JR=K#&1{AQyyWHH^A`tY&fX4@x9$Rf8{C?)w`y_LQN;HNXs(K%x@hRj&*oDc|gx{srk$2g5 ziEf8I=e-vdNsCPYxa*=N%~7yTQsGNjYb`+kp|8894sMUc8b$O=$O=vny04 zEs8?O`meC!=xNN)dKe`uvN3s3GX803fz9a>tvZ7S?M^3dR#YN=Kz|(j{3E>fa*pss zT9gtfk`~)e)8ixXM@0jY-#v(RKcB;zahWJxnT@gid*fQ88Eq~OTDJF!V0~TGR#sJw zetnZrRIm%n=g;|nOoop0$fe=~k(CW}il@g$;6zCcQnww%_Ts;gKXDjtt(b`sNzu4c zM~Nb3Kpds^mDRO~2n$2uj;&a?WC0zH`n$&N4*i;IG0D|X;<)Uo3@jNr7!HzIaalc* z`Bn;}9%=nj1Uojdzu~v+we5Gaxs`z$kA z=~^pPIwiAXCJY_NP=m6i#h4x+i9eUVfS>>^%1y0saoin}lE`eyB>|pe_?wEP#X2U_ z_F6P&A`az^rF*&tRdf)t|D@b6$d;Bw2}62EX*& mctVQM$5~5U&2=E`uwdr!olnl@S0000

- primary - secondary - accent - success - info - warning - danger - background - on-background - surface - on-surface - target + primary + secondary + accent + success + info + warning + danger + background + on-background + surface + on-surface + target

diff --git a/docs/user_guide/web-components.rst b/docs/user_guide/web-components.rst index 8527d5e200..4df92256dd 100644 --- a/docs/user_guide/web-components.rst +++ b/docs/user_guide/web-components.rst @@ -4,16 +4,31 @@ Sphinx Design Components ======================== -The PyData Sphinx Theme uses `sphinx-design `__ -to add several UI components and provide extra flexibility for content creation. -These include badges, buttons, cards, and tabs, among other components. -This theme provides custom CSS to ensure that `sphinx-design `__ elements look and feel consistent with this theme. +On this page, you will find user interface components such as badges, buttons, +cards, and tabs. + +The components on this page are **not provided by PyData Theme**. They are +provided by `Sphinx Design _` (a Sphinx extension). This means that if you wish +to use the components on this page, you must install Sphinx Design separately and add it to your `conf.py`. .. seealso:: - For more information about how to use these extensions, see `the sphinx-design documentation `_. + To add the Sphinx Design extension to your Sphinx project, refer to `Sphinx + Design - Getting Started + `_. + +Contributors to both projects have worked to ensure compatible styling so that +Sphinx Design components look and feel consistent with the PyData Theme. + +This page shows you how the Sphinx Design components would look on your site if +you were to use them in combination with the PyData Theme. Sphinx Design also +provides a `PyData-themed version of the Sphinx Design site +`__; however, their site +use an older version of this theme. -Below you can find some examples of the components created with the :code:`sphinx-design` extension. +Any customizations you make to the theme could affect how these components +appear on your site. So what you see on this page might not match exactly what +you see on your site even if your site uses this theme. .. _badges-buttons: diff --git a/src/pydata_sphinx_theme/__init__.py b/src/pydata_sphinx_theme/__init__.py index f2d2271303..77ab0dc11f 100644 --- a/src/pydata_sphinx_theme/__init__.py +++ b/src/pydata_sphinx_theme/__init__.py @@ -194,6 +194,18 @@ def update_and_remove_templates( if asset_path == theme_css_name: del context["css_files"][i] break + # Add links for favicons in the topbar + for favicon in context.get("theme_favicons", []): + icon_type = Path(favicon["href"]).suffix.strip(".") + opts = { + "rel": favicon.get("rel", "icon"), + "sizes": favicon.get("sizes", "16x16"), + "type": f"image/{icon_type}", + } + if "color" in favicon: + opts["color"] = favicon["color"] + # Sphinx will auto-resolve href if it's a local file + app.add_css_file(favicon["href"], **opts) # Add metadata to DOCUMENTATION_OPTIONS so that we can re-use later # Pagename to current page diff --git a/src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js b/src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js index 0dcc6ae423..e151945509 100644 --- a/src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js +++ b/src/pydata_sphinx_theme/assets/scripts/pydata-sphinx-theme.js @@ -489,7 +489,7 @@ function showVersionWarningBanner(data) { middle.classList = "bd-header-announcement__content"; inner.classList = "sidebar-message"; button.classList = - "sd-btn sd-btn-danger sd-shadow-sm sd-text-wrap font-weight-bold ms-3 my-1 align-baseline"; + "btn text-wrap font-weight-bold ms-3 my-1 align-baseline pst-button-link-to-stable-version"; button.href = `${preferredURL}${DOCUMENTATION_OPTIONS.pagename}.html`; button.innerText = "Switch to stable version"; button.onclick = checkPageExistsAndRedirect; @@ -609,6 +609,89 @@ function fixMoreLinksInMobileSidebar() { } } +/******************************************************************************* + * Add keyboard functionality to mobile sidebars. + * + * Wire up the hamburger-style buttons using the click event which (on buttons) + * handles both mouse clicks and the space and enter keys. + */ +function setupMobileSidebarKeyboardHandlers() { + // These are hidden checkboxes at the top of the page whose :checked property + // allows the mobile sidebars to be hidden or revealed via CSS. + const primaryToggle = document.getElementById("pst-primary-sidebar-checkbox"); + const secondaryToggle = document.getElementById( + "pst-secondary-sidebar-checkbox" + ); + const primarySidebar = document.querySelector(".bd-sidebar-primary"); + const secondarySidebar = document.querySelector(".bd-sidebar-secondary"); + + // Toggle buttons - + // + // These are the hamburger-style buttons in the header nav bar. When the user + // clicks, the button transmits the click to the hidden checkboxes used by the + // CSS to control whether the sidebar is open or closed. + const primaryClickTransmitter = document.querySelector(".primary-toggle"); + const secondaryClickTransmitter = document.querySelector(".secondary-toggle"); + [ + [primaryClickTransmitter, primaryToggle, primarySidebar], + [secondaryClickTransmitter, secondaryToggle, secondarySidebar], + ].forEach(([clickTransmitter, toggle, sidebar]) => { + if (!clickTransmitter) { + return; + } + clickTransmitter.addEventListener("click", (event) => { + event.preventDefault(); + event.stopPropagation(); + toggle.checked = !toggle.checked; + + // If we are opening the sidebar, move focus to the first focusable item + // in the sidebar + if (toggle.checked) { + // Note: this selector is not exhaustive, and we may need to update it + // in the future + const tabStop = sidebar.querySelector("a, button"); + // use setTimeout because you cannot move focus synchronously during a + // click in the handler for the click event + setTimeout(() => tabStop.focus(), 100); + } + }); + }); + + // Escape key - + // + // When sidebar is open, user should be able to press escape key to close the + // sidebar. + [ + [primarySidebar, primaryToggle, primaryClickTransmitter], + [secondarySidebar, secondaryToggle, secondaryClickTransmitter], + ].forEach(([sidebar, toggle, transmitter]) => { + if (!sidebar) { + return; + } + sidebar.addEventListener("keydown", (event) => { + if (event.key === "Escape") { + event.preventDefault(); + event.stopPropagation(); + toggle.checked = false; + transmitter.focus(); + } + }); + }); + + // When the