mirror of
https://github.com/danpros/htmly.git
synced 2026-04-17 19:26:08 +05:30
Add new theme
Based on Tailwind Starter Blog theme, see https://github.com/timlrx/tailwind-nextjs-starter-blog
This commit is contained in:
parent
cb7a8a6be2
commit
4abd8b29f4
30 changed files with 4494 additions and 36 deletions
|
|
@ -199,7 +199,7 @@ autosave.enable = "true"
|
|||
show.version = "true"
|
||||
|
||||
; Set the theme here
|
||||
views.root = "themes/twentysixteen"
|
||||
views.root = "themes/tailwind"
|
||||
|
||||
; Framework config. No need to edit.
|
||||
views.layout = "layout"
|
||||
|
|
|
|||
|
|
@ -397,9 +397,9 @@ span.required {
|
|||
<input name="blog_copyright" value="" placeholder="(c) Your name.">
|
||||
<br/>
|
||||
<br/>
|
||||
<label for="social_bluesky">Bluesky Link:</label>
|
||||
<input name="social_bluesky" type="url" value="" placeholder="https://bsky.app/profile/username.bsky.social">
|
||||
<br/>
|
||||
<label for="social_bluesky">Bluesky Link:</label>
|
||||
<input name="social_bluesky" type="url" value="" placeholder="https://bsky.app/profile/username.bsky.social">
|
||||
<br/>
|
||||
<label for="social_twitter">Twitter Link:</label>
|
||||
<input name="social_twitter" type="url" value="" placeholder="https://twitter.com/gohtmly">
|
||||
<br/>
|
||||
|
|
|
|||
20
robots.txt
20
robots.txt
|
|
@ -18,31 +18,19 @@
|
|||
|
||||
User-agent: *
|
||||
|
||||
# Allow directories
|
||||
Allow: /system/resources/
|
||||
|
||||
# Disallow directories
|
||||
Disallow: /config/
|
||||
Disallow: /system/
|
||||
Disallow: /themes/
|
||||
Disallow: /vendor/
|
||||
Disallow: /cache/
|
||||
Disallow: /lang/
|
||||
|
||||
# Disallow files
|
||||
Disallow: /changelog.txt
|
||||
Disallow: /composer.json
|
||||
Disallow: /composer.lock
|
||||
Disallow: /composer.phar
|
||||
|
||||
# Disallow paths
|
||||
Disallow: /search/
|
||||
Disallow: /admin/
|
||||
|
||||
# Allow themes
|
||||
Allow: /themes/*/css/
|
||||
Allow: /themes/*/images/
|
||||
Allow: /themes/*/img/
|
||||
Allow: /themes/*/js/
|
||||
Allow: /themes/*/fonts/
|
||||
|
||||
# Allow content images
|
||||
Allow: /content/images/*.jpg
|
||||
Allow: /content/images/*.png
|
||||
Allow: /content/images/*.gif
|
||||
|
|
@ -7,7 +7,7 @@ $CSRF = get_csrf();
|
|||
|
||||
$updater = new HubUpdater(array(
|
||||
'name' => 'danpros/htmly',
|
||||
'prerelease' => !!config("prerelease"),
|
||||
'prerelease' => config("prerelease"),
|
||||
));
|
||||
|
||||
$dir = 'cache/';
|
||||
|
|
|
|||
|
|
@ -3,6 +3,9 @@ if (!defined('HTMLY')) die('HTMLy');
|
|||
|
||||
use PragmaRX\Google2FA\Google2FA;
|
||||
|
||||
// Get search query. Redir to /search/
|
||||
get_search_query();
|
||||
|
||||
// Load the configuration file
|
||||
config('source', $config_file);
|
||||
|
||||
|
|
@ -19,9 +22,6 @@ if (config('timezone')) {
|
|||
// Publish scheduled post
|
||||
publish_scheduled();
|
||||
|
||||
// Get search query. Redir to /search/
|
||||
get_search_query();
|
||||
|
||||
// The front page of the blog
|
||||
get('/index', function () {
|
||||
|
||||
|
|
|
|||
BIN
system/resources/images/share-facebook.png
Normal file
BIN
system/resources/images/share-facebook.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 582 B |
BIN
system/resources/images/share-twitter.png
Normal file
BIN
system/resources/images/share-twitter.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 668 B |
|
|
@ -745,15 +745,11 @@ aside .copyright p {
|
|||
}
|
||||
|
||||
.share a.twitter {
|
||||
background: url(../../readable/img/share-twitter.png) left top no-repeat;
|
||||
background: url(../../../system/resources/images/share-twitter.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a.facebook {
|
||||
background: url(../../readable/img/share-facebook.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a.googleplus {
|
||||
background: url(../../readable/img/share-googleplus.png) left top no-repeat;
|
||||
background: url(../../../system/resources/images/share-facebook.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a:hover {
|
||||
|
|
|
|||
|
|
@ -553,15 +553,11 @@ ul li, ol li {
|
|||
}
|
||||
|
||||
.share a.twitter {
|
||||
background: url(../../readable/img/share-twitter.png) left top no-repeat;
|
||||
background: url(../../../system/resources/images/share-twitter.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a.facebook {
|
||||
background: url(../../readable/img/share-facebook.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a.googleplus {
|
||||
background: url(../../readable/img/share-googleplus.png) left top no-repeat;
|
||||
background: url(../../../system/resources/images/share-facebook.png) left top no-repeat;
|
||||
}
|
||||
|
||||
.share a:hover {
|
||||
|
|
|
|||
21
themes/tailwind/404-search.html.php
Normal file
21
themes/tailwind/404-search.html.php
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14">Search results not found!</h1>
|
||||
</div>
|
||||
<div class="items-start space-y-2 xl:grid xl:gap-x-8 xl:space-y-0">
|
||||
<div class="prose max-w-none pb-8 pt-8 dark:prose-invert">
|
||||
<p>Please search to find what you're looking for or visit our <a href="<?php echo site_url() ?>">homepage</a> instead.</p>
|
||||
</div>
|
||||
|
||||
<div class="relative max-w-lg">
|
||||
<label>
|
||||
<span class="sr-only">Search articles</span>
|
||||
<form><input aria-label="Search articles" name="search" placeholder="Search articles" class="block w-full rounded-md border border-gray-300 bg-white px-4 py-2 text-gray-900 focus:border-primary-500 focus:ring-primary-500 dark:border-gray-900 dark:bg-gray-800 dark:text-gray-100" type="text"></form>
|
||||
</label>
|
||||
<svg class="absolute right-3 top-3 h-5 w-5 text-gray-400 dark:text-gray-300" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
20
themes/tailwind/404.html.php
Normal file
20
themes/tailwind/404.html.php
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14">This page doesn't exist!</h1>
|
||||
</div>
|
||||
<div class="items-start space-y-2 xl:grid xl:gap-x-8 xl:space-y-0">
|
||||
<div class="prose max-w-none pb-8 pt-8 dark:prose-invert">
|
||||
<p>Please search to find what you're looking for or visit our <a href="<?php echo site_url() ?>">homepage</a> instead.</p>
|
||||
</div>
|
||||
|
||||
<div class="relative max-w-lg">
|
||||
<label>
|
||||
<span class="sr-only">Search articles</span>
|
||||
<form><input aria-label="Search articles" name="search" placeholder="Search articles" class="block w-full rounded-md border border-gray-300 bg-white px-4 py-2 text-gray-900 focus:border-primary-500 focus:ring-primary-500 dark:border-gray-900 dark:bg-gray-800 dark:text-gray-100" type="text"></form>
|
||||
</label>
|
||||
<svg class="absolute right-3 top-3 h-5 w-5 text-gray-400 dark:text-gray-300" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
21
themes/tailwind/LICENSE.txt
Normal file
21
themes/tailwind/LICENSE.txt
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2021 Timothy Lin
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
12
themes/tailwind/README.md
Normal file
12
themes/tailwind/README.md
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# HTMLy Theme Tailwind
|
||||
|
||||
Tailwind CSS blogging starter template ported to HTMLy.
|
||||
|
||||
## Installations
|
||||
|
||||
- Upload and extract the zip file into themes directory.
|
||||
- Activate it from HTMLy panel.
|
||||
|
||||
## License
|
||||
|
||||
See the LICENSE.txt
|
||||
144
themes/tailwind/css/style.css
Normal file
144
themes/tailwind/css/style.css
Normal file
|
|
@ -0,0 +1,144 @@
|
|||
.pr-6 {
|
||||
padding-right:1.5rem
|
||||
}
|
||||
|
||||
.anchor svg {
|
||||
display:inline;
|
||||
}
|
||||
|
||||
.dark .toc-wrapper {
|
||||
background-color: var(--tw-prose-pre-bg)!important;
|
||||
border-color: rgb(55 65 81/var(--tw-divide-opacity))!important;
|
||||
}
|
||||
|
||||
.light .toc-wrapper {
|
||||
border-color: rgb(229 231 235/var(--tw-divide-opacity))!important;
|
||||
}
|
||||
|
||||
.toc-wrapper a, .related-posts a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.toc-link a {
|
||||
display:none;
|
||||
}
|
||||
|
||||
.toc-link:hover a{
|
||||
display:inline-block;
|
||||
}
|
||||
|
||||
.tags a {
|
||||
margin-right: .75rem;
|
||||
}
|
||||
|
||||
.category a {
|
||||
margin-right: .1rem;
|
||||
}
|
||||
|
||||
.category {
|
||||
line-height:3.2rem;
|
||||
}
|
||||
|
||||
.read-more {
|
||||
text-decoration:inherit;
|
||||
}
|
||||
|
||||
.nav-top li {
|
||||
display:inline-block;
|
||||
margin-left: 1.5rem;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.nav-mobile li{
|
||||
outline-width: 0;
|
||||
outline-style: solid;
|
||||
letter-spacing: .1em;
|
||||
font-weight: 700;
|
||||
font-size: 1.5rem;
|
||||
line-height: 2rem;
|
||||
padding-right: 1rem;
|
||||
padding-top: .5rem;
|
||||
padding-bottom: .5rem;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.menu-mobile {
|
||||
display:none;
|
||||
}
|
||||
|
||||
@media (max-width: 640px) {
|
||||
.nav-top {
|
||||
display:none;
|
||||
}
|
||||
.is-menu-open .menu-mobile {
|
||||
display:block!important;
|
||||
}
|
||||
}
|
||||
|
||||
.search-form {
|
||||
display:none;
|
||||
}
|
||||
|
||||
.is-search-open .search-form {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.tags a:hover {
|
||||
color:rgb(190 24 93);
|
||||
}
|
||||
|
||||
|
||||
.dark .tags a:hover {
|
||||
color:rgb(244 114 182);
|
||||
}
|
||||
|
||||
.thumbnail {
|
||||
position:relative;
|
||||
display:block;
|
||||
}
|
||||
|
||||
.nav li > ul {
|
||||
display:none;
|
||||
}
|
||||
|
||||
.footnotes {
|
||||
margin-top:0;
|
||||
border:none;
|
||||
}
|
||||
|
||||
.footnotes ol {
|
||||
margin-bottom:0;
|
||||
padding-top: 1.5em;
|
||||
}
|
||||
|
||||
.footnotes > hr {
|
||||
margin:0;
|
||||
}
|
||||
|
||||
.thumb-icon {
|
||||
background: rgba(0,0,0,0.7);
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
display: block;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
position: absolute;
|
||||
bottom: 50%;
|
||||
left: 50%;
|
||||
margin-left: -16px;
|
||||
margin-bottom: -16px;
|
||||
-webkit-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
-moz-transition: all 0.7s ease;
|
||||
-webkit-transition: all 0.7s ease;
|
||||
transition: all 0.7s ease;
|
||||
}
|
||||
|
||||
.thumb-icon svg {
|
||||
margin: 1px 0 0 2px;
|
||||
}
|
||||
|
||||
.thumbnail:hover .thumb-icon {
|
||||
background: #fff;
|
||||
color: #333;
|
||||
}
|
||||
2596
themes/tailwind/css/tailwind.css
Normal file
2596
themes/tailwind/css/tailwind.css
Normal file
File diff suppressed because it is too large
Load diff
866
themes/tailwind/css/typography.css
Normal file
866
themes/tailwind/css/typography.css
Normal file
|
|
@ -0,0 +1,866 @@
|
|||
@font-face {
|
||||
font-family:Space Grotesk;
|
||||
font-style:normal;
|
||||
font-weight:300 700;
|
||||
font-display:swap;
|
||||
src:url(../fonts/62328fecf9e80426-s.woff2) format("woff2");
|
||||
unicode-range:u+0102-0103,
|
||||
u+0110-0111,
|
||||
u+0128-0129,
|
||||
u+0168-0169,
|
||||
u+01a0-01a1,
|
||||
u+01af-01b0,
|
||||
u+0300-0301,
|
||||
u+0303-0304,
|
||||
u+0308-0309,
|
||||
u+0323,
|
||||
u+0329,
|
||||
u+1ea0-1ef9,
|
||||
u+20ab
|
||||
}
|
||||
@font-face {
|
||||
font-family:Space Grotesk;
|
||||
font-style:normal;
|
||||
font-weight:300 700;
|
||||
font-display:swap;
|
||||
src:url(../fonts/c7eb187887c48af6-s.woff2) format("woff2");
|
||||
unicode-range:u+0100-02ba,
|
||||
u+02bd-02c5,
|
||||
u+02c7-02cc,
|
||||
u+02ce-02d7,
|
||||
u+02dd-02ff,
|
||||
u+0304,
|
||||
u+0308,
|
||||
u+0329,
|
||||
u+1d00-1dbf,
|
||||
u+1e00-1e9f,
|
||||
u+1ef2-1eff,
|
||||
u+2020,
|
||||
u+20a0-20ab,
|
||||
u+20ad-20c0,
|
||||
u+2113,
|
||||
u+2c60-2c7f,
|
||||
u+a720-a7ff
|
||||
}
|
||||
@font-face {
|
||||
font-family:Space Grotesk;
|
||||
font-style:normal;
|
||||
font-weight:300 700;
|
||||
font-display:swap;
|
||||
src:url(../fonts/2d141e1a38819612-s.p.woff2) format("woff2");
|
||||
unicode-range:u+00??,
|
||||
u+0131,
|
||||
u+0152-0153,
|
||||
u+02bb-02bc,
|
||||
u+02c6,
|
||||
u+02da,
|
||||
u+02dc,
|
||||
u+0304,
|
||||
u+0308,
|
||||
u+0329,
|
||||
u+2000-206f,
|
||||
u+20ac,
|
||||
u+2122,
|
||||
u+2191,
|
||||
u+2193,
|
||||
u+2212,
|
||||
u+2215,
|
||||
u+feff,
|
||||
u+fffd
|
||||
}
|
||||
@font-face {
|
||||
font-family:Space Grotesk Fallback;
|
||||
src:local("Arial");
|
||||
ascent-override:89.71%;
|
||||
descent-override:26.62%;
|
||||
line-gap-override:0.00%;
|
||||
size-adjust:109.69%
|
||||
}
|
||||
.__className_space {
|
||||
font-family:Space Grotesk,Space Grotesk Fallback;
|
||||
font-style:normal
|
||||
}
|
||||
.__variable_space {
|
||||
--font-space-grotesk:"Space Grotesk","Space Grotesk Fallback"
|
||||
}
|
||||
:root {
|
||||
--docsearch-primary-color:#5468ff;
|
||||
--docsearch-text-color:#1c1e21;
|
||||
--docsearch-spacing:12px;
|
||||
--docsearch-icon-stroke-width:1.4;
|
||||
--docsearch-highlight-color:var(--docsearch-primary-color);
|
||||
--docsearch-muted-color:#969faf;
|
||||
--docsearch-container-background:rgba(101,108,133,.8);
|
||||
--docsearch-logo-color:#5468ff;
|
||||
--docsearch-modal-width:560px;
|
||||
--docsearch-modal-height:600px;
|
||||
--docsearch-modal-background:#f5f6f7;
|
||||
--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;
|
||||
--docsearch-searchbox-height:56px;
|
||||
--docsearch-searchbox-background:#ebedf0;
|
||||
--docsearch-searchbox-focus-background:#fff;
|
||||
--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);
|
||||
--docsearch-hit-height:56px;
|
||||
--docsearch-hit-color:#444950;
|
||||
--docsearch-hit-active-color:#fff;
|
||||
--docsearch-hit-background:#fff;
|
||||
--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;
|
||||
--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);
|
||||
--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);
|
||||
--docsearch-footer-height:44px;
|
||||
--docsearch-footer-background:#fff;
|
||||
--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)
|
||||
}
|
||||
html[data-theme=dark] {
|
||||
--docsearch-text-color:#f5f6f7;
|
||||
--docsearch-container-background:rgba(9,10,17,.8);
|
||||
--docsearch-modal-background:#15172a;
|
||||
--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;
|
||||
--docsearch-searchbox-background:#090a11;
|
||||
--docsearch-searchbox-focus-background:#000;
|
||||
--docsearch-hit-color:#bec3c9;
|
||||
--docsearch-hit-shadow:none;
|
||||
--docsearch-hit-background:#090a11;
|
||||
--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);
|
||||
--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);
|
||||
--docsearch-footer-background:#1e2136;
|
||||
--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);
|
||||
--docsearch-logo-color:#fff;
|
||||
--docsearch-muted-color:#7f8497
|
||||
}
|
||||
.DocSearch-Button {
|
||||
align-items:center;
|
||||
background:var(--docsearch-searchbox-background);
|
||||
border:0;
|
||||
border-radius:40px;
|
||||
color:var(--docsearch-muted-color);
|
||||
cursor:pointer;
|
||||
display:flex;
|
||||
font-weight:500;
|
||||
height:36px;
|
||||
justify-content:space-between;
|
||||
margin:0 0 0 16px;
|
||||
padding:0 8px;
|
||||
-webkit-user-select:none;
|
||||
-moz-user-select:none;
|
||||
user-select:none
|
||||
}
|
||||
.DocSearch-Button:active,
|
||||
.DocSearch-Button:focus,
|
||||
.DocSearch-Button:hover {
|
||||
background:var(--docsearch-searchbox-focus-background);
|
||||
box-shadow:var(--docsearch-searchbox-shadow);
|
||||
color:var(--docsearch-text-color);
|
||||
outline:none
|
||||
}
|
||||
.DocSearch-Button-Container {
|
||||
align-items:center;
|
||||
display:flex
|
||||
}
|
||||
.DocSearch-Search-Icon {
|
||||
stroke-width:1.6
|
||||
}
|
||||
.DocSearch-Button .DocSearch-Search-Icon {
|
||||
color:var(--docsearch-text-color)
|
||||
}
|
||||
.DocSearch-Button-Placeholder {
|
||||
font-size:1rem;
|
||||
padding:0 12px 0 6px
|
||||
}
|
||||
.DocSearch-Button-Keys {
|
||||
display:flex;
|
||||
min-width:calc(40px + .8em)
|
||||
}
|
||||
.DocSearch-Button-Key {
|
||||
align-items:center;
|
||||
background:var(--docsearch-key-gradient);
|
||||
border-radius:3px;
|
||||
box-shadow:var(--docsearch-key-shadow);
|
||||
color:var(--docsearch-muted-color);
|
||||
display:flex;
|
||||
height:18px;
|
||||
justify-content:center;
|
||||
margin-right:.4em;
|
||||
position:relative;
|
||||
padding:0 0 2px;
|
||||
border:0;
|
||||
top:-1px;
|
||||
width:20px
|
||||
}
|
||||
@media (max-width:768px) {
|
||||
.DocSearch-Button-Keys,
|
||||
.DocSearch-Button-Placeholder {
|
||||
display:none
|
||||
}
|
||||
}
|
||||
.DocSearch--active {
|
||||
overflow:hidden!important
|
||||
}
|
||||
.DocSearch-Container,
|
||||
.DocSearch-Container * {
|
||||
box-sizing:border-box
|
||||
}
|
||||
.DocSearch-Container {
|
||||
background-color:var(--docsearch-container-background);
|
||||
height:100vh;
|
||||
left:0;
|
||||
position:fixed;
|
||||
top:0;
|
||||
width:100vw;
|
||||
z-index:200
|
||||
}
|
||||
.DocSearch-Container a {
|
||||
text-decoration:none
|
||||
}
|
||||
.DocSearch-Link {
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
color:var(--docsearch-highlight-color);
|
||||
cursor:pointer;
|
||||
font:inherit;
|
||||
margin:0;
|
||||
padding:0
|
||||
}
|
||||
.DocSearch-Modal {
|
||||
background:var(--docsearch-modal-background);
|
||||
border-radius:6px;
|
||||
box-shadow:var(--docsearch-modal-shadow);
|
||||
flex-direction:column;
|
||||
margin:60px auto auto;
|
||||
max-width:var(--docsearch-modal-width);
|
||||
position:relative
|
||||
}
|
||||
.DocSearch-SearchBar {
|
||||
display:flex;
|
||||
padding:var(--docsearch-spacing) var(--docsearch-spacing) 0
|
||||
}
|
||||
.DocSearch-Form {
|
||||
align-items:center;
|
||||
background:var(--docsearch-searchbox-focus-background);
|
||||
border-radius:4px;
|
||||
box-shadow:var(--docsearch-searchbox-shadow);
|
||||
display:flex;
|
||||
height:var(--docsearch-searchbox-height);
|
||||
margin:0;
|
||||
padding:0 var(--docsearch-spacing);
|
||||
position:relative;
|
||||
width:100%
|
||||
}
|
||||
.DocSearch-Input {
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:transparent;
|
||||
border:0;
|
||||
color:var(--docsearch-text-color);
|
||||
flex:1;
|
||||
font:inherit;
|
||||
font-size:1.2em;
|
||||
height:100%;
|
||||
outline:none;
|
||||
padding:0 0 0 8px;
|
||||
width:80%
|
||||
}
|
||||
.DocSearch-Input::-moz-placeholder {
|
||||
color:var(--docsearch-muted-color);
|
||||
opacity:1
|
||||
}
|
||||
.DocSearch-Input::placeholder {
|
||||
color:var(--docsearch-muted-color);
|
||||
opacity:1
|
||||
}
|
||||
.DocSearch-Input::-webkit-search-cancel-button,
|
||||
.DocSearch-Input::-webkit-search-decoration,
|
||||
.DocSearch-Input::-webkit-search-results-button,
|
||||
.DocSearch-Input::-webkit-search-results-decoration {
|
||||
display:none
|
||||
}
|
||||
.DocSearch-LoadingIndicator,
|
||||
.DocSearch-MagnifierLabel,
|
||||
.DocSearch-Reset {
|
||||
margin:0;
|
||||
padding:0
|
||||
}
|
||||
.DocSearch-MagnifierLabel,
|
||||
.DocSearch-Reset {
|
||||
align-items:center;
|
||||
color:var(--docsearch-highlight-color);
|
||||
display:flex;
|
||||
justify-content:center
|
||||
}
|
||||
.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,
|
||||
.DocSearch-LoadingIndicator {
|
||||
display:none
|
||||
}
|
||||
.DocSearch-Container--Stalled .DocSearch-LoadingIndicator {
|
||||
align-items:center;
|
||||
color:var(--docsearch-highlight-color);
|
||||
display:flex;
|
||||
justify-content:center
|
||||
}
|
||||
@media screen and (prefers-reduced-motion:reduce) {
|
||||
.DocSearch-Reset {
|
||||
animation:none;
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
border-radius:50%;
|
||||
color:var(--docsearch-icon-color);
|
||||
cursor:pointer;
|
||||
right:0;
|
||||
stroke-width:var(--docsearch-icon-stroke-width)
|
||||
}
|
||||
}
|
||||
.DocSearch-Reset {
|
||||
animation:fade-in .1s ease-in forwards;
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
border-radius:50%;
|
||||
color:var(--docsearch-icon-color);
|
||||
cursor:pointer;
|
||||
padding:2px;
|
||||
right:0;
|
||||
stroke-width:var(--docsearch-icon-stroke-width)
|
||||
}
|
||||
.DocSearch-Reset[hidden] {
|
||||
display:none
|
||||
}
|
||||
.DocSearch-Reset:hover {
|
||||
color:var(--docsearch-highlight-color)
|
||||
}
|
||||
.DocSearch-LoadingIndicator svg,
|
||||
.DocSearch-MagnifierLabel svg {
|
||||
height:24px;
|
||||
width:24px
|
||||
}
|
||||
.DocSearch-Cancel {
|
||||
display:none
|
||||
}
|
||||
.DocSearch-Dropdown {
|
||||
max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));
|
||||
min-height:var(--docsearch-spacing);
|
||||
overflow-y:auto;
|
||||
overflow-y:overlay;
|
||||
padding:0 var(--docsearch-spacing);
|
||||
scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);
|
||||
scrollbar-width:thin
|
||||
}
|
||||
.DocSearch-Dropdown::-webkit-scrollbar {
|
||||
width:12px
|
||||
}
|
||||
.DocSearch-Dropdown::-webkit-scrollbar-track {
|
||||
background:transparent
|
||||
}
|
||||
.DocSearch-Dropdown::-webkit-scrollbar-thumb {
|
||||
background-color:var(--docsearch-muted-color);
|
||||
border:3px solid var(--docsearch-modal-background);
|
||||
border-radius:20px
|
||||
}
|
||||
.DocSearch-Dropdown ul {
|
||||
list-style:none;
|
||||
margin:0;
|
||||
padding:0
|
||||
}
|
||||
.DocSearch-Label {
|
||||
font-size:.75em;
|
||||
line-height:1.6em
|
||||
}
|
||||
.DocSearch-Help,
|
||||
.DocSearch-Label {
|
||||
color:var(--docsearch-muted-color)
|
||||
}
|
||||
.DocSearch-Help {
|
||||
font-size:.9em;
|
||||
margin:0;
|
||||
-webkit-user-select:none;
|
||||
-moz-user-select:none;
|
||||
user-select:none
|
||||
}
|
||||
.DocSearch-Title {
|
||||
font-size:1.2em
|
||||
}
|
||||
.DocSearch-Logo a {
|
||||
display:flex
|
||||
}
|
||||
.DocSearch-Logo svg {
|
||||
color:var(--docsearch-logo-color);
|
||||
margin-left:8px
|
||||
}
|
||||
.DocSearch-Hits:last-of-type {
|
||||
margin-bottom:24px
|
||||
}
|
||||
.DocSearch-Hits mark {
|
||||
background:none;
|
||||
color:var(--docsearch-highlight-color)
|
||||
}
|
||||
.DocSearch-HitsFooter {
|
||||
color:var(--docsearch-muted-color);
|
||||
display:flex;
|
||||
font-size:.85em;
|
||||
justify-content:center;
|
||||
margin-bottom:var(--docsearch-spacing);
|
||||
padding:var(--docsearch-spacing)
|
||||
}
|
||||
.DocSearch-HitsFooter a {
|
||||
border-bottom:1px solid;
|
||||
color:inherit
|
||||
}
|
||||
.DocSearch-Hit {
|
||||
border-radius:4px;
|
||||
display:flex;
|
||||
padding-bottom:4px;
|
||||
position:relative
|
||||
}
|
||||
@media screen and (prefers-reduced-motion:reduce) {
|
||||
.DocSearch-Hit--deleting {
|
||||
transition:none
|
||||
}
|
||||
}
|
||||
.DocSearch-Hit--deleting {
|
||||
opacity:0;
|
||||
transition:all .25s linear
|
||||
}
|
||||
@media screen and (prefers-reduced-motion:reduce) {
|
||||
.DocSearch-Hit--favoriting {
|
||||
transition:none
|
||||
}
|
||||
}
|
||||
.DocSearch-Hit--favoriting {
|
||||
transform:scale(0);
|
||||
transform-origin:top center;
|
||||
transition:all .25s linear;
|
||||
transition-delay:.25s
|
||||
}
|
||||
.DocSearch-Hit a {
|
||||
background:var(--docsearch-hit-background);
|
||||
border-radius:4px;
|
||||
box-shadow:var(--docsearch-hit-shadow);
|
||||
display:block;
|
||||
padding-left:var(--docsearch-spacing);
|
||||
width:100%
|
||||
}
|
||||
.DocSearch-Hit-source {
|
||||
background:var(--docsearch-modal-background);
|
||||
color:var(--docsearch-highlight-color);
|
||||
font-size:.85em;
|
||||
font-weight:600;
|
||||
line-height:32px;
|
||||
margin:0 -4px;
|
||||
padding:8px 4px 0;
|
||||
position:sticky;
|
||||
top:0;
|
||||
z-index:10
|
||||
}
|
||||
.DocSearch-Hit-Tree {
|
||||
color:var(--docsearch-muted-color);
|
||||
height:var(--docsearch-hit-height);
|
||||
opacity:.5;
|
||||
stroke-width:var(--docsearch-icon-stroke-width);
|
||||
width:24px
|
||||
}
|
||||
.DocSearch-Hit[aria-selected=true] a {
|
||||
background-color:var(--docsearch-highlight-color)
|
||||
}
|
||||
.DocSearch-Hit[aria-selected=true] mark {
|
||||
text-decoration:underline
|
||||
}
|
||||
.DocSearch-Hit-Container {
|
||||
align-items:center;
|
||||
color:var(--docsearch-hit-color);
|
||||
display:flex;
|
||||
flex-direction:row;
|
||||
height:var(--docsearch-hit-height);
|
||||
padding:0 var(--docsearch-spacing) 0 0
|
||||
}
|
||||
.DocSearch-Hit-icon {
|
||||
height:20px;
|
||||
width:20px
|
||||
}
|
||||
.DocSearch-Hit-action,
|
||||
.DocSearch-Hit-icon {
|
||||
color:var(--docsearch-muted-color);
|
||||
stroke-width:var(--docsearch-icon-stroke-width)
|
||||
}
|
||||
.DocSearch-Hit-action {
|
||||
align-items:center;
|
||||
display:flex;
|
||||
height:22px;
|
||||
width:22px
|
||||
}
|
||||
.DocSearch-Hit-action svg {
|
||||
display:block;
|
||||
height:18px;
|
||||
width:18px
|
||||
}
|
||||
.DocSearch-Hit-action+.DocSearch-Hit-action {
|
||||
margin-left:6px
|
||||
}
|
||||
.DocSearch-Hit-action-button {
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
border-radius:50%;
|
||||
color:inherit;
|
||||
cursor:pointer;
|
||||
padding:2px
|
||||
}
|
||||
svg.DocSearch-Hit-Select-Icon {
|
||||
display:none
|
||||
}
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon {
|
||||
display:block
|
||||
}
|
||||
.DocSearch-Hit-action-button:focus,
|
||||
.DocSearch-Hit-action-button:hover {
|
||||
background:rgba(0,0,0,.2);
|
||||
transition:background-color .1s ease-in
|
||||
}
|
||||
@media screen and (prefers-reduced-motion:reduce) {
|
||||
.DocSearch-Hit-action-button:focus,
|
||||
.DocSearch-Hit-action-button:hover {
|
||||
transition:none
|
||||
}
|
||||
}
|
||||
.DocSearch-Hit-action-button:focus path,
|
||||
.DocSearch-Hit-action-button:hover path {
|
||||
fill:#fff
|
||||
}
|
||||
.DocSearch-Hit-content-wrapper {
|
||||
display:flex;
|
||||
flex:1 1 auto;
|
||||
flex-direction:column;
|
||||
font-weight:500;
|
||||
justify-content:center;
|
||||
line-height:1.2em;
|
||||
margin:0 8px;
|
||||
overflow-x:hidden;
|
||||
position:relative;
|
||||
text-overflow:ellipsis;
|
||||
white-space:nowrap;
|
||||
width:80%
|
||||
}
|
||||
.DocSearch-Hit-title {
|
||||
font-size:.9em
|
||||
}
|
||||
.DocSearch-Hit-path {
|
||||
color:var(--docsearch-muted-color);
|
||||
font-size:.75em
|
||||
}
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,
|
||||
.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,
|
||||
.DocSearch-Hit[aria-selected=true] mark {
|
||||
color:var(--docsearch-hit-active-color)!important
|
||||
}
|
||||
@media screen and (prefers-reduced-motion:reduce) {
|
||||
.DocSearch-Hit-action-button:focus,
|
||||
.DocSearch-Hit-action-button:hover {
|
||||
background:rgba(0,0,0,.2);
|
||||
transition:none
|
||||
}
|
||||
}
|
||||
.DocSearch-ErrorScreen,
|
||||
.DocSearch-NoResults,
|
||||
.DocSearch-StartScreen {
|
||||
font-size:.9em;
|
||||
margin:0 auto;
|
||||
padding:36px 0;
|
||||
text-align:center;
|
||||
width:80%
|
||||
}
|
||||
.DocSearch-Screen-Icon {
|
||||
color:var(--docsearch-muted-color);
|
||||
padding-bottom:12px
|
||||
}
|
||||
.DocSearch-NoResults-Prefill-List {
|
||||
display:inline-block;
|
||||
padding-bottom:24px;
|
||||
text-align:left
|
||||
}
|
||||
.DocSearch-NoResults-Prefill-List ul {
|
||||
display:inline-block;
|
||||
padding:8px 0 0
|
||||
}
|
||||
.DocSearch-NoResults-Prefill-List li {
|
||||
list-style-position:inside;
|
||||
list-style-type:"» "
|
||||
}
|
||||
.DocSearch-Prefill {
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
border-radius:1em;
|
||||
color:var(--docsearch-highlight-color);
|
||||
cursor:pointer;
|
||||
display:inline-block;
|
||||
font-size:1em;
|
||||
font-weight:700;
|
||||
padding:0
|
||||
}
|
||||
.DocSearch-Prefill:focus,
|
||||
.DocSearch-Prefill:hover {
|
||||
outline:none;
|
||||
text-decoration:underline
|
||||
}
|
||||
.DocSearch-Footer {
|
||||
align-items:center;
|
||||
background:var(--docsearch-footer-background);
|
||||
border-radius:0 0 8px 8px;
|
||||
box-shadow:var(--docsearch-footer-shadow);
|
||||
display:flex;
|
||||
flex-direction:row-reverse;
|
||||
flex-shrink:0;
|
||||
height:var(--docsearch-footer-height);
|
||||
justify-content:space-between;
|
||||
padding:0 var(--docsearch-spacing);
|
||||
position:relative;
|
||||
-webkit-user-select:none;
|
||||
-moz-user-select:none;
|
||||
user-select:none;
|
||||
width:100%;
|
||||
z-index:300
|
||||
}
|
||||
.DocSearch-Commands {
|
||||
color:var(--docsearch-muted-color);
|
||||
display:flex;
|
||||
list-style:none;
|
||||
margin:0;
|
||||
padding:0
|
||||
}
|
||||
.DocSearch-Commands li {
|
||||
align-items:center;
|
||||
display:flex
|
||||
}
|
||||
.DocSearch-Commands li:not(:last-of-type) {
|
||||
margin-right:.8em
|
||||
}
|
||||
.DocSearch-Commands-Key {
|
||||
align-items:center;
|
||||
background:var(--docsearch-key-gradient);
|
||||
border-radius:2px;
|
||||
box-shadow:var(--docsearch-key-shadow);
|
||||
display:flex;
|
||||
height:18px;
|
||||
justify-content:center;
|
||||
margin-right:.4em;
|
||||
padding:0 0 1px;
|
||||
color:var(--docsearch-muted-color);
|
||||
border:0;
|
||||
width:20px
|
||||
}
|
||||
@media (max-width:768px) {
|
||||
:root {
|
||||
--docsearch-spacing:10px;
|
||||
--docsearch-footer-height:40px
|
||||
}
|
||||
.DocSearch-Dropdown {
|
||||
height:100%
|
||||
}
|
||||
.DocSearch-Container {
|
||||
height:100vh;
|
||||
height:-webkit-fill-available;
|
||||
height:calc(var(--docsearch-vh, 1vh) * 100);
|
||||
position:absolute
|
||||
}
|
||||
.DocSearch-Footer {
|
||||
border-radius:0;
|
||||
bottom:0;
|
||||
position:absolute
|
||||
}
|
||||
.DocSearch-Hit-content-wrapper {
|
||||
display:flex;
|
||||
position:relative;
|
||||
width:80%
|
||||
}
|
||||
.DocSearch-Modal {
|
||||
border-radius:0;
|
||||
box-shadow:none;
|
||||
height:100vh;
|
||||
height:-webkit-fill-available;
|
||||
height:calc(var(--docsearch-vh, 1vh) * 100);
|
||||
margin:0;
|
||||
max-width:100%;
|
||||
width:100%
|
||||
}
|
||||
.DocSearch-Dropdown {
|
||||
max-height:calc(var(--docsearch-vh, 1vh) * 100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))
|
||||
}
|
||||
.DocSearch-Cancel {
|
||||
-webkit-appearance:none;
|
||||
-moz-appearance:none;
|
||||
appearance:none;
|
||||
background:none;
|
||||
border:0;
|
||||
color:var(--docsearch-highlight-color);
|
||||
cursor:pointer;
|
||||
display:inline-block;
|
||||
flex:none;
|
||||
font:inherit;
|
||||
font-size:1em;
|
||||
font-weight:500;
|
||||
margin-left:var(--docsearch-spacing);
|
||||
outline:none;
|
||||
overflow:hidden;
|
||||
padding:0;
|
||||
-webkit-user-select:none;
|
||||
-moz-user-select:none;
|
||||
user-select:none;
|
||||
white-space:nowrap
|
||||
}
|
||||
.DocSearch-Commands,
|
||||
.DocSearch-Hit-Tree {
|
||||
display:none
|
||||
}
|
||||
}
|
||||
@keyframes fade-in {
|
||||
0% {
|
||||
opacity:0
|
||||
}
|
||||
to {
|
||||
opacity:1
|
||||
}
|
||||
}
|
||||
.light .DocSearch {
|
||||
--docsearch-primary-color:#db2777;
|
||||
--docsearch-highlight-color:#db2777;
|
||||
--docsearch-searchbox-shadow:inset 0 0 0 2px #db2777;
|
||||
--docsearch-muted-color:#6b7280;
|
||||
--docsearch-container-background:rgba(156,163,175,.8);
|
||||
--docsearch-modal-background:#e5e7eb;
|
||||
--docsearch-searchbox-background:#f3f4f6;
|
||||
--docsearch-searchbox-focus-background:#f3f4f6;
|
||||
--docsearch-hit-color:#374151;
|
||||
--docsearch-hit-shadow:none;
|
||||
--docsearch-hit-active-color:#1f2937;
|
||||
--docsearch-hit-background:#f3f4f6;
|
||||
--docsearch-footer-background:#f3f4f6
|
||||
}
|
||||
.dark .DocSearch {
|
||||
--docsearch-primary-color:#db2777;
|
||||
--docsearch-highlight-color:#db2777;
|
||||
--docsearch-searchbox-shadow:inset 0 0 0 2px #db2777;
|
||||
--docsearch-text-color:#d1d5db;
|
||||
--docsearch-muted-color:#9ca3af;
|
||||
--docsearch-container-background:rgba(17,24,39,.8);
|
||||
--docsearch-modal-background:#111827;
|
||||
--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;
|
||||
--docsearch-searchbox-background:#1f2937;
|
||||
--docsearch-searchbox-focus-background:#1f2937;
|
||||
--docsearch-hit-color:#e5e7eb;
|
||||
--docsearch-hit-shadow:none;
|
||||
--docsearch-hit-active-color:#f3f4f6;
|
||||
--docsearch-hit-background:#1f2937;
|
||||
--docsearch-footer-background:#111827;
|
||||
--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);
|
||||
--docsearch-key-gradient:linear-gradient(-26.5deg,#1f2937,#111827);
|
||||
--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);
|
||||
--docsearch-logo-color:#d1d5db
|
||||
}
|
||||
.dark .DocSearch-Input,
|
||||
.dark .DocSearch-Input:focus,
|
||||
.light .DocSearch-Input,
|
||||
.light .DocSearch-Input:focus {
|
||||
box-shadow:0 0 #0000;
|
||||
background:transparent
|
||||
}
|
||||
@media (prefers-color-scheme:dark) {
|
||||
.markdown-alert {
|
||||
--color-border-default:#30363d;
|
||||
--color-accent-fg:#58a6ff;
|
||||
--color-accent-emphasis:#1f6feb;
|
||||
--color-danger-fg:#f85149;
|
||||
--color-danger-emphasis:#da3633;
|
||||
--color-attention-fg:#d29922;
|
||||
--color-attention-emphasis:#9e6a03;
|
||||
--color-done-fg:#a371f7;
|
||||
--color-done-emphasis:#8957e5;
|
||||
--color-success-fg:#3fb950;
|
||||
--color-success-emphasis:#238636
|
||||
}
|
||||
}
|
||||
@media (prefers-color-scheme:light) {
|
||||
.markdown-alert {
|
||||
--color-border-default:#d0d7de;
|
||||
--color-accent-fg:#0969da;
|
||||
--color-accent-emphasis:#0969da;
|
||||
--color-danger-fg:#d1242f;
|
||||
--color-danger-emphasis:#cf222e;
|
||||
--color-attention-fg:#9a6700;
|
||||
--color-attention-emphasis:#9a6700;
|
||||
--color-done-fg:#8250df;
|
||||
--color-done-emphasis:#8250df;
|
||||
--color-success-fg:#1a7f37;
|
||||
--color-success-emphasis:#1f883d
|
||||
}
|
||||
}
|
||||
.markdown-alert {
|
||||
border-left:.25em solid var(--borderColor-default,var(--color-border-default));
|
||||
color:inherit;
|
||||
margin-bottom:16px;
|
||||
padding:.5rem 1em
|
||||
}
|
||||
.markdown-alert>:last-child {
|
||||
margin-bottom:0!important
|
||||
}
|
||||
.markdown-alert .markdown-alert-title {
|
||||
align-items:center;
|
||||
display:flex;
|
||||
font-size:14px;
|
||||
font-weight:500;
|
||||
line-height:1
|
||||
}
|
||||
.markdown-alert .markdown-alert-title svg.octicon {
|
||||
margin-right:8px!important;
|
||||
margin-right:var(--base-size-8,8px)!important;
|
||||
fill:currentColor
|
||||
}
|
||||
.markdown-alert.markdown-alert-note {
|
||||
border-left-color:var(--borderColor-accent-emphasis,var(--color-accent-emphasis))
|
||||
}
|
||||
.markdown-alert.markdown-alert-note .markdown-alert-title {
|
||||
color:var(--color-accent-fg);
|
||||
color:var(--fgColor-accent,var(--color-accent-fg))
|
||||
}
|
||||
.markdown-alert.markdown-alert-tip {
|
||||
border-left-color:var(--borderColor-success-emphasis,var(--color-success-emphasis))
|
||||
}
|
||||
.markdown-alert.markdown-alert-tip .markdown-alert-title {
|
||||
color:var(--color-success-fg);
|
||||
color:var(--fgColor-success,var(--color-success-fg))
|
||||
}
|
||||
.markdown-alert.markdown-alert-important {
|
||||
border-left-color:var(--borderColor-done-emphasis,var(--color-done-emphasis))
|
||||
}
|
||||
.markdown-alert.markdown-alert-important .markdown-alert-title {
|
||||
color:var(--color-done-fg);
|
||||
color:var(--fgColor-done,var(--color-done-fg))
|
||||
}
|
||||
.markdown-alert.markdown-alert-warning {
|
||||
border-left-color:var(--borderColor-attention-emphasis,var(--color-attention-emphasis))
|
||||
}
|
||||
.markdown-alert.markdown-alert-warning .markdown-alert-title {
|
||||
color:var(--color-attention-fg);
|
||||
color:var(--fgColor-attention,var(--color-attention-fg))
|
||||
}
|
||||
.markdown-alert.markdown-alert-caution {
|
||||
border-left-color:var(--borderColor-danger-emphasis,var(--color-danger-emphasis))
|
||||
}
|
||||
.markdown-alert.markdown-alert-caution .markdown-alert-title {
|
||||
color:var(--color-danger-fg);
|
||||
color:var(--fgColor-danger,var(--color-danger-fg))
|
||||
}
|
||||
BIN
themes/tailwind/fonts/2d141e1a38819612-s.p.woff2
Normal file
BIN
themes/tailwind/fonts/2d141e1a38819612-s.p.woff2
Normal file
Binary file not shown.
BIN
themes/tailwind/fonts/62328fecf9e80426-s.woff2
Normal file
BIN
themes/tailwind/fonts/62328fecf9e80426-s.woff2
Normal file
Binary file not shown.
93
themes/tailwind/fonts/LICENSE.txt
Normal file
93
themes/tailwind/fonts/LICENSE.txt
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
Copyright 2020 The Space Grotesk Project Authors (https://github.com/floriankarsten/space-grotesk)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||
BIN
themes/tailwind/fonts/c7eb187887c48af6-s.woff2
Normal file
BIN
themes/tailwind/fonts/c7eb187887c48af6-s.woff2
Normal file
Binary file not shown.
BIN
themes/tailwind/img/soundcloud.jpg
Normal file
BIN
themes/tailwind/img/soundcloud.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 29 KiB |
26
themes/tailwind/js/functions.js
Normal file
26
themes/tailwind/js/functions.js
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
(function () {
|
||||
var e = document.querySelector(".menu-open");
|
||||
e &&
|
||||
e.addEventListener("click", function () {
|
||||
document.body.classList.contains("is-menu-open") ? document.body.classList.remove("is-menu-open") : document.body.classList.add("is-menu-open");
|
||||
});
|
||||
|
||||
var c = document.querySelector(".menu-close");
|
||||
c &&
|
||||
c.addEventListener("click", function () {
|
||||
document.body.classList.contains("is-menu-open") ? document.body.classList.remove("is-menu-open") : document.body.classList.add("is-menu-open");
|
||||
});
|
||||
|
||||
var s = document.querySelector(".search-open");
|
||||
s &&
|
||||
s.addEventListener("click", function () {
|
||||
document.body.classList.contains("is-search-open") ? document.body.classList.remove("is-search-open") : document.body.classList.add("is-search-open");
|
||||
});
|
||||
|
||||
var sc = document.querySelector(".search-close");
|
||||
sc &&
|
||||
sc.addEventListener("click", function () {
|
||||
document.body.classList.contains("is-search-open") ? document.body.classList.remove("is-search-open") : document.body.classList.add("is-search-open");
|
||||
});
|
||||
|
||||
})();
|
||||
164
themes/tailwind/layout.html.php
Normal file
164
themes/tailwind/layout.html.php
Normal file
|
|
@ -0,0 +1,164 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo blog_language();?>" class="__variable_space scroll-smooth dark" id="html-id">
|
||||
<head>
|
||||
<?php echo head_contents();?>
|
||||
<title><?php echo $title;?></title>
|
||||
<meta name="description" content="<?php echo $description; ?>"/>
|
||||
<link rel="canonical" href="<?php echo $canonical; ?>" />
|
||||
<?php echo $metatags;?>
|
||||
<link rel="stylesheet" href="<?php echo theme_path();?>css/typography.css" data-precedence="next" />
|
||||
<link rel="stylesheet" href="<?php echo theme_path();?>css/tailwind.css" data-precedence="next" />
|
||||
<link rel="stylesheet" href="<?php echo theme_path();?>css/style.css" data-precedence="next" />
|
||||
</head>
|
||||
<body class="bg-white pl-[calc(100vw-100%)] text-black antialiased dark:bg-gray-950 dark:text-white">
|
||||
<?php if (facebook()) { echo facebook(); } ?>
|
||||
<?php if (login()) { toolbar(); } ?>
|
||||
<script>
|
||||
var html = document.getElementById("html-id");
|
||||
if (localStorage.getItem("tw-theme") === "dark") {
|
||||
html.classList.remove('light');
|
||||
html.classList.add('dark');
|
||||
} else if (localStorage.getItem("tw-theme") === "light") {
|
||||
html.classList.remove('dark');
|
||||
html.classList.add('light');
|
||||
}
|
||||
</script>
|
||||
<section class="mx-auto max-w-3xl px-4 sm:px-6 xl:max-w-5xl xl:px-0">
|
||||
<div class="flex h-screen flex-col justify-between font-sans">
|
||||
<header class="flex items-center justify-between py-10">
|
||||
<div>
|
||||
<a aria-label="Quasilinear Musings" href="<?php echo site_url();?>">
|
||||
<div class="flex items-center justify-between">
|
||||
<div class="mr-3">
|
||||
<img width="45" src="<?php echo theme_path();?>logo.png" alt="<?php echo blog_title();?>"/>
|
||||
</div>
|
||||
<div class="hidden h-6 text-2xl font-semibold sm:block"><?php echo blog_title();?></div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="flex items-center space-x-4 leading-5 sm:space-x-6">
|
||||
<?php echo menu('nav-top');?>
|
||||
<button aria-label="Search" class="search-open">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="h-6 w-6 text-gray-900 dark:text-gray-100">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"></path>
|
||||
</svg>
|
||||
</button>
|
||||
<div class="mr-5">
|
||||
<div class="relative inline-block text-left">
|
||||
<div>
|
||||
<button id="theme-toggle" type="button" aria-haspopup="menu" aria-expanded="false">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-6 w-6 text-gray-900 dark:text-gray-100">
|
||||
<path d="M17.293 13.293A8 8 0 016.707 2.707a8.001 8.001 0 1010.586 10.586z"></path>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button aria-label="Toggle Menu" class="sm:hidden menu-open" id="menu-toggle">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-8 w-8 text-gray-900 dark:text-gray-100">
|
||||
<path fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 15a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z" clip-rule="evenodd"></path>
|
||||
</svg>
|
||||
</button>
|
||||
<div class="menu-mobile" role="dialog" tabindex="-1">
|
||||
<div class="fixed inset-0 z-60 bg-black/25"></div>
|
||||
<div class="fixed left-0 top-0 z-70 h-full w-full bg-white opacity-95 duration-300 dark:bg-gray-950 dark:opacity-[0.98]">
|
||||
<nav class="mt-8 flex h-full basis-0 flex-col items-start overflow-y-auto pl-12 pt-2 text-left">
|
||||
<?php echo menu('nav-mobile');?>
|
||||
</nav>
|
||||
<button class="fixed right-4 top-7 z-80 h-16 w-16 p-4 text-gray-900 hover:text-primary-500 dark:text-gray-100 dark:hover:text-primary-400 menu-close" aria-label="Toggle Menu">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
|
||||
clip-rule="evenodd"
|
||||
></path>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<main class="mb-auto">
|
||||
<?php if (is_index() || isset($is_profile)) {?>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<?php echo content();?>
|
||||
</div>
|
||||
<?php } else {?>
|
||||
<?php echo content();?>
|
||||
<?php } ?>
|
||||
</main>
|
||||
<footer>
|
||||
<div class="mt-16 flex flex-col items-center">
|
||||
<div class="mb-3 flex space-x-4">
|
||||
<?php echo social();?>
|
||||
</div>
|
||||
<div class="mb-2 flex space-x-2 text-sm text-gray-500 dark:text-gray-400">
|
||||
<div><?php echo copyright();?></div>
|
||||
</div>
|
||||
<div class="mb-8 text-sm text-gray-500 dark:text-gray-400">Based on <a style="te" target="_blank" rel="nofollow" href="https://github.com/timlrx/tailwind-nextjs-starter-blog">Tailwind Starter</a></div>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</section>
|
||||
<div style="position: fixed; align-items: flex-start; justify-content: center; width: 100%; inset: 0px; padding: 14vh 16px 16px;" class="z-50 bg-gray-300/50 p-4 backdrop-blur backdrop-filter dark:bg-black/50 search-form">
|
||||
<div style="opacity: 1; transform: scale(0.99); pointer-events: auto;" class="w-full max-w-xl">
|
||||
<div>
|
||||
<div class="overflow-hidden rounded-2xl border border-gray-100 bg-gray-50 dark:border-gray-800 dark:bg-gray-900">
|
||||
<div class="flex items-center space-x-4 p-4">
|
||||
<span class="block w-5">
|
||||
<svg class="text-gray-400 dark:text-gray-300" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"></path></svg>
|
||||
</span>
|
||||
<form role="search" class="w-full"><input name="search" class="h-8 w-full bg-transparent text-gray-600 placeholder-gray-400 focus:outline-none dark:text-gray-200 dark:placeholder-gray-500" autocomplete="off" role="combobox" spellcheck="false" aria-expanded="true" aria-controls="kbar-listbox" aria-activedescendant="kbar-listbox-item-1" placeholder="<?php echo i18n('type_to_search');?>" value=""></form>
|
||||
<button class="z-80 h-16 w-16 p-4 text-gray-900 hover:text-primary-500 dark:text-gray-100 dark:hover:text-primary-400 search-close" aria-label="Toggle Menu">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z"
|
||||
clip-rule="evenodd"
|
||||
></path>
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="fixed bottom-8 right-8 hidden flex-col gap-3" id="scroll-up">
|
||||
<button aria-label="Scroll To Top" class="rounded-full bg-gray-200 p-2 text-gray-500 transition-all hover:bg-gray-300 dark:bg-gray-700 dark:text-gray-400 dark:hover:bg-gray-600">
|
||||
<a href="#"><svg class="h-5 w-5" viewBox="0 0 20 20" fill="currentColor">
|
||||
<path fill-rule="evenodd" d="M3.293 9.707a1 1 0 010-1.414l6-6a1 1 0 011.414 0l6 6a1 1 0 01-1.414 1.414L11 5.414V17a1 1 0 11-2 0V5.414L4.707 9.707a1 1 0 01-1.414 0z" clip-rule="evenodd"></path>
|
||||
</svg></a>
|
||||
</button>
|
||||
</div>
|
||||
<script>
|
||||
var mybutton = document.getElementById("scroll-up");
|
||||
window.onscroll = function () {
|
||||
if (document.body.scrollTop > 200 || document.documentElement.scrollTop > 200) {
|
||||
mybutton.style.display = "flex";
|
||||
mybutton.style.opacity = "1";
|
||||
} else {
|
||||
mybutton.style.display = "none";
|
||||
mybutton.style.opacity = "0";
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<script>
|
||||
var html = document.getElementById("html-id");
|
||||
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||
if (html.className.includes("dark")) {
|
||||
html.classList.remove('dark');
|
||||
html.classList.add('light');
|
||||
localStorage.setItem("tw-theme", 'light');
|
||||
} else {
|
||||
html.classList.remove('light');
|
||||
html.classList.add('dark');
|
||||
localStorage.setItem("tw-theme", 'dark');
|
||||
}
|
||||
})
|
||||
|
||||
</script>
|
||||
<script src="<?php echo theme_path();?>js/functions.js"></script>
|
||||
<?php if (analytics()): ?><?php echo analytics() ?><?php endif; ?>
|
||||
</body>
|
||||
</html>
|
||||
BIN
themes/tailwind/logo.png
Normal file
BIN
themes/tailwind/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 KiB |
139
themes/tailwind/main.html.php
Normal file
139
themes/tailwind/main.html.php
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<?php if (isset($is_taxonomy)):?>
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14"><?php echo $taxonomy->title;?>
|
||||
<a class="inline-block" href="<?php echo $taxonomy->rss;?>">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" class="bi bi-rss" viewBox="0 0 16 16"><path d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"/><path d="M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-3-8.5a1 1 0 0 1 1-1c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1-1-1m0 4a1 1 0 0 1 1-1 6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1-1-1"/></svg>
|
||||
</a>
|
||||
</h1>
|
||||
<div class="prose max-w-none text-lg leading-7 text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php echo $taxonomy->body;?>
|
||||
</div>
|
||||
<?php if (isset($is_blog)):?>
|
||||
<div class="category">
|
||||
<?php $categories = category_list(true);?>
|
||||
<?php foreach ($categories as $k => $v):?>
|
||||
<?php if ($v['2'] !== 0):?>
|
||||
<a class="bg-gray-700 w-full rounded-md py-2 px-4 font-medium text-white sm:py-2 hover:bg-gray-100 dark:hover:bg-gray-100 focus:ring-primary-400 focus:outline-none focus:ring-2 focus:ring-offset-2 dark:ring-offset-black" href="<?php echo site_url() . 'category/' . $v[0] ?>"><?php echo $v[1];?></a>
|
||||
<?php endif;?>
|
||||
<?php endforeach;?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
<?php $teaserType = config('teaser.type'); $readMore = config('read.more');?>
|
||||
<ul class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<?php foreach ($posts as $p):?>
|
||||
<?php $img = get_image($p->body);?>
|
||||
<li class="py-12">
|
||||
<article>
|
||||
<div class="space-y-2 xl:grid xl:grid-cols-4 xl:items-baseline xl:space-y-0">
|
||||
<dl>
|
||||
<dt class="sr-only"><?php echo i18n('posted_on');?></dt>
|
||||
<dd class="text-base font-medium leading-6 text-gray-500 dark:text-gray-400"><time><?php echo format_date($p->date);?></time>
|
||||
<?php if (authorized($p)):?> • <span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
</dd>
|
||||
|
||||
<?php if ($teaserType === 'trimmed') :?>
|
||||
<div class="pt-4 pr-6">
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="//img.youtube.com/vi/<?php echo get_video_id($p->video);?>/sddefault.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-play" viewBox="0 0 16 16"><path d="M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>">
|
||||
<img src="<?php echo theme_path();?>img/soundcloud.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-volume-up" viewBox="0 0 16 16"><path d="M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z"/><path d="M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z"/><path d="M10.025 8a4.5 4.5 0 0 1-1.318 3.182L8 10.475A3.5 3.5 0 0 0 9.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.5 4.5 0 0 1 10.025 8M7 4a.5.5 0 0 0-.812-.39L3.825 5.5H1.5A.5.5 0 0 0 1 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 7 12zM4.312 6.39 6 5.04v5.92L4.312 9.61A.5.5 0 0 0 4 9.5H2v-3h2a.5.5 0 0 0 .312-.11"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($img)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $img;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
</dl>
|
||||
<div class="space-y-5 xl:col-span-3">
|
||||
<div class="space-y-6">
|
||||
<div>
|
||||
<?php if (!empty($p->link)) {?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->link;?>" target="_blank"><?php echo $p->title;?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" style="display:inline-block;margin-left: 3px;" class=" bi bi-link-45deg" viewBox="0 0 16 16">
|
||||
<path d="M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z"/>
|
||||
<path d="M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z"/>
|
||||
</svg>
|
||||
</a>
|
||||
</h2>
|
||||
<?php } else { ?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->url;?>"><?php echo $p->title;?></a>
|
||||
</h2>
|
||||
<?php } ?>
|
||||
<div class="flex flex-wrap">
|
||||
<span class="mr-3 text-sm font-medium uppercase text-primary-500"><span class="tags"><?php echo $p->tag;?></span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="prose max-w-none text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php if ($teaserType !== 'trimmed') :?>
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>">
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<div class="relative" style="padding-top: 56.25%">
|
||||
<iframe class="absolute inset-0 w-full h-full" src="https://www.youtube.com/embed/<?php echo get_video_id($p->video); ?>" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<iframe width="100%" height="100%" class="embed-responsive-item" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=<?php echo $p->audio;?>&auto_play=false&visual=true"></iframe>
|
||||
<?php } elseif (!empty($p->quote)) {?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php } ?>
|
||||
<?php endif;?>
|
||||
|
||||
<?php if (!empty($p->quote) && $teaserType === 'trimmed'):?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight" style="margin: 1.6em 0;">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php echo get_teaser($p->body, $p->url);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if ($teaserType === 'trimmed'):?>
|
||||
<div class="text-base font-medium leading-6">
|
||||
<a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="<?php echo $p->title;?>" href="<?php echo $p->url;?>"><?php echo $readMore;?></a>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</li>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
|
||||
<?php if (!empty($pagination['prev']) || !empty($pagination['next'])): ?>
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<nav class="flex justify-between">
|
||||
<?php if (!empty($pagination['prev'])): ?>
|
||||
<a class="break-words" rel="next" href="?page=<?php echo $page - 1 ?>"><?php echo i18n('next');?></a>
|
||||
<?php endif; ?>
|
||||
<?php if (empty($pagination['prev'])): ?>
|
||||
<button class="cursor-auto disabled:opacity-50" disabled=""><?php echo i18n('next');?></button>
|
||||
<?php endif; ?>
|
||||
<span class="page-numbers"><?php echo $pagination['pagenum'];?></span>
|
||||
<?php if (!empty($pagination['next'])): ?>
|
||||
<a class="break-words" rel="prev" href="?page=<?php echo $page + 1 ?>"><?php echo i18n('prev');?></a>
|
||||
<?php endif; ?>
|
||||
<?php if (empty($pagination['next'])): ?>
|
||||
<button class="cursor-auto disabled:opacity-50" disabled=""><?php echo i18n('prev');?></button>
|
||||
<?php endif; ?>
|
||||
</nav>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
6
themes/tailwind/no-posts.html.php
Normal file
6
themes/tailwind/no-posts.html.php
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14">No post found!</h1>
|
||||
</div>
|
||||
</div>
|
||||
121
themes/tailwind/post.html.php
Normal file
121
themes/tailwind/post.html.php
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<section class="mx-auto max-w-3xl sm:px-6 xl:max-w-5xl xl:px-0">
|
||||
<article>
|
||||
<div class="xl:divide-y xl:divide-gray-200 xl:dark:divide-gray-700">
|
||||
<header class="pt-6 xl:pb-6">
|
||||
<div class="space-y-1 text-center">
|
||||
<dl class="space-y-10">
|
||||
<div>
|
||||
<dt class="sr-only"><?php echo i18n('posted_on');?></dt>
|
||||
<dd class="text-base font-medium leading-6 text-gray-500 dark:text-gray-400"><time><?php echo format_date($p->date);?></time> • <span class="text-primary-500"><?php echo $p->category;?></span>
|
||||
<?php if (authorized($p)):?> • <span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
</dd>
|
||||
</div>
|
||||
</dl>
|
||||
<div>
|
||||
<?php if (!empty($p->link)) {?>
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-5xl md:leading-14">
|
||||
<a href="<?php echo $p->link;?>" target="_blank"><?php echo $p->title;?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" style="display:inline-block;margin-left: 3px;" class=" bi bi-link-45deg" viewBox="0 0 16 16">
|
||||
<path d="M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z"/>
|
||||
<path d="M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z"/>
|
||||
</svg>
|
||||
</a>
|
||||
</h1>
|
||||
<?php } else { ?>
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-5xl md:leading-14"><?php echo $p->title;?></h1>
|
||||
<?php } ?>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<div class="grid-rows-[auto_1fr] divide-y divide-gray-200 pb-8 dark:divide-gray-700 xl:grid xl:grid-cols-4 xl:gap-x-6 xl:divide-y-0">
|
||||
<dl class="pb-10 pt-6 xl:border-b xl:border-gray-200 xl:pt-11 xl:dark:border-gray-700">
|
||||
<dt class="sr-only"><?php echo i18n('author');?></dt>
|
||||
<dd>
|
||||
<ul class="flex flex-wrap justify-center gap-4 sm:space-x-12 xl:block xl:space-x-0 xl:space-y-8">
|
||||
<li class="flex items-center space-x-2">
|
||||
<img src="<?php echo $p->authorAvatar;?>" width="40" height="40"/>
|
||||
<dl class="whitespace-nowrap text-sm font-medium leading-5">
|
||||
<dt class="sr-only"><?php echo i18n('user');?></dt>
|
||||
<dd class="text-gray-900 dark:text-gray-100"><?php echo $p->authorName;?></dd>
|
||||
<dt class="sr-only"><?php echo i18n('post_by_author');?></dt>
|
||||
<dd><a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" href="<?php echo $p->authorUrl;?>"><?php echo i18n('post_by_author');?></a></dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700 xl:col-span-3 xl:row-span-2 xl:pb-0">
|
||||
<div class="prose max-w-none pb-8 pt-10 dark:prose-invert">
|
||||
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>">
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<div class="relative" style="padding-top: 56.25%">
|
||||
<iframe class="absolute inset-0 w-full h-full" src="https://www.youtube.com/embed/<?php echo get_video_id($p->video); ?>" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<iframe width="100%" height="100%" class="embed-responsive-item" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=<?php echo $p->audio;?>&auto_play=false&visual=true"></iframe>
|
||||
<?php } elseif (!empty($p->quote)) {?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php } ?>
|
||||
|
||||
<?php echo $p->body;?>
|
||||
</div>
|
||||
<div class="prose max-w-none pb-6 pt-6 text-sm text-gray-700 dark:text-gray-300 related-posts">
|
||||
<h2 class="text-xl text-gray-700 dark:text-gray-300"><?php echo i18n('related_posts');?></h2>
|
||||
<?php echo get_related($p->related);?>
|
||||
</div>
|
||||
<?php if (facebook() || disqus()): ?>
|
||||
<div class="pb-6 pt-6 text-center text-gray-700 dark:text-gray-300" id="comment">
|
||||
<?php if (facebook()): ?>
|
||||
<div class="fb-comments" data-href="<?php echo $p->url ?>" data-numposts="<?php echo config('fb.num') ?>" data-colorscheme="<?php echo config('fb.color') ?>"></div>
|
||||
<?php endif; ?>
|
||||
<?php if (disqus()): ?>
|
||||
<?php echo disqus($p->title, $p->url) ?>
|
||||
<div id="disqus_thread"></div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<footer>
|
||||
<div class="divide-gray-200 text-sm font-medium leading-5 dark:divide-gray-700 xl:col-start-1 xl:row-start-2 xl:divide-y">
|
||||
<div class="py-4 xl:py-8">
|
||||
<h2 class="text-xs uppercase tracking-wide text-gray-500 dark:text-gray-400"><?php echo i18n('tags');?></h2>
|
||||
<div class="flex flex-wrap">
|
||||
<span class="mr-3 text-sm font-medium uppercase text-primary-500" ><span class="tags"><?php echo $p->tag;?></span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex justify-between py-4 xl:block xl:space-y-8 xl:py-8">
|
||||
<?php if (!empty($prev)): ?>
|
||||
<div>
|
||||
<h2 class="text-xs uppercase tracking-wide text-gray-500 dark:text-gray-400"><?php echo i18n('prev_post');?></h2>
|
||||
<div class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400"><a class="break-words" href="<?php echo($prev['url']); ?>"><?php echo($prev['title']); ?></a></div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
<?php if (!empty($next)): ?>
|
||||
<div>
|
||||
<h2 class="text-xs uppercase tracking-wide text-gray-500 dark:text-gray-400"><?php echo i18n('next_post');?></h2>
|
||||
<div class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400"><a class="break-words" href="<?php echo($next['url']); ?>"><?php echo($next['title']); ?></a></div>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
<div class="py-4 xl:py-8">
|
||||
<h2 class="text-xs uppercase tracking-wide text-gray-500 dark:text-gray-400">Tag Cloud</h2>
|
||||
<div class="flex flex-wrap">
|
||||
<span class="mr-3 text-sm font-medium uppercase text-primary-500"><span class="tags"><?php echo tag_cloud();?></span></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php if (config('blog.enable') === 'true') {?>
|
||||
<div class="pt-4 xl:pt-8"><a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="Back to the blog" href="<?php echo site_url() . blog_path();?>">← <?php echo i18n('back_to');?> <?php echo blog_string();?></a></div>
|
||||
<?php } else {?>
|
||||
<div class="pt-4 xl:pt-8"><a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="Back to homepage" href="<?php echo site_url();?>">← <?php echo i18n('back_to');?> <?php echo i18n('homepage');?></a></div>
|
||||
<?php } ?>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</section>
|
||||
127
themes/tailwind/profile.html.php
Normal file
127
themes/tailwind/profile.html.php
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14"><?php echo $author->title;?>
|
||||
<a class="inline-block" href="<?php echo $author->rss;?>">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" class="bi bi-rss" viewBox="0 0 16 16"><path d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z"/><path d="M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0m-3-8.5a1 1 0 0 1 1-1c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1-1-1m0 4a1 1 0 0 1 1-1 6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1-1-1"/></svg>
|
||||
</a>
|
||||
</h1>
|
||||
<div class="prose max-w-none text-lg leading-7 text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php echo $author->body;?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php $teaserType = config('teaser.type'); $readMore = config('read.more');?>
|
||||
<ul class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<?php foreach ($posts as $p):?>
|
||||
<?php $img = get_image($p->body);?>
|
||||
<li class="py-12">
|
||||
<article>
|
||||
<div class="space-y-2 xl:grid xl:grid-cols-4 xl:items-baseline xl:space-y-0">
|
||||
<dl>
|
||||
<dt class="sr-only"><?php echo i18n('posted_on');?></dt>
|
||||
<dd class="text-base font-medium leading-6 text-gray-500 dark:text-gray-400"><time><?php echo format_date($p->date);?></time>
|
||||
<?php if (authorized($p)):?> • <span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
</dd>
|
||||
|
||||
<?php if ($teaserType === 'trimmed') :?>
|
||||
<div class="pt-4 pr-6">
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="//img.youtube.com/vi/<?php echo get_video_id($p->video);?>/sddefault.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-play" viewBox="0 0 16 16"><path d="M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>">
|
||||
<img src="<?php echo theme_path();?>img/soundcloud.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-volume-up" viewBox="0 0 16 16"><path d="M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z"/><path d="M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z"/><path d="M10.025 8a4.5 4.5 0 0 1-1.318 3.182L8 10.475A3.5 3.5 0 0 0 9.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.5 4.5 0 0 1 10.025 8M7 4a.5.5 0 0 0-.812-.39L3.825 5.5H1.5A.5.5 0 0 0 1 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 7 12zM4.312 6.39 6 5.04v5.92L4.312 9.61A.5.5 0 0 0 4 9.5H2v-3h2a.5.5 0 0 0 .312-.11"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($img)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $img;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
</dl>
|
||||
<div class="space-y-5 xl:col-span-3">
|
||||
<div class="space-y-6">
|
||||
<div>
|
||||
<?php if (!empty($p->link)) {?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->link;?>" target="_blank"><?php echo $p->title;?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" style="display:inline-block;margin-left: 3px;" class=" bi bi-link-45deg" viewBox="0 0 16 16">
|
||||
<path d="M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z"/>
|
||||
<path d="M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z"/>
|
||||
</svg>
|
||||
</a>
|
||||
</h2>
|
||||
<?php } else { ?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->url;?>"><?php echo $p->title;?></a>
|
||||
</h2>
|
||||
<?php } ?>
|
||||
<div class="flex flex-wrap">
|
||||
<span class="mr-3 text-sm font-medium uppercase text-primary-500"><span class="tags"><?php echo $p->tag;?></span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="prose max-w-none text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php if ($teaserType !== 'trimmed') :?>
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>">
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<div class="relative" style="padding-top: 56.25%">
|
||||
<iframe class="absolute inset-0 w-full h-full" src="https://www.youtube.com/embed/<?php echo get_video_id($p->video); ?>" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<iframe width="100%" height="100%" class="embed-responsive-item" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=<?php echo $p->audio;?>&auto_play=false&visual=true"></iframe>
|
||||
<span class="thumb-icon"><i class="fas fa-volume-up"></i></span>
|
||||
<?php } elseif (!empty($p->quote)) {?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php } ?>
|
||||
<?php endif;?>
|
||||
|
||||
<?php if (!empty($p->quote) && $teaserType === 'trimmed'):?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight" style="margin: 1.6em 0;">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php echo get_teaser($p->body, $p->url);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if ($teaserType === 'trimmed'):?>
|
||||
<div class="text-base font-medium leading-6">
|
||||
<a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="<?php echo $p->title;?>" href="<?php echo $p->url;?>"><?php echo $readMore;?></a>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</li>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
<?php if (!empty($pagination['prev']) || !empty($pagination['next'])): ?>
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<nav class="flex justify-between">
|
||||
<?php if (!empty($pagination['prev'])): ?>
|
||||
<a class="break-words" rel="next" href="?page=<?php echo $page - 1 ?>"><?php echo i18n('next');?></a>
|
||||
<?php endif; ?>
|
||||
<?php if (empty($pagination['prev'])): ?>
|
||||
<button class="cursor-auto disabled:opacity-50" disabled=""><?php echo i18n('next');?></button>
|
||||
<?php endif; ?>
|
||||
<span class="page-numbers"><?php echo $pagination['pagenum'];?></span>
|
||||
<?php if (!empty($pagination['next'])): ?>
|
||||
<a class="break-words" rel="prev" href="?page=<?php echo $page + 1 ?>"><?php echo i18n('prev');?></a>
|
||||
<?php endif; ?>
|
||||
<?php if (empty($pagination['next'])): ?>
|
||||
<button class="cursor-auto disabled:opacity-50" disabled=""><?php echo i18n('prev');?></button>
|
||||
<?php endif; ?>
|
||||
</nav>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
110
themes/tailwind/static--front.html.php
Normal file
110
themes/tailwind/static--front.html.php
Normal file
|
|
@ -0,0 +1,110 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="space-y-2 pb-6 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14"><?php echo $static->title;?></h1>
|
||||
<?php if (authorized($p)):?><span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
<div class="prose max-w-none text-lg leading-7 pb-6 text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php echo $static->body;?>
|
||||
</div>
|
||||
<div class="space-y-2 md:space-y-5">
|
||||
<h2 class="text-2xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-4xl md:leading-14"><?php echo i18n('recent_posts');?></h2>
|
||||
</div>
|
||||
</div>
|
||||
<?php $posts = recent_posts(true);?>
|
||||
<?php $teaserType = config('teaser.type'); $readMore = config('read.more');?>
|
||||
<ul class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<?php foreach ($posts as $p):?>
|
||||
<?php $img = get_image($p->body);?>
|
||||
<li class="py-12">
|
||||
<article>
|
||||
<div class="space-y-2 xl:grid xl:grid-cols-4 xl:items-baseline xl:space-y-0">
|
||||
<dl>
|
||||
<dt class="sr-only"><?php echo i18n('posted_on');?></dt>
|
||||
<dd class="text-base font-medium leading-6 text-gray-500 dark:text-gray-400"><time><?php echo format_date($p->date);?></time>
|
||||
<?php if (authorized($p)):?> • <span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
</dd>
|
||||
|
||||
<?php if ($teaserType === 'trimmed') :?>
|
||||
<div class="pt-4 pr-6">
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="//img.youtube.com/vi/<?php echo get_video_id($p->video);?>/sddefault.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-play" viewBox="0 0 16 16"><path d="M10.804 8 5 4.633v6.734zm.792-.696a.802.802 0 0 1 0 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696z"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>">
|
||||
<img src="<?php echo theme_path();?>img/soundcloud.jpg" width="100%" alt="<?php echo $p->title;?>">
|
||||
<span class="thumb-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" fill="currentColor" class="bi bi-volume-up" viewBox="0 0 16 16"><path d="M11.536 14.01A8.47 8.47 0 0 0 14.026 8a8.47 8.47 0 0 0-2.49-6.01l-.708.707A7.48 7.48 0 0 1 13.025 8c0 2.071-.84 3.946-2.197 5.303z"/><path d="M10.121 12.596A6.48 6.48 0 0 0 12.025 8a6.48 6.48 0 0 0-1.904-4.596l-.707.707A5.48 5.48 0 0 1 11.025 8a5.48 5.48 0 0 1-1.61 3.89z"/><path d="M10.025 8a4.5 4.5 0 0 1-1.318 3.182L8 10.475A3.5 3.5 0 0 0 9.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.5 4.5 0 0 1 10.025 8M7 4a.5.5 0 0 0-.812-.39L3.825 5.5H1.5A.5.5 0 0 0 1 6v4a.5.5 0 0 0 .5.5h2.325l2.363 1.89A.5.5 0 0 0 7 12zM4.312 6.39 6 5.04v5.92L4.312 9.61A.5.5 0 0 0 4 9.5H2v-3h2a.5.5 0 0 0 .312-.11"/></svg>
|
||||
</span>
|
||||
</a>
|
||||
<?php } elseif (!empty($img)) {?>
|
||||
<a class="thumbnail" href="<?php echo $p->url;?>"><img src="<?php echo $img;?>" width="100%" alt="<?php echo $p->title;?>"></a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
|
||||
</dl>
|
||||
<div class="space-y-5 xl:col-span-3">
|
||||
<div class="space-y-6">
|
||||
<div>
|
||||
<?php if (!empty($p->link)) {?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->link;?>" target="_blank"><?php echo $p->title;?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" style="display:inline-block;margin-left: 3px;" class=" bi bi-link-45deg" viewBox="0 0 16 16">
|
||||
<path d="M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z"/>
|
||||
<path d="M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z"/>
|
||||
</svg>
|
||||
</a>
|
||||
</h2>
|
||||
<?php } else { ?>
|
||||
<h2 class="text-2xl font-bold leading-8 tracking-tight">
|
||||
<a class="text-gray-900 dark:text-gray-100" href="<?php echo $p->url;?>"><?php echo $p->title;?></a>
|
||||
</h2>
|
||||
<?php } ?>
|
||||
<div class="flex flex-wrap">
|
||||
<span class="mr-3 text-sm font-medium uppercase text-primary-500"><span class="tags"><?php echo $p->tag;?></span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="prose max-w-none text-gray-500 dark:text-gray-400 dark:prose-invert">
|
||||
<?php if ($teaserType !== 'trimmed') :?>
|
||||
<?php if (!empty($p->image)) {?>
|
||||
<img src="<?php echo $p->image;?>" width="100%" alt="<?php echo $p->title;?>">
|
||||
<?php } elseif (!empty($p->video)) {?>
|
||||
<div class="relative" style="padding-top: 56.25%">
|
||||
<iframe class="absolute inset-0 w-full h-full" src="https://www.youtube.com/embed/<?php echo get_video_id($p->video); ?>" frameborder="0" allowfullscreen></iframe>
|
||||
</div>
|
||||
<?php } elseif (!empty($p->audio)) {?>
|
||||
<iframe width="100%" height="100%" class="embed-responsive-item" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=<?php echo $p->audio;?>&auto_play=false&visual=true"></iframe>
|
||||
<?php } elseif (!empty($p->quote)) {?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php } ?>
|
||||
<?php endif;?>
|
||||
|
||||
<?php if (!empty($p->quote) && $teaserType === 'trimmed'):?>
|
||||
<blockquote class="text-2xl italic font-bold leading-8 tracking-tight" style="margin: 1.6em 0;">
|
||||
<?php echo $p->quote;?>
|
||||
</blockquote>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php echo get_teaser($p->body, $p->url);?>
|
||||
</div>
|
||||
</div>
|
||||
<?php if ($teaserType === 'trimmed'):?>
|
||||
<div class="text-base font-medium leading-6">
|
||||
<a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="<?php echo $p->title;?>" href="<?php echo $p->url;?>"><?php echo $readMore;?></a>
|
||||
</div>
|
||||
<?php endif;?>
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
</li>
|
||||
<?php endforeach;?>
|
||||
</ul>
|
||||
<?php if (config('blog.enable') === 'true'):?>
|
||||
<div style="border:none;text-align:right;"><a class="text-primary-500 hover:text-primary-600 dark:hover:text-primary-400" aria-label="<?php echo i18n('all_blog_posts');?>" href="<?php echo site_url() . blog_path();?>"><?php echo i18n('all_blog_posts');?> →</a></div>
|
||||
<?php endif;?>
|
||||
12
themes/tailwind/static.html.php
Normal file
12
themes/tailwind/static.html.php
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<?php if (!defined('HTMLY')) die('HTMLy'); ?>
|
||||
<div class="divide-y divide-gray-200 dark:divide-gray-700">
|
||||
<div class="space-y-2 pb-8 pt-6 md:space-y-5">
|
||||
<h1 class="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14"><?php echo $static->title;?></h1>
|
||||
<?php if (authorized($p)):?><span><a href="<?php echo $p->url;?>/edit?destination=post"><?php echo i18n('edit');?></a></span><?php endif;?>
|
||||
</div>
|
||||
<div class="items-start space-y-2 xl:grid xl:gap-x-8 xl:space-y-0">
|
||||
<div class="prose max-w-none pb-8 pt-8 dark:prose-invert">
|
||||
<?php echo $static->body;?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Loading…
Add table
Add a link
Reference in a new issue