⚡ Adds routing
Squashed commit of the following: commitd26bffc33aAuthor: Jan Andrle <andrle.jan@centrum.cz> Date: Tue Jun 9 10:35:14 2026 +0200 ⚡ ups versions commit8bb12aaac1Author: Jan Andrle <andrle.jan@centrum.cz> Date: Fri May 22 15:56:44 2026 +0200 ⚡ 📺 finlizes routing and improves bs commitc3782509e8Author: Jan Andrle <andrle.jan@centrum.cz> Date: Wed May 20 16:10:51 2026 +0200 ⚡ first steps (footer) commit7c925d1fdbAuthor: Jan Andrle <andrle.jan@centrum.cz> Date: Wed May 20 15:24:20 2026 +0200 ⚡ 📺 tsc-alias commite4e41197b9Author: Jan Andrle <andrle.jan@centrum.cz> Date: Wed May 20 14:40:47 2026 +0200 🐛 fixes routing commit7d6240e28aAuthor: Jan Andrle <andrle.jan@centrum.cz> Date: Wed May 20 14:40:00 2026 +0200 🐛 📺 fixes dev server commit139b1590ceAuthor: Jan Andrle <andrle.jan@centrum.cz> Date: Wed Apr 29 13:40:40 2026 +0200 ⚡ Uses original router - it has benefits to use hash properly commit3cc11b68deAuthor: Jan Andrle <andrle.jan@centrum.cz> Date: Tue Apr 28 17:16:00 2026 +0200 🎉
This commit is contained in:
+10
-4
@@ -4,9 +4,6 @@ This project uses [jaandrle/bs: The simplest possible build system using executa
|
||||
## Available executables
|
||||
If it makes sense, arguments are passed to internally used commands (e.g. `tsc`), e. g. `--help`.
|
||||
|
||||
### bs/lint
|
||||
This lints the project using `tsc`.
|
||||
|
||||
### bs/test
|
||||
This lints the project and runs tests using `wtr`.
|
||||
|
||||
@@ -19,8 +16,17 @@ This builds the project using `rollup`.
|
||||
### bs/analyze
|
||||
This analyze Custom Element manifest using the `@custom-elements-manifest/analyzer`.
|
||||
|
||||
### bs/dev/assets
|
||||
Copies assets using `cp` into proper destination in `.tmp`.
|
||||
|
||||
### bs/dev/tsc
|
||||
Builds typescript files using `tsc`.
|
||||
|
||||
### bs/dev/lint
|
||||
Lints the project using `tsc`.
|
||||
|
||||
### bs/npm/lint
|
||||
Linted projects’ npm dependencies.
|
||||
Lints projects’ npm dependencies.
|
||||
|
||||
### bs/npm/update
|
||||
Updates projects’ npm dependencies.
|
||||
|
||||
+7
-3
@@ -5,8 +5,12 @@ set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3
|
||||
exit 1;
|
||||
}
|
||||
# depends on
|
||||
declare -r app='src/app-cfpodcasts.ts'
|
||||
declare -r cem='node_modules/.bin/cem'
|
||||
declare -r app=(
|
||||
'src/**/c-*.ts'
|
||||
'src/**/app-*/index.ts'
|
||||
'src/index.ts'
|
||||
)
|
||||
declare -r cem='node_modules/.bin/custom-elements-manifest'
|
||||
|
||||
help(){
|
||||
if ! isHelp "${@}"; then return 0; fi
|
||||
@@ -17,7 +21,7 @@ help(){
|
||||
}
|
||||
main(){
|
||||
help "${@}"
|
||||
$cem analyze --litelement --globs "$app" "${@}"
|
||||
$cem analyze --litelement --globs "${app[@]}" "${@}"
|
||||
}
|
||||
|
||||
main "${@}"
|
||||
|
||||
@@ -5,6 +5,8 @@ set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3
|
||||
exit 1;
|
||||
}
|
||||
# depends on
|
||||
declare -r tsc='bs/dev/tsc'
|
||||
declare -r assets='bs/dev/assets'
|
||||
declare -r rollup='node_modules/.bin/rollup'
|
||||
declare -r analyze='bs/analyze'
|
||||
declare -r config='rollup.config.js'
|
||||
@@ -20,6 +22,8 @@ help(){
|
||||
main(){
|
||||
help "${@}"
|
||||
|
||||
$tsc
|
||||
$assets
|
||||
rm -rf "$dist"
|
||||
$rollup -c $config "${@}"
|
||||
$analyze --exclude "$dist"
|
||||
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/usr/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;
|
||||
}
|
||||
# depends on
|
||||
declare -r paths='bs/dev/paths.js'
|
||||
declare -r assets="$($paths 'src')/**/assets"
|
||||
declare -r target="$($paths 'tscoutput')"
|
||||
|
||||
help(){
|
||||
if ! isHelp "${@}"; then return 0; fi
|
||||
echoReadmeInfo
|
||||
echo
|
||||
exit 0
|
||||
}
|
||||
main(){
|
||||
help "${@}"
|
||||
shopt -s globstar nullglob
|
||||
for dir in $assets; do
|
||||
cp -r "$dir" "$target/$dir"
|
||||
done
|
||||
}
|
||||
|
||||
main "${@}"
|
||||
@@ -16,7 +16,7 @@ help(){
|
||||
}
|
||||
main(){
|
||||
help "${@}"
|
||||
$tsc "${@}"
|
||||
$tsc --noEmit "${@}"
|
||||
}
|
||||
|
||||
main "${@}"
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/bin/env node
|
||||
import tsconfig from "../../tsconfig.json" with { type: "json" };
|
||||
export const paths = {
|
||||
/** code source */
|
||||
src: "src",
|
||||
/** code processed by tsc */
|
||||
tscoutput: tsconfig.compilerOptions.outDir,
|
||||
/** code processed by tsc and rollup */
|
||||
dist: "dist",
|
||||
/** tempral results of tsc, tests, … */
|
||||
tmp: ".tmp",
|
||||
};
|
||||
export default paths;
|
||||
|
||||
import { argv, exit } from "node:process";
|
||||
import { fileURLToPath } from "node:url";
|
||||
const [ _, script ] = argv;
|
||||
if (script === fileURLToPath(import.meta.url))
|
||||
main(argv.slice(2));
|
||||
|
||||
function main(args) {
|
||||
if(args.includes("--help") || args.includes("-h")){
|
||||
console.log(`
|
||||
Usage: ${script} [options]
|
||||
|
||||
Options:
|
||||
[type] … if omitted, echo all
|
||||
`);
|
||||
exit(0);
|
||||
}
|
||||
if(args.length === 0){
|
||||
console.log(paths);
|
||||
exit(0);
|
||||
}
|
||||
for(const arg of args){
|
||||
const path = paths[arg];
|
||||
if(!path){
|
||||
console.error(`Unknown path: ${arg}`);
|
||||
exit(1);
|
||||
}
|
||||
console.log(path);
|
||||
}
|
||||
}
|
||||
|
||||
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/usr/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;
|
||||
}
|
||||
# depends on
|
||||
declare -r tsc='node_modules/.bin/tsc'
|
||||
declare -r tscAlias='node_modules/.bin/tsc-alias'
|
||||
|
||||
help(){
|
||||
if ! isHelp "${@}"; then return 0; fi
|
||||
echoReadmeInfo
|
||||
echo
|
||||
$tsc --help
|
||||
$tscAlias --help
|
||||
exit 0
|
||||
}
|
||||
main(){
|
||||
help "${@}"
|
||||
$tsc "${@}"
|
||||
$tscAlias "${@}"
|
||||
}
|
||||
|
||||
main "${@}"
|
||||
@@ -4,20 +4,22 @@ set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3
|
||||
echo 'Please run this script from the project root directory' >&2;
|
||||
exit 1;
|
||||
}
|
||||
# "start:build": "web-dev-server --root-dir dist --app-index index.html --open",
|
||||
# "start": "tsc && concurrently -k -r \"tsc --watch --preserveWatchOutput\" \"web-dev-server\""
|
||||
# depends on
|
||||
declare -r server='node_modules/.bin/web-dev-server'
|
||||
declare -r lint='bs/lint'
|
||||
declare -r index='index.html'
|
||||
declare -r lint='bs/dev/lint'
|
||||
declare -r tsc='bs/dev/tsc'
|
||||
declare -r assets='bs/dev/assets'
|
||||
declare -r server_config='web-dev-server.config.js'
|
||||
|
||||
help(){
|
||||
if ! isHelp "${@}"; then return 0; fi
|
||||
echoReadmeInfo
|
||||
cat <<-EOF
|
||||
Options:
|
||||
./src Starts the development server (default)
|
||||
./dist Starts the production server
|
||||
|
||||
Defaults:
|
||||
See server config file: '$server_config'
|
||||
EOF
|
||||
$server --help
|
||||
exit 0
|
||||
@@ -25,13 +27,15 @@ EOF
|
||||
main(){
|
||||
help "${@}"
|
||||
|
||||
$lint
|
||||
local -r target="${1:-./src}" # ./src or ./dist
|
||||
if [[ "$target" == './dist' ]]; then
|
||||
if [[ "$target" =~ 'dist' ]]; then
|
||||
# console warns because of config file, use npx serve?
|
||||
$server --root-dir "$target" --app-index $index --open
|
||||
$server "${@}"
|
||||
else
|
||||
$lint --watch --preserveWatchOutput &
|
||||
$server &
|
||||
$assets
|
||||
$tsc --watch --preserveWatchOutput &
|
||||
$server "${@}" &
|
||||
wait
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -5,15 +5,13 @@ set -eo pipefail # this can be harmful, see https://www.youtube.com/watch?v=4Jo3
|
||||
exit 1;
|
||||
}
|
||||
# depends on
|
||||
declare -r lint='bs/lint'
|
||||
declare -r wtr='node_modules/.bin/wtr'
|
||||
declare -r tsc='bs/dev/tsc'
|
||||
declare -r wtr='node_modules/.bin/web-test-runner'
|
||||
|
||||
help(){
|
||||
if ! isHelp "${@}"; then return 0; fi
|
||||
echoReadmeInfo
|
||||
cat <<EOF
|
||||
|
||||
Options:
|
||||
--watch, -w Runs in watch mode
|
||||
EOF
|
||||
$wtr --help
|
||||
@@ -22,12 +20,12 @@ EOF
|
||||
main(){
|
||||
help "$1"
|
||||
if [[ "$1" != "--watch" ]]; then
|
||||
$lint
|
||||
$tsc
|
||||
$wtr "$@" --coverage
|
||||
exit
|
||||
fi
|
||||
|
||||
$lint --watch --preserveWatchOutput &
|
||||
$tsc --watch --preserveWatchOutput &
|
||||
$wtr "${*}" &
|
||||
wait
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user