diff --git a/.editorconfig b/.editorconfig
index cbb6ac5a..1feb43fc 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -1,11 +1,25 @@
+# EditorConfig helps developers define and maintain consistent
+# coding styles between different editors and IDEs
+# editorconfig.org
+
root = true
+
[*]
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
indent_style = space
+indent_size = 2
+
+[*.{diff,md}]
+trim_trailing_whitespace = false
+
+[*.{php,xml,json}]
indent_size = 4
-[*.md]
+
+[{tsconfig.json,prettierrc.json}]
indent_size = 2
-trim_trailing_whitespace = false
\ No newline at end of file
+
+[*.neon]
+indent_style = tab
diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml
index 5e033cf4..e3a56505 100644
--- a/.github/workflows/backend.yml
+++ b/.github/workflows/backend.yml
@@ -4,7 +4,7 @@ on: [workflow_dispatch, push, pull_request]
jobs:
run:
- uses: flarum/framework/.github/workflows/REUSABLE_backend.yml@1.x
+ uses: flarum/framework/.github/workflows/REUSABLE_backend.yml@2.x
with:
enable_backend_testing: true
enable_phpstan: true
diff --git a/.github/workflows/frontend.yml b/.github/workflows/frontend.yml
index b791247e..24b86209 100644
--- a/.github/workflows/frontend.yml
+++ b/.github/workflows/frontend.yml
@@ -4,7 +4,7 @@ on: [workflow_dispatch, push, pull_request]
jobs:
run:
- uses: flarum/framework/.github/workflows/REUSABLE_frontend.yml@1.x
+ uses: flarum/framework/.github/workflows/REUSABLE_frontend.yml@2.x
with:
enable_bundlewatch: false
enable_prettier: true
diff --git a/composer.json b/composer.json
index 07989438..91946bea 100644
--- a/composer.json
+++ b/composer.json
@@ -35,7 +35,7 @@
],
"require": {
"php": "^8.0",
- "flarum/core": "^1.8.6"
+ "flarum/core": "^2.0.0"
},
"extra": {
"flarum-extension": {
@@ -78,7 +78,7 @@
"fof/split": "*",
"flarum/flags": "*",
"flarum/phpstan": "*",
- "flarum/testing": "^1.0.0"
+ "flarum/testing": "^2.0.0"
},
"scripts": {
"analyse:phpstan": "phpstan analyse",
@@ -102,5 +102,7 @@
"psr-4": {
"FoF\\Byobu\\Tests\\": "tests/"
}
- }
+ },
+ "minimum-stability": "dev",
+ "prefer-stable": true
}
diff --git a/extend.php b/extend.php
index 971686cc..5c492bb9 100644
--- a/extend.php
+++ b/extend.php
@@ -11,10 +11,7 @@
namespace FoF\Byobu;
-use Flarum\Api\Controller;
-use Flarum\Api\Serializer;
use Flarum\Discussion\Discussion;
-use Flarum\Discussion\Filter\DiscussionFilterer;
use Flarum\Discussion\Search\DiscussionSearcher;
use Flarum\Extend;
use Flarum\Group\Group;
@@ -23,6 +20,11 @@
use Flarum\User\Search\UserSearcher;
use Flarum\User\User;
use FoF\Split\Events\DiscussionWasSplit;
+use Flarum\Api\Context;
+use Flarum\Api\Endpoint;
+use Flarum\Api\Resource;
+use Flarum\Api\Schema;
+use Illuminate\Support\Arr;
return [
(new Extend\Frontend('admin'))
@@ -33,7 +35,8 @@
->route('/private', 'byobuPrivate', Content\PrivateDiscussionsPage::class)
->route('/private/composer', 'byobuPrivateComposer')
->css(__DIR__.'/resources/less/forum/extension.less')
- ->js(__DIR__.'/js/dist/forum.js'),
+ ->js(__DIR__.'/js/dist/forum.js')
+ ->jsDirectory(__DIR__ . '/js/dist/forum'),
new Extend\Locales(__DIR__.'/resources/locale'),
@@ -69,41 +72,30 @@
->wherePivot('removed_at', null);
}),
- (new Extend\ApiController(Controller\ListDiscussionsController::class))
- ->addInclude(['recipientUsers', 'recipientGroups'])
- ->load(['recipientUsers', 'recipientGroups']),
-
- (new Extend\ApiController(Controller\CreateDiscussionController::class))
- ->addInclude(['recipientUsers', 'recipientGroups'])
- ->load(['recipientUsers', 'recipientGroups']),
-
- (new Extend\ApiController(Controller\ShowDiscussionController::class))
- ->addOptionalInclude(['oldRecipientUsers', 'oldRecipientGroups'])
- ->addInclude(['recipientUsers', 'recipientGroups'])
- ->load(['recipientUsers', 'recipientGroups']),
-
- (new Extend\ApiSerializer(Serializer\BasicDiscussionSerializer::class))
- ->hasMany('recipientUsers', Serializer\BasicUserSerializer::class)
- ->hasMany('recipientGroups', Serializer\GroupSerializer::class),
-
- (new Extend\ApiSerializer(Serializer\DiscussionSerializer::class))
- ->hasMany('oldRecipientUsers', Serializer\BasicUserSerializer::class)
- ->hasMany('oldRecipientGroups', Serializer\GroupSerializer::class),
-
- (new Extend\ApiSerializer(Serializer\DiscussionSerializer::class))
- ->attributes(Api\DiscussionPermissionAttributes::class)
- ->attributes(Api\DiscussionDataAttributes::class),
-
- (new Extend\ApiSerializer(Serializer\ForumSerializer::class))
- ->attributes(Api\ForumPermissionAttributes::class),
-
- (new Extend\ApiSerializer(Serializer\UserSerializer::class))
- ->attribute('blocksPd', function ($serializer, $user) {
- return (bool) $user->blocks_byobu_pd;
+ (new Extend\ApiResource(Resource\DiscussionResource::class))
+ ->fieldsBefore('tags', Api\DiscussionResourceFields::class)
+ ->field('tags', fn (Schema\Relationship\ToMany $field) => $field->writable(function (Discussion $discussion, Context $context) {
+ return empty(Arr::get($context->body(), 'data.relationships.recipientUsers.data'))
+ && empty(Arr::get($context->body(), 'data.relationships.recipientGroups.data'));
+ }))
+ ->endpoint([Endpoint\Show::class, Endpoint\Create::class, Endpoint\Index::class], function (Endpoint\Show|Endpoint\Create|Endpoint\Index $endpoint) {
+ return $endpoint
+ ->addDefaultInclude(['recipientUsers', 'recipientGroups'])
+ ->eagerLoad(['recipientUsers', 'recipientGroups']);
}),
- (new Extend\ApiSerializer(Serializer\CurrentUserSerializer::class))
- ->hasMany('privateDiscussions', Serializer\DiscussionSerializer::class),
+ (new Extend\ApiResource(Resource\ForumResource::class))
+ ->fields(Api\ForumResourceFields::class),
+
+ (new Extend\ApiResource(Resource\UserResource::class))
+ ->fields(fn () => [
+ Schema\Boolean::make('blocksPd')
+ ->property('blocks_byobu_pd')
+ ->writable(fn (User $user, Context $context) => $context->getActor()->is($user)),
+ Schema\Relationship\ToMany::make('privateDiscussions')
+ ->type('discussions')
+ ->visible(fn (User $user, Context $context) => $context->getActor()->is($user))
+ ]),
(new Extend\View())
->namespace('fof-byobu', __DIR__.'/resources/views'),
@@ -120,15 +112,14 @@
->type(Posts\MadePublic::class),
(new Extend\Notification())
- ->type(Notifications\DiscussionCreatedBlueprint::class, Serializer\DiscussionSerializer::class, ['alert', 'email'])
- ->type(Notifications\DiscussionRepliedBlueprint::class, Serializer\DiscussionSerializer::class, ['alert', 'email'])
- ->type(Notifications\DiscussionRecipientRemovedBlueprint::class, Serializer\DiscussionSerializer::class, ['alert', 'email'])
- ->type(Notifications\DiscussionAddedBlueprint::class, Serializer\DiscussionSerializer::class, ['alert', 'email'])
- ->type(Notifications\DiscussionMadePublicBlueprint::class, Serializer\DiscussionSerializer::class, ['alert']),
+ ->type(Notifications\DiscussionCreatedBlueprint::class, ['alert', 'email'])
+ ->type(Notifications\DiscussionRepliedBlueprint::class, ['alert', 'email'])
+ ->type(Notifications\DiscussionRecipientRemovedBlueprint::class, ['alert', 'email'])
+ ->type(Notifications\DiscussionAddedBlueprint::class, ['alert', 'email'])
+ ->type(Notifications\DiscussionMadePublicBlueprint::class, ['alert']),
(new Extend\Event())
->listen(PostSaving::class, Listeners\IgnoreApprovals::class)
- ->listen(UserSaving::class, Listeners\SaveUserPreferences::class)
->listen(DiscussionWasSplit::class, Listeners\AddRecipientsToSplitDiscussion::class)
->subscribe(Listeners\CreatePostWhenRecipientsChanged::class)
->subscribe(Listeners\QueueNotificationJobs::class)
@@ -140,16 +131,6 @@
(new Extend\ModelPrivate(Discussion::class))
->checker(Listeners\GetModelIsPrivate::class),
- (new Extend\SimpleFlarumSearch(DiscussionSearcher::class))
- ->addGambit(Gambits\Discussion\ByobuGambit::class)
- ->addGambit(Gambits\Discussion\PrivacyGambit::class),
-
- (new Extend\SimpleFlarumSearch(UserSearcher::class))
- ->addGambit(Gambits\User\AllowsPdGambit::class),
-
- (new Extend\Filter(DiscussionFilterer::class))
- ->addFilterMutator(Filters\Discussion\HidePrivateDiscussionsFromAllDiscussionsPage::class),
-
(new Extend\Settings())
// we have to use the callback here, else we risk returning empty values instead of the defaults.
// see https://github.com/flarum/core/issues/3209
@@ -160,4 +141,10 @@
return empty($value) ? 'far fa-map' : $value;
})
->default('fof-byobu.delete_on_last_recipient_left', false),
+
+ (new Extend\SearchDriver(\Flarum\Search\Database\DatabaseSearchDriver::class))
+ ->addFilter(DiscussionSearcher::class, Filters\Discussion\ByobuFilter::class)
+ ->addFilter(DiscussionSearcher::class, Filters\Discussion\PrivacyFilter::class)
+ ->addMutator(DiscussionSearcher::class, Filters\Discussion\HidePrivateDiscussionsFromAllDiscussionsPage::class)
+ ->addFilter(UserSearcher::class, Filters\User\AllowsPdFilter::class),
];
diff --git a/js/package.json b/js/package.json
index f4714cca..a8947207 100644
--- a/js/package.json
+++ b/js/package.json
@@ -1,22 +1,22 @@
{
- "private": true,
- "name": "@fof/byobu",
- "prettier": "@flarum/prettier-config",
- "dependencies": {
- "@flarum/prettier-config": "^1.0.0",
- "flarum-tsconfig": "^1.0.2",
- "flarum-webpack-config": "^2.0.0",
- "flatpickr": "^4.6.13",
- "webpack": "^5.94.0",
- "webpack-cli": "^5.0.0"
- },
- "devDependencies": {
- "prettier": "^2.8.0"
- },
- "scripts": {
- "dev": "webpack --mode development --watch",
- "build": "webpack --mode production",
- "format": "prettier --write src",
- "format-check": "prettier --check src"
- }
-}
+ "private": true,
+ "name": "@fof/byobu",
+ "prettier": "@flarum/prettier-config",
+ "dependencies": {
+ "@flarum/prettier-config": "^1.0.0",
+ "flarum-tsconfig": "^2.0.0",
+ "flarum-webpack-config": "^3.0.0",
+ "flatpickr": "^4.6.13",
+ "webpack": "^5.94.0",
+ "webpack-cli": "^5.0.0"
+ },
+ "devDependencies": {
+ "prettier": "^2.8.0"
+ },
+ "scripts": {
+ "dev": "webpack --mode development --watch",
+ "build": "webpack --mode production",
+ "format": "prettier --write src",
+ "format-check": "prettier --check src"
+ }
+}
\ No newline at end of file
diff --git a/js/src/admin/addPrivateDiscussionPermission.ts b/js/src/admin/addPrivateDiscussionPermission.ts
deleted file mode 100644
index 2f9bd27e..00000000
--- a/js/src/admin/addPrivateDiscussionPermission.ts
+++ /dev/null
@@ -1,90 +0,0 @@
-import app from 'flarum/admin/app';
-
-export default function () {
- const byobuData = app.extensionData.for('fof-byobu');
-
- byobuData
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_users'),
- permission: 'discussion.startPrivateDiscussionWithUsers',
- tagScoped: false,
- },
- 'start',
- 95
- )
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.add_more_than_two_user_recipients'),
- permission: 'discussion.addMoreThanTwoUserRecipients',
- tagScoped: false,
- },
- 'start',
- 95
- )
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_groups'),
- permission: 'discussion.startPrivateDiscussionWithGroups',
- tagScoped: false,
- },
- 'start',
- 95
- )
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_blocking_users'),
- permission: 'discussion.startPrivateDiscussionWithBlockers',
- tagScoped: false,
- },
- 'start',
- 95
- )
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.edit_user_recipients'),
- permission: 'discussion.editUserRecipients',
- tagScoped: false,
- },
- 'moderate',
- 95
- )
- .registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.edit_group_recipients'),
- permission: 'discussion.editGroupRecipients',
- tagScoped: false,
- },
- 'moderate',
- 95
- )
- .registerPermission(
- {
- icon: 'fas fa-flag',
- label: app.translator.trans('fof-byobu.admin.permission.view_private_discussions-when-flagged'),
- permission: 'user.viewPrivateDiscussionsWhenFlagged',
- tagScoped: false,
- },
- 'moderate',
- 95
- );
-
- if (app.data.settings['fof-byobu.makePublic']) {
- byobuData.registerPermission(
- {
- icon: 'far fa-map',
- label: app.translator.trans('fof-byobu.admin.permission.make_private_into_public'),
- permission: 'discussion.makePublic',
- tagScoped: false,
- },
- 'reply',
- 95
- );
- }
-}
diff --git a/js/src/admin/components/ByobuSettingsPage.tsx b/js/src/admin/components/ByobuSettingsPage.tsx
index 3dd023f4..bdd864fc 100644
--- a/js/src/admin/components/ByobuSettingsPage.tsx
+++ b/js/src/admin/components/ByobuSettingsPage.tsx
@@ -1,7 +1,8 @@
+import Form from 'flarum/common/components/Form';
import app from 'flarum/admin/app';
import ExtensionPage from 'flarum/admin/components/ExtensionPage';
import Badge from 'flarum/common/components/Badge';
-import icon from 'flarum/common/helpers/icon';
+import Icon from 'flarum/common/components/Icon';
import ItemList from 'flarum/common/utils/ItemList';
import type Mithril from 'mithril';
@@ -15,10 +16,10 @@ export default class ByobuSettingsPage extends ExtensionPage {
@@ -111,7 +112,7 @@ export default class ByobuSettingsPage extends ExtensionPage {
label: app.translator.trans('fof-byobu.admin.settings.post-event-icon'),
help: (
- {icon(this.setting('fof-byobu.icon-postAction').toJSON() || this.postActionDefault)} {this.helpText()}
+ {this.helpText()}
),
placeholder: this.postActionDefault,
diff --git a/js/src/admin/extend.ts b/js/src/admin/extend.ts
index 85534451..d9ab49c4 100644
--- a/js/src/admin/extend.ts
+++ b/js/src/admin/extend.ts
@@ -1,4 +1,100 @@
+import app from 'flarum/admin/app';
import Extend from 'flarum/common/extenders';
import commonExtend from '../common/extend';
+import ByobuSettingsPage from './components/ByobuSettingsPage';
+import User from 'flarum/common/models/User';
-export default [...commonExtend];
+export default [
+ ...commonExtend,
+
+ new Extend.Store().add('recipients', User),
+
+ new Extend.Admin()
+ .page(ByobuSettingsPage)
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_users'),
+ permission: 'discussion.startPrivateDiscussionWithUsers',
+ tagScoped: false,
+ }),
+ 'start',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.add_more_than_two_user_recipients'),
+ permission: 'discussion.addMoreThanTwoUserRecipients',
+ tagScoped: false,
+ }),
+ 'start',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_groups'),
+ permission: 'discussion.startPrivateDiscussionWithGroups',
+ tagScoped: false,
+ }),
+ 'start',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.create_private_discussions_with_blocking_users'),
+ permission: 'discussion.startPrivateDiscussionWithBlockers',
+ tagScoped: false,
+ }),
+ 'start',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.edit_user_recipients'),
+ permission: 'discussion.editUserRecipients',
+ tagScoped: false,
+ }),
+ 'moderate',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.edit_group_recipients'),
+ permission: 'discussion.editGroupRecipients',
+ tagScoped: false,
+ }),
+ 'moderate',
+ 95
+ )
+ .permission(
+ () => ({
+ icon: 'fas fa-flag',
+ label: app.translator.trans('fof-byobu.admin.permission.view_private_discussions-when-flagged'),
+ permission: 'user.viewPrivateDiscussionsWhenFlagged',
+ tagScoped: false,
+ }),
+ 'moderate',
+ 95
+ )
+ .permission(
+ () => {
+ if (!app.data.settings['fof-byobu.makePublic']) {
+ return null;
+ }
+
+ return {
+ icon: 'far fa-map',
+ label: app.translator.trans('fof-byobu.admin.permission.make_private_into_public'),
+ permission: 'discussion.makePublic',
+ tagScoped: false,
+ };
+ },
+ 'reply',
+ 95
+ ),
+];
diff --git a/js/src/admin/index.ts b/js/src/admin/index.ts
index 2a5bd7cf..bcddeaa6 100644
--- a/js/src/admin/index.ts
+++ b/js/src/admin/index.ts
@@ -1,16 +1,8 @@
import app from 'flarum/admin/app';
-import User from 'flarum/common/models/User';
-
-import addPrivateDiscussionPermission from './addPrivateDiscussionPermission';
-import ByobuSettingsPage from './components/ByobuSettingsPage';
export { default as extend } from './extend';
export * from './components';
app.initializers.add('fof-byobu', () => {
- app.store.models.recipients = User;
-
- app.extensionData.for('fof-byobu').registerPage(ByobuSettingsPage);
-
- addPrivateDiscussionPermission();
+ //
});
diff --git a/js/src/common/extend.ts b/js/src/common/extend.ts
index f90bf31a..9b105ae3 100644
--- a/js/src/common/extend.ts
+++ b/js/src/common/extend.ts
@@ -1,3 +1,11 @@
+import AllowsPdGambit from './gambits/AllowsPdGambit';
+import PrivacyGambit from './gambits/PrivacyGambit';
+import ByobuGambit from './gambits/ByobuGambit';
import Extend from 'flarum/common/extenders';
-export default [];
+export default [
+ new Extend.Search()
+ .gambit('discussions', ByobuGambit)
+ .gambit('discussions', PrivacyGambit)
+ .gambit('users', AllowsPdGambit),
+];
diff --git a/js/src/common/gambits/AllowsPdGambit.js b/js/src/common/gambits/AllowsPdGambit.js
new file mode 100644
index 00000000..beb72068
--- /dev/null
+++ b/js/src/common/gambits/AllowsPdGambit.js
@@ -0,0 +1,16 @@
+import app from 'flarum/common/app';
+import { BooleanGambit } from 'flarum/common/query/IGambit';
+
+export default class AllowsPdGambit extends BooleanGambit {
+ booleanKey() {
+ return 'allows';
+ }
+
+ key() {
+ return app.translator.trans('fof-byobu.lib.gambits.allows-pd.key', {}, true);
+ }
+
+ filterKey() {
+ return 'allows-pd';
+ }
+}
diff --git a/js/src/common/gambits/ByobuGambit.js b/js/src/common/gambits/ByobuGambit.js
new file mode 100644
index 00000000..8afca673
--- /dev/null
+++ b/js/src/common/gambits/ByobuGambit.js
@@ -0,0 +1,16 @@
+import app from 'flarum/common/app';
+import { KeyValueGambit } from 'flarum/common/query/IGambit';
+
+export default class ByobuGambit extends KeyValueGambit {
+ key() {
+ return app.translator.trans('fof-byobu.lib.gambits.byobu.key', {}, true);
+ }
+
+ hint() {
+ return app.translator.trans('fof-byobu.lib.gambits.byobu.hint', {}, true);
+ }
+
+ filterKey() {
+ return 'byobu';
+ }
+}
diff --git a/js/src/common/gambits/PrivacyGambit.js b/js/src/common/gambits/PrivacyGambit.js
new file mode 100644
index 00000000..cfb634d4
--- /dev/null
+++ b/js/src/common/gambits/PrivacyGambit.js
@@ -0,0 +1,12 @@
+import app from 'flarum/common/app';
+import { BooleanGambit } from 'flarum/common/query/IGambit';
+
+export default class PrivacyGambit extends BooleanGambit {
+ key() {
+ return app.translator.trans('fof-byobu.lib.gambits.private.key', {}, true);
+ }
+
+ filterKey() {
+ return 'private';
+ }
+}
diff --git a/js/src/common/index.js b/js/src/common/index.js
new file mode 100644
index 00000000..f1126bd5
--- /dev/null
+++ b/js/src/common/index.js
@@ -0,0 +1,5 @@
+import app from 'flarum/common/app';
+
+app.initializers.add('', () => {
+ console.log('[] Hello, forum and admin!');
+});
diff --git a/js/src/forum/components/PrivateComposerPage.tsx b/js/src/forum/components/PrivateComposerPage.tsx
index 50f4379a..a0d39449 100644
--- a/js/src/forum/components/PrivateComposerPage.tsx
+++ b/js/src/forum/components/PrivateComposerPage.tsx
@@ -1,8 +1,6 @@
import app from 'flarum/forum/app';
import Page from 'flarum/common/components/Page';
import type Mithril from 'mithril';
-import LogInModal from 'flarum/forum/components/LogInModal';
-import PrivateDiscussionComposer from '../pages/discussions/PrivateDiscussionComposer';
import ItemList from 'flarum/common/utils/ItemList';
import Group from 'flarum/common/models/Group';
import User from 'flarum/common/models/User';
@@ -16,7 +14,7 @@ export default class PrivateComposerPage extends Page {
configComposer() {
if (!app.session.user) {
- setTimeout(() => app.modal.show(LogInModal), 500);
+ setTimeout(() => app.modal.show(() => import('flarum/forum/components/LogInModal')), 500);
return m.route.set('/');
}
@@ -27,7 +25,7 @@ export default class PrivateComposerPage extends Page {
m.route.set(app.route('byobuPrivate'));
- setTimeout(() => {
+ setTimeout(async () => {
const composerProps = {
user: app.session.user,
recipients: recipients,
@@ -54,7 +52,13 @@ export default class PrivateComposerPage extends Page {
});
}
- app.composer.load(PrivateDiscussionComposer, composerProps);
+ await app.composer.load(
+ () =>
+ import('flarum/forum/components/DiscussionComposer').then(() => {
+ return import('../pages/discussions/PrivateDiscussionComposer');
+ }),
+ composerProps
+ );
app.composer.show();
diff --git a/js/src/forum/extenders/Discussion.js b/js/src/forum/extenders/Discussion.js
index 1ab73b32..910fcd31 100644
--- a/js/src/forum/extenders/Discussion.js
+++ b/js/src/forum/extenders/Discussion.js
@@ -12,8 +12,7 @@ import recipientsLabel from '../pages/labels/recipientsLabels';
import DiscussionControls from 'flarum/forum/utils/DiscussionControls';
import ItemList from 'flarum/common/utils/ItemList';
import AddRecipientModal from '../modals/AddRecipientModal';
-import ByobuTagDiscussionModal from '../modals/ByobuTagDiscussionModal';
-import DiscussionPage from 'flarum/components/DiscussionPage';
+import DiscussionPage from 'flarum/forum/components/DiscussionPage';
export default () => {
badges();
@@ -178,16 +177,16 @@ function controls() {
const recipientUsers = [];
if (flarum.extensions['flarum-tags']) {
- new Promise((resolve, reject) => {
- app.modal.show(ByobuTagDiscussionModal, { discussion, resolve, reject });
+ new Promise(async (resolve, reject) => {
+ await import('ext:flarum/tags/forum/components/TagDiscussionModal').then(async () => {
+ await app.modal.show(() => import('../modals/ByobuTagDiscussionModal'), { discussion, resolve, reject });
+ });
}).then((tags) => {
- discussion.save({ relationships: { recipientUsers, recipientGroups }, public: discussion.id() }).then(() => {
- discussion.save({ relationships: { tags } }).then(() => {
- if (app.current.matches(DiscussionPage)) {
- app.current.get('stream').update();
- }
- m.redraw();
- });
+ discussion.save({ relationships: { recipientUsers, recipientGroups, tags }, public: discussion.id() }).then(() => {
+ if (app.current.matches(DiscussionPage)) {
+ app.current.get('stream').update();
+ }
+ m.redraw();
});
});
} else {
diff --git a/js/src/forum/extenders/SettingsPage.js b/js/src/forum/extenders/SettingsPage.js
index a03e89ee..f272c1e1 100644
--- a/js/src/forum/extenders/SettingsPage.js
+++ b/js/src/forum/extenders/SettingsPage.js
@@ -1,6 +1,5 @@
import app from 'flarum/forum/app';
import { extend } from 'flarum/common/extend';
-import SettingsPage from 'flarum/forum/components/SettingsPage';
import Switch from 'flarum/common/components/Switch';
export default () => {
@@ -8,7 +7,7 @@ export default () => {
};
function privacyToggle() {
- extend(SettingsPage.prototype, 'privacyItems', function (items) {
+ extend('flarum/forum/components/SettingsPage', 'privacyItems', function (items) {
items.add(
'byobu-block-dm',
Switch.component(
diff --git a/js/src/forum/extenders/User.js b/js/src/forum/extenders/User.js
index 0e0c22dd..26833220 100644
--- a/js/src/forum/extenders/User.js
+++ b/js/src/forum/extenders/User.js
@@ -1,7 +1,6 @@
import app from 'flarum/forum/app';
import { extend } from 'flarum/common/extend';
import UserControls from 'flarum/forum/utils/UserControls';
-import PrivateDiscussionComposer from '../pages/discussions/PrivateDiscussionComposer';
import Button from 'flarum/common/components/Button';
import ItemList from 'flarum/common/utils/ItemList';
import UserPage from 'flarum/forum/components/UserPage';
@@ -24,20 +23,21 @@ function message() {
onclick: (e) => {
e.preventDefault();
- return new Promise((resolve) => {
+ return new Promise(async (resolve) => {
let recipients = new ItemList();
recipients.add('users:' + app.session.user.id(), app.session.user);
recipients.add('users:' + user.id(), user);
- PrivateDiscussionComposer.prototype.recipients = recipients;
-
- app.composer.load(PrivateDiscussionComposer, {
+ const PrivateDiscussionComposer = await app.composer.load(() => import('../pages/discussions/PrivateDiscussionComposer'), {
user: app.session.user,
recipients: recipients,
recipientUsers: recipients,
titlePlaceholder: app.translator.trans('fof-byobu.forum.composer_private_discussion.title_placeholder'),
submitLabel: app.translator.trans('fof-byobu.forum.composer_private_discussion.submit_button'),
});
+
+ PrivateDiscussionComposer.prototype.recipients = recipients;
+
app.composer.show();
return resolve(app.composer);
diff --git a/js/src/forum/index.ts b/js/src/forum/index.ts
index 300dfe01..f96bdd7c 100644
--- a/js/src/forum/index.ts
+++ b/js/src/forum/index.ts
@@ -3,11 +3,6 @@ import extenders from './extenders';
import pages from './pages';
import notifications from './notifications';
-export * from './modals';
-export * from './pages/discussions';
-export * from './events';
-export * from './helpers';
-
export { default as extend } from './extend';
app.initializers.add('fof-byobu', function () {
diff --git a/js/src/forum/modals/AddRecipientModal.js b/js/src/forum/modals/AddRecipientModal.js
index 67ddf740..c7bba03f 100644
--- a/js/src/forum/modals/AddRecipientModal.js
+++ b/js/src/forum/modals/AddRecipientModal.js
@@ -1,15 +1,15 @@
import app from 'flarum/forum/app';
-import Modal from 'flarum/common/components/Modal';
+import FormModal from 'flarum/common/components/FormModal';
import DiscussionPage from 'flarum/forum/components/DiscussionPage';
import Button from 'flarum/common/components/Button';
import ItemList from 'flarum/common/utils/ItemList';
import Stream from 'flarum/common/utils/Stream';
-import SearchState from 'flarum/forum/states/SearchState';
+import SearchState from 'flarum/common/states/SearchState';
import RecipientSearch from '../search/RecipientSearch';
import User from 'flarum/common/models/User';
import Group from 'flarum/common/models/Group';
-export default class AddRecipientModal extends Modal {
+export default class AddRecipientModal extends FormModal {
oninit(vnode) {
super.oninit(vnode);
diff --git a/js/src/forum/modals/ByobuTagDiscussionModal.js b/js/src/forum/modals/ByobuTagDiscussionModal.js
index 20c67eda..e807bf73 100644
--- a/js/src/forum/modals/ByobuTagDiscussionModal.js
+++ b/js/src/forum/modals/ByobuTagDiscussionModal.js
@@ -1,5 +1,5 @@
import app from 'flarum/forum/app';
-import TagDiscussionModal from 'flarum/tags/components/TagDiscussionModal';
+import TagDiscussionModal from 'ext:flarum/tags/forum/components/TagDiscussionModal';
export default class ByobuTagDiscussionModal extends TagDiscussionModal {
static isDismissible = false;
diff --git a/js/src/forum/notifications/PrivateDiscussionMadePublicNotification.js b/js/src/forum/notifications/PrivateDiscussionMadePublicNotification.js
index a2dc11d0..bbf961c7 100644
--- a/js/src/forum/notifications/PrivateDiscussionMadePublicNotification.js
+++ b/js/src/forum/notifications/PrivateDiscussionMadePublicNotification.js
@@ -1,5 +1,5 @@
import app from 'flarum/forum/app';
-import Notification from 'flarum/components/Notification';
+import Notification from 'flarum/forum/components/Notification';
export default class PrivateDiscussionMadePublicNotification extends Notification {
icon() {
diff --git a/js/src/forum/notifications/index.js b/js/src/forum/notifications/index.js
index 47446d7f..fc982f1f 100644
--- a/js/src/forum/notifications/index.js
+++ b/js/src/forum/notifications/index.js
@@ -1,6 +1,5 @@
import app from 'flarum/forum/app';
import { extend } from 'flarum/common/extend';
-import NotificationGrid from 'flarum/forum/components/NotificationGrid';
import PrivateDiscussionNotification from './PrivateDiscussionNotification';
import PrivateDiscussionRepliedNotification from './PrivateDiscussionReplyNotification';
import PrivateDiscussionUserLeftNotification from './PrivateDiscussionUserLeftNotification';
@@ -19,7 +18,7 @@ export default function () {
function grid() {
// Add notification preferences.
- extend(NotificationGrid.prototype, 'notificationTypes', function (items) {
+ extend('flarum/forum/components/NotificationGrid', 'notificationTypes', function (items) {
items.add('byobuPrivateDiscussionCreated', {
name: 'byobuPrivateDiscussionCreated',
icon: app.forum.data.attributes['byobu.icon-badge'],
diff --git a/js/src/forum/pages/PrivateComposing.js b/js/src/forum/pages/PrivateComposing.js
index ac114833..fc7c1d4f 100644
--- a/js/src/forum/pages/PrivateComposing.js
+++ b/js/src/forum/pages/PrivateComposing.js
@@ -1,8 +1,6 @@
import app from 'flarum/forum/app';
import Button from 'flarum/common/components/Button';
-import LogInModal from 'flarum/forum/components/LogInModal';
import ItemList from 'flarum/common/utils/ItemList';
-import PrivateDiscussionComposer from './discussions/PrivateDiscussionComposer';
export default class PrivateComposing {
constructor(recipient) {
@@ -12,7 +10,7 @@ export default class PrivateComposing {
action(e) {
e.preventDefault();
- return new Promise((resolve, reject) => {
+ return new Promise(async (resolve, reject) => {
if (app.session.user) {
let recipients = new ItemList();
@@ -22,17 +20,23 @@ export default class PrivateComposing {
recipients.add('users:' + this.recipient.id(), this.recipient);
}
- app.composer.load(PrivateDiscussionComposer, {
- user: app.session.user,
- recipients: recipients,
- recipientUsers: recipients,
- });
+ await app.composer.load(
+ () =>
+ import('flarum/forum/components/DiscussionComposer').then(async () => {
+ return await import('./discussions/PrivateDiscussionComposer');
+ }),
+ {
+ user: app.session.user,
+ recipients: recipients,
+ recipientUsers: recipients,
+ }
+ );
app.composer.show();
return resolve();
} else {
- app.modal.show(LogInModal);
+ await app.modal.show(() => import('flarum/forum/components/LogInModal'));
return reject();
}
diff --git a/js/src/forum/pages/PrivateDiscussionsPage.js b/js/src/forum/pages/PrivateDiscussionsPage.js
index 800e0cda..4877504b 100644
--- a/js/src/forum/pages/PrivateDiscussionsPage.js
+++ b/js/src/forum/pages/PrivateDiscussionsPage.js
@@ -1,3 +1,4 @@
+import IndexSidebar from 'flarum/forum/components/IndexSidebar';
import app from 'flarum/forum/app';
import { extend } from 'flarum/common/extend';
import LinkButton from 'flarum/common/components/LinkButton';
@@ -6,7 +7,7 @@ import DiscussionListState from 'flarum/forum/states/DiscussionListState';
import PrivateComposing from './PrivateComposing';
export default () => {
- extend(IndexPage.prototype, 'navItems', (items) => {
+ extend(IndexSidebar.prototype, 'navItems', (items) => {
const user = app.session.user;
if (user) {
@@ -32,14 +33,14 @@ export default () => {
extend(DiscussionListState.prototype, 'requestParams', function (params) {
if (app.current.get('routeName') === 'byobuPrivate') {
- params.filter.q = (params.filter.q || '') + ' is:private';
+ params.filter.private = true;
params.include.push('recipientUsers');
params.include.push('recipientGroups');
}
});
- extend(IndexPage.prototype, 'sidebarItems', function (items) {
+ extend(IndexSidebar.prototype, 'items', function (items) {
if (app.current.get('routeName') === 'byobuPrivate') {
let compose = new PrivateComposing();
diff --git a/js/src/forum/pages/discussions/index.js b/js/src/forum/pages/discussions/index.js
deleted file mode 100644
index 1bf3bfcd..00000000
--- a/js/src/forum/pages/discussions/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import PrivateDiscussionComposer from './PrivateDiscussionComposer';
-import PrivateDiscussionList from './PrivateDiscussionList';
-
-export const discussions = {
- PrivateDiscussionComposer: PrivateDiscussionComposer,
- PrivateDiscussionList: PrivateDiscussionList,
-};
diff --git a/js/src/forum/search/sources/UserSearchSource.js b/js/src/forum/search/sources/UserSearchSource.js
index a9e235e6..b20527cc 100644
--- a/js/src/forum/search/sources/UserSearchSource.js
+++ b/js/src/forum/search/sources/UserSearchSource.js
@@ -1,6 +1,6 @@
import app from 'flarum/forum/app';
import highlight from 'flarum/common/helpers/highlight';
-import avatar from 'flarum/common/helpers/avatar';
+import Avatar from 'flarum/common/components/Avatar';
import username from 'flarum/common/helpers/username';
export default class UserSearchSource {
@@ -19,22 +19,21 @@ export default class UserSearchSource {
app.cache.byobuResults[this.query] = [];
app.store
.find('users', {
- filter: { q: this.query + ' allows-pd' },
+ filter: { q: this.query, 'allows-pd': true },
page: { limit: 5 },
})
.then(this.pushResults.bind(this));
} else
return [
- {app.translator.trans('core.forum.search.users_heading')},
+ {app.translator.trans('core.lib.search_source.users.heading')},
app.cache.byobuResults[this.query].map((user) => {
- const name = username(user);
- const children = [highlight(name.text, this.query)];
+ const name = username(user, (name) => highlight(name, query));
return (
- {avatar(user)}
- {{ ...name, text: undefined, children }}
+
+ {name}
);
diff --git a/js/tsconfig.json b/js/tsconfig.json
index 1d8762b6..309cc035 100644
--- a/js/tsconfig.json
+++ b/js/tsconfig.json
@@ -1,18 +1,22 @@
{
- // Use Flarum's tsconfig as a starting point
- "extends": "flarum-tsconfig",
- // This will match all .ts, .tsx, .d.ts, .js, .jsx files in your `src` folder
- // and also tells your Typescript server to read core's global typings for
- // access to `dayjs` and `$` in the global namespace.
- "include": ["src/**/*", "../vendor/flarum/core/js/dist-typings/@types/**/*"],
- "compilerOptions": {
- // This will output typings to `dist-typings`
- "declarationDir": "./dist-typings",
- "baseUrl": ".",
- "paths": {
- "flarum/*": ["../vendor/flarum/core/js/dist-typings/*"],
- "@flarum/*": ["../vendor/flarum/core/js/dist-typings/*"],
- }
+ "extends": "flarum-tsconfig",
+ "include": [
+ "src/**/*",
+ "../vendor/flarum/core/js/dist-typings/@types/**/*"
+ ],
+ "compilerOptions": {
+ "declarationDir": "./dist-typings",
+ "baseUrl": ".",
+ "paths": {
+ "flarum/*": [
+ "../vendor/flarum/core/js/dist-typings/*"
+ ],
+ "@flarum/*": [
+ "../vendor/flarum/core/js/dist-typings/*"
+ ],
+ "ext:flarum/tags": [
+ "../vendor/flarum/tags/js/dist-typings/*"
+ ]
}
}
-
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/js/yarn.lock b/js/yarn.lock
index 39a8202d..7203f448 100644
--- a/js/yarn.lock
+++ b/js/yarn.lock
@@ -2,1189 +2,114 @@
# yarn lockfile v1
-"@ampproject/remapping@^2.2.0":
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4"
- integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.5"
- "@jridgewell/trace-mapping" "^0.3.24"
-
-"@babel/code-frame@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7"
- integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==
- dependencies:
- "@babel/highlight" "^7.25.7"
- picocolors "^1.0.0"
-
-"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.7.tgz#b8479fe0018ef0ac87b6b7a5c6916fcd67ae2c9c"
- integrity sha512-9ickoLz+hcXCeh7jrcin+/SLWm+GkxE2kTvoYyp38p4WkdFXfQJxDFGWp/YHjiKLPx06z2A7W8XKuqbReXDzsw==
-
-"@babel/core@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.25.7.tgz#1b3d144157575daf132a3bc80b2b18e6e3ca6ece"
- integrity sha512-yJ474Zv3cwiSOO9nXJuqzvwEeM+chDuQ8GJirw+pZ91sCGCyOZ3dJkVE09fTV0VEVzXyLWhh3G/AolYTPX7Mow==
- dependencies:
- "@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.25.7"
- "@babel/generator" "^7.25.7"
- "@babel/helper-compilation-targets" "^7.25.7"
- "@babel/helper-module-transforms" "^7.25.7"
- "@babel/helpers" "^7.25.7"
- "@babel/parser" "^7.25.7"
- "@babel/template" "^7.25.7"
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
- convert-source-map "^2.0.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.3"
- semver "^6.3.1"
-
-"@babel/generator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56"
- integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==
- dependencies:
- "@babel/types" "^7.25.7"
- "@jridgewell/gen-mapping" "^0.3.5"
- "@jridgewell/trace-mapping" "^0.3.25"
- jsesc "^3.0.2"
-
-"@babel/helper-annotate-as-pure@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz#63f02dbfa1f7cb75a9bdb832f300582f30bb8972"
- integrity sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==
- dependencies:
- "@babel/types" "^7.25.7"
-
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.7.tgz#d721650c1f595371e0a23ee816f1c3c488c0d622"
- integrity sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==
- dependencies:
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz#11260ac3322dda0ef53edfae6e97b961449f5fa4"
- integrity sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==
- dependencies:
- "@babel/compat-data" "^7.25.7"
- "@babel/helper-validator-option" "^7.25.7"
- browserslist "^4.24.0"
- lru-cache "^5.1.1"
- semver "^6.3.1"
-
-"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz#5d65074c76cae75607421c00d6bd517fe1892d6b"
- integrity sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-member-expression-to-functions" "^7.25.7"
- "@babel/helper-optimise-call-expression" "^7.25.7"
- "@babel/helper-replace-supers" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
- "@babel/traverse" "^7.25.7"
- semver "^6.3.1"
-
-"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.7.tgz#dcb464f0e2cdfe0c25cc2a0a59c37ab940ce894e"
- integrity sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- regexpu-core "^6.1.1"
- semver "^6.3.1"
-
-"@babel/helper-define-polyfill-provider@^0.6.2":
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d"
- integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==
- dependencies:
- "@babel/helper-compilation-targets" "^7.22.6"
- "@babel/helper-plugin-utils" "^7.22.5"
- debug "^4.1.1"
- lodash.debounce "^4.0.8"
- resolve "^1.14.2"
-
-"@babel/helper-member-expression-to-functions@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574"
- integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==
- dependencies:
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helper-module-imports@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472"
- integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==
- dependencies:
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helper-module-transforms@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a"
- integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==
- dependencies:
- "@babel/helper-module-imports" "^7.25.7"
- "@babel/helper-simple-access" "^7.25.7"
- "@babel/helper-validator-identifier" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/helper-optimise-call-expression@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a"
- integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==
- dependencies:
- "@babel/types" "^7.25.7"
-
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.25.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz#8ec5b21812d992e1ef88a9b068260537b6f0e36c"
- integrity sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==
-
-"@babel/helper-remap-async-to-generator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.7.tgz#9efdc39df5f489bcd15533c912b6c723a0a65021"
- integrity sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-wrap-function" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/helper-replace-supers@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz#38cfda3b6e990879c71d08d0fef9236b62bd75f5"
- integrity sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==
- dependencies:
- "@babel/helper-member-expression-to-functions" "^7.25.7"
- "@babel/helper-optimise-call-expression" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/helper-simple-access@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0"
- integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==
- dependencies:
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helper-skip-transparent-expression-wrappers@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz#382831c91038b1a6d32643f5f49505b8442cb87c"
- integrity sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==
- dependencies:
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helper-string-parser@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54"
- integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==
-
-"@babel/helper-validator-identifier@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5"
- integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==
-
-"@babel/helper-validator-option@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729"
- integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==
-
-"@babel/helper-wrap-function@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.7.tgz#9f6021dd1c4fdf4ad515c809967fc4bac9a70fe7"
- integrity sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==
- dependencies:
- "@babel/template" "^7.25.7"
- "@babel/traverse" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/helpers@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.25.7.tgz#091b52cb697a171fe0136ab62e54e407211f09c2"
- integrity sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==
- dependencies:
- "@babel/template" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/highlight@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5"
- integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==
- dependencies:
- "@babel/helper-validator-identifier" "^7.25.7"
- chalk "^2.4.2"
- js-tokens "^4.0.0"
- picocolors "^1.0.0"
-
-"@babel/parser@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.7.tgz#99b927720f4ddbfeb8cd195a363ed4532f87c590"
- integrity sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw==
- dependencies:
- "@babel/types" "^7.25.7"
-
-"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.7.tgz#93969ac50ef4d68b2504b01b758af714e4cbdd64"
- integrity sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.7.tgz#a338d611adb9dcd599b8b1efa200c88ebeffe046"
- integrity sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.7.tgz#c5f755e911dfac7ef6957300c0f9c4a8c18c06f4"
- integrity sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.7.tgz#3b7ea04492ded990978b6deaa1dfca120ad4455a"
- integrity sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
- "@babel/plugin-transform-optional-chaining" "^7.25.7"
-
-"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.7.tgz#9622b1d597a703aa3a921e6f58c9c2d9a028d2c5"
- integrity sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/plugin-proposal-class-properties@^7.16.0":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3"
- integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-proposal-private-methods@^7.16.0":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea"
- integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2":
- version "7.21.0-placeholder-for-preset-env.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
- integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
-
-"@babel/plugin-syntax-async-generators@^7.8.4":
- version "7.8.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
- integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-class-properties@^7.12.13":
- version "7.12.13"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10"
- integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.12.13"
-
-"@babel/plugin-syntax-class-static-block@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406"
- integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-dynamic-import@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
- integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-export-namespace-from@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a"
- integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.3"
-
-"@babel/plugin-syntax-import-assertions@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.7.tgz#8ce248f9f4ed4b7ed4cb2e0eb4ed9efd9f52921f"
- integrity sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-syntax-import-attributes@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz#d78dd0499d30df19a598e63ab895e21b909bc43f"
- integrity sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-syntax-import-meta@^7.10.4":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51"
- integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-json-strings@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
- integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-jsx@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz#5352d398d11ea5e7ef330c854dea1dae0bf18165"
- integrity sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-syntax-logical-assignment-operators@^7.10.4":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
- integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
- integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-numeric-separator@^7.10.4":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97"
- integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-object-rest-spread@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
- integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-catch-binding@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
- integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-chaining@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
- integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-private-property-in-object@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad"
- integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-top-level-await@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c"
- integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-typescript@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz#bfc05b0cc31ebd8af09964650cee723bb228108b"
- integrity sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357"
- integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-transform-arrow-functions@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.7.tgz#1b9ed22e6890a0e9ff470371c73b8c749bcec386"
- integrity sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-async-generator-functions@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.7.tgz#af61a02b30d7bff5108c63bd39ac7938403426d7"
- integrity sha512-4B6OhTrwYKHYYgcwErvZjbmH9X5TxQBsaBHdzEIB4l71gR5jh/tuHGlb9in47udL2+wVUcOz5XXhhfhVJwEpEg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-remap-async-to-generator" "^7.25.7"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/traverse" "^7.25.7"
-
-"@babel/plugin-transform-async-to-generator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.7.tgz#a44c7323f8d4285a6c568dd43c5c361d6367ec52"
- integrity sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==
- dependencies:
- "@babel/helper-module-imports" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-remap-async-to-generator" "^7.25.7"
-
-"@babel/plugin-transform-block-scoped-functions@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.7.tgz#e0b8843d5571719a2f1bf7e284117a3379fcc17c"
- integrity sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-block-scoping@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.7.tgz#6dab95e98adf780ceef1b1c3ab0e55cd20dd410a"
- integrity sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-class-properties@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.7.tgz#a389cfca7a10ac80e3ff4c75fca08bd097ad1523"
- integrity sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-class-static-block@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.7.tgz#d2cf3c812e3b3162d56aadf4566f45c30538cb2c"
- integrity sha512-rvUUtoVlkDWtDWxGAiiQj0aNktTPn3eFynBcMC2IhsXweehwgdI9ODe+XjWw515kEmv22sSOTp/rxIRuTiB7zg==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
-
-"@babel/plugin-transform-classes@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.7.tgz#5103206cf80d02283bbbd044509ea3b65d0906bb"
- integrity sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-compilation-targets" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-replace-supers" "^7.25.7"
- "@babel/traverse" "^7.25.7"
- globals "^11.1.0"
-
-"@babel/plugin-transform-computed-properties@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.7.tgz#7f621f0aa1354b5348a935ab12e3903842466f65"
- integrity sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/template" "^7.25.7"
-
-"@babel/plugin-transform-destructuring@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.7.tgz#f6f26a9feefb5aa41fd45b6f5838901b5333d560"
- integrity sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-dotall-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.7.tgz#9d775c4a3ff1aea64045300fcd4309b4a610ef02"
- integrity sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-duplicate-keys@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.7.tgz#fbba7d1155eab76bd4f2a038cbd5d65883bd7a93"
- integrity sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.7.tgz#102b31608dcc22c08fbca1894e104686029dc141"
- integrity sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-dynamic-import@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.7.tgz#31905ab2cfa94dcf1b1f8ce66096720b2908e518"
- integrity sha512-UvcLuual4h7/GfylKm2IAA3aph9rwvAM2XBA0uPKU3lca+Maai4jBjjEVUS568ld6kJcgbouuumCBhMd/Yz17w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
-
-"@babel/plugin-transform-exponentiation-operator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.7.tgz#5961a3a23a398faccd6cddb34a2182807d75fb5f"
- integrity sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==
- dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-export-namespace-from@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.7.tgz#beb2679db6fd3bdfe6ad6de2c8cac84a86ef2da1"
- integrity sha512-h3MDAP5l34NQkkNulsTNyjdaR+OiB0Im67VU//sFupouP8Q6m9Spy7l66DcaAQxtmCqGdanPByLsnwFttxKISQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-
-"@babel/plugin-transform-for-of@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.7.tgz#0acfea0f27aa290818b5b48a5a44b3f03fc13669"
- integrity sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
-
-"@babel/plugin-transform-function-name@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.7.tgz#7e394ccea3693902a8b50ded8b6ae1fa7b8519fd"
- integrity sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==
- dependencies:
- "@babel/helper-compilation-targets" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/plugin-transform-json-strings@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.7.tgz#6626433554aff4bd6f76a2c621a1f40e802dfb0a"
- integrity sha512-Ot43PrL9TEAiCe8C/2erAjXMeVSnE/BLEx6eyrKLNFCCw5jvhTHKyHxdI1pA0kz5njZRYAnMO2KObGqOCRDYSA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
-
-"@babel/plugin-transform-literals@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.7.tgz#70cbdc742f2cfdb1a63ea2cbd018d12a60b213c3"
- integrity sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-logical-assignment-operators@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.7.tgz#93847feb513a1f191c5f5d903d991a0ee24fe99b"
- integrity sha512-iImzbA55BjiovLyG2bggWS+V+OLkaBorNvc/yJoeeDQGztknRnDdYfp2d/UPmunZYEnZi6Lg8QcTmNMHOB0lGA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
-
-"@babel/plugin-transform-member-expression-literals@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.7.tgz#0a36c3fbd450cc9e6485c507f005fa3d1bc8fca5"
- integrity sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-modules-amd@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.7.tgz#bb4e543b5611f6c8c685a2fd485408713a3adf3d"
- integrity sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==
- dependencies:
- "@babel/helper-module-transforms" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-modules-commonjs@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz#173f0c791bb7407c092ce6d77ee90eb3f2d1d2fd"
- integrity sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==
- dependencies:
- "@babel/helper-module-transforms" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-simple-access" "^7.25.7"
-
-"@babel/plugin-transform-modules-systemjs@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.7.tgz#8b14d319a177cc9c85ef8b0512afd429d9e2e60b"
- integrity sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==
- dependencies:
- "@babel/helper-module-transforms" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-validator-identifier" "^7.25.7"
- "@babel/traverse" "^7.25.7"
-
-"@babel/plugin-transform-modules-umd@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.7.tgz#00ee7a7e124289549381bfb0e24d87fd7f848367"
- integrity sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==
- dependencies:
- "@babel/helper-module-transforms" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-named-capturing-groups-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.7.tgz#a2f3f6d7f38693b462542951748f0a72a34d196d"
- integrity sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-new-target@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.7.tgz#52b2bde523b76c548749f38dc3054f1f45e82bc9"
- integrity sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-nullish-coalescing-operator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.7.tgz#0af84b86d4332654c43cf028dbdcf878b00ac168"
- integrity sha512-FbuJ63/4LEL32mIxrxwYaqjJxpbzxPVQj5a+Ebrc8JICV6YX8nE53jY+K0RZT3um56GoNWgkS2BQ/uLGTjtwfw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-
-"@babel/plugin-transform-numeric-separator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.7.tgz#a516b78f894d1c08283f39d809b2048fd2f29448"
- integrity sha512-8CbutzSSh4hmD+jJHIA8vdTNk15kAzOnFLVVgBSMGr28rt85ouT01/rezMecks9pkU939wDInImwCKv4ahU4IA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
-
-"@babel/plugin-transform-object-assign@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.25.7.tgz#2b3c9a7ae1790531df7aa987f3d67b0a6caf6437"
- integrity sha512-snTWKDjknsLh7l67henNYebPZ809tYTAunlSkPHu0upP70ehLMCHnozh4Dpq7OD2e7iYxhy560iqP+FlU8c2uQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-object-rest-spread@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.7.tgz#fa0916521be96fd434e2db59780b24b308c6d169"
- integrity sha512-1JdVKPhD7Y5PvgfFy0Mv2brdrolzpzSoUq2pr6xsR+m+3viGGeHEokFKsCgOkbeFOQxfB1Vt2F0cPJLRpFI4Zg==
- dependencies:
- "@babel/helper-compilation-targets" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-transform-parameters" "^7.25.7"
-
-"@babel/plugin-transform-object-super@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.7.tgz#582a9cea8cf0a1e02732be5b5a703a38dedf5661"
- integrity sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-replace-supers" "^7.25.7"
-
-"@babel/plugin-transform-optional-catch-binding@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.7.tgz#400e2d891f9288f5231694234696aa67164e4913"
- integrity sha512-m9obYBA39mDPN7lJzD5WkGGb0GO54PPLXsbcnj1Hyeu8mSRz7Gb4b1A6zxNX32ZuUySDK4G6it8SDFWD1nCnqg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
-
-"@babel/plugin-transform-optional-chaining@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.7.tgz#b7f7c9321aa1d8414e67799c28d87c23682e4d68"
- integrity sha512-h39agClImgPWg4H8mYVAbD1qP9vClFbEjqoJmt87Zen8pjqK8FTPUwrOXAvqu5soytwxrLMd2fx2KSCp2CHcNg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-
-"@babel/plugin-transform-parameters@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.7.tgz#80c38b03ef580f6d6bffe1c5254bb35986859ac7"
- integrity sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-private-methods@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.7.tgz#c790a04f837b4bd61d6b0317b43aa11ff67dce80"
- integrity sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-private-property-in-object@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.7.tgz#aff877efd05b57c4ad04611d8de97bf155a53369"
- integrity sha512-LzA5ESzBy7tqj00Yjey9yWfs3FKy4EmJyKOSWld144OxkTji81WWnUT8nkLUn+imN/zHL8ZQlOu/MTUAhHaX3g==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-create-class-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-
-"@babel/plugin-transform-property-literals@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.7.tgz#a8612b4ea4e10430f00012ecf0155662c7d6550d"
- integrity sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-react-display-name@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.25.7.tgz#2753e875a1b702fb1d806c4f5d4c194d64cadd88"
- integrity sha512-r0QY7NVU8OnrwE+w2IWiRom0wwsTbjx4+xH2RTd7AVdof3uurXOF+/mXHQDRk+2jIvWgSaCHKMgggfvM4dyUGA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-react-jsx-development@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.25.7.tgz#2fbd77887b8fa2942d7cb61edf1029ea1b048554"
- integrity sha512-5yd3lH1PWxzW6IZj+p+Y4OLQzz0/LzlOG8vGqonHfVR3euf1vyzyMUJk9Ac+m97BH46mFc/98t9PmYLyvgL3qg==
- dependencies:
- "@babel/plugin-transform-react-jsx" "^7.25.7"
-
-"@babel/plugin-transform-react-jsx@^7.16.0", "@babel/plugin-transform-react-jsx@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.7.tgz#f5e2af6020a562fe048dd343e571c4428e6c5632"
- integrity sha512-vILAg5nwGlR9EXE8JIOX4NHXd49lrYbN8hnjffDtoULwpL9hUx/N55nqh2qd0q6FyNDfjl9V79ecKGvFbcSA0Q==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-module-imports" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/plugin-syntax-jsx" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/plugin-transform-react-pure-annotations@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.25.7.tgz#6d0b8dadb2d3c5cbb8ade68c5efd49470b0d65f7"
- integrity sha512-6YTHJ7yjjgYqGc8S+CbEXhLICODk0Tn92j+vNJo07HFk9t3bjFgAKxPLFhHwF2NjmQVSI1zBRfBWUeVBa2osfA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-regenerator@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.7.tgz#6eb006e6d26f627bc2f7844a9f19770721ad6f3e"
- integrity sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- regenerator-transform "^0.15.2"
-
-"@babel/plugin-transform-reserved-words@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.7.tgz#dc56b25e02afaabef3ce0c5b06b0916e8523e995"
- integrity sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-runtime@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.7.tgz#435a4fab67273f00047dc806e05069c9c6344e12"
- integrity sha512-Y9p487tyTzB0yDYQOtWnC+9HGOuogtP3/wNpun1xJXEEvI6vip59BSBTsHnekZLqxmPcgsrAKt46HAAb//xGhg==
- dependencies:
- "@babel/helper-module-imports" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- babel-plugin-polyfill-corejs2 "^0.4.10"
- babel-plugin-polyfill-corejs3 "^0.10.6"
- babel-plugin-polyfill-regenerator "^0.6.1"
- semver "^6.3.1"
-
-"@babel/plugin-transform-shorthand-properties@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.7.tgz#92690a9c671915602d91533c278cc8f6bf12275f"
- integrity sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-spread@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.7.tgz#df83e899a9fc66284ee601a7b738568435b92998"
- integrity sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
-
-"@babel/plugin-transform-sticky-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.7.tgz#341c7002bef7f29037be7fb9684e374442dd0d17"
- integrity sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-template-literals@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.7.tgz#e566c581bb16d8541dd8701093bb3457adfce16b"
- integrity sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-typeof-symbol@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.7.tgz#debb1287182efd20488f126be343328c679b66eb"
- integrity sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-typescript@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.7.tgz#8fc7c3d28ddd36bce45b9b48594129d0e560cfbe"
- integrity sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.25.7"
- "@babel/helper-create-class-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7"
- "@babel/plugin-syntax-typescript" "^7.25.7"
-
-"@babel/plugin-transform-unicode-escapes@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.7.tgz#973592b6d13a914794e1de8cf1383e50e0f87f81"
- integrity sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-unicode-property-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.7.tgz#25349197cce964b1343f74fa7cfdf791a1b1919e"
- integrity sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-unicode-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.7.tgz#f93a93441baf61f713b6d5552aaa856bfab34809"
- integrity sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/plugin-transform-unicode-sets-regex@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.7.tgz#d1b3295d29e0f8f4df76abc909ad1ebee919560c"
- integrity sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
-
-"@babel/preset-env@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.25.7.tgz#fc1b092152db4b58377b85dc05c890081c1157e0"
- integrity sha512-Gibz4OUdyNqqLj+7OAvBZxOD7CklCtMA5/j0JgUEwOnaRULsPDXmic2iKxL2DX2vQduPR5wH2hjZas/Vr/Oc0g==
- dependencies:
- "@babel/compat-data" "^7.25.7"
- "@babel/helper-compilation-targets" "^7.25.7"
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-validator-option" "^7.25.7"
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.7"
- "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.7"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.7"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.7"
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.7"
- "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-class-properties" "^7.12.13"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
- "@babel/plugin-syntax-import-assertions" "^7.25.7"
- "@babel/plugin-syntax-import-attributes" "^7.25.7"
- "@babel/plugin-syntax-import-meta" "^7.10.4"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
- "@babel/plugin-syntax-top-level-await" "^7.14.5"
- "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
- "@babel/plugin-transform-arrow-functions" "^7.25.7"
- "@babel/plugin-transform-async-generator-functions" "^7.25.7"
- "@babel/plugin-transform-async-to-generator" "^7.25.7"
- "@babel/plugin-transform-block-scoped-functions" "^7.25.7"
- "@babel/plugin-transform-block-scoping" "^7.25.7"
- "@babel/plugin-transform-class-properties" "^7.25.7"
- "@babel/plugin-transform-class-static-block" "^7.25.7"
- "@babel/plugin-transform-classes" "^7.25.7"
- "@babel/plugin-transform-computed-properties" "^7.25.7"
- "@babel/plugin-transform-destructuring" "^7.25.7"
- "@babel/plugin-transform-dotall-regex" "^7.25.7"
- "@babel/plugin-transform-duplicate-keys" "^7.25.7"
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.7"
- "@babel/plugin-transform-dynamic-import" "^7.25.7"
- "@babel/plugin-transform-exponentiation-operator" "^7.25.7"
- "@babel/plugin-transform-export-namespace-from" "^7.25.7"
- "@babel/plugin-transform-for-of" "^7.25.7"
- "@babel/plugin-transform-function-name" "^7.25.7"
- "@babel/plugin-transform-json-strings" "^7.25.7"
- "@babel/plugin-transform-literals" "^7.25.7"
- "@babel/plugin-transform-logical-assignment-operators" "^7.25.7"
- "@babel/plugin-transform-member-expression-literals" "^7.25.7"
- "@babel/plugin-transform-modules-amd" "^7.25.7"
- "@babel/plugin-transform-modules-commonjs" "^7.25.7"
- "@babel/plugin-transform-modules-systemjs" "^7.25.7"
- "@babel/plugin-transform-modules-umd" "^7.25.7"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.7"
- "@babel/plugin-transform-new-target" "^7.25.7"
- "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.7"
- "@babel/plugin-transform-numeric-separator" "^7.25.7"
- "@babel/plugin-transform-object-rest-spread" "^7.25.7"
- "@babel/plugin-transform-object-super" "^7.25.7"
- "@babel/plugin-transform-optional-catch-binding" "^7.25.7"
- "@babel/plugin-transform-optional-chaining" "^7.25.7"
- "@babel/plugin-transform-parameters" "^7.25.7"
- "@babel/plugin-transform-private-methods" "^7.25.7"
- "@babel/plugin-transform-private-property-in-object" "^7.25.7"
- "@babel/plugin-transform-property-literals" "^7.25.7"
- "@babel/plugin-transform-regenerator" "^7.25.7"
- "@babel/plugin-transform-reserved-words" "^7.25.7"
- "@babel/plugin-transform-shorthand-properties" "^7.25.7"
- "@babel/plugin-transform-spread" "^7.25.7"
- "@babel/plugin-transform-sticky-regex" "^7.25.7"
- "@babel/plugin-transform-template-literals" "^7.25.7"
- "@babel/plugin-transform-typeof-symbol" "^7.25.7"
- "@babel/plugin-transform-unicode-escapes" "^7.25.7"
- "@babel/plugin-transform-unicode-property-regex" "^7.25.7"
- "@babel/plugin-transform-unicode-regex" "^7.25.7"
- "@babel/plugin-transform-unicode-sets-regex" "^7.25.7"
- "@babel/preset-modules" "0.1.6-no-external-plugins"
- babel-plugin-polyfill-corejs2 "^0.4.10"
- babel-plugin-polyfill-corejs3 "^0.10.6"
- babel-plugin-polyfill-regenerator "^0.6.1"
- core-js-compat "^3.38.1"
- semver "^6.3.1"
-
-"@babel/preset-modules@0.1.6-no-external-plugins":
- version "0.1.6-no-external-plugins"
- resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a"
- integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/types" "^7.4.4"
- esutils "^2.0.2"
-
-"@babel/preset-react@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.25.7.tgz#081cbe1dea363b732764d06a0fdda67ffa17735d"
- integrity sha512-GjV0/mUEEXpi1U5ZgDprMRRgajGMRW3G5FjMr5KLKD8nT2fTG8+h/klV3+6Dm5739QE+K5+2e91qFKAYI3pmRg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-validator-option" "^7.25.7"
- "@babel/plugin-transform-react-display-name" "^7.25.7"
- "@babel/plugin-transform-react-jsx" "^7.25.7"
- "@babel/plugin-transform-react-jsx-development" "^7.25.7"
- "@babel/plugin-transform-react-pure-annotations" "^7.25.7"
-
-"@babel/preset-typescript@^7.16.0":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz#43c5b68eccb856ae5b52274b77b1c3c413cde1b7"
- integrity sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.25.7"
- "@babel/helper-validator-option" "^7.25.7"
- "@babel/plugin-syntax-jsx" "^7.25.7"
- "@babel/plugin-transform-modules-commonjs" "^7.25.7"
- "@babel/plugin-transform-typescript" "^7.25.7"
-
-"@babel/runtime@^7.16.0", "@babel/runtime@^7.8.4":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.7.tgz#7ffb53c37a8f247c8c4d335e89cdf16a2e0d0fb6"
- integrity sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==
- dependencies:
- regenerator-runtime "^0.14.0"
-
-"@babel/template@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769"
- integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==
- dependencies:
- "@babel/code-frame" "^7.25.7"
- "@babel/parser" "^7.25.7"
- "@babel/types" "^7.25.7"
-
-"@babel/traverse@^7.25.7":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8"
- integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==
- dependencies:
- "@babel/code-frame" "^7.25.7"
- "@babel/generator" "^7.25.7"
- "@babel/parser" "^7.25.7"
- "@babel/template" "^7.25.7"
- "@babel/types" "^7.25.7"
- debug "^4.3.1"
- globals "^11.1.0"
-
-"@babel/types@^7.25.7", "@babel/types@^7.4.4":
- version "7.25.7"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.7.tgz#1b7725c1d3a59f328cb700ce704c46371e6eef9b"
- integrity sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ==
- dependencies:
- "@babel/helper-string-parser" "^7.25.7"
- "@babel/helper-validator-identifier" "^7.25.7"
- to-fast-properties "^2.0.0"
-
-"@discoveryjs/json-ext@0.5.7", "@discoveryjs/json-ext@^0.5.0":
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
- integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
+"@discoveryjs/json-ext@^0.5.0":
+ "integrity" "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw=="
+ "resolved" "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz"
+ "version" "0.5.7"
"@flarum/prettier-config@^1.0.0":
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/@flarum/prettier-config/-/prettier-config-1.0.0.tgz#3ce431fa376994e8133e313dbe7c4ee3d3fe1a39"
- integrity sha512-3/AcliIi5jPt4i7COb5hsLv6hm4EeXT9yI9I2EuEvhPi2QR+O9Y/8wrqRuO5mDkRzCIhUY+mjIL/f9770Zwfqg==
+ "integrity" "sha512-3/AcliIi5jPt4i7COb5hsLv6hm4EeXT9yI9I2EuEvhPi2QR+O9Y/8wrqRuO5mDkRzCIhUY+mjIL/f9770Zwfqg=="
+ "resolved" "https://registry.npmjs.org/@flarum/prettier-config/-/prettier-config-1.0.0.tgz"
+ "version" "1.0.0"
"@jridgewell/gen-mapping@^0.3.5":
- version "0.3.5"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36"
- integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==
+ "integrity" "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz"
+ "version" "0.3.5"
dependencies:
"@jridgewell/set-array" "^1.2.1"
"@jridgewell/sourcemap-codec" "^1.4.10"
"@jridgewell/trace-mapping" "^0.3.24"
"@jridgewell/resolve-uri@^3.1.0":
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6"
- integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
+ "integrity" "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz"
+ "version" "3.1.2"
"@jridgewell/set-array@^1.2.1":
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280"
- integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
+ "integrity" "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz"
+ "version" "1.2.1"
"@jridgewell/source-map@^0.3.3":
- version "0.3.6"
- resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a"
- integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==
+ "integrity" "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz"
+ "version" "0.3.6"
dependencies:
"@jridgewell/gen-mapping" "^0.3.5"
"@jridgewell/trace-mapping" "^0.3.25"
"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14":
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a"
- integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==
+ "integrity" "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz"
+ "version" "1.5.0"
"@jridgewell/trace-mapping@^0.3.20", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
- version "0.3.25"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
- integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
+ "integrity" "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="
+ "resolved" "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz"
+ "version" "0.3.25"
dependencies:
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
-"@polka/url@^1.0.0-next.24":
- version "1.0.0-next.28"
- resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.28.tgz#d45e01c4a56f143ee69c54dd6b12eade9e270a73"
- integrity sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==
-
"@types/estree@^1.0.5":
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50"
- integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==
-
-"@types/jquery@^3.5.5":
- version "3.5.31"
- resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.5.31.tgz#3605df86427f6c4e6b5b5a470ba180f74107cffa"
- integrity sha512-rf/iB+cPJ/YZfMwr+FVuQbm7IaWC4y3FVYfVDxRGqmUCFjjPII0HWaP0vTPJGp6m4o13AXySCcMbWfrWtBFAKw==
- dependencies:
- "@types/sizzle" "*"
-
-"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8":
- version "7.0.15"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
- integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
+ "integrity" "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw=="
+ "resolved" "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz"
+ "version" "1.0.6"
-"@types/mithril@^2.0.7":
- version "2.2.7"
- resolved "https://registry.yarnpkg.com/@types/mithril/-/mithril-2.2.7.tgz#1952ac0fbd4816b49260fde69b766fec0df6db7c"
- integrity sha512-uetxoYizBMHPELl6DSZUfO6Q/aOm+h0NUCv9bVAX2iAxfrdBSOvU9KKFl+McTtxR13F+BReYLY814pJsZvnSxg==
+"@types/json-schema@^7.0.8":
+ "integrity" "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
+ "resolved" "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz"
+ "version" "7.0.15"
"@types/node@*":
- version "22.7.4"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.4.tgz#e35d6f48dca3255ce44256ddc05dee1c23353fcc"
- integrity sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg==
+ "integrity" "sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg=="
+ "resolved" "https://registry.npmjs.org/@types/node/-/node-22.7.4.tgz"
+ "version" "22.7.4"
dependencies:
- undici-types "~6.19.2"
-
-"@types/sizzle@*":
- version "2.3.8"
- resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.8.tgz#518609aefb797da19bf222feb199e8f653ff7627"
- integrity sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==
-
-"@types/throttle-debounce@^2.1.0":
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/@types/throttle-debounce/-/throttle-debounce-2.1.0.tgz#1c3df624bfc4b62f992d3012b84c56d41eab3776"
- integrity sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==
-
-"@webassemblyjs/ast@1.12.1", "@webassemblyjs/ast@^1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.12.1.tgz#bb16a0e8b1914f979f45864c23819cc3e3f0d4bb"
- integrity sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==
+ "undici-types" "~6.19.2"
+
+"@webassemblyjs/ast@^1.12.1", "@webassemblyjs/ast@1.12.1":
+ "integrity" "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/helper-numbers" "1.11.6"
"@webassemblyjs/helper-wasm-bytecode" "1.11.6"
"@webassemblyjs/floating-point-hex-parser@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431"
- integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==
+ "integrity" "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz"
+ "version" "1.11.6"
"@webassemblyjs/helper-api-error@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768"
- integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==
+ "integrity" "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz"
+ "version" "1.11.6"
"@webassemblyjs/helper-buffer@1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz#6df20d272ea5439bf20ab3492b7fb70e9bfcb3f6"
- integrity sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==
+ "integrity" "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz"
+ "version" "1.12.1"
"@webassemblyjs/helper-numbers@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5"
- integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==
+ "integrity" "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz"
+ "version" "1.11.6"
dependencies:
"@webassemblyjs/floating-point-hex-parser" "1.11.6"
"@webassemblyjs/helper-api-error" "1.11.6"
"@xtuc/long" "4.2.2"
"@webassemblyjs/helper-wasm-bytecode@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9"
- integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==
+ "integrity" "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz"
+ "version" "1.11.6"
"@webassemblyjs/helper-wasm-section@1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz#3da623233ae1a60409b509a52ade9bc22a37f7bf"
- integrity sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==
+ "integrity" "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@webassemblyjs/helper-buffer" "1.12.1"
@@ -1192,28 +117,28 @@
"@webassemblyjs/wasm-gen" "1.12.1"
"@webassemblyjs/ieee754@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a"
- integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==
+ "integrity" "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz"
+ "version" "1.11.6"
dependencies:
"@xtuc/ieee754" "^1.2.0"
"@webassemblyjs/leb128@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7"
- integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==
+ "integrity" "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz"
+ "version" "1.11.6"
dependencies:
"@xtuc/long" "4.2.2"
"@webassemblyjs/utf8@1.11.6":
- version "1.11.6"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a"
- integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==
+ "integrity" "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz"
+ "version" "1.11.6"
"@webassemblyjs/wasm-edit@^1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz#9f9f3ff52a14c980939be0ef9d5df9ebc678ae3b"
- integrity sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==
+ "integrity" "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@webassemblyjs/helper-buffer" "1.12.1"
@@ -1225,9 +150,9 @@
"@webassemblyjs/wast-printer" "1.12.1"
"@webassemblyjs/wasm-gen@1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz#a6520601da1b5700448273666a71ad0a45d78547"
- integrity sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==
+ "integrity" "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.6"
@@ -1236,19 +161,19 @@
"@webassemblyjs/utf8" "1.11.6"
"@webassemblyjs/wasm-opt@1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz#9e6e81475dfcfb62dab574ac2dda38226c232bc5"
- integrity sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==
+ "integrity" "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@webassemblyjs/helper-buffer" "1.12.1"
"@webassemblyjs/wasm-gen" "1.12.1"
"@webassemblyjs/wasm-parser" "1.12.1"
-"@webassemblyjs/wasm-parser@1.12.1", "@webassemblyjs/wasm-parser@^1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz#c47acb90e6f083391e3fa61d113650eea1e95937"
- integrity sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==
+"@webassemblyjs/wasm-parser@^1.12.1", "@webassemblyjs/wasm-parser@1.12.1":
+ "integrity" "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@webassemblyjs/helper-api-error" "1.11.6"
@@ -1258,1025 +183,649 @@
"@webassemblyjs/utf8" "1.11.6"
"@webassemblyjs/wast-printer@1.12.1":
- version "1.12.1"
- resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz#bcecf661d7d1abdaf989d8341a4833e33e2b31ac"
- integrity sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==
+ "integrity" "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA=="
+ "resolved" "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz"
+ "version" "1.12.1"
dependencies:
"@webassemblyjs/ast" "1.12.1"
"@xtuc/long" "4.2.2"
"@webpack-cli/configtest@^2.1.1":
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-2.1.1.tgz#3b2f852e91dac6e3b85fb2a314fb8bef46d94646"
- integrity sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==
+ "integrity" "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw=="
+ "resolved" "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz"
+ "version" "2.1.1"
"@webpack-cli/info@^2.0.2":
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-2.0.2.tgz#cc3fbf22efeb88ff62310cf885c5b09f44ae0fdd"
- integrity sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==
+ "integrity" "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A=="
+ "resolved" "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz"
+ "version" "2.0.2"
"@webpack-cli/serve@^2.0.5":
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.5.tgz#325db42395cd49fe6c14057f9a900e427df8810e"
- integrity sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==
+ "integrity" "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ=="
+ "resolved" "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz"
+ "version" "2.0.5"
"@xtuc/ieee754@^1.2.0":
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
- integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
+ "integrity" "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA=="
+ "resolved" "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz"
+ "version" "1.2.0"
"@xtuc/long@4.2.2":
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
- integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
-
-acorn-import-attributes@^1.9.5:
- version "1.9.5"
- resolved "https://registry.yarnpkg.com/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz#7eb1557b1ba05ef18b5ed0ec67591bfab04688ef"
- integrity sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==
-
-acorn-walk@^8.0.0:
- version "8.3.4"
- resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7"
- integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==
- dependencies:
- acorn "^8.11.0"
-
-acorn@^8.0.4, acorn@^8.11.0, acorn@^8.7.1, acorn@^8.8.2:
- version "8.12.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248"
- integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==
-
-ajv-keywords@^3.5.2:
- version "3.5.2"
- resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
- integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
-
-ajv@^6.12.4, ajv@^6.12.5:
- version "6.12.6"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
- integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
- dependencies:
- fast-deep-equal "^3.1.1"
- fast-json-stable-stringify "^2.0.0"
- json-schema-traverse "^0.4.1"
- uri-js "^4.2.2"
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==
- dependencies:
- color-convert "^1.9.0"
-
-babel-loader@^8.2.3:
- version "8.4.1"
- resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.4.1.tgz#6ccb75c66e62c3b144e1c5f2eaec5b8f6c08c675"
- integrity sha512-nXzRChX+Z1GoE6yWavBQg6jDslyFF3SDjl2paADuoQtQW10JqShJt62R6eJQ5m/pjJFDT8xgKIWSP85OY8eXeA==
- dependencies:
- find-cache-dir "^3.3.1"
- loader-utils "^2.0.4"
- make-dir "^3.1.0"
- schema-utils "^2.6.5"
-
-babel-plugin-polyfill-corejs2@^0.4.10:
- version "0.4.11"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz#30320dfe3ffe1a336c15afdcdafd6fd615b25e33"
- integrity sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==
- dependencies:
- "@babel/compat-data" "^7.22.6"
- "@babel/helper-define-polyfill-provider" "^0.6.2"
- semver "^6.3.1"
-
-babel-plugin-polyfill-corejs3@^0.10.6:
- version "0.10.6"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7"
- integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.2"
- core-js-compat "^3.38.0"
-
-babel-plugin-polyfill-regenerator@^0.6.1:
- version "0.6.2"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz#addc47e240edd1da1058ebda03021f382bba785e"
- integrity sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.6.2"
-
-big.js@^5.2.2:
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
- integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
-
-browserslist@^4.21.10, browserslist@^4.23.3, browserslist@^4.24.0:
- version "4.24.0"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.0.tgz#a1325fe4bc80b64fda169629fc01b3d6cecd38d4"
- integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==
- dependencies:
- caniuse-lite "^1.0.30001663"
- electron-to-chromium "^1.5.28"
- node-releases "^2.0.18"
- update-browserslist-db "^1.1.0"
-
-buffer-from@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
- integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
-
-caniuse-lite@^1.0.30001663:
- version "1.0.30001667"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz#99fc5ea0d9c6e96897a104a8352604378377f949"
- integrity sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==
-
-chalk@^2.4.2:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
- integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
- dependencies:
- ansi-styles "^3.2.1"
- escape-string-regexp "^1.0.5"
- supports-color "^5.3.0"
-
-chrome-trace-event@^1.0.2:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b"
- integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==
-
-clone-deep@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
- integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==
- dependencies:
- is-plain-object "^2.0.4"
- kind-of "^6.0.2"
- shallow-clone "^3.0.0"
-
-color-convert@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
- integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
- dependencies:
- color-name "1.1.3"
-
-color-name@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
-
-colorette@^2.0.14:
- version "2.0.20"
- resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
- integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
-
-commander@^10.0.1:
- version "10.0.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06"
- integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==
-
-commander@^2.20.0:
- version "2.20.3"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
- integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
-
-commander@^7.2.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
- integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
-
-commondir@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
- integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==
-
-convert-source-map@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
- integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
-
-core-js-compat@^3.38.0, core-js-compat@^3.38.1:
- version "3.38.1"
- resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09"
- integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==
- dependencies:
- browserslist "^4.23.3"
-
-cross-spawn@^7.0.3:
- version "7.0.3"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
- integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-dayjs@^1.10.4:
- version "1.11.13"
- resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.13.tgz#92430b0139055c3ebb60150aa13e860a4b5a366c"
- integrity sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==
-
-debounce@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5"
- integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==
-
-debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
- version "4.3.7"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52"
- integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==
- dependencies:
- ms "^2.1.3"
-
-duplexer@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
- integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
-
-electron-to-chromium@^1.5.28:
- version "1.5.32"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.32.tgz#4a05ee78e29e240aabaf73a67ce9fe73f52e1bc7"
- integrity sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==
-
-emojis-list@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
- integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
-
-enhanced-resolve@^5.17.1:
- version "5.17.1"
- resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz#67bfbbcc2f81d511be77d686a90267ef7f898a15"
- integrity sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==
- dependencies:
- graceful-fs "^4.2.4"
- tapable "^2.2.0"
-
-envinfo@^7.7.3:
- version "7.14.0"
- resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.14.0.tgz#26dac5db54418f2a4c1159153a0b2ae980838aae"
- integrity sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==
-
-es-module-lexer@^1.2.1:
- version "1.5.4"
- resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.5.4.tgz#a8efec3a3da991e60efa6b633a7cad6ab8d26b78"
- integrity sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==
-
-escalade@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
- integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
-
-escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
- integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
-
-escape-string-regexp@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
- integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
-
-eslint-scope@5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
- integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
- dependencies:
- esrecurse "^4.3.0"
- estraverse "^4.1.1"
-
-esrecurse@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
- integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
- dependencies:
- estraverse "^5.2.0"
-
-estraverse@^4.1.1:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
- integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
-
-estraverse@^5.2.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
- integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
-
-esutils@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
- integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-
-events@^3.2.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
- integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
-
-fast-deep-equal@^3.1.1:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-json-stable-stringify@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fastest-levenshtein@^1.0.12:
- version "1.0.16"
- resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz#210e61b6ff181de91ea9b3d1b84fdedd47e034e5"
- integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==
-
-find-cache-dir@^3.3.1:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b"
- integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==
- dependencies:
- commondir "^1.0.1"
- make-dir "^3.0.2"
- pkg-dir "^4.1.0"
-
-find-up@^4.0.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
- integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
- dependencies:
- locate-path "^5.0.0"
- path-exists "^4.0.0"
-
-flarum-tsconfig@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/flarum-tsconfig/-/flarum-tsconfig-1.0.2.tgz#1dda4d867a1dddc627c2afbc74af12d602371ecd"
- integrity sha512-RUaN7D6noLK9vY1F86NIc+IlIP1YAA3bJ4jGR5pIm8UxvLBLW8qrAHzIosuQJgvnge7VgTA5c2LoNefUK/9EiQ==
+ "integrity" "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
+ "resolved" "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz"
+ "version" "4.2.2"
+
+"acorn-import-attributes@^1.9.5":
+ "integrity" "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ=="
+ "resolved" "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz"
+ "version" "1.9.5"
+
+"acorn@^8", "acorn@^8.7.1", "acorn@^8.8.2":
+ "integrity" "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg=="
+ "resolved" "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz"
+ "version" "8.12.1"
+
+"ajv-keywords@^3.5.2":
+ "integrity" "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ=="
+ "resolved" "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz"
+ "version" "3.5.2"
+
+"ajv@^6.12.5", "ajv@^6.9.1":
+ "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g=="
+ "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz"
+ "version" "6.12.6"
+ dependencies:
+ "fast-deep-equal" "^3.1.1"
+ "fast-json-stable-stringify" "^2.0.0"
+ "json-schema-traverse" "^0.4.1"
+ "uri-js" "^4.2.2"
+
+"browserslist@^4.21.10", "browserslist@>= 4.21.0":
+ "integrity" "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A=="
+ "resolved" "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz"
+ "version" "4.24.0"
+ dependencies:
+ "caniuse-lite" "^1.0.30001663"
+ "electron-to-chromium" "^1.5.28"
+ "node-releases" "^2.0.18"
+ "update-browserslist-db" "^1.1.0"
+
+"buffer-from@^1.0.0":
+ "integrity" "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
+ "resolved" "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz"
+ "version" "1.1.2"
+
+"caniuse-lite@^1.0.30001663":
+ "integrity" "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw=="
+ "resolved" "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz"
+ "version" "1.0.30001667"
+
+"chrome-trace-event@^1.0.2":
+ "integrity" "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ=="
+ "resolved" "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz"
+ "version" "1.0.4"
+
+"clone-deep@^4.0.1":
+ "integrity" "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ=="
+ "resolved" "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
+ "version" "4.0.1"
+ dependencies:
+ "is-plain-object" "^2.0.4"
+ "kind-of" "^6.0.2"
+ "shallow-clone" "^3.0.0"
+
+"colorette@^2.0.14":
+ "integrity" "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w=="
+ "resolved" "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz"
+ "version" "2.0.20"
+
+"commander@^10.0.1":
+ "integrity" "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug=="
+ "resolved" "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz"
+ "version" "10.0.1"
+
+"commander@^2.20.0":
+ "integrity" "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
+ "resolved" "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz"
+ "version" "2.20.3"
+
+"cross-spawn@^7.0.3":
+ "integrity" "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w=="
+ "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
+ "version" "7.0.3"
+ dependencies:
+ "path-key" "^3.1.0"
+ "shebang-command" "^2.0.0"
+ "which" "^2.0.1"
+
+"electron-to-chromium@^1.5.28":
+ "integrity" "sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw=="
+ "resolved" "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.32.tgz"
+ "version" "1.5.32"
+
+"enhanced-resolve@^5.17.1":
+ "integrity" "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg=="
+ "resolved" "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz"
+ "version" "5.17.1"
+ dependencies:
+ "graceful-fs" "^4.2.4"
+ "tapable" "^2.2.0"
+
+"envinfo@^7.7.3":
+ "integrity" "sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg=="
+ "resolved" "https://registry.npmjs.org/envinfo/-/envinfo-7.14.0.tgz"
+ "version" "7.14.0"
+
+"es-module-lexer@^1.2.1":
+ "integrity" "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw=="
+ "resolved" "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz"
+ "version" "1.5.4"
+
+"escalade@^3.2.0":
+ "integrity" "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA=="
+ "resolved" "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz"
+ "version" "3.2.0"
+
+"eslint-scope@5.1.1":
+ "integrity" "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw=="
+ "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz"
+ "version" "5.1.1"
+ dependencies:
+ "esrecurse" "^4.3.0"
+ "estraverse" "^4.1.1"
+
+"esrecurse@^4.3.0":
+ "integrity" "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag=="
+ "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz"
+ "version" "4.3.0"
+ dependencies:
+ "estraverse" "^5.2.0"
+
+"estraverse@^4.1.1":
+ "integrity" "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw=="
+ "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz"
+ "version" "4.3.0"
+
+"estraverse@^5.2.0":
+ "integrity" "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
+ "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz"
+ "version" "5.3.0"
+
+"events@^3.2.0":
+ "integrity" "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q=="
+ "resolved" "https://registry.npmjs.org/events/-/events-3.3.0.tgz"
+ "version" "3.3.0"
+
+"fast-deep-equal@^3.1.1":
+ "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+ "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz"
+ "version" "3.1.3"
+
+"fast-json-stable-stringify@^2.0.0":
+ "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+ "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz"
+ "version" "2.1.0"
+
+"fastest-levenshtein@^1.0.12":
+ "integrity" "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg=="
+ "resolved" "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz"
+ "version" "1.0.16"
+
+"find-up@^4.0.0":
+ "integrity" "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw=="
+ "resolved" "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz"
+ "version" "4.1.0"
+ dependencies:
+ "locate-path" "^5.0.0"
+ "path-exists" "^4.0.0"
+
+"flarum-tsconfig@file:../../../framework/js-packages/tsconfig":
+ "resolved" "file:../../../framework/js-packages/tsconfig"
+ "version" "2.0.0"
dependencies:
"@types/jquery" "^3.5.5"
"@types/mithril" "^2.0.7"
"@types/throttle-debounce" "^2.1.0"
- dayjs "^1.10.4"
-
-flarum-webpack-config@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/flarum-webpack-config/-/flarum-webpack-config-2.0.2.tgz#efa67268904390a1e7aee55e1ac5a794a57e0855"
- integrity sha512-kUCaCsXL8s/OhSWleWtIppRXDNBzAf8/ewCx9OIF0zNO0hlvY5T1N0EO0AnyUJbsp5nOCdzsTo9rTRRsbKT+IA==
- dependencies:
- "@babel/core" "^7.16.0"
- "@babel/plugin-proposal-class-properties" "^7.16.0"
- "@babel/plugin-proposal-private-methods" "^7.16.0"
- "@babel/plugin-transform-object-assign" "^7.16.0"
- "@babel/plugin-transform-react-jsx" "^7.16.0"
- "@babel/plugin-transform-runtime" "^7.16.0"
- "@babel/preset-env" "^7.16.0"
- "@babel/preset-react" "^7.16.0"
- "@babel/preset-typescript" "^7.16.0"
- "@babel/runtime" "^7.16.0"
- babel-loader "^8.2.3"
- typescript "^4.4.4"
- webpack "^5.76.0"
- webpack-bundle-analyzer "^4.5.0"
-
-flat@^5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
- integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
-
-flatpickr@^4.6.13:
- version "4.6.13"
- resolved "https://registry.yarnpkg.com/flatpickr/-/flatpickr-4.6.13.tgz#8a029548187fd6e0d670908471e43abe9ad18d94"
- integrity sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw==
-
-function-bind@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
- integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-
-gensync@^1.0.0-beta.2:
- version "1.0.0-beta.2"
- resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
- integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-
-glob-to-regexp@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
- integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
-
-globals@^11.1.0:
- version "11.12.0"
- resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
- integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
-
-graceful-fs@^4.1.2, graceful-fs@^4.2.11, graceful-fs@^4.2.4:
- version "4.2.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
- integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
-
-gzip-size@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462"
- integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==
- dependencies:
- duplexer "^0.1.2"
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
-
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-
-hasown@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
- integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
- dependencies:
- function-bind "^1.1.2"
-
-html-escaper@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
- integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
-
-import-local@^3.0.2:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.2.0.tgz#c3d5c745798c02a6f8b897726aba5100186ee260"
- integrity sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==
- dependencies:
- pkg-dir "^4.2.0"
- resolve-cwd "^3.0.0"
-
-interpret@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/interpret/-/interpret-3.1.1.tgz#5be0ceed67ca79c6c4bc5cf0d7ee843dcea110c4"
- integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==
-
-is-core-module@^2.13.0:
- version "2.15.1"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37"
- integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==
- dependencies:
- hasown "^2.0.2"
-
-is-plain-object@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
- integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
- dependencies:
- isobject "^3.0.1"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-
-isobject@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
- integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
-
-jest-worker@^27.4.5:
- version "27.5.1"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0"
- integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==
+ "dayjs" "^1.10.4"
+
+"flarum-webpack-config@file:../../../framework/js-packages/webpack-config":
+ "resolved" "file:../../../framework/js-packages/webpack-config"
+ "version" "3.0.0"
+ dependencies:
+ "@babel/core" "^7.20.2"
+ "@babel/plugin-proposal-class-properties" "^7.18.6"
+ "@babel/plugin-proposal-private-methods" "^7.18.6"
+ "@babel/plugin-transform-object-assign" "^7.18.6"
+ "@babel/plugin-transform-react-jsx" "^7.19.0"
+ "@babel/plugin-transform-runtime" "^7.19.6"
+ "@babel/preset-env" "^7.20.2"
+ "@babel/preset-react" "^7.18.6"
+ "@babel/preset-typescript" "^7.18.6"
+ "@babel/runtime" "^7.20.1"
+ "babel-loader" "^9.1.0"
+ "loader-utils" "^1.4.0"
+ "schema-utils" "^3.0.0"
+ "typescript" "^4.9.3"
+ "webpack" "^5.76.0"
+ "webpack-bundle-analyzer" "^4.7.0"
+
+"flat@^5.0.2":
+ "integrity" "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ=="
+ "resolved" "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz"
+ "version" "5.0.2"
+
+"flatpickr@^4.6.13":
+ "integrity" "sha512-97PMG/aywoYpB4IvbvUJi0RQi8vearvU0oov1WW3k0WZPBMrTQVqekSX5CjSG/M4Q3i6A/0FKXC7RyAoAUUSPw=="
+ "resolved" "https://registry.npmjs.org/flatpickr/-/flatpickr-4.6.13.tgz"
+ "version" "4.6.13"
+
+"function-bind@^1.1.2":
+ "integrity" "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="
+ "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz"
+ "version" "1.1.2"
+
+"glob-to-regexp@^0.4.1":
+ "integrity" "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
+ "resolved" "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz"
+ "version" "0.4.1"
+
+"graceful-fs@^4.1.2", "graceful-fs@^4.2.11", "graceful-fs@^4.2.4":
+ "integrity" "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz"
+ "version" "4.2.11"
+
+"has-flag@^4.0.0":
+ "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
+ "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
+ "version" "4.0.0"
+
+"hasown@^2.0.2":
+ "integrity" "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ=="
+ "resolved" "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz"
+ "version" "2.0.2"
+ dependencies:
+ "function-bind" "^1.1.2"
+
+"import-local@^3.0.2":
+ "integrity" "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA=="
+ "resolved" "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz"
+ "version" "3.2.0"
+ dependencies:
+ "pkg-dir" "^4.2.0"
+ "resolve-cwd" "^3.0.0"
+
+"interpret@^3.1.1":
+ "integrity" "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ=="
+ "resolved" "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz"
+ "version" "3.1.1"
+
+"is-core-module@^2.13.0":
+ "integrity" "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ=="
+ "resolved" "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz"
+ "version" "2.15.1"
+ dependencies:
+ "hasown" "^2.0.2"
+
+"is-plain-object@^2.0.4":
+ "integrity" "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og=="
+ "resolved" "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz"
+ "version" "2.0.4"
+ dependencies:
+ "isobject" "^3.0.1"
+
+"isexe@^2.0.0":
+ "integrity" "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
+ "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
+ "version" "2.0.0"
+
+"isobject@^3.0.1":
+ "integrity" "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg=="
+ "resolved" "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz"
+ "version" "3.0.1"
+
+"jest-worker@^27.4.5":
+ "integrity" "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg=="
+ "resolved" "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz"
+ "version" "27.5.1"
dependencies:
"@types/node" "*"
- merge-stream "^2.0.0"
- supports-color "^8.0.0"
-
-js-tokens@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-jsesc@^3.0.2, jsesc@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e"
- integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==
-
-json-parse-even-better-errors@^2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
- integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
-
-json-schema-traverse@^0.4.1:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
- integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
-
-json5@^2.1.2, json5@^2.2.3:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
- integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
-
-kind-of@^6.0.2:
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
- integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
-
-loader-runner@^4.2.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1"
- integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==
-
-loader-utils@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c"
- integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==
+ "merge-stream" "^2.0.0"
+ "supports-color" "^8.0.0"
+
+"json-parse-even-better-errors@^2.3.1":
+ "integrity" "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
+ "resolved" "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz"
+ "version" "2.3.1"
+
+"json-schema-traverse@^0.4.1":
+ "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
+ "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz"
+ "version" "0.4.1"
+
+"kind-of@^6.0.2":
+ "integrity" "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw=="
+ "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz"
+ "version" "6.0.3"
+
+"loader-runner@^4.2.0":
+ "integrity" "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg=="
+ "resolved" "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz"
+ "version" "4.3.0"
+
+"locate-path@^5.0.0":
+ "integrity" "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g=="
+ "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
+ "version" "5.0.0"
+ dependencies:
+ "p-locate" "^4.1.0"
+
+"merge-stream@^2.0.0":
+ "integrity" "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
+ "resolved" "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz"
+ "version" "2.0.0"
+
+"mime-db@1.52.0":
+ "integrity" "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
+ "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
+ "version" "1.52.0"
+
+"mime-types@^2.1.27":
+ "integrity" "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
+ "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
+ "version" "2.1.35"
+ dependencies:
+ "mime-db" "1.52.0"
+
+"neo-async@^2.6.2":
+ "integrity" "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
+ "resolved" "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz"
+ "version" "2.6.2"
+
+"node-releases@^2.0.18":
+ "integrity" "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g=="
+ "resolved" "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz"
+ "version" "2.0.18"
+
+"p-limit@^2.2.0":
+ "integrity" "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w=="
+ "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz"
+ "version" "2.3.0"
+ dependencies:
+ "p-try" "^2.0.0"
+
+"p-locate@^4.1.0":
+ "integrity" "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A=="
+ "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz"
+ "version" "4.1.0"
+ dependencies:
+ "p-limit" "^2.2.0"
+
+"p-try@^2.0.0":
+ "integrity" "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
+ "resolved" "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
+ "version" "2.2.0"
+
+"path-exists@^4.0.0":
+ "integrity" "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
+ "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
+ "version" "4.0.0"
+
+"path-key@^3.1.0":
+ "integrity" "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
+ "resolved" "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz"
+ "version" "3.1.1"
+
+"path-parse@^1.0.7":
+ "integrity" "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
+ "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
+ "version" "1.0.7"
+
+"picocolors@^1.1.0":
+ "integrity" "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw=="
+ "resolved" "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz"
+ "version" "1.1.0"
+
+"pkg-dir@^4.2.0":
+ "integrity" "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ=="
+ "resolved" "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz"
+ "version" "4.2.0"
+ dependencies:
+ "find-up" "^4.0.0"
+
+"prettier@^2.8.0":
+ "integrity" "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q=="
+ "resolved" "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz"
+ "version" "2.8.8"
+
+"punycode@^2.1.0":
+ "integrity" "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="
+ "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz"
+ "version" "2.3.1"
+
+"randombytes@^2.1.0":
+ "integrity" "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ=="
+ "resolved" "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz"
+ "version" "2.1.0"
+ dependencies:
+ "safe-buffer" "^5.1.0"
+
+"rechoir@^0.8.0":
+ "integrity" "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ=="
+ "resolved" "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz"
+ "version" "0.8.0"
+ dependencies:
+ "resolve" "^1.20.0"
+
+"resolve-cwd@^3.0.0":
+ "integrity" "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg=="
+ "resolved" "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz"
+ "version" "3.0.0"
+ dependencies:
+ "resolve-from" "^5.0.0"
+
+"resolve-from@^5.0.0":
+ "integrity" "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw=="
+ "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz"
+ "version" "5.0.0"
+
+"resolve@^1.20.0":
+ "integrity" "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw=="
+ "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz"
+ "version" "1.22.8"
dependencies:
- big.js "^5.2.2"
- emojis-list "^3.0.0"
- json5 "^2.1.2"
-
-locate-path@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
- integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
+ "is-core-module" "^2.13.0"
+ "path-parse" "^1.0.7"
+ "supports-preserve-symlinks-flag" "^1.0.0"
+
+"safe-buffer@^5.1.0":
+ "integrity" "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
+ "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz"
+ "version" "5.2.1"
+
+"schema-utils@^3.1.1", "schema-utils@^3.2.0":
+ "integrity" "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg=="
+ "resolved" "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz"
+ "version" "3.3.0"
dependencies:
- p-locate "^4.1.0"
-
-lodash.debounce@^4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
- integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
+ "@types/json-schema" "^7.0.8"
+ "ajv" "^6.12.5"
+ "ajv-keywords" "^3.5.2"
-lru-cache@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
- integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
+"serialize-javascript@^6.0.1":
+ "integrity" "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g=="
+ "resolved" "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz"
+ "version" "6.0.2"
dependencies:
- yallist "^3.0.2"
+ "randombytes" "^2.1.0"
-make-dir@^3.0.2, make-dir@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
- integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
+"shallow-clone@^3.0.0":
+ "integrity" "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA=="
+ "resolved" "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz"
+ "version" "3.0.1"
dependencies:
- semver "^6.0.0"
-
-merge-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
- integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
-
-mime-db@1.52.0:
- version "1.52.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
- integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-
-mime-types@^2.1.27:
- version "2.1.35"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
- integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
- dependencies:
- mime-db "1.52.0"
-
-mrmime@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4"
- integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==
-
-ms@^2.1.3:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
- integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-
-neo-async@^2.6.2:
- version "2.6.2"
- resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
- integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
-
-node-releases@^2.0.18:
- version "2.0.18"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f"
- integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==
-
-opener@^1.5.2:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598"
- integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==
-
-p-limit@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
- integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
- dependencies:
- p-try "^2.0.0"
+ "kind-of" "^6.0.2"
-p-locate@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
- integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
- dependencies:
- p-limit "^2.2.0"
-
-p-try@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
- integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
-
-path-exists@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
- integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-
-path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-picocolors@^1.0.0, picocolors@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59"
- integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==
-
-pkg-dir@^4.1.0, pkg-dir@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
- integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
- dependencies:
- find-up "^4.0.0"
-
-prettier@^2.8.0:
- version "2.8.8"
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da"
- integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
-
-punycode@^2.1.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
- integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
-
-randombytes@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
- integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
+"shebang-command@^2.0.0":
+ "integrity" "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="
+ "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz"
+ "version" "2.0.0"
dependencies:
- safe-buffer "^5.1.0"
+ "shebang-regex" "^3.0.0"
-rechoir@^0.8.0:
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.8.0.tgz#49f866e0d32146142da3ad8f0eff352b3215ff22"
- integrity sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==
- dependencies:
- resolve "^1.20.0"
+"shebang-regex@^3.0.0":
+ "integrity" "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
+ "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz"
+ "version" "3.0.0"
-regenerate-unicode-properties@^10.2.0:
- version "10.2.0"
- resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0"
- integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==
- dependencies:
- regenerate "^1.4.2"
-
-regenerate@^1.4.2:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
- integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
-
-regenerator-runtime@^0.14.0:
- version "0.14.1"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
- integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
-
-regenerator-transform@^0.15.2:
- version "0.15.2"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4"
- integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==
+"source-map-support@~0.5.20":
+ "integrity" "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w=="
+ "resolved" "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz"
+ "version" "0.5.21"
dependencies:
- "@babel/runtime" "^7.8.4"
+ "buffer-from" "^1.0.0"
+ "source-map" "^0.6.0"
-regexpu-core@^6.1.1:
- version "6.1.1"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac"
- integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==
- dependencies:
- regenerate "^1.4.2"
- regenerate-unicode-properties "^10.2.0"
- regjsgen "^0.8.0"
- regjsparser "^0.11.0"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.1.0"
-
-regjsgen@^0.8.0:
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab"
- integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==
-
-regjsparser@^0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.0.tgz#f01e6ccaba36d384fb0d00a06b78b372c8b681e8"
- integrity sha512-vTbzVAjQDzwQdKuvj7qEq6OlAprCjE656khuGQ4QaBLg7abQ9I9ISpmLuc6inWe7zP75AECjqUa4g4sdQvOXhg==
- dependencies:
- jsesc "~3.0.2"
+"source-map@^0.6.0":
+ "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
+ "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"
+ "version" "0.6.1"
-resolve-cwd@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
- integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
+"supports-color@^8.0.0":
+ "integrity" "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q=="
+ "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz"
+ "version" "8.1.1"
dependencies:
- resolve-from "^5.0.0"
+ "has-flag" "^4.0.0"
-resolve-from@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
- integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
+"supports-preserve-symlinks-flag@^1.0.0":
+ "integrity" "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
+ "resolved" "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
+ "version" "1.0.0"
-resolve@^1.14.2, resolve@^1.20.0:
- version "1.22.8"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
- integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
- dependencies:
- is-core-module "^2.13.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-safe-buffer@^5.1.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-schema-utils@^2.6.5:
- version "2.7.1"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7"
- integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==
- dependencies:
- "@types/json-schema" "^7.0.5"
- ajv "^6.12.4"
- ajv-keywords "^3.5.2"
-
-schema-utils@^3.1.1, schema-utils@^3.2.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe"
- integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==
- dependencies:
- "@types/json-schema" "^7.0.8"
- ajv "^6.12.5"
- ajv-keywords "^3.5.2"
-
-semver@^6.0.0, semver@^6.3.1:
- version "6.3.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
- integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
-
-serialize-javascript@^6.0.1:
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2"
- integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==
- dependencies:
- randombytes "^2.1.0"
+"tapable@^2.1.1", "tapable@^2.2.0":
+ "integrity" "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="
+ "resolved" "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz"
+ "version" "2.2.1"
-shallow-clone@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"
- integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==
+"terser-webpack-plugin@^5.3.10":
+ "integrity" "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w=="
+ "resolved" "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz"
+ "version" "5.3.10"
dependencies:
- kind-of "^6.0.2"
+ "@jridgewell/trace-mapping" "^0.3.20"
+ "jest-worker" "^27.4.5"
+ "schema-utils" "^3.1.1"
+ "serialize-javascript" "^6.0.1"
+ "terser" "^5.26.0"
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
+"terser@^5.26.0":
+ "integrity" "sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA=="
+ "resolved" "https://registry.npmjs.org/terser/-/terser-5.34.1.tgz"
+ "version" "5.34.1"
dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
+ "@jridgewell/source-map" "^0.3.3"
+ "acorn" "^8.8.2"
+ "commander" "^2.20.0"
+ "source-map-support" "~0.5.20"
-sirv@^2.0.3:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0"
- integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==
- dependencies:
- "@polka/url" "^1.0.0-next.24"
- mrmime "^2.0.0"
- totalist "^3.0.0"
-
-source-map-support@~0.5.20:
- version "0.5.21"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map@^0.6.0:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-
-supports-color@^5.3.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
+"undici-types@~6.19.2":
+ "integrity" "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw=="
+ "resolved" "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz"
+ "version" "6.19.8"
-supports-color@^8.0.0:
- version "8.1.1"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
- integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
- dependencies:
- has-flag "^4.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-tapable@^2.1.1, tapable@^2.2.0:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
- integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
-
-terser-webpack-plugin@^5.3.10:
- version "5.3.10"
- resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz#904f4c9193c6fd2a03f693a2150c62a92f40d199"
- integrity sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==
+"update-browserslist-db@^1.1.0":
+ "integrity" "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A=="
+ "resolved" "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz"
+ "version" "1.1.1"
dependencies:
- "@jridgewell/trace-mapping" "^0.3.20"
- jest-worker "^27.4.5"
- schema-utils "^3.1.1"
- serialize-javascript "^6.0.1"
- terser "^5.26.0"
-
-terser@^5.26.0:
- version "5.34.1"
- resolved "https://registry.yarnpkg.com/terser/-/terser-5.34.1.tgz#af40386bdbe54af0d063e0670afd55c3105abeb6"
- integrity sha512-FsJZ7iZLd/BXkz+4xrRTGJ26o/6VTjQytUk8b8OxkwcD2I+79VPJlz7qss1+zE7h8GNIScFqXcDyJ/KqBYZFVA==
- dependencies:
- "@jridgewell/source-map" "^0.3.3"
- acorn "^8.8.2"
- commander "^2.20.0"
- source-map-support "~0.5.20"
-
-to-fast-properties@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
- integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
-
-totalist@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8"
- integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==
-
-typescript@^4.4.4:
- version "4.9.5"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
- integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
-
-undici-types@~6.19.2:
- version "6.19.8"
- resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02"
- integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==
-
-unicode-canonical-property-names-ecmascript@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2"
- integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==
-
-unicode-match-property-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3"
- integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==
- dependencies:
- unicode-canonical-property-names-ecmascript "^2.0.0"
- unicode-property-aliases-ecmascript "^2.0.0"
-
-unicode-match-property-value-ecmascript@^2.1.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz#a0401aee72714598f739b68b104e4fe3a0cb3c71"
- integrity sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==
-
-unicode-property-aliases-ecmascript@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd"
- integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==
-
-update-browserslist-db@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5"
- integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==
- dependencies:
- escalade "^3.2.0"
- picocolors "^1.1.0"
+ "escalade" "^3.2.0"
+ "picocolors" "^1.1.0"
-uri-js@^4.2.2:
- version "4.4.1"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
- integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+"uri-js@^4.2.2":
+ "integrity" "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="
+ "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz"
+ "version" "4.4.1"
dependencies:
- punycode "^2.1.0"
+ "punycode" "^2.1.0"
-watchpack@^2.4.1:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.2.tgz#2feeaed67412e7c33184e5a79ca738fbd38564da"
- integrity sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==
+"watchpack@^2.4.1":
+ "integrity" "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw=="
+ "resolved" "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz"
+ "version" "2.4.2"
dependencies:
- glob-to-regexp "^0.4.1"
- graceful-fs "^4.1.2"
+ "glob-to-regexp" "^0.4.1"
+ "graceful-fs" "^4.1.2"
-webpack-bundle-analyzer@^4.5.0:
- version "4.10.2"
- resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd"
- integrity sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==
- dependencies:
- "@discoveryjs/json-ext" "0.5.7"
- acorn "^8.0.4"
- acorn-walk "^8.0.0"
- commander "^7.2.0"
- debounce "^1.2.1"
- escape-string-regexp "^4.0.0"
- gzip-size "^6.0.0"
- html-escaper "^2.0.2"
- opener "^1.5.2"
- picocolors "^1.0.0"
- sirv "^2.0.3"
- ws "^7.3.1"
-
-webpack-cli@^5.0.0:
- version "5.1.4"
- resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-5.1.4.tgz#c8e046ba7eaae4911d7e71e2b25b776fcc35759b"
- integrity sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==
+"webpack-cli@^5.0.0", "webpack-cli@5.x.x":
+ "integrity" "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg=="
+ "resolved" "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz"
+ "version" "5.1.4"
dependencies:
"@discoveryjs/json-ext" "^0.5.0"
"@webpack-cli/configtest" "^2.1.1"
"@webpack-cli/info" "^2.0.2"
"@webpack-cli/serve" "^2.0.5"
- colorette "^2.0.14"
- commander "^10.0.1"
- cross-spawn "^7.0.3"
- envinfo "^7.7.3"
- fastest-levenshtein "^1.0.12"
- import-local "^3.0.2"
- interpret "^3.1.1"
- rechoir "^0.8.0"
- webpack-merge "^5.7.3"
-
-webpack-merge@^5.7.3:
- version "5.10.0"
- resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177"
- integrity sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==
- dependencies:
- clone-deep "^4.0.1"
- flat "^5.0.2"
- wildcard "^2.0.0"
-
-webpack-sources@^3.2.3:
- version "3.2.3"
- resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde"
- integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
-
-webpack@^5.76.0, webpack@^5.94.0:
- version "5.95.0"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.95.0.tgz#8fd8c454fa60dad186fbe36c400a55848307b4c0"
- integrity sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==
+ "colorette" "^2.0.14"
+ "commander" "^10.0.1"
+ "cross-spawn" "^7.0.3"
+ "envinfo" "^7.7.3"
+ "fastest-levenshtein" "^1.0.12"
+ "import-local" "^3.0.2"
+ "interpret" "^3.1.1"
+ "rechoir" "^0.8.0"
+ "webpack-merge" "^5.7.3"
+
+"webpack-merge@^5.7.3":
+ "integrity" "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA=="
+ "resolved" "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz"
+ "version" "5.10.0"
+ dependencies:
+ "clone-deep" "^4.0.1"
+ "flat" "^5.0.2"
+ "wildcard" "^2.0.0"
+
+"webpack-sources@^3.2.3":
+ "integrity" "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w=="
+ "resolved" "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz"
+ "version" "3.2.3"
+
+"webpack@^5.1.0", "webpack@^5.94.0", "webpack@5.x.x":
+ "integrity" "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q=="
+ "resolved" "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz"
+ "version" "5.95.0"
dependencies:
"@types/estree" "^1.0.5"
"@webassemblyjs/ast" "^1.12.1"
"@webassemblyjs/wasm-edit" "^1.12.1"
"@webassemblyjs/wasm-parser" "^1.12.1"
- acorn "^8.7.1"
- acorn-import-attributes "^1.9.5"
- browserslist "^4.21.10"
- chrome-trace-event "^1.0.2"
- enhanced-resolve "^5.17.1"
- es-module-lexer "^1.2.1"
- eslint-scope "5.1.1"
- events "^3.2.0"
- glob-to-regexp "^0.4.1"
- graceful-fs "^4.2.11"
- json-parse-even-better-errors "^2.3.1"
- loader-runner "^4.2.0"
- mime-types "^2.1.27"
- neo-async "^2.6.2"
- schema-utils "^3.2.0"
- tapable "^2.1.1"
- terser-webpack-plugin "^5.3.10"
- watchpack "^2.4.1"
- webpack-sources "^3.2.3"
-
-which@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-wildcard@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67"
- integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==
-
-ws@^7.3.1:
- version "7.5.10"
- resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9"
- integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==
-
-yallist@^3.0.2:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
- integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+ "acorn" "^8.7.1"
+ "acorn-import-attributes" "^1.9.5"
+ "browserslist" "^4.21.10"
+ "chrome-trace-event" "^1.0.2"
+ "enhanced-resolve" "^5.17.1"
+ "es-module-lexer" "^1.2.1"
+ "eslint-scope" "5.1.1"
+ "events" "^3.2.0"
+ "glob-to-regexp" "^0.4.1"
+ "graceful-fs" "^4.2.11"
+ "json-parse-even-better-errors" "^2.3.1"
+ "loader-runner" "^4.2.0"
+ "mime-types" "^2.1.27"
+ "neo-async" "^2.6.2"
+ "schema-utils" "^3.2.0"
+ "tapable" "^2.1.1"
+ "terser-webpack-plugin" "^5.3.10"
+ "watchpack" "^2.4.1"
+ "webpack-sources" "^3.2.3"
+
+"which@^2.0.1":
+ "integrity" "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="
+ "resolved" "https://registry.npmjs.org/which/-/which-2.0.2.tgz"
+ "version" "2.0.2"
+ dependencies:
+ "isexe" "^2.0.0"
+
+"wildcard@^2.0.0":
+ "integrity" "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ=="
+ "resolved" "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz"
+ "version" "2.0.1"
diff --git a/phpstan.neon b/phpstan.neon
index 03cf2619..ca310f90 100644
--- a/phpstan.neon
+++ b/phpstan.neon
@@ -9,5 +9,4 @@ parameters:
- src
excludePaths:
- *.blade.php
- checkMissingIterableValueType: false
databaseMigrationsPath: ['migrations']
diff --git a/resources/less/admin.less b/resources/less/admin.less
index b79eaebc..fb96fd15 100644
--- a/resources/less/admin.less
+++ b/resources/less/admin.less
@@ -7,31 +7,31 @@
}
.ByobuSettingsTabPage {
- background: @control-bg;
+ background: var(--control-bg);
padding: 20px;
- border-radius: @border-radius;
- box-shadow: 0 2px 4px @shadow-color;
+ border-radius: var(--border-radius);
+ box-shadow: 0 2px 4px var(--shadow-color);
h3 {
- color: @primary-color;
+ color: var(--primary-color);
margin-bottom: 10px;
}
.Section {
- background: @body-bg;
- border-radius: @border-radius;
- box-shadow: 0 1px 3px @shadow-color;
+ background: var(--body-bg);
+ border-radius: var(--border-radius);
+ box-shadow: 0 1px 3px var(--shadow-color);
padding: 15px;
margin-bottom: 20px;
}
.Form {
.control {
- background: @body-bg;
- border: 1px solid @muted-color;
- color: @text-color;
+ background: var(--body-bg);
+ border: 1px solid var(--muted-color);
+ color: var(--text-color);
padding: 6px 12px;
- border-radius: @border-radius;
+ border-radius: var(--border-radius);
}
input {
max-width: 300px;
diff --git a/resources/less/forum/AddRecipientModal.less b/resources/less/forum/AddRecipientModal.less
index ba630998..e9a59789 100644
--- a/resources/less/forum/AddRecipientModal.less
+++ b/resources/less/forum/AddRecipientModal.less
@@ -22,7 +22,7 @@
}
label[for^="byobu-addrecipient-search-input"] {
- color: @control-color;
+ color: var(--control-color);
display: block;
margin-bottom: 4px;
margin-top: 1.5em;
diff --git a/resources/less/lib/RecipientLabel.less b/resources/less/lib/RecipientLabel.less
index ad9539ae..b34ec766 100644
--- a/resources/less/lib/RecipientLabel.less
+++ b/resources/less/lib/RecipientLabel.less
@@ -3,16 +3,16 @@
font-weight: 600;
display: inline-block;
padding: 0.1em 0.5em;
- border-radius: @border-radius;
- background: @body-bg;
- color: @control-color;
+ border-radius: var(--border-radius);
+ background: var(--body-bg);
+ color: var(--control-color);
text-transform: none;
- border: 1px solid @primary-color;
+ border: 1px solid var(--primary-color);
&.none {
background: transparent;
- border: 1px dotted @muted-color;
- color: @muted-color;
+ border: 1px dotted var(--muted-color);
+ color: var(--muted-color);
}
.DiscussionHero .RecipientsLabel & {
@@ -26,13 +26,13 @@
border-radius: 0;
&:first-of-type {
- border-radius: @border-radius 0 0 @border-radius;
+ border-radius: var(--border-radius) 0 0 var(--border-radius);
}
&:last-of-type {
- border-radius: 0 @border-radius @border-radius 0;
+ border-radius: 0 var(--border-radius) var(--border-radius) 0;
}
&:first-of-type:last-of-type {
- border-radius: @border-radius;
+ border-radius: var(--border-radius);
}
// Merge borders together without removing them.
diff --git a/resources/locale/en.yml b/resources/locale/en.yml
index 1c7391ec..3231712e 100644
--- a/resources/locale/en.yml
+++ b/resources/locale/en.yml
@@ -1,149 +1,166 @@
fof-byobu:
- forum:
- badges:
- is_private:
- tooltip: Private discussion
-
- buttons:
- add_recipients: Recipients
- submit: OK
- edit_recipients: Edit Recipients
- send_pd: "Send {username} a message"
- cancel: Cancel
- make_public: Make this discussion public
- remove_from_discussion: Leave this private discussion
-
- composer_private_discussion:
- submit_button: Post Private Discussion
- title_placeholder: Private Discussion Title
-
- confirm:
- make_public: Are you sure you want to remove the recipients and make this discussion visible to anyone who can view the assigned tag?
-
- labels:
- recipients: "{count, plural, one {{count} Recipient} other {{count} Recipients}}"
-
- nav:
- start_button: Discuss Privately
- nav_item: "Private Discussions"
-
- input:
- search_recipients: Search recipient by typing first three characters...
-
- search:
- headings:
- groups: Permission Groups
-
- modal:
- titles:
- update_recipients: Update recipients of {title}
- add_recipients: Add recipients to your discussion
-
- labels:
- selected_users: Selected users
- search_field: Search for user
-
- help:
- add_recipients: This discussion will only be visible to the users you choose here. At least 1 recipient (other than yourself) is required.
- update_recipients: This discussion will only be visible to the users you choose here.
- selected_users: Click a user's name to remove them.
- click_user_to_remove_tooltip: Click to remove
-
- post:
- recipients_modified:
- added_and_removed: "{username} added recipients {added} and removed {removed}."
- added: "{username} added recipients {added}."
- made_public: "{username} removed all recipients and made the discussion public"
- removed: "{username} removed recipients {removed}."
- removed_self: "{username} left the private discussion."
-
- user:
- settings:
- block_pd: Block private discussions
- byobu_link: Private Discussions
- dropdown_label: Private Discussions
-
- notifications:
- pd_label: Someone includes me in a new private discussion
- pd_reply_label: Someone posts in a private discussion I'm a recipient of
- pd_reply_text: "{username} posted in a private discussion you're a part of"
- pd_text: "{username} started a new private discussion with you"
- pd_user_left_label: A recipient user leaves a private discussion I'm a part of
- pd_user_left_text: "{username} left the private discussion"
- pd_added_text: "{username} added you to a private discussion"
- pd_added_label: "Someone adds me to an existing private discussion"
-
- admin:
- permission:
- create_private_discussions_with_users: Create private discussions with users
- add_more_than_two_user_recipients: Add more than 2 user recipients to private discussion
- create_private_discussions_with_groups: Create private discussions with groups
- create_private_discussions_with_blocking_users: Create private discussions with users that block it
- edit_user_recipients: Edit users partaking in private discussions
- edit_group_recipients: Edit groups partaking in private discussions
- make_private_into_public: Transform a private discussion into a public discussion
- view_private_discussions-when-flagged: View private discussions of other users if flagged
-
- settings:
- general:
- heading: General Settings
- help: "These settings control the basic features of the byobu."
- icon:
- heading: Icon Settings
- help: "These settings control the icons used byobu on the forum."
- badge-icon: Byobu Discussion Badge
- enable-make-public-option: Enable the "make public" ability
- enable-make-public-option-help: Adds the ability for those with permission to remove all recipients, assign a new tag and make the discussion publically visible (accoring to the visibility settings of the chosen tag).
- post-event-icon: Byobu Post Events
- delete_on_last_recipient_left: Delete PDs when the last user leaves
- delete_on_last_recipient_left_help: If enabled, PDs will be permanently deleted from the database when the last user leaves. Otherwise, the PD will be soft-deleted/hidden.
- hide_from_all_discussions_page: Hide PDs from "All Discussions" page
- hide_from_all_discussions_page_help: Private discussions will only be accessible from the "Private Discussions" page or the user profile
-
- email:
- subject:
- private_discussion_created: "[Private Discussion] {display_name} started a new private discussion with you"
- private_discussion_replied: "[Private Discussion] {display_name} posted in a private discussion"
- recipient_removed: "[Private Discussion] {display_name} left the discussion"
- private_discussion_added: "[Private Discussion] {display_name} added you to a private discussion"
-
- body:
- private_discussion_created: |
- Hey {recipient_display_name},
-
- {actor_display_name} started a new private discussion with you as a recipient: {discussion_title}.
-
- View it here:
- {discussion_url}
-
- You may need to login first before being able to access this link.
-
- private_discussion_replied: |
- Hey {recipient_display_name},
-
- {actor_display_name} posted in a private discussion with you as a recipient: {discussion_title}.
-
- View it here:
- {post_url}
-
- You may need to login first before being able to access this link.
-
- recipient_removed: |
- Hey {recipient_display_name},
-
- {actor_display_name} left the private discussion: {discussion_title}. They'll no longer be able to view any of it's content.
-
- View it here:
- {discussion_url}
-
- You may need to login first before being able to access this link.
-
- private_discussion_added: |
- Hey {recipient_display_name},
-
- {actor_display_name} added you to an existing private discussion: {discussion_title}.
-
- View it here:
- {discussion_url}
-
- You may need to login first before being able to access this link.
+ forum:
+ badges:
+ is_private:
+ tooltip: Private discussion
+
+ buttons:
+ add_recipients: Recipients
+ submit: OK
+ edit_recipients: Edit Recipients
+ send_pd: "Send {username} a message"
+ cancel: Cancel
+ make_public: Make this discussion public
+ remove_from_discussion: Leave this private discussion
+
+ composer_private_discussion:
+ submit_button: Post Private Discussion
+ title_placeholder: Private Discussion Title
+
+ confirm:
+ make_public: Are you sure you want to remove the recipients and make this
+ discussion visible to anyone who can view the assigned tag?
+
+ labels:
+ recipients: "{count, plural, one {{count} Recipient} other {{count} Recipients}}"
+
+ nav:
+ start_button: Discuss Privately
+ nav_item: "Private Discussions"
+
+ input:
+ search_recipients: Search recipient by typing first three characters...
+
+ search:
+ headings:
+ groups: Permission Groups
+
+ modal:
+ titles:
+ update_recipients: Update recipients of {title}
+ add_recipients: Add recipients to your discussion
+
+ labels:
+ selected_users: Selected users
+ search_field: Search for user
+
+ help:
+ add_recipients: This discussion will only be visible to the users you choose
+ here. At least 1 recipient (other than yourself) is required.
+ update_recipients: This discussion will only be visible to the users you choose here.
+ selected_users: Click a user's name to remove them.
+ click_user_to_remove_tooltip: Click to remove
+
+ post:
+ recipients_modified:
+ added_and_removed: "{username} added recipients {added} and removed {removed}."
+ added: "{username} added recipients {added}."
+ made_public: "{username} removed all recipients and made the discussion public"
+ removed: "{username} removed recipients {removed}."
+ removed_self: "{username} left the private discussion."
+
+ user:
+ settings:
+ block_pd: Block private discussions
+ byobu_link: Private Discussions
+ dropdown_label: Private Discussions
+
+ notifications:
+ pd_label: Someone includes me in a new private discussion
+ pd_reply_label: Someone posts in a private discussion I'm a recipient of
+ pd_reply_text: "{username} posted in a private discussion you're a part of"
+ pd_text: "{username} started a new private discussion with you"
+ pd_user_left_label: A recipient user leaves a private discussion I'm a part of
+ pd_user_left_text: "{username} left the private discussion"
+ pd_added_text: "{username} added you to a private discussion"
+ pd_added_label: "Someone adds me to an existing private discussion"
+
+ admin:
+ permission:
+ create_private_discussions_with_users: Create private discussions with users
+ add_more_than_two_user_recipients: Add more than 2 user recipients to private discussion
+ create_private_discussions_with_groups: Create private discussions with groups
+ create_private_discussions_with_blocking_users: Create private discussions with users that block it
+ edit_user_recipients: Edit users partaking in private discussions
+ edit_group_recipients: Edit groups partaking in private discussions
+ make_private_into_public: Transform a private discussion into a public discussion
+ view_private_discussions-when-flagged: View private discussions of other users if flagged
+
+ settings:
+ general:
+ heading: General Settings
+ help: "These settings control the basic features of the byobu."
+ icon:
+ heading: Icon Settings
+ help: "These settings control the icons used byobu on the forum."
+ badge-icon: Byobu Discussion Badge
+ enable-make-public-option: Enable the "make public" ability
+ enable-make-public-option-help: Adds the ability for those with permission to
+ remove all recipients, assign a new tag and make the discussion
+ publically visible (accoring to the visibility settings of the chosen
+ tag).
+ post-event-icon: Byobu Post Events
+ delete_on_last_recipient_left: Delete PDs when the last user leaves
+ delete_on_last_recipient_left_help: If enabled, PDs will be permanently deleted
+ from the database when the last user leaves. Otherwise, the PD will be
+ soft-deleted/hidden.
+ hide_from_all_discussions_page: Hide PDs from "All Discussions" page
+ hide_from_all_discussions_page_help: Private discussions will only be accessible
+ from the "Private Discussions" page or the user profile
+
+ email:
+ subject:
+ private_discussion_created: "[Private Discussion] {display_name} started a new
+ private discussion with you"
+ private_discussion_replied: "[Private Discussion] {display_name} posted in a private discussion"
+ recipient_removed: "[Private Discussion] {display_name} left the discussion"
+ private_discussion_added: "[Private Discussion] {display_name} added you to a private discussion"
+
+ body:
+ private_discussion_created: |
+ Hey {recipient_display_name},
+
+ {actor_display_name} started a new private discussion with you as a recipient: {discussion_title}.
+
+ View it here:
+ {discussion_url}
+
+ You may need to login first before being able to access this link.
+
+ private_discussion_replied: |
+ Hey {recipient_display_name},
+
+ {actor_display_name} posted in a private discussion with you as a recipient: {discussion_title}.
+
+ View it here:
+ {post_url}
+
+ You may need to login first before being able to access this link.
+
+ recipient_removed: |
+ Hey {recipient_display_name},
+
+ {actor_display_name} left the private discussion: {discussion_title}. They'll no longer be able to view any of it's content.
+
+ View it here:
+ {discussion_url}
+
+ You may need to login first before being able to access this link.
+
+ private_discussion_added: |
+ Hey {recipient_display_name},
+
+ {actor_display_name} added you to an existing private discussion: {discussion_title}.
+
+ View it here:
+ {discussion_url}
+
+ You may need to login first before being able to access this link.
+ lib:
+ gambits:
+ byobu:
+ key: byobu
+ private:
+ key: private
+ allows-pd:
+ key: pd
diff --git a/resources/views/email/html/byobuMadePublic.blade.php b/resources/views/email/html/byobuMadePublic.blade.php
new file mode 100644
index 00000000..fed8d093
--- /dev/null
+++ b/resources/views/email/html/byobuMadePublic.blade.php
@@ -0,0 +1,10 @@
+
+
+ {!! $translator->trans('fof-byobu.email.body.made_public', [
+ '{recipient_display_name}' => $user->display_name,
+ '{actor_display_name}' => $blueprint->actor->display_name,
+ '{discussion_title}' => $blueprint->discussion->title,
+ '{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
+]) !!}
+
+
diff --git a/resources/views/email/html/byobuRecipientRemoved.blade.php b/resources/views/email/html/byobuRecipientRemoved.blade.php
new file mode 100644
index 00000000..b7ffbfd1
--- /dev/null
+++ b/resources/views/email/html/byobuRecipientRemoved.blade.php
@@ -0,0 +1,10 @@
+
+
+ {!! $translator->trans('fof-byobu.email.body.recipient_removed', [
+ '{recipient_display_name}' => $user->display_name,
+ '{actor_display_name}' => $blueprint->user->display_name,
+ '{discussion_title}' => $blueprint->discussion->title,
+ '{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
+]) !!}
+
+
diff --git a/resources/views/email/html/privateDiscussionAdded.blade.php b/resources/views/email/html/privateDiscussionAdded.blade.php
new file mode 100644
index 00000000..72d62f27
--- /dev/null
+++ b/resources/views/email/html/privateDiscussionAdded.blade.php
@@ -0,0 +1,10 @@
+
+
+ {!! $translator->trans('fof-byobu.email.body.private_discussion_added', [
+ '{recipient_display_name}' => $user->display_name,
+ '{actor_display_name}' => $blueprint->actor->display_name,
+ '{discussion_title}' => $blueprint->discussion->title,
+ '{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
+]) !!}
+
+
diff --git a/resources/views/email/html/privateDiscussionCreated.blade.php b/resources/views/email/html/privateDiscussionCreated.blade.php
new file mode 100644
index 00000000..70e3e1d6
--- /dev/null
+++ b/resources/views/email/html/privateDiscussionCreated.blade.php
@@ -0,0 +1,10 @@
+
+
+ {!! $translator->trans('fof-byobu.email.body.private_discussion_created', [
+ '{recipient_display_name}' => $user->display_name,
+ '{actor_display_name}' => $blueprint->discussion->user->display_name,
+ '{discussion_title}' => $blueprint->discussion->title,
+ '{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
+]) !!}
+
+
diff --git a/resources/views/email/html/privateDiscussionReplied.blade.php b/resources/views/email/html/privateDiscussionReplied.blade.php
new file mode 100644
index 00000000..370c315f
--- /dev/null
+++ b/resources/views/email/html/privateDiscussionReplied.blade.php
@@ -0,0 +1,10 @@
+
+
+ {!! $translator->trans('fof-byobu.email.body.private_discussion_replied', [
+ '{recipient_display_name}' => $user->display_name,
+ '{actor_display_name}' => $blueprint->post->user->display_name,
+ '{discussion_title}' => $blueprint->post->discussion->title,
+ '{post_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->post->discussion_id, 'near' => $blueprint->post->number]),
+]) !!}
+
+
diff --git a/resources/views/emails/byobuMadePublic.blade.php b/resources/views/email/plain/byobuMadePublic.blade.php
similarity index 79%
rename from resources/views/emails/byobuMadePublic.blade.php
rename to resources/views/email/plain/byobuMadePublic.blade.php
index 18d106f3..de3ccf8b 100644
--- a/resources/views/emails/byobuMadePublic.blade.php
+++ b/resources/views/email/plain/byobuMadePublic.blade.php
@@ -1,6 +1,10 @@
+
+
{!! $translator->trans('fof-byobu.email.body.made_public', [
'{recipient_display_name}' => $user->display_name,
'{actor_display_name}' => $blueprint->actor->display_name,
'{discussion_title}' => $blueprint->discussion->title,
'{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
]) !!}
+
+
diff --git a/resources/views/emails/byobuRecipientRemoved.blade.php b/resources/views/email/plain/byobuRecipientRemoved.blade.php
similarity index 80%
rename from resources/views/emails/byobuRecipientRemoved.blade.php
rename to resources/views/email/plain/byobuRecipientRemoved.blade.php
index e53b8e6f..33e42bea 100644
--- a/resources/views/emails/byobuRecipientRemoved.blade.php
+++ b/resources/views/email/plain/byobuRecipientRemoved.blade.php
@@ -1,6 +1,10 @@
+
+
{!! $translator->trans('fof-byobu.email.body.recipient_removed', [
'{recipient_display_name}' => $user->display_name,
'{actor_display_name}' => $blueprint->user->display_name,
'{discussion_title}' => $blueprint->discussion->title,
'{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
]) !!}
+
+
diff --git a/resources/views/emails/privateDiscussionAdded.blade.php b/resources/views/email/plain/privateDiscussionAdded.blade.php
similarity index 80%
rename from resources/views/emails/privateDiscussionAdded.blade.php
rename to resources/views/email/plain/privateDiscussionAdded.blade.php
index c5ac942e..36202e1f 100644
--- a/resources/views/emails/privateDiscussionAdded.blade.php
+++ b/resources/views/email/plain/privateDiscussionAdded.blade.php
@@ -1,6 +1,10 @@
+
+
{!! $translator->trans('fof-byobu.email.body.private_discussion_added', [
'{recipient_display_name}' => $user->display_name,
'{actor_display_name}' => $blueprint->actor->display_name,
'{discussion_title}' => $blueprint->discussion->title,
'{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
]) !!}
+
+
diff --git a/resources/views/emails/privateDiscussionCreated.blade.php b/resources/views/email/plain/privateDiscussionCreated.blade.php
similarity index 80%
rename from resources/views/emails/privateDiscussionCreated.blade.php
rename to resources/views/email/plain/privateDiscussionCreated.blade.php
index a91835af..9bf8800b 100644
--- a/resources/views/emails/privateDiscussionCreated.blade.php
+++ b/resources/views/email/plain/privateDiscussionCreated.blade.php
@@ -1,6 +1,10 @@
+
+
{!! $translator->trans('fof-byobu.email.body.private_discussion_created', [
'{recipient_display_name}' => $user->display_name,
'{actor_display_name}' => $blueprint->discussion->user->display_name,
'{discussion_title}' => $blueprint->discussion->title,
'{discussion_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->discussion->id]),
]) !!}
+
+
diff --git a/resources/views/emails/privateDiscussionReplied.blade.php b/resources/views/email/plain/privateDiscussionReplied.blade.php
similarity index 82%
rename from resources/views/emails/privateDiscussionReplied.blade.php
rename to resources/views/email/plain/privateDiscussionReplied.blade.php
index ac606d06..72c63bb0 100644
--- a/resources/views/emails/privateDiscussionReplied.blade.php
+++ b/resources/views/email/plain/privateDiscussionReplied.blade.php
@@ -1,6 +1,10 @@
+
+
{!! $translator->trans('fof-byobu.email.body.private_discussion_replied', [
'{recipient_display_name}' => $user->display_name,
'{actor_display_name}' => $blueprint->post->user->display_name,
'{discussion_title}' => $blueprint->post->discussion->title,
'{post_url}' => $url->to('forum')->route('discussion', ['id' => $blueprint->post->discussion_id, 'near' => $blueprint->post->number]),
]) !!}
+
+
diff --git a/src/Access/DiscussionPolicy.php b/src/Access/DiscussionPolicy.php
index a1eabfe4..b07e3371 100644
--- a/src/Access/DiscussionPolicy.php
+++ b/src/Access/DiscussionPolicy.php
@@ -77,7 +77,7 @@ public function bypassTagCounts(User $actor, Discussion $discussion)
*/
public function tag(User $actor, Discussion $discussion)
{
- return $this->isPrivate($discussion) ? $this->deny() : null;
+ return $this->isPrivate($discussion) && empty($discussion->getAttribute('makingPublic')) ? $this->deny() : null;
}
/**
diff --git a/src/Api/DiscussionDataAttributes.php b/src/Api/DiscussionDataAttributes.php
deleted file mode 100644
index af1843f4..00000000
--- a/src/Api/DiscussionDataAttributes.php
+++ /dev/null
@@ -1,30 +0,0 @@
-screener->fromDiscussion($model)->isPrivate();
-
- return $attributes;
- }
-}
diff --git a/src/Api/DiscussionPermissionAttributes.php b/src/Api/DiscussionPermissionAttributes.php
deleted file mode 100644
index 51f76f8c..00000000
--- a/src/Api/DiscussionPermissionAttributes.php
+++ /dev/null
@@ -1,40 +0,0 @@
-getActor();
- $users = $actor->can('editUserRecipients', $model);
- $groups = $actor->can('editGroupRecipients', $model);
-
- $attributes['canEditRecipients'] = $model->is_private && ($users || $groups);
- $attributes['canEditUserRecipients'] = $users;
- $attributes['canEditGroupRecipients'] = $groups;
-
- if ($this->screener->fromDiscussion($model)->isPrivate()) {
- $attributes['canMakePublic'] = $actor->can('transformToPublic', $model);
- }
-
- return $attributes;
- }
-}
diff --git a/src/Api/DiscussionResourceFields.php b/src/Api/DiscussionResourceFields.php
new file mode 100644
index 00000000..4754a4c2
--- /dev/null
+++ b/src/Api/DiscussionResourceFields.php
@@ -0,0 +1,80 @@
+get(fn (Discussion $discussion) => $this->screener->fromDiscussion($discussion)->isPrivate()),
+
+ Schema\Boolean::make('canEditRecipients')
+ ->get(function (Discussion $discussion, Context $context) {
+ $actor = $context->getActor();
+ $users = $actor->can('editUserRecipients', $discussion);
+ $groups = $actor->can('editGroupRecipients', $discussion);
+
+ return $discussion->is_private && ($users || $groups);
+ }),
+ Schema\Boolean::make('canEditUserRecipients')
+ ->get(fn (Discussion $discussion, Context $context) => $context->getActor()->can('editUserRecipients', $discussion)),
+ Schema\Boolean::make('canEditGroupRecipients')
+ ->get(fn (Discussion $discussion, Context $context) => $context->getActor()->can('editGroupRecipients', $discussion)),
+ Schema\Boolean::make('canMakePublic')
+ ->get(function (Discussion $discussion, Context $context) {
+ return $this->screener->fromDiscussion($discussion)->isPrivate()
+ && $context->getActor()->can('transformToPublic', $discussion);
+ }),
+ Schema\Number::make('public')
+ ->writable(function (Discussion $discussion, Context $context) {
+ return $this->screener->fromDiscussion($discussion)->isPrivate()
+ && $context->getActor()->can('transformToPublic', $discussion)
+ && $context->updating();
+ })
+ ->hidden()
+ ->set(function (Discussion $discussion) {
+ $discussion->setAttribute('makingPublic', true);
+
+ Discussion::saving(function (Discussion $discussion) {
+ $discussion->offsetUnset('makingPublic');
+ });
+ }),
+
+ Schema\Relationship\ToMany::make('oldRecipientUsers')
+ ->includable()
+ ->type('users'),
+ Schema\Relationship\ToMany::make('oldRecipientGroups')
+ ->includable()
+ ->type('groups'),
+ Schema\Relationship\ToMany::make('recipientUsers')
+ ->includable()
+ ->writable()
+ ->type('users'),
+ Schema\Relationship\ToMany::make('recipientGroups')
+ ->includable()
+ ->writable()
+ ->type('groups'),
+ ];
+ }
+}
diff --git a/src/Api/ForumPermissionAttributes.php b/src/Api/ForumPermissionAttributes.php
deleted file mode 100644
index 7432e9d1..00000000
--- a/src/Api/ForumPermissionAttributes.php
+++ /dev/null
@@ -1,32 +0,0 @@
-getActor();
- $users = $actor->can('discussion.startPrivateDiscussionWithUsers');
- $groups = $actor->can('discussion.startPrivateDiscussionWithGroups');
-
- $attributes['canStartPrivateDiscussion'] = $users || $groups;
- $attributes['canStartPrivateDiscussionWithUsers'] = $users;
- $attributes['canAddMoreThanTwoUserRecipients'] = $actor->can('discussion.addMoreThanTwoUserRecipients');
- $attributes['canStartPrivateDiscussionWithGroups'] = $groups;
- $attributes['canStartPrivateDiscussionWithBlockers'] = $actor->can('discussion.startPrivateDiscussionWithBlockers');
-
- return $attributes;
- }
-}
diff --git a/src/Api/ForumResourceFields.php b/src/Api/ForumResourceFields.php
new file mode 100644
index 00000000..5df23bb1
--- /dev/null
+++ b/src/Api/ForumResourceFields.php
@@ -0,0 +1,36 @@
+get(function ($forum, Context $context) {
+ return $context->getActor()->can('discussion.startPrivateDiscussionWithUsers')
+ || $context->getActor()->can('discussion.startPrivateDiscussionWithGroups');
+ }),
+ Schema\Boolean::make('canStartPrivateDiscussionWithUsers')
+ ->get(function ($forum, Context $context) {
+ return $context->getActor()->can('discussion.startPrivateDiscussionWithUsers');
+ }),
+ Schema\Boolean::make('canAddMoreThanTwoUserRecipients')
+ ->get(function ($forum, Context $context) {
+ return $context->getActor()->can('discussion.addMoreThanTwoUserRecipients');
+ }),
+ Schema\Boolean::make('canStartPrivateDiscussionWithGroups')
+ ->get(function ($forum, Context $context) {
+ return $context->getActor()->can('discussion.startPrivateDiscussionWithGroups');
+ }),
+ Schema\Boolean::make('canStartPrivateDiscussionWithBlockers')
+ ->get(function ($forum, Context $context) {
+ return $context->getActor()->can('discussion.startPrivateDiscussionWithBlockers');
+ }),
+ ];
+ }
+}
diff --git a/src/Content/PrivateDiscussionsPage.php b/src/Content/PrivateDiscussionsPage.php
index e2c48588..a24d4ba3 100644
--- a/src/Content/PrivateDiscussionsPage.php
+++ b/src/Content/PrivateDiscussionsPage.php
@@ -18,7 +18,7 @@
class PrivateDiscussionsPage extends Index
{
- public function __invoke(Document $document, Request $request)
+ public function __invoke(Document $document, Request $request): Document
{
$queryParams = $request->getQueryParams();
$q = Arr::pull($queryParams, 'q', '');
diff --git a/src/Gambits/Discussion/ByobuGambit.php b/src/Filters/Discussion/ByobuFilter.php
similarity index 64%
rename from src/Gambits/Discussion/ByobuGambit.php
rename to src/Filters/Discussion/ByobuFilter.php
index 0880f82e..0b26bdd5 100644
--- a/src/Gambits/Discussion/ByobuGambit.php
+++ b/src/Filters/Discussion/ByobuFilter.php
@@ -9,20 +9,22 @@
* file that was distributed with this source code.
*/
-namespace FoF\Byobu\Gambits\Discussion;
+namespace FoF\Byobu\Filters\Discussion;
use Flarum\Http\SlugManager;
-use Flarum\Search\AbstractRegexGambit;
use Flarum\Search\SearchState;
+use Flarum\Search\ValidateFilterTrait;
use Flarum\User\User;
use FoF\Byobu\Database\RecipientsConstraint;
+use Flarum\Search\Filter\FilterInterface;
/**
* Filters results to discussions that include the given user as recipient. Used to show private discussions on a user profile.
*/
-class ByobuGambit extends AbstractRegexGambit
+class ByobuFilter implements FilterInterface
{
use RecipientsConstraint;
+ use ValidateFilterTrait;
/**
* @var SlugManager
@@ -37,17 +39,18 @@ public function __construct(SlugManager $slugManager)
$this->slugManager = $slugManager;
}
- protected function getGambitPattern(): string
+ public function filter(SearchState $state, array|string $value, bool $negate): void
{
- return 'byobu:(.+)';
- }
+ $value = $this->asString($value);
- protected function conditions(SearchState $search, array $matches, $negate)
- {
- $user = $this->slugManager->forResource(User::class)->fromSlug(trim($matches[1], '"'), $search->getActor());
+ $user = $this->slugManager->forResource(User::class)->fromSlug(trim($value, '"'), $state->getActor());
- $search->getQuery()->where(function ($query) use ($user) {
+ $state->getQuery()->where(function ($query) use ($user) {
$this->forRecipient($query, [], $user->id);
});
}
+ public function getFilterKey(): string
+ {
+ return 'byobu';
+ }
}
diff --git a/src/Filters/Discussion/HidePrivateDiscussionsFromAllDiscussionsPage.php b/src/Filters/Discussion/HidePrivateDiscussionsFromAllDiscussionsPage.php
index 688ef8b6..f334c091 100644
--- a/src/Filters/Discussion/HidePrivateDiscussionsFromAllDiscussionsPage.php
+++ b/src/Filters/Discussion/HidePrivateDiscussionsFromAllDiscussionsPage.php
@@ -11,8 +11,8 @@
namespace FoF\Byobu\Filters\Discussion;
-use Flarum\Filter\FilterState;
-use Flarum\Query\QueryCriteria;
+use Flarum\Search\SearchState;
+use Flarum\Search\SearchCriteria;
use Flarum\Settings\SettingsRepositoryInterface;
class HidePrivateDiscussionsFromAllDiscussionsPage
@@ -24,7 +24,7 @@ public function __construct(SettingsRepositoryInterface $settings)
$this->settings = $settings;
}
- public function __invoke(FilterState $filter, QueryCriteria $queryCriteria)
+ public function __invoke(SearchState $filter, SearchCriteria $queryCriteria)
{
if (
// If there are filters applied, we are no longer on "all discussions" page and don't want to restrict
diff --git a/src/Gambits/Discussion/PrivacyGambit.php b/src/Filters/Discussion/PrivacyFilter.php
similarity index 55%
rename from src/Gambits/Discussion/PrivacyGambit.php
rename to src/Filters/Discussion/PrivacyFilter.php
index bf49f684..e621ac3d 100644
--- a/src/Gambits/Discussion/PrivacyGambit.php
+++ b/src/Filters/Discussion/PrivacyFilter.php
@@ -9,31 +9,30 @@
* file that was distributed with this source code.
*/
-namespace FoF\Byobu\Gambits\Discussion;
+namespace FoF\Byobu\Filters\Discussion;
-use Flarum\Search\AbstractRegexGambit;
use Flarum\Search\SearchState;
use FoF\Byobu\Database\RecipientsConstraint;
+use Flarum\Search\Filter\FilterInterface;
-class PrivacyGambit extends AbstractRegexGambit
+class PrivacyFilter implements FilterInterface
{
use RecipientsConstraint;
- public function getGambitPattern()
+ public function filter(SearchState $state, array|string $value, bool $negate): void
{
- return 'is:private';
- }
-
- protected function conditions(SearchState $search, array $matches, $negate)
- {
- $actor = $search->getActor();
+ $actor = $state->getActor();
if ($actor->isGuest()) {
return;
}
- $search->getQuery()->where(function ($query) use ($actor) {
+ $state->getQuery()->where(function ($query) use ($actor) {
$this->constraint($query, $actor);
});
}
+ public function getFilterKey(): string
+ {
+ return 'private';
+ }
}
diff --git a/src/Gambits/User/AllowsPdGambit.php b/src/Filters/User/AllowsPdFilter.php
similarity index 78%
rename from src/Gambits/User/AllowsPdGambit.php
rename to src/Filters/User/AllowsPdFilter.php
index 462685ac..1bc98bc2 100644
--- a/src/Gambits/User/AllowsPdGambit.php
+++ b/src/Filters/User/AllowsPdFilter.php
@@ -9,15 +9,15 @@
* file that was distributed with this source code.
*/
-namespace FoF\Byobu\Gambits\User;
+namespace FoF\Byobu\Filters\User;
use Flarum\Extension\ExtensionManager;
-use Flarum\Search\AbstractRegexGambit;
use Flarum\Search\SearchState;
use FoF\Byobu\Events\SearchingRecipient;
use Illuminate\Contracts\Events\Dispatcher;
+use Flarum\Search\Filter\FilterInterface;
-class AllowsPdGambit extends AbstractRegexGambit
+class AllowsPdFilter implements FilterInterface
{
/**
* @var Dispatcher
@@ -35,22 +35,17 @@ public function __construct(Dispatcher $dispatcher, ExtensionManager $manager)
$this->manager = $manager;
}
- public function getGambitPattern()
+ public function filter(SearchState $state, array|string $value, bool $negate): void
{
- return 'allows-pd';
- }
-
- protected function conditions(SearchState $search, array $matches, $negate)
- {
- $actor = $search->getActor();
+ $actor = $state->getActor();
- $this->dispatcher->dispatch(new SearchingRecipient($search, $matches, $negate));
+ $this->dispatcher->dispatch(new SearchingRecipient($state, $value, $negate));
if ($actor->can('startPrivateDiscussionWithBlockers')) {
return;
}
- $search
+ $state
->getQuery()
// Always prevent PD's by non-privileged users to suspended users.
->when(
@@ -70,4 +65,8 @@ protected function extensionEnabled(string $extension): bool
{
return $this->manager->isEnabled($extension);
}
+ public function getFilterKey(): string
+ {
+ return 'byobu';
+ }
}
diff --git a/src/Listeners/DropTagsOnPrivateDiscussions.php b/src/Listeners/DropTagsOnPrivateDiscussions.php
deleted file mode 100644
index afb9dbc4..00000000
--- a/src/Listeners/DropTagsOnPrivateDiscussions.php
+++ /dev/null
@@ -1,42 +0,0 @@
-extensions = $extensions;
- }
-
- public function handle(Saving $event)
- {
- $isByobu = Arr::exists($event->data, 'relationships.recipientUsers') || Arr::exists($event->data, 'relationships.recipientGroups');
- $hasTags = Arr::exists($event->data, 'relationships.tags.data');
-
- if ($isByobu
- && $hasTags
- && $this->extensions->isEnabled('flarum-tags')
- ) {
- Arr::forget($event->data, 'relationships.tags');
- }
- }
-}
diff --git a/src/Listeners/SaveUserPreferences.php b/src/Listeners/SaveUserPreferences.php
deleted file mode 100644
index 57126fab..00000000
--- a/src/Listeners/SaveUserPreferences.php
+++ /dev/null
@@ -1,32 +0,0 @@
-actor;
- $user = $event->user;
-
- $blocksPd = Arr::pull($event->data, 'attributes.blocksPd');
-
- if ($blocksPd !== null) {
- $actor->assertPermission($actor->id === $user->id);
-
- $user->blocks_byobu_pd = (bool) $blocksPd;
- }
- }
-}
diff --git a/src/Notifications/DiscussionAddedBlueprint.php b/src/Notifications/DiscussionAddedBlueprint.php
index fd061079..47a5ebe0 100644
--- a/src/Notifications/DiscussionAddedBlueprint.php
+++ b/src/Notifications/DiscussionAddedBlueprint.php
@@ -11,13 +11,14 @@
namespace FoF\Byobu\Notifications;
+use Flarum\Notification\AlertableInterface;
use Flarum\Discussion\Discussion;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\User\User;
use Symfony\Contracts\Translation\TranslatorInterface;
-class DiscussionAddedBlueprint implements BlueprintInterface, MailableInterface
+class DiscussionAddedBlueprint implements BlueprintInterface, MailableInterface, AlertableInterface
{
/**
* @var Discussion
@@ -35,17 +36,17 @@ public function __construct(User $actor, Discussion $discussion)
$this->discussion = $discussion;
}
- public function getFromUser(): ?User
+ public function getFromUser(): ?\Flarum\User\User
{
return $this->actor;
}
- public function getSubject(): ?Discussion
+ public function getSubject(): ?\Flarum\Database\AbstractModel
{
return $this->discussion;
}
- public function getData()
+ public function getData(): mixed
{
return [];
}
@@ -55,7 +56,7 @@ public function getData()
*
* @return string
*/
- public static function getType()
+ public static function getType(): string
{
return 'byobuPrivateDiscussionAdded';
}
@@ -65,7 +66,7 @@ public static function getType()
*
* @return string
*/
- public static function getSubjectModel()
+ public static function getSubjectModel(): string
{
return Discussion::class;
}
@@ -75,9 +76,9 @@ public static function getSubjectModel()
*
* @return array
*/
- public function getEmailView()
+ public function getEmailViews(): array
{
- return ['text' => 'fof-byobu::emails.privateDiscussionAdded'];
+ return ['text' => 'fof-byobu::email.plain.privateDiscussionAdded', 'html' => 'fof-byobu::email.html.privateDiscussionAdded'];
}
/**
@@ -85,7 +86,7 @@ public function getEmailView()
*
* @return string
*/
- public function getEmailSubject(TranslatorInterface $translator)
+ public function getEmailSubject(\Flarum\Locale\TranslatorInterface $translator): string
{
return $translator->trans('fof-byobu.email.subject.private_discussion_added', [
'{display_name}' => $this->actor->display_name,
diff --git a/src/Notifications/DiscussionCreatedBlueprint.php b/src/Notifications/DiscussionCreatedBlueprint.php
index 47bcef48..20789e1e 100644
--- a/src/Notifications/DiscussionCreatedBlueprint.php
+++ b/src/Notifications/DiscussionCreatedBlueprint.php
@@ -11,13 +11,14 @@
namespace FoF\Byobu\Notifications;
+use Flarum\Notification\AlertableInterface;
use Flarum\Discussion\Discussion;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\User\User;
use Symfony\Contracts\Translation\TranslatorInterface;
-class DiscussionCreatedBlueprint implements BlueprintInterface, MailableInterface
+class DiscussionCreatedBlueprint implements BlueprintInterface, MailableInterface, AlertableInterface
{
/**
* @var Discussion
@@ -31,12 +32,12 @@ public function __construct(Discussion $discussion)
$this->discussion = $discussion;
}
- public function getFromUser(): ?User
+ public function getFromUser(): ?\Flarum\User\User
{
return $this->discussion->user;
}
- public function getSubject(): ?Discussion
+ public function getSubject(): ?\Flarum\Database\AbstractModel
{
return $this->discussion;
}
@@ -46,7 +47,7 @@ public function getSubject(): ?Discussion
*
* @return array|null
*/
- public function getData()
+ public function getData(): mixed
{
return [];
}
@@ -56,7 +57,7 @@ public function getData()
*
* @return string
*/
- public static function getType()
+ public static function getType(): string
{
return 'byobuPrivateDiscussionCreated';
}
@@ -66,7 +67,7 @@ public static function getType()
*
* @return string
*/
- public static function getSubjectModel()
+ public static function getSubjectModel(): string
{
return Discussion::class;
}
@@ -76,9 +77,9 @@ public static function getSubjectModel()
*
* @return array
*/
- public function getEmailView()
+ public function getEmailViews(): array
{
- return ['text' => 'fof-byobu::emails.privateDiscussionCreated'];
+ return ['text' => 'fof-byobu::email.plain.privateDiscussionCreated', 'html' => 'fof-byobu::email.html.privateDiscussionCreated'];
}
/**
@@ -86,7 +87,7 @@ public function getEmailView()
*
* @return string
*/
- public function getEmailSubject(TranslatorInterface $translator)
+ public function getEmailSubject(\Flarum\Locale\TranslatorInterface $translator): string
{
return $translator->trans('fof-byobu.email.subject.private_discussion_created', [
'{display_name}' => $this->discussion->user->display_name,
diff --git a/src/Notifications/DiscussionMadePublicBlueprint.php b/src/Notifications/DiscussionMadePublicBlueprint.php
index 8e33eb87..3656c2ff 100644
--- a/src/Notifications/DiscussionMadePublicBlueprint.php
+++ b/src/Notifications/DiscussionMadePublicBlueprint.php
@@ -11,13 +11,14 @@
namespace FoF\Byobu\Notifications;
+use Flarum\Notification\AlertableInterface;
use Flarum\Discussion\Discussion;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\User\User;
use Symfony\Contracts\Translation\TranslatorInterface;
-class DiscussionMadePublicBlueprint implements BlueprintInterface, MailableInterface
+class DiscussionMadePublicBlueprint implements BlueprintInterface, MailableInterface, AlertableInterface
{
/**
* @var User
@@ -38,12 +39,12 @@ public function __construct(User $actor, Discussion $discussion)
$this->discussion = $discussion;
}
- public function getFromUser(): ?User
+ public function getFromUser(): ?\Flarum\User\User
{
return $this->actor;
}
- public function getSubject(): ?Discussion
+ public function getSubject(): ?\Flarum\Database\AbstractModel
{
return $this->discussion;
}
@@ -53,7 +54,7 @@ public function getSubject(): ?Discussion
*
* @return array|null
*/
- public function getData()
+ public function getData(): mixed
{
// return [
// 'user_left' => $this->user->id,
@@ -67,7 +68,7 @@ public function getData()
*
* @return string
*/
- public static function getType()
+ public static function getType(): string
{
return 'byobuMadePublic';
}
@@ -77,7 +78,7 @@ public static function getType()
*
* @return string
*/
- public static function getSubjectModel()
+ public static function getSubjectModel(): string
{
return Discussion::class;
}
@@ -87,9 +88,9 @@ public static function getSubjectModel()
*
* @return array
*/
- public function getEmailView()
+ public function getEmailViews(): array
{
- return ['text' => 'fof-byobu::emails.byobuMadePublic'];
+ return ['text' => 'fof-byobu::email.plain.byobuMadePublic', 'html' => 'fof-byobu::email.html.byobuMadePublic'];
}
/**
@@ -97,7 +98,7 @@ public function getEmailView()
*
* @return string
*/
- public function getEmailSubject(TranslatorInterface $translator)
+ public function getEmailSubject(\Flarum\Locale\TranslatorInterface $translator): string
{
return $translator->trans('fof-byobu.email.subject.made_public', [
'{display_name}' => $this->actor->display_name,
diff --git a/src/Notifications/DiscussionRecipientRemovedBlueprint.php b/src/Notifications/DiscussionRecipientRemovedBlueprint.php
index e57647c2..914e9014 100644
--- a/src/Notifications/DiscussionRecipientRemovedBlueprint.php
+++ b/src/Notifications/DiscussionRecipientRemovedBlueprint.php
@@ -11,13 +11,14 @@
namespace FoF\Byobu\Notifications;
+use Flarum\Notification\AlertableInterface;
use Flarum\Discussion\Discussion;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\User\User;
use Symfony\Contracts\Translation\TranslatorInterface;
-class DiscussionRecipientRemovedBlueprint implements BlueprintInterface, MailableInterface
+class DiscussionRecipientRemovedBlueprint implements BlueprintInterface, MailableInterface, AlertableInterface
{
/**
* @var User
@@ -38,12 +39,12 @@ public function __construct(User $user, Discussion $discussion)
$this->discussion = $discussion;
}
- public function getFromUser(): ?User
+ public function getFromUser(): ?\Flarum\User\User
{
return $this->user;
}
- public function getSubject(): ?Discussion
+ public function getSubject(): ?\Flarum\Database\AbstractModel
{
return $this->discussion;
}
@@ -53,7 +54,7 @@ public function getSubject(): ?Discussion
*
* @return array|null
*/
- public function getData()
+ public function getData(): mixed
{
return [
'user_left' => $this->user->id,
@@ -66,7 +67,7 @@ public function getData()
*
* @return string
*/
- public static function getType()
+ public static function getType(): string
{
return 'byobuRecipientRemoved';
}
@@ -76,7 +77,7 @@ public static function getType()
*
* @return string
*/
- public static function getSubjectModel()
+ public static function getSubjectModel(): string
{
return Discussion::class;
}
@@ -86,9 +87,9 @@ public static function getSubjectModel()
*
* @return array
*/
- public function getEmailView()
+ public function getEmailViews(): array
{
- return ['text' => 'fof-byobu::emails.byobuRecipientRemoved'];
+ return ['text' => 'fof-byobu::email.plain.byobuRecipientRemoved', 'html' => 'fof-byobu::email.html.byobuRecipientRemoved'];
}
/**
@@ -96,7 +97,7 @@ public function getEmailView()
*
* @return string
*/
- public function getEmailSubject(TranslatorInterface $translator)
+ public function getEmailSubject(\Flarum\Locale\TranslatorInterface $translator): string
{
return $translator->trans('fof-byobu.email.subject.recipient_removed', [
'{display_name}' => $this->user->display_name,
diff --git a/src/Notifications/DiscussionRepliedBlueprint.php b/src/Notifications/DiscussionRepliedBlueprint.php
index eaf6b688..955954f3 100644
--- a/src/Notifications/DiscussionRepliedBlueprint.php
+++ b/src/Notifications/DiscussionRepliedBlueprint.php
@@ -11,6 +11,7 @@
namespace FoF\Byobu\Notifications;
+use Flarum\Notification\AlertableInterface;
use Flarum\Discussion\Discussion;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
@@ -18,7 +19,7 @@
use Flarum\User\User;
use Symfony\Contracts\Translation\TranslatorInterface;
-class DiscussionRepliedBlueprint implements BlueprintInterface, MailableInterface
+class DiscussionRepliedBlueprint implements BlueprintInterface, MailableInterface, AlertableInterface
{
/**
* @var Post
@@ -35,12 +36,12 @@ public function __construct(Post $post, User $actor)
$this->actor = $actor;
}
- public function getFromUser(): ?User
+ public function getFromUser(): ?\Flarum\User\User
{
return $this->actor;
}
- public function getSubject(): ?Discussion
+ public function getSubject(): ?\Flarum\Database\AbstractModel
{
return $this->post->discussion;
}
@@ -50,7 +51,7 @@ public function getSubject(): ?Discussion
*
* @return array|null
*/
- public function getData()
+ public function getData(): mixed
{
return ['postNumber' => $this->post->number];
}
@@ -60,7 +61,7 @@ public function getData()
*
* @return string
*/
- public static function getType()
+ public static function getType(): string
{
return 'byobuPrivateDiscussionReplied';
}
@@ -70,7 +71,7 @@ public static function getType()
*
* @return string
*/
- public static function getSubjectModel()
+ public static function getSubjectModel(): string
{
return Discussion::class;
}
@@ -80,9 +81,9 @@ public static function getSubjectModel()
*
* @return array
*/
- public function getEmailView()
+ public function getEmailViews(): array
{
- return ['text' => 'fof-byobu::emails.privateDiscussionReplied'];
+ return ['text' => 'fof-byobu::email.plain.privateDiscussionReplied', 'html' => 'fof-byobu::email.html.privateDiscussionReplied'];
}
/**
@@ -90,7 +91,7 @@ public function getEmailView()
*
* @return string
*/
- public function getEmailSubject(TranslatorInterface $translator)
+ public function getEmailSubject(\Flarum\Locale\TranslatorInterface $translator): string
{
return $translator->trans('fof-byobu.email.subject.private_discussion_replied', [
'{display_name}' => $this->actor->display_name,
diff --git a/src/Posts/MadePublic.php b/src/Posts/MadePublic.php
index f9f88fb8..da1008a3 100644
--- a/src/Posts/MadePublic.php
+++ b/src/Posts/MadePublic.php
@@ -25,14 +25,14 @@ class MadePublic extends AbstractEventPost implements MergeableInterface
/**
* {@inheritdoc}
*/
- public static $type = 'madePublic';
+ public static string $type = 'madePublic';
/**
* @param Post|null|RecipientLeft $previous
*
* @return $this|RecipientLeft|Post
*/
- public function saveAfter(Post $previous = null)
+ public function saveAfter(Post $previous = null): static
{
/** @var MadePublic $previous */
if ($previous instanceof static) {
diff --git a/src/Posts/RecipientLeft.php b/src/Posts/RecipientLeft.php
index ab3b7cf3..590c7435 100644
--- a/src/Posts/RecipientLeft.php
+++ b/src/Posts/RecipientLeft.php
@@ -25,14 +25,14 @@ class RecipientLeft extends AbstractEventPost implements MergeableInterface
/**
* {@inheritdoc}
*/
- public static $type = 'recipientLeft';
+ public static string $type = 'recipientLeft';
/**
* @param Post|null|RecipientLeft $previous
*
* @return $this|RecipientLeft|Post
*/
- public function saveAfter(Post $previous = null)
+ public function saveAfter(Post $previous = null): static
{
/** @var RecipientLeft $previous */
if ($previous instanceof static) {
diff --git a/src/Posts/RecipientsModified.php b/src/Posts/RecipientsModified.php
index 3aa2a3f9..0fc7bd17 100644
--- a/src/Posts/RecipientsModified.php
+++ b/src/Posts/RecipientsModified.php
@@ -25,7 +25,7 @@ class RecipientsModified extends AbstractEventPost implements MergeableInterface
/**
* {@inheritdoc}
*/
- public static $type = 'recipientsModified';
+ public static string $type = 'recipientsModified';
protected $states = ['new', 'old'];
protected $types = ['users', 'groups'];
@@ -35,7 +35,7 @@ class RecipientsModified extends AbstractEventPost implements MergeableInterface
*
* @return $this|RecipientsModified|Post
*/
- public function saveAfter(Post $previous = null)
+ public function saveAfter(Post $previous = null): static
{
/** @var RecipientsModified $previous */
if ($previous instanceof static) {
diff --git a/src/Provider/ByobuProvider.php b/src/Provider/ByobuProvider.php
index 49af837c..cd2bc0ba 100644
--- a/src/Provider/ByobuProvider.php
+++ b/src/Provider/ByobuProvider.php
@@ -38,7 +38,6 @@ public function boot()
// add byobu's persist recipients as the first listener, then add drop tags
$events->listen(Saving::class, PersistRecipients::class);
- $events->listen(Saving::class, DropTagsOnPrivateDiscussions::class);
// then re-add everything else
foreach ($listeners as $listener) {
diff --git a/tests/integration/api/UserPrivacyTest.php b/tests/integration/api/UserPrivacyTest.php
index d5459f6e..c7959a7f 100644
--- a/tests/integration/api/UserPrivacyTest.php
+++ b/tests/integration/api/UserPrivacyTest.php
@@ -13,6 +13,8 @@
use Flarum\Testing\integration\RetrievesAuthorizedUsers;
use Flarum\Testing\integration\TestCase;
+use PHPUnit\Framework\Attributes\Test;
+use Flarum\User\User;
class UserPrivacyTest extends TestCase
{
@@ -25,16 +27,14 @@ public function setUp(): void
$this->extension('fof-byobu');
$this->prepareDatabase([
- 'users' => [
+ User::class => [
$this->normalUser(),
['id' => 3, 'username' => 'normal2', 'email' => 'normal2@machine.local', 'password' => 'too-obscure', 'blocks_byobu_pd' => true],
],
]);
}
- /**
- * @test
- */
+ #[Test]
public function user_can_set_block_pd_setting()
{
$response = $this->send(
@@ -61,9 +61,7 @@ public function user_can_set_block_pd_setting()
$this->assertTrue($json['data']['attributes']['blocksPd']);
}
- /**
- * @test
- */
+ #[Test]
public function user_can_disable_block_pd_setting()
{
$response = $this->send(