#──────────────────────────────────────────────────────────────────────────────┐
# SPDX-FileCopyrightText: 2026 toastal <https://toast.al/contact/>             │
# SPDX-License-Identifier: LGPL-2.1-or-later                                   │
#──────────────────────────────────────────────────────────────────────────────┘
{
	asciinema-player-script,
	asciinema-player-style,
	browserslist,
	linkFarm,
	runCommand,
	esbuild,
	lightningcss,
}:

linkFarm "asciinema-player-src" [
	{
		name = "script/player.js";
		path =
			runCommand "recompile-asciinema-script"
				{
					src = asciinema-player-script;

					nativeBuildInputs = [ esbuild ];
				}
				''
					esbuild --bundle --minify --target=es2021 --platform=browser --outfile="$out" "$src"
				'';
	}
	{
		name = "style/player.css";
		path =
			runCommand "recompile-asciinema-styles"
				{
					src = asciinema-player-style;

					nativeBuildInputs = [ lightningcss ];

					env.BROWSERSLIST_CONFIG = "${browserslist}";
				}
				''
					lightningcss --minify --browserslist --output-file "$out" "$src"
				'';
	}
]
