From 7869b53ab80b2d1524754e1cfec4f33aaeb18070 Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Thu, 23 Dec 2021 18:53:35 +0000 Subject: [PATCH 01/14] WIP --- .../Settings/ApiTokenController.php | 34 ++++++++++ app/Http/Requests/CreateApiTokenRequest.php | 22 +++++++ app/Http/Requests/DeleteApiTokenRequest.php | 22 +++++++ app/Jobs/CreateApiToken.php | 28 ++++++++ app/Jobs/DeleteApiToken.php | 25 +++++++ app/Models/User.php | 2 + composer.json | 1 + composer.lock | 66 ++++++++++++++++++- config/sanctum.php | 65 ++++++++++++++++++ ...01_create_personal_access_tokens_table.php | 36 ++++++++++ .../views/users/settings/api_tokens.blade.php | 50 ++++++++++++++ .../views/users/settings/password.blade.php | 4 +- .../views/users/settings/settings.blade.php | 1 + routes/web.php | 3 + tests/Feature/SettingsTest.php | 47 +++++++++++++ 15 files changed, 403 insertions(+), 3 deletions(-) create mode 100644 app/Http/Controllers/Settings/ApiTokenController.php create mode 100644 app/Http/Requests/CreateApiTokenRequest.php create mode 100644 app/Http/Requests/DeleteApiTokenRequest.php create mode 100644 app/Jobs/CreateApiToken.php create mode 100644 app/Jobs/DeleteApiToken.php create mode 100644 config/sanctum.php create mode 100644 database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php create mode 100644 resources/views/users/settings/api_tokens.blade.php diff --git a/app/Http/Controllers/Settings/ApiTokenController.php b/app/Http/Controllers/Settings/ApiTokenController.php new file mode 100644 index 000000000..d06fb1ddd --- /dev/null +++ b/app/Http/Controllers/Settings/ApiTokenController.php @@ -0,0 +1,34 @@ +middleware(Authenticate::class); + } + + public function store(CreateApiTokenRequest $request) + { + $this->dispatchSync(new CreateApiToken(Auth::user(), $request->name())); + + return redirect()->route('settings.profile'); + } + + public function destroy(DeleteApiTokenRequest $request) + { + $this->dispatchSync(new DeleteApiToken(Auth::user(), $request->id())); + + return redirect()->route('settings.profile'); + } +} diff --git a/app/Http/Requests/CreateApiTokenRequest.php b/app/Http/Requests/CreateApiTokenRequest.php new file mode 100644 index 000000000..a676d231b --- /dev/null +++ b/app/Http/Requests/CreateApiTokenRequest.php @@ -0,0 +1,22 @@ + ['required', 'string', 'max:255'] + ]; + } + + public function name(): string + { + return (string) $this->get('name'); + } + +} \ No newline at end of file diff --git a/app/Http/Requests/DeleteApiTokenRequest.php b/app/Http/Requests/DeleteApiTokenRequest.php new file mode 100644 index 000000000..85b1a7bb1 --- /dev/null +++ b/app/Http/Requests/DeleteApiTokenRequest.php @@ -0,0 +1,22 @@ + ['required', 'exists:personal_access_tokens,id'], + ]; + } + + public function id(): string + { + return (string) $this->get('id'); + } + +} \ No newline at end of file diff --git a/app/Jobs/CreateApiToken.php b/app/Jobs/CreateApiToken.php new file mode 100644 index 000000000..8559e7f7d --- /dev/null +++ b/app/Jobs/CreateApiToken.php @@ -0,0 +1,28 @@ +user->createToken($this->name); + } +} diff --git a/app/Jobs/DeleteApiToken.php b/app/Jobs/DeleteApiToken.php new file mode 100644 index 000000000..4b2d63f2d --- /dev/null +++ b/app/Jobs/DeleteApiToken.php @@ -0,0 +1,25 @@ +user->tokens()->where('id', $this->tokenId)->delete(); + } +} diff --git a/app/Models/User.php b/app/Models/User.php index 743faff14..58c66665b 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -10,9 +10,11 @@ use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Illuminate\Support\Facades\Auth; +use Laravel\Sanctum\HasApiTokens; final class User extends Authenticatable implements MustVerifyEmail { + use HasApiTokens; use HasFactory; use HasTimestamps; use Notifiable; diff --git a/composer.json b/composer.json index f37e7aa4d..5be8d7dee 100644 --- a/composer.json +++ b/composer.json @@ -21,6 +21,7 @@ "laravel-notification-channels/twitter": "^5.0", "laravel/framework": "8.75.0", "laravel/horizon": "^5.2", + "laravel/sanctum": "^2.13", "laravel/slack-notification-channel": "^2.3", "laravel/socialite": "^5.0", "laravel/ui": "^3.0", diff --git a/composer.lock b/composer.lock index 1e54b0903..0ebbe3b0c 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": "9b314c81b08fdbcdb208b7cc8723abe6", + "content-hash": "ab818bb4925f4b7c34eb0449e5cce022", "packages": [ { "name": "abraham/twitteroauth", @@ -2844,6 +2844,70 @@ }, "time": "2021-08-31T14:56:54+00:00" }, + { + "name": "laravel/sanctum", + "version": "v2.13.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/sanctum.git", + "reference": "b4c07d0014b78430a3c827064217f811f0708eaa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/sanctum/zipball/b4c07d0014b78430a3c827064217f811f0708eaa", + "reference": "b4c07d0014b78430a3c827064217f811f0708eaa", + "shasum": "" + }, + "require": { + "ext-json": "*", + "illuminate/contracts": "^6.9|^7.0|^8.0", + "illuminate/database": "^6.9|^7.0|^8.0", + "illuminate/support": "^6.9|^7.0|^8.0", + "php": "^7.2|^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "orchestra/testbench": "^4.0|^5.0|^6.0", + "phpunit/phpunit": "^8.0|^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Sanctum\\SanctumServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Sanctum\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Laravel Sanctum provides a featherweight authentication system for SPAs and simple APIs.", + "keywords": [ + "auth", + "laravel", + "sanctum" + ], + "support": { + "issues": "https://github.com/laravel/sanctum/issues", + "source": "https://github.com/laravel/sanctum" + }, + "time": "2021-12-14T17:49:47+00:00" + }, { "name": "laravel/scout", "version": "v9.2.8", diff --git a/config/sanctum.php b/config/sanctum.php new file mode 100644 index 000000000..9281c92db --- /dev/null +++ b/config/sanctum.php @@ -0,0 +1,65 @@ + explode(',', env('SANCTUM_STATEFUL_DOMAINS', sprintf( + '%s%s', + 'localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1', + env('APP_URL') ? ','.parse_url(env('APP_URL'), PHP_URL_HOST) : '' + ))), + + /* + |-------------------------------------------------------------------------- + | Sanctum Guards + |-------------------------------------------------------------------------- + | + | This array contains the authentication guards that will be checked when + | Sanctum is trying to authenticate a request. If none of these guards + | are able to authenticate the request, Sanctum will use the bearer + | token that's present on an incoming request for authentication. + | + */ + + 'guard' => ['web'], + + /* + |-------------------------------------------------------------------------- + | Expiration Minutes + |-------------------------------------------------------------------------- + | + | This value controls the number of minutes until an issued token will be + | considered expired. If this value is null, personal access tokens do + | not expire. This won't tweak the lifetime of first-party sessions. + | + */ + + 'expiration' => null, + + /* + |-------------------------------------------------------------------------- + | Sanctum Middleware + |-------------------------------------------------------------------------- + | + | When authenticating your first-party SPA with Sanctum you may need to + | customize some of the middleware Sanctum uses while processing the + | request. You may change the middleware listed below as required. + | + */ + + 'middleware' => [ + 'verify_csrf_token' => App\Http\Middleware\VerifyCsrfToken::class, + 'encrypt_cookies' => App\Http\Middleware\EncryptCookies::class, + ], + +]; diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php new file mode 100644 index 000000000..3ce00023a --- /dev/null +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->morphs('tokenable'); + $table->string('name'); + $table->string('token', 64)->unique(); + $table->text('abilities')->nullable(); + $table->timestamp('last_used_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('personal_access_tokens'); + } +} diff --git a/resources/views/users/settings/api_tokens.blade.php b/resources/views/users/settings/api_tokens.blade.php new file mode 100644 index 000000000..f6a676051 --- /dev/null +++ b/resources/views/users/settings/api_tokens.blade.php @@ -0,0 +1,50 @@ +@title('API Tokens') + +
+
+
+
+

+ API Tokens +

+

+ Create API tokens to access your account over our REST API. +

+
+ +
    + @foreach(Auth::user()->tokens as $token) +
  • + {{ $token->name }} + + {{ $token->token }} + + + + Delete Token + + +
  • + @endforeach +
+ +
+
+ Token name + + +
+
+
+ + +
+ + Generate New Token + +
+
+
+
diff --git a/resources/views/users/settings/password.blade.php b/resources/views/users/settings/password.blade.php index 84db0da80..adc2aae74 100644 --- a/resources/views/users/settings/password.blade.php +++ b/resources/views/users/settings/password.blade.php @@ -23,13 +23,13 @@ @endif
- New Password + New Password
- Confirm New Password + Confirm New Password
diff --git a/resources/views/users/settings/settings.blade.php b/resources/views/users/settings/settings.blade.php index 09d115946..c141bc9f7 100644 --- a/resources/views/users/settings/settings.blade.php +++ b/resources/views/users/settings/settings.blade.php @@ -17,6 +17,7 @@
@include('users.settings.profile') @include('users.settings.password') + @include('users.settings.api_tokens') @include('users.settings.remove')
diff --git a/routes/web.php b/routes/web.php index 5371e9c46..9dabef46c 100644 --- a/routes/web.php +++ b/routes/web.php @@ -16,6 +16,7 @@ use App\Http\Controllers\ProfileController; use App\Http\Controllers\ReplyAbleController; use App\Http\Controllers\ReplyController; +use App\Http\Controllers\Settings\ApiTokenController; use App\Http\Controllers\Settings\PasswordController; use App\Http\Controllers\Settings\ProfileController as ProfileSettingsController; use App\Http\Controllers\SocialImageController; @@ -73,6 +74,8 @@ Route::put('settings', [ProfileSettingsController::class, 'update'])->name('settings.profile.update'); Route::delete('settings', [ProfileSettingsController::class, 'destroy'])->name('settings.profile.delete'); Route::put('settings/password', [PasswordController::class, 'update'])->name('settings.password.update'); +Route::post('settings/api-tokens', [ApiTokenController::class, 'store'])->name('settings.api-tokens.store'); +Route::delete('settings/api-tokens', [ApiTokenController::class, 'destroy'])->name('settings.api-tokens.delete'); // Forum Route::prefix('forum')->group(function () { diff --git a/tests/Feature/SettingsTest.php b/tests/Feature/SettingsTest.php index d689380a6..09086c345 100644 --- a/tests/Feature/SettingsTest.php +++ b/tests/Feature/SettingsTest.php @@ -1,6 +1,7 @@ fresh()->twitter())->toBeEmpty(); }); +test('users can generate API tokens', function () { + $user = $this->createUser(); + + $this->loginAs($user); + + $this->visit('/settings') + ->submitForm('Generate New Token', [ + 'name' => 'My API Token', + ]) + ->seePageIs('/settings'); + + expect($user->refresh()->tokens)->toHaveCount(1); +}); + +test('users can delete API tokens', function () { + $user = $this->createUser(); + $token = $user->createToken('My API Token'); + + $this->loginAs($user); + + $this->visit('/settings') + ->submitForm('Delete Token', [ + 'id' => $token->accessToken->getKey(), + ]) + ->seePageIs('/settings'); + + expect($user->refresh()->tokens)->toBeEmpty(); +}); + +test('a user cannot delete another user\'s API token', function () { + $joe = UserFactory::new()->create(); + $token = $joe->createToken('Joe\'s API Token'); + + $adam = $this->createUser(); + $adam->createToken('Adam\'s API Token'); + $this->loginAs($adam); + + $this->visit('/settings') + ->submitForm('Delete Token', [ + 'id' => $token->accessToken->getKey(), + ]) + ->seePageIs('/settings'); + + expect($joe->refresh()->tokens)->toHaveCount(1); +}); + // Helpers function assertPasswordWasHashedAndSaved(): void { From d0a4bdf682b63a9b7c56bc04e68825d56287db6e Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Fri, 24 Dec 2021 16:39:31 +0000 Subject: [PATCH 02/14] Adds posting to create article. --- .../Articles/ArticlesController.php | 7 ++- app/Http/Resources/ArticleResource.php | 27 ++++++++++++ app/Http/Resources/AuthorResource.php | 23 ++++++++++ app/Http/Resources/TagResource.php | 20 +++++++++ app/Providers/RouteServiceProvider.php | 1 + routes/api.php | 12 +++--- tests/Integration/Api/ArticleTest.php | 43 +++++++++++++++++++ 7 files changed, 125 insertions(+), 8 deletions(-) create mode 100644 app/Http/Resources/ArticleResource.php create mode 100644 app/Http/Resources/AuthorResource.php create mode 100644 app/Http/Resources/TagResource.php create mode 100644 tests/Integration/Api/ArticleTest.php diff --git a/app/Http/Controllers/Articles/ArticlesController.php b/app/Http/Controllers/Articles/ArticlesController.php index 89db0caa8..e5ce6ebc6 100644 --- a/app/Http/Controllers/Articles/ArticlesController.php +++ b/app/Http/Controllers/Articles/ArticlesController.php @@ -6,6 +6,7 @@ use App\Http\Controllers\Controller; use App\Http\Middleware\Authenticate; use App\Http\Requests\ArticleRequest; +use App\Http\Resources\ArticleResource; use App\Jobs\CreateArticle; use App\Jobs\DeleteArticle; use App\Jobs\UpdateArticle; @@ -101,11 +102,13 @@ public function create() public function store(ArticleRequest $request) { - $article = $this->dispatchNow(CreateArticle::fromRequest($request)); + $article = $this->dispatchSync(CreateArticle::fromRequest($request)); $this->success($request->shouldBeSubmitted() ? 'articles.submitted' : 'articles.created'); - return redirect()->route('articles.show', $article->slug()); + return $request->expectsJson() + ? ArticleResource::make($article) + : redirect()->route('articles.show', $article->slug()); } public function edit(Article $article) diff --git a/app/Http/Resources/ArticleResource.php b/app/Http/Resources/ArticleResource.php new file mode 100644 index 000000000..433edb38c --- /dev/null +++ b/app/Http/Resources/ArticleResource.php @@ -0,0 +1,27 @@ + $this->getKey(), + 'url' => route('articles.show', $this->slug()), + 'title' => $this->title(), + 'body' => $this->body(), + 'original_url' => $this->originalUrl(), + 'author' => AuthorResource::make($this->author()), + 'tags' => TagResource::collection($this->tags()), + 'is_submitted' => $this->isSubmitted(), + 'created_at' => $this->createdAt(), + 'updated_at' => $this->updatedAt(), + ]; + } +} diff --git a/app/Http/Resources/AuthorResource.php b/app/Http/Resources/AuthorResource.php new file mode 100644 index 000000000..0ac09e519 --- /dev/null +++ b/app/Http/Resources/AuthorResource.php @@ -0,0 +1,23 @@ + $this->getKey(), + 'email' => $this->emailAddress(), + 'name' => $this->name(), + 'bio' => $this->bio(), + 'twitter_handle' => $this->twitter(), + 'github_username' => $this->githubUsername(), + ]; + } +} diff --git a/app/Http/Resources/TagResource.php b/app/Http/Resources/TagResource.php new file mode 100644 index 000000000..f45ef085f --- /dev/null +++ b/app/Http/Resources/TagResource.php @@ -0,0 +1,20 @@ + $this->getKey(), + 'name' => $this->name(), + 'slug' => $this->slug(), + ]; + } +} diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 62fc9d3ea..7f2acebde 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -4,6 +4,7 @@ use Illuminate\Cache\RateLimiting\Limit; use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider; +use Illuminate\Http\Request; use Illuminate\Support\Facades\RateLimiter; use Illuminate\Support\Facades\Route; diff --git a/routes/api.php b/routes/api.php index acfe57928..3e2e0aeaf 100644 --- a/routes/api.php +++ b/routes/api.php @@ -1,8 +1,8 @@ get('/user', function (Request $request) { -// return $request->user(); -// }); +// Articles +use App\Http\Controllers\Articles\ArticlesController; + +Route::prefix('articles')->group(function () { + Route::post('/', [ArticlesController::class, 'store'])->name('api.articles.store'); +}); diff --git a/tests/Integration/Api/ArticleTest.php b/tests/Integration/Api/ArticleTest.php new file mode 100644 index 000000000..7bb00eaed --- /dev/null +++ b/tests/Integration/Api/ArticleTest.php @@ -0,0 +1,43 @@ +create(); + $user = $this->createUser(); + + Sanctum::actingAs($user); + + $this->postJson(route('api.articles.store'), [ + 'title' => 'Integrating with an API', + 'body' => '# Hello World', + 'tags' => [$tag->getKey()], + 'original_url' => 'https://laravel.com/docs/master/sanctum', + 'submitted' => false, + ])->assertJson(['data' => [ + 'url' => route('articles.show', Article::query()->first()->slug()), + 'title' => 'Integrating with an API', + 'body' => '# Hello World', + 'original_url' => 'https://laravel.com/docs/master/sanctum', + 'author' => [ + 'email' => $user->emailAddress(), + 'name' => $user->name(), + 'bio' => $user->bio(), + 'twitter_handle' => $user->twitter(), + 'github_username' => $user->githubUsername(), + ], + 'tags' => [[ + 'id' => $tag->getKey(), + 'name' => $tag->name(), + 'slug' => $tag->slug(), + ]], + 'is_submitted' => false, + ]]); +}); From a91227ba267f56733ebfae855b39bec30dc37d98 Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Mon, 27 Dec 2021 12:28:32 +0000 Subject: [PATCH 03/14] Adds rate limiting of 6 requests per minute to API. --- app/Providers/RouteServiceProvider.php | 2 +- routes/api.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 7f2acebde..7b314387c 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -50,7 +50,7 @@ public function boot() protected function configureRateLimiting() { RateLimiter::for('api', function (Request $request) { - return Limit::perMinute(60); + return Limit::perMinute(6); }); } } diff --git a/routes/api.php b/routes/api.php index 3e2e0aeaf..045602883 100644 --- a/routes/api.php +++ b/routes/api.php @@ -3,6 +3,6 @@ // Articles use App\Http\Controllers\Articles\ArticlesController; -Route::prefix('articles')->group(function () { +Route::prefix('articles')->middleware('throttle:api')->group(function () { Route::post('/', [ArticlesController::class, 'store'])->name('api.articles.store'); }); From a99e9debcb37b5eafc82adefd09b5b0dbf7f8470 Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Mon, 27 Dec 2021 13:18:49 +0000 Subject: [PATCH 04/14] WIP --- .../Articles/ArticlesController.php | 15 ++- app/Http/Middleware/Authenticate.php | 4 +- app/Http/Resources/ArticleResource.php | 1 + routes/api.php | 2 + tests/Integration/Api/ArticleTest.php | 104 +++++++++++++++++- 5 files changed, 115 insertions(+), 11 deletions(-) diff --git a/app/Http/Controllers/Articles/ArticlesController.php b/app/Http/Controllers/Articles/ArticlesController.php index e5ce6ebc6..f2f57c891 100644 --- a/app/Http/Controllers/Articles/ArticlesController.php +++ b/app/Http/Controllers/Articles/ArticlesController.php @@ -18,6 +18,7 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Cache; +use Symfony\Component\HttpFoundation\Response; class ArticlesController extends Controller { @@ -128,7 +129,7 @@ public function update(ArticleRequest $request, Article $article) $wasNotPreviouslySubmitted = $article->isNotSubmitted(); - $article = $this->dispatchNow(UpdateArticle::fromRequest($article, $request)); + $article = $this->dispatchSync(UpdateArticle::fromRequest($article, $request)); if ($wasNotPreviouslySubmitted && $request->shouldBeSubmitted()) { $this->success('articles.submitted'); @@ -136,17 +137,21 @@ public function update(ArticleRequest $request, Article $article) $this->success('articles.updated'); } - return redirect()->route('articles.show', $article->slug()); + return $request->wantsJson() + ? ArticleResource::make($article) + : redirect()->route('articles.show', $article->slug()); } - public function delete(Article $article) + public function delete(Request $request, Article $article) { $this->authorize(ArticlePolicy::DELETE, $article); - $this->dispatchNow(new DeleteArticle($article)); + $this->dispatchSync(new DeleteArticle($article)); $this->success('articles.deleted'); - return redirect()->route('articles'); + return $request->wantsJson() + ? response()->json([], Response::HTTP_NO_CONTENT) + : redirect()->route('articles'); } } diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php index a4be5c587..0eec7154c 100644 --- a/app/Http/Middleware/Authenticate.php +++ b/app/Http/Middleware/Authenticate.php @@ -9,12 +9,12 @@ class Authenticate extends Middleware /** * Get the path the user should be redirected to when they are not authenticated. * - * @param \Illuminate\Http\Request $request + * @param \Illuminate\Http\Request $request * @return string */ protected function redirectTo($request) { - if (! $request->expectsJson()) { + if (!$request->expectsJson()) { return route('login'); } } diff --git a/app/Http/Resources/ArticleResource.php b/app/Http/Resources/ArticleResource.php index 433edb38c..e10a29e4a 100644 --- a/app/Http/Resources/ArticleResource.php +++ b/app/Http/Resources/ArticleResource.php @@ -20,6 +20,7 @@ public function toArray($request): array 'author' => AuthorResource::make($this->author()), 'tags' => TagResource::collection($this->tags()), 'is_submitted' => $this->isSubmitted(), + 'submitted_at' => $this->submittedAt(), 'created_at' => $this->createdAt(), 'updated_at' => $this->updatedAt(), ]; diff --git a/routes/api.php b/routes/api.php index 045602883..856681dd0 100644 --- a/routes/api.php +++ b/routes/api.php @@ -5,4 +5,6 @@ Route::prefix('articles')->middleware('throttle:api')->group(function () { Route::post('/', [ArticlesController::class, 'store'])->name('api.articles.store'); + Route::put('{article}', [ArticlesController::class, 'update'])->name('api.articles.update'); + Route::delete('{article}', [ArticlesController::class, 'delete'])->name('api.articles.delete'); }); diff --git a/tests/Integration/Api/ArticleTest.php b/tests/Integration/Api/ArticleTest.php index 7bb00eaed..ead1fa87e 100644 --- a/tests/Integration/Api/ArticleTest.php +++ b/tests/Integration/Api/ArticleTest.php @@ -1,6 +1,7 @@ create(); $user = $this->createUser(); Sanctum::actingAs($user); - $this->postJson(route('api.articles.store'), [ + $this->postJson(route('api.articles.store'), array_merge([ 'title' => 'Integrating with an API', 'body' => '# Hello World', 'tags' => [$tag->getKey()], 'original_url' => 'https://laravel.com/docs/master/sanctum', 'submitted' => false, - ])->assertJson(['data' => [ + ], $body))->assertJson(['data' => array_merge([ 'url' => route('articles.show', Article::query()->first()->slug()), 'title' => 'Integrating with an API', 'body' => '# Hello World', @@ -39,5 +40,100 @@ 'slug' => $tag->slug(), ]], 'is_submitted' => false, - ]]); + ], $response)]); + + expect(Article::query()->count())->toBe(1); +})->with('article API responses'); + +it('can update an article over the API', function (array $body, array $response) { + $tag = TagFactory::new()->create(); + $user = $this->createUser(); + + Sanctum::actingAs($user); + + $article = ArticleFactory::new()->for($user, 'authorRelation')->create(); + + $this->putJson(route('api.articles.update', $article->slug()), array_merge([ + 'title' => 'Integrating with an API', + 'body' => '# Hello World', + 'tags' => [$tag->getKey()], + 'original_url' => 'https://laravel.com/docs/master/sanctum', + 'submitted' => false, + ], $body))->assertJson(['data' => array_merge([ + 'url' => route('articles.show', Article::query()->first()->slug()), + 'title' => 'Integrating with an API', + 'body' => '# Hello World', + 'original_url' => 'https://laravel.com/docs/master/sanctum', + 'author' => [ + 'email' => $user->emailAddress(), + 'name' => $user->name(), + 'bio' => $user->bio(), + 'twitter_handle' => $user->twitter(), + 'github_username' => $user->githubUsername(), + ], + 'tags' => [[ + 'id' => $tag->getKey(), + 'name' => $tag->name(), + 'slug' => $tag->slug(), + ]], + 'is_submitted' => false, + ], $response)]); + + expect(Article::query()->count())->toBe(1); +})->with('article API responses'); + +it('can delete an article over the API', function () { + $user = $this->createUser(); + Sanctum::actingAs($user); + + $article = ArticleFactory::new()->for($user, 'authorRelation')->create(); + + $this->deleteJson(route('api.articles.delete', $article->slug())) + ->assertNoContent(); + + expect(Article::query()->count())->toBe(0); }); + +it('does not allow a guest to create', function () { + $this->postJson(route('api.articles.store')) + ->assertUnauthorized(); +}); + +it('does not allow a guest to update', function () { + $this->putJson(route('api.articles.update', ArticleFactory::new()->create()->slug())) + ->assertUnauthorized(); +}); + +it('does not allow a user to update another user\'s article', function () { + $user = $this->createUser(); + $article = ArticleFactory::new()->create(); + + Sanctum::actingAs($user); + + $this->putJson(route('api.articles.update', $article->slug()), [ + 'title' => 'Integrating with an API', + 'body' => '# Hello World', + 'submitted' => false, + ])->assertForbidden(); +}); + +it('does not allow a guest to delete', function () { + $this->deleteJson(route('api.articles.delete', ArticleFactory::new()->create()->slug())) + ->assertUnauthorized(); +}); + +it('does not allow a user to delete another user\'s article', function () { + $user = $this->createUser(); + $article = ArticleFactory::new()->create(); + + Sanctum::actingAs($user); + + $this->deleteJson(route('api.articles.delete', $article->slug())) + ->assertForbidden(); +}); + +dataset('article API responses', [ + 'default' => [[], []], + 'submitted for publishing' => [['submitted' => true], ['is_submitted' => true]], + 'no tags' => [['tags' => []], ['tags' => []]] +]); \ No newline at end of file From 4cfcbd39480eb1c5ccc1bc9ac4a59e09401b4444 Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Mon, 27 Dec 2021 13:25:55 +0000 Subject: [PATCH 05/14] Adds tests for api token jobs. --- tests/Integration/Jobs/CreateApiTokenTest.php | 19 +++++++++++ tests/Integration/Jobs/DeleteApiTokenTest.php | 33 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 tests/Integration/Jobs/CreateApiTokenTest.php create mode 100644 tests/Integration/Jobs/DeleteApiTokenTest.php diff --git a/tests/Integration/Jobs/CreateApiTokenTest.php b/tests/Integration/Jobs/CreateApiTokenTest.php new file mode 100644 index 000000000..4ca3d97a5 --- /dev/null +++ b/tests/Integration/Jobs/CreateApiTokenTest.php @@ -0,0 +1,19 @@ +createUser(); + + $this->dispatch(new CreateApiToken($user, 'Foo Bar')); + + expect($user->refresh()->tokens) + ->toHaveCount(1) + ->first()->name->toBe('Foo Bar'); +}); \ No newline at end of file diff --git a/tests/Integration/Jobs/DeleteApiTokenTest.php b/tests/Integration/Jobs/DeleteApiTokenTest.php new file mode 100644 index 000000000..ba3d91329 --- /dev/null +++ b/tests/Integration/Jobs/DeleteApiTokenTest.php @@ -0,0 +1,33 @@ +createUser(); + + $user->createToken('foo'); + $barToken = $user->createToken('bar'); + $user->createToken('baz'); + + $this->dispatch(new DeleteApiToken($user, $barToken->accessToken->getKey())); + + expect($user->refresh()->tokens)->toHaveCount(2); + expect($barToken->accessToken->fresh())->toBeNull(); +}); + +it('will not delete anything if the given API token does not belong to the user', function () { + $user = $this->createUser(); + $token = $user->createToken('foo'); + + $this->dispatch(new DeleteApiToken(UserFactory::new()->create(), $token->accessToken->getKey())); + + expect($user->refresh()->tokens)->toHaveCount(1); + expect($token->accessToken->fresh())->not->toBeNull(); +}); \ No newline at end of file From c093eaa38fe778d7fe85240e785ae50055fb90ff Mon Sep 17 00:00:00 2001 From: Luke Downing Date: Mon, 27 Dec 2021 13:33:08 +0000 Subject: [PATCH 06/14] Tweaks --- app/Http/Middleware/Authenticate.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Http/Middleware/Authenticate.php b/app/Http/Middleware/Authenticate.php index 0eec7154c..a4be5c587 100644 --- a/app/Http/Middleware/Authenticate.php +++ b/app/Http/Middleware/Authenticate.php @@ -9,12 +9,12 @@ class Authenticate extends Middleware /** * Get the path the user should be redirected to when they are not authenticated. * - * @param \Illuminate\Http\Request $request + * @param \Illuminate\Http\Request $request * @return string */ protected function redirectTo($request) { - if (!$request->expectsJson()) { + if (! $request->expectsJson()) { return route('login'); } } From 430c5ca31fac33a65776e7bd57b4ffd484f50333 Mon Sep 17 00:00:00 2001 From: luke Date: Wed, 29 Dec 2021 12:53:54 +0000 Subject: [PATCH 07/14] Tweaks --- .../Controllers/Articles/ArticlesController.php | 2 +- ...000001_create_personal_access_tokens_table.php | 15 --------------- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/app/Http/Controllers/Articles/ArticlesController.php b/app/Http/Controllers/Articles/ArticlesController.php index f2f57c891..4af1e3247 100644 --- a/app/Http/Controllers/Articles/ArticlesController.php +++ b/app/Http/Controllers/Articles/ArticlesController.php @@ -107,7 +107,7 @@ public function store(ArticleRequest $request) $this->success($request->shouldBeSubmitted() ? 'articles.submitted' : 'articles.created'); - return $request->expectsJson() + return $request->wantsJson() ? ArticleResource::make($article) : redirect()->route('articles.show', $article->slug()); } diff --git a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php index 3ce00023a..2bcbffaed 100644 --- a/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php +++ b/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php @@ -6,11 +6,6 @@ class CreatePersonalAccessTokensTable extends Migration { - /** - * Run the migrations. - * - * @return void - */ public function up() { Schema::create('personal_access_tokens', function (Blueprint $table) { @@ -23,14 +18,4 @@ public function up() $table->timestamps(); }); } - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::dropIfExists('personal_access_tokens'); - } } From dcc40e23a239e316139e577ce02f1719df6c46a1 Mon Sep 17 00:00:00 2001 From: luke Date: Wed, 29 Dec 2021 12:59:24 +0000 Subject: [PATCH 08/14] CS --- app/Http/Controllers/Settings/ApiTokenController.php | 3 +-- app/Http/Requests/CreateApiTokenRequest.php | 6 ++---- app/Http/Requests/DeleteApiTokenRequest.php | 4 +--- app/Http/Resources/TagResource.php | 2 +- app/Jobs/CreateApiToken.php | 3 +-- app/Jobs/DeleteApiToken.php | 1 - config/sanctum.php | 2 +- tests/Integration/Api/ArticleTest.php | 4 ++-- tests/Integration/Jobs/CreateApiTokenTest.php | 3 +-- tests/Integration/Jobs/DeleteApiTokenTest.php | 3 +-- 10 files changed, 11 insertions(+), 20 deletions(-) diff --git a/app/Http/Controllers/Settings/ApiTokenController.php b/app/Http/Controllers/Settings/ApiTokenController.php index d06fb1ddd..41c4fc82e 100644 --- a/app/Http/Controllers/Settings/ApiTokenController.php +++ b/app/Http/Controllers/Settings/ApiTokenController.php @@ -3,12 +3,11 @@ namespace App\Http\Controllers\Settings; use App\Http\Controllers\Controller; -use App\Http\Requests\DeleteApiTokenRequest; use App\Http\Requests\CreateApiTokenRequest; +use App\Http\Requests\DeleteApiTokenRequest; use App\Jobs\CreateApiToken; use App\Jobs\DeleteApiToken; use Illuminate\Auth\Middleware\Authenticate; -use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class ApiTokenController extends Controller diff --git a/app/Http/Requests/CreateApiTokenRequest.php b/app/Http/Requests/CreateApiTokenRequest.php index a676d231b..d22758d75 100644 --- a/app/Http/Requests/CreateApiTokenRequest.php +++ b/app/Http/Requests/CreateApiTokenRequest.php @@ -6,11 +6,10 @@ class CreateApiTokenRequest extends FormRequest { - public function rules(): array { return [ - 'name' => ['required', 'string', 'max:255'] + 'name' => ['required', 'string', 'max:255'], ]; } @@ -18,5 +17,4 @@ public function name(): string { return (string) $this->get('name'); } - -} \ No newline at end of file +} diff --git a/app/Http/Requests/DeleteApiTokenRequest.php b/app/Http/Requests/DeleteApiTokenRequest.php index 85b1a7bb1..6bedf2630 100644 --- a/app/Http/Requests/DeleteApiTokenRequest.php +++ b/app/Http/Requests/DeleteApiTokenRequest.php @@ -6,7 +6,6 @@ class DeleteApiTokenRequest extends FormRequest { - public function rules(): array { return [ @@ -18,5 +17,4 @@ public function id(): string { return (string) $this->get('id'); } - -} \ No newline at end of file +} diff --git a/app/Http/Resources/TagResource.php b/app/Http/Resources/TagResource.php index f45ef085f..b9ac94977 100644 --- a/app/Http/Resources/TagResource.php +++ b/app/Http/Resources/TagResource.php @@ -7,7 +7,7 @@ class TagResource extends JsonResource { /** - * @param \Illuminate\Http\Request $request + * @param \Illuminate\Http\Request $request */ public function toArray($request): array { diff --git a/app/Jobs/CreateApiToken.php b/app/Jobs/CreateApiToken.php index 8559e7f7d..1947f50c9 100644 --- a/app/Jobs/CreateApiToken.php +++ b/app/Jobs/CreateApiToken.php @@ -17,8 +17,7 @@ class CreateApiToken implements ShouldQueue public function __construct( private User $user, private string $name, - ) - { + ) { } public function handle(): void diff --git a/app/Jobs/DeleteApiToken.php b/app/Jobs/DeleteApiToken.php index 4b2d63f2d..4da916d16 100644 --- a/app/Jobs/DeleteApiToken.php +++ b/app/Jobs/DeleteApiToken.php @@ -4,7 +4,6 @@ use App\Models\User; use Illuminate\Bus\Queueable; -use Illuminate\Contracts\Queue\ShouldBeUnique; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Queue\InteractsWithQueue; diff --git a/config/sanctum.php b/config/sanctum.php index 9281c92db..e7d6cf174 100644 --- a/config/sanctum.php +++ b/config/sanctum.php @@ -16,7 +16,7 @@ 'stateful' => explode(',', env('SANCTUM_STATEFUL_DOMAINS', sprintf( '%s%s', 'localhost,localhost:3000,127.0.0.1,127.0.0.1:8000,::1', - env('APP_URL') ? ','.parse_url(env('APP_URL'), PHP_URL_HOST) : '' + env('APP_URL') ? ','.parse_url(env('APP_URL'), PHP_URL_HOST) : '', ))), /* diff --git a/tests/Integration/Api/ArticleTest.php b/tests/Integration/Api/ArticleTest.php index ead1fa87e..fb3bab367 100644 --- a/tests/Integration/Api/ArticleTest.php +++ b/tests/Integration/Api/ArticleTest.php @@ -135,5 +135,5 @@ dataset('article API responses', [ 'default' => [[], []], 'submitted for publishing' => [['submitted' => true], ['is_submitted' => true]], - 'no tags' => [['tags' => []], ['tags' => []]] -]); \ No newline at end of file + 'no tags' => [['tags' => []], ['tags' => []]], +]); diff --git a/tests/Integration/Jobs/CreateApiTokenTest.php b/tests/Integration/Jobs/CreateApiTokenTest.php index 4ca3d97a5..b1a965157 100644 --- a/tests/Integration/Jobs/CreateApiTokenTest.php +++ b/tests/Integration/Jobs/CreateApiTokenTest.php @@ -1,7 +1,6 @@ refresh()->tokens) ->toHaveCount(1) ->first()->name->toBe('Foo Bar'); -}); \ No newline at end of file +}); diff --git a/tests/Integration/Jobs/DeleteApiTokenTest.php b/tests/Integration/Jobs/DeleteApiTokenTest.php index ba3d91329..c35965cc6 100644 --- a/tests/Integration/Jobs/DeleteApiTokenTest.php +++ b/tests/Integration/Jobs/DeleteApiTokenTest.php @@ -1,6 +1,5 @@ refresh()->tokens)->toHaveCount(1); expect($token->accessToken->fresh())->not->toBeNull(); -}); \ No newline at end of file +}); From 7985ec4087778454193431f7b4070f0638873108 Mon Sep 17 00:00:00 2001 From: luke Date: Wed, 29 Dec 2021 12:59:49 +0000 Subject: [PATCH 09/14] CS --- app/Jobs/CreateApiToken.php | 1 - 1 file changed, 1 deletion(-) diff --git a/app/Jobs/CreateApiToken.php b/app/Jobs/CreateApiToken.php index 1947f50c9..27c875b74 100644 --- a/app/Jobs/CreateApiToken.php +++ b/app/Jobs/CreateApiToken.php @@ -4,7 +4,6 @@ use App\Models\User; use Illuminate\Bus\Queueable; -use Illuminate\Contracts\Queue\ShouldBeUnique; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Queue\InteractsWithQueue; From 40c790f9b7caca0a66bced570b59baf444052e30 Mon Sep 17 00:00:00 2001 From: Dries Vints Date: Sat, 25 Dec 2021 14:39:47 +0100 Subject: [PATCH 10/14] Dump schema --- database/schema/mysql-schema.dump | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/database/schema/mysql-schema.dump b/database/schema/mysql-schema.dump index 28a47f851..5a8e23ec6 100644 --- a/database/schema/mysql-schema.dump +++ b/database/schema/mysql-schema.dump @@ -141,6 +141,7 @@ CREATE TABLE `replies` ( `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `replyable_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', + `updated_by` bigint unsigned DEFAULT NULL, PRIMARY KEY (`id`), KEY `replies_author_id_index` (`author_id`), KEY `replies_replyable_id_index` (`replyable_id`), @@ -204,16 +205,19 @@ CREATE TABLE `threads` ( `subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `body` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `slug` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, + `last_activity_at` timestamp NULL DEFAULT NULL, `created_at` datetime DEFAULT NULL, `updated_at` datetime DEFAULT NULL, `solution_reply_id` int unsigned DEFAULT NULL, `resolved_by` int unsigned DEFAULT NULL, + `updated_by` bigint unsigned DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `threads_slug_unique` (`slug`), KEY `threads_author_id_index` (`author_id`), KEY `threads_slug_index` (`slug`), KEY `threads_solution_reply_id_index` (`solution_reply_id`), KEY `threads_resolved_by_foreign` (`resolved_by`), + KEY `threads_last_activity_at_index` (`last_activity_at`), CONSTRAINT `threads_author_id_foreign` FOREIGN KEY (`author_id`) REFERENCES `users` (`id`) ON DELETE CASCADE, CONSTRAINT `threads_resolved_by_foreign` FOREIGN KEY (`resolved_by`) REFERENCES `users` (`id`) ON DELETE SET NULL, CONSTRAINT `threads_solution_reply_id_foreign` FOREIGN KEY (`solution_reply_id`) REFERENCES `replies` (`id`) ON DELETE SET NULL @@ -317,3 +321,5 @@ INSERT INTO `migrations` VALUES (61,'2021_07_23_110409_update_articles_table_add INSERT INTO `migrations` VALUES (62,'2021_07_31_183222_unique_github_ids',1); INSERT INTO `migrations` VALUES (63,'2021_09_12_220452_add_resolved_by_to_threads_table',2); INSERT INTO `migrations` VALUES (64,'2021_10_31_143501_add_declined_at_column_to_articles_table',3); +INSERT INTO `migrations` VALUES (65,'2021_11_15_213258_add_updated_by_to_threads_and_replies_table',4); +INSERT INTO `migrations` VALUES (66,'2021_11_22_093555_migrate_thread_feed_to_timestamp',4); From 2d9092318a8968a1256fe99b2e89b194fb5f7844 Mon Sep 17 00:00:00 2001 From: Efe Omoregie Date: Sat, 25 Dec 2021 17:15:11 +0100 Subject: [PATCH 11/14] Handle duplicate GitHub ID upon registration (#782) * Added check inside the create method of the RegisterController to find duplicate github ID * Added error message saying "We already found a user with the given GitHub account....... * fixed failing test * fixed stycli errors * styleci fixes * styleci fixes * more styleci fixes * wip Co-authored-by: Dries Vints --- app/Http/Requests/RegisterRequest.php | 3 ++- app/Rules/UniqueGitHubUser.php | 34 +++++++++++++++++++++++++++ resources/lang/en/errors.php | 1 + tests/Feature/AuthTest.php | 19 +++++++++++++++ 4 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 app/Rules/UniqueGitHubUser.php diff --git a/app/Http/Requests/RegisterRequest.php b/app/Http/Requests/RegisterRequest.php index ad09dd436..c776caca3 100644 --- a/app/Http/Requests/RegisterRequest.php +++ b/app/Http/Requests/RegisterRequest.php @@ -2,6 +2,7 @@ namespace App\Http\Requests; +use App\Rules\UniqueGitHubUser; use Illuminate\Foundation\Http\FormRequest; class RegisterRequest extends FormRequest @@ -19,7 +20,7 @@ public function rules() 'username' => 'required|alpha_dash|max:40|unique:users', 'rules' => 'accepted', 'terms' => 'accepted', - 'github_id' => 'required', + 'github_id' => ['required', new UniqueGitHubUser], ]; } diff --git a/app/Rules/UniqueGitHubUser.php b/app/Rules/UniqueGitHubUser.php new file mode 100644 index 000000000..e326d2d65 --- /dev/null +++ b/app/Rules/UniqueGitHubUser.php @@ -0,0 +1,34 @@ +user = User::findByGithubId($value); + } catch (ModelNotFoundException) { + return true; + } + + return false; + } + + public function message() + { + $this->error('errors.github_account_exists', [ + 'username' => '@'.$this->user->githubUsername(), + 'login' => route('login'), + ]); + } +} diff --git a/resources/lang/en/errors.php b/resources/lang/en/errors.php index 6d2dc3c01..55c8844e8 100644 --- a/resources/lang/en/errors.php +++ b/resources/lang/en/errors.php @@ -5,4 +5,5 @@ 'fields' => 'Something went wrong. Please review the fields below.', 'github_invalid_state' => 'The request timed out. Please try again.', 'github_account_too_young' => 'Your Github account needs to be older than 2 weeks in order to register.', + 'github_account_exists' => 'We already found a user with the given GitHub account (:username). Would you like to login instead?', ]; diff --git a/tests/Feature/AuthTest.php b/tests/Feature/AuthTest.php index 44dc9a1dd..d70e5296d 100644 --- a/tests/Feature/AuthTest.php +++ b/tests/Feature/AuthTest.php @@ -1,5 +1,6 @@ see('The username must only contain letters, numbers, dashes and underscores.'); }); +test('registration fails with a duplicate github id', function () { + User::factory()->create(['github_id' => 123, 'github_username' => 'johndoe']); + + session(['githubData' => ['id' => 123, 'username' => 'johndoe']]); + + $this->visit('/register') + ->type('John Doe', 'name') + ->type('john.doe@example.com', 'email') + ->type('johndoe', 'username') + ->type('123', 'github_id') + ->type('johndoe', 'github_username') + ->check('rules') + ->check('terms') + ->press('Register') + ->seePageIs('/register') + ->see('We already found a user with the given GitHub account (@johndoe). Would you like to login instead?'); +}); + test('users can resend the email verification', function () { $this->login(['email_verified_at' => null]); From 86888668e433ebb94661af5152ddf482e549dd7b Mon Sep 17 00:00:00 2001 From: Dries Vints Date: Mon, 27 Dec 2021 22:14:09 +0100 Subject: [PATCH 12/14] Update sponsors --- README.md | 2 -- config/lio.php | 1 - public/images/showcase/devsquad-long.png | Bin 77594 -> 0 bytes public/images/showcase/devsquad-small.png | Bin 80762 -> 0 bytes public/images/sponsors/devsquad.png | Bin 23944 -> 0 bytes public/images/sponsors/red-amber.green.svg | 1 - resources/views/layouts/_sponsors.blade.php | 10 +--------- 7 files changed, 1 insertion(+), 13 deletions(-) delete mode 100644 public/images/showcase/devsquad-long.png delete mode 100644 public/images/showcase/devsquad-small.png delete mode 100644 public/images/sponsors/devsquad.png delete mode 100644 public/images/sponsors/red-amber.green.svg diff --git a/README.md b/README.md index c3ff8a847..7217e4023 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,6 @@ This is the repository for the [Laravel.io](http://laravel.io) community portal. We'd like to thank these **amazing companies** for sponsoring us. If you are interested in becoming a sponsor, please visit the Laravel.io Github Sponsors page. -- **[Devsquad](https://devsquad.com)** - **[LaraJobs](https://larajobs.com)** - **[Cloudways](https://www.cloudways.com/en/?id=972670)** - [Forge](https://forge.laravel.com) @@ -29,7 +28,6 @@ We'd like to thank these **amazing companies** for sponsoring us. If you are int - [Tinkerwell](https://tinkerwell.app) - [Akaunting](https://akaunting.com/developers?utm_source=Laravelio&utm_medium=Banner&utm_campaign=Developers) - [Scout APM](https://ter.li/o1adaj) -- [red-amber.green](https://red-amber.green) ## Requirements diff --git a/config/lio.php b/config/lio.php index 93d5b3d7e..18003f460 100644 --- a/config/lio.php +++ b/config/lio.php @@ -3,7 +3,6 @@ return [ 'ads' => [ - ['url' => 'https://devsquad.com', 'image' => 'devsquad', 'alt' => 'Devsquad', 'goal' => 'MMCR7T3S'], ['url' => 'https://larajobs.com', 'image' => 'larajobs', 'alt' => 'LaraJobs', 'goal' => '9C3CAYKR'], ['url' => 'https://fullstackeurope.com/2022?utm_source=Laravel.io&utm_campaign=fseu22&utm_medium=advertisement', 'image' => 'fseu', 'alt' => 'Full Stack Europe', 'goal' => 'SRIK2PEE'], [ diff --git a/public/images/showcase/devsquad-long.png b/public/images/showcase/devsquad-long.png deleted file mode 100644 index c9d989329be4e1159527adff88456bb519bb1dc5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77594 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
# 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 diff --git a/public/images/showcase/devsquad-small.png b/public/images/showcase/devsquad-small.png deleted file mode 100644 index b8c06cced2974de5b1f2ad0aa90cd9d662d3534f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 80762 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 BAGZJi diff --git a/public/images/sponsors/red-amber.green.svg b/public/images/sponsors/red-amber.green.svg deleted file mode 100644 index 41cf7ff8e..000000000 --- a/public/images/sponsors/red-amber.green.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/resources/views/layouts/_sponsors.blade.php b/resources/views/layouts/_sponsors.blade.php index 763ee2acb..235c1490c 100644 --- a/resources/views/layouts/_sponsors.blade.php +++ b/resources/views/layouts/_sponsors.blade.php @@ -4,15 +4,11 @@ We'd like to thank these amazing companies for supporting us

-
+
-
- -
-
@@ -44,10 +40,6 @@
- -
- -
From 6ff98e41ba2eb9dd3c4d356119a4d1bca60967e0 Mon Sep 17 00:00:00 2001 From: Joe Dixon Date: Tue, 28 Dec 2021 10:27:24 +0000 Subject: [PATCH 13/14] Upgrade tailwind to v3 (#795) * update dependencies * update classes * remove classes duplication * resolve conflict * Remove dependency Co-authored-by: faissaloux --- package-lock.json | 991 +++++++++--------- package.json | 19 +- resources/css/buttons.css | 2 +- resources/views/admin/articles.blade.php | 2 +- .../admin/partials/_navigation.blade.php | 6 +- resources/views/admin/users.blade.php | 2 +- resources/views/articles/overview.blade.php | 4 +- resources/views/articles/show.blade.php | 4 +- .../views/components/articles/form.blade.php | 10 +- .../components/articles/summary.blade.php | 2 +- .../components/community-member.blade.php | 2 +- .../views/components/threads/form.blade.php | 6 +- resources/views/forum/_thread.blade.php | 4 +- resources/views/forum/overview.blade.php | 2 +- resources/views/forum/threads/show.blade.php | 4 +- resources/views/home.blade.php | 6 +- .../views/layouts/_ads/_banner.blade.php | 2 +- resources/views/layouts/_footer.blade.php | 6 +- resources/views/layouts/_nav.blade.php | 4 +- resources/views/users/articles.blade.php | 2 +- .../views/users/settings/profile.blade.php | 6 +- tailwind.config.js | 4 +- 22 files changed, 561 insertions(+), 529 deletions(-) diff --git a/package-lock.json b/package-lock.json index fad1f3f7f..90c467a3d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,41 +1,41 @@ { - "name": "laravel.io", + "name": "laravelio", "lockfileVersion": 2, "requires": true, "packages": { "": { - "dependencies": { + "devDependencies": { "@tailwindcss/aspect-ratio": "^0.2.0", - "@tailwindcss/forms": "^0.2.1", - "@tailwindcss/typography": "^0.4.0", + "@tailwindcss/forms": "^0.4.0", + "@tailwindcss/typography": "^0.5.0", "algoliasearch": "^4.8.4", "alpinejs": "^3.0", - "autoprefixer": "^10.2.4", - "choices.js": "^9.0.1", - "postcss": "^8.2.10", - "tailwindcss": "^2.0.2" - }, - "devDependencies": { + "autoprefixer": "^10.4.0", "axios": "^0.21.4", + "choices.js": "^9.0.1", "highlight.js": "^10.5.0", "laravel-mix": "^6.0.23", - "vue-template-compiler": "^2.6.12" + "postcss": "^8.4.5", + "tailwindcss": "^3.0.2" } }, "node_modules/@algolia/cache-browser-local-storage": { "version": "4.10.2", "integrity": "sha512-B3NInwobEAim4J4Y0mgZermoi0DCXdTT/Q+4ehLamqUqxLw8To5zc9izjg7B8JaFSQsqflRdCeRmYEv2gYDY7g==", + "dev": true, "dependencies": { "@algolia/cache-common": "4.10.2" } }, "node_modules/@algolia/cache-common": { "version": "4.10.2", - "integrity": "sha512-xcGbV0+6gLu2C7XoJdD+Pp6wWjROle6PNDsa6O21vS7fw1a03xb2bEnFdl1U31bs69P1z8IRy3h+8RVBouvhhw==" + "integrity": "sha512-xcGbV0+6gLu2C7XoJdD+Pp6wWjROle6PNDsa6O21vS7fw1a03xb2bEnFdl1U31bs69P1z8IRy3h+8RVBouvhhw==", + "dev": true }, "node_modules/@algolia/cache-in-memory": { "version": "4.10.2", "integrity": "sha512-zPIcxHQEJXy+M35A+v9Y5u5BAQOKR2aFK0kYpAdW/OrgxYcrFHtVCxwIWB/ZhGbkDtzCW8/8tJeddcD5YsHX9Q==", + "dev": true, "dependencies": { "@algolia/cache-common": "4.10.2" } @@ -43,6 +43,7 @@ "node_modules/@algolia/client-account": { "version": "4.10.2", "integrity": "sha512-iuIU+xUtjgR9p4Hpujlr8mePDPSrVIk3peg+RAUhxniLBDaI+OhgHyhP6Lmh9flWk+JfRg91Rhk46xuxMLqwfA==", + "dev": true, "dependencies": { "@algolia/client-common": "4.10.2", "@algolia/client-search": "4.10.2", @@ -52,6 +53,7 @@ "node_modules/@algolia/client-analytics": { "version": "4.10.2", "integrity": "sha512-u47J65NHs0fMryDrMeuLMGjXDOKt/muF9WlfbMslT2Cvdd7PZwl9KYnT7xMhnmBB8TDiDMmEQkDykhnCOnwVNw==", + "dev": true, "dependencies": { "@algolia/client-common": "4.10.2", "@algolia/client-search": "4.10.2", @@ -62,6 +64,7 @@ "node_modules/@algolia/client-common": { "version": "4.10.2", "integrity": "sha512-sfgZCv9ha9aHbe3ErAYb1blg2qx4XTLvQqP1jq8asU75rrH9XBTtSzQQO43GlArwhtwCHLgcWquN3WgPlLzkiQ==", + "dev": true, "dependencies": { "@algolia/requester-common": "4.10.2", "@algolia/transporter": "4.10.2" @@ -70,6 +73,7 @@ "node_modules/@algolia/client-personalization": { "version": "4.10.2", "integrity": "sha512-2UhUNo/czfA/keOC3+vFyMnFGV/E1Zkm+ek9Fsk/9miS39UMhx2CmH5vKSIJ7jxLSin7zBaCwKt65phfYty1pg==", + "dev": true, "dependencies": { "@algolia/client-common": "4.10.2", "@algolia/requester-common": "4.10.2", @@ -79,6 +83,7 @@ "node_modules/@algolia/client-search": { "version": "4.10.2", "integrity": "sha512-ZdOh6XS6Y9bcekfG4y0VhdoIYfsTounsgXX4Bt3X2RCcmY3uotgaq2EVY58E6q6nvfgBfPHW18+AZCHKTWHAAw==", + "dev": true, "dependencies": { "@algolia/client-common": "4.10.2", "@algolia/requester-common": "4.10.2", @@ -87,11 +92,13 @@ }, "node_modules/@algolia/logger-common": { "version": "4.10.2", - "integrity": "sha512-UJaU6arzmW+FT5fCv5NIbxNMtEoGcf+UENmZxxu7k7UWPARR2XL4ljJ45Jv14Z5dlz32LXWtR1PRmNfkDMk22Q==" + "integrity": "sha512-UJaU6arzmW+FT5fCv5NIbxNMtEoGcf+UENmZxxu7k7UWPARR2XL4ljJ45Jv14Z5dlz32LXWtR1PRmNfkDMk22Q==", + "dev": true }, "node_modules/@algolia/logger-console": { "version": "4.10.2", "integrity": "sha512-JrCrZ7CGs/TsyNR2AWe9Vdd6rsuxfvfcpqbu+CY7LBUYEnV8GERkf7FnDNaKVNsFJqClILCGh3U8CzQ1G5L+kA==", + "dev": true, "dependencies": { "@algolia/logger-common": "4.10.2" } @@ -99,17 +106,20 @@ "node_modules/@algolia/requester-browser-xhr": { "version": "4.10.2", "integrity": "sha512-LveaAp7/oCBotv1aZ4VHz8fCcJA7v/28ayh+Ljlm+hYXsxgs6NAYKz7iBpxGN7q5MV8GM+MThRYNFoT0cHTMxQ==", + "dev": true, "dependencies": { "@algolia/requester-common": "4.10.2" } }, "node_modules/@algolia/requester-common": { "version": "4.10.2", - "integrity": "sha512-3J2W0fAaURLGK0lEGeNb8eWJnQcsu+oIcfJTCIYkYT5T9w21M65kUUyD9QSf/K137qQts3tzGniUR3LxfovlXA==" + "integrity": "sha512-3J2W0fAaURLGK0lEGeNb8eWJnQcsu+oIcfJTCIYkYT5T9w21M65kUUyD9QSf/K137qQts3tzGniUR3LxfovlXA==", + "dev": true }, "node_modules/@algolia/requester-node-http": { "version": "4.10.2", "integrity": "sha512-IBqsalCGgn0CrOP1PKRB5rufEOvHlrSQUFEGXZ8mxmE/zU8CLX2LKqdHbEFeNDLFl+l+8HW5BGVDGD2rvG+hSg==", + "dev": true, "dependencies": { "@algolia/requester-common": "4.10.2" } @@ -117,6 +127,7 @@ "node_modules/@algolia/transporter": { "version": "4.10.2", "integrity": "sha512-I3QDRSookQtPSUEnxT2XCShhipCT4beJBpWhteNwMrWQF/SqTsveqSR6bX0G49lDh9MOmYrOlCegteuKuT/tEw==", + "dev": true, "dependencies": { "@algolia/cache-common": "4.10.2", "@algolia/logger-common": "4.10.2", @@ -127,6 +138,7 @@ "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", + "dev": true, "dependencies": { "@babel/highlight": "^7.16.0" }, @@ -495,6 +507,7 @@ "version": "7.15.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true, "engines": { "node": ">=6.9.0" } @@ -541,6 +554,7 @@ "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", + "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.15.7", "chalk": "^2.0.0", @@ -554,6 +568,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -565,6 +580,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -578,6 +594,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -585,12 +602,14 @@ "node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, "engines": { "node": ">=4" } @@ -599,6 +618,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -1725,6 +1745,7 @@ "version": "7.16.3", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz", "integrity": "sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==", + "dev": true, "dependencies": { "regenerator-runtime": "^0.13.4" }, @@ -1788,19 +1809,10 @@ "node": ">=10.0.0" } }, - "node_modules/@fullhuman/postcss-purgecss": { - "version": "4.0.3", - "integrity": "sha512-/EnQ9UDWGGqHkn1UKAwSgh+gJHPKmD+Z+5dQ4gWT4qq2NUyez3zqAfZNwFH3eSgmgO+wjTXfhlLchx2M9/K+7Q==", - "dependencies": { - "purgecss": "^4.0.3" - }, - "peerDependencies": { - "postcss": "^8.0.0" - } - }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -1812,6 +1824,7 @@ "node_modules/@nodelib/fs.stat": { "version": "2.0.5", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, "engines": { "node": ">= 8" } @@ -1819,6 +1832,7 @@ "node_modules/@nodelib/fs.walk": { "version": "1.2.7", "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", + "dev": true, "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -1830,20 +1844,28 @@ "node_modules/@tailwindcss/aspect-ratio": { "version": "0.2.1", "integrity": "sha512-aDFi80aHQ3JM3symJ5iKU70lm151ugIGFCI0yRZGpyjgQSDS+Fbe93QwypC1tCEllQE8p0S7TUu20ih1b9IKLA==", + "dev": true, "peerDependencies": { "tailwindcss": ">=2.0.0" } }, "node_modules/@tailwindcss/forms": { - "version": "0.2.1", - "integrity": "sha512-czfvEdY+J2Ogfd6RUSr/ZSUmDxTujr34M++YLnp2cCPC3oJ4kFvFMaRXA6cEXKw7F1hJuapdjXRjsXIEXGgORg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.4.0.tgz", + "integrity": "sha512-DeaQBx6EgEeuZPQACvC+mKneJsD8am1uiJugjgQK1+/Vt+Ai0GpFBC2T2fqnUad71WgOxyrZPE6BG1VaI6YqfQ==", + "dev": true, "dependencies": { "mini-svg-data-uri": "^1.2.3" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1" } }, "node_modules/@tailwindcss/typography": { - "version": "0.4.1", - "integrity": "sha512-ovPPLUhs7zAIJfr0y1dbGlyCuPhpuv/jpBoFgqAc658DWGGrOBWBMpAWLw2KlzbNeVk4YBJMzue1ekvIbdw6XA==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.0.tgz", + "integrity": "sha512-1p/3C6C+JJziS/ghtG8ACYalbA2SyLJY27Pm33cVTlAoY6VQ7zfm2H64cPxUMBkVIlWXTtWHhZcZJPobMRmQAA==", + "dev": true, "dependencies": { "lodash.castarray": "^4.4.0", "lodash.isplainobject": "^4.0.6", @@ -1851,7 +1873,7 @@ "lodash.uniq": "^4.5.0" }, "peerDependencies": { - "tailwindcss": ">=2.0.0" + "tailwindcss": ">=3.0.0 || >= 3.0.0-alpha.1 || insiders" } }, "node_modules/@trysound/sax": { @@ -2027,7 +2049,8 @@ }, "node_modules/@types/parse-json": { "version": "4.0.0", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true }, "node_modules/@types/retry": { "version": "0.12.1", @@ -2044,6 +2067,7 @@ "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "dev": true, "dependencies": { "@vue/shared": "3.1.5" } @@ -2051,7 +2075,8 @@ "node_modules/@vue/shared": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==" + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", + "dev": true }, "node_modules/@webassemblyjs/ast": { "version": "1.11.1", @@ -2263,6 +2288,7 @@ "node_modules/acorn": { "version": "7.4.1", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -2273,6 +2299,7 @@ "node_modules/acorn-node": { "version": "1.8.2", "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, "dependencies": { "acorn": "^7.0.0", "acorn-walk": "^7.0.0", @@ -2282,6 +2309,7 @@ "node_modules/acorn-walk": { "version": "7.2.0", "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true, "engines": { "node": ">=0.4.0" } @@ -2364,6 +2392,7 @@ "node_modules/algoliasearch": { "version": "4.10.2", "integrity": "sha512-BAYCe97XRfO15irJKBRjBnrp9tSqN0jppklLIXKdtUcXlibcPQtuAeGUP2cPiz6bJd3ISuoYzLFNt4/fQYtLMw==", + "dev": true, "dependencies": { "@algolia/cache-browser-local-storage": "4.10.2", "@algolia/cache-common": "4.10.2", @@ -2391,6 +2420,7 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.5.2.tgz", "integrity": "sha512-O80pq9CyyxelitgU9aEiP2HyRAAqZjA9sgJgxccuhr+XAVAJI1F/hPLVgkqGFPSvHcyDnd9biEyizY95QMgiFw==", + "dev": true, "dependencies": { "@vue/reactivity": "~3.1.1" } @@ -2433,6 +2463,7 @@ "node_modules/ansi-styles": { "version": "4.3.0", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -2446,6 +2477,7 @@ "node_modules/anymatch": { "version": "3.1.2", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" @@ -2455,8 +2487,10 @@ } }, "node_modules/arg": { - "version": "5.0.0", - "integrity": "sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz", + "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==", + "dev": true }, "node_modules/array-flatten": { "version": "2.1.2", @@ -2523,6 +2557,7 @@ "version": "10.4.0", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.0.tgz", "integrity": "sha512-7FdJ1ONtwzV1G43GDD0kpVMn/qbiNqyOPMFTX5nRffI+7vgWoFEc6DcXOxHJxrWNDXrZh18eDsZjvZGUljSRGA==", + "dev": true, "dependencies": { "browserslist": "^4.17.5", "caniuse-lite": "^1.0.30001272", @@ -2632,7 +2667,8 @@ }, "node_modules/balanced-match": { "version": "1.0.2", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, "node_modules/base64-js": { "version": "1.5.1", @@ -2670,6 +2706,7 @@ "node_modules/binary-extensions": { "version": "2.2.0", "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, "engines": { "node": ">=8" } @@ -2738,6 +2775,7 @@ "node_modules/brace-expansion": { "version": "1.1.11", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2746,6 +2784,7 @@ "node_modules/braces": { "version": "3.0.2", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -2861,6 +2900,7 @@ "version": "4.18.1", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz", "integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==", + "dev": true, "dependencies": { "caniuse-lite": "^1.0.30001280", "electron-to-chromium": "^1.3.896", @@ -2913,6 +2953,7 @@ "node_modules/bytes": { "version": "3.1.0", "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, "engines": { "node": ">= 0.8" } @@ -2933,6 +2974,7 @@ "node_modules/callsites": { "version": "3.1.0", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, "engines": { "node": ">=6" } @@ -2949,6 +2991,7 @@ "node_modules/camelcase-css": { "version": "2.0.1", "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, "engines": { "node": ">= 6" } @@ -2969,6 +3012,7 @@ "version": "1.0.30001283", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001283.tgz", "integrity": "sha512-9RoKo841j1GQFSJz/nCXOj0sD7tHBtlowjYlrqIUS812x9/emfBLBt6IyMz1zIaYc/eRL8Cs6HPUVi2Hzq4sIg==", + "dev": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/browserslist" @@ -2978,6 +3022,7 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3000,6 +3045,7 @@ "node_modules/choices.js": { "version": "9.0.1", "integrity": "sha512-JgpeDY0Tmg7tqY6jaW/druSklJSt7W68tXFJIw0GSGWmO37SDAL8o60eICNGbzIODjj02VNNtf5h6TgoHDtCsA==", + "dev": true, "dependencies": { "deepmerge": "^4.2.0", "fuse.js": "^3.4.5", @@ -3009,6 +3055,7 @@ "node_modules/chokidar": { "version": "3.5.2", "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dev": true, "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -3120,17 +3167,10 @@ "integrity": "sha512-NAyuk1DnCotRaDZIS5kJ4sptgkwOeYqElird10yziN5JBuwYOGkOTguhNcPn5g344IfylZecxNYZAVXgv19p5Q==", "dev": true }, - "node_modules/color": { - "version": "3.1.3", - "integrity": "sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==", - "dependencies": { - "color-convert": "^1.9.1", - "color-string": "^1.5.4" - } - }, "node_modules/color-convert": { "version": "2.0.1", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -3140,26 +3180,8 @@ }, "node_modules/color-name": { "version": "1.1.4", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/color-string": { - "version": "1.5.5", - "integrity": "sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg==", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/color/node_modules/color-convert": { - "version": "1.9.3", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color/node_modules/color-name": { - "version": "1.1.3", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "node_modules/colord": { "version": "2.9.1", @@ -3267,7 +3289,8 @@ }, "node_modules/concat-map": { "version": "0.0.1", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "node_modules/concat/node_modules/commander": { "version": "2.20.3", @@ -3372,8 +3395,10 @@ "dev": true }, "node_modules/cosmiconfig": { - "version": "7.0.0", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, "dependencies": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", @@ -3592,10 +3617,6 @@ "node": ">=0.10.0" } }, - "node_modules/css-unit-converter": { - "version": "1.1.2", - "integrity": "sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==" - }, "node_modules/css-what": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", @@ -3611,6 +3632,7 @@ "node_modules/cssesc": { "version": "3.0.0", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, "bin": { "cssesc": "bin/cssesc" }, @@ -3707,11 +3729,6 @@ "node": ">=8.0.0" } }, - "node_modules/de-indent": { - "version": "1.0.2", - "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", - "dev": true - }, "node_modules/debug": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", @@ -3749,6 +3766,7 @@ "node_modules/deepmerge": { "version": "4.2.2", "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -3788,7 +3806,8 @@ }, "node_modules/defined": { "version": "1.0.0", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true }, "node_modules/del": { "version": "6.0.0", @@ -3865,6 +3884,7 @@ "node_modules/detective": { "version": "5.2.0", "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==", + "dev": true, "dependencies": { "acorn-node": "^1.6.1", "defined": "^1.0.0", @@ -3878,8 +3898,10 @@ } }, "node_modules/didyoumean": { - "version": "1.2.1", - "integrity": "sha1-6S7f2tplN9SE1zwBcv0eugxJdv8=" + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true }, "node_modules/diffie-hellman": { "version": "5.0.3", @@ -3909,7 +3931,8 @@ }, "node_modules/dlv": { "version": "1.1.3", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true }, "node_modules/dns-equal": { "version": "1.0.0", @@ -4055,7 +4078,8 @@ "node_modules/electron-to-chromium": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.3.tgz", - "integrity": "sha512-hfpppjYhqIZB8jrNb0rNceQRkSnBN7QJl3W26O1jUv3F3BkQknqy1YTqVXkFnIcFtBc3Qnv5M7r5Lez2iOLgZA==" + "integrity": "sha512-hfpppjYhqIZB8jrNb0rNceQRkSnBN7QJl3W26O1jUv3F3BkQknqy1YTqVXkFnIcFtBc3Qnv5M7r5Lez2iOLgZA==", + "dev": true }, "node_modules/elliptic": { "version": "6.5.4", @@ -4134,6 +4158,7 @@ "node_modules/error-ex": { "version": "1.3.2", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { "is-arrayish": "^0.2.1" } @@ -4147,6 +4172,7 @@ "node_modules/escalade": { "version": "3.1.1", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, "engines": { "node": ">=6" } @@ -4160,6 +4186,7 @@ "node_modules/escape-string-regexp": { "version": "1.0.5", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -4335,15 +4362,16 @@ "dev": true }, "node_modules/fast-glob": { - "version": "3.2.5", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", + "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" + "micromatch": "^4.0.4" }, "engines": { "node": ">=8" @@ -4363,6 +4391,7 @@ "node_modules/fastq": { "version": "1.11.0", "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "dev": true, "dependencies": { "reusify": "^1.0.4" } @@ -4453,6 +4482,7 @@ "node_modules/fill-range": { "version": "7.0.1", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -4554,6 +4584,7 @@ "node_modules/fraction.js": { "version": "4.1.1", "integrity": "sha512-MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==", + "dev": true, "engines": { "node": "*" }, @@ -4574,6 +4605,7 @@ "node_modules/fs-extra": { "version": "10.0.0", "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "dev": true, "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -4591,11 +4623,13 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "node_modules/fsevents": { "version": "2.3.2", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -4607,11 +4641,13 @@ }, "node_modules/function-bind": { "version": "1.1.1", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "node_modules/fuse.js": { "version": "3.6.1", "integrity": "sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw==", + "dev": true, "engines": { "node": ">=6" } @@ -4664,6 +4700,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -4682,6 +4719,7 @@ "node_modules/glob-parent": { "version": "5.1.2", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -4724,7 +4762,8 @@ }, "node_modules/graceful-fs": { "version": "4.2.6", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true }, "node_modules/growly": { "version": "1.3.0", @@ -4741,6 +4780,7 @@ "node_modules/has": { "version": "1.0.3", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, "dependencies": { "function-bind": "^1.1.1" }, @@ -4751,6 +4791,7 @@ "node_modules/has-flag": { "version": "4.0.0", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } @@ -5004,13 +5045,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "node_modules/html-tags": { - "version": "3.1.0", - "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", - "engines": { - "node": ">=8" - } - }, "node_modules/htmlparser2": { "version": "4.1.0", "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", @@ -5184,6 +5218,7 @@ "node_modules/import-cwd": { "version": "3.0.0", "integrity": "sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==", + "dev": true, "dependencies": { "import-from": "^3.0.0" }, @@ -5194,6 +5229,7 @@ "node_modules/import-fresh": { "version": "3.3.0", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -5208,6 +5244,7 @@ "node_modules/import-from": { "version": "3.0.0", "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, "dependencies": { "resolve-from": "^5.0.0" }, @@ -5218,6 +5255,7 @@ "node_modules/import-from/node_modules/resolve-from": { "version": "5.0.0", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, "engines": { "node": ">=8" } @@ -5250,6 +5288,7 @@ "node_modules/inflight": { "version": "1.0.6", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -5257,7 +5296,8 @@ }, "node_modules/inherits": { "version": "2.0.4", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "node_modules/internal-ip": { "version": "6.2.0", @@ -5346,11 +5386,13 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true }, "node_modules/is-binary-path": { "version": "2.1.0", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, "dependencies": { "binary-extensions": "^2.0.0" }, @@ -5366,6 +5408,7 @@ "node_modules/is-core-module": { "version": "2.4.0", "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "dev": true, "dependencies": { "has": "^1.0.3" }, @@ -5406,6 +5449,7 @@ "node_modules/is-extglob": { "version": "2.1.1", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -5419,8 +5463,10 @@ } }, "node_modules/is-glob": { - "version": "4.0.1", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -5443,6 +5489,7 @@ "node_modules/is-number": { "version": "7.0.0", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, "engines": { "node": ">=0.12.0" } @@ -5587,7 +5634,8 @@ "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true }, "node_modules/jsesc": { "version": "2.5.2", @@ -5608,7 +5656,8 @@ }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -5632,6 +5681,7 @@ "node_modules/jsonfile": { "version": "6.1.0", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, "dependencies": { "universalify": "^2.0.0" }, @@ -5797,13 +5847,15 @@ "node_modules/lilconfig": { "version": "2.0.3", "integrity": "sha512-EHKqr/+ZvdKCifpNrJCKxBTgk5XupZA3y/aCPY9mxfgBzmgh93Mt/WqjjQ38oMxXuvDokaKiM3lAgvSH2sjtHg==", + "dev": true, "engines": { "node": ">=10" } }, "node_modules/lines-and-columns": { "version": "1.1.6", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true }, "node_modules/loader-runner": { "version": "4.2.0", @@ -5851,11 +5903,13 @@ }, "node_modules/lodash": { "version": "4.17.21", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "node_modules/lodash.castarray": { "version": "4.4.0", - "integrity": "sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU=" + "integrity": "sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU=", + "dev": true }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -5865,7 +5919,8 @@ }, "node_modules/lodash.isplainobject": { "version": "4.0.6", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "dev": true }, "node_modules/lodash.memoize": { "version": "4.1.2", @@ -5875,19 +5930,13 @@ }, "node_modules/lodash.merge": { "version": "4.6.2", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "node_modules/lodash.toarray": { - "version": "4.4.0", - "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=" - }, - "node_modules/lodash.topath": { - "version": "4.5.2", - "integrity": "sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak=" + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, "node_modules/lodash.uniq": { "version": "4.5.0", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true }, "node_modules/lower-case": { "version": "2.0.2", @@ -5992,6 +6041,7 @@ "node_modules/merge2": { "version": "1.4.1", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, "engines": { "node": ">= 8" } @@ -6008,6 +6058,7 @@ "node_modules/micromatch": { "version": "4.0.4", "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, "dependencies": { "braces": "^3.0.1", "picomatch": "^2.2.3" @@ -6129,6 +6180,7 @@ "node_modules/mini-svg-data-uri": { "version": "1.3.3", "integrity": "sha512-+fA2oRcR1dJI/7ITmeQJDrYWks0wodlOz0pAEhKYJ2IVc1z0AnwJUsKY2fzFmPAM3Jo9J0rBx8JAA9QQSJ5PuA==", + "dev": true, "bin": { "mini-svg-data-uri": "cli.js" } @@ -6146,6 +6198,7 @@ "node_modules/minimatch": { "version": "3.0.4", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -6155,7 +6208,8 @@ }, "node_modules/minimist": { "version": "1.2.5", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true }, "node_modules/mkdirp": { "version": "0.5.5", @@ -6169,16 +6223,6 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/modern-normalize": { - "version": "1.1.0", - "integrity": "sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA==", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -6208,6 +6252,7 @@ "version": "3.1.30", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", + "dev": true, "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -6238,13 +6283,6 @@ "tslib": "^2.0.3" } }, - "node_modules/node-emoji": { - "version": "1.10.0", - "integrity": "sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==", - "dependencies": { - "lodash.toarray": "^4.4.0" - } - }, "node_modules/node-forge": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", @@ -6310,11 +6348,13 @@ "node_modules/node-releases": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==" + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true }, "node_modules/normalize-path": { "version": "3.0.0", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -6322,6 +6362,7 @@ "node_modules/normalize-range": { "version": "0.1.2", "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -6373,6 +6414,7 @@ "node_modules/object-hash": { "version": "2.2.0", "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "dev": true, "engines": { "node": ">= 6" } @@ -6450,6 +6492,7 @@ "node_modules/once": { "version": "1.4.0", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "dependencies": { "wrappy": "1" } @@ -6619,6 +6662,7 @@ "node_modules/parent-module": { "version": "1.0.1", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, "dependencies": { "callsites": "^3.0.0" }, @@ -6641,6 +6685,7 @@ "node_modules/parse-json": { "version": "5.2.0", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -6689,6 +6734,7 @@ "node_modules/path-is-absolute": { "version": "1.0.1", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -6704,7 +6750,8 @@ }, "node_modules/path-parse": { "version": "1.0.7", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "node_modules/path-to-regexp": { "version": "0.1.7", @@ -6715,6 +6762,7 @@ "node_modules/path-type": { "version": "4.0.0", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, "engines": { "node": ">=8" } @@ -6737,11 +6785,13 @@ "node_modules/picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true }, "node_modules/picomatch": { "version": "2.3.0", "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true, "engines": { "node": ">=8.6" }, @@ -6785,9 +6835,10 @@ } }, "node_modules/postcss": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.1.tgz", - "integrity": "sha512-WqLs/TTzXdG+/A4ZOOK9WDZiikrRaiA+eoEb/jz2DT9KUhMNHgP7yKPO8vwi62ZCsb703Gwb7BMZwDzI54Y2Ag==", + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "dev": true, "dependencies": { "nanoid": "^3.1.30", "picocolors": "^1.0.0", @@ -6898,6 +6949,7 @@ "node_modules/postcss-js": { "version": "3.0.3", "integrity": "sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw==", + "dev": true, "dependencies": { "camelcase-css": "^2.0.1", "postcss": "^8.1.6" @@ -6913,6 +6965,7 @@ "node_modules/postcss-load-config": { "version": "3.1.0", "integrity": "sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==", + "dev": true, "dependencies": { "import-cwd": "^3.0.0", "lilconfig": "^2.0.3", @@ -7112,20 +7165,22 @@ } }, "node_modules/postcss-nested": { - "version": "5.0.5", - "integrity": "sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", + "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", + "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.4" + "postcss-selector-parser": "^6.0.6" }, "engines": { - "node": ">=10.0" + "node": ">=12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/postcss/" }, "peerDependencies": { - "postcss": "^8.1.13" + "postcss": "^8.2.14" } }, "node_modules/postcss-normalize-charset": { @@ -7317,6 +7372,7 @@ "node_modules/postcss-selector-parser": { "version": "6.0.6", "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -7358,15 +7414,10 @@ } }, "node_modules/postcss-value-parser": { - "version": "4.1.0", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" - }, - "node_modules/pretty-hrtime": { - "version": "1.0.3", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "engines": { - "node": ">= 0.8" - } + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true }, "node_modules/pretty-time": { "version": "1.1.0", @@ -7434,26 +7485,6 @@ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, - "node_modules/purgecss": { - "version": "4.0.3", - "integrity": "sha512-PYOIn5ibRIP34PBU9zohUcCI09c7drPJJtTDAc0Q6QlRz2/CHQ8ywGLdE7ZhxU2VTqB7p5wkvj5Qcm05Rz3Jmw==", - "dependencies": { - "commander": "^6.0.0", - "glob": "^7.0.0", - "postcss": "^8.2.1", - "postcss-selector-parser": "^6.0.2" - }, - "bin": { - "purgecss": "bin/purgecss.js" - } - }, - "node_modules/purgecss/node_modules/commander": { - "version": "6.2.1", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", - "engines": { - "node": ">= 6" - } - }, "node_modules/qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", @@ -7483,6 +7514,7 @@ "node_modules/queue-microtask": { "version": "1.2.3", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, "funding": [ { "type": "github", @@ -7501,6 +7533,7 @@ "node_modules/quick-lru": { "version": "5.1.1", "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true, "engines": { "node": ">=10" }, @@ -7574,6 +7607,7 @@ "node_modules/readdirp": { "version": "3.6.0", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, "dependencies": { "picomatch": "^2.2.1" }, @@ -7593,21 +7627,10 @@ "node": ">= 0.10" } }, - "node_modules/reduce-css-calc": { - "version": "2.1.8", - "integrity": "sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==", - "dependencies": { - "css-unit-converter": "^1.1.1", - "postcss-value-parser": "^3.3.0" - } - }, - "node_modules/reduce-css-calc/node_modules/postcss-value-parser": { - "version": "3.3.1", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" - }, "node_modules/redux": { "version": "4.1.0", "integrity": "sha512-uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==", + "dev": true, "dependencies": { "@babel/runtime": "^7.9.2" } @@ -7632,7 +7655,8 @@ }, "node_modules/regenerator-runtime": { "version": "0.13.7", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", + "dev": true }, "node_modules/regenerator-transform": { "version": "0.14.5", @@ -7746,6 +7770,7 @@ "node_modules/resolve": { "version": "1.20.0", "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, "dependencies": { "is-core-module": "^2.2.0", "path-parse": "^1.0.6" @@ -7778,6 +7803,7 @@ "node_modules/resolve-from": { "version": "4.0.0", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, "engines": { "node": ">=4" } @@ -7794,6 +7820,7 @@ "node_modules/reusify": { "version": "1.0.4", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -7802,6 +7829,7 @@ "node_modules/rimraf": { "version": "3.0.2", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, "dependencies": { "glob": "^7.1.3" }, @@ -7824,6 +7852,7 @@ "node_modules/run-parallel": { "version": "1.2.0", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, "funding": [ { "type": "github", @@ -8096,17 +8125,6 @@ "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==", "dev": true }, - "node_modules/simple-swizzle": { - "version": "0.2.2", - "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/simple-swizzle/node_modules/is-arrayish": { - "version": "0.3.2", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - }, "node_modules/slash": { "version": "3.0.0", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", @@ -8145,6 +8163,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz", "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -8383,6 +8402,7 @@ "node_modules/supports-color": { "version": "7.2.0", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -8412,38 +8432,30 @@ } }, "node_modules/tailwindcss": { - "version": "2.2.4", - "integrity": "sha512-OdBCPgazNNsknSP+JfrPzkay9aqKjhKtFhbhgxHgvEFdHy/GuRPo2SCJ4w1SFTN8H6FPI4m6qD/Jj20NWY1GkA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.2.tgz", + "integrity": "sha512-i1KpjYnGYftjzdAth6jA5iMPjhxpUkk5L6DafhfnQs+KiiWaThYxmk47Weh4oFH1mZqP6MuiQNHxtoRVPOraLg==", + "dev": true, "dependencies": { - "@fullhuman/postcss-purgecss": "^4.0.3", - "arg": "^5.0.0", - "bytes": "^3.0.0", - "chalk": "^4.1.1", + "arg": "^5.0.1", + "chalk": "^4.1.2", "chokidar": "^3.5.2", - "color": "^3.1.3", - "cosmiconfig": "^7.0.0", + "color-name": "^1.1.4", + "cosmiconfig": "^7.0.1", "detective": "^5.2.0", - "didyoumean": "^1.2.1", + "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.5", - "fs-extra": "^10.0.0", - "glob-parent": "^6.0.0", - "html-tags": "^3.1.0", - "is-glob": "^4.0.1", - "lodash": "^4.17.21", - "lodash.topath": "^4.5.2", - "modern-normalize": "^1.1.0", - "node-emoji": "^1.8.1", + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", "normalize-path": "^3.0.0", "object-hash": "^2.2.0", "postcss-js": "^3.0.3", "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.5", + "postcss-nested": "5.0.6", "postcss-selector-parser": "^6.0.6", - "postcss-value-parser": "^4.1.0", - "pretty-hrtime": "^1.0.3", + "postcss-value-parser": "^4.2.0", "quick-lru": "^5.1.1", - "reduce-css-calc": "^2.1.8", "resolve": "^1.20.0", "tmp": "^0.2.1" }, @@ -8460,10 +8472,12 @@ } }, "node_modules/tailwindcss/node_modules/glob-parent": { - "version": "6.0.0", - "integrity": "sha512-Hdd4287VEJcZXUwv1l8a+vXC1GjOQqXe+VS30w/ypihpcnu9M1n3xeYeJu5CBpeEQj2nAab2xxz28GuA3vp4Ww==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "is-glob": "^4.0.3" }, "engines": { "node": ">=10.13.0" @@ -8623,6 +8637,7 @@ "node_modules/tmp": { "version": "0.2.1", "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, "dependencies": { "rimraf": "^3.0.0" }, @@ -8647,6 +8662,7 @@ "node_modules/to-regex-range": { "version": "5.0.1", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -8740,6 +8756,7 @@ "node_modules/universalify": { "version": "2.0.0", "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, "engines": { "node": ">= 10.0.0" } @@ -8793,7 +8810,8 @@ }, "node_modules/util-deprecate": { "version": "1.0.2", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, "node_modules/util/node_modules/inherits": { "version": "2.0.3", @@ -8842,15 +8860,6 @@ "loader-utils": "^1.0.2" } }, - "node_modules/vue-template-compiler": { - "version": "2.6.14", - "integrity": "sha512-ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g==", - "dev": true, - "dependencies": { - "de-indent": "^1.0.2", - "he": "^1.1.0" - } - }, "node_modules/watchpack": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.0.tgz", @@ -9312,7 +9321,8 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "node_modules/ws": { "version": "8.3.0", @@ -9338,6 +9348,7 @@ "node_modules/xtend": { "version": "4.0.2", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, "engines": { "node": ">=0.4" } @@ -9359,6 +9370,7 @@ "node_modules/yaml": { "version": "1.10.2", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, "engines": { "node": ">= 6" } @@ -9395,17 +9407,20 @@ "@algolia/cache-browser-local-storage": { "version": "4.10.2", "integrity": "sha512-B3NInwobEAim4J4Y0mgZermoi0DCXdTT/Q+4ehLamqUqxLw8To5zc9izjg7B8JaFSQsqflRdCeRmYEv2gYDY7g==", + "dev": true, "requires": { "@algolia/cache-common": "4.10.2" } }, "@algolia/cache-common": { "version": "4.10.2", - "integrity": "sha512-xcGbV0+6gLu2C7XoJdD+Pp6wWjROle6PNDsa6O21vS7fw1a03xb2bEnFdl1U31bs69P1z8IRy3h+8RVBouvhhw==" + "integrity": "sha512-xcGbV0+6gLu2C7XoJdD+Pp6wWjROle6PNDsa6O21vS7fw1a03xb2bEnFdl1U31bs69P1z8IRy3h+8RVBouvhhw==", + "dev": true }, "@algolia/cache-in-memory": { "version": "4.10.2", "integrity": "sha512-zPIcxHQEJXy+M35A+v9Y5u5BAQOKR2aFK0kYpAdW/OrgxYcrFHtVCxwIWB/ZhGbkDtzCW8/8tJeddcD5YsHX9Q==", + "dev": true, "requires": { "@algolia/cache-common": "4.10.2" } @@ -9413,6 +9428,7 @@ "@algolia/client-account": { "version": "4.10.2", "integrity": "sha512-iuIU+xUtjgR9p4Hpujlr8mePDPSrVIk3peg+RAUhxniLBDaI+OhgHyhP6Lmh9flWk+JfRg91Rhk46xuxMLqwfA==", + "dev": true, "requires": { "@algolia/client-common": "4.10.2", "@algolia/client-search": "4.10.2", @@ -9422,6 +9438,7 @@ "@algolia/client-analytics": { "version": "4.10.2", "integrity": "sha512-u47J65NHs0fMryDrMeuLMGjXDOKt/muF9WlfbMslT2Cvdd7PZwl9KYnT7xMhnmBB8TDiDMmEQkDykhnCOnwVNw==", + "dev": true, "requires": { "@algolia/client-common": "4.10.2", "@algolia/client-search": "4.10.2", @@ -9432,6 +9449,7 @@ "@algolia/client-common": { "version": "4.10.2", "integrity": "sha512-sfgZCv9ha9aHbe3ErAYb1blg2qx4XTLvQqP1jq8asU75rrH9XBTtSzQQO43GlArwhtwCHLgcWquN3WgPlLzkiQ==", + "dev": true, "requires": { "@algolia/requester-common": "4.10.2", "@algolia/transporter": "4.10.2" @@ -9440,6 +9458,7 @@ "@algolia/client-personalization": { "version": "4.10.2", "integrity": "sha512-2UhUNo/czfA/keOC3+vFyMnFGV/E1Zkm+ek9Fsk/9miS39UMhx2CmH5vKSIJ7jxLSin7zBaCwKt65phfYty1pg==", + "dev": true, "requires": { "@algolia/client-common": "4.10.2", "@algolia/requester-common": "4.10.2", @@ -9449,6 +9468,7 @@ "@algolia/client-search": { "version": "4.10.2", "integrity": "sha512-ZdOh6XS6Y9bcekfG4y0VhdoIYfsTounsgXX4Bt3X2RCcmY3uotgaq2EVY58E6q6nvfgBfPHW18+AZCHKTWHAAw==", + "dev": true, "requires": { "@algolia/client-common": "4.10.2", "@algolia/requester-common": "4.10.2", @@ -9457,11 +9477,13 @@ }, "@algolia/logger-common": { "version": "4.10.2", - "integrity": "sha512-UJaU6arzmW+FT5fCv5NIbxNMtEoGcf+UENmZxxu7k7UWPARR2XL4ljJ45Jv14Z5dlz32LXWtR1PRmNfkDMk22Q==" + "integrity": "sha512-UJaU6arzmW+FT5fCv5NIbxNMtEoGcf+UENmZxxu7k7UWPARR2XL4ljJ45Jv14Z5dlz32LXWtR1PRmNfkDMk22Q==", + "dev": true }, "@algolia/logger-console": { "version": "4.10.2", "integrity": "sha512-JrCrZ7CGs/TsyNR2AWe9Vdd6rsuxfvfcpqbu+CY7LBUYEnV8GERkf7FnDNaKVNsFJqClILCGh3U8CzQ1G5L+kA==", + "dev": true, "requires": { "@algolia/logger-common": "4.10.2" } @@ -9469,17 +9491,20 @@ "@algolia/requester-browser-xhr": { "version": "4.10.2", "integrity": "sha512-LveaAp7/oCBotv1aZ4VHz8fCcJA7v/28ayh+Ljlm+hYXsxgs6NAYKz7iBpxGN7q5MV8GM+MThRYNFoT0cHTMxQ==", + "dev": true, "requires": { "@algolia/requester-common": "4.10.2" } }, "@algolia/requester-common": { "version": "4.10.2", - "integrity": "sha512-3J2W0fAaURLGK0lEGeNb8eWJnQcsu+oIcfJTCIYkYT5T9w21M65kUUyD9QSf/K137qQts3tzGniUR3LxfovlXA==" + "integrity": "sha512-3J2W0fAaURLGK0lEGeNb8eWJnQcsu+oIcfJTCIYkYT5T9w21M65kUUyD9QSf/K137qQts3tzGniUR3LxfovlXA==", + "dev": true }, "@algolia/requester-node-http": { "version": "4.10.2", "integrity": "sha512-IBqsalCGgn0CrOP1PKRB5rufEOvHlrSQUFEGXZ8mxmE/zU8CLX2LKqdHbEFeNDLFl+l+8HW5BGVDGD2rvG+hSg==", + "dev": true, "requires": { "@algolia/requester-common": "4.10.2" } @@ -9487,6 +9512,7 @@ "@algolia/transporter": { "version": "4.10.2", "integrity": "sha512-I3QDRSookQtPSUEnxT2XCShhipCT4beJBpWhteNwMrWQF/SqTsveqSR6bX0G49lDh9MOmYrOlCegteuKuT/tEw==", + "dev": true, "requires": { "@algolia/cache-common": "4.10.2", "@algolia/logger-common": "4.10.2", @@ -9497,6 +9523,7 @@ "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.0.tgz", "integrity": "sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA==", + "dev": true, "requires": { "@babel/highlight": "^7.16.0" } @@ -9776,7 +9803,8 @@ "@babel/helper-validator-identifier": { "version": "7.15.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==" + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", + "dev": true }, "@babel/helper-validator-option": { "version": "7.14.5", @@ -9811,6 +9839,7 @@ "version": "7.16.0", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.0.tgz", "integrity": "sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g==", + "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.15.7", "chalk": "^2.0.0", @@ -9821,6 +9850,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -9829,6 +9859,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -9839,6 +9870,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -9846,17 +9878,20 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -10614,6 +10649,7 @@ "version": "7.16.3", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz", "integrity": "sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==", + "dev": true, "requires": { "regenerator-runtime": "^0.13.4" } @@ -10662,16 +10698,10 @@ "integrity": "sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA==", "dev": true }, - "@fullhuman/postcss-purgecss": { - "version": "4.0.3", - "integrity": "sha512-/EnQ9UDWGGqHkn1UKAwSgh+gJHPKmD+Z+5dQ4gWT4qq2NUyez3zqAfZNwFH3eSgmgO+wjTXfhlLchx2M9/K+7Q==", - "requires": { - "purgecss": "^4.0.3" - } - }, "@nodelib/fs.scandir": { "version": "2.1.5", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "requires": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -10679,11 +10709,13 @@ }, "@nodelib/fs.stat": { "version": "2.0.5", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true }, "@nodelib/fs.walk": { "version": "1.2.7", "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", + "dev": true, "requires": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -10692,18 +10724,23 @@ "@tailwindcss/aspect-ratio": { "version": "0.2.1", "integrity": "sha512-aDFi80aHQ3JM3symJ5iKU70lm151ugIGFCI0yRZGpyjgQSDS+Fbe93QwypC1tCEllQE8p0S7TUu20ih1b9IKLA==", + "dev": true, "requires": {} }, "@tailwindcss/forms": { - "version": "0.2.1", - "integrity": "sha512-czfvEdY+J2Ogfd6RUSr/ZSUmDxTujr34M++YLnp2cCPC3oJ4kFvFMaRXA6cEXKw7F1hJuapdjXRjsXIEXGgORg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.4.0.tgz", + "integrity": "sha512-DeaQBx6EgEeuZPQACvC+mKneJsD8am1uiJugjgQK1+/Vt+Ai0GpFBC2T2fqnUad71WgOxyrZPE6BG1VaI6YqfQ==", + "dev": true, "requires": { "mini-svg-data-uri": "^1.2.3" } }, "@tailwindcss/typography": { - "version": "0.4.1", - "integrity": "sha512-ovPPLUhs7zAIJfr0y1dbGlyCuPhpuv/jpBoFgqAc658DWGGrOBWBMpAWLw2KlzbNeVk4YBJMzue1ekvIbdw6XA==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.0.tgz", + "integrity": "sha512-1p/3C6C+JJziS/ghtG8ACYalbA2SyLJY27Pm33cVTlAoY6VQ7zfm2H64cPxUMBkVIlWXTtWHhZcZJPobMRmQAA==", + "dev": true, "requires": { "lodash.castarray": "^4.4.0", "lodash.isplainobject": "^4.0.6", @@ -10880,7 +10917,8 @@ }, "@types/parse-json": { "version": "4.0.0", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true }, "@types/retry": { "version": "0.12.1", @@ -10897,6 +10935,7 @@ "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "dev": true, "requires": { "@vue/shared": "3.1.5" } @@ -10904,7 +10943,8 @@ "@vue/shared": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==" + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", + "dev": true }, "@webassemblyjs/ast": { "version": "1.11.1", @@ -11099,11 +11139,13 @@ }, "acorn": { "version": "7.4.1", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true }, "acorn-node": { "version": "1.8.2", "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", + "dev": true, "requires": { "acorn": "^7.0.0", "acorn-walk": "^7.0.0", @@ -11112,7 +11154,8 @@ }, "acorn-walk": { "version": "7.2.0", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==" + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "dev": true }, "aggregate-error": { "version": "3.1.0", @@ -11173,6 +11216,7 @@ "algoliasearch": { "version": "4.10.2", "integrity": "sha512-BAYCe97XRfO15irJKBRjBnrp9tSqN0jppklLIXKdtUcXlibcPQtuAeGUP2cPiz6bJd3ISuoYzLFNt4/fQYtLMw==", + "dev": true, "requires": { "@algolia/cache-browser-local-storage": "4.10.2", "@algolia/cache-common": "4.10.2", @@ -11200,6 +11244,7 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.5.2.tgz", "integrity": "sha512-O80pq9CyyxelitgU9aEiP2HyRAAqZjA9sgJgxccuhr+XAVAJI1F/hPLVgkqGFPSvHcyDnd9biEyizY95QMgiFw==", + "dev": true, "requires": { "@vue/reactivity": "~3.1.1" } @@ -11227,6 +11272,7 @@ "ansi-styles": { "version": "4.3.0", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -11234,14 +11280,17 @@ "anymatch": { "version": "3.1.2", "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" } }, "arg": { - "version": "5.0.0", - "integrity": "sha512-4P8Zm2H+BRS+c/xX1LrHw0qKpEhdlZjLCgWy+d78T9vqa2Z2SiD2wMrYuWIAFy5IZUD7nnNXroRttz+0RzlrzQ==" + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz", + "integrity": "sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA==", + "dev": true }, "array-flatten": { "version": "2.1.2", @@ -11309,6 +11358,7 @@ "version": "10.4.0", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.0.tgz", "integrity": "sha512-7FdJ1ONtwzV1G43GDD0kpVMn/qbiNqyOPMFTX5nRffI+7vgWoFEc6DcXOxHJxrWNDXrZh18eDsZjvZGUljSRGA==", + "dev": true, "requires": { "browserslist": "^4.17.5", "caniuse-lite": "^1.0.30001272", @@ -11388,7 +11438,8 @@ }, "balanced-match": { "version": "1.0.2", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, "base64-js": { "version": "1.5.1", @@ -11408,7 +11459,8 @@ }, "binary-extensions": { "version": "2.2.0", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true }, "bn.js": { "version": "5.2.0", @@ -11473,6 +11525,7 @@ "brace-expansion": { "version": "1.1.11", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -11481,6 +11534,7 @@ "braces": { "version": "3.0.2", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, "requires": { "fill-range": "^7.0.1" } @@ -11578,6 +11632,7 @@ "version": "4.18.1", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz", "integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==", + "dev": true, "requires": { "caniuse-lite": "^1.0.30001280", "electron-to-chromium": "^1.3.896", @@ -11619,7 +11674,8 @@ }, "bytes": { "version": "3.1.0", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true }, "call-bind": { "version": "1.0.2", @@ -11633,7 +11689,8 @@ }, "callsites": { "version": "3.1.0", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true }, "camel-case": { "version": "4.1.2", @@ -11646,7 +11703,8 @@ }, "camelcase-css": { "version": "2.0.1", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true }, "caniuse-api": { "version": "3.0.0", @@ -11663,12 +11721,14 @@ "caniuse-lite": { "version": "1.0.30001283", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001283.tgz", - "integrity": "sha512-9RoKo841j1GQFSJz/nCXOj0sD7tHBtlowjYlrqIUS812x9/emfBLBt6IyMz1zIaYc/eRL8Cs6HPUVi2Hzq4sIg==" + "integrity": "sha512-9RoKo841j1GQFSJz/nCXOj0sD7tHBtlowjYlrqIUS812x9/emfBLBt6IyMz1zIaYc/eRL8Cs6HPUVi2Hzq4sIg==", + "dev": true }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -11682,6 +11742,7 @@ "choices.js": { "version": "9.0.1", "integrity": "sha512-JgpeDY0Tmg7tqY6jaW/druSklJSt7W68tXFJIw0GSGWmO37SDAL8o60eICNGbzIODjj02VNNtf5h6TgoHDtCsA==", + "dev": true, "requires": { "deepmerge": "^4.2.0", "fuse.js": "^3.4.5", @@ -11691,6 +11752,7 @@ "chokidar": { "version": "3.5.2", "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", + "dev": true, "requires": { "anymatch": "~3.1.2", "braces": "~3.0.2", @@ -11779,45 +11841,18 @@ "integrity": "sha512-NAyuk1DnCotRaDZIS5kJ4sptgkwOeYqElird10yziN5JBuwYOGkOTguhNcPn5g344IfylZecxNYZAVXgv19p5Q==", "dev": true }, - "color": { - "version": "3.1.3", - "integrity": "sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==", - "requires": { - "color-convert": "^1.9.1", - "color-string": "^1.5.4" - }, - "dependencies": { - "color-convert": { - "version": "1.9.3", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" - } - } - }, "color-convert": { "version": "2.0.1", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, "requires": { "color-name": "~1.1.4" } }, "color-name": { "version": "1.1.4", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "color-string": { - "version": "1.5.5", - "integrity": "sha512-jgIoum0OfQfq9Whcfc2z/VhCNcmQjWbey6qBX0vqt7YICflUmBCh9E9CiQD5GSJ+Uehixm3NUwHVhqUAWRivZg==", - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, "colord": { "version": "2.9.1", @@ -11913,7 +11948,8 @@ }, "concat-map": { "version": "0.0.1", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "connect-history-api-fallback": { "version": "1.6.0", @@ -11996,8 +12032,10 @@ "dev": true }, "cosmiconfig": { - "version": "7.0.0", - "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", + "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "dev": true, "requires": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", @@ -12171,10 +12209,6 @@ } } }, - "css-unit-converter": { - "version": "1.1.2", - "integrity": "sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA==" - }, "css-what": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz", @@ -12183,7 +12217,8 @@ }, "cssesc": { "version": "3.0.0", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true }, "cssnano": { "version": "5.0.11", @@ -12250,11 +12285,6 @@ "css-tree": "^1.1.2" } }, - "de-indent": { - "version": "1.0.2", - "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", - "dev": true - }, "debug": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", @@ -12280,7 +12310,8 @@ }, "deepmerge": { "version": "4.2.2", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==" + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true }, "default-gateway": { "version": "6.0.3", @@ -12308,7 +12339,8 @@ }, "defined": { "version": "1.0.0", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" + "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "dev": true }, "del": { "version": "6.0.0", @@ -12372,6 +12404,7 @@ "detective": { "version": "5.2.0", "integrity": "sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==", + "dev": true, "requires": { "acorn-node": "^1.6.1", "defined": "^1.0.0", @@ -12379,8 +12412,10 @@ } }, "didyoumean": { - "version": "1.2.1", - "integrity": "sha1-6S7f2tplN9SE1zwBcv0eugxJdv8=" + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true }, "diffie-hellman": { "version": "5.0.3", @@ -12409,7 +12444,8 @@ }, "dlv": { "version": "1.1.3", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true }, "dns-equal": { "version": "1.0.0", @@ -12522,7 +12558,8 @@ "electron-to-chromium": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.3.tgz", - "integrity": "sha512-hfpppjYhqIZB8jrNb0rNceQRkSnBN7QJl3W26O1jUv3F3BkQknqy1YTqVXkFnIcFtBc3Qnv5M7r5Lez2iOLgZA==" + "integrity": "sha512-hfpppjYhqIZB8jrNb0rNceQRkSnBN7QJl3W26O1jUv3F3BkQknqy1YTqVXkFnIcFtBc3Qnv5M7r5Lez2iOLgZA==", + "dev": true }, "elliptic": { "version": "6.5.4", @@ -12585,6 +12622,7 @@ "error-ex": { "version": "1.3.2", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "requires": { "is-arrayish": "^0.2.1" } @@ -12597,7 +12635,8 @@ }, "escalade": { "version": "3.1.1", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true }, "escape-html": { "version": "1.0.3", @@ -12607,7 +12646,8 @@ }, "escape-string-regexp": { "version": "1.0.5", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "eslint-scope": { "version": "5.1.1", @@ -12754,15 +12794,16 @@ "dev": true }, "fast-glob": { - "version": "3.2.5", - "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", + "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", + "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" + "micromatch": "^4.0.4" } }, "fast-json-stable-stringify": { @@ -12779,6 +12820,7 @@ "fastq": { "version": "1.11.0", "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "dev": true, "requires": { "reusify": "^1.0.4" } @@ -12839,6 +12881,7 @@ "fill-range": { "version": "7.0.1", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, "requires": { "to-regex-range": "^5.0.1" } @@ -12909,7 +12952,8 @@ }, "fraction.js": { "version": "4.1.1", - "integrity": "sha512-MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==" + "integrity": "sha512-MHOhvvxHTfRFpF1geTK9czMIZ6xclsEor2wkIGYYq+PxcQqT7vStJqjhe6S1TenZrMZzo+wlqOufBDVepUEgPg==", + "dev": true }, "fresh": { "version": "0.5.2", @@ -12920,6 +12964,7 @@ "fs-extra": { "version": "10.0.0", "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "dev": true, "requires": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -12934,20 +12979,24 @@ }, "fs.realpath": { "version": "1.0.0", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "fsevents": { "version": "2.3.2", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, "optional": true }, "function-bind": { "version": "1.1.1", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "fuse.js": { "version": "3.6.1", - "integrity": "sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw==" + "integrity": "sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw==", + "dev": true }, "gensync": { "version": "1.0.0-beta.2", @@ -12982,6 +13031,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -12994,6 +13044,7 @@ "glob-parent": { "version": "5.1.2", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, "requires": { "is-glob": "^4.0.1" } @@ -13027,7 +13078,8 @@ }, "graceful-fs": { "version": "4.2.6", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true }, "growly": { "version": "1.3.0", @@ -13044,13 +13096,15 @@ "has": { "version": "1.0.3", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, "requires": { "function-bind": "^1.1.1" } }, "has-flag": { "version": "4.0.0", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true }, "has-symbols": { "version": "1.0.2", @@ -13230,10 +13284,6 @@ } } }, - "html-tags": { - "version": "3.1.0", - "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==" - }, "htmlparser2": { "version": "4.1.0", "integrity": "sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==", @@ -13363,6 +13413,7 @@ "import-cwd": { "version": "3.0.0", "integrity": "sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==", + "dev": true, "requires": { "import-from": "^3.0.0" } @@ -13370,6 +13421,7 @@ "import-fresh": { "version": "3.3.0", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -13378,13 +13430,15 @@ "import-from": { "version": "3.0.0", "integrity": "sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ==", + "dev": true, "requires": { "resolve-from": "^5.0.0" }, "dependencies": { "resolve-from": { "version": "5.0.0", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==" + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true } } }, @@ -13407,6 +13461,7 @@ "inflight": { "version": "1.0.6", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -13414,7 +13469,8 @@ }, "inherits": { "version": "2.0.4", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, "internal-ip": { "version": "6.2.0", @@ -13478,11 +13534,13 @@ }, "is-arrayish": { "version": "0.2.1", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true }, "is-binary-path": { "version": "2.1.0", "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, "requires": { "binary-extensions": "^2.0.0" } @@ -13495,6 +13553,7 @@ "is-core-module": { "version": "2.4.0", "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "dev": true, "requires": { "has": "^1.0.3" } @@ -13516,7 +13575,8 @@ }, "is-extglob": { "version": "2.1.1", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true }, "is-fullwidth-code-point": { "version": "3.0.0", @@ -13524,8 +13584,10 @@ "dev": true }, "is-glob": { - "version": "4.0.1", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, "requires": { "is-extglob": "^2.1.1" } @@ -13541,7 +13603,8 @@ }, "is-number": { "version": "7.0.0", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true }, "is-path-cwd": { "version": "2.2.0", @@ -13643,7 +13706,8 @@ "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true }, "jsesc": { "version": "2.5.2", @@ -13658,7 +13722,8 @@ }, "json-parse-even-better-errors": { "version": "2.3.1", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "json-schema-traverse": { "version": "0.4.1", @@ -13676,6 +13741,7 @@ "jsonfile": { "version": "6.1.0", "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, "requires": { "graceful-fs": "^4.1.6", "universalify": "^2.0.0" @@ -13793,11 +13859,13 @@ }, "lilconfig": { "version": "2.0.3", - "integrity": "sha512-EHKqr/+ZvdKCifpNrJCKxBTgk5XupZA3y/aCPY9mxfgBzmgh93Mt/WqjjQ38oMxXuvDokaKiM3lAgvSH2sjtHg==" + "integrity": "sha512-EHKqr/+ZvdKCifpNrJCKxBTgk5XupZA3y/aCPY9mxfgBzmgh93Mt/WqjjQ38oMxXuvDokaKiM3lAgvSH2sjtHg==", + "dev": true }, "lines-and-columns": { "version": "1.1.6", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true }, "loader-runner": { "version": "4.2.0", @@ -13835,11 +13903,13 @@ }, "lodash": { "version": "4.17.21", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "lodash.castarray": { "version": "4.4.0", - "integrity": "sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU=" + "integrity": "sha1-wCUTUV4wna3dTCTGDP3c9ZdtkRU=", + "dev": true }, "lodash.debounce": { "version": "4.0.8", @@ -13849,7 +13919,8 @@ }, "lodash.isplainobject": { "version": "4.0.6", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "dev": true }, "lodash.memoize": { "version": "4.1.2", @@ -13859,19 +13930,13 @@ }, "lodash.merge": { "version": "4.6.2", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" - }, - "lodash.toarray": { - "version": "4.4.0", - "integrity": "sha1-JMS/zWsvuji/0FlNsRedjptlZWE=" - }, - "lodash.topath": { - "version": "4.5.2", - "integrity": "sha1-NhY1Hzu6YZlKCTGYlmC9AyVP0Ak=" + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, "lodash.uniq": { "version": "4.5.0", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true }, "lower-case": { "version": "2.0.2", @@ -13959,7 +14024,8 @@ }, "merge2": { "version": "1.4.1", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true }, "methods": { "version": "1.1.2", @@ -13970,6 +14036,7 @@ "micromatch": { "version": "4.0.4", "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, "requires": { "braces": "^3.0.1", "picomatch": "^2.2.3" @@ -14053,7 +14120,8 @@ }, "mini-svg-data-uri": { "version": "1.3.3", - "integrity": "sha512-+fA2oRcR1dJI/7ITmeQJDrYWks0wodlOz0pAEhKYJ2IVc1z0AnwJUsKY2fzFmPAM3Jo9J0rBx8JAA9QQSJ5PuA==" + "integrity": "sha512-+fA2oRcR1dJI/7ITmeQJDrYWks0wodlOz0pAEhKYJ2IVc1z0AnwJUsKY2fzFmPAM3Jo9J0rBx8JAA9QQSJ5PuA==", + "dev": true }, "minimalistic-assert": { "version": "1.0.1", @@ -14068,13 +14136,15 @@ "minimatch": { "version": "3.0.4", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { "version": "1.2.5", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true }, "mkdirp": { "version": "0.5.5", @@ -14085,10 +14155,6 @@ "minimist": "^1.2.5" } }, - "modern-normalize": { - "version": "1.1.0", - "integrity": "sha512-2lMlY1Yc1+CUy0gw4H95uNN7vjbpoED7NNRSBHE25nWfLBdmMzFCsPshlzbxHz+gYMcBEUN8V4pU16prcdPSgA==" - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -14114,7 +14180,8 @@ "nanoid": { "version": "3.1.30", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", - "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==" + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", + "dev": true }, "negotiator": { "version": "0.6.2", @@ -14136,13 +14203,6 @@ "tslib": "^2.0.3" } }, - "node-emoji": { - "version": "1.10.0", - "integrity": "sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw==", - "requires": { - "lodash.toarray": "^4.4.0" - } - }, "node-forge": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", @@ -14204,15 +14264,18 @@ "node-releases": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==" + "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==", + "dev": true }, "normalize-path": { "version": "3.0.0", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true }, "normalize-range": { "version": "0.1.2", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=" + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true }, "normalize-url": { "version": "6.1.0", @@ -14245,7 +14308,8 @@ }, "object-hash": { "version": "2.2.0", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==" + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "dev": true }, "object-is": { "version": "1.1.5", @@ -14299,6 +14363,7 @@ "once": { "version": "1.4.0", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1" } @@ -14417,6 +14482,7 @@ "parent-module": { "version": "1.0.1", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, "requires": { "callsites": "^3.0.0" } @@ -14436,6 +14502,7 @@ "parse-json": { "version": "5.2.0", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -14471,7 +14538,8 @@ }, "path-is-absolute": { "version": "1.0.1", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true }, "path-key": { "version": "3.1.1", @@ -14481,7 +14549,8 @@ }, "path-parse": { "version": "1.0.7", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "path-to-regexp": { "version": "0.1.7", @@ -14491,7 +14560,8 @@ }, "path-type": { "version": "4.0.0", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true }, "pbkdf2": { "version": "3.1.2", @@ -14508,11 +14578,13 @@ "picocolors": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true }, "picomatch": { "version": "2.3.0", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true }, "pkg-dir": { "version": "4.2.0", @@ -14546,9 +14618,10 @@ } }, "postcss": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.1.tgz", - "integrity": "sha512-WqLs/TTzXdG+/A4ZOOK9WDZiikrRaiA+eoEb/jz2DT9KUhMNHgP7yKPO8vwi62ZCsb703Gwb7BMZwDzI54Y2Ag==", + "version": "8.4.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", + "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "dev": true, "requires": { "nanoid": "^3.1.30", "picocolors": "^1.0.0", @@ -14617,6 +14690,7 @@ "postcss-js": { "version": "3.0.3", "integrity": "sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw==", + "dev": true, "requires": { "camelcase-css": "^2.0.1", "postcss": "^8.1.6" @@ -14625,6 +14699,7 @@ "postcss-load-config": { "version": "3.1.0", "integrity": "sha512-ipM8Ds01ZUophjDTQYSVP70slFSYg3T0/zyfII5vzhN6V57YSxMgG5syXuwi5VtS8wSf3iL30v0uBdoIVx4Q0g==", + "dev": true, "requires": { "import-cwd": "^3.0.0", "lilconfig": "^2.0.3", @@ -14739,10 +14814,12 @@ } }, "postcss-nested": { - "version": "5.0.5", - "integrity": "sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-5.0.6.tgz", + "integrity": "sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==", + "dev": true, "requires": { - "postcss-selector-parser": "^6.0.4" + "postcss-selector-parser": "^6.0.6" } }, "postcss-normalize-charset": { @@ -14863,6 +14940,7 @@ "postcss-selector-parser": { "version": "6.0.6", "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, "requires": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -14889,12 +14967,10 @@ } }, "postcss-value-parser": { - "version": "4.1.0", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" - }, - "pretty-hrtime": { - "version": "1.0.3", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true }, "pretty-time": { "version": "1.1.0", @@ -14954,22 +15030,6 @@ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, - "purgecss": { - "version": "4.0.3", - "integrity": "sha512-PYOIn5ibRIP34PBU9zohUcCI09c7drPJJtTDAc0Q6QlRz2/CHQ8ywGLdE7ZhxU2VTqB7p5wkvj5Qcm05Rz3Jmw==", - "requires": { - "commander": "^6.0.0", - "glob": "^7.0.0", - "postcss": "^8.2.1", - "postcss-selector-parser": "^6.0.2" - }, - "dependencies": { - "commander": { - "version": "6.2.1", - "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==" - } - } - }, "qs": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", @@ -14988,11 +15048,13 @@ }, "queue-microtask": { "version": "1.2.3", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true }, "quick-lru": { "version": "5.1.1", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "dev": true }, "randombytes": { "version": "2.1.0", @@ -15056,6 +15118,7 @@ "readdirp": { "version": "3.6.0", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, "requires": { "picomatch": "^2.2.1" } @@ -15069,23 +15132,10 @@ "resolve": "^1.9.0" } }, - "reduce-css-calc": { - "version": "2.1.8", - "integrity": "sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg==", - "requires": { - "css-unit-converter": "^1.1.1", - "postcss-value-parser": "^3.3.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==" - } - } - }, "redux": { "version": "4.1.0", "integrity": "sha512-uI2dQN43zqLWCt6B/BMGRMY6db7TTY4qeHHfGeKb3EOhmOKjU3KdWvNLJyqaHRksv/ErdNH7cFZWg9jXtewy4g==", + "dev": true, "requires": { "@babel/runtime": "^7.9.2" } @@ -15107,7 +15157,8 @@ }, "regenerator-runtime": { "version": "0.13.7", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", + "dev": true }, "regenerator-transform": { "version": "0.14.5", @@ -15196,6 +15247,7 @@ "resolve": { "version": "1.20.0", "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, "requires": { "is-core-module": "^2.2.0", "path-parse": "^1.0.6" @@ -15220,7 +15272,8 @@ }, "resolve-from": { "version": "4.0.0", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true }, "retry": { "version": "0.13.1", @@ -15230,11 +15283,13 @@ }, "reusify": { "version": "1.0.4", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true }, "rimraf": { "version": "3.0.2", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, "requires": { "glob": "^7.1.3" } @@ -15251,6 +15306,7 @@ "run-parallel": { "version": "1.2.0", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, "requires": { "queue-microtask": "^1.2.2" } @@ -15478,19 +15534,6 @@ "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==", "dev": true }, - "simple-swizzle": { - "version": "0.2.2", - "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", - "requires": { - "is-arrayish": "^0.3.1" - }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" - } - } - }, "slash": { "version": "3.0.0", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", @@ -15522,7 +15565,8 @@ "source-map-js": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz", - "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==" + "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==", + "dev": true }, "source-map-support": { "version": "0.5.21", @@ -15705,6 +15749,7 @@ "supports-color": { "version": "7.2.0", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -15725,47 +15770,41 @@ } }, "tailwindcss": { - "version": "2.2.4", - "integrity": "sha512-OdBCPgazNNsknSP+JfrPzkay9aqKjhKtFhbhgxHgvEFdHy/GuRPo2SCJ4w1SFTN8H6FPI4m6qD/Jj20NWY1GkA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.0.2.tgz", + "integrity": "sha512-i1KpjYnGYftjzdAth6jA5iMPjhxpUkk5L6DafhfnQs+KiiWaThYxmk47Weh4oFH1mZqP6MuiQNHxtoRVPOraLg==", + "dev": true, "requires": { - "@fullhuman/postcss-purgecss": "^4.0.3", - "arg": "^5.0.0", - "bytes": "^3.0.0", - "chalk": "^4.1.1", + "arg": "^5.0.1", + "chalk": "^4.1.2", "chokidar": "^3.5.2", - "color": "^3.1.3", - "cosmiconfig": "^7.0.0", + "color-name": "^1.1.4", + "cosmiconfig": "^7.0.1", "detective": "^5.2.0", - "didyoumean": "^1.2.1", + "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.5", - "fs-extra": "^10.0.0", - "glob-parent": "^6.0.0", - "html-tags": "^3.1.0", - "is-glob": "^4.0.1", - "lodash": "^4.17.21", - "lodash.topath": "^4.5.2", - "modern-normalize": "^1.1.0", - "node-emoji": "^1.8.1", + "fast-glob": "^3.2.7", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", "normalize-path": "^3.0.0", "object-hash": "^2.2.0", "postcss-js": "^3.0.3", "postcss-load-config": "^3.1.0", - "postcss-nested": "5.0.5", + "postcss-nested": "5.0.6", "postcss-selector-parser": "^6.0.6", - "postcss-value-parser": "^4.1.0", - "pretty-hrtime": "^1.0.3", + "postcss-value-parser": "^4.2.0", "quick-lru": "^5.1.1", - "reduce-css-calc": "^2.1.8", "resolve": "^1.20.0", "tmp": "^0.2.1" }, "dependencies": { "glob-parent": { - "version": "6.0.0", - "integrity": "sha512-Hdd4287VEJcZXUwv1l8a+vXC1GjOQqXe+VS30w/ypihpcnu9M1n3xeYeJu5CBpeEQj2nAab2xxz28GuA3vp4Ww==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, "requires": { - "is-glob": "^4.0.1" + "is-glob": "^4.0.3" } } } @@ -15868,6 +15907,7 @@ "tmp": { "version": "0.2.1", "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dev": true, "requires": { "rimraf": "^3.0.0" } @@ -15886,6 +15926,7 @@ "to-regex-range": { "version": "5.0.1", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, "requires": { "is-number": "^7.0.0" } @@ -15951,7 +15992,8 @@ }, "universalify": { "version": "2.0.0", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true }, "unpipe": { "version": "1.0.0", @@ -16007,7 +16049,8 @@ }, "util-deprecate": { "version": "1.0.2", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, "utils-merge": { "version": "1.0.1", @@ -16041,15 +16084,6 @@ "loader-utils": "^1.0.2" } }, - "vue-template-compiler": { - "version": "2.6.14", - "integrity": "sha512-ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g==", - "dev": true, - "requires": { - "de-indent": "^1.0.2", - "he": "^1.1.0" - } - }, "watchpack": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.0.tgz", @@ -16365,7 +16399,8 @@ }, "wrappy": { "version": "1.0.2", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "ws": { "version": "8.3.0", @@ -16376,7 +16411,8 @@ }, "xtend": { "version": "4.0.2", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true }, "y18n": { "version": "5.0.8", @@ -16391,7 +16427,8 @@ }, "yaml": { "version": "1.10.2", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true }, "yargs": { "version": "17.2.1", diff --git a/package.json b/package.json index c4d7056a5..bf5216ca8 100644 --- a/package.json +++ b/package.json @@ -10,20 +10,17 @@ "production": "mix --production" }, "devDependencies": { + "@tailwindcss/aspect-ratio": "^0.2.0", + "@tailwindcss/forms": "^0.4.0", + "@tailwindcss/typography": "^0.5.0", + "autoprefixer": "^10.4.0", "axios": "^0.21.4", "highlight.js": "^10.5.0", "laravel-mix": "^6.0.23", - "vue-template-compiler": "^2.6.12" - }, - "dependencies": { - "@tailwindcss/aspect-ratio": "^0.2.0", - "@tailwindcss/forms": "^0.2.1", - "@tailwindcss/typography": "^0.4.0", + "postcss": "^8.4.5", + "tailwindcss": "^3.0.2", "algoliasearch": "^4.8.4", "alpinejs": "^3.0", - "autoprefixer": "^10.2.4", - "choices.js": "^9.0.1", - "postcss": "^8.2.10", - "tailwindcss": "^2.0.2" + "choices.js": "^9.0.1" } -} +} \ No newline at end of file diff --git a/resources/css/buttons.css b/resources/css/buttons.css index 8cbc747c0..820815bee 100644 --- a/resources/css/buttons.css +++ b/resources/css/buttons.css @@ -7,7 +7,7 @@ } .button-primary { - @apply text-white bg-lio-500; + @apply text-white bg-lio-500 !important; } .button-primary:hover { diff --git a/resources/views/admin/articles.blade.php b/resources/views/admin/articles.blade.php index 2c6c1830b..692118304 100644 --- a/resources/views/admin/articles.blade.php +++ b/resources/views/admin/articles.blade.php @@ -31,7 +31,7 @@
-
+
diff --git a/resources/views/admin/partials/_navigation.blade.php b/resources/views/admin/partials/_navigation.blade.php index 41275ee02..0f9b3a496 100644 --- a/resources/views/admin/partials/_navigation.blade.php +++ b/resources/views/admin/partials/_navigation.blade.php @@ -1,6 +1,6 @@
-
-
+
+

Admin

@@ -23,7 +23,7 @@
-
+
diff --git a/resources/views/admin/users.blade.php b/resources/views/admin/users.blade.php index 4b09aecf4..ed3044b2c 100644 --- a/resources/views/admin/users.blade.php +++ b/resources/views/admin/users.blade.php @@ -30,7 +30,7 @@
-
+
diff --git a/resources/views/articles/overview.blade.php b/resources/views/articles/overview.blade.php index 037bd18af..36d3b8045 100644 --- a/resources/views/articles/overview.blade.php +++ b/resources/views/articles/overview.blade.php @@ -18,7 +18,7 @@ Share your article with our 45,000 Twitter followers. -
+
Share Your Article @@ -46,7 +46,7 @@