stuff
This commit is contained in:
parent
4706efacae
commit
cabf11cf88
33 changed files with 2573 additions and 3799 deletions
|
@ -20,8 +20,8 @@ jobs:
|
|||
working-directory: app/frontend
|
||||
run: "node ../node_modules/typescript/bin/tsc --noEmit"
|
||||
- name: "Stylelint"
|
||||
working-directory: app/frontend
|
||||
run: "node ../node_modules/stylelint/bin/stylelint.mjs ."
|
||||
working-directory: app/frontend/styles
|
||||
run: "node ../../node_modules/stylelint/bin/stylelint.mjs ."
|
||||
- name: "ESLint"
|
||||
working-directory: app
|
||||
run: "node node_modules/eslint/bin/eslint.js frontend"
|
||||
|
|
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1 +1 @@
|
|||
.idea/
|
||||
.idea/*
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<svg width="256" height="256" xmlns="http://www.w3.org/2000/svg">
|
||||
<defs/>
|
||||
<path d="M49.87 76.493c-28.61 28.61-28.61 74.992 0 103.598L125.78 256l89.538-90.112c13.89-13.89 19.517-56.259-2.294-80.364l-.666 9.344a72.955 72.955 0 0 1-15.98 40.592l-67.158 67.159a37.34 37.34 0 0 1 0-52.808l25.405-25.405c26.553-26.547 26.553-69.596 0-96.149L126.363 0Zm23.485 70.006a30.029 30.029 0 0 1 0-42.47l53.264-53.254 2.99 2.99a31.928 31.928 0 0 1 0 45.153l-51.917 51.917z" style="stroke-width: 5.12; fill: white;"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 551 B |
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="256" height="256"><path d="M49.87 76.493c-28.61 28.61-28.61 74.992 0 103.598L125.78 256l89.538-90.112c13.89-13.89 19.517-56.259-2.294-80.364l-.666 9.344a72.955 72.955 0 0 1-15.98 40.592l-67.158 67.159a37.34 37.34 0 0 1 0-52.808l25.405-25.405c26.553-26.547 26.553-69.596 0-96.149L126.363 0Zm23.485 70.006a30.029 30.029 0 0 1 0-42.47l53.264-53.254 2.99 2.99a31.928 31.928 0 0 1 0 45.153l-51.917 51.917z" style="stroke-width:5.12"/></svg>
|
Before Width: | Height: | Size: 482 B |
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 257"><circle cx="128" cy="128.827" r="128" fill="#1a171b"/><path fill="#fff" d="M183.706 48.124c-12.986.453-24.32 7.61-32.757 17.51c-9.342 10.855-15.557 23.73-20.035 36.872c-8.01-6.565-14.19-15.064-27.041-18.77c-9.933-2.852-20.366-1.674-29.96 5.474c-4.545 3.395-7.676 8.527-9.165 13.351c-3.855 12.537 4.053 23.694 7.645 27.7l7.853 8.416c1.619 1.65 5.518 5.955 3.612 12.127c-2.06 6.71-10.15 11.055-18.448 8.495c-3.706-1.13-9.03-3.891-7.838-7.779c.493-1.59 1.631-2.78 2.241-4.155c.56-1.181.827-2.067.997-2.587c1.516-4.95-.555-11.39-5.857-13.025c-4.946-1.516-10.007-.315-11.969 6.054c-2.225 7.235 1.237 20.366 19.783 26.084c21.729 6.676 40.11-5.155 42.717-20.586c1.642-9.665-2.722-16.845-10.717-26.08l-6.514-7.204c-3.946-3.942-5.301-10.661-1.217-15.825c3.446-4.356 8.354-6.215 16.392-4.029c11.733 3.186 16.963 11.327 25.69 17.893c-3.603 11.819-5.958 23.682-8.09 34.32l-1.299 7.931c-6.238 32.721-11 50.688-23.375 61.003c-2.493 1.773-6.057 4.427-11.429 4.612c-2.816.087-3.726-1.85-3.765-2.694c-.067-1.977 1.599-2.883 2.706-3.773c1.654-.902 4.155-2.398 3.985-7.191c-.18-5.664-4.872-10.575-11.654-10.35c-5.08.173-12.823 4.954-12.532 13.705c.303 9.039 8.728 15.813 21.43 15.384c6.79-.233 21.952-2.997 36.895-20.76c17.392-20.362 22.256-43.705 25.915-60.79l4.084-22.556c2.269.272 4.695.453 7.334.516c21.661.457 32.496-10.763 32.657-18.924c.107-4.939-3.241-9.799-7.928-9.689c-3.355.095-7.57 2.328-8.582 6.968c-.988 4.552 6.893 8.66.733 12.65c-4.376 2.832-12.221 4.828-23.269 3.206l2.009-11.103c4.1-21.055 9.157-46.954 28.341-47.584c1.398-.071 6.514.063 6.633 3.446c.035 1.13-.245 1.418-1.568 4.005c-1.347 2.017-1.855 3.734-1.792 5.707c.185 5.376 4.273 8.909 10.185 8.696c7.916-.256 10.193-7.963 10.063-11.921c-.32-9.3-10.122-15.175-23.1-14.75"/></svg>
|
Before Width: | Height: | Size: 1.8 KiB |
|
@ -27,7 +27,7 @@ final readonly class TestController
|
|||
{
|
||||
return new Response(
|
||||
$this->twig->render(
|
||||
'index.html.twig'
|
||||
'base.html.twig'
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ install:
|
|||
|
||||
# Starts the local Development Setup
|
||||
[group('main')]
|
||||
up: halt
|
||||
up:
|
||||
-@cd .. && docker compose up -d
|
||||
-@cd .. && symfony local:server:start -d --no-tls
|
||||
|
||||
|
|
|
@ -13,7 +13,6 @@
|
|||
"doctrine/doctrine-migrations-bundle": "^3.3",
|
||||
"doctrine/orm": "^2.17",
|
||||
"league/commonmark": "^2.4",
|
||||
"nelmio/cors-bundle": "^2.5",
|
||||
"presta/sitemap-bundle": "^4.1",
|
||||
"symfony/apache-pack": "^1.0",
|
||||
"symfony/asset": "7.1.*",
|
||||
|
@ -23,14 +22,11 @@
|
|||
"symfony/flex": "^2",
|
||||
"symfony/form": "7.1.*",
|
||||
"symfony/framework-bundle": "7.1.*",
|
||||
"symfony/http-client": "7.1.*",
|
||||
"symfony/monolog-bundle": "^3.0",
|
||||
"symfony/runtime": "7.1.*",
|
||||
"symfony/stimulus-bundle": "^2.18",
|
||||
"symfony/stimulus-bundle": "^2.12",
|
||||
"symfony/twig-bundle": "7.1.*",
|
||||
"symfony/uid": "7.1.*",
|
||||
"symfony/ux-icons": "^2.18",
|
||||
"symfony/ux-twig-component": "^2.18",
|
||||
"symfony/validator": "7.1.*",
|
||||
"symfony/webpack-encore-bundle": "^2.1",
|
||||
"symfony/yaml": "7.1.*",
|
||||
|
|
407
app/composer.lock
generated
407
app/composer.lock
generated
|
@ -4,7 +4,7 @@
|
|||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "fde2d40a3f2774eaaf160d4814649934",
|
||||
"content-hash": "69c16513a892fb6b25ff5563230dabc1",
|
||||
"packages": [
|
||||
{
|
||||
"name": "dflydev/dot-access-data",
|
||||
|
@ -1760,68 +1760,6 @@
|
|||
],
|
||||
"time": "2024-06-28T09:40:51+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nelmio/cors-bundle",
|
||||
"version": "2.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nelmio/NelmioCorsBundle.git",
|
||||
"reference": "3a526fe025cd20e04a6a11370cf5ab28dbb5a544"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/3a526fe025cd20e04a6a11370cf5ab28dbb5a544",
|
||||
"reference": "3a526fe025cd20e04a6a11370cf5ab28dbb5a544",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"psr/log": "^1.0 || ^2.0 || ^3.0",
|
||||
"symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"mockery/mockery": "^1.3.6",
|
||||
"symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.x-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Nelmio\\CorsBundle\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Tests/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nelmio",
|
||||
"homepage": "http://nelm.io"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://github.com/nelmio/NelmioCorsBundle/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Symfony application",
|
||||
"keywords": [
|
||||
"api",
|
||||
"cors",
|
||||
"crossdomain"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/nelmio/NelmioCorsBundle/issues",
|
||||
"source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.5.0"
|
||||
},
|
||||
"time": "2024-06-24T21:25:28+00:00"
|
||||
},
|
||||
{
|
||||
"name": "nette/schema",
|
||||
"version": "v1.3.0",
|
||||
|
@ -3675,178 +3613,6 @@
|
|||
],
|
||||
"time": "2024-06-28T08:00:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-client",
|
||||
"version": "v7.1.2",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-client.git",
|
||||
"reference": "90ace27d17ccc9afc6f7ec0081e8529fb0e29425"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-client/zipball/90ace27d17ccc9afc6f7ec0081e8529fb0e29425",
|
||||
"reference": "90ace27d17ccc9afc6f7ec0081e8529fb0e29425",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.2",
|
||||
"psr/log": "^1|^2|^3",
|
||||
"symfony/deprecation-contracts": "^2.5|^3",
|
||||
"symfony/http-client-contracts": "^3.4.1",
|
||||
"symfony/service-contracts": "^2.5|^3"
|
||||
},
|
||||
"conflict": {
|
||||
"php-http/discovery": "<1.15",
|
||||
"symfony/http-foundation": "<6.4"
|
||||
},
|
||||
"provide": {
|
||||
"php-http/async-client-implementation": "*",
|
||||
"php-http/client-implementation": "*",
|
||||
"psr/http-client-implementation": "1.0",
|
||||
"symfony/http-client-implementation": "3.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"amphp/amp": "^2.5",
|
||||
"amphp/http-client": "^4.2.1",
|
||||
"amphp/http-tunnel": "^1.0",
|
||||
"amphp/socket": "^1.1",
|
||||
"guzzlehttp/promises": "^1.4|^2.0",
|
||||
"nyholm/psr7": "^1.0",
|
||||
"php-http/httplug": "^1.0|^2.0",
|
||||
"psr/http-client": "^1.0",
|
||||
"symfony/dependency-injection": "^6.4|^7.0",
|
||||
"symfony/http-kernel": "^6.4|^7.0",
|
||||
"symfony/messenger": "^6.4|^7.0",
|
||||
"symfony/process": "^6.4|^7.0",
|
||||
"symfony/rate-limiter": "^6.4|^7.0",
|
||||
"symfony/stopwatch": "^6.4|^7.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Component\\HttpClient\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Tests/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"http"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-client/tree/v7.1.2"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-06-28T08:00:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-client-contracts",
|
||||
"version": "v3.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/http-client-contracts.git",
|
||||
"reference": "20414d96f391677bf80078aa55baece78b82647d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d",
|
||||
"reference": "20414d96f391677bf80078aa55baece78b82647d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-main": "3.5-dev"
|
||||
},
|
||||
"thanks": {
|
||||
"name": "symfony/contracts",
|
||||
"url": "https://github.com/symfony/contracts"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\Contracts\\HttpClient\\": ""
|
||||
},
|
||||
"exclude-from-classmap": [
|
||||
"/Test/"
|
||||
]
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Nicolas Grekas",
|
||||
"email": "p@tchwork.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Generic abstractions related to HTTP clients",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"abstractions",
|
||||
"contracts",
|
||||
"decoupling",
|
||||
"interfaces",
|
||||
"interoperability",
|
||||
"standards"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/http-client-contracts/tree/v3.5.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-04-18T09:32:20+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/http-foundation",
|
||||
"version": "v7.1.1",
|
||||
|
@ -5958,177 +5724,6 @@
|
|||
],
|
||||
"time": "2024-05-31T14:57:53+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/ux-icons",
|
||||
"version": "v2.18.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/ux-icons.git",
|
||||
"reference": "a00140b15feb16a0d991ee04e115f2a15b0d9941"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/ux-icons/zipball/a00140b15feb16a0d991ee04e115f2a15b0d9941",
|
||||
"reference": "a00140b15feb16a0d991ee04e115f2a15b0d9941",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1",
|
||||
"symfony/framework-bundle": "^6.4|^7.0",
|
||||
"symfony/twig-bundle": "^6.4|^7.0"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/flex": "<1.13"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/asset-mapper": "^6.4|^7.0",
|
||||
"symfony/console": "^6.4|^7.0",
|
||||
"symfony/http-client": "6.4|^7.0",
|
||||
"symfony/phpunit-bridge": "^6.3|^7.0",
|
||||
"symfony/ux-twig-component": "^2.14",
|
||||
"zenstruck/console-test": "^1.5"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"name": "symfony/ux",
|
||||
"url": "https://github.com/symfony/ux"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\UX\\Icons\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Kevin Bond",
|
||||
"email": "kevinbond@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "Simon André",
|
||||
"email": "smn.andre@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Renders local and remote SVG icons in your Twig templates.",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"icons",
|
||||
"svg",
|
||||
"symfony-ux",
|
||||
"twig"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/ux-icons/tree/v2.18.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-06-07T23:22:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/ux-twig-component",
|
||||
"version": "v2.18.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/ux-twig-component.git",
|
||||
"reference": "c5ba36dc0f55b75d4c6d7dc546dfdbe4002f82e7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/ux-twig-component/zipball/c5ba36dc0f55b75d4c6d7dc546dfdbe4002f82e7",
|
||||
"reference": "c5ba36dc0f55b75d4c6d7dc546dfdbe4002f82e7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"php": ">=8.1",
|
||||
"symfony/dependency-injection": "^5.4|^6.0|^7.0",
|
||||
"symfony/deprecation-contracts": "^2.2|^3.0",
|
||||
"symfony/event-dispatcher": "^5.4|^6.0|^7.0",
|
||||
"symfony/property-access": "^5.4|^6.0|^7.0",
|
||||
"twig/twig": "^3.8"
|
||||
},
|
||||
"conflict": {
|
||||
"symfony/config": "<5.4.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"symfony/console": "^5.4|^6.0|^7.0",
|
||||
"symfony/css-selector": "^5.4|^6.0|^7.0",
|
||||
"symfony/dom-crawler": "^5.4|^6.0|^7.0",
|
||||
"symfony/framework-bundle": "^5.4|^6.0|^7.0",
|
||||
"symfony/phpunit-bridge": "^6.0|^7.0",
|
||||
"symfony/stimulus-bundle": "^2.9.1",
|
||||
"symfony/stopwatch": "^5.4|^6.0|^7.0",
|
||||
"symfony/twig-bundle": "^5.4|^6.0|^7.0",
|
||||
"symfony/webpack-encore-bundle": "^1.15"
|
||||
},
|
||||
"type": "symfony-bundle",
|
||||
"extra": {
|
||||
"thanks": {
|
||||
"name": "symfony/ux",
|
||||
"url": "https://github.com/symfony/ux"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Symfony\\UX\\TwigComponent\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Symfony Community",
|
||||
"homepage": "https://symfony.com/contributors"
|
||||
}
|
||||
],
|
||||
"description": "Twig components for Symfony",
|
||||
"homepage": "https://symfony.com",
|
||||
"keywords": [
|
||||
"components",
|
||||
"symfony-ux",
|
||||
"twig"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/ux-twig-component/tree/v2.18.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://symfony.com/sponsor",
|
||||
"type": "custom"
|
||||
},
|
||||
{
|
||||
"url": "https://github.com/fabpot",
|
||||
"type": "github"
|
||||
},
|
||||
{
|
||||
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-06-11T18:51:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/validator",
|
||||
"version": "v7.1.2",
|
||||
|
|
|
@ -15,7 +15,4 @@ return [
|
|||
Vich\UploaderBundle\VichUploaderBundle::class => ['all' => true],
|
||||
Twig\Extra\TwigExtraBundle\TwigExtraBundle::class => ['all' => true],
|
||||
Presta\SitemapBundle\PrestaSitemapBundle::class => ['all' => true],
|
||||
Nelmio\CorsBundle\NelmioCorsBundle::class => ['all' => true],
|
||||
Symfony\UX\Icons\UXIconsBundle::class => ['all' => true],
|
||||
Symfony\UX\TwigComponent\TwigComponentBundle::class => ['all' => true],
|
||||
];
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
nelmio_cors:
|
||||
defaults:
|
||||
allow_credentials: false
|
||||
allow_origin: []
|
||||
|
||||
# Allow Hot Reloading CORS
|
||||
when@dev:
|
||||
nelmio_cors:
|
||||
defaults:
|
||||
origin_regex: false
|
||||
allow_origin: [ 'http://localhost:3000' ]
|
||||
allow_headers: ['Content-Type', "X-Requested-With"]
|
||||
allow_methods: [ 'POST', 'PUT', 'GET', 'DELETE' ]
|
||||
skip_same_as_origin: true
|
|
@ -1,5 +0,0 @@
|
|||
twig_component:
|
||||
anonymous_template_directory: 'components/'
|
||||
defaults:
|
||||
# Namespace & directory for components
|
||||
App\Twig\Components\: 'components/'
|
|
@ -6,10 +6,3 @@ controllers:
|
|||
|
||||
presta_sitemap:
|
||||
resource: "@PrestaSitemapBundle/config/routing.yml"
|
||||
|
||||
#when@dev:
|
||||
# test_style:
|
||||
# path: /test/styles
|
||||
# controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
|
||||
# defaults:
|
||||
# template: 'test/styles.html.twig'
|
||||
|
|
|
@ -5,20 +5,13 @@
|
|||
},
|
||||
"extends": [
|
||||
"eslint:recommended",
|
||||
"plugin:@typescript-eslint/strict",
|
||||
"plugin:svelte/recommended"
|
||||
"plugin:@typescript-eslint/strict"
|
||||
],
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"parserOptions": {
|
||||
"ecmaVersion": "latest",
|
||||
"sourceType": "module"
|
||||
},
|
||||
"overrides": [
|
||||
{
|
||||
"files": ["*.svelte"],
|
||||
"parser": "svelte-eslint-parser"
|
||||
}
|
||||
],
|
||||
"plugins": [
|
||||
"@typescript-eslint"
|
||||
],
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
import '#pkg/stimulus';
|
||||
import '@styles/app.scss';
|
||||
import '@packages/stimulus';
|
||||
|
|
4
app/frontend/controllers.json
Normal file
4
app/frontend/controllers.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"controllers": [],
|
||||
"entrypoints": []
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
{
|
||||
"controllers": [],
|
||||
"entrypoints": []
|
||||
}
|
12
app/frontend/controllers/hello_controller.ts
Normal file
12
app/frontend/controllers/hello_controller.ts
Normal file
|
@ -0,0 +1,12 @@
|
|||
import {Controller} from '@hotwired/stimulus';
|
||||
|
||||
export default class extends Controller {
|
||||
|
||||
static targets: Array<string> = ['container'];
|
||||
declare readonly containerTarget: HTMLElement;
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
afterLoad(identifier: string, application: HTMLElement): void {
|
||||
console.log(this.containerTarget);
|
||||
}
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
import {startStimulusApp} from '@symfony/stimulus-bridge';
|
||||
import { startStimulusApp } from '@symfony/stimulus-bridge';
|
||||
|
||||
// Registers Stimulus controllers from controllers.json and in the controllers/ directory
|
||||
export const app = startStimulusApp(
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
{
|
||||
"extends": [
|
||||
"stylelint-config-standard-scss"
|
||||
],
|
||||
"extends": "stylelint-config-standard-scss",
|
||||
"plugins": [
|
||||
"stylelint-scss"
|
||||
],
|
1
app/frontend/styles/app.scss
Normal file
1
app/frontend/styles/app.scss
Normal file
|
@ -0,0 +1 @@
|
|||
// This is the Main style file
|
|
@ -3,25 +3,28 @@
|
|||
<head>
|
||||
<meta charset="UTF-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||
<meta name="description" content="{% block description %}{% endblock %}"/>
|
||||
<meta name="description" content="{% block description %}{% endblock %}"
|
||||
/>
|
||||
|
||||
<link rel="icon" type="image/svg+xml" href="{{ asset('icons/favicon/icon.svg') }}"/>
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ asset('icons/favicon/apple-touch-icon.png') }}">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="{{ asset('icons/favicon/favicon-32x32.png') }}">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="{{ asset('icons/favicon/favicon-16x16.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="{{ asset('/apple-touch-icon.png') }}">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="{{ asset('/favicon-32x32.png') }}">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="{{ asset('/favicon-16x16.png') }}">
|
||||
<link rel="manifest" href="{{ asset('/site.webmanifest') }}">
|
||||
<link rel="mask-icon" href="{{ asset('/safari-pinned-tab.svg') }}" color="#000000">
|
||||
<meta name="msapplication-TileColor" content="#000000">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
|
||||
{{ encore_entry_link_tags('app') }}
|
||||
{{ encore_entry_script_tags('app') }}
|
||||
|
||||
<title>{% block title %}Euph{% endblock %}</title>
|
||||
</head>
|
||||
|
||||
{% block stylesheets %}
|
||||
{{ encore_entry_link_tags('app') }}
|
||||
{% endblock %}
|
||||
{% block javascripts %}
|
||||
{{ encore_entry_script_tags('app') }}
|
||||
{% endblock %}
|
||||
</head>
|
||||
<body>
|
||||
<twig:Header/>
|
||||
{% block body %}{% endblock %}
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
{% set logged_in = true %}
|
||||
<button>
|
||||
<twig:ux:icon name="fa6-solid:bars" />
|
||||
</button>
|
||||
<div tabindex="-1">
|
||||
<button>
|
||||
<twig:ux:icon name="fa6-solid:x" />
|
||||
</button>
|
||||
<div>
|
||||
<div >
|
||||
<twig:ux:icon name="fa6-solid:circle-user" />
|
||||
</div>
|
||||
{% if logged_in %}
|
||||
<span>Username</span>
|
||||
<span>username@email.com</span>
|
||||
<div>
|
||||
{{ _self.user_action('Profile', 'user') }}
|
||||
{{ _self.user_action('Settings', 'gear') }}
|
||||
{{ _self.user_action('Logout', 'right-from-bracket') }}
|
||||
</div>
|
||||
{% else %}
|
||||
<span>not logged in</span>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% if not logged_in %}
|
||||
<hr/>
|
||||
<a>
|
||||
<span>Login with Euphcloud</span>
|
||||
</a>
|
||||
{% endif %}
|
||||
<hr/>
|
||||
<nav>
|
||||
<ul>
|
||||
{{ _self.nav_item('Test1', '#test1', 'bars') }}
|
||||
{{ _self.nav_item('Test2', '#test2', 'bars') }}
|
||||
{{ _self.nav_item('Test3', '#test3', 'bars') }}
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
{% macro user_action(name, icon) %}
|
||||
<button>
|
||||
<twig:ux:icon name="fa6-solid:{{ icon }}" />
|
||||
<span>{{ name }}</span>
|
||||
</button>
|
||||
{% endmacro %}
|
||||
|
||||
{% macro nav_item(name, href, icon) %}
|
||||
<li>
|
||||
<a href="{{ href }}">
|
||||
<twig:ux:icon name="fa6-solid:{{ icon }}" />
|
||||
<span>{{ name }}</span>
|
||||
</a>
|
||||
</li>
|
||||
{% endmacro %}
|
|
@ -1,14 +0,0 @@
|
|||
<header id="header">
|
||||
<img
|
||||
id="header__logo"
|
||||
src="{{ asset("icons/logo/logo.svg") }}"
|
||||
alt="Euph Logo"
|
||||
>
|
||||
<img
|
||||
id="header__logo-dark"
|
||||
src="{{ asset("icons/logo/dark-logo.svg") }}"
|
||||
alt="Euph Logo"
|
||||
>
|
||||
<h1 id="header__logo-text">Euph</h1>
|
||||
<twig:BurgerMenu/>
|
||||
</header>
|
|
@ -1,3 +0,0 @@
|
|||
{% extends 'base.html.twig' %}
|
||||
{% block body %}
|
||||
{% endblock %}
|
|
@ -3,7 +3,7 @@
|
|||
"target": "ES6",
|
||||
"module": "ESNext",
|
||||
"moduleResolution": "node",
|
||||
"allowJs": false,
|
||||
"allowJs": true,
|
||||
"noImplicitAny": true,
|
||||
"strict": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
|
@ -13,13 +13,13 @@
|
|||
"~*": [
|
||||
".*"
|
||||
],
|
||||
"#components/*": [
|
||||
"@styles/*": [
|
||||
"./styles/*"
|
||||
],
|
||||
"@controllers*": [
|
||||
"./controllers/*"
|
||||
],
|
||||
"#controllers/*": [
|
||||
"./controllers/*"
|
||||
],
|
||||
"#pkg/*": [
|
||||
"@packages/*": [
|
||||
"./packages/*"
|
||||
],
|
||||
"#types/*": [
|
||||
|
@ -29,6 +29,5 @@
|
|||
},
|
||||
"include": [
|
||||
"./**/*.ts",
|
||||
"./**/*.svelte"
|
||||
]
|
||||
],
|
||||
}
|
||||
|
|
4
app/frontend/types/http.ts
Normal file
4
app/frontend/types/http.ts
Normal file
|
@ -0,0 +1,4 @@
|
|||
export enum HttpCodes
|
||||
{
|
||||
OK = 200
|
||||
}
|
5667
app/package-lock.json
generated
5667
app/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
@ -8,8 +8,11 @@
|
|||
"build": "encore production --progress",
|
||||
"lint:ts": "cd frontend && eslint .",
|
||||
"lint:ts:fix": "cd frontend && eslint . --fix",
|
||||
"lint:scss": "cd frontend && stylelint .",
|
||||
"lint:scss:fix": "cd frontend && stylelint . --fix"
|
||||
"lint:scss": "cd frontend/styles && stylelint .",
|
||||
"lint:scss:fix": "cd frontend/styles && stylelint . --fix"
|
||||
},
|
||||
"dependencies": {
|
||||
"easymde": "^2.18.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.23.3",
|
||||
|
@ -21,14 +24,14 @@
|
|||
"@symfony/webpack-encore": "^4.0.0",
|
||||
"@typescript-eslint/eslint-plugin": "^6.10.0",
|
||||
"@typescript-eslint/parser": "^6.10.0",
|
||||
"autoprefixer": "^10.4.19",
|
||||
"browser-sync": "^2.29.3",
|
||||
"browser-sync-webpack-plugin": "^2.3.0",
|
||||
"bootstrap": "^5.3.2",
|
||||
"core-js": "^3.23.0",
|
||||
"eslint": "^8.53.0",
|
||||
"file-loader": "^6.2.0",
|
||||
"fork-ts-checker-webpack-plugin": "^9.0.0",
|
||||
"ignore-loader": "^0.1.2",
|
||||
"jquery": "^3.7.1",
|
||||
"junit-report-merger": "^6.0.3",
|
||||
"prettier": "^2.8.8",
|
||||
"regenerator-runtime": "^0.13.9",
|
||||
"sass": "^1.69.4",
|
||||
|
|
|
@ -62,18 +62,6 @@
|
|||
".php-cs-fixer.dist.php"
|
||||
]
|
||||
},
|
||||
"nelmio/cors-bundle": {
|
||||
"version": "2.5",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "1.5",
|
||||
"ref": "6bea22e6c564fba3a1391615cada1437d0bde39c"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/nelmio_cors.yaml"
|
||||
]
|
||||
},
|
||||
"phpstan/phpstan": {
|
||||
"version": "1.10",
|
||||
"recipe": {
|
||||
|
@ -249,30 +237,6 @@
|
|||
"config/packages/uid.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/ux-icons": {
|
||||
"version": "2.18",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "2.17",
|
||||
"ref": "803a3bbd5893f9584969ab8670290cdfb6a0a5b5"
|
||||
},
|
||||
"files": [
|
||||
"assets/icons/symfony.svg"
|
||||
]
|
||||
},
|
||||
"symfony/ux-twig-component": {
|
||||
"version": "2.18",
|
||||
"recipe": {
|
||||
"repo": "github.com/symfony/recipes",
|
||||
"branch": "main",
|
||||
"version": "2.13",
|
||||
"ref": "67814b5f9794798b885cec9d3f48631424449a01"
|
||||
},
|
||||
"files": [
|
||||
"config/packages/twig_component.yaml"
|
||||
]
|
||||
},
|
||||
"symfony/validator": {
|
||||
"version": "6.3",
|
||||
"recipe": {
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
/** @type {import('tailwindcss').Config} */
|
||||
module.exports = {
|
||||
content: [
|
||||
"./frontend/**/*.ts",
|
||||
"./frontend/templates/**/*.html.twig",
|
||||
"./node_modules/flowbite/**/*.js"
|
||||
],
|
||||
theme: {
|
||||
extend: {
|
||||
|
||||
},
|
||||
},
|
||||
plugins: [
|
||||
require('flowbite/plugin')
|
||||
],
|
||||
darkMode: 'selector'
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
const Encore = require('@symfony/webpack-encore');
|
||||
const {TsconfigPathsPlugin} = require("tsconfig-paths-webpack-plugin");
|
||||
const path = require('path');
|
||||
const BrowserSyncPlugin = require('browser-sync-webpack-plugin');
|
||||
|
||||
|
||||
if (!Encore.isRuntimeEnvironmentConfigured()) {
|
||||
Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
|
||||
|
@ -14,10 +14,17 @@ Encore
|
|||
.setPublicPath('/build')
|
||||
.copyFiles({
|
||||
from: './assets/',
|
||||
to: '../[path][name].[ext]'
|
||||
to: '../[path][name].[ext]',
|
||||
pattern: /\.(?!scss|stylelint.*|json|woff).*$/
|
||||
|
||||
})
|
||||
|
||||
// Code Entries
|
||||
.addEntry('app', './frontend/app.ts')
|
||||
|
||||
// Style Entries
|
||||
//.addStyleEntry('name', './frontend/styles/name.scss')
|
||||
|
||||
// Webpack
|
||||
.splitEntryChunks()
|
||||
.enableSingleRuntimeChunk()
|
||||
|
@ -31,8 +38,8 @@ Encore
|
|||
config.useBuiltIns = 'usage';
|
||||
config.corejs = '3.23';
|
||||
})
|
||||
.enableStimulusBridge('./frontend/controllers/controllers.json')
|
||||
//.enableSassLoader()
|
||||
.enableStimulusBridge('./frontend/controllers.json')
|
||||
.enableSassLoader()
|
||||
.enableTypeScriptLoader(function tsconfigCallback(tsConfig) {
|
||||
tsConfig.configFile = TS_CONFIG_PATH;
|
||||
})
|
||||
|
@ -41,17 +48,6 @@ Encore
|
|||
configFile: TS_CONFIG_PATH
|
||||
}
|
||||
})
|
||||
.addPlugin(new BrowserSyncPlugin({
|
||||
proxy: 'http://localhost:8000',
|
||||
files: [
|
||||
'frontend/**/*.twig',
|
||||
'frontend/**/*.svelte',
|
||||
'frontend/**/*.ts',
|
||||
],
|
||||
reload: true,
|
||||
open: true,
|
||||
notify: false
|
||||
}))
|
||||
;
|
||||
|
||||
const config = Encore.getWebpackConfig();
|
||||
|
@ -62,3 +58,5 @@ config.resolve.plugins = [
|
|||
];
|
||||
|
||||
module.exports = config;
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue