[private]
default:
    gleam check
    @just --list

generate-js-bundle:
  deno install
  gleam build --target javascript
  echo 'import { register } from "./chilp.mjs";document.addEventListener("DOMContentLoaded", register)' > "build/dev/javascript/chilp/index.js"
  deno bundle --output=dist/bundle.js --sourcemap=linked --platform=browser --inline-imports=true ./build/dev/javascript/chilp/index.js
  deno bundle --output=dist/bundle.min.js --minify --platform=browser --inline-imports=true ./build/dev/javascript/chilp/index.js
  # deno bundle --output=dist/lib.js --sourcemap=linked --inline-imports=true ./build/dev/javascript/chilp/chilp.mjs

generate-basestyles:
  deno install
  @echo ".comment-widget {" > ./docs/basic.css
  tailwindcss -i ./src/input.css -o ./docs/temp.css --optimise
  sed -i -e 's/:host/*/g' ./docs/temp.css
  sed -i -e 's/:root/*/g' ./docs/temp.css
  cat ./docs/temp.css >> ./docs/basic.css
  rm ./docs/temp.css
  @echo "}" >> ./docs/basic.css
  deno x prettier -w docs/basic.css

run-example: generate-basestyles
  cp ./docs/basic.css ./examples/lustre_chilp_app/assets/styled.css
  cd ./examples/lustre_chilp_app/; gleam run -m lustre/dev start


run-example-js: generate-js-bundle generate-basestyles
  mkdir -p ./examples/js_chilp_example/assets/
  cp ./docs/basic.css ./examples/js_chilp_example/assets/styled.css
  cp ./dist/* ./examples/js_chilp_example/assets/
  deno x serve ./examples/js_chilp_example
