From 27454709af167f8ff7649b3a635d8b65fc26db84 Mon Sep 17 00:00:00 2001 From: tracer Date: Tue, 15 Nov 2022 17:17:47 +0100 Subject: [PATCH] before remerve from turbo to master --- assets/controllers/crop_avatar_controller.js | 34 - composer.json | 8 +- composer.lock | 930 ++++++++++++++++++- migrations/Version20221115104149.php | 31 + package.json | 10 +- symfony.lock | 15 + webpack.config.js | 4 + yarn.lock | 81 ++ 8 files changed, 1076 insertions(+), 37 deletions(-) delete mode 100644 assets/controllers/crop_avatar_controller.js create mode 100644 migrations/Version20221115104149.php diff --git a/assets/controllers/crop_avatar_controller.js b/assets/controllers/crop_avatar_controller.js deleted file mode 100644 index 2393657..0000000 --- a/assets/controllers/crop_avatar_controller.js +++ /dev/null @@ -1,34 +0,0 @@ -import { Controller } from '@hotwired/stimulus' -import Swal from 'sweetalert2' - -export default class extends Controller { - static values = { - cropImage: String - } - - connect() { - console.log('crop', this.cropImageValue) - window.CropAvatar = this - } - - open() { - console.log('open crop') - Swal.fire({ - title: 'Are you sure?', - text: "You won't be able to revert this!", - icon: 'warning', - showCancelButton: true, - confirmButtonColor: '#3085d6', - cancelButtonColor: '#d33', - confirmButtonText: 'Yes, delete it!', - }).then((result) => { - if (result.isConfirmed) { - Swal.fire( - 'Deleted!', - 'Your file has been deleted.', - 'success', - ) - } - }) - } -} diff --git a/composer.json b/composer.json index b632310..c380b50 100644 --- a/composer.json +++ b/composer.json @@ -16,6 +16,8 @@ "league/commonmark": "^2.3", "liip/imagine-bundle": "^2.9", "nelmio/cors-bundle": "^2.2", + "php-flasher/flasher-sweetalert-symfony": "^1.7", + "php-flasher/flasher-symfony": "^1.7", "phpdocumentor/reflection-docblock": "^5.3", "phpstan/phpdoc-parser": "^1.4", "rector/rector": "^0.12.21", @@ -48,6 +50,9 @@ "symfony/string": "6.1.*", "symfony/translation": "6.1.*", "symfony/twig-bundle": "6.1.*", + "symfony/ux-cropperjs": "^2.5", + "symfony/ux-dropzone": "^2.5", + "symfony/ux-turbo": "^2.5", "symfony/validator": "6.1.*", "symfony/web-link": "6.1.*", "symfony/webapp-meta": "^1.0", @@ -57,7 +62,8 @@ "symfonycasts/verify-email-bundle": "^1.12", "twig/extra-bundle": "^3.4", "twig/markdown-extra": "^3.4", - "twig/twig": "3.4.*" + "twig/twig": "3.4.*", + "ext-http": "*" }, "config": { "allow-plugins": { diff --git a/composer.lock b/composer.lock index ccaa754..e4ad933 100644 --- a/composer.lock +++ b/composer.lock @@ -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": "1c940d128112ec366d0f81bc6eccee45", + "content-hash": "e475387f74f1428bb35d9943950aa2f8", "packages": [ { "name": "dflydev/dot-access-data", @@ -1689,6 +1689,125 @@ ], "time": "2022-10-17T19:48:16+00:00" }, + { + "name": "guzzlehttp/psr7", + "version": "2.4.3", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "67c26b443f348a51926030c83481b85718457d3d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.1", + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^8.5.29 || ^9.5.23" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "2.4-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "description": "PSR-7 message implementation that also provides common utility methods", + "keywords": [ + "http", + "message", + "psr-7", + "request", + "response", + "stream", + "uri", + "url" + ], + "support": { + "issues": "https://github.com/guzzle/psr7/issues", + "source": "https://github.com/guzzle/psr7/tree/2.4.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2022-10-26T14:07:24+00:00" + }, { "name": "imagine/imagine", "version": "1.3.2", @@ -1751,6 +1870,90 @@ }, "time": "2022-04-01T11:58:30+00:00" }, + { + "name": "intervention/image", + "version": "2.7.2", + "source": { + "type": "git", + "url": "https://github.com/Intervention/image.git", + "reference": "04be355f8d6734c826045d02a1079ad658322dad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Intervention/image/zipball/04be355f8d6734c826045d02a1079ad658322dad", + "reference": "04be355f8d6734c826045d02a1079ad658322dad", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "guzzlehttp/psr7": "~1.1 || ^2.0", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "~0.9.2", + "phpunit/phpunit": "^4.8 || ^5.7 || ^7.5.15" + }, + "suggest": { + "ext-gd": "to use GD library based image processing.", + "ext-imagick": "to use Imagick based image processing.", + "intervention/imagecache": "Caching extension for the Intervention Image library" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.4-dev" + }, + "laravel": { + "providers": [ + "Intervention\\Image\\ImageServiceProvider" + ], + "aliases": { + "Image": "Intervention\\Image\\Facades\\Image" + } + } + }, + "autoload": { + "psr-4": { + "Intervention\\Image\\": "src/Intervention/Image" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oliver Vogel", + "email": "oliver@intervention.io", + "homepage": "https://intervention.io/" + } + ], + "description": "Image handling and manipulation library with support for Laravel integration", + "homepage": "http://image.intervention.io/", + "keywords": [ + "gd", + "image", + "imagick", + "laravel", + "thumbnail", + "watermark" + ], + "support": { + "issues": "https://github.com/Intervention/image/issues", + "source": "https://github.com/Intervention/image/tree/2.7.2" + }, + "funding": [ + { + "url": "https://paypal.me/interventionio", + "type": "custom" + }, + { + "url": "https://github.com/Intervention", + "type": "github" + } + ], + "time": "2022-05-21T17:30:32+00:00" + }, { "name": "knplabs/knp-time-bundle", "version": "v1.20.0", @@ -2489,6 +2692,316 @@ }, "time": "2022-09-12T23:36:20+00:00" }, + { + "name": "php-flasher/flasher", + "version": "v1.7.0", + "source": { + "type": "git", + "url": "https://github.com/php-flasher/flasher.git", + "reference": "10071abc73d0311a99e1860e88d5895ac4d7535c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-flasher/flasher/zipball/10071abc73d0311a99e1860e88d5895ac4d7535c", + "reference": "10071abc73d0311a99e1860e88d5895ac4d7535c", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Flasher\\Prime\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Younes KHOUBZA", + "email": "younes.khoubza@gmail.com", + "homepage": "https://www.linkedin.com/in/younes-khoubza", + "role": "Developer" + } + ], + "description": "A powerful and flexible flash notification system for PHP", + "homepage": "https://php-flasher.io", + "keywords": [ + "Flasher", + "alerts", + "flash", + "laravel", + "lumen", + "messages", + "notifications", + "notify", + "noty", + "notyf", + "php", + "pnotify", + "sweet alert", + "symfony", + "toastr" + ], + "support": { + "source": "https://github.com/php-flasher/flasher/tree/v1.7.0" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/yoeunes", + "type": "custom" + }, + { + "url": "https://ko-fi.com/yoeunes", + "type": "ko_fi" + }, + { + "url": "https://opencollective.com/php-flasher", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/yoeunes", + "type": "patreon" + } + ], + "time": "2022-07-05T19:33:26+00:00" + }, + { + "name": "php-flasher/flasher-sweetalert", + "version": "v1.7.0", + "source": { + "type": "git", + "url": "https://github.com/php-flasher/flasher-sweetalert.git", + "reference": "abab36c6a70405ad9838238338a76853541baa34" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-flasher/flasher-sweetalert/zipball/abab36c6a70405ad9838238338a76853541baa34", + "reference": "abab36c6a70405ad9838238338a76853541baa34", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "php-flasher/flasher": "^1.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Flasher\\SweetAlert\\Prime\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Younes KHOUBZA", + "email": "younes.khoubza@gmail.com", + "homepage": "https://www.linkedin.com/in/younes-khoubza", + "role": "Developer" + } + ], + "description": "PHP Flasher adapter for Sweet Alert 2", + "homepage": "https://php-flasher.io", + "keywords": [ + "alerts", + "laravel", + "lumen", + "messages", + "notifications", + "notify", + "php", + "pnotify", + "sweetalert", + "symfony" + ], + "support": { + "source": "https://github.com/php-flasher/flasher-sweetalert/tree/v1.7.0" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/yoeunes", + "type": "custom" + }, + { + "url": "https://ko-fi.com/yoeunes", + "type": "ko_fi" + }, + { + "url": "https://opencollective.com/php-flasher", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/yoeunes", + "type": "patreon" + } + ], + "time": "2022-07-05T19:36:36+00:00" + }, + { + "name": "php-flasher/flasher-sweetalert-symfony", + "version": "v1.7.0", + "source": { + "type": "git", + "url": "https://github.com/php-flasher/flasher-sweetalert-symfony.git", + "reference": "f8f10ad9760b30c8fc1fe4e9891b595a5cd8c51e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-flasher/flasher-sweetalert-symfony/zipball/f8f10ad9760b30c8fc1fe4e9891b595a5cd8c51e", + "reference": "f8f10ad9760b30c8fc1fe4e9891b595a5cd8c51e", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "php-flasher/flasher-sweetalert": "^1.7", + "php-flasher/flasher-symfony": "^1.7" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Flasher\\SweetAlert\\Symfony\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Younes KHOUBZA", + "email": "younes.khoubza@gmail.com", + "homepage": "https://www.linkedin.com/in/younes-khoubza", + "role": "Developer" + } + ], + "description": "PHP Flasher Symfony adapter for Sweet Alert 2", + "homepage": "https://php-flasher.io", + "keywords": [ + "alerts", + "bundle", + "flex", + "laravel", + "lumen", + "messages", + "notifications", + "notify", + "php", + "pnotify", + "sweetalert", + "symfony", + "toastr", + "yoeunes" + ], + "support": { + "source": "https://github.com/php-flasher/flasher-sweetalert-symfony/tree/v1.7.0" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/yoeunes", + "type": "custom" + }, + { + "url": "https://ko-fi.com/yoeunes", + "type": "ko_fi" + }, + { + "url": "https://opencollective.com/php-flasher", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/yoeunes", + "type": "patreon" + } + ], + "time": "2022-07-05T19:36:36+00:00" + }, + { + "name": "php-flasher/flasher-symfony", + "version": "v1.7.0", + "source": { + "type": "git", + "url": "https://github.com/php-flasher/flasher-symfony.git", + "reference": "1e003819402f415d07b8fedabfff527bd164822b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-flasher/flasher-symfony/zipball/1e003819402f415d07b8fedabfff527bd164822b", + "reference": "1e003819402f415d07b8fedabfff527bd164822b", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "php-flasher/flasher": "^1.7", + "symfony/config": "^2.0|^3.0|^4.0|^5.0|^6.0", + "symfony/console": "^2.0|^3.0|^4.0|^5.0|^6.0", + "symfony/dependency-injection": "^2.0|^3.0|^4.0|^5.0|^6.0", + "symfony/http-kernel": "^2.0|^3.0|^4.0|^5.0|^6.0", + "symfony/translation": "^2.0|^3.0|^4.0|^5.0|^6.0", + "symfony/twig-bundle": "^2.0|^3.0|^4.0|^5.0|^6.0" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Flasher\\Symfony\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Younes KHOUBZA", + "email": "younes.khoubza@gmail.com", + "homepage": "https://www.linkedin.com/in/younes-khoubza", + "role": "Developer" + } + ], + "description": "Symfony bundle integrating PHP Flasher into Symfony applications", + "homepage": "https://php-flasher.io", + "keywords": [ + "alerts", + "bundle", + "flex", + "laravel", + "lumen", + "messages", + "notifications", + "notify", + "php", + "pnotify", + "symfony", + "toastr", + "yoeunes" + ], + "support": { + "source": "https://github.com/php-flasher/flasher-symfony/tree/v1.7.0" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/yoeunes", + "type": "custom" + }, + { + "url": "https://ko-fi.com/yoeunes", + "type": "ko_fi" + }, + { + "url": "https://opencollective.com/php-flasher", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/yoeunes", + "type": "patreon" + } + ], + "time": "2022-07-05T19:36:36+00:00" + }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -2910,6 +3423,114 @@ }, "time": "2019-01-08T18:20:26+00:00" }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, + { + "name": "psr/http-message", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, + "time": "2016-08-06T14:39:51+00:00" + }, { "name": "psr/link", "version": "2.0.1", @@ -3016,6 +3637,50 @@ }, "time": "2021-07-14T16:46:02+00:00" }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/getallheaders.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" + } + ], + "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, + "time": "2019-03-08T08:55:37+00:00" + }, { "name": "rector/rector", "version": "0.12.23", @@ -8175,6 +8840,269 @@ ], "time": "2022-09-09T09:34:27+00:00" }, + { + "name": "symfony/ux-cropperjs", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/ux-cropperjs.git", + "reference": "123b30ff6b539625bcf50413b945a16de6bc9d6e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/ux-cropperjs/zipball/123b30ff6b539625bcf50413b945a16de6bc9d6e", + "reference": "123b30ff6b539625bcf50413b945a16de6bc9d6e", + "shasum": "" + }, + "require": { + "intervention/image": "^2.5", + "php": ">=7.2.5", + "symfony/config": "^4.4.17|^5.0|^6.0", + "symfony/dependency-injection": "^4.4.17|^5.0|^6.0", + "symfony/form": "^4.4.17|^5.0|^6.0", + "symfony/http-kernel": "^4.4.17|^5.0|^6.0", + "symfony/validator": "^4.4.17|^5.0|^6.0" + }, + "conflict": { + "symfony/flex": "<1.13" + }, + "require-dev": { + "symfony/framework-bundle": "^4.4.17|^5.0|^6.0", + "symfony/phpunit-bridge": "^5.2|^6.0", + "symfony/twig-bundle": "^4.4.17|^5.0|^6.0", + "symfony/var-dumper": "^4.4.17|^5.0|^6.0" + }, + "type": "symfony-bundle", + "extra": { + "thanks": { + "name": "symfony/ux", + "url": "https://github.com/symfony/ux" + } + }, + "autoload": { + "psr-4": { + "Symfony\\UX\\Cropperjs\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Titouan Galopin", + "email": "galopintitouan@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Cropper.js integration for Symfony", + "homepage": "https://symfony.com", + "keywords": [ + "symfony-ux" + ], + "support": { + "source": "https://github.com/symfony/ux-cropperjs/tree/v2.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": "2022-11-01T17:19:11+00:00" + }, + { + "name": "symfony/ux-dropzone", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/ux-dropzone.git", + "reference": "897dbc3a8e61510c3f9c2ee7fee5596eb9cbf1d6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/ux-dropzone/zipball/897dbc3a8e61510c3f9c2ee7fee5596eb9cbf1d6", + "reference": "897dbc3a8e61510c3f9c2ee7fee5596eb9cbf1d6", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/config": "^4.4.17|^5.0|^6.0", + "symfony/dependency-injection": "^4.4.17|^5.0|^6.0", + "symfony/form": "^4.4.17|^5.0|^6.0", + "symfony/http-kernel": "^4.4.17|^5.0|^6.0" + }, + "require-dev": { + "symfony/framework-bundle": "^4.4.17|^5.0|^6.0", + "symfony/phpunit-bridge": "^5.2|^6.0", + "symfony/twig-bundle": "^4.4.17|^5.0|^6.0", + "symfony/var-dumper": "^4.4.17|^5.0|^6.0" + }, + "type": "symfony-bundle", + "extra": { + "thanks": { + "name": "symfony/ux", + "url": "https://github.com/symfony/ux" + } + }, + "autoload": { + "psr-4": { + "Symfony\\UX\\Dropzone\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Titouan Galopin", + "email": "galopintitouan@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "File input dropzones for Symfony Forms", + "homepage": "https://symfony.com", + "keywords": [ + "symfony-ux" + ], + "support": { + "source": "https://github.com/symfony/ux-dropzone/tree/v2.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": "2022-09-08T14:28:44+00:00" + }, + { + "name": "symfony/ux-turbo", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/ux-turbo.git", + "reference": "3476bf0030937824137ad0aa1c9797d7c6085882" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/ux-turbo/zipball/3476bf0030937824137ad0aa1c9797d7c6085882", + "reference": "3476bf0030937824137ad0aa1c9797d7c6085882", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/webpack-encore-bundle": "^1.11" + }, + "conflict": { + "symfony/flex": "<1.13" + }, + "require-dev": { + "doctrine/annotations": "^1.12", + "doctrine/doctrine-bundle": "^2.2", + "doctrine/orm": "^2.8 | 3.0", + "phpstan/phpstan": "^0.12", + "symfony/debug-bundle": "^5.2|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/form": "^5.2|^6.0", + "symfony/framework-bundle": "^5.2|^6.0", + "symfony/mercure-bundle": "^0.3", + "symfony/messenger": "^5.2|^6.0", + "symfony/panther": "^1.0|^2.0", + "symfony/phpunit-bridge": "^5.2.1|^6.0", + "symfony/property-access": "^5.2|^6.0", + "symfony/security-core": "^5.2|^6.0", + "symfony/stopwatch": "^5.2|^6.0", + "symfony/twig-bundle": "^5.2|^6.0", + "symfony/web-profiler-bundle": "^5.2|^6.0" + }, + "type": "symfony-bundle", + "extra": { + "thanks": { + "name": "symfony/ux", + "url": "https://github.com/symfony/ux" + } + }, + "autoload": { + "psr-4": { + "Symfony\\UX\\Turbo\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Hotwire Turbo integration for Symfony", + "homepage": "https://symfony.com", + "keywords": [ + "hotwire", + "javascript", + "mercure", + "symfony-ux", + "turbo", + "turbo-stream" + ], + "support": { + "source": "https://github.com/symfony/ux-turbo/tree/v2.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": "2022-09-08T14:28:44+00:00" + }, { "name": "symfony/validator", "version": "v6.1.7", diff --git a/migrations/Version20221115104149.php b/migrations/Version20221115104149.php new file mode 100644 index 0000000..3ed9d62 --- /dev/null +++ b/migrations/Version20221115104149.php @@ -0,0 +1,31 @@ +addSql('ALTER TABLE user ADD tmp_avatar VARCHAR(255) DEFAULT NULL'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE user DROP tmp_avatar'); + } +} diff --git a/package.json b/package.json index 74f8f8f..3a00bb9 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,17 @@ { "devDependencies": { + "@babel/preset-react": "^7.0.0", "@hotwired/stimulus": "^3.0.0", + "@hotwired/turbo": "^7.0.1", "@popperjs/core": "^2.11.6", "@symfony/stimulus-bridge": "^3.0.0", + "@symfony/ux-cropperjs": "file:vendor/symfony/ux-cropperjs/Resources/assets", + "@symfony/ux-dropzone": "file:vendor/symfony/ux-dropzone/Resources/assets", + "@symfony/ux-turbo": "file:vendor/symfony/ux-turbo/Resources/assets", "@symfony/webpack-encore": "^2.0.0", "autoprefixer": "^10.4.7", "core-js": "^3.0.0", + "cropperjs": "^1.5.9", "file-loader": "^6.0.0", "jquery": "^3.6.0", "less-loader": "^10.0.0", @@ -13,6 +19,7 @@ "regenerator-runtime": "^0.13.2", "sass": "^1.50.0", "sass-loader": "^12.0.0", + "sweetalert2": "^11.6.8", "ts-loader": "^9.0.0", "typescript": "^4.6.4", "webpack-manifest-plugin": "^5.0.0", @@ -44,6 +51,7 @@ "postcss-import": "^14.1.0", "postcss-loader": "^7.0.0", "quill": "^1.3.7", - "quill-html-edit-button": "^2.2.12" + "quill-html-edit-button": "^2.2.12", + "toastify-js": "^1.12.0" } } diff --git a/symfony.lock b/symfony.lock index 687a9a1..8fceaae 100644 --- a/symfony.lock +++ b/symfony.lock @@ -72,6 +72,12 @@ "config/packages/nelmio_cors.yaml" ] }, + "php-flasher/flasher-sweetalert-symfony": { + "version": "v1.7.0" + }, + "php-flasher/flasher-symfony": { + "version": "v1.7.0" + }, "sensio/framework-extra-bundle": { "version": "6.2", "recipe": { @@ -271,6 +277,15 @@ "templates/base.html.twig" ] }, + "symfony/ux-cropperjs": { + "version": "v2.5.0" + }, + "symfony/ux-dropzone": { + "version": "v2.5.0" + }, + "symfony/ux-turbo": { + "version": "v2.5.0" + }, "symfony/validator": { "version": "6.1", "recipe": { diff --git a/webpack.config.js b/webpack.config.js index 379811b..2555d3e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -43,5 +43,9 @@ Encore } }) .autoProvidejQuery() + .enableStimulusBridge( + './assets/controllers.json' + ) + .enableReactPreset() module.exports = Encore.getWebpackConfig() diff --git a/yarn.lock b/yarn.lock index aca37f6..35d4f86 100644 --- a/yarn.lock +++ b/yarn.lock @@ -461,6 +461,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" +"@babel/plugin-syntax-jsx@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz#a8feef63b010150abd97f1649ec296e849943ca0" + integrity sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -701,6 +708,39 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-transform-react-display-name@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415" + integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-react-jsx-development@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5" + integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA== + dependencies: + "@babel/plugin-transform-react-jsx" "^7.18.6" + +"@babel/plugin-transform-react-jsx@^7.18.6": + version "7.19.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz#b3cbb7c3a00b92ec8ae1027910e331ba5c500eb9" + integrity sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-module-imports" "^7.18.6" + "@babel/helper-plugin-utils" "^7.19.0" + "@babel/plugin-syntax-jsx" "^7.18.6" + "@babel/types" "^7.19.0" + +"@babel/plugin-transform-react-pure-annotations@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz#561af267f19f3e5d59291f9950fd7b9663d0d844" + integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/plugin-transform-regenerator@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz#585c66cb84d4b4bf72519a34cfce761b8676ca73" @@ -859,6 +899,18 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" +"@babel/preset-react@^7.0.0": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.18.6.tgz#979f76d6277048dc19094c217b507f3ad517dd2d" + integrity sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg== + dependencies: + "@babel/helper-plugin-utils" "^7.18.6" + "@babel/helper-validator-option" "^7.18.6" + "@babel/plugin-transform-react-display-name" "^7.18.6" + "@babel/plugin-transform-react-jsx" "^7.18.6" + "@babel/plugin-transform-react-jsx-development" "^7.18.6" + "@babel/plugin-transform-react-pure-annotations" "^7.18.6" + "@babel/runtime@^7.8.4": version "7.20.1" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.20.1.tgz#1148bb33ab252b165a06698fde7576092a78b4a9" @@ -935,6 +987,11 @@ resolved "https://registry.yarnpkg.com/@hotwired/stimulus/-/stimulus-3.1.1.tgz#652f08a8e1d5edcb407340e58818fcff463b5848" integrity sha512-e0JpzIaYLsRRXevRDVs0yevabiCvieIWWCwh7VqVXjXM5AOHdjb7AjaKIj34zYFmY1N6HIRRfk915WVMYlHnDA== +"@hotwired/turbo@^7.0.1": + version "7.2.4" + resolved "https://registry.yarnpkg.com/@hotwired/turbo/-/turbo-7.2.4.tgz#0d35541be32cfae3b4f78c6ab9138f5b21f28a21" + integrity sha512-c3xlOroHp/cCZHDOuLp6uzQYEbvXBUVaal0puXoGJ9M8L/KHwZ3hQozD4dVeSN9msHWLxxtmPT1TlCN7gFhj4w== + "@humanwhocodes/config-array@^0.11.6": version "0.11.7" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.7.tgz#38aec044c6c828f6ed51d5d7ae3d9b9faf6dbb0f" @@ -1059,6 +1116,15 @@ loader-utils "^2.0.0" schema-utils "^3.0.0" +"@symfony/ux-cropperjs@file:vendor/symfony/ux-cropperjs/Resources/assets": + version "1.1.0" + +"@symfony/ux-dropzone@file:vendor/symfony/ux-dropzone/Resources/assets": + version "1.1.0" + +"@symfony/ux-turbo@file:vendor/symfony/ux-turbo/Resources/assets": + version "0.1.0" + "@symfony/webpack-encore@^2.0.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@symfony/webpack-encore/-/webpack-encore-2.1.0.tgz#353a1b8bc38022046cbbc3d627c4076aca2e28c3" @@ -2042,6 +2108,11 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" +cropperjs@^1.5.9: + version "1.5.12" + resolved "https://registry.yarnpkg.com/cropperjs/-/cropperjs-1.5.12.tgz#d9c0db2bfb8c0d769d51739e8f916bbc44e10f50" + integrity sha512-re7UdjE5UnwdrovyhNzZ6gathI4Rs3KGCBSc8HCIjUo5hO42CtzyblmWLj6QWVw7huHyDMfpKxhiO2II77nhDw== + cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -5111,6 +5182,11 @@ svgo@^2.7.0: picocolors "^1.0.0" stable "^0.1.8" +sweetalert2@^11.6.8: + version "11.6.8" + resolved "https://registry.yarnpkg.com/sweetalert2/-/sweetalert2-11.6.8.tgz#5a515284367bc21b9f7830cbfbbfd09341576cca" + integrity sha512-0YHMaqF3DC67EI9uZzHpbU34rQV3acEFlnUCYmDSDNkeNOSFtSlF4DbWilfln+iUYv9s9aqbREXmKZRJqh5G5w== + sync-rpc@^1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/sync-rpc/-/sync-rpc-1.3.6.tgz#b2e8b2550a12ccbc71df8644810529deb68665a7" @@ -5173,6 +5249,11 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +toastify-js@^1.12.0: + version "1.12.0" + resolved "https://registry.yarnpkg.com/toastify-js/-/toastify-js-1.12.0.tgz#cc1c4f5c7e7380e854e20bedceb51980ea29f64d" + integrity sha512-HeMHCO9yLPvP9k0apGSdPUWrUbLnxUKNFzgUoZp1PHCLploIX/4DSQ7V8H25ef+h4iO9n0he7ImfcndnN6nDrQ== + toidentifier@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"