diff --git a/.gitignore b/.gitignore index 3cbc314..f946a1c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,13 @@ .worktrees/ /vendor/ -/var/ +/var/cache/ +/var/phpunit/ +/var/phpstan/ +/var/logs/ +/var/uploads/* +!/var/uploads/.htaccess +!/var/uploads/index.php +/node_modules/ +/public/js/*.map +.phpunit.result.cache +.phpunit.cache diff --git a/phpcs.xml b/phpcs.xml index 367f237..a8df2a9 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -4,6 +4,7 @@ src tests + public/index.php diff --git a/phpstan.neon b/phpstan.neon index e7662a4..0d38a3b 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -3,4 +3,7 @@ parameters: paths: - src - tests + - public/index.php + excludePaths: + - src/Views/* tmpDir: var/phpstan diff --git a/phpunit.xml b/phpunit.xml index cf65ccf..dd70c0c 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -5,8 +5,11 @@ cacheDirectory="var/phpunit" colors="true"> - - tests + + tests/Unit + + + tests/Integration diff --git a/public/assets/styles.css b/public/assets/styles.css new file mode 100644 index 0000000..f443cb8 --- /dev/null +++ b/public/assets/styles.css @@ -0,0 +1,21 @@ +* { box-sizing: border-box; } +html, body { margin: 0; padding: 0; font-family: sans-serif; } +body { padding: 1rem; max-width: 64rem; margin: 0 auto; } +fieldset { margin: 0 0 1rem 0; padding: 0.5rem 1rem; } +legend { font-weight: bold; } +label { display: block; margin: 0.25rem 0; } +input, select, button, textarea { font: inherit; } +input[type="number"] { width: 5rem; } +table.bf-grid { border-collapse: collapse; } +table.bf-grid td { padding: 0; } +table.bf-grid button { width: 2rem; height: 2rem; border: 1px solid #ccc; background: #fff; } +table.bf-grid button[data-paint="open"] { background: #fff; } +table.bf-grid button[data-paint="forest"] { background: #cfc; } +table.bf-grid button[data-paint="rough"] { background: #fec; } +table.bf-grid button[data-paint="water"] { background: #cce; } +table.bf-grid button[data-paint="blocking"] { background: #444; color: #fff; } +table.bf-grid button[data-objective="1"] { outline: 3px solid #c00; } +table.bf-grid button[data-zone="alpha"] { outline: 3px solid #00c; } +table.bf-grid button[data-zone="bravo"] { outline: 3px solid #0c0; } +.bf-errors { color: #c00; } +.bf-toast { background: #dfd; padding: 0.5rem 1rem; margin: 0.5rem 0; } diff --git a/public/index.php b/public/index.php new file mode 100644 index 0000000..0845a87 --- /dev/null +++ b/public/index.php @@ -0,0 +1,9 @@ +