diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000..d0d7ffe --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,6 @@ +{ + "name": "Euph Website", + "image": "git.euph.dev/development_tools/symfony:latest", + "forwardPorts": [8080], + workspaceMount: "" +} diff --git a/app/config/packages/twig.yaml b/app/config/packages/twig.yaml index 3ffaba2..03baf16 100644 --- a/app/config/packages/twig.yaml +++ b/app/config/packages/twig.yaml @@ -1,5 +1,5 @@ twig: - default_path: '%kernel.project_dir%/frontend/templates' + default_path: '%kernel.project_dir%/frontend/templates/' when@test: twig: diff --git a/app/frontend/.eslintrc.json b/app/frontend/.eslintrc.json index 2f57d8d..7676f8c 100644 --- a/app/frontend/.eslintrc.json +++ b/app/frontend/.eslintrc.json @@ -6,19 +6,12 @@ "extends": [ "eslint:recommended", "plugin:@typescript-eslint/strict", - "plugin:svelte/recommended" ], "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": "latest", "sourceType": "module" }, - "overrides": [ - { - "files": ["*.svelte"], - "parser": "svelte-eslint-parser" - } - ], "plugins": [ "@typescript-eslint" ], diff --git a/app/frontend/app.ts b/app/frontend/app.ts index 041d559..6a94bff 100644 --- a/app/frontend/app.ts +++ b/app/frontend/app.ts @@ -1 +1,2 @@ +import '#styles/app.scss'; import '#pkg/stimulus'; diff --git a/app/frontend/styles/app.scss b/app/frontend/styles/app.scss new file mode 100644 index 0000000..5f47edd --- /dev/null +++ b/app/frontend/styles/app.scss @@ -0,0 +1,9 @@ +@import "sizes"; + +@import "components/Header/_"; +@import "components/BurgerMenu/_"; + +:root, body { + margin: 0; + min-height: 100%; +} diff --git a/app/frontend/styles/components/BurgerMenu/_.scss b/app/frontend/styles/components/BurgerMenu/_.scss new file mode 100644 index 0000000..56e8102 --- /dev/null +++ b/app/frontend/styles/components/BurgerMenu/_.scss @@ -0,0 +1,5 @@ +#burger-menu { + &__container { + display: none; + } +} diff --git a/app/frontend/styles/components/Header/_.scss b/app/frontend/styles/components/Header/_.scss new file mode 100644 index 0000000..b2f5fd6 --- /dev/null +++ b/app/frontend/styles/components/Header/_.scss @@ -0,0 +1,7 @@ +#header { + display: flex; + height: $size-xxl; + padding: $size-xs; + gap: $size-xs; + justify-items: center; +} diff --git a/app/frontend/styles/sizes.scss b/app/frontend/styles/sizes.scss new file mode 100644 index 0000000..c87ff96 --- /dev/null +++ b/app/frontend/styles/sizes.scss @@ -0,0 +1,7 @@ +$size-xxs: 0.25rem; // 4px +$size-xs: 0.5rem; // 8px +$size-s: 0.75rem; // 12px +$size-m: 1rem; // 16px +$size-l: 1.5rem; // 24px +$size-xl: 2rem; // 32px +$size-xxl: 3rem; // 48px diff --git a/app/frontend/templates/base.html.twig b/app/frontend/templates/base.html.twig index d1eb5e2..1b17d4b 100644 --- a/app/frontend/templates/base.html.twig +++ b/app/frontend/templates/base.html.twig @@ -21,7 +21,7 @@ - + {% block body %}{% endblock %} diff --git a/app/frontend/templates/components/BurgerMenu.html.twig b/app/frontend/templates/components/BurgerMenu.html.twig deleted file mode 100644 index e36697e..0000000 --- a/app/frontend/templates/components/BurgerMenu.html.twig +++ /dev/null @@ -1,55 +0,0 @@ -{% set logged_in = true %} - -
- -
-
- -
- {% if logged_in %} - Username - username@email.com -
- {{ _self.user_action('Profile', 'user') }} - {{ _self.user_action('Settings', 'gear') }} - {{ _self.user_action('Logout', 'right-from-bracket') }} -
- {% else %} - not logged in - {% endif %} -
- {% if not logged_in %} -
- - Login with Euphcloud - - {% endif %} -
- -
- -{% macro user_action(name, icon) %} - -{% endmacro %} - -{% macro nav_item(name, href, icon) %} -
  • - - - {{ name }} - -
  • -{% endmacro %} diff --git a/app/frontend/templates/components/BurgerMenu/Login.html.twig b/app/frontend/templates/components/BurgerMenu/Login.html.twig new file mode 100644 index 0000000..f392831 --- /dev/null +++ b/app/frontend/templates/components/BurgerMenu/Login.html.twig @@ -0,0 +1,6 @@ +{% set logged_in = false %} +{% if not logged_in %} + + Login with Euphcloud + +{% endif %} diff --git a/app/frontend/templates/components/BurgerMenu/Navigation.html.twig b/app/frontend/templates/components/BurgerMenu/Navigation.html.twig new file mode 100644 index 0000000..e06feaf --- /dev/null +++ b/app/frontend/templates/components/BurgerMenu/Navigation.html.twig @@ -0,0 +1,16 @@ + + +{% macro nav_item(name, href, icon) %} +
  • + + + {{ name }} + +
  • +{% endmacro %} diff --git a/app/frontend/templates/components/BurgerMenu/User.html.twig b/app/frontend/templates/components/BurgerMenu/User.html.twig new file mode 100644 index 0000000..e664e57 --- /dev/null +++ b/app/frontend/templates/components/BurgerMenu/User.html.twig @@ -0,0 +1,26 @@ +{% set logged_in = false %} +
    +
    + +
    + {% if logged_in %} + Username + username@email.com +
    + {{ _self.user_action('Profile', 'user') }} + {{ _self.user_action('Settings', 'gear') }} + {{ _self.user_action('Logout', 'right-from-bracket') }} +
    + {% else %} + not logged in + {% endif %} +
    + + +{% macro user_action(name, icon) %} + +{% endmacro %} + diff --git a/app/frontend/templates/components/BurgerMenu/_.html.twig b/app/frontend/templates/components/BurgerMenu/_.html.twig new file mode 100644 index 0000000..11adbc3 --- /dev/null +++ b/app/frontend/templates/components/BurgerMenu/_.html.twig @@ -0,0 +1,14 @@ + +
    + + +
    + +
    + +
    + diff --git a/app/frontend/templates/components/Header.html.twig b/app/frontend/templates/components/Header/_.html.twig similarity index 63% rename from app/frontend/templates/components/Header.html.twig rename to app/frontend/templates/components/Header/_.html.twig index aee0c7b..5ffc101 100644 --- a/app/frontend/templates/components/Header.html.twig +++ b/app/frontend/templates/components/Header/_.html.twig @@ -1,14 +1,12 @@ diff --git a/app/frontend/tsconfig.json b/app/frontend/tsconfig.json index 575d0ad..7cf56f2 100644 --- a/app/frontend/tsconfig.json +++ b/app/frontend/tsconfig.json @@ -22,6 +22,9 @@ "#pkg/*": [ "./packages/*" ], + "#styles/*": [ + "./styles/*" + ], "#types/*": [ "./types/*" ] diff --git a/app/webpack.config.js b/app/webpack.config.js index fc13373..cfa5bac 100644 --- a/app/webpack.config.js +++ b/app/webpack.config.js @@ -32,7 +32,7 @@ Encore config.corejs = '3.23'; }) .enableStimulusBridge('./frontend/controllers/controllers.json') - //.enableSassLoader() + .enableSassLoader() .enableTypeScriptLoader(function tsconfigCallback(tsConfig) { tsConfig.configFile = TS_CONFIG_PATH; })