@stephansama/catppuccin-xsl 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +31 -0
- package/dist/opml-frappe.xsl +81 -0
- package/dist/opml-latte.xsl +81 -0
- package/dist/opml-macchiato.xsl +81 -0
- package/dist/opml-mocha.xsl +81 -0
- package/dist/rss-frappe.xsl +79 -0
- package/dist/rss-macchiato.xsl +79 -0
- package/dist/rss-mocha.xsl +79 -0
- package/dist/sitemap-frappe.xsl +57 -0
- package/dist/sitemap-macchiato.xsl +57 -0
- package/dist/sitemap-mocha.xsl +57 -0
- package/package.json +60 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Stephan Randle
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# @stephansama/catppuccin-xsl
|
|
2
|
+
|
|
3
|
+
[](https://github.com/stephansama/packages/tree/main/core/catppuccin-xsl)
|
|
4
|
+
[](https://packages.stephansama.info/api/@stephansama/catppuccin-xsl)
|
|
5
|
+
[](https://www.npmjs.com/package/@stephansama/catppuccin-xsl)
|
|
6
|
+
[](https://www.npmjs.com/package/@stephansama/catppuccin-xsl)
|
|
7
|
+
|
|
8
|
+
Catppuccin styles for various xsl formats
|
|
9
|
+
|
|
10
|
+
##### Table of contents
|
|
11
|
+
|
|
12
|
+
<details><summary>Open Table of contents</summary>
|
|
13
|
+
|
|
14
|
+
- [Installation](#installation)
|
|
15
|
+
- [Usage](#usage)
|
|
16
|
+
- [References](#references)
|
|
17
|
+
|
|
18
|
+
</details>
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
pnpm install @stephansama/catppuccin-xsl
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Usage
|
|
27
|
+
|
|
28
|
+
## References
|
|
29
|
+
|
|
30
|
+
- <https://www.xml.style/> - collection of `OPML`, `RSS` and `sitemap` stylesheets
|
|
31
|
+
- [pretty-feed-v3](https://github.com/genmon/aboutfeeds/blob/main/tools/pretty-feed-v3.xsl) rss stylesheet
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
2
|
+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
3
|
+
<xsl:template match="/opml">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
<meta name="referrer" content="unsafe-url" />
|
|
8
|
+
<title>
|
|
9
|
+
<xsl:value-of select="head/title" />
|
|
10
|
+
</title>
|
|
11
|
+
<style>:root{--background-body:#eff1f5;--background:#eff1f5;--background-alt:#eff1f5;--selection:#9e9e9e;--text-main:#4c4f69;--text-bright:#000;--text-muted:#70777f;--links:#1e66f5;--focus:#1e66f5;--border:#9ca0b0;--code:#000;--animation-duration:.1s;--button-base:#d0cfcf;--button-hover:#9b9b9b;--scrollbar-thumb:#aaa;--scrollbar-thumb-hover:var(--button-hover);--form-placeholder:#949494;--form-text:#1d1d1d;--variable:#40a02b;--highlight:#df8e1d;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root{--background-body:#1e1e2e;--background:#1e1e2e;--background-alt:#1e1e2e;--selection:#89b4fa;--text-main:#dbdbdb;--text-bright:#fff;--text-muted:#a9b1ba;--links:#89b4fa;--focus:#89b4fa;--border:#526980;--code:#ffbe85;--animation-duration:.1s;--button-base:#0c151c;--button-hover:#040a0f;--scrollbar-thumb:var(--button-hover);--scrollbar-thumb-hover:#000;--form-placeholder:#a9a9a9;--form-text:#fff;--variable:#cba6f7;--highlight:#f9e2af;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}}html{scrollbar-color:#aaa #fff;scrollbar-color:var(--scrollbar-thumb)var(--background-body);scrollbar-width:thin}@media (prefers-color-scheme:dark){html{scrollbar-color:#040a0f #202b38;scrollbar-color:var(--scrollbar-thumb)var(--background-body)}}body{word-wrap:break-word;color:var(--text-main);max-width:800px;background:#fff;background:var(--background-body);text-rendering:optimizeLegibility;margin:20px auto;padding:0 10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){body{background:#202b38;background:var(--background-body);color:var(--text-main)}}button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}h1{margin-top:0;font-size:2.2em}h1,h2,h3,h4,h5,h6{margin-top:24px;margin-bottom:12px}h1{color:var(--text-bright)}@media (prefers-color-scheme:dark){h1{color:var(--text-bright)}}h2{color:var(--text-bright)}@media (prefers-color-scheme:dark){h2{color:var(--text-bright)}}h3{color:var(--text-bright)}@media (prefers-color-scheme:dark){h3{color:var(--text-bright)}}h4{color:var(--text-bright)}@media (prefers-color-scheme:dark){h4{color:var(--text-bright)}}h5{color:var(--text-bright)}@media (prefers-color-scheme:dark){h5{color:var(--text-bright)}}h6{color:var(--text-bright)}@media (prefers-color-scheme:dark){h6{color:var(--text-bright)}}strong{color:var(--text-bright)}@media (prefers-color-scheme:dark){strong{color:var(--text-bright)}}b,h1,h2,h3,h4,h5,h6,strong,th{font-weight:600}q:after,q:before{content:none}blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}blockquote>footer{border:0;font-style:normal}address,blockquote cite{font-style:normal}a[href^=mailto\:]:before{content:"📧 "}a[href^=tel\:]:before{content:"📞 "}a[href^=sms\:]:before{content:"💬 "}mark{background-color:#ff0;background-color:var(--highlight);color:#000;border-radius:2px;padding:0 2px}@media (prefers-color-scheme:dark){mark{background-color:#efdb43;background-color:var(--highlight)}}a>code,a>strong{color:inherit}button,input[type=button],input[type=checkbox],input[type=radio],input[type=range],input[type=reset],input[type=submit],select{cursor:pointer}input,select{display:block}[type=checkbox],[type=radio]{display:initial}input{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){input{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){button{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}textarea{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){textarea{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}select{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){select{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){button{background-color:#0c151c;background-color:var(--button-base)}}input[type=submit]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=submit]{background-color:#0c151c;background-color:var(--button-base)}}input[type=reset]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=reset]{background-color:#0c151c;background-color:var(--button-base)}}input[type=button]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=button]{background-color:#0c151c;background-color:var(--button-base)}}button:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){button:hover{background:#040a0f;background:var(--button-hover)}}input[type=submit]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=submit]:hover{background:#040a0f;background:var(--button-hover)}}input[type=reset]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=reset]:hover{background:#040a0f;background:var(--button-hover)}}input[type=button]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=button]:hover{background:#040a0f;background:var(--button-hover)}}input[type=color]{cursor:pointer;min-height:2rem;padding:8px}input[type=checkbox],input[type=radio]{width:1em;height:1em}input[type=radio]{border-radius:100%}input{vertical-align:top}label{vertical-align:middle;margin-bottom:4px;display:inline-block}button,input:not([type=checkbox]):not([type=radio]),input[type=range],select,textarea{-webkit-appearance:none}textarea{box-sizing:border-box;resize:vertical;margin-right:0;display:block}textarea:not([cols]){width:100%}textarea:not([rows]){height:140px;min-height:40px}select{background:#efefef url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat;padding-right:35px}@media (prefers-color-scheme:dark){select{background:#161f27 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat}}select::-ms-expand{display:none}select[multiple]{background-image:none;padding-right:10px;overflow-y:auto}input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:active,input[type=button]:active,input[type=checkbox]:active,input[type=radio]:active,input[type=range]:active,input[type=reset]:active,input[type=submit]:active{transform:translateY(2px)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}@media (prefers-color-scheme:dark){:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}}fieldset{border:1px solid #0096bfab;border:1px solid var(--focus);border-radius:6px;margin:0 0 12px;padding:10px}@media (prefers-color-scheme:dark){fieldset{border:1px solid #0096bfab;border:1px solid var(--focus)}}legend{font-size:.9em;font-weight:600}input[type=range]{background:0 0;margin:10px 0;padding:10px 0}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-webkit-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-webkit-slider-thumb{background:#dbdbdb;background:var(--border);-webkit-appearance:none;border-radius:50%;width:20px;height:20px;margin-top:-7px;box-shadow:0 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-webkit-slider-runnable-track{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-moz-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-thumb{background:#dbdbdb;background:var(--border);border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-thumb{background:#526980;background:var(--border)}}input[type=range]::-ms-track{color:#0000;background:0 0;border-width:16px 0;border-color:#0000;width:100%;height:9.5px}input[type=range]::-ms-fill-lower{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]::-ms-fill-upper{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-upper{background:#161f27;background:var(--background)}}input[type=range]::-ms-thumb{background:#dbdbdb;background:var(--border);border:1px solid #000;border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-ms-fill-lower{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]:focus::-ms-fill-upper{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-upper{background:#161f27;background:var(--background)}}a{color:var(--links);text-decoration:none}@media (prefers-color-scheme:dark){a{color:var(--links)}}a:hover{text-decoration:underline}code{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){code{color:var(--code);background:#161f27;background:var(--background)}}samp{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){samp{color:var(--code);background:#161f27;background:var(--background)}}time{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){time{color:var(--code);background:#161f27;background:var(--background)}}pre>code{padding:10px;display:block;overflow-x:auto}var{color:var(--variable);font-family:monospace;font-style:normal}@media (prefers-color-scheme:dark){var{color:var(--variable)}}kbd{background:#efefef;background:var(--background);border:1px solid #dbdbdb;border:1px solid var(--border);color:var(--text-main);border-radius:2px;padding:2px 4px}@media (prefers-color-scheme:dark){kbd{color:var(--text-main);border:1px solid #526980;border:1px solid var(--border);background:#161f27;background:var(--background)}}img,video{max-width:100%;height:auto}hr{border:none;border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){hr{border-top:1px solid #526980;border-top:1px solid var(--border)}}table{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px}table caption,td,th{text-align:left}td,th{vertical-align:top;word-wrap:break-word;padding:6px}thead{border-bottom:1px solid #dbdbdb;border-bottom:1px solid var(--border)}@media (prefers-color-scheme:dark){thead{border-bottom:1px solid #526980;border-bottom:1px solid var(--border)}}tfoot{border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){tfoot{border-top:1px solid #526980;border-top:1px solid var(--border)}}tbody tr:nth-child(2n){background-color:#efefef;background-color:var(--background)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n){background-color:#161f27;background-color:var(--background)}}tbody tr:nth-child(2n) button{background-color:#f7f7f7;background-color:var(--background-alt)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button{background-color:#1a242f;background-color:var(--background-alt)}}tbody tr:nth-child(2n) button:hover{background-color:#fff;background-color:var(--background-body)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button:hover{background-color:#202b38;background-color:var(--background-body)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#efefef;background:var(--background);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-track{background:#161f27;background:var(--background)}}::-webkit-scrollbar-thumb{background:#aaa;background:var(--scrollbar-thumb);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb{background:#040a0f;background:var(--scrollbar-thumb)}}::-webkit-scrollbar-thumb:hover{background:#9b9b9b;background:var(--scrollbar-thumb-hover)}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb:hover{background:#000;background:var(--scrollbar-thumb-hover)}}::-moz-selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}::selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}@media (prefers-color-scheme:dark){::-moz-selection{color:var(--text-bright)}::-moz-selection{background-color:#1c76c5;background-color:var(--selection)}::selection{background-color:#1c76c5;background-color:var(--selection)}}details{background-color:#f7f7f7;background-color:var(--background-alt);border-radius:6px;flex-direction:column;align-items:flex-start;margin:1em 0;padding:10px 10px 0;display:flex;overflow:hidden}@media (prefers-color-scheme:dark){details{background-color:#1a242f;background-color:var(--background-alt)}}details[open]{padding:10px}details>:last-child{margin-bottom:0}details[open] summary{margin-bottom:10px}summary{background-color:#efefef;background-color:var(--background);cursor:pointer;outline:none;margin:-10px -10px 0;padding:10px;display:list-item}@media (prefers-color-scheme:dark){summary{background-color:#161f27;background-color:var(--background)}}summary:focus,summary:hover{text-decoration:underline}details>:not(summary){margin-top:0}summary::-webkit-details-marker{color:var(--text-main)}@media (prefers-color-scheme:dark){summary::-webkit-details-marker{color:var(--text-main)}}dialog{background-color:#f7f7f7;background-color:var(--background-alt);color:var(--text-main);border:#dbdbdb;border-color:var(--border);border-radius:6px;padding:10px 30px}@media (prefers-color-scheme:dark){dialog{border-color:#526980;border-color:var(--border);color:var(--text-main);background-color:#1a242f;background-color:var(--background-alt)}}dialog>header:first-child{background-color:#efefef;background-color:var(--background);text-align:center;border-radius:6px 6px 0 0;margin:-10px -30px 10px;padding:10px}@media (prefers-color-scheme:dark){dialog>header:first-child{background-color:#161f27;background-color:var(--background)}}dialog::-webkit-backdrop{backdrop-filter:blur(4px);background:#0000009c}dialog::backdrop{backdrop-filter:blur(4px);background:#0000009c}footer{border-top:1px solid #dbdbdb;border-top:1px solid var(--border);color:var(--text-muted);padding-top:10px}@media (prefers-color-scheme:dark){footer{color:var(--text-muted);border-top:1px solid #526980;border-top:1px solid var(--border)}}body>footer{margin-top:40px}@media print{body,button,code,details,input,pre,summary,textarea{background-color:#fff}button,input,textarea{border:1px solid #000}body,button,code,footer,h1,h2,h3,h4,h5,h6,input,pre,strong,summary,textarea,summary::marker{color:#000}summary::-webkit-details-marker{color:#000}tbody tr:nth-child(2n){background-color:#f2f2f2}a{color:#00f;text-decoration:underline}}</style>
|
|
12
|
+
<script>
|
|
13
|
+
window.addEventListener('load', function() {
|
|
14
|
+
var viewPara = document.getElementById("viewpara");
|
|
15
|
+
viewPara.style.display = "block";
|
|
16
|
+
var viewUrl = document.getElementById("viewUrl");
|
|
17
|
+
viewUrl.value = window.location.href;
|
|
18
|
+
});
|
|
19
|
+
</script>
|
|
20
|
+
</head>
|
|
21
|
+
<body>
|
|
22
|
+
<h1>
|
|
23
|
+
<xsl:value-of select="head/title" />
|
|
24
|
+
</h1>
|
|
25
|
+
<p id="viewpara" style="display:none;">
|
|
26
|
+
<form method="get" action="https://opml-viewer.fileformat.info/view.html"
|
|
27
|
+
id="viewform">
|
|
28
|
+
<input type="hidden" name="url" id="viewUrl" value="" />
|
|
29
|
+
<!-- customize by adding more inputs with the viewer parameters --> Open in the <button>OPML
|
|
30
|
+
Viewer</button> (requires JavaScript). </form>
|
|
31
|
+
</p>
|
|
32
|
+
<p>
|
|
33
|
+
<time>
|
|
34
|
+
<xsl:value-of select="head/dateCreated" />
|
|
35
|
+
</time>
|
|
36
|
+
</p>
|
|
37
|
+
<xsl:apply-templates select="body/outline" />
|
|
38
|
+
</body>
|
|
39
|
+
</html>
|
|
40
|
+
</xsl:template>
|
|
41
|
+
<xsl:template match="outline" xmlns="http://www.w3.org/1999/xhtml">
|
|
42
|
+
<xsl:choose>
|
|
43
|
+
<xsl:when test="@type">
|
|
44
|
+
<xsl:choose>
|
|
45
|
+
<xsl:when test="@xmlUrl">
|
|
46
|
+
<li>
|
|
47
|
+
<div style="display: flex; gap: 8px; align-items: center;">
|
|
48
|
+
<a href="{@xmlUrl}" style="display: flex; justify-content: center; align-items: center;">
|
|
49
|
+
<img src="https://www.rss.style/favicon.svg"
|
|
50
|
+
style="height:1rem;" alt="RSS/Atom Feed" />
|
|
51
|
+
</a>
|
|
52
|
+
<a href="{@htmlUrl}">
|
|
53
|
+
<xsl:value-of select="@text" />
|
|
54
|
+
</a>
|
|
55
|
+
</div>
|
|
56
|
+
</li>
|
|
57
|
+
</xsl:when>
|
|
58
|
+
<xsl:otherwise>
|
|
59
|
+
<li>
|
|
60
|
+
<a href="{@url}">
|
|
61
|
+
<xsl:value-of select="@text" />
|
|
62
|
+
</a>
|
|
63
|
+
</li>
|
|
64
|
+
</xsl:otherwise>
|
|
65
|
+
</xsl:choose>
|
|
66
|
+
</xsl:when>
|
|
67
|
+
<xsl:otherwise>
|
|
68
|
+
<details> <!-- adding an open="open" attribute will make everything open by default -->
|
|
69
|
+
<summary>
|
|
70
|
+
<xsl:value-of select="@text" />
|
|
71
|
+
</summary>
|
|
72
|
+
<ul>
|
|
73
|
+
<xsl:apply-templates select="outline" />
|
|
74
|
+
</ul>
|
|
75
|
+
</details>
|
|
76
|
+
</xsl:otherwise>
|
|
77
|
+
</xsl:choose>
|
|
78
|
+
</xsl:template>
|
|
79
|
+
</xsl:stylesheet>
|
|
80
|
+
|
|
81
|
+
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
2
|
+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
3
|
+
<xsl:template match="/opml">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
<meta name="referrer" content="unsafe-url" />
|
|
8
|
+
<title>
|
|
9
|
+
<xsl:value-of select="head/title" />
|
|
10
|
+
</title>
|
|
11
|
+
<style>:root{--background-body:#eff1f5;--background:#eff1f5;--background-alt:#eff1f5;--selection:#9e9e9e;--text-main:#4c4f69;--text-bright:#000;--text-muted:#70777f;--links:#1e66f5;--focus:#1e66f5;--border:#9ca0b0;--code:#000;--animation-duration:.1s;--button-base:#d0cfcf;--button-hover:#9b9b9b;--scrollbar-thumb:#aaa;--scrollbar-thumb-hover:var(--button-hover);--form-placeholder:#949494;--form-text:#1d1d1d;--variable:#40a02b;--highlight:#df8e1d;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root{--background-body:#1e1e2e;--background:#1e1e2e;--background-alt:#1e1e2e;--selection:#89b4fa;--text-main:#dbdbdb;--text-bright:#fff;--text-muted:#a9b1ba;--links:#89b4fa;--focus:#89b4fa;--border:#526980;--code:#ffbe85;--animation-duration:.1s;--button-base:#0c151c;--button-hover:#040a0f;--scrollbar-thumb:var(--button-hover);--scrollbar-thumb-hover:#000;--form-placeholder:#a9a9a9;--form-text:#fff;--variable:#cba6f7;--highlight:#f9e2af;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}}html{scrollbar-color:#aaa #fff;scrollbar-color:var(--scrollbar-thumb)var(--background-body);scrollbar-width:thin}@media (prefers-color-scheme:dark){html{scrollbar-color:#040a0f #202b38;scrollbar-color:var(--scrollbar-thumb)var(--background-body)}}body{word-wrap:break-word;color:var(--text-main);max-width:800px;background:#fff;background:var(--background-body);text-rendering:optimizeLegibility;margin:20px auto;padding:0 10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){body{background:#202b38;background:var(--background-body);color:var(--text-main)}}button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}h1{margin-top:0;font-size:2.2em}h1,h2,h3,h4,h5,h6{margin-top:24px;margin-bottom:12px}h1{color:var(--text-bright)}@media (prefers-color-scheme:dark){h1{color:var(--text-bright)}}h2{color:var(--text-bright)}@media (prefers-color-scheme:dark){h2{color:var(--text-bright)}}h3{color:var(--text-bright)}@media (prefers-color-scheme:dark){h3{color:var(--text-bright)}}h4{color:var(--text-bright)}@media (prefers-color-scheme:dark){h4{color:var(--text-bright)}}h5{color:var(--text-bright)}@media (prefers-color-scheme:dark){h5{color:var(--text-bright)}}h6{color:var(--text-bright)}@media (prefers-color-scheme:dark){h6{color:var(--text-bright)}}strong{color:var(--text-bright)}@media (prefers-color-scheme:dark){strong{color:var(--text-bright)}}b,h1,h2,h3,h4,h5,h6,strong,th{font-weight:600}q:after,q:before{content:none}blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}blockquote>footer{border:0;font-style:normal}address,blockquote cite{font-style:normal}a[href^=mailto\:]:before{content:"📧 "}a[href^=tel\:]:before{content:"📞 "}a[href^=sms\:]:before{content:"💬 "}mark{background-color:#ff0;background-color:var(--highlight);color:#000;border-radius:2px;padding:0 2px}@media (prefers-color-scheme:dark){mark{background-color:#efdb43;background-color:var(--highlight)}}a>code,a>strong{color:inherit}button,input[type=button],input[type=checkbox],input[type=radio],input[type=range],input[type=reset],input[type=submit],select{cursor:pointer}input,select{display:block}[type=checkbox],[type=radio]{display:initial}input{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){input{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){button{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}textarea{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){textarea{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}select{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){select{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){button{background-color:#0c151c;background-color:var(--button-base)}}input[type=submit]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=submit]{background-color:#0c151c;background-color:var(--button-base)}}input[type=reset]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=reset]{background-color:#0c151c;background-color:var(--button-base)}}input[type=button]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=button]{background-color:#0c151c;background-color:var(--button-base)}}button:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){button:hover{background:#040a0f;background:var(--button-hover)}}input[type=submit]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=submit]:hover{background:#040a0f;background:var(--button-hover)}}input[type=reset]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=reset]:hover{background:#040a0f;background:var(--button-hover)}}input[type=button]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=button]:hover{background:#040a0f;background:var(--button-hover)}}input[type=color]{cursor:pointer;min-height:2rem;padding:8px}input[type=checkbox],input[type=radio]{width:1em;height:1em}input[type=radio]{border-radius:100%}input{vertical-align:top}label{vertical-align:middle;margin-bottom:4px;display:inline-block}button,input:not([type=checkbox]):not([type=radio]),input[type=range],select,textarea{-webkit-appearance:none}textarea{box-sizing:border-box;resize:vertical;margin-right:0;display:block}textarea:not([cols]){width:100%}textarea:not([rows]){height:140px;min-height:40px}select{background:#efefef url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat;padding-right:35px}@media (prefers-color-scheme:dark){select{background:#161f27 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat}}select::-ms-expand{display:none}select[multiple]{background-image:none;padding-right:10px;overflow-y:auto}input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:active,input[type=button]:active,input[type=checkbox]:active,input[type=radio]:active,input[type=range]:active,input[type=reset]:active,input[type=submit]:active{transform:translateY(2px)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}@media (prefers-color-scheme:dark){:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}}fieldset{border:1px solid #0096bfab;border:1px solid var(--focus);border-radius:6px;margin:0 0 12px;padding:10px}@media (prefers-color-scheme:dark){fieldset{border:1px solid #0096bfab;border:1px solid var(--focus)}}legend{font-size:.9em;font-weight:600}input[type=range]{background:0 0;margin:10px 0;padding:10px 0}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-webkit-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-webkit-slider-thumb{background:#dbdbdb;background:var(--border);-webkit-appearance:none;border-radius:50%;width:20px;height:20px;margin-top:-7px;box-shadow:0 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-webkit-slider-runnable-track{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-moz-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-thumb{background:#dbdbdb;background:var(--border);border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-thumb{background:#526980;background:var(--border)}}input[type=range]::-ms-track{color:#0000;background:0 0;border-width:16px 0;border-color:#0000;width:100%;height:9.5px}input[type=range]::-ms-fill-lower{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]::-ms-fill-upper{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-upper{background:#161f27;background:var(--background)}}input[type=range]::-ms-thumb{background:#dbdbdb;background:var(--border);border:1px solid #000;border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-ms-fill-lower{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]:focus::-ms-fill-upper{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-upper{background:#161f27;background:var(--background)}}a{color:var(--links);text-decoration:none}@media (prefers-color-scheme:dark){a{color:var(--links)}}a:hover{text-decoration:underline}code{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){code{color:var(--code);background:#161f27;background:var(--background)}}samp{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){samp{color:var(--code);background:#161f27;background:var(--background)}}time{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){time{color:var(--code);background:#161f27;background:var(--background)}}pre>code{padding:10px;display:block;overflow-x:auto}var{color:var(--variable);font-family:monospace;font-style:normal}@media (prefers-color-scheme:dark){var{color:var(--variable)}}kbd{background:#efefef;background:var(--background);border:1px solid #dbdbdb;border:1px solid var(--border);color:var(--text-main);border-radius:2px;padding:2px 4px}@media (prefers-color-scheme:dark){kbd{color:var(--text-main);border:1px solid #526980;border:1px solid var(--border);background:#161f27;background:var(--background)}}img,video{max-width:100%;height:auto}hr{border:none;border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){hr{border-top:1px solid #526980;border-top:1px solid var(--border)}}table{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px}table caption,td,th{text-align:left}td,th{vertical-align:top;word-wrap:break-word;padding:6px}thead{border-bottom:1px solid #dbdbdb;border-bottom:1px solid var(--border)}@media (prefers-color-scheme:dark){thead{border-bottom:1px solid #526980;border-bottom:1px solid var(--border)}}tfoot{border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){tfoot{border-top:1px solid #526980;border-top:1px solid var(--border)}}tbody tr:nth-child(2n){background-color:#efefef;background-color:var(--background)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n){background-color:#161f27;background-color:var(--background)}}tbody tr:nth-child(2n) button{background-color:#f7f7f7;background-color:var(--background-alt)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button{background-color:#1a242f;background-color:var(--background-alt)}}tbody tr:nth-child(2n) button:hover{background-color:#fff;background-color:var(--background-body)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button:hover{background-color:#202b38;background-color:var(--background-body)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#efefef;background:var(--background);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-track{background:#161f27;background:var(--background)}}::-webkit-scrollbar-thumb{background:#aaa;background:var(--scrollbar-thumb);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb{background:#040a0f;background:var(--scrollbar-thumb)}}::-webkit-scrollbar-thumb:hover{background:#9b9b9b;background:var(--scrollbar-thumb-hover)}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb:hover{background:#000;background:var(--scrollbar-thumb-hover)}}::-moz-selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}::selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}@media (prefers-color-scheme:dark){::-moz-selection{color:var(--text-bright)}::-moz-selection{background-color:#1c76c5;background-color:var(--selection)}::selection{background-color:#1c76c5;background-color:var(--selection)}}details{background-color:#f7f7f7;background-color:var(--background-alt);border-radius:6px;flex-direction:column;align-items:flex-start;margin:1em 0;padding:10px 10px 0;display:flex;overflow:hidden}@media (prefers-color-scheme:dark){details{background-color:#1a242f;background-color:var(--background-alt)}}details[open]{padding:10px}details>:last-child{margin-bottom:0}details[open] summary{margin-bottom:10px}summary{background-color:#efefef;background-color:var(--background);cursor:pointer;outline:none;margin:-10px -10px 0;padding:10px;display:list-item}@media (prefers-color-scheme:dark){summary{background-color:#161f27;background-color:var(--background)}}summary:focus,summary:hover{text-decoration:underline}details>:not(summary){margin-top:0}summary::-webkit-details-marker{color:var(--text-main)}@media (prefers-color-scheme:dark){summary::-webkit-details-marker{color:var(--text-main)}}dialog{background-color:#f7f7f7;background-color:var(--background-alt);color:var(--text-main);border:#dbdbdb;border-color:var(--border);border-radius:6px;padding:10px 30px}@media (prefers-color-scheme:dark){dialog{border-color:#526980;border-color:var(--border);color:var(--text-main);background-color:#1a242f;background-color:var(--background-alt)}}dialog>header:first-child{background-color:#efefef;background-color:var(--background);text-align:center;border-radius:6px 6px 0 0;margin:-10px -30px 10px;padding:10px}@media (prefers-color-scheme:dark){dialog>header:first-child{background-color:#161f27;background-color:var(--background)}}dialog::-webkit-backdrop{backdrop-filter:blur(4px);background:#0000009c}dialog::backdrop{backdrop-filter:blur(4px);background:#0000009c}footer{border-top:1px solid #dbdbdb;border-top:1px solid var(--border);color:var(--text-muted);padding-top:10px}@media (prefers-color-scheme:dark){footer{color:var(--text-muted);border-top:1px solid #526980;border-top:1px solid var(--border)}}body>footer{margin-top:40px}@media print{body,button,code,details,input,pre,summary,textarea{background-color:#fff}button,input,textarea{border:1px solid #000}body,button,code,footer,h1,h2,h3,h4,h5,h6,input,pre,strong,summary,textarea,summary::marker{color:#000}summary::-webkit-details-marker{color:#000}tbody tr:nth-child(2n){background-color:#f2f2f2}a{color:#00f;text-decoration:underline}}</style>
|
|
12
|
+
<script>
|
|
13
|
+
window.addEventListener('load', function() {
|
|
14
|
+
var viewPara = document.getElementById("viewpara");
|
|
15
|
+
viewPara.style.display = "block";
|
|
16
|
+
var viewUrl = document.getElementById("viewUrl");
|
|
17
|
+
viewUrl.value = window.location.href;
|
|
18
|
+
});
|
|
19
|
+
</script>
|
|
20
|
+
</head>
|
|
21
|
+
<body>
|
|
22
|
+
<h1>
|
|
23
|
+
<xsl:value-of select="head/title" />
|
|
24
|
+
</h1>
|
|
25
|
+
<p id="viewpara" style="display:none;">
|
|
26
|
+
<form method="get" action="https://opml-viewer.fileformat.info/view.html"
|
|
27
|
+
id="viewform">
|
|
28
|
+
<input type="hidden" name="url" id="viewUrl" value="" />
|
|
29
|
+
<!-- customize by adding more inputs with the viewer parameters --> Open in the <button>OPML
|
|
30
|
+
Viewer</button> (requires JavaScript). </form>
|
|
31
|
+
</p>
|
|
32
|
+
<p>
|
|
33
|
+
<time>
|
|
34
|
+
<xsl:value-of select="head/dateCreated" />
|
|
35
|
+
</time>
|
|
36
|
+
</p>
|
|
37
|
+
<xsl:apply-templates select="body/outline" />
|
|
38
|
+
</body>
|
|
39
|
+
</html>
|
|
40
|
+
</xsl:template>
|
|
41
|
+
<xsl:template match="outline" xmlns="http://www.w3.org/1999/xhtml">
|
|
42
|
+
<xsl:choose>
|
|
43
|
+
<xsl:when test="@type">
|
|
44
|
+
<xsl:choose>
|
|
45
|
+
<xsl:when test="@xmlUrl">
|
|
46
|
+
<li>
|
|
47
|
+
<div style="display: flex; gap: 8px; align-items: center;">
|
|
48
|
+
<a href="{@xmlUrl}" style="display: flex; justify-content: center; align-items: center;">
|
|
49
|
+
<img src="https://www.rss.style/favicon.svg"
|
|
50
|
+
style="height:1rem;" alt="RSS/Atom Feed" />
|
|
51
|
+
</a>
|
|
52
|
+
<a href="{@htmlUrl}">
|
|
53
|
+
<xsl:value-of select="@text" />
|
|
54
|
+
</a>
|
|
55
|
+
</div>
|
|
56
|
+
</li>
|
|
57
|
+
</xsl:when>
|
|
58
|
+
<xsl:otherwise>
|
|
59
|
+
<li>
|
|
60
|
+
<a href="{@url}">
|
|
61
|
+
<xsl:value-of select="@text" />
|
|
62
|
+
</a>
|
|
63
|
+
</li>
|
|
64
|
+
</xsl:otherwise>
|
|
65
|
+
</xsl:choose>
|
|
66
|
+
</xsl:when>
|
|
67
|
+
<xsl:otherwise>
|
|
68
|
+
<details> <!-- adding an open="open" attribute will make everything open by default -->
|
|
69
|
+
<summary>
|
|
70
|
+
<xsl:value-of select="@text" />
|
|
71
|
+
</summary>
|
|
72
|
+
<ul>
|
|
73
|
+
<xsl:apply-templates select="outline" />
|
|
74
|
+
</ul>
|
|
75
|
+
</details>
|
|
76
|
+
</xsl:otherwise>
|
|
77
|
+
</xsl:choose>
|
|
78
|
+
</xsl:template>
|
|
79
|
+
</xsl:stylesheet>
|
|
80
|
+
|
|
81
|
+
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
2
|
+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
3
|
+
<xsl:template match="/opml">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
<meta name="referrer" content="unsafe-url" />
|
|
8
|
+
<title>
|
|
9
|
+
<xsl:value-of select="head/title" />
|
|
10
|
+
</title>
|
|
11
|
+
<style>:root{--background-body:#eff1f5;--background:#eff1f5;--background-alt:#eff1f5;--selection:#9e9e9e;--text-main:#4c4f69;--text-bright:#000;--text-muted:#70777f;--links:#1e66f5;--focus:#1e66f5;--border:#9ca0b0;--code:#000;--animation-duration:.1s;--button-base:#d0cfcf;--button-hover:#9b9b9b;--scrollbar-thumb:#aaa;--scrollbar-thumb-hover:var(--button-hover);--form-placeholder:#949494;--form-text:#1d1d1d;--variable:#40a02b;--highlight:#df8e1d;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root{--background-body:#1e1e2e;--background:#1e1e2e;--background-alt:#1e1e2e;--selection:#89b4fa;--text-main:#dbdbdb;--text-bright:#fff;--text-muted:#a9b1ba;--links:#89b4fa;--focus:#89b4fa;--border:#526980;--code:#ffbe85;--animation-duration:.1s;--button-base:#0c151c;--button-hover:#040a0f;--scrollbar-thumb:var(--button-hover);--scrollbar-thumb-hover:#000;--form-placeholder:#a9a9a9;--form-text:#fff;--variable:#cba6f7;--highlight:#f9e2af;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}}html{scrollbar-color:#aaa #fff;scrollbar-color:var(--scrollbar-thumb)var(--background-body);scrollbar-width:thin}@media (prefers-color-scheme:dark){html{scrollbar-color:#040a0f #202b38;scrollbar-color:var(--scrollbar-thumb)var(--background-body)}}body{word-wrap:break-word;color:var(--text-main);max-width:800px;background:#fff;background:var(--background-body);text-rendering:optimizeLegibility;margin:20px auto;padding:0 10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){body{background:#202b38;background:var(--background-body);color:var(--text-main)}}button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}h1{margin-top:0;font-size:2.2em}h1,h2,h3,h4,h5,h6{margin-top:24px;margin-bottom:12px}h1{color:var(--text-bright)}@media (prefers-color-scheme:dark){h1{color:var(--text-bright)}}h2{color:var(--text-bright)}@media (prefers-color-scheme:dark){h2{color:var(--text-bright)}}h3{color:var(--text-bright)}@media (prefers-color-scheme:dark){h3{color:var(--text-bright)}}h4{color:var(--text-bright)}@media (prefers-color-scheme:dark){h4{color:var(--text-bright)}}h5{color:var(--text-bright)}@media (prefers-color-scheme:dark){h5{color:var(--text-bright)}}h6{color:var(--text-bright)}@media (prefers-color-scheme:dark){h6{color:var(--text-bright)}}strong{color:var(--text-bright)}@media (prefers-color-scheme:dark){strong{color:var(--text-bright)}}b,h1,h2,h3,h4,h5,h6,strong,th{font-weight:600}q:after,q:before{content:none}blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}blockquote>footer{border:0;font-style:normal}address,blockquote cite{font-style:normal}a[href^=mailto\:]:before{content:"📧 "}a[href^=tel\:]:before{content:"📞 "}a[href^=sms\:]:before{content:"💬 "}mark{background-color:#ff0;background-color:var(--highlight);color:#000;border-radius:2px;padding:0 2px}@media (prefers-color-scheme:dark){mark{background-color:#efdb43;background-color:var(--highlight)}}a>code,a>strong{color:inherit}button,input[type=button],input[type=checkbox],input[type=radio],input[type=range],input[type=reset],input[type=submit],select{cursor:pointer}input,select{display:block}[type=checkbox],[type=radio]{display:initial}input{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){input{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){button{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}textarea{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){textarea{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}select{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){select{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){button{background-color:#0c151c;background-color:var(--button-base)}}input[type=submit]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=submit]{background-color:#0c151c;background-color:var(--button-base)}}input[type=reset]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=reset]{background-color:#0c151c;background-color:var(--button-base)}}input[type=button]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=button]{background-color:#0c151c;background-color:var(--button-base)}}button:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){button:hover{background:#040a0f;background:var(--button-hover)}}input[type=submit]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=submit]:hover{background:#040a0f;background:var(--button-hover)}}input[type=reset]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=reset]:hover{background:#040a0f;background:var(--button-hover)}}input[type=button]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=button]:hover{background:#040a0f;background:var(--button-hover)}}input[type=color]{cursor:pointer;min-height:2rem;padding:8px}input[type=checkbox],input[type=radio]{width:1em;height:1em}input[type=radio]{border-radius:100%}input{vertical-align:top}label{vertical-align:middle;margin-bottom:4px;display:inline-block}button,input:not([type=checkbox]):not([type=radio]),input[type=range],select,textarea{-webkit-appearance:none}textarea{box-sizing:border-box;resize:vertical;margin-right:0;display:block}textarea:not([cols]){width:100%}textarea:not([rows]){height:140px;min-height:40px}select{background:#efefef url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat;padding-right:35px}@media (prefers-color-scheme:dark){select{background:#161f27 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat}}select::-ms-expand{display:none}select[multiple]{background-image:none;padding-right:10px;overflow-y:auto}input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:active,input[type=button]:active,input[type=checkbox]:active,input[type=radio]:active,input[type=range]:active,input[type=reset]:active,input[type=submit]:active{transform:translateY(2px)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}@media (prefers-color-scheme:dark){:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}}fieldset{border:1px solid #0096bfab;border:1px solid var(--focus);border-radius:6px;margin:0 0 12px;padding:10px}@media (prefers-color-scheme:dark){fieldset{border:1px solid #0096bfab;border:1px solid var(--focus)}}legend{font-size:.9em;font-weight:600}input[type=range]{background:0 0;margin:10px 0;padding:10px 0}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-webkit-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-webkit-slider-thumb{background:#dbdbdb;background:var(--border);-webkit-appearance:none;border-radius:50%;width:20px;height:20px;margin-top:-7px;box-shadow:0 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-webkit-slider-runnable-track{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-moz-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-thumb{background:#dbdbdb;background:var(--border);border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-thumb{background:#526980;background:var(--border)}}input[type=range]::-ms-track{color:#0000;background:0 0;border-width:16px 0;border-color:#0000;width:100%;height:9.5px}input[type=range]::-ms-fill-lower{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]::-ms-fill-upper{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-upper{background:#161f27;background:var(--background)}}input[type=range]::-ms-thumb{background:#dbdbdb;background:var(--border);border:1px solid #000;border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-ms-fill-lower{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]:focus::-ms-fill-upper{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-upper{background:#161f27;background:var(--background)}}a{color:var(--links);text-decoration:none}@media (prefers-color-scheme:dark){a{color:var(--links)}}a:hover{text-decoration:underline}code{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){code{color:var(--code);background:#161f27;background:var(--background)}}samp{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){samp{color:var(--code);background:#161f27;background:var(--background)}}time{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){time{color:var(--code);background:#161f27;background:var(--background)}}pre>code{padding:10px;display:block;overflow-x:auto}var{color:var(--variable);font-family:monospace;font-style:normal}@media (prefers-color-scheme:dark){var{color:var(--variable)}}kbd{background:#efefef;background:var(--background);border:1px solid #dbdbdb;border:1px solid var(--border);color:var(--text-main);border-radius:2px;padding:2px 4px}@media (prefers-color-scheme:dark){kbd{color:var(--text-main);border:1px solid #526980;border:1px solid var(--border);background:#161f27;background:var(--background)}}img,video{max-width:100%;height:auto}hr{border:none;border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){hr{border-top:1px solid #526980;border-top:1px solid var(--border)}}table{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px}table caption,td,th{text-align:left}td,th{vertical-align:top;word-wrap:break-word;padding:6px}thead{border-bottom:1px solid #dbdbdb;border-bottom:1px solid var(--border)}@media (prefers-color-scheme:dark){thead{border-bottom:1px solid #526980;border-bottom:1px solid var(--border)}}tfoot{border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){tfoot{border-top:1px solid #526980;border-top:1px solid var(--border)}}tbody tr:nth-child(2n){background-color:#efefef;background-color:var(--background)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n){background-color:#161f27;background-color:var(--background)}}tbody tr:nth-child(2n) button{background-color:#f7f7f7;background-color:var(--background-alt)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button{background-color:#1a242f;background-color:var(--background-alt)}}tbody tr:nth-child(2n) button:hover{background-color:#fff;background-color:var(--background-body)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button:hover{background-color:#202b38;background-color:var(--background-body)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#efefef;background:var(--background);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-track{background:#161f27;background:var(--background)}}::-webkit-scrollbar-thumb{background:#aaa;background:var(--scrollbar-thumb);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb{background:#040a0f;background:var(--scrollbar-thumb)}}::-webkit-scrollbar-thumb:hover{background:#9b9b9b;background:var(--scrollbar-thumb-hover)}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb:hover{background:#000;background:var(--scrollbar-thumb-hover)}}::-moz-selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}::selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}@media (prefers-color-scheme:dark){::-moz-selection{color:var(--text-bright)}::-moz-selection{background-color:#1c76c5;background-color:var(--selection)}::selection{background-color:#1c76c5;background-color:var(--selection)}}details{background-color:#f7f7f7;background-color:var(--background-alt);border-radius:6px;flex-direction:column;align-items:flex-start;margin:1em 0;padding:10px 10px 0;display:flex;overflow:hidden}@media (prefers-color-scheme:dark){details{background-color:#1a242f;background-color:var(--background-alt)}}details[open]{padding:10px}details>:last-child{margin-bottom:0}details[open] summary{margin-bottom:10px}summary{background-color:#efefef;background-color:var(--background);cursor:pointer;outline:none;margin:-10px -10px 0;padding:10px;display:list-item}@media (prefers-color-scheme:dark){summary{background-color:#161f27;background-color:var(--background)}}summary:focus,summary:hover{text-decoration:underline}details>:not(summary){margin-top:0}summary::-webkit-details-marker{color:var(--text-main)}@media (prefers-color-scheme:dark){summary::-webkit-details-marker{color:var(--text-main)}}dialog{background-color:#f7f7f7;background-color:var(--background-alt);color:var(--text-main);border:#dbdbdb;border-color:var(--border);border-radius:6px;padding:10px 30px}@media (prefers-color-scheme:dark){dialog{border-color:#526980;border-color:var(--border);color:var(--text-main);background-color:#1a242f;background-color:var(--background-alt)}}dialog>header:first-child{background-color:#efefef;background-color:var(--background);text-align:center;border-radius:6px 6px 0 0;margin:-10px -30px 10px;padding:10px}@media (prefers-color-scheme:dark){dialog>header:first-child{background-color:#161f27;background-color:var(--background)}}dialog::-webkit-backdrop{backdrop-filter:blur(4px);background:#0000009c}dialog::backdrop{backdrop-filter:blur(4px);background:#0000009c}footer{border-top:1px solid #dbdbdb;border-top:1px solid var(--border);color:var(--text-muted);padding-top:10px}@media (prefers-color-scheme:dark){footer{color:var(--text-muted);border-top:1px solid #526980;border-top:1px solid var(--border)}}body>footer{margin-top:40px}@media print{body,button,code,details,input,pre,summary,textarea{background-color:#fff}button,input,textarea{border:1px solid #000}body,button,code,footer,h1,h2,h3,h4,h5,h6,input,pre,strong,summary,textarea,summary::marker{color:#000}summary::-webkit-details-marker{color:#000}tbody tr:nth-child(2n){background-color:#f2f2f2}a{color:#00f;text-decoration:underline}}</style>
|
|
12
|
+
<script>
|
|
13
|
+
window.addEventListener('load', function() {
|
|
14
|
+
var viewPara = document.getElementById("viewpara");
|
|
15
|
+
viewPara.style.display = "block";
|
|
16
|
+
var viewUrl = document.getElementById("viewUrl");
|
|
17
|
+
viewUrl.value = window.location.href;
|
|
18
|
+
});
|
|
19
|
+
</script>
|
|
20
|
+
</head>
|
|
21
|
+
<body>
|
|
22
|
+
<h1>
|
|
23
|
+
<xsl:value-of select="head/title" />
|
|
24
|
+
</h1>
|
|
25
|
+
<p id="viewpara" style="display:none;">
|
|
26
|
+
<form method="get" action="https://opml-viewer.fileformat.info/view.html"
|
|
27
|
+
id="viewform">
|
|
28
|
+
<input type="hidden" name="url" id="viewUrl" value="" />
|
|
29
|
+
<!-- customize by adding more inputs with the viewer parameters --> Open in the <button>OPML
|
|
30
|
+
Viewer</button> (requires JavaScript). </form>
|
|
31
|
+
</p>
|
|
32
|
+
<p>
|
|
33
|
+
<time>
|
|
34
|
+
<xsl:value-of select="head/dateCreated" />
|
|
35
|
+
</time>
|
|
36
|
+
</p>
|
|
37
|
+
<xsl:apply-templates select="body/outline" />
|
|
38
|
+
</body>
|
|
39
|
+
</html>
|
|
40
|
+
</xsl:template>
|
|
41
|
+
<xsl:template match="outline" xmlns="http://www.w3.org/1999/xhtml">
|
|
42
|
+
<xsl:choose>
|
|
43
|
+
<xsl:when test="@type">
|
|
44
|
+
<xsl:choose>
|
|
45
|
+
<xsl:when test="@xmlUrl">
|
|
46
|
+
<li>
|
|
47
|
+
<div style="display: flex; gap: 8px; align-items: center;">
|
|
48
|
+
<a href="{@xmlUrl}" style="display: flex; justify-content: center; align-items: center;">
|
|
49
|
+
<img src="https://www.rss.style/favicon.svg"
|
|
50
|
+
style="height:1rem;" alt="RSS/Atom Feed" />
|
|
51
|
+
</a>
|
|
52
|
+
<a href="{@htmlUrl}">
|
|
53
|
+
<xsl:value-of select="@text" />
|
|
54
|
+
</a>
|
|
55
|
+
</div>
|
|
56
|
+
</li>
|
|
57
|
+
</xsl:when>
|
|
58
|
+
<xsl:otherwise>
|
|
59
|
+
<li>
|
|
60
|
+
<a href="{@url}">
|
|
61
|
+
<xsl:value-of select="@text" />
|
|
62
|
+
</a>
|
|
63
|
+
</li>
|
|
64
|
+
</xsl:otherwise>
|
|
65
|
+
</xsl:choose>
|
|
66
|
+
</xsl:when>
|
|
67
|
+
<xsl:otherwise>
|
|
68
|
+
<details> <!-- adding an open="open" attribute will make everything open by default -->
|
|
69
|
+
<summary>
|
|
70
|
+
<xsl:value-of select="@text" />
|
|
71
|
+
</summary>
|
|
72
|
+
<ul>
|
|
73
|
+
<xsl:apply-templates select="outline" />
|
|
74
|
+
</ul>
|
|
75
|
+
</details>
|
|
76
|
+
</xsl:otherwise>
|
|
77
|
+
</xsl:choose>
|
|
78
|
+
</xsl:template>
|
|
79
|
+
</xsl:stylesheet>
|
|
80
|
+
|
|
81
|
+
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
2
|
+
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
3
|
+
<xsl:template match="/opml">
|
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
5
|
+
<head>
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
7
|
+
<meta name="referrer" content="unsafe-url" />
|
|
8
|
+
<title>
|
|
9
|
+
<xsl:value-of select="head/title" />
|
|
10
|
+
</title>
|
|
11
|
+
<style>:root{--background-body:#eff1f5;--background:#eff1f5;--background-alt:#eff1f5;--selection:#9e9e9e;--text-main:#4c4f69;--text-bright:#000;--text-muted:#70777f;--links:#1e66f5;--focus:#1e66f5;--border:#9ca0b0;--code:#000;--animation-duration:.1s;--button-base:#d0cfcf;--button-hover:#9b9b9b;--scrollbar-thumb:#aaa;--scrollbar-thumb-hover:var(--button-hover);--form-placeholder:#949494;--form-text:#1d1d1d;--variable:#40a02b;--highlight:#df8e1d;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root{--background-body:#1e1e2e;--background:#1e1e2e;--background-alt:#1e1e2e;--selection:#89b4fa;--text-main:#dbdbdb;--text-bright:#fff;--text-muted:#a9b1ba;--links:#89b4fa;--focus:#89b4fa;--border:#526980;--code:#ffbe85;--animation-duration:.1s;--button-base:#0c151c;--button-hover:#040a0f;--scrollbar-thumb:var(--button-hover);--scrollbar-thumb-hover:#000;--form-placeholder:#a9a9a9;--form-text:#fff;--variable:#cba6f7;--highlight:#f9e2af;--select-arrow:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E")}}html{scrollbar-color:#aaa #fff;scrollbar-color:var(--scrollbar-thumb)var(--background-body);scrollbar-width:thin}@media (prefers-color-scheme:dark){html{scrollbar-color:#040a0f #202b38;scrollbar-color:var(--scrollbar-thumb)var(--background-body)}}body{word-wrap:break-word;color:var(--text-main);max-width:800px;background:#fff;background:var(--background-body);text-rendering:optimizeLegibility;margin:20px auto;padding:0 10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Segoe UI Emoji,Apple Color Emoji,Noto Color Emoji,sans-serif;line-height:1.4}@media (prefers-color-scheme:dark){body{background:#202b38;background:var(--background-body);color:var(--text-main)}}button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){button{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){input{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}@media (prefers-color-scheme:dark){textarea{transition:background-color .1s linear,border-color .1s linear,color .1s linear,box-shadow .1s linear,transform .1s;transition:background-color var(--animation-duration)linear,border-color var(--animation-duration)linear,color var(--animation-duration)linear,box-shadow var(--animation-duration)linear,transform var(--animation-duration)ease}}h1{margin-top:0;font-size:2.2em}h1,h2,h3,h4,h5,h6{margin-top:24px;margin-bottom:12px}h1{color:var(--text-bright)}@media (prefers-color-scheme:dark){h1{color:var(--text-bright)}}h2{color:var(--text-bright)}@media (prefers-color-scheme:dark){h2{color:var(--text-bright)}}h3{color:var(--text-bright)}@media (prefers-color-scheme:dark){h3{color:var(--text-bright)}}h4{color:var(--text-bright)}@media (prefers-color-scheme:dark){h4{color:var(--text-bright)}}h5{color:var(--text-bright)}@media (prefers-color-scheme:dark){h5{color:var(--text-bright)}}h6{color:var(--text-bright)}@media (prefers-color-scheme:dark){h6{color:var(--text-bright)}}strong{color:var(--text-bright)}@media (prefers-color-scheme:dark){strong{color:var(--text-bright)}}b,h1,h2,h3,h4,h5,h6,strong,th{font-weight:600}q:after,q:before{content:none}blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){blockquote{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus);margin:1.5em 0;padding:.5em 1em;font-style:italic}@media (prefers-color-scheme:dark){q{border-left:4px solid #0096bfab;border-left:4px solid var(--focus)}}blockquote>footer{border:0;font-style:normal}address,blockquote cite{font-style:normal}a[href^=mailto\:]:before{content:"📧 "}a[href^=tel\:]:before{content:"📞 "}a[href^=sms\:]:before{content:"💬 "}mark{background-color:#ff0;background-color:var(--highlight);color:#000;border-radius:2px;padding:0 2px}@media (prefers-color-scheme:dark){mark{background-color:#efdb43;background-color:var(--highlight)}}a>code,a>strong{color:inherit}button,input[type=button],input[type=checkbox],input[type=radio],input[type=range],input[type=reset],input[type=submit],select{cursor:pointer}input,select{display:block}[type=checkbox],[type=radio]{display:initial}input{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){input{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){button{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}textarea{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){textarea{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}select{color:var(--form-text);background-color:#efefef;background-color:var(--background);font-family:inherit;font-size:inherit;border:none;border-radius:6px;outline:none;margin-bottom:6px;margin-right:6px;padding:10px}@media (prefers-color-scheme:dark){select{background-color:#161f27;background-color:var(--background);color:var(--form-text)}}button{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){button{background-color:#0c151c;background-color:var(--button-base)}}input[type=submit]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=submit]{background-color:#0c151c;background-color:var(--button-base)}}input[type=reset]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=reset]{background-color:#0c151c;background-color:var(--button-base)}}input[type=button]{background-color:#d0cfcf;background-color:var(--button-base);padding-left:30px;padding-right:30px}@media (prefers-color-scheme:dark){input[type=button]{background-color:#0c151c;background-color:var(--button-base)}}button:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){button:hover{background:#040a0f;background:var(--button-hover)}}input[type=submit]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=submit]:hover{background:#040a0f;background:var(--button-hover)}}input[type=reset]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=reset]:hover{background:#040a0f;background:var(--button-hover)}}input[type=button]:hover{background:#9b9b9b;background:var(--button-hover)}@media (prefers-color-scheme:dark){input[type=button]:hover{background:#040a0f;background:var(--button-hover)}}input[type=color]{cursor:pointer;min-height:2rem;padding:8px}input[type=checkbox],input[type=radio]{width:1em;height:1em}input[type=radio]{border-radius:100%}input{vertical-align:top}label{vertical-align:middle;margin-bottom:4px;display:inline-block}button,input:not([type=checkbox]):not([type=radio]),input[type=range],select,textarea{-webkit-appearance:none}textarea{box-sizing:border-box;resize:vertical;margin-right:0;display:block}textarea:not([cols]){width:100%}textarea:not([rows]){height:140px;min-height:40px}select{background:#efefef url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23161f27'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat;padding-right:35px}@media (prefers-color-scheme:dark){select{background:#161f27 url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='63' width='117' fill='%23efefef'%3E%3Cpath d='M115 2c-1-2-4-2-5 0L59 53 7 2a4 4 0 00-5 5l54 54 2 2 3-2 54-54c2-1 2-4 0-5z'/%3E%3C/svg%3E") calc(100% - 12px)/12px no-repeat;background:var(--background)var(--select-arrow)calc(100% - 12px)50%/12px no-repeat}}select::-ms-expand{display:none}select[multiple]{background-image:none;padding-right:10px;overflow-y:auto}input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){input:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){select:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){button:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}@media (prefers-color-scheme:dark){textarea:focus{box-shadow:0 0 0 2px #0096bfab;box-shadow:0 0 0 2px var(--focus)}}button:active,input[type=button]:active,input[type=checkbox]:active,input[type=radio]:active,input[type=range]:active,input[type=reset]:active,input[type=submit]:active{transform:translateY(2px)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}@media (prefers-color-scheme:dark){:-ms-placeholder-shown{color:var(--form-placeholder)}::-moz-placeholder{color:var(--form-placeholder)}::placeholder{color:var(--form-placeholder)}}fieldset{border:1px solid #0096bfab;border:1px solid var(--focus);border-radius:6px;margin:0 0 12px;padding:10px}@media (prefers-color-scheme:dark){fieldset{border:1px solid #0096bfab;border:1px solid var(--focus)}}legend{font-size:.9em;font-weight:600}input[type=range]{background:0 0;margin:10px 0;padding:10px 0}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-webkit-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-webkit-slider-thumb{background:#dbdbdb;background:var(--border);-webkit-appearance:none;border-radius:50%;width:20px;height:20px;margin-top:-7px;box-shadow:0 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-webkit-slider-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-webkit-slider-runnable-track{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-webkit-slider-runnable-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-track{background:#efefef;background:var(--background);border-radius:3px;width:100%;height:9.5px;-moz-transition:all .2s;transition:all .2s}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-track{background:#161f27;background:var(--background)}}input[type=range]::-moz-range-thumb{background:#dbdbdb;background:var(--border);border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-moz-range-thumb{background:#526980;background:var(--border)}}input[type=range]::-ms-track{color:#0000;background:0 0;border-width:16px 0;border-color:#0000;width:100%;height:9.5px}input[type=range]::-ms-fill-lower{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]::-ms-fill-upper{background:#efefef;background:var(--background);border:.2px solid #010101;border-radius:3px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-fill-upper{background:#161f27;background:var(--background)}}input[type=range]::-ms-thumb{background:#dbdbdb;background:var(--border);border:1px solid #000;border-radius:50%;width:20px;height:20px;box-shadow:1px 1px 1px #000,0 0 1px #0d0d0d}@media (prefers-color-scheme:dark){input[type=range]::-ms-thumb{background:#526980;background:var(--border)}}input[type=range]:focus::-ms-fill-lower{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-lower{background:#161f27;background:var(--background)}}input[type=range]:focus::-ms-fill-upper{background:#efefef;background:var(--background)}@media (prefers-color-scheme:dark){input[type=range]:focus::-ms-fill-upper{background:#161f27;background:var(--background)}}a{color:var(--links);text-decoration:none}@media (prefers-color-scheme:dark){a{color:var(--links)}}a:hover{text-decoration:underline}code{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){code{color:var(--code);background:#161f27;background:var(--background)}}samp{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){samp{color:var(--code);background:#161f27;background:var(--background)}}time{background:#efefef;background:var(--background);color:var(--code);border-radius:6px;padding:2.5px 5px;font-size:1em}@media (prefers-color-scheme:dark){time{color:var(--code);background:#161f27;background:var(--background)}}pre>code{padding:10px;display:block;overflow-x:auto}var{color:var(--variable);font-family:monospace;font-style:normal}@media (prefers-color-scheme:dark){var{color:var(--variable)}}kbd{background:#efefef;background:var(--background);border:1px solid #dbdbdb;border:1px solid var(--border);color:var(--text-main);border-radius:2px;padding:2px 4px}@media (prefers-color-scheme:dark){kbd{color:var(--text-main);border:1px solid #526980;border:1px solid var(--border);background:#161f27;background:var(--background)}}img,video{max-width:100%;height:auto}hr{border:none;border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){hr{border-top:1px solid #526980;border-top:1px solid var(--border)}}table{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px}table caption,td,th{text-align:left}td,th{vertical-align:top;word-wrap:break-word;padding:6px}thead{border-bottom:1px solid #dbdbdb;border-bottom:1px solid var(--border)}@media (prefers-color-scheme:dark){thead{border-bottom:1px solid #526980;border-bottom:1px solid var(--border)}}tfoot{border-top:1px solid #dbdbdb;border-top:1px solid var(--border)}@media (prefers-color-scheme:dark){tfoot{border-top:1px solid #526980;border-top:1px solid var(--border)}}tbody tr:nth-child(2n){background-color:#efefef;background-color:var(--background)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n){background-color:#161f27;background-color:var(--background)}}tbody tr:nth-child(2n) button{background-color:#f7f7f7;background-color:var(--background-alt)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button{background-color:#1a242f;background-color:var(--background-alt)}}tbody tr:nth-child(2n) button:hover{background-color:#fff;background-color:var(--background-body)}@media (prefers-color-scheme:dark){tbody tr:nth-child(2n) button:hover{background-color:#202b38;background-color:var(--background-body)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#efefef;background:var(--background);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-track{background:#161f27;background:var(--background)}}::-webkit-scrollbar-thumb{background:#aaa;background:var(--scrollbar-thumb);border-radius:6px}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb{background:#040a0f;background:var(--scrollbar-thumb)}}::-webkit-scrollbar-thumb:hover{background:#9b9b9b;background:var(--scrollbar-thumb-hover)}@media (prefers-color-scheme:dark){::-webkit-scrollbar-thumb:hover{background:#000;background:var(--scrollbar-thumb-hover)}}::-moz-selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}::selection{background-color:#9e9e9e;background-color:var(--selection);color:var(--text-bright)}@media (prefers-color-scheme:dark){::-moz-selection{color:var(--text-bright)}::-moz-selection{background-color:#1c76c5;background-color:var(--selection)}::selection{background-color:#1c76c5;background-color:var(--selection)}}details{background-color:#f7f7f7;background-color:var(--background-alt);border-radius:6px;flex-direction:column;align-items:flex-start;margin:1em 0;padding:10px 10px 0;display:flex;overflow:hidden}@media (prefers-color-scheme:dark){details{background-color:#1a242f;background-color:var(--background-alt)}}details[open]{padding:10px}details>:last-child{margin-bottom:0}details[open] summary{margin-bottom:10px}summary{background-color:#efefef;background-color:var(--background);cursor:pointer;outline:none;margin:-10px -10px 0;padding:10px;display:list-item}@media (prefers-color-scheme:dark){summary{background-color:#161f27;background-color:var(--background)}}summary:focus,summary:hover{text-decoration:underline}details>:not(summary){margin-top:0}summary::-webkit-details-marker{color:var(--text-main)}@media (prefers-color-scheme:dark){summary::-webkit-details-marker{color:var(--text-main)}}dialog{background-color:#f7f7f7;background-color:var(--background-alt);color:var(--text-main);border:#dbdbdb;border-color:var(--border);border-radius:6px;padding:10px 30px}@media (prefers-color-scheme:dark){dialog{border-color:#526980;border-color:var(--border);color:var(--text-main);background-color:#1a242f;background-color:var(--background-alt)}}dialog>header:first-child{background-color:#efefef;background-color:var(--background);text-align:center;border-radius:6px 6px 0 0;margin:-10px -30px 10px;padding:10px}@media (prefers-color-scheme:dark){dialog>header:first-child{background-color:#161f27;background-color:var(--background)}}dialog::-webkit-backdrop{backdrop-filter:blur(4px);background:#0000009c}dialog::backdrop{backdrop-filter:blur(4px);background:#0000009c}footer{border-top:1px solid #dbdbdb;border-top:1px solid var(--border);color:var(--text-muted);padding-top:10px}@media (prefers-color-scheme:dark){footer{color:var(--text-muted);border-top:1px solid #526980;border-top:1px solid var(--border)}}body>footer{margin-top:40px}@media print{body,button,code,details,input,pre,summary,textarea{background-color:#fff}button,input,textarea{border:1px solid #000}body,button,code,footer,h1,h2,h3,h4,h5,h6,input,pre,strong,summary,textarea,summary::marker{color:#000}summary::-webkit-details-marker{color:#000}tbody tr:nth-child(2n){background-color:#f2f2f2}a{color:#00f;text-decoration:underline}}</style>
|
|
12
|
+
<script>
|
|
13
|
+
window.addEventListener('load', function() {
|
|
14
|
+
var viewPara = document.getElementById("viewpara");
|
|
15
|
+
viewPara.style.display = "block";
|
|
16
|
+
var viewUrl = document.getElementById("viewUrl");
|
|
17
|
+
viewUrl.value = window.location.href;
|
|
18
|
+
});
|
|
19
|
+
</script>
|
|
20
|
+
</head>
|
|
21
|
+
<body>
|
|
22
|
+
<h1>
|
|
23
|
+
<xsl:value-of select="head/title" />
|
|
24
|
+
</h1>
|
|
25
|
+
<p id="viewpara" style="display:none;">
|
|
26
|
+
<form method="get" action="https://opml-viewer.fileformat.info/view.html"
|
|
27
|
+
id="viewform">
|
|
28
|
+
<input type="hidden" name="url" id="viewUrl" value="" />
|
|
29
|
+
<!-- customize by adding more inputs with the viewer parameters --> Open in the <button>OPML
|
|
30
|
+
Viewer</button> (requires JavaScript). </form>
|
|
31
|
+
</p>
|
|
32
|
+
<p>
|
|
33
|
+
<time>
|
|
34
|
+
<xsl:value-of select="head/dateCreated" />
|
|
35
|
+
</time>
|
|
36
|
+
</p>
|
|
37
|
+
<xsl:apply-templates select="body/outline" />
|
|
38
|
+
</body>
|
|
39
|
+
</html>
|
|
40
|
+
</xsl:template>
|
|
41
|
+
<xsl:template match="outline" xmlns="http://www.w3.org/1999/xhtml">
|
|
42
|
+
<xsl:choose>
|
|
43
|
+
<xsl:when test="@type">
|
|
44
|
+
<xsl:choose>
|
|
45
|
+
<xsl:when test="@xmlUrl">
|
|
46
|
+
<li>
|
|
47
|
+
<div style="display: flex; gap: 8px; align-items: center;">
|
|
48
|
+
<a href="{@xmlUrl}" style="display: flex; justify-content: center; align-items: center;">
|
|
49
|
+
<img src="https://www.rss.style/favicon.svg"
|
|
50
|
+
style="height:1rem;" alt="RSS/Atom Feed" />
|
|
51
|
+
</a>
|
|
52
|
+
<a href="{@htmlUrl}">
|
|
53
|
+
<xsl:value-of select="@text" />
|
|
54
|
+
</a>
|
|
55
|
+
</div>
|
|
56
|
+
</li>
|
|
57
|
+
</xsl:when>
|
|
58
|
+
<xsl:otherwise>
|
|
59
|
+
<li>
|
|
60
|
+
<a href="{@url}">
|
|
61
|
+
<xsl:value-of select="@text" />
|
|
62
|
+
</a>
|
|
63
|
+
</li>
|
|
64
|
+
</xsl:otherwise>
|
|
65
|
+
</xsl:choose>
|
|
66
|
+
</xsl:when>
|
|
67
|
+
<xsl:otherwise>
|
|
68
|
+
<details> <!-- adding an open="open" attribute will make everything open by default -->
|
|
69
|
+
<summary>
|
|
70
|
+
<xsl:value-of select="@text" />
|
|
71
|
+
</summary>
|
|
72
|
+
<ul>
|
|
73
|
+
<xsl:apply-templates select="outline" />
|
|
74
|
+
</ul>
|
|
75
|
+
</details>
|
|
76
|
+
</xsl:otherwise>
|
|
77
|
+
</xsl:choose>
|
|
78
|
+
</xsl:template>
|
|
79
|
+
</xsl:stylesheet>
|
|
80
|
+
|
|
81
|
+
|