chore: import upstream snapshot with attribution

This commit is contained in:
wehub-resource-sync
2026-07-13 13:22:34 +08:00
commit 4b22cfda96
9037 changed files with 2363717 additions and 0 deletions
@@ -0,0 +1,2 @@
.fa:before{-webkit-font-smoothing:antialiased}.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-weight:normal;font-style:normal;src:url("../font/fontawesome_webfont.eot");src:url("../font/fontawesome_webfont.eot?#iefix") format("embedded-opentype"),url("../font/fontawesome_webfont.woff") format("woff"),url("../font/fontawesome_webfont.ttf") format("truetype"),url("../font/fontawesome_webfont.svg#FontAwesome") format("svg")}.fa:before{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;text-decoration:inherit}a .fa{display:inline-block;text-decoration:inherit}li .fa{display:inline-block}li .fa-large:before,li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-0.8em}ul.fas li .fa{width:0.8em}ul.fas li .fa-large:before,ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before{content:""}.icon-book:before{content:""}.fa-caret-down:before{content:""}.icon-caret-down:before{content:""}.fa-caret-up:before{content:""}.icon-caret-up:before{content:""}.fa-caret-left:before{content:""}.icon-caret-left:before{content:""}.fa-caret-right:before{content:""}.icon-caret-right:before{content:""}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;border-top:solid 10px #343131;font-family:"Lato","proxima-nova","Helvetica Neue",Arial,sans-serif;z-index:400}.rst-versions a{color:#2980B9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27AE60;*zoom:1}.rst-versions .rst-current-version:before,.rst-versions .rst-current-version:after{display:table;content:""}.rst-versions .rst-current-version:after{clear:both}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book{float:left}.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#E74C3C;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#F1C40F;color:#000}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:gray;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:solid 1px #413d3d}.rst-versions .rst-other-versions dd{display:inline-block;margin:0}.rst-versions .rst-other-versions dd a{display:inline-block;padding:6px;color:#fcfcfc}.rst-versions.rst-badge{width:auto;bottom:20px;right:20px;left:auto;border:none;max-width:300px}.rst-versions.rst-badge .icon-book{float:none}.rst-versions.rst-badge .fa-book{float:none}.rst-versions.rst-badge.shift-up .rst-current-version{text-align:right}.rst-versions.rst-badge.shift-up .rst-current-version .fa-book{float:left}.rst-versions.rst-badge.shift-up .rst-current-version .icon-book{float:left}.rst-versions.rst-badge .rst-current-version{width:auto;height:30px;line-height:30px;padding:0 6px;display:block;text-align:center}@media screen and (max-width: 768px){.rst-versions{width:85%;display:none}.rst-versions.shift{display:block}img{width:100%;height:auto}}
/*# sourceMappingURL=badge_only.css.map */
@@ -0,0 +1,208 @@
/**
* Card list navigation
*/
.card-list {
display: flex;
padding: 4rem;
overflow-x: scroll;
}
.card {
display: flex;
position: relative;
flex-direction: column;
justify-content: space-between;
height: 500px;
width: 400px;
min-width: 375px;
padding: 2rem;
border-radius: 16px;
background: white;
box-shadow: -1rem 0 2rem slategray;
transition: .4s;
flex-wrap: wrap;
}
.card:hover {
transform: translateY(-1rem);
box-shadow: -1rem 0 2rem #003b5a;
}
.card:hover~.card {
transform: translateX(50px);
}
.card:not(:first-child) {
margin-left: -50px;
}
.card-header h1 {
padding-bottom: 1rem;
font-size: 1rem;
}
.card-header h2 {
padding-bottom: 1rem;
height: 6rem;
overflow: hidden;
font-size: 1.5rem;
}
.card-header p {
font-size: 1rem;
}
.card-header .card-link {
text-decoration: none;
color: inherit;
}
.card-header .card-link:hover {
background: #0194E2;
text-shadow: none;
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.card-header ul {
font-size: 0.9rem;
max-height: 200px;
overflow-y: auto;
position: relative;
}
.card-header li {
padding-bottom: 0.5rem;
}
.card-header h1, .card-header h2, .card-header p, .card-header ul {
margin-bottom: 1rem;
}
.card-header h1:hover {
background: #0194E2;
text-shadow: none;
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.card-header a {
text-decoration: none;
color: inherit;
position: relative;
}
.card-header-image {
position: absolute;
top: 0;
right: 1.5rem;
padding-left: 1rem;
max-height: 3.5rem;
padding-top: 1.5rem;
}
.card-list::-webkit-scrollbar{
width: 10px;
height: 10px;
}
.card-list::-webkit-scrollbar-thumb {
background: #0194E2;
border-radius: 8px;
box-shadow: inset 2px 2px 2px hsla(0,0%,100%,.25), inset -2px -2px -2px rgba(0,0,0,.25);
}
.card-list::-webkit-scrollbar-track {
background: linear-gradient(90deg, #c5e0e8, #c5e0e8 1px, #c5e0e8 0, #43c9ed);
}
.tags {
margin: 1rem 0 2rem;
padding: .5rem 0 1rem;
line-height: 2;
margin-bottom: 0;
}
.tags a {
font-style: normal;
font-weight: 700;
font-size: .5rem;
color: darkslategray;
text-transform: uppercase;
font-size: .66rem;
border: 3px solid lightskyblue;
border-radius: 2rem;
padding: .2rem .85rem .25rem;
position: relative;
margin-bottom: .25rem;
width: fit-content;
}
.tags a::before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #0194E2;
padding-right: 8px;
}
.tags a.download::before {
content: "\f019"; /* download icon */
}
.tags a.view::before {
content: "\f06e"; /* view icon */
}
.tags a.github::before {
content: "";
display: inline-block;
width: 1rem;
height: 1rem;
background: url("../../../../source/_static/images/intro/github-mark.svg") no-repeat center center;
background-size: contain;
margin-right: 3px;
vertical-align: middle;
}
.tags a:hover {
background: black;
text-shadow: none;
-webkit-text-fill-color: transparent;
-webkit-background-clip: text;
-webkit-box-decoration-break: clone;
background-clip: text;
border-color: darkblue;
}
/* Common styles for icons */
.icon::before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: #0194E2;
vertical-align: middle;
margin-right: 3px;
line-height: 1;
}
/* Unique styles for each icon */
.teacher::before {
content: "\f51c";
margin-right: 6px;
}
.bell::before {
content: "\f0f3";
}
.bulb::before {
content: "\f0eb";
}
.notebook::before {
content: "\f328";
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,117 @@
.grid-card {
position: relative;
display: flex;
flex-direction: column;
align-items: flex-start;
background: white;
font-size: 1rem;
color: darkslategray;
box-shadow: rgba(3, 8, 20, 0.1) 0px 0.5rem 1rem, rgba(2, 8, 20, 0.1) 0.1px 0.25rem 0.275rem;
height: 100%;
width: 100%;
border-radius: 10px;
transition: all 500ms;
overflow: hidden;
padding: .5rem;
margin: 2rem;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.grid-card:hover {
box-shadow: rgba(2, 8, 20, 0.1) 0px 0.35em 1.175em, rgba(2, 8, 20, 0.08) 0px 0.175em 0.5em;
transform: translateY(-3px) scale(1.1);
}
.new-content-grid {
display: grid;
gap: 2rem;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
margin-right: 5rem;
padding-bottom: 4rem;
}
.grid-card .content-container {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
margin-top: 1rem;
}
.grid-card .header {
text-align: center;
font-size: 1.5rem;
margin-bottom: 1rem;
position: relative;
line-height: 1.5rem;
height: 6rem;
overflow: hidden;
}
.grid-card .header:after {
content: '';
display: block;
margin: 1rem auto 1rem;
width: calc(100% - 8rem);
border-bottom: 1px solid #000;
}
.grid-card .card-image {
max-width: 80%;
max-height: 6rem;
display: block;
margin: 0 auto;
padding-bottom: 2rem;
}
.grid-card .body {
font-size: 0.9rem;
margin-bottom: 1rem;
width:calc(100% - 4rem);
}
.grid-card .body a {
color: hsl(208, 98%, 43%);
}
.grid-card .doc,
.grid-card .tag {
position: absolute;
bottom: 1rem;
font-size: 0.75rem;
}
.grid-card .doc {
left: 1rem;
}
.grid-card .tag {
right: 1rem;
}
.grid-card .doc a,
.grid-card .tag a {
text-decoration: none;
font-weight: bold;
border: 2px solid lightskyblue;
color: darkslategray;
border-radius: 12px;
padding: 2px 8px;
transition: all 0.3s;
}
.grid-card .doc a:hover,
.grid-card .tag a:hover {
background: black;
text-shadow: none;
-webkit-text-fill-color: transparent;
-webkit-background-clip: text;
-webkit-box-decoration-break: clone;
background-clip: text;
border-color: darkblue;
}
@@ -0,0 +1,72 @@
/*
* Custom CSSs for optimizing mobile view
*
* *** PLEASE DO NOT OVERUSE *** as having two different styles reduces maintainability.
*/
/* Mobile styling */
@media only screen and (max-width: 768px) {
/*
* Fix table overflow issue on mobile. Sphinx apply no word wrapping by default,
* resulted in showing very wide 1-line cells on mobile.
* To apply those CSSs to your table, add `:class wrap-table` to your table
*/
.wy-table-responsive .wrap-table td {
max-width: 300px;
white-space: normal;
}
/*
* Handle layout for the tab contents in the tracking page
*/
.tracking-responsive-tab-panel {
flex-direction: column;
}
.tracking-responsive-tab-panel img {
width: 100%;
margin: 10px auto;
}
.tracking-responsive-tab-panel div {
width: 100%;
padding: 0 10px;
}
.tracking-responsive-tab-panel video {
max-width: 100%;
padding: 0 10px;
height: auto;
}
/*
* Make the tab headers stand in one horizontal row (and reduce padding)
*/
.tracking-responsive-tabs .sphinx-tabs > div[aria-label="Tabbed content"][role="tablist"] {
display: flex;
}
.tracking-responsive-tabs .sphinx-tabs-tab {
padding: 0.75rem 0;
}
}
/* Desktop styling corresponding to above styles*/
@media only screen and (min-width: 768px) {
.tracking-responsive-tab-panel img {
width: 30%;
margin: auto 20px;
}
.tracking-responsive-tab-panel div {
width: 70%;
padding: 0 20px;
}
.tracking-responsive-tab-panel video {
max-width: 90%;
padding: 0 10px;
height: auto;
}
}
@@ -0,0 +1,81 @@
.simple-grid {
display: grid;
gap: 2rem;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
margin-right: 5rem;
padding-bottom: 4rem;
}
.simple-card {
position: relative;
display: flex;
flex-direction: column;
align-items: flex-start;
background: white;
font-size: 1rem;
color: darkslategray;
height: 100%;
width: 100%;
border-radius: 10px;
transition: all 500ms;
overflow: hidden;
padding: .5rem;
margin: 2rem;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
box-shadow: rgba(2, 8, 20, 0.3) 0.4rem 0.8rem 1.6rem, rgba(2, 8, 20, 0.1) 0rem 0.4rem 3px;
cursor: pointer;
}
.simple-card:hover {
box-shadow: rgba(2, 8, 20, 0.25) 0.5rem 2.5rem 5rem, rgba(2, 8, 20, 0.35) 0rem 1.5rem 1.65rem;
}
.simple-card:hover .header {
color: steelblue;
}
.simple-card .header {
text-align: left;
font-size: 1.5rem;
font-weight: 600;
margin: 2rem;
margin-top: 3rem;
position: relative;
height: calc(5rem + 1.2em);
display: flex;
overflow: hidden;
}
.simple-card .header-with-image {
text-align: left;
font-size: 1.5rem;
font-weight: 600;
margin: 1rem 2rem;
position: relative;
height: calc(5rem + 1.2em);
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
}
.simple-card a {
display: block;
height: 100%;
text-decoration: none;
color: inherit;
position: relative;
}
.simple-card a:hover {
text-decoration: none;
}
.simple-card p {
color: darkslategrey;
font-size: 1rem;
margin: 1rem 2rem;
text-align: left;
}
@@ -0,0 +1,192 @@
/*!
* tabs.css from Sphinx Tabs: https://github.com/executablebooks/sphinx-tabs/blob/eac2a227ca0d375bad3706cf1cf170d760510a22/sphinx_tabs/static/tabs.css
* MIT License (https://github.com/djungelorm/sphinx-tabs/blob/master/LICENSE)
*
* Sphinx Tabs is an extension for Sphinx which adds tabbed views for content in Sphinx documentation.
*/
.sphinx-tabs {
margin-bottom: 1rem;
}
[role="tablist"] {
border-bottom: 1px solid #a0b3bf;
}
.sphinx-tabs-tab {
position: relative;
font-family: Lato,'Helvetica Neue',Arial,Helvetica,sans-serif;
color: #1D5C87;
line-height: 24px;
margin: 0;
font-size: 16px;
font-weight: 400;
background-color: rgba(255, 255, 255, 0);
border-radius: 5px 5px 0 0;
border: 0;
padding: 1rem 1.5rem;
margin-bottom: 0;
}
.sphinx-tabs-tab[aria-selected="true"] {
font-weight: 700;
border: 1px solid #a0b3bf;
border-bottom: 1px solid white;
margin: -1px;
background-color: white;
}
.sphinx-tabs-tab:focus {
z-index: 1;
outline-offset: 1px;
}
.sphinx-tabs-panel {
position: relative;
padding: 1rem;
border: 1px solid #a0b3bf;
margin: 0px -1px -1px -1px;
border-radius: 0 0 5px 5px;
border-top: 0;
background: white;
}
.sphinx-tabs-panel.code-tab {
padding: 0.4rem;
}
.sphinx-tab img {
margin-bottom: 24 px;
}
/* Dark theme preference styling */
@media (prefers-color-scheme: dark) {
body[data-theme="auto"] .sphinx-tabs-panel {
color: white;
background-color: rgb(50, 50, 50);
}
body[data-theme="auto"] .sphinx-tabs-tab {
color: white;
background-color: rgba(255, 255, 255, 0.05);
}
body[data-theme="auto"] .sphinx-tabs-tab[aria-selected="true"] {
border-bottom: 1px solid rgb(50, 50, 50);
background-color: rgb(50, 50, 50);
}
}
/* Explicit dark theme styling */
body[data-theme="dark"] .sphinx-tabs-panel {
color: white;
background-color: rgb(50, 50, 50);
}
body[data-theme="dark"] .sphinx-tabs-tab {
color: white;
background-color: rgba(255, 255, 255, 0.05);
}
body[data-theme="dark"] .sphinx-tabs-tab[aria-selected="true"] {
border-bottom: 2px solid rgb(50, 50, 50);
background-color: rgb(50, 50, 50);
}
/*
* Main Landing page Tab display panes
*/
.main-container {
margin: 1rem;
text-align: left;
min-height: 500px;
}
.main-container h3 {
margin-bottom: 30px;
}
.sub-container-two-columns {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
@media (max-width: 600px) {
.sub-container-two-columns {
display: flex;
flex-direction: column;
}
}
.text-box {
display: flex;
flex-direction: column;
justify-content: center;
}
.text-box h4 {
margin-bottom: 30px;
}
.text-box p {
padding-left: 20px;
}
.image-box img {
width: 100%;
height: auto;
max-height: 400px;
object-fit: scale-down;
}
.icon-container {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(225px, 1fr));
gap: 20px;
margin-top: 40px;
}
.icon-box {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
padding: 10px;
box-sizing: border-box;
height: 100%;
justify-content: center;
margin-right: 30px;
}
.icon-box img {
cursor: pointer;
max-width: 100%;
max-height: 100px;
height: auto;
margin-bottom: 20px;
}
.icon-box p {
margin-top: auto;
font-size: 16px;
font-weight: 300;
color: #666;
}
/*
* Additional Custom CSS
*/
/* Handling mobile view for the tab widget in the tracking page */
.tracking-responsive-tab-container {
display: flex;
}
.tracking-responsive-tab-container h4 {
margin-bottom: 20px;
}
File diff suppressed because it is too large Load Diff