From be34c2b62bc035d0c562c418ffcfdb501da5c138 Mon Sep 17 00:00:00 2001 From: Jawed khelil Date: Wed, 11 Mar 2026 12:32:27 +0100 Subject: [PATCH 01/23] add link on the code contribution page to the main documentation section --- content/en/community/_index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/en/community/_index.md b/content/en/community/_index.md index 0a373591..ae4cb29f 100644 --- a/content/en/community/_index.md +++ b/content/en/community/_index.md @@ -7,3 +7,5 @@ menu: Find more information on the [Tekton Community repository](https://github.com/tektoncd/community). + +For technical documentation, see the [Tekton Docs](/docs/). From 3672d2e1441fbb9fdaad22d5420fc70a688de1ae Mon Sep 17 00:00:00 2001 From: Jawed khelil Date: Mon, 30 Mar 2026 20:27:48 +0200 Subject: [PATCH 02/23] Migrate theme from Docsy to Hextra for modern doc UX MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace the stock Docsy v0.6.0 theme with Hextra v0.12.0 to gain collapsible sidebar navigation, sticky right-hand TOC, FlexSearch with Ctrl+K, dark mode toggle, and breadcrumbs — all built-in with zero custom code. - Swap Hugo module from google/docsy to imfing/hextra - Bump Hugo from 0.107.0 to 0.134.0+ (Hextra minimum) - Delete 20 Docsy-specific layouts (sidebar, navbar, baseof, search, footer, head, scripts, favicons, privacy-notice, etc.) - Add shortcode compatibility shims for readfile, imgproc, tabs, blocks/*, pageinfo, alert, and card - Convert home page from .html to .md (Hextra TOC compatibility) - Remove duplicate menu entries from docs/blog front matter - Fix deprecated taxonomyTerm and language-level description config - Port version selector to Hextra custom head-end partial - Replace Docsy SCSS (181 lines) with Hextra CSS custom properties using Tekton brand colors (#00109F navy, #B980D0 purple) - Port community page layout from Bootstrap grid to plain CSS grid - Drop PostCSS devDependencies no longer needed by Hextra - Update Dockerfile base image to hugomods/hugo:exts-0.134.0 Verified: hugo build succeeds (585 pages, 0 errors). Made-with: Cursor --- Dockerfile | 2 +- assets/css/asciinema-player.css | 2563 ----------------- assets/css/custom.css | 35 + assets/js/anchor.js | 49 - assets/js/click-to-copy.js | 86 - assets/scss/_styles_project.scss | 181 -- assets/scss/_variables_project.scss | 18 - config.yaml | 104 +- content/en/{_index.html => _index.md} | 0 content/en/blog/_index.md | 3 - content/en/community/_index.md | 8 +- content/en/docs/_index.md | 3 - ...026-03-30-hextra-theme-migration-design.md | 238 ++ go.mod | 7 +- go.sum | 21 +- layouts/404.html | 8 - .../_markup/render-codeblock-mermaid.html | 5 - layouts/_default/baseof.html | 24 - layouts/_default/search.html | 24 - layouts/_partials/custom/footer.html | 4 + layouts/_partials/custom/head-end.html | 131 + layouts/community/list.html | 21 +- layouts/docs/baseof.html | 35 - layouts/partials/community-links.html | 90 +- layouts/partials/favicons.html | 9 - layouts/partials/footer.html | 38 - layouts/partials/head.html | 24 - .../navbar-version-selector-docs.html | 19 - .../navbar-version-selector-vault.html | 21 - layouts/partials/navbar.html | 42 - layouts/partials/page-meta-links.html | 26 - layouts/partials/privacy-notice.html | 21 - layouts/partials/release-selector.html | 20 - layouts/partials/scripts.html | 30 - layouts/partials/sidebar-tree-docs.html | 68 - layouts/partials/sidebar-tree-vault.html | 76 - layouts/partials/sidebar.html | 31 - layouts/partials/tutorial-modal.html | 34 - layouts/shortcodes/alert.html | 19 + layouts/shortcodes/blocks/feature.html | 8 + layouts/shortcodes/blocks/section.html | 8 + layouts/shortcodes/card.html | 4 + layouts/shortcodes/imgproc.html | 11 + layouts/shortcodes/pageinfo.html | 4 + layouts/shortcodes/readfile.html | 9 + layouts/shortcodes/tutorial.html | 11 +- netlify.toml | 2 +- package.json | 5 +- 48 files changed, 598 insertions(+), 3602 deletions(-) delete mode 100644 assets/css/asciinema-player.css create mode 100644 assets/css/custom.css delete mode 100644 assets/js/anchor.js delete mode 100644 assets/js/click-to-copy.js delete mode 100644 assets/scss/_styles_project.scss delete mode 100644 assets/scss/_variables_project.scss rename content/en/{_index.html => _index.md} (100%) create mode 100644 docs/plans/2026-03-30-hextra-theme-migration-design.md delete mode 100644 layouts/404.html delete mode 100644 layouts/_default/_markup/render-codeblock-mermaid.html delete mode 100644 layouts/_default/baseof.html delete mode 100644 layouts/_default/search.html create mode 100644 layouts/_partials/custom/footer.html create mode 100644 layouts/_partials/custom/head-end.html delete mode 100644 layouts/docs/baseof.html delete mode 100644 layouts/partials/favicons.html delete mode 100644 layouts/partials/footer.html delete mode 100644 layouts/partials/head.html delete mode 100644 layouts/partials/navbar-version-selector-docs.html delete mode 100644 layouts/partials/navbar-version-selector-vault.html delete mode 100644 layouts/partials/navbar.html delete mode 100644 layouts/partials/page-meta-links.html delete mode 100644 layouts/partials/privacy-notice.html delete mode 100644 layouts/partials/release-selector.html delete mode 100644 layouts/partials/scripts.html delete mode 100644 layouts/partials/sidebar-tree-docs.html delete mode 100644 layouts/partials/sidebar-tree-vault.html delete mode 100644 layouts/partials/sidebar.html delete mode 100644 layouts/partials/tutorial-modal.html create mode 100644 layouts/shortcodes/alert.html create mode 100644 layouts/shortcodes/blocks/feature.html create mode 100644 layouts/shortcodes/blocks/section.html create mode 100644 layouts/shortcodes/card.html create mode 100644 layouts/shortcodes/imgproc.html create mode 100644 layouts/shortcodes/pageinfo.html create mode 100644 layouts/shortcodes/readfile.html diff --git a/Dockerfile b/Dockerfile index eb644fd2..7784c577 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM klakegg/hugo:0.107.0-ext-ubuntu as website +FROM hugomods/hugo:exts-0.134.0 as website RUN apt-get -y update && apt-get -y install git build-essential python3-venv python3-pip COPY . /src RUN git config --global --add safe.directory /src diff --git a/assets/css/asciinema-player.css b/assets/css/asciinema-player.css deleted file mode 100644 index 8d77df46..00000000 --- a/assets/css/asciinema-player.css +++ /dev/null @@ -1,2563 +0,0 @@ -.asciinema-player-wrapper { - position: relative; - text-align: center; - outline: none; -} -.asciinema-player-wrapper .title-bar { - display: none; - top: -78px; - transition: top 0.15s linear; - position: absolute; - left: 0; - right: 0; - box-sizing: content-box; - font-size: 20px; - line-height: 1em; - padding: 15px; - font-family: sans-serif; - color: white; - background-color: rgba(0, 0, 0, 0.8); -} -.asciinema-player-wrapper .title-bar img { - vertical-align: middle; - height: 48px; - margin-right: 16px; -} -.asciinema-player-wrapper .title-bar a { - color: white; - text-decoration: underline; -} -.asciinema-player-wrapper .title-bar a:hover { - text-decoration: none; -} -.asciinema-player-wrapper:fullscreen { - background-color: #000; - width: 100%; - height: 100%; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: center; - align-items: center; -} -.asciinema-player-wrapper:fullscreen .asciinema-player { - position: static; -} -.asciinema-player-wrapper:fullscreen .title-bar { - display: initial; -} -.asciinema-player-wrapper:fullscreen.hud .title-bar { - top: 0; -} -.asciinema-player-wrapper:-webkit-full-screen { - background-color: #000; - width: 100%; - height: 100%; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: center; - align-items: center; -} -.asciinema-player-wrapper:-webkit-full-screen .asciinema-player { - position: static; -} -.asciinema-player-wrapper:-webkit-full-screen .title-bar { - display: initial; -} -.asciinema-player-wrapper:-webkit-full-screen.hud .title-bar { - top: 0; -} -.asciinema-player-wrapper:-moz-full-screen { - background-color: #000; - width: 100%; - height: 100%; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: center; - align-items: center; -} -.asciinema-player-wrapper:-moz-full-screen .asciinema-player { - position: static; -} -.asciinema-player-wrapper:-moz-full-screen .title-bar { - display: initial; -} -.asciinema-player-wrapper:-moz-full-screen.hud .title-bar { - top: 0; -} -.asciinema-player-wrapper:-ms-fullscreen { - background-color: #000; - width: 100%; - height: 100%; - display: -webkit-flex; - display: -ms-flexbox; - display: flex; - -webkit-justify-content: center; - justify-content: center; - -webkit-align-items: center; - align-items: center; -} -.asciinema-player-wrapper:-ms-fullscreen .asciinema-player { - position: static; -} -.asciinema-player-wrapper:-ms-fullscreen .title-bar { - display: initial; -} -.asciinema-player-wrapper:-ms-fullscreen.hud .title-bar { - top: 0; -} -.asciinema-player-wrapper .asciinema-player { - text-align: left; - display: inline-block; - padding: 0px; - position: relative; - box-sizing: content-box; - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; - overflow: hidden; - max-width: 100%; -} -.asciinema-terminal { - box-sizing: content-box; - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; - overflow: hidden; - padding: 0; - margin: 0px; - display: block; - white-space: pre; - border: 0; - word-wrap: normal; - word-break: normal; - border-radius: 0; - border-style: solid; - cursor: text; - border-width: 0.5em; - font-family: Consolas, Menlo, 'Bitstream Vera Sans Mono', monospace, 'Powerline Symbols'; - line-height: 1.3333333333em; -} -.asciinema-terminal .line { - letter-spacing: normal; - overflow: hidden; - height: 1.3333333333em; -} -.asciinema-terminal .line span { - padding: 0; - display: inline-block; - height: 1.3333333333em; -} -.asciinema-terminal .line { - display: block; - width: 200%; -} -.asciinema-terminal .bright { - font-weight: bold; -} -.asciinema-terminal .underline { - text-decoration: underline; -} -.asciinema-terminal .italic { - font-style: italic; -} -.asciinema-terminal.font-small { - font-size: 12px; -} -.asciinema-terminal.font-medium { - font-size: 18px; -} -.asciinema-terminal.font-big { - font-size: 24px; -} -.asciinema-player .control-bar { - width: 100%; - height: 32px; - background: rgba(0, 0, 0, 0.8); - /* no gradient fallback */ - background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, #000000 25%, #000000 100%); - /* FF3.6-15 */ - background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5) 0%, #000000 25%, #000000 100%); - /* Chrome10-25,Safari5.1-6 */ - background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, #000000 25%, #000000 100%); - /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ - color: #bbbbbb; - box-sizing: content-box; - line-height: 1; - position: absolute; - bottom: -35px; - left: 0; - transition: bottom 0.15s linear; -} -.asciinema-player .control-bar * { - box-sizing: inherit; - font-size: 0; -} -.asciinema-player .control-bar svg.icon path { - fill: #bbbbbb; -} -.asciinema-player .control-bar .playback-button { - display: block; - float: left; - cursor: pointer; - height: 12px; - width: 12px; - padding: 10px; -} -.asciinema-player .control-bar .playback-button svg { - height: 12px; - width: 12px; -} -.asciinema-player .control-bar .timer { - display: block; - float: left; - width: 50px; - height: 100%; - text-align: center; - font-family: Helvetica, Arial, sans-serif; - font-size: 11px; - font-weight: bold; - line-height: 32px; - cursor: default; -} -.asciinema-player .control-bar .timer span { - display: inline-block; - font-size: inherit; -} -.asciinema-player .control-bar .timer .time-remaining { - display: none; -} -.asciinema-player .control-bar .timer:hover .time-elapsed { - display: none; -} -.asciinema-player .control-bar .timer:hover .time-remaining { - display: inline; -} -.asciinema-player .control-bar .progressbar { - display: block; - overflow: hidden; - height: 100%; - padding: 0 10px; -} -.asciinema-player .control-bar .progressbar .bar { - display: block; - cursor: pointer; - height: 100%; - padding-top: 15px; - font-size: 0; -} -.asciinema-player .control-bar .progressbar .bar .gutter { - display: block; - height: 3px; - background-color: #333; -} -.asciinema-player .control-bar .progressbar .bar .gutter span { - display: inline-block; - height: 100%; - background-color: #bbbbbb; - border-radius: 3px; -} -.asciinema-player .control-bar.live .progressbar .bar { - cursor: default; -} -.asciinema-player .control-bar .fullscreen-button { - display: block; - float: right; - width: 14px; - height: 14px; - padding: 9px; - cursor: pointer; -} -.asciinema-player .control-bar .fullscreen-button svg { - width: 14px; - height: 14px; -} -.asciinema-player .control-bar .fullscreen-button svg:first-child { - display: inline; -} -.asciinema-player .control-bar .fullscreen-button svg:last-child { - display: none; -} -.asciinema-player-wrapper.hud .control-bar { - bottom: 0px; -} -.asciinema-player-wrapper:fullscreen .fullscreen-button svg:first-child { - display: none; -} -.asciinema-player-wrapper:fullscreen .fullscreen-button svg:last-child { - display: inline; -} -.asciinema-player-wrapper:-webkit-full-screen .fullscreen-button svg:first-child { - display: none; -} -.asciinema-player-wrapper:-webkit-full-screen .fullscreen-button svg:last-child { - display: inline; -} -.asciinema-player-wrapper:-moz-full-screen .fullscreen-button svg:first-child { - display: none; -} -.asciinema-player-wrapper:-moz-full-screen .fullscreen-button svg:last-child { - display: inline; -} -.asciinema-player-wrapper:-ms-fullscreen .fullscreen-button svg:first-child { - display: none; -} -.asciinema-player-wrapper:-ms-fullscreen .fullscreen-button svg:last-child { - display: inline; -} -.asciinema-player .loading { - z-index: 10; - background-repeat: no-repeat; - background-position: center; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 32px; - background-color: rgba(0, 0, 0, 0.5); -} -.asciinema-player .start-prompt { - z-index: 10; - background-repeat: no-repeat; - background-position: center; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 32px; - z-index: 20; - cursor: pointer; -} -.asciinema-player .start-prompt .play-button { - font-size: 0px; -} -.asciinema-player .start-prompt .play-button { - position: absolute; - left: 0; - top: 0; - right: 0; - bottom: 0; - text-align: center; - color: white; - display: table; - width: 100%; - height: 100%; -} -.asciinema-player .start-prompt .play-button div { - vertical-align: middle; - display: table-cell; -} -.asciinema-player .start-prompt .play-button div span { - width: 96px; - height: 96px; - display: inline-block; -} -@-webkit-keyframes expand { - 0% { - -webkit-transform: scale(0); - } - 50% { - -webkit-transform: scale(1); - } - 100% { - z-index: 1; - } -} -@-moz-keyframes expand { - 0% { - -moz-transform: scale(0); - } - 50% { - -moz-transform: scale(1); - } - 100% { - z-index: 1; - } -} -@-o-keyframes expand { - 0% { - -o-transform: scale(0); - } - 50% { - -o-transform: scale(1); - } - 100% { - z-index: 1; - } -} -@keyframes expand { - 0% { - transform: scale(0); - } - 50% { - transform: scale(1); - } - 100% { - z-index: 1; - } -} -.loader { - position: absolute; - left: 50%; - top: 50%; - margin: -20px 0 0 -20px; - background-color: white; - border-radius: 50%; - box-shadow: 0 0 0 6.66667px #141414; - width: 40px; - height: 40px; -} -.loader:before, -.loader:after { - content: ""; - position: absolute; - left: 50%; - top: 50%; - display: block; - margin: -21px 0 0 -21px; - border-radius: 50%; - z-index: 2; - width: 42px; - height: 42px; -} -.loader:before { - background-color: #141414; - -webkit-animation: expand 1.6s linear infinite both; - -moz-animation: expand 1.6s linear infinite both; - animation: expand 1.6s linear infinite both; -} -.loader:after { - background-color: white; - -webkit-animation: expand 1.6s linear 0.8s infinite both; - -moz-animation: expand 1.6s linear 0.8s infinite both; - animation: expand 1.6s linear 0.8s infinite both; -} -.asciinema-terminal .fg-16 { - color: #000000; -} -.asciinema-terminal .bg-16 { - background-color: #000000; -} -.asciinema-terminal .fg-17 { - color: #00005f; -} -.asciinema-terminal .bg-17 { - background-color: #00005f; -} -.asciinema-terminal .fg-18 { - color: #000087; -} -.asciinema-terminal .bg-18 { - background-color: #000087; -} -.asciinema-terminal .fg-19 { - color: #0000af; -} -.asciinema-terminal .bg-19 { - background-color: #0000af; -} -.asciinema-terminal .fg-20 { - color: #0000d7; -} -.asciinema-terminal .bg-20 { - background-color: #0000d7; -} -.asciinema-terminal .fg-21 { - color: #0000ff; -} -.asciinema-terminal .bg-21 { - background-color: #0000ff; -} -.asciinema-terminal .fg-22 { - color: #005f00; -} -.asciinema-terminal .bg-22 { - background-color: #005f00; -} -.asciinema-terminal .fg-23 { - color: #005f5f; -} -.asciinema-terminal .bg-23 { - background-color: #005f5f; -} -.asciinema-terminal .fg-24 { - color: #005f87; -} -.asciinema-terminal .bg-24 { - background-color: #005f87; -} -.asciinema-terminal .fg-25 { - color: #005faf; -} -.asciinema-terminal .bg-25 { - background-color: #005faf; -} -.asciinema-terminal .fg-26 { - color: #005fd7; -} -.asciinema-terminal .bg-26 { - background-color: #005fd7; -} -.asciinema-terminal .fg-27 { - color: #005fff; -} -.asciinema-terminal .bg-27 { - background-color: #005fff; -} -.asciinema-terminal .fg-28 { - color: #008700; -} -.asciinema-terminal .bg-28 { - background-color: #008700; -} -.asciinema-terminal .fg-29 { - color: #00875f; -} -.asciinema-terminal .bg-29 { - background-color: #00875f; -} -.asciinema-terminal .fg-30 { - color: #008787; -} -.asciinema-terminal .bg-30 { - background-color: #008787; -} -.asciinema-terminal .fg-31 { - color: #0087af; -} -.asciinema-terminal .bg-31 { - background-color: #0087af; -} -.asciinema-terminal .fg-32 { - color: #0087d7; -} -.asciinema-terminal .bg-32 { - background-color: #0087d7; -} -.asciinema-terminal .fg-33 { - color: #0087ff; -} -.asciinema-terminal .bg-33 { - background-color: #0087ff; -} -.asciinema-terminal .fg-34 { - color: #00af00; -} -.asciinema-terminal .bg-34 { - background-color: #00af00; -} -.asciinema-terminal .fg-35 { - color: #00af5f; -} -.asciinema-terminal .bg-35 { - background-color: #00af5f; -} -.asciinema-terminal .fg-36 { - color: #00af87; -} -.asciinema-terminal .bg-36 { - background-color: #00af87; -} -.asciinema-terminal .fg-37 { - color: #00afaf; -} -.asciinema-terminal .bg-37 { - background-color: #00afaf; -} -.asciinema-terminal .fg-38 { - color: #00afd7; -} -.asciinema-terminal .bg-38 { - background-color: #00afd7; -} -.asciinema-terminal .fg-39 { - color: #00afff; -} -.asciinema-terminal .bg-39 { - background-color: #00afff; -} -.asciinema-terminal .fg-40 { - color: #00d700; -} -.asciinema-terminal .bg-40 { - background-color: #00d700; -} -.asciinema-terminal .fg-41 { - color: #00d75f; -} -.asciinema-terminal .bg-41 { - background-color: #00d75f; -} -.asciinema-terminal .fg-42 { - color: #00d787; -} -.asciinema-terminal .bg-42 { - background-color: #00d787; -} -.asciinema-terminal .fg-43 { - color: #00d7af; -} -.asciinema-terminal .bg-43 { - background-color: #00d7af; -} -.asciinema-terminal .fg-44 { - color: #00d7d7; -} -.asciinema-terminal .bg-44 { - background-color: #00d7d7; -} -.asciinema-terminal .fg-45 { - color: #00d7ff; -} -.asciinema-terminal .bg-45 { - background-color: #00d7ff; -} -.asciinema-terminal .fg-46 { - color: #00ff00; -} -.asciinema-terminal .bg-46 { - background-color: #00ff00; -} -.asciinema-terminal .fg-47 { - color: #00ff5f; -} -.asciinema-terminal .bg-47 { - background-color: #00ff5f; -} -.asciinema-terminal .fg-48 { - color: #00ff87; -} -.asciinema-terminal .bg-48 { - background-color: #00ff87; -} -.asciinema-terminal .fg-49 { - color: #00ffaf; -} -.asciinema-terminal .bg-49 { - background-color: #00ffaf; -} -.asciinema-terminal .fg-50 { - color: #00ffd7; -} -.asciinema-terminal .bg-50 { - background-color: #00ffd7; -} -.asciinema-terminal .fg-51 { - color: #00ffff; -} -.asciinema-terminal .bg-51 { - background-color: #00ffff; -} -.asciinema-terminal .fg-52 { - color: #5f0000; -} -.asciinema-terminal .bg-52 { - background-color: #5f0000; -} -.asciinema-terminal .fg-53 { - color: #5f005f; -} -.asciinema-terminal .bg-53 { - background-color: #5f005f; -} -.asciinema-terminal .fg-54 { - color: #5f0087; -} -.asciinema-terminal .bg-54 { - background-color: #5f0087; -} -.asciinema-terminal .fg-55 { - color: #5f00af; -} -.asciinema-terminal .bg-55 { - background-color: #5f00af; -} -.asciinema-terminal .fg-56 { - color: #5f00d7; -} -.asciinema-terminal .bg-56 { - background-color: #5f00d7; -} -.asciinema-terminal .fg-57 { - color: #5f00ff; -} -.asciinema-terminal .bg-57 { - background-color: #5f00ff; -} -.asciinema-terminal .fg-58 { - color: #5f5f00; -} -.asciinema-terminal .bg-58 { - background-color: #5f5f00; -} -.asciinema-terminal .fg-59 { - color: #5f5f5f; -} -.asciinema-terminal .bg-59 { - background-color: #5f5f5f; -} -.asciinema-terminal .fg-60 { - color: #5f5f87; -} -.asciinema-terminal .bg-60 { - background-color: #5f5f87; -} -.asciinema-terminal .fg-61 { - color: #5f5faf; -} -.asciinema-terminal .bg-61 { - background-color: #5f5faf; -} -.asciinema-terminal .fg-62 { - color: #5f5fd7; -} -.asciinema-terminal .bg-62 { - background-color: #5f5fd7; -} -.asciinema-terminal .fg-63 { - color: #5f5fff; -} -.asciinema-terminal .bg-63 { - background-color: #5f5fff; -} -.asciinema-terminal .fg-64 { - color: #5f8700; -} -.asciinema-terminal .bg-64 { - background-color: #5f8700; -} -.asciinema-terminal .fg-65 { - color: #5f875f; -} -.asciinema-terminal .bg-65 { - background-color: #5f875f; -} -.asciinema-terminal .fg-66 { - color: #5f8787; -} -.asciinema-terminal .bg-66 { - background-color: #5f8787; -} -.asciinema-terminal .fg-67 { - color: #5f87af; -} -.asciinema-terminal .bg-67 { - background-color: #5f87af; -} -.asciinema-terminal .fg-68 { - color: #5f87d7; -} -.asciinema-terminal .bg-68 { - background-color: #5f87d7; -} -.asciinema-terminal .fg-69 { - color: #5f87ff; -} -.asciinema-terminal .bg-69 { - background-color: #5f87ff; -} -.asciinema-terminal .fg-70 { - color: #5faf00; -} -.asciinema-terminal .bg-70 { - background-color: #5faf00; -} -.asciinema-terminal .fg-71 { - color: #5faf5f; -} -.asciinema-terminal .bg-71 { - background-color: #5faf5f; -} -.asciinema-terminal .fg-72 { - color: #5faf87; -} -.asciinema-terminal .bg-72 { - background-color: #5faf87; -} -.asciinema-terminal .fg-73 { - color: #5fafaf; -} -.asciinema-terminal .bg-73 { - background-color: #5fafaf; -} -.asciinema-terminal .fg-74 { - color: #5fafd7; -} -.asciinema-terminal .bg-74 { - background-color: #5fafd7; -} -.asciinema-terminal .fg-75 { - color: #5fafff; -} -.asciinema-terminal .bg-75 { - background-color: #5fafff; -} -.asciinema-terminal .fg-76 { - color: #5fd700; -} -.asciinema-terminal .bg-76 { - background-color: #5fd700; -} -.asciinema-terminal .fg-77 { - color: #5fd75f; -} -.asciinema-terminal .bg-77 { - background-color: #5fd75f; -} -.asciinema-terminal .fg-78 { - color: #5fd787; -} -.asciinema-terminal .bg-78 { - background-color: #5fd787; -} -.asciinema-terminal .fg-79 { - color: #5fd7af; -} -.asciinema-terminal .bg-79 { - background-color: #5fd7af; -} -.asciinema-terminal .fg-80 { - color: #5fd7d7; -} -.asciinema-terminal .bg-80 { - background-color: #5fd7d7; -} -.asciinema-terminal .fg-81 { - color: #5fd7ff; -} -.asciinema-terminal .bg-81 { - background-color: #5fd7ff; -} -.asciinema-terminal .fg-82 { - color: #5fff00; -} -.asciinema-terminal .bg-82 { - background-color: #5fff00; -} -.asciinema-terminal .fg-83 { - color: #5fff5f; -} -.asciinema-terminal .bg-83 { - background-color: #5fff5f; -} -.asciinema-terminal .fg-84 { - color: #5fff87; -} -.asciinema-terminal .bg-84 { - background-color: #5fff87; -} -.asciinema-terminal .fg-85 { - color: #5fffaf; -} -.asciinema-terminal .bg-85 { - background-color: #5fffaf; -} -.asciinema-terminal .fg-86 { - color: #5fffd7; -} -.asciinema-terminal .bg-86 { - background-color: #5fffd7; -} -.asciinema-terminal .fg-87 { - color: #5fffff; -} -.asciinema-terminal .bg-87 { - background-color: #5fffff; -} -.asciinema-terminal .fg-88 { - color: #870000; -} -.asciinema-terminal .bg-88 { - background-color: #870000; -} -.asciinema-terminal .fg-89 { - color: #87005f; -} -.asciinema-terminal .bg-89 { - background-color: #87005f; -} -.asciinema-terminal .fg-90 { - color: #870087; -} -.asciinema-terminal .bg-90 { - background-color: #870087; -} -.asciinema-terminal .fg-91 { - color: #8700af; -} -.asciinema-terminal .bg-91 { - background-color: #8700af; -} -.asciinema-terminal .fg-92 { - color: #8700d7; -} -.asciinema-terminal .bg-92 { - background-color: #8700d7; -} -.asciinema-terminal .fg-93 { - color: #8700ff; -} -.asciinema-terminal .bg-93 { - background-color: #8700ff; -} -.asciinema-terminal .fg-94 { - color: #875f00; -} -.asciinema-terminal .bg-94 { - background-color: #875f00; -} -.asciinema-terminal .fg-95 { - color: #875f5f; -} -.asciinema-terminal .bg-95 { - background-color: #875f5f; -} -.asciinema-terminal .fg-96 { - color: #875f87; -} -.asciinema-terminal .bg-96 { - background-color: #875f87; -} -.asciinema-terminal .fg-97 { - color: #875faf; -} -.asciinema-terminal .bg-97 { - background-color: #875faf; -} -.asciinema-terminal .fg-98 { - color: #875fd7; -} -.asciinema-terminal .bg-98 { - background-color: #875fd7; -} -.asciinema-terminal .fg-99 { - color: #875fff; -} -.asciinema-terminal .bg-99 { - background-color: #875fff; -} -.asciinema-terminal .fg-100 { - color: #878700; -} -.asciinema-terminal .bg-100 { - background-color: #878700; -} -.asciinema-terminal .fg-101 { - color: #87875f; -} -.asciinema-terminal .bg-101 { - background-color: #87875f; -} -.asciinema-terminal .fg-102 { - color: #878787; -} -.asciinema-terminal .bg-102 { - background-color: #878787; -} -.asciinema-terminal .fg-103 { - color: #8787af; -} -.asciinema-terminal .bg-103 { - background-color: #8787af; -} -.asciinema-terminal .fg-104 { - color: #8787d7; -} -.asciinema-terminal .bg-104 { - background-color: #8787d7; -} -.asciinema-terminal .fg-105 { - color: #8787ff; -} -.asciinema-terminal .bg-105 { - background-color: #8787ff; -} -.asciinema-terminal .fg-106 { - color: #87af00; -} -.asciinema-terminal .bg-106 { - background-color: #87af00; -} -.asciinema-terminal .fg-107 { - color: #87af5f; -} -.asciinema-terminal .bg-107 { - background-color: #87af5f; -} -.asciinema-terminal .fg-108 { - color: #87af87; -} -.asciinema-terminal .bg-108 { - background-color: #87af87; -} -.asciinema-terminal .fg-109 { - color: #87afaf; -} -.asciinema-terminal .bg-109 { - background-color: #87afaf; -} -.asciinema-terminal .fg-110 { - color: #87afd7; -} -.asciinema-terminal .bg-110 { - background-color: #87afd7; -} -.asciinema-terminal .fg-111 { - color: #87afff; -} -.asciinema-terminal .bg-111 { - background-color: #87afff; -} -.asciinema-terminal .fg-112 { - color: #87d700; -} -.asciinema-terminal .bg-112 { - background-color: #87d700; -} -.asciinema-terminal .fg-113 { - color: #87d75f; -} -.asciinema-terminal .bg-113 { - background-color: #87d75f; -} -.asciinema-terminal .fg-114 { - color: #87d787; -} -.asciinema-terminal .bg-114 { - background-color: #87d787; -} -.asciinema-terminal .fg-115 { - color: #87d7af; -} -.asciinema-terminal .bg-115 { - background-color: #87d7af; -} -.asciinema-terminal .fg-116 { - color: #87d7d7; -} -.asciinema-terminal .bg-116 { - background-color: #87d7d7; -} -.asciinema-terminal .fg-117 { - color: #87d7ff; -} -.asciinema-terminal .bg-117 { - background-color: #87d7ff; -} -.asciinema-terminal .fg-118 { - color: #87ff00; -} -.asciinema-terminal .bg-118 { - background-color: #87ff00; -} -.asciinema-terminal .fg-119 { - color: #87ff5f; -} -.asciinema-terminal .bg-119 { - background-color: #87ff5f; -} -.asciinema-terminal .fg-120 { - color: #87ff87; -} -.asciinema-terminal .bg-120 { - background-color: #87ff87; -} -.asciinema-terminal .fg-121 { - color: #87ffaf; -} -.asciinema-terminal .bg-121 { - background-color: #87ffaf; -} -.asciinema-terminal .fg-122 { - color: #87ffd7; -} -.asciinema-terminal .bg-122 { - background-color: #87ffd7; -} -.asciinema-terminal .fg-123 { - color: #87ffff; -} -.asciinema-terminal .bg-123 { - background-color: #87ffff; -} -.asciinema-terminal .fg-124 { - color: #af0000; -} -.asciinema-terminal .bg-124 { - background-color: #af0000; -} -.asciinema-terminal .fg-125 { - color: #af005f; -} -.asciinema-terminal .bg-125 { - background-color: #af005f; -} -.asciinema-terminal .fg-126 { - color: #af0087; -} -.asciinema-terminal .bg-126 { - background-color: #af0087; -} -.asciinema-terminal .fg-127 { - color: #af00af; -} -.asciinema-terminal .bg-127 { - background-color: #af00af; -} -.asciinema-terminal .fg-128 { - color: #af00d7; -} -.asciinema-terminal .bg-128 { - background-color: #af00d7; -} -.asciinema-terminal .fg-129 { - color: #af00ff; -} -.asciinema-terminal .bg-129 { - background-color: #af00ff; -} -.asciinema-terminal .fg-130 { - color: #af5f00; -} -.asciinema-terminal .bg-130 { - background-color: #af5f00; -} -.asciinema-terminal .fg-131 { - color: #af5f5f; -} -.asciinema-terminal .bg-131 { - background-color: #af5f5f; -} -.asciinema-terminal .fg-132 { - color: #af5f87; -} -.asciinema-terminal .bg-132 { - background-color: #af5f87; -} -.asciinema-terminal .fg-133 { - color: #af5faf; -} -.asciinema-terminal .bg-133 { - background-color: #af5faf; -} -.asciinema-terminal .fg-134 { - color: #af5fd7; -} -.asciinema-terminal .bg-134 { - background-color: #af5fd7; -} -.asciinema-terminal .fg-135 { - color: #af5fff; -} -.asciinema-terminal .bg-135 { - background-color: #af5fff; -} -.asciinema-terminal .fg-136 { - color: #af8700; -} -.asciinema-terminal .bg-136 { - background-color: #af8700; -} -.asciinema-terminal .fg-137 { - color: #af875f; -} -.asciinema-terminal .bg-137 { - background-color: #af875f; -} -.asciinema-terminal .fg-138 { - color: #af8787; -} -.asciinema-terminal .bg-138 { - background-color: #af8787; -} -.asciinema-terminal .fg-139 { - color: #af87af; -} -.asciinema-terminal .bg-139 { - background-color: #af87af; -} -.asciinema-terminal .fg-140 { - color: #af87d7; -} -.asciinema-terminal .bg-140 { - background-color: #af87d7; -} -.asciinema-terminal .fg-141 { - color: #af87ff; -} -.asciinema-terminal .bg-141 { - background-color: #af87ff; -} -.asciinema-terminal .fg-142 { - color: #afaf00; -} -.asciinema-terminal .bg-142 { - background-color: #afaf00; -} -.asciinema-terminal .fg-143 { - color: #afaf5f; -} -.asciinema-terminal .bg-143 { - background-color: #afaf5f; -} -.asciinema-terminal .fg-144 { - color: #afaf87; -} -.asciinema-terminal .bg-144 { - background-color: #afaf87; -} -.asciinema-terminal .fg-145 { - color: #afafaf; -} -.asciinema-terminal .bg-145 { - background-color: #afafaf; -} -.asciinema-terminal .fg-146 { - color: #afafd7; -} -.asciinema-terminal .bg-146 { - background-color: #afafd7; -} -.asciinema-terminal .fg-147 { - color: #afafff; -} -.asciinema-terminal .bg-147 { - background-color: #afafff; -} -.asciinema-terminal .fg-148 { - color: #afd700; -} -.asciinema-terminal .bg-148 { - background-color: #afd700; -} -.asciinema-terminal .fg-149 { - color: #afd75f; -} -.asciinema-terminal .bg-149 { - background-color: #afd75f; -} -.asciinema-terminal .fg-150 { - color: #afd787; -} -.asciinema-terminal .bg-150 { - background-color: #afd787; -} -.asciinema-terminal .fg-151 { - color: #afd7af; -} -.asciinema-terminal .bg-151 { - background-color: #afd7af; -} -.asciinema-terminal .fg-152 { - color: #afd7d7; -} -.asciinema-terminal .bg-152 { - background-color: #afd7d7; -} -.asciinema-terminal .fg-153 { - color: #afd7ff; -} -.asciinema-terminal .bg-153 { - background-color: #afd7ff; -} -.asciinema-terminal .fg-154 { - color: #afff00; -} -.asciinema-terminal .bg-154 { - background-color: #afff00; -} -.asciinema-terminal .fg-155 { - color: #afff5f; -} -.asciinema-terminal .bg-155 { - background-color: #afff5f; -} -.asciinema-terminal .fg-156 { - color: #afff87; -} -.asciinema-terminal .bg-156 { - background-color: #afff87; -} -.asciinema-terminal .fg-157 { - color: #afffaf; -} -.asciinema-terminal .bg-157 { - background-color: #afffaf; -} -.asciinema-terminal .fg-158 { - color: #afffd7; -} -.asciinema-terminal .bg-158 { - background-color: #afffd7; -} -.asciinema-terminal .fg-159 { - color: #afffff; -} -.asciinema-terminal .bg-159 { - background-color: #afffff; -} -.asciinema-terminal .fg-160 { - color: #d70000; -} -.asciinema-terminal .bg-160 { - background-color: #d70000; -} -.asciinema-terminal .fg-161 { - color: #d7005f; -} -.asciinema-terminal .bg-161 { - background-color: #d7005f; -} -.asciinema-terminal .fg-162 { - color: #d70087; -} -.asciinema-terminal .bg-162 { - background-color: #d70087; -} -.asciinema-terminal .fg-163 { - color: #d700af; -} -.asciinema-terminal .bg-163 { - background-color: #d700af; -} -.asciinema-terminal .fg-164 { - color: #d700d7; -} -.asciinema-terminal .bg-164 { - background-color: #d700d7; -} -.asciinema-terminal .fg-165 { - color: #d700ff; -} -.asciinema-terminal .bg-165 { - background-color: #d700ff; -} -.asciinema-terminal .fg-166 { - color: #d75f00; -} -.asciinema-terminal .bg-166 { - background-color: #d75f00; -} -.asciinema-terminal .fg-167 { - color: #d75f5f; -} -.asciinema-terminal .bg-167 { - background-color: #d75f5f; -} -.asciinema-terminal .fg-168 { - color: #d75f87; -} -.asciinema-terminal .bg-168 { - background-color: #d75f87; -} -.asciinema-terminal .fg-169 { - color: #d75faf; -} -.asciinema-terminal .bg-169 { - background-color: #d75faf; -} -.asciinema-terminal .fg-170 { - color: #d75fd7; -} -.asciinema-terminal .bg-170 { - background-color: #d75fd7; -} -.asciinema-terminal .fg-171 { - color: #d75fff; -} -.asciinema-terminal .bg-171 { - background-color: #d75fff; -} -.asciinema-terminal .fg-172 { - color: #d78700; -} -.asciinema-terminal .bg-172 { - background-color: #d78700; -} -.asciinema-terminal .fg-173 { - color: #d7875f; -} -.asciinema-terminal .bg-173 { - background-color: #d7875f; -} -.asciinema-terminal .fg-174 { - color: #d78787; -} -.asciinema-terminal .bg-174 { - background-color: #d78787; -} -.asciinema-terminal .fg-175 { - color: #d787af; -} -.asciinema-terminal .bg-175 { - background-color: #d787af; -} -.asciinema-terminal .fg-176 { - color: #d787d7; -} -.asciinema-terminal .bg-176 { - background-color: #d787d7; -} -.asciinema-terminal .fg-177 { - color: #d787ff; -} -.asciinema-terminal .bg-177 { - background-color: #d787ff; -} -.asciinema-terminal .fg-178 { - color: #d7af00; -} -.asciinema-terminal .bg-178 { - background-color: #d7af00; -} -.asciinema-terminal .fg-179 { - color: #d7af5f; -} -.asciinema-terminal .bg-179 { - background-color: #d7af5f; -} -.asciinema-terminal .fg-180 { - color: #d7af87; -} -.asciinema-terminal .bg-180 { - background-color: #d7af87; -} -.asciinema-terminal .fg-181 { - color: #d7afaf; -} -.asciinema-terminal .bg-181 { - background-color: #d7afaf; -} -.asciinema-terminal .fg-182 { - color: #d7afd7; -} -.asciinema-terminal .bg-182 { - background-color: #d7afd7; -} -.asciinema-terminal .fg-183 { - color: #d7afff; -} -.asciinema-terminal .bg-183 { - background-color: #d7afff; -} -.asciinema-terminal .fg-184 { - color: #d7d700; -} -.asciinema-terminal .bg-184 { - background-color: #d7d700; -} -.asciinema-terminal .fg-185 { - color: #d7d75f; -} -.asciinema-terminal .bg-185 { - background-color: #d7d75f; -} -.asciinema-terminal .fg-186 { - color: #d7d787; -} -.asciinema-terminal .bg-186 { - background-color: #d7d787; -} -.asciinema-terminal .fg-187 { - color: #d7d7af; -} -.asciinema-terminal .bg-187 { - background-color: #d7d7af; -} -.asciinema-terminal .fg-188 { - color: #d7d7d7; -} -.asciinema-terminal .bg-188 { - background-color: #d7d7d7; -} -.asciinema-terminal .fg-189 { - color: #d7d7ff; -} -.asciinema-terminal .bg-189 { - background-color: #d7d7ff; -} -.asciinema-terminal .fg-190 { - color: #d7ff00; -} -.asciinema-terminal .bg-190 { - background-color: #d7ff00; -} -.asciinema-terminal .fg-191 { - color: #d7ff5f; -} -.asciinema-terminal .bg-191 { - background-color: #d7ff5f; -} -.asciinema-terminal .fg-192 { - color: #d7ff87; -} -.asciinema-terminal .bg-192 { - background-color: #d7ff87; -} -.asciinema-terminal .fg-193 { - color: #d7ffaf; -} -.asciinema-terminal .bg-193 { - background-color: #d7ffaf; -} -.asciinema-terminal .fg-194 { - color: #d7ffd7; -} -.asciinema-terminal .bg-194 { - background-color: #d7ffd7; -} -.asciinema-terminal .fg-195 { - color: #d7ffff; -} -.asciinema-terminal .bg-195 { - background-color: #d7ffff; -} -.asciinema-terminal .fg-196 { - color: #ff0000; -} -.asciinema-terminal .bg-196 { - background-color: #ff0000; -} -.asciinema-terminal .fg-197 { - color: #ff005f; -} -.asciinema-terminal .bg-197 { - background-color: #ff005f; -} -.asciinema-terminal .fg-198 { - color: #ff0087; -} -.asciinema-terminal .bg-198 { - background-color: #ff0087; -} -.asciinema-terminal .fg-199 { - color: #ff00af; -} -.asciinema-terminal .bg-199 { - background-color: #ff00af; -} -.asciinema-terminal .fg-200 { - color: #ff00d7; -} -.asciinema-terminal .bg-200 { - background-color: #ff00d7; -} -.asciinema-terminal .fg-201 { - color: #ff00ff; -} -.asciinema-terminal .bg-201 { - background-color: #ff00ff; -} -.asciinema-terminal .fg-202 { - color: #ff5f00; -} -.asciinema-terminal .bg-202 { - background-color: #ff5f00; -} -.asciinema-terminal .fg-203 { - color: #ff5f5f; -} -.asciinema-terminal .bg-203 { - background-color: #ff5f5f; -} -.asciinema-terminal .fg-204 { - color: #ff5f87; -} -.asciinema-terminal .bg-204 { - background-color: #ff5f87; -} -.asciinema-terminal .fg-205 { - color: #ff5faf; -} -.asciinema-terminal .bg-205 { - background-color: #ff5faf; -} -.asciinema-terminal .fg-206 { - color: #ff5fd7; -} -.asciinema-terminal .bg-206 { - background-color: #ff5fd7; -} -.asciinema-terminal .fg-207 { - color: #ff5fff; -} -.asciinema-terminal .bg-207 { - background-color: #ff5fff; -} -.asciinema-terminal .fg-208 { - color: #ff8700; -} -.asciinema-terminal .bg-208 { - background-color: #ff8700; -} -.asciinema-terminal .fg-209 { - color: #ff875f; -} -.asciinema-terminal .bg-209 { - background-color: #ff875f; -} -.asciinema-terminal .fg-210 { - color: #ff8787; -} -.asciinema-terminal .bg-210 { - background-color: #ff8787; -} -.asciinema-terminal .fg-211 { - color: #ff87af; -} -.asciinema-terminal .bg-211 { - background-color: #ff87af; -} -.asciinema-terminal .fg-212 { - color: #ff87d7; -} -.asciinema-terminal .bg-212 { - background-color: #ff87d7; -} -.asciinema-terminal .fg-213 { - color: #ff87ff; -} -.asciinema-terminal .bg-213 { - background-color: #ff87ff; -} -.asciinema-terminal .fg-214 { - color: #ffaf00; -} -.asciinema-terminal .bg-214 { - background-color: #ffaf00; -} -.asciinema-terminal .fg-215 { - color: #ffaf5f; -} -.asciinema-terminal .bg-215 { - background-color: #ffaf5f; -} -.asciinema-terminal .fg-216 { - color: #ffaf87; -} -.asciinema-terminal .bg-216 { - background-color: #ffaf87; -} -.asciinema-terminal .fg-217 { - color: #ffafaf; -} -.asciinema-terminal .bg-217 { - background-color: #ffafaf; -} -.asciinema-terminal .fg-218 { - color: #ffafd7; -} -.asciinema-terminal .bg-218 { - background-color: #ffafd7; -} -.asciinema-terminal .fg-219 { - color: #ffafff; -} -.asciinema-terminal .bg-219 { - background-color: #ffafff; -} -.asciinema-terminal .fg-220 { - color: #ffd700; -} -.asciinema-terminal .bg-220 { - background-color: #ffd700; -} -.asciinema-terminal .fg-221 { - color: #ffd75f; -} -.asciinema-terminal .bg-221 { - background-color: #ffd75f; -} -.asciinema-terminal .fg-222 { - color: #ffd787; -} -.asciinema-terminal .bg-222 { - background-color: #ffd787; -} -.asciinema-terminal .fg-223 { - color: #ffd7af; -} -.asciinema-terminal .bg-223 { - background-color: #ffd7af; -} -.asciinema-terminal .fg-224 { - color: #ffd7d7; -} -.asciinema-terminal .bg-224 { - background-color: #ffd7d7; -} -.asciinema-terminal .fg-225 { - color: #ffd7ff; -} -.asciinema-terminal .bg-225 { - background-color: #ffd7ff; -} -.asciinema-terminal .fg-226 { - color: #ffff00; -} -.asciinema-terminal .bg-226 { - background-color: #ffff00; -} -.asciinema-terminal .fg-227 { - color: #ffff5f; -} -.asciinema-terminal .bg-227 { - background-color: #ffff5f; -} -.asciinema-terminal .fg-228 { - color: #ffff87; -} -.asciinema-terminal .bg-228 { - background-color: #ffff87; -} -.asciinema-terminal .fg-229 { - color: #ffffaf; -} -.asciinema-terminal .bg-229 { - background-color: #ffffaf; -} -.asciinema-terminal .fg-230 { - color: #ffffd7; -} -.asciinema-terminal .bg-230 { - background-color: #ffffd7; -} -.asciinema-terminal .fg-231 { - color: #ffffff; -} -.asciinema-terminal .bg-231 { - background-color: #ffffff; -} -.asciinema-terminal .fg-232 { - color: #080808; -} -.asciinema-terminal .bg-232 { - background-color: #080808; -} -.asciinema-terminal .fg-233 { - color: #121212; -} -.asciinema-terminal .bg-233 { - background-color: #121212; -} -.asciinema-terminal .fg-234 { - color: #1c1c1c; -} -.asciinema-terminal .bg-234 { - background-color: #1c1c1c; -} -.asciinema-terminal .fg-235 { - color: #262626; -} -.asciinema-terminal .bg-235 { - background-color: #262626; -} -.asciinema-terminal .fg-236 { - color: #303030; -} -.asciinema-terminal .bg-236 { - background-color: #303030; -} -.asciinema-terminal .fg-237 { - color: #3a3a3a; -} -.asciinema-terminal .bg-237 { - background-color: #3a3a3a; -} -.asciinema-terminal .fg-238 { - color: #444444; -} -.asciinema-terminal .bg-238 { - background-color: #444444; -} -.asciinema-terminal .fg-239 { - color: #4e4e4e; -} -.asciinema-terminal .bg-239 { - background-color: #4e4e4e; -} -.asciinema-terminal .fg-240 { - color: #585858; -} -.asciinema-terminal .bg-240 { - background-color: #585858; -} -.asciinema-terminal .fg-241 { - color: #626262; -} -.asciinema-terminal .bg-241 { - background-color: #626262; -} -.asciinema-terminal .fg-242 { - color: #6c6c6c; -} -.asciinema-terminal .bg-242 { - background-color: #6c6c6c; -} -.asciinema-terminal .fg-243 { - color: #767676; -} -.asciinema-terminal .bg-243 { - background-color: #767676; -} -.asciinema-terminal .fg-244 { - color: #808080; -} -.asciinema-terminal .bg-244 { - background-color: #808080; -} -.asciinema-terminal .fg-245 { - color: #8a8a8a; -} -.asciinema-terminal .bg-245 { - background-color: #8a8a8a; -} -.asciinema-terminal .fg-246 { - color: #949494; -} -.asciinema-terminal .bg-246 { - background-color: #949494; -} -.asciinema-terminal .fg-247 { - color: #9e9e9e; -} -.asciinema-terminal .bg-247 { - background-color: #9e9e9e; -} -.asciinema-terminal .fg-248 { - color: #a8a8a8; -} -.asciinema-terminal .bg-248 { - background-color: #a8a8a8; -} -.asciinema-terminal .fg-249 { - color: #b2b2b2; -} -.asciinema-terminal .bg-249 { - background-color: #b2b2b2; -} -.asciinema-terminal .fg-250 { - color: #bcbcbc; -} -.asciinema-terminal .bg-250 { - background-color: #bcbcbc; -} -.asciinema-terminal .fg-251 { - color: #c6c6c6; -} -.asciinema-terminal .bg-251 { - background-color: #c6c6c6; -} -.asciinema-terminal .fg-252 { - color: #d0d0d0; -} -.asciinema-terminal .bg-252 { - background-color: #d0d0d0; -} -.asciinema-terminal .fg-253 { - color: #dadada; -} -.asciinema-terminal .bg-253 { - background-color: #dadada; -} -.asciinema-terminal .fg-254 { - color: #e4e4e4; -} -.asciinema-terminal .bg-254 { - background-color: #e4e4e4; -} -.asciinema-terminal .fg-255 { - color: #eeeeee; -} -.asciinema-terminal .bg-255 { - background-color: #eeeeee; -} -.asciinema-theme-asciinema .asciinema-terminal { - color: #cccccc; - background-color: #121314; - border-color: #121314; -} -.asciinema-theme-asciinema .fg-bg { - color: #121314; -} -.asciinema-theme-asciinema .bg-fg { - background-color: #cccccc; -} -.asciinema-theme-asciinema .fg-0 { - color: #000000; -} -.asciinema-theme-asciinema .bg-0 { - background-color: #000000; -} -.asciinema-theme-asciinema .fg-1 { - color: #dd3c69; -} -.asciinema-theme-asciinema .bg-1 { - background-color: #dd3c69; -} -.asciinema-theme-asciinema .fg-2 { - color: #4ebf22; -} -.asciinema-theme-asciinema .bg-2 { - background-color: #4ebf22; -} -.asciinema-theme-asciinema .fg-3 { - color: #ddaf3c; -} -.asciinema-theme-asciinema .bg-3 { - background-color: #ddaf3c; -} -.asciinema-theme-asciinema .fg-4 { - color: #26b0d7; -} -.asciinema-theme-asciinema .bg-4 { - background-color: #26b0d7; -} -.asciinema-theme-asciinema .fg-5 { - color: #b954e1; -} -.asciinema-theme-asciinema .bg-5 { - background-color: #b954e1; -} -.asciinema-theme-asciinema .fg-6 { - color: #54e1b9; -} -.asciinema-theme-asciinema .bg-6 { - background-color: #54e1b9; -} -.asciinema-theme-asciinema .fg-7 { - color: #d9d9d9; -} -.asciinema-theme-asciinema .bg-7 { - background-color: #d9d9d9; -} -.asciinema-theme-asciinema .fg-8 { - color: #4d4d4d; -} -.asciinema-theme-asciinema .bg-8 { - background-color: #4d4d4d; -} -.asciinema-theme-asciinema .fg-9 { - color: #dd3c69; -} -.asciinema-theme-asciinema .bg-9 { - background-color: #dd3c69; -} -.asciinema-theme-asciinema .fg-10 { - color: #4ebf22; -} -.asciinema-theme-asciinema .bg-10 { - background-color: #4ebf22; -} -.asciinema-theme-asciinema .fg-11 { - color: #ddaf3c; -} -.asciinema-theme-asciinema .bg-11 { - background-color: #ddaf3c; -} -.asciinema-theme-asciinema .fg-12 { - color: #26b0d7; -} -.asciinema-theme-asciinema .bg-12 { - background-color: #26b0d7; -} -.asciinema-theme-asciinema .fg-13 { - color: #b954e1; -} -.asciinema-theme-asciinema .bg-13 { - background-color: #b954e1; -} -.asciinema-theme-asciinema .fg-14 { - color: #54e1b9; -} -.asciinema-theme-asciinema .bg-14 { - background-color: #54e1b9; -} -.asciinema-theme-asciinema .fg-15 { - color: #ffffff; -} -.asciinema-theme-asciinema .bg-15 { - background-color: #ffffff; -} -.asciinema-theme-asciinema .fg-8, -.asciinema-theme-asciinema .fg-9, -.asciinema-theme-asciinema .fg-10, -.asciinema-theme-asciinema .fg-11, -.asciinema-theme-asciinema .fg-12, -.asciinema-theme-asciinema .fg-13, -.asciinema-theme-asciinema .fg-14, -.asciinema-theme-asciinema .fg-15 { - font-weight: bold; -} -.asciinema-theme-tango .asciinema-terminal { - color: #cccccc; - background-color: #121314; - border-color: #121314; -} -.asciinema-theme-tango .fg-bg { - color: #121314; -} -.asciinema-theme-tango .bg-fg { - background-color: #cccccc; -} -.asciinema-theme-tango .fg-0 { - color: #000000; -} -.asciinema-theme-tango .bg-0 { - background-color: #000000; -} -.asciinema-theme-tango .fg-1 { - color: #cc0000; -} -.asciinema-theme-tango .bg-1 { - background-color: #cc0000; -} -.asciinema-theme-tango .fg-2 { - color: #4e9a06; -} -.asciinema-theme-tango .bg-2 { - background-color: #4e9a06; -} -.asciinema-theme-tango .fg-3 { - color: #c4a000; -} -.asciinema-theme-tango .bg-3 { - background-color: #c4a000; -} -.asciinema-theme-tango .fg-4 { - color: #3465a4; -} -.asciinema-theme-tango .bg-4 { - background-color: #3465a4; -} -.asciinema-theme-tango .fg-5 { - color: #75507b; -} -.asciinema-theme-tango .bg-5 { - background-color: #75507b; -} -.asciinema-theme-tango .fg-6 { - color: #06989a; -} -.asciinema-theme-tango .bg-6 { - background-color: #06989a; -} -.asciinema-theme-tango .fg-7 { - color: #d3d7cf; -} -.asciinema-theme-tango .bg-7 { - background-color: #d3d7cf; -} -.asciinema-theme-tango .fg-8 { - color: #555753; -} -.asciinema-theme-tango .bg-8 { - background-color: #555753; -} -.asciinema-theme-tango .fg-9 { - color: #ef2929; -} -.asciinema-theme-tango .bg-9 { - background-color: #ef2929; -} -.asciinema-theme-tango .fg-10 { - color: #8ae234; -} -.asciinema-theme-tango .bg-10 { - background-color: #8ae234; -} -.asciinema-theme-tango .fg-11 { - color: #fce94f; -} -.asciinema-theme-tango .bg-11 { - background-color: #fce94f; -} -.asciinema-theme-tango .fg-12 { - color: #729fcf; -} -.asciinema-theme-tango .bg-12 { - background-color: #729fcf; -} -.asciinema-theme-tango .fg-13 { - color: #ad7fa8; -} -.asciinema-theme-tango .bg-13 { - background-color: #ad7fa8; -} -.asciinema-theme-tango .fg-14 { - color: #34e2e2; -} -.asciinema-theme-tango .bg-14 { - background-color: #34e2e2; -} -.asciinema-theme-tango .fg-15 { - color: #eeeeec; -} -.asciinema-theme-tango .bg-15 { - background-color: #eeeeec; -} -.asciinema-theme-tango .fg-8, -.asciinema-theme-tango .fg-9, -.asciinema-theme-tango .fg-10, -.asciinema-theme-tango .fg-11, -.asciinema-theme-tango .fg-12, -.asciinema-theme-tango .fg-13, -.asciinema-theme-tango .fg-14, -.asciinema-theme-tango .fg-15 { - font-weight: bold; -} -.asciinema-theme-solarized-dark .asciinema-terminal { - color: #839496; - background-color: #002b36; - border-color: #002b36; -} -.asciinema-theme-solarized-dark .fg-bg { - color: #002b36; -} -.asciinema-theme-solarized-dark .bg-fg { - background-color: #839496; -} -.asciinema-theme-solarized-dark .fg-0 { - color: #073642; -} -.asciinema-theme-solarized-dark .bg-0 { - background-color: #073642; -} -.asciinema-theme-solarized-dark .fg-1 { - color: #dc322f; -} -.asciinema-theme-solarized-dark .bg-1 { - background-color: #dc322f; -} -.asciinema-theme-solarized-dark .fg-2 { - color: #859900; -} -.asciinema-theme-solarized-dark .bg-2 { - background-color: #859900; -} -.asciinema-theme-solarized-dark .fg-3 { - color: #b58900; -} -.asciinema-theme-solarized-dark .bg-3 { - background-color: #b58900; -} -.asciinema-theme-solarized-dark .fg-4 { - color: #268bd2; -} -.asciinema-theme-solarized-dark .bg-4 { - background-color: #268bd2; -} -.asciinema-theme-solarized-dark .fg-5 { - color: #d33682; -} -.asciinema-theme-solarized-dark .bg-5 { - background-color: #d33682; -} -.asciinema-theme-solarized-dark .fg-6 { - color: #2aa198; -} -.asciinema-theme-solarized-dark .bg-6 { - background-color: #2aa198; -} -.asciinema-theme-solarized-dark .fg-7 { - color: #eee8d5; -} -.asciinema-theme-solarized-dark .bg-7 { - background-color: #eee8d5; -} -.asciinema-theme-solarized-dark .fg-8 { - color: #002b36; -} -.asciinema-theme-solarized-dark .bg-8 { - background-color: #002b36; -} -.asciinema-theme-solarized-dark .fg-9 { - color: #cb4b16; -} -.asciinema-theme-solarized-dark .bg-9 { - background-color: #cb4b16; -} -.asciinema-theme-solarized-dark .fg-10 { - color: #586e75; -} -.asciinema-theme-solarized-dark .bg-10 { - background-color: #586e75; -} -.asciinema-theme-solarized-dark .fg-11 { - color: #657b83; -} -.asciinema-theme-solarized-dark .bg-11 { - background-color: #657b83; -} -.asciinema-theme-solarized-dark .fg-12 { - color: #839496; -} -.asciinema-theme-solarized-dark .bg-12 { - background-color: #839496; -} -.asciinema-theme-solarized-dark .fg-13 { - color: #6c71c4; -} -.asciinema-theme-solarized-dark .bg-13 { - background-color: #6c71c4; -} -.asciinema-theme-solarized-dark .fg-14 { - color: #93a1a1; -} -.asciinema-theme-solarized-dark .bg-14 { - background-color: #93a1a1; -} -.asciinema-theme-solarized-dark .fg-15 { - color: #fdf6e3; -} -.asciinema-theme-solarized-dark .bg-15 { - background-color: #fdf6e3; -} -.asciinema-theme-solarized-light .asciinema-terminal { - color: #657b83; - background-color: #fdf6e3; - border-color: #fdf6e3; -} -.asciinema-theme-solarized-light .fg-bg { - color: #fdf6e3; -} -.asciinema-theme-solarized-light .bg-fg { - background-color: #657b83; -} -.asciinema-theme-solarized-light .fg-0 { - color: #073642; -} -.asciinema-theme-solarized-light .bg-0 { - background-color: #073642; -} -.asciinema-theme-solarized-light .fg-1 { - color: #dc322f; -} -.asciinema-theme-solarized-light .bg-1 { - background-color: #dc322f; -} -.asciinema-theme-solarized-light .fg-2 { - color: #859900; -} -.asciinema-theme-solarized-light .bg-2 { - background-color: #859900; -} -.asciinema-theme-solarized-light .fg-3 { - color: #b58900; -} -.asciinema-theme-solarized-light .bg-3 { - background-color: #b58900; -} -.asciinema-theme-solarized-light .fg-4 { - color: #268bd2; -} -.asciinema-theme-solarized-light .bg-4 { - background-color: #268bd2; -} -.asciinema-theme-solarized-light .fg-5 { - color: #d33682; -} -.asciinema-theme-solarized-light .bg-5 { - background-color: #d33682; -} -.asciinema-theme-solarized-light .fg-6 { - color: #2aa198; -} -.asciinema-theme-solarized-light .bg-6 { - background-color: #2aa198; -} -.asciinema-theme-solarized-light .fg-7 { - color: #eee8d5; -} -.asciinema-theme-solarized-light .bg-7 { - background-color: #eee8d5; -} -.asciinema-theme-solarized-light .fg-8 { - color: #002b36; -} -.asciinema-theme-solarized-light .bg-8 { - background-color: #002b36; -} -.asciinema-theme-solarized-light .fg-9 { - color: #cb4b16; -} -.asciinema-theme-solarized-light .bg-9 { - background-color: #cb4b16; -} -.asciinema-theme-solarized-light .fg-10 { - color: #586e75; -} -.asciinema-theme-solarized-light .bg-10 { - background-color: #586e75; -} -.asciinema-theme-solarized-light .fg-11 { - color: #657c83; -} -.asciinema-theme-solarized-light .bg-11 { - background-color: #657c83; -} -.asciinema-theme-solarized-light .fg-12 { - color: #839496; -} -.asciinema-theme-solarized-light .bg-12 { - background-color: #839496; -} -.asciinema-theme-solarized-light .fg-13 { - color: #6c71c4; -} -.asciinema-theme-solarized-light .bg-13 { - background-color: #6c71c4; -} -.asciinema-theme-solarized-light .fg-14 { - color: #93a1a1; -} -.asciinema-theme-solarized-light .bg-14 { - background-color: #93a1a1; -} -.asciinema-theme-solarized-light .fg-15 { - color: #fdf6e3; -} -.asciinema-theme-solarized-light .bg-15 { - background-color: #fdf6e3; -} -.asciinema-theme-seti .asciinema-terminal { - color: #cacecd; - background-color: #111213; - border-color: #111213; -} -.asciinema-theme-seti .fg-bg { - color: #111213; -} -.asciinema-theme-seti .bg-fg { - background-color: #cacecd; -} -.asciinema-theme-seti .fg-0 { - color: #323232; -} -.asciinema-theme-seti .bg-0 { - background-color: #323232; -} -.asciinema-theme-seti .fg-1 { - color: #c22832; -} -.asciinema-theme-seti .bg-1 { - background-color: #c22832; -} -.asciinema-theme-seti .fg-2 { - color: #8ec43d; -} -.asciinema-theme-seti .bg-2 { - background-color: #8ec43d; -} -.asciinema-theme-seti .fg-3 { - color: #e0c64f; -} -.asciinema-theme-seti .bg-3 { - background-color: #e0c64f; -} -.asciinema-theme-seti .fg-4 { - color: #43a5d5; -} -.asciinema-theme-seti .bg-4 { - background-color: #43a5d5; -} -.asciinema-theme-seti .fg-5 { - color: #8b57b5; -} -.asciinema-theme-seti .bg-5 { - background-color: #8b57b5; -} -.asciinema-theme-seti .fg-6 { - color: #8ec43d; -} -.asciinema-theme-seti .bg-6 { - background-color: #8ec43d; -} -.asciinema-theme-seti .fg-7 { - color: #eeeeee; -} -.asciinema-theme-seti .bg-7 { - background-color: #eeeeee; -} -.asciinema-theme-seti .fg-8 { - color: #323232; -} -.asciinema-theme-seti .bg-8 { - background-color: #323232; -} -.asciinema-theme-seti .fg-9 { - color: #c22832; -} -.asciinema-theme-seti .bg-9 { - background-color: #c22832; -} -.asciinema-theme-seti .fg-10 { - color: #8ec43d; -} -.asciinema-theme-seti .bg-10 { - background-color: #8ec43d; -} -.asciinema-theme-seti .fg-11 { - color: #e0c64f; -} -.asciinema-theme-seti .bg-11 { - background-color: #e0c64f; -} -.asciinema-theme-seti .fg-12 { - color: #43a5d5; -} -.asciinema-theme-seti .bg-12 { - background-color: #43a5d5; -} -.asciinema-theme-seti .fg-13 { - color: #8b57b5; -} -.asciinema-theme-seti .bg-13 { - background-color: #8b57b5; -} -.asciinema-theme-seti .fg-14 { - color: #8ec43d; -} -.asciinema-theme-seti .bg-14 { - background-color: #8ec43d; -} -.asciinema-theme-seti .fg-15 { - color: #ffffff; -} -.asciinema-theme-seti .bg-15 { - background-color: #ffffff; -} -.asciinema-theme-seti .fg-8, -.asciinema-theme-seti .fg-9, -.asciinema-theme-seti .fg-10, -.asciinema-theme-seti .fg-11, -.asciinema-theme-seti .fg-12, -.asciinema-theme-seti .fg-13, -.asciinema-theme-seti .fg-14, -.asciinema-theme-seti .fg-15 { - font-weight: bold; -} -/* Based on Monokai from base16 collection - https://github.com/chriskempson/base16 */ -.asciinema-theme-monokai .asciinema-terminal { - color: #f8f8f2; - background-color: #272822; - border-color: #272822; -} -.asciinema-theme-monokai .fg-bg { - color: #272822; -} -.asciinema-theme-monokai .bg-fg { - background-color: #f8f8f2; -} -.asciinema-theme-monokai .fg-0 { - color: #272822; -} -.asciinema-theme-monokai .bg-0 { - background-color: #272822; -} -.asciinema-theme-monokai .fg-1 { - color: #f92672; -} -.asciinema-theme-monokai .bg-1 { - background-color: #f92672; -} -.asciinema-theme-monokai .fg-2 { - color: #a6e22e; -} -.asciinema-theme-monokai .bg-2 { - background-color: #a6e22e; -} -.asciinema-theme-monokai .fg-3 { - color: #f4bf75; -} -.asciinema-theme-monokai .bg-3 { - background-color: #f4bf75; -} -.asciinema-theme-monokai .fg-4 { - color: #66d9ef; -} -.asciinema-theme-monokai .bg-4 { - background-color: #66d9ef; -} -.asciinema-theme-monokai .fg-5 { - color: #ae81ff; -} -.asciinema-theme-monokai .bg-5 { - background-color: #ae81ff; -} -.asciinema-theme-monokai .fg-6 { - color: #a1efe4; -} -.asciinema-theme-monokai .bg-6 { - background-color: #a1efe4; -} -.asciinema-theme-monokai .fg-7 { - color: #f8f8f2; -} -.asciinema-theme-monokai .bg-7 { - background-color: #f8f8f2; -} -.asciinema-theme-monokai .fg-8 { - color: #75715e; -} -.asciinema-theme-monokai .bg-8 { - background-color: #75715e; -} -.asciinema-theme-monokai .fg-9 { - color: #f92672; -} -.asciinema-theme-monokai .bg-9 { - background-color: #f92672; -} -.asciinema-theme-monokai .fg-10 { - color: #a6e22e; -} -.asciinema-theme-monokai .bg-10 { - background-color: #a6e22e; -} -.asciinema-theme-monokai .fg-11 { - color: #f4bf75; -} -.asciinema-theme-monokai .bg-11 { - background-color: #f4bf75; -} -.asciinema-theme-monokai .fg-12 { - color: #66d9ef; -} -.asciinema-theme-monokai .bg-12 { - background-color: #66d9ef; -} -.asciinema-theme-monokai .fg-13 { - color: #ae81ff; -} -.asciinema-theme-monokai .bg-13 { - background-color: #ae81ff; -} -.asciinema-theme-monokai .fg-14 { - color: #a1efe4; -} -.asciinema-theme-monokai .bg-14 { - background-color: #a1efe4; -} -.asciinema-theme-monokai .fg-15 { - color: #f9f8f5; -} -.asciinema-theme-monokai .bg-15 { - background-color: #f9f8f5; -} -.asciinema-theme-monokai .fg-8, -.asciinema-theme-monokai .fg-9, -.asciinema-theme-monokai .fg-10, -.asciinema-theme-monokai .fg-11, -.asciinema-theme-monokai .fg-12, -.asciinema-theme-monokai .fg-13, -.asciinema-theme-monokai .fg-14, -.asciinema-theme-monokai .fg-15 { - font-weight: bold; -} diff --git a/assets/css/custom.css b/assets/css/custom.css new file mode 100644 index 00000000..ed98375b --- /dev/null +++ b/assets/css/custom.css @@ -0,0 +1,35 @@ +/* + * Tekton brand theming for Hextra + * Brand guide: https://github.com/cdfoundation/artwork/blob/main/tekton/tekton_brand_guide.pdf + * + * Primary: #00109F (navy, hue ~234deg) + * Secondary: #B980D0 (purple) + */ + +:root { + --primary-hue: 234deg; + --primary-saturation: 100%; + --primary-lightness: 31%; +} + +.content { + font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", + "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", + "Helvetica Neue", "Helvetica", "Arial", sans-serif; +} + +/* Announcement banner (KubeCon, releases, etc.) */ +.hextra-banner { + background: linear-gradient(90deg, #b1479a 0%, #6a2c88 100%); + color: #fff; +} +.hextra-banner a { + color: inherit; + text-decoration: underline; +} + +/* Vertical scrolling for large code samples */ +pre { + max-height: 25em; + overflow-y: auto; +} diff --git a/assets/js/anchor.js b/assets/js/anchor.js deleted file mode 100644 index 9d8a0e67..00000000 --- a/assets/js/anchor.js +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright 2018 Google LLC - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - https://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -(function ($) { - 'use strict'; - - // Headers' anchor link that shows on hover - $(function () { - // append anchor links to headings in markdown. - var article = document.getElementsByTagName('main')[0]; - if (!article) { - return; - } - var headings = article.querySelectorAll('h1, h2, h3, h4, h5, h6'); - headings.forEach(function (heading) { - if (heading.id) { - var a = document.createElement('a'); - // set visibility: hidden, not display: none to avoid layout change - a.style.visibility = 'hidden'; - // [a11y] hide this from screen readers, etc.. - a.setAttribute('aria-hidden', 'true'); - // material insert_link icon in svg format - a.innerHTML = ' '; - a.href = '#' + heading.id; - heading.insertAdjacentElement('beforeend', a); - heading.addEventListener('mouseenter', function () { - a.style.visibility = 'initial'; - }); - heading.addEventListener('mouseleave', function () { - a.style.visibility = 'hidden'; - }); - } - }); - }); - -}(jQuery)); diff --git a/assets/js/click-to-copy.js b/assets/js/click-to-copy.js deleted file mode 100644 index 5fdb041a..00000000 --- a/assets/js/click-to-copy.js +++ /dev/null @@ -1,86 +0,0 @@ -let codeListings = document.querySelectorAll('.highlight > pre'); - -for (let index = 0; index < codeListings.length; index++) -{ - const codeSample = codeListings[index].querySelector('code'); - const copyButton = document.createElement("button"); - copyButton.setAttribute('type', 'button'); - copyButton.onclick = function() { copyCode(codeSample); }; - copyButton.classList.add('fas', 'fa-copy'); - - const buttonTooltip = document.createElement('div'); - buttonTooltip.classList.add('c2c-tooltip'); - buttonTooltip.setAttribute('role', 'tooltip'); - buttonTooltip.innerHTML += 'Copy to clipboard'; - - const buttonDiv = document.createElement('div'); - buttonDiv.classList.add('click-to-copy'); - - // Use Popper to create and handle the tooltip behavior. - - const popperInstance = Popper.createPopper(copyButton, buttonTooltip, - { - modifiers: - [ - { - name: 'offset', - options: - { - offset: [0, -48], - }, - }, - ], - }); - - copyButton.addEventListener('click', () => - { - buttonTooltip.innerHTML = 'Copied!'; - }); - - copyButton.addEventListener('mouseenter', () => - { - buttonTooltip.setAttribute('show-tooltip', ''); - - // Enable eventListeners when the code block is on the viewport - - popperInstance.setOptions((options) => ({ - ...options, - modifiers: - [ - ...options.modifiers, - { name: 'eventListeners', enabled: true }, - ], - })); - popperInstance.update(); - }); - - copyButton.addEventListener('mouseleave', () => - { - buttonTooltip.removeAttribute('show-tooltip'); - - // Reset the message in case the button was clicked - buttonTooltip.innerHTML = 'Copy to clipboard'; - - // Disble eventListeners when the code block is NOT on the viewport - - popperInstance.setOptions((options) => ({ - ...options, - modifiers: - [ - ...options.modifiers, - { name: 'eventListeners', enabled: false }, - ], - })); - }); - - buttonDiv.append(copyButton); - buttonDiv.append(buttonTooltip); - codeListings[index].insertBefore(buttonDiv, codeSample); - -} - -function copyCode(codeSample) -{ - navigator.clipboard.writeText(codeSample.textContent.trim()); -} - diff --git a/assets/scss/_styles_project.scss b/assets/scss/_styles_project.scss deleted file mode 100644 index 114518df..00000000 --- a/assets/scss/_styles_project.scss +++ /dev/null @@ -1,181 +0,0 @@ -/* - Styling for privacy notice watermark in privacy-notice.html -*/ -#privacy-notice { - background-color: rgba(84, 73, 75, 0.9); - position: fixed; - bottom: 0%; - right: 0%; - width: 500px; - min-height: 10rem; - box-shadow: -8px -8px 8px 0 rgba(0, 0, 0, 0.3), 2px -6px 20px 0 rgba(0, 0, 0, 0.2); - z-index: 1; -} - -/* Styling for version-switcher dropdown */ - -.dropdown-menu { - border: 2px solid $primary; - max-height: 50vh; - overflow-y: auto; -} - -/* - Styling for mobile: -*/ -@media only screen and (max-width: $mobile-width) { - #banner-hero-logo { - display: none - } - - #privacy-notice { - width: 100vw; - } - - .td-box .row { - padding-left: 1rem; - padding-right: 1rem; - } -} - -/* Top nav bar background */ - -.td-navbar-cover { - &.navbar-bg-onscroll { - background: $dark !important - } -} - -/* Remove default styles from community page lists */ - -.linkbox { - ul { - list-style-type: none - } -} - -/* Styles for RSS link */ -.td-rss-button { - background-color: $primary !important; - - &:hover { - color: #fff !important; - background-color: darken($primary, 10%) !important; - } -} - -/* Vertical scrolling for large code samples */ - -pre { - max-height: 25em; - overflow-y: auto; -} - -/* Click-to-copy button styles */ - -.highlight { - - position: relative; - - .click-to-copy { - display: block; - text-align: right; - height: 1ex; - } - - pre { - - button { - position: absolute; - color: $light; - border-radius: 3px; - border-width: 0; - background-color: inherit; - box-shadow: 1px 1px $light; - right: 18px !important; - top: 6px; - } - - button:hover { - color: $dark; - background-color: $light; - } - - button:active { - color: $dark; - background-color: $light; - transform: translateY(2px); - } - - .c2c-tooltip { - background: $dark; - color: white; - padding: 2px 4px; - border-radius: 3px; - display: block; - visibility: hidden; - opacity: 0; - transition: visibility 0s, opacity 0.7s linear; - } - - .c2c-tooltip[show-tooltip] { - visibility: visible; - opacity: 1; - } - } -} - -/* Hide releases disclaimer by default, dinamically show it with js */ - -#release-switcher { - visibility: hidden -} - -#nightly-release-li { - visibility: hidden -} - -#lts-release-li { - visibility: hidden -} - -/* Consistent borders around code blocks */ - -pre { - border: 1px solid $light; -} - - -/* Styling for the banner */ -.banner { - color: #fff; - background: linear-gradient(90deg, #b1479a 0%, #6a2c88 100%); - - .banner-main { - max-width: calc(min(1200px - 8em, 80vw)); - margin-left: auto; - margin-right: auto; - margin-bottom: 0; - padding-bottom: calc(max(0.1em, 0.1rem)); - padding-top: calc(max(5em, 5rem)); - } - - @media only screen and (max-width: $mobile-width) { - .banner-main { - padding-top: calc(max(1em, 1rem)); - } - } - - h4 { - font-size: 1.35rem; - margin-top: 0; - margin-bottom: .5rem; - font-weight: 500; - line-height: 1.2; - } - - a { - color: inherit; - text-decoration: underline; - } -} \ No newline at end of file diff --git a/assets/scss/_variables_project.scss b/assets/scss/_variables_project.scss deleted file mode 100644 index 2ee41461..00000000 --- a/assets/scss/_variables_project.scss +++ /dev/null @@ -1,18 +0,0 @@ -/* - -Add styles or override variables from the theme here. - -*/ - -/* Primary and secondary colors based on the logo design guide - * https://github.com/cdfoundation/artwork/blob/main/tekton/tekton_brand_guide.pdf - */ - -$primary: #00109F; -$secondary: #B980D0; -$td-fonts-serif: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif; -$td-enable-google-fonts: false; -$light: #929292 !default; -$dark: #333 !default; -$mobile-width: 767px; - diff --git a/config.yaml b/config.yaml index b65ef971..5ac15c54 100644 --- a/config.yaml +++ b/config.yaml @@ -2,8 +2,7 @@ baseURL: / title: Tekton enableRobotsTXT: true theme: - - github.com/google/docsy - - github.com/google/docsy/dependencies + - github.com/imfing/hextra enableGitInfo: true contentDir: content/en defaultContentLanguage: en @@ -11,7 +10,6 @@ defaultContentLanguageInSubdir: false enableMissingTranslationPlaceholders: true disableKinds: - taxonomy - - taxonomyTerm pygmentsCodeFences: true pygmentsUseClasses: false pygmentsUseClassic: false @@ -38,28 +36,43 @@ services: languages: en: title: Tekton - description: Cloud Native CI/CD languageName: English weight: 1 + params: + description: Cloud Native CI/CD + params: - version_menu: Releases + description: Cloud Native CI/CD github_repo: https://github.com/tektoncd/website - gcs_engine_id: 013756393218025596041:6eajntqsa6c - ui: - sidebar_menu_compact: false - sidebar_menu_foldable: true - breadcrumb_disable: true - sidebar_search_disable: false - navbar_logo: true - footer_about_disable: false - feedback: - enable: true - yes: - Thanks! Tell us - how we can further improve. - no: Sorry about that. Tell us how we can - further improve. + + navbar: + displayTitle: true + displayLogo: true + logo: + dark: images/logo-dark.svg + light: images/logo-light.svg + link: / + + search: + enable: true + type: flexsearch + flexsearch: + index: content + + editURL: + enable: true + base: https://github.com/tektoncd/website/edit/main/content + + footer: + displayPoweredBy: false + + theme: + default: system + displayToggle: true + + page: + width: wide + links: developer: - name: Slack @@ -70,45 +83,20 @@ params: url: https://github.com/tektoncd icon: fab fa-github desc: GitHub organization for the Tekton project -sectionPagesMenu: "docs" + menu: - docs: - - name: "Getting Started" - url: "/docs/getting-started/" + main: + - name: Documentation + pageRef: /docs weight: 1 - - name: "Installation" - url: "/docs/installation/" + - name: Blog + pageRef: /blog weight: 2 - - name: "Concepts" - url: "/docs/concepts/" + - name: Community + pageRef: /community weight: 3 - - name: "How-to Guides" - url: "/docs/how-to-guides/" + - name: GitHub + url: https://github.com/tektoncd weight: 4 - - name: "Tasks and Pipelines" - url: "/docs/pipelines/" - weight: 5 - - name: "Triggers and EventListeners" - url: "/docs/triggers/" - weight: 6 - - name: "Command-Line Interface" - url: "/docs/cli/" - weight: 7 - - name: "Supply Chain Security" - url: "/docs/chains/" - weight: 8 - - name: "Operator" - url: "/docs/operator/" - weight: 9 - - name: "Dashboard" - url: "/docs/dashboard/" - weight: 10 - - name: "Results" - url: "/docs/results/" - weight: 11 - - name: "Pruner" - url: "/docs/pruner/" - weight: 12 - - name: "Contribute" - url: "/docs/contribute/" - weight: 100 + params: + icon: github diff --git a/content/en/_index.html b/content/en/_index.md similarity index 100% rename from content/en/_index.html rename to content/en/_index.md diff --git a/content/en/blog/_index.md b/content/en/blog/_index.md index 697efb5c..e02c9e2d 100644 --- a/content/en/blog/_index.md +++ b/content/en/blog/_index.md @@ -1,7 +1,4 @@ --- title: Blog -menu: - main: - weight: 40 --- diff --git a/content/en/community/_index.md b/content/en/community/_index.md index ae4cb29f..2d51ea66 100644 --- a/content/en/community/_index.md +++ b/content/en/community/_index.md @@ -1,11 +1,7 @@ --- title: Community -menu: - main: - weight: 30 +type: community --- Find more information on the [Tekton Community -repository](https://github.com/tektoncd/community). - -For technical documentation, see the [Tekton Docs](/docs/). +repository](https://github.com/tektoncd/community). To contribute code or documentation, see the [Contribute](/docs/contribute/) section in the main documentation. diff --git a/content/en/docs/_index.md b/content/en/docs/_index.md index 1cb0348b..cdefcb65 100644 --- a/content/en/docs/_index.md +++ b/content/en/docs/_index.md @@ -2,9 +2,6 @@ title: "Welcome to Tekton" linkTitle: "Documentation" weight: 1 -menu: - main: - weight: 1 --- Tekton is a cloud-native solution for building CI/CD systems. It consists of diff --git a/docs/plans/2026-03-30-hextra-theme-migration-design.md b/docs/plans/2026-03-30-hextra-theme-migration-design.md new file mode 100644 index 00000000..6c354c16 --- /dev/null +++ b/docs/plans/2026-03-30-hextra-theme-migration-design.md @@ -0,0 +1,238 @@ +# Phase 1: Hextra Theme Migration — Design Document + +**Date:** 2026-03-30 +**Status:** Draft +**Estimated effort:** 3–4 working days, 1 developer, 1 PR (6 commits) + +## Problem + +tekton.dev runs the stock Docsy/Hugo theme (v0.6.0, circa 2018–2019) with +minimal customisation. The result: + +- **Sidebar permanently expanded** — 50+ links visible at once across 12+ + sections, no collapse-to-active-section behaviour +- **No "On this page" TOC** — long reference pages (Pipeline API, TaskRuns) + have zero in-page wayfinding +- **Missing table stakes** — no Ctrl+K search, no dark mode, no breadcrumbs +- **Landing page is a card dump** — addressed separately in Phase 2 + +## Decision + +**Approach A — Full Hextra migration.** Replace Docsy with the Hextra Hugo +theme. This gives collapsible sidebar, sticky right-hand TOC, FlexSearch with +Ctrl+K, dark mode, and breadcrumbs out of the box — zero custom code for any +of them. + +Rejected alternatives: +- *Approach B (Hextra + Docsy shim layer):* slower, creates tech debt from + two co-existing themes +- *Approach C (Docsy upgrade + customise):* least disruptive but maintains + custom implementations of everything Hextra gives for free + +## Current State Inventory + +| Area | Files | Notes | +|------|-------|-------| +| Theme | `go.mod` (Docsy v0.6.0) | Hugo module | +| Hugo version | 0.107.0 | Dockerfile, netlify.toml | +| Custom layouts | 30 HTML templates in `layouts/` | Sidebar, navbar, search, community | +| Custom SCSS | 2 files, ~200 lines | Brand colors, click-to-copy, banner | +| Custom JS | 5 files | version-switcher, release-switcher, click-to-copy, asciinema, anchor | +| Sync pipeline | `sync/sync.py` + 8 YAML configs | Pulls docs from 7+ Tekton repos | +| Build | Netlify, `make` targets | `make serve`, `make production-build` | +| Config | `sidebar_menu_compact: false`, `breadcrumb_disable: true` | Pain points are literally config flags | + +## Design + +### 1. Foundation Swap + +**`go.mod`** — drop Docsy, add Hextra: + +``` +require ( + github.com/imfing/hextra v0.9.x +) +``` + +**`config.yaml`** — change theme key: + +```yaml +theme: + - github.com/imfing/hextra +``` + +Delete the entire `params.ui` block (sidebar_menu_compact, +sidebar_menu_foldable, breadcrumb_disable, sidebar_search_disable, +feedback). Hextra does not use these keys; its equivalents are on by default. + +**`netlify.toml`** — bump Hugo: + +```toml +HUGO_VERSION = "0.131.0" +``` + +**`Dockerfile`** — new base image: + +```dockerfile +FROM hugomods/hugo:exts-0.131.0 +``` + +### 2. Sidebar & Navigation + +**Delete** the 3 custom sidebar partials (170 lines): + +- `layouts/partials/sidebar-tree-docs.html` +- `layouts/partials/sidebar-tree-vault.html` +- `layouts/partials/sidebar.html` + +**Delete** the 12-entry `menu.docs` block from `config.yaml`. + +Hextra auto-generates the sidebar from the file tree under +`content/en/docs/`, reading `weight` and `title` from each `_index.md`. +The existing content structure maps directly — no front matter changes +needed. + +Hextra behaviour: +- Collapses all sections; expands only the one containing the current page +- Sticky right-hand "On this page" TOC from `##`/`###` headings (default on) +- Breadcrumbs at top of every doc page (default on) + +### 3. Shortcode Migration + +| Shortcode | Usages | Files | Migration | +|-----------|--------|-------|-----------| +| `readfile` | 9 | 6 | Keep existing wrapper or write 10-line Hugo `readFile` shim | +| `blocks/cover`, `blocks/section`, `blocks/feature` | 13 | 1 (`_index.html`) | Thin stub shortcodes — render basic HTML. Phase 2 replaces entirely | +| `imgproc` | 4 | 2 blog posts | 5-line shim wrapping Hugo `resources.Get` + `.Fit` | +| `tab` / `tabpane` | 10 | 3 | Compatibility shim or update 3 files to Hextra `tabs` syntax | + +Total: 4 shortcode files to write, 0–3 content files to touch. + +### 4. Custom Features + +**Version selector** — the navbar dropdown driven by `version-switcher.js` +(145 lines) and `release-switcher.js` (62 lines) with a hardcoded JSON +blob generated by `sync.py`. + +Port: +- Move into `layouts/partials/navbar-extra.html` (Hextra supports this) +- Restyle dropdown CSS classes from Bootstrap (`dropdown-item`, `d-none`) + to Hextra's Tailwind utility classes +- JS logic and JSON blob unchanged — they are theme-independent DOM + manipulation +- Vault pages (`/vault/pipelines-v1.6.x/`) continue working as content dirs + +**Sync script** — generates `_index.md` with standard Hugo front matter +(`title`, `weight`, `linkTitle`). No Docsy-specific keys. No changes +required. + +**Community page** — `layouts/community/list.html` calls +`community-links.html` partial. Port to work with Hextra's base template. +Keep the partial. + +### 5. Styling & Brand + +**Delete** `_variables_project.scss` and `_styles_project.scss` (181 lines). + +**Create** `assets/css/custom.css` (~30 lines): + +```css +:root { + --primary-hue: 234; /* Tekton navy #00109F */ + --primary-saturation: 100%; +} +``` + +Hextra derives dark mode palette from primary hue automatically. + +Additional config: +- Logo: `params.navbar.logo` → `assets/icons/logo.svg` (existing file) +- Fonts: `params.font: false` → use system font stack (matches current site) +- Banner: Hextra's built-in banner component with Tekton gradient + +### 6. Build Pipeline + +| File | Change | +|------|--------| +| `go.mod` | Swap Docsy → Hextra module | +| `go.sum` | Regenerated by `hugo mod tidy` | +| `Dockerfile` | Base image `hugomods/hugo:exts-0.131.0` | +| `netlify.toml` | `HUGO_VERSION = "0.131.0"` | +| `package.json` | Drop `autoprefixer`, `postcss`, `postcss-cli` devDependencies | +| `Makefile` | No changes | + +## Migration Sequence + +Each step is a commit-able checkpoint: + +| Step | Day | Description | Validation | +|------|-----|-------------|------------| +| 1 | 1 | Foundation swap (go.mod, config, Hugo version) | Expect build failure | +| 2 | 1 | Delete dead layouts (sidebar, baseof overrides, search) | `hugo server` builds, docs pages render | +| 3 | 2 | Shortcode shims (readfile, imgproc, tabs, blocks stubs) | Full site builds, all 14 shortcode pages render | +| 4 | 2–3 | Version selector port (navbar-extra partial, restyle) | Vault navigation works | +| 5 | 3 | Brand styling (custom.css, logo, fonts, banner) | Visual match to Tekton brand | +| 6 | 3 | Community page port | Community layout renders | + +## Testing Strategy + +**Automated:** +- Netlify deploy previews on the PR — existing `checklinks` plugin catches + broken internal links and missing assets + +**Manual checklist:** +- [ ] Sidebar: only active section expanded, children collapse on navigate +- [ ] TOC: visible on right for long pages, follows scroll +- [ ] Search: Ctrl+K opens overlay, results include all synced docs +- [ ] Dark mode: toggle works, code blocks readable in both modes +- [ ] Version selector: dropdown renders, vault links resolve +- [ ] Blog: posts render with dates, images, code blocks +- [ ] Mobile: sidebar → hamburger, TOC → top accordion +- [ ] Community page: links render, contribute link works + +**Regression baseline:** screenshot top-10 trafficked pages before +migration. Visual diff after. + +## Phase 2 (follow-up) + +Guided onboarding landing page — replace `_index.html` card dump with an +end-to-end walkthrough (install → first pipeline → first trigger) using +Hextra's native card/callout/steps components. Separate design document. + +## Files Deleted + +``` +layouts/partials/sidebar-tree-docs.html +layouts/partials/sidebar-tree-vault.html +layouts/partials/sidebar.html +layouts/partials/sidebar-tree-docs.html +layouts/docs/baseof.html +layouts/_default/baseof.html +layouts/_default/search.html +assets/scss/_variables_project.scss +assets/scss/_styles_project.scss +``` + +## Files Created + +``` +assets/css/custom.css +layouts/partials/navbar-extra.html +layouts/shortcodes/imgproc.html (shim) +layouts/shortcodes/blocks/cover.html (stub) +layouts/shortcodes/blocks/section.html (stub) +layouts/shortcodes/blocks/feature.html (stub) +``` + +## Files Modified + +``` +go.mod +go.sum +config.yaml +netlify.toml +Dockerfile +docker-compose.yaml +package.json +layouts/community/list.html +``` diff --git a/go.mod b/go.mod index bae6e41c..9f8e4d67 100644 --- a/go.mod +++ b/go.mod @@ -1,8 +1,5 @@ module github.com/tektoncd/website -go 1.18 +go 1.26 -require ( - github.com/google/docsy v0.6.0 // indirect - github.com/google/docsy/dependencies v0.6.0 // indirect -) +require github.com/imfing/hextra v0.12.1 // indirect diff --git a/go.sum b/go.sum index 8bfa477e..a889b918 100644 --- a/go.sum +++ b/go.sum @@ -1,19 +1,2 @@ -github.com/FortAwesome/Font-Awesome v0.0.0-20210804190922-7d3d774145ac/go.mod h1:IUgezN/MFpCDIlFezw3L8j83oeiIuYoj28Miwr/KUYo= -github.com/FortAwesome/Font-Awesome v0.0.0-20220831210243-d3a7818c253f/go.mod h1:IUgezN/MFpCDIlFezw3L8j83oeiIuYoj28Miwr/KUYo= -github.com/google/docsy v0.3.0 h1:wR0e0xJ6qIj/RPq2AP1Ufm44BCak9Sl72H2BWNAc/JA= -github.com/google/docsy v0.3.0/go.mod h1:opkofZo7WlNw+/pjrHSC2nAHJHQ6Xnms9vtL/htBvds= -github.com/google/docsy v0.4.0 h1:Eyt2aiDC1fnw/Qq/9xnIqUU5n5Yyk4c8gX3nBDdTv/4= -github.com/google/docsy v0.4.0/go.mod h1:vJjGkHNaw9bO42gpFTWwAUzHZWZEVlK46Kx7ikY5c7Y= -github.com/google/docsy v0.5.1 h1:D/ZdFKiE29xM/gwPwQzmkyXhcbQGkReRS6aGrF7lnYk= -github.com/google/docsy v0.5.1/go.mod h1:maoUAQU5H/d+FrZIB4xg1EVWAx7RyFMGSDJyWghm31E= -github.com/google/docsy v0.5.2-0.20221111165106-246a2e1e80ce h1:Zb4tKQCf5Pwsw+/Hjg9JpYcoFGadF340Y6Nv1QC8mes= -github.com/google/docsy v0.5.2-0.20221111165106-246a2e1e80ce/go.mod h1:maoUAQU5H/d+FrZIB4xg1EVWAx7RyFMGSDJyWghm31E= -github.com/google/docsy v0.6.0 h1:43bVF18t2JihAamelQjjGzx1vO2ljCilVrBgetCA8oI= -github.com/google/docsy v0.6.0/go.mod h1:VKKLqD8PQ7AglJc98yBorATfW7GrNVsn0kGXVYF6G+M= -github.com/google/docsy/dependencies v0.3.0/go.mod h1:2zZxHF+2qvkyXhLZtsbnqMotxMukJXLaf8fAZER48oo= -github.com/google/docsy/dependencies v0.4.0/go.mod h1:2zZxHF+2qvkyXhLZtsbnqMotxMukJXLaf8fAZER48oo= -github.com/google/docsy/dependencies v0.5.1/go.mod h1:EDGc2znMbGUw0RW5kWwy2oGgLt0iVXBmoq4UOqstuNE= -github.com/google/docsy/dependencies v0.6.0 h1:BFXDCINbp8ZuUGl/mrHjMfhCg+b1YX+hVLAA5fGW7Pc= -github.com/google/docsy/dependencies v0.6.0/go.mod h1:EDGc2znMbGUw0RW5kWwy2oGgLt0iVXBmoq4UOqstuNE= -github.com/twbs/bootstrap v4.6.1+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0= -github.com/twbs/bootstrap v4.6.2+incompatible/go.mod h1:fZTSrkpSf0/HkL0IIJzvVspTt1r9zuf7XlZau8kpcY0= +github.com/imfing/hextra v0.12.1 h1:3t1n0bmJbDzSTVfht93UDcfF1BXMRjeFojA071ri2l8= +github.com/imfing/hextra v0.12.1/go.mod h1:vi+yhpq8YPp/aghvJlNKVnJKcPJ/VyAEcfC1BSV9ARo= diff --git a/layouts/404.html b/layouts/404.html deleted file mode 100644 index 354df6b1..00000000 --- a/layouts/404.html +++ /dev/null @@ -1,8 +0,0 @@ -{{ define "main"}} -
-
-

Not found

-

Oops! This page doesn't exist. Try going back to our home page.

-
-
-{{ end }} diff --git a/layouts/_default/_markup/render-codeblock-mermaid.html b/layouts/_default/_markup/render-codeblock-mermaid.html deleted file mode 100644 index 5d34ed5f..00000000 --- a/layouts/_default/_markup/render-codeblock-mermaid.html +++ /dev/null @@ -1,5 +0,0 @@ -
- {{- .Inner }} -
- -{{ .Page.Store.Set "hasMermaid" true -}} diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html deleted file mode 100644 index dc2e2f6e..00000000 --- a/layouts/_default/baseof.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - {{ partial "head.html" . }} - {{ if eq .Kind "home" }} - {{ $cssAsciinema := "css/asciinema-player.css" }} - {{ $cssAsciinema := resources.Get $cssAsciinema | toCSS (dict "enableSourceMap" false) | postCSS | minify | fingerprint }} - - {{ end }} - - -
- {{ partial "navbar.html" . }} -
-
-
- {{ block "main" . }}{{ end }} -
- {{ partial "footer.html" . }} -
- {{ partial "privacy-notice.html" }} - {{ partialCached "scripts.html" . }} - - diff --git a/layouts/_default/search.html b/layouts/_default/search.html deleted file mode 100644 index cd9db57c..00000000 --- a/layouts/_default/search.html +++ /dev/null @@ -1,24 +0,0 @@ -{{ define "main" }} -
-
-
- -
-{{ with .Site.Params.gcs_engine_id }} - - -{{ end }} -
-
- -{{ end }} \ No newline at end of file diff --git a/layouts/_partials/custom/footer.html b/layouts/_partials/custom/footer.html new file mode 100644 index 00000000..bb7c1eda --- /dev/null +++ b/layouts/_partials/custom/footer.html @@ -0,0 +1,4 @@ + +
+ Tekton is a Continuous Delivery Foundation project. +
diff --git a/layouts/_partials/custom/head-end.html b/layouts/_partials/custom/head-end.html new file mode 100644 index 00000000..e06c190f --- /dev/null +++ b/layouts/_partials/custom/head-end.html @@ -0,0 +1,131 @@ +{{ $jsVerSwitcher := resources.Get "js/version-switcher.js" }} +{{ if $jsVerSwitcher }} +{{ $jsVerSwitcher = $jsVerSwitcher | fingerprint }} + +{{ end }} + +{{ $jsRelSwitcher := resources.Get "js/release-switcher.js" }} +{{ if $jsRelSwitcher }} +{{ $jsRelSwitcher = $jsRelSwitcher | fingerprint }} + +{{ end }} + + + + diff --git a/layouts/community/list.html b/layouts/community/list.html index d959a97a..52179407 100644 --- a/layouts/community/list.html +++ b/layouts/community/list.html @@ -1,20 +1,17 @@ {{ define "main" }} - -
-
- -

Welcome to the Tekton Community!

-

Our mission is to be the industry-standard, cloud-native CI/CD - platform components and ecosystem.

-
-
-
+
+
+

Welcome to the Tekton Community!

+

Our mission is to be the industry-standard, cloud-native CI/CD + platform components and ecosystem.

+
-{{ partial "community-links.html" . }} + {{ partial "community-links.html" . }} -
+
{{ .Content }} +
{{ end }} diff --git a/layouts/docs/baseof.html b/layouts/docs/baseof.html deleted file mode 100644 index e922412d..00000000 --- a/layouts/docs/baseof.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - {{ partial "head.html" . }} - - -
- {{ partial "navbar.html" . }} -
-
-
-
- - -
- {{ partial "version-banner.html" . }} - {{ if strings.Contains .Page.RelPermalink "/docs/" -}} - {{ partial "release-selector.html" }} - {{ end -}} - {{ if not .Site.Params.ui.breadcrumb_disable }}{{ partial "breadcrumb.html" . }}{{ end }} - {{ block "main" . }}{{ end }} -
-
-
- {{ partial "footer.html" . }} -
- {{ partial "scripts.html" . }} - - diff --git a/layouts/partials/community-links.html b/layouts/partials/community-links.html index e1e74f2d..8ff08ed3 100644 --- a/layouts/partials/community-links.html +++ b/layouts/partials/community-links.html @@ -1,118 +1,146 @@ - +
diff --git a/layouts/partials/favicons.html b/layouts/partials/favicons.html deleted file mode 100644 index 43abe87e..00000000 --- a/layouts/partials/favicons.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html deleted file mode 100644 index 503520cf..00000000 --- a/layouts/partials/footer.html +++ /dev/null @@ -1,38 +0,0 @@ -{{ $links := .Site.Params.links }} -
-
-
-
- {{ with $links }} - {{ with index . "user"}} - {{ template "footer-links-block" . }} - {{ end }} - {{ end }} -
-
- {{ with $links }} - {{ with index . "developer"}} - {{ template "footer-links-block" . }} - {{ end }} - {{ end }} -
-
- © {{ now.Year}} {{ T "footer_all_rights_reserved" | markdownify}} - {{ if not .Site.Params.ui.footer_about_disable }} - {{ with .Site.GetPage "about" }}

{{ .Title }}

{{ end }} - {{ end }} -
-
-
-
-{{ define "footer-links-block" }} - -{{ end }} diff --git a/layouts/partials/head.html b/layouts/partials/head.html deleted file mode 100644 index 39231bea..00000000 --- a/layouts/partials/head.html +++ /dev/null @@ -1,24 +0,0 @@ - - -{{ hugo.Generator }} -{{ if eq (getenv "HUGO_ENV") "production" }} - -{{ else }} - -{{ end }} -{{ range .AlternativeOutputFormats -}} - -{{ end -}} -{{ partialCached "favicons.html" . }} -{{ if .IsHome }}{{ .Title }}{{ else }}{{ with .Title }}{{ . }} | {{ end }}Tekton{{ end }} -{{- template "_internal/opengraph.html" . -}} -{{- template "_internal/schema.html" . -}} -{{- template "_internal/twitter_cards.html" . -}} -{{ if eq (getenv "HUGO_ENV") "production" }} -{{ template "_internal/google_analytics.html" . }} -{{ end }} -{{ partialCached "head-css.html" . "asdf" }} - -{{ partial "hooks/head-end.html" . }} diff --git a/layouts/partials/navbar-version-selector-docs.html b/layouts/partials/navbar-version-selector-docs.html deleted file mode 100644 index 5df78b96..00000000 --- a/layouts/partials/navbar-version-selector-docs.html +++ /dev/null @@ -1,19 +0,0 @@ -{{ $jsVerSwitcher := resources.Get "js/version-switcher.js" }} -{{ $jsVerSwitcher := $jsVerSwitcher | fingerprint }} - - - \ No newline at end of file diff --git a/layouts/partials/navbar-version-selector-vault.html b/layouts/partials/navbar-version-selector-vault.html deleted file mode 100644 index 506125dc..00000000 --- a/layouts/partials/navbar-version-selector-vault.html +++ /dev/null @@ -1,21 +0,0 @@ -{{ $jsVerSwitcher := resources.Get "js/version-switcher.js" }} -{{ $jsVerSwitcher := $jsVerSwitcher | minify | fingerprint }} - - - \ No newline at end of file diff --git a/layouts/partials/navbar.html b/layouts/partials/navbar.html deleted file mode 100644 index ea0db843..00000000 --- a/layouts/partials/navbar.html +++ /dev/null @@ -1,42 +0,0 @@ -{{ $cover := .HasShortcode "blocks/cover" }} - diff --git a/layouts/partials/page-meta-links.html b/layouts/partials/page-meta-links.html deleted file mode 100644 index 8cfffc1e..00000000 --- a/layouts/partials/page-meta-links.html +++ /dev/null @@ -1,26 +0,0 @@ -{{ if .Path }} -{{ $gh_repo := ($.Param "github_repo") }} -{{ $gh_subdir := ($.Param "github_subdir") }} -{{ $gh_project_repo := ($.Param "github_project_repo") }} -{{ if $gh_repo }} -
-{{ $editURL := printf "%s/edit/main/content/%s" $gh_repo .Path }} -{{ if $gh_project_repo }} -{{ $filename := .File.LogicalName }} -{{ if and $gh_project_repo (eq $filename "_index.md") }} -{{ $filename = "README.md" }} -{{ end }} -{{ $editURL = printf "%s/edit/main/docs/%s" $gh_project_repo $filename }} -{{ else if and ($gh_subdir) (.Site.Language.Lang) }} -{{ $editURL = printf "%s/edit/main/%s/content/%s/%s" $gh_repo $gh_subdir ($.Site.Language.Lang) $.Path }} -{{ else if .Site.Language.Lang }} -{{ $editURL = printf "%s/edit/main/content/%s/%s" $gh_repo ($.Site.Language.Lang) .Path }} -{{ else if $gh_subdir }} -{{ $editURL = printf "%s/edit/main/%s/content/%s" $gh_repo $gh_subdir $.Path }} -{{ end }} -{{ $issuesURL := printf "%s/issues/new?title=%s" $gh_repo (htmlEscape ($.Title | default $.LinkTitle ))}} - {{ T "post_edit_this" }} - {{ T "post_create_issue" }} -
-{{ end }} -{{ end }} \ No newline at end of file diff --git a/layouts/partials/privacy-notice.html b/layouts/partials/privacy-notice.html deleted file mode 100644 index 487cbf4b..00000000 --- a/layouts/partials/privacy-notice.html +++ /dev/null @@ -1,21 +0,0 @@ -
-
-
-

This website uses cookies

-

- We use analytics and cookies to understand site traffic and offer - you a better browsing experience. Learn more about our privacy policy. -

- -
-
-
- \ No newline at end of file diff --git a/layouts/partials/release-selector.html b/layouts/partials/release-selector.html deleted file mode 100644 index ef3eae0c..00000000 --- a/layouts/partials/release-selector.html +++ /dev/null @@ -1,20 +0,0 @@ -{{ $jsRelSwitcher := resources.Get "js/release-switcher.js" }} -{{ $jsRelSwitcher := $jsRelSwitcher | fingerprint }} - - - diff --git a/layouts/partials/scripts.html b/layouts/partials/scripts.html deleted file mode 100644 index 1feebaf4..00000000 --- a/layouts/partials/scripts.html +++ /dev/null @@ -1,30 +0,0 @@ - - -{{ $jsBase := resources.Get "js/base.js" }} -{{ $jsSearch := resources.Get "js/search.js" | resources.ExecuteAsTemplate "js/search.js" .Site.Home }} -{{ $jsAnchor := resources.Get "js/anchor.js" }} -{{ $js := (slice $jsBase $jsSearch $jsAnchor) | resources.Concat "js/main.js" }} -{{ if .Site.IsServer }} - -{{ else }} -{{ $js := $js | minify | fingerprint }} - -{{ end }} - -{{ $c2cJS := resources.Get "js/click-to-copy.js" | minify | fingerprint }} - - -{{ if .Page.Store.Get "hasMermaid" }} - -{{ end }} - -{{ partial "hooks/body-end.html" . }} diff --git a/layouts/partials/sidebar-tree-docs.html b/layouts/partials/sidebar-tree-docs.html deleted file mode 100644 index a9a6147c..00000000 --- a/layouts/partials/sidebar-tree-docs.html +++ /dev/null @@ -1,68 +0,0 @@ -{{/* Render documentation nav from definition in config file */}} - -
- {{ if not .Site.Params.ui.sidebar_search_disable -}} - - {{ else -}} -
- -
-
- {{ end -}} - - -
diff --git a/layouts/partials/sidebar-tree-vault.html b/layouts/partials/sidebar-tree-vault.html deleted file mode 100644 index f1affbf5..00000000 --- a/layouts/partials/sidebar-tree-vault.html +++ /dev/null @@ -1,76 +0,0 @@ -{{/* We cache this partial for bigger sites and set the active class client side. */}} -{{ $sidebarCacheLimit := cond (isset .Site.Params.ui "sidebar_cache_limit") .Site.Params.ui.sidebar_cache_limit 2000 -}} -{{ $shouldDelayActive := ge (len .Site.Pages) $sidebarCacheLimit -}} -
- {{ if not .Site.Params.ui.sidebar_search_disable -}} - - {{ else -}} -
- -
-
- {{ end -}} - -
-{{ define "section-tree-nav-section-vault" -}} -{{ $s := .section -}} -{{ $p := .page -}} -{{ $shouldDelayActive := .shouldDelayActive -}} -{{ $sidebarMenuTruncate := .sidebarMenuTruncate -}} -{{ $treeRoot := cond (eq .ulNr 0) true false -}} -{{ $ulNr := .ulNr -}} -{{ $ulShow := .ulShow -}} -{{ $active := and (not $shouldDelayActive) (eq $s $p) -}} -{{ $activePath := and (not $shouldDelayActive) (or (eq $p $s) ($p.IsDescendant $s)) -}} -{{ $show := cond (or (lt $ulNr $ulShow) $activePath (and (not $shouldDelayActive) (eq $s.Parent $p.Parent)) (and (not $shouldDelayActive) (eq $s.Parent $p)) (not $p.Site.Params.ui.sidebar_menu_compact) (and (not $shouldDelayActive) ($p.IsDescendant $s.Parent))) true false -}} -{{ $mid := printf "m-%s" ($s.RelPermalink | anchorize) -}} -{{ $pages_tmp := where (union $s.Pages $s.Sections).ByWeight ".Params.toc_hide" "!=" true -}} -{{ $pages := $pages_tmp | first $sidebarMenuTruncate -}} -{{ $withChild := gt (len $pages) 0 -}} -{{ $manualLink := cond (isset $s.Params "manuallink") $s.Params.manualLink ( cond (isset $s.Params "manuallinkrelref") (relref $s $s.Params.manualLinkRelref) $s.RelPermalink) -}} -{{ $manualLinkTitle := cond (isset $s.Params "manuallinktitle") $s.Params.manualLinkTitle $s.Title -}} -
  • - {{ if (and $p.Site.Params.ui.sidebar_menu_foldable (ge $ulNr 1)) -}} - - - {{ else -}} - {{ with $s.Params.Icon}}{{ end }}{{ $s.LinkTitle }} - {{- end }} - {{- if $withChild }} - {{- $ulNr := add $ulNr 1 }} -
      - {{ range $pages -}} - {{ if (not (and (eq $s $p.Site.Home) (eq .Params.toc_root true))) -}} - {{ template "section-tree-nav-section-vault" (dict "page" $p "section" . "shouldDelayActive" $shouldDelayActive "sidebarMenuTruncate" $sidebarMenuTruncate "ulNr" $ulNr "ulShow" $ulShow) }} - {{- end }} - {{- end }} -
    - {{- end }} -
  • -{{- end }} diff --git a/layouts/partials/sidebar.html b/layouts/partials/sidebar.html deleted file mode 100644 index 2084f04e..00000000 --- a/layouts/partials/sidebar.html +++ /dev/null @@ -1,31 +0,0 @@ -{{/* The "active" toggle here may delay rendering, so we only cache this side bar menu for bigger sites. -*/}}{{ $sidebarCacheLimit := cond (isset .Site.Params.ui "sidebar_cache_limit") .Site.Params.ui.sidebar_cache_limit 2000 -}} -{{ $shouldCache := ge (len .Site.Pages) $sidebarCacheLimit -}} -{{ $sidebarCacheTypeRoot := cond (isset .Site.Params.ui "sidebar_cache_type_root") .Site.Params.ui.sidebar_cache_type_root false -}} -{{ $isDocs := (strings.Contains .RelPermalink "docs/") }} -{{ $isVault := (strings.Contains .RelPermalink "vault/") }} -{{ if $shouldCache -}} - {{ $mid := printf "m-%s" (.RelPermalink | anchorize) }} - - {{ partialCached "sidebar-tree.html" . .FirstSection.RelPermalink }} -{{ else -}} - {{ if $isDocs -}} - {{ partial "sidebar-tree-docs.html" . }} - {{- else if $isVault -}} - {{ partial "sidebar-tree-vault.html" . }} - {{- else -}} - {{ partial "sidebar-tree.html" . }} - {{- end }} -{{- end }} diff --git a/layouts/partials/tutorial-modal.html b/layouts/partials/tutorial-modal.html deleted file mode 100644 index 9f14d494..00000000 --- a/layouts/partials/tutorial-modal.html +++ /dev/null @@ -1,34 +0,0 @@ - diff --git a/layouts/shortcodes/alert.html b/layouts/shortcodes/alert.html new file mode 100644 index 00000000..84eb92a7 --- /dev/null +++ b/layouts/shortcodes/alert.html @@ -0,0 +1,19 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +{{ $title := .Get "title" | default "Note" }} +{{ $color := .Get "color" | default "primary" }} +{{ $borderColor := "#00109F" }} +{{ $bgColor := "#f0f4ff" }} +{{ if eq $color "warning" }} + {{ $borderColor = "#e6a700" }} + {{ $bgColor = "#fff8e1" }} +{{ else if eq $color "danger" }} + {{ $borderColor = "#d32f2f" }} + {{ $bgColor = "#ffeef0" }} +{{ else if eq $color "success" }} + {{ $borderColor = "#2e7d32" }} + {{ $bgColor = "#e8f5e9" }} +{{ end }} +
    + {{ $title }} +
    {{ .Inner | markdownify }}
    +
    diff --git a/layouts/shortcodes/blocks/feature.html b/layouts/shortcodes/blocks/feature.html new file mode 100644 index 00000000..6ef684f9 --- /dev/null +++ b/layouts/shortcodes/blocks/feature.html @@ -0,0 +1,8 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +{{ $title := .Get "title" | default "" }} +{{ $icon := .Get "icon" | default "" }} +
    + {{ with $icon }}{{ end }} + {{ with $title }}

    {{ . }}

    {{ end }} +

    {{ .Inner | markdownify }}

    +
    diff --git a/layouts/shortcodes/blocks/section.html b/layouts/shortcodes/blocks/section.html new file mode 100644 index 00000000..814b036a --- /dev/null +++ b/layouts/shortcodes/blocks/section.html @@ -0,0 +1,8 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
    +
    +
    + {{ .Inner }} +
    +
    +
    diff --git a/layouts/shortcodes/card.html b/layouts/shortcodes/card.html new file mode 100644 index 00000000..3b40e106 --- /dev/null +++ b/layouts/shortcodes/card.html @@ -0,0 +1,4 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
    + {{ .Inner | markdownify }} +
    diff --git a/layouts/shortcodes/imgproc.html b/layouts/shortcodes/imgproc.html new file mode 100644 index 00000000..19b0b91d --- /dev/null +++ b/layouts/shortcodes/imgproc.html @@ -0,0 +1,11 @@ +{{- $name := .Get 0 -}} +{{- $command := .Get 1 | default "Fit" -}} +{{- $options := .Get 2 | default "700x500" -}} +{{- $img := .Page.Resources.GetMatch (printf "**%s*" $name) -}} +{{- if $img -}} + {{- $processed := $img.Fit $options -}} +
    + {{ $name }} + {{- with .Inner }}
    {{ . | markdownify }}
    {{ end -}} +
    +{{- end -}} diff --git a/layouts/shortcodes/pageinfo.html b/layouts/shortcodes/pageinfo.html new file mode 100644 index 00000000..ffc6c1e8 --- /dev/null +++ b/layouts/shortcodes/pageinfo.html @@ -0,0 +1,4 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
    + {{ .Inner | markdownify }} +
    diff --git a/layouts/shortcodes/readfile.html b/layouts/shortcodes/readfile.html new file mode 100644 index 00000000..bdfbbe84 --- /dev/null +++ b/layouts/shortcodes/readfile.html @@ -0,0 +1,9 @@ +{{- $file := .Get "file" | default (.Get 0) -}} +{{- $code := .Get "code" | default false -}} +{{- $lang := .Get "lang" | default "" -}} +{{- $content := readFile $file -}} +{{- if $code -}} +{{ highlight $content $lang "" }} +{{- else -}} +{{ $content | markdownify }} +{{- end -}} diff --git a/layouts/shortcodes/tutorial.html b/layouts/shortcodes/tutorial.html index 4fa46655..ce058ad5 100644 --- a/layouts/shortcodes/tutorial.html +++ b/layouts/shortcodes/tutorial.html @@ -1,9 +1,6 @@ {{ $_hugo_config := `{ "version": 1 }` }} -