🎉
This commit is contained in:
@@ -5,6 +5,7 @@ set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3
|
|||||||
exit 1;
|
exit 1;
|
||||||
}
|
}
|
||||||
# depends on
|
# depends on
|
||||||
|
declare -r lint='bs/lint'
|
||||||
declare -r rollup='node_modules/.bin/rollup'
|
declare -r rollup='node_modules/.bin/rollup'
|
||||||
declare -r analyze='bs/analyze'
|
declare -r analyze='bs/analyze'
|
||||||
declare -r config='rollup.config.js'
|
declare -r config='rollup.config.js'
|
||||||
@@ -20,6 +21,7 @@ help(){
|
|||||||
main(){
|
main(){
|
||||||
help "${@}"
|
help "${@}"
|
||||||
|
|
||||||
|
$lint
|
||||||
rm -rf "$dist"
|
rm -rf "$dist"
|
||||||
$rollup -c $config "${@}"
|
$rollup -c $config "${@}"
|
||||||
$analyze --exclude "$dist"
|
$analyze --exclude "$dist"
|
||||||
|
|||||||
Executable
+12
@@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/env bash
|
||||||
|
set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3Ml53kvc
|
||||||
|
. bs/.common || {
|
||||||
|
echo 'Please run this script from the project root directory' >&2;
|
||||||
|
exit 1;
|
||||||
|
}
|
||||||
|
declare -r tmp=/tmp/lit-router-extended
|
||||||
|
declare -r pkg=./node_modules/@lit-labs/router
|
||||||
|
|
||||||
|
git clone git@github.com:klauss194/lit-router-extended.git --depth 1 "$tmp"
|
||||||
|
cp "$tmp"/* "$pkg"
|
||||||
|
rm -rf "$tmp"
|
||||||
@@ -1,13 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<opml version="1.0">
|
<opml version="1.0">
|
||||||
<head>
|
<head>
|
||||||
<dateCreated>Tue, 21 Apr 2026 11:06:35 GMT</dateCreated>
|
<dateCreated>Fri, 24 Apr 2026 13:48:25 GMT</dateCreated>
|
||||||
<title>jaa-podcasty subscriptions in CommaFeed</title>
|
<title>jaa-podcasty subscriptions in CommaFeed</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<outline text="Epizody z vypršených odběrů" type="rss" title="Epizody z vypršených odběrů" xmlUrl="https://jaandrle.cz/p/2026-04-07.xml" htmlUrl="https://jaandrle.cz/podcasts/" />
|
<outline text="Epizody z vypršených odběrů" type="rss" title="Epizody z vypršených odběrů" xmlUrl="https://jaandrle.cz/p/2026-04-07.xml" htmlUrl="https://jaandrle.cz/podcasts/" />
|
||||||
<outline text="Playlist: Čestmír & Daniela - YouTube" type="rss" title="Playlist: Čestmír & Daniela - YouTube" xmlUrl="http://rss-bridge.jaandrle.cz/?action=display&bridge=YoutubeBridge&token=Chief*Snowplow1*Drastic&context=By+playlist+Id&p=PLPK5bz7v9zh1BFEHQrNri-iCeugTjq1Jj&duration_min=&duration_max=&format=Atom" htmlUrl="http://rss-bridge.jaandrle.cz/?action=display&bridge=YoutubeBridge&token=Chief*Snowplow1*Drastic&context=By+playlist+Id&p=PLPK5bz7v9zh1BFEHQrNri-iCeugTjq1Jj&duration_min=&duration_max=&format=Atom" />
|
<outline text="Playlist: Čestmír & Daniela - YouTube" type="rss" title="Playlist: Čestmír & Daniela - YouTube" xmlUrl="http://rss-bridge.jaandrle.cz/?action=display&bridge=YoutubeBridge&token=Chief*Snowplow1*Drastic&context=By+playlist+Id&p=PLPK5bz7v9zh1BFEHQrNri-iCeugTjq1Jj&duration_min=&duration_max=&format=Atom" htmlUrl="http://rss-bridge.jaandrle.cz/?action=display&bridge=YoutubeBridge&token=Chief*Snowplow1*Drastic&context=By+playlist+Id&p=PLPK5bz7v9zh1BFEHQrNri-iCeugTjq1Jj&duration_min=&duration_max=&format=Atom" />
|
||||||
<outline text="5:59" type="rss" title="5:59" xmlUrl="https://feeds.transistor.fm/5-59" htmlUrl="https://www.seznamzpravy.cz/" />
|
<outline text="5:59" type="rss" title="5:59" xmlUrl="https://feeds.transistor.fm/5-59" htmlUrl="https://www.seznamzpravy.cz/" />
|
||||||
|
<outline text="Redneck & Beneš" type="rss" title="Redneck & Beneš" xmlUrl="https://www.voxpot.cz/pod/rss/844dd837-6063-4b77-99c5-5adf7c7622f5/redneck-benes.xml" htmlUrl="https://www.voxpot.cz/muj-ucet" />
|
||||||
<outline text="Pinepods News Podcast" type="rss" title="Pinepods News Podcast" xmlUrl="https://news.pinepods.online/feed.xml" htmlUrl="https://news.pinepods.online" />
|
<outline text="Pinepods News Podcast" type="rss" title="Pinepods News Podcast" xmlUrl="https://news.pinepods.online/feed.xml" htmlUrl="https://news.pinepods.online" />
|
||||||
<outline text="Český rozhlas - Věda" type="rss" title="Český rozhlas - Věda" xmlUrl="https://api.mujrozhlas.cz/rss/topic/8c432621-a9a9-4c0a-8376-ea4ae5707fbb.rss" htmlUrl="https://www.mujrozhlas.cz/topic/view/8c432621-a9a9-4c0a-8376-ea4ae5707fbb" />
|
<outline text="Český rozhlas - Věda" type="rss" title="Český rozhlas - Věda" xmlUrl="https://api.mujrozhlas.cz/rss/topic/8c432621-a9a9-4c0a-8376-ea4ae5707fbb.rss" htmlUrl="https://www.mujrozhlas.cz/topic/view/8c432621-a9a9-4c0a-8376-ea4ae5707fbb" />
|
||||||
<outline text="Bilance" type="rss" title="Bilance" xmlUrl="https://feeds.transistor.fm/bilance" htmlUrl="https://www.ceskatelevize.cz/porady/14021364946-bilance/" />
|
<outline text="Bilance" type="rss" title="Bilance" xmlUrl="https://feeds.transistor.fm/bilance" htmlUrl="https://www.ceskatelevize.cz/porady/14021364946-bilance/" />
|
||||||
|
|||||||
+1
-1
@@ -23,7 +23,7 @@
|
|||||||
<body>
|
<body>
|
||||||
<app-cfpodcasts></app-cfpodcasts>
|
<app-cfpodcasts></app-cfpodcasts>
|
||||||
|
|
||||||
<script type="module" src="./out-tsc/src/app-index.js"></script>
|
<script type="module" src="./out-tsc/src/index.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Generated
+10
-75
@@ -9,6 +9,7 @@
|
|||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@lit-labs/router": "^0.1.4",
|
||||||
"lit": "~3.3"
|
"lit": "~3.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
@@ -2201,6 +2202,15 @@
|
|||||||
"@jridgewell/sourcemap-codec": "^1.4.14"
|
"@jridgewell/sourcemap-codec": "^1.4.14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@lit-labs/router": {
|
||||||
|
"version": "0.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/@lit-labs/router/-/router-0.1.4.tgz",
|
||||||
|
"integrity": "sha512-xURH6fOPE0MYfXa1nyl+qTIhZRVWkFa2oggTRodKAI2q/HjA2Va7HEKe7fMm8DdnFE+zEI2aUGnStawKpVh3lQ==",
|
||||||
|
"license": "BSD-3-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"lit": "^2.0.0 || ^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@lit-labs/ssr-dom-shim": {
|
"node_modules/@lit-labs/ssr-dom-shim": {
|
||||||
"version": "1.5.1",
|
"version": "1.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.5.1.tgz",
|
||||||
@@ -2435,9 +2445,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2452,9 +2459,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2469,9 +2473,6 @@
|
|||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2486,9 +2487,6 @@
|
|||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2503,9 +2501,6 @@
|
|||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2520,9 +2515,6 @@
|
|||||||
"s390x"
|
"s390x"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2537,9 +2529,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2554,9 +2543,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2897,9 +2883,6 @@
|
|||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2914,9 +2897,6 @@
|
|||||||
"arm"
|
"arm"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2931,9 +2911,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2948,9 +2925,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2965,9 +2939,6 @@
|
|||||||
"loong64"
|
"loong64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2982,9 +2953,6 @@
|
|||||||
"loong64"
|
"loong64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -2999,9 +2967,6 @@
|
|||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3016,9 +2981,6 @@
|
|||||||
"ppc64"
|
"ppc64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3033,9 +2995,6 @@
|
|||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3050,9 +3009,6 @@
|
|||||||
"riscv64"
|
"riscv64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3067,9 +3023,6 @@
|
|||||||
"s390x"
|
"s390x"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3084,9 +3037,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -3101,9 +3051,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -7961,9 +7908,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -7985,9 +7929,6 @@
|
|||||||
"arm64"
|
"arm64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -8009,9 +7950,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"glibc"
|
|
||||||
],
|
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
@@ -8033,9 +7971,6 @@
|
|||||||
"x64"
|
"x64"
|
||||||
],
|
],
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"libc": [
|
|
||||||
"musl"
|
|
||||||
],
|
|
||||||
"license": "MPL-2.0",
|
"license": "MPL-2.0",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"os": [
|
"os": [
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
"start": "bs/start"
|
"start": "bs/start"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@lit-labs/router": "^0.1.4",
|
||||||
"lit": "~3.3"
|
"lit": "~3.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
import { css } from "lit";
|
||||||
|
export const styles = css`
|
||||||
|
:host {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: flex-start;
|
||||||
|
}
|
||||||
|
`;
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
import { LitElement, html } from "lit";
|
||||||
|
import { property, customElement } from "lit/decorators.js";
|
||||||
|
import { styles } from "./index.css.js";
|
||||||
|
|
||||||
|
const logo = import.meta.resolve("../../../assets/logo.svg");
|
||||||
|
|
||||||
|
@customElement("app-episodes")
|
||||||
|
export class AppEpisodes extends LitElement {
|
||||||
|
static styles = styles;
|
||||||
|
render() {
|
||||||
|
return html`
|
||||||
|
<div class="logo"><img alt="open-wc logo" src=${logo} /></div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
import type { RouteConfig } from "@lit-labs/router";
|
||||||
|
import { html } from "lit";
|
||||||
|
|
||||||
|
export const route = {
|
||||||
|
path: "/#/episodes",
|
||||||
|
async enter() {
|
||||||
|
await import("./index.js");
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
render(){
|
||||||
|
return html`<app-episodes></app-episodes>`;
|
||||||
|
},
|
||||||
|
};
|
||||||
|
export default [
|
||||||
|
route,
|
||||||
|
] as RouteConfig[];
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
import { css } from "lit";
|
|
||||||
export const styles = css`
|
|
||||||
:host {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: flex-start;
|
|
||||||
font-size: calc(10px + 2vmin);
|
|
||||||
color: #1a2b42;
|
|
||||||
max-width: 960px;
|
|
||||||
margin: 0 auto;
|
|
||||||
text-align: center;
|
|
||||||
background-color: var(--app-cfpodcasts-background-color);
|
|
||||||
}
|
|
||||||
|
|
||||||
main {
|
|
||||||
flex-grow: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo {
|
|
||||||
margin-top: 36px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.app-footer {
|
|
||||||
font-size: calc(12px + 0.5vmin);
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.app-footer a {
|
|
||||||
margin-left: 5px;
|
|
||||||
}
|
|
||||||
`;
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
import { LitElement, html } from "lit";
|
|
||||||
import { property, customElement } from "lit/decorators.js";
|
|
||||||
import { styles } from "./app-index.css.js";
|
|
||||||
|
|
||||||
const logo = import.meta.resolve("../../assets/logo.svg");
|
|
||||||
|
|
||||||
@customElement("app-cfpodcasts")
|
|
||||||
export class AppCfpodcasts extends LitElement {
|
|
||||||
@property({ type: String }) header = "My app";
|
|
||||||
static styles = styles;
|
|
||||||
render() {
|
|
||||||
return html`
|
|
||||||
<main>
|
|
||||||
<div class="logo"><img alt="open-wc logo" src=${logo} /></div>
|
|
||||||
<h1>${this.header}</h1>
|
|
||||||
|
|
||||||
<p>Edit <code>src/AppCfpodcasts.ts</code> and save to reload.</p>
|
|
||||||
<a
|
|
||||||
class="app-link"
|
|
||||||
href="https://open-wc.org/guides/developing-components/code-examples"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
|
||||||
>
|
|
||||||
Code examples
|
|
||||||
</a>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<p class="app-footer">
|
|
||||||
🚽 Made with love by
|
|
||||||
<a
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
|
||||||
href="https://github.com/open-wc"
|
|
||||||
>open-wc</a
|
|
||||||
>.
|
|
||||||
</p>
|
|
||||||
`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
import { css } from "lit";
|
||||||
|
export const styles = css`
|
||||||
|
:host {
|
||||||
|
height: 100vh;
|
||||||
|
height: 100dvh;
|
||||||
|
display: grid;
|
||||||
|
grid-template-areas:
|
||||||
|
"main"
|
||||||
|
"footer";
|
||||||
|
grid-template-rows: auto 2.5ch;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
grid-area: main;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav {
|
||||||
|
grid-area: footer;
|
||||||
|
}
|
||||||
|
`;
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
import { LitElement, html } from "lit";
|
||||||
|
import { property, customElement } from "lit/decorators.js";
|
||||||
|
import { styles } from "./index.css.js";
|
||||||
|
import { Router } from "@lit-labs/router";
|
||||||
|
import { default as routesEpisodes, route as routeEpisodes } from "./app-episodes/routes.js";
|
||||||
|
|
||||||
|
@customElement("app-cfpodcasts")
|
||||||
|
export class AppCfpodcasts extends LitElement {
|
||||||
|
static styles = styles;
|
||||||
|
private _routes = new Router(this, [
|
||||||
|
{ path: "/", render: () => html`Hello world` },
|
||||||
|
...routesEpisodes
|
||||||
|
]);
|
||||||
|
render() {
|
||||||
|
return html`
|
||||||
|
<main>${this._routes.outlet()}</main>
|
||||||
|
<nav>
|
||||||
|
<a href="${this._routes.link("/")}">Home</a>
|
||||||
|
<a href="${this._routes.link("/", { hash: "/episodes" })}">Episodes</a>
|
||||||
|
</nav>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import { html } from 'lit';
|
import { html } from 'lit';
|
||||||
import { fixture, expect } from '@open-wc/testing';
|
import { fixture, expect } from '@open-wc/testing';
|
||||||
|
|
||||||
import type { AppCfpodcasts } from '../src/app-index.js';
|
import type { AppCfpodcasts } from '../src/index.js';
|
||||||
import '../src/app-cfpodcasts.js';
|
import '../src/index.js';
|
||||||
|
|
||||||
describe('AppCfpodcasts', () => {
|
describe('AppCfpodcasts', () => {
|
||||||
let element: AppCfpodcasts;
|
let element: AppCfpodcasts;
|
||||||
|
|||||||
+2
-2
@@ -6,7 +6,6 @@
|
|||||||
"noEmitOnError": true,
|
"noEmitOnError": true,
|
||||||
"lib": ["es2021", "dom", "DOM.Iterable"],
|
"lib": ["es2021", "dom", "DOM.Iterable"],
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"esModuleInterop": false,
|
|
||||||
"allowSyntheticDefaultImports": true,
|
"allowSyntheticDefaultImports": true,
|
||||||
"experimentalDecorators": true,
|
"experimentalDecorators": true,
|
||||||
"importHelpers": true,
|
"importHelpers": true,
|
||||||
@@ -15,7 +14,8 @@
|
|||||||
"inlineSources": true,
|
"inlineSources": true,
|
||||||
"rootDir": "./",
|
"rootDir": "./",
|
||||||
"incremental": true,
|
"incremental": true,
|
||||||
"skipLibCheck": true
|
"skipLibCheck": true,
|
||||||
|
"types": ["mocha"]
|
||||||
},
|
},
|
||||||
"include": ["**/*.ts"]
|
"include": ["**/*.ts"]
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user