M .devcontainer/docker-compose.yml => .devcontainer/docker-compose.yml +1 -1
@@ 69,7 69,7 @@ services:
hard: -1
libretranslate:
- image: libretranslate/libretranslate:v1.3.10
+ image: libretranslate/libretranslate:v1.3.11
restart: unless-stopped
volumes:
- lt-data:/home/libretranslate/.local
M .rubocop_todo.yml => .rubocop_todo.yml +8 -20
@@ 1,6 1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude --no-exclude-limit --no-offense-counts --no-auto-gen-timestamp`
-# using RuboCop version 1.50.2.
+# using RuboCop version 1.52.1.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
@@ 48,18 48,14 @@ Layout/SpaceInLambdaLiteral:
- 'config/environments/production.rb'
- 'config/initializers/content_security_policy.rb'
+# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AllowedMethods, AllowedPatterns.
Lint/AmbiguousBlockAssociation:
Exclude:
- - 'spec/controllers/admin/account_moderation_notes_controller_spec.rb'
- 'spec/controllers/settings/two_factor_authentication/confirmations_controller_spec.rb'
- 'spec/controllers/settings/two_factor_authentication/otp_authentication_controller_spec.rb'
- - 'spec/controllers/settings/two_factor_authentication/webauthn_credentials_controller_spec.rb'
- 'spec/services/activitypub/process_status_update_service_spec.rb'
- 'spec/services/post_status_service_spec.rb'
- - 'spec/services/suspend_account_service_spec.rb'
- - 'spec/services/unsuspend_account_service_spec.rb'
- - 'spec/workers/scheduler/accounts_statuses_cleanup_scheduler_spec.rb'
# Configuration parameters: AllowComments, AllowEmptyLambdas.
Lint/EmptyBlock:
@@ 124,6 120,7 @@ Lint/UnusedBlockArgument:
- 'config/initializers/paperclip.rb'
- 'config/initializers/simple_form.rb'
+# This cop supports unsafe autocorrection (--autocorrect-all).
Lint/UselessAssignment:
Exclude:
- 'app/services/activitypub/process_status_update_service.rb'
@@ 145,6 142,7 @@ Lint/UselessAssignment:
- 'spec/services/resolve_url_service_spec.rb'
- 'spec/views/statuses/show.html.haml_spec.rb'
+# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: CheckForMethodsWithNoSideEffects.
Lint/Void:
Exclude:
@@ 167,7 165,7 @@ Metrics/CyclomaticComplexity:
# Configuration parameters: AllowedMethods, AllowedPatterns.
Metrics/PerceivedComplexity:
- Max: 28
+ Max: 27
Naming/AccessorMethodName:
Exclude:
@@ 180,6 178,7 @@ Naming/FileName:
Exclude:
- 'config/locales/sr-Latn.rb'
+# This cop supports unsafe autocorrection (--autocorrect-all).
# Configuration parameters: EnforcedStyleForLeadingUnderscores.
# SupportedStylesForLeadingUnderscores: disallowed, required, optional
Naming/MemoizedInstanceVariableName:
@@ 202,14 201,9 @@ Naming/VariableNumber:
- 'db/migrate/20190820003045_update_statuses_index.rb'
- 'db/migrate/20190823221802_add_local_index_to_statuses.rb'
- 'db/migrate/20200119112504_add_public_index_to_statuses.rb'
- - 'spec/controllers/activitypub/followers_synchronizations_controller_spec.rb'
- - 'spec/lib/feed_manager_spec.rb'
- 'spec/models/account_spec.rb'
- - 'spec/models/concerns/account_interactions_spec.rb'
- - 'spec/models/custom_emoji_filter_spec.rb'
- 'spec/models/domain_block_spec.rb'
- 'spec/models/user_spec.rb'
- - 'spec/services/activitypub/fetch_featured_collection_service_spec.rb'
# This cop supports unsafe autocorrection (--autocorrect-all).
Performance/UnfreezeString:
@@ 322,8 316,6 @@ RSpec/LetSetup:
- 'spec/controllers/admin/statuses_controller_spec.rb'
- 'spec/controllers/api/v1/accounts/statuses_controller_spec.rb'
- 'spec/controllers/api/v1/admin/accounts_controller_spec.rb'
- - 'spec/controllers/api/v1/admin/domain_allows_controller_spec.rb'
- - 'spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb'
- 'spec/controllers/api/v1/filters_controller_spec.rb'
- 'spec/controllers/api/v1/followed_tags_controller_spec.rb'
- 'spec/controllers/api/v1/tags_controller_spec.rb'
@@ 363,7 355,6 @@ RSpec/LetSetup:
- 'spec/services/suspend_account_service_spec.rb'
- 'spec/services/unallow_domain_service_spec.rb'
- 'spec/services/unsuspend_account_service_spec.rb'
- - 'spec/workers/scheduler/accounts_statuses_cleanup_scheduler_spec.rb'
- 'spec/workers/scheduler/user_cleanup_scheduler_spec.rb'
RSpec/MessageChain:
@@ 396,7 387,7 @@ RSpec/MessageSpies:
- 'spec/validators/status_length_validator_spec.rb'
RSpec/MultipleExpectations:
- Max: 19
+ Max: 8
# Configuration parameters: AllowSubject.
RSpec/MultipleMemoizedHelpers:
@@ 424,7 415,6 @@ RSpec/StubbedMock:
RSpec/SubjectDeclaration:
Exclude:
- 'spec/controllers/admin/domain_blocks_controller_spec.rb'
- - 'spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb'
- 'spec/models/account_migration_spec.rb'
- 'spec/models/account_spec.rb'
- 'spec/models/relationship_filter_spec.rb'
@@ 599,7 589,6 @@ Rails/NegateInclude:
- 'app/models/concerns/attachmentable.rb'
- 'app/models/concerns/remotable.rb'
- 'app/models/custom_filter.rb'
- - 'app/models/webhook.rb'
- 'app/services/activitypub/process_status_update_service.rb'
- 'app/services/fetch_link_card_service.rb'
- 'app/services/search_service.rb'
@@ 770,11 759,9 @@ Rails/WhereExists:
- 'app/workers/move_worker.rb'
- 'db/migrate/20190529143559_preserve_old_layout_for_existing_users.rb'
- 'lib/tasks/tests.rake'
- - 'spec/controllers/api/v1/accounts/notes_controller_spec.rb'
- 'spec/controllers/api/v1/tags_controller_spec.rb'
- 'spec/models/account_spec.rb'
- 'spec/services/activitypub/process_collection_service_spec.rb'
- - 'spec/services/post_status_service_spec.rb'
- 'spec/services/purge_domain_service_spec.rb'
- 'spec/services/unallow_domain_service_spec.rb'
@@ 796,6 783,7 @@ Style/ClassVars:
Exclude:
- 'config/initializers/devise.rb'
+# This cop supports unsafe autocorrection (--autocorrect-all).
Style/CombinableLoops:
Exclude:
- 'app/models/form/custom_emoji_batch.rb'
M Gemfile.lock => Gemfile.lock +33 -29
@@ 97,26 97,26 @@ GEM
attr_required (1.0.1)
awrence (1.2.1)
aws-eventstream (1.2.0)
- aws-partitions (1.772.0)
- aws-sdk-core (3.174.0)
+ aws-partitions (1.780.0)
+ aws-sdk-core (3.175.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.5)
jmespath (~> 1, >= 1.6.1)
- aws-sdk-kms (1.65.0)
+ aws-sdk-kms (1.67.0)
aws-sdk-core (~> 3, >= 3.174.0)
aws-sigv4 (~> 1.1)
- aws-sdk-s3 (1.123.0)
+ aws-sdk-s3 (1.125.0)
aws-sdk-core (~> 3, >= 3.174.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.4)
aws-sigv4 (1.5.2)
aws-eventstream (~> 1, >= 1.0.2)
bcrypt (3.1.18)
- better_errors (2.9.1)
- coderay (>= 1.0.0)
+ better_errors (2.10.1)
erubi (>= 1.0.0)
rack (>= 0.9.0)
+ rouge (>= 1.0.0)
better_html (2.0.1)
actionview (>= 6.0)
activesupport (>= 6.0)
@@ 154,7 154,7 @@ GEM
sshkit (~> 1.3)
capistrano-yarn (2.0.2)
capistrano (~> 3.0)
- capybara (3.39.1)
+ capybara (3.39.2)
addressable
matrix
mini_mime (>= 0.1.3)
@@ 174,7 174,6 @@ GEM
chunky_png (1.4.0)
climate_control (0.2.0)
cocoon (1.2.15)
- coderay (1.1.3)
color_diff (0.1)
concurrent-ruby (1.2.2)
connection_pool (2.4.1)
@@ 229,7 228,7 @@ GEM
erubi (1.12.0)
et-orbi (1.2.7)
tzinfo
- excon (0.99.0)
+ excon (0.100.0)
fabrication (2.30.0)
faker (3.2.0)
i18n (>= 1.8.11, < 2)
@@ 319,7 318,7 @@ GEM
httplog (1.6.2)
rack (>= 2.0)
rainbow (>= 2.0.0)
- i18n (1.13.0)
+ i18n (1.14.1)
concurrent-ruby (~> 1.0)
i18n-tasks (1.0.12)
activesupport (>= 4.0.2)
@@ 355,7 354,7 @@ GEM
json-schema (4.0.0)
addressable (>= 2.8)
jsonapi-renderer (0.2.2)
- jwt (2.7.0)
+ jwt (2.7.1)
kaminari (1.2.2)
activesupport (>= 4.1.0)
kaminari-actionview (= 1.2.2)
@@ 414,12 413,12 @@ GEM
mini_mime (1.1.2)
mini_portile2 (2.8.2)
minitest (5.18.0)
- msgpack (1.7.0)
+ msgpack (1.7.1)
multi_json (1.15.0)
multipart-post (2.3.0)
net-http (0.3.2)
uri
- net-imap (0.3.4)
+ net-imap (0.3.6)
date
net-protocol
net-ldap (0.18.0)
@@ 436,7 435,7 @@ GEM
nokogiri (1.15.2)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
- oj (3.14.3)
+ oj (3.15.0)
omniauth (1.9.2)
hashie (>= 3.4.6)
rack (>= 1.6.2, < 3)
@@ 470,8 469,9 @@ GEM
orm_adapter (0.5.0)
ox (2.14.16)
parallel (1.23.0)
- parser (3.2.2.1)
+ parser (3.2.2.3)
ast (~> 2.4.1)
+ racc
parslet (2.0.0)
pastel (0.8.0)
tty-color (~> 0.5)
@@ 495,7 495,7 @@ GEM
pundit (2.3.0)
activesupport (>= 3.0.0)
raabro (1.4.0)
- racc (1.6.2)
+ racc (1.7.1)
rack (2.2.7)
rack-attack (6.6.1)
rack (>= 1.0, < 3)
@@ 547,17 547,17 @@ GEM
thor (~> 1.0)
rainbow (3.1.1)
rake (13.0.6)
- rdf (3.2.10)
+ rdf (3.2.11)
link_header (~> 0.0, >= 0.0.8)
- rdf-normalize (0.5.1)
+ rdf-normalize (0.6.0)
rdf (~> 3.2)
redcarpet (3.6.0)
redis (4.8.1)
- redis-namespace (1.10.0)
+ redis-namespace (1.11.0)
redis (>= 4)
redlock (1.3.2)
redis (>= 3.0.0, < 6.0)
- regexp_parser (2.8.0)
+ regexp_parser (2.8.1)
request_store (1.5.1)
rack (>= 1.4)
responders (3.1.0)
@@ 565,6 565,7 @@ GEM
railties (>= 5.2)
rexml (3.2.5)
rotp (6.2.2)
+ rouge (4.1.2)
rpam2 (4.0.2)
rqrcode (2.2.0)
chunky_png (~> 1.0)
@@ 591,20 592,22 @@ GEM
sidekiq (>= 2.4.0)
rspec-support (3.12.0)
rspec_chunked (0.6)
- rubocop (1.51.0)
+ rubocop (1.52.1)
json (~> 2.3)
parallel (~> 1.10)
- parser (>= 3.2.0.0)
+ parser (>= 3.2.2.3)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.28.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
- rubocop-ast (1.28.1)
+ rubocop-ast (1.29.0)
parser (>= 3.2.1.0)
rubocop-capybara (2.18.0)
rubocop (~> 1.41)
+ rubocop-factory_bot (2.23.1)
+ rubocop (~> 1.33)
rubocop-performance (1.18.0)
rubocop (>= 1.7.0, < 2.0)
rubocop-ast (>= 0.4.0)
@@ 612,16 615,17 @@ GEM
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
- rubocop-rspec (2.19.0)
+ rubocop-rspec (2.22.0)
rubocop (~> 1.33)
rubocop-capybara (~> 2.17)
+ rubocop-factory_bot (~> 2.22)
ruby-progressbar (1.13.0)
- ruby-saml (1.13.0)
- nokogiri (>= 1.10.5)
+ ruby-saml (1.15.0)
+ nokogiri (>= 1.13.10)
rexml
ruby2_keywords (0.0.5)
rubyzip (2.3.2)
- rufus-scheduler (3.8.2)
+ rufus-scheduler (3.9.1)
fugit (~> 1.1, >= 1.1.6)
safety_net_attestation (0.4.0)
jwt (~> 2.0)
@@ 680,13 684,13 @@ GEM
attr_required (>= 0.0.5)
httpclient (>= 2.4)
sysexits (1.2.0)
- temple (0.10.0)
+ temple (0.10.2)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
terrapin (0.6.0)
climate_control (>= 0.0.3, < 1.0)
thor (1.2.2)
- tilt (2.1.0)
+ tilt (2.2.0)
timeout (0.3.2)
tpm-key_attestation (0.12.0)
bindata (~> 2.4)
M app/controllers/api/v1/conversations_controller.rb => app/controllers/api/v1/conversations_controller.rb +1 -1
@@ 45,7 45,7 @@ class Api::V1::ConversationsController < Api::BaseController
},
]
)
- .to_a_paginated_by_id(limit_param(LIMIT), **params_slice(:max_id, :since_id, :min_id))
+ .to_a_paginated_by_id(limit_param(LIMIT), params_slice(:max_id, :since_id, :min_id))
end
def insert_pagination_headers
M app/controllers/auth/confirmations_controller.rb => app/controllers/auth/confirmations_controller.rb +3 -1
@@ 88,8 88,10 @@ class Auth::ConfirmationsController < Devise::ConfirmationsController
def after_confirmation_path_for(_resource_name, user)
if user.created_by_application && truthy_param?(:redirect_to_app)
user.created_by_application.confirmation_redirect_uri
+ elsif user_signed_in?
+ web_url('start')
else
- super
+ new_user_session_path
end
end
end
M app/controllers/concerns/captcha_concern.rb => app/controllers/concerns/captcha_concern.rb +5 -0
@@ 2,6 2,7 @@
module CaptchaConcern
extend ActiveSupport::Concern
+
include Hcaptcha::Adapters::ViewMethods
included do
@@ 35,18 36,22 @@ module CaptchaConcern
flash.delete(:hcaptcha_error)
yield message
end
+
false
end
end
def extend_csp_for_captcha!
policy = request.content_security_policy
+
return unless captcha_required? && policy.present?
%w(script_src frame_src style_src connect_src).each do |directive|
values = policy.send(directive)
+
values << 'https://hcaptcha.com' unless values.include?('https://hcaptcha.com') || values.include?('https:')
values << 'https://*.hcaptcha.com' unless values.include?('https://*.hcaptcha.com') || values.include?('https:')
+
policy.send(directive, *values)
end
end
A app/controllers/mail_subscriptions_controller.rb => app/controllers/mail_subscriptions_controller.rb +41 -0
@@ 0,0 1,41 @@
+# frozen_string_literal: true
+
+class MailSubscriptionsController < ApplicationController
+ layout 'auth'
+
+ skip_before_action :require_functional!
+
+ before_action :set_body_classes
+ before_action :set_user
+ before_action :set_type
+
+ def show; end
+
+ def create
+ @user.settings[email_type_from_param] = false
+ @user.save!
+ end
+
+ private
+
+ def set_user
+ @user = GlobalID::Locator.locate_signed(params[:token], for: 'unsubscribe')
+ end
+
+ def set_body_classes
+ @body_classes = 'lighter'
+ end
+
+ def set_type
+ @type = email_type_from_param
+ end
+
+ def email_type_from_param
+ case params[:type]
+ when 'follow', 'reblog', 'favourite', 'mention', 'follow_request'
+ "notification_emails.#{params[:type]}"
+ else
+ raise ArgumentError
+ end
+ end
+end
A app/controllers/settings/verifications_controller.rb => app/controllers/settings/verifications_controller.rb +15 -0
@@ 0,0 1,15 @@
+# frozen_string_literal: true
+
+class Settings::VerificationsController < Settings::BaseController
+ before_action :set_account
+
+ def show
+ @verified_links = @account.fields.select(&:verified?)
+ end
+
+ private
+
+ def set_account
+ @account = current_account
+ end
+end
A app/javascript/flavours/glitch/components/circular_progress.tsx => app/javascript/flavours/glitch/components/circular_progress.tsx +27 -0
@@ 0,0 1,27 @@
+interface Props {
+ size: number;
+ strokeWidth: number;
+}
+
+export const CircularProgress: React.FC<Props> = ({ size, strokeWidth }) => {
+ const viewBox = `0 0 ${size} ${size}`;
+ const radius = (size - strokeWidth) / 2;
+
+ return (
+ <svg
+ width={size}
+ height={size}
+ viewBox={viewBox}
+ className='circular-progress'
+ role='progressbar'
+ >
+ <circle
+ fill='none'
+ cx={size / 2}
+ cy={size / 2}
+ r={radius}
+ strokeWidth={`${strokeWidth}px`}
+ />
+ </svg>
+ );
+};
M => +1 -2
@@ 8,8 8,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { supportsPassiveEvents } from 'detect-passive-events';
import Overlay from 'react-overlays/Overlay';
import { CircularProgress } from 'flavours/glitch/components/loading_indicator';
import { CircularProgress } from "./circular_progress";
import { IconButton } from './icon_button';
const listenerOptions = supportsPassiveEvents ? { passive: true, capture: true } : true;
D app/javascript/flavours/glitch/components/load_pending.jsx => app/javascript/flavours/glitch/components/load_pending.jsx +0 -23
@@ 1,23 0,0 @@
-import PropTypes from 'prop-types';
-import { PureComponent } from 'react';
-
-import { FormattedMessage } from 'react-intl';
-
-export default class LoadPending extends PureComponent {
-
- static propTypes = {
- onClick: PropTypes.func,
- count: PropTypes.number,
- };
-
- render() {
- const { count } = this.props;
-
- return (
- <button className='load-more load-gap' onClick={this.props.onClick}>
- <FormattedMessage id='load_pending' defaultMessage='{count, plural, one {# new item} other {# new items}}' values={{ count }} />
- </button>
- );
- }
-
-}
A app/javascript/flavours/glitch/components/load_pending.tsx => app/javascript/flavours/glitch/components/load_pending.tsx +18 -0
@@ 0,0 1,18 @@
+import { FormattedMessage } from 'react-intl';
+
+interface Props {
+ onClick: (event: React.MouseEvent) => void;
+ count: number;
+}
+
+export const LoadPending: React.FC<Props> = ({ onClick, count }) => {
+ return (
+ <button className='load-more load-gap' onClick={onClick}>
+ <FormattedMessage
+ id='load_pending'
+ defaultMessage='{count, plural, one {# new item} other {# new items}}'
+ values={{ count }}
+ />
+ </button>
+ );
+};
D app/javascript/flavours/glitch/components/loading_indicator.jsx => app/javascript/flavours/glitch/components/loading_indicator.jsx +0 -31
@@ 1,31 0,0 @@
-import PropTypes from 'prop-types';
-
-export const CircularProgress = ({ size, strokeWidth }) => {
- const viewBox = `0 0 ${size} ${size}`;
- const radius = (size - strokeWidth) / 2;
-
- return (
- <svg width={size} heigh={size} viewBox={viewBox} className='circular-progress' role='progressbar'>
- <circle
- fill='none'
- cx={size / 2}
- cy={size / 2}
- r={radius}
- strokeWidth={`${strokeWidth}px`}
- />
- </svg>
- );
-};
-
-CircularProgress.propTypes = {
- size: PropTypes.number.isRequired,
- strokeWidth: PropTypes.number.isRequired,
-};
-
-const LoadingIndicator = () => (
- <div className='loading-indicator'>
- <CircularProgress size={50} strokeWidth={6} />
- </div>
-);
-
-export default LoadingIndicator;
A app/javascript/flavours/glitch/components/loading_indicator.tsx => app/javascript/flavours/glitch/components/loading_indicator.tsx +7 -0
@@ 0,0 1,7 @@
+import { CircularProgress } from './circular_progress';
+
+export const LoadingIndicator: React.FC = () => (
+ <div className='loading-indicator'>
+ <CircularProgress size={50} strokeWidth={6} />
+ </div>
+);
M app/javascript/flavours/glitch/components/scrollable_list.jsx => app/javascript/flavours/glitch/components/scrollable_list.jsx +2 -2
@@ 16,8 16,8 @@ import IntersectionObserverWrapper from 'flavours/glitch/features/ui/util/inters
import { attachFullscreenListener, detachFullscreenListener, isFullscreen } from '../features/ui/util/fullscreen';
import { LoadMore } from './load_more';
-import LoadPending from './load_pending';
-import LoadingIndicator from './loading_indicator';
+import { LoadPending } from './load_pending';
+import { LoadingIndicator } from './loading_indicator';
const MOUSE_IDLE_DELAY = 300;
M => +1 -1
@@ 314,7 314,7 @@ class Header extends ImmutablePureComponent {
let badge;
if (account.get('bot')) {
badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Bot' /></div>);
badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Automated' /></div>);
} else if (account.get('group')) {
badge = (<div className='account-role group'><FormattedMessage id='account.badges.group' defaultMessage='Group' /></div>);
} else {
M app/javascript/flavours/glitch/features/account_gallery/index.jsx => app/javascript/flavours/glitch/features/account_gallery/index.jsx +1 -1
@@ 10,7 10,7 @@ import { lookupAccount, fetchAccount } from 'flavours/glitch/actions/accounts';
import { openModal } from 'flavours/glitch/actions/modal';
import { expandAccountMediaTimeline } from 'flavours/glitch/actions/timelines';
import { LoadMore } from 'flavours/glitch/components/load_more';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollContainer from 'flavours/glitch/containers/scroll_container';
import ProfileColumnHeader from 'flavours/glitch/features/account/components/profile_column_header';
import HeaderContainer from 'flavours/glitch/features/account_timeline/containers/header_container';
M app/javascript/flavours/glitch/features/account_timeline/index.jsx => app/javascript/flavours/glitch/features/account_timeline/index.jsx +1 -1
@@ 16,7 16,7 @@ import { getAccountHidden } from 'flavours/glitch/selectors';
import { fetchFeaturedTags } from '../../actions/featured_tags';
import { expandAccountFeaturedTimeline, expandAccountTimeline } from '../../actions/timelines';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import StatusList from '../../components/status_list';
import Column from '../ui/components/column';
M app/javascript/flavours/glitch/features/blocks/index.jsx => app/javascript/flavours/glitch/features/blocks/index.jsx +1 -1
@@ 10,7 10,7 @@ import { debounce } from 'lodash';
import { fetchBlocks, expandBlocks } from 'flavours/glitch/actions/blocks';
import ColumnBackButtonSlim from 'flavours/glitch/components/column_back_button_slim';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import AccountContainer from 'flavours/glitch/containers/account_container';
import Column from 'flavours/glitch/features/ui/components/column';
M app/javascript/flavours/glitch/features/compose/components/upload.jsx => app/javascript/flavours/glitch/features/compose/components/upload.jsx +1 -1
@@ 46,7 46,7 @@ export default class Upload extends ImmutablePureComponent {
const y = ((focusY / -2) + .5) * 100;
return (
- <div className='compose-form__upload' tabIndex={0} role='button'>
+ <div className='compose-form__upload'>
<Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>
{({ scale }) => (
<div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>
M app/javascript/flavours/glitch/features/directory/index.jsx => app/javascript/flavours/glitch/features/directory/index.jsx +1 -1
@@ 14,7 14,7 @@ import { fetchDirectory, expandDirectory } from 'flavours/glitch/actions/directo
import Column from 'flavours/glitch/components/column';
import ColumnHeader from 'flavours/glitch/components/column_header';
import { LoadMore } from 'flavours/glitch/components/load_more';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import { RadioButton } from 'flavours/glitch/components/radio_button';
import ScrollContainer from 'flavours/glitch/containers/scroll_container';
M app/javascript/flavours/glitch/features/domain_blocks/index.jsx => app/javascript/flavours/glitch/features/domain_blocks/index.jsx +1 -1
@@ 14,7 14,7 @@ import ScrollableList from 'flavours/glitch/components/scrollable_list';
import { fetchDomainBlocks, expandDomainBlocks } from '../../actions/domain_blocks';
import ColumnBackButtonSlim from '../../components/column_back_button_slim';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import DomainContainer from '../../containers/domain_container';
import Column from '../ui/components/column';
A app/javascript/flavours/glitch/features/emoji/emoji_compressed.d.ts => app/javascript/flavours/glitch/features/emoji/emoji_compressed.d.ts +51 -0
@@ 0,0 1,51 @@
+import type { BaseEmoji, EmojiData, NimbleEmojiIndex } from 'emoji-mart';
+import type { Category, Data, Emoji } from 'emoji-mart/dist-es/utils/data';
+
+/*
+ * The 'search' property, although not defined in the [`Emoji`]{@link node_modules/@types/emoji-mart/dist-es/utils/data.d.ts#Emoji} type,
+ * is used in the application.
+ * This could be due to an oversight by the library maintainer.
+ * The `search` property is defined and used [here]{@link node_modules/emoji-mart/dist/utils/data.js#uncompress}.
+ */
+export type Search = string;
+/*
+ * The 'skins' property does not exist in the application data.
+ * This could be a potential area of refactoring or error handling.
+ * The non-existence of 'skins' property is evident at [this location]{@link app/javascript/flavours/glitch/features/emoji/emoji_compressed.js:121}.
+ */
+export type Skins = null;
+
+export type FilenameData = string[] | string[][];
+export type ShortCodesToEmojiDataKey =
+ | EmojiData['id']
+ | BaseEmoji['native']
+ | keyof NimbleEmojiIndex['emojis'];
+
+export type SearchData = [
+ BaseEmoji['native'],
+ Emoji['short_names'],
+ Search,
+ Emoji['unified']
+];
+
+export interface ShortCodesToEmojiData {
+ [key: ShortCodesToEmojiDataKey]: [FilenameData, SearchData];
+}
+export type EmojisWithoutShortCodes = FilenameData[];
+
+export type EmojiCompressed = [
+ ShortCodesToEmojiData,
+ Skins,
+ Category[],
+ Data['aliases'],
+ EmojisWithoutShortCodes
+];
+
+/*
+ * `emoji_compressed.js` uses `babel-plugin-preval`, which makes it difficult to convert to TypeScript.
+ * As a temporary solution, we are allowing a default export here to apply the TypeScript type `EmojiCompressed` to the JS file export.
+ * - {@link app/javascript/flavours/glitch/features/emoji/emoji_compressed.js}
+ */
+declare const emojiCompressed: EmojiCompressed;
+
+export default emojiCompressed; // eslint-disable-line import/no-default-export
M app/javascript/flavours/glitch/features/emoji/emoji_compressed.js => app/javascript/flavours/glitch/features/emoji/emoji_compressed.js +10 -0
@@ 118,6 118,16 @@ Object.keys(emojiIndex.emojis).forEach(key => {
// inconsistent behavior in dev mode
module.exports = JSON.parse(JSON.stringify([
shortCodesToEmojiData,
+ /*
+ * The property `skins` is not found in the current context.
+ * This could potentially lead to issues when interacting with modules or data structures
+ * that expect the presence of `skins` property.
+ * Currently, no definitions or references to `skins` property can be found in:
+ * - {@link node_modules/emoji-mart/dist/utils/data.js}
+ * - {@link node_modules/emoji-mart/data/all.json}
+ * - {@link app/javascript/flavours/glitch/features/emoji/emoji_compressed.d.ts#Skins}
+ * Future refactorings or updates should consider adding definitions or handling for `skins` property.
+ */
emojiMartData.skins,
emojiMartData.categories,
emojiMartData.aliases,
R app/javascript/flavours/glitch/features/emoji/emoji_mart_data_light.js => app/javascript/flavours/glitch/features/emoji/emoji_mart_data_light.ts +28 -19
@@ 1,32 1,46 @@
// The output of this module is designed to mimic emoji-mart's
// "data" object, such that we can use it for a light version of emoji-mart's
// emojiIndex.search functionality.
+import type { BaseEmoji } from 'emoji-mart';
+import type { Emoji } from 'emoji-mart/dist-es/utils/data';
+
+import type { Search, ShortCodesToEmojiData } from './emoji_compressed';
import emojiCompressed from './emoji_compressed';
import { unicodeToUnifiedName } from './unicode_to_unified_name';
-const [ shortCodesToEmojiData, skins, categories, short_names ] = emojiCompressed;
+type Emojis = {
+ [key in keyof ShortCodesToEmojiData]: {
+ native: BaseEmoji['native'];
+ search: Search;
+ short_names: Emoji['short_names'];
+ unified: Emoji['unified'];
+ };
+};
+
+const [
+ shortCodesToEmojiData,
+ skins,
+ categories,
+ short_names,
+ _emojisWithoutShortCodes,
+] = emojiCompressed;
-const emojis = {};
+const emojis: Emojis = {};
// decompress
Object.keys(shortCodesToEmojiData).forEach((shortCode) => {
- let [
- filenameData, // eslint-disable-line @typescript-eslint/no-unused-vars
- searchData,
- ] = shortCodesToEmojiData[shortCode];
- let [
- native,
- short_names,
- search,
- unified,
- ] = searchData;
+ const [_filenameData, searchData] = shortCodesToEmojiData[shortCode];
+ const native = searchData[0];
+ let short_names = searchData[1];
+ const search = searchData[2];
+ let unified = searchData[3];
if (!unified) {
// unified name can be derived from unicodeToUnifiedName
unified = unicodeToUnifiedName(native);
}
- short_names = [shortCode].concat(short_names);
+ if (short_names) short_names = [shortCode].concat(short_names);
emojis[shortCode] = {
native,
search,
@@ 35,9 49,4 @@ Object.keys(shortCodesToEmojiData).forEach((shortCode) => {
};
});
-export {
- emojis,
- skins,
- categories,
- short_names,
-};
+export { emojis, skins, categories, short_names };
M app/javascript/flavours/glitch/features/explore/links.jsx => app/javascript/flavours/glitch/features/explore/links.jsx +1 -1
@@ 8,7 8,7 @@ import { connect } from 'react-redux';
import { fetchTrendingLinks } from 'flavours/glitch/actions/trends';
import DismissableBanner from 'flavours/glitch/components/dismissable_banner';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import Story from './components/story';
M app/javascript/flavours/glitch/features/explore/results.jsx => app/javascript/flavours/glitch/features/explore/results.jsx +1 -1
@@ 12,7 12,7 @@ import { connect } from 'react-redux';
import { expandSearch } from 'flavours/glitch/actions/search';
import { ImmutableHashtag as Hashtag } from 'flavours/glitch/components/hashtag';
import { LoadMore } from 'flavours/glitch/components/load_more';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import Account from 'flavours/glitch/containers/account_container';
import Status from 'flavours/glitch/containers/status_container';
M app/javascript/flavours/glitch/features/explore/suggestions.jsx => app/javascript/flavours/glitch/features/explore/suggestions.jsx +1 -1
@@ 7,7 7,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import { fetchSuggestions, dismissSuggestion } from 'flavours/glitch/actions/suggestions';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import AccountCard from 'flavours/glitch/features/directory/components/account_card';
const mapStateToProps = state => ({
M app/javascript/flavours/glitch/features/explore/tags.jsx => app/javascript/flavours/glitch/features/explore/tags.jsx +1 -1
@@ 9,7 9,7 @@ import { connect } from 'react-redux';
import { fetchTrendingHashtags } from 'flavours/glitch/actions/trends';
import DismissableBanner from 'flavours/glitch/components/dismissable_banner';
import { ImmutableHashtag as Hashtag } from 'flavours/glitch/components/hashtag';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
M app/javascript/flavours/glitch/features/favourites/index.jsx => app/javascript/flavours/glitch/features/favourites/index.jsx +1 -1
@@ 11,7 11,7 @@ import { connect } from 'react-redux';
import { fetchFavourites } from 'flavours/glitch/actions/interactions';
import ColumnHeader from 'flavours/glitch/components/column_header';
import { Icon } from 'flavours/glitch/components/icon';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import AccountContainer from 'flavours/glitch/containers/account_container';
import Column from 'flavours/glitch/features/ui/components/column';
M app/javascript/flavours/glitch/features/followers/index.jsx => app/javascript/flavours/glitch/features/followers/index.jsx +1 -1
@@ 14,7 14,7 @@ import {
fetchFollowers,
expandFollowers,
} from 'flavours/glitch/actions/accounts';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import { TimelineHint } from 'flavours/glitch/components/timeline_hint';
import AccountContainer from 'flavours/glitch/containers/account_container';
M app/javascript/flavours/glitch/features/following/index.jsx => app/javascript/flavours/glitch/features/following/index.jsx +1 -1
@@ 14,7 14,7 @@ import {
fetchFollowing,
expandFollowing,
} from 'flavours/glitch/actions/accounts';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import { TimelineHint } from 'flavours/glitch/components/timeline_hint';
import AccountContainer from 'flavours/glitch/containers/account_container';
M app/javascript/flavours/glitch/features/list_timeline/index.jsx => app/javascript/flavours/glitch/features/list_timeline/index.jsx +1 -1
@@ 18,7 18,7 @@ import { expandListTimeline } from 'flavours/glitch/actions/timelines';
import Column from 'flavours/glitch/components/column';
import ColumnHeader from 'flavours/glitch/components/column_header';
import { Icon } from 'flavours/glitch/components/icon';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import { RadioButton } from 'flavours/glitch/components/radio_button';
import BundleColumnError from 'flavours/glitch/features/ui/components/bundle_column_error';
import StatusListContainer from 'flavours/glitch/features/ui/containers/status_list_container';
M app/javascript/flavours/glitch/features/lists/index.jsx => app/javascript/flavours/glitch/features/lists/index.jsx +1 -1
@@ 11,7 11,7 @@ import { createSelector } from 'reselect';
import { fetchLists } from 'flavours/glitch/actions/lists';
import ColumnBackButtonSlim from 'flavours/glitch/components/column_back_button_slim';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import Column from 'flavours/glitch/features/ui/components/column';
import ColumnLink from 'flavours/glitch/features/ui/components/column_link';
M app/javascript/flavours/glitch/features/mutes/index.jsx => app/javascript/flavours/glitch/features/mutes/index.jsx +1 -1
@@ 12,7 12,7 @@ import { debounce } from 'lodash';
import { fetchMutes, expandMutes } from 'flavours/glitch/actions/mutes';
import ColumnBackButtonSlim from 'flavours/glitch/components/column_back_button_slim';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import AccountContainer from 'flavours/glitch/containers/account_container';
import Column from 'flavours/glitch/features/ui/components/column';
M app/javascript/flavours/glitch/features/notifications/components/report.jsx => app/javascript/flavours/glitch/features/notifications/components/report.jsx +2 -0
@@ 8,10 8,12 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
import AvatarOverlay from 'flavours/glitch/components/avatar_overlay';
import { RelativeTimestamp } from 'flavours/glitch/components/relative_timestamp';
+// This needs to be kept in sync with app/models/report.rb
const messages = defineMessages({
openReport: { id: 'report_notification.open', defaultMessage: 'Open report' },
other: { id: 'report_notification.categories.other', defaultMessage: 'Other' },
spam: { id: 'report_notification.categories.spam', defaultMessage: 'Spam' },
+ legal: { id: 'report_notification.categories.legal', defaultMessage: 'Legal' },
violation: { id: 'report_notification.categories.violation', defaultMessage: 'Rule violation' },
});
M app/javascript/flavours/glitch/features/reblogs/index.jsx => app/javascript/flavours/glitch/features/reblogs/index.jsx +1 -1
@@ 11,7 11,7 @@ import { connect } from 'react-redux';
import { fetchReblogs } from 'flavours/glitch/actions/interactions';
import ColumnHeader from 'flavours/glitch/components/column_header';
import { Icon } from 'flavours/glitch/components/icon';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import ScrollableList from 'flavours/glitch/components/scrollable_list';
import AccountContainer from 'flavours/glitch/containers/account_container';
import Column from 'flavours/glitch/features/ui/components/column';
M app/javascript/flavours/glitch/features/report/statuses.jsx => app/javascript/flavours/glitch/features/report/statuses.jsx +1 -1
@@ 8,7 8,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import Button from 'flavours/glitch/components/button';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import StatusCheckBox from 'flavours/glitch/features/report/containers/status_check_box_container';
M app/javascript/flavours/glitch/features/status/index.jsx => app/javascript/flavours/glitch/features/status/index.jsx +1 -1
@@ 46,7 46,7 @@ import {
undoStatusTranslation,
} from 'flavours/glitch/actions/statuses';
import { Icon } from 'flavours/glitch/components/icon';
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
import { textForScreenReader, defaultMediaVisibility } from 'flavours/glitch/components/status';
import ScrollContainer from 'flavours/glitch/containers/scroll_container';
import StatusContainer from 'flavours/glitch/containers/status_container';
M app/javascript/flavours/glitch/features/ui/components/modal_loading.jsx => app/javascript/flavours/glitch/features/ui/components/modal_loading.jsx +1 -1
@@ 1,4 1,4 @@
-import LoadingIndicator from 'flavours/glitch/components/loading_indicator';
+import { LoadingIndicator } from 'flavours/glitch/components/loading_indicator';
// Keep the markup in sync with <BundleModalError />
// (make sure they have the same dimensions)
M app/javascript/flavours/glitch/styles/forms.scss => app/javascript/flavours/glitch/styles/forms.scss +3 -1
@@ 1050,7 1050,9 @@ code {
}
.simple_form .h-captcha {
- text-align: center;
+ display: flex;
+ justify-content: center;
+ margin-bottom: 30px;
}
.permissions-list {
A app/javascript/mastodon/components/circular_progress.tsx => app/javascript/mastodon/components/circular_progress.tsx +27 -0
@@ 0,0 1,27 @@
+interface Props {
+ size: number;
+ strokeWidth: number;
+}
+
+export const CircularProgress: React.FC<Props> = ({ size, strokeWidth }) => {
+ const viewBox = `0 0 ${size} ${size}`;
+ const radius = (size - strokeWidth) / 2;
+
+ return (
+ <svg
+ width={size}
+ height={size}
+ viewBox={viewBox}
+ className='circular-progress'
+ role='progressbar'
+ >
+ <circle
+ fill='none'
+ cx={size / 2}
+ cy={size / 2}
+ r={radius}
+ strokeWidth={`${strokeWidth}px`}
+ />
+ </svg>
+ );
+};
M => +1 -2
@@ 8,8 8,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { supportsPassiveEvents } from 'detect-passive-events';
import Overlay from 'react-overlays/Overlay';
import { CircularProgress } from 'mastodon/components/loading_indicator';
import { CircularProgress } from "./circular_progress";
import { IconButton } from './icon_button';
const listenerOptions = supportsPassiveEvents ? { passive: true, capture: true } : true;
D app/javascript/mastodon/components/load_pending.jsx => app/javascript/mastodon/components/load_pending.jsx +0 -23
@@ 1,23 0,0 @@
-import PropTypes from 'prop-types';
-import { PureComponent } from 'react';
-
-import { FormattedMessage } from 'react-intl';
-
-export default class LoadPending extends PureComponent {
-
- static propTypes = {
- onClick: PropTypes.func,
- count: PropTypes.number,
- };
-
- render() {
- const { count } = this.props;
-
- return (
- <button className='load-more load-gap' onClick={this.props.onClick}>
- <FormattedMessage id='load_pending' defaultMessage='{count, plural, one {# new item} other {# new items}}' values={{ count }} />
- </button>
- );
- }
-
-}
A app/javascript/mastodon/components/load_pending.tsx => app/javascript/mastodon/components/load_pending.tsx +18 -0
@@ 0,0 1,18 @@
+import { FormattedMessage } from 'react-intl';
+
+interface Props {
+ onClick: (event: React.MouseEvent) => void;
+ count: number;
+}
+
+export const LoadPending: React.FC<Props> = ({ onClick, count }) => {
+ return (
+ <button className='load-more load-gap' onClick={onClick}>
+ <FormattedMessage
+ id='load_pending'
+ defaultMessage='{count, plural, one {# new item} other {# new items}}'
+ values={{ count }}
+ />
+ </button>
+ );
+};
D app/javascript/mastodon/components/loading_indicator.jsx => app/javascript/mastodon/components/loading_indicator.jsx +0 -31
@@ 1,31 0,0 @@
-import PropTypes from 'prop-types';
-
-export const CircularProgress = ({ size, strokeWidth }) => {
- const viewBox = `0 0 ${size} ${size}`;
- const radius = (size - strokeWidth) / 2;
-
- return (
- <svg width={size} height={size} viewBox={viewBox} className='circular-progress' role='progressbar'>
- <circle
- fill='none'
- cx={size / 2}
- cy={size / 2}
- r={radius}
- strokeWidth={`${strokeWidth}px`}
- />
- </svg>
- );
-};
-
-CircularProgress.propTypes = {
- size: PropTypes.number.isRequired,
- strokeWidth: PropTypes.number.isRequired,
-};
-
-const LoadingIndicator = () => (
- <div className='loading-indicator'>
- <CircularProgress size={50} strokeWidth={6} />
- </div>
-);
-
-export default LoadingIndicator;
A app/javascript/mastodon/components/loading_indicator.tsx => app/javascript/mastodon/components/loading_indicator.tsx +7 -0
@@ 0,0 1,7 @@
+import { CircularProgress } from './circular_progress';
+
+export const LoadingIndicator: React.FC = () => (
+ <div className='loading-indicator'>
+ <CircularProgress size={50} strokeWidth={6} />
+ </div>
+);
M app/javascript/mastodon/components/scrollable_list.jsx => app/javascript/mastodon/components/scrollable_list.jsx +2 -2
@@ 16,8 16,8 @@ import { attachFullscreenListener, detachFullscreenListener, isFullscreen } from
import IntersectionObserverWrapper from '../features/ui/util/intersection_observer_wrapper';
import { LoadMore } from './load_more';
-import LoadPending from './load_pending';
-import LoadingIndicator from './loading_indicator';
+import { LoadPending } from './load_pending';
+import { LoadingIndicator } from './loading_indicator';
const MOUSE_IDLE_DELAY = 300;
M => +1 -1
@@ 374,7 374,7 @@ class Header extends ImmutablePureComponent {
let badge;
if (account.get('bot')) {
badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Bot' /></div>);
badge = (<div className='account-role bot'><FormattedMessage id='account.badges.bot' defaultMessage='Automated' /></div>);
} else if (account.get('group')) {
badge = (<div className='account-role group'><FormattedMessage id='account.badges.group' defaultMessage='Group' /></div>);
} else {
M app/javascript/mastodon/features/account_gallery/index.jsx => app/javascript/mastodon/features/account_gallery/index.jsx +1 -1
@@ 10,7 10,7 @@ import { lookupAccount, fetchAccount } from 'mastodon/actions/accounts';
import { openModal } from 'mastodon/actions/modal';
import ColumnBackButton from 'mastodon/components/column_back_button';
import { LoadMore } from 'mastodon/components/load_more';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import ScrollContainer from 'mastodon/containers/scroll_container';
import BundleColumnError from 'mastodon/features/ui/components/bundle_column_error';
import { normalizeForLookup } from 'mastodon/reducers/accounts_map';
M app/javascript/mastodon/features/account_timeline/index.jsx => app/javascript/mastodon/features/account_timeline/index.jsx +1 -1
@@ 17,7 17,7 @@ import { lookupAccount, fetchAccount } from '../../actions/accounts';
import { fetchFeaturedTags } from '../../actions/featured_tags';
import { expandAccountFeaturedTimeline, expandAccountTimeline, connectTimeline, disconnectTimeline } from '../../actions/timelines';
import ColumnBackButton from '../../components/column_back_button';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import StatusList from '../../components/status_list';
import Column from '../ui/components/column';
M app/javascript/mastodon/features/blocks/index.jsx => app/javascript/mastodon/features/blocks/index.jsx +1 -1
@@ 10,7 10,7 @@ import { debounce } from 'lodash';
import { fetchBlocks, expandBlocks } from '../../actions/blocks';
import ColumnBackButtonSlim from '../../components/column_back_button_slim';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import AccountContainer from '../../containers/account_container';
import Column from '../ui/components/column';
M app/javascript/mastodon/features/compose/components/upload.jsx => app/javascript/mastodon/features/compose/components/upload.jsx +1 -1
@@ 46,7 46,7 @@ export default class Upload extends ImmutablePureComponent {
const y = ((focusY / -2) + .5) * 100;
return (
- <div className='compose-form__upload' tabIndex={0} role='button'>
+ <div className='compose-form__upload'>
<Motion defaultStyle={{ scale: 0.8 }} style={{ scale: spring(1, { stiffness: 180, damping: 12 }) }}>
{({ scale }) => (
<div className='compose-form__upload-thumbnail' style={{ transform: `scale(${scale})`, backgroundImage: `url(${media.get('preview_url')})`, backgroundPosition: `${x}% ${y}%` }}>
M app/javascript/mastodon/features/directory/index.jsx => app/javascript/mastodon/features/directory/index.jsx +1 -1
@@ 14,7 14,7 @@ import { fetchDirectory, expandDirectory } from 'mastodon/actions/directory';
import Column from 'mastodon/components/column';
import ColumnHeader from 'mastodon/components/column_header';
import { LoadMore } from 'mastodon/components/load_more';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import { RadioButton } from 'mastodon/components/radio_button';
import ScrollContainer from 'mastodon/containers/scroll_container';
M app/javascript/mastodon/features/domain_blocks/index.jsx => app/javascript/mastodon/features/domain_blocks/index.jsx +1 -1
@@ 12,7 12,7 @@ import { debounce } from 'lodash';
import { fetchDomainBlocks, expandDomainBlocks } from '../../actions/domain_blocks';
import ColumnBackButtonSlim from '../../components/column_back_button_slim';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import DomainContainer from '../../containers/domain_container';
import Column from '../ui/components/column';
A app/javascript/mastodon/features/emoji/emoji_compressed.d.ts => app/javascript/mastodon/features/emoji/emoji_compressed.d.ts +51 -0
@@ 0,0 1,51 @@
+import type { BaseEmoji, EmojiData, NimbleEmojiIndex } from 'emoji-mart';
+import type { Category, Data, Emoji } from 'emoji-mart/dist-es/utils/data';
+
+/*
+ * The 'search' property, although not defined in the [`Emoji`]{@link node_modules/@types/emoji-mart/dist-es/utils/data.d.ts#Emoji} type,
+ * is used in the application.
+ * This could be due to an oversight by the library maintainer.
+ * The `search` property is defined and used [here]{@link node_modules/emoji-mart/dist/utils/data.js#uncompress}.
+ */
+export type Search = string;
+/*
+ * The 'skins' property does not exist in the application data.
+ * This could be a potential area of refactoring or error handling.
+ * The non-existence of 'skins' property is evident at [this location]{@link app/javascript/mastodon/features/emoji/emoji_compressed.js:121}.
+ */
+export type Skins = null;
+
+export type FilenameData = string[] | string[][];
+export type ShortCodesToEmojiDataKey =
+ | EmojiData['id']
+ | BaseEmoji['native']
+ | keyof NimbleEmojiIndex['emojis'];
+
+export type SearchData = [
+ BaseEmoji['native'],
+ Emoji['short_names'],
+ Search,
+ Emoji['unified']
+];
+
+export interface ShortCodesToEmojiData {
+ [key: ShortCodesToEmojiDataKey]: [FilenameData, SearchData];
+}
+export type EmojisWithoutShortCodes = FilenameData[];
+
+export type EmojiCompressed = [
+ ShortCodesToEmojiData,
+ Skins,
+ Category[],
+ Data['aliases'],
+ EmojisWithoutShortCodes
+];
+
+/*
+ * `emoji_compressed.js` uses `babel-plugin-preval`, which makes it difficult to convert to TypeScript.
+ * As a temporary solution, we are allowing a default export here to apply the TypeScript type `EmojiCompressed` to the JS file export.
+ * - {@link app/javascript/mastodon/features/emoji/emoji_compressed.js}
+ */
+declare const emojiCompressed: EmojiCompressed;
+
+export default emojiCompressed; // eslint-disable-line import/no-default-export
M app/javascript/mastodon/features/emoji/emoji_compressed.js => app/javascript/mastodon/features/emoji/emoji_compressed.js +10 -0
@@ 118,6 118,16 @@ Object.keys(emojiIndex.emojis).forEach(key => {
// inconsistent behavior in dev mode
module.exports = JSON.parse(JSON.stringify([
shortCodesToEmojiData,
+ /*
+ * The property `skins` is not found in the current context.
+ * This could potentially lead to issues when interacting with modules or data structures
+ * that expect the presence of `skins` property.
+ * Currently, no definitions or references to `skins` property can be found in:
+ * - {@link node_modules/emoji-mart/dist/utils/data.js}
+ * - {@link node_modules/emoji-mart/data/all.json}
+ * - {@link app/javascript/mastodon/features/emoji/emoji_compressed.d.ts#Skins}
+ * Future refactorings or updates should consider adding definitions or handling for `skins` property.
+ */
emojiMartData.skins,
emojiMartData.categories,
emojiMartData.aliases,
R app/javascript/mastodon/features/emoji/emoji_mart_data_light.js => app/javascript/mastodon/features/emoji/emoji_mart_data_light.ts +28 -19
@@ 1,32 1,46 @@
// The output of this module is designed to mimic emoji-mart's
// "data" object, such that we can use it for a light version of emoji-mart's
// emojiIndex.search functionality.
+import type { BaseEmoji } from 'emoji-mart';
+import type { Emoji } from 'emoji-mart/dist-es/utils/data';
+
+import type { Search, ShortCodesToEmojiData } from './emoji_compressed';
import emojiCompressed from './emoji_compressed';
import { unicodeToUnifiedName } from './unicode_to_unified_name';
-const [ shortCodesToEmojiData, skins, categories, short_names ] = emojiCompressed;
+type Emojis = {
+ [key in keyof ShortCodesToEmojiData]: {
+ native: BaseEmoji['native'];
+ search: Search;
+ short_names: Emoji['short_names'];
+ unified: Emoji['unified'];
+ };
+};
+
+const [
+ shortCodesToEmojiData,
+ skins,
+ categories,
+ short_names,
+ _emojisWithoutShortCodes,
+] = emojiCompressed;
-const emojis = {};
+const emojis: Emojis = {};
// decompress
Object.keys(shortCodesToEmojiData).forEach((shortCode) => {
- let [
- filenameData, // eslint-disable-line @typescript-eslint/no-unused-vars
- searchData,
- ] = shortCodesToEmojiData[shortCode];
- let [
- native,
- short_names,
- search,
- unified,
- ] = searchData;
+ const [_filenameData, searchData] = shortCodesToEmojiData[shortCode];
+ const native = searchData[0];
+ let short_names = searchData[1];
+ const search = searchData[2];
+ let unified = searchData[3];
if (!unified) {
// unified name can be derived from unicodeToUnifiedName
unified = unicodeToUnifiedName(native);
}
- short_names = [shortCode].concat(short_names);
+ if (short_names) short_names = [shortCode].concat(short_names);
emojis[shortCode] = {
native,
search,
@@ 35,9 49,4 @@ Object.keys(shortCodesToEmojiData).forEach((shortCode) => {
};
});
-export {
- emojis,
- skins,
- categories,
- short_names,
-};
+export { emojis, skins, categories, short_names };
M app/javascript/mastodon/features/explore/links.jsx => app/javascript/mastodon/features/explore/links.jsx +1 -1
@@ 8,7 8,7 @@ import { connect } from 'react-redux';
import { fetchTrendingLinks } from 'mastodon/actions/trends';
import DismissableBanner from 'mastodon/components/dismissable_banner';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import Story from './components/story';
M app/javascript/mastodon/features/explore/results.jsx => app/javascript/mastodon/features/explore/results.jsx +1 -1
@@ 12,7 12,7 @@ import { connect } from 'react-redux';
import { expandSearch } from 'mastodon/actions/search';
import { ImmutableHashtag as Hashtag } from 'mastodon/components/hashtag';
import { LoadMore } from 'mastodon/components/load_more';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import Account from 'mastodon/containers/account_container';
import Status from 'mastodon/containers/status_container';
M app/javascript/mastodon/features/explore/suggestions.jsx => app/javascript/mastodon/features/explore/suggestions.jsx +1 -1
@@ 7,7 7,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import { fetchSuggestions } from 'mastodon/actions/suggestions';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import AccountCard from 'mastodon/features/directory/components/account_card';
const mapStateToProps = state => ({
M app/javascript/mastodon/features/explore/tags.jsx => app/javascript/mastodon/features/explore/tags.jsx +1 -1
@@ 9,7 9,7 @@ import { connect } from 'react-redux';
import { fetchTrendingHashtags } from 'mastodon/actions/trends';
import DismissableBanner from 'mastodon/components/dismissable_banner';
import { ImmutableHashtag as Hashtag } from 'mastodon/components/hashtag';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
const mapStateToProps = state => ({
hashtags: state.getIn(['trends', 'tags', 'items']),
M app/javascript/mastodon/features/favourites/index.jsx => app/javascript/mastodon/features/favourites/index.jsx +1 -1
@@ 11,7 11,7 @@ import { connect } from 'react-redux';
import { fetchFavourites } from 'mastodon/actions/interactions';
import ColumnHeader from 'mastodon/components/column_header';
import { Icon } from 'mastodon/components/icon';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import ScrollableList from 'mastodon/components/scrollable_list';
import AccountContainer from 'mastodon/containers/account_container';
import Column from 'mastodon/features/ui/components/column';
M app/javascript/mastodon/features/followers/index.jsx => app/javascript/mastodon/features/followers/index.jsx +1 -1
@@ 20,7 20,7 @@ import {
expandFollowers,
} from '../../actions/accounts';
import ColumnBackButton from '../../components/column_back_button';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import AccountContainer from '../../containers/account_container';
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
M app/javascript/mastodon/features/following/index.jsx => app/javascript/mastodon/features/following/index.jsx +1 -1
@@ 20,7 20,7 @@ import {
expandFollowing,
} from '../../actions/accounts';
import ColumnBackButton from '../../components/column_back_button';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import AccountContainer from '../../containers/account_container';
import LimitedAccountHint from '../account_timeline/components/limited_account_hint';
M app/javascript/mastodon/features/list_timeline/index.jsx => app/javascript/mastodon/features/list_timeline/index.jsx +1 -1
@@ 18,7 18,7 @@ import { expandListTimeline } from 'mastodon/actions/timelines';
import Column from 'mastodon/components/column';
import ColumnHeader from 'mastodon/components/column_header';
import { Icon } from 'mastodon/components/icon';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import { RadioButton } from 'mastodon/components/radio_button';
import BundleColumnError from 'mastodon/features/ui/components/bundle_column_error';
import StatusListContainer from 'mastodon/features/ui/containers/status_list_container';
M app/javascript/mastodon/features/lists/index.jsx => app/javascript/mastodon/features/lists/index.jsx +1 -1
@@ 12,7 12,7 @@ import { createSelector } from 'reselect';
import { fetchLists } from 'mastodon/actions/lists';
import Column from 'mastodon/components/column';
import ColumnHeader from 'mastodon/components/column_header';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import ScrollableList from 'mastodon/components/scrollable_list';
import ColumnLink from 'mastodon/features/ui/components/column_link';
import ColumnSubheading from 'mastodon/features/ui/components/column_subheading';
M app/javascript/mastodon/features/mutes/index.jsx => app/javascript/mastodon/features/mutes/index.jsx +1 -1
@@ 12,7 12,7 @@ import { debounce } from 'lodash';
import { fetchMutes, expandMutes } from '../../actions/mutes';
import ColumnBackButtonSlim from '../../components/column_back_button_slim';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import AccountContainer from '../../containers/account_container';
import Column from '../ui/components/column';
M app/javascript/mastodon/features/notifications/components/report.jsx => app/javascript/mastodon/features/notifications/components/report.jsx +2 -0
@@ 8,10 8,12 @@ import ImmutablePureComponent from 'react-immutable-pure-component';
import { AvatarOverlay } from 'mastodon/components/avatar_overlay';
import { RelativeTimestamp } from 'mastodon/components/relative_timestamp';
+// This needs to be kept in sync with app/models/report.rb
const messages = defineMessages({
openReport: { id: 'report_notification.open', defaultMessage: 'Open report' },
other: { id: 'report_notification.categories.other', defaultMessage: 'Other' },
spam: { id: 'report_notification.categories.spam', defaultMessage: 'Spam' },
+ legal: { id: 'report_notification.categories.legal', defaultMessage: 'Legal' },
violation: { id: 'report_notification.categories.violation', defaultMessage: 'Rule violation' },
});
M app/javascript/mastodon/features/reblogs/index.jsx => app/javascript/mastodon/features/reblogs/index.jsx +1 -1
@@ 12,7 12,7 @@ import { Icon } from 'mastodon/components/icon';
import { fetchReblogs } from '../../actions/interactions';
import ColumnHeader from '../../components/column_header';
-import LoadingIndicator from '../../components/loading_indicator';
+import { LoadingIndicator } from '../../components/loading_indicator';
import ScrollableList from '../../components/scrollable_list';
import AccountContainer from '../../containers/account_container';
import Column from '../ui/components/column';
M app/javascript/mastodon/features/report/statuses.jsx => app/javascript/mastodon/features/report/statuses.jsx +1 -1
@@ 8,7 8,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes';
import { connect } from 'react-redux';
import Button from 'mastodon/components/button';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import StatusCheckBox from 'mastodon/features/report/containers/status_check_box_container';
const mapStateToProps = (state, { accountId }) => ({
M app/javascript/mastodon/features/status/index.jsx => app/javascript/mastodon/features/status/index.jsx +1 -1
@@ 14,7 14,7 @@ import { createSelector } from 'reselect';
import { HotKeys } from 'react-hotkeys';
import { Icon } from 'mastodon/components/icon';
-import LoadingIndicator from 'mastodon/components/loading_indicator';
+import { LoadingIndicator } from 'mastodon/components/loading_indicator';
import ScrollContainer from 'mastodon/containers/scroll_container';
import BundleColumnError from 'mastodon/features/ui/components/bundle_column_error';
M app/javascript/mastodon/features/ui/components/modal_loading.jsx => app/javascript/mastodon/features/ui/components/modal_loading.jsx +1 -1
@@ 1,4 1,4 @@
-import LoadingIndicator from '../../../components/loading_indicator';
+import { LoadingIndicator } from '../../../components/loading_indicator';
// Keep the markup in sync with <BundleModalError />
// (make sure they have the same dimensions)
M app/javascript/mastodon/features/ui/index.jsx => app/javascript/mastodon/features/ui/index.jsx +0 -5
@@ 393,11 393,6 @@ class UI extends PureComponent {
navigator.serviceWorker.addEventListener('message', this.handleServiceWorkerPostMessage);
}
- // On first launch, redirect to the follow recommendations page
- if (signedIn && this.props.firstLaunch) {
- this.context.router.history.replace('/start');
- }
-
if (signedIn) {
this.props.dispatch(fetchMarkers());
this.props.dispatch(expandHomeTimeline());
M app/javascript/mastodon/locales/en.json => app/javascript/mastodon/locales/en.json +2 -1
@@ 13,7 13,7 @@
"about.rules": "Server rules",
"account.account_note_header": "Note",
"account.add_or_remove_from_list": "Add or Remove from lists",
- "account.badges.bot": "Bot",
+ "account.badges.bot": "Automated",
"account.badges.group": "Group",
"account.block": "Block @{name}",
"account.block_domain": "Block domain {domain}",
@@ 553,6 553,7 @@
"report.unfollow": "Unfollow @{name}",
"report.unfollow_explanation": "You are following this account. To not see their posts in your home feed anymore, unfollow them.",
"report_notification.attached_statuses": "{count, plural, one {{count} post} other {{count} posts}} attached",
+ "report_notification.categories.legal": "Legal",
"report_notification.categories.other": "Other",
"report_notification.categories.spam": "Spam",
"report_notification.categories.violation": "Rule violation",
M app/javascript/styles/mastodon/forms.scss => app/javascript/styles/mastodon/forms.scss +3 -1
@@ 1048,7 1048,9 @@ code {
}
.simple_form .h-captcha {
- text-align: center;
+ display: flex;
+ justify-content: center;
+ margin-bottom: 30px;
}
.permissions-list {
M app/mailers/notification_mailer.rb => app/mailers/notification_mailer.rb +20 -10
@@ 8,61 8,71 @@ class NotificationMailer < ApplicationMailer
def mention(recipient, notification)
@me = recipient
+ @user = recipient.user
+ @type = 'mention'
@status = notification.target_status
- return unless @me.user.functional? && @status.present?
+ return unless @user.functional? && @status.present?
locale_for_account(@me) do
thread_by_conversation(@status.conversation)
- mail to: email_address_with_name(@me.user.email, @me.user.account.username), subject: I18n.t('notification_mailer.mention.subject', name: @status.account.acct)
+ mail to: email_address_with_name(@user.email, @me.username), subject: I18n.t('notification_mailer.mention.subject', name: @status.account.acct)
end
end
def follow(recipient, notification)
@me = recipient
+ @user = recipient.user
+ @type = 'follow'
@account = notification.from_account
- return unless @me.user.functional?
+ return unless @user.functional?
locale_for_account(@me) do
- mail to: email_address_with_name(@me.user.email, @me.user.account.username), subject: I18n.t('notification_mailer.follow.subject', name: @account.acct)
+ mail to: email_address_with_name(@user.email, @me.username), subject: I18n.t('notification_mailer.follow.subject', name: @account.acct)
end
end
def favourite(recipient, notification)
@me = recipient
+ @user = recipient.user
+ @type = 'favourite'
@account = notification.from_account
@status = notification.target_status
- return unless @me.user.functional? && @status.present?
+ return unless @user.functional? && @status.present?
locale_for_account(@me) do
thread_by_conversation(@status.conversation)
- mail to: email_address_with_name(@me.user.email, @me.user.account.username), subject: I18n.t('notification_mailer.favourite.subject', name: @account.acct)
+ mail to: email_address_with_name(@user.email, @me.username), subject: I18n.t('notification_mailer.favourite.subject', name: @account.acct)
end
end
def reblog(recipient, notification)
@me = recipient
+ @user = recipient.user
+ @type = 'reblog'
@account = notification.from_account
@status = notification.target_status
- return unless @me.user.functional? && @status.present?
+ return unless @user.functional? && @status.present?
locale_for_account(@me) do
thread_by_conversation(@status.conversation)
- mail to: email_address_with_name(@me.user.email, @me.user.account.username), subject: I18n.t('notification_mailer.reblog.subject', name: @account.acct)
+ mail to: email_address_with_name(@user.email, @me.username), subject: I18n.t('notification_mailer.reblog.subject', name: @account.acct)
end
end
def follow_request(recipient, notification)
@me = recipient
+ @user = recipient.user
+ @type = 'follow_request'
@account = notification.from_account
- return unless @me.user.functional?
+ return unless @user.functional?
locale_for_account(@me) do
- mail to: email_address_with_name(@me.user.email, @me.user.account.username), subject: I18n.t('notification_mailer.follow_request.subject', name: @account.acct)
+ mail to: email_address_with_name(@user.email, @me.username), subject: I18n.t('notification_mailer.follow_request.subject', name: @account.acct)
end
end
M app/models/account_conversation.rb => app/models/account_conversation.rb +9 -10
@@ 43,22 43,21 @@ class AccountConversation < ApplicationRecord
end
class << self
- def to_a_paginated_by_id(limit, min_id: nil, max_id: nil, since_id: nil, preload_participants: true)
+ def to_a_paginated_by_id(limit, options = {})
array = begin
- if min_id
- paginate_by_min_id(limit, min_id, max_id).reverse
+ if options[:min_id]
+ paginate_by_min_id(limit, options[:min_id], options[:max_id]).reverse
else
- paginate_by_max_id(limit, max_id, since_id).to_a
+ paginate_by_max_id(limit, options[:max_id], options[:since_id]).to_a
end
end
- if preload_participants
- participant_ids = array.flat_map(&:participant_account_ids)
- accounts_by_id = Account.where(id: participant_ids).index_by(&:id)
+ # Preload participants
+ participant_ids = array.flat_map(&:participant_account_ids)
+ accounts_by_id = Account.where(id: participant_ids).index_by(&:id)
- array.each do |conversation|
- conversation.participant_accounts = conversation.participant_account_ids.filter_map { |id| accounts_by_id[id] }
- end
+ array.each do |conversation|
+ conversation.participant_accounts = conversation.participant_account_ids.filter_map { |id| accounts_by_id[id] }
end
array
M app/models/admin/account_action.rb => app/models/admin/account_action.rb +5 -0
@@ 26,6 26,7 @@ class Admin::AccountAction
alias include_statuses? include_statuses
validates :type, :target_account, :current_account, presence: true
+ validates :type, inclusion: { in: TYPES }
def initialize(attributes = {})
@send_email_notification = true
@@ 71,6 72,10 @@ class Admin::AccountAction
TYPES - %w(none disable)
end
end
+
+ def i18n_scope
+ :activerecord
+ end
end
private
M app/models/report.rb => app/models/report.rb +1 -0
@@ 48,6 48,7 @@ class Report < ApplicationRecord
validate :validate_rule_ids
+ # entries here needs to be kept in sync with app/javascript/mastodon/features/notifications/components/report.jsx
enum category: {
other: 0,
spam: 1_000,
M app/views/auth/confirmations/captcha.html.haml => app/views/auth/confirmations/captcha.html.haml +5 -3
@@ 7,10 7,12 @@
= hidden_field_tag :confirmation_token, params[:confirmation_token]
= hidden_field_tag :redirect_to_app, params[:redirect_to_app]
+ %h1.title= t('auth.captcha_confirmation.title')
%p.lead= t('auth.captcha_confirmation.hint_html')
- .field-group
- = render_captcha
+ = render_captcha
+
+ %p.lead= t('auth.captcha_confirmation.help_html', email: mail_to(Setting.site_contact_email, nil))
.actions
- %button.button= t('challenge.confirm')
+ = button_tag t('challenge.confirm'), class: 'button', type: :submit
M app/views/layouts/mailer.html.haml => app/views/layouts/mailer.html.haml +5 -1
@@ 44,7 44,11 @@
%tbody
%td.column-cell
%p= t 'about.hosted_on', domain: site_hostname
- %p= link_to t('application_mailer.notification_preferences'), settings_preferences_notifications_url
+ %p
+ = link_to t('application_mailer.notification_preferences'), settings_preferences_notifications_url
+ - if defined?(@type)
+ ·
+ = link_to t('application_mailer.unsubscribe'), unsubscribe_url(token: @user.to_sgid(for: 'unsubscribe').to_s, type: @type)
%td.column-cell.text-right
= link_to root_url do
= image_tag full_pack_url('media/images/mailer/logo.png'), alt: 'Mastodon', height: 24
A app/views/mail_subscriptions/create.html.haml => app/views/mail_subscriptions/create.html.haml +9 -0
@@ 0,0 1,9 @@
+- content_for :page_title do
+ = t('mail_subscriptions.unsubscribe.title')
+
+.simple_form
+ %h1.title= t('mail_subscriptions.unsubscribe.complete')
+ %p.lead
+ = t('mail_subscriptions.unsubscribe.success_html', domain: content_tag(:strong, site_hostname), type: content_tag(:strong, I18n.t(@type, scope: 'mail_subscriptions.unsubscribe.emails')), email: content_tag(:strong, @user.email))
+ %p.lead
+ = t('mail_subscriptions.unsubscribe.resubscribe_html', settings_path: settings_preferences_notifications_path)
A app/views/mail_subscriptions/show.html.haml => app/views/mail_subscriptions/show.html.haml +12 -0
@@ 0,0 1,12 @@
+- content_for :page_title do
+ = t('mail_subscriptions.unsubscribe.title')
+
+.simple_form
+ %h1.title= t('mail_subscriptions.unsubscribe.title')
+ %p.lead
+ = t('mail_subscriptions.unsubscribe.confirmation_html', domain: content_tag(:strong, site_hostname), type: content_tag(:strong, I18n.t(@type, scope: 'mail_subscriptions.unsubscribe.emails')), email: content_tag(:strong, @user.email), settings_path: settings_preferences_notifications_path)
+
+ = form_tag unsubscribe_path, method: :post do
+ = hidden_field_tag :token, params[:token]
+ = hidden_field_tag :type, params[:type]
+ = button_tag t('mail_subscriptions.unsubscribe.action'), type: :submit
M app/views/settings/featured_tags/index.html.haml => app/views/settings/featured_tags/index.html.haml +5 -3
@@ 1,13 1,15 @@
- content_for :page_title do
= t('settings.featured_tags')
-%p= t('featured_tags.hint_html')
-
-%hr.spacer/
+- content_for :heading do
+ %h2= t('settings.profile')
+ = render partial: 'settings/shared/profile_navigation'
= simple_form_for @featured_tag, url: settings_featured_tags_path do |f|
= render 'shared/error_messages', object: @featured_tag
+ %p.lead= t('featured_tags.hint_html')
+
.fields-group
= f.input :name, wrapper: :with_block_label, hint: safe_join([t('simple_form.hints.featured_tag.name'), safe_join(@recently_used_tags.map { |tag| link_to("##{tag.display_name}", settings_featured_tags_path(featured_tag: { name: tag.name }), method: :post) }, ', ')], ' ')
M app/views/settings/profiles/show.html.haml => app/views/settings/profiles/show.html.haml +47 -47
@@ 1,76 1,76 @@
- content_for :page_title do
= t('settings.edit_profile')
-- content_for :heading_actions do
- = button_tag t('generic.save_changes'), class: 'button', form: 'edit_profile'
+- content_for :heading do
+ %h2= t('settings.profile')
+ = render partial: 'settings/shared/profile_navigation'
= simple_form_for @account, url: settings_profile_path, html: { method: :put, id: 'edit_profile' } do |f|
= render 'shared/error_messages', object: @account
- .fields-row
- .fields-row__column.fields-group.fields-row__column-6
- = f.input :display_name, wrapper: :with_label, input_html: { maxlength: Account::MAX_DISPLAY_NAME_LENGTH, data: { default: @account.username } }, hint: false
- = f.input :note, wrapper: :with_label, input_html: { maxlength: Account::MAX_NOTE_LENGTH }, hint: false
+ %p.lead= t('edit_profile.hint_html')
+
+ %h4= t('edit_profile.basic_information')
.fields-row
.fields-row__column.fields-row__column-6
- = render 'application/card', account: @account
-
- .fields-row__column.fields-group.fields-row__column-6
- = f.input :header, wrapper: :with_label, input_html: { accept: AccountHeader::IMAGE_MIME_TYPES.join(',') }, hint: picture_hint(t('simple_form.hints.defaults.header', dimensions: '1500x500', size: number_to_human_size(AccountHeader::LIMIT)), @account.header)
-
- = f.input :avatar, wrapper: :with_label, input_html: { accept: AccountAvatar::IMAGE_MIME_TYPES.join(',') }, hint: picture_hint(t('simple_form.hints.defaults.avatar', dimensions: '400x400', size: number_to_human_size(AccountAvatar::LIMIT)), @account.avatar)
-
- %hr.spacer/
-
- .fields-group
- = f.input :locked, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.locked')
+ .fields-group
+ = f.input :display_name, wrapper: :with_block_label, input_html: { maxlength: Account::MAX_DISPLAY_NAME_LENGTH, data: { default: @account.username } }
- .fields-group
- = f.input :bot, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.bot')
-
- .fields-group
- = f.input :discoverable, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.discoverable'), recommended: true
+ .fields-group
+ = f.input :note, wrapper: :with_block_label, input_html: { maxlength: Account::MAX_NOTE_LENGTH }
- .fields-group
- = f.input :hide_collections, as: :boolean, wrapper: :with_label, label: t('simple_form.labels.defaults.setting_hide_network'), hint: t('simple_form.hints.defaults.setting_hide_network')
-
- %hr.spacer/
-
- .fields-row
.fields-row__column.fields-group.fields-row__column-6
.input.with_block_label
%label= t('simple_form.labels.defaults.fields')
- %span.hint= t('simple_form.hints.defaults.fields', count: Account::DEFAULT_FIELDS_SIZE)
+ %span.hint= t('simple_form.hints.account.fields')
= f.simple_fields_for :fields do |fields_f|
.row
= fields_f.input :name, placeholder: t('simple_form.labels.account.fields.name'), input_html: { maxlength: 255 }
= fields_f.input :value, placeholder: t('simple_form.labels.account.fields.value'), input_html: { maxlength: 255 }
- .fields-row__column.fields-group.fields-row__column-6
- %h6= t('verification.verification')
- %p.hint= t('verification.explanation_html')
+ .fields-row
+ .fields-row__column.fields-row__column-6
+ .fields-group
+ = f.input :avatar, wrapper: :with_block_label, input_html: { accept: AccountAvatar::IMAGE_MIME_TYPES.join(',') }, hint: t('simple_form.hints.defaults.avatar', dimensions: '400x400', size: number_to_human_size(AccountAvatar::LIMIT))
- .input-copy
- .input-copy__wrapper
- %input{ type: :text, maxlength: '999', spellcheck: 'false', readonly: 'true', value: link_to('Mastodon', ActivityPub::TagManager.instance.url_for(@account), rel: 'me').to_str }
- %button{ type: :button }= t('generic.copy')
+ - if @account.avatar.present?
+ .fields-row__column.fields-row__column-6
+ .fields-group
+ = image_tag @account.avatar.url, class: 'fields-group__thumbnail', width: 90, height: 90
+ = link_to settings_profile_picture_path('avatar'), data: { method: :delete }, class: 'link-button link-button--destructive' do
+ = fa_icon 'trash fw'
+ = t('generic.delete')
- .actions
- = f.button :button, t('generic.save_changes'), type: :submit
+ .fields-row
+ .fields-row__column.fields-row__column-6
+ .fields-group
+ = f.input :header, wrapper: :with_block_label, input_html: { accept: AccountHeader::IMAGE_MIME_TYPES.join(',') }, hint: t('simple_form.hints.defaults.header', dimensions: '1500x500', size: number_to_human_size(AccountHeader::LIMIT))
-%hr/
+ - if @account.header.present?
+ .fields-row__column.fields-row__column-6
+ .fields-group
+ = image_tag @account.header.url, class: 'fields-group__thumbnail'
+ = link_to settings_profile_picture_path('header'), data: { method: :delete }, class: 'link-button link-button--destructive' do
+ = fa_icon 'trash fw'
+ = t('generic.delete')
-%h6= t('auth.migrate_account')
-%p.muted-hint= t('auth.migrate_account_html', path: settings_migration_path)
+ %h4= t('edit_profile.safety_and_privacy')
-%hr.spacer/
+ .fields-group
+ = f.input :discoverable, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.discoverable'), recommended: true
-%h6= t 'migrations.incoming_migrations'
-%p.muted-hint= t('migrations.incoming_migrations_html', path: settings_aliases_path)
+ .fields-group
+ = f.input :locked, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.locked')
-%hr.spacer/
+ .fields-group
+ = f.input :hide_collections, as: :boolean, wrapper: :with_label, label: t('simple_form.labels.defaults.setting_hide_network'), hint: t('simple_form.hints.defaults.setting_hide_network')
-%h6= t('auth.delete_account')
-%p.muted-hint= t('auth.delete_account_html', path: settings_delete_path)
+ %h4= t('edit_profile.other')
+
+ .fields-group
+ = f.input :bot, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.bot')
+
+ .actions
+ = f.button :button, t('generic.save_changes'), type: :submit
D app/views/settings/shared/_links.html.haml => app/views/settings/shared/_links.html.haml +0 -10
@@ 1,10 0,0 @@
-%ul.no-list
- - if controller_name != 'profiles'
- %li= link_to t('settings.edit_profile'), settings_profile_path
- - if controller_name != 'preferences'
- %li= link_to t('settings.preferences'), settings_preferences_path
- - if controller_name != 'registrations'
- %li= link_to t('auth.change_password'), edit_user_registration_path
- - if controller_name != 'two_factor_authentications'
- %li= link_to t('settings.two_factor_authentication'), settings_two_factor_authentication_path
- %li= link_to t('settings.back'), root_path
A app/views/settings/shared/_profile_navigation.html.haml => app/views/settings/shared/_profile_navigation.html.haml +6 -0
@@ 0,0 1,6 @@
+.content__heading__tabs
+ = render_navigation renderer: :links do |primary|
+ :ruby
+ primary.item :profile, safe_join([fa_icon('user fw'), t('settings.edit_profile')]), settings_profile_path
+ primary.item :verification, safe_join([fa_icon('check fw'), t('verification.verification')]), settings_verification_path
+ primary.item :featured_tags, safe_join([fa_icon('hashtag fw'), t('settings.featured_tags')]), settings_featured_tags_path
A app/views/settings/verifications/show.html.haml => app/views/settings/verifications/show.html.haml +30 -0
@@ 0,0 1,30 @@
+- content_for :page_title do
+ = t('verification.verification')
+
+- content_for :heading do
+ %h2= t('settings.profile')
+ = render partial: 'settings/shared/profile_navigation'
+
+.simple_form
+ %p.lead= t('verification.hint_html')
+
+ %h4= t('verification.here_is_how')
+
+ %p.lead= t('verification.instructions_html')
+
+ .input-copy.lead
+ .input-copy__wrapper
+ %input{ type: :text, maxlength: '999', spellcheck: 'false', readonly: 'true', value: link_to('Mastodon', ActivityPub::TagManager.instance.url_for(@account), rel: 'me').to_str }
+ %button{ type: :button }= t('generic.copy')
+
+ %p.lead= t('verification.extra_instructions_html')
+
+ - if @verified_links.any?
+ %h4= t('verification.verified_links')
+
+ %ul.lead
+ - @verified_links.each do |field|
+ %li
+ %span.verified-badge
+ = fa_icon 'check', class: 'verified-badge__mark'
+ %span= field.value
M babel.config.js => babel.config.js +3 -2
@@ 12,6 12,9 @@ module.exports = (api) => {
debug: false,
include: [
'transform-numeric-separator',
+ 'transform-optional-chaining',
+ 'transform-nullish-coalescing-operator',
+ 'transform-class-properties',
],
};
@@ 24,8 27,6 @@ module.exports = (api) => {
plugins: [
['formatjs'],
'preval',
- '@babel/plugin-transform-optional-chaining',
- '@babel/plugin-transform-nullish-coalescing-operator',
],
overrides: [
{
M config/i18n-tasks.yml => config/i18n-tasks.yml +1 -0
@@ 74,6 74,7 @@ ignore_unused:
- 'notification_mailer.*'
- 'imports.overwrite_preambles.{following,blocking,muting,domain_blocking,bookmarks}_html'
- 'imports.preambles.{following,blocking,muting,domain_blocking,bookmarks}_html'
+ - 'mail_subscriptions.unsubscribe.emails.*'
ignore_inconsistent_interpolations:
- '*.one'
M config/locales-glitch/simple_form.en.yml => config/locales-glitch/simple_form.en.yml +0 -1
@@ 4,7 4,6 @@ en:
glitch_only: glitch-soc
hints:
defaults:
- fields: You can have up to %{count} items displayed as a table on your profile
setting_default_content_type_html: When writing toots, assume they are written in raw HTML, unless specified otherwise
setting_default_content_type_markdown: When writing toots, assume they are using Markdown for rich text formatting, unless specified otherwise
setting_default_content_type_plain: When writing toots, assume they are plain text with no special formatting, unless specified otherwise (default Mastodon behavior)
M config/locales/an.yml => config/locales/an.yml +0 -1
@@ 940,7 940,6 @@ an:
your_token: Lo tuyo token d'acceso
auth:
apply_for_account: Solicitar una cuenta
- change_password: Clau
delete_account: Borrar cuenta
delete_account_html: Si deseya eliminar la suya cuenta, puede <a href="%{path}">proceder aquí</a>. Será pediu d'una confirmación.
description:
M config/locales/ar.yml => config/locales/ar.yml +0 -1
@@ 990,7 990,6 @@ ar:
your_token: رمز نفاذك
auth:
apply_for_account: اطلُب حسابًا
- change_password: الكلمة السرية
confirmations:
wrong_email_hint: إذا كان عنوان البريد الإلكتروني هذا غير صحيح، يمكنك تغييره في إعدادات الحساب.
delete_account: حذف الحساب
M config/locales/ast.yml => config/locales/ast.yml +0 -1
@@ 449,7 449,6 @@ ast:
warning: Ten munchu curiáu con estos datos, ¡enxamás nun los compartas con naide!
your_token: El pase d'accesu
auth:
- change_password: Contraseña
confirmations:
wrong_email_hint: Si la direición de corréu electrónicu nun ye correuta, pues camudala na configuración de la cuenta.
delete_account: Desaniciu de la cuenta
M config/locales/be.yml => config/locales/be.yml +0 -2
@@ 1015,7 1015,6 @@ be:
your_token: Ваш токен доступу
auth:
apply_for_account: Пакінуць заяўку
- change_password: Пароль
confirmations:
wrong_email_hint: Калі гэты адрас электроннай пошты памылковы, вы можаце змяніць яго ў наладах уліковага запісу.
delete_account: Выдаліць уліковы запіс
@@ 1768,7 1767,6 @@ be:
seamless_external_login: Вы ўвайшлі праз знешні сэрвіс, таму налады пароля і эл. пошты недаступныя.
signed_in_as: 'Увайшлі як:'
verification:
- explanation_html: 'Вы можаце <strong>пацвердзіць сябе як уладальніка спасылак у метададзеных вашага профілю</strong>. Для гэтага спасылка на вэб-сайт павінна ўтрымліваць спасылку на ваш профіль Mastodon. Пасля дадавання спасылка, вам спатрэбіцца вярнуцца і перазахаваць свой профіль, каб усё адбыдося. Зваротная спасылка <strong>павінна</strong> мець атрыбут <code>rel="me"</code>. Тэкставы змест спасылкі не мае значэння. Вось прыклад:'
verification: Верыфікацыя
webauthn_credentials:
add: Дадаць новы ключ бяспекі
M config/locales/bg.yml => config/locales/bg.yml +0 -2
@@ 979,7 979,6 @@ bg:
your_token: Вашият код за достъп
auth:
apply_for_account: Заявка за акаунт
- change_password: Парола
confirmations:
wrong_email_hint: Ако този адрес на е-поща не е правилен, то може да го промените в настройки на акаунта.
delete_account: Изтриване на акаунта
@@ 1704,7 1703,6 @@ bg:
seamless_external_login: Влезли сте чрез външна услуга, така че настройките за парола и имейл не са налични.
signed_in_as: 'Влезли като:'
verification:
- explanation_html: 'Може да <strong>потвърдите себе си като собственик на връзките в метаданните на профила си</strong>. За целта свързаният уебсайт трябва да съдържа обратна връзка към профилa ви в Mastodon. След добавянето на връзката, може да се наложи да се върнете тук и да запазите пак профила си, за да влезе в сила потвърждаването. Връзката обратно <strong>трябва</strong> да има атрибут <code>rel="me"</code>. Текстовото съдържание на връзката няма значение. Ето пример:'
verification: Проверка
webauthn_credentials:
add: Добавяне на нов ключ за сигурност
M config/locales/br.yml => config/locales/br.yml +0 -1
@@ 288,7 288,6 @@ br:
view: 'Sellet :'
view_status: Gwelet ar c'hannad
auth:
- change_password: Ger-tremen
delete_account: Dilemel ar gont
login: Mont tre
logout: Digennaskañ
M config/locales/ca.yml => config/locales/ca.yml +0 -2
@@ 979,7 979,6 @@ ca:
your_token: El teu identificador d'accés
auth:
apply_for_account: Sol·licitar un compte
- change_password: Contrasenya
confirmations:
wrong_email_hint: Si aquesta adreça de correu electrònic no és correcte, pots canviar-la en els ajustos del compte.
delete_account: Elimina el compte
@@ 1704,7 1703,6 @@ ca:
seamless_external_login: Has iniciat sessió via un servei extern per tant els ajustos de contrasenya i correu electrònic no estan disponibles.
signed_in_as: 'Sessió iniciada com a:'
verification:
- explanation_html: 'Pots <strong>verificar-te com a propietari dels enllaços a les metadades del teu perfil</strong>. Per això, el lloc web enllaçat ha de contenir un enllaç al teu perfil de Mastodon. Després d''afegir l''enllaç, podries necessitar tornar aquí a desar el teu perfil per a fer efectiva la verificació. El vincle <strong>ha de</strong> tenir l''atribut <code>rel="me"</code>. El contingut del text de l''enllaç no importa. Aquí tens un exemple:'
verification: Verificació
webauthn_credentials:
add: Afegir nova clau de seguretat
M config/locales/ckb.yml => config/locales/ckb.yml +0 -1
@@ 587,7 587,6 @@ ckb:
warning: زۆر ئاگاداربە لەم داتایە. هەرگیز لەگەڵ کەس دا هاوبەشی مەکە!
your_token: کۆدی دەستپێگەیشتنی ئێوە
auth:
- change_password: تێپەڕوشە
delete_account: سڕینەوەی هەژمارە
delete_account_html: گەر هەرەکتە هەژمارەکەت بسڕیتەوە، لە <a href="%{path}">لەم قوناغانە</a> بڕۆیتە پێشەوە. داوای پەسەند کردنتان لێدەگیرێت.
description:
M config/locales/co.yml => config/locales/co.yml +0 -1
@@ 553,7 553,6 @@ co:
warning: Abbadate à quessi dati. Ùn i date à nisunu!
your_token: Rigenerà a fiscia d’accessu
auth:
- change_password: Chjave d’accessu
delete_account: Sguassà u contu
delete_account_html: S’è voi vulete toglie u vostru contu <a href="%{path}">ghjè quì</a>. Duverete cunfirmà a vostra scelta.
description:
M config/locales/cs.yml => config/locales/cs.yml +0 -2
@@ 1015,7 1015,6 @@ cs:
your_token: Váš přístupový token
auth:
apply_for_account: Požádat o účet
- change_password: Heslo
confirmations:
wrong_email_hint: Pokud není e-mail správný, můžete si ho změnit v nastavení účtu.
delete_account: Odstranit účet
@@ 1768,7 1767,6 @@ cs:
seamless_external_login: Jste přihlášeni přes externí službu, nastavení hesla a e-mailu proto nejsou dostupná.
signed_in_as: 'Přihlášeni jako:'
verification:
- explanation_html: 'Můžete se <strong>ověřit jako vlastník odkazů v metadatech profilu</strong>. Pro tento účel musí stránka v odkazu obsahovat odkaz zpět na váš profil na Mastodonu. Po přidání odkazu budete potřebovat vrátit se sem a znovu uložit profil, aby se ověření provedlo. Odkaz zpět <strong>musí</strong> mít atribut <code>rel="me"</code>. Na textu odkazu nezáleží. Zde je příklad:'
verification: Ověření
webauthn_credentials:
add: Přidat nový bezpečnostní klíč
M config/locales/cy.yml => config/locales/cy.yml +0 -2
@@ 1051,7 1051,6 @@ cy:
your_token: Eich tocyn mynediad
auth:
apply_for_account: Gofyn am gyfrif
- change_password: Cyfrinair
confirmations:
wrong_email_hint: Os nad yw'r cyfeiriad e-bost hwnnw'n gywir, gallwch ei newid yng ngosodiadau'r cyfrif.
delete_account: Dileu cyfrif
@@ 1832,7 1831,6 @@ cy:
seamless_external_login: Yr ydych wedi'ch mewngofnodi drwy wasanaeth allanol, felly nid yw gosodiadau cyfrinair ac e-bost ar gael.
signed_in_as: 'Wedi mewngofnodi fel:'
verification:
- explanation_html: 'Gallwch <strong>wirio eich hun fel perchennog y dolenni ym metadata eich proffil</strong> . Ar gyfer gwneud hynny, rhaid i''r wefan gysylltiedig gynnwys dolen yn ôl i''ch proffil Mastodon. Ar ôl ychwanegu''r ddolen efallai y bydd angen i chi ddod yn ôl yma ac ail-gadw''ch proffil er mwyn i''r dilysiad ddod i rym. <strong>Rhaid</strong> i''r ddolen yn ôl gael priodoledd <code>rêl="me"</code>. Nid yw cynnwys testun y ddolen o bwys. Dyma enghraifft:'
verification: Dilysu
webauthn_credentials:
add: Ychwanegu allwedd ddiogelwch newydd
M config/locales/da.yml => config/locales/da.yml +0 -2
@@ 979,7 979,6 @@ da:
your_token: Dit adgangstoken
auth:
apply_for_account: Anmod om en konto
- change_password: Adgangskode
confirmations:
wrong_email_hint: Er denne e-mailadresse ikke korrekt, kan den ændres i kontoindstillinger.
delete_account: Slet konto
@@ 1704,7 1703,6 @@ da:
seamless_external_login: Du er logget ind via en ekstern tjeneste, så adgangskode- og e-mailindstillinger er utilgængelige.
signed_in_as: 'Logget ind som:'
verification:
- explanation_html: 'Man kan <strong>bekræfte sig selv som ejer af linkene i profilmetadataene</strong>. For at gøre dette, skal det linkede websted indeholde et link tilbage til Mastodon-profilen. Efter tilføjelse af linket, skal man muligvis returnere hertil og gemme sin profil igen, før bekræftelsen effektueres. Returlinket <strong>skal</strong> have en <code>rel="me"</code>-attribut. Linkets tekstindhold er ligegyldigt. Her er et eksempel:'
verification: Bekræftelse
webauthn_credentials:
add: Tilføj ny sikkerhedsnøgle
M config/locales/de.yml => config/locales/de.yml +0 -2
@@ 979,7 979,6 @@ de:
your_token: Dein Zugangs-Token
auth:
apply_for_account: Konto beantragen
- change_password: Passwort
confirmations:
wrong_email_hint: Sollte diese E-Mail-Adresse nicht korrekt sein, kannst du sie in den Kontoeinstellungen ändern.
delete_account: Konto löschen
@@ 1704,7 1703,6 @@ de:
seamless_external_login: Du bist über einen externen Dienst angemeldet, daher sind Passwort- und E-Mail-Einstellungen nicht verfügbar.
signed_in_as: 'Angemeldet als:'
verification:
- explanation_html: "Du kannst <strong>bestätigen, dass die Links in deinen Profil-Metadaten dir gehören</strong>. Dafür muss die verlinkte Website einen Link zurück auf dein Mastodon-Profil enthalten. \nNach dem Hinzufügen des Links musst du möglicherweise hierhin zurückkommen und dein Profil erneut speichern, um dass die Verifikation wirksam wird. Der Link zurück <strong>muss</strong> ein <code>rel=\"me\"</code>-Attribut enthalten. Der Linktext ist dabei egal. Hier ist ein Beispiel:"
verification: Verifizierung
webauthn_credentials:
add: Sicherheitsschlüssel hinzufügen
M config/locales/el.yml => config/locales/el.yml +0 -2
@@ 979,7 979,6 @@ el:
your_token: Το διακριτικό πρόσβασής σου
auth:
apply_for_account: Ζήτα έναν λογαριασμό
- change_password: Συνθηματικό
confirmations:
wrong_email_hint: Εάν αυτή η διεύθυνση email δεν είναι σωστή, μπορείς να την αλλάξεις στις ρυθμίσεις λογαριασμού.
delete_account: Διαγραφή λογαριασμού
@@ 1704,7 1703,6 @@ el:
seamless_external_login: Επειδή έχεις συνδεθεί μέσω τρίτης υπηρεσίας, οι ρυθμίσεις συνθηματικού και email δεν είναι διαθέσιμες.
signed_in_as: 'Έχεις συνδεθεί ως:'
verification:
- explanation_html: 'Μπορείς να <strong>επαληθεύσεις τον εαυτό σου ως ιδιοκτήτη των συνδέσμων που εμφανίζεις στα μεταδεδομένα του προφίλ σου</strong>. Για να συμβεί αυτό, ο συνδεδεμένος ιστότοπος πρέπει να περιέχει ένα σύνδεσμο που να επιστρέφει προς το προφίλ σου στο Mastodon. Ο σύνδεσμος επιστροφής <strong>πρέπει</strong> να περιέχει την ιδιότητα <code>rel="me"</code>. Το περιεχόμενο του κειμένου δεν έχει σημασία. Για παράδειγμα:'
verification: Πιστοποίηση
webauthn_credentials:
add: Προσθήκη νέου κλειδιού ασφαλείας
M config/locales/en-GB.yml => config/locales/en-GB.yml +0 -2
@@ 979,7 979,6 @@ en-GB:
your_token: Your access token
auth:
apply_for_account: Request an account
- change_password: Password
confirmations:
wrong_email_hint: If that e-mail address is not correct, you can change it in account settings.
delete_account: Delete account
@@ 1704,7 1703,6 @@ en-GB:
seamless_external_login: You are logged in via an external service, so password and e-mail settings are not available.
signed_in_as: 'Signed in as:'
verification:
- explanation_html: 'You can <strong>verify yourself as the owner of the links in your profile metadata</strong>. For that, the linked website must contain a link back to your Mastodon profile. After adding the link you may need to come back here and re-save your profile for the verification to take effect. The link back <strong>must</strong> have a <code>rel="me"</code> attribute. The text content of the link does not matter. Here is an example:'
verification: Verification
webauthn_credentials:
add: Add new security key
M config/locales/en.yml => config/locales/en.yml +31 -6
@@ 978,6 978,7 @@ en:
notification_preferences: Change e-mail preferences
salutation: "%{name},"
settings: 'Change e-mail preferences: %{link}'
+ unsubscribe: Unsubscribe
view: 'View:'
view_profile: View profile
view_status: View post
@@ 992,9 993,9 @@ en:
auth:
apply_for_account: Request an account
captcha_confirmation:
- hint_html: Just one more step! To confirm your account, this server requires you to solve a CAPTCHA. You can <a href="/about/more">contact the server administrator</a> if you have questions or need assistance with confirming your account.
- title: User verification
- change_password: Password
+ help_html: If you have issues solving the CAPTCHA, you can get in touch with us through %{email} and we can assist you.
+ hint_html: Just one more thing! We need to confirm you're a human (this is so we can keep the spam out!). Solve the CAPTCHA below and click "Continue".
+ title: Security check
confirmations:
wrong_email_hint: If that e-mail address is not correct, you can change it in account settings.
delete_account: Delete account
@@ 1148,6 1149,11 @@ en:
your_appeal_rejected: Your appeal has been rejected
domain_validator:
invalid_domain: is not a valid domain name
+ edit_profile:
+ basic_information: Basic information
+ hint_html: "<strong>Customize what people see on your public profile and next to your posts.</strong> Other people are more likely to follow you back and interact with you when you have a filled out profile and a profile picture."
+ other: Other
+ safety_and_privacy: Safety and privacy
errors:
'400': The request you submitted was invalid or malformed.
'403': You don't have permission to view this page.
@@ 1185,7 1191,7 @@ en:
add_new: Add new
errors:
limit: You have already featured the maximum number of hashtags
- hint_html: "<strong>What are featured hashtags?</strong> They are displayed prominently on your public profile and allow people to browse your public posts specifically under those hashtags. They are a great tool for keeping track of creative works or long-term projects."
+ hint_html: "<strong>Feature your most important hashtags on your profile.</strong> A great tool for keeping track of your creative works and long-term projects, featured hashtags are displayed prominently on your profile and allow quick access to your own posts."
filters:
contexts:
account: Profiles
@@ 1342,6 1348,21 @@ en:
failed_sign_in_html: Failed sign-in attempt with %{method} from %{ip} (%{browser})
successful_sign_in_html: Successful sign-in with %{method} from %{ip} (%{browser})
title: Authentication history
+ mail_subscriptions:
+ unsubscribe:
+ action: Yes, unsubscribe
+ complete: Unsubscribed
+ confirmation_html: Are you sure you want to unsubscribe from receiving %{type} for Mastodon on %{domain} to your e-mail at %{email}? You can always re-subscribe from your <a href="%{settings_path}">e-mail notification settings</a>.
+ emails:
+ notification_emails:
+ favourite: favorite notification e-mails
+ follow: follow notification e-mails
+ follow_request: follow request e-mails
+ mention: mention notification e-mails
+ reblog: boost notification e-mails
+ resubscribe_html: If you've unsubscribed by mistake, you can re-subscribe from your <a href="%{settings_path}">e-mail notification settings</a>.
+ success_html: You'll no longer receive %{type} for Mastodon on %{domain} to your e-mail at %{email}.
+ title: Unsubscribe
media_attachments:
validations:
images_and_video: Cannot attach a video to a post that already contains images
@@ 1568,7 1589,7 @@ en:
migrate: Account migration
notifications: Notifications
preferences: Preferences
- profile: Profile
+ profile: Public profile
relationships: Follows and followers
statuses_cleanup: Automated post deletion
strikes: Moderation strikes
@@ 1762,8 1783,12 @@ en:
seamless_external_login: You are logged in via an external service, so password and e-mail settings are not available.
signed_in_as: 'Signed in as:'
verification:
- explanation_html: 'You can <strong>verify yourself as the owner of the links in your profile metadata</strong>. For that, the linked website must contain a link back to your Mastodon profile. After adding the link you may need to come back here and re-save your profile for the verification to take effect. The link back <strong>must</strong> have a <code>rel="me"</code> attribute. The text content of the link does not matter. Here is an example:'
+ extra_instructions_html: <strong>Tip:</strong> The link on your website can be invisible. The important part is <code>rel="me"</code> which prevents impersonation on websites with user-generated content. You can even use a <code>link</code> tag in the header of the page instead of <code>a</code>, but the HTML must be accessible without executing JavaScript.
+ here_is_how: Here's how
+ hint_html: "<strong>Verifying your identity on Mastodon is for everyone.</strong> Based on open web standards, now and forever free. All you need is a personal website that people recognize you by. When you link to this website from your profile, we will check that the website links back to your profile and show a visual indicator on it."
+ instructions_html: Copy and paste the code below into the HTML of your website. Then add the address of your website into one of the extra fields on your profile from the "Edit profile" tab and save changes.
verification: Verification
+ verified_links: Your verified links
webauthn_credentials:
add: Add new security key
create:
M config/locales/eo.yml => config/locales/eo.yml +0 -2
@@ 971,7 971,6 @@ eo:
your_token: Via alira ĵetono
auth:
apply_for_account: Peti konton
- change_password: Pasvorto
confirmations:
wrong_email_hint: Se tiu retpoŝtadreso ne estas ĝusta, vi povas ŝanĝi ĝin en la agordoj pri la konto.
delete_account: Forigi konton
@@ 1683,7 1682,6 @@ eo:
seamless_external_login: Vi estas ensalutinta per ekstera servo, do pasvortaj kaj retadresaj agordoj ne estas disponeblaj.
signed_in_as: 'Salutinta kiel:'
verification:
- explanation_html: 'Vi povas <strong>pruvi, ke vi estas la posedanto de la ligiloj en viaj profilaj metadatumoj</strong>. Por fari tion, la alligita retejo devas enhavi ligilon reen al via Mastodon-profilo. La religilo <strong>devas</strong> havi la atributon <code>rel="me"</code>. Ne gravas la teksta enhavo de la religilo. Jen ekzemplo:'
verification: Kontrolo
webauthn_credentials:
add: Aldoni novan sekurecan ŝlosilon
M config/locales/es-AR.yml => config/locales/es-AR.yml +0 -2
@@ 979,7 979,6 @@ es-AR:
your_token: Tu clave de acceso
auth:
apply_for_account: Solicitar una cuenta
- change_password: Contraseña
confirmations:
wrong_email_hint: Si esa dirección de correo electrónico no es correcta, podés cambiarla en la configuración de la cuenta.
delete_account: Eliminar cuenta
@@ 1704,7 1703,6 @@ es-AR:
seamless_external_login: Iniciaste sesión desde un servicio externo, así que la configuración de contraseña y correo electrónico no están disponibles.
signed_in_as: 'Iniciaste sesión como:'
verification:
- explanation_html: 'Podés <strong>verificarte a vos mismo como el propietario de los enlaces en los metadatos de tu perfil</strong>. Para eso, el sitio web del enlace debe contener un enlace de vuelta a tu perfil de Mastodon. Después de agregar el enlace, puede que tengás que volver acá y volver a guardar los cambios en tu perfil para que la verificación surta efecto. El enlace en tu sitio <strong>debe</strong> tener un atributo <code>rel="me"</code>. El contenido del texto del enlace no importa. Acá tenés un ejemplo:'
verification: Verificación
webauthn_credentials:
add: Agregar nueva llave de seguridad
M config/locales/es-MX.yml => config/locales/es-MX.yml +0 -2
@@ 979,7 979,6 @@ es-MX:
your_token: Tu token de acceso
auth:
apply_for_account: Solicitar una cuenta
- change_password: Contraseña
confirmations:
wrong_email_hint: Si esa dirección de correo electrónico no es correcta, puedes cambiarla en la configuración de la cuenta.
delete_account: Borrar cuenta
@@ 1704,7 1703,6 @@ es-MX:
seamless_external_login: Has iniciado sesión desde un servicio externo, así que los ajustes de contraseña y correo no están disponibles.
signed_in_as: 'Sesión iniciada como:'
verification:
- explanation_html: 'Puedes <strong>verificarte a ti mismo como el dueño de los links en los metadatos de tu perfil</strong>. Para eso, el sitio enlazado debe contener un enlace a tu perfil de Mastodon. Después de añadir el enlace, necesitarás regresar aquí y volver a guardar tu perfil para que la verificación tenga efecto. El enlace en tu sitio <strong>debe</strong> tener un atributo <code>rel="me"</code>. El texto del contenido del enlace no importa. Aquí un ejemplo:'
verification: Verificación
webauthn_credentials:
add: Agregar nueva clave de seguridad
M config/locales/es.yml => config/locales/es.yml +0 -2
@@ 979,7 979,6 @@ es:
your_token: Tu token de acceso
auth:
apply_for_account: Solicitar una cuenta
- change_password: Contraseña
confirmations:
wrong_email_hint: Si esa dirección de correo electrónico no es correcta, puedes cambiarla en la configuración de la cuenta.
delete_account: Borrar cuenta
@@ 1704,7 1703,6 @@ es:
seamless_external_login: Has iniciado sesión desde un servicio externo, así que los ajustes de contraseña y correo no están disponibles.
signed_in_as: 'Sesión iniciada como:'
verification:
- explanation_html: 'Puedes <strong>verificarte a ti mismo como propietario de los enlaces en los metadatos de tu perfil</strong>. Para ello, el sitio web vinculado debe contener un enlace a tu perfil de Mastodon. Después de añadir el enlace, es posible que debas volver aquí y volver a guardar tu perfil para que la verificación surta efecto. El enlace de tu sitio <strong>debe</strong> tener un atributo <code>rel="me"</code>. El contenido textual del enlace no tiene relevancia. Aquí un ejemplo:'
verification: Verificación
webauthn_credentials:
add: Agregar nueva clave de seguridad
M config/locales/et.yml => config/locales/et.yml +0 -2
@@ 979,7 979,6 @@ et:
your_token: Su juurdepääsutunnus
auth:
apply_for_account: Konto taotluse esitamine
- change_password: Salasõna
confirmations:
wrong_email_hint: Kui see e-postiaadress pole korrektne, saad seda kontosätetes muuta.
delete_account: Konto kustutamine
@@ 1709,7 1708,6 @@ et:
seamless_external_login: Välise teenuse kaudu sisse logides pole salasõna ja e-posti sätted saadaval.
signed_in_as: 'Sisse logitud kasutajana:'
verification:
- explanation_html: 'Saad <strong>kinnitada ennast oma profiili metaandmete veebiviidete omanikuna.</strong> Selleks peab lingitud veebilehel olema viide tagasi sinu Mastodoni profiilile. Pärast lingi lisamist pead võib-olla siia tagasi tulema ja oma profiili uuesti salvestama, et kinnitus jõustuks. Tagasiviide <strong>peab</strong> sisaldama <code>rel="me"</code> atribuuti. Lingi tekstiline sisu ei ole oluline. Siin on näide:'
verification: Kinnitamine
webauthn_credentials:
add: Uue turvavõtme lisamine
M config/locales/eu.yml => config/locales/eu.yml +0 -2
@@ 981,7 981,6 @@ eu:
your_token: Zure sarbide token-a
auth:
apply_for_account: Kontu bat eskatu
- change_password: Pasahitza
confirmations:
wrong_email_hint: Helbide-elektroniko hori zuzena ez bada, kontuaren ezarpenetan alda dezakezu.
delete_account: Ezabatu kontua
@@ 1706,7 1705,6 @@ eu:
seamless_external_login: Kanpo zerbitzu baten bidez hasi duzu saioa, beraz pasahitza eta e-mail ezarpenak ez daude eskuragarri.
signed_in_as: 'Saioa honela hasita:'
verification:
- explanation_html: '<strong>Zure profileko metadatuetako esteken jabe zarela egiazta</strong> dezakezu. Horretarako, webguneak zure Mastodoneko profilaren esteka eduki behar du. Esteka webgunean erantsi ondoren, aldaketak berriro gorde beharko dituzu egiaztapena burutu ahal izateko. Estekak <code>rel="me"</code> atributua eduki <strong>behar</strong> du. Estekaren testu-edukia ez da aintzat hartzen. Hemen duzu adibide bat:'
verification: Egiaztaketa
webauthn_credentials:
add: Gehitu segurtasun gako berria
M config/locales/fa.yml => config/locales/fa.yml +0 -2
@@ 819,7 819,6 @@ fa:
your_token: کد دسترسی شما
auth:
apply_for_account: درخواست یک حساب
- change_password: گذرواژه
delete_account: پاککردن حساب
delete_account_html: اگر میخواهید حساب خود را پاک کنید، از <a href="%{path}">اینجا</a> پیش بروید. از شما درخواست تأیید خواهد شد.
description:
@@ 1474,7 1473,6 @@ fa:
seamless_external_login: شما با یک سرویس خارج از مجموعه وارد شدهاید، به همین دلیل تنظیمات ایمیل و گذرواژه برای شما در دسترس نیست.
signed_in_as: 'واردشده به نام:'
verification:
- explanation_html: 'میتوانید <strong>خودتان را به عنوان مالک پیوندهای درون فرادادههای نمایهتان تأیید کنید</strong>. برای این کار پایگاه وب پیوند شده باید پیوند بازگشتی به حساب ماستودونتان داشته باشد. شاید لازم باشد پس از افزودن پیوند برای اعمال تآیید به اینجا بازگشته و نمایهتان را دوباره ذخیره کنید. پیوند بازگشتی <strong>باید</strong> مقدار <code>rel="me"</code> را داشته باشد. محتوای متنی پیوند مهم نیست. یک نمونه در اینجا آورده شده:'
verification: تأیید
webauthn_credentials:
add: افزودن کلید امنیتی
M config/locales/fi.yml => config/locales/fi.yml +0 -2
@@ 979,7 979,6 @@ fi:
your_token: Pääsytunnus
auth:
apply_for_account: Pyydä tiliä
- change_password: Salasana
confirmations:
wrong_email_hint: Jos sähköpostiosoite ei ole oikein, voit muuttaa sen tilin asetuksista.
delete_account: Poista tili
@@ 1704,7 1703,6 @@ fi:
seamless_external_login: Olet kirjautunut ulkoisen palvelun kautta, joten salasana- ja sähköpostiasetukset eivät ole käytettävissä.
signed_in_as: 'Kirjautunut tilillä:'
verification:
- explanation_html: 'Voit <strong>vahvistaa olevasi profiilisi metatietojen sisältämien linkkien omistaja</strong>. Tätä varten linkitetyn verkkosivuston täytyy sisältää paluulinkki Mastodon-profiiliisi. Paluulinkillä <strong>täytyy</strong> olla määre <code>rel="me"</code>. Linkin tekstisisällöllä ei ole merkitystä. Tässä esimerkki:'
verification: Vahvistus
webauthn_credentials:
add: Lisää uusi suojausavain
M config/locales/fo.yml => config/locales/fo.yml +0 -2
@@ 979,7 979,6 @@ fo:
your_token: Títt atgongdstekn
auth:
apply_for_account: Bið um eina kontu
- change_password: Loyniorð
confirmations:
wrong_email_hint: Um hesin teldupoststaðurin ikki er rættur, so kanst tú broyta hann í kontustillingunum.
delete_account: Strika kontu
@@ 1704,7 1703,6 @@ fo:
seamless_external_login: Tú er ritað/ur inn umvegis eina uttanhýsis tænastu, so loyniorð og teldupoststillingar eru ikki tøkar.
signed_in_as: 'Ritað/ur inn sum:'
verification:
- explanation_html: 'Tú kanst <strong>vátta teg sjálva/n sum eigara av leinkjunum í metadátunum á vanganum hjá tær</strong>. Til tess má leinkjaða vevstaðið innihalda eitt leinki aftur til Mastodon vangan hjá tær. Eftir at tú hevur lagt leinkið afturat, so er møguliga neyðugt at koma aftur her og goyma vangan hjá tær av nýggjum fyri at fáa góðkenningina at rigga. Leinkið <strong>má</strong> hava eina <code>rel="me"</code> viðseting. Tekstinnihaldið í leikinum er óviðkomandi. Her er eitt dømi:'
verification: Váttan
webauthn_credentials:
add: Legg nýggjan trygdarlykil afturat
M config/locales/fr-QC.yml => config/locales/fr-QC.yml +0 -2
@@ 977,7 977,6 @@ fr-QC:
your_token: Votre jeton d’accès
auth:
apply_for_account: Demander un compte
- change_password: Mot de passe
confirmations:
wrong_email_hint: Si cette adresse de courriel est incorrecte, vous pouvez la modifier dans vos paramètres de compte.
delete_account: Supprimer le compte
@@ 1688,7 1687,6 @@ fr-QC:
seamless_external_login: Vous êtes connecté via un service externe, donc les paramètres concernant le mot de passe et le courriel ne sont pas disponibles.
signed_in_as: 'Connecté·e en tant que :'
verification:
- explanation_html: 'Vous pouvez <strong>vous vérifier en tant que propriétaire des liens dans les métadonnées de votre profil</strong>. Pour cela, le site web lié doit contenir un lien vers votre profil Mastodon. Le lien de retour <strong>doit</strong> avoir un attribut <code>rel="me"</code> . Le texte du lien n’a pas d’importance. Voici un exemple :'
verification: Vérification
webauthn_credentials:
add: Ajouter une nouvelle clé de sécurité
M config/locales/fr.yml => config/locales/fr.yml +0 -2
@@ 977,7 977,6 @@ fr:
your_token: Votre jeton d’accès
auth:
apply_for_account: Demander un compte
- change_password: Mot de passe
confirmations:
wrong_email_hint: Si cette adresse de courriel est incorrecte, vous pouvez la modifier dans vos paramètres de compte.
delete_account: Supprimer le compte
@@ 1688,7 1687,6 @@ fr:
seamless_external_login: Vous êtes connecté via un service externe, donc les paramètres concernant le mot de passe et le courriel ne sont pas disponibles.
signed_in_as: 'Connecté·e en tant que :'
verification:
- explanation_html: 'Vous pouvez <strong>vous vérifier en tant que propriétaire des liens dans les métadonnées de votre profil</strong>. Pour cela, le site web lié doit contenir un lien vers votre profil Mastodon. Le lien de retour <strong>doit</strong> avoir un attribut <code>rel="me"</code> . Le texte du lien n’a pas d’importance. Voici un exemple :'
verification: Vérification
webauthn_credentials:
add: Ajouter une nouvelle clé de sécurité
M config/locales/fy.yml => config/locales/fy.yml +0 -2
@@ 979,7 979,6 @@ fy:
your_token: Jo tagongskoade
auth:
apply_for_account: Account oanfreegje
- change_password: Wachtwurd
confirmations:
wrong_email_hint: As it e-mailadres net korrekt is, kinne jo dat wizigje yn de accountynstellingen.
delete_account: Account fuortsmite
@@ 1704,7 1703,6 @@ fy:
seamless_external_login: Jo binne oanmeld fia in eksterne tsjinst, dêrom binne wachtwurden en e-mailynstellingen net beskikber.
signed_in_as: 'Oanmeld as:'
verification:
- explanation_html: 'Jo kinne <strong>josels ferifiearje as de eigener fan de keppelingen yn de metadata fan jo profyl</strong>. Hjirfoar moat op de keppele website in keppeling werom nei jo Mastodon-profyl stean. Nei it tafoegjen fan de keppeling moatte jo miskien hjir werom komme en jo profyl opnij bewarje om de ferifikaasje te befêstigjen. Dizze keppeling <strong>moat</strong> it <code>rel="me"</code>-attribút befetsje. De omskriuwing fan de keppeling makket net út. Hjir is in foarbyld:'
verification: Ferifikaasje
webauthn_credentials:
add: Nije befeiligingskaai tafoegje
M config/locales/ga.yml => config/locales/ga.yml +0 -1
@@ 322,7 322,6 @@ ga:
delete_statuses: a gcuid postálacha a scrios
none: rabhadh
auth:
- change_password: Pasfhocal
delete_account: Scrios cuntas
login: Logáil isteach
logout: Logáil Amach
M config/locales/gd.yml => config/locales/gd.yml +0 -2
@@ 1013,7 1013,6 @@ gd:
your_token: An tòcan inntrigidh agad
auth:
apply_for_account: Iarr cunntas
- change_password: Facal-faire
confirmations:
wrong_email_hint: Mur eil an seòladh puist-d seo mar bu chòir, ’s urrainn dhut atharrachadh ann an roghainnean a’ chunntais.
delete_account: Sguab às an cunntas
@@ 1752,7 1751,6 @@ gd:
seamless_external_login: Rinn thu clàradh a-steach le seirbheis on taobh a-muigh, mar sin chan eil roghainnean an fhacail-fhaire ’s a’ phuist-d ri làimh dhut.
signed_in_as: 'Chlàraich thu a-steach mar:'
verification:
- explanation_html: '’S urrainn dhut <strong>dearbhadh gur e seilbheadair nan ceanglaichean ann am meata-dàta na pròifil agad a th’ annad</strong>. Airson sin a dhèanamh, feumaidh ceangal air ais dhan phròifil Mastodon a bhith aig an làrach-lìn cheangailte. Nuair a bhios tu air a’ cheangal a chur ris, dh’fhaoidte gum bi agad ri tilleadh an-seo agus a’ phròifil agad a shàbhaladh a-rithist mus obraich an dearbhadh. <strong>Feumaidh</strong> buadh <code>rel="me"</code> a bhith aig a’ cheangal air ais. Chan eil e gu diofar dè an t-susbaint a tha ann an teacsa a’ cheangail. Seo ball-eisimpleir dhut:'
verification: Dearbhadh
webauthn_credentials:
add: Cuir iuchair tèarainteachd ùr ris
M config/locales/gl.yml => config/locales/gl.yml +0 -2
@@ 979,7 979,6 @@ gl:
your_token: O seu testemuño de acceso
auth:
apply_for_account: Solicita unha conta
- change_password: Contrasinal
confirmations:
wrong_email_hint: Se o enderezo de email non é correcto, podes cambialo nos axustes da conta.
delete_account: Eliminar conta
@@ 1704,7 1703,6 @@ gl:
seamless_external_login: Accedeches a través dun servizo externo, polo que os axustes de contrasinal e email non están dispoñibles.
signed_in_as: 'Rexistrada como:'
verification:
- explanation_html: 'Podes <strong>validarte a ti mesma como a dona das ligazóns nos metadatos do perfil</strong>. Para isto, o sitio web ligado debe conter unha ligazón de retorno ao perfil de Mastodon. Despois de engadir a ligazón tes que volver aquí e volver a gardar o teu perfil para que a verificación tome efecto. A ligazón de retorno <strong>ten que</strong> ter un atributo <code>rel="me"</code>. O texto da ligazón non ten importancia. Aquí tes un exemplo:'
verification: Validación
webauthn_credentials:
add: Engadir nova chave de seguridade
M config/locales/he.yml => config/locales/he.yml +0 -2
@@ 1015,7 1015,6 @@ he:
your_token: אסימון הגישה שלך
auth:
apply_for_account: הגשת בקשה לחשבון
- change_password: סיסמה
confirmations:
wrong_email_hint: אם כתובת הדואל הזו איננה נכונה, ניתן לשנות אותה בעמוד ההגדרות.
delete_account: מחיקת חשבון
@@ 1768,7 1767,6 @@ he:
seamless_external_login: את.ה מחובר דרך שירות חיצוני, לכן אפשרויות הסיסמא והדוא"ל לא מאופשרות.
signed_in_as: 'מחובר בתור:'
verification:
- explanation_html: 'תוכל/י <strong>לאמת את עצמך כבעל/ת הקישורים שבפרופיל שלך</strong>. לשם כך, על האתר המקושר להכיל קישור חוזר לפרופיל המסטודון שלך. אחרי הוספת הקישור ניתן לשוב לפה ולשמור מחדש את הפרופיל כדי להפעיל את אימות הקישור. הקישור החוזר <strong>חייב</strong> להכיל בקוד ה-HTML שלו את התכונה <code>rel="me"</code>. התוכן הטקסטואלי של הקישור לא משנה. הנה דוגמא:'
verification: אימות
webauthn_credentials:
add: הוספת מפתח אבטחה חדש
M config/locales/hi.yml => config/locales/hi.yml +0 -2
@@ 16,5 16,3 @@ hi:
platforms:
kai_os: काइ ओएस
unknown_platform: अनजान प्लेटफॉर्म
- verification:
- explanation_html: 'आप अपने <strong> प्रोफाइल में इस्तेमाल किए गए लिंक वेरिफाई कर सकते हैं</strong>। इसके लिए आपके वेबसाइट पर आपके मॅस्टोडॉन प्रोफाइल का लिंक होना चाहिए। वेरिफिकेशन पूरा करने के लिए लिंक जोड़ने के बाद यहाँ वापस आकर अपना प्रोफाइल पुनः सेव करें। लिंक बैक में <code>rel="me"</code> अट्रीब्यूट <strong>ज़रूर</strong> होना चाहिए। लिंक पर लिखे टेक्स्ट से कोई मतलब नहीं। ये रहा उदाहरण:'
M config/locales/hu.yml => config/locales/hu.yml +0 -2
@@ 979,7 979,6 @@ hu:
your_token: Hozzáférési kulcsod
auth:
apply_for_account: Fiók kérése
- change_password: Jelszó
confirmations:
wrong_email_hint: Ha az emailcím nem helyes, a fiókbeállításokban megváltoztathatod.
delete_account: Felhasználói fiók törlése
@@ 1704,7 1703,6 @@ hu:
seamless_external_login: Külső szolgáltatáson keresztül jelentkeztél be, így a jelszó és e-mail beállítások nem elérhetőek.
signed_in_as: Bejelentkezve mint
verification:
- explanation_html: 'A profilodon <strong>hitelesítheted magad, mint az itt található hivatkozások tulajdonosa</strong>. Ehhez a hivatkozott weboldalnak tartalmaznia kell egy visszahivatkozást a Mastodon-profilodra. A hivatkozás hozzáadása után lehet, hogy vissza kell ide térned, és újra mentened kell a profilodat, hogy az ellenőrzés életbe lépjen. A visszahivatkozásnak <strong>tartalmaznia kell</strong> a <code>rel="me"</code> attribútumot. A hivatkozás szövege bármi lehet. Itt egy példa:'
verification: Hitelesítés
webauthn_credentials:
add: Biztonsági kulcs hozzáadása
M config/locales/hy.yml => config/locales/hy.yml +0 -1
@@ 462,7 462,6 @@ hy:
regenerate_token: Ստեղծել նոր հասանելիութեան կտրոն
your_token: Քո մուտքի բանալին
auth:
- change_password: Գաղտնաբառ
delete_account: Ջնջել հաշիվը
description:
prefix_sign_up: Գրանցուի՛ր Մաստոդոնում հենց այսօր
M config/locales/id.yml => config/locales/id.yml +0 -1
@@ 918,7 918,6 @@ id:
your_token: Token akses Anda
auth:
apply_for_account: Permintaan akun
- change_password: Kata sandi
delete_account: Hapus akun
delete_account_html: Jika Anda ingin menghapus akun Anda, Anda dapat <a href="%{path}">memproses ini</a>. Anda akan dikonfirmasi.
description:
M config/locales/io.yml => config/locales/io.yml +0 -1
@@ 896,7 896,6 @@ io:
warning: Sorgemez per ca informi. Ne partigez kun irgu!
your_token: Vua acesficho
auth:
- change_password: Pasvorto
delete_account: Efacez konto
delete_account_html: Se vu volas efacar vua konto, vu povas <a href="%{path}">irar hike</a>. Vu demandesos konfirmar.
description:
M config/locales/is.yml => config/locales/is.yml +0 -2
@@ 979,7 979,6 @@ is:
your_token: Aðgangsteiknið þitt
auth:
apply_for_account: Biðja um notandaaðgang
- change_password: Lykilorð
confirmations:
wrong_email_hint: Ef það tölvupóstfang er ekki rétt geturðu breytt því í stillingum notandaaðgangsins.
delete_account: Eyða notandaaðgangi
@@ 1704,7 1703,6 @@ is:
seamless_external_login: Innskráning þín er í gegnum utanaðkomandi þjónustu, þannig að stillingar fyrir lykilorð og tölvupóst eru ekki aðgengilegar.
signed_in_as: 'Skráð inn sem:'
verification:
- explanation_html: 'Þú getur <strong>sannvottað sjálfa/n þig sem eiganda tenglanna í notandasniðinu þinu</strong>. Til að það virki, þarf tilvísaða vefsvæðið að innihalda tengil til baka á notandasnið þitt á Mastodon. Eftir að tenglinum hefur verið bætt inn, gætirðu þurft að koma aftur hingað og vista aftur notandasniðið þitt áður en sannvottunin fer að virka. Tengillinn til baka <strong>verður</strong> að innihalda <code>rel="me"</code> eigindi. Efni textans í tenglinum skiptir ekki máli. Hér er dæmi:'
verification: Sannprófun
webauthn_credentials:
add: Bæta við nýjum öryggislykli
M config/locales/it.yml => config/locales/it.yml +0 -2
@@ 981,7 981,6 @@ it:
your_token: Il tuo token di accesso
auth:
apply_for_account: Richiedi un account
- change_password: Password
confirmations:
wrong_email_hint: Se l'indirizzo e-mail non è corretto, puoi modificarlo nelle impostazioni dell'account.
delete_account: Elimina account
@@ 1706,7 1705,6 @@ it:
seamless_external_login: Hai effettuato l'accesso tramite un servizio esterno, quindi le impostazioni di password e e-mail non sono disponibili.
signed_in_as: 'Hai effettuato l''accesso come:'
verification:
- explanation_html: 'Puoi <strong>verificarti come proprietario dei link nei metadati del tuo profilo</strong>. Per questo, il sito web collegato deve contenere un collegamento al tuo profilo Mastodon. Dopo aver aggiunto il collegamento, potrebbe essere necessario tornare qui e salvare nuovamente il profilo affinché la verifica abbia effetto. Il link di ritorno <strong>deve</strong> avere un attributo <code>rel="me"</code>. Il contenuto del testo del collegamento non ha importanza. Ecco un esempio:'
verification: Verifica
webauthn_credentials:
add: Aggiungi una nuova chiave di sicurezza
M config/locales/ja.yml => config/locales/ja.yml +0 -2
@@ 961,7 961,6 @@ ja:
your_token: アクセストークン
auth:
apply_for_account: アカウントのリクエスト
- change_password: パスワード
confirmations:
wrong_email_hint: メールアドレスが正しくない場合は、アカウント設定で変更できます。
delete_account: アカウントの削除
@@ 1674,7 1673,6 @@ ja:
seamless_external_login: あなたは外部サービスを介してログインしているため、パスワードとメールアドレスの設定は利用できません。
signed_in_as: '下記でログイン中:'
verification:
- explanation_html: <strong>プロフィール補足情報のリンクの所有者であることを認証できます</strong>。認証するには、リンク先のウェブサイトにMastodonプロフィールへのリンクを追加してください。リンクを追加後、このページで変更の保存を再実行すると認証が反映されます。プロフィールへのリンクには<code>rel="me"</code>属性を<strong>かならず</strong>付与してください。リンク内のテキストは自由に記述できます。以下は一例です:
verification: 認証
webauthn_credentials:
add: セキュリティキーを追加
M config/locales/ka.yml => config/locales/ka.yml +0 -1
@@ 216,7 216,6 @@ ka:
warning: იყავით ძალიან ფრთხილად ამ მონაცემთან. არასდროს გააზიაროთ ეს!
your_token: თქვენი წვდომის ტოკენი
auth:
- change_password: პაროლი
delete_account: ანგარიშის გაუქმება
delete_account_html: თუ გსურთ გააუქმოთ თქვენი ანგარიში, შეგიძლიათ <a href="%{path}">გააგრძელოთ აქ</a>. საჭირო იქნება დამოწმება.
forgot_password: დაგავიწყდათ პაროლი?
M config/locales/kab.yml => config/locales/kab.yml +0 -1
@@ 441,7 441,6 @@ kab:
token_regenerated: Ajuṭu n unekcum yettusirew i tikkelt-nniḍen akken iwata
your_token: Ajiṭun-ik·im n unekcum
auth:
- change_password: Awal uffir
delete_account: Kkes amiḍan
description:
prefix_invited_by_user: "@%{name} inced-ik·ikem ad ternuḍ ɣer uqeddac-a n Mastodon!"
M config/locales/kk.yml => config/locales/kk.yml +0 -1
@@ 335,7 335,6 @@ kk:
warning: Be very carеful with this data. Never share it with anyone!
your_token: Your access tokеn
auth:
- change_password: Құпиясөз
delete_account: Аккаунт өшіру
delete_account_html: Аккаунтыңызды жойғыңыз келсе, <a href="%{path}">мына жерді</a> басыңыз. Сізден растау сұралатын болады.
description:
M config/locales/ko.yml => config/locales/ko.yml +0 -2
@@ 963,7 963,6 @@ ko:
your_token: 액세스 토큰
auth:
apply_for_account: 가입 요청하기
- change_password: 암호
confirmations:
wrong_email_hint: 만약 이메일 주소가 올바르지 않다면, 계정 설정에서 수정할 수 있습니다.
delete_account: 계정 삭제
@@ 1674,7 1673,6 @@ ko:
seamless_external_login: 외부 서비스를 이용해 로그인했으므로 이메일과 암호는 설정할 수 없습니다.
signed_in_as: '다음과 같이 로그인 중:'
verification:
- explanation_html: '<strong>내 프로필 메타데이터에 담긴 링크의 소유 여부를 검증</strong>할 수 있습니다. 이를 위해서 반드시 링크한 웹사이트에 Mastodon 프로필에 대한 역링크가 포함되어야 합니다. 링크를 추가한 후 이곳으로 돌아와서 프로필을 다시 저장해야 인증을 적용할 수 있습니다. 돌아오는 링크에는 <strong>반드시</strong> <code>rel="me"</code> 속성이 있어야 합니다. 링크의 텍스트 콘텐트는 중요하지 않습니다. 다음 예제를 참고하세요:'
verification: 검증
webauthn_credentials:
add: 보안 키 추가
M config/locales/ku.yml => config/locales/ku.yml +0 -1
@@ 937,7 937,6 @@ ku:
your_token: Nîşana gihîştinê te
auth:
apply_for_account: Ajimêrekê bixwaze
- change_password: Borînpeyv
delete_account: Ajimêr jê bibe
delete_account_html: Ku tu dixwazî ajimêra xwe jê bibe, tu dikarî <a href="%{path}">li vir bidomîne</a>. Ji te tê xwestin ku were pejirandin.
description:
M config/locales/lt.yml => config/locales/lt.yml +0 -1
@@ 254,7 254,6 @@ lt:
warning: Būkite atsargūs su šia informacija. Niekada jos nesidalinkite!
your_token: Jūsų prieigos žetonas
auth:
- change_password: Slaptažodis
delete_account: Ištrinti paskyrą
delete_account_html: Jeigu norite ištrinti savo paskyrą, galite eiti <a href="%{path}">čia</a>. Jūsų prašys patvirtinti pasirinkimą.
forgot_password: Pamiršote slaptažodį?
M config/locales/lv.yml => config/locales/lv.yml +0 -2
@@ 997,7 997,6 @@ lv:
your_token: Tavs piekļuves marķieris
auth:
apply_for_account: Pieprasīt kontu
- change_password: Parole
confirmations:
wrong_email_hint: Ja šī e-pasta adrese nav pareiza, varat to mainīt konta iestatījumos.
delete_account: Dzēst kontu
@@ 1736,7 1735,6 @@ lv:
seamless_external_login: Tu esi pieteicies, izmantojot ārēju pakalpojumu, tāpēc paroles un e-pasta iestatījumi nav pieejami.
signed_in_as: 'Pierakstījies kā:'
verification:
- explanation_html: 'Tu vari <strong>apstiprināt sevi kā sava profila metadatos esošo saišu īpašnieku</strong>. Lai to izdarītu, saistītajā vietnē ir jābūt saitei uz tavu Mastodon profilu. Pēc saites pievienošanas tev, iespējams, vajadzēs atgriezties šeit un atkārtoti saglabāt savu profilu, lai pārbaude stātos spēkā. Atpakaļsaitē <strong>jābūt</strong> atribūtam <code>rel="me"</code>. Saites teksta saturam nav nozīmes. Šeit ir piemērs:'
verification: Pārbaude
webauthn_credentials:
add: Pievienot jaunu drošības atslēgu
M config/locales/ms.yml => config/locales/ms.yml +0 -1
@@ 752,7 752,6 @@ ms:
view_profile: Lihat profil
view_status: Lihat hantaran
auth:
- change_password: Kata laluan
delete_account: Padam akaun
description:
prefix_sign_up: Daftar pada Mastodon hari ini!
M config/locales/my.yml => config/locales/my.yml +0 -2
@@ 965,7 965,6 @@ my:
your_token: သင့် အသုံးပြုခွင့်တိုကင်
auth:
apply_for_account: အကောင့်တစ်ခုတောင်းဆိုပါ
- change_password: စကားဝှက်
confirmations:
wrong_email_hint: ထိုအီးမေးလ်လိပ်စာ မမှန်ပါက အကောင့်သတ်မှတ်ချက်များတွင် ပြောင်းလဲနိုင်သည်။
delete_account: အကောင့်ဖျက်ပါ
@@ 1678,7 1677,6 @@ my:
seamless_external_login: ပြင်ပဝန်ဆောင်မှုမှတစ်ဆင့် အကောင့်ဝင်ထားသောကြောင့် စကားဝှက်နှင့် အီးမေးလ်သတ်မှတ်ချက်များကို မရနိုင်ပါ။
signed_in_as: အဖြစ် အကောင့်ဝင်ခဲ့သည် -
verification:
- explanation_html: သင်သည် <strong>သင့်ပရိုဖိုင်မက်တာဒေတာရှိ လင့်ခ်များ၏ ပိုင်ရှင်အဖြစ် သင်ကိုယ်တိုင် အတည်ပြုနိုင်သည်</strong>။ ယင်းအတွက် လင့်ခ်ချိတ်ထားသော ဝဘ်ဆိုက်တွင် သင်၏ Mastodon ပရိုဖိုင်သို့ ပြန်သွားရန် လင့်ခ်တစ်ခု ပါရှိရပါမည်။ လင့်ခ်ထည့်သွင်းပြီးနောက် ဤနေရာသို့ပြန်လာရန်နှင့် အတည်ပြုနိုင်ရန်အတွက် သင့်ပရိုဖိုင်ကို ပြန်လည်သိမ်းဆည်းရန် လိုအပ်နိုင်ပါသည်။ နောက်ပြန်လင့်ခ်တွင် <code>rel="me"</code> ရည်ညွှန်းချက် <strong>ပါရှိရပါမည်</strong>။ လင့်ခ် စာသားအကြောင်းအရာမှာ အရေးမကြီးပါ။ ဤတွင် ဥပမာတစ်ခုရှိပါသည် -
verification: စိစစ်ခြင်း
webauthn_credentials:
add: လုံခြုံရေးကီးအသစ်ထည့်ပါ
M config/locales/nl.yml => config/locales/nl.yml +0 -2
@@ 979,7 979,6 @@ nl:
your_token: Jouw toegangscode
auth:
apply_for_account: Account aanvragen
- change_password: Wachtwoord
confirmations:
wrong_email_hint: Als dat e-mailadres niet correct is, kun je het wijzigen in je accountinstellingen.
delete_account: Account verwijderen
@@ 1704,7 1703,6 @@ nl:
seamless_external_login: Je bent ingelogd via een externe dienst, daarom zijn wachtwoorden en e-mailinstellingen niet beschikbaar.
signed_in_as: 'Ingelogd als:'
verification:
- explanation_html: 'Je kunt <strong>jezelf verifiëren als de eigenaar van de links in de metadata van jouw profiel</strong>. Hiervoor moet op de gelinkte website een link terug naar jouw Mastodonprofiel staan. Na het toevoegen van de link moet je hier mogelijk terugkomen en je profiel opnieuw bewaren om de verificatie te bevestigen. Deze link <strong>moet</strong> het <code>rel="me"</code>-attribuut bevatten. De omschrijving van de link maakt niet uit. Hier is een voorbeeld:'
verification: Verificatie
webauthn_credentials:
add: Nieuwe beveiligingssleutel toevoegen
M config/locales/nn.yml => config/locales/nn.yml +0 -1
@@ 965,7 965,6 @@ nn:
your_token: Tilgangsnykelen din
auth:
apply_for_account: Søk om ein konto
- change_password: Passord
confirmations:
wrong_email_hint: Viss epostadressa er feil, kan du endra ho i kontoinnstillingane.
delete_account: Slett konto
M config/locales/no.yml => config/locales/no.yml +0 -2
@@ 928,7 928,6 @@
your_token: Din tilgangsnøkkel
auth:
apply_for_account: Be om en konto
- change_password: Passord
delete_account: Slett konto
delete_account_html: Hvis du ønsker å slette kontoen din, kan du <a href="%{path}">gå hit</a>. Du vil bli spurt om bekreftelse.
description:
@@ 1636,7 1635,6 @@
seamless_external_login: Du er logget inn via en ekstern tjeneste, så passord og e-post innstillinger er ikke tilgjengelige.
signed_in_as: 'Innlogget som:'
verification:
- explanation_html: 'Du kan <strong>bekrefte at du selv eier lenkene i din profilmetadata</strong>. For å gjøre det, må det tillenkede nettstedet inneholde en lenke som fører tilbake til Mastodon-profilen din. Etter å ha laget den lenken må du kanskje komme tilbake hit og lagre profilen på ny, for at verifisering skal kunne gjennomføres. Lenken tilbake <strong>må</strong> ha en <code>rel="me"</code>-attributt. Tekstinnholdet til lenken er irrelevant. Her er et eksempel:'
verification: Bekreftelse
webauthn_credentials:
add: Legg til ny sikkerhetsnøkkel
M config/locales/oc.yml => config/locales/oc.yml +0 -1
@@ 475,7 475,6 @@ oc:
warning: Mèfi ! Agachatz de partejar aquela donada amb degun !
your_token: Vòstre geton d’accès
auth:
- change_password: Senhal
delete_account: Suprimir lo compte
delete_account_html: Se volètz suprimir vòstre compte, podètz <a href="%{path}">o far aquí</a>. Vos demandarem que confirmetz.
description:
M config/locales/pl.yml => config/locales/pl.yml +0 -2
@@ 1015,7 1015,6 @@ pl:
your_token: Twój token dostępu
auth:
apply_for_account: Poproś o założenie konta
- change_password: Hasło
confirmations:
wrong_email_hint: Jeśli ten adres e-mail nie jest poprawny, możesz go zmienić w ustawieniach konta.
delete_account: Usunięcie konta
@@ 1768,7 1767,6 @@ pl:
seamless_external_login: Zalogowano z użyciem zewnętrznej usługi, więc ustawienia hasła i adresu e-mail nie są dostępne.
signed_in_as: 'Zalogowano jako:'
verification:
- explanation_html: 'Możesz <strong>zweryfikować siebie jako właściciela stron, do których odnośniki znajdują się w metadanych</strong>. Aby to zrobić, strona musi zawierać odnośnik do Twojego profilu na Mastodonie. Odnośnik <strong>musi</strong> zawierać atrybut <code>rel="me"</code>. Jego zawartość nie ma znaczenia. Przykład:'
verification: Weryfikacja
webauthn_credentials:
add: Dodaj nowy klucz bezpieczeństwa
M config/locales/pt-BR.yml => config/locales/pt-BR.yml +0 -2
@@ 979,7 979,6 @@ pt-BR:
your_token: Seu código de acesso
auth:
apply_for_account: Solicitar uma conta
- change_password: Senha
confirmations:
wrong_email_hint: Se esse endereço de e-mail não estiver correto, você pode alterá-lo nas configurações da conta.
delete_account: Excluir conta
@@ 1704,7 1703,6 @@ pt-BR:
seamless_external_login: Você entrou usando um serviço externo, então configurações de e-mail e senha não estão disponíveis.
signed_in_as: 'Entrou como:'
verification:
- explanation_html: 'Você pode <strong>se verificar como proprietário dos links nos metadados do seu perfil</strong>. Para isso, o site vinculado deve conter um link de volta para o seu perfil de Mastodon. Depois de adicionar o link, talvez você precise voltar aqui e salvar novamente o seu perfil para que a verificação tenha efeito. O link de volta <strong>deve</strong> ter um atributo <code>rel="me"</code>. O conteúdo do texto do link não importa. Aqui está um exemplo:'
verification: Verificação
webauthn_credentials:
add: Adicionar nova chave de segurança
M config/locales/pt-PT.yml => config/locales/pt-PT.yml +0 -2
@@ 979,7 979,6 @@ pt-PT:
your_token: O teu token de acesso
auth:
apply_for_account: Solicitar uma conta
- change_password: Palavra-passe
confirmations:
wrong_email_hint: Se esse endereço de e-mail não estiver correto, você pode alterá-lo nas configurações da conta.
delete_account: Eliminar conta
@@ 1704,7 1703,6 @@ pt-PT:
seamless_external_login: Tu estás ligado via um serviço externo. Por isso, as configurações da palavra-passe e do e-mail não estão disponíveis.
signed_in_as: 'Registado como:'
verification:
- explanation_html: 'Pode <strong>comprovar que é o dono das hiperligações nos metadados do seu perfil</strong>. Para isso, a página para a qual a hiperligação aponta tem de conter uma outra para o seu perfil do Mastodon. Após adicionar a hiperligação, poderá ter de voltar aqui e voltar a guardar o seu perfil para que a verificação produza efeito. Essa hiperligação <strong>tem</strong> de ter um atributo <code>rel="me"</code>. O conteúdo do texto não é importante. Eis um exemplo:'
verification: Verificação
webauthn_credentials:
add: Adicionar nova chave de segurança
M config/locales/ro.yml => config/locales/ro.yml +0 -1
@@ 423,7 423,6 @@ ro:
warning: Fiți foarte atent cu aceste date. Nu le împărtășiți niciodată cu cineva!
your_token: Token-ul tău de acces
auth:
- change_password: Parolă
delete_account: Șterge contul
delete_account_html: Dacă vrei să ștergi acest cont <a href="%{path}">poți începe aici</a>. Va trebui să confirmi această acțiune.
description:
M config/locales/ru.yml => config/locales/ru.yml +0 -2
@@ 1015,7 1015,6 @@ ru:
your_token: Ваш токен доступа
auth:
apply_for_account: Запросить аккаунт
- change_password: Пароль
confirmations:
wrong_email_hint: Если этот адрес электронной почты неверен, вы можете изменить его в настройках аккаунта.
delete_account: Удалить учётную запись
@@ 1768,7 1767,6 @@ ru:
seamless_external_login: Вы залогинены через сторонний сервис, поэтому настройки e-mail и пароля недоступны.
signed_in_as: 'Выполнен вход под именем:'
verification:
- explanation_html: 'Вы можете <strong>подтвердить владение</strong> любой из ссылок в таблице. Для этого страница по ссылке должна содержать обратную ссылку на ваш профиль Mastodon, а у самой ссылки <strong>должен</strong> атрибут <code>rel="me"</code>. Текст ссылки значения не имеет. Вот пример:'
verification: Верификация ссылок
webauthn_credentials:
add: Добавить новый ключ безопасности
M config/locales/sc.yml => config/locales/sc.yml +0 -1
@@ 507,7 507,6 @@ sc:
warning: Dae cara a custos datos. Non ddos cumpartzas mai cun nemos!
your_token: S'identificadore tuo de atzessu
auth:
- change_password: Crae
delete_account: Cantzella su contu
delete_account_html: Si boles cantzellare su contu, ddu podes <a href="%{path}">fàghere inoghe</a>. T'amus a dimandare una cunfirmatzione.
description:
M config/locales/sco.yml => config/locales/sco.yml +0 -1
@@ 930,7 930,6 @@ sco:
your_token: Yer access token
auth:
apply_for_account: Request a accoont
- change_password: Passwird
delete_account: Delete accoont
delete_account_html: If ye'r wantin tae delete yer accoont, ye kin <a href="%{path}">dae it here</a>. Ye'll get asked fir confirmation.
description:
M config/locales/si.yml => config/locales/si.yml +0 -1
@@ 773,7 773,6 @@ si:
warning: මෙම දත්ත සමඟ ඉතා ප්රවේශම් වන්න. එය කිසි විටෙක කිසිවෙකු සමඟ බෙදා නොගන්න!
your_token: ඔබේ ප්රවේශ ටෝකනය
auth:
- change_password: මුර පදය
delete_account: ගිණුම මකන්න
delete_account_html: ඔබට ඔබගේ ගිණුම මකා දැමීමට අවශ්ය නම්, ඔබට <a href="%{path}">මෙතැනින් ඉදිරියට යා හැක</a>. තහවුරු කිරීම සඳහා ඔබෙන් අසනු ඇත.
description:
M config/locales/simple_form.an.yml => config/locales/simple_form.an.yml +0 -1
@@ 39,7 39,6 @@ an:
digest: Solo ninviau dimpués d'un largo periodo d'inactividat y nomás si has recibiu mensaches personals entre la tuya ausencia
discoverable: Permite que la tuya cuenta sía descubierta per extranyos a traviés de recomendacions, tendencias y atras caracteristicas
email: Se le ninviará un correu de confirmación
- fields: Puetz tener dica 4 elementos amostrando-se como una tabla en o tuyo perfil
header: PNG, GIF u JPG. Maximo %{size}. Será escalau a %{dimensions}px
inbox_url: Copia la URL d'a pachina prencipal d'o relés que quiers utilizar
irreversible: Las publicacions filtradas desapareixerán irreversiblement, mesmo si este filtro ye eliminau mas abance
M config/locales/simple_form.ar.yml => config/locales/simple_form.ar.yml +0 -1
@@ 39,7 39,6 @@ ar:
digest: تُرسَل إليك بعد مُضيّ مدة مِن خمول نشاطك و فقط إذا ما تلقيت رسائل شخصية مباشِرة أثناء فترة غيابك مِن الشبكة
discoverable: السماح للغرباء اكتشاف حسابك من خلال التوصيات والمتداولة وغيرها من الميزات
email: سوف تتلقى رسالة إلكترونية للتأكيد
- fields: يُمكنك عرض 4 عناصر على شكل جدول في صفحتك التعريفية
header: ملف PNG أو GIF أو JPG. حجمه على أقصى تصدير %{size}. سيتم تصغيره إلى %{dimensions}px
inbox_url: نسخ العنوان الذي تريد استخدامه مِن صفحة الاستقبال للمُرحَّل
irreversible: المنشورات التي تم تصفيتها ستختفي لا محالة حتى و إن تمت إزالة عامِل التصفية لاحقًا
M config/locales/simple_form.ast.yml => config/locales/simple_form.ast.yml +0 -1
@@ 19,7 19,6 @@ ast:
bot: Avisa a otres persones de qu'esta cuenta fai principalmente aiciones automatizaes ya de que ye posible que nun tean supervisaes
digest: Namás s'unvia dempués d'un periodu llongu d'inactividá ya namás si recibiesti dalgún mensaxe personal demientres la to ausencia
discoverable: Permite que persones desconocíes descubran la to cuenta pente recomendaciones, tendencies ya otres funciones
- fields: Pues tener hasta 4 elementos qu'apaecen nuna tabla dientro del to perfil
header: Ficheros PNG, GIF o JPG de %{size} como muncho. La semeya va redimensionase a %{dimensions} px
irreversible: Los artículos peñeraos desapaecen de forma irreversible, magar que la peñera se quite dempués
locale: La llingua de la interfaz, los mensaxes per corréu electrónicu ya los avisos push
M config/locales/simple_form.be.yml => config/locales/simple_form.be.yml +0 -1
@@ 39,7 39,6 @@ be:
digest: Будзе даслана толькі пасля доўгага перыяду неактыўнасці і толькі калі вы атрымалі асабістыя паведамленні падчас вашай адсутнасці
discoverable: Дазволіць незнаёмым людзям знаходзіць ваш уліковы запіс праз рэкамендацыі, трэнды і іншыя функцыі
email: Пацвярджэнне будзе выслана па электроннай пошце
- fields: У вашаму профілі можа быць паказана да 4 элементаў у выглядзе табліцы
header: PNG, GIF ці JPG. Не больш за %{size}. Будзе сціснуты да памеру %{dimensions}} пікселяў
inbox_url: Капіраваць URL са старонкі рэтранслятара, якім вы хочаце карыстацца
irreversible: Адфільтраваныя пасты прападуць незваротна, нават калі фільтр потым будзе выдалены
M config/locales/simple_form.bg.yml => config/locales/simple_form.bg.yml +0 -1
@@ 39,7 39,6 @@ bg:
digest: Изпраща се само след дълъг период на бездействие и само ако сте получили лични съобщения във ваше отсъствие
discoverable: Позволяване на странници да откриват вашия акаунт чрез препоръки, нашумели и други неща
email: Ще ви се изпрати имейл за потвърждение
- fields: Може да добавите до 4 елемента в таблицата към профила си
header: PNG, GIF или JPG. До най-много %{size}. Ще се смали до %{dimensions} пиксела
inbox_url: Копирайте URL адреса на заглавната страница на предаващия сървър, който искат да използвате
irreversible: Филтрираните публикации ще изчезнат безвъзвратно, дори филтърът да бъде премахнат по-късно
M config/locales/simple_form.ca.yml => config/locales/simple_form.ca.yml +0 -1
@@ 39,7 39,6 @@ ca:
digest: Només s'envia després d'un llarg període d'inactivitat i només si has rebut algun missatge personal durant la teva absència
discoverable: Permet que el teu compte sigui descobert per desconeguts a través de recomanacions, etiquetes i altres característiques
email: Se t'enviarà un correu electrònic de confirmació
- fields: Pots tenir fins a 4 elements que es mostren com a taula al teu perfil
header: PNG, GIF o JPG de com a màxim %{size}. S'escalarà a %{dimensions}px
inbox_url: Copia l'URL de la pàgina principal del relay que vols usar
irreversible: Els tuts filtrats desapareixeran de manera irreversible, fins i tot si el filtre es retira més tard
M config/locales/simple_form.ckb.yml => config/locales/simple_form.ckb.yml +0 -1
@@ 32,7 32,6 @@ ckb:
current_username: بۆ دڵنیابوون، تکایە ناوی بەکارهێنەری ئەم هەژمارەیە بنووسە
digest: تەنیا دوای ماوەیەکی زۆر لە بێ چالاکیدەنێردرێت و تەنیا ئەگەر نامەیەکی کەسیت بۆ نووسرابێت
email: ئیمەیڵێکی پشتڕاستکردنەوەت بۆ دەنێردرێت
- fields: دەتوانیت تا ٤بڕگەت هەبێت کە وەک خشتەیەک لەسەر پرۆفایلەکەت پیشان بدرێت
header: PNG, GIF یان JPG. لە زۆربەی %{size}. دەبێتە ئەندازەیەکی کەمکراوە بۆ %{dimensions}پیکسێڵ
inbox_url: نیشانەی پەڕەی سەرەکی ئەو رێڵە کە هەرەکتە بەکاریببەیت ڕوونووس دەکات
irreversible: توتە فلتەرکراوەکە بە شێوەیەکی نەگەڕاو فرەدەدرێن، تەنانەت ئەگەر فلتەردواتر لاببرێت
M config/locales/simple_form.co.yml => config/locales/simple_form.co.yml +0 -1
@@ 30,7 30,6 @@ co:
current_username: Per cunfirmà, entrate u cugnome di questu contu
digest: Solu mandatu dopu à una longa perioda d’inattività, è solu s’elli ci sò novi missaghji diretti
email: Avete da riceve un'e-mail di cunfirmazione
- fields: Pudete avè fin’à 4 elementi mustrati cum’un tavulone nant’à u vostru prufile
header: Furmatu PNG, GIF o JPG. %{size} o menu. Sarà ridottu à %{dimensions}px
inbox_url: Cupiate l'URL di a pagina d'accolta di u ripetitore chì vulete utilizà
irreversible: I statuti filtrati saranu sguassati di manera irreversibile, ancu s'ellu hè toltu u filtru
M config/locales/simple_form.cs.yml => config/locales/simple_form.cs.yml +0 -1
@@ 39,7 39,6 @@ cs:
digest: Odesíláno pouze po dlouhé době nečinnosti a pouze, pokud jste během své nepřítomnosti obdrželi osobní zprávy
discoverable: Umožnit, aby mohli váš účet objevit neznámí lidé pomocí doporučení, trendů a dalších funkcí
email: Bude vám poslán potvrzovací e-mail
- fields: Na svém profilu můžete mít zobrazeny až 4 položky jako tabulku
header: PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px
inbox_url: Zkopírujte URL z hlavní stránky mostu, který chcete použít
irreversible: Filtrované příspěvky nenávratně zmizí, i pokud bude filtr později odstraněn
M config/locales/simple_form.cy.yml => config/locales/simple_form.cy.yml +0 -1
@@ 39,7 39,6 @@ cy:
digest: Ond yn cael eu hanfon ar ôl cyfnod hir o anweithgarwch ac ond os ydych wedi derbyn unrhyw negeseuon personol yn eich absenoldeb
discoverable: Caniatáu i'ch cyfrif gael ei ddarganfod gan ddieithriaid trwy argymhellion, pynciau llosg a nodweddion eraill
email: Byddwch yn derbyn e-bost cadarnhau
- fields: Mae modd i chi ddangos hyd at 4 eitem fel tabl ar eich proffil
header: PNG, GIF neu JPG. %{size} ar y mwyaf. Bydd yn cael ei israddio i %{dimensions}px
inbox_url: Copïwch yr URL o dudalen flaen y relái yr ydych am ei ddefnyddio
irreversible: Bydd postiadau wedi'u hidlo'n diflannu'n ddiwrthdro, hyd yn oed os caiff yr hidlydd ei dynnu'n ddiweddarach
M config/locales/simple_form.da.yml => config/locales/simple_form.da.yml +0 -1
@@ 39,7 39,6 @@ da:
digest: Sendes kun efter en lang inaktivitetsperiode, og kun hvis du har modtaget personlige beskeder under fraværet
discoverable: Tillad kontoen at blive fundet af fremmede via anbefalinger og øvrige funktioner
email: En bekræftelses-e-mail fremsendes
- fields: Profilen kan have op til 4 elementer vist som en tabel
header: PNG, GIF eller JPG. Maks. %{size}. Auto-nedskaleres til %{dimensions}px
inbox_url: Kopiér URL'en fra forsiden af den videreformidler, der skal anvendes
irreversible: Filtrerede indlæg forsvinder permanent, selv hvis filteret senere fjernes
M config/locales/simple_form.de.yml => config/locales/simple_form.de.yml +0 -1
@@ 39,7 39,6 @@ de:
digest: Wenn du eine längere Zeit inaktiv bist oder du in deiner Abwesenheit eine Direktnachricht erhalten hast
discoverable: Erlaube deinem Konto, durch Empfehlungen, Trends und andere Funktionen von Fremden entdeckt zu werden
email: Du wirst eine E-Mail zur Verifizierung dieser E-Mail-Adresse erhalten
- fields: Du kannst bis zu vier Metadaten auf deinem Profil anzeigen lassen, die als Tabelle dargestellt werden
header: PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert
inbox_url: Kopiere die URL von der Startseite des gewünschten Relays
irreversible: Bereinigte Beiträge verschwinden unwiderruflich für dich, auch dann, wenn dieser Filter zu einem späteren wieder entfernt wird
M config/locales/simple_form.el.yml => config/locales/simple_form.el.yml +0 -1
@@ 39,7 39,6 @@ el:
digest: Αποστέλλεται μόνο μετά από μακρά περίοδο αδράνειας και μόνο αν έχεις λάβει προσωπικά μηνύματα κατά την απουσία σου
discoverable: Επέτρεψε στον λογαριασμό σου να ανακαλυφθεί από αγνώστους μέσω συστάσεων, τάσεων και άλλων χαρακτηριστικών
email: Θα σου σταλεί email επιβεβαίωσης
- fields: Μπορείς να έχεις έως 4 σημειώσεις σε μορφή πίνακα στο προφίλ σου
header: PNG, GIF ή JPG. Έως %{size}. Θα περιοριστεί σε διάσταση %{dimensions}px
inbox_url: Αντέγραψε το URL της αρχικής σελίδας του ανταποκριτή που θέλεις να χρησιμοποιήσεις
irreversible: Οι φιλτραρισμένες αναρτήσεις θα εξαφανιστούν αμετάκλητα, ακόμα και αν το φίλτρο αργότερα αφαιρεθεί
M config/locales/simple_form.en-GB.yml => config/locales/simple_form.en-GB.yml +0 -1
@@ 39,7 39,6 @@ en-GB:
digest: Only sent after a long period of inactivity and only if you have received any personal messages in your absence
discoverable: Allow your account to be discovered by strangers through recommendations, trends and other features
email: You will be sent a confirmation e-mail
- fields: You can have up to 4 items displayed as a table on your profile
header: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px
inbox_url: Copy the URL from the frontpage of the relay you want to use
irreversible: Filtered posts will disappear irreversibly, even if filter is later removed
M config/locales/simple_form.en.yml => config/locales/simple_form.en.yml +8 -5
@@ 2,6 2,10 @@
en:
simple_form:
hints:
+ account:
+ display_name: Your full name or your fun name.
+ fields: Your homepage, pronouns, age, anything you want.
+ note: 'You can @mention other people or #hashtags.'
account_alias:
acct: Specify the username@domain of the account you want to move from
account_migration:
@@ 39,7 43,6 @@ en:
digest: Only sent after a long period of inactivity and only if you have received any personal messages in your absence
discoverable: Allow your account to be discovered by strangers through recommendations, trends and other features
email: You will be sent a confirmation e-mail
- fields: You can have up to 4 items displayed as a table on your profile
header: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px
inbox_url: Copy the URL from the frontpage of the relay you want to use
irreversible: Filtered posts will disappear irreversibly, even if filter is later removed
@@ 167,8 170,8 @@ en:
text: Explain why this decision should be reversed
defaults:
autofollow: Invite to follow your account
- avatar: Avatar
- bot: This is a bot account
+ avatar: Profile picture
+ bot: This is an automated account
chosen_languages: Filter languages
confirm_new_password: Confirm new password
confirm_password: Confirm password
@@ 179,8 182,8 @@ en:
display_name: Display name
email: E-mail address
expires_in: Expire after
- fields: Profile metadata
- header: Header
+ fields: Extra fields
+ header: Header picture
honeypot: "%{label} (do not fill in)"
inbox_url: URL of the relay inbox
irreversible: Drop instead of hide
M config/locales/simple_form.eo.yml => config/locales/simple_form.eo.yml +0 -1
@@ 39,7 39,6 @@ eo:
digest: Sendita nur post longa tempo de neaktiveco, kaj nur se vi ricevis personan mesaĝon en via foresto
discoverable: Permesi vian konton esti malkovrita de fremduloj per rekomendoj, tendencoj kaj aliaj funkcioj
email: Vi ricevos konfirman retpoŝton
- fields: Vi povas havi ĝis 4 tabelajn elementojn en via profilo
header: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px
inbox_url: Kopiu la URL de la ĉefpaĝo de la ripetilo, kiun vi volas uzi
irreversible: La filtritaj mesaĝoj malaperos por eterne, eĉ se la filtrilo poste estas forigita
M config/locales/simple_form.es-AR.yml => config/locales/simple_form.es-AR.yml +0 -1
@@ 39,7 39,6 @@ es-AR:
digest: Sólo enviado tras un largo periodo de inactividad, y sólo si recibiste mensajes personales en tu ausencia
discoverable: Permití que tu cuenta sea descubierta por extraños a través de recomendaciones, tendencias y otras funciones
email: Se te enviará un correo electrónico de confirmación
- fields: Podés tener hasta 4 elementos mostrados en una tabla en tu perfil
header: 'PNG, GIF o JPG. Máximo: %{size}. Será subescalado a %{dimensions} píxeles.'
inbox_url: Copiá la dirección web desde la página principal del relé que querés usar
irreversible: Los mensajes filtrados desaparecerán irreversiblemente, incluso si este filtro es eliminado después
M config/locales/simple_form.es-MX.yml => config/locales/simple_form.es-MX.yml +0 -1
@@ 39,7 39,6 @@ es-MX:
digest: Solo enviado tras un largo periodo de inactividad y solo si has recibido mensajes personales durante tu ausencia
discoverable: Permite que tu cuenta sea descubierta por extraños a través de recomendaciones, tendencias y otras características
email: Se le enviará un correo de confirmación
- fields: Puedes tener hasta 4 elementos mostrándose como una tabla en tu perfil
header: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px
inbox_url: Copia la URL de la página principal del relés que quieres utilizar
irreversible: Los toots filtrados desaparecerán irreversiblemente, incluso si este filtro es eliminado más adelante
M config/locales/simple_form.es.yml => config/locales/simple_form.es.yml +0 -1
@@ 39,7 39,6 @@ es:
digest: Solo enviado tras un largo periodo de inactividad y solo si has recibido mensajes personales durante tu ausencia
discoverable: Permite que tu cuenta sea descubierta por extraños a través de recomendaciones, tendencias y otras características
email: Se le enviará un correo de confirmación
- fields: Puedes tener hasta 4 elementos mostrándose como una tabla en tu perfil
header: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px
inbox_url: Copia la URL de la página principal del relés que quieres utilizar
irreversible: Las publicaciones filtradas desaparecerán irreversiblemente, incluso si este filtro es eliminado más adelante
M config/locales/simple_form.et.yml => config/locales/simple_form.et.yml +0 -1
@@ 39,7 39,6 @@ et:
digest: Saadetakse ainult pärast pikka tegevusetuse perioodi ja ainult siis, kui on saadetud otsesõnumeid
discoverable: Konto on leitav võhivõõraste jaoks soovituste ja trendide sirvimise teel vm sarnaste vahenditega
email: Sulle saadetakse e-posti teel kinnituskiri
- fields: Saad oma profiilil tabelina kuvada kuni 4 asja
header: PNG, GIF või JPG. Kõige rohkem %{size}. Vähendatakse %{dimensions} pikslini
inbox_url: Kopeeri soovitud vahendaja avalehe URL
irreversible: Filtreeritud postitused kaovad taastamatult, isegi kui filter on hiljem eemaldatud
M config/locales/simple_form.eu.yml => config/locales/simple_form.eu.yml +0 -1
@@ 39,7 39,6 @@ eu:
digest: Jarduerarik gabeko epe luze bat eta gero mezu pertsonalen bat jaso baduzu, besterik ez
discoverable: Baimendu zure kontua ezezagunek aurkitu ahal izatea gomendio, joera eta beste ezaugarrien bidez
email: Baieztapen e-mail bat bidaliko zaizu
- fields: 4 elementu bistaratu ditzakezu taula batean zure profilean
header: PNG, GIF edo JPG. Gehienez %{size}. %{dimensions}px eskalara txikituko da
inbox_url: Kopiatu erabili nahi duzun errelearen hasiera orriaren URLa
irreversible: Iragazitako tootak betirako galduko dira, geroago iragazkia kentzen baduzu ere
M config/locales/simple_form.fa.yml => config/locales/simple_form.fa.yml +0 -1
@@ 39,7 39,6 @@ fa:
digest: تنها وقتی فرستاده میشود که مدتی طولانی فعالیتی نداشته باشید و در این مدت برای شما پیغام خصوصیای نوشته شده باشد
discoverable: اجازه دهید حسابتان از طریق پیشنهادها، پرطرفدارها و سایر قابلیتها، توسط افراد غریبه قابل کشف باشد
email: به شما ایمیل تأییدی فرستاده خواهد شد
- fields: شما میتوانید تا چهار مورد را در یک جدول در نمایهٔ خود نمایش دهید
header: یکی از قالبهای PNG یا GIF یا JPG. بیشترین اندازه %{size}. تصویر به اندازهٔ %{dimensions} پیکسل تبدیل خواهد شد
inbox_url: نشانی صفحهٔ اصلی رلهای را که میخواهید به کار ببرید کپی کنید
irreversible: فرستههای پالوده به طور برگشتناپذیری ناپدید میشوند، حتا اگر بعدها پالایه برداشته شود
M config/locales/simple_form.fi.yml => config/locales/simple_form.fi.yml +0 -1
@@ 39,7 39,6 @@ fi:
digest: Lähetetään vain pitkän poissaolon jälkeen ja vain, jos olet saanut suoria viestejä poissaolosi aikana
discoverable: Salli tuntemattomien löytää tilisi suositusten, trendien ja muiden ominaisuuksien kautta
email: Sinulle lähetetään vahvistussähköposti
- fields: Sinulla voi olla korkeintaan 4 asiaa profiilissasi taulukossa
header: PNG, GIF tai JPG. Enintään %{size}. Skaalataan kokoon %{dimensions} px
inbox_url: Kopioi URL-osoite haluamasi välittäjän etusivulta
irreversible: Suodatetut julkaisut katoavat lopullisesti, vaikka suodatin poistettaisiin myöhemmin
M config/locales/simple_form.fo.yml => config/locales/simple_form.fo.yml +0 -1
@@ 39,7 39,6 @@ fo:
digest: Einans sent eftir eitt langt tíðarskeið við óvirkni og einans um tú hevur móttikið persónlig boð meðan tú var burtur
discoverable: Loyv kontu tíni at verða funnin av fremmandum gjøgnum viðmæli, rák og aðrar hentleikar
email: Tú fær sendandi ein váttanarteldupost
- fields: Tú kanst hava upp til 4 lutir vístar sum eina talvu á vanga tínum
header: PNG, GIF ella JPG. Ikki størri enn %{size}. Verður minkað til %{dimensions}px
inbox_url: Avrita URL'in frá forsíðuni hjá reiðlagnum, sum tú vilt brúka
irreversible: Filtreraðir postar blíva burtur med alla, eisini sjálvt um filtrið seinni verður strikað
M config/locales/simple_form.fr-QC.yml => config/locales/simple_form.fr-QC.yml +0 -1
@@ 39,7 39,6 @@ fr-QC:
digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence
discoverable: Permet à votre compte d’être découvert par des inconnus par le biais de recommandations, de tendances et autres fonctionnalités
email: Vous recevrez un courriel de confirmation
- fields: Vous pouvez avoir jusqu’à 4 éléments affichés en tant que tableau sur votre profil
header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px
inbox_url: Copiez l’URL depuis la page d’accueil du relai que vous souhaitez utiliser
irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard
M config/locales/simple_form.fr.yml => config/locales/simple_form.fr.yml +0 -1
@@ 39,7 39,6 @@ fr:
digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence
discoverable: Permet à votre compte d’être découvert par des inconnus par le biais de recommandations, de tendances et autres fonctionnalités
email: Vous recevrez un courriel de confirmation
- fields: Vous pouvez avoir jusqu’à 4 éléments affichés en tant que tableau sur votre profil
header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px
inbox_url: Copiez l’URL depuis la page d’accueil du relais que vous souhaitez utiliser
irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard
M config/locales/simple_form.fy.yml => config/locales/simple_form.fy.yml +0 -1
@@ 39,7 39,6 @@ fy:
digest: Wurdt allinnich nei in lange perioade fan ynaktiviteit ferstjoerd en allinnich wannear’t jo wylst jo ôfwêzigens persoanlike berjochten ûntfongen hawwe
discoverable: Tastean dat jo account te finen is foar ûnbekenden, fia oanrekommandaasjes, trends en op oare manieren
email: Jo krije in befêstigings-e-mailberjocht
- fields: Jo kinne maksimaal 4 items as in tabel op jo profyl werjaan
header: PNG, GIF of JPG. Maksimaal %{size}. Wurdt weromskeald nei %{dimensions}px
inbox_url: Kopiearje de URL fan de foarside fan de relayserver dy’t jo brûke wolle
irreversible: Filtere berjochten ferdwine definityf, sels as it filter letter fuortsmiten wurdt
M config/locales/simple_form.gd.yml => config/locales/simple_form.gd.yml +0 -1
@@ 39,7 39,6 @@ gd:
digest: Cha dèid seo a chur ach nuair a bhios tu air ùine mhòr gun ghnìomh a ghabhail agus ma fhuair thu teachdaireachd phearsanta fhad ’s a bha thu air falbh
discoverable: Ceadaich gun rùraich coigrich an cunntas agad le taic o mholaidhean, treandaichean is gleusan eile
email: Thèid post-d dearbhaidh a chur thugad
- fields: Faodaidh tu suas ri 4 nithean a shealltainn mar chlàr air a’ phròifil agad
header: PNG, GIF or JPG. %{size} air a char as motha. Thèid a sgèileadh sìos gu %{dimensions}px
inbox_url: Dèan lethbhreac dhen URL o phrìomh-dhuilleag an ath-sheachadain a bu mhiann leat cleachdadh
irreversible: Thèid postaichean criathraichte à sealladh gu buan fiù ’s ma bheir thu a’ chriathrag air falbh às dèidh làimhe
M config/locales/simple_form.gl.yml => config/locales/simple_form.gl.yml +0 -1
@@ 39,7 39,6 @@ gl:
digest: Enviar só tras un longo período de inactividade e só se recibiches algunha mensaxe directa na tua ausencia
discoverable: Permite que a túa conta poida ser descuberta por persoas descoñecidas a través de recomendacións, tendencias e outras ferramentas
email: Ímosche enviar un correo de confirmación
- fields: Podes ter ate 4 elementos no teu perfil mostrados como unha táboa
header: PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px
inbox_url: Copiar o URL desde a páxina de inicio do repetidor que queres utilizar
irreversible: As publicacións filtradas desaparecerán de xeito irreversible, incluso se despois se elimina o filtro
M config/locales/simple_form.he.yml => config/locales/simple_form.he.yml +0 -1
@@ 39,7 39,6 @@ he:
digest: נשלח לאחר תקופה ארוכה של אי-פעילות עם סיכום איזכורים שקיבלת בהעדרך
discoverable: אשר/י לחשבונך להתגלות לזרים על ידי המלצות, נושאים חמים ושאר דרכים
email: דוא"ל אישור יישלח אליך
- fields: ניתן להציג עד ארבעה פריטים כטבלה בפרופילך
header: PNG, GIF או JPG. מקסימום %{size}. גודל התמונה יוקטן %{dimensions}px
inbox_url: נא להעתיק את הקישורית מדף הבית של הממסר בו תרצה/י להשתמש
irreversible: הודעות מסוננות יעלמו באופן בלתי הפיך, אפילו אם מאוחר יותר יוסר המסנן
M config/locales/simple_form.hu.yml => config/locales/simple_form.hu.yml +0 -1
@@ 39,7 39,6 @@ hu:
digest: Csak hosszú távollét esetén küldődik és csak ha személyes üzenetet kaptál távollétedben
discoverable: Engedélyezés, hogy a fiókod idegenek által megtalálható legyen javaslatokon, trendeken és más funkciókon keresztül
email: Kapsz egy megerősítő e-mailt
- fields: A profilodon legfeljebb 4 bejegyzés szerepelhet táblázatos formában
header: PNG, GIF vagy JPG. Maximum %{size}. Átméretezzük %{dimensions} pixelre
inbox_url: Másold ki a használandó relé szerver kezdőoldalának URL-jét
irreversible: A kiszűrt bejegyzések visszafordíthatatlanul eltűnnek, a szűrő későbbi törlése esetén is
M config/locales/simple_form.hy.yml => config/locales/simple_form.hy.yml +0 -1
@@ 30,7 30,6 @@ hy:
current_username: Հաստատելու համար խնդրում ենք մուտքագրել տուել հաշուի օգտանունը
digest: Ուղարկուում է պասիւութեան երկար շրջանից յետոյ եւ միայն այն դէպքում, երբ բացակայութեանդ ժամանակ որեւէ անձնական հաղորդագրութիւն ես ստացել
email: Քեզ ուղարկուել է հաստատման իմակ
- fields: Կարող ես ունենալ մինչեւ 4 կէտ հաշուիդ աղիւսակում ցուցադրելու
header: PNG, GIF կամ JPG։ Առաւելագոյնը՝ %{size}։ Կը փոքրացուի մինչեւ %{dimensions}
inbox_url: Պատճէնիր URL այն շերտի դիմերեսից, որը ցանկանում ես օգտագործել
irreversible: Զտուած գրառումները կորչելու են անդառնալիօրէն, նոյնիսկ եթէ զտիչը յետոյ հեռացնես
M config/locales/simple_form.id.yml => config/locales/simple_form.id.yml +0 -1
@@ 37,7 37,6 @@ id:
digest: Hanya kirim setelah lama tidak aktif dan hanya jika Anda menerima pesan personal atas absensi Anda
discoverable: Izinkan akun Anda ditemukan orang lain lewat rekomendasi, tren, dan fitur lain
email: Anda akan dikirimi email konfirmasi
- fields: Anda bisa memiliki hingga 4 item utk ditampilkan sebagai tabel di profil Anda
header: PNG, GIF atau JPG. Maksimal %{size}. Ukuran dikecilkan menjadi %{dimensions}px
inbox_url: Salin URL dari halaman depan relai yang ingin Anda pakai
irreversible: Toot tersaring akan hilang permanen bahkan jika saringan dihapus kemudian
M config/locales/simple_form.io.yml => config/locales/simple_form.io.yml +0 -1
@@ 37,7 37,6 @@ io:
digest: Nur sendesas pos longa neaktiveso e nur se vu ganis irga mesaji dum ke vu esas neprezenta
discoverable: Permisez vua konto deskovresar da nekonociti tra rekomendi, tendenci e altra traiti
email: Vu sendesos konfirmretposto
- fields: On povas havar maxime 4 kozi quo montresas quale tabelo che ona profilo
header: En la formato PNG, GIF o JPG. Til %{size}. Esos mikrigita a %{dimensions}px
inbox_url: Kopiez URL de frontpagino de relayo quon vu volas uzar
irreversible: Filtrita posti neinversigeble desaparos, mem se filtro efacesas pose
M config/locales/simple_form.is.yml => config/locales/simple_form.is.yml +0 -1
@@ 39,7 39,6 @@ is:
digest: Er aðeins sent eftir lengri tímabil án virkni og þá aðeins ef þú hefur fengið persónuleg skilaboð á meðan þú hefur ekki verið á línunni
discoverable: Gerðu öðrum kleift að finna aðganginn þinn í gegnum meðmæli, vinsældir og annað slíkt
email: Þú munt fá sendan staðfestingarpóst
- fields: Þú getur birt allt að 4 atriði sem töflu á notandasniðinu þínu
header: PNG, GIF eða JPG. Mest %{size}. Verður smækkað í %{dimensions}px
inbox_url: Afritaðu slóðina af forsíðu endurvarpans sem þú vilt nota
irreversible: Síaðar færslur munu hverfa óendurkræft, jafnvel þó sían sé seinna fjarlægð
M config/locales/simple_form.it.yml => config/locales/simple_form.it.yml +0 -1
@@ 39,7 39,6 @@ it:
digest: Inviata solo dopo un lungo periodo di inattività e solo se hai ricevuto qualche messaggio personale in tua assenza
discoverable: Consenti al tuo account di essere scoperto da sconosciuti tramite consigli, tendenze e altre funzionalità
email: Ti manderemo una email di conferma
- fields: Puoi avere fino a 4 voci visualizzate come una tabella sul tuo profilo
header: PNG, GIF o JPG. Al massimo %{size}. Verranno scalate a %{dimensions}px
inbox_url: Copia la URL dalla pagina iniziale del ripetitore che vuoi usare
irreversible: I post filtrati scompariranno in modo irreversibile, anche se il filtro viene eliminato
M config/locales/simple_form.ja.yml => config/locales/simple_form.ja.yml +0 -1
@@ 39,7 39,6 @@ ja:
digest: 長期間使用していない場合と不在時に返信を受けた場合のみ送信されます
discoverable: レコメンド、トレンド、その他の機能により、あなたのアカウントを他の人から見つけられるようにします
email: 確認のメールが送信されます
- fields: プロフィールに表として4つまでの項目を表示することができます
header: "%{size}までのPNG、GIF、JPGが利用可能です。 %{dimensions}pxまで縮小されます"
inbox_url: 使用したいリレーサーバーのトップページからURLをコピーします
irreversible: フィルターが後で削除されても、除外された投稿は元に戻せなくなります
M config/locales/simple_form.ka.yml => config/locales/simple_form.ka.yml +0 -1
@@ 8,7 8,6 @@ ka:
bot: ეს ანგარიში უმთავრესად ასრულებს ავტომატურ მოქმედებებს და შესაძლოა არ იყოს მონიტორინგის ქვეშ
context: ერთ ან მრავალი კონტექსტი სადაც ფილტრი უნდა შესრულდეს
digest: იგზავნება მხოლოდ ხანგრძლივი უაქტივობის პერიოდის შემდეგ და არყოფნისას თუ მიიღეთ ერთი წერილი მაინც
- fields: პროფილზე ტაბულის სახით შესაძლოა საჩვენებლად გაგაჩნდეთ მაქს. 4 პუნქტი
header: პნგ, გიფ ან ჯპგ. მაქს. %{size}. ზომა დაპატარავდება %{dimensions}პიქს.-ზე
inbox_url: ურლ დააკოირეთ გამოყენებისთვის სასურველი რილეის წინა გვერდიდან
irreversible: გაფილტრული ტუტები გაუქმდება აღუდგენლად, იმ შემთხვევაშიც კი თუ ფილტრი სამომავლოდ გაუქმდება
M config/locales/simple_form.ko.yml => config/locales/simple_form.ko.yml +0 -1
@@ 39,7 39,6 @@ ko:
digest: 오랫동안 활동하지 않았을 때 받은 멘션들에 대한 요약 받기
discoverable: 추천, 트렌드 및 기타 기능을 통해 낯선 사람이 내 계정을 발견할 수 있도록 허용합니다
email: 당신은 확인 메일을 받게 됩니다
- fields: 프로필에 최대 4개의 항목을 표 형식으로 표시할 수 있습니다.
header: PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소 됨
inbox_url: 사용 할 릴레이 서버의 프론트페이지에서 URL을 복사합니다
irreversible: 필터링 된 게시물은 나중에 필터가 사라지더라도 돌아오지 않게 됩니다
M config/locales/simple_form.ku.yml => config/locales/simple_form.ku.yml +0 -1
@@ 37,7 37,6 @@ ku:
digest: Tenê piştî demek dirêj neçalakiyê de û tenê di nebûna te da peyamên teybetî standî be tê şandin
discoverable: Mafê biden ku ajimêra te bi pêşniyar û taybetmendiyên din ji aliyê biyaniyan ve bê vedîtin
email: Ji te re e-name ya pejirandinê were
- fields: Tu dikarî heya 4 hêmanan wekî tabloyek li ser profîla xwe nîşan bidî
header: PNG, GIF an jî JPG. Herî zêde %{size} ber bi %{dimensions}px ve were kêmkirin
inbox_url: Girêdanê ji rûpela pêşîn a guhêrkera ku tu dixwazî bi kar bînî jê bigire
irreversible: Şandiyên parzûnkirî êdî bê veger wenda bibe, heger parzûn paşê were rakirin jî nabe
M config/locales/simple_form.lv.yml => config/locales/simple_form.lv.yml +0 -1
@@ 39,7 39,6 @@ lv:
digest: Sūta tikai pēc ilgstošas neaktivitātes un tikai tad, ja savas prombūtnes laikā neesi saņēmis personiskas ziņas
discoverable: Ļauj svešiniekiem atklāt savu kontu caur ieteikumiem, tendencēm un citām iespējām
email: Tev tiks nosūtīts apstiprinājuma e-pasts
- fields: Savā profilā kā tabulu vari parādīt līdz 4 vienumiem
header: PNG, GIF vai JPG. Ne vairāk kā %{size}. Tiks samazināts līdz %{dimensions}px
inbox_url: Nokopē URL no tā releja sākumlapas, kuru vēlies izmantot
irreversible: Filtrētās ziņas neatgriezeniski pazudīs, pat ja filtrs vēlāk tiks noņemts
M config/locales/simple_form.my.yml => config/locales/simple_form.my.yml +0 -1
@@ 39,7 39,6 @@ my:
digest: အချိန်အတော်ကြာ အသုံးမပြုသည့်သည့်နောက်တွင်သာ ပေးပို့ပြီး အသုံးမပြုသည့်ကာလအတွင်း ကိုယ်ရေးကိုယ်တာစာများသာ လက်ခံရန်
discoverable: အကြံပြုချက်များ၊ လက်ရှိခေတ်စားနေသောပို့စ်များနှင့် အခြားအကြောင်းအရာများမှတစ်ဆင့် သင့်အကောင့်ကို တခြားသူများက တွေ့ရှိနိုင်စေရန် ခွင့်ပြုပါ။
email: သင့်ထံ အတည်ပြုချက်အီးမေးလ်တစ်စောင် ပေးပို့ပါမည်
- fields: သင့်ပရိုဖိုင်တွင် ၄ ခုအထိ ပြသထားနိုင်သည်
header: PNG၊ GIF သို့မဟုတ် JPG။ အများဆုံး %{size}။ %{dimensions}px သို့ လျှော့ချပါမည်
inbox_url: သင်အသုံးပြုလိုသော relay ၏ ရှေ့စာမျက်နှာမှ URL ကို ကူးယူပါ
irreversible: စစ်ထုတ်ခြင်းကိုဖယ်ရှားလိုက်ပါက စစ်ထုတ်ထားသော ပို့စ်များမှာ ပျောက်ကွယ်သွားပါမည်
M config/locales/simple_form.nl.yml => config/locales/simple_form.nl.yml +0 -1
@@ 39,7 39,6 @@ nl:
digest: Wordt alleen na een lange periode van inactiviteit verzonden en alleen wanneer je tijdens jouw afwezigheid persoonlijke berichten hebt ontvangen
discoverable: Toestaan dat jouw account vindbaar is voor onbekenden, via aanbevelingen, trends en op andere manieren
email: Je krijgt een bevestigingsmail
- fields: Je kunt maximaal 4 items als een tabel op je profiel weergeven
header: PNG, GIF of JPG. Maximaal %{size}. Wordt teruggeschaald naar %{dimensions}px
inbox_url: Kopieer de URL van de voorpagina van de relayserver die je wil gebruiken
irreversible: Gefilterde berichten verdwijnen onomkeerbaar, zelfs als de filter later wordt verwijderd
M config/locales/simple_form.nn.yml => config/locales/simple_form.nn.yml +0 -1
@@ 37,7 37,6 @@ nn:
digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte
discoverable: La kontoen din bli oppdaga av ukjende gjennom anbefalingar, trendar og andre funksjonar
email: Du får snart ein stadfestings-e-post
- fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din
header: PNG, GIF eller JPG. Maksimalt %{size}. Minkast til %{dimensions}px
inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke
irreversible: Filtrerte tut vil verta borte for evig, sjølv om filteret vert fjerna seinare
M config/locales/simple_form.no.yml => config/locales/simple_form.no.yml +0 -1
@@ 37,7 37,6 @@
digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte
discoverable: La kontoen din bli oppdaget av ukjente gjennom anbefalinger, trender og andre funksjoner
email: Du vil bli tilsendt en bekreftelses-E-post
- fields: Du kan ha opptil 4 gjenstander vist som en tabell på profilsiden din
header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px
inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke
irreversible: Filtrerte innlegg vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet
M config/locales/simple_form.oc.yml => config/locales/simple_form.oc.yml +0 -1
@@ 32,7 32,6 @@ oc:
current_username: Per confirmar, volgatz picar lo nom d’utilizaire del compte actual
digest: Solament enviat aprèp un long moment d’inactivitat e solament s’avètz recebut de messatges personals pendent vòstra abséncia
email: Vos mandarem un corrièl de confirmacion
- fields: Podètz far veire cap a 4 elements sus vòstre perfil
header: PNG, GIF o JPG. Maximum %{size}. Serà retalhada en %{dimensions}px
inbox_url: Copiatz l’URL de la pagina màger del relai que volètz utilizar
irreversible: Los tuts filtrats desapareisseràn irreversiblament, encara que lo filtre siá suprimit mai tard
M config/locales/simple_form.pl.yml => config/locales/simple_form.pl.yml +0 -1
@@ 39,7 39,6 @@ pl:
digest: Wysyłane tylko po długiej nieaktywności, jeżeli w tym czasie otrzymaleś jakąś wiadomość bezpośrednią
discoverable: Pozwala na odkrywanie twojego konta przez nieznajomych poprzez rekomendacje, popularne wpisy i inne funkcje
email: Otrzymasz e-mail potwierdzający
- fields: Możesz ustawić maksymalnie 4 niestandardowe pola wyświetlane jako tabela na Twoim profilu
header: PNG, GIF lub JPG. Maksymalnie %{size}. Zostanie zmniejszony do %{dimensions}px
inbox_url: Skopiuj adres ze strony głównej przekaźnika, którego chcesz użyć
irreversible: Filtrowane wpisy znikną bezpowrotnie, nawet gdy filtr zostanie usunięty
M config/locales/simple_form.pt-BR.yml => config/locales/simple_form.pt-BR.yml +0 -1
@@ 39,7 39,6 @@ pt-BR:
digest: Enviado apenas após um longo período de inatividade com um resumo das menções recebidas durante ausência
discoverable: Permita que a sua conta seja descoberta por estranhos através de recomendações, tendências e outros recursos
email: Você receberá um e-mail de confirmação
- fields: Você pode ter até 4 itens mostrados em forma de tabela no seu perfil
header: PNG, GIF ou JPG de até %{size}. Serão redimensionados para %{dimensions}px
inbox_url: Copie o link da página inicial do repetidor que você deseja usar
irreversible: As publicações filtradas desaparecerão irreversivelmente, mesmo se o filtro for removido depois
M config/locales/simple_form.pt-PT.yml => config/locales/simple_form.pt-PT.yml +0 -1
@@ 39,7 39,6 @@ pt-PT:
digest: Enviado após um longo período de inatividade e apenas se foste mencionado na tua ausência
discoverable: Permitir que a sua conta seja descoberta por outros através de recomendações, destaques e outras funções
email: Será enviado um e-mail de confirmação
- fields: Pode ter até 4 elementos expostos, em forma de tabela, no seu perfil
header: PNG, GIF ou JPG. Ficheiros no máximo de %{size}. Serão reduzidos para %{dimensions}px
inbox_url: Copie o URL da página inicial do repetidor que quer usar
irreversible: Publicações filtradas irão desaparecer irremediavelmente, mesmo que o filtro seja removido posteriormente
M config/locales/simple_form.ro.yml => config/locales/simple_form.ro.yml +0 -1
@@ 30,7 30,6 @@ ro:
current_username: Pentru a confirma, vă rugăm să introduceţi numele de utilizator al contului curent
digest: Este trimis doar după o lungă perioadă de inactivitate și numai dacă primești mesaje personale în perioada de absență
email: Vei primi un e-mail de confirmare
- fields: Poti afișa pană la maxim 4 adrese sub formă de tabel pe pofilul tău
header: PNG, GIF sau JPG. Cel mult %{size}. Vor fi redimensionate la %{dimensions}px
inbox_url: Copiază adresa URL de pe prima pagină a reului pe care vrei să îl utilizezi
irreversible: Postările sortate vor dispărea ireversibil, chiar dacă filtrul este ulterior șters
M config/locales/simple_form.ru.yml => config/locales/simple_form.ru.yml +0 -1
@@ 39,7 39,6 @@ ru:
digest: Если вы долго не заглядывали, отправим вам дайджест событий, которые происходили в период вашего отсутствия.
discoverable: Разрешить другим людям находить ваш профиль через рекомендации, тренды и другие функции.
email: Вам будет отправлено электронное письмо с подтверждением.
- fields: В профиле можно отобразить до 4 пунктов в виде таблицы. Например, ваши местоимения, часовой пояс или ссылку на свой сайт.
header: Поддерживается PNG, GIF и JPG. Максимальный размер — %{size}. Будет уменьшена до %{dimensions}px.
inbox_url: Копировать URL с главной страницы ретранслятора, который вы хотите использовать
irreversible: Отфильтрованные посты будут утеряны навсегда, даже если в будущем фильтр будет убран
M config/locales/simple_form.sc.yml => config/locales/simple_form.sc.yml +0 -1
@@ 34,7 34,6 @@ sc:
current_username: Pro cunfirmare inserta su nòmine utente de su contu atuale
digest: Imbiadu isceti a pustis de unu perìodu longu de inatividade, e isceti si as retzidu calicunu messàgiu personale cando non bi fias
email: As a retzire unu messàgiu eletrònicu de cunfirma
- fields: Podes tènnere finas a 4 elementos ammustrados in una tabella in su profilu tuo
header: PNG, GIF o JPG. Màssimu %{size}. Ant a èssere iscaladas a %{dimensions}px
inbox_url: Còpia s'URL dae sa pàgina printzipale de su ripetidore chi boles impreare
irreversible: Is tuts filtrados ant a isparèssere in manera irreversìbile, fintzas si prus a tardu s'at a bogare su filtru
M config/locales/simple_form.sco.yml => config/locales/simple_form.sco.yml +0 -1
@@ 37,7 37,6 @@ sco:
digest: Ainly sent efter a lang whilie o inactivity an ainly if ye'v gotten onie personal messages whilst ye wis awa
discoverable: Alloo yer accoont fir tae get discovert bi strangers throu recommendations, trends an ither features
email: Ye'll be sent a confirmation email
- fields: Ye kin hae up tae 4 items displayed as a table on yer profile
header: PNG, GIF or JPG. At maist %{size}. Wull get doonscaled tae %{dimensions}px
inbox_url: Copy the URL fae the frontpage o the relay thit ye'r wantin tae uise
irreversible: Filtert posts wull dizappear irreversibly, even if filter is taen aff efter
M config/locales/simple_form.si.yml => config/locales/simple_form.si.yml +0 -1
@@ 37,7 37,6 @@ si:
digest: දිගු කාලයක් අක්රියව සිටීමෙන් පසුව පමණක් යවන ලද අතර ඔබ නොමැති විට ඔබට කිසියම් පුද්ගලික පණිවිඩයක් ලැබී ඇත්නම් පමණි
discoverable: නිර්දේශ, ප්රවණතා සහ වෙනත් විශේෂාංග හරහා ඔබේ ගිණුම ආගන්තුකයන්ට සොයා ගැනීමට ඉඩ දෙන්න
email: ඔබට තහවුරු කිරීමේ විද්යුත් තැපෑලක් එවනු ලැබේ
- fields: ඔබට ඔබගේ පැතිකඩෙහි වගුවක් ලෙස අයිතම 4ක් දක්වා පෙන්විය හැක
header: PNG, GIF හෝ JPG. වැඩිම %{size}. %{dimensions}px දක්වා අඩු කරනු ඇත
inbox_url: ඔබට භාවිතා කිරීමට අවශ්ය රිලේ හි මුල් පිටුවෙන් URL එක පිටපත් කරන්න
irreversible: පෙරහන පසුව ඉවත් කළද, පෙරූ පළ කිරීම් ආපසු හැරවිය නොහැකි ලෙස අතුරුදහන් වනු ඇත
M config/locales/simple_form.sk.yml => config/locales/simple_form.sk.yml +0 -1
@@ 23,7 23,6 @@ sk:
current_username: Pre potvrdenie prosím zadaj prezývku súčasného účtu
digest: Odoslané iba v prípade dlhodobej neprítomnosti, a len ak si obdržal/a nejaké osobné správy kým si bol/a preč
email: Bude ti odoslaný potvrdzujúci email
- fields: Až štyri položky môžeš mať na svojom profile zobrazené vo forme tabuľky
header: PNG, GIF, alebo JPG. Maximálne %{size}. Bude zmenšený na %{dimensions}px
inbox_url: Skopíruj adresu z hlavnej stránky mostíka, ktorý chceš používať
irreversible: Vytriedené príspevky zmiznú nenávratne, aj keď triedenie neskôr zrušíš
M config/locales/simple_form.sl.yml => config/locales/simple_form.sl.yml +0 -1
@@ 39,7 39,6 @@ sl:
digest: Pošlje se le po dolgem obdobju nedejavnosti in samo, če ste prejeli osebna sporočila v vaši odsotnosti
discoverable: Dovolite, da vaš račun odkrijejo neznanci prek priporočil, trendov in drugih funkcij
email: Poslali vam bomo potrditveno e-pošto
- fields: Na svojem profilu lahko imate do 4 predmete prikazane kot tabelo.
header: PNG, GIF ali JPG. Največ %{size}. Zmanjšana bo na %{dimensions}px
inbox_url: Kopirajte URL naslov s prve strani releja, ki ga želite uporabiti
irreversible: Filtrirane objave bodo nepovratno izginile, tudi če je filter kasneje odstranjen
M config/locales/simple_form.sq.yml => config/locales/simple_form.sq.yml +0 -1
@@ 39,7 39,6 @@ sq:
digest: I dërguar vetëm pas një periudhe të gjatë pasiviteti dhe vetëm nëse keni marrë ndonjë mesazh personal gjatë mungesës tuaj
discoverable: Lejoni që llogaria juaj të zbulohet nga të huaj përmes rekomandimesh, gjërash në modë dhe veçorish të tjera
email: Do t’ju dërgohet një email ripohimi
- fields: Te profili juaj mund të keni deri në 4 objekte të shfaqur si tabelë
header: PNG, GIF ose JPG. E shumta %{size}. Do të ripërmasohet në %{dimensions}px
inbox_url: Kopjoni URL-në prej faqes ballore të relesë që doni të përdorni
irreversible: Mesazhet e filtruar do të zhduken në mënyrë të pakthyeshme, edhe nëse filtri hiqet më vonë
M config/locales/simple_form.sr-Latn.yml => config/locales/simple_form.sr-Latn.yml +0 -1
@@ 39,7 39,6 @@ sr-Latn:
digest: Šalje se samo posle dužeg perioda neaktivnosti i samo u slučaju da ste primili jednu ili više ličnih poruka tokom Vašeg odsustva
discoverable: Dozvolite nepoznatim korisnicima da otkriju Vaš nalog putem preporuka, trendova i drugih funkcija
email: Biće Vam poslat mejl sa potvrdom
- fields: Možete imati do 4 stavke prikazane kao tabela na svom profilu
header: PNG, GIF ili JPG. Najviše %{size}. Biće smanjeno na %{dimensions}px
inbox_url: Kopirajte URL sa naslovne strane releja koji želite koristiti
irreversible: Filtrirane obajve će nestati nepovratno, čak i ako je filter kasnije uklonjen
M config/locales/simple_form.sr.yml => config/locales/simple_form.sr.yml +0 -1
@@ 39,7 39,6 @@ sr:
digest: Шаље се само после дужег периода неактивности и само у случају да сте примили једну или више личних порука током Вашег одсуства
discoverable: Дозволите непознатим корисницима да открију Ваш налог путем препорука, трендова и других функција
email: Биће Вам послат мејл са потврдом
- fields: Можете имати до 4 ставке приказане као табела на свом профилу
header: PNG, GIF или JPG. Највише %{size}. Биће смањено на %{dimensions}px
inbox_url: Копирајте URL са насловне стране релеја који желите користити
irreversible: Филтриранe обајве ће нестати неповратно, чак и ако је филтер касније уклоњен
M config/locales/simple_form.sv.yml => config/locales/simple_form.sv.yml +0 -1
@@ 39,7 39,6 @@ sv:
digest: Skickas endast efter en lång period av inaktivitet och endast om du har fått några personliga meddelanden i din frånvaro
discoverable: Tillåt att ditt konto upptäcks av främlingar genom rekommendationer, trender och andra funktioner
email: Du kommer att få ett bekräftelsemeddelande via e-post
- fields: Du kan ha upp till 4 objekt visade som en tabell på din profil
header: PNG, GIF eller JPG. Högst %{size}. Kommer att skalas ner till %{dimensions}px
inbox_url: Kopiera webbadressen från hemsidan av det ombud du vill använda
irreversible: Filtrerade inlägg kommer att försvinna oåterkalleligt, även om filter tas bort senare
M config/locales/simple_form.th.yml => config/locales/simple_form.th.yml +0 -1
@@ 39,7 39,6 @@ th:
digest: ส่งเฉพาะหลังจากไม่มีการใช้งานเป็นเวลานานและในกรณีที่คุณได้รับข้อความส่วนบุคคลใด ๆ เมื่อคุณไม่อยู่เท่านั้น
discoverable: อนุญาตให้คนแปลกหน้าค้นพบบัญชีของคุณได้ผ่านคำแนะนำ, แนวโน้ม และคุณลักษณะอื่น ๆ
email: คุณจะได้รับอีเมลการยืนยัน
- fields: คุณสามารถมีได้มากถึง 4 รายการแสดงเป็นตารางในโปรไฟล์ของคุณ
header: PNG, GIF หรือ JPG สูงสุด %{size} จะได้รับการย่อขนาดเป็น %{dimensions}px
inbox_url: คัดลอก URL จากหน้าแรกของรีเลย์ที่คุณต้องการใช้
irreversible: โพสต์ที่กรองอยู่จะหายไปอย่างถาวร แม้ว่าจะเอาตัวกรองออกในภายหลังก็ตาม
M config/locales/simple_form.tr.yml => config/locales/simple_form.tr.yml +0 -1
@@ 39,7 39,6 @@ tr:
digest: Sadece uzun bir süre hareketsiz kaldıktan sonra ve yalnızca yokluğunuzda herhangi bir kişisel mesaj aldıysanız gönderilir
discoverable: Hesabınızın öneriler, trendler ve diğer özellikler aracılığıyla yabancılar tarafından keşfedilmesine izin verin
email: Onay e-postası gönderilir
- fields: Profilinizde tablo olarak görüntülenen en fazla 4 ögeye sahip olabilirsiniz
header: PNG, GIF ya da JPG. En fazla %{size}. %{dimensions}px boyutuna küçültülecek
inbox_url: Kullanmak istediğiniz aktarıcının ön sayfasından URL'yi kopyalayın
irreversible: Filtrelenmiş gönderiler, filtre daha sonra kaldırılsa bile, geri dönüşümsüz biçimde kaybolur
M config/locales/simple_form.uk.yml => config/locales/simple_form.uk.yml +0 -1
@@ 39,7 39,6 @@ uk:
digest: Буде послано тільки після довгого періоду неактивності, та тільки якщо ви отримаєте персональне повідомлення у цей період
discoverable: Дозволити знаходити ваш обліковий запис стороннім людям за допомогою рекомендацій, трендів та інших функцій
email: Вам надійде електронний лист з підтвердженням
- fields: У вашому профілі може бути показано таблицю з 4 елементів
header: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px
inbox_url: Скопіюйте інтернет-адресу з титульної сторінки ретранслятора
irreversible: Відфільтровані дописи зникнуть назавжди, навіть якщо фільтр потім буде вилучено
M config/locales/simple_form.vi.yml => config/locales/simple_form.vi.yml +0 -1
@@ 39,7 39,6 @@ vi:
digest: Chỉ gửi sau một thời gian dài không hoạt động hoặc khi bạn nhận được tin nhắn (trong thời gian vắng mặt)
discoverable: Cho phép tài khoản của bạn xuất hiện trong gợi ý theo dõi, thịnh hành và những tính năng khác
email: Bạn sẽ được gửi một email xác nhận
- fields: Được phép thêm tối đa 4 mục trên trang hồ sơ của bạn
header: PNG, GIF hoặc JPG, tối đa %{size}. Sẽ bị nén xuống %{dimensions}px
inbox_url: Sao chép URL của máy chủ mà bạn muốn dùng
irreversible: Các tút đã lọc sẽ không thể phục hồi, kể cả sau khi xóa bộ lọc
M config/locales/simple_form.zh-CN.yml => config/locales/simple_form.zh-CN.yml +0 -1
@@ 39,7 39,6 @@ zh-CN:
digest: 仅在你长时间未登录,且收到了私信时发送
discoverable: 允许他人通过推荐、热门和其他途径发现你的账户
email: 我们会向你发送一封确认邮件
- fields: 这将会在个人资料页上以表格的形式展示,最多 4 个项目
header: 文件大小限制 %{size},只支持 PNG、GIF 或 JPG 格式。图片分辨率将会压缩至 %{dimensions}px
inbox_url: 从你想要使用的中继站的主页上复制 URL
irreversible: 已过滤的嘟文会不可逆转地消失,即便移除过滤器之后也一样
M config/locales/simple_form.zh-HK.yml => config/locales/simple_form.zh-HK.yml +0 -1
@@ 39,7 39,6 @@ zh-HK:
digest: 僅在你長時間未登錄,且收到了私信時發送
discoverable: 允許陌生人從推薦、趨勢及其他功能發現你的帳號
email: 你將收到一封確認電郵
- fields: 個人資料頁可顯示多至 4 個項目
header: 支援 PNG, GIF 或 JPG 圖片,檔案最大為 %{size},會縮裁成 %{dimensions}px
inbox_url: 在你想要使用的中繼站首頁,複製它的網址
irreversible: 文章過濾是不可還原的,即使日後過濾器被移除,也無法重新看到被它濾走的文章
M config/locales/simple_form.zh-TW.yml => config/locales/simple_form.zh-TW.yml +0 -1
@@ 39,7 39,6 @@ zh-TW:
digest: 僅在您長時間未登入且在未登入期間收到私訊時傳送
discoverable: 允許陌生人透過推薦、熱門趨勢及其他功能發現您的帳號
email: 您將收到一封確認電子郵件
- fields: 您可在個人檔案上有至多 4 個以表格形式顯示的項目
header: 支援 PNG、GIF 或 JPG 圖片格式,檔案最大為 %{size},會等比例縮減至 %{dimensions} 像素
inbox_url: 從您想要使用的中繼首頁複製網址
irreversible: 已過濾的嘟文將會不可逆地消失,即便之後移除過濾器也一樣
M config/locales/sk.yml => config/locales/sk.yml +0 -1
@@ 680,7 680,6 @@ sk:
warning: Na tieto údaje dávaj ohromný pozor. Nikdy ich s nikým nezďieľaj!
your_token: Tvoj prístupový token
auth:
- change_password: Heslo
delete_account: Vymaž účet
delete_account_html: Pokiaľ chceš svoj účet odtiaľto vymazať, môžeš tak <a href="%{path}">urobiť tu</a>. Budeš požiadaný/á o potvrdenie tohto kroku.
description:
M config/locales/sl.yml => config/locales/sl.yml +0 -2
@@ 1015,7 1015,6 @@ sl:
your_token: Vaš dostopni žeton
auth:
apply_for_account: Zaprosite za račun
- change_password: Geslo
confirmations:
wrong_email_hint: Če ta e-poštni naslov ni pravilen, ga lahko spremenite v nastavitvah računa.
delete_account: Izbriši račun
@@ 1768,7 1767,6 @@ sl:
seamless_external_login: Prijavljeni ste prek zunanje storitve, tako da nastavitve gesla in e-pošte niso na voljo.
signed_in_as: 'Vpisani kot:'
verification:
- explanation_html: '<strong>V metapodatkih svojega profila se lahko potrdite kot lastnik povezav</strong>. Za to mora povezano spletno mesto vsebovati povezavo do vašega profila Mastodon. Po dodajanju povezave se boste morda morali vrniti sem in ponovno shraniti svoj profil, da bo overjanje učinkovalo. Povezava <strong>mora</strong> imeti atribut <code>el="me"</code>. Vsebina besedila povezave ni pomembna. Tukaj je primer:'
verification: Potrditev
webauthn_credentials:
add: Dodaj nov varnostni ključ
M config/locales/sq.yml => config/locales/sq.yml +0 -2
@@ 973,7 973,6 @@ sq:
your_token: Token-i juaj për hyrje
auth:
apply_for_account: Kërkoni një llogari
- change_password: Fjalëkalim
confirmations:
wrong_email_hint: Nëse ajo adresë email s’është e saktë, mund ta ndryshoni te rregullimet e llogarisë.
delete_account: Fshije llogarinë
@@ 1697,7 1696,6 @@ sq:
seamless_external_login: Jeni futur përmes një shërbimi të jashtëm, ndaj s’ka rregullime fjalëkalimi dhe email.
signed_in_as: 'I futur si:'
verification:
- explanation_html: 'Mundeni të <strong>verifikoni veten si i zoti i lidhjeve që nga tejtëdhëna të profilit tuaj</strong>. Për këtë, sajti i lidhur duhet të përmbajë një lidhje që shpie te profili juaj Mastodon. Pas shtimit të lidhjes mund t’ju duhet të ktheheni këtu dhe të riruani profilin tuaj, që verifikimi të ketë efekt. Lidhja e kthimit <strong>duhet</strong> të përmbajë një atribut <code>rel="me"</code>. Teksi i lidhjes s’ka rëndësi. Ja një shembull:'
verification: Verifikim
webauthn_credentials:
add: Shtoni kyç të ri sigurie
M config/locales/sr-Latn.yml => config/locales/sr-Latn.yml +0 -1
@@ 995,7 995,6 @@ sr-Latn:
your_token: Vaš pristupni token
auth:
apply_for_account: Zatražite nalog
- change_password: Lozinka
confirmations:
wrong_email_hint: Ako ta imejl adresa nije ispravna, možete je promeniti u podešavanjima naloga.
delete_account: Brisanje naloga
M config/locales/sr.yml => config/locales/sr.yml +0 -2
@@ 997,7 997,6 @@ sr:
your_token: Ваш приступни токен
auth:
apply_for_account: Затражите налог
- change_password: Лозинка
confirmations:
wrong_email_hint: Ако та имејл адреса није исправна, можете је променити у подешавањима налога.
delete_account: Брисање налога
@@ 1736,7 1735,6 @@ sr:
seamless_external_login: Пријављени сте путем спољашње услуге, тако да лозинка и подешавања Е-поште нису доступни.
signed_in_as: 'Пријављен/а као:'
verification:
- explanation_html: 'Можете да се <strong>верификујете као власник веза у метаподацима профила</strong>. За то је потребно да повезани веб сајт мора садржати везу до вашег Mastodon профила. Након што додате везу, можда ћете морати да се вратите овде и поново сачувате свој профил да би верификација ступила на снагу. Повратна веза <strong>мора</strong> имати атрибут <code>rel="me"</code>. Текстуални садржај везе није битан. Ево примера:'
verification: Провера
webauthn_credentials:
add: Додајте нови сигурносни кључ
M config/locales/sv.yml => config/locales/sv.yml +0 -2
@@ 979,7 979,6 @@ sv:
your_token: Din access token
auth:
apply_for_account: Ansök om konto
- change_password: Lösenord
confirmations:
wrong_email_hint: Om e-postadressen inte är rätt, kan du ändra den i kontoinställningarna.
delete_account: Radera konto
@@ 1697,7 1696,6 @@ sv:
seamless_external_login: Du är inloggad via en extern tjänst, inställningar för lösenord och e-post är därför inte tillgängliga.
signed_in_as: 'Inloggad som:'
verification:
- explanation_html: 'Du kan <strong>bekräfta att du är ägare till länkarna i dina profilmetadata</strong>. För detta krävs att den länkade webbplatsen innehåller en länk tillbaka till din Mastodon-profil. När du har lagt till länken kan du behöva komma tillbaka hit och spara din profil på nytt för att verifieringen ska träda i kraft. Tillbakalänken <strong>måste</strong> ha attributet <code>rel="me"</code>. Länkens textinnehåll spelar ingen roll. Här är ett exempel:'
verification: Bekräftelse
webauthn_credentials:
add: Lägg till ny säkerhetsnyckel
M config/locales/th.yml => config/locales/th.yml +0 -2
@@ 961,7 961,6 @@ th:
your_token: โทเคนการเข้าถึงของคุณ
auth:
apply_for_account: ขอบัญชี
- change_password: รหัสผ่าน
confirmations:
wrong_email_hint: หากที่อยู่อีเมลนั้นไม่ถูกต้อง คุณสามารถเปลี่ยนที่อยู่อีเมลได้ในการตั้งค่าบัญชี
delete_account: ลบบัญชี
@@ 1672,7 1671,6 @@ th:
seamless_external_login: คุณได้เข้าสู่ระบบผ่านบริการภายนอก ดังนั้นจึงไม่มีการตั้งค่ารหัสผ่านและอีเมล
signed_in_as: 'ลงชื่อเข้าเป็น:'
verification:
- explanation_html: 'คุณสามารถ <strong>ยืนยันตัวคุณเองว่าเป็นเจ้าของของลิงก์ในข้อมูลอภิพันธุ์โปรไฟล์ของคุณ</strong> สำหรับสิ่งนั้น เว็บไซต์ที่เชื่อมโยงต้องมีลิงก์ย้อนกลับไปยังโปรไฟล์ Mastodon ของคุณ หลังจากการเพิ่มลิงก์คุณอาจจำเป็นต้องกลับมาที่นี่และบันทึกโปรไฟล์ของคุณใหม่เพื่อให้การตรวจสอบมีผล ลิงก์ย้อนกลับ <strong>ต้อง</strong> มีแอตทริบิวต์ <code>rel="me"</code> เนื้อหาข้อความของลิงก์ไม่สำคัญ นี่คือตัวอย่าง:'
verification: การตรวจสอบ
webauthn_credentials:
add: เพิ่มกุญแจความปลอดภัยใหม่
M config/locales/tr.yml => config/locales/tr.yml +0 -2
@@ 979,7 979,6 @@ tr:
your_token: Erişim belirteciniz
auth:
apply_for_account: Bir hesap talep et
- change_password: Parola
confirmations:
wrong_email_hint: Eğer bu e-posta adresi doğru değilse, hesap ayarlarında değiştirebilirsiniz.
delete_account: Hesabı sil
@@ 1704,7 1703,6 @@ tr:
seamless_external_login: Harici bir servis aracılığıyla oturum açtınız, bu nedenle parola ve e-posta ayarları mevcut değildir.
signed_in_as: 'Oturum açtı:'
verification:
- explanation_html: '<strong>Profil meta verisindeki bağlantıların sahibi olarak kendinizi doğrulayabilirsiniz</strong>. Bunun için, bağlantısı verilen web sitesi Mastodon profilinize bir bağlantı içermelidir. Doğrulamanın gerçekleşmesi için bağlantıyı ekledikten sonra buraya gelip profilinizi tekrar kaydetmelisiniz. Geri bağlantı bir <code>rel="me"</code> özelliğine sahip <strong>olmalıdır</strong>. Bağlantının metin içeriği önemli değildir. İşte bir örnek:'
verification: Doğrulama
webauthn_credentials:
add: Yeni güvenlik anahtarı ekle
M config/locales/tt.yml => config/locales/tt.yml +0 -1
@@ 111,7 111,6 @@ tt:
application_mailer:
salutation: "%{name},"
auth:
- change_password: Серсүз
login: Керү
providers:
cas: САS
M config/locales/uk.yml => config/locales/uk.yml +0 -2
@@ 1015,7 1015,6 @@ uk:
your_token: Ваш токен доступу
auth:
apply_for_account: Запит облікового запису
- change_password: Пароль
confirmations:
wrong_email_hint: Якщо ця адреса електронної пошти неправильна, можна змінити її в налаштуваннях облікового запису.
delete_account: Видалити обліковий запис
@@ 1768,7 1767,6 @@ uk:
seamless_external_login: Ви увійшли за допомогою зовнішнього сервісу, тому налаштування паролю та електронної пошти недоступні.
signed_in_as: 'Ви увійшли як:'
verification:
- explanation_html: 'Ви можете <strong>підтвердити володіння посиланнями в метаданих вашого профілю</strong>. Для цього на зазначеному сайті повинен міститися посилання на ваш профіль Mastodon. Посилання <strong>повинне</strong> мати атрибут <code>rel="me"</code>. Текстовий вміст посилання не має значення. Ось приклад:'
verification: Підтвердження
webauthn_credentials:
add: Додати новий ключ безпеки
M config/locales/vi.yml => config/locales/vi.yml +0 -2
@@ 961,7 961,6 @@ vi:
your_token: Mã truy cập của bạn
auth:
apply_for_account: Xin đăng ký
- change_password: Mật khẩu
confirmations:
wrong_email_hint: Nếu địa chỉ email đó không chính xác, bạn có thể thay đổi nó trong cài đặt tài khoản.
delete_account: Xóa tài khoản
@@ 1672,7 1671,6 @@ vi:
seamless_external_login: Bạn đã đăng nhập thông qua một dịch vụ bên ngoài, vì vậy mật khẩu và email không khả dụng.
signed_in_as: 'Đăng nhập với tư cách là:'
verification:
- explanation_html: 'Bạn có thể <strong>xác minh mình là chủ sở hữu của các trang web</strong> ở đầu trang hồ sơ của bạn. Để xác minh, trang web <strong>phải chèn mã</strong> <code>rel="me"</code>. Văn bản thay thế cho liên kết không quan trọng. Đây là một ví dụ:'
verification: Xác minh
webauthn_credentials:
add: Thêm khóa bảo mật mới
M config/locales/zgh.yml => config/locales/zgh.yml +0 -1
@@ 70,7 70,6 @@ zgh:
application_mailer:
view_profile: ⵙⴽⵏ ⵉⴼⵔⵙ
auth:
- change_password: ⵜⴰⴳⵓⵔⵉ ⵏ ⵓⵣⵔⴰⵢ
forgot_password: ⵜⴻⵜⵜⵓⴷ ⵜⴰⴳⵓⵔⵉ ⵏ ⵓⵣⵔⴰⵢ ⵏⵏⴽ?
login: ⴽⵛⵎ
logout: ⴼⴼⵖ
M config/locales/zh-CN.yml => config/locales/zh-CN.yml +0 -2
@@ 961,7 961,6 @@ zh-CN:
your_token: 你的访问令牌
auth:
apply_for_account: 申请账号
- change_password: 密码
confirmations:
wrong_email_hint: 如果该电子邮件地址不正确,您可以在帐户设置中进行更改。
delete_account: 删除帐户
@@ 1672,7 1671,6 @@ zh-CN:
seamless_external_login: 因为你是通过外部服务登录的,所以密码和电子邮件地址设置都不可用。
signed_in_as: 当前登录的账户:
verification:
- explanation_html: 您可以 <strong>验证自己是个人资料元数据中的链接的所有者</strong> 。为此,链接的网站必须包含返回到您的 Mastodon 个人资料的链接。添加链接后,您可能需要回到这里并重新保存个人资料以使验证生效。 <strong>必须</strong> 在返回链接上使用 <code>rel="me"</code> 属性。 链接的文本内容无关紧要。以下是一个示例:
verification: 验证
webauthn_credentials:
add: 添加新的安全密钥
M config/locales/zh-HK.yml => config/locales/zh-HK.yml +0 -2
@@ 959,7 959,6 @@ zh-HK:
your_token: token
auth:
apply_for_account: 申請帳號
- change_password: 密碼
confirmations:
wrong_email_hint: 如果該電郵地址不正確,你可以在帳號設定中修改。
delete_account: 刪除帳號
@@ 1656,7 1655,6 @@ zh-HK:
seamless_external_login: 因為你正在使用第三方服務登入,所以不能設定密碼和電郵。
signed_in_as: 目前登入的帳戶:
verification:
- explanation_html: 你可以<strong>在你的個人檔案元數據中驗證自己是連結的擁有者</strong>。為此,連接的網站必須包含一條回到你 Mastodon 個人檔案的連結。加入連結後,你可能需要回到這裏,再次儲存你的個人檔案以便驗證生效。返回的連結<strong>必須</strong>有一個<code>rel="me"</code>的屬性。當中的文字內容並不重要。以下有一個例子:
verification: 驗證
webauthn_credentials:
add: 新增安全密鑰裝置
M config/locales/zh-TW.yml => config/locales/zh-TW.yml +0 -2
@@ 963,7 963,6 @@ zh-TW:
your_token: 您的 access token
auth:
apply_for_account: 申請帳號
- change_password: 密碼
confirmations:
wrong_email_hint: 若電子郵件地址不正確,您可以於帳號設定中更改。
delete_account: 刪除帳號
@@ 1674,7 1673,6 @@ zh-TW:
seamless_external_login: 由於您是由外部系統登入,所以不能設定密碼與電子郵件。
signed_in_as: 目前登入的帳號:
verification:
- explanation_html: 您可以<strong>透過以個人檔案頁上列出連結的方式,驗證您確實掌控該連結網頁的內容</strong>。為此,您可以在連結的網頁中加入一個連回 Mastodon 個人檔案頁面的連結。新增此連結之後,您可能要回到這裡並重新儲存您的個人檔案以使該驗證生效。該連結的原始碼 <strong>必須</strong>包含<code>rel="me"</code>屬性。連結的顯示文字則可自由發揮,以下為範例:
verification: 驗證連結
webauthn_credentials:
add: 新增安全金鑰
M config/navigation.rb => config/navigation.rb +1 -5
@@ 3,11 3,7 @@
SimpleNavigation::Configuration.run do |navigation|
navigation.items do |n|
n.item :web, safe_join([fa_icon('chevron-left fw'), t('settings.back')]), root_path
-
- n.item :profile, safe_join([fa_icon('user fw'), t('settings.profile')]), settings_profile_path, if: -> { current_user.functional? } do |s|
- s.item :profile, safe_join([fa_icon('pencil fw'), t('settings.appearance')]), settings_profile_path
- s.item :featured_tags, safe_join([fa_icon('hashtag fw'), t('settings.featured_tags')]), settings_featured_tags_path
- end
+ n.item :profile, safe_join([fa_icon('user fw'), t('settings.profile')]), settings_profile_path, if: -> { current_user.functional? }, highlights_on: %r{/settings/profile|/settings/featured_tags|/settings/verification}
n.item :preferences, safe_join([fa_icon('cog fw'), t('settings.preferences')]), settings_preferences_path, if: -> { current_user.functional? } do |s|
s.item :appearance, safe_join([fa_icon('desktop fw'), t('settings.appearance')]), settings_preferences_appearance_path
M config/routes.rb => config/routes.rb +2 -0
@@ 68,6 68,8 @@ Rails.application.routes.draw do
devise_scope :user do
get '/invite/:invite_code', to: 'auth/registrations#new', as: :public_invite
+ resource :unsubscribe, only: [:show, :create], controller: :mail_subscriptions
+
namespace :auth do
resource :setup, only: [:show, :update], controller: :setup
resource :challenge, only: [:create], controller: :challenges
M config/routes/settings.rb => config/routes/settings.rb +1 -0
@@ 62,6 62,7 @@ namespace :settings do
resource :delete, only: [:show, :destroy]
resource :migration, only: [:show, :create]
+ resource :verification, only: :show
namespace :migration do
resource :redirect, only: [:new, :create, :destroy]
M lib/mastodon/cli/cache.rb => lib/mastodon/cli/cache.rb +34 -14
@@ 23,22 23,12 @@ module Mastodon::CLI
def recount(type)
case type
when 'accounts'
- processed, = parallelize_with_progress(Account.local.includes(:account_stat)) do |account|
- account_stat = account.account_stat
- account_stat.following_count = account.active_relationships.count
- account_stat.followers_count = account.passive_relationships.count
- account_stat.statuses_count = account.statuses.where.not(visibility: :direct).count
-
- account_stat.save if account_stat.changed?
+ processed, = parallelize_with_progress(accounts_with_stats) do |account|
+ recount_account_stats(account)
end
when 'statuses'
- processed, = parallelize_with_progress(Status.includes(:status_stat)) do |status|
- status_stat = status.status_stat
- status_stat.replies_count = status.replies.where.not(visibility: :direct).count
- status_stat.reblogs_count = status.reblogs.count
- status_stat.favourites_count = status.favourites.count
-
- status_stat.save if status_stat.changed?
+ processed, = parallelize_with_progress(statuses_with_stats) do |status|
+ recount_status_stats(status)
end
else
say("Unknown type: #{type}", :red)
@@ 48,5 38,35 @@ module Mastodon::CLI
say
say("OK, recounted #{processed} records", :green)
end
+
+ private
+
+ def accounts_with_stats
+ Account.local.includes(:account_stat)
+ end
+
+ def statuses_with_stats
+ Status.includes(:status_stat)
+ end
+
+ def recount_account_stats(account)
+ account.account_stat.tap do |account_stat|
+ account_stat.following_count = account.active_relationships.count
+ account_stat.followers_count = account.passive_relationships.count
+ account_stat.statuses_count = account.statuses.where.not(visibility: :direct).count
+
+ account_stat.save if account_stat.changed?
+ end
+ end
+
+ def recount_status_stats(status)
+ status.status_stat.tap do |status_stat|
+ status_stat.replies_count = status.replies.where.not(visibility: :direct).count
+ status_stat.reblogs_count = status.reblogs.count
+ status_stat.favourites_count = status.favourites.count
+
+ status_stat.save if status_stat.changed?
+ end
+ end
end
end
M lib/mastodon/cli/feeds.rb => lib/mastodon/cli/feeds.rb +7 -1
@@ 19,7 19,7 @@ module Mastodon::CLI
LONG_DESC
def build(username = nil)
if options[:all] || username.nil?
- processed, = parallelize_with_progress(Account.joins(:user).merge(User.active)) do |account|
+ processed, = parallelize_with_progress(active_user_accounts) do |account|
PrecomputeFeedService.new.call(account) unless dry_run?
end
@@ 47,5 47,11 @@ module Mastodon::CLI
redis.del(keys)
say('OK', :green)
end
+
+ private
+
+ def active_user_accounts
+ Account.joins(:user).merge(User.active)
+ end
end
end
M spec/controllers/activitypub/followers_synchronizations_controller_spec.rb => spec/controllers/activitypub/followers_synchronizations_controller_spec.rb +14 -10
@@ 3,17 3,17 @@
require 'rails_helper'
RSpec.describe ActivityPub::FollowersSynchronizationsController do
- let!(:account) { Fabricate(:account) }
- let!(:follower_1) { Fabricate(:account, domain: 'example.com', uri: 'https://example.com/users/a') }
- let!(:follower_2) { Fabricate(:account, domain: 'example.com', uri: 'https://example.com/users/b') }
- let!(:follower_3) { Fabricate(:account, domain: 'foo.com', uri: 'https://foo.com/users/a') }
- let!(:follower_4) { Fabricate(:account, username: 'instance-actor', domain: 'example.com', uri: 'https://example.com') }
+ let!(:account) { Fabricate(:account) }
+ let!(:follower_example_com_user_a) { Fabricate(:account, domain: 'example.com', uri: 'https://example.com/users/a') }
+ let!(:follower_example_com_user_b) { Fabricate(:account, domain: 'example.com', uri: 'https://example.com/users/b') }
+ let!(:follower_foo_com_user_a) { Fabricate(:account, domain: 'foo.com', uri: 'https://foo.com/users/a') }
+ let!(:follower_example_com_instance_actor) { Fabricate(:account, username: 'instance-actor', domain: 'example.com', uri: 'https://example.com') }
before do
- follower_1.follow!(account)
- follower_2.follow!(account)
- follower_3.follow!(account)
- follower_4.follow!(account)
+ follower_example_com_user_a.follow!(account)
+ follower_example_com_user_b.follow!(account)
+ follower_foo_com_user_a.follow!(account)
+ follower_example_com_instance_actor.follow!(account)
allow(controller).to receive(:signed_request_actor).and_return(remote_account)
end
@@ 47,7 47,11 @@ RSpec.describe ActivityPub::FollowersSynchronizationsController do
it 'returns orderedItems with followers from example.com' do
expect(body[:orderedItems]).to be_an Array
- expect(body[:orderedItems]).to contain_exactly(follower_4.uri, follower_1.uri, follower_2.uri)
+ expect(body[:orderedItems]).to contain_exactly(
+ follower_example_com_instance_actor.uri,
+ follower_example_com_user_a.uri,
+ follower_example_com_user_b.uri
+ )
end
it 'returns private Cache-Control header' do
M spec/controllers/admin/instances_controller_spec.rb => spec/controllers/admin/instances_controller_spec.rb +3 -3
@@ 7,9 7,9 @@ RSpec.describe Admin::InstancesController do
let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) }
- let!(:account) { Fabricate(:account, domain: 'popular') }
- let!(:account2) { Fabricate(:account, domain: 'popular') }
- let!(:account3) { Fabricate(:account, domain: 'less.popular') }
+ let!(:account_popular_main) { Fabricate(:account, domain: 'popular') }
+ let!(:account_popular_other) { Fabricate(:account, domain: 'popular') }
+ let!(:account_less_popular) { Fabricate(:account, domain: 'less.popular') }
before do
sign_in current_user, scope: :user
M spec/controllers/api/v1/accounts/relationships_controller_spec.rb => spec/controllers/api/v1/accounts/relationships_controller_spec.rb +26 -19
@@ 48,25 48,32 @@ describe Api::V1::Accounts::RelationshipsController do
expect(response).to have_http_status(200)
end
- it 'returns JSON with correct data' do
- json = body_as_json
-
- expect(json).to be_a Enumerable
- expect(json.first[:id]).to eq simon.id.to_s
- expect(json.first[:following]).to be true
- expect(json.first[:showing_reblogs]).to be true
- expect(json.first[:followed_by]).to be false
- expect(json.first[:muting]).to be false
- expect(json.first[:requested]).to be false
- expect(json.first[:domain_blocking]).to be false
-
- expect(json.second[:id]).to eq lewis.id.to_s
- expect(json.second[:following]).to be false
- expect(json.second[:showing_reblogs]).to be false
- expect(json.second[:followed_by]).to be true
- expect(json.second[:muting]).to be false
- expect(json.second[:requested]).to be false
- expect(json.second[:domain_blocking]).to be false
+ context 'when there is returned JSON data' do
+ let(:json) { body_as_json }
+
+ it 'returns an enumerable json' do
+ expect(json).to be_a Enumerable
+ end
+
+ it 'returns a correct first element' do
+ expect(json.first[:id]).to eq simon.id.to_s
+ expect(json.first[:following]).to be true
+ expect(json.first[:showing_reblogs]).to be true
+ expect(json.first[:followed_by]).to be false
+ expect(json.first[:muting]).to be false
+ expect(json.first[:requested]).to be false
+ expect(json.first[:domain_blocking]).to be false
+ end
+
+ it 'returns a correct second element' do
+ expect(json.second[:id]).to eq lewis.id.to_s
+ expect(json.second[:following]).to be false
+ expect(json.second[:showing_reblogs]).to be false
+ expect(json.second[:followed_by]).to be true
+ expect(json.second[:muting]).to be false
+ expect(json.second[:requested]).to be false
+ expect(json.second[:domain_blocking]).to be false
+ end
end
it 'returns JSON with correct data on cached requests too' do
M spec/controllers/api/v1/accounts_controller_spec.rb => spec/controllers/api/v1/accounts_controller_spec.rb +0 -22
@@ 13,14 13,6 @@ RSpec.describe Api::V1::AccountsController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'POST #create' do
let(:app) { Fabricate(:application) }
let(:token) { Doorkeeper::AccessToken.find_or_create_for(application: app, resource_owner: nil, scopes: 'read write', use_refresh_token: false) }
@@ 55,20 47,6 @@ RSpec.describe Api::V1::AccountsController do
end
end
- describe 'GET #show' do
- let(:scopes) { 'read:accounts' }
-
- before do
- get :show, params: { id: user.account.id }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- end
-
describe 'POST #follow' do
let(:scopes) { 'write:follows' }
let(:other_account) { Fabricate(:account, username: 'bob', locked: locked) }
M spec/controllers/api/v1/admin/account_actions_controller_spec.rb => spec/controllers/api/v1/admin/account_actions_controller_spec.rb +0 -16
@@ 15,22 15,6 @@ RSpec.describe Api::V1::Admin::AccountActionsController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'POST #create' do
context 'with type of disable' do
before do
M spec/controllers/api/v1/admin/accounts_controller_spec.rb => spec/controllers/api/v1/admin/accounts_controller_spec.rb +0 -16
@@ 15,22 15,6 @@ RSpec.describe Api::V1::Admin::AccountsController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
let!(:remote_account) { Fabricate(:account, domain: 'example.org') }
let!(:other_remote_account) { Fabricate(:account, domain: 'foo.bar') }
D spec/controllers/api/v1/admin/domain_allows_controller_spec.rb => spec/controllers/api/v1/admin/domain_allows_controller_spec.rb +0 -140
@@ 1,140 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::Admin::DomainAllowsController do
- render_views
-
- let(:role) { UserRole.find_by(name: 'Admin') }
- let(:user) { Fabricate(:user, role: role) }
- let(:scopes) { 'admin:read admin:write' }
- let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
-
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- describe 'GET #index' do
- let!(:domain_allow) { Fabricate(:domain_allow) }
-
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns the expected domain allows' do
- json = body_as_json
- expect(json.length).to eq 1
- expect(json[0][:id].to_i).to eq domain_allow.id
- end
- end
-
- describe 'GET #show' do
- let!(:domain_allow) { Fabricate(:domain_allow) }
-
- before do
- get :show, params: { id: domain_allow.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns expected domain name' do
- json = body_as_json
- expect(json[:domain]).to eq domain_allow.domain
- end
- end
-
- describe 'DELETE #destroy' do
- let!(:domain_allow) { Fabricate(:domain_allow) }
-
- before do
- delete :destroy, params: { id: domain_allow.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'deletes the block' do
- expect(DomainAllow.find_by(id: domain_allow.id)).to be_nil
- end
- end
-
- describe 'POST #create' do
- let!(:domain_allow) { Fabricate(:domain_allow, domain: 'example.com') }
-
- context 'with a valid domain' do
- before do
- post :create, params: { domain: 'foo.bar.com' }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns expected domain name' do
- json = body_as_json
- expect(json[:domain]).to eq 'foo.bar.com'
- end
-
- it 'creates a domain block' do
- expect(DomainAllow.find_by(domain: 'foo.bar.com')).to_not be_nil
- end
- end
-
- context 'with invalid domain name' do
- before do
- post :create, params: { domain: 'foo bar' }
- end
-
- it 'returns http unprocessable entity' do
- expect(response).to have_http_status(422)
- end
- end
-
- context 'when domain name is not specified' do
- it 'returns http unprocessable entity' do
- post :create
-
- expect(response).to have_http_status(422)
- end
- end
- end
-end
D spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb => spec/controllers/api/v1/admin/domain_blocks_controller_spec.rb +0 -180
@@ 1,180 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::Admin::DomainBlocksController do
- render_views
-
- let(:role) { UserRole.find_by(name: 'Admin') }
- let(:user) { Fabricate(:user, role: role) }
- let(:scopes) { 'admin:read admin:write' }
- let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
-
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- describe 'GET #index' do
- let!(:block) { Fabricate(:domain_block) }
-
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns the expected domain blocks' do
- json = body_as_json
- expect(json.length).to eq 1
- expect(json[0][:id].to_i).to eq block.id
- end
- end
-
- describe 'GET #show' do
- let!(:block) { Fabricate(:domain_block) }
-
- before do
- get :show, params: { id: block.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns expected domain name' do
- json = body_as_json
- expect(json[:domain]).to eq block.domain
- end
- end
-
- describe 'PUT #update' do
- let!(:remote_account) { Fabricate(:account, domain: 'example.com') }
- let(:subject) do
- post :update, params: { id: domain_block.id, domain: 'example.com', severity: new_severity }
- end
- let(:domain_block) { Fabricate(:domain_block, domain: 'example.com', severity: original_severity) }
-
- before do
- BlockDomainService.new.call(domain_block)
- end
-
- context 'when downgrading a domain suspension to silence' do
- let(:original_severity) { 'suspend' }
- let(:new_severity) { 'silence' }
-
- it 'changes the block severity' do
- expect { subject }.to change { domain_block.reload.severity }.from('suspend').to('silence')
- end
-
- it 'undoes individual suspensions' do
- expect { subject }.to change { remote_account.reload.suspended? }.from(true).to(false)
- end
-
- it 'performs individual silences' do
- expect { subject }.to change { remote_account.reload.silenced? }.from(false).to(true)
- end
- end
-
- context 'when upgrading a domain silence to suspend' do
- let(:original_severity) { 'silence' }
- let(:new_severity) { 'suspend' }
-
- it 'changes the block severity' do
- expect { subject }.to change { domain_block.reload.severity }.from('silence').to('suspend')
- end
-
- it 'undoes individual silences' do
- expect { subject }.to change { remote_account.reload.silenced? }.from(true).to(false)
- end
-
- it 'performs individual suspends' do
- expect { subject }.to change { remote_account.reload.suspended? }.from(false).to(true)
- end
- end
- end
-
- describe 'DELETE #destroy' do
- let!(:block) { Fabricate(:domain_block) }
-
- before do
- delete :destroy, params: { id: block.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'deletes the block' do
- expect(DomainBlock.find_by(id: block.id)).to be_nil
- end
- end
-
- describe 'POST #create' do
- let(:existing_block_domain) { 'example.com' }
- let!(:block) { Fabricate(:domain_block, domain: existing_block_domain, severity: :suspend) }
-
- before do
- post :create, params: { domain: 'foo.bar.com', severity: :silence }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns expected domain name' do
- json = body_as_json
- expect(json[:domain]).to eq 'foo.bar.com'
- end
-
- it 'creates a domain block' do
- expect(DomainBlock.find_by(domain: 'foo.bar.com')).to_not be_nil
- end
-
- context 'when a stricter domain block already exists' do
- let(:existing_block_domain) { 'bar.com' }
-
- it 'returns http unprocessable entity' do
- expect(response).to have_http_status(422)
- end
-
- it 'renders existing domain block in error' do
- json = body_as_json
- expect(json[:existing_domain_block][:domain]).to eq existing_block_domain
- end
- end
- end
-end
D spec/controllers/api/v1/admin/reports_controller_spec.rb => spec/controllers/api/v1/admin/reports_controller_spec.rb +0 -111
@@ 1,111 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::Admin::ReportsController do
- render_views
-
- let(:role) { UserRole.find_by(name: 'Moderator') }
- let(:user) { Fabricate(:user, role: role) }
- let(:scopes) { 'admin:read admin:write' }
- let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
- let(:report) { Fabricate(:report) }
-
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- describe 'GET #index' do
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'GET #show' do
- before do
- get :show, params: { id: report.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #resolve' do
- before do
- post :resolve, params: { id: report.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #reopen' do
- before do
- post :reopen, params: { id: report.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #assign_to_self' do
- before do
- post :assign_to_self, params: { id: report.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #unassign' do
- before do
- post :unassign, params: { id: report.id }
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- it_behaves_like 'forbidden for wrong role', ''
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-end
M spec/controllers/api/v1/admin/trends/links/preview_card_providers_controller_spec.rb => spec/controllers/api/v1/admin/trends/links/preview_card_providers_controller_spec.rb +0 -16
@@ 16,22 16,6 @@ describe Api::V1::Admin::Trends::Links::PreviewCardProvidersController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
it 'returns http success' do
get :index, params: { account_id: account.id, limit: 2 }
M spec/controllers/api/v1/admin/trends/links_controller_spec.rb => spec/controllers/api/v1/admin/trends/links_controller_spec.rb +0 -16
@@ 16,22 16,6 @@ describe Api::V1::Admin::Trends::LinksController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
it 'returns http success' do
get :index, params: { account_id: account.id, limit: 2 }
M spec/controllers/api/v1/admin/trends/statuses_controller_spec.rb => spec/controllers/api/v1/admin/trends/statuses_controller_spec.rb +0 -16
@@ 16,22 16,6 @@ describe Api::V1::Admin::Trends::StatusesController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
it 'returns http success' do
get :index, params: { account_id: account.id, limit: 2 }
M spec/controllers/api/v1/admin/trends/tags_controller_spec.rb => spec/controllers/api/v1/admin/trends/tags_controller_spec.rb +0 -16
@@ 16,22 16,6 @@ describe Api::V1::Admin::Trends::TagsController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
it 'returns http success' do
get :index, params: { account_id: account.id, limit: 2 }
D spec/controllers/api/v1/apps/credentials_controller_spec.rb => spec/controllers/api/v1/apps/credentials_controller_spec.rb +0 -45
@@ 1,45 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-describe Api::V1::Apps::CredentialsController do
- render_views
-
- let(:token) { Fabricate(:accessible_access_token, scopes: 'read', application: Fabricate(:application)) }
-
- context 'with an oauth token' do
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- describe 'GET #show' do
- before do
- get :show
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'does not contain client credentials' do
- json = body_as_json
-
- expect(json).to_not have_key(:client_secret)
- expect(json).to_not have_key(:client_id)
- end
- end
- end
-
- context 'without an oauth token' do
- before do
- allow(controller).to receive(:doorkeeper_token).and_return(nil)
- end
-
- describe 'GET #show' do
- it 'returns http unauthorized' do
- get :show
- expect(response).to have_http_status(401)
- end
- end
- end
-end
M spec/controllers/api/v1/conversations_controller_spec.rb => spec/controllers/api/v1/conversations_controller_spec.rb +18 -0
@@ 35,5 35,23 @@ RSpec.describe Api::V1::ConversationsController do
json = body_as_json
expect(json.size).to eq 1
end
+
+ context 'with since_id' do
+ context 'when requesting old posts' do
+ it 'returns conversations' do
+ get :index, params: { since_id: Mastodon::Snowflake.id_at(1.hour.ago, with_random: false) }
+ json = body_as_json
+ expect(json.size).to eq 1
+ end
+ end
+
+ context 'when requesting posts in the future' do
+ it 'returns no conversation' do
+ get :index, params: { since_id: Mastodon::Snowflake.id_at(1.hour.from_now, with_random: false) }
+ json = body_as_json
+ expect(json.size).to eq 0
+ end
+ end
+ end
end
end
D spec/controllers/api/v1/domain_blocks_controller_spec.rb => spec/controllers/api/v1/domain_blocks_controller_spec.rb +0 -77
@@ 1,77 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::DomainBlocksController do
- render_views
-
- let(:user) { Fabricate(:user) }
- let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
-
- before do
- user.account.block_domain!('example.com')
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- describe 'GET #show' do
- let(:scopes) { 'read:blocks' }
-
- before do
- get :show, params: { limit: 1 }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'returns blocked domains' do
- expect(body_as_json.first).to eq 'example.com'
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- end
-
- describe 'POST #create' do
- let(:scopes) { 'write:blocks' }
-
- before do
- post :create, params: { domain: 'example.org' }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'creates a domain block' do
- expect(user.account.domain_blocking?('example.org')).to be true
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- end
-
- describe 'DELETE #destroy' do
- let(:scopes) { 'write:blocks' }
-
- before do
- delete :destroy, params: { domain: 'example.com' }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'deletes a domain block' do
- expect(user.account.domain_blocking?('example.com')).to be false
- end
-
- it_behaves_like 'forbidden for wrong scope', 'write:statuses'
- end
-end
D spec/controllers/api/v1/follow_requests_controller_spec.rb => spec/controllers/api/v1/follow_requests_controller_spec.rb +0 -72
@@ 1,72 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::FollowRequestsController do
- render_views
-
- let(:user) { Fabricate(:user, account_attributes: { locked: true }) }
- let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
- let(:follower) { Fabricate(:account) }
-
- before do
- FollowService.new.call(follower, user.account)
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- describe 'GET #index' do
- let(:scopes) { 'read:follows' }
-
- before do
- get :index, params: { limit: 1 }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #authorize' do
- let(:scopes) { 'write:follows' }
-
- before do
- post :authorize, params: { id: follower.id }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'allows follower to follow' do
- expect(follower.following?(user.account)).to be true
- end
-
- it 'returns JSON with followed_by=true' do
- json = body_as_json
-
- expect(json[:followed_by]).to be true
- end
- end
-
- describe 'POST #reject' do
- let(:scopes) { 'write:follows' }
-
- before do
- post :reject, params: { id: follower.id }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'removes follow request' do
- expect(FollowRequest.where(target_account: user.account, account: follower).count).to eq 0
- end
-
- it 'returns JSON with followed_by=false' do
- json = body_as_json
-
- expect(json[:followed_by]).to be false
- end
- end
-end
D spec/controllers/api/v1/lists_controller_spec.rb => spec/controllers/api/v1/lists_controller_spec.rb +0 -80
@@ 1,80 0,0 @@
-# frozen_string_literal: true
-
-require 'rails_helper'
-
-RSpec.describe Api::V1::ListsController do
- render_views
-
- let!(:user) { Fabricate(:user) }
- let!(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
- let!(:list) { Fabricate(:list, account: user.account) }
-
- before { allow(controller).to receive(:doorkeeper_token) { token } }
-
- describe 'GET #index' do
- let(:scopes) { 'read:lists' }
-
- it 'returns http success' do
- get :index
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'GET #show' do
- let(:scopes) { 'read:lists' }
-
- it 'returns http success' do
- get :show, params: { id: list.id }
- expect(response).to have_http_status(200)
- end
- end
-
- describe 'POST #create' do
- let(:scopes) { 'write:lists' }
-
- before do
- post :create, params: { title: 'Foo bar' }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'creates list' do
- expect(List.where(account: user.account).count).to eq 2
- expect(List.last.title).to eq 'Foo bar'
- end
- end
-
- describe 'PUT #update' do
- let(:scopes) { 'write:lists' }
-
- before do
- put :update, params: { id: list.id, title: 'Updated title' }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'updates the list' do
- expect(list.reload.title).to eq 'Updated title'
- end
- end
-
- describe 'DELETE #destroy' do
- let(:scopes) { 'write:lists' }
-
- before do
- delete :destroy, params: { id: list.id }
- end
-
- it 'returns http success' do
- expect(response).to have_http_status(200)
- end
-
- it 'deletes the list' do
- expect(List.find_by(id: list.id)).to be_nil
- end
- end
-end
M spec/controllers/api/v2/admin/accounts_controller_spec.rb => spec/controllers/api/v2/admin/accounts_controller_spec.rb +0 -16
@@ 15,22 15,6 @@ RSpec.describe Api::V2::Admin::AccountsController do
allow(controller).to receive(:doorkeeper_token) { token }
end
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET #index' do
let!(:remote_account) { Fabricate(:account, domain: 'example.org') }
let!(:other_remote_account) { Fabricate(:account, domain: 'foo.bar') }
M spec/controllers/follower_accounts_controller_spec.rb => spec/controllers/follower_accounts_controller_spec.rb +5 -5
@@ 5,13 5,13 @@ require 'rails_helper'
describe FollowerAccountsController do
render_views
- let(:alice) { Fabricate(:account) }
- let(:follower0) { Fabricate(:account) }
- let(:follower1) { Fabricate(:account) }
+ let(:alice) { Fabricate(:account, username: 'alice') }
+ let(:follower_bob) { Fabricate(:account, username: 'bob') }
+ let(:follower_chris) { Fabricate(:account, username: 'curt') }
describe 'GET #index' do
- let!(:follow0) { follower0.follow!(alice) }
- let!(:follow1) { follower1.follow!(alice) }
+ let!(:follow_from_bob) { follower_bob.follow!(alice) }
+ let!(:follow_from_chris) { follower_chris.follow!(alice) }
context 'when format is html' do
subject(:response) { get :index, params: { account_username: alice.username, format: :html } }
M spec/controllers/following_accounts_controller_spec.rb => spec/controllers/following_accounts_controller_spec.rb +5 -5
@@ 5,13 5,13 @@ require 'rails_helper'
describe FollowingAccountsController do
render_views
- let(:alice) { Fabricate(:account) }
- let(:followee0) { Fabricate(:account) }
- let(:followee1) { Fabricate(:account) }
+ let(:alice) { Fabricate(:account, username: 'alice') }
+ let(:followee_bob) { Fabricate(:account, username: 'bob') }
+ let(:followee_chris) { Fabricate(:account, username: 'chris') }
describe 'GET #index' do
- let!(:follow0) { alice.follow!(followee0) }
- let!(:follow1) { alice.follow!(followee1) }
+ let!(:follow_of_bob) { alice.follow!(followee_bob) }
+ let!(:follow_of_chris) { alice.follow!(followee_chris) }
context 'when format is html' do
subject(:response) { get :index, params: { account_username: alice.username, format: :html } }
M spec/controllers/settings/two_factor_authentication/confirmations_controller_spec.rb => spec/controllers/settings/two_factor_authentication/confirmations_controller_spec.rb +20 -11
@@ 56,18 56,11 @@ describe Settings::TwoFactorAuthentication::ConfirmationsController do
end
describe 'when creation succeeds' do
+ let!(:otp_backup_codes) { user.generate_otp_backup_codes! }
+
it 'renders page with success' do
- otp_backup_codes = user.generate_otp_backup_codes!
- expect_any_instance_of(User).to receive(:generate_otp_backup_codes!) do |value|
- expect(value).to eq user
- otp_backup_codes
- end
- expect_any_instance_of(User).to receive(:validate_and_consume_otp!) do |value, code, options|
- expect(value).to eq user
- expect(code).to eq '123456'
- expect(options).to eq({ otp_secret: 'thisisasecretforthespecofnewview' })
- true
- end
+ prepare_user_otp_generation
+ prepare_user_otp_consumption
expect do
post :create,
@@ 80,6 73,22 @@ describe Settings::TwoFactorAuthentication::ConfirmationsController do
expect(response).to have_http_status(200)
expect(response).to render_template('settings/two_factor_authentication/recovery_codes/index')
end
+
+ def prepare_user_otp_generation
+ expect_any_instance_of(User).to receive(:generate_otp_backup_codes!) do |value|
+ expect(value).to eq user
+ otp_backup_codes
+ end
+ end
+
+ def prepare_user_otp_consumption
+ expect_any_instance_of(User).to receive(:validate_and_consume_otp!) do |value, code, options|
+ expect(value).to eq user
+ expect(code).to eq '123456'
+ expect(options).to eq({ otp_secret: 'thisisasecretforthespecofnewview' })
+ true
+ end
+ end
end
describe 'when creation fails' do
M spec/fabricators/domain_allow_fabricator.rb => spec/fabricators/domain_allow_fabricator.rb +1 -1
@@ 1,5 1,5 @@
# frozen_string_literal: true
Fabricator(:domain_allow) do
- domain 'MyString'
+ domain { sequence(:domain) { |i| "example#{i}.com" } }
end
A spec/fabricators/status_stat_fabricator.rb => spec/fabricators/status_stat_fabricator.rb +8 -0
@@ 0,0 1,8 @@
+# frozen_string_literal: true
+
+Fabricator(:status_stat) do
+ status
+ replies_count '123'
+ reblogs_count '456'
+ favourites_count '789'
+end
M spec/lib/account_reach_finder_spec.rb => spec/lib/account_reach_finder_spec.rb +15 -15
@@ 5,31 5,31 @@ require 'rails_helper'
RSpec.describe AccountReachFinder do
let(:account) { Fabricate(:account) }
- let(:follower1) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-1') }
- let(:follower2) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-2') }
- let(:follower3) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/users/a/inbox', shared_inbox_url: 'https://foo.bar/inbox') }
+ let(:ap_follower_example_com) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-1') }
+ let(:ap_follower_example_org) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.org/inbox-2') }
+ let(:ap_follower_with_shared) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/users/a/inbox', shared_inbox_url: 'https://foo.bar/inbox') }
- let(:mentioned1) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/users/b/inbox', shared_inbox_url: 'https://foo.bar/inbox') }
- let(:mentioned2) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-3') }
- let(:mentioned3) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-4') }
+ let(:ap_mentioned_with_shared) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://foo.bar/users/b/inbox', shared_inbox_url: 'https://foo.bar/inbox') }
+ let(:ap_mentioned_example_com) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/inbox-3') }
+ let(:ap_mentioned_example_org) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.org/inbox-4') }
let(:unrelated_account) { Fabricate(:account, protocol: :activitypub, inbox_url: 'https://example.com/unrelated-inbox') }
before do
- follower1.follow!(account)
- follower2.follow!(account)
- follower3.follow!(account)
+ ap_follower_example_com.follow!(account)
+ ap_follower_example_org.follow!(account)
+ ap_follower_with_shared.follow!(account)
Fabricate(:status, account: account).tap do |status|
- status.mentions << Mention.new(account: follower1)
- status.mentions << Mention.new(account: mentioned1)
+ status.mentions << Mention.new(account: ap_follower_example_com)
+ status.mentions << Mention.new(account: ap_mentioned_with_shared)
end
Fabricate(:status, account: account)
Fabricate(:status, account: account).tap do |status|
- status.mentions << Mention.new(account: mentioned2)
- status.mentions << Mention.new(account: mentioned3)
+ status.mentions << Mention.new(account: ap_mentioned_example_com)
+ status.mentions << Mention.new(account: ap_mentioned_example_org)
end
Fabricate(:status).tap do |status|
@@ 39,11 39,11 @@ RSpec.describe AccountReachFinder do
describe '#inboxes' do
it 'includes the preferred inbox URL of followers' do
- expect(described_class.new(account).inboxes).to include(*[follower1, follower2, follower3].map(&:preferred_inbox_url))
+ expect(described_class.new(account).inboxes).to include(*[ap_follower_example_com, ap_follower_example_org, ap_follower_with_shared].map(&:preferred_inbox_url))
end
it 'includes the preferred inbox URL of recently-mentioned accounts' do
- expect(described_class.new(account).inboxes).to include(*[mentioned1, mentioned2, mentioned3].map(&:preferred_inbox_url))
+ expect(described_class.new(account).inboxes).to include(*[ap_mentioned_with_shared, ap_mentioned_example_com, ap_mentioned_example_org].map(&:preferred_inbox_url))
end
it 'does not include the inbox of unrelated users' do
M spec/lib/feed_manager_spec.rb => spec/lib/feed_manager_spec.rb +17 -11
@@ 533,19 533,25 @@ RSpec.describe FeedManager do
end
describe '#clear_from_home' do
- let(:account) { Fabricate(:account) }
+ let(:account) { Fabricate(:account) }
let(:followed_account) { Fabricate(:account) }
- let(:target_account) { Fabricate(:account) }
- let(:status_1) { Fabricate(:status, account: followed_account) }
- let(:status_2) { Fabricate(:status, account: target_account) }
- let(:status_3) { Fabricate(:status, account: followed_account, mentions: [Fabricate(:mention, account: target_account)]) }
- let(:status_4) { Fabricate(:status, mentions: [Fabricate(:mention, account: target_account)]) }
- let(:status_5) { Fabricate(:status, account: followed_account, reblog: status_4) }
- let(:status_6) { Fabricate(:status, account: followed_account, reblog: status_2) }
- let(:status_7) { Fabricate(:status, account: followed_account) }
+ let(:target_account) { Fabricate(:account) }
+ let(:status_from_followed_account_first) { Fabricate(:status, account: followed_account) }
+ let(:status_from_target_account) { Fabricate(:status, account: target_account) }
+ let(:status_from_followed_account_mentions_target_account) { Fabricate(:status, account: followed_account, mentions: [Fabricate(:mention, account: target_account)]) }
+ let(:status_mentions_target_account) { Fabricate(:status, mentions: [Fabricate(:mention, account: target_account)]) }
+ let(:status_from_followed_account_reblogs_status_mentions_target_account) { Fabricate(:status, account: followed_account, reblog: status_mentions_target_account) }
+ let(:status_from_followed_account_reblogs_status_from_target_account) { Fabricate(:status, account: followed_account, reblog: status_from_target_account) }
+ let(:status_from_followed_account_next) { Fabricate(:status, account: followed_account) }
before do
- [status_1, status_3, status_5, status_6, status_7].each do |status|
+ [
+ status_from_followed_account_first,
+ status_from_followed_account_mentions_target_account,
+ status_from_followed_account_reblogs_status_mentions_target_account,
+ status_from_followed_account_reblogs_status_from_target_account,
+ status_from_followed_account_next,
+ ].each do |status|
redis.zadd("feed:home:#{account.id}", status.id, status.id)
end
end
@@ 553,7 559,7 @@ RSpec.describe FeedManager do
it 'correctly cleans the home timeline' do
described_class.instance.clear_from_home(account, target_account)
- expect(redis.zrange("feed:home:#{account.id}", 0, -1)).to eq [status_1.id.to_s, status_7.id.to_s]
+ expect(redis.zrange("feed:home:#{account.id}", 0, -1)).to eq [status_from_followed_account_first.id.to_s, status_from_followed_account_next.id.to_s]
end
end
end
M spec/lib/mastodon/cli/cache_spec.rb => spec/lib/mastodon/cli/cache_spec.rb +59 -0
@@ 4,9 4,68 @@ require 'rails_helper'
require 'mastodon/cli/cache'
describe Mastodon::CLI::Cache do
+ let(:cli) { described_class.new }
+
describe '.exit_on_failure?' do
it 'returns true' do
expect(described_class.exit_on_failure?).to be true
end
end
+
+ describe '#clear' do
+ before { allow(Rails.cache).to receive(:clear) }
+
+ it 'clears the Rails cache' do
+ expect { cli.invoke(:clear) }.to output(
+ a_string_including('OK')
+ ).to_stdout
+ expect(Rails.cache).to have_received(:clear)
+ end
+ end
+
+ describe '#recount' do
+ context 'with the `accounts` argument' do
+ let(:arguments) { ['accounts'] }
+ let(:account_stat) { Fabricate(:account_stat) }
+
+ before do
+ account_stat.update(statuses_count: 123)
+ end
+
+ it 're-calculates account records in the cache' do
+ expect { cli.invoke(:recount, arguments) }.to output(
+ a_string_including('OK')
+ ).to_stdout
+
+ expect(account_stat.reload.statuses_count).to be_zero
+ end
+ end
+
+ context 'with the `statuses` argument' do
+ let(:arguments) { ['statuses'] }
+ let(:status_stat) { Fabricate(:status_stat) }
+
+ before do
+ status_stat.update(replies_count: 123)
+ end
+
+ it 're-calculates account records in the cache' do
+ expect { cli.invoke(:recount, arguments) }.to output(
+ a_string_including('OK')
+ ).to_stdout
+
+ expect(status_stat.reload.replies_count).to be_zero
+ end
+ end
+
+ context 'with an unknown type' do
+ let(:arguments) { ['other-type'] }
+
+ it 'Exits with an error message' do
+ expect { cli.invoke(:recount, arguments) }.to output(
+ a_string_including('Unknown')
+ ).to_stdout.and raise_error(SystemExit)
+ end
+ end
+ end
end
M spec/lib/mastodon/cli/feeds_spec.rb => spec/lib/mastodon/cli/feeds_spec.rb +56 -0
@@ 4,9 4,65 @@ require 'rails_helper'
require 'mastodon/cli/feeds'
describe Mastodon::CLI::Feeds do
+ let(:cli) { described_class.new }
+
describe '.exit_on_failure?' do
it 'returns true' do
expect(described_class.exit_on_failure?).to be true
end
end
+
+ describe '#build' do
+ before { Fabricate(:account) }
+
+ context 'with --all option' do
+ let(:options) { { all: true } }
+
+ it 'regenerates feeds for all accounts' do
+ expect { cli.invoke(:build, [], options) }.to output(
+ a_string_including('Regenerated feeds')
+ ).to_stdout
+ end
+ end
+
+ context 'with a username' do
+ before { Fabricate(:account, username: 'alice') }
+
+ let(:arguments) { ['alice'] }
+
+ it 'regenerates feeds for the account' do
+ expect { cli.invoke(:build, arguments) }.to output(
+ a_string_including('OK')
+ ).to_stdout
+ end
+ end
+
+ context 'with invalid username' do
+ let(:arguments) { ['invalid-username'] }
+
+ it 'displays an error and exits' do
+ expect { cli.invoke(:build, arguments) }.to output(
+ a_string_including('No such account')
+ ).to_stdout.and raise_error(SystemExit)
+ end
+ end
+ end
+
+ describe '#clear' do
+ before do
+ allow(redis).to receive(:del).with(key_namespace)
+ end
+
+ it 'clears the redis `feed:*` namespace' do
+ expect { cli.invoke(:clear) }.to output(
+ a_string_including('OK')
+ ).to_stdout
+
+ expect(redis).to have_received(:del).with(key_namespace).once
+ end
+
+ def key_namespace
+ redis.keys('feed:*')
+ end
+ end
end
M spec/lib/mastodon/cli/ip_blocks_spec.rb => spec/lib/mastodon/cli/ip_blocks_spec.rb +13 -13
@@ 189,22 189,22 @@ describe Mastodon::CLI::IpBlocks do
end
context 'with --force option' do
- let!(:block1) { IpBlock.create(ip: '192.168.0.0/24', severity: :no_access) }
- let!(:block2) { IpBlock.create(ip: '10.0.0.0/16', severity: :no_access) }
- let!(:block3) { IpBlock.create(ip: '172.16.0.0/20', severity: :no_access) }
+ let!(:first_ip_range_block) { IpBlock.create(ip: '192.168.0.0/24', severity: :no_access) }
+ let!(:second_ip_range_block) { IpBlock.create(ip: '10.0.0.0/16', severity: :no_access) }
+ let!(:third_ip_range_block) { IpBlock.create(ip: '172.16.0.0/20', severity: :no_access) }
let(:arguments) { ['192.168.0.5', '10.0.1.50'] }
let(:options) { { force: true } }
it 'removes blocks for IP ranges that cover given IP(s)' do
cli.invoke(:remove, arguments, options)
- expect(IpBlock.where(id: [block1.id, block2.id])).to_not exist
+ expect(IpBlock.where(id: [first_ip_range_block.id, second_ip_range_block.id])).to_not exist
end
it 'does not remove other IP ranges' do
cli.invoke(:remove, arguments, options)
- expect(IpBlock.where(id: block3.id)).to exist
+ expect(IpBlock.where(id: third_ip_range_block.id)).to exist
end
end
@@ 251,22 251,22 @@ describe Mastodon::CLI::IpBlocks do
end
describe '#export' do
- let(:block1) { IpBlock.create(ip: '192.168.0.0/24', severity: :no_access) }
- let(:block2) { IpBlock.create(ip: '10.0.0.0/16', severity: :no_access) }
- let(:block3) { IpBlock.create(ip: '127.0.0.1', severity: :sign_up_block) }
+ let(:first_ip_range_block) { IpBlock.create(ip: '192.168.0.0/24', severity: :no_access) }
+ let(:second_ip_range_block) { IpBlock.create(ip: '10.0.0.0/16', severity: :no_access) }
+ let(:third_ip_range_block) { IpBlock.create(ip: '127.0.0.1', severity: :sign_up_block) }
context 'when --format option is set to "plain"' do
let(:options) { { format: 'plain' } }
it 'exports blocked IPs with "no_access" severity in plain format' do
expect { cli.invoke(:export, nil, options) }.to output(
- a_string_including("#{block1.ip}/#{block1.ip.prefix}\n#{block2.ip}/#{block2.ip.prefix}")
+ a_string_including("#{first_ip_range_block.ip}/#{first_ip_range_block.ip.prefix}\n#{second_ip_range_block.ip}/#{second_ip_range_block.ip.prefix}")
).to_stdout
end
it 'does not export bloked IPs with different severities' do
expect { cli.invoke(:export, nil, options) }.to_not output(
- a_string_including("#{block3.ip}/#{block1.ip.prefix}")
+ a_string_including("#{third_ip_range_block.ip}/#{first_ip_range_block.ip.prefix}")
).to_stdout
end
end
@@ 276,13 276,13 @@ describe Mastodon::CLI::IpBlocks do
it 'exports blocked IPs with "no_access" severity in plain format' do
expect { cli.invoke(:export, nil, options) }.to output(
- a_string_including("deny #{block1.ip}/#{block1.ip.prefix};\ndeny #{block2.ip}/#{block2.ip.prefix};")
+ a_string_including("deny #{first_ip_range_block.ip}/#{first_ip_range_block.ip.prefix};\ndeny #{second_ip_range_block.ip}/#{second_ip_range_block.ip.prefix};")
).to_stdout
end
it 'does not export bloked IPs with different severities' do
expect { cli.invoke(:export, nil, options) }.to_not output(
- a_string_including("deny #{block3.ip}/#{block1.ip.prefix};")
+ a_string_including("deny #{third_ip_range_block.ip}/#{first_ip_range_block.ip.prefix};")
).to_stdout
end
end
@@ 290,7 290,7 @@ describe Mastodon::CLI::IpBlocks do
context 'when --format option is not provided' do
it 'exports blocked IPs in plain format by default' do
expect { cli.export }.to output(
- a_string_including("#{block1.ip}/#{block1.ip.prefix}\n#{block2.ip}/#{block2.ip.prefix}")
+ a_string_including("#{first_ip_range_block.ip}/#{first_ip_range_block.ip.prefix}\n#{second_ip_range_block.ip}/#{second_ip_range_block.ip.prefix}")
).to_stdout
end
end
M spec/models/account_statuses_cleanup_policy_spec.rb => spec/models/account_statuses_cleanup_policy_spec.rb +20 -20
@@ 266,10 266,10 @@ RSpec.describe AccountStatusesCleanupPolicy do
let!(:self_bookmarked) { Fabricate(:status, created_at: 1.year.ago, account: account) }
let!(:status_with_poll) { Fabricate(:status, created_at: 1.year.ago, account: account, poll_attributes: { account: account, voters_count: 0, options: %w(a b), expires_in: 2.days }) }
let!(:status_with_media) { Fabricate(:status, created_at: 1.year.ago, account: account) }
- let!(:faved4) { Fabricate(:status, created_at: 1.year.ago, account: account) }
- let!(:faved5) { Fabricate(:status, created_at: 1.year.ago, account: account) }
- let!(:reblogged4) { Fabricate(:status, created_at: 1.year.ago, account: account) }
- let!(:reblogged5) { Fabricate(:status, created_at: 1.year.ago, account: account) }
+ let!(:faved_primary) { Fabricate(:status, created_at: 1.year.ago, account: account) }
+ let!(:faved_secondary) { Fabricate(:status, created_at: 1.year.ago, account: account) }
+ let!(:reblogged_primary) { Fabricate(:status, created_at: 1.year.ago, account: account) }
+ let!(:reblogged_secondary) { Fabricate(:status, created_at: 1.year.ago, account: account) }
let!(:recent_status) { Fabricate(:status, created_at: 2.days.ago, account: account) }
let!(:media_attachment) { Fabricate(:media_attachment, account: account, status: status_with_media) }
@@ 280,10 280,10 @@ RSpec.describe AccountStatusesCleanupPolicy do
let(:account_statuses_cleanup_policy) { Fabricate(:account_statuses_cleanup_policy, account: account) }
before do
- 4.times { faved4.increment_count!(:favourites_count) }
- 5.times { faved5.increment_count!(:favourites_count) }
- 4.times { reblogged4.increment_count!(:reblogs_count) }
- 5.times { reblogged5.increment_count!(:reblogs_count) }
+ 4.times { faved_primary.increment_count!(:favourites_count) }
+ 5.times { faved_secondary.increment_count!(:favourites_count) }
+ 4.times { reblogged_primary.increment_count!(:reblogs_count) }
+ 5.times { reblogged_secondary.increment_count!(:reblogs_count) }
end
context 'when passed a max_id' do
@@ 359,7 359,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 378,7 378,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, status_with_poll.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, status_with_poll.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 397,7 397,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 416,7 416,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 435,7 435,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 454,7 454,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 477,7 477,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns every other old status for deletion' do
- expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(direct_message.id, very_old_status.id, pinned_status.id, self_faved.id, self_bookmarked.id, status_with_poll.id, status_with_media.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 496,7 496,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns only normal statuses for deletion' do
- expect(subject.pluck(:id)).to contain_exactly(very_old_status.id, faved4.id, faved5.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to contain_exactly(very_old_status.id, faved_primary.id, faved_secondary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
@@ 510,7 510,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'does not return the toot reblogged 5 times' do
- expect(subject.pluck(:id)).to_not include(reblogged5.id)
+ expect(subject.pluck(:id)).to_not include(reblogged_secondary.id)
end
it 'does not return the unrelated toot' do
@@ 518,7 518,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns old statuses not reblogged as much' do
- expect(subject.pluck(:id)).to include(very_old_status.id, faved4.id, faved5.id, reblogged4.id)
+ expect(subject.pluck(:id)).to include(very_old_status.id, faved_primary.id, faved_secondary.id, reblogged_primary.id)
end
end
@@ 532,7 532,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'does not return the toot faved 5 times' do
- expect(subject.pluck(:id)).to_not include(faved5.id)
+ expect(subject.pluck(:id)).to_not include(faved_secondary.id)
end
it 'does not return the unrelated toot' do
@@ 540,7 540,7 @@ RSpec.describe AccountStatusesCleanupPolicy do
end
it 'returns old statuses not faved as much' do
- expect(subject.pluck(:id)).to include(very_old_status.id, faved4.id, reblogged4.id, reblogged5.id)
+ expect(subject.pluck(:id)).to include(very_old_status.id, faved_primary.id, reblogged_primary.id, reblogged_secondary.id)
end
end
end
M spec/models/admin/account_action_spec.rb => spec/models/admin/account_action_spec.rb +16 -0
@@ 55,6 55,22 @@ RSpec.describe Admin::AccountAction do
end
end
+ context 'when type is invalid' do
+ let(:type) { 'whatever' }
+
+ it 'raises an invalid record error' do
+ expect { subject }.to raise_error(ActiveRecord::RecordInvalid)
+ end
+ end
+
+ context 'when type is not given' do
+ let(:type) { '' }
+
+ it 'raises an invalid record error' do
+ expect { subject }.to raise_error(ActiveRecord::RecordInvalid)
+ end
+ end
+
it 'creates Admin::ActionLog' do
expect do
subject
M spec/models/concerns/account_interactions_spec.rb => spec/models/concerns/account_interactions_spec.rb +20 -20
@@ 567,17 567,17 @@ describe AccountInteractions do
describe '#remote_followers_hash' do
let(:me) { Fabricate(:account, username: 'Me') }
- let(:remote_1) { Fabricate(:account, username: 'alice', domain: 'example.org', uri: 'https://example.org/users/alice') }
- let(:remote_2) { Fabricate(:account, username: 'bob', domain: 'example.org', uri: 'https://example.org/users/bob') }
- let(:remote_3) { Fabricate(:account, username: 'instance-actor', domain: 'example.org', uri: 'https://example.org') }
- let(:remote_4) { Fabricate(:account, username: 'eve', domain: 'foo.org', uri: 'https://foo.org/users/eve') }
+ let(:remote_alice) { Fabricate(:account, username: 'alice', domain: 'example.org', uri: 'https://example.org/users/alice') }
+ let(:remote_bob) { Fabricate(:account, username: 'bob', domain: 'example.org', uri: 'https://example.org/users/bob') }
+ let(:remote_instance_actor) { Fabricate(:account, username: 'instance-actor', domain: 'example.org', uri: 'https://example.org') }
+ let(:remote_eve) { Fabricate(:account, username: 'eve', domain: 'foo.org', uri: 'https://foo.org/users/eve') }
before do
- remote_1.follow!(me)
- remote_2.follow!(me)
- remote_3.follow!(me)
- remote_4.follow!(me)
- me.follow!(remote_1)
+ remote_alice.follow!(me)
+ remote_bob.follow!(me)
+ remote_instance_actor.follow!(me)
+ remote_eve.follow!(me)
+ me.follow!(remote_alice)
end
it 'returns correct hash for remote domains' do
@@ 589,33 589,33 @@ describe AccountInteractions do
it 'invalidates cache as needed when removing or adding followers' do
expect(me.remote_followers_hash('https://example.org/')).to eq '20aecbe774b3d61c25094370baf370012b9271c5b172ecedb05caff8d79ef0c7'
- remote_3.unfollow!(me)
+ remote_instance_actor.unfollow!(me)
expect(me.remote_followers_hash('https://example.org/')).to eq '707962e297b7bd94468a21bc8e506a1bcea607a9142cd64e27c9b106b2a5f6ec'
- remote_1.unfollow!(me)
+ remote_alice.unfollow!(me)
expect(me.remote_followers_hash('https://example.org/')).to eq '241b00794ce9b46aa864f3220afadef128318da2659782985bac5ed5bd436bff'
- remote_1.follow!(me)
+ remote_alice.follow!(me)
expect(me.remote_followers_hash('https://example.org/')).to eq '707962e297b7bd94468a21bc8e506a1bcea607a9142cd64e27c9b106b2a5f6ec'
end
end
describe '#local_followers_hash' do
let(:me) { Fabricate(:account, username: 'Me') }
- let(:remote_1) { Fabricate(:account, username: 'alice', domain: 'example.org', uri: 'https://example.org/users/alice') }
+ let(:remote_alice) { Fabricate(:account, username: 'alice', domain: 'example.org', uri: 'https://example.org/users/alice') }
before do
- me.follow!(remote_1)
+ me.follow!(remote_alice)
end
it 'returns correct hash for local users' do
- expect(remote_1.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
+ expect(remote_alice.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
end
it 'invalidates cache as needed when removing or adding followers' do
- expect(remote_1.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
- me.unfollow!(remote_1)
- expect(remote_1.local_followers_hash).to eq '0000000000000000000000000000000000000000000000000000000000000000'
- me.follow!(remote_1)
- expect(remote_1.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
+ expect(remote_alice.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
+ me.unfollow!(remote_alice)
+ expect(remote_alice.local_followers_hash).to eq '0000000000000000000000000000000000000000000000000000000000000000'
+ me.follow!(remote_alice)
+ expect(remote_alice.local_followers_hash).to eq Digest::SHA256.hexdigest(ActivityPub::TagManager.instance.uri_for(me))
end
end
M spec/models/concerns/status_threading_concern_spec.rb => spec/models/concerns/status_threading_concern_spec.rb +21 -21
@@ 8,40 8,40 @@ describe StatusThreadingConcern do
let!(:bob) { Fabricate(:account, username: 'bob', domain: 'example.com') }
let!(:jeff) { Fabricate(:account, username: 'jeff') }
let!(:status) { Fabricate(:status, account: alice) }
- let!(:reply1) { Fabricate(:status, thread: status, account: jeff) }
- let!(:reply2) { Fabricate(:status, thread: reply1, account: bob) }
- let!(:reply3) { Fabricate(:status, thread: reply2, account: alice) }
+ let!(:reply_to_status) { Fabricate(:status, thread: status, account: jeff) }
+ let!(:reply_to_first_reply) { Fabricate(:status, thread: reply_to_status, account: bob) }
+ let!(:reply_to_second_reply) { Fabricate(:status, thread: reply_to_first_reply, account: alice) }
let!(:viewer) { Fabricate(:account, username: 'viewer') }
it 'returns conversation history' do
- expect(reply3.ancestors(4)).to include(status, reply1, reply2)
+ expect(reply_to_second_reply.ancestors(4)).to include(status, reply_to_status, reply_to_first_reply)
end
it 'does not return conversation history user is not allowed to see' do
- reply1.update(visibility: :private)
+ reply_to_status.update(visibility: :private)
status.update(visibility: :direct)
- expect(reply3.ancestors(4, viewer)).to_not include(reply1, status)
+ expect(reply_to_second_reply.ancestors(4, viewer)).to_not include(reply_to_status, status)
end
it 'does not return conversation history from blocked users' do
viewer.block!(jeff)
- expect(reply3.ancestors(4, viewer)).to_not include(reply1)
+ expect(reply_to_second_reply.ancestors(4, viewer)).to_not include(reply_to_status)
end
it 'does not return conversation history from muted users' do
viewer.mute!(jeff)
- expect(reply3.ancestors(4, viewer)).to_not include(reply1)
+ expect(reply_to_second_reply.ancestors(4, viewer)).to_not include(reply_to_status)
end
it 'does not return conversation history from silenced and not followed users' do
jeff.silence!
- expect(reply3.ancestors(4, viewer)).to_not include(reply1)
+ expect(reply_to_second_reply.ancestors(4, viewer)).to_not include(reply_to_status)
end
it 'does not return conversation history from blocked domains' do
viewer.block_domain!('example.com')
- expect(reply3.ancestors(4, viewer)).to_not include(reply2)
+ expect(reply_to_second_reply.ancestors(4, viewer)).to_not include(reply_to_first_reply)
end
it 'ignores deleted records' do
@@ 83,40 83,40 @@ describe StatusThreadingConcern do
let!(:bob) { Fabricate(:account, username: 'bob', domain: 'example.com') }
let!(:jeff) { Fabricate(:account, username: 'jeff') }
let!(:status) { Fabricate(:status, account: alice) }
- let!(:reply1) { Fabricate(:status, thread: status, account: alice) }
- let!(:reply2) { Fabricate(:status, thread: status, account: bob) }
- let!(:reply3) { Fabricate(:status, thread: reply1, account: jeff) }
+ let!(:reply_to_status_from_alice) { Fabricate(:status, thread: status, account: alice) }
+ let!(:reply_to_status_from_bob) { Fabricate(:status, thread: status, account: bob) }
+ let!(:reply_to_alice_reply_from_jeff) { Fabricate(:status, thread: reply_to_status_from_alice, account: jeff) }
let!(:viewer) { Fabricate(:account, username: 'viewer') }
it 'returns replies' do
- expect(status.descendants(4)).to include(reply1, reply2, reply3)
+ expect(status.descendants(4)).to include(reply_to_status_from_alice, reply_to_status_from_bob, reply_to_alice_reply_from_jeff)
end
it 'does not return replies user is not allowed to see' do
- reply1.update(visibility: :private)
- reply3.update(visibility: :direct)
+ reply_to_status_from_alice.update(visibility: :private)
+ reply_to_alice_reply_from_jeff.update(visibility: :direct)
- expect(status.descendants(4, viewer)).to_not include(reply1, reply3)
+ expect(status.descendants(4, viewer)).to_not include(reply_to_status_from_alice, reply_to_alice_reply_from_jeff)
end
it 'does not return replies from blocked users' do
viewer.block!(jeff)
- expect(status.descendants(4, viewer)).to_not include(reply3)
+ expect(status.descendants(4, viewer)).to_not include(reply_to_alice_reply_from_jeff)
end
it 'does not return replies from muted users' do
viewer.mute!(jeff)
- expect(status.descendants(4, viewer)).to_not include(reply3)
+ expect(status.descendants(4, viewer)).to_not include(reply_to_alice_reply_from_jeff)
end
it 'does not return replies from silenced and not followed users' do
jeff.silence!
- expect(status.descendants(4, viewer)).to_not include(reply3)
+ expect(status.descendants(4, viewer)).to_not include(reply_to_alice_reply_from_jeff)
end
it 'does not return replies from blocked domains' do
viewer.block_domain!('example.com')
- expect(status.descendants(4, viewer)).to_not include(reply2)
+ expect(status.descendants(4, viewer)).to_not include(reply_to_status_from_bob)
end
it 'promotes self-replies to the top while leaving the rest in order' do
M spec/models/custom_emoji_filter_spec.rb => spec/models/custom_emoji_filter_spec.rb +8 -8
@@ 6,9 6,9 @@ RSpec.describe CustomEmojiFilter do
describe '#results' do
subject { described_class.new(params).results }
- let!(:custom_emoji_0) { Fabricate(:custom_emoji, domain: 'a') }
- let!(:custom_emoji_1) { Fabricate(:custom_emoji, domain: 'b') }
- let!(:custom_emoji_2) { Fabricate(:custom_emoji, domain: nil, shortcode: 'hoge') }
+ let!(:custom_emoji_domain_a) { Fabricate(:custom_emoji, domain: 'a') }
+ let!(:custom_emoji_domain_b) { Fabricate(:custom_emoji, domain: 'b') }
+ let!(:custom_emoji_domain_nil) { Fabricate(:custom_emoji, domain: nil, shortcode: 'hoge') }
context 'when params have values' do
context 'when local' do
@@ 16,7 16,7 @@ RSpec.describe CustomEmojiFilter do
it 'returns ActiveRecord::Relation' do
expect(subject).to be_a(ActiveRecord::Relation)
- expect(subject).to contain_exactly(custom_emoji_2)
+ expect(subject).to contain_exactly(custom_emoji_domain_nil)
end
end
@@ 25,7 25,7 @@ RSpec.describe CustomEmojiFilter do
it 'returns ActiveRecord::Relation' do
expect(subject).to be_a(ActiveRecord::Relation)
- expect(subject).to contain_exactly(custom_emoji_0, custom_emoji_1)
+ expect(subject).to contain_exactly(custom_emoji_domain_a, custom_emoji_domain_b)
end
end
@@ 34,7 34,7 @@ RSpec.describe CustomEmojiFilter do
it 'returns ActiveRecord::Relation' do
expect(subject).to be_a(ActiveRecord::Relation)
- expect(subject).to contain_exactly(custom_emoji_0)
+ expect(subject).to contain_exactly(custom_emoji_domain_a)
end
end
@@ 43,7 43,7 @@ RSpec.describe CustomEmojiFilter do
it 'returns ActiveRecord::Relation' do
expect(subject).to be_a(ActiveRecord::Relation)
- expect(subject).to contain_exactly(custom_emoji_2)
+ expect(subject).to contain_exactly(custom_emoji_domain_nil)
end
end
@@ 63,7 63,7 @@ RSpec.describe CustomEmojiFilter do
it 'returns ActiveRecord::Relation' do
expect(subject).to be_a(ActiveRecord::Relation)
- expect(subject).to contain_exactly(custom_emoji_0, custom_emoji_1, custom_emoji_2)
+ expect(subject).to contain_exactly(custom_emoji_domain_a, custom_emoji_domain_b, custom_emoji_domain_nil)
end
end
end
M spec/models/form/import_spec.rb => spec/models/form/import_spec.rb +38 -11
@@ 245,17 245,44 @@ RSpec.describe Form::Import do
expect(account.bulk_imports.first.rows.pluck(:data)).to match_array(expected_rows)
end
- it 'creates a BulkImport with expected attributes' do
- bulk_import = account.bulk_imports.first
- expect(bulk_import).to_not be_nil
- expect(bulk_import.type.to_sym).to eq subject.type.to_sym
- expect(bulk_import.original_filename).to eq subject.data.original_filename
- expect(bulk_import.likely_mismatched?).to eq subject.likely_mismatched?
- expect(bulk_import.overwrite?).to eq !!subject.overwrite # rubocop:disable Style/DoubleNegation
- expect(bulk_import.processed_items).to eq 0
- expect(bulk_import.imported_items).to eq 0
- expect(bulk_import.total_items).to eq bulk_import.rows.count
- expect(bulk_import.unconfirmed?).to be true
+ context 'with a BulkImport' do
+ let(:bulk_import) { account.bulk_imports.first }
+
+ it 'creates a non-nil bulk import' do
+ expect(bulk_import).to_not be_nil
+ end
+
+ it 'matches the subjects type' do
+ expect(bulk_import.type.to_sym).to eq subject.type.to_sym
+ end
+
+ it 'matches the subjects original filename' do
+ expect(bulk_import.original_filename).to eq subject.data.original_filename
+ end
+
+ it 'matches the subjects likely_mismatched? value' do
+ expect(bulk_import.likely_mismatched?).to eq subject.likely_mismatched?
+ end
+
+ it 'matches the subject overwrite value' do
+ expect(bulk_import.overwrite?).to eq !!subject.overwrite # rubocop:disable Style/DoubleNegation
+ end
+
+ it 'has zero processed items' do
+ expect(bulk_import.processed_items).to eq 0
+ end
+
+ it 'has zero imported items' do
+ expect(bulk_import.imported_items).to eq 0
+ end
+
+ it 'has a correct total_items value' do
+ expect(bulk_import.total_items).to eq bulk_import.rows.count
+ end
+
+ it 'defaults to unconfirmed true' do
+ expect(bulk_import.unconfirmed?).to be true
+ end
end
end
M spec/models/notification_spec.rb => spec/models/notification_spec.rb +79 -65
@@ 99,73 99,87 @@ RSpec.describe Notification do
]
end
- it 'preloads target status' do
- # mention
- expect(subject[0].type).to eq :mention
- expect(subject[0].association(:mention)).to be_loaded
- expect(subject[0].mention.association(:status)).to be_loaded
-
- # status
- expect(subject[1].type).to eq :status
- expect(subject[1].association(:status)).to be_loaded
-
- # reblog
- expect(subject[2].type).to eq :reblog
- expect(subject[2].association(:status)).to be_loaded
- expect(subject[2].status.association(:reblog)).to be_loaded
-
- # follow: nothing
- expect(subject[3].type).to eq :follow
- expect(subject[3].target_status).to be_nil
-
- # follow_request: nothing
- expect(subject[4].type).to eq :follow_request
- expect(subject[4].target_status).to be_nil
-
- # favourite
- expect(subject[5].type).to eq :favourite
- expect(subject[5].association(:favourite)).to be_loaded
- expect(subject[5].favourite.association(:status)).to be_loaded
-
- # poll
- expect(subject[6].type).to eq :poll
- expect(subject[6].association(:poll)).to be_loaded
- expect(subject[6].poll.association(:status)).to be_loaded
+ context 'with a preloaded target status' do
+ it 'preloads mention' do
+ expect(subject[0].type).to eq :mention
+ expect(subject[0].association(:mention)).to be_loaded
+ expect(subject[0].mention.association(:status)).to be_loaded
+ end
+
+ it 'preloads status' do
+ expect(subject[1].type).to eq :status
+ expect(subject[1].association(:status)).to be_loaded
+ end
+
+ it 'preloads reblog' do
+ expect(subject[2].type).to eq :reblog
+ expect(subject[2].association(:status)).to be_loaded
+ expect(subject[2].status.association(:reblog)).to be_loaded
+ end
+
+ it 'preloads follow as nil' do
+ expect(subject[3].type).to eq :follow
+ expect(subject[3].target_status).to be_nil
+ end
+
+ it 'preloads follow_request as nill' do
+ expect(subject[4].type).to eq :follow_request
+ expect(subject[4].target_status).to be_nil
+ end
+
+ it 'preloads favourite' do
+ expect(subject[5].type).to eq :favourite
+ expect(subject[5].association(:favourite)).to be_loaded
+ expect(subject[5].favourite.association(:status)).to be_loaded
+ end
+
+ it 'preloads poll' do
+ expect(subject[6].type).to eq :poll
+ expect(subject[6].association(:poll)).to be_loaded
+ expect(subject[6].poll.association(:status)).to be_loaded
+ end
end
- it 'replaces to cached status' do
- # mention
- expect(subject[0].type).to eq :mention
- expect(subject[0].target_status.association(:account)).to be_loaded
- expect(subject[0].target_status).to eq mention.status
-
- # status
- expect(subject[1].type).to eq :status
- expect(subject[1].target_status.association(:account)).to be_loaded
- expect(subject[1].target_status).to eq status
-
- # reblog
- expect(subject[2].type).to eq :reblog
- expect(subject[2].target_status.association(:account)).to be_loaded
- expect(subject[2].target_status).to eq reblog.reblog
-
- # follow: nothing
- expect(subject[3].type).to eq :follow
- expect(subject[3].target_status).to be_nil
-
- # follow_request: nothing
- expect(subject[4].type).to eq :follow_request
- expect(subject[4].target_status).to be_nil
-
- # favourite
- expect(subject[5].type).to eq :favourite
- expect(subject[5].target_status.association(:account)).to be_loaded
- expect(subject[5].target_status).to eq favourite.status
-
- # poll
- expect(subject[6].type).to eq :poll
- expect(subject[6].target_status.association(:account)).to be_loaded
- expect(subject[6].target_status).to eq poll.status
+ context 'with a cached status' do
+ it 'replaces mention' do
+ expect(subject[0].type).to eq :mention
+ expect(subject[0].target_status.association(:account)).to be_loaded
+ expect(subject[0].target_status).to eq mention.status
+ end
+
+ it 'replaces status' do
+ expect(subject[1].type).to eq :status
+ expect(subject[1].target_status.association(:account)).to be_loaded
+ expect(subject[1].target_status).to eq status
+ end
+
+ it 'replaces reblog' do
+ expect(subject[2].type).to eq :reblog
+ expect(subject[2].target_status.association(:account)).to be_loaded
+ expect(subject[2].target_status).to eq reblog.reblog
+ end
+
+ it 'replaces follow' do
+ expect(subject[3].type).to eq :follow
+ expect(subject[3].target_status).to be_nil
+ end
+
+ it 'replaces follow_request' do
+ expect(subject[4].type).to eq :follow_request
+ expect(subject[4].target_status).to be_nil
+ end
+
+ it 'replaces favourite' do
+ expect(subject[5].type).to eq :favourite
+ expect(subject[5].target_status.association(:account)).to be_loaded
+ expect(subject[5].target_status).to eq favourite.status
+ end
+
+ it 'replaces poll' do
+ expect(subject[6].type).to eq :poll
+ expect(subject[6].target_status.association(:account)).to be_loaded
+ expect(subject[6].target_status).to eq poll.status
+ end
end
end
end
M spec/models/status_spec.rb => spec/models/status_spec.rb +42 -42
@@ 341,82 341,82 @@ RSpec.describe Status do
end
describe '.tagged_with' do
- let(:tag1) { Fabricate(:tag) }
- let(:tag2) { Fabricate(:tag) }
- let(:tag3) { Fabricate(:tag) }
- let!(:status1) { Fabricate(:status, tags: [tag1]) }
- let!(:status2) { Fabricate(:status, tags: [tag2]) }
- let!(:status3) { Fabricate(:status, tags: [tag3]) }
- let!(:status4) { Fabricate(:status, tags: []) }
- let!(:status5) { Fabricate(:status, tags: [tag1, tag2, tag3]) }
+ let(:tag_cats) { Fabricate(:tag, name: 'cats') }
+ let(:tag_dogs) { Fabricate(:tag, name: 'dogs') }
+ let(:tag_zebras) { Fabricate(:tag, name: 'zebras') }
+ let!(:status_with_tag_cats) { Fabricate(:status, tags: [tag_cats]) }
+ let!(:status_with_tag_dogs) { Fabricate(:status, tags: [tag_dogs]) }
+ let!(:status_tagged_with_zebras) { Fabricate(:status, tags: [tag_zebras]) }
+ let!(:status_without_tags) { Fabricate(:status, tags: []) }
+ let!(:status_with_all_tags) { Fabricate(:status, tags: [tag_cats, tag_dogs, tag_zebras]) }
context 'when given one tag' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with([tag1.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status5.id)
- expect(described_class.tagged_with([tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status2.id, status5.id)
- expect(described_class.tagged_with([tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status3.id, status5.id)
+ expect(described_class.tagged_with([tag_cats.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_with_all_tags.id)
+ expect(described_class.tagged_with([tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_dogs.id, status_with_all_tags.id)
+ expect(described_class.tagged_with([tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_tagged_with_zebras.id, status_with_all_tags.id)
end
end
context 'when given multiple tags' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with([tag1.id, tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status2.id, status5.id)
- expect(described_class.tagged_with([tag1.id, tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status3.id, status5.id)
- expect(described_class.tagged_with([tag2.id, tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status2.id, status3.id, status5.id)
+ expect(described_class.tagged_with([tag_cats.id, tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_with_tag_dogs.id, status_with_all_tags.id)
+ expect(described_class.tagged_with([tag_cats.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_tagged_with_zebras.id, status_with_all_tags.id)
+ expect(described_class.tagged_with([tag_dogs.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_dogs.id, status_tagged_with_zebras.id, status_with_all_tags.id)
end
end
end
describe '.tagged_with_all' do
- let(:tag1) { Fabricate(:tag) }
- let(:tag2) { Fabricate(:tag) }
- let(:tag3) { Fabricate(:tag) }
- let!(:status1) { Fabricate(:status, tags: [tag1]) }
- let!(:status2) { Fabricate(:status, tags: [tag2]) }
- let!(:status3) { Fabricate(:status, tags: [tag3]) }
- let!(:status4) { Fabricate(:status, tags: []) }
- let!(:status5) { Fabricate(:status, tags: [tag1, tag2]) }
+ let(:tag_cats) { Fabricate(:tag, name: 'cats') }
+ let(:tag_dogs) { Fabricate(:tag, name: 'dogs') }
+ let(:tag_zebras) { Fabricate(:tag, name: 'zebras') }
+ let!(:status_with_tag_cats) { Fabricate(:status, tags: [tag_cats]) }
+ let!(:status_with_tag_dogs) { Fabricate(:status, tags: [tag_dogs]) }
+ let!(:status_tagged_with_zebras) { Fabricate(:status, tags: [tag_zebras]) }
+ let!(:status_without_tags) { Fabricate(:status, tags: []) }
+ let!(:status_with_all_tags) { Fabricate(:status, tags: [tag_cats, tag_dogs]) }
context 'when given one tag' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with_all([tag1.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status5.id)
- expect(described_class.tagged_with_all([tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status2.id, status5.id)
- expect(described_class.tagged_with_all([tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status3.id)
+ expect(described_class.tagged_with_all([tag_cats.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_with_all_tags.id)
+ expect(described_class.tagged_with_all([tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_dogs.id, status_with_all_tags.id)
+ expect(described_class.tagged_with_all([tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_tagged_with_zebras.id)
end
end
context 'when given multiple tags' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with_all([tag1.id, tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status5.id)
- expect(described_class.tagged_with_all([tag1.id, tag3.id]).reorder(:id).pluck(:id).uniq).to eq []
- expect(described_class.tagged_with_all([tag2.id, tag3.id]).reorder(:id).pluck(:id).uniq).to eq []
+ expect(described_class.tagged_with_all([tag_cats.id, tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_all_tags.id)
+ expect(described_class.tagged_with_all([tag_cats.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to eq []
+ expect(described_class.tagged_with_all([tag_dogs.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to eq []
end
end
end
describe '.tagged_with_none' do
- let(:tag1) { Fabricate(:tag) }
- let(:tag2) { Fabricate(:tag) }
- let(:tag3) { Fabricate(:tag) }
- let!(:status1) { Fabricate(:status, tags: [tag1]) }
- let!(:status2) { Fabricate(:status, tags: [tag2]) }
- let!(:status3) { Fabricate(:status, tags: [tag3]) }
- let!(:status4) { Fabricate(:status, tags: []) }
- let!(:status5) { Fabricate(:status, tags: [tag1, tag2, tag3]) }
+ let(:tag_cats) { Fabricate(:tag, name: 'cats') }
+ let(:tag_dogs) { Fabricate(:tag, name: 'dogs') }
+ let(:tag_zebras) { Fabricate(:tag, name: 'zebras') }
+ let!(:status_with_tag_cats) { Fabricate(:status, tags: [tag_cats]) }
+ let!(:status_with_tag_dogs) { Fabricate(:status, tags: [tag_dogs]) }
+ let!(:status_tagged_with_zebras) { Fabricate(:status, tags: [tag_zebras]) }
+ let!(:status_without_tags) { Fabricate(:status, tags: []) }
+ let!(:status_with_all_tags) { Fabricate(:status, tags: [tag_cats, tag_dogs, tag_zebras]) }
context 'when given one tag' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with_none([tag1.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status2.id, status3.id, status4.id)
- expect(described_class.tagged_with_none([tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status3.id, status4.id)
- expect(described_class.tagged_with_none([tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status2.id, status4.id)
+ expect(described_class.tagged_with_none([tag_cats.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_dogs.id, status_tagged_with_zebras.id, status_without_tags.id)
+ expect(described_class.tagged_with_none([tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_tagged_with_zebras.id, status_without_tags.id)
+ expect(described_class.tagged_with_none([tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_with_tag_dogs.id, status_without_tags.id)
end
end
context 'when given multiple tags' do
it 'returns the expected statuses' do
- expect(described_class.tagged_with_none([tag1.id, tag2.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status3.id, status4.id)
- expect(described_class.tagged_with_none([tag1.id, tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status2.id, status4.id)
- expect(described_class.tagged_with_none([tag2.id, tag3.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status1.id, status4.id)
+ expect(described_class.tagged_with_none([tag_cats.id, tag_dogs.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_tagged_with_zebras.id, status_without_tags.id)
+ expect(described_class.tagged_with_none([tag_cats.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_dogs.id, status_without_tags.id)
+ expect(described_class.tagged_with_none([tag_dogs.id, tag_zebras.id]).reorder(:id).pluck(:id).uniq).to contain_exactly(status_with_tag_cats.id, status_without_tags.id)
end
end
end
M spec/models/tag_feed_spec.rb => spec/models/tag_feed_spec.rb +32 -32
@@ 5,78 5,78 @@ require 'rails_helper'
describe TagFeed, type: :service do
describe '#get' do
let(:account) { Fabricate(:account) }
- let(:tag1) { Fabricate(:tag) }
- let(:tag2) { Fabricate(:tag) }
- let!(:status1) { Fabricate(:status, tags: [tag1]) }
- let!(:status2) { Fabricate(:status, tags: [tag2]) }
- let!(:both) { Fabricate(:status, tags: [tag1, tag2]) }
+ let(:tag_cats) { Fabricate(:tag, name: 'cats') }
+ let(:tag_dogs) { Fabricate(:tag, name: 'dogs') }
+ let!(:status_tagged_with_cats) { Fabricate(:status, tags: [tag_cats]) }
+ let!(:status_tagged_with_dogs) { Fabricate(:status, tags: [tag_dogs]) }
+ let!(:both) { Fabricate(:status, tags: [tag_cats, tag_dogs]) }
it 'can add tags in "any" mode' do
- results = described_class.new(tag1, nil, any: [tag2.name]).get(20)
- expect(results).to include status1
- expect(results).to include status2
+ results = described_class.new(tag_cats, nil, any: [tag_dogs.name]).get(20)
+ expect(results).to include status_tagged_with_cats
+ expect(results).to include status_tagged_with_dogs
expect(results).to include both
end
it 'can remove tags in "all" mode' do
- results = described_class.new(tag1, nil, all: [tag2.name]).get(20)
- expect(results).to_not include status1
- expect(results).to_not include status2
+ results = described_class.new(tag_cats, nil, all: [tag_dogs.name]).get(20)
+ expect(results).to_not include status_tagged_with_cats
+ expect(results).to_not include status_tagged_with_dogs
expect(results).to include both
end
it 'can remove tags in "none" mode' do
- results = described_class.new(tag1, nil, none: [tag2.name]).get(20)
- expect(results).to include status1
- expect(results).to_not include status2
+ results = described_class.new(tag_cats, nil, none: [tag_dogs.name]).get(20)
+ expect(results).to include status_tagged_with_cats
+ expect(results).to_not include status_tagged_with_dogs
expect(results).to_not include both
end
it 'ignores an invalid mode' do
- results = described_class.new(tag1, nil, wark: [tag2.name]).get(20)
- expect(results).to include status1
- expect(results).to_not include status2
+ results = described_class.new(tag_cats, nil, wark: [tag_dogs.name]).get(20)
+ expect(results).to include status_tagged_with_cats
+ expect(results).to_not include status_tagged_with_dogs
expect(results).to include both
end
it 'handles being passed non existent tag names' do
- results = described_class.new(tag1, nil, any: ['wark']).get(20)
- expect(results).to include status1
- expect(results).to_not include status2
+ results = described_class.new(tag_cats, nil, any: ['wark']).get(20)
+ expect(results).to include status_tagged_with_cats
+ expect(results).to_not include status_tagged_with_dogs
expect(results).to include both
end
it 'can restrict to an account' do
- BlockService.new.call(account, status1.account)
- results = described_class.new(tag1, account, none: [tag2.name]).get(20)
- expect(results).to_not include status1
+ BlockService.new.call(account, status_tagged_with_cats.account)
+ results = described_class.new(tag_cats, account, none: [tag_dogs.name]).get(20)
+ expect(results).to_not include status_tagged_with_cats
end
it 'can restrict to local' do
- status1.account.update(domain: 'example.com')
- status1.update(local: false, uri: 'example.com/toot')
- results = described_class.new(tag1, nil, any: [tag2.name], local: true).get(20)
- expect(results).to_not include status1
+ status_tagged_with_cats.account.update(domain: 'example.com')
+ status_tagged_with_cats.update(local: false, uri: 'example.com/toot')
+ results = described_class.new(tag_cats, nil, any: [tag_dogs.name], local: true).get(20)
+ expect(results).to_not include status_tagged_with_cats
end
it 'allows replies to be included' do
original = Fabricate(:status)
- status = Fabricate(:status, tags: [tag1], in_reply_to_id: original.id)
+ status = Fabricate(:status, tags: [tag_cats], in_reply_to_id: original.id)
- results = described_class.new(tag1, nil).get(20)
+ results = described_class.new(tag_cats, nil).get(20)
expect(results).to include(status)
end
context 'when the feed contains a local-only status' do
- let!(:status) { Fabricate(:status, tags: [tag1], local_only: true) }
+ let!(:status) { Fabricate(:status, tags: [tag_cats], local_only: true) }
it 'does not show local-only statuses without a viewer' do
- results = described_class.new(tag1, nil).get(20)
+ results = described_class.new(tag_cats, nil).get(20)
expect(results).to_not include(status)
end
it 'shows local-only statuses given a viewer' do
- results = described_class.new(tag1, account).get(20)
+ results = described_class.new(tag_cats, account).get(20)
expect(results).to include(status)
end
end
M spec/models/trends/statuses_spec.rb => spec/models/trends/statuses_spec.rb +26 -23
@@ 11,12 11,12 @@ RSpec.describe Trends::Statuses do
let!(:query) { subject.query }
let!(:today) { at_time }
- let!(:status1) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: today) }
- let!(:status2) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
+ let!(:status_foo) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: today) }
+ let!(:status_bar) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
before do
- 15.times { reblog(status1, today) }
- 12.times { reblog(status2, today) }
+ default_threshold_value.times { reblog(status_foo, today) }
+ default_threshold_value.times { reblog(status_bar, today) }
subject.refresh(today)
end
@@ 29,18 29,18 @@ RSpec.describe Trends::Statuses do
end
it 'filters out blocked accounts' do
- account.block!(status1.account)
- expect(query.filtered_for(account).to_a).to eq [status2]
+ account.block!(status_foo.account)
+ expect(query.filtered_for(account).to_a).to eq [status_bar]
end
it 'filters out muted accounts' do
- account.mute!(status2.account)
- expect(query.filtered_for(account).to_a).to eq [status1]
+ account.mute!(status_bar.account)
+ expect(query.filtered_for(account).to_a).to eq [status_foo]
end
it 'filters out blocked-by accounts' do
- status1.account.block!(account)
- expect(query.filtered_for(account).to_a).to eq [status2]
+ status_foo.account.block!(account)
+ expect(query.filtered_for(account).to_a).to eq [status_bar]
end
end
end
@@ 71,14 71,14 @@ RSpec.describe Trends::Statuses do
let!(:today) { at_time }
let!(:yesterday) { today - 1.day }
- let!(:status1) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: yesterday) }
- let!(:status2) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
- let!(:status3) { Fabricate(:status, text: 'Baz', language: 'en', trendable: true, created_at: today) }
+ let!(:status_foo) { Fabricate(:status, text: 'Foo', language: 'en', trendable: true, created_at: yesterday) }
+ let!(:status_bar) { Fabricate(:status, text: 'Bar', language: 'en', trendable: true, created_at: today) }
+ let!(:status_baz) { Fabricate(:status, text: 'Baz', language: 'en', trendable: true, created_at: today) }
before do
- 13.times { reblog(status1, today) }
- 13.times { reblog(status2, today) }
- 4.times { reblog(status3, today) }
+ default_threshold_value.times { reblog(status_foo, today) }
+ default_threshold_value.times { reblog(status_bar, today) }
+ (default_threshold_value - 1).times { reblog(status_baz, today) }
end
context 'when status trends are refreshed' do
@@ 86,21 86,20 @@ RSpec.describe Trends::Statuses do
subject.refresh(today)
end
- it 'calculates and re-calculates scores' do
- expect(subject.query.limit(10).to_a).to eq [status2, status1]
- end
+ it 'returns correct statuses from query' do
+ results = subject.query.limit(10).to_a
- it 'omits statuses below threshold' do
- expect(subject.query.limit(10).to_a).to_not include(status3)
+ expect(results).to eq [status_bar, status_foo]
+ expect(results).to_not include(status_baz)
end
end
it 'decays scores' do
subject.refresh(today)
- original_score = status2.trend.score
+ original_score = status_bar.trend.score
expect(original_score).to be_a Float
subject.refresh(today + subject.options[:score_halflife])
- decayed_score = status2.trend.reload.score
+ decayed_score = status_bar.trend.reload.score
expect(decayed_score).to be <= original_score / 2
end
end
@@ 109,4 108,8 @@ RSpec.describe Trends::Statuses do
reblog = Fabricate(:status, reblog: status, created_at: at_time)
subject.add(status, reblog.account_id, at_time)
end
+
+ def default_threshold_value
+ described_class.default_options[:threshold]
+ end
end
M spec/models/trends/tags_spec.rb => spec/models/trends/tags_spec.rb +11 -11
@@ 33,15 33,15 @@ RSpec.describe Trends::Tags do
let!(:today) { at_time }
let!(:yesterday) { today - 1.day }
- let!(:tag1) { Fabricate(:tag, name: 'Catstodon', trendable: true) }
- let!(:tag2) { Fabricate(:tag, name: 'DogsOfMastodon', trendable: true) }
- let!(:tag3) { Fabricate(:tag, name: 'OCs', trendable: true) }
+ let!(:tag_cats) { Fabricate(:tag, name: 'Catstodon', trendable: true) }
+ let!(:tag_dogs) { Fabricate(:tag, name: 'DogsOfMastodon', trendable: true) }
+ let!(:tag_ocs) { Fabricate(:tag, name: 'OCs', trendable: true) }
before do
- 2.times { |i| subject.add(tag1, i, yesterday) }
- 13.times { |i| subject.add(tag3, i, yesterday) }
- 16.times { |i| subject.add(tag1, i, today) }
- 4.times { |i| subject.add(tag2, i, today) }
+ 2.times { |i| subject.add(tag_cats, i, yesterday) }
+ 13.times { |i| subject.add(tag_ocs, i, yesterday) }
+ 16.times { |i| subject.add(tag_cats, i, today) }
+ 4.times { |i| subject.add(tag_dogs, i, today) }
end
context 'when tag trends are refreshed' do
@@ 51,20 51,20 @@ RSpec.describe Trends::Tags do
end
it 'calculates and re-calculates scores' do
- expect(subject.query.limit(10).to_a).to eq [tag1, tag3]
+ expect(subject.query.limit(10).to_a).to eq [tag_cats, tag_ocs]
end
it 'omits hashtags below threshold' do
- expect(subject.query.limit(10).to_a).to_not include(tag2)
+ expect(subject.query.limit(10).to_a).to_not include(tag_dogs)
end
end
it 'decays scores' do
subject.refresh(yesterday + 12.hours)
- original_score = subject.score(tag3.id)
+ original_score = subject.score(tag_ocs.id)
expect(original_score).to eq 144.0
subject.refresh(yesterday + 12.hours + subject.options[:max_score_halflife])
- decayed_score = subject.score(tag3.id)
+ decayed_score = subject.score(tag_ocs.id)
expect(decayed_score).to be <= original_score / 2
end
end
M spec/rails_helper.rb => spec/rails_helper.rb +12 -0
@@ 79,6 79,7 @@ RSpec.configure do |config|
config.before :each, type: :cli do
stub_stdout
+ stub_reset_connection_pools
end
config.before :each, type: :feature do
@@ 121,9 122,20 @@ def attachment_fixture(name)
end
def stub_stdout
+ # TODO: Is there a bettery way to:
+ # - Avoid CLI command output being printed out
+ # - Allow rspec to assert things against STDOUT
+ # - Avoid disabling stdout for other desirable output (deprecation warnings, for example)
allow($stdout).to receive(:write)
end
+def stub_reset_connection_pools
+ # TODO: Is there a better way to correctly run specs without stubbing this?
+ # (Avoids reset_connection_pools! in test env)
+ allow(ActiveRecord::Base).to receive(:establish_connection)
+ allow(RedisConfiguration).to receive(:establish_pool)
+end
+
def stub_jsonld_contexts!
stub_request(:get, 'https://www.w3.org/ns/activitystreams').to_return(request_fixture('json-ld.activitystreams.txt'))
stub_request(:get, 'https://w3id.org/identity/v1').to_return(request_fixture('json-ld.identity.txt'))
A spec/requests/api/v1/accounts_show_spec.rb => spec/requests/api/v1/accounts_show_spec.rb +53 -0
@@ 0,0 1,53 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+describe 'GET /api/v1/accounts/{account_id}' do
+ it 'returns account entity as 200 OK' do
+ account = Fabricate(:account)
+
+ get "/api/v1/accounts/#{account.id}"
+
+ aggregate_failures do
+ expect(response).to have_http_status(200)
+ expect(body_as_json[:id]).to eq(account.id.to_s)
+ end
+ end
+
+ it 'returns 404 if account not found' do
+ get '/api/v1/accounts/1'
+
+ aggregate_failures do
+ expect(response).to have_http_status(404)
+ expect(body_as_json[:error]).to eq('Record not found')
+ end
+ end
+
+ context 'when with token' do
+ it 'returns account entity as 200 OK if token is valid' do
+ account = Fabricate(:account)
+ user = Fabricate(:user, account: account)
+ token = Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: 'read:accounts').token
+
+ get "/api/v1/accounts/#{account.id}", headers: { Authorization: "Bearer #{token}" }
+
+ aggregate_failures do
+ expect(response).to have_http_status(200)
+ expect(body_as_json[:id]).to eq(account.id.to_s)
+ end
+ end
+
+ it 'returns 403 if scope of token is invalid' do
+ account = Fabricate(:account)
+ user = Fabricate(:user, account: account)
+ token = Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: 'write:statuses').token
+
+ get "/api/v1/accounts/#{account.id}", headers: { Authorization: "Bearer #{token}" }
+
+ aggregate_failures do
+ expect(response).to have_http_status(403)
+ expect(body_as_json[:error]).to eq('This action is outside the authorized scopes')
+ end
+ end
+ end
+end
R spec/controllers/api/v1/admin/canonical_email_blocks_controller_spec.rb => spec/requests/api/v1/admin/canonical_email_blocks_spec.rb +96 -169
@@ 2,89 2,55 @@
require 'rails_helper'
-describe Api::V1::Admin::CanonicalEmailBlocksController do
- render_views
-
+RSpec.describe 'Canonical Email Blocks' do
let(:role) { UserRole.find_by(name: 'Admin') }
let(:user) { Fabricate(:user, role: role) }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
let(:scopes) { 'admin:read:canonical_email_blocks admin:write:canonical_email_blocks' }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
+ describe 'GET /api/v1/admin/canonical_email_blocks' do
+ subject do
+ get '/api/v1/admin/canonical_email_blocks', headers: headers, params: params
end
- end
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
+ let(:params) { {} }
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
- describe 'GET #index' do
- context 'with wrong scope' do
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong scope', 'read:statuses'
- end
-
- context 'with wrong role' do
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
- get :index
+ subject
expect(response).to have_http_status(200)
end
context 'when there is no canonical email block' do
it 'returns an empty list' do
- get :index
+ subject
- body = body_as_json
-
- expect(body).to be_empty
+ expect(body_as_json).to be_empty
end
end
context 'when there are canonical email blocks' do
let!(:canonical_email_blocks) { Fabricate.times(5, :canonical_email_block) }
- let(:expected_email_hashes) { canonical_email_blocks.pluck(:canonical_email_hash) }
+ let(:expected_email_hashes) { canonical_email_blocks.pluck(:canonical_email_hash) }
it 'returns the correct canonical email hashes' do
- get :index
-
- json = body_as_json
+ subject
- expect(json.pluck(:canonical_email_hash)).to match_array(expected_email_hashes)
+ expect(body_as_json.pluck(:canonical_email_hash)).to match_array(expected_email_hashes)
end
context 'with limit param' do
let(:params) { { limit: 2 } }
it 'returns only the requested number of canonical email blocks' do
- get :index, params: params
+ subject
- json = body_as_json
-
- expect(json.size).to eq(params[:limit])
+ expect(body_as_json.size).to eq(params[:limit])
end
end
@@ 92,12 58,11 @@ describe Api::V1::Admin::CanonicalEmailBlocksController do
let(:params) { { since_id: canonical_email_blocks[1].id } }
it 'returns only the canonical email blocks after since_id' do
- get :index, params: params
+ subject
canonical_email_blocks_ids = canonical_email_blocks.pluck(:id).map(&:to_s)
- json = body_as_json
- expect(json.pluck(:id)).to match_array(canonical_email_blocks_ids[2..])
+ expect(body_as_json.pluck(:id)).to match_array(canonical_email_blocks_ids[2..])
end
end
@@ 105,47 70,36 @@ describe Api::V1::Admin::CanonicalEmailBlocksController do
let(:params) { { max_id: canonical_email_blocks[3].id } }
it 'returns only the canonical email blocks before max_id' do
- get :index, params: params
+ subject
canonical_email_blocks_ids = canonical_email_blocks.pluck(:id).map(&:to_s)
- json = body_as_json
- expect(json.pluck(:id)).to match_array(canonical_email_blocks_ids[..2])
+ expect(body_as_json.pluck(:id)).to match_array(canonical_email_blocks_ids[..2])
end
end
end
end
- describe 'GET #show' do
- let!(:canonical_email_block) { Fabricate(:canonical_email_block) }
- let(:params) { { id: canonical_email_block.id } }
-
- context 'with wrong scope' do
- before do
- get :show, params: params
- end
-
- it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ describe 'GET /api/v1/admin/canonical_email_blocks/:id' do
+ subject do
+ get "/api/v1/admin/canonical_email_blocks/#{canonical_email_block.id}", headers: headers
end
- context 'with wrong role' do
- before do
- get :show, params: params
- end
+ let!(:canonical_email_block) { Fabricate(:canonical_email_block) }
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
- context 'when canonical email block exists' do
+ context 'when the requested canonical email block exists' do
it 'returns http success' do
- get :show, params: params
+ subject
expect(response).to have_http_status(200)
end
- it 'returns canonical email block data correctly' do
- get :show, params: params
+ it 'returns the requested canonical email block data correctly' do
+ subject
json = body_as_json
@@ 154,138 108,116 @@ describe Api::V1::Admin::CanonicalEmailBlocksController do
end
end
- context 'when canonical block does not exist' do
+ context 'when the requested canonical block does not exist' do
it 'returns http not found' do
- get :show, params: { id: 0 }
+ get '/api/v1/admin/canonical_email_blocks/-1', headers: headers
expect(response).to have_http_status(404)
end
end
end
- describe 'POST #test' do
- context 'with wrong scope' do
- before do
- post :test
- end
-
- it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ describe 'POST /api/v1/admin/canonical_email_blocks/test' do
+ subject do
+ post '/api/v1/admin/canonical_email_blocks/test', headers: headers, params: params
end
- context 'with wrong role' do
- before do
- post :test, params: { email: 'whatever@email.com' }
- end
+ let(:params) { { email: 'email@example.com' } }
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ context 'when the required email param is not provided' do
+ let(:params) { {} }
- context 'when required email is not provided' do
it 'returns http bad request' do
- post :test
+ subject
expect(response).to have_http_status(400)
end
end
- context 'when required email is provided' do
- let(:params) { { email: 'example@email.com' } }
-
+ context 'when the required email param is provided' do
context 'when there is a matching canonical email block' do
let!(:canonical_email_block) { CanonicalEmailBlock.create(params) }
it 'returns http success' do
- post :test, params: params
+ subject
expect(response).to have_http_status(200)
end
- it 'returns expected canonical email hash' do
- post :test, params: params
-
- json = body_as_json
+ it 'returns the expected canonical email hash' do
+ subject
- expect(json[0][:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
+ expect(body_as_json[0][:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
end
end
context 'when there is no matching canonical email block' do
it 'returns http success' do
- post :test, params: params
+ subject
expect(response).to have_http_status(200)
end
it 'returns an empty list' do
- post :test, params: params
+ subject
- json = body_as_json
-
- expect(json).to be_empty
+ expect(body_as_json).to be_empty
end
end
end
end
- describe 'POST #create' do
- let(:params) { { email: 'example@email.com' } }
- let(:canonical_email_block) { CanonicalEmailBlock.new(email: params[:email]) }
-
- context 'with wrong scope' do
- before do
- post :create, params: params
- end
-
- it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ describe 'POST /api/v1/admin/canonical_email_blocks' do
+ subject do
+ post '/api/v1/admin/canonical_email_blocks', headers: headers, params: params
end
- context 'with wrong role' do
- before do
- post :create, params: params
- end
+ let(:params) { { email: 'example@email.com' } }
+ let(:canonical_email_block) { CanonicalEmailBlock.new(email: params[:email]) }
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'read:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
- post :create, params: params
+ subject
expect(response).to have_http_status(200)
end
- it 'returns canonical_email_hash correctly' do
- post :create, params: params
+ it 'returns the canonical_email_hash correctly' do
+ subject
- json = body_as_json
-
- expect(json[:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
+ expect(body_as_json[:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
end
- context 'when required email param is not provided' do
+ context 'when the required email param is not provided' do
+ let(:params) { {} }
+
it 'returns http unprocessable entity' do
- post :create
+ subject
expect(response).to have_http_status(422)
end
end
- context 'when canonical_email_hash param is provided instead of email' do
+ context 'when the canonical_email_hash param is provided instead of email' do
let(:params) { { canonical_email_hash: 'dd501ce4e6b08698f19df96f2f15737e48a75660b1fa79b6ff58ea25ee4851a4' } }
it 'returns http success' do
- post :create, params: params
+ subject
expect(response).to have_http_status(200)
end
- it 'returns correct canonical_email_hash' do
- post :create, params: params
+ it 'returns the correct canonical_email_hash' do
+ subject
- json = body_as_json
-
- expect(json[:canonical_email_hash]).to eq(params[:canonical_email_hash])
+ expect(body_as_json[:canonical_email_hash]).to eq(params[:canonical_email_hash])
end
end
@@ 293,63 225,58 @@ describe Api::V1::Admin::CanonicalEmailBlocksController do
let(:params) { { email: 'example@email.com', canonical_email_hash: 'dd501ce4e6b08698f19df96f2f15737e48a75660b1fa79b6ff58ea25ee4851a4' } }
it 'returns http success' do
- post :create, params: params
+ subject
expect(response).to have_http_status(200)
end
- it 'ignores canonical_email_hash param' do
- post :create, params: params
-
- json = body_as_json
+ it 'ignores the canonical_email_hash param' do
+ subject
- expect(json[:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
+ expect(body_as_json[:canonical_email_hash]).to eq(canonical_email_block.canonical_email_hash)
end
end
- context 'when canonical email was already blocked' do
+ context 'when the given canonical email was already blocked' do
before do
canonical_email_block.save
end
it 'returns http unprocessable entity' do
- post :create, params: params
+ subject
expect(response).to have_http_status(422)
end
end
end
- describe 'DELETE #destroy' do
+ describe 'DELETE /api/v1/admin/canonical_email_blocks/:id' do
+ subject do
+ delete "/api/v1/admin/canonical_email_blocks/#{canonical_email_block.id}", headers: headers
+ end
+
let!(:canonical_email_block) { Fabricate(:canonical_email_block) }
- let(:params) { { id: canonical_email_block.id } }
- context 'with wrong scope' do
- before do
- delete :destroy, params: params
- end
+ it_behaves_like 'forbidden for wrong scope', 'read:statuses'
- it_behaves_like 'forbidden for wrong scope', 'read:statuses'
- end
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
- context 'with wrong role' do
- before do
- delete :destroy, params: params
- end
+ it 'returns http success' do
+ subject
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
+ expect(response).to have_http_status(200)
end
- it 'returns http success' do
- delete :destroy, params: params
+ it 'deletes the canonical email block' do
+ subject
- expect(response).to have_http_status(200)
+ expect(CanonicalEmailBlock.find_by(id: canonical_email_block.id)).to be_nil
end
- context 'when canonical email block is not found' do
+ context 'when the canonical email block is not found' do
it 'returns http not found' do
- delete :destroy, params: { id: 0 }
+ delete '/api/v1/admin/canonical_email_blocks/0', headers: headers
expect(response).to have_http_status(404)
end
A spec/requests/api/v1/admin/domain_allows_spec.rb => spec/requests/api/v1/admin/domain_allows_spec.rb +194 -0
@@ 0,0 1,194 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Domain Allows' do
+ let(:role) { UserRole.find_by(name: 'Admin') }
+ let(:user) { Fabricate(:user, role: role) }
+ let(:scopes) { 'admin:read admin:write' }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/admin/domain_allows' do
+ subject do
+ get '/api/v1/admin/domain_allows', headers: headers, params: params
+ end
+
+ let(:params) { {} }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ context 'when there is no allowed domains' do
+ it 'returns an empty body' do
+ subject
+
+ expect(body_as_json).to be_empty
+ end
+ end
+
+ context 'when there are allowed domains' do
+ let!(:domain_allows) { Fabricate.times(5, :domain_allow) }
+ let(:expected_response) do
+ domain_allows.map do |domain_allow|
+ {
+ id: domain_allow.id.to_s,
+ domain: domain_allow.domain,
+ created_at: domain_allow.created_at.strftime('%Y-%m-%dT%H:%M:%S.%LZ'),
+ }
+ end
+ end
+
+ it 'returns the correct allowed domains' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+
+ context 'with limit param' do
+ let(:params) { { limit: 2 } }
+
+ it 'returns only the requested number of allowed domains' do
+ subject
+
+ expect(body_as_json.size).to eq(params[:limit])
+ end
+ end
+ end
+ end
+
+ describe 'GET /api/v1/admin/domain_allows/:id' do
+ subject do
+ get "/api/v1/admin/domain_allows/#{domain_allow.id}", headers: headers
+ end
+
+ let!(:domain_allow) { Fabricate(:domain_allow) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the expected allowed domain name' do
+ subject
+
+ expect(body_as_json[:domain]).to eq domain_allow.domain
+ end
+
+ context 'when the requested allowed domain does not exist' do
+ it 'returns http not found' do
+ get '/api/v1/admin/domain_allows/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+
+ describe 'POST /api/v1/admin/domain_allows' do
+ subject do
+ post '/api/v1/admin/domain_allows', headers: headers, params: params
+ end
+
+ let(:params) { { domain: 'foo.bar.com' } }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ context 'with a valid domain name' do
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the expected domain name' do
+ subject
+
+ expect(body_as_json[:domain]).to eq 'foo.bar.com'
+ end
+
+ it 'creates a domain allow' do
+ subject
+
+ expect(DomainAllow.find_by(domain: 'foo.bar.com')).to be_present
+ end
+ end
+
+ context 'with invalid domain name' do
+ let(:params) { 'foo bar' }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+
+ context 'when domain name is not specified' do
+ let(:params) { {} }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+
+ context 'when the domain is already allowed' do
+ before do
+ DomainAllow.create(params)
+ end
+
+ it 'returns the existing allowed domain name' do
+ subject
+
+ expect(body_as_json[:domain]).to eq(params[:domain])
+ end
+ end
+ end
+
+ describe 'DELETE /api/v1/admin/domain_allows/:id' do
+ subject do
+ delete "/api/v1/admin/domain_allows/#{domain_allow.id}", headers: headers
+ end
+
+ let!(:domain_allow) { Fabricate(:domain_allow) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'deletes the allowed domain' do
+ subject
+
+ expect(DomainAllow.find_by(id: domain_allow.id)).to be_nil
+ end
+
+ context 'when the allowed domain does not exist' do
+ it 'returns http not found' do
+ delete '/api/v1/admin/domain_allows/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+end
A spec/requests/api/v1/admin/domain_blocks_spec.rb => spec/requests/api/v1/admin/domain_blocks_spec.rb +264 -0
@@ 0,0 1,264 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Domain Blocks' do
+ let(:role) { UserRole.find_by(name: 'Admin') }
+ let(:user) { Fabricate(:user, role: role) }
+ let(:scopes) { 'admin:read:domain_blocks admin:write:domain_blocks' }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/admin/domain_blocks' do
+ subject do
+ get '/api/v1/admin/domain_blocks', headers: headers, params: params
+ end
+
+ let(:params) { {} }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ context 'when there are no domain blocks' do
+ it 'returns an empty list' do
+ subject
+
+ expect(body_as_json).to be_empty
+ end
+ end
+
+ context 'when there are domain blocks' do
+ let!(:domain_blocks) do
+ [
+ Fabricate(:domain_block, severity: :silence, reject_media: true),
+ Fabricate(:domain_block, severity: :suspend, obfuscate: true),
+ Fabricate(:domain_block, severity: :noop, reject_reports: true),
+ Fabricate(:domain_block, public_comment: 'Spam'),
+ Fabricate(:domain_block, private_comment: 'Spam'),
+ ]
+ end
+ let(:expected_responde) do
+ domain_blocks.map do |domain_block|
+ {
+ id: domain_block.id.to_s,
+ domain: domain_block.domain,
+ created_at: domain_block.created_at.strftime('%Y-%m-%dT%H:%M:%S.%LZ'),
+ severity: domain_block.severity.to_s,
+ reject_media: domain_block.reject_media,
+ reject_reports: domain_block.reject_reports,
+ private_comment: domain_block.private_comment,
+ public_comment: domain_block.public_comment,
+ obfuscate: domain_block.obfuscate,
+ }
+ end
+ end
+
+ it 'returns the expected domain blocks' do
+ subject
+
+ expect(body_as_json).to match_array(expected_responde)
+ end
+
+ context 'with limit param' do
+ let(:params) { { limit: 2 } }
+
+ it 'returns only the requested number of domain blocks' do
+ subject
+
+ expect(body_as_json.size).to eq(params[:limit])
+ end
+ end
+ end
+ end
+
+ describe 'GET /api/v1/admin/domain_blocks/:id' do
+ subject do
+ get "/api/v1/admin/domain_blocks/#{domain_block.id}", headers: headers
+ end
+
+ let!(:domain_block) { Fabricate(:domain_block) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the expected domain block content' do
+ subject
+
+ expect(body_as_json).to eq(
+ {
+ id: domain_block.id.to_s,
+ domain: domain_block.domain,
+ created_at: domain_block.created_at.strftime('%Y-%m-%dT%H:%M:%S.%LZ'),
+ severity: domain_block.severity.to_s,
+ reject_media: domain_block.reject_media,
+ reject_reports: domain_block.reject_reports,
+ private_comment: domain_block.private_comment,
+ public_comment: domain_block.public_comment,
+ obfuscate: domain_block.obfuscate,
+ }
+ )
+ end
+
+ context 'when the requested domain block does not exist' do
+ it 'returns http not found' do
+ get '/api/v1/admin/domain_blocks/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+
+ describe 'POST /api/v1/admin/domain_blocks' do
+ subject do
+ post '/api/v1/admin/domain_blocks', headers: headers, params: params
+ end
+
+ let(:params) { { domain: 'foo.bar.com', severity: :silence } }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns expected domain name and severity' do
+ subject
+
+ body = body_as_json
+
+ expect(body).to match a_hash_including(
+ {
+ domain: 'foo.bar.com',
+ severity: 'silence',
+ }
+ )
+ end
+
+ it 'creates a domain block' do
+ subject
+
+ expect(DomainBlock.find_by(domain: 'foo.bar.com')).to be_present
+ end
+
+ context 'when a stricter domain block already exists' do
+ before do
+ Fabricate(:domain_block, domain: 'bar.com', severity: :suspend)
+ end
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+
+ it 'returns existing domain block in error' do
+ subject
+
+ expect(body_as_json[:existing_domain_block][:domain]).to eq('bar.com')
+ end
+ end
+
+ context 'when given domain name is invalid' do
+ let(:params) { { domain: 'foo bar', severity: :silence } }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+ end
+
+ describe 'PUT /api/v1/admin/domain_blocks/:id' do
+ subject do
+ put "/api/v1/admin/domain_blocks/#{domain_block.id}", headers: headers, params: params
+ end
+
+ let!(:domain_block) { Fabricate(:domain_block, domain: 'example.com', severity: :silence) }
+ let(:params) { { domain: 'example.com', severity: 'suspend' } }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the updated domain block' do
+ subject
+
+ expect(body_as_json).to match a_hash_including(
+ {
+ id: domain_block.id.to_s,
+ domain: domain_block.domain,
+ severity: 'suspend',
+ }
+ )
+ end
+
+ it 'updates the block severity' do
+ expect { subject }.to change { domain_block.reload.severity }.from('silence').to('suspend')
+ end
+
+ context 'when domain block does not exist' do
+ it 'returns http not found' do
+ put '/api/v1/admin/domain_blocks/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+
+ describe 'DELETE /api/v1/admin/domain_blocks/:id' do
+ subject do
+ delete "/api/v1/admin/domain_blocks/#{domain_block.id}", headers: headers
+ end
+
+ let!(:domain_block) { Fabricate(:domain_block) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'deletes the domain block' do
+ subject
+
+ expect(DomainBlock.find_by(id: domain_block.id)).to be_nil
+ end
+
+ context 'when domain block does not exist' do
+ it 'returns http not found' do
+ delete '/api/v1/admin/domain_blocks/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+end
M spec/requests/api/v1/admin/email_domain_blocks_spec.rb => spec/requests/api/v1/admin/email_domain_blocks_spec.rb +0 -20
@@ 10,26 10,6 @@ RSpec.describe 'Email Domain Blocks' do
let(:scopes) { 'admin:read:email_domain_blocks admin:write:email_domain_blocks' }
let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- subject
-
- expect(response).to have_http_status(403)
- end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
-
- it 'returns http forbidden' do
- subject
-
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET /api/v1/admin/email_domain_blocks' do
subject do
get '/api/v1/admin/email_domain_blocks', headers: headers, params: params
R spec/controllers/api/v1/admin/ip_blocks_controller_spec.rb => spec/requests/api/v1/admin/ip_blocks_spec.rb +84 -138
@@ 2,65 2,35 @@
require 'rails_helper'
-describe Api::V1::Admin::IpBlocksController do
- render_views
-
+RSpec.describe 'IP Blocks' do
let(:role) { UserRole.find_by(name: 'Admin') }
let(:user) { Fabricate(:user, role: role) }
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
let(:scopes) { 'admin:read:ip_blocks admin:write:ip_blocks' }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
- before do
- allow(controller).to receive(:doorkeeper_token) { token }
- end
-
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
+ describe 'GET /api/v1/admin/ip_blocks' do
+ subject do
+ get '/api/v1/admin/ip_blocks', headers: headers, params: params
end
- end
-
- shared_examples 'forbidden for wrong role' do |wrong_role|
- let(:role) { UserRole.find_by(name: wrong_role) }
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
+ let(:params) { {} }
- describe 'GET #index' do
- context 'with wrong scope' do
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong scope', 'admin:write:ip_blocks'
- end
-
- context 'with wrong role' do
- before do
- get :index
- end
-
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'admin:write:ip_blocks'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
- get :index
+ subject
expect(response).to have_http_status(200)
end
context 'when there is no ip block' do
it 'returns an empty body' do
- get :index
+ subject
- json = body_as_json
-
- expect(json).to be_empty
+ expect(body_as_json).to be_empty
end
end
@@ 86,56 56,42 @@ describe Api::V1::Admin::IpBlocksController do
end
it 'returns the correct blocked ips' do
- get :index
-
- json = body_as_json
+ subject
- expect(json).to match_array(expected_response)
+ expect(body_as_json).to match_array(expected_response)
end
context 'with limit param' do
let(:params) { { limit: 2 } }
it 'returns only the requested number of ip blocks' do
- get :index, params: params
+ subject
- json = body_as_json
-
- expect(json.size).to eq(params[:limit])
+ expect(body_as_json.size).to eq(params[:limit])
end
end
end
end
- describe 'GET #show' do
- let!(:ip_block) { IpBlock.create(ip: '192.0.2.0/24', severity: :no_access) }
- let(:params) { { id: ip_block.id } }
-
- context 'with wrong scope' do
- before do
- get :show, params: params
- end
-
- it_behaves_like 'forbidden for wrong scope', 'admin:write:ip_blocks'
+ describe 'GET /api/v1/admin/ip_blocks/:id' do
+ subject do
+ get "/api/v1/admin/ip_blocks/#{ip_block.id}", headers: headers
end
- context 'with wrong role' do
- before do
- get :show, params: params
- end
+ let!(:ip_block) { IpBlock.create(ip: '192.0.2.0/24', severity: :no_access) }
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'admin:write:ip_blocks'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
- get :show, params: params
+ subject
expect(response).to have_http_status(200)
end
it 'returns the correct ip block' do
- get :show, params: params
+ subject
json = body_as_json
@@ 145,41 101,32 @@ describe Api::V1::Admin::IpBlocksController do
context 'when ip block does not exist' do
it 'returns http not found' do
- get :show, params: { id: 0 }
+ get '/api/v1/admin/ip_blocks/-1', headers: headers
expect(response).to have_http_status(404)
end
end
end
- describe 'POST #create' do
- let(:params) { { ip: '151.0.32.55', severity: 'no_access', comment: 'Spam' } }
-
- context 'with wrong scope' do
- before do
- post :create, params: params
- end
-
- it_behaves_like 'forbidden for wrong scope', 'admin:read:ip_blocks'
+ describe 'POST /api/v1/admin/ip_blocks' do
+ subject do
+ post '/api/v1/admin/ip_blocks', headers: headers, params: params
end
- context 'with wrong role' do
- before do
- post :create, params: params
- end
+ let(:params) { { ip: '151.0.32.55', severity: 'no_access', comment: 'Spam' } }
- it_behaves_like 'forbidden for wrong role', ''
- it_behaves_like 'forbidden for wrong role', 'Moderator'
- end
+ it_behaves_like 'forbidden for wrong scope', 'admin:read:ip_blocks'
+ it_behaves_like 'forbidden for wrong role', ''
+ it_behaves_like 'forbidden for wrong role', 'Moderator'
it 'returns http success' do
- post :create, params: params
+ subject
expect(response).to have_http_status(200)
end
it 'returns the correct ip block' do
- post :create, params: params
+ subject
json = body_as_json
@@ 188,119 135,118 @@ describe Api::V1::Admin::IpBlocksController do
expect(json[:comment]).to eq(params[:comment])
end
- context 'when ip is not provided' do
+ context 'when the required ip param is not provided' do
let(:params) { { ip: '', severity: 'no_access' } }
it 'returns http unprocessable entity' do
- post :create, params: params
+ subject
expect(response).to have_http_status(422)
end
end
- context 'when severity is not provided' do
+ context 'when the required severity param is not provided' do
let(:params) { { ip: '173.65.23.1', severity: '' } }
it 'returns http unprocessable entity' do
- post :create, params: params
+ subject
expect(response).to have_http_status(422)
end
end
- context 'when provided ip is already blocked' do
+ context 'when the given ip address is already blocked' do
before do
IpBlock.create(params)
end
it 'returns http unprocessable entity' do
- post :create, params: params
+ subject
expect(response).to have_http_status(422)
end
end
- context 'when provided ip address is invalid' do
+ context 'when the given ip address is invalid' do
let(:params) { { ip: '520.13.54.120', severity: 'no_access' } }
it 'returns http unprocessable entity' do
- post :create, params: params
+ subject
expect(response).to have_http_status(422)
end
end
end
- describe 'PUT #update' do
- context 'when ip block exists' do
- let!(:ip_block) { IpBlock.create(ip: '185.200.13.3', severity: 'no_access', comment: 'Spam', expires_in: 48.hours) }
- let(:params) { { id: ip_block.id, severity: 'sign_up_requires_approval', comment: 'Decreasing severity' } }
+ describe 'PUT /api/v1/admin/ip_blocks/:id' do
+ subject do
+ put "/api/v1/admin/ip_blocks/#{ip_block.id}", headers: headers, params: params
+ end
- it 'returns http success' do
- put :update, params: params
+ let!(:ip_block) { IpBlock.create(ip: '185.200.13.3', severity: 'no_access', comment: 'Spam', expires_in: 48.hours) }
+ let(:params) { { severity: 'sign_up_requires_approval', comment: 'Decreasing severity' } }
- expect(response).to have_http_status(200)
- end
+ it 'returns http success' do
+ subject
- it 'returns the correct ip block' do
- put :update, params: params
+ expect(response).to have_http_status(200)
+ end
- json = body_as_json
+ it 'returns the correct ip block' do
+ subject
- expect(json).to match(hash_including({
- ip: "#{ip_block.ip}/#{ip_block.ip.prefix}",
- severity: 'sign_up_requires_approval',
- comment: 'Decreasing severity',
- }))
- end
+ expect(body_as_json).to match(hash_including({
+ ip: "#{ip_block.ip}/#{ip_block.ip.prefix}",
+ severity: 'sign_up_requires_approval',
+ comment: 'Decreasing severity',
+ }))
+ end
- it 'updates the severity correctly' do
- expect { put :update, params: params }.to change { ip_block.reload.severity }.from('no_access').to('sign_up_requires_approval')
- end
+ it 'updates the severity correctly' do
+ expect { subject }.to change { ip_block.reload.severity }.from('no_access').to('sign_up_requires_approval')
+ end
- it 'updates the comment correctly' do
- expect { put :update, params: params }.to change { ip_block.reload.comment }.from('Spam').to('Decreasing severity')
- end
+ it 'updates the comment correctly' do
+ expect { subject }.to change { ip_block.reload.comment }.from('Spam').to('Decreasing severity')
end
context 'when ip block does not exist' do
it 'returns http not found' do
- put :update, params: { id: 0 }
+ put '/api/v1/admin/ip_blocks/-1', headers: headers, params: params
expect(response).to have_http_status(404)
end
end
end
- describe 'DELETE #destroy' do
- context 'when ip block exists' do
- let!(:ip_block) { IpBlock.create(ip: '185.200.13.3', severity: 'no_access') }
- let(:params) { { id: ip_block.id } }
+ describe 'DELETE /api/v1/admin/ip_blocks/:id' do
+ subject do
+ delete "/api/v1/admin/ip_blocks/#{ip_block.id}", headers: headers
+ end
- it 'returns http success' do
- delete :destroy, params: params
+ let!(:ip_block) { IpBlock.create(ip: '185.200.13.3', severity: 'no_access') }
- expect(response).to have_http_status(200)
- end
+ it 'returns http success' do
+ subject
- it 'returns an empty body' do
- delete :destroy, params: params
+ expect(response).to have_http_status(200)
+ end
- json = body_as_json
+ it 'returns an empty body' do
+ subject
- expect(json).to be_empty
- end
+ expect(body_as_json).to be_empty
+ end
- it 'deletes the ip block' do
- delete :destroy, params: params
+ it 'deletes the ip block' do
+ subject
- expect(IpBlock.find_by(id: ip_block.id)).to be_nil
- end
+ expect(IpBlock.find_by(id: ip_block.id)).to be_nil
end
context 'when ip block does not exist' do
it 'returns http not found' do
- delete :destroy, params: { id: 0 }
+ delete '/api/v1/admin/ip_blocks/-1', headers: headers
expect(response).to have_http_status(404)
end
A spec/requests/api/v1/admin/reports_spec.rb => spec/requests/api/v1/admin/reports_spec.rb +272 -0
@@ 0,0 1,272 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Reports' do
+ let(:role) { UserRole.find_by(name: 'Admin') }
+ let(:user) { Fabricate(:user, role: role) }
+ let(:scopes) { 'admin:read:reports admin:write:reports' }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/admin/reports' do
+ subject do
+ get '/api/v1/admin/reports', headers: headers, params: params
+ end
+
+ let(:params) { {} }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ context 'when there are no reports' do
+ it 'returns an empty list' do
+ subject
+
+ expect(body_as_json).to be_empty
+ end
+ end
+
+ context 'when there are reports' do
+ let!(:reporter) { Fabricate(:account) }
+ let!(:spammer) { Fabricate(:account) }
+ let(:expected_response) do
+ scope.map do |report|
+ hash_including({
+ id: report.id.to_s,
+ action_taken: report.action_taken?,
+ category: report.category,
+ comment: report.comment,
+ account: hash_including(id: report.account.id.to_s),
+ target_account: hash_including(id: report.target_account.id.to_s),
+ statuses: report.statuses,
+ rules: report.rules,
+ forwarded: report.forwarded,
+ })
+ end
+ end
+ let(:scope) { Report.unresolved }
+
+ before do
+ Fabricate(:report)
+ Fabricate(:report, target_account: spammer)
+ Fabricate(:report, account: reporter, target_account: spammer)
+ Fabricate(:report, action_taken_at: 4.days.ago, account: reporter)
+ Fabricate(:report, action_taken_at: 20.days.ago)
+ end
+
+ it 'returns all unresolved reports' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+
+ context 'with resolved param' do
+ let(:params) { { resolved: true } }
+ let(:scope) { Report.resolved }
+
+ it 'returns only the resolved reports' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+ end
+
+ context 'with account_id param' do
+ let(:params) { { account_id: reporter.id } }
+ let(:scope) { Report.unresolved.where(account: reporter) }
+
+ it 'returns all unresolved reports filed by the specified account' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+ end
+
+ context 'with target_account_id param' do
+ let(:params) { { target_account_id: spammer.id } }
+ let(:scope) { Report.unresolved.where(target_account: spammer) }
+
+ it 'returns all unresolved reports targeting the specified account' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+ end
+
+ context 'with limit param' do
+ let(:params) { { limit: 1 } }
+
+ it 'returns only the requested number of reports' do
+ subject
+
+ expect(body_as_json.size).to eq(1)
+ end
+ end
+ end
+ end
+
+ describe 'GET /api/v1/admin/reports/:id' do
+ subject do
+ get "/api/v1/admin/reports/#{report.id}", headers: headers
+ end
+
+ let(:report) { Fabricate(:report) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the requested report content' do
+ subject
+
+ expect(body_as_json).to include(
+ {
+ id: report.id.to_s,
+ action_taken: report.action_taken?,
+ category: report.category,
+ comment: report.comment,
+ account: a_hash_including(id: report.account.id.to_s),
+ target_account: a_hash_including(id: report.target_account.id.to_s),
+ statuses: report.statuses,
+ rules: report.rules,
+ forwarded: report.forwarded,
+ }
+ )
+ end
+ end
+
+ describe 'PUT /api/v1/admin/reports/:id' do
+ subject do
+ put "/api/v1/admin/reports/#{report.id}", headers: headers, params: params
+ end
+
+ let!(:report) { Fabricate(:report, category: :other) }
+ let(:params) { { category: 'spam' } }
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'updates the report category' do
+ expect { subject }.to change { report.reload.category }.from('other').to('spam')
+ end
+
+ it 'returns the updated report content' do
+ subject
+
+ report.reload
+
+ expect(body_as_json).to include(
+ {
+ id: report.id.to_s,
+ action_taken: report.action_taken?,
+ category: report.category,
+ comment: report.comment,
+ account: a_hash_including(id: report.account.id.to_s),
+ target_account: a_hash_including(id: report.target_account.id.to_s),
+ statuses: report.statuses,
+ rules: report.rules,
+ forwarded: report.forwarded,
+ }
+ )
+ end
+ end
+
+ describe 'POST #resolve' do
+ subject do
+ post "/api/v1/admin/reports/#{report.id}/resolve", headers: headers
+ end
+
+ let(:report) { Fabricate(:report, action_taken_at: nil) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'marks report as resolved' do
+ expect { subject }.to change { report.reload.unresolved? }.from(true).to(false)
+ end
+ end
+
+ describe 'POST #reopen' do
+ subject do
+ post "/api/v1/admin/reports/#{report.id}/reopen", headers: headers
+ end
+
+ let(:report) { Fabricate(:report, action_taken_at: 10.days.ago) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'marks report as unresolved' do
+ expect { subject }.to change { report.reload.unresolved? }.from(false).to(true)
+ end
+ end
+
+ describe 'POST #assign_to_self' do
+ subject do
+ post "/api/v1/admin/reports/#{report.id}/assign_to_self", headers: headers
+ end
+
+ let(:report) { Fabricate(:report) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'assigns report to the requesting user' do
+ expect { subject }.to change { report.reload.assigned_account_id }.from(nil).to(user.account.id)
+ end
+ end
+
+ describe 'POST #unassign' do
+ subject do
+ post "/api/v1/admin/reports/#{report.id}/unassign", headers: headers
+ end
+
+ let(:report) { Fabricate(:report, assigned_account_id: user.account.id) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write:statuses'
+ it_behaves_like 'forbidden for wrong role', ''
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'unassigns report from assignee' do
+ expect { subject }.to change { report.reload.assigned_account_id }.from(user.account.id).to(nil)
+ end
+ end
+end
A spec/requests/api/v1/apps/credentials_spec.rb => spec/requests/api/v1/apps/credentials_spec.rb +44 -0
@@ 0,0 1,44 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+describe 'Credentials' do
+ describe 'GET /api/v1/apps/verify_credentials' do
+ subject do
+ get '/api/v1/apps/verify_credentials', headers: headers
+ end
+
+ context 'with an oauth token' do
+ let(:token) { Fabricate(:accessible_access_token, scopes: 'read', application: Fabricate(:application)) }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the app information correctly' do
+ subject
+
+ expect(body_as_json).to match(
+ a_hash_including(
+ name: token.application.name,
+ website: token.application.website,
+ vapid_key: Rails.configuration.x.vapid_public_key
+ )
+ )
+ end
+ end
+
+ context 'without an oauth token' do
+ let(:headers) { {} }
+
+ it 'returns http unauthorized' do
+ subject
+
+ expect(response).to have_http_status(401)
+ end
+ end
+ end
+end
R spec/controllers/api/v1/apps_controller_spec.rb => spec/requests/api/v1/apps_spec.rb +42 -15
@@ 2,16 2,18 @@
require 'rails_helper'
-RSpec.describe Api::V1::AppsController do
- render_views
+RSpec.describe 'Apps' do
+ describe 'POST /api/v1/apps' do
+ subject do
+ post '/api/v1/apps', params: params
+ end
- describe 'POST #create' do
- let(:client_name) { 'Test app' }
- let(:scopes) { nil }
+ let(:client_name) { 'Test app' }
+ let(:scopes) { nil }
let(:redirect_uris) { 'urn:ietf:wg:oauth:2.0:oob' }
- let(:website) { nil }
+ let(:website) { nil }
- let(:app_params) do
+ let(:params) do
{
client_name: client_name,
redirect_uris: redirect_uris,
@@ 20,24 22,26 @@ RSpec.describe Api::V1::AppsController do
}
end
- before do
- post :create, params: app_params
- end
-
context 'with valid params' do
it 'returns http success' do
+ subject
+
expect(response).to have_http_status(200)
end
it 'creates an OAuth app' do
- expect(Doorkeeper::Application.find_by(name: client_name)).to_not be_nil
+ subject
+
+ expect(Doorkeeper::Application.find_by(name: client_name)).to be_present
end
it 'returns client ID and client secret' do
- json = body_as_json
+ subject
- expect(json[:client_id]).to_not be_blank
- expect(json[:client_secret]).to_not be_blank
+ body = body_as_json
+
+ expect(body[:client_id]).to be_present
+ expect(body[:client_secret]).to be_present
end
end
@@ 45,6 49,8 @@ RSpec.describe Api::V1::AppsController do
let(:scopes) { 'hoge' }
it 'returns http unprocessable entity' do
+ subject
+
expect(response).to have_http_status(422)
end
end
@@ 53,10 59,14 @@ RSpec.describe Api::V1::AppsController do
let(:scopes) { (%w(read) * 40).join(' ') }
it 'returns http success' do
+ subject
+
expect(response).to have_http_status(200)
end
it 'only saves the scope once' do
+ subject
+
expect(Doorkeeper::Application.find_by(name: client_name).scopes.to_s).to eq 'read'
end
end
@@ 65,6 75,8 @@ RSpec.describe Api::V1::AppsController do
let(:client_name) { 'hoge' * 20 }
it 'returns http unprocessable entity' do
+ subject
+
expect(response).to have_http_status(422)
end
end
@@ 73,6 85,8 @@ RSpec.describe Api::V1::AppsController do
let(:website) { "https://foo.bar/#{'hoge' * 2_000}" }
it 'returns http unprocessable entity' do
+ subject
+
expect(response).to have_http_status(422)
end
end
@@ 81,6 95,19 @@ RSpec.describe Api::V1::AppsController do
let(:redirect_uris) { "https://foo.bar/#{'hoge' * 2_000}" }
it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+
+ context 'without required params' do
+ let(:client_name) { '' }
+ let(:redirect_uris) { '' }
+
+ it 'returns http unprocessable entity' do
+ subject
+
expect(response).to have_http_status(422)
end
end
A spec/requests/api/v1/domain_blocks_spec.rb => spec/requests/api/v1/domain_blocks_spec.rb +125 -0
@@ 0,0 1,125 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Domain blocks' do
+ let(:user) { Fabricate(:user) }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:scopes) { 'read:blocks write:blocks' }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/domain_blocks' do
+ subject do
+ get '/api/v1/domain_blocks', headers: headers, params: params
+ end
+
+ let(:blocked_domains) { ['example.com', 'example.net', 'example.org', 'example.com.br'] }
+ let(:params) { {} }
+
+ before do
+ blocked_domains.each { |domain| user.account.block_domain!(domain) }
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'write:blocks'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the domains blocked by the requesting user' do
+ subject
+
+ expect(body_as_json).to match_array(blocked_domains)
+ end
+
+ context 'with limit param' do
+ let(:params) { { limit: 2 } }
+
+ it 'returns only the requested number of blocked domains' do
+ subject
+
+ expect(body_as_json.size).to eq(params[:limit])
+ end
+ end
+ end
+
+ describe 'POST /api/v1/domain_blocks' do
+ subject do
+ post '/api/v1/domain_blocks', headers: headers, params: params
+ end
+
+ let(:params) { { domain: 'example.com' } }
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:blocks'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'creates a domain block' do
+ subject
+
+ expect(user.account.domain_blocking?(params[:domain])).to be(true)
+ end
+
+ context 'when no domain name is given' do
+ let(:params) { { domain: '' } }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+
+ context 'when the given domain name is invalid' do
+ let(:params) { { domain: 'example com' } }
+
+ it 'returns unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+ end
+
+ describe 'DELETE /api/v1/domain_blocks' do
+ subject do
+ delete '/api/v1/domain_blocks/', headers: headers, params: params
+ end
+
+ let(:params) { { domain: 'example.com' } }
+
+ before do
+ user.account.block_domain!('example.com')
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:blocks'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'deletes the specified domain block' do
+ subject
+
+ expect(user.account.domain_blocking?('example.com')).to be(false)
+ end
+
+ context 'when the given domain name is not blocked' do
+ let(:params) { { domain: 'example.org' } }
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+ end
+ end
+end
M spec/requests/api/v1/featured_tags_spec.rb => spec/requests/api/v1/featured_tags_spec.rb +0 -8
@@ 8,14 8,6 @@ RSpec.describe 'FeaturedTags' do
let(:scopes) { 'read:accounts write:accounts' }
let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
- shared_examples 'forbidden for wrong scope' do |wrong_scope|
- let(:scopes) { wrong_scope }
-
- it 'returns http forbidden' do
- expect(response).to have_http_status(403)
- end
- end
-
describe 'GET /api/v1/featured_tags' do
context 'with wrong scope' do
before do
A spec/requests/api/v1/follow_requests_spec.rb => spec/requests/api/v1/follow_requests_spec.rb +119 -0
@@ 0,0 1,119 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Follow requests' do
+ let(:user) { Fabricate(:user, account_attributes: { locked: true }) }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:scopes) { 'read:follows write:follows' }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/follow_requests' do
+ subject do
+ get '/api/v1/follow_requests', headers: headers, params: params
+ end
+
+ let(:accounts) { Fabricate.times(5, :account) }
+ let(:params) { {} }
+
+ let(:expected_response) do
+ accounts.map do |account|
+ a_hash_including(
+ id: account.id.to_s,
+ username: account.username,
+ acct: account.acct
+ )
+ end
+ end
+
+ before do
+ accounts.each { |account| FollowService.new.call(account, user.account) }
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'write write:follows'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the expected content from accounts requesting to follow' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+
+ context 'with limit param' do
+ let(:params) { { limit: 2 } }
+
+ it 'returns only the requested number of follow requests' do
+ subject
+
+ expect(body_as_json.size).to eq(params[:limit])
+ end
+ end
+ end
+
+ describe 'POST /api/v1/follow_requests/:account_id/authorize' do
+ subject do
+ post "/api/v1/follow_requests/#{follower.id}/authorize", headers: headers
+ end
+
+ let(:follower) { Fabricate(:account) }
+
+ before do
+ FollowService.new.call(follower, user.account)
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:follows'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'allows the requesting follower to follow' do
+ expect { subject }.to change { follower.following?(user.account) }.from(false).to(true)
+ end
+
+ it 'returns JSON with followed_by set to true' do
+ subject
+
+ expect(body_as_json[:followed_by]).to be true
+ end
+ end
+
+ describe 'POST /api/v1/follow_requests/:account_id/reject' do
+ subject do
+ post "/api/v1/follow_requests/#{follower.id}/reject", headers: headers
+ end
+
+ let(:follower) { Fabricate(:account) }
+
+ before do
+ FollowService.new.call(follower, user.account)
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:follows'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'removes the follow request' do
+ subject
+
+ expect(FollowRequest.where(target_account: user.account, account: follower)).to_not exist
+ end
+
+ it 'returns JSON with followed_by set to false' do
+ subject
+
+ expect(body_as_json[:followed_by]).to be false
+ end
+ end
+end
A spec/requests/api/v1/lists_spec.rb => spec/requests/api/v1/lists_spec.rb +247 -0
@@ 0,0 1,247 @@
+# frozen_string_literal: true
+
+require 'rails_helper'
+
+RSpec.describe 'Lists' do
+ let(:user) { Fabricate(:user) }
+ let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) }
+ let(:scopes) { 'read:lists write:lists' }
+ let(:headers) { { 'Authorization' => "Bearer #{token.token}" } }
+
+ describe 'GET /api/v1/lists' do
+ subject do
+ get '/api/v1/lists', headers: headers
+ end
+
+ let!(:lists) do
+ [
+ Fabricate(:list, account: user.account, title: 'first list', replies_policy: :followed),
+ Fabricate(:list, account: user.account, title: 'second list', replies_policy: :list),
+ Fabricate(:list, account: user.account, title: 'third list', replies_policy: :none),
+ Fabricate(:list, account: user.account, title: 'fourth list', exclusive: true),
+ ]
+ end
+
+ let(:expected_response) do
+ lists.map do |list|
+ {
+ id: list.id.to_s,
+ title: list.title,
+ replies_policy: list.replies_policy,
+ exclusive: list.exclusive,
+ }
+ end
+ end
+
+ before do
+ Fabricate(:list)
+ end
+
+ it_behaves_like 'forbidden for wrong scope', 'write write:lists'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the expected lists' do
+ subject
+
+ expect(body_as_json).to match_array(expected_response)
+ end
+ end
+
+ describe 'GET /api/v1/lists/:id' do
+ subject do
+ get "/api/v1/lists/#{list.id}", headers: headers
+ end
+
+ let(:list) { Fabricate(:list, account: user.account) }
+
+ it_behaves_like 'forbidden for wrong scope', 'write write:lists'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the requested list correctly' do
+ subject
+
+ expect(body_as_json).to eq({
+ id: list.id.to_s,
+ title: list.title,
+ replies_policy: list.replies_policy,
+ exclusive: list.exclusive,
+ })
+ end
+
+ context 'when the list belongs to a different user' do
+ let(:list) { Fabricate(:list) }
+
+ it 'returns http not found' do
+ subject
+
+ expect(response).to have_http_status(404)
+ end
+ end
+
+ context 'when the list does not exist' do
+ it 'returns http not found' do
+ get '/api/v1/lists/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+
+ describe 'POST /api/v1/lists' do
+ subject do
+ post '/api/v1/lists', headers: headers, params: params
+ end
+
+ let(:params) { { title: 'my list', replies_policy: 'none', exclusive: 'true' } }
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:lists'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the new list' do
+ subject
+
+ expect(body_as_json).to match(a_hash_including(title: 'my list', replies_policy: 'none', exclusive: true))
+ end
+
+ it 'creates a list' do
+ subject
+
+ expect(List.where(account: user.account).count).to eq(1)
+ end
+
+ context 'when a title is not given' do
+ let(:params) { { title: '' } }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+
+ context 'when the given replies_policy is invalid' do
+ let(:params) { { title: 'a list', replies_policy: 'whatever' } }
+
+ it 'returns http unprocessable entity' do
+ subject
+
+ expect(response).to have_http_status(422)
+ end
+ end
+ end
+
+ describe 'PUT /api/v1/lists/:id' do
+ subject do
+ put "/api/v1/lists/#{list.id}", headers: headers, params: params
+ end
+
+ let(:list) { Fabricate(:list, account: user.account, title: 'my list') }
+ let(:params) { { title: 'list', replies_policy: 'followed', exclusive: 'true' } }
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:lists'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'returns the updated list' do
+ subject
+
+ list.reload
+
+ expect(body_as_json).to eq({
+ id: list.id.to_s,
+ title: list.title,
+ replies_policy: list.replies_policy,
+ exclusive: list.exclusive,
+ })
+ end
+
+ it 'updates the list title' do
+ expect { subject }.to change { list.reload.title }.from('my list').to('list')
+ end
+
+ it 'updates the list replies_policy' do
+ expect { subject }.to change { list.reload.replies_policy }.from('list').to('followed')
+ end
+
+ it 'updates the list exclusive' do
+ expect { subject }.to change { list.reload.exclusive }.from(false).to(true)
+ end
+
+ context 'when the list does not exist' do
+ it 'returns http not found' do
+ put '/api/v1/lists/-1', headers: headers, params: params
+
+ expect(response).to have_http_status(404)
+ end
+ end
+
+ context 'when the list belongs to another user' do
+ let(:list) { Fabricate(:list) }
+
+ it 'returns http not found' do
+ subject
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+
+ describe 'DELETE /api/v1/lists/:id' do
+ subject do
+ delete "/api/v1/lists/#{list.id}", headers: headers
+ end
+
+ let(:list) { Fabricate(:list, account: user.account) }
+
+ it_behaves_like 'forbidden for wrong scope', 'read read:lists'
+
+ it 'returns http success' do
+ subject
+
+ expect(response).to have_http_status(200)
+ end
+
+ it 'deletes the list' do
+ subject
+
+ expect(List.where(id: list.id)).to_not exist
+ end
+
+ context 'when the list does not exist' do
+ it 'returns http not found' do
+ delete '/api/v1/lists/-1', headers: headers
+
+ expect(response).to have_http_status(404)
+ end
+ end
+
+ context 'when the list belongs to another user' do
+ let(:list) { Fabricate(:list) }
+
+ it 'returns http not found' do
+ subject
+
+ expect(response).to have_http_status(404)
+ end
+ end
+ end
+end
M spec/serializers/activitypub/note_serializer_spec.rb => spec/serializers/activitypub/note_serializer_spec.rb +10 -10
@@ 6,13 6,13 @@ describe ActivityPub::NoteSerializer do
subject { JSON.parse(@serialization.to_json) }
let!(:account) { Fabricate(:account) }
- let!(:other) { Fabricate(:account) }
- let!(:parent) { Fabricate(:status, account: account, visibility: :public) }
- let!(:reply1) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
- let!(:reply2) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
- let!(:reply3) { Fabricate(:status, account: other, thread: parent, visibility: :public) }
- let!(:reply4) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
- let!(:reply5) { Fabricate(:status, account: account, thread: parent, visibility: :direct) }
+ let!(:other) { Fabricate(:account) }
+ let!(:parent) { Fabricate(:status, account: account, visibility: :public) }
+ let!(:reply_by_account_first) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
+ let!(:reply_by_account_next) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
+ let!(:reply_by_other_first) { Fabricate(:status, account: other, thread: parent, visibility: :public) }
+ let!(:reply_by_account_third) { Fabricate(:status, account: account, thread: parent, visibility: :public) }
+ let!(:reply_by_account_visibility_direct) { Fabricate(:status, account: account, thread: parent, visibility: :direct) }
before(:each) do
@serialization = ActiveModelSerializers::SerializableResource.new(parent, serializer: described_class, adapter: ActivityPub::Adapter)
@@ 31,14 31,14 @@ describe ActivityPub::NoteSerializer do
end
it 'includes public self-replies in its replies collection' do
- expect(subject['replies']['first']['items']).to include(reply1.uri, reply2.uri, reply4.uri)
+ expect(subject['replies']['first']['items']).to include(reply_by_account_first.uri, reply_by_account_next.uri, reply_by_account_third.uri)
end
it 'does not include replies from others in its replies collection' do
- expect(subject['replies']['first']['items']).to_not include(reply3.uri)
+ expect(subject['replies']['first']['items']).to_not include(reply_by_other_first.uri)
end
it 'does not include replies with direct visibility in its replies collection' do
- expect(subject['replies']['first']['items']).to_not include(reply5.uri)
+ expect(subject['replies']['first']['items']).to_not include(reply_by_account_visibility_direct.uri)
end
end
M spec/services/activitypub/fetch_featured_collection_service_spec.rb => spec/services/activitypub/fetch_featured_collection_service_spec.rb +19 -15
@@ 9,33 9,33 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do
let!(:known_status) { Fabricate(:status, account: actor, uri: 'https://example.com/account/pinned/1') }
- let(:status_json_1) do
+ let(:status_json_pinned_known) do
{
'@context': 'https://www.w3.org/ns/activitystreams',
type: 'Note',
- id: 'https://example.com/account/pinned/1',
+ id: 'https://example.com/account/pinned/known',
content: 'foo',
attributedTo: actor.uri,
to: 'https://www.w3.org/ns/activitystreams#Public',
}
end
- let(:status_json_2) do
+ let(:status_json_pinned_unknown_inlined) do
{
'@context': 'https://www.w3.org/ns/activitystreams',
type: 'Note',
- id: 'https://example.com/account/pinned/2',
+ id: 'https://example.com/account/pinned/unknown-inlined',
content: 'foo',
attributedTo: actor.uri,
to: 'https://www.w3.org/ns/activitystreams#Public',
}
end
- let(:status_json_4) do
+ let(:status_json_pinned_unknown_unreachable) do
{
'@context': 'https://www.w3.org/ns/activitystreams',
type: 'Note',
- id: 'https://example.com/account/pinned/4',
+ id: 'https://example.com/account/pinned/unknown-reachable',
content: 'foo',
attributedTo: actor.uri,
to: 'https://www.w3.org/ns/activitystreams#Public',
@@ 44,10 44,10 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do
let(:items) do
[
- 'https://example.com/account/pinned/1', # known
- status_json_2, # unknown inlined
- 'https://example.com/account/pinned/3', # unknown unreachable
- 'https://example.com/account/pinned/4', # unknown reachable
+ 'https://example.com/account/pinned/known', # known
+ status_json_pinned_unknown_inlined, # unknown inlined
+ 'https://example.com/account/pinned/unknown-unreachable', # unknown unreachable
+ 'https://example.com/account/pinned/unknown-reachable', # unknown reachable
]
end
@@ 62,16 62,20 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do
shared_examples 'sets pinned posts' do
before do
- stub_request(:get, 'https://example.com/account/pinned/1').to_return(status: 200, body: Oj.dump(status_json_1))
- stub_request(:get, 'https://example.com/account/pinned/2').to_return(status: 200, body: Oj.dump(status_json_2))
- stub_request(:get, 'https://example.com/account/pinned/3').to_return(status: 404)
- stub_request(:get, 'https://example.com/account/pinned/4').to_return(status: 200, body: Oj.dump(status_json_4))
+ stub_request(:get, 'https://example.com/account/pinned/known').to_return(status: 200, body: Oj.dump(status_json_pinned_known))
+ stub_request(:get, 'https://example.com/account/pinned/unknown-inlined').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_inlined))
+ stub_request(:get, 'https://example.com/account/pinned/unknown-unreachable').to_return(status: 404)
+ stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_unreachable))
subject.call(actor, note: true, hashtag: false)
end
it 'sets expected posts as pinned posts' do
- expect(actor.pinned_statuses.pluck(:uri)).to contain_exactly('https://example.com/account/pinned/1', 'https://example.com/account/pinned/2', 'https://example.com/account/pinned/4')
+ expect(actor.pinned_statuses.pluck(:uri)).to contain_exactly(
+ 'https://example.com/account/pinned/known',
+ 'https://example.com/account/pinned/unknown-inlined',
+ 'https://example.com/account/pinned/unknown-reachable'
+ )
end
end
M spec/services/batched_remove_status_service_spec.rb => spec/services/batched_remove_status_service_spec.rb +9 -9
@@ 10,8 10,8 @@ RSpec.describe BatchedRemoveStatusService, type: :service do
let!(:jeff) { Fabricate(:account) }
let!(:hank) { Fabricate(:account, username: 'hank', protocol: :activitypub, domain: 'example.com', inbox_url: 'http://example.com/inbox') }
- let(:status1) { PostStatusService.new.call(alice, text: 'Hello @bob@example.com') }
- let(:status2) { PostStatusService.new.call(alice, text: 'Another status') }
+ let(:status_alice_hello) { PostStatusService.new.call(alice, text: 'Hello @bob@example.com') }
+ let(:status_alice_other) { PostStatusService.new.call(alice, text: 'Another status') }
before do
allow(redis).to receive_messages(publish: nil)
@@ 22,23 22,23 @@ RSpec.describe BatchedRemoveStatusService, type: :service do
jeff.follow!(alice)
hank.follow!(alice)
- status1
- status2
+ status_alice_hello
+ status_alice_other
- subject.call([status1, status2])
+ subject.call([status_alice_hello, status_alice_other])
end
it 'removes statuses' do
- expect { Status.find(status1.id) }.to raise_error ActiveRecord::RecordNotFound
- expect { Status.find(status2.id) }.to raise_error ActiveRecord::RecordNotFound
+ expect { Status.find(status_alice_hello.id) }.to raise_error ActiveRecord::RecordNotFound
+ expect { Status.find(status_alice_other.id) }.to raise_error ActiveRecord::RecordNotFound
end
it 'removes statuses from author\'s home feed' do
- expect(HomeFeed.new(alice).get(10)).to_not include([status1.id, status2.id])
+ expect(HomeFeed.new(alice).get(10)).to_not include([status_alice_hello.id, status_alice_other.id])
end
it 'removes statuses from local follower\'s home feed' do
- expect(HomeFeed.new(jeff).get(10)).to_not include([status1.id, status2.id])
+ expect(HomeFeed.new(jeff).get(10)).to_not include([status_alice_hello.id, status_alice_other.id])
end
it 'notifies streaming API of followers' do
M spec/services/block_domain_service_spec.rb => spec/services/block_domain_service_spec.rb +7 -7
@@ 6,9 6,9 @@ RSpec.describe BlockDomainService, type: :service do
subject { described_class.new }
let!(:bad_account) { Fabricate(:account, username: 'badguy666', domain: 'evil.org') }
- let!(:bad_status1) { Fabricate(:status, account: bad_account, text: 'You suck') }
- let!(:bad_status2) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
- let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status2, file: attachment_fixture('attachment.jpg')) }
+ let!(:bad_status_plain) { Fabricate(:status, account: bad_account, text: 'You suck') }
+ let!(:bad_status_with_attachment) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
+ let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status_with_attachment, file: attachment_fixture('attachment.jpg')) }
let!(:already_banned_account) { Fabricate(:account, username: 'badguy', domain: 'evil.org', suspended: true, silenced: true) }
describe 'for a suspension' do
@@ 37,8 37,8 @@ RSpec.describe BlockDomainService, type: :service do
end
it 'removes the remote accounts\'s statuses and media attachments' do
- expect { bad_status1.reload }.to raise_exception ActiveRecord::RecordNotFound
- expect { bad_status2.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { bad_status_plain.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { bad_status_with_attachment.reload }.to raise_exception ActiveRecord::RecordNotFound
expect { bad_attachment.reload }.to raise_exception ActiveRecord::RecordNotFound
end
end
@@ 69,8 69,8 @@ RSpec.describe BlockDomainService, type: :service do
end
it 'leaves the domains status and attachments, but clears media' do
- expect { bad_status1.reload }.to_not raise_error
- expect { bad_status2.reload }.to_not raise_error
+ expect { bad_status_plain.reload }.to_not raise_error
+ expect { bad_status_with_attachment.reload }.to_not raise_error
expect { bad_attachment.reload }.to_not raise_error
expect(bad_attachment.file.exists?).to be false
end
M spec/services/clear_domain_media_service_spec.rb => spec/services/clear_domain_media_service_spec.rb +5 -5
@@ 6,9 6,9 @@ RSpec.describe ClearDomainMediaService, type: :service do
subject { described_class.new }
let!(:bad_account) { Fabricate(:account, username: 'badguy666', domain: 'evil.org') }
- let!(:bad_status1) { Fabricate(:status, account: bad_account, text: 'You suck') }
- let!(:bad_status2) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
- let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status2, file: attachment_fixture('attachment.jpg')) }
+ let!(:bad_status_plain) { Fabricate(:status, account: bad_account, text: 'You suck') }
+ let!(:bad_status_with_attachment) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
+ let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status_with_attachment, file: attachment_fixture('attachment.jpg')) }
describe 'for a silence with reject media' do
before do
@@ 16,8 16,8 @@ RSpec.describe ClearDomainMediaService, type: :service do
end
it 'leaves the domains status and attachments, but clears media' do
- expect { bad_status1.reload }.to_not raise_error
- expect { bad_status2.reload }.to_not raise_error
+ expect { bad_status_plain.reload }.to_not raise_error
+ expect { bad_status_with_attachment.reload }.to_not raise_error
expect { bad_attachment.reload }.to_not raise_error
expect(bad_attachment.file.exists?).to be false
end
M spec/services/purge_domain_service_spec.rb => spec/services/purge_domain_service_spec.rb +5 -5
@@ 6,9 6,9 @@ RSpec.describe PurgeDomainService, type: :service do
subject { described_class.new }
let!(:old_account) { Fabricate(:account, domain: 'obsolete.org') }
- let!(:old_status1) { Fabricate(:status, account: old_account) }
- let!(:old_status2) { Fabricate(:status, account: old_account) }
- let!(:old_attachment) { Fabricate(:media_attachment, account: old_account, status: old_status2, file: attachment_fixture('attachment.jpg')) }
+ let!(:old_status_plain) { Fabricate(:status, account: old_account) }
+ let!(:old_status_with_attachment) { Fabricate(:status, account: old_account) }
+ let!(:old_attachment) { Fabricate(:media_attachment, account: old_account, status: old_status_with_attachment, file: attachment_fixture('attachment.jpg')) }
describe 'for a suspension' do
before do
@@ 17,8 17,8 @@ RSpec.describe PurgeDomainService, type: :service do
it 'removes the remote accounts\'s statuses and media attachments' do
expect { old_account.reload }.to raise_exception ActiveRecord::RecordNotFound
- expect { old_status1.reload }.to raise_exception ActiveRecord::RecordNotFound
- expect { old_status2.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { old_status_plain.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { old_status_with_attachment.reload }.to raise_exception ActiveRecord::RecordNotFound
expect { old_attachment.reload }.to raise_exception ActiveRecord::RecordNotFound
end
M spec/services/translate_status_service_spec.rb => spec/services/translate_status_service_spec.rb +22 -13
@@ 152,22 152,31 @@ RSpec.describe TranslateStatusService, type: :service do
describe 'status has poll' do
let(:poll) { Fabricate(:poll, options: %w(Blue Green)) }
- it 'returns formatted poll options' do
- source_texts = service.send(:source_texts)
- expect(source_texts.size).to eq 3
- expect(source_texts.values).to eq %w(<p>Hello</p> Blue Green)
+ context 'with source texts from the service' do
+ let!(:source_texts) { service.send(:source_texts) }
- expect(source_texts.keys.first).to eq :content
+ it 'returns formatted poll options' do
+ expect(source_texts.size).to eq 3
+ expect(source_texts.values).to eq %w(<p>Hello</p> Blue Green)
+ end
- option1 = source_texts.keys.second
- expect(option1).to be_a Poll::Option
- expect(option1.id).to eq '0'
- expect(option1.title).to eq 'Blue'
+ it 'has a first key with content' do
+ expect(source_texts.keys.first).to eq :content
+ end
- option2 = source_texts.keys.third
- expect(option2).to be_a Poll::Option
- expect(option2.id).to eq '1'
- expect(option2.title).to eq 'Green'
+ it 'has the first option in the second key with correct options' do
+ option1 = source_texts.keys.second
+ expect(option1).to be_a Poll::Option
+ expect(option1.id).to eq '0'
+ expect(option1.title).to eq 'Blue'
+ end
+
+ it 'has the second option in the third key with correct options' do
+ option2 = source_texts.keys.third
+ expect(option2).to be_a Poll::Option
+ expect(option2.id).to eq '1'
+ expect(option2.title).to eq 'Green'
+ end
end
end
M spec/services/unallow_domain_service_spec.rb => spec/services/unallow_domain_service_spec.rb +7 -7
@@ 6,9 6,9 @@ RSpec.describe UnallowDomainService, type: :service do
subject { described_class.new }
let!(:bad_account) { Fabricate(:account, username: 'badguy666', domain: 'evil.org') }
- let!(:bad_status1) { Fabricate(:status, account: bad_account, text: 'You suck') }
- let!(:bad_status2) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
- let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status2, file: attachment_fixture('attachment.jpg')) }
+ let!(:bad_status_harassment) { Fabricate(:status, account: bad_account, text: 'You suck') }
+ let!(:bad_status_mean) { Fabricate(:status, account: bad_account, text: 'Hahaha') }
+ let!(:bad_attachment) { Fabricate(:media_attachment, account: bad_account, status: bad_status_mean, file: attachment_fixture('attachment.jpg')) }
let!(:already_banned_account) { Fabricate(:account, username: 'badguy', domain: 'evil.org', suspended: true, silenced: true) }
let!(:domain_allow) { Fabricate(:domain_allow, domain: 'evil.org') }
@@ 31,8 31,8 @@ RSpec.describe UnallowDomainService, type: :service do
end
it 'removes the remote accounts\'s statuses and media attachments' do
- expect { bad_status1.reload }.to raise_exception ActiveRecord::RecordNotFound
- expect { bad_status2.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { bad_status_harassment.reload }.to raise_exception ActiveRecord::RecordNotFound
+ expect { bad_status_mean.reload }.to raise_exception ActiveRecord::RecordNotFound
expect { bad_attachment.reload }.to raise_exception ActiveRecord::RecordNotFound
end
end
@@ 57,8 57,8 @@ RSpec.describe UnallowDomainService, type: :service do
end
it 'removes the remote accounts\'s statuses and media attachments' do
- expect { bad_status1.reload }.to_not raise_error
- expect { bad_status2.reload }.to_not raise_error
+ expect { bad_status_harassment.reload }.to_not raise_error
+ expect { bad_status_mean.reload }.to_not raise_error
expect { bad_attachment.reload }.to_not raise_error
end
end
M spec/spec_helper.rb => spec/spec_helper.rb +0 -17
@@ 1,7 1,5 @@
# frozen_string_literal: true
-GC.disable
-
if ENV['DISABLE_SIMPLECOV'] != 'true'
require 'simplecov'
SimpleCov.start 'rails' do
@@ 13,8 11,6 @@ if ENV['DISABLE_SIMPLECOV'] != 'true'
end
end
-gc_counter = -1
-
RSpec.configure do |config|
config.example_status_persistence_file_path = 'tmp/rspec/examples.txt'
config.expect_with :rspec do |expectations|
@@ 37,21 33,8 @@ RSpec.configure do |config|
end
config.after :suite do
- gc_counter = 0
FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
end
-
- config.after :each do
- gc_counter += 1
-
- if gc_counter > 19
- GC.enable
- GC.start
- GC.disable
-
- gc_counter = 0
- end
- end
end
def body_as_json
A spec/support/examples/api.rb => spec/support/examples/api.rb +23 -0
@@ 0,0 1,23 @@
+# frozen_string_literal: true
+
+shared_examples 'forbidden for wrong scope' do |wrong_scope|
+ let(:scopes) { wrong_scope }
+
+ it 'returns http forbidden' do
+ # Some examples have a subject which needs to be called to make a request
+ subject if request.nil?
+
+ expect(response).to have_http_status(403)
+ end
+end
+
+shared_examples 'forbidden for wrong role' do |wrong_role|
+ let(:role) { UserRole.find_by(name: wrong_role) }
+
+ it 'returns http forbidden' do
+ # Some examples have a subject which needs to be called to make a request
+ subject if request.nil?
+
+ expect(response).to have_http_status(403)
+ end
+end
D spec/support/examples/lib/settings/scoped_settings.rb => spec/support/examples/lib/settings/scoped_settings.rb +0 -74
@@ 1,74 0,0 @@
-# frozen_string_literal: true
-
-shared_examples 'ScopedSettings' do
- describe '[]' do
- it 'inherits default settings' do
- expect(Setting.boost_modal).to be false
- expect(Setting.interactions['must_be_follower']).to be false
-
- settings = create!
-
- expect(settings['boost_modal']).to be false
- expect(settings['interactions']['must_be_follower']).to be false
- end
- end
-
- describe 'all_as_records' do
- # expecting [] and []= works
-
- it 'returns records merged with default values except hashes' do
- expect(Setting.boost_modal).to be false
- expect(Setting.delete_modal).to be true
-
- settings = create!
- settings['boost_modal'] = true
-
- records = settings.all_as_records
-
- expect(records['boost_modal'].value).to be true
- expect(records['delete_modal'].value).to be true
- end
- end
-
- describe 'missing methods' do
- # expecting [] and []= works.
-
- it 'reads settings' do
- expect(Setting.boost_modal).to be false
- settings = create!
- expect(settings.boost_modal).to be false
- end
-
- it 'updates settings' do
- settings = fabricate
- settings.boost_modal = true
- expect(settings['boost_modal']).to be true
- end
- end
-
- it 'can update settings with [] and can read with []=' do
- settings = fabricate
-
- settings['boost_modal'] = true
- settings['interactions'] = settings['interactions'].merge('must_be_follower' => true)
-
- Setting.save!
-
- expect(settings['boost_modal']).to be true
- expect(settings['interactions']['must_be_follower']).to be true
-
- Rails.cache.clear
-
- expect(settings['boost_modal']).to be true
- expect(settings['interactions']['must_be_follower']).to be true
- end
-
- xit 'does not mutate defaults via the cache' do
- fabricate['interactions']['must_be_follower'] = true
- # TODO
- # This mutates the global settings default such that future
- # instances will inherit the incorrect starting values
-
- expect(fabricate.settings['interactions']['must_be_follower']).to be false
- end
-end
D spec/support/examples/lib/settings/settings_extended.rb => spec/support/examples/lib/settings/settings_extended.rb +0 -15
@@ 1,15 0,0 @@
-# frozen_string_literal: true
-
-shared_examples 'Settings-extended' do
- describe 'settings' do
- def fabricate
- super.settings
- end
-
- def create!
- super.settings
- end
-
- it_behaves_like 'ScopedSettings'
- end
-end
M spec/support/examples/models/concerns/account_avatar.rb => spec/support/examples/models/concerns/account_avatar.rb +1 -1
@@ 1,7 1,7 @@
# frozen_string_literal: true
shared_examples 'AccountAvatar' do |fabricator|
- describe 'static avatars' do
+ describe 'static avatars', paperclip_processing: true do
describe 'when GIF' do
it 'creates a png static style' do
account = Fabricate(fabricator, avatar: attachment_fixture('avatar.gif'))
M spec/workers/scheduler/accounts_statuses_cleanup_scheduler_spec.rb => spec/workers/scheduler/accounts_statuses_cleanup_scheduler_spec.rb +50 -47
@@ 5,17 5,12 @@ require 'rails_helper'
describe Scheduler::AccountsStatusesCleanupScheduler do
subject { described_class.new }
- let!(:account1) { Fabricate(:account, domain: nil) }
- let!(:account2) { Fabricate(:account, domain: nil) }
- let!(:account3) { Fabricate(:account, domain: nil) }
- let!(:account4) { Fabricate(:account, domain: nil) }
- let!(:account5) { Fabricate(:account, domain: nil) }
- let!(:remote) { Fabricate(:account) }
-
- let!(:policy1) { Fabricate(:account_statuses_cleanup_policy, account: account1) }
- let!(:policy2) { Fabricate(:account_statuses_cleanup_policy, account: account3) }
- let!(:policy3) { Fabricate(:account_statuses_cleanup_policy, account: account4, enabled: false) }
- let!(:policy4) { Fabricate(:account_statuses_cleanup_policy, account: account5) }
+ let!(:account_alice) { Fabricate(:account, domain: nil, username: 'alice') }
+ let!(:account_bob) { Fabricate(:account, domain: nil, username: 'bob') }
+ let!(:account_chris) { Fabricate(:account, domain: nil, username: 'chris') }
+ let!(:account_dave) { Fabricate(:account, domain: nil, username: 'dave') }
+ let!(:account_erin) { Fabricate(:account, domain: nil, username: 'erin') }
+ let!(:remote) { Fabricate(:account) }
let(:queue_size) { 0 }
let(:queue_latency) { 0 }
@@ 29,33 24,12 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
end
before do
- queue_stub = double
- allow(queue_stub).to receive(:size).and_return(queue_size)
- allow(queue_stub).to receive(:latency).and_return(queue_latency)
+ queue_stub = instance_double(Sidekiq::Queue, size: queue_size, latency: queue_latency)
allow(Sidekiq::Queue).to receive(:new).and_return(queue_stub)
allow(Sidekiq::ProcessSet).to receive(:new).and_return(process_set_stub)
- sidekiq_stats_stub = double
+ sidekiq_stats_stub = instance_double(Sidekiq::Stats)
allow(Sidekiq::Stats).to receive(:new).and_return(sidekiq_stats_stub)
-
- # Create a bunch of old statuses
- 10.times do
- Fabricate(:status, account: account1, created_at: 3.years.ago)
- Fabricate(:status, account: account2, created_at: 3.years.ago)
- Fabricate(:status, account: account3, created_at: 3.years.ago)
- Fabricate(:status, account: account4, created_at: 3.years.ago)
- Fabricate(:status, account: account5, created_at: 3.years.ago)
- Fabricate(:status, account: remote, created_at: 3.years.ago)
- end
-
- # Create a bunch of newer statuses
- 5.times do
- Fabricate(:status, account: account1, created_at: 3.minutes.ago)
- Fabricate(:status, account: account2, created_at: 3.minutes.ago)
- Fabricate(:status, account: account3, created_at: 3.minutes.ago)
- Fabricate(:status, account: account4, created_at: 3.minutes.ago)
- Fabricate(:status, account: remote, created_at: 3.minutes.ago)
- end
end
describe '#under_load?' do
@@ 101,23 75,45 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
end
describe '#perform' do
- context 'when the budget is lower than the number of toots to delete' do
- it 'deletes as many statuses as the given budget' do
- expect { subject.perform }.to change(Status, :count).by(-subject.compute_budget)
+ before do
+ # Policies for the accounts
+ Fabricate(:account_statuses_cleanup_policy, account: account_alice)
+ Fabricate(:account_statuses_cleanup_policy, account: account_chris)
+ Fabricate(:account_statuses_cleanup_policy, account: account_dave, enabled: false)
+ Fabricate(:account_statuses_cleanup_policy, account: account_erin)
+
+ # Create a bunch of old statuses
+ 4.times do
+ Fabricate(:status, account: account_alice, created_at: 3.years.ago)
+ Fabricate(:status, account: account_bob, created_at: 3.years.ago)
+ Fabricate(:status, account: account_chris, created_at: 3.years.ago)
+ Fabricate(:status, account: account_dave, created_at: 3.years.ago)
+ Fabricate(:status, account: account_erin, created_at: 3.years.ago)
+ Fabricate(:status, account: remote, created_at: 3.years.ago)
end
- it 'does not delete from accounts with no cleanup policy' do
- expect { subject.perform }.to_not change { account2.statuses.count }
- end
+ # Create a bunch of newer statuses
+ Fabricate(:status, account: account_alice, created_at: 3.minutes.ago)
+ Fabricate(:status, account: account_bob, created_at: 3.minutes.ago)
+ Fabricate(:status, account: account_chris, created_at: 3.minutes.ago)
+ Fabricate(:status, account: account_dave, created_at: 3.minutes.ago)
+ Fabricate(:status, account: remote, created_at: 3.minutes.ago)
+ end
+
+ context 'when the budget is lower than the number of toots to delete' do
+ it 'deletes the appropriate statuses' do
+ expect(Status.count).to be > (subject.compute_budget) # Data check
- it 'does not delete from accounts with disabled cleanup policies' do
- expect { subject.perform }.to_not change { account4.statuses.count }
+ expect { subject.perform }
+ .to change(Status, :count).by(-subject.compute_budget) # Cleanable statuses
+ .and (not_change { account_bob.statuses.count }) # No cleanup policy for account
+ .and(not_change { account_dave.statuses.count }) # Disabled cleanup policy
end
it 'eventually deletes every deletable toot given enough runs' do
stub_const 'Scheduler::AccountsStatusesCleanupScheduler::MAX_BUDGET', 4
- expect { 10.times { subject.perform } }.to change(Status, :count).by(-30)
+ expect { 3.times { subject.perform } }.to change(Status, :count).by(-cleanable_statuses_count)
end
it 'correctly round-trips between users across several runs' do
@@ 126,9 122,9 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
expect { 3.times { subject.perform } }
.to change(Status, :count).by(-3 * 3)
- .and change { account1.statuses.count }
- .and change { account3.statuses.count }
- .and change { account5.statuses.count }
+ .and change { account_alice.statuses.count }
+ .and change { account_chris.statuses.count }
+ .and(change { account_erin.statuses.count })
end
context 'when given a big budget' do
@@ 140,7 136,7 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
it 'correctly handles looping in a single run' do
expect(subject.compute_budget).to eq(400)
- expect { subject.perform }.to change(Status, :count).by(-30)
+ expect { subject.perform }.to change(Status, :count).by(-cleanable_statuses_count)
end
end
@@ 157,6 153,13 @@ describe Scheduler::AccountsStatusesCleanupScheduler do
expect { subject.perform }.to_not change(Status, :count)
end
end
+
+ def cleanable_statuses_count
+ Status
+ .where(account_id: [account_alice, account_chris, account_erin]) # Accounts with enabled policies
+ .where('created_at < ?', 2.weeks.ago) # Policy defaults is 2.weeks
+ .count
+ end
end
end
end
M streaming/index.js => streaming/index.js +5 -1
@@ 835,7 835,11 @@ const startServer = async () => {
return;
}
- ws.send(JSON.stringify({ stream: streamName, event, payload }));
+ ws.send(JSON.stringify({ stream: streamName, event, payload }), (err) => {
+ if (err) {
+ log.error(req.requestId, `Failed to send to websocket: ${err}`);
+ }
+ });
};
/**
M yarn.lock => yarn.lock +2096 -2316
@@ 3,168 3,124 @@
"@adobe/css-tools@^4.0.1":
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.0.1.tgz#b38b444ad3aa5fedbb15f2f746dcd934226a12dd"
- integrity sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.2.0.tgz#e1a84fca468f4b337816fcb7f0964beb620ba855"
+ integrity sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==
"@ampproject/remapping@^2.2.0":
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"
- integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630"
+ integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==
dependencies:
- "@jridgewell/gen-mapping" "^0.1.0"
+ "@jridgewell/gen-mapping" "^0.3.0"
"@jridgewell/trace-mapping" "^0.3.9"
"@apideck/better-ajv-errors@^0.3.1":
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.3.tgz#ab0b1e981e1749bf59736cf7ebe25cfc9f949c15"
- integrity sha512-9o+HO2MbJhJHjDYZaDxJmSDckvDpiuItEsrIShV0DXeCshXWRHhqYyU/PKHMkuClOmFnZhRd6wzv4vpDu/dRKg==
+ version "0.3.6"
+ resolved "https://registry.yarnpkg.com/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.6.tgz#957d4c28e886a64a8141f7522783be65733ff097"
+ integrity sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==
dependencies:
json-schema "^0.4.0"
jsonpointer "^5.0.0"
leven "^3.1.0"
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.21.4":
- version "7.21.4"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39"
- integrity sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.5.tgz#234d98e1551960604f1246e6475891a570ad5658"
+ integrity sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==
dependencies:
- "@babel/highlight" "^7.18.6"
+ "@babel/highlight" "^7.22.5"
-"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.22.0", "@babel/compat-data@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.3.tgz#cd502a6a0b6e37d7ad72ce7e71a7160a3ae36f7e"
- integrity sha512-aNtko9OPOwVESUFp3MZfD8Uzxl7JzSeJpd7npIoxCasU37PFbAQRpKglkaKwlHOyeJdrREpo8TW8ldrkYWwvIQ==
+"@babel/compat-data@^7.17.7", "@babel/compat-data@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.5.tgz#b1f6c86a02d85d2dd3368a2b67c09add8cd0c255"
+ integrity sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==
-"@babel/core@^7.10.4", "@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3":
- version "7.21.8"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.21.8.tgz#2a8c7f0f53d60100ba4c32470ba0281c92aa9aa4"
- integrity sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==
+"@babel/core@^7.10.4", "@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.22.1":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.5.tgz#d67d9747ecf26ee7ecd3ebae1ee22225fe902a89"
+ integrity sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==
dependencies:
"@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.21.5"
- "@babel/helper-compilation-targets" "^7.21.5"
- "@babel/helper-module-transforms" "^7.21.5"
- "@babel/helpers" "^7.21.5"
- "@babel/parser" "^7.21.8"
- "@babel/template" "^7.20.7"
- "@babel/traverse" "^7.21.5"
- "@babel/types" "^7.21.5"
+ "@babel/code-frame" "^7.22.5"
+ "@babel/generator" "^7.22.5"
+ "@babel/helper-compilation-targets" "^7.22.5"
+ "@babel/helper-module-transforms" "^7.22.5"
+ "@babel/helpers" "^7.22.5"
+ "@babel/parser" "^7.22.5"
+ "@babel/template" "^7.22.5"
+ "@babel/traverse" "^7.22.5"
+ "@babel/types" "^7.22.5"
convert-source-map "^1.7.0"
debug "^4.1.0"
gensync "^1.0.0-beta.2"
json5 "^2.2.2"
semver "^6.3.0"
-"@babel/core@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.1.tgz#5de51c5206f4c6f5533562838337a603c1033cfd"
- integrity sha512-Hkqu7J4ynysSXxmAahpN1jjRwVJ+NdpraFLIWflgjpVob3KNyK3/tIUc7Q7szed8WMp0JNa7Qtd1E9Oo22F9gA==
+"@babel/generator@^7.22.5", "@babel/generator@^7.7.2":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.5.tgz#1e7bf768688acfb05cf30b2369ef855e82d984f7"
+ integrity sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==
dependencies:
- "@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.22.0"
- "@babel/helper-compilation-targets" "^7.22.1"
- "@babel/helper-module-transforms" "^7.22.1"
- "@babel/helpers" "^7.22.0"
- "@babel/parser" "^7.22.0"
- "@babel/template" "^7.21.9"
- "@babel/traverse" "^7.22.1"
- "@babel/types" "^7.22.0"
- convert-source-map "^1.7.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.2"
- semver "^6.3.0"
-
-"@babel/generator@^7.21.5", "@babel/generator@^7.22.0", "@babel/generator@^7.22.3", "@babel/generator@^7.7.2":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.3.tgz#0ff675d2edb93d7596c5f6728b52615cfc0df01e"
- integrity sha512-C17MW4wlk//ES/CJDL51kPNwl+qiBQyN7b9SKyVp11BLGFeSPoVaHrv+MNt8jwQFhQWowW88z1eeBx3pFz9v8A==
- dependencies:
- "@babel/types" "^7.22.3"
+ "@babel/types" "^7.22.5"
"@jridgewell/gen-mapping" "^0.3.2"
"@jridgewell/trace-mapping" "^0.3.17"
jsesc "^2.5.1"
-"@babel/helper-annotate-as-pure@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb"
- integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==
+"@babel/helper-annotate-as-pure@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882"
+ integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==
dependencies:
- "@babel/types" "^7.18.6"
+ "@babel/types" "^7.22.5"
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.6.tgz#f14d640ed1ee9246fb33b8255f08353acfe70e6a"
- integrity sha512-KT10c1oWEpmrIRYnthbzHgoOf6B+Xd6a5yhdbNtdhtG7aO1or5HViuf1TQR36xY/QprXA5nvxO6nAjhJ4y38jw==
+"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz#a3f4758efdd0190d8927fcffd261755937c71878"
+ integrity sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==
dependencies:
- "@babel/helper-explode-assignable-expression" "^7.18.6"
- "@babel/types" "^7.18.6"
+ "@babel/types" "^7.22.5"
-"@babel/helper-builder-react-jsx@^7.19.0":
- version "7.19.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.19.0.tgz#a1f4fef805388eda4b3c1bd8994dc585b0afa351"
- integrity sha512-xvrbORmJ13lWrqyMErk4vczhXNNWdOSg1BZ+R/7D34SjDjToR5g3M5UpD6MyUekstI50qAHLWA1j7w5o1WK2Pw==
+"@babel/helper-builder-react-jsx@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.22.5.tgz#9b325d4558fb51b0bb51e4837a2bf8f707029e97"
+ integrity sha512-GYZBuAC9Vl4jnPun18TeNGyqkKWQ+3AtZHbgnrdT//0yCV+qcFyXj0X+9DJyD2jYi0C+55gRcUAhE35sk2Mm9g==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/types" "^7.19.0"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/types" "^7.22.5"
-"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.18.9", "@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.21.5", "@babel/helper-compilation-targets@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.1.tgz#bfcd6b7321ffebe33290d68550e2c9d7eb7c7a58"
- integrity sha512-Rqx13UM3yVB5q0D/KwQ8+SPfX/+Rnsy1Lw1k/UwOC4KC6qrzIQoY3lYnBu5EHKBlEHHcj0M0W8ltPSkD8rqfsQ==
+"@babel/helper-compilation-targets@^7.17.7", "@babel/helper-compilation-targets@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.5.tgz#fc7319fc54c5e2fa14b2909cf3c5fd3046813e02"
+ integrity sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==
dependencies:
- "@babel/compat-data" "^7.22.0"
- "@babel/helper-validator-option" "^7.21.0"
+ "@babel/compat-data" "^7.22.5"
+ "@babel/helper-validator-option" "^7.22.5"
browserslist "^4.21.3"
lru-cache "^5.1.1"
semver "^6.3.0"
-"@babel/helper-create-class-features-plugin@^7.21.0":
- version "7.21.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.21.4.tgz#3a017163dc3c2ba7deb9a7950849a9586ea24c18"
- integrity sha512-46QrX2CQlaFRF4TkwfTt6nJD7IHq8539cCL7SDpqWSDeJKY1xylKKY5F/33mJhLZ3mFvKv2gGrVS6NkyF6qs+Q==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-member-expression-to-functions" "^7.21.0"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/helper-replace-supers" "^7.20.7"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
- "@babel/helper-split-export-declaration" "^7.18.6"
-
-"@babel/helper-create-class-features-plugin@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.1.tgz#ae3de70586cc757082ae3eba57240d42f468c41b"
- integrity sha512-SowrZ9BWzYFgzUMwUmowbPSGu6CXL5MSuuCkG3bejahSpSymioPmuLdhPxNOc9MjuNGjy7M/HaXvJ8G82Lywlw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-environment-visitor" "^7.22.1"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-member-expression-to-functions" "^7.22.0"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/helper-replace-supers" "^7.22.1"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
- "@babel/helper-split-export-declaration" "^7.18.6"
+"@babel/helper-create-class-features-plugin@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.5.tgz#2192a1970ece4685fbff85b48da2c32fcb130b7c"
+ integrity sha512-xkb58MyOYIslxu3gKmVXmjTtUPvBU4odYzbiIQbWwLKIHCsx6UGZGX6F1IznMFVnDdirseUZopzN+ZRt8Xb33Q==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-function-name" "^7.22.5"
+ "@babel/helper-member-expression-to-functions" "^7.22.5"
+ "@babel/helper-optimise-call-expression" "^7.22.5"
+ "@babel/helper-replace-supers" "^7.22.5"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
+ "@babel/helper-split-export-declaration" "^7.22.5"
semver "^6.3.0"
-"@babel/helper-create-regexp-features-plugin@^7.18.6":
- version "7.19.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz#7976aca61c0984202baca73d84e2337a5424a41b"
- integrity sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==
+"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.5.tgz#bb2bf0debfe39b831986a4efbf4066586819c6e4"
+ integrity sha512-1VpEFOIbMRaXyDeUwUfmTIxExLwQ+zkW+Bh5zXpApA3oQedBx9v/updixWxnx/bZpKw7u8VxWjb/qWpIcmPq8A==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- regexpu-core "^5.1.0"
-
-"@babel/helper-create-regexp-features-plugin@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.1.tgz#a7ed9a8488b45b467fca353cd1a44dc5f0cf5c70"
- integrity sha512-WWjdnfR3LPIe+0EY8td7WmjhytxXtjKAEpnAxun/hkNiyOaPlvGK+NZaBFIdi9ndYV3Gav7BpFvtUwnaJlwi1w==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
regexpu-core "^5.3.1"
semver "^6.3.0"
@@ 180,228 136,177 @@
resolve "^1.14.2"
semver "^6.1.2"
-"@babel/helper-environment-visitor@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"
- integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==
-
-"@babel/helper-environment-visitor@^7.21.5", "@babel/helper-environment-visitor@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.1.tgz#ac3a56dbada59ed969d712cf527bd8271fe3eba8"
- integrity sha512-Z2tgopurB/kTbidvzeBrc2To3PUP/9i5MUe+fU6QJCQDyPwSH2oRapkLw3KGECDYSjhQZCNxEvNvZlLw8JjGwA==
-
-"@babel/helper-explode-assignable-expression@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz#41f8228ef0a6f1a036b8dfdfec7ce94f9a6bc096"
- integrity sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-function-name@^7.18.9":
- version "7.19.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz#941574ed5390682e872e52d3f38ce9d1bef4648c"
- integrity sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==
- dependencies:
- "@babel/template" "^7.18.10"
- "@babel/types" "^7.19.0"
-
-"@babel/helper-function-name@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4"
- integrity sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==
- dependencies:
- "@babel/template" "^7.20.7"
- "@babel/types" "^7.21.0"
-
-"@babel/helper-hoist-variables@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"
- integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-member-expression-to-functions@^7.20.7":
- version "7.20.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.20.7.tgz#a6f26e919582275a93c3aa6594756d71b0bb7f05"
- integrity sha512-9J0CxJLq315fEdi4s7xK5TQaNYjZw+nDVpVqr1axNGKzdrdwYBD5b4uKv3n75aABG0rCCTK8Im8Ww7eYfMrZgw==
- dependencies:
- "@babel/types" "^7.20.7"
-
-"@babel/helper-member-expression-to-functions@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz#319c6a940431a133897148515877d2f3269c3ba5"
- integrity sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==
- dependencies:
- "@babel/types" "^7.21.0"
-
-"@babel/helper-member-expression-to-functions@^7.22.0":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.3.tgz#4b77a12c1b4b8e9e28736ed47d8b91f00976911f"
- integrity sha512-Gl7sK04b/2WOb6OPVeNy9eFKeD3L6++CzL3ykPOWqTn08xgYYK0wz4TUh2feIImDXxcVW3/9WQ1NMKY66/jfZA==
- dependencies:
- "@babel/types" "^7.22.3"
-
-"@babel/helper-module-imports@^7.0.0-beta.49", "@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.18.6", "@babel/helper-module-imports@^7.21.4":
- version "7.21.4"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz#ac88b2f76093637489e718a90cec6cf8a9b029af"
- integrity sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==
- dependencies:
- "@babel/types" "^7.21.4"
-
-"@babel/helper-module-transforms@^7.18.6", "@babel/helper-module-transforms@^7.20.11", "@babel/helper-module-transforms@^7.21.5", "@babel/helper-module-transforms@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.1.tgz#e0cad47fedcf3cae83c11021696376e2d5a50c63"
- integrity sha512-dxAe9E7ySDGbQdCVOY/4+UcD8M9ZFqZcZhSPsPacvCG4M+9lwtDDQfI2EoaSvmf7W/8yCBkGU0m7Pvt1ru3UZw==
- dependencies:
- "@babel/helper-environment-visitor" "^7.22.1"
- "@babel/helper-module-imports" "^7.21.4"
- "@babel/helper-simple-access" "^7.21.5"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/helper-validator-identifier" "^7.19.1"
- "@babel/template" "^7.21.9"
- "@babel/traverse" "^7.22.1"
- "@babel/types" "^7.22.0"
-
-"@babel/helper-optimise-call-expression@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe"
- integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@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.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.21.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.21.5.tgz#345f2377d05a720a4e5ecfa39cbf4474a4daed56"
- integrity sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==
-
-"@babel/helper-remap-async-to-generator@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz#997458a0e3357080e54e1d79ec347f8a8cd28519"
- integrity sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-wrap-function" "^7.18.9"
- "@babel/types" "^7.18.9"
-
-"@babel/helper-replace-supers@^7.18.6", "@babel/helper-replace-supers@^7.20.7":
- version "7.20.7"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz#243ecd2724d2071532b2c8ad2f0f9f083bcae331"
- integrity sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==
- dependencies:
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-member-expression-to-functions" "^7.20.7"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/template" "^7.20.7"
- "@babel/traverse" "^7.20.7"
- "@babel/types" "^7.20.7"
-
-"@babel/helper-replace-supers@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.1.tgz#38cf6e56f7dc614af63a21b45565dd623f0fdc95"
- integrity sha512-ut4qrkE4AuSfrwHSps51ekR1ZY/ygrP1tp0WFm8oVq6nzc/hvfV/22JylndIbsf2U2M9LOMwiSddr6y+78j+OQ==
- dependencies:
- "@babel/helper-environment-visitor" "^7.22.1"
- "@babel/helper-member-expression-to-functions" "^7.22.0"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/template" "^7.21.9"
- "@babel/traverse" "^7.22.1"
- "@babel/types" "^7.22.0"
-
-"@babel/helper-simple-access@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz#d697a7971a5c39eac32c7e63c0921c06c8a249ee"
- integrity sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==
- dependencies:
- "@babel/types" "^7.21.5"
-
-"@babel/helper-skip-transparent-expression-wrappers@^7.20.0":
- version "7.20.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz#fbe4c52f60518cab8140d77101f0e63a8a230684"
- integrity sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==
- dependencies:
- "@babel/types" "^7.20.0"
-
-"@babel/helper-split-export-declaration@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"
- integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-string-parser@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz#2b3eea65443c6bdc31c22d037c65f6d323b6b2bd"
- integrity sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==
-
-"@babel/helper-validator-identifier@^7.18.6", "@babel/helper-validator-identifier@^7.19.1":
- version "7.19.1"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2"
- integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==
-
-"@babel/helper-validator-option@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz#8224c7e13ace4bafdc4004da2cf064ef42673180"
- integrity sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==
-
-"@babel/helper-wrap-function@^7.18.9":
- version "7.18.10"
- resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.18.10.tgz#a7fcd3ab9b1be4c9b52cf7d7fdc1e88c2ce93396"
- integrity sha512-95NLBP59VWdfK2lyLKe6eTMq9xg+yWKzxzxbJ1wcYNi1Auz200+83fMDADjRxBvc2QQor5zja2yTQzXGhk2GtQ==
- dependencies:
- "@babel/helper-function-name" "^7.18.9"
- "@babel/template" "^7.18.10"
- "@babel/traverse" "^7.18.10"
- "@babel/types" "^7.18.10"
-
-"@babel/helpers@^7.21.5", "@babel/helpers@^7.22.0":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.3.tgz#53b74351da9684ea2f694bf0877998da26dd830e"
- integrity sha512-jBJ7jWblbgr7r6wYZHMdIqKc73ycaTcCaWRq4/2LpuPHcx7xMlZvpGQkOYc9HeSjn6rcx15CPlgVcBtZ4WZJ2w==
- dependencies:
- "@babel/template" "^7.21.9"
- "@babel/traverse" "^7.22.1"
- "@babel/types" "^7.22.3"
-
-"@babel/highlight@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"
- integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==
- dependencies:
- "@babel/helper-validator-identifier" "^7.18.6"
+"@babel/helper-environment-visitor@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz#f06dd41b7c1f44e1f8da6c4055b41ab3a09a7e98"
+ integrity sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==
+
+"@babel/helper-function-name@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be"
+ integrity sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==
+ dependencies:
+ "@babel/template" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-hoist-variables@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb"
+ integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-member-expression-to-functions@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz#0a7c56117cad3372fbf8d2fb4bf8f8d64a1e76b2"
+ integrity sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-module-imports@^7.0.0-beta.49", "@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c"
+ integrity sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-module-transforms@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz#0f65daa0716961b6e96b164034e737f60a80d2ef"
+ integrity sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==
+ dependencies:
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-module-imports" "^7.22.5"
+ "@babel/helper-simple-access" "^7.22.5"
+ "@babel/helper-split-export-declaration" "^7.22.5"
+ "@babel/helper-validator-identifier" "^7.22.5"
+ "@babel/template" "^7.22.5"
+ "@babel/traverse" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-optimise-call-expression@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e"
+ integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@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.16.7", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295"
+ integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==
+
+"@babel/helper-remap-async-to-generator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.5.tgz#14a38141a7bf2165ad38da61d61cf27b43015da2"
+ integrity sha512-cU0Sq1Rf4Z55fgz7haOakIyM7+x/uCFwXpLPaeRzfoUtAEAuUZjZvFPjL/rk5rW693dIgn2hng1W7xbT7lWT4g==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-wrap-function" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-replace-supers@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.5.tgz#71bc5fb348856dea9fdc4eafd7e2e49f585145dc"
+ integrity sha512-aLdNM5I3kdI/V9xGNyKSF3X/gTyMUBohTZ+/3QdQKAA9vxIiy12E+8E2HoOP1/DjeqU+g6as35QHJNMDDYpuCg==
+ dependencies:
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-member-expression-to-functions" "^7.22.5"
+ "@babel/helper-optimise-call-expression" "^7.22.5"
+ "@babel/template" "^7.22.5"
+ "@babel/traverse" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-simple-access@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de"
+ integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-skip-transparent-expression-wrappers@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847"
+ integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-split-export-declaration@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.5.tgz#88cf11050edb95ed08d596f7a044462189127a08"
+ integrity sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==
+ dependencies:
+ "@babel/types" "^7.22.5"
+
+"@babel/helper-string-parser@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f"
+ integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==
+
+"@babel/helper-validator-identifier@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193"
+ integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==
+
+"@babel/helper-validator-option@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz#de52000a15a177413c8234fa3a8af4ee8102d0ac"
+ integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==
+
+"@babel/helper-wrap-function@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.5.tgz#44d205af19ed8d872b4eefb0d2fa65f45eb34f06"
+ integrity sha512-bYqLIBSEshYcYQyfks8ewYA8S30yaGSeRslcvKMvoUk6HHPySbxHq9YRi6ghhzEU+yhQv9bP/jXnygkStOcqZw==
+ dependencies:
+ "@babel/helper-function-name" "^7.22.5"
+ "@babel/template" "^7.22.5"
+ "@babel/traverse" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/helpers@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.22.5.tgz#74bb4373eb390d1ceed74a15ef97767e63120820"
+ integrity sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==
+ dependencies:
+ "@babel/template" "^7.22.5"
+ "@babel/traverse" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/highlight@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.5.tgz#aa6c05c5407a67ebce408162b7ede789b4d22031"
+ integrity sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==
+ dependencies:
+ "@babel/helper-validator-identifier" "^7.22.5"
chalk "^2.0.0"
js-tokens "^4.0.0"
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.21.5", "@babel/parser@^7.21.8", "@babel/parser@^7.21.9", "@babel/parser@^7.22.0", "@babel/parser@^7.22.4":
- version "7.22.4"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.4.tgz#a770e98fd785c231af9d93f6459d36770993fb32"
- integrity sha512-VLLsx06XkEYqBtE5YGPwfSGwfrjnyPP5oiGty3S8pQLFDFLaS8VwWSIxkTXpcvr5zeYLE6+MBNl2npl/YnfofA==
+"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.5.tgz#721fd042f3ce1896238cf1b341c77eb7dee7dbea"
+ integrity sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.18.6":
- version "7.18.6"
- 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.18.6.tgz#da5b8f9a580acdfbe53494dba45ea389fb09a4d2"
- integrity sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5":
+ version "7.22.5"
+ 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.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e"
+ integrity sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.3.tgz#a75be1365c0c3188c51399a662168c1c98108659"
- integrity sha512-6r4yRwEnorYByILoDRnEqxtojYKuiIv9FojW2E8GUKo9eWBwbKcd9IiZOZpdyXc64RmyGGyPu3/uAcrz/dq2kQ==
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz#fef09f9499b1f1c930da8a0c419db42167d792ca"
+ integrity sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
- "@babel/plugin-transform-optional-chaining" "^7.22.3"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
+ "@babel/plugin-transform-optional-chaining" "^7.22.5"
-"@babel/plugin-proposal-private-property-in-object@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0.tgz#19496bd9883dd83c23c7d7fc45dcd9ad02dfa1dc"
- integrity sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-create-class-features-plugin" "^7.21.0"
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
+"@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-proposal-unicode-property-regex@^7.4.4":
version "7.18.6"
@@ 453,19 358,19 @@
dependencies:
"@babel/helper-plugin-utils" "^7.8.3"
-"@babel/plugin-syntax-import-assertions@^7.20.0":
- version "7.20.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz#bb50e0d4bea0957235390641209394e87bdb9cc4"
- integrity sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==
+"@babel/plugin-syntax-import-assertions@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz#07d252e2aa0bc6125567f742cd58619cb14dce98"
+ integrity sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==
dependencies:
- "@babel/helper-plugin-utils" "^7.19.0"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-syntax-import-attributes@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.3.tgz#d7168f22b9b49a6cc1792cec78e06a18ad2e7b4b"
- integrity sha512-i35jZJv6aO7hxEbIWQ41adVfOzjm9dcYDNeWlBMd8p0ZQRtNUCBrmGwZt+H5lb+oOC9a3svp956KP0oWGA1YsA==
+"@babel/plugin-syntax-import-attributes@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz#ab840248d834410b829f569f5262b9e517555ecb"
+ integrity sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3":
version "7.10.4"
@@ 481,12 386,12 @@
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
-"@babel/plugin-syntax-jsx@7", "@babel/plugin-syntax-jsx@^7.12.13", "@babel/plugin-syntax-jsx@^7.21.4", "@babel/plugin-syntax-jsx@^7.7.2":
- version "7.21.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.21.4.tgz#f264ed7bf40ffc9ec239edabc17a50c4f5b6fea2"
- integrity sha512-5hewiLct5OKyh6PLKEYaFclcqtIgCb6bmELouxjF6up5q3Sov7rOayW4RwhbaBL0dit8rA80GNfY+UuDp2mBbQ==
+"@babel/plugin-syntax-jsx@7", "@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.7.2":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918"
+ integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==
dependencies:
- "@babel/helper-plugin-utils" "^7.20.2"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
version "7.10.4"
@@ 544,19 449,12 @@
dependencies:
"@babel/helper-plugin-utils" "^7.14.5"
-"@babel/plugin-syntax-typescript@^7.20.0":
- version "7.20.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz#4e9a0cfc769c85689b77a2e642d24e9f697fc8c7"
- integrity sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==
+"@babel/plugin-syntax-typescript@^7.22.5", "@babel/plugin-syntax-typescript@^7.7.2":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272"
+ integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.19.0"
-
-"@babel/plugin-syntax-typescript@^7.7.2":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716"
- integrity sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
version "7.18.6"
@@ 566,476 464,476 @@
"@babel/helper-create-regexp-features-plugin" "^7.18.6"
"@babel/helper-plugin-utils" "^7.18.6"
-"@babel/plugin-transform-arrow-functions@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.21.5.tgz#9bb42a53de447936a57ba256fbf537fc312b6929"
- integrity sha512-wb1mhwGOCaXHDTcsRYMKF9e5bbMgqwxtqa2Y1ifH96dXJPwbuLX9qHy3clhrxVqgMz7nyNXs8VkxdH8UBcjKqA==
+"@babel/plugin-transform-arrow-functions@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz#e5ba566d0c58a5b2ba2a8b795450641950b71958"
+ integrity sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-async-generator-functions@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.3.tgz#3ed99924c354fb9e80dabb2cc8d002c702e94527"
- integrity sha512-36A4Aq48t66btydbZd5Fk0/xJqbpg/v4QWI4AH4cYHBXy9Mu42UOupZpebKFiCFNT9S9rJFcsld0gsv0ayLjtA==
+"@babel/plugin-transform-async-generator-functions@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.5.tgz#7336356d23380eda9a56314974f053a020dab0c3"
+ integrity sha512-gGOEvFzm3fWoyD5uZq7vVTD57pPJ3PczPUD/xCFGjzBpUosnklmXyKnGQbbbGs1NPNPskFex0j93yKbHt0cHyg==
dependencies:
- "@babel/helper-environment-visitor" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-remap-async-to-generator" "^7.18.9"
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-remap-async-to-generator" "^7.22.5"
"@babel/plugin-syntax-async-generators" "^7.8.4"
-"@babel/plugin-transform-async-to-generator@^7.20.7":
- version "7.20.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz#dfee18623c8cb31deb796aa3ca84dda9cea94354"
- integrity sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==
+"@babel/plugin-transform-async-to-generator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz#c7a85f44e46f8952f6d27fe57c2ed3cc084c3775"
+ integrity sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==
dependencies:
- "@babel/helper-module-imports" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/helper-remap-async-to-generator" "^7.18.9"
+ "@babel/helper-module-imports" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-remap-async-to-generator" "^7.22.5"
-"@babel/plugin-transform-block-scoped-functions@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz#9187bf4ba302635b9d70d986ad70f038726216a8"
- integrity sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==
+"@babel/plugin-transform-block-scoped-functions@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024"
+ integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-block-scoping@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz#e737b91037e5186ee16b76e7ae093358a5634f02"
- integrity sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==
+"@babel/plugin-transform-block-scoping@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz#8bfc793b3a4b2742c0983fadc1480d843ecea31b"
+ integrity sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg==
dependencies:
- "@babel/helper-plugin-utils" "^7.20.2"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-class-properties@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.3.tgz#3407145e513830df77f0cef828b8b231c166fe4c"
- integrity sha512-mASLsd6rhOrLZ5F3WbCxkzl67mmOnqik0zrg5W6D/X0QMW7HtvnoL1dRARLKIbMP3vXwkwziuLesPqWVGIl6Bw==
+"@babel/plugin-transform-class-properties@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz#97a56e31ad8c9dc06a0b3710ce7803d5a48cca77"
+ integrity sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==
dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-class-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-class-static-block@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.3.tgz#e352cf33567385c731a8f21192efeba760358773"
- integrity sha512-5BirgNWNOx7cwbTJCOmKFJ1pZjwk5MUfMIwiBBvsirCJMZeQgs5pk6i1OlkVg+1Vef5LfBahFOrdCnAWvkVKMw==
+"@babel/plugin-transform-class-static-block@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz#3e40c46f048403472d6f4183116d5e46b1bff5ba"
+ integrity sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==
dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-class-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-class-static-block" "^7.14.5"
-"@babel/plugin-transform-classes@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz#f469d0b07a4c5a7dbb21afad9e27e57b47031665"
- integrity sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-compilation-targets" "^7.20.7"
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/helper-replace-supers" "^7.20.7"
- "@babel/helper-split-export-declaration" "^7.18.6"
+"@babel/plugin-transform-classes@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.5.tgz#635d4e98da741fad814984639f4c0149eb0135e1"
+ integrity sha512-2edQhLfibpWpsVBx2n/GKOz6JdGQvLruZQfGr9l1qes2KQaWswjBzhQF7UDUZMNaMMQeYnQzxwOMPsbYF7wqPQ==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-compilation-targets" "^7.22.5"
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-function-name" "^7.22.5"
+ "@babel/helper-optimise-call-expression" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-replace-supers" "^7.22.5"
+ "@babel/helper-split-export-declaration" "^7.22.5"
globals "^11.1.0"
-"@babel/plugin-transform-computed-properties@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.21.5.tgz#3a2d8bb771cd2ef1cd736435f6552fe502e11b44"
- integrity sha512-TR653Ki3pAwxBxUe8srfF3e4Pe3FTA46uaNHYyQwIoM4oWKSoOZiDNyHJ0oIoDIUPSRQbQG7jzgVBX3FPVne1Q==
+"@babel/plugin-transform-computed-properties@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz#cd1e994bf9f316bd1c2dafcd02063ec261bb3869"
+ integrity sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/template" "^7.20.7"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/template" "^7.22.5"
-"@babel/plugin-transform-destructuring@^7.21.3":
- version "7.21.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz#73b46d0fd11cd6ef57dea8a381b1215f4959d401"
- integrity sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==
+"@babel/plugin-transform-destructuring@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz#d3aca7438f6c26c78cdd0b0ba920a336001b27cc"
+ integrity sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.20.2"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-dotall-regex@^7.18.6", "@babel/plugin-transform-dotall-regex@^7.4.4":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz#b286b3e7aae6c7b861e45bed0a2fafd6b1a4fef8"
- integrity sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==
+"@babel/plugin-transform-dotall-regex@^7.22.5", "@babel/plugin-transform-dotall-regex@^7.4.4":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz#dbb4f0e45766eb544e193fb00e65a1dd3b2a4165"
+ integrity sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-create-regexp-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-duplicate-keys@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz#687f15ee3cdad6d85191eb2a372c4528eaa0ae0e"
- integrity sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==
+"@babel/plugin-transform-duplicate-keys@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz#b6e6428d9416f5f0bba19c70d1e6e7e0b88ab285"
+ integrity sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.9"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-dynamic-import@^7.22.1":
- version "7.22.1"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.1.tgz#6c56afaf896a07026330cf39714532abed8d9ed1"
- integrity sha512-rlhWtONnVBPdmt+jeewS0qSnMz/3yLFrqAP8hHC6EDcrYRSyuz9f9yQhHvVn2Ad6+yO9fHXac5piudeYrInxwQ==
+"@babel/plugin-transform-dynamic-import@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz#d6908a8916a810468c4edff73b5b75bda6ad393e"
+ integrity sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-dynamic-import" "^7.8.3"
-"@babel/plugin-transform-exponentiation-operator@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz#421c705f4521888c65e91fdd1af951bfefd4dacd"
- integrity sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==
+"@babel/plugin-transform-exponentiation-operator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz#402432ad544a1f9a480da865fda26be653e48f6a"
+ integrity sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==
dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-export-namespace-from@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.3.tgz#9b8700aa495007d3bebac8358d1c562434b680b9"
- integrity sha512-5Ti1cHLTDnt3vX61P9KZ5IG09bFXp4cDVFJIAeCZuxu9OXXJJZp5iP0n/rzM2+iAutJY+KWEyyHcRaHlpQ/P5g==
+"@babel/plugin-transform-export-namespace-from@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz#57c41cb1d0613d22f548fddd8b288eedb9973a5b"
+ integrity sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-"@babel/plugin-transform-for-of@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.5.tgz#e890032b535f5a2e237a18535f56a9fdaa7b83fc"
- integrity sha512-nYWpjKW/7j/I/mZkGVgHJXh4bA1sfdFnJoOXwJuj4m3Q2EraO/8ZyrkCau9P5tbHQk01RMSt6KYLCsW7730SXQ==
+"@babel/plugin-transform-for-of@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f"
+ integrity sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-function-name@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz#cc354f8234e62968946c61a46d6365440fc764e0"
- integrity sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==
+"@babel/plugin-transform-function-name@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz#935189af68b01898e0d6d99658db6b164205c143"
+ integrity sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==
dependencies:
- "@babel/helper-compilation-targets" "^7.18.9"
- "@babel/helper-function-name" "^7.18.9"
- "@babel/helper-plugin-utils" "^7.18.9"
+ "@babel/helper-compilation-targets" "^7.22.5"
+ "@babel/helper-function-name" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-json-strings@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.3.tgz#a181b8679cf7c93e9d0e3baa5b1776d65be601a9"
- integrity sha512-IuvOMdeOOY2X4hRNAT6kwbePtK21BUyrAEgLKviL8pL6AEEVUVcqtRdN/HJXBLGIbt9T3ETmXRnFedRRmQNTYw==
+"@babel/plugin-transform-json-strings@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz#14b64352fdf7e1f737eed68de1a1468bd2a77ec0"
+ integrity sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-json-strings" "^7.8.3"
-"@babel/plugin-transform-literals@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz#72796fdbef80e56fba3c6a699d54f0de557444bc"
- integrity sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==
+"@babel/plugin-transform-literals@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz#e9341f4b5a167952576e23db8d435849b1dd7920"
+ integrity sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.9"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-logical-assignment-operators@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.3.tgz#9e021455810f33b0baccb82fb759b194f5dc36f0"
- integrity sha512-CbayIfOw4av2v/HYZEsH+Klks3NC2/MFIR3QR8gnpGNNPEaq2fdlVCRYG/paKs7/5hvBLQ+H70pGWOHtlNEWNA==
+"@babel/plugin-transform-logical-assignment-operators@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz#66ae5f068fd5a9a5dc570df16f56c2a8462a9d6c"
+ integrity sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
-"@babel/plugin-transform-member-expression-literals@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz#ac9fdc1a118620ac49b7e7a5d2dc177a1bfee88e"
- integrity sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==
+"@babel/plugin-transform-member-expression-literals@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def"
+ integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-modules-amd@^7.20.11":
- version "7.20.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz#3daccca8e4cc309f03c3a0c4b41dc4b26f55214a"
- integrity sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==
+"@babel/plugin-transform-modules-amd@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz#4e045f55dcf98afd00f85691a68fc0780704f526"
+ integrity sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==
dependencies:
- "@babel/helper-module-transforms" "^7.20.11"
- "@babel/helper-plugin-utils" "^7.20.2"
+ "@babel/helper-module-transforms" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-modules-commonjs@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.5.tgz#d69fb947eed51af91de82e4708f676864e5e47bc"
- integrity sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==
+"@babel/plugin-transform-modules-commonjs@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#7d9875908d19b8c0536085af7b053fd5bd651bfa"
+ integrity sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==
dependencies:
- "@babel/helper-module-transforms" "^7.21.5"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-simple-access" "^7.21.5"
+ "@babel/helper-module-transforms" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-simple-access" "^7.22.5"
-"@babel/plugin-transform-modules-systemjs@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.3.tgz#cc507e03e88d87b016feaeb5dae941e6ef50d91e"
- integrity sha512-V21W3bKLxO3ZjcBJZ8biSvo5gQ85uIXW2vJfh7JSWf/4SLUSr1tOoHX3ruN4+Oqa2m+BKfsxTR1I+PsvkIWvNw==
+"@babel/plugin-transform-modules-systemjs@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496"
+ integrity sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==
dependencies:
- "@babel/helper-hoist-variables" "^7.18.6"
- "@babel/helper-module-transforms" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-validator-identifier" "^7.19.1"
+ "@babel/helper-hoist-variables" "^7.22.5"
+ "@babel/helper-module-transforms" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-validator-identifier" "^7.22.5"
-"@babel/plugin-transform-modules-umd@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz#81d3832d6034b75b54e62821ba58f28ed0aab4b9"
- integrity sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==
+"@babel/plugin-transform-modules-umd@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz#4694ae40a87b1745e3775b6a7fe96400315d4f98"
+ integrity sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==
dependencies:
- "@babel/helper-module-transforms" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-module-transforms" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-named-capturing-groups-regex@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.3.tgz#db6fb77e6b3b53ec3b8d370246f0b7cf67d35ab4"
- integrity sha512-c6HrD/LpUdNNJsISQZpds3TXvfYIAbo+efE9aWmY/PmSRD0agrJ9cPMt4BmArwUQ7ZymEWTFjTyp+yReLJZh0Q==
+"@babel/plugin-transform-named-capturing-groups-regex@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f"
+ integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-regexp-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-new-target@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.3.tgz#deb0377d741cbee2f45305868b9026dcd6dd96e2"
- integrity sha512-5RuJdSo89wKdkRTqtM9RVVJzHum9c2s0te9rB7vZC1zKKxcioWIy+xcu4OoIAjyFZhb/bp5KkunuLin1q7Ct+w==
+"@babel/plugin-transform-new-target@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz#1b248acea54ce44ea06dfd37247ba089fcf9758d"
+ integrity sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-nullish-coalescing-operator@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.3.tgz#8c519f8bf5af94a9ca6f65cf422a9d3396e542b9"
- integrity sha512-CpaoNp16nX7ROtLONNuCyenYdY/l7ZsR6aoVa7rW7nMWisoNoQNIH5Iay/4LDyRjKMuElMqXiBoOQCDLTMGZiw==
+"@babel/plugin-transform-nullish-coalescing-operator@^7.22.3", "@babel/plugin-transform-nullish-coalescing-operator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381"
+ integrity sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-"@babel/plugin-transform-numeric-separator@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.3.tgz#02493070ca6685884b0eee705363ee4da2132ab0"
- integrity sha512-+AF88fPDJrnseMh5vD9+SH6wq4ZMvpiTMHh58uLs+giMEyASFVhcT3NkoyO+NebFCNnpHJEq5AXO2txV4AGPDQ==
+"@babel/plugin-transform-numeric-separator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz#57226a2ed9e512b9b446517ab6fa2d17abb83f58"
+ integrity sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-numeric-separator" "^7.10.4"
-"@babel/plugin-transform-object-rest-spread@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.3.tgz#da6fba693effb8c203d8c3bdf7bf4e2567e802e9"
- integrity sha512-38bzTsqMMCI46/TQnJwPPpy33EjLCc1Gsm2hRTF6zTMWnKsN61vdrpuzIEGQyKEhDSYDKyZHrrd5FMj4gcUHhw==
+"@babel/plugin-transform-object-rest-spread@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz#9686dc3447df4753b0b2a2fae7e8bc33cdc1f2e1"
+ integrity sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==
dependencies:
- "@babel/compat-data" "^7.22.3"
- "@babel/helper-compilation-targets" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/compat-data" "^7.22.5"
+ "@babel/helper-compilation-targets" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-transform-parameters" "^7.22.3"
+ "@babel/plugin-transform-parameters" "^7.22.5"
-"@babel/plugin-transform-object-super@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz#fb3c6ccdd15939b6ff7939944b51971ddc35912c"
- integrity sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==
+"@babel/plugin-transform-object-super@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c"
+ integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
- "@babel/helper-replace-supers" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-replace-supers" "^7.22.5"
-"@babel/plugin-transform-optional-catch-binding@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.3.tgz#e971a083fc7d209d9cd18253853af1db6d8dc42f"
- integrity sha512-bnDFWXFzWY0BsOyqaoSXvMQ2F35zutQipugog/rqotL2S4ciFOKlRYUu9djt4iq09oh2/34hqfRR2k1dIvuu4g==
+"@babel/plugin-transform-optional-catch-binding@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz#842080be3076703be0eaf32ead6ac8174edee333"
+ integrity sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
-"@babel/plugin-transform-optional-chaining@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.3.tgz#5fd24a4a7843b76da6aeec23c7f551da5d365290"
- integrity sha512-63v3/UFFxhPKT8j8u1jTTGVyITxl7/7AfOqK8C5gz1rHURPUGe3y5mvIf68eYKGoBNahtJnTxBKug4BQOnzeJg==
+"@babel/plugin-transform-optional-chaining@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.5.tgz#1003762b9c14295501beb41be72426736bedd1e0"
+ integrity sha512-AconbMKOMkyG+xCng2JogMCDcqW8wedQAqpVIL4cOSescZ7+iW8utC6YDZLMCSUIReEA733gzRSaOSXMAt/4WQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
"@babel/plugin-syntax-optional-chaining" "^7.8.3"
-"@babel/plugin-transform-parameters@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.3.tgz#24477acfd2fd2bc901df906c9bf17fbcfeee900d"
- integrity sha512-x7QHQJHPuD9VmfpzboyGJ5aHEr9r7DsAsdxdhJiTB3J3j8dyl+NFZ+rX5Q2RWFDCs61c06qBfS4ys2QYn8UkMw==
+"@babel/plugin-transform-parameters@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz#c3542dd3c39b42c8069936e48717a8d179d63a18"
+ integrity sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-private-methods@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.3.tgz#adac38020bab5047482d3297107c1f58e9c574f6"
- integrity sha512-fC7jtjBPFqhqpPAE+O4LKwnLq7gGkD3ZmC2E3i4qWH34mH3gOg2Xrq5YMHUq6DM30xhqM1DNftiRaSqVjEG+ug==
+"@babel/plugin-transform-private-methods@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz#21c8af791f76674420a147ae62e9935d790f8722"
+ integrity sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==
dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-class-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-private-property-in-object@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.3.tgz#031621b02c7b7d95389de1a3dba2fe9e8c548e56"
- integrity sha512-C7MMl4qWLpgVCbXfj3UW8rR1xeCnisQ0cU7YJHV//8oNBS0aCIVg1vFnZXxOckHhEpQyqNNkWmvSEWnMLlc+Vw==
+"@babel/plugin-transform-private-property-in-object@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz#07a77f28cbb251546a43d175a1dda4cf3ef83e32"
+ integrity sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-create-class-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-create-class-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-"@babel/plugin-transform-property-literals@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz#e22498903a483448e94e032e9bbb9c5ccbfc93a3"
- integrity sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==
+"@babel/plugin-transform-property-literals@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766"
+ integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-react-display-name@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz#8b1125f919ef36ebdfff061d664e266c666b9415"
- integrity sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==
+"@babel/plugin-transform-react-display-name@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz#3c4326f9fce31c7968d6cb9debcaf32d9e279a2b"
+ integrity sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-transform-react-inline-elements@^7.21.0":
- version "7.21.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-inline-elements/-/plugin-transform-react-inline-elements-7.21.0.tgz#921fe634c422987677b133b335ae3f3aecddda2a"
- integrity sha512-lOSFD/67qxOwQ7q6KpkAbBFeGI5xy1Oya2zipYxPSmG2C210CRJyQdzOl1A368J1nv2gOFTgRXdsRjb83jioLw==
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-inline-elements/-/plugin-transform-react-inline-elements-7.22.5.tgz#f158486764de87f84706f5e9c98506df3015d9a4"
+ integrity sha512-m+OHS1E33wsWyv37bQXNzY/AB7vMTR1BYGG/KW+HGHdKeQS03sUAweNdGaDh8wKmAqh6ZbRRtFjPbhyYFToSbQ==
dependencies:
- "@babel/helper-builder-react-jsx" "^7.19.0"
- "@babel/helper-plugin-utils" "^7.20.2"
+ "@babel/helper-builder-react-jsx" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-react-jsx-development@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz#dbe5c972811e49c7405b630e4d0d2e1380c0ddc5"
- integrity sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==
+"@babel/plugin-transform-react-jsx-development@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz#e716b6edbef972a92165cd69d92f1255f7e73e87"
+ integrity sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==
dependencies:
- "@babel/plugin-transform-react-jsx" "^7.18.6"
+ "@babel/plugin-transform-react-jsx" "^7.22.5"
-"@babel/plugin-transform-react-jsx@^7.18.6", "@babel/plugin-transform-react-jsx@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.3.tgz#5a1f380df3703ba92eb1a930a539c6d88836f690"
- integrity sha512-JEulRWG2f04a7L8VWaOngWiK6p+JOSpB+DAtwfJgOaej1qdbNxqtK7MwTBHjUA10NeFcszlFNqCdbRcirzh2uQ==
+"@babel/plugin-transform-react-jsx@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz#932c291eb6dd1153359e2a90cb5e557dcf068416"
+ integrity sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-module-imports" "^7.21.4"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/plugin-syntax-jsx" "^7.21.4"
- "@babel/types" "^7.22.3"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-module-imports" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/plugin-syntax-jsx" "^7.22.5"
+ "@babel/types" "^7.22.5"
-"@babel/plugin-transform-react-pure-annotations@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz#561af267f19f3e5d59291f9950fd7b9663d0d844"
- integrity sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==
+"@babel/plugin-transform-react-pure-annotations@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz#1f58363eef6626d6fa517b95ac66fe94685e32c0"
+ integrity sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-regenerator@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.21.5.tgz#576c62f9923f94bcb1c855adc53561fd7913724e"
- integrity sha512-ZoYBKDb6LyMi5yCsByQ5jmXsHAQDDYeexT1Szvlmui+lADvfSecr5Dxd/PkrTC3pAD182Fcju1VQkB4oCp9M+w==
+"@babel/plugin-transform-regenerator@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz#cd8a68b228a5f75fa01420e8cc2fc400f0fc32aa"
+ integrity sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
regenerator-transform "^0.15.1"
-"@babel/plugin-transform-reserved-words@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz#b1abd8ebf8edaa5f7fe6bbb8d2133d23b6a6f76a"
- integrity sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==
+"@babel/plugin-transform-reserved-words@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz#832cd35b81c287c4bcd09ce03e22199641f964fb"
+ integrity sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/plugin-transform-runtime@^7.22.4":
- version "7.22.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.4.tgz#f8353f313f18c3ce1315688631ec48657b97af42"
- integrity sha512-Urkiz1m4zqiRo17klj+l3nXgiRTFQng91Bc1eiLF7BMQu1e7wE5Gcq9xSv062IF068NHjcutSbIMev60gXxAvA==
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.5.tgz#ca975fb5e260044473c8142e1b18b567d33c2a3b"
+ integrity sha512-bg4Wxd1FWeFx3daHFTWk1pkSWK/AyQuiyAoeZAOkAOUBjnZPH6KT7eMxouV47tQ6hl6ax2zyAWBdWZXbrvXlaw==
dependencies:
- "@babel/helper-module-imports" "^7.21.4"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-module-imports" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
babel-plugin-polyfill-corejs2 "^0.4.3"
babel-plugin-polyfill-corejs3 "^0.8.1"
babel-plugin-polyfill-regenerator "^0.5.0"
semver "^6.3.0"
-"@babel/plugin-transform-shorthand-properties@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz#6d6df7983d67b195289be24909e3f12a8f664dc9"
- integrity sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==
+"@babel/plugin-transform-shorthand-properties@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz#6e277654be82b5559fc4b9f58088507c24f0c624"
+ integrity sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-spread@^7.20.7":
- version "7.20.7"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz#c2d83e0b99d3bf83e07b11995ee24bf7ca09401e"
- integrity sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==
+"@babel/plugin-transform-spread@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz#6487fd29f229c95e284ba6c98d65eafb893fea6b"
+ integrity sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==
dependencies:
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-"@babel/plugin-transform-sticky-regex@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz#c6706eb2b1524028e317720339583ad0f444adcc"
- integrity sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==
+"@babel/plugin-transform-sticky-regex@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz#295aba1595bfc8197abd02eae5fc288c0deb26aa"
+ integrity sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-template-literals@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz#04ec6f10acdaa81846689d63fae117dd9c243a5e"
- integrity sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==
+"@babel/plugin-transform-template-literals@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz#8f38cf291e5f7a8e60e9f733193f0bcc10909bff"
+ integrity sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.9"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-typeof-symbol@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz#c8cea68263e45addcd6afc9091429f80925762c0"
- integrity sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==
+"@babel/plugin-transform-typeof-symbol@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz#5e2ba478da4b603af8673ff7c54f75a97b716b34"
+ integrity sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==
dependencies:
- "@babel/helper-plugin-utils" "^7.18.9"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-typescript@^7.21.3":
- version "7.21.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.21.3.tgz#316c5be579856ea890a57ebc5116c5d064658f2b"
- integrity sha512-RQxPz6Iqt8T0uw/WsJNReuBpWpBqs/n7mNo18sKLoTbMp+UrEekhH+pKSVC7gWz+DNjo9gryfV8YzCiT45RgMw==
+"@babel/plugin-transform-typescript@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.5.tgz#5c0f7adfc1b5f38c4dbc8f79b1f0f8074134bd7d"
+ integrity sha512-SMubA9S7Cb5sGSFFUlqxyClTA9zWJ8qGQrppNUm05LtFuN1ELRFNndkix4zUJrC9F+YivWwa1dHMSyo0e0N9dA==
dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-create-class-features-plugin" "^7.21.0"
- "@babel/helper-plugin-utils" "^7.20.2"
- "@babel/plugin-syntax-typescript" "^7.20.0"
+ "@babel/helper-annotate-as-pure" "^7.22.5"
+ "@babel/helper-create-class-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/plugin-syntax-typescript" "^7.22.5"
-"@babel/plugin-transform-unicode-escapes@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.21.5.tgz#1e55ed6195259b0e9061d81f5ef45a9b009fb7f2"
- integrity sha512-LYm/gTOwZqsYohlvFUe/8Tujz75LqqVC2w+2qPHLR+WyWHGCZPN1KBpJCJn+4Bk4gOkQy/IXKIge6az5MqwlOg==
+"@babel/plugin-transform-unicode-escapes@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz#ce0c248522b1cb22c7c992d88301a5ead70e806c"
+ integrity sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-unicode-property-regex@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.3.tgz#597b6a614dc93eaae605ee293e674d79d32eb380"
- integrity sha512-5ScJ+OmdX+O6HRuMGW4kv7RL9vIKdtdAj9wuWUKy1wbHY3jaM/UlyIiC1G7J6UJiiyMukjjK0QwL3P0vBd0yYg==
+"@babel/plugin-transform-unicode-property-regex@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz#098898f74d5c1e86660dc112057b2d11227f1c81"
+ integrity sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-regexp-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-unicode-regex@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz#194317225d8c201bbae103364ffe9e2cea36cdca"
- integrity sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==
+"@babel/plugin-transform-unicode-regex@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz#ce7e7bb3ef208c4ff67e02a22816656256d7a183"
+ integrity sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
+ "@babel/helper-create-regexp-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
-"@babel/plugin-transform-unicode-sets-regex@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.3.tgz#7c14ee33fa69782b0101d0f7143d3fc73ce00700"
- integrity sha512-hNufLdkF8vqywRp+P55j4FHXqAX2LRUccoZHH7AFn1pq5ZOO2ISKW9w13bFZVjBoTqeve2HOgoJCcaziJVhGNw==
+"@babel/plugin-transform-unicode-sets-regex@^7.22.5":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz#77788060e511b708ffc7d42fdfbc5b37c3004e91"
+ integrity sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==
dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
+ "@babel/helper-create-regexp-features-plugin" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.22.4":
- version "7.22.4"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.4.tgz#c86a82630f0e8c61d9bb9327b7b896732028cbed"
- integrity sha512-c3lHOjbwBv0TkhYCr+XCR6wKcSZ1QbQTVdSkZUaVpLv8CVWotBMArWUi5UAJrcrQaEnleVkkvaV8F/pmc/STZQ==
- dependencies:
- "@babel/compat-data" "^7.22.3"
- "@babel/helper-compilation-targets" "^7.22.1"
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-validator-option" "^7.21.0"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.18.6"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.3"
- "@babel/plugin-proposal-private-property-in-object" "^7.21.0"
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.22.5.tgz#3da66078b181f3d62512c51cf7014392c511504e"
+ integrity sha512-fj06hw89dpiZzGZtxn+QybifF07nNiZjZ7sazs2aVDcysAZVGjW7+7iFYxg6GLNM47R/thYfLdrXc+2f11Vi9A==
+ dependencies:
+ "@babel/compat-data" "^7.22.5"
+ "@babel/helper-compilation-targets" "^7.22.5"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-validator-option" "^7.22.5"
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.22.5"
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.5"
+ "@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.20.0"
- "@babel/plugin-syntax-import-attributes" "^7.22.3"
+ "@babel/plugin-syntax-import-assertions" "^7.22.5"
+ "@babel/plugin-syntax-import-attributes" "^7.22.5"
"@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"
@@ 1047,56 945,56 @@
"@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.21.5"
- "@babel/plugin-transform-async-generator-functions" "^7.22.3"
- "@babel/plugin-transform-async-to-generator" "^7.20.7"
- "@babel/plugin-transform-block-scoped-functions" "^7.18.6"
- "@babel/plugin-transform-block-scoping" "^7.21.0"
- "@babel/plugin-transform-class-properties" "^7.22.3"
- "@babel/plugin-transform-class-static-block" "^7.22.3"
- "@babel/plugin-transform-classes" "^7.21.0"
- "@babel/plugin-transform-computed-properties" "^7.21.5"
- "@babel/plugin-transform-destructuring" "^7.21.3"
- "@babel/plugin-transform-dotall-regex" "^7.18.6"
- "@babel/plugin-transform-duplicate-keys" "^7.18.9"
- "@babel/plugin-transform-dynamic-import" "^7.22.1"
- "@babel/plugin-transform-exponentiation-operator" "^7.18.6"
- "@babel/plugin-transform-export-namespace-from" "^7.22.3"
- "@babel/plugin-transform-for-of" "^7.21.5"
- "@babel/plugin-transform-function-name" "^7.18.9"
- "@babel/plugin-transform-json-strings" "^7.22.3"
- "@babel/plugin-transform-literals" "^7.18.9"
- "@babel/plugin-transform-logical-assignment-operators" "^7.22.3"
- "@babel/plugin-transform-member-expression-literals" "^7.18.6"
- "@babel/plugin-transform-modules-amd" "^7.20.11"
- "@babel/plugin-transform-modules-commonjs" "^7.21.5"
- "@babel/plugin-transform-modules-systemjs" "^7.22.3"
- "@babel/plugin-transform-modules-umd" "^7.18.6"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.3"
- "@babel/plugin-transform-new-target" "^7.22.3"
- "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.3"
- "@babel/plugin-transform-numeric-separator" "^7.22.3"
- "@babel/plugin-transform-object-rest-spread" "^7.22.3"
- "@babel/plugin-transform-object-super" "^7.18.6"
- "@babel/plugin-transform-optional-catch-binding" "^7.22.3"
- "@babel/plugin-transform-optional-chaining" "^7.22.3"
- "@babel/plugin-transform-parameters" "^7.22.3"
- "@babel/plugin-transform-private-methods" "^7.22.3"
- "@babel/plugin-transform-private-property-in-object" "^7.22.3"
- "@babel/plugin-transform-property-literals" "^7.18.6"
- "@babel/plugin-transform-regenerator" "^7.21.5"
- "@babel/plugin-transform-reserved-words" "^7.18.6"
- "@babel/plugin-transform-shorthand-properties" "^7.18.6"
- "@babel/plugin-transform-spread" "^7.20.7"
- "@babel/plugin-transform-sticky-regex" "^7.18.6"
- "@babel/plugin-transform-template-literals" "^7.18.9"
- "@babel/plugin-transform-typeof-symbol" "^7.18.9"
- "@babel/plugin-transform-unicode-escapes" "^7.21.5"
- "@babel/plugin-transform-unicode-property-regex" "^7.22.3"
- "@babel/plugin-transform-unicode-regex" "^7.18.6"
- "@babel/plugin-transform-unicode-sets-regex" "^7.22.3"
+ "@babel/plugin-transform-arrow-functions" "^7.22.5"
+ "@babel/plugin-transform-async-generator-functions" "^7.22.5"
+ "@babel/plugin-transform-async-to-generator" "^7.22.5"
+ "@babel/plugin-transform-block-scoped-functions" "^7.22.5"
+ "@babel/plugin-transform-block-scoping" "^7.22.5"
+ "@babel/plugin-transform-class-properties" "^7.22.5"
+ "@babel/plugin-transform-class-static-block" "^7.22.5"
+ "@babel/plugin-transform-classes" "^7.22.5"
+ "@babel/plugin-transform-computed-properties" "^7.22.5"
+ "@babel/plugin-transform-destructuring" "^7.22.5"
+ "@babel/plugin-transform-dotall-regex" "^7.22.5"
+ "@babel/plugin-transform-duplicate-keys" "^7.22.5"
+ "@babel/plugin-transform-dynamic-import" "^7.22.5"
+ "@babel/plugin-transform-exponentiation-operator" "^7.22.5"
+ "@babel/plugin-transform-export-namespace-from" "^7.22.5"
+ "@babel/plugin-transform-for-of" "^7.22.5"
+ "@babel/plugin-transform-function-name" "^7.22.5"
+ "@babel/plugin-transform-json-strings" "^7.22.5"
+ "@babel/plugin-transform-literals" "^7.22.5"
+ "@babel/plugin-transform-logical-assignment-operators" "^7.22.5"
+ "@babel/plugin-transform-member-expression-literals" "^7.22.5"
+ "@babel/plugin-transform-modules-amd" "^7.22.5"
+ "@babel/plugin-transform-modules-commonjs" "^7.22.5"
+ "@babel/plugin-transform-modules-systemjs" "^7.22.5"
+ "@babel/plugin-transform-modules-umd" "^7.22.5"
+ "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5"
+ "@babel/plugin-transform-new-target" "^7.22.5"
+ "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.5"
+ "@babel/plugin-transform-numeric-separator" "^7.22.5"
+ "@babel/plugin-transform-object-rest-spread" "^7.22.5"
+ "@babel/plugin-transform-object-super" "^7.22.5"
+ "@babel/plugin-transform-optional-catch-binding" "^7.22.5"
+ "@babel/plugin-transform-optional-chaining" "^7.22.5"
+ "@babel/plugin-transform-parameters" "^7.22.5"
+ "@babel/plugin-transform-private-methods" "^7.22.5"
+ "@babel/plugin-transform-private-property-in-object" "^7.22.5"
+ "@babel/plugin-transform-property-literals" "^7.22.5"
+ "@babel/plugin-transform-regenerator" "^7.22.5"
+ "@babel/plugin-transform-reserved-words" "^7.22.5"
+ "@babel/plugin-transform-shorthand-properties" "^7.22.5"
+ "@babel/plugin-transform-spread" "^7.22.5"
+ "@babel/plugin-transform-sticky-regex" "^7.22.5"
+ "@babel/plugin-transform-template-literals" "^7.22.5"
+ "@babel/plugin-transform-typeof-symbol" "^7.22.5"
+ "@babel/plugin-transform-unicode-escapes" "^7.22.5"
+ "@babel/plugin-transform-unicode-property-regex" "^7.22.5"
+ "@babel/plugin-transform-unicode-regex" "^7.22.5"
+ "@babel/plugin-transform-unicode-sets-regex" "^7.22.5"
"@babel/preset-modules" "^0.1.5"
- "@babel/types" "^7.22.4"
+ "@babel/types" "^7.22.5"
babel-plugin-polyfill-corejs2 "^0.4.3"
babel-plugin-polyfill-corejs3 "^0.8.1"
babel-plugin-polyfill-regenerator "^0.5.0"
@@ 1115,27 1013,27 @@
esutils "^2.0.2"
"@babel/preset-react@^7.22.3":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.22.3.tgz#2ec7f91d0c924fa2ea0c7cfbbf690bc62b79cd84"
- integrity sha512-lxDz1mnZ9polqClBCVBjIVUypoB4qV3/tZUDb/IlYbW1kiiLaXaX+bInbRjl+lNQ/iUZraQ3+S8daEmoELMWug==
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.22.5.tgz#c4d6058fbf80bccad02dd8c313a9aaa67e3c3dd6"
+ integrity sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-validator-option" "^7.21.0"
- "@babel/plugin-transform-react-display-name" "^7.18.6"
- "@babel/plugin-transform-react-jsx" "^7.22.3"
- "@babel/plugin-transform-react-jsx-development" "^7.18.6"
- "@babel/plugin-transform-react-pure-annotations" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-validator-option" "^7.22.5"
+ "@babel/plugin-transform-react-display-name" "^7.22.5"
+ "@babel/plugin-transform-react-jsx" "^7.22.5"
+ "@babel/plugin-transform-react-jsx-development" "^7.22.5"
+ "@babel/plugin-transform-react-pure-annotations" "^7.22.5"
"@babel/preset-typescript@^7.21.5":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.21.5.tgz#68292c884b0e26070b4d66b202072d391358395f"
- integrity sha512-iqe3sETat5EOrORXiQ6rWfoOg2y68Cs75B9wNxdPW4kixJxh7aXQE1KPdWLDniC24T/6dSnguF33W9j/ZZQcmA==
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#16367d8b01d640e9a507577ed4ee54e0101e51c8"
+ integrity sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==
dependencies:
- "@babel/helper-plugin-utils" "^7.21.5"
- "@babel/helper-validator-option" "^7.21.0"
- "@babel/plugin-syntax-jsx" "^7.21.4"
- "@babel/plugin-transform-modules-commonjs" "^7.21.5"
- "@babel/plugin-transform-typescript" "^7.21.3"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ "@babel/helper-validator-option" "^7.22.5"
+ "@babel/plugin-syntax-jsx" "^7.22.5"
+ "@babel/plugin-transform-modules-commonjs" "^7.22.5"
+ "@babel/plugin-transform-typescript" "^7.22.5"
"@babel/regjsgen@^0.8.0":
version "0.8.0"
@@ 1149,79 1047,45 @@
dependencies:
regenerator-runtime "^0.12.0"
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.10", "@babel/runtime@^7.13.8", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.13", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
- version "7.22.3"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.3.tgz#0a7fce51d43adbf0f7b517a71f4c3aaca92ebcbb"
- integrity sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ==
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.13.8", "@babel/runtime@^7.18.3", "@babel/runtime@^7.2.0", "@babel/runtime@^7.20.13", "@babel/runtime@^7.20.7", "@babel/runtime@^7.22.3", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.5.tgz#8564dd588182ce0047d55d7a75e93921107b57ec"
+ integrity sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==
dependencies:
regenerator-runtime "^0.13.11"
-"@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.3.3":
- version "7.20.7"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.20.7.tgz#a15090c2839a83b02aa996c0b4994005841fd5a8"
- integrity sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==
- dependencies:
- "@babel/code-frame" "^7.18.6"
- "@babel/parser" "^7.20.7"
- "@babel/types" "^7.20.7"
-
-"@babel/template@^7.21.9":
- version "7.21.9"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.21.9.tgz#bf8dad2859130ae46088a99c1f265394877446fb"
- integrity sha512-MK0X5k8NKOuWRamiEfc3KEJiHMTkGZNUjzMipqCGDDc6ijRl/B7RGSKVGncu4Ro/HdyzzY6cmoXuKI2Gffk7vQ==
- dependencies:
- "@babel/code-frame" "^7.21.4"
- "@babel/parser" "^7.21.9"
- "@babel/types" "^7.21.5"
-
-"@babel/traverse@7":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.21.5.tgz#ad22361d352a5154b498299d523cf72998a4b133"
- integrity sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==
- dependencies:
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.21.5"
- "@babel/helper-environment-visitor" "^7.21.5"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-hoist-variables" "^7.18.6"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/parser" "^7.21.5"
- "@babel/types" "^7.21.5"
+"@babel/template@^7.22.5", "@babel/template@^7.3.3":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec"
+ integrity sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==
+ dependencies:
+ "@babel/code-frame" "^7.22.5"
+ "@babel/parser" "^7.22.5"
+ "@babel/types" "^7.22.5"
+
+"@babel/traverse@7", "@babel/traverse@^7.22.5", "@babel/traverse@^7.7.2":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.5.tgz#44bd276690db6f4940fdb84e1cb4abd2f729ccd1"
+ integrity sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==
+ dependencies:
+ "@babel/code-frame" "^7.22.5"
+ "@babel/generator" "^7.22.5"
+ "@babel/helper-environment-visitor" "^7.22.5"
+ "@babel/helper-function-name" "^7.22.5"
+ "@babel/helper-hoist-variables" "^7.22.5"
+ "@babel/helper-split-export-declaration" "^7.22.5"
+ "@babel/parser" "^7.22.5"
+ "@babel/types" "^7.22.5"
debug "^4.1.0"
globals "^11.1.0"
-"@babel/traverse@^7.18.10", "@babel/traverse@^7.20.7", "@babel/traverse@^7.21.5", "@babel/traverse@^7.22.1", "@babel/traverse@^7.7.2":
- version "7.22.4"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.4.tgz#c3cf96c5c290bd13b55e29d025274057727664c0"
- integrity sha512-Tn1pDsjIcI+JcLKq1AVlZEr4226gpuAQTsLMorsYg9tuS/kG7nuwwJ4AB8jfQuEgb/COBwR/DqJxmoiYFu5/rQ==
- dependencies:
- "@babel/code-frame" "^7.21.4"
- "@babel/generator" "^7.22.3"
- "@babel/helper-environment-visitor" "^7.22.1"
- "@babel/helper-function-name" "^7.21.0"
- "@babel/helper-hoist-variables" "^7.18.6"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/parser" "^7.22.4"
- "@babel/types" "^7.22.4"
- debug "^4.1.0"
- globals "^11.1.0"
-
-"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.12.11", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.21.0", "@babel/types@^7.21.4", "@babel/types@^7.21.5", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
- version "7.21.5"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.21.5.tgz#18dfbd47c39d3904d5db3d3dc2cc80bedb60e5b6"
- integrity sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==
+"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.12.11", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
+ version "7.22.5"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.5.tgz#cd93eeaab025880a3a47ec881f4b096a5b786fbe"
+ integrity sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==
dependencies:
- "@babel/helper-string-parser" "^7.21.5"
- "@babel/helper-validator-identifier" "^7.19.1"
- to-fast-properties "^2.0.0"
-
-"@babel/types@^7.22.0", "@babel/types@^7.22.3", "@babel/types@^7.22.4":
- version "7.22.4"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.4.tgz#56a2653ae7e7591365dabf20b76295410684c071"
- integrity sha512-Tx9x3UBHTTsMSW85WB2kphxYQVvrZ/t1FxD88IpSgIjiUJlCm9z+xWIDwyo1vffTwSqteqyznB8ZE9vYYk16zA==
- dependencies:
- "@babel/helper-string-parser" "^7.21.5"
- "@babel/helper-validator-identifier" "^7.19.1"
+ "@babel/helper-string-parser" "^7.22.5"
+ "@babel/helper-validator-identifier" "^7.22.5"
to-fast-properties "^2.0.0"
"@bcoe/v8-coverage@^0.2.3":
@@ 1229,20 1093,20 @@
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-"@csstools/css-parser-algorithms@^2.1.1":
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.1.1.tgz#7b62e6412a468a2d1096ed267edd1e4a7fd4a119"
- integrity sha512-viRnRh02AgO4mwIQb2xQNJju0i+Fh9roNgmbR5xEuG7J3TGgxjnE95HnBLgsFJOJOksvcfxOUCgODcft6Y07cA==
+"@csstools/css-parser-algorithms@^2.2.0":
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.2.0.tgz#1268b07196d1118296443aeff41bca27d94b0981"
+ integrity sha512-9BoQ/jSrPq4vv3b9jjLW+PNNv56KlDH5JMx5yASSNrCtvq70FCNZUjXRvbCeR9hYj9ZyhURtqpU/RFIgg6kiOw==
"@csstools/css-tokenizer@^2.1.1":
version "2.1.1"
resolved "https://registry.yarnpkg.com/@csstools/css-tokenizer/-/css-tokenizer-2.1.1.tgz#07ae11a0a06365d7ec686549db7b729bc036528e"
integrity sha512-GbrTj2Z8MCTUv+52GE0RbFGM527xuXZ0Xa5g0Z+YN573uveS4G0qi6WNOMyz3yrFM/jaILTTwJ0+umx81EzqfA==
-"@csstools/media-query-list-parser@^2.0.4":
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-2.0.4.tgz#466bd254041530dfd1e88bcb1921e8ca4af75b6a"
- integrity sha512-GyYot6jHgcSDZZ+tLSnrzkR7aJhF2ZW6d+CXH66mjy5WpAQhZD4HDke2OQ36SivGRWlZJpAz7TzbW6OKlEpxAA==
+"@csstools/media-query-list-parser@^2.1.0":
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.0.tgz#6e1a5e12e0d103cd13b94bddb88b878bd6866103"
+ integrity sha512-MXkR+TeaS2q9IkpyO6jVCdtA/bfpABJxIrfkLswThFN8EZZgI2RfAHhm6sDNDuYV25d5+b8Lj1fpTccIcSLPsQ==
"@csstools/selector-specificity@^2.2.0":
version "2.2.0"
@@ 1254,88 1118,93 @@
resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
-"@emotion/babel-plugin@^11.7.1":
- version "11.9.2"
- resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.9.2.tgz#723b6d394c89fb2ef782229d92ba95a740576e95"
- integrity sha512-Pr/7HGH6H6yKgnVFNEj2MVlreu3ADqftqjqwUvDy/OJzKFgxKeTQ+eeUf20FOTuHVkDON2iNa25rAXVYtWJCjw==
- dependencies:
- "@babel/helper-module-imports" "^7.12.13"
- "@babel/plugin-syntax-jsx" "^7.12.13"
- "@babel/runtime" "^7.13.10"
- "@emotion/hash" "^0.8.0"
- "@emotion/memoize" "^0.7.5"
- "@emotion/serialize" "^1.0.2"
- babel-plugin-macros "^2.6.1"
+"@emotion/babel-plugin@^11.11.0":
+ version "11.11.0"
+ resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c"
+ integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==
+ dependencies:
+ "@babel/helper-module-imports" "^7.16.7"
+ "@babel/runtime" "^7.18.3"
+ "@emotion/hash" "^0.9.1"
+ "@emotion/memoize" "^0.8.1"
+ "@emotion/serialize" "^1.1.2"
+ babel-plugin-macros "^3.1.0"
convert-source-map "^1.5.0"
escape-string-regexp "^4.0.0"
find-root "^1.1.0"
source-map "^0.5.7"
- stylis "4.0.13"
+ stylis "4.2.0"
-"@emotion/cache@^11.4.0", "@emotion/cache@^11.7.1":
- version "11.7.1"
- resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.7.1.tgz#08d080e396a42e0037848214e8aa7bf879065539"
- integrity sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A==
+"@emotion/cache@^11.11.0", "@emotion/cache@^11.4.0":
+ version "11.11.0"
+ resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff"
+ integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==
dependencies:
- "@emotion/memoize" "^0.7.4"
- "@emotion/sheet" "^1.1.0"
- "@emotion/utils" "^1.0.0"
- "@emotion/weak-memoize" "^0.2.5"
- stylis "4.0.13"
+ "@emotion/memoize" "^0.8.1"
+ "@emotion/sheet" "^1.2.2"
+ "@emotion/utils" "^1.2.1"
+ "@emotion/weak-memoize" "^0.3.1"
+ stylis "4.2.0"
-"@emotion/hash@^0.8.0":
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413"
- integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==
+"@emotion/hash@^0.9.1":
+ version "0.9.1"
+ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43"
+ integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==
-"@emotion/memoize@^0.7.4", "@emotion/memoize@^0.7.5":
- version "0.7.5"
- resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50"
- integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ==
+"@emotion/memoize@^0.8.1":
+ version "0.8.1"
+ resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17"
+ integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
"@emotion/react@^11.8.1":
- version "11.9.0"
- resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.9.0.tgz#b6d42b1db3bd7511e7a7c4151dc8bc82e14593b8"
- integrity sha512-lBVSF5d0ceKtfKCDQJveNAtkC7ayxpVlgOohLgXqRwqWr9bOf4TZAFFyIcNngnV6xK6X4x2ZeXq7vliHkoVkxQ==
- dependencies:
- "@babel/runtime" "^7.13.10"
- "@emotion/babel-plugin" "^11.7.1"
- "@emotion/cache" "^11.7.1"
- "@emotion/serialize" "^1.0.3"
- "@emotion/utils" "^1.1.0"
- "@emotion/weak-memoize" "^0.2.5"
+ version "11.11.1"
+ resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157"
+ integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
+ dependencies:
+ "@babel/runtime" "^7.18.3"
+ "@emotion/babel-plugin" "^11.11.0"
+ "@emotion/cache" "^11.11.0"
+ "@emotion/serialize" "^1.1.2"
+ "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1"
+ "@emotion/utils" "^1.2.1"
+ "@emotion/weak-memoize" "^0.3.1"
hoist-non-react-statics "^3.3.1"
-"@emotion/serialize@^1.0.2", "@emotion/serialize@^1.0.3":
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.0.3.tgz#99e2060c26c6292469fb30db41f4690e1c8fea63"
- integrity sha512-2mSSvgLfyV3q+iVh3YWgNlUc2a9ZlDU7DjuP5MjK3AXRR0dYigCrP99aeFtaB2L/hjfEZdSThn5dsZ0ufqbvsA==
+"@emotion/serialize@^1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51"
+ integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA==
dependencies:
- "@emotion/hash" "^0.8.0"
- "@emotion/memoize" "^0.7.4"
- "@emotion/unitless" "^0.7.5"
- "@emotion/utils" "^1.0.0"
+ "@emotion/hash" "^0.9.1"
+ "@emotion/memoize" "^0.8.1"
+ "@emotion/unitless" "^0.8.1"
+ "@emotion/utils" "^1.2.1"
csstype "^3.0.2"
-"@emotion/sheet@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.1.0.tgz#56d99c41f0a1cda2726a05aa6a20afd4c63e58d2"
- integrity sha512-u0AX4aSo25sMAygCuQTzS+HsImZFuS8llY8O7b9MDRzbJM0kVJlAz6KNDqcG7pOuQZJmj/8X/rAW+66kMnMW+g==
+"@emotion/sheet@^1.2.2":
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec"
+ integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
-"@emotion/unitless@^0.7.5":
- version "0.7.5"
- resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed"
- integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==
+"@emotion/unitless@^0.8.1":
+ version "0.8.1"
+ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3"
+ integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==
-"@emotion/utils@^1.0.0", "@emotion/utils@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.1.0.tgz#86b0b297f3f1a0f2bdb08eeac9a2f49afd40d0cf"
- integrity sha512-iRLa/Y4Rs5H/f2nimczYmS5kFJEbpiVvgN3XVfZ022IYhuNA1IRSHEizcof88LtCTXtl9S2Cxt32KgaXEu72JQ==
+"@emotion/use-insertion-effect-with-fallbacks@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963"
+ integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==
-"@emotion/weak-memoize@^0.2.5":
- version "0.2.5"
- resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46"
- integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==
+"@emotion/utils@^1.2.1":
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4"
+ integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==
+
+"@emotion/weak-memoize@^0.3.1":
+ version "0.3.1"
+ resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6"
+ integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==
"@es-joy/jsdoccomment@~0.39.4":
version "0.39.4"
@@ 1347,16 1216,16 @@
jsdoc-type-pratt-parser "~4.0.0"
"@eslint-community/eslint-utils@^4.2.0":
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz#a831e6e468b4b2b5ae42bf658bea015bf10bc518"
- integrity sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59"
+ integrity sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
dependencies:
eslint-visitor-keys "^3.3.0"
"@eslint-community/regexpp@^4.4.0":
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.4.0.tgz#3e61c564fcd6b921cb789838631c5ee44df09403"
- integrity sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==
+ version "4.5.1"
+ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884"
+ integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
"@eslint/eslintrc@^2.0.3":
version "2.0.3"
@@ 1373,113 1242,113 @@
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
-"@eslint/js@8.41.0":
- version "8.41.0"
- resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.41.0.tgz#080321c3b68253522f7646b55b577dd99d2950b3"
- integrity sha512-LxcyMGxwmTh2lY9FwHPGWOHmYFCZvbrFCBZL4FzSSsxsRPuhrYUg/49/0KDfW8tnIEaEHtfmn6+NPN+1DqaNmA==
+"@eslint/js@8.42.0":
+ version "8.42.0"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.42.0.tgz#484a1d638de2911e6f5a30c12f49c7e4a3270fb6"
+ integrity sha512-6SWlXpWU5AvId8Ac7zjzmIOqMOba/JWY8XZ4A7q7Gn1Vlfg/SFFIlrtHXt9nPn4op9ZPAkl91Jao+QQv3r/ukw==
-"@floating-ui/core@^1.0.1":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.0.1.tgz#00e64d74e911602c8533957af0cce5af6b2e93c8"
- integrity sha512-bO37brCPfteXQfFY0DyNDGB3+IMe4j150KFQcgJ5aBP295p9nBGeHEs/p0czrRbtlHq4Px/yoPXO/+dOCcF4uA==
+"@floating-ui/core@^1.3.0":
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.3.0.tgz#113bc85fa102cf890ae801668f43ee265c547a09"
+ integrity sha512-vX1WVAdPjZg9DkDkC+zEx/tKtnST6/qcNpwcjeBgco3XRNHz5PUA+ivi/yr6G3o0kMR60uKBJcfOdfzOFI7PMQ==
"@floating-ui/dom@^1.0.1":
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.0.2.tgz#c5184c52c6f50abd11052d71204f4be2d9245237"
- integrity sha512-5X9WSvZ8/fjy3gDu8yx9HAA4KG1lazUN2P4/VnaXLxTO9Dz53HI1oYoh1OlhqFNlHgGDiwFX5WhFCc2ljbW3yA==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.3.0.tgz#69456f2164fc3d33eb40837686eaf71537235ac9"
+ integrity sha512-qIAwejE3r6NeA107u4ELDKkH8+VtgRKdXqtSPaKflL2S2V+doyN+Wt9s5oHKXPDo4E8TaVXaHT3+6BbagH31xw==
dependencies:
- "@floating-ui/core" "^1.0.1"
+ "@floating-ui/core" "^1.3.0"
"@formatjs/cli@^6.1.1":
- version "6.1.1"
- resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.1.1.tgz#089d6d25fe96490f8d1401a53705b3cdfefd7afb"
- integrity sha512-prUblUQRJwFQqfmBtRWXZFKX+QmhXQkBKRl54hWTCwenskorK6+LTlm9TFbUDhfib2Xt3iDsjk7o9LpeU/AQCw==
+ version "6.1.3"
+ resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.1.3.tgz#b4b95259398e222ec6c06cf5f23f76d987f53e96"
+ integrity sha512-PdTXZTY8LqxwmvFqdifn89gjXnPUpGtGyFs0BnoeLuOuxZFSnBfIs5WQCVMaJnr1+0vNNlXyT0VAIAwjRpf6BA==
-"@formatjs/ecma402-abstract@1.15.0":
- version "1.15.0"
- resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.15.0.tgz#0a285a5dc69889e15d53803bd5036272e23e5a18"
- integrity sha512-7bAYAv0w4AIao9DNg0avfOLTCPE9woAgs6SpXuMq11IN3A+l+cq8ghczwqSZBM11myvPSJA7vLn72q0rJ0QK6Q==
+"@formatjs/ecma402-abstract@1.17.0":
+ version "1.17.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.17.0.tgz#2ce191a3bde4c65c6684e03fa247062a4a294b9e"
+ integrity sha512-6ueQTeJZtwKjmh23bdkq/DMqH4l4bmfvtQH98blOSbiXv/OUiyijSW6jU22IT8BNM1ujCaEvJfTtyCYVH38EMQ==
dependencies:
- "@formatjs/intl-localematcher" "0.2.32"
+ "@formatjs/intl-localematcher" "0.4.0"
tslib "^2.4.0"
-"@formatjs/fast-memoize@2.0.1":
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.0.1.tgz#f15aaa73caad5562899c69bdcad8db82adcd3b0b"
- integrity sha512-M2GgV+qJn5WJQAYewz7q2Cdl6fobQa69S1AzSM2y0P68ZDbK5cWrJIcPCO395Of1ksftGZoOt4LYCO/j9BKBSA==
+"@formatjs/fast-memoize@2.2.0":
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-2.2.0.tgz#33bd616d2e486c3e8ef4e68c99648c196887802b"
+ integrity sha512-hnk/nY8FyrL5YxwP9e4r9dqeM6cAbo8PeU9UjyXojZMNvVad2Z06FAVHyR3Ecw6fza+0GH7vdJgiKIVXTMbSBA==
dependencies:
tslib "^2.4.0"
-"@formatjs/icu-messageformat-parser@2.4.0":
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.4.0.tgz#e165f3594c68416ce15f63793768251de2a85f88"
- integrity sha512-6Dh5Z/gp4F/HovXXu/vmd0If5NbYLB5dZrmhWVNb+BOGOEU3wt7Z/83KY1dtd7IDhAnYHasbmKE1RbTE0J+3hw==
+"@formatjs/icu-messageformat-parser@2.6.0":
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.6.0.tgz#b0d58ce8c8f472969c96b5cd0b3ad5522d3a02b7"
+ integrity sha512-yT6at0qc0DANw9qM/TU8RZaCtfDXtj4pZM/IC2WnVU80yAcliS3KVDiuUt4jSQAeFL9JS5bc2hARnFmjPdA6qw==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/icu-skeleton-parser" "1.4.0"
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/icu-skeleton-parser" "1.6.0"
tslib "^2.4.0"
-"@formatjs/icu-skeleton-parser@1.4.0":
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.4.0.tgz#96342eca7c4eef7a309875569e5da973db3465e6"
- integrity sha512-Qq347VM616rVLkvN6QsKJELazRyNlbCiN47LdH0Mc5U7E2xV0vatiVhGqd3KFgbc055BvtnUXR7XX60dCGFuWg==
+"@formatjs/icu-skeleton-parser@1.6.0":
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.6.0.tgz#0728be8b6b3656f1a4b8e6e5b0e02dffffc23c6c"
+ integrity sha512-eMmxNpoX/J1IPUjPGSZwo0Wh+7CEvdEMddP2Jxg1gQJXfGfht/FdW2D5XDFj3VMbOTUQlDIdZJY7uC6O6gjPoA==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
+ "@formatjs/ecma402-abstract" "1.17.0"
tslib "^2.4.0"
-"@formatjs/intl-displaynames@6.3.2":
- version "6.3.2"
- resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-6.3.2.tgz#be169393a132eed9ca9c10ccb9d22ab150e24c90"
- integrity sha512-kBOh0O7QYKLUqaZujLSEF2+au017plPp63R6Hrokl+oDtLyTt9y9pEuCTbOKh/P8CC9THnDLKRKgeVWZw5Ek8A==
+"@formatjs/intl-displaynames@6.5.0":
+ version "6.5.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-6.5.0.tgz#32737088e7d943fb3e22140e64bb634e0ba05fcf"
+ integrity sha512-sg/nR8ILEdUl+2sWu6jc1nQ5s04yucGlH1RVfatW8TSJ5uG3Yy3vgigi8NNC/BuhcncUNPWqSpTCSI1hA+rhiw==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/intl-localematcher" "0.2.32"
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/intl-localematcher" "0.4.0"
tslib "^2.4.0"
-"@formatjs/intl-listformat@7.2.2":
- version "7.2.2"
- resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-7.2.2.tgz#d787932b5d6f1f936c73c5fec531692ab7069c7a"
- integrity sha512-YIruRGwUrmgVOXjWi6VbwPcRNBkEfgK2DFjyyqopCmpfJ+39vnl46oLpVchErnuXs6kkARy5GcGaGV7xRsH4lw==
+"@formatjs/intl-listformat@7.4.0":
+ version "7.4.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-7.4.0.tgz#fa8ac535d82fc716f052f2fd60eeaa7331362357"
+ integrity sha512-ifupb+balZUAF/Oh3QyGRqPRWGSKwWoMPR0cYZEG7r61SimD+m38oFQqVx/3Fp7LfQFF11m7IS+MlxOo2sKINA==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/intl-localematcher" "0.2.32"
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/intl-localematcher" "0.4.0"
tslib "^2.4.0"
-"@formatjs/intl-localematcher@0.2.32":
- version "0.2.32"
- resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.2.32.tgz#00d4d307cd7d514b298e15a11a369b86c8933ec1"
- integrity sha512-k/MEBstff4sttohyEpXxCmC3MqbUn9VvHGlZ8fauLzkbwXmVrEeyzS+4uhrvAk9DWU9/7otYWxyDox4nT/KVLQ==
+"@formatjs/intl-localematcher@0.4.0":
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.4.0.tgz#63bbc37a7c3545a1bf1686072e51d9a3aed98d6b"
+ integrity sha512-bRTd+rKomvfdS4QDlVJ6TA/Jx1F2h/TBVO5LjvhQ7QPPHp19oPNMIum7W2CMEReq/zPxpmCeB31F9+5gl/qtvw==
dependencies:
tslib "^2.4.0"
"@formatjs/intl-pluralrules@^5.2.2":
- version "5.2.2"
- resolved "https://registry.yarnpkg.com/@formatjs/intl-pluralrules/-/intl-pluralrules-5.2.2.tgz#6322d20a6d0172459e4faf4b0f06603c931673aa"
- integrity sha512-mEbnbRzsSCIYqaBmrmUlOsPu5MG6KfMcnzekPzUrUucX2dNiI1KWBGHK6IoXl5c8zx60L1NXJ6cSQ7akoc15SQ==
+ version "5.2.4"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl-pluralrules/-/intl-pluralrules-5.2.4.tgz#b417aa503186c2cbb4715f47114ed65211b4ada9"
+ integrity sha512-6meo376d8I4zikRFSUxATLnqzGwezmc57SmToP4z1/NQwTHXGe0yIG/ABPbO3QMx7IUkofH/ROP3A4DhtPTpnA==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/intl-localematcher" "0.2.32"
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/intl-localematcher" "0.4.0"
tslib "^2.4.0"
-"@formatjs/intl@2.7.2":
- version "2.7.2"
- resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-2.7.2.tgz#83dc77080a984d4883195bed39eedd947ebfd3d7"
- integrity sha512-ziiQfnXwY0/rXhtohSAmYMqDjRsihoMKdl8H2aA+FvxG9638E0XrvfBFCb+1HhimNiuqRz5fTY7F/bZtsJxsjA==
- dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/fast-memoize" "2.0.1"
- "@formatjs/icu-messageformat-parser" "2.4.0"
- "@formatjs/intl-displaynames" "6.3.2"
- "@formatjs/intl-listformat" "7.2.2"
- intl-messageformat "10.3.5"
+"@formatjs/intl@2.9.0":
+ version "2.9.0"
+ resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-2.9.0.tgz#e1335572af3ca8a53e136a78e866f1851a9718c2"
+ integrity sha512-Ym0trUoC/VO6wQu4YHa0H1VR2tEixFRmwZgADkDLm7nD+vv1Ob+/88mUAoT0pwvirFqYKgUKEwp1tFepqyqvVA==
+ dependencies:
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/fast-memoize" "2.2.0"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
+ "@formatjs/intl-displaynames" "6.5.0"
+ "@formatjs/intl-listformat" "7.4.0"
+ intl-messageformat "10.5.0"
tslib "^2.4.0"
-"@formatjs/ts-transformer@3.13.1":
- version "3.13.1"
- resolved "https://registry.yarnpkg.com/@formatjs/ts-transformer/-/ts-transformer-3.13.1.tgz#37aa4992aa50740f808f1f888f112b8addb617c7"
- integrity sha512-U5BuLqFx5wre5Q0NrZhBh7itMJZISYuZGoj8HdN/UO1EKaTL2HQjE1G040GjTpY0k+AAyaHK3b8WPqgHLvIaIQ==
+"@formatjs/ts-transformer@3.13.3":
+ version "3.13.3"
+ resolved "https://registry.yarnpkg.com/@formatjs/ts-transformer/-/ts-transformer-3.13.3.tgz#249f5b5df70c51e651280732536d5504078297ff"
+ integrity sha512-W6+huH4dLYx8eZfZue6fcreNzLZHoPboreqJSkickYCKIOicI35zC0Txb4xCT6kau/DXAKTpNEln3V2NgX6Igg==
dependencies:
- "@formatjs/icu-messageformat-parser" "2.4.0"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
"@types/json-stable-stringify" "^1.0.32"
"@types/node" "14 || 16 || 17"
chalk "^4.0.0"
@@ 1492,15 1361,20 @@
resolved "https://registry.yarnpkg.com/@gamestdio/websocket/-/websocket-0.3.2.tgz#321ba0976ee30fd14e51dbf8faa85ce7b325f76a"
integrity sha512-J3n5SKim+ZoLbe44hRGI/VYAwSMCeIJuBy+FfP6EZaujEpNchPRFcIsVQLWAwpU1bP2Ji63rC+rEUOd1vjUB6Q==
+"@gar/promisify@^1.0.1":
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6"
+ integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==
+
"@github/webauthn-json@^2.1.1":
version "2.1.1"
resolved "https://registry.yarnpkg.com/@github/webauthn-json/-/webauthn-json-2.1.1.tgz#648e63fc28050917d2882cc2b27817a88cb420fc"
integrity sha512-XrftRn4z75SnaJOmZQbt7Mk+IIjqVHw+glDGOxuHwXkZBZh/MBoRS7MHjSZMDaLhT4RjN2VqiEU7EOYleuJWSQ==
-"@humanwhocodes/config-array@^0.11.8":
- version "0.11.8"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9"
- integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==
+"@humanwhocodes/config-array@^0.11.10":
+ version "0.11.10"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2"
+ integrity sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
dependencies:
"@humanwhocodes/object-schema" "^1.2.1"
debug "^4.1.1"
@@ 1516,6 1390,18 @@
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
+"@isaacs/cliui@^8.0.2":
+ version "8.0.2"
+ resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
+ integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
+ dependencies:
+ string-width "^5.1.2"
+ string-width-cjs "npm:string-width@^4.2.0"
+ strip-ansi "^7.0.1"
+ strip-ansi-cjs "npm:strip-ansi@^6.0.1"
+ wrap-ansi "^8.1.0"
+ wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
+
"@istanbuljs/load-nyc-config@^1.0.0":
version "1.1.0"
resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
@@ 1528,9 1414,9 @@
resolve-from "^5.0.0"
"@istanbuljs/schema@^0.1.2":
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd"
- integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
+ integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
"@jest/console@^29.5.0":
version "29.5.0"
@@ 1712,17 1598,6 @@
slash "^3.0.0"
write-file-atomic "^4.0.2"
-"@jest/types@^27.0.2":
- version "27.2.5"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132"
- integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ==
- dependencies:
- "@types/istanbul-lib-coverage" "^2.0.0"
- "@types/istanbul-reports" "^3.0.0"
- "@types/node" "*"
- "@types/yargs" "^16.0.0"
- chalk "^4.0.0"
-
"@jest/types@^29.5.0":
version "29.5.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.5.0.tgz#f59ef9b031ced83047c67032700d8c807d6e1593"
@@ 1735,15 1610,7 @@
"@types/yargs" "^17.0.8"
chalk "^4.0.0"
-"@jridgewell/gen-mapping@^0.1.0":
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"
- integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==
- dependencies:
- "@jridgewell/set-array" "^1.0.0"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
-"@jridgewell/gen-mapping@^0.3.0":
+"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2":
version "0.3.3"
resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098"
integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
@@ 1752,31 1619,17 @@
"@jridgewell/sourcemap-codec" "^1.4.10"
"@jridgewell/trace-mapping" "^0.3.9"
-"@jridgewell/gen-mapping@^0.3.2":
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9"
- integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
"@jridgewell/resolve-uri@3.1.0":
version "3.1.0"
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
-"@jridgewell/resolve-uri@^3.0.3":
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.4.tgz#b876e3feefb9c8d3aa84014da28b5e52a0640d72"
- integrity sha512-cz8HFjOFfUBtvN+NXYSFMHYRdxZMaEl0XypVrhzxBgadKIXhIkRd8aMeHhmF56Sl7SuS8OnUpQ73/k9LE4VnLg==
-
-"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1":
+"@jridgewell/set-array@^1.0.1":
version "1.1.2"
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
-"@jridgewell/source-map@^0.3.2":
+"@jridgewell/source-map@^0.3.3":
version "0.3.3"
resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.3.tgz#8108265659d4c33e72ffe14e33d6cc5eb59f2fda"
integrity sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==
@@ 1789,28 1642,15 @@
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
-"@jridgewell/sourcemap-codec@^1.4.10":
- version "1.4.10"
- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.10.tgz#baf57b4e2a690d4f38560171f91783656b7f8186"
- integrity sha512-Ht8wIW5v165atIX1p+JvKR5ONzUyF4Ac8DZIQ5kZs9zrb6M8SJNXpx1zn04rn65VjBMygRoMXcyYwNK0fT7bEg==
-
-"@jridgewell/sourcemap-codec@^1.4.13":
+"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.13":
version "1.4.15"
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
-"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.9":
- version "0.3.15"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz#aba35c48a38d3fd84b37e66c9c0423f9744f9774"
- integrity sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==
- dependencies:
- "@jridgewell/resolve-uri" "^3.0.3"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
-"@jridgewell/trace-mapping@^0.3.17":
- version "0.3.17"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz#793041277af9073b0951a7fe0f0d8c4c98c36985"
- integrity sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==
+"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.15", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9":
+ version "0.3.18"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6"
+ integrity sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
dependencies:
"@jridgewell/resolve-uri" "3.1.0"
"@jridgewell/sourcemap-codec" "1.4.14"
@@ 1836,12 1676,21 @@
"@nodelib/fs.scandir" "2.1.5"
fastq "^1.6.0"
+"@npmcli/fs@^1.0.0":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257"
+ integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==
+ dependencies:
+ "@gar/promisify" "^1.0.1"
+ semver "^7.3.5"
+
"@npmcli/move-file@^1.0.1":
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.0.1.tgz#de103070dac0f48ce49cf6693c23af59c0f70464"
- integrity sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674"
+ integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==
dependencies:
mkdirp "^1.0.4"
+ rimraf "^3.0.2"
"@pkgjs/parseargs@^0.11.0":
version "0.11.0"
@@ 1849,9 1698,9 @@
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
"@pkgr/utils@^2.3.1":
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/@pkgr/utils/-/utils-2.4.0.tgz#b6373d2504aedaf2fc7cdf2d13ab1f48fa5f12d5"
- integrity sha512-2OCURAmRtdlL8iUDTypMrrxfwe8frXTeXaxGsVOaYtc/wrUyk8Z/0OBetM7cdlsy7ZFWlMX72VogKeh+A4Xcjw==
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/@pkgr/utils/-/utils-2.4.1.tgz#adf291d0357834c410ce80af16e711b56c7b1cd3"
+ integrity sha512-JOqwkgFEyi+OROIyq7l4Jy28h/WwhDnG/cPkXG2Z1iFbubB6jsHW1NDvmyOzTBxHr3yg68YGirmh1JUgMqa+9w==
dependencies:
cross-spawn "^7.0.3"
fast-glob "^3.2.12"
@@ 1866,9 1715,9 @@
integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==
"@popperjs/core@^2.11.6":
- version "2.11.6"
- resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.6.tgz#cee20bd55e68a1720bdab363ecf0c821ded4cd45"
- integrity sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==
+ version "2.11.8"
+ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f"
+ integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==
"@rails/ujs@^6.1.7":
version "6.1.7"
@@ 1920,9 1769,9 @@
reselect "^4.1.8"
"@restart/hooks@^0.4.7":
- version "0.4.7"
- resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.4.7.tgz#d79ca6472c01ce04389fc73d4a79af1b5e33cd39"
- integrity sha512-ZbjlEHcG+FQtpDPHd7i4FzNNvJf2enAwZfJbpM8CW7BhmOAbsHpZe3tsHwfQUrBuyrxWqPYp2x5UMnilWcY22A==
+ version "0.4.9"
+ resolved "https://registry.yarnpkg.com/@restart/hooks/-/hooks-0.4.9.tgz#ad858fb39d99e252cccce19416adc18fc3f18fcb"
+ integrity sha512-3BekqcwB6Umeya+16XPooARn4qEPW6vNvwYnlofIYe6h9qG1/VeD7UvShCWx11eFz5ELYmwIEshz+MkPX3wjcQ==
dependencies:
dequal "^2.0.2"
@@ 1964,23 1813,23 @@
picomatch "^2.2.2"
"@sinclair/typebox@^0.25.16":
- version "0.25.21"
- resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.21.tgz#763b05a4b472c93a8db29b2c3e359d55b29ce272"
- integrity sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g==
+ version "0.25.24"
+ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718"
+ integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==
-"@sinonjs/commons@^2.0.0":
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-2.0.0.tgz#fd4ca5b063554307e8327b4564bd56d3b73924a3"
- integrity sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==
+"@sinonjs/commons@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72"
+ integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==
dependencies:
type-detect "4.0.8"
"@sinonjs/fake-timers@^10.0.2":
- version "10.0.2"
- resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz#d10549ed1f423d80639c528b6c7f5a1017747d0c"
- integrity sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==
+ version "10.2.0"
+ resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.2.0.tgz#b3e322a34c5f26e3184e7f6115695f299c1b1194"
+ integrity sha512-OPwQlEdg40HAj5KNF8WW6q2KG4Z+cBCZb3m4ninfTZKaBmbIJodviQsDBoYMPHkOyJJMHnOJo5j2+LKDOhOACg==
dependencies:
- "@sinonjs/commons" "^2.0.0"
+ "@sinonjs/commons" "^3.0.0"
"@surma/rollup-plugin-off-main-thread@^2.2.3":
version "2.2.3"
@@ 1993,14 1842,14 @@
string.prototype.matchall "^4.0.6"
"@testing-library/dom@^9.0.0":
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-9.2.0.tgz#0e1f45e956f2a16f471559c06edd8827c4832f04"
- integrity sha512-xTEnpUKiV/bMyEsE5bT4oYA0x0Z/colMtxzUY8bKyPXBNLn/e0V4ZjBZkEhms0xE4pv9QsPfSRu9AWS4y5wGvA==
+ version "9.3.1"
+ resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-9.3.1.tgz#8094f560e9389fb973fe957af41bf766937a9ee9"
+ integrity sha512-0DGPd9AR3+iDTjGoMpxIkAsUihHZ3Ai6CneU6bRRrffXMgzCdlNk43jTrD2/5LT6CBb3MWTP8v510JzYtahD2w==
dependencies:
"@babel/code-frame" "^7.10.4"
"@babel/runtime" "^7.12.5"
"@types/aria-query" "^5.0.1"
- aria-query "^5.0.0"
+ aria-query "5.1.3"
chalk "^4.1.0"
dom-accessibility-api "^0.5.9"
lz-string "^1.5.0"
@@ 2045,29 1894,7 @@
resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.1.tgz#3286741fb8f1e1580ac28784add4c7a1d49bdfbc"
integrity sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q==
-"@types/babel__core@*", "@types/babel__core@^7.1.7":
- version "7.20.0"
- resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891"
- integrity sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==
- dependencies:
- "@babel/parser" "^7.20.7"
- "@babel/types" "^7.20.7"
- "@types/babel__generator" "*"
- "@types/babel__template" "*"
- "@types/babel__traverse" "*"
-
-"@types/babel__core@^7.1.12", "@types/babel__core@^7.1.14":
- version "7.1.18"
- resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8"
- integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==
- dependencies:
- "@babel/parser" "^7.1.0"
- "@babel/types" "^7.0.0"
- "@types/babel__generator" "*"
- "@types/babel__template" "*"
- "@types/babel__traverse" "*"
-
-"@types/babel__core@^7.20.1":
+"@types/babel__core@*", "@types/babel__core@^7.1.12", "@types/babel__core@^7.1.14", "@types/babel__core@^7.1.7", "@types/babel__core@^7.20.1":
version "7.20.1"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.1.tgz#916ecea274b0c776fec721e333e55762d3a9614b"
integrity sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==
@@ 2079,9 1906,9 @@
"@types/babel__traverse" "*"
"@types/babel__generator@*":
- version "7.6.1"
- resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04"
- integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==
+ version "7.6.4"
+ resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7"
+ integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==
dependencies:
"@babel/types" "^7.0.0"
@@ 2093,26 1920,19 @@
"@types/babel__core" "*"
"@types/babel__template@*":
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307"
- integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==
+ version "7.4.1"
+ resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
+ integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
dependencies:
"@babel/parser" "^7.1.0"
"@babel/types" "^7.0.0"
-"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
- version "7.0.13"
- resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.13.tgz#1874914be974a492e1b4cb00585cabb274e8ba18"
- integrity sha512-i+zS7t6/s9cdQvbqKDARrcbrPvtJGlbYsMkazo03nTAK3RX9FNrLllXys22uiTGJapPOTZTQ35nHh4ISph4SLQ==
- dependencies:
- "@babel/types" "^7.3.0"
-
-"@types/babel__traverse@^7.1.7":
- version "7.18.5"
- resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.5.tgz#c107216842905afafd3b6e774f6f935da6f5db80"
- integrity sha512-enCvTL8m/EHS/zIvJno9nE+ndYPh1/oNFzRYRmtUqJICG2VnCSBzMLW5VN2KCQU91f23tsNKR8v7VJJQMatl7Q==
+"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6", "@types/babel__traverse@^7.1.7":
+ version "7.20.1"
+ resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.1.tgz#dd6f1d2411ae677dcb2db008c962598be31d6acf"
+ integrity sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==
dependencies:
- "@babel/types" "^7.3.0"
+ "@babel/types" "^7.20.7"
"@types/body-parser@*":
version "1.19.2"
@@ 2122,11 1942,6 @@
"@types/connect" "*"
"@types/node" "*"
-"@types/color-name@^1.1.1":
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
- integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
-
"@types/connect@*":
version "3.4.35"
resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1"
@@ 2147,9 1962,9 @@
integrity sha512-gaBLT8pdcexFztLSPRtriHeXY/Kn4907uOCZ4Q3lncFBkheAWOuNt53ypsF8szgxbEJ513UeBzcf4utN0EzEwA==
"@types/eslint@7 || 8":
- version "8.37.0"
- resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.37.0.tgz#29cebc6c2a3ac7fea7113207bf5a828fdf4d7ef1"
- integrity sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==
+ version "8.40.2"
+ resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.40.2.tgz#2833bc112d809677864a4b0e7d1de4f04d7dac2d"
+ integrity sha512-PRVjQ4Eh9z9pmmtaq8nTjZjQwKFk7YIHIud3lRoKRBgUQjgjRmoGxxGEPXQkF+lH7QkHJRNr5F4aBgYCW0lqpQ==
dependencies:
"@types/estree" "*"
"@types/json-schema" "*"
@@ 2164,19 1979,15 @@
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
-"@types/events@*":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7"
- integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==
-
"@types/express-serve-static-core@^4.17.33":
- version "4.17.33"
- resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz#de35d30a9d637dc1450ad18dd583d75d5733d543"
- integrity sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==
+ version "4.17.35"
+ resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz#c95dd4424f0d32e525d23812aa8ab8e4d3906c4f"
+ integrity sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==
dependencies:
"@types/node" "*"
"@types/qs" "*"
"@types/range-parser" "*"
+ "@types/send" "*"
"@types/express@^4.17.17":
version "4.17.17"
@@ 2189,18 2000,17 @@
"@types/serve-static" "*"
"@types/glob@^7.1.1":
- version "7.1.1"
- resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz#aa59a1c6e3fbc421e07ccd31a944c30eba521575"
- integrity sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb"
+ integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==
dependencies:
- "@types/events" "*"
"@types/minimatch" "*"
"@types/node" "*"
"@types/graceful-fs@^4.1.3":
- version "4.1.5"
- resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15"
- integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==
+ version "4.1.6"
+ resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.6.tgz#e14b2576a1c25026b7f02ede1de3b84c3a1efeae"
+ integrity sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==
dependencies:
"@types/node" "*"
@@ 2230,9 2040,9 @@
integrity sha512-BP+KwmOvD9AR5aoxnbyyPr3fAtpjEI/bVImHsotmpuC43+z0NAmjJ9cQbX7vPCq8XcvCeAVc8E3KSQPYNaPsUQ==
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762"
- integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
+ integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==
"@types/istanbul-lib-report@*":
version "3.0.0"
@@ 2242,9 2052,9 @@
"@types/istanbul-lib-coverage" "*"
"@types/istanbul-reports@^3.0.0":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821"
- integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA==
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff"
+ integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==
dependencies:
"@types/istanbul-lib-report" "*"
@@ 2262,25 2072,15 @@
integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==
"@types/jsdom@^20.0.0":
- version "20.0.0"
- resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.0.tgz#4414fb629465167f8b7b3804b9e067bdd99f1791"
- integrity sha512-YfAchFs0yM1QPDrLm2VHe+WHGtqms3NXnXAMolrgrVP6fgBHHXy1ozAbo/dFtPNtZC/m66bPiCTWYmqp1F14gA==
+ version "20.0.1"
+ resolved "https://registry.yarnpkg.com/@types/jsdom/-/jsdom-20.0.1.tgz#07c14bc19bd2f918c1929541cdaacae894744808"
+ integrity sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==
dependencies:
"@types/node" "*"
"@types/tough-cookie" "*"
parse5 "^7.0.0"
-"@types/json-schema@*", "@types/json-schema@^7.0.9":
- version "7.0.11"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3"
- integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==
-
-"@types/json-schema@^7.0.5":
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0"
- integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==
-
-"@types/json-schema@^7.0.6", "@types/json-schema@^7.0.8":
+"@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
version "7.0.12"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb"
integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
@@ 2293,7 2093,7 @@
"@types/json5@^0.0.29":
version "0.0.29"
resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
- integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
+ integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==
"@types/lodash@^4.14.195":
version "4.14.195"
@@ 2305,10 2105,15 @@
resolved "https://registry.yarnpkg.com/@types/mime/-/mime-3.0.1.tgz#5f8f2bca0a5863cb69bc0b0acd88c96cb1d4ae10"
integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==
+"@types/mime@^1":
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a"
+ integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==
+
"@types/minimatch@*":
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d"
- integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca"
+ integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==
"@types/minimist@^1.2.0":
version "1.2.2"
@@ 2316,9 2121,9 @@
integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
"@types/node@*":
- version "14.11.1"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-14.11.1.tgz#56af902ad157e763f9ba63d671c39cda3193c835"
- integrity sha512-oTQgnd0hblfLsJ6BvJzzSL+Inogp3lq9fGgqRkMB/ziKMgEUaFl801OncOzUmalfzt14N0oPHMK47ipl+wbTIw==
+ version "20.3.1"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe"
+ integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
"@types/node@14 || 16 || 17":
version "17.0.45"
@@ 2346,13 2151,13 @@
integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==
"@types/pg@^8.6.6":
- version "8.6.6"
- resolved "https://registry.yarnpkg.com/@types/pg/-/pg-8.6.6.tgz#21cdf873a3e345a6e78f394677e3b3b1b543cb80"
- integrity sha512-O2xNmXebtwVekJDD+02udOncjVcMZQuTEQEMpKJ0ZRf5E7/9JJX3izhKUcUifBkyKpljyUM6BTgy2trmviKlpw==
+ version "8.10.2"
+ resolved "https://registry.yarnpkg.com/@types/pg/-/pg-8.10.2.tgz#7814d1ca02c8071f4d0864c1b17c589b061dba43"
+ integrity sha512-MKFs9P6nJ+LAeHLU3V0cODEOgyThJ3OAnmOlsZsxux6sfQs3HRXR5bBn7xG5DjckEFhTAxsXi7k7cd0pCMxpJw==
dependencies:
"@types/node" "*"
pg-protocol "*"
- pg-types "^2.2.0"
+ pg-types "^4.0.1"
"@types/picomatch@^2.3.0":
version "2.3.0"
@@ 2360,9 2165,9 @@
integrity sha512-O397rnSS9iQI4OirieAtsDqvCj4+3eY1J+EPdNTKuHuRWIfUoGyzX294o8C4KJYaLqgSrd2o60c5EqCU8Zv02g==
"@types/prettier@^2.1.5":
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0"
- integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA==
+ version "2.7.3"
+ resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f"
+ integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==
"@types/prop-types@*", "@types/prop-types@^15.7.5":
version "15.7.5"
@@ 2385,9 2190,9 @@
integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==
"@types/react-dom@^18.0.0", "@types/react-dom@^18.2.4":
- version "18.2.4"
- resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.4.tgz#13f25bfbf4e404d26f62ac6e406591451acba9e0"
- integrity sha512-G2mHoTMTL4yoydITgOGwWdWMVd8sNgyEP85xVmMKAPUBwQWm9wBPQUmvbeF4V3WBY1P7mmL4BkjQ0SqUpf1snw==
+ version "18.2.5"
+ resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.5.tgz#5c5f13548bda23cd98f50ca4a59107238bfe18f3"
+ integrity sha512-sRQsOS/sCLnpQhR4DSKGTtWFE3FZjpQa86KPVbhUqdYMRZ9FEFcfAytKhR/vUG2rH1oFbOOej6cuD7MFSobDRQ==
dependencies:
"@types/react" "*"
@@ 2452,9 2257,9 @@
"@types/react" "*"
"@types/react-swipeable-views@^0.13.1":
- version "0.13.1"
- resolved "https://registry.yarnpkg.com/@types/react-swipeable-views/-/react-swipeable-views-0.13.1.tgz#381c8513deef5426623aa851033ff4f4831ae15c"
- integrity sha512-Nuvywkv9CkwcUgItOCBszkc/pc8YSdiKV5E1AzOJ/p32Db50LgwhJFi5b1ANPgyWxB0Q5yn69aMURHyGi3MLyg==
+ version "0.13.2"
+ resolved "https://registry.yarnpkg.com/@types/react-swipeable-views/-/react-swipeable-views-0.13.2.tgz#c37cc8978ae60ab0dff209ef3eb1f77185aef330"
+ integrity sha512-FiszBm9M0JicAgzO/IwDqpfHQRUEjPZA88UexYsVD6qHJBf5LrbGjR5Mw4+yZbf8ZxJneNqOsZbe4WGjOYG7iQ==
dependencies:
"@types/react" "*"
@@ 2480,25 2285,16 @@
"@types/react" "*"
"@types/react-transition-group@^4.4.0":
- version "4.4.3"
- resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.3.tgz#b0994da0a7023d67dbb4a8910a62112bc00d5688"
- integrity sha512-fUx5muOWSYP8Bw2BUQ9M9RK9+W1XBK/7FLJ8PTQpnpTEkn0ccyMffyEQvan4C3h53gHdx7KE5Qrxi/LnUGQtdg==
+ version "4.4.6"
+ resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e"
+ integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew==
dependencies:
"@types/react" "*"
-"@types/react@*", "@types/react@16 || 17 || 18", "@types/react@>=16.9.11", "@types/react@^18.0.26":
- version "18.2.6"
- resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.6.tgz#5cd53ee0d30ffc193b159d3516c8c8ad2f19d571"
- integrity sha512-wRZClXn//zxCFW+ye/D2qY65UsYP1Fpex2YXorHc8awoNamkMZSvBxwxdYVInsHOZZd2Ppq8isnSzJL5Mpf8OA==
- dependencies:
- "@types/prop-types" "*"
- "@types/scheduler" "*"
- csstype "^3.0.2"
-
-"@types/react@^18.2.7":
- version "18.2.7"
- resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.7.tgz#dfb4518042a3117a045b8c222316f83414a783b3"
- integrity sha512-ojrXpSH2XFCmHm7Jy3q44nXDyN54+EYKP2lBhJ2bqfyPj6cIUW/FZW/Csdia34NQgq7KYcAlHi5184m4X88+yw==
+"@types/react@*", "@types/react@16 || 17 || 18", "@types/react@>=16.9.11", "@types/react@^18.0.26", "@types/react@^18.2.7":
+ version "18.2.12"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.12.tgz#95d584338610b78bb9ba0415e3180fb03debdf97"
+ integrity sha512-ndmBMLCgn38v3SntMeoJaIrO6tGHYKMEBohCUmw8HoLLQdRMOIGXfeYaBTLe2lsFaSB3MOK1VXscYFnmLtTSmw==
dependencies:
"@types/prop-types" "*"
"@types/scheduler" "*"
@@ 2530,9 2326,17 @@
integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==
"@types/semver@^7.3.12":
- version "7.3.13"
- resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91"
- integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==
+ version "7.5.0"
+ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a"
+ integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
+
+"@types/send@*":
+ version "0.17.1"
+ resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.1.tgz#ed4932b8a2a805f1fe362a70f4e62d0ac994e301"
+ integrity sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==
+ dependencies:
+ "@types/mime" "^1"
+ "@types/node" "*"
"@types/serve-static@*":
version "1.15.1"
@@ 2548,9 2352,9 @@
integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==
"@types/stack-utils@^2.0.0":
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff"
- integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
+ integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
"@types/tapable@^1":
version "1.0.8"
@@ 2558,9 2362,9 @@
integrity sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==
"@types/testing-library__jest-dom@^5.9.1":
- version "5.9.1"
- resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.9.1.tgz#aba5ee062b7880f69c212ef769389f30752806e5"
- integrity sha512-yYn5EKHO3MPEMSOrcAb1dLWY+68CG29LiXKsWmmpVHqoP5+ZRiAVLyUHvPNrO2dABDdUGZvavMsaGpWNjM6N2g==
+ version "5.14.6"
+ resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.6.tgz#4887f6e1af11215428ab02777873bcede98a53b0"
+ integrity sha512-FkHXCb+ikSoUP4Y4rOslzTdX5sqYwMxfefKh1GmZ8ce1GOkEHntSp6b5cGadmNfp5e4BMEWOMx+WSKd5/MqlDA==
dependencies:
"@types/jest" "*"
@@ 2570,9 2374,9 @@
integrity sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==
"@types/trusted-types@^2.0.2":
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756"
- integrity sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.3.tgz#a136f83b0758698df454e328759dbd3d44555311"
+ integrity sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==
"@types/uglify-js@*":
version "3.17.1"
@@ 2587,9 2391,9 @@
integrity sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==
"@types/uuid@^9.0.0":
- version "9.0.1"
- resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.1.tgz#98586dc36aee8dacc98cc396dbca8d0429647aa6"
- integrity sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA==
+ version "9.0.2"
+ resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.2.tgz#ede1d1b1e451548d44919dc226253e32a6952c4b"
+ integrity sha512-kNnC1GFBLuhImSnV7w4njQkUiJi0ZXUycu1rUaouPqiKlXkh77JKgdRnTAp1x5eBwcIwbtI+3otwzuIDEuDoxQ==
"@types/warning@^3.0.0":
version "3.0.0"
@@ 2618,16 2422,9 @@
source-map "^0.6.0"
"@types/yargs-parser@*":
- version "15.0.0"
- resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d"
- integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==
-
-"@types/yargs@^16.0.0":
- version "16.0.3"
- resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz#4b6d35bb8e680510a7dc2308518a80ee1ef27e01"
- integrity sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ==
- dependencies:
- "@types/yargs-parser" "*"
+ version "21.0.0"
+ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
+ integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
"@types/yargs@^17.0.24", "@types/yargs@^17.0.8":
version "17.0.24"
@@ 2637,14 2434,14 @@
"@types/yargs-parser" "*"
"@typescript-eslint/eslint-plugin@^5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.8.tgz#1e7a3e5318ece22251dfbc5c9c6feeb4793cc509"
- integrity sha512-JDMOmhXteJ4WVKOiHXGCoB96ADWg9q7efPWHRViT/f09bA8XOMLAVHHju3l0MkZnG1izaWXYmgvQcUjTRcpShQ==
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.11.tgz#8d466aa21abea4c3f37129997b198d141f09e76f"
+ integrity sha512-XxuOfTkCUiOSyBWIvHlUraLw/JT/6Io1365RO6ZuI88STKMavJZPNMU0lFcUTeQXEhHiv64CbxYxBNoDVSmghg==
dependencies:
"@eslint-community/regexpp" "^4.4.0"
- "@typescript-eslint/scope-manager" "5.59.8"
- "@typescript-eslint/type-utils" "5.59.8"
- "@typescript-eslint/utils" "5.59.8"
+ "@typescript-eslint/scope-manager" "5.59.11"
+ "@typescript-eslint/type-utils" "5.59.11"
+ "@typescript-eslint/utils" "5.59.11"
debug "^4.3.4"
grapheme-splitter "^1.0.4"
ignore "^5.2.0"
@@ 2653,30 2450,30 @@
tsutils "^3.21.0"
"@typescript-eslint/parser@^5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.8.tgz#60cbb00671d86cf746044ab797900b1448188567"
- integrity sha512-AnR19RjJcpjoeGojmwZtCwBX/RidqDZtzcbG3xHrmz0aHHoOcbWnpDllenRDmDvsV0RQ6+tbb09/kyc+UT9Orw==
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.11.tgz#af7d4b7110e3068ce0b97550736de455e4250103"
+ integrity sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==
dependencies:
- "@typescript-eslint/scope-manager" "5.59.8"
- "@typescript-eslint/types" "5.59.8"
- "@typescript-eslint/typescript-estree" "5.59.8"
+ "@typescript-eslint/scope-manager" "5.59.11"
+ "@typescript-eslint/types" "5.59.11"
+ "@typescript-eslint/typescript-estree" "5.59.11"
debug "^4.3.4"
-"@typescript-eslint/scope-manager@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.8.tgz#ff4ad4fec6433647b817c4a7d4b4165d18ea2fa8"
- integrity sha512-/w08ndCYI8gxGf+9zKf1vtx/16y8MHrZs5/tnjHhMLNSixuNcJavSX4wAiPf4aS5x41Es9YPCn44MIe4cxIlig==
+"@typescript-eslint/scope-manager@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.11.tgz#5d131a67a19189c42598af9fb2ea1165252001ce"
+ integrity sha512-dHFOsxoLFtrIcSj5h0QoBT/89hxQONwmn3FOQ0GOQcLOOXm+MIrS8zEAhs4tWl5MraxCY3ZJpaXQQdFMc2Tu+Q==
dependencies:
- "@typescript-eslint/types" "5.59.8"
- "@typescript-eslint/visitor-keys" "5.59.8"
+ "@typescript-eslint/types" "5.59.11"
+ "@typescript-eslint/visitor-keys" "5.59.11"
-"@typescript-eslint/type-utils@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.8.tgz#aa6c029a9d7706d26bbd25eb4666398781df6ea2"
- integrity sha512-+5M518uEIHFBy3FnyqZUF3BMP+AXnYn4oyH8RF012+e7/msMY98FhGL5SrN29NQ9xDgvqCgYnsOiKp1VjZ/fpA==
+"@typescript-eslint/type-utils@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.11.tgz#5eb67121808a84cb57d65a15f48f5bdda25f2346"
+ integrity sha512-LZqVY8hMiVRF2a7/swmkStMYSoXMFlzL6sXV6U/2gL5cwnLWQgLEG8tjWPpaE4rMIdZ6VKWwcffPlo1jPfk43g==
dependencies:
- "@typescript-eslint/typescript-estree" "5.59.8"
- "@typescript-eslint/utils" "5.59.8"
+ "@typescript-eslint/typescript-estree" "5.59.11"
+ "@typescript-eslint/utils" "5.59.11"
debug "^4.3.4"
tsutils "^3.21.0"
@@ 2685,10 2482,10 @@
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.0.tgz#3fcdac7dbf923ec5251545acdd9f1d42d7c4fe32"
integrity sha512-yR2h1NotF23xFFYKHZs17QJnB51J/s+ud4PYU4MqdZbzeNxpgUr05+dNeCN/bb6raslHvGdd6BFCkVhpPk/ZeA==
-"@typescript-eslint/types@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.8.tgz#212e54414733618f5d0fd50b2da2717f630aebf8"
- integrity sha512-+uWuOhBTj/L6awoWIg0BlWy0u9TyFpCHrAuQ5bNfxDaZ1Ppb3mx6tUigc74LHcbHpOHuOTOJrBoAnhdHdaea1w==
+"@typescript-eslint/types@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.11.tgz#1a9018fe3c565ba6969561f2a49f330cf1fe8db1"
+ integrity sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA==
"@typescript-eslint/typescript-estree@5.59.0":
version "5.59.0"
@@ 2703,30 2500,30 @@
semver "^7.3.7"
tsutils "^3.21.0"
-"@typescript-eslint/typescript-estree@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.8.tgz#801a7b1766481629481b3b0878148bd7a1f345d7"
- integrity sha512-Jy/lPSDJGNow14vYu6IrW790p7HIf/SOV1Bb6lZ7NUkLc2iB2Z9elESmsaUtLw8kVqogSbtLH9tut5GCX1RLDg==
+"@typescript-eslint/typescript-estree@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.11.tgz#b2caaa31725e17c33970c1197bcd54e3c5f42b9f"
+ integrity sha512-YupOpot5hJO0maupJXixi6l5ETdrITxeo5eBOeuV7RSKgYdU3G5cxO49/9WRnJq9EMrB7AuTSLH/bqOsXi7wPA==
dependencies:
- "@typescript-eslint/types" "5.59.8"
- "@typescript-eslint/visitor-keys" "5.59.8"
+ "@typescript-eslint/types" "5.59.11"
+ "@typescript-eslint/visitor-keys" "5.59.11"
debug "^4.3.4"
globby "^11.1.0"
is-glob "^4.0.3"
semver "^7.3.7"
tsutils "^3.21.0"
-"@typescript-eslint/utils@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.8.tgz#34d129f35a2134c67fdaf024941e8f96050dca2b"
- integrity sha512-Tr65630KysnNn9f9G7ROF3w1b5/7f6QVCJ+WK9nhIocWmx9F+TmCAcglF26Vm7z8KCTwoKcNEBZrhlklla3CKg==
+"@typescript-eslint/utils@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.11.tgz#9dbff49dc80bfdd9289f9f33548f2e8db3c59ba1"
+ integrity sha512-didu2rHSOMUdJThLk4aZ1Or8IcO3HzCw/ZvEjTTIfjIrcdd5cvSIwwDy2AOlE7htSNp7QIZ10fLMyRCveesMLg==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@types/json-schema" "^7.0.9"
"@types/semver" "^7.3.12"
- "@typescript-eslint/scope-manager" "5.59.8"
- "@typescript-eslint/types" "5.59.8"
- "@typescript-eslint/typescript-estree" "5.59.8"
+ "@typescript-eslint/scope-manager" "5.59.11"
+ "@typescript-eslint/types" "5.59.11"
+ "@typescript-eslint/typescript-estree" "5.59.11"
eslint-scope "^5.1.1"
semver "^7.3.7"
@@ 2738,12 2535,12 @@
"@typescript-eslint/types" "5.59.0"
eslint-visitor-keys "^3.3.0"
-"@typescript-eslint/visitor-keys@5.59.8":
- version "5.59.8"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.8.tgz#aa6a7ef862add919401470c09e1609392ef3cc40"
- integrity sha512-pJhi2ms0x0xgloT7xYabil3SGGlojNNKjK/q6dB3Ey0uJLMjK2UDGJvHieiyJVW/7C3KI+Z4Q3pEHkm4ejA+xQ==
+"@typescript-eslint/visitor-keys@5.59.11":
+ version "5.59.11"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.11.tgz#dca561ddad169dc27d62396d64f45b2d2c3ecc56"
+ integrity sha512-KGYniTGG3AMTuKF9QBD7EIrvufkB6O6uX3knP73xbKLMpH+QRPcgnCxjWXSHjMRuOxFLovljqQgQpR0c7GvjoA==
dependencies:
- "@typescript-eslint/types" "5.59.8"
+ "@typescript-eslint/types" "5.59.11"
eslint-visitor-keys "^3.3.0"
"@webassemblyjs/ast@1.9.0":
@@ 2945,11 2742,11 @@ acorn-walk@^8.0.0, acorn-walk@^8.0.2:
integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
acorn@^6.4.1:
- version "6.4.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474"
- integrity sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==
+ version "6.4.2"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
+ integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
-acorn@^8.0.4, acorn@^8.1.0, acorn@^8.5.0, acorn@^8.8.0, acorn@^8.8.1:
+acorn@^8.0.4, acorn@^8.1.0, acorn@^8.8.0, acorn@^8.8.1, acorn@^8.8.2:
version "8.8.2"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a"
integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==
@@ 2990,9 2787,9 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4, ajv@^6.12.5:
uri-js "^4.2.2"
ajv@^8.0.1, ajv@^8.6.0:
- version "8.11.0"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.11.0.tgz#977e91dd96ca669f54a11e23e378e33b884a565f"
- integrity sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==
+ version "8.12.0"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1"
+ integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==
dependencies:
fast-deep-equal "^3.1.1"
json-schema-traverse "^1.0.0"
@@ 3004,14 2801,7 @@ ansi-colors@^3.0.0:
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf"
integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==
-ansi-escapes@^4.2.1:
- version "4.3.1"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61"
- integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==
- dependencies:
- type-fest "^0.11.0"
-
-ansi-escapes@^4.3.0:
+ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
version "4.3.2"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
@@ 3026,14 2816,14 @@ ansi-html-community@0.0.8:
ansi-regex@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
- integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8=
+ integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==
ansi-regex@^4.1.0:
version "4.1.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed"
integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==
-ansi-regex@^5.0.0, ansi-regex@^5.0.1:
+ansi-regex@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
@@ 3050,15 2840,7 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
-ansi-styles@^4.0.0:
- version "4.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
- integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
- dependencies:
- "@types/color-name" "^1.1.1"
- color-convert "^2.0.1"
-
-ansi-styles@^4.1.0:
+ansi-styles@^4.0.0, ansi-styles@^4.1.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
@@ 3070,7 2852,7 @@ ansi-styles@^5.0.0:
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
-ansi-styles@^6.0.0:
+ansi-styles@^6.0.0, ansi-styles@^6.1.0:
version "6.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
@@ 3083,7 2865,7 @@ anymatch@^2.0.0:
micromatch "^3.1.4"
normalize-path "^2.1.1"
-anymatch@^3.0.0:
+anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2:
version "3.1.3"
resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
@@ 3091,18 2873,10 @@ anymatch@^3.0.0:
normalize-path "^3.0.0"
picomatch "^2.0.4"
-anymatch@^3.0.3, anymatch@~3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142"
- integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
"aproba@^1.0.3 || ^2.0.0":
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
- integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc"
+ integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==
are-docs-informative@^0.0.2:
version "0.0.2"
@@ 3129,17 2903,24 @@ argparse@^2.0.1:
resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
-aria-query@^5.0.0, aria-query@^5.1.3:
+aria-query@5.1.3:
version "5.1.3"
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz#19db27cd101152773631396f7a95a3b58c22c35e"
integrity sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==
dependencies:
deep-equal "^2.0.5"
+aria-query@^5.0.0, aria-query@^5.1.3:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.2.1.tgz#bc285d9d654d1df121bcd0c134880d415ca67c15"
+ integrity sha512-7uFg4b+lETFgdaJyETnILsXgnnzVnkHcgRbwbPwevm5x/LmUlt3MjczMRe1zg824iBgXZNRPTBftNYyRSKLp2g==
+ dependencies:
+ dequal "^2.0.3"
+
arr-diff@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
- integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=
+ integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==
arr-flatten@^1.1.0:
version "1.1.0"
@@ 3149,12 2930,20 @@ arr-flatten@^1.1.0:
arr-union@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4"
- integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=
+ integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==
+
+array-buffer-byte-length@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#fabe8bc193fea865f317fe7807085ee0dee5aead"
+ integrity sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==
+ dependencies:
+ call-bind "^1.0.2"
+ is-array-buffer "^3.0.1"
array-flatten@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
- integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=
+ integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
array-flatten@^2.1.0:
version "2.1.2"
@@ 3175,7 2964,7 @@ array-includes@^3.1.5, array-includes@^3.1.6:
array-union@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39"
- integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=
+ integrity sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==
dependencies:
array-uniq "^1.0.1"
@@ 3187,12 2976,12 @@ array-union@^2.1.0:
array-uniq@^1.0.1:
version "1.0.3"
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6"
- integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=
+ integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==
array-unique@^0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
- integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
+ integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==
array.prototype.flat@^1.3.1:
version "1.3.1"
@@ 3256,12 3045,12 @@ assert@^1.1.1:
assign-symbols@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
- integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
+ integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==
ast-types-flow@^0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
- integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0=
+ integrity sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==
astral-regex@^2.0.0:
version "2.0.0"
@@ 3269,9 3058,9 @@ astral-regex@^2.0.0:
integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==
async-each@^1.0.1:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
- integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77"
+ integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==
async-limiter@~1.0.0:
version "1.0.1"
@@ 3285,7 3074,7 @@ async-mutex@^0.4.0:
dependencies:
tslib "^2.4.0"
-async@^2.6.2:
+async@^2.6.4:
version "2.6.4"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221"
integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==
@@ 3293,14 3082,14 @@ async@^2.6.2:
lodash "^4.17.14"
async@^3.2.3:
- version "3.2.3"
- resolved "https://registry.yarnpkg.com/async/-/async-3.2.3.tgz#ac53dafd3f4720ee9e8a160628f18ea91df196c9"
- integrity sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==
+ version "3.2.4"
+ resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c"
+ integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==
asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
+ integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
at-least-node@^1.0.0:
version "1.0.0"
@@ 3335,9 3124,9 @@ available-typed-arrays@^1.0.5:
integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
axe-core@^4.6.2:
- version "4.6.3"
- resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.6.3.tgz#fc0db6fdb65cc7a80ccf85286d91d64ababa3ece"
- integrity sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==
+ version "4.7.2"
+ resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.2.tgz#040a7342b20765cb18bb50b628394c21bccc17a0"
+ integrity sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==
axios@^1.4.0:
version "1.4.0"
@@ 3349,11 3138,11 @@ axios@^1.4.0:
proxy-from-env "^1.1.0"
axobject-query@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-3.1.1.tgz#3b6e5c6d4e43ca7ba51c5babf99d22a9c68485e1"
- integrity sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-3.2.1.tgz#39c378a6e3b06ca679f29138151e45b2b32da62a"
+ integrity sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==
dependencies:
- deep-equal "^2.0.5"
+ dequal "^2.0.3"
babel-jest@^29.5.0:
version "29.5.0"
@@ 3379,17 3168,17 @@ babel-loader@^8.3.0:
schema-utils "^2.6.5"
babel-plugin-formatjs@^10.5.1:
- version "10.5.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-formatjs/-/babel-plugin-formatjs-10.5.1.tgz#9baeccb590538fb1915ef85fb7dfd13aedd8b1fa"
- integrity sha512-IkwrKjl2Zg6br2wuayPIsaPF92RzGgh5WdQj+A/9zokpYeIF7sscZGwwHmeTSoPnIAAENvjRMm/escMQkp+eKg==
+ version "10.5.3"
+ resolved "https://registry.yarnpkg.com/babel-plugin-formatjs/-/babel-plugin-formatjs-10.5.3.tgz#718e47f4f3aad663ad4f901274aedd7be0a86380"
+ integrity sha512-PBeryWyN2HY2VUGNFPQS6+DPNQ/I9zDZ97y38i1+LzIpIyTHBePECq/ehEABE73PvvF2irFiN7TCYBrQQw5+lA==
dependencies:
"@babel/core" "^7.10.4"
"@babel/helper-plugin-utils" "^7.10.4"
"@babel/plugin-syntax-jsx" "7"
"@babel/traverse" "7"
"@babel/types" "^7.12.11"
- "@formatjs/icu-messageformat-parser" "2.4.0"
- "@formatjs/ts-transformer" "3.13.1"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
+ "@formatjs/ts-transformer" "3.13.3"
"@types/babel__core" "^7.1.7"
"@types/babel__helper-plugin-utils" "^7.10.0"
"@types/babel__traverse" "^7.1.7"
@@ 3427,16 3216,7 @@ babel-plugin-lodash@^3.3.4:
lodash "^4.17.10"
require-package-name "^2.0.1"
-babel-plugin-macros@^2.6.1:
- version "2.8.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138"
- integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==
- dependencies:
- "@babel/runtime" "^7.7.2"
- cosmiconfig "^6.0.0"
- resolve "^1.12.0"
-
-babel-plugin-macros@^3.0.1:
+babel-plugin-macros@^3.0.1, babel-plugin-macros@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1"
integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==
@@ 3485,9 3265,9 @@ babel-plugin-transform-react-remove-prop-types@^0.4.24:
integrity sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==
babel-preset-current-node-syntax@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.0.tgz#cf5feef29551253471cfa82fc8e0f5063df07a77"
- integrity sha512-mGkvkpocWJes1CmMKtgGUwCeeq0pOhALyymozzDWYomHTbDLwueDYG6p4TK1YOeYHCzBzYPsWkgTto10JubI1Q==
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b"
+ integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==
dependencies:
"@babel/plugin-syntax-async-generators" "^7.8.4"
"@babel/plugin-syntax-bigint" "^7.8.3"
@@ 3511,9 3291,9 @@ babel-preset-jest@^29.5.0:
babel-preset-current-node-syntax "^1.0.0"
balanced-match@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
- integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
+ integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
balanced-match@^2.0.0:
version "2.0.0"
@@ 3541,7 3321,7 @@ base@^0.11.1:
batch@0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16"
- integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=
+ integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==
big-integer@^1.6.44:
version "1.6.51"
@@ 3559,9 3339,9 @@ binary-extensions@^1.0.0:
integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==
binary-extensions@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9"
- integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
+ integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
bindings@^1.5.0:
version "1.5.0"
@@ 3583,17 3363,17 @@ blurhash@^2.0.5:
bmp-js@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/bmp-js/-/bmp-js-0.1.0.tgz#e05a63f796a6c1ff25f4771ec7adadc148c07233"
- integrity sha1-4Fpj95amwf8l9Hcex62twUjAcjM=
+ integrity sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==
bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9:
version "4.12.0"
resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
-bn.js@^5.1.1:
- version "5.1.3"
- resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.1.3.tgz#beca005408f642ebebea80b042b4d18d2ac0ee6b"
- integrity sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==
+bn.js@^5.0.0, bn.js@^5.1.1:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"
+ integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==
body-parser@1.20.1:
version "1.20.1"
@@ 3616,7 3396,7 @@ body-parser@1.20.1:
bonjour@^3.5.0:
version "3.5.0"
resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5"
- integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU=
+ integrity sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==
dependencies:
array-flatten "^2.1.0"
deep-equal "^1.0.1"
@@ 3628,7 3408,7 @@ bonjour@^3.5.0:
boolbase@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
- integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
+ integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
bplist-parser@^0.2.0:
version "0.2.0"
@@ 3678,7 3458,7 @@ braces@^3.0.2, braces@~3.0.2:
brorand@^1.0.1, brorand@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
- integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=
+ integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==
browserify-aes@^1.0.0, browserify-aes@^1.0.4:
version "1.2.0"
@@ 3712,11 3492,11 @@ browserify-des@^1.0.0:
safe-buffer "^5.1.2"
browserify-rsa@^4.0.0, browserify-rsa@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524"
- integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d"
+ integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==
dependencies:
- bn.js "^4.1.0"
+ bn.js "^5.0.0"
randombytes "^2.0.1"
browserify-sign@^4.0.0:
@@ 3742,14 3522,14 @@ browserify-zlib@^0.2.0:
pako "~1.0.5"
browserslist@^4.0.0, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5:
- version "4.21.5"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7"
- integrity sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==
+ version "4.21.8"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.8.tgz#db2498e1f4b80ed199c076248a094935860b6017"
+ integrity sha512-j+7xYe+v+q2Id9qbBeCI8WX5NmZSRe8es1+0xntD/+gaWXznP8tFEkv5IgSaHf5dS1YwVMbX/4W6m937mj+wQw==
dependencies:
- caniuse-lite "^1.0.30001449"
- electron-to-chromium "^1.4.284"
- node-releases "^2.0.8"
- update-browserslist-db "^1.0.10"
+ caniuse-lite "^1.0.30001502"
+ electron-to-chromium "^1.4.428"
+ node-releases "^2.0.12"
+ update-browserslist-db "^1.0.11"
bser@2.1.1:
version "2.1.1"
@@ 3776,7 3556,7 @@ buffer-writer@2.0.0:
buffer-xor@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
- integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=
+ integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==
buffer@^4.3.0:
version "4.9.2"
@@ 3802,7 3582,7 @@ bufferutil@^4.0.7:
dependencies:
node-gyp-build "^4.3.0"
-builtin-modules@^3.1.0:
+builtin-modules@^3.1.0, builtin-modules@^3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6"
integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==
@@ 3810,7 3590,7 @@ builtin-modules@^3.1.0:
builtin-status-codes@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
- integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=
+ integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==
bundle-name@^3.0.0:
version "3.0.0"
@@ 3822,7 3602,7 @@ bundle-name@^3.0.0:
bytes@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
- integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=
+ integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==
bytes@3.1.2:
version "3.1.2"
@@ 3830,10 3610,11 @@ bytes@3.1.2:
integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
cacache@^15.0.5:
- version "15.0.5"
- resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.5.tgz#69162833da29170d6732334643c60e005f5f17d0"
- integrity sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==
+ version "15.3.0"
+ resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb"
+ integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==
dependencies:
+ "@npmcli/fs" "^1.0.0"
"@npmcli/move-file" "^1.0.1"
chownr "^2.0.0"
fs-minipass "^2.0.0"
@@ 3848,7 3629,7 @@ cacache@^15.0.5:
p-map "^4.0.0"
promise-inflight "^1.0.1"
rimraf "^3.0.2"
- ssri "^8.0.0"
+ ssri "^8.0.1"
tar "^6.0.2"
unique-filename "^1.1.1"
@@ 3895,9 3676,9 @@ camelcase@^5.0.0, camelcase@^5.3.1:
integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
camelcase@^6.2.0:
- version "6.2.0"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809"
- integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
+ integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
caniuse-api@^3.0.0:
version "3.0.0"
@@ 3909,10 3690,10 @@ caniuse-api@^3.0.0:
lodash.memoize "^4.1.2"
lodash.uniq "^4.5.0"
-caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001449, caniuse-lite@^1.0.30001464:
- version "1.0.30001466"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001466.tgz#c1e6197c540392e09709ecaa9e3e403428c53375"
- integrity sha512-ewtFBSfWjEmxUgNBSZItFSmVtvk9zkwkl1OfRZlKA8slltRN+/C/tuGVrF9styXkN36Yu3+SeJ1qkXxDEyNZ5w==
+caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001502:
+ version "1.0.30001503"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001503.tgz#88b6ff1b2cf735f1f3361dc1a15b59f0561aa398"
+ integrity sha512-Sf9NiF+wZxPfzv8Z3iS0rXM1Do+iOy2Lxvib38glFX+08TCYYYGR5fRJXk4d77C4AYwhUjgYgMsMudbh2TqCKw==
chalk@5.2.0:
version "5.2.0"
@@ 3950,19 3731,19 @@ char-regex@^1.0.2:
integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1:
- version "3.5.1"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a"
- integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==
+ version "3.5.3"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
+ integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
dependencies:
- anymatch "~3.1.1"
+ anymatch "~3.1.2"
braces "~3.0.2"
- glob-parent "~5.1.0"
+ glob-parent "~5.1.2"
is-binary-path "~2.1.0"
is-glob "~4.0.1"
normalize-path "~3.0.0"
- readdirp "~3.5.0"
+ readdirp "~3.6.0"
optionalDependencies:
- fsevents "~2.3.1"
+ fsevents "~2.3.2"
chokidar@^2.1.8:
version "2.1.8"
@@ 3989,16 3770,14 @@ chownr@^2.0.0:
integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==
chrome-trace-event@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4"
- integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==
- dependencies:
- tslib "^1.9.0"
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac"
+ integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==
ci-info@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6"
- integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91"
+ integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
version "1.0.4"
@@ 4009,9 3788,9 @@ cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
safe-buffer "^5.0.1"
cjs-module-lexer@^1.0.0:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.1.tgz#2fd46d9906a126965aa541345c499aaa18e8cd73"
- integrity sha512-jVamGdJPDeuQilKhvVn1h3knuMOZzr8QDnpk+M9aMlCaMkTDd6fBWPhiDqFvFZ07pL0liqabAiuy8SY4jGHeaw==
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107"
+ integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==
class-utils@^0.3.5:
version "0.3.6"
@@ 4065,15 3844,6 @@ cliui@^5.0.0:
strip-ansi "^5.2.0"
wrap-ansi "^5.1.0"
-cliui@^7.0.4:
- version "7.0.4"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f"
- integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.0"
- wrap-ansi "^7.0.0"
-
cliui@^8.0.1:
version "8.0.1"
resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
@@ 4100,7 3870,7 @@ cluster-key-slot@1.1.2:
co@^4.6.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
- integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=
+ integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
cocoon-js-vanilla@^1.3.0:
version "1.3.0"
@@ 4115,7 3885,7 @@ collect-v8-coverage@^1.0.0:
collection-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
- integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=
+ integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==
dependencies:
map-visit "^1.0.0"
object-visit "^1.0.0"
@@ 4142,7 3912,7 @@ color-convert@^2.0.1:
color-name@1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
+ integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
color-name@~1.1.4:
version "1.1.4"
@@ 4160,9 3930,9 @@ colord@^2.9.1, colord@^2.9.3:
integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==
colorette@^2.0.19:
- version "2.0.19"
- resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798"
- integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==
+ version "2.0.20"
+ resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
+ integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
colors@^1.4.0:
version "1.4.0"
@@ 4177,9 3947,9 @@ combined-stream@^1.0.8:
delayed-stream "~1.0.0"
commander@^10.0.0:
- version "10.0.0"
- resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1"
- integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==
+ 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"
@@ 4204,7 3974,7 @@ common-tags@^1.8.0:
commondir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
- integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=
+ integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==
component-emitter@^1.2.1:
version "1.3.0"
@@ 4245,7 4015,7 @@ compression@^1.7.4:
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
+ integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
connect-history-api-fallback@^1.6.0:
version "1.6.0"
@@ 4260,12 4030,12 @@ console-browserify@^1.1.0:
console-control-strings@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
- integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
+ integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==
constants-browserify@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
- integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=
+ integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==
content-disposition@0.5.4:
version "0.5.4"
@@ 4275,16 4045,14 @@ content-disposition@0.5.4:
safe-buffer "5.2.1"
content-type@~1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
- integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
+ integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369"
- integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
- dependencies:
- safe-buffer "~5.1.1"
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f"
+ integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==
convert-source-map@^2.0.0:
version "2.0.0"
@@ 4294,7 4062,7 @@ convert-source-map@^2.0.0:
cookie-signature@1.0.6:
version "1.0.6"
resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
- integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw=
+ integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==
cookie@0.5.0:
version "0.5.0"
@@ 4304,12 4072,12 @@ cookie@0.5.0:
copy-descriptor@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
- integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
+ integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==
core-js-compat@^3.30.1, core-js-compat@^3.30.2:
- version "3.30.2"
- resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.30.2.tgz#83f136e375babdb8c80ad3c22d67c69098c1dd8b"
- integrity sha512-nriW1nuJjUgvkEjIot1Spwakz52V9YkYHZAQG6A1eCgC8AA1p0zngrQEP9R0+V6hji5XilWKG1Bd0YRppmGimA==
+ version "3.31.0"
+ resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.31.0.tgz#4030847c0766cc0e803dcdfb30055d7ef2064bf1"
+ integrity sha512-hM7YCu1cU6Opx7MXNu0NuumM0ezNeAeRKadixyiQELWY3vT3De9S4J5ZBMraWV2vZnrE1Cirl0GtFtDtMUXzPw==
dependencies:
browserslist "^4.21.5"
@@ 4319,25 4087,14 @@ core-js@^2.5.0:
integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==
core-js@^3.30.2:
- version "3.30.2"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.30.2.tgz#6528abfda65e5ad728143ea23f7a14f0dcf503fc"
- integrity sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg==
+ version "3.31.0"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.31.0.tgz#4471dd33e366c79d8c0977ed2d940821719db344"
+ integrity sha512-NIp2TQSGfR6ba5aalZD+ZQ1fSxGhDo/s1w0nx3RYzf2pnJxt7YynxFlFScP6eV7+GZsKO95NSjGxyJsU3DZgeQ==
core-util-is@~1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
- integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
-
-cosmiconfig@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982"
- integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==
- dependencies:
- "@types/parse-json" "^4.0.0"
- import-fresh "^3.1.0"
- parse-json "^5.0.0"
- path-type "^4.0.0"
- yaml "^1.7.2"
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
+ integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
cosmiconfig@^7.0.0:
version "7.1.0"
@@ 4350,10 4107,10 @@ cosmiconfig@^7.0.0:
path-type "^4.0.0"
yaml "^1.10.0"
-cosmiconfig@^8.1.3:
- version "8.1.3"
- resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.1.3.tgz#0e614a118fcc2d9e5afc2f87d53cd09931015689"
- integrity sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==
+cosmiconfig@^8.2.0:
+ version "8.2.0"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.2.0.tgz#f7d17c56a590856cd1e7cee98734dca272b0d8fd"
+ integrity sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==
dependencies:
import-fresh "^3.2.1"
js-yaml "^4.1.0"
@@ 4441,9 4198,9 @@ crypto-random-string@^2.0.0:
integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==
css-declaration-sorter@^6.3.1:
- version "6.3.1"
- resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz#be5e1d71b7a992433fb1c542c7a1b835e45682ec"
- integrity sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz#630618adc21724484b3e9505bce812def44000ad"
+ integrity sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==
css-functions-list@^3.1.0:
version "3.1.0"
@@ 4501,7 4258,7 @@ css-what@^6.1.0:
css.escape@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
- integrity sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=
+ integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==
cssesc@^3.0.0:
version "3.0.0"
@@ 4587,11 4344,6 @@ cssstyle@^3.0.0:
dependencies:
rrweb-cssom "^0.6.0"
-csstype@^2.6.7:
- version "2.6.13"
- resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.13.tgz#a6893015b90e84dd6e85d0e3b442a1e84f2dbe0f"
- integrity sha512-ul26pfSQTZW8dcOnD2iiJssfXw0gdNVX9IJDH/X3K5DGPfj+fUYe3kB+swUY6BF3oZDxaID3AJt+9/ojSAE05A==
-
csstype@^3.0.2:
version "3.1.2"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b"
@@ 4634,7 4386,7 @@ debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
dependencies:
ms "2.1.2"
-debug@^3.1.1, debug@^3.2.6, debug@^3.2.7:
+debug@^3.2.7:
version "3.2.7"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a"
integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==
@@ 4642,9 4394,9 @@ debug@^3.1.1, debug@^3.2.6, debug@^3.2.7:
ms "^2.1.1"
decamelize-keys@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9"
- integrity sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8"
+ integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==
dependencies:
decamelize "^1.1.0"
map-obj "^1.0.0"
@@ 4652,7 4404,7 @@ decamelize-keys@^1.1.0:
decamelize@^1.1.0, decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
- integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=
+ integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==
decimal.js@^10.4.2, decimal.js@^10.4.3:
version "10.4.3"
@@ 4667,7 4419,7 @@ decode-uri-component@^0.2.0:
dedent@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
- integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=
+ integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==
deep-equal@^1.0.1:
version "1.1.1"
@@ 4682,15 4434,16 @@ deep-equal@^1.0.1:
regexp.prototype.flags "^1.2.0"
deep-equal@^2.0.5:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.0.tgz#5caeace9c781028b9ff459f33b779346637c43e6"
- integrity sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.1.tgz#c72ab22f3a7d3503a4ca87dde976fe9978816739"
+ integrity sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==
dependencies:
+ array-buffer-byte-length "^1.0.0"
call-bind "^1.0.2"
- es-get-iterator "^1.1.2"
- get-intrinsic "^1.1.3"
+ es-get-iterator "^1.1.3"
+ get-intrinsic "^1.2.0"
is-arguments "^1.1.1"
- is-array-buffer "^3.0.1"
+ is-array-buffer "^3.0.2"
is-date-object "^1.0.5"
is-regex "^1.1.4"
is-shared-array-buffer "^1.0.2"
@@ 4698,21 4451,21 @@ deep-equal@^2.0.5:
object-is "^1.1.5"
object-keys "^1.1.1"
object.assign "^4.1.4"
- regexp.prototype.flags "^1.4.3"
+ regexp.prototype.flags "^1.5.0"
side-channel "^1.0.4"
which-boxed-primitive "^1.0.2"
which-collection "^1.0.1"
which-typed-array "^1.1.9"
deep-is@^0.1.3, deep-is@~0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
- integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
+ integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
deepmerge@^4.0, deepmerge@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955"
- integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==
+ version "4.3.1"
+ resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
+ integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
default-browser-id@^3.0.0:
version "3.0.0"
@@ 4745,10 4498,10 @@ define-lazy-prop@^3.0.0:
resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f"
integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==
-define-properties@^1.1.3, define-properties@^1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"
- integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
+define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.0.tgz#52988570670c9eacedd8064f4a990f2405849bd5"
+ integrity sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==
dependencies:
has-property-descriptors "^1.0.0"
object-keys "^1.1.1"
@@ 4756,14 4509,14 @@ define-properties@^1.1.3, define-properties@^1.1.4:
define-property@^0.2.5:
version "0.2.5"
resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
- integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=
+ integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==
dependencies:
is-descriptor "^0.1.0"
define-property@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6"
- integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY=
+ integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==
dependencies:
is-descriptor "^1.0.0"
@@ 4791,12 4544,12 @@ del@^4.1.1:
delayed-stream@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
+ integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
delegates@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a"
- integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=
+ integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==
depd@2.0.0:
version "2.0.0"
@@ 4806,17 4559,17 @@ depd@2.0.0:
depd@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
- integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=
+ integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==
-dequal@^2.0.2:
+dequal@^2.0.2, dequal@^2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
des.js@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843"
- integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.1.0.tgz#1d37f5766f3bbff4ee9638e871a8768c173b81da"
+ integrity sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==
dependencies:
inherits "^2.0.1"
minimalistic-assert "^1.0.0"
@@ 4829,7 4582,7 @@ destroy@1.2.0:
detect-file@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7"
- integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=
+ integrity sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==
detect-it@^4.0.1:
version "4.0.1"
@@ 4842,9 4595,9 @@ detect-newline@^3.0.0:
integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
detect-node@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c"
- integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1"
+ integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==
detect-passive-events@^2.0.3:
version "2.0.3"
@@ 4877,7 4630,7 @@ dir-glob@^3.0.1:
dns-equal@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d"
- integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0=
+ integrity sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==
dns-packet@^1.3.1:
version "1.3.4"
@@ 4890,7 4643,7 @@ dns-packet@^1.3.1:
dns-txt@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6"
- integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=
+ integrity sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==
dependencies:
buffer-indexof "^1.0.0"
@@ 4908,12 4661,7 @@ doctrine@^3.0.0:
dependencies:
esutils "^2.0.2"
-dom-accessibility-api@^0.5.6:
- version "0.5.6"
- resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.6.tgz#3f5d43b52c7a3bd68b5fb63fa47b4e4c1fdf65a9"
- integrity sha512-DplGLZd8L1lN64jlT27N9TVSESFR5STaEJvX+thCby7fuCHonfPpAlodYc3vuUYbDuDec5w8AMP7oCM5TWFsqw==
-
-dom-accessibility-api@^0.5.9:
+dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9:
version "0.5.16"
resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453"
integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==
@@ 4925,15 4673,7 @@ dom-helpers@^3.4.0:
dependencies:
"@babel/runtime" "^7.1.2"
-dom-helpers@^5.0.1:
- version "5.1.3"
- resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.1.3.tgz#7233248eb3a2d1f74aafca31e52c5299cc8ce821"
- integrity sha512-nZD1OtwfWGRBWlpANxacBEZrEuLa16o1nh7YopFWeoF68Zt8GGEmzHu6Xv4F3XaFIC+YXtTLrzgqKxFgLEe4jw==
- dependencies:
- "@babel/runtime" "^7.6.3"
- csstype "^2.6.7"
-
-dom-helpers@^5.2.0:
+dom-helpers@^5.0.1, dom-helpers@^5.2.0:
version "5.2.1"
resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==
@@ 4967,7 4707,7 @@ domexception@^4.0.0:
dependencies:
webidl-conversions "^7.0.0"
-domhandler@^5.0.1, domhandler@^5.0.2:
+domhandler@^5.0.2, domhandler@^5.0.3:
version "5.0.3"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31"
integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==
@@ 4975,13 4715,13 @@ domhandler@^5.0.1, domhandler@^5.0.2:
domelementtype "^2.3.0"
domutils@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c"
- integrity sha512-z08c1l761iKhDFtfXO04C7kTdPBLi41zwOZl00WS8b5eiaebNpY00HKbztwBq+e3vyqWNwWF3mP9YLUeqIrF+Q==
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e"
+ integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==
dependencies:
dom-serializer "^2.0.0"
domelementtype "^2.3.0"
- domhandler "^5.0.1"
+ domhandler "^5.0.3"
dotenv@^16.0.3:
version "16.1.4"
@@ 5001,19 4741,19 @@ eastasianwidth@^0.2.0:
ee-first@1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
- integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
+ integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
ejs@^3.1.6:
- version "3.1.8"
- resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b"
- integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==
+ version "3.1.9"
+ resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.9.tgz#03c9e8777fe12686a9effcef22303ca3d8eeb361"
+ integrity sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==
dependencies:
jake "^10.8.5"
-electron-to-chromium@^1.4.284:
- version "1.4.330"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.330.tgz#4740378db7160d7210afb29800c74048cdf10a99"
- integrity sha512-PqyefhybrVdjAJ45HaPLtuVaehiSw7C3ya0aad+rvmV53IVyXmYRk3pwIOb2TxTDTnmgQdn46NjMMaysx79/6Q==
+electron-to-chromium@^1.4.428:
+ version "1.4.430"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.430.tgz#52693c812a81800fafb5b312c1a850142e2fc9eb"
+ integrity sha512-FytjTbGwz///F+ToZ5XSeXbbSaXalsVRXsz2mHityI5gfxft7ieW3HqFLkU5V1aIrY42aflICqbmFoDxW10etg==
elliptic@^6.5.3:
version "6.5.4"
@@ 5070,7 4810,7 @@ emojis-list@^3.0.0:
encodeurl@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
- integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
+ integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
end-of-stream@^1.1.0:
version "1.4.4"
@@ 5089,22 4829,22 @@ enhanced-resolve@^4.1.1, enhanced-resolve@^4.5.0:
tapable "^1.0.0"
enhanced-resolve@^5.12.0:
- version "5.13.0"
- resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.13.0.tgz#26d1ecc448c02de997133217b5c1053f34a0a275"
- integrity sha512-eyV8f0y1+bzyfh8xAwW/WTSZpLbjhqc4ne9eGSH4Zo2ejdyiNG9pU6mf9DG8a7+Auk6MFTlNOT4Y2y/9k8GKVg==
+ version "5.15.0"
+ resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#1af946c7d93603eb88e9896cee4904dc012e9c35"
+ integrity sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==
dependencies:
graceful-fs "^4.2.4"
tapable "^2.2.0"
entities@^4.2.0, entities@^4.4.0:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174"
- integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
+ integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
errno@^0.1.3:
- version "0.1.7"
- resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618"
- integrity sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==
+ version "0.1.8"
+ resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f"
+ integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==
dependencies:
prr "~1.0.1"
@@ 5116,43 4856,53 @@ error-ex@^1.3.1:
is-arrayish "^0.2.1"
error-stack-parser@^2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8"
- integrity sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz#229cb01cdbfa84440bfa91876285b94680188286"
+ integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==
dependencies:
- stackframe "^1.1.1"
+ stackframe "^1.3.4"
-es-abstract@^1.18.0-next.1, es-abstract@^1.19.0, es-abstract@^1.19.5, es-abstract@^1.20.4:
- version "1.20.4"
- resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.4.tgz#1d103f9f8d78d4cf0713edcd6d0ed1a46eed5861"
- integrity sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==
+es-abstract@^1.19.0, es-abstract@^1.20.4:
+ version "1.21.2"
+ resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.21.2.tgz#a56b9695322c8a185dc25975aa3b8ec31d0e7eff"
+ integrity sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==
dependencies:
+ array-buffer-byte-length "^1.0.0"
+ available-typed-arrays "^1.0.5"
call-bind "^1.0.2"
+ es-set-tostringtag "^2.0.1"
es-to-primitive "^1.2.1"
- function-bind "^1.1.1"
function.prototype.name "^1.1.5"
- get-intrinsic "^1.1.3"
+ get-intrinsic "^1.2.0"
get-symbol-description "^1.0.0"
+ globalthis "^1.0.3"
+ gopd "^1.0.1"
has "^1.0.3"
has-property-descriptors "^1.0.0"
+ has-proto "^1.0.1"
has-symbols "^1.0.3"
- internal-slot "^1.0.3"
+ internal-slot "^1.0.5"
+ is-array-buffer "^3.0.2"
is-callable "^1.2.7"
is-negative-zero "^2.0.2"
is-regex "^1.1.4"
is-shared-array-buffer "^1.0.2"
is-string "^1.0.7"
+ is-typed-array "^1.1.10"
is-weakref "^1.0.2"
- object-inspect "^1.12.2"
+ object-inspect "^1.12.3"
object-keys "^1.1.1"
object.assign "^4.1.4"
regexp.prototype.flags "^1.4.3"
safe-regex-test "^1.0.0"
- string.prototype.trimend "^1.0.5"
- string.prototype.trimstart "^1.0.5"
+ string.prototype.trim "^1.2.7"
+ string.prototype.trimend "^1.0.6"
+ string.prototype.trimstart "^1.0.6"
+ typed-array-length "^1.0.4"
unbox-primitive "^1.0.2"
+ which-typed-array "^1.1.9"
-es-get-iterator@^1.1.2:
+es-get-iterator@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz#3ef87523c5d464d41084b2c3c9c214f1199763d6"
integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==
@@ 5167,6 4917,15 @@ es-get-iterator@^1.1.2:
isarray "^2.0.5"
stop-iteration-iterator "^1.0.0"
+es-set-tostringtag@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz#338d502f6f674301d710b80c8592de8a15f09cd8"
+ integrity sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==
+ dependencies:
+ get-intrinsic "^1.1.3"
+ has "^1.0.3"
+ has-tostringtag "^1.0.0"
+
es-shim-unscopables@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz#702e632193201e3edf8713635d083d378e510241"
@@ 5191,12 4950,12 @@ escalade@^3.1.1:
escape-html@^1.0.3, escape-html@~1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
- integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=
+ integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
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 sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
+ integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
escape-string-regexp@^2.0.0:
version "2.0.0"
@@ 5249,19 5008,19 @@ eslint-import-resolver-typescript@^3.5.5:
synckit "^0.8.5"
eslint-module-utils@^2.7.4:
- version "2.7.4"
- resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz#4f3e41116aaf13a20792261e61d3a2e7e0583974"
- integrity sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz#e439fee65fc33f6bba630ff621efc38ec0375c49"
+ integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==
dependencies:
debug "^3.2.7"
eslint-plugin-formatjs@^4.10.1:
- version "4.10.1"
- resolved "https://registry.yarnpkg.com/eslint-plugin-formatjs/-/eslint-plugin-formatjs-4.10.1.tgz#c67184ac54188dcad84d6541e6b5467248ab6550"
- integrity sha512-sD3GGdfDQqiaW8TgbUD4lrUR+raIgusPzW+0v+iN36QzkHvpg5L0UZGFQE9GWtgnWfXAndb57UpgB0i/CF2G7w==
+ version "4.10.3"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-formatjs/-/eslint-plugin-formatjs-4.10.3.tgz#65882730aebee3c8b6eec06381a4b0a18c0d33bd"
+ integrity sha512-EHKuEMCmWhAiMdCc8oZU8qBAvnvHPUiJuhGxPqA+GX2Nb7GBsGm2o616KYnSSffDisK+v0E9TDCrS8oJ0QLgcw==
dependencies:
- "@formatjs/icu-messageformat-parser" "2.4.0"
- "@formatjs/ts-transformer" "3.13.1"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
+ "@formatjs/ts-transformer" "3.13.3"
"@types/eslint" "7 || 8"
"@types/picomatch" "^2.3.0"
"@typescript-eslint/typescript-estree" "5.59.0"
@@ 5294,9 5053,9 @@ eslint-plugin-import@~2.27.5:
tsconfig-paths "^3.14.1"
eslint-plugin-jsdoc@^46.1.0:
- version "46.1.0"
- resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.1.0.tgz#3ff932b70bc25f3745049f525a789faed7c948da"
- integrity sha512-NpjpSuWR+Wwxzmssji7AVty1Vu0JvI7v+cTj+Rw1nKVjGv2eMvLGM/SI4VpgTXp82JbLtFOsA2QYLHT3YSmASA==
+ version "46.2.6"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.2.6.tgz#f25590d371859f20691d65b5dcd4cbe370d65564"
+ integrity sha512-zIaK3zbSrKuH12bP+SPybPgcHSM6MFzh3HFeaODzmsF1N8C1l8dzJ22cW1aq4g0+nayU1VMjmNf7hg0dpShLrA==
dependencies:
"@es-joy/jsdoccomment" "~0.39.4"
are-docs-informative "^0.0.2"
@@ 5304,6 5063,7 @@ eslint-plugin-jsdoc@^46.1.0:
debug "^4.3.4"
escape-string-regexp "^4.0.0"
esquery "^1.5.0"
+ is-builtin-module "^3.2.1"
semver "^7.5.1"
spdx-expression-parse "^3.0.1"
@@ 5397,15 5157,15 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1:
integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==
eslint@^8.41.0:
- version "8.41.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.41.0.tgz#3062ca73363b4714b16dbc1e60f035e6134b6f1c"
- integrity sha512-WQDQpzGBOP5IrXPo4Hc0814r4/v2rrIsB0rhT7jtunIalgg6gYXWhRMOejVO8yH21T/FGaxjmFjBMNqcIlmH1Q==
+ version "8.42.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.42.0.tgz#7bebdc3a55f9ed7167251fe7259f75219cade291"
+ integrity sha512-ulg9Ms6E1WPf67PHaEY4/6E2tEn5/f7FXGzr3t9cBMugOmf1INYvuUwwh1aXQN4MfJ6a5K2iNwP3w4AColvI9A==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.4.0"
"@eslint/eslintrc" "^2.0.3"
- "@eslint/js" "8.41.0"
- "@humanwhocodes/config-array" "^0.11.8"
+ "@eslint/js" "8.42.0"
+ "@humanwhocodes/config-array" "^0.11.10"
"@humanwhocodes/module-importer" "^1.0.1"
"@nodelib/fs.walk" "^1.2.8"
ajv "^6.10.0"
@@ 5492,7 5252,7 @@ esutils@^2.0.2:
etag@~1.8.1:
version "1.8.1"
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
- integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
+ integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
event-target-shim@^5.0.0:
version "5.0.1"
@@ 5509,12 5269,10 @@ events@^3.0.0, events@^3.3.0:
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
-eventsource@^1.0.7:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.1.1.tgz#4544a35a57d7120fba4fa4c86cb4023b2c09df2f"
- integrity sha512-qV5ZC0h7jYIAOhArFJgSfdyz6rALJyb270714o7ZtNnw2WSJ+eexhKtE0O8LYPRsHZHf2osHKZBxGPvm3kPkCA==
- dependencies:
- original "^1.0.0"
+eventsource@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-2.0.2.tgz#76dfcc02930fb2ff339520b6d290da573a9e8508"
+ integrity sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==
evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
version "1.0.3"
@@ 5575,12 5333,12 @@ exif-js@^2.3.0:
exit@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
- integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=
+ integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
expand-brackets@^2.1.4:
version "2.1.4"
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622"
- integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI=
+ integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==
dependencies:
debug "^2.3.3"
define-property "^0.2.5"
@@ 5593,7 5351,7 @@ expand-brackets@^2.1.4:
expand-tilde@^2.0.0, expand-tilde@^2.0.2:
version "2.0.2"
resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502"
- integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=
+ integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==
dependencies:
homedir-polyfill "^1.0.1"
@@ 5648,14 5406,14 @@ express@^4.17.1, express@^4.18.2:
extend-shallow@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
- integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=
+ integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==
dependencies:
is-extendable "^0.1.0"
extend-shallow@^3.0.0, extend-shallow@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8"
- integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=
+ integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==
dependencies:
assign-symbols "^1.0.0"
is-extendable "^1.0.1"
@@ 5680,9 5438,9 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
fast-diff@^1.1.2:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03"
- integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0"
+ integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==
fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.9:
version "3.2.12"
@@ 5703,7 5461,7 @@ fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0:
fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
- integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
+ integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
fastest-levenshtein@^1.0.16:
version "1.0.16"
@@ 5722,17 5480,17 @@ favico.js@^0.3.10:
resolved "https://registry.yarnpkg.com/favico.js/-/favico.js-0.3.10.tgz#80586e27a117f24a8d51c18a99bdc714d4339301"
integrity sha1-gFhuJ6EX8kqNUcGKmb3HFNQzkwE=
-faye-websocket@^0.11.3:
- version "0.11.3"
- resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e"
- integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==
+faye-websocket@^0.11.3, faye-websocket@^0.11.4:
+ version "0.11.4"
+ resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da"
+ integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==
dependencies:
websocket-driver ">=0.5.1"
fb-watchman@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85"
- integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c"
+ integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==
dependencies:
bser "2.1.1"
@@ 5761,7 5519,7 @@ file-uri-to-path@1.0.0:
resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
-filelist@^1.0.1:
+filelist@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5"
integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==
@@ 5771,7 5529,7 @@ filelist@^1.0.1:
fill-range@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7"
- integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=
+ integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==
dependencies:
extend-shallow "^2.0.1"
is-number "^3.0.0"
@@ 5799,9 5557,9 @@ finalhandler@1.2.0:
unpipe "~1.0.0"
find-cache-dir@^3.3.1:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880"
- integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==
+ 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"
@@ 5854,9 5612,9 @@ flat-cache@^3.0.4:
rimraf "^3.0.2"
flatted@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.0.tgz#a5d06b4a8b01e3a63771daa5cb7a1903e2e57067"
- integrity sha512-tW+UkmtNg/jv9CSofAKvgVcO7c2URjhTdW1ZTkcAritblu8tajiYy7YisnIflEwtKssCtOxpnBRoCB7iap0/TA==
+ version "3.2.7"
+ resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787"
+ integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==
follow-redirects@^1.0.0, follow-redirects@^1.15.0:
version "1.15.2"
@@ 5866,7 5624,7 @@ follow-redirects@^1.0.0, follow-redirects@^1.15.0:
font-awesome@^4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133"
- integrity sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=
+ integrity sha512-U6kGnykA/6bFmg1M/oT9EkFeIYv7JlX3bozwQJWiiLz6L0w3F5vBVPxHlwyX/vtNq1ckcpRKOB9f2Qal/VtFpg==
for-each@^0.3.3:
version "0.3.3"
@@ 5878,7 5636,7 @@ for-each@^0.3.3:
for-in@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
- integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=
+ integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==
foreground-child@^3.1.0:
version "3.1.1"
@@ 5910,14 5668,14 @@ fraction.js@^4.2.0:
fragment-cache@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19"
- integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=
+ integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==
dependencies:
map-cache "^0.2.2"
fresh@0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
- integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
+ integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
fs-extra@^9.0.1:
version "9.1.0"
@@ 5939,7 5697,7 @@ fs-minipass@^2.0.0:
fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
+ integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
fsevents@^1.2.7:
version "1.2.13"
@@ 5949,7 5707,7 @@ fsevents@^1.2.7:
bindings "^1.5.0"
nan "^2.12.1"
-fsevents@^2.3.2, fsevents@~2.3.1, fsevents@~2.3.2:
+fsevents@^2.3.2, fsevents@~2.3.2:
version "2.3.2"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
@@ 5969,7 5727,7 @@ function.prototype.name@^1.1.5:
es-abstract "^1.19.0"
functions-have-names "^1.2.2"
-functions-have-names@^1.2.2:
+functions-have-names@^1.2.2, functions-have-names@^1.2.3:
version "1.2.3"
resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834"
integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==
@@ 5980,15 5738,15 @@ fuzzysort@^2.0.4:
integrity sha512-Api1mJL+Ad7W7vnDZnWq5pGaXJjyencT+iKGia2PlHUcSsSzWwIQ3S1isiMpwpavjYtGd2FzhUIhnnhOULZgDw==
gauge@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/gauge/-/gauge-5.0.0.tgz#e270ca9d97dae84abf64e5277ef1ebddc7dd1e2f"
- integrity sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/gauge/-/gauge-5.0.1.tgz#1efc801b8ff076b86ef3e9a7a280a975df572112"
+ integrity sha512-CmykPMJGuNan/3S4kZOpvvPYSNqSHANiWnh9XcMU2pSjtBfF0XzZ2p1bFAxTbnFxyBuPxQYHhzwaoOmUdqzvxQ==
dependencies:
aproba "^1.0.3 || ^2.0.0"
color-support "^1.1.3"
console-control-strings "^1.1.0"
has-unicode "^2.0.1"
- signal-exit "^3.0.7"
+ signal-exit "^4.0.1"
string-width "^4.2.3"
strip-ansi "^6.0.1"
wide-align "^1.1.5"
@@ 6008,13 5766,14 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5:
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.3.tgz#063c84329ad93e83893c7f4f243ef63ffa351385"
- integrity sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==
+get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.1.tgz#d295644fed4505fc9cde952c37ee12b477a83d82"
+ integrity sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==
dependencies:
function-bind "^1.1.1"
has "^1.0.3"
+ has-proto "^1.0.1"
has-symbols "^1.0.3"
get-own-enumerable-property-symbols@^3.0.0:
@@ 6048,24 5807,26 @@ get-symbol-description@^1.0.0:
get-intrinsic "^1.1.1"
get-tsconfig@^4.5.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.5.0.tgz#6d52d1c7b299bd3ee9cd7638561653399ac77b0f"
- integrity sha512-MjhiaIWCJ1sAU4pIQ5i5OfOuHHxVo1oYeNsWTON7jxYkod8pHocXeh+SSbmu5OZZZK73B6cbJ2XADzXehLyovQ==
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.6.0.tgz#e977690993a42f3e320e932427502a40f7af6d05"
+ integrity sha512-lgbo68hHTQnFddybKbbs/RDRJnJT5YyGy2kQzVwbq+g67X73i+5MVTval34QxGkOe9X5Ujf1UYpCaphLyltjEg==
+ dependencies:
+ resolve-pkg-maps "^1.0.0"
get-value@^2.0.3, get-value@^2.0.6:
version "2.0.6"
resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
- integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
+ integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==
glob-parent@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
- integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=
+ integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==
dependencies:
is-glob "^3.1.0"
path-dirname "^1.0.0"
-glob-parent@^5.1.2, glob-parent@~5.1.0:
+glob-parent@^5.1.2, glob-parent@~5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
@@ 6080,9 5841,9 @@ glob-parent@^6.0.2:
is-glob "^4.0.3"
glob@^10.2.5, glob@^10.2.6:
- version "10.2.6"
- resolved "https://registry.yarnpkg.com/glob/-/glob-10.2.6.tgz#1e27edbb3bbac055cb97113e27a066c100a4e5e1"
- integrity sha512-U/rnDpXJGF414QQQZv5uVsabTVxMSwzS5CH0p3DRCIV6ownl4f7PzGnkGmvlum2wB+9RlJWJZ6ACU1INnBqiPA==
+ version "10.2.7"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-10.2.7.tgz#9dd2828cd5bc7bd861e7738d91e7113dda41d7d8"
+ integrity sha512-jTKehsravOJo8IJxUGfZILnkvVJM/MOfHRs8QcXolVef2zNI9Tqyy5+SeuOAZd3upViEZQLyFpQhYiHLrMUNmA==
dependencies:
foreground-child "^3.1.0"
jackspeak "^2.0.3"
@@ 6091,14 5852,14 @@ glob@^10.2.5, glob@^10.2.6:
path-scurry "^1.7.0"
glob@^7.0.3, glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
- integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
+ version "7.2.3"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
+ integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
dependencies:
fs.realpath "^1.0.0"
inflight "^1.0.4"
inherits "2"
- minimatch "^3.0.4"
+ minimatch "^3.1.1"
once "^1.3.0"
path-is-absolute "^1.0.0"
@@ 6121,7 5882,7 @@ global-modules@^2.0.0:
global-prefix@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe"
- integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=
+ integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==
dependencies:
expand-tilde "^2.0.2"
homedir-polyfill "^1.0.1"
@@ 6150,6 5911,13 @@ globals@^13.19.0:
dependencies:
type-fest "^0.20.2"
+globalthis@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf"
+ integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==
+ dependencies:
+ define-properties "^1.1.3"
+
globby@^11.1.0:
version "11.1.0"
resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
@@ 6176,7 5944,7 @@ globby@^13.1.3:
globby@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c"
- integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=
+ integrity sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==
dependencies:
array-union "^1.0.1"
glob "^7.0.3"
@@ 6196,12 5964,7 @@ gopd@^1.0.1:
dependencies:
get-intrinsic "^1.1.3"
-graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.9:
- version "4.2.9"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96"
- integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==
-
-graceful-fs@^4.2.4:
+graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.9:
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==
@@ 6233,7 5996,7 @@ hard-rejection@^2.1.0:
resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883"
integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==
-has-bigints@^1.0.2:
+has-bigints@^1.0.1, has-bigints@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa"
integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==
@@ 6241,7 6004,7 @@ has-bigints@^1.0.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 sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
+ integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
has-flag@^4.0.0:
version "4.0.0"
@@ 6255,6 6018,11 @@ has-property-descriptors@^1.0.0:
dependencies:
get-intrinsic "^1.1.1"
+has-proto@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.1.tgz#1885c1305538958aff469fef37937c22795408e0"
+ integrity sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==
+
has-symbols@^1.0.2, has-symbols@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
@@ 6270,12 6038,12 @@ has-tostringtag@^1.0.0:
has-unicode@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
- integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
+ integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==
has-value@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f"
- integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=
+ integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==
dependencies:
get-value "^2.0.3"
has-values "^0.1.4"
@@ 6284,7 6052,7 @@ has-value@^0.3.1:
has-value@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177"
- integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=
+ integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==
dependencies:
get-value "^2.0.6"
has-values "^1.0.0"
@@ 6293,12 6061,12 @@ has-value@^1.0.0:
has-values@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771"
- integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E=
+ integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==
has-values@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f"
- integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=
+ integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==
dependencies:
is-number "^3.0.0"
kind-of "^4.0.0"
@@ 6342,7 6110,7 @@ history@^4.10.1, history@^4.7.2:
hmac-drbg@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
- integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=
+ integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==
dependencies:
hash.js "^1.0.3"
minimalistic-assert "^1.0.0"
@@ 6382,7 6150,7 @@ hosted-git-info@^4.0.1:
hpack.js@^2.1.6:
version "2.1.6"
resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2"
- integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=
+ integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==
dependencies:
inherits "^2.0.1"
obuf "^1.0.0"
@@ 6397,9 6165,9 @@ html-encoding-sniffer@^3.0.0:
whatwg-encoding "^2.0.0"
html-entities@^1.3.1:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44"
- integrity sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.4.0.tgz#cfbd1b01d2afaf9adca1b10ae7dffab98c71d2dc"
+ integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==
html-escaper@^2.0.0:
version "2.0.2"
@@ 6414,7 6182,7 @@ html-tags@^3.3.1:
http-deceiver@^1.2.7:
version "1.2.7"
resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87"
- integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=
+ integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==
http-errors@2.0.0:
version "2.0.0"
@@ 6430,7 6198,7 @@ http-errors@2.0.0:
http-errors@~1.6.2:
version "1.6.3"
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d"
- integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=
+ integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==
dependencies:
depd "~1.1.2"
inherits "2.0.3"
@@ 6443,9 6211,9 @@ http-link-header@^1.1.1:
integrity sha512-mW3N/rTYpCn99s1do0zx6nzFZSwLH9HGfUM4ZqLWJ16ylmYaC2v5eYGqrNTQlByx8AzUgGI+V/32gXPugs1+Sw==
http-parser-js@>=0.5.1:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.3.tgz#01d2709c79d41698bb01d4decc5e9da4e4a033d9"
- integrity sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==
+ version "0.5.8"
+ resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3"
+ integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==
http-proxy-agent@^5.0.0:
version "5.0.0"
@@ 6478,7 6246,7 @@ http-proxy@^1.17.0:
https-browserify@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
- integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
+ integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==
https-proxy-agent@^5.0.1:
version "5.0.1"
@@ 6528,9 6296,9 @@ idb-keyval@^3.2.0:
integrity sha512-slx8Q6oywCCSfKgPgL0sEsXtPVnSbTLWpyiDcu6msHOyKOLari1TD1qocXVCft80umnkk3/Qqh3lwoFt8T/BPQ==
idb@^7.0.1:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/idb/-/idb-7.0.2.tgz#7a067e20dd16539938e456814b7d714ba8db3892"
- integrity sha512-jjKrT1EnyZewQ/gCBb/eyiYrhGzws2FeY92Yx8qT9S9GeQAmo4JFVIiWRIfKW/6Ob9A+UDAOW9j9jn58fy2HIg==
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/idb/-/idb-7.1.1.tgz#d910ded866d32c7ced9befc5bfdf36f572ced72b"
+ integrity sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==
ieee754@^1.1.4, ieee754@^1.2.1:
version "1.2.1"
@@ 6557,7 6325,7 @@ immutable@^4.0.0, immutable@^4.0.0-rc.1, immutable@^4.3.0:
resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.3.0.tgz#eb1738f14ffb39fd068b1dbe1296117484dd34be"
integrity sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==
-import-fresh@^3.0.0, import-fresh@^3.1.0, import-fresh@^3.2.1:
+import-fresh@^3.0.0, import-fresh@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
@@ 6579,9 6347,9 @@ import-local@^2.0.0:
resolve-cwd "^2.0.0"
import-local@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6"
- integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4"
+ integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==
dependencies:
pkg-dir "^4.2.0"
resolve-cwd "^3.0.0"
@@ 6599,7 6367,7 @@ imports-loader@^1.2.0:
imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
- integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
+ integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
indent-string@^4.0.0:
version "4.0.0"
@@ 6614,7 6382,7 @@ infer-owner@^1.0.4:
inflight@^1.0.4:
version "1.0.6"
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
+ integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
dependencies:
once "^1.3.0"
wrappy "1"
@@ 6627,17 6395,17 @@ inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, i
inherits@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1"
- integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=
+ integrity sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==
inherits@2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
- integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
+ integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==
ini@^1.3.4, ini@^1.3.5:
- version "1.3.7"
- resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84"
- integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==
+ version "1.3.8"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
+ integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
internal-ip@^4.3.0:
version "4.3.0"
@@ 6647,21 6415,12 @@ internal-ip@^4.3.0:
default-gateway "^4.2.0"
ipaddr.js "^1.9.0"
-internal-slot@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c"
- integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==
- dependencies:
- get-intrinsic "^1.1.0"
- has "^1.0.3"
- side-channel "^1.0.4"
-
-internal-slot@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.4.tgz#8551e7baf74a7a6ba5f749cfb16aa60722f0d6f3"
- integrity sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==
+internal-slot@^1.0.3, internal-slot@^1.0.4, internal-slot@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz#f2a2ee21f668f8627a4667f309dc0f4fb6674986"
+ integrity sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==
dependencies:
- get-intrinsic "^1.1.3"
+ get-intrinsic "^1.2.0"
has "^1.0.3"
side-channel "^1.0.4"
@@ 6675,14 6434,14 @@ intersection-observer@^0.12.0:
resolved "https://registry.yarnpkg.com/intersection-observer/-/intersection-observer-0.12.2.tgz#4a45349cc0cd91916682b1f44c28d7ec737dc375"
integrity sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==
-intl-messageformat@10.3.5, intl-messageformat@^10.3.5:
- version "10.3.5"
- resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.3.5.tgz#f55684fc663e62616ad59d3a504ea0cac3f267b7"
- integrity sha512-6kPkftF8Jg3XJCkGKa5OD+nYQ+qcSxF4ZkuDdXZ6KGG0VXn+iblJqRFyDdm9VvKcMyC0Km2+JlVQffFM52D0YA==
+intl-messageformat@10.5.0, intl-messageformat@^10.3.5:
+ version "10.5.0"
+ resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-10.5.0.tgz#86d11b15913ac954075b25253f5e669359f89538"
+ integrity sha512-AvojYuOaRb6r2veOKfTVpxH9TrmjSdc5iR9R5RgBwrDZYSmAAFVT+QLbW3C4V7Qsg0OguMp67Q/EoUkxZzXRGw==
dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/fast-memoize" "2.0.1"
- "@formatjs/icu-messageformat-parser" "2.4.0"
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/fast-memoize" "2.2.0"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
tslib "^2.4.0"
invariant@^2.2.2, invariant@^2.2.4:
@@ 6695,12 6454,12 @@ invariant@^2.2.2, invariant@^2.2.4:
ip-regex@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9"
- integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=
+ integrity sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==
ip@^1.1.0, ip@^1.1.5:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
- integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=
+ version "1.1.8"
+ resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48"
+ integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==
ipaddr.js@1.9.1, ipaddr.js@^1.9.0:
version "1.9.1"
@@ 6715,7 6474,7 @@ is-absolute-url@^3.0.3:
is-accessor-descriptor@^0.1.6:
version "0.1.6"
resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6"
- integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=
+ integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==
dependencies:
kind-of "^3.0.2"
@@ 6726,12 6485,7 @@ is-accessor-descriptor@^1.0.0:
dependencies:
kind-of "^6.0.0"
-is-arguments@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.0.4.tgz#3faf966c7cba0ff437fb31f6250082fcf0448cf3"
- integrity sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==
-
-is-arguments@^1.1.1:
+is-arguments@^1.0.4, is-arguments@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"
integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
@@ 6739,29 6493,31 @@ is-arguments@^1.1.1:
call-bind "^1.0.2"
has-tostringtag "^1.0.0"
-is-array-buffer@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.1.tgz#deb1db4fcae48308d54ef2442706c0393997052a"
- integrity sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==
+is-array-buffer@^3.0.1, is-array-buffer@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz#f2653ced8412081638ecb0ebbd0c41c6e0aecbbe"
+ integrity sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==
dependencies:
call-bind "^1.0.2"
- get-intrinsic "^1.1.3"
+ get-intrinsic "^1.2.0"
is-typed-array "^1.1.10"
is-arrayish@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
+ integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
is-bigint@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.2.tgz#ffb381442503235ad245ea89e45b3dbff040ee5a"
- integrity sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3"
+ integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==
+ dependencies:
+ has-bigints "^1.0.1"
is-binary-path@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898"
- integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=
+ integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==
dependencies:
binary-extensions "^1.0.0"
@@ 6773,11 6529,19 @@ is-binary-path@~2.1.0:
binary-extensions "^2.0.0"
is-boolean-object@^1.1.0:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.1.tgz#3c0878f035cb821228d350d2e1e36719716a3de8"
- integrity sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719"
+ integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==
dependencies:
call-bind "^1.0.2"
+ has-tostringtag "^1.0.0"
+
+is-builtin-module@^3.2.1:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169"
+ integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==
+ dependencies:
+ builtin-modules "^3.3.0"
is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
version "1.2.7"
@@ 6785,16 6549,16 @@ is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7:
integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
is-core-module@^2.11.0, is-core-module@^2.5.0, is-core-module@^2.9.0:
- version "2.11.0"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144"
- integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==
+ version "2.12.1"
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd"
+ integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==
dependencies:
has "^1.0.3"
is-data-descriptor@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
- integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=
+ integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==
dependencies:
kind-of "^3.0.2"
@@ 6805,12 6569,7 @@ is-data-descriptor@^1.0.0:
dependencies:
kind-of "^6.0.0"
-is-date-object@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e"
- integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==
-
-is-date-object@^1.0.5:
+is-date-object@^1.0.1, is-date-object@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f"
integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
@@ 6846,14 6605,14 @@ is-docker@^3.0.0:
integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==
is-electron@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/is-electron/-/is-electron-2.2.0.tgz#8943084f09e8b731b3a7a0298a7b5d56f6b7eef0"
- integrity sha512-SpMppC2XR3YdxSzczXReBjqs2zGscWQpBIKqwXYBFic0ERaxNVgwLCHwOLZeESfdJQjX0RDvrJ1lBXX2ij+G1Q==
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/is-electron/-/is-electron-2.2.2.tgz#3778902a2044d76de98036f5dc58089ac4d80bb9"
+ integrity sha512-FO/Rhvz5tuw4MCWkpMzHFKWD2LsfHzIb7i6MdPYZ/KW7AlxawyLkqdy+jPZP1WubqEADE3O4FUENlJHDfQASRg==
is-extendable@^0.1.0, is-extendable@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
- integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=
+ integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==
is-extendable@^1.0.1:
version "1.0.1"
@@ 6870,7 6629,7 @@ is-extglob@^2.1.0, is-extglob@^2.1.1:
is-fullwidth-code-point@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
- integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
+ integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
@@ 6890,7 6649,7 @@ is-generator-fn@^2.0.0:
is-glob@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
- integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=
+ integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==
dependencies:
is-extglob "^2.1.0"
@@ 6916,7 6675,7 @@ is-map@^2.0.1, is-map@^2.0.2:
is-module@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591"
- integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=
+ integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==
is-negative-zero@^2.0.2:
version "2.0.2"
@@ 6924,14 6683,16 @@ is-negative-zero@^2.0.2:
integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
is-number-object@^1.0.4:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.5.tgz#6edfaeed7950cff19afedce9fbfca9ee6dd289eb"
- integrity sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc"
+ integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==
+ dependencies:
+ has-tostringtag "^1.0.0"
is-number@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195"
- integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=
+ integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==
dependencies:
kind-of "^3.0.2"
@@ 6943,7 6704,7 @@ is-number@^7.0.0:
is-obj@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
- integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8=
+ integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==
is-path-cwd@^2.0.0:
version "2.2.0"
@@ 7002,7 6763,7 @@ is-regex@^1.0.4, is-regex@^1.1.4:
is-regexp@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069"
- integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk=
+ integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==
is-set@^2.0.1, is-set@^2.0.2:
version "2.0.2"
@@ 7019,12 6780,12 @@ is-shared-array-buffer@^1.0.2:
is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
- integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
+ integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==
is-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
- integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
+ integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
is-stream@^3.0.0:
version "3.0.0"
@@ 7045,7 6806,7 @@ is-symbol@^1.0.2, is-symbol@^1.0.3:
dependencies:
has-symbols "^1.0.2"
-is-typed-array@^1.1.10:
+is-typed-array@^1.1.10, is-typed-array@^1.1.9:
version "1.1.10"
resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f"
integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==
@@ 7089,7 6850,7 @@ is-windows@^1.0.1, is-windows@^1.0.2:
is-wsl@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
- integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
+ integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==
is-wsl@^2.2.0:
version "2.2.0"
@@ 7101,12 6862,12 @@ is-wsl@^2.2.0:
isarray@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
- integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
+ integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==
isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
- integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
+ integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
isarray@^2.0.5:
version "2.0.5"
@@ 7116,19 6877,19 @@ isarray@^2.0.5:
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
+ integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
isobject@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"
- integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=
+ integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==
dependencies:
isarray "1.0.0"
isobject@^3.0.0, isobject@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
- integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
+ integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
version "3.2.0"
@@ 7136,9 6897,9 @@ istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a"
- integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d"
+ integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==
dependencies:
"@babel/core" "^7.12.3"
"@babel/parser" "^7.14.7"
@@ 7156,40 6917,40 @@ istanbul-lib-report@^3.0.0:
supports-color "^7.1.0"
istanbul-lib-source-maps@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
- integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
+ integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
dependencies:
debug "^4.1.1"
istanbul-lib-coverage "^3.0.0"
source-map "^0.6.1"
istanbul-reports@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.3.tgz#4bcae3103b94518117930d51283690960b50d3c2"
- integrity sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg==
+ version "3.1.5"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae"
+ integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==
dependencies:
html-escaper "^2.0.0"
istanbul-lib-report "^3.0.0"
jackspeak@^2.0.3:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.1.0.tgz#69831fe5346532888f279102f39fc4452ebbe6c2"
- integrity sha512-DiEwVPqsieUzZBNxQ2cxznmFzfg/AMgJUjYw5xl6rSmCxAQXECcbSdwcLM6Ds6T09+SBfSNCGPhYUoQ96P4h7A==
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.2.1.tgz#655e8cf025d872c9c03d3eb63e8f0c024fef16a6"
+ integrity sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==
dependencies:
- cliui "^7.0.4"
+ "@isaacs/cliui" "^8.0.2"
optionalDependencies:
"@pkgjs/parseargs" "^0.11.0"
jake@^10.8.5:
- version "10.8.5"
- resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46"
- integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==
+ version "10.8.7"
+ resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.7.tgz#63a32821177940c33f356e0ba44ff9d34e1c7d8f"
+ integrity sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==
dependencies:
async "^3.2.3"
chalk "^4.0.2"
- filelist "^1.0.1"
- minimatch "^3.0.4"
+ filelist "^1.0.4"
+ minimatch "^3.1.2"
jest-changed-files@^29.5.0:
version "29.5.0"
@@ 7392,9 7153,9 @@ jest-mock@^29.5.0:
jest-util "^29.5.0"
jest-pnp-resolver@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
- integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e"
+ integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==
jest-regex-util@^29.4.3:
version "29.4.3"
@@ 7685,7 7446,7 @@ jsesc@^2.5.1:
jsesc@~0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
- integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=
+ integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==
json-parse-better-errors@^1.0.2:
version "1.0.2"
@@ 7715,7 7476,7 @@ json-schema@^0.4.0:
json-stable-stringify-without-jsonify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
- integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
+ integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
json-stable-stringify@^1.0.1:
version "1.0.2"
@@ 7724,12 7485,7 @@ json-stable-stringify@^1.0.1:
dependencies:
jsonify "^0.0.1"
-json3@^3.3.3:
- version "3.3.3"
- resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.3.tgz#7fc10e375fc5ae42c4705a5cc0aa6f62be305b81"
- integrity sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==
-
-json5@^1.0.1:
+json5@^1.0.1, json5@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593"
integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==
@@ 7756,9 7512,9 @@ jsonify@^0.0.1:
integrity sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==
jsonpointer@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-5.0.0.tgz#f802669a524ec4805fa7389eadbc9921d5dc8072"
- integrity sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg==
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-5.0.1.tgz#2110e0af0900fd37467b5907ecd13a7884a1b559"
+ integrity sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==
"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.3:
version "3.3.3"
@@ 7769,9 7525,9 @@ jsonpointer@^5.0.0:
object.assign "^4.1.3"
keycode@^2.1.7:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.2.0.tgz#3d0af56dc7b8b8e5cba8d0a97f107204eec22b04"
- integrity sha1-PQr1bce4uOXLqNCpfxByBO7CKwQ=
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.2.1.tgz#09c23b2be0611d26117ea2501c2c391a01f39eff"
+ integrity sha512-Rdgz9Hl9Iv4QKi8b0OlCRQEzp4AgVxyCtz5S/+VIHezDmrDhkp2N2TqBWOLz0/gbeREXOOiI9/4b8BY9uw2vFg==
killable@^1.0.1:
version "1.0.1"
@@ 7799,9 7555,9 @@ known-css-properties@^0.27.0:
integrity sha512-uMCj6+hZYDoffuvAJjFAPz56E9uoowFHmTkqRtRq5WyC5Q6Cu/fTZKNQpX/RbzChBYLLl3lo8CjFZBAZXq9qFg==
language-subtag-registry@~0.3.2:
- version "0.3.20"
- resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.20.tgz#a00a37121894f224f763268e431c55556b0c0755"
- integrity sha512-KPMwROklF4tEx283Xw0pNKtfTj1gZ4UByp4EsIFWLgBavJltF4TiYPc39k06zSTsLzxTVXXDSpbwaQXaFB4Qeg==
+ version "0.3.22"
+ resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz#2e1500861b2e457eba7e7ae86877cbd08fa1fd1d"
+ integrity sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==
language-tags@=1.0.5:
version "1.0.5"
@@ 7826,7 7582,7 @@ levn@^0.4.1:
levn@~0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
- integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
+ integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==
dependencies:
prelude-ls "~1.1.2"
type-check "~0.3.2"
@@ 7837,9 7593,9 @@ lilconfig@2.1.0, lilconfig@^2.1.0:
integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==
lines-and-columns@^1.1.6:
- version "1.1.6"
- resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00"
- integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
+ integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
lint-staged@^13.2.2:
version "13.2.2"
@@ 7929,37 7685,37 @@ lockfile@^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 sha1-gteb/zCmfEAF/9XiUVMArZyk168=
+ integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
lodash.get@^4.0:
version "4.4.2"
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
- integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=
+ integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==
lodash.has@^4.0:
version "4.5.2"
resolved "https://registry.yarnpkg.com/lodash.has/-/lodash.has-4.5.2.tgz#d19f4dc1095058cccbe2b0cdf4ee0fe4aa37c862"
- integrity sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=
+ integrity sha512-rnYUdIo6xRCJnQmbVFEwcxF144erlD+M3YcJUVesflU9paQaE8p+fJDcIQrlMYbxoANFL+AB9hZrzSBBk5PL+g==
lodash.isboolean@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6"
- integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=
+ integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==
lodash.isequal@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0"
- integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA=
+ integrity sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==
lodash.isobject@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-3.0.2.tgz#3c8fb8d5b5bf4bf90ae06e14f2a530a4ed935e1d"
- integrity sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=
+ integrity sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA==
lodash.memoize@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
- integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=
+ integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==
lodash.merge@^4.6.2:
version "4.6.2"
@@ 7969,17 7725,17 @@ lodash.merge@^4.6.2:
lodash.sortby@^4.7.0:
version "4.7.0"
resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
- integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=
+ integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==
lodash.truncate@^4.4.2:
version "4.4.2"
resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193"
- integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=
+ integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==
lodash.uniq@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
- integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=
+ integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==
lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.20, lodash@^4.17.21:
version "4.17.21"
@@ 7997,9 7753,9 @@ log-update@^4.0.0:
wrap-ansi "^6.2.0"
loglevel@^1.6.8:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.7.0.tgz#728166855a740d59d38db01cf46f042caa041bb0"
- integrity sha512-i2sY04nal5jDcagM3FMfG++T69GEEM8CYuOfeOIvmXzOIcwE9a/CJPR0MFM97pYMj/u10lzz7/zd7+qwhrBTqQ==
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.8.1.tgz#5c621f83d5b48c54ae93b6156353f555963377b4"
+ integrity sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
version "1.4.0"
@@ 8022,10 7778,10 @@ lru-cache@^6.0.0:
dependencies:
yallist "^4.0.0"
-lru-cache@^9.0.0:
- version "9.0.1"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-9.0.1.tgz#ac061ed291f8b9adaca2b085534bb1d3b61bef83"
- integrity sha512-C8QsKIN1UIXeOs3iWmiZ1lQY+EnKDojWd37fXy1aSbJvH4iSma1uy2OWuoB3m4SYRli5+CUjDv3Dij5DVoetmg==
+lru-cache@^9.1.1:
+ version "9.1.2"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-9.1.2.tgz#255fdbc14b75589d6d0e73644ca167a8db506835"
+ integrity sha512-ERJq3FOzJTxBbFjZ7iDs+NiK4VI9Wz+RdrrAB8dio1oV+YvdPzUEE4QNiT2VD51DkIbCYRUUzCRkssXCHqSnKQ==
lz-string@^1.5.0:
version "1.5.0"
@@ 8063,7 7819,7 @@ makeerror@1.0.12:
map-cache@^0.2.2:
version "0.2.2"
resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
- integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
+ integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==
map-obj@^1.0.0:
version "1.0.1"
@@ 8078,14 7834,14 @@ map-obj@^4.0.0:
map-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
- integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=
+ integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==
dependencies:
object-visit "^1.0.0"
mark-loader@^0.1.6:
version "0.1.6"
resolved "https://registry.yarnpkg.com/mark-loader/-/mark-loader-0.1.6.tgz#0abb477dca7421d70e20128ff6489f5cae8676d5"
- integrity sha1-CrtHfcp0IdcOIBKP9kifXK6GdtU=
+ integrity sha512-eEhrlUX2D44vADzgo2xKTyWTf3vyiGTApvxtOKHx8+CVepdzNXaMZS7cg+LlaigsIACpTEudChSHGE6noDGy/A==
marky@^1.2.5:
version "1.2.5"
@@ 8119,7 7875,7 @@ mdn-data@2.0.30:
media-typer@0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
- integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=
+ integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==
memoize-one@^6.0.0:
version "6.0.0"
@@ 8129,7 7885,7 @@ memoize-one@^6.0.0:
memory-fs@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552"
- integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=
+ integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==
dependencies:
errno "^0.1.3"
readable-stream "^2.0.1"
@@ 8163,7 7919,7 @@ meow@^9.0.0:
merge-descriptors@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
- integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=
+ integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==
merge-stream@^2.0.0:
version "2.0.0"
@@ 8178,7 7934,7 @@ merge2@^1.3.0, merge2@^1.4.1:
methods@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
- integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=
+ integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==
micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
version "3.1.10"
@@ 8233,9 7989,9 @@ mime@1.6.0:
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
mime@^2.4.4:
- version "2.4.7"
- resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.7.tgz#962aed9be0ed19c91fd7dc2ece5d7f4e89a90d74"
- integrity sha512-dhNd1uA2u397uQk3Nv5LM4lm93WYDUXFn3Fu291FJerns4jyTudqhIWe4W04YLy7Uk1tm1Ore04NpjRvQp/NPA==
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
+ integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
mimic-fn@^2.1.0:
version "2.1.0"
@@ 8269,9 8025,9 @@ minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
minimalistic-crypto-utils@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
- integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=
+ integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==
-minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.2:
+minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
version "3.1.2"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
@@ 8279,9 8035,9 @@ minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.2:
brace-expansion "^1.1.7"
minimatch@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.0.1.tgz#fb9022f7528125187c92bd9e9b6366be1cf3415b"
- integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==
+ version "5.1.6"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96"
+ integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==
dependencies:
brace-expansion "^2.0.1"
@@ 8301,10 8057,10 @@ minimist-options@4.1.0:
is-plain-obj "^1.1.0"
kind-of "^6.0.3"
-minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"
- integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==
+minimist@^1.2.0, minimist@^1.2.6:
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
+ integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
minipass-collect@^1.0.2:
version "1.0.2"
@@ 8328,9 8084,9 @@ minipass-pipeline@^1.2.2:
minipass "^3.0.0"
minipass@^3.0.0, minipass@^3.1.1:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd"
- integrity sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==
+ version "3.3.6"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a"
+ integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==
dependencies:
yallist "^4.0.0"
@@ 8360,12 8116,12 @@ mixin-deep@^1.2.0:
for-in "^1.0.2"
is-extendable "^1.0.1"
-mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5:
- version "0.5.5"
- resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
- integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
+mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.6:
+ version "0.5.6"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
+ integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
dependencies:
- minimist "^1.2.5"
+ minimist "^1.2.6"
mkdirp@^1.0, mkdirp@^1.0.3, mkdirp@^1.0.4:
version "1.0.4"
@@ 8390,7 8146,7 @@ mrmime@^1.0.0:
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
- integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
+ integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
ms@2.1.2:
version "2.1.2"
@@ 8405,7 8161,7 @@ ms@2.1.3, ms@^2.1.1:
multicast-dns-service-types@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901"
- integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=
+ integrity sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==
multicast-dns@^6.0.1:
version "6.2.3"
@@ 8416,9 8172,9 @@ multicast-dns@^6.0.1:
thunky "^1.0.2"
nan@^2.12.1:
- version "2.14.1"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01"
- integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw==
+ version "2.17.0"
+ resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb"
+ integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==
nanoid@^3.3.6:
version "3.3.6"
@@ 8450,7 8206,7 @@ natural-compare-lite@^1.4.0:
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
- integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
+ integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
negotiator@0.6.3:
version "0.6.3"
@@ 8468,9 8224,9 @@ nice-try@^1.0.4:
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
node-fetch@^2.6.0:
- version "2.6.7"
- resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"
- integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==
+ version "2.6.11"
+ resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.11.tgz#cde7fc71deef3131ef80a738919f999e6edfff25"
+ integrity sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==
dependencies:
whatwg-url "^5.0.0"
@@ 8480,14 8236,14 @@ node-forge@^0.10.0:
integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==
node-gyp-build@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3"
- integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q==
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.0.tgz#0c52e4cbf54bbd28b709820ef7b6a3c2d6209055"
+ integrity sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==
node-int64@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
- integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=
+ integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
node-libs-browser@^2.2.1:
version "2.2.1"
@@ 8518,10 8274,10 @@ node-libs-browser@^2.2.1:
util "^0.11.0"
vm-browserify "^1.0.1"
-node-releases@^2.0.8:
- version "2.0.10"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f"
- integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==
+node-releases@^2.0.12:
+ version "2.0.12"
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.12.tgz#35627cc224a23bfb06fb3380f2b3afaaa7eb1039"
+ integrity sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==
normalize-package-data@^2.5.0:
version "2.5.0"
@@ 8546,7 8302,7 @@ normalize-package-data@^3.0.0:
normalize-path@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
- integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=
+ integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==
dependencies:
remove-trailing-separator "^1.0.1"
@@ 8558,12 8314,12 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
normalize-range@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
- integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
+ integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==
npm-run-path@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f"
- integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=
+ integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==
dependencies:
path-key "^2.0.0"
@@ 8599,38 8355,30 @@ nth-check@^2.0.1:
boolbase "^1.0.0"
nwsapi@^2.2.2, nwsapi@^2.2.4:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.4.tgz#fd59d5e904e8e1f03c25a7d5a15cfa16c714a1e5"
- integrity sha512-NHj4rzRo0tQdijE9ZqAx6kYDcoRwYwSYzCA8MY3JzfxlrvEU0jhnhJT9BhqhJs7I/dKcrDm6TyulaRqZPIhN5g==
+ version "2.2.5"
+ resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.5.tgz#a52744c61b3889dd44b0a158687add39b8d935e2"
+ integrity sha512-6xpotnECFy/og7tKSBVmUNft7J3jyXAka4XvG6AUhFWRz+Q/Ljus7znJAA3bxColfQLdS+XsjoodtJfCgeTEFQ==
object-assign@^4.0.1, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
+ integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
object-copy@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
- integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw=
+ integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==
dependencies:
copy-descriptor "^0.1.0"
define-property "^0.2.5"
kind-of "^3.0.3"
-object-inspect@^1.12.2, object-inspect@^1.12.3, object-inspect@^1.9.0:
+object-inspect@^1.12.3, object-inspect@^1.9.0:
version "1.12.3"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
-object-is@^1.0.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.3.tgz#2e3b9e65560137455ee3bd62aec4d90a2ea1cc81"
- integrity sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==
- dependencies:
- define-properties "^1.1.3"
- es-abstract "^1.18.0-next.1"
-
-object-is@^1.1.5:
+object-is@^1.0.1, object-is@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac"
integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==
@@ 8646,7 8394,7 @@ object-keys@^1.1.1:
object-visit@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb"
- integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=
+ integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==
dependencies:
isobject "^3.0.0"
@@ 8689,7 8437,7 @@ object.hasown@^1.1.2:
object.pick@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
- integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=
+ integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==
dependencies:
isobject "^3.0.1"
@@ 8702,7 8450,7 @@ object.values@^1.1.6:
define-properties "^1.1.4"
es-abstract "^1.20.4"
-obuf@^1.0.0, obuf@^1.1.2:
+obuf@^1.0.0, obuf@^1.1.2, obuf@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==
@@ 8722,7 8470,7 @@ on-headers@~1.0.2:
once@^1.3.0, once@^1.3.1, once@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
+ integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
dependencies:
wrappy "1"
@@ 8791,22 8539,15 @@ optionator@^0.9.1:
type-check "^0.4.0"
word-wrap "^1.2.3"
-original@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f"
- integrity sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==
- dependencies:
- url-parse "^1.4.3"
-
os-browserify@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27"
- integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=
+ integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
- integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=
+ integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==
p-limit@^2.0.0, p-limit@^2.2.0:
version "2.3.0"
@@ 8908,7 8649,7 @@ parse-json@^5.0.0, parse-json@^5.2.0:
parse-passwd@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
- integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
+ integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==
parse5@^7.0.0, parse5@^7.1.1, parse5@^7.1.2:
version "7.1.2"
@@ 8925,7 8666,7 @@ parseurl@~1.3.2, parseurl@~1.3.3:
pascalcase@^0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14"
- integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=
+ integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==
path-browserify@0.0.1:
version "0.0.1"
@@ 8940,12 8681,12 @@ path-complete-extname@^1.0.0:
path-dirname@^1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
- integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=
+ integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==
path-exists@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
- integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
+ integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==
path-exists@^4.0.0:
version "4.0.0"
@@ 8955,17 8696,17 @@ path-exists@^4.0.0:
path-is-absolute@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
+ integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
path-is-inside@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
- integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=
+ integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==
path-key@^2.0.0, path-key@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
- integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
+ integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==
path-key@^3.0.0, path-key@^3.1.0:
version "3.1.1"
@@ 8983,22 8724,22 @@ path-parse@^1.0.7:
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
path-scurry@^1.7.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.7.0.tgz#99c741a2cfbce782294a39994d63748b5a24f6db"
- integrity sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==
+ version "1.9.2"
+ resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.9.2.tgz#90f9d296ac5e37e608028e28a447b11d385b3f63"
+ integrity sha512-qSDLy2aGFPm8i4rsbHd4MNyTcrzHFsLQykrtbuGRknZZCBBVXSv2tSCDN2Cg6Rt/GFRw8GoW9y9Ecw5rIPG1sg==
dependencies:
- lru-cache "^9.0.0"
- minipass "^5.0.0"
+ lru-cache "^9.1.1"
+ minipass "^5.0.0 || ^6.0.2"
path-to-regexp@0.1.7:
version "0.1.7"
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
- integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
+ integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==
path-to-regexp@^1.7.0:
- version "1.7.0"
- resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d"
- integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=
+ version "1.8.0"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz#887b3ba9d84393e87a0a0b9f4cb756198b53548a"
+ integrity sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==
dependencies:
isarray "0.0.1"
@@ 9008,9 8749,9 @@ path-type@^4.0.0:
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
pbkdf2@^3.0.3:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94"
- integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
+ integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==
dependencies:
create-hash "^1.1.2"
create-hmac "^1.1.4"
@@ 9021,14 8762,19 @@ pbkdf2@^3.0.3:
performance-now@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5"
- integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=
+ integrity sha512-YHk5ez1hmMR5LOkb9iJkLKqoBlL7WD5M8ljC75ZfzXriuBIVNuecaXuU7e+hOwyqf24Wxhh7Vxgt7Hnw9288Tg==
performance-now@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
- integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
+ integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
+
+pg-cloudflare@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.1.0.tgz#833d70870d610d14bf9df7afb40e1cba310c17a0"
+ integrity sha512-tGM8/s6frwuAIyRcJ6nWcIvd3+3NmUKIs6OjviIm1HPPFEt5MzQDOTBQyhPWg/m0kCl95M6gA1JaIXtS8KovOA==
-pg-connection-string@^2.4.0, pg-connection-string@^2.6.0:
+pg-connection-string@^2.6.0:
version "2.6.0"
resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.0.tgz#12a36cc4627df19c25cc1b9b736cc39ee1f73ae8"
integrity sha512-x14ibktcwlHKoHxx9X3uTVW9zIGR41ZB6QNhHb21OPNdCCO3NaRnpJuwKIQSR4u+Yqjx4HCvy7Hh7VSy1U4dGg==
@@ 9038,22 8784,22 @@ pg-int8@1.0.1:
resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c"
integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==
-pg-pool@^3.2.2:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.2.2.tgz#a560e433443ed4ad946b84d774b3f22452694dff"
- integrity sha512-ORJoFxAlmmros8igi608iVEbQNNZlp89diFVx6yV5v+ehmpMY9sK6QgpmgoXbmkNaBAx8cOOZh9g80kJv1ooyA==
+pg-numeric@1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/pg-numeric/-/pg-numeric-1.0.2.tgz#816d9a44026086ae8ae74839acd6a09b0636aa3a"
+ integrity sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==
+
+pg-pool@^3.6.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.6.0.tgz#3190df3e4747a0d23e5e9e8045bcd99bda0a712e"
+ integrity sha512-clFRf2ksqd+F497kWFyM21tMjeikn60oGDmqMT8UBrynEwVEX/5R5xd2sdvdo1cZCFlguORNpVuqxIj+aK4cfQ==
-pg-protocol@*:
+pg-protocol@*, pg-protocol@^1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.6.0.tgz#4c91613c0315349363af2084608db843502f8833"
integrity sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==
-pg-protocol@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.4.0.tgz#43a71a92f6fe3ac559952555aa3335c8cb4908be"
- integrity sha512-El+aXWcwG/8wuFICMQjM5ZSAm6OWiJicFdNYo+VY3QP+8vI4SvLIWVe51PppTzMhikUJR+PsyIFKqfdXPz/yxA==
-
-pg-types@^2.1.0, pg-types@^2.2.0:
+pg-types@^2.1.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-2.2.0.tgz#2d0250d636454f7cfa3b6ae0382fdfa8063254a3"
integrity sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==
@@ 9064,25 8810,40 @@ pg-types@^2.1.0, pg-types@^2.2.0:
postgres-date "~1.0.4"
postgres-interval "^1.1.0"
+pg-types@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/pg-types/-/pg-types-4.0.1.tgz#31857e89d00a6c66b06a14e907c3deec03889542"
+ integrity sha512-hRCSDuLII9/LE3smys1hRHcu5QGcLs9ggT7I/TCs0IE+2Eesxi9+9RWAAwZ0yaGjxoWICF/YHLOEjydGujoJ+g==
+ dependencies:
+ pg-int8 "1.0.1"
+ pg-numeric "1.0.2"
+ postgres-array "~3.0.1"
+ postgres-bytea "~3.0.0"
+ postgres-date "~2.0.1"
+ postgres-interval "^3.0.0"
+ postgres-range "^1.1.1"
+
pg@^8.5.0:
- version "8.5.1"
- resolved "https://registry.yarnpkg.com/pg/-/pg-8.5.1.tgz#34dcb15f6db4a29c702bf5031ef2e1e25a06a120"
- integrity sha512-9wm3yX9lCfjvA98ybCyw2pADUivyNWT/yIP4ZcDVpMN0og70BUWYEGXPCTAQdGTAqnytfRADb7NERrY1qxhIqw==
+ version "8.11.0"
+ resolved "https://registry.yarnpkg.com/pg/-/pg-8.11.0.tgz#a37e534e94b57a7ed811e926f23a7c56385f55d9"
+ integrity sha512-meLUVPn2TWgJyLmy7el3fQQVwft4gU5NGyvV0XbD41iU9Jbg8lCH4zexhIkihDzVHJStlt6r088G6/fWeNjhXA==
dependencies:
buffer-writer "2.0.0"
packet-reader "1.0.0"
- pg-connection-string "^2.4.0"
- pg-pool "^3.2.2"
- pg-protocol "^1.4.0"
+ pg-connection-string "^2.6.0"
+ pg-pool "^3.6.0"
+ pg-protocol "^1.6.0"
pg-types "^2.1.0"
pgpass "1.x"
+ optionalDependencies:
+ pg-cloudflare "^1.1.0"
pgpass@1.x:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.4.tgz#85eb93a83800b20f8057a2b029bf05abaf94ea9c"
- integrity sha512-YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/pgpass/-/pgpass-1.0.5.tgz#9b873e4a564bb10fa7a7dbd55312728d422a223d"
+ integrity sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==
dependencies:
- split2 "^3.1.1"
+ split2 "^4.1.0"
picocolors@^1.0.0:
version "1.0.0"
@@ 9107,7 8868,7 @@ piexifjs@^1.0.6:
pify@^2.0.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
- integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
+ integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
pify@^4.0.1:
version "4.0.1"
@@ 9117,19 8878,19 @@ pify@^4.0.1:
pinkie-promise@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
- integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
+ integrity sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==
dependencies:
pinkie "^2.0.0"
pinkie@^2.0.0:
version "2.0.4"
resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
- integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
+ integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==
pirates@^4.0.4:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.4.tgz#07df81e61028e402735cdd49db701e4885b4e6e6"
- integrity sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw==
+ version "4.0.5"
+ resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
+ integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==
pkg-dir@^3.0.0:
version "3.0.0"
@@ 9146,23 8907,23 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0:
find-up "^4.0.0"
portfinder@^1.0.26:
- version "1.0.28"
- resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778"
- integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==
+ version "1.0.32"
+ resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.32.tgz#2fe1b9e58389712429dc2bea5beb2146146c7f81"
+ integrity sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==
dependencies:
- async "^2.6.2"
- debug "^3.1.1"
- mkdirp "^0.5.5"
+ async "^2.6.4"
+ debug "^3.2.7"
+ mkdirp "^0.5.6"
posix-character-classes@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
- integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
+ integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==
postcss-calc@^9.0.0:
- version "9.0.0"
- resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.0.tgz#cd9b2b155e57c823687eb67c9afcbe97c98ecaa4"
- integrity sha512-B9BNW/SVh4SMJfoCQ6D9h1Wo7Yjqks7UdbiARJ16J5TIsQn5NEqwMF5joSgOYb26oJPUR5Uv3fCQ/4PvmZWeJQ==
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6"
+ integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==
dependencies:
postcss-selector-parser "^6.0.11"
postcss-value-parser "^4.2.0"
@@ 9277,9 9038,9 @@ postcss-modules-extract-imports@^3.0.0:
integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==
postcss-modules-local-by-default@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c"
- integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz#b08eb4f083050708998ba2c6061b50c2870ca524"
+ integrity sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==
dependencies:
icss-utils "^5.0.0"
postcss-selector-parser "^6.0.2"
@@ 9399,10 9160,10 @@ postcss-scss@^4.0.6:
resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-4.0.6.tgz#5d62a574b950a6ae12f2aa89b60d63d9e4432bfd"
integrity sha512-rLDPhJY4z/i4nVFZ27j9GqLxj1pwxE80eAzUNRMXtcpipFYIeowerzBgG3yJhMtObGEXidtIgbUpQ3eLDsf5OQ==
-postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.12, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
- version "6.0.12"
- resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz#2efae5ffab3c8bfb2b7fbf0c426e3bca616c4abb"
- integrity sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==
+postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.13, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5:
+ version "6.0.13"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b"
+ integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==
dependencies:
cssesc "^3.0.0"
util-deprecate "^1.0.2"
@@ 9427,7 9188,7 @@ postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
-postcss@^8.2.15, postcss@^8.4.23, postcss@^8.4.24:
+postcss@^8.2.15, postcss@^8.4.24:
version "8.4.24"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.24.tgz#f714dba9b2284be3cc07dbd2fc57ee4dc972d2df"
integrity sha512-M0RzbcI0sO/XJNucsGjvWU9ERWxb/ytp1w6dKtxTKgixdtQDq4rmx/g8W1hnaheq9jgwL/oyEdH5Bc4WwJKMqg==
@@ 9441,16 9202,33 @@ postgres-array@~2.0.0:
resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-2.0.0.tgz#48f8fce054fbc69671999329b8834b772652d82e"
integrity sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==
+postgres-array@~3.0.1:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/postgres-array/-/postgres-array-3.0.2.tgz#68d6182cb0f7f152a7e60dc6a6889ed74b0a5f98"
+ integrity sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==
+
postgres-bytea@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-1.0.0.tgz#027b533c0aa890e26d172d47cf9ccecc521acd35"
- integrity sha1-AntTPAqokOJtFy1Hz5zOzFIazTU=
+ integrity sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==
+
+postgres-bytea@~3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/postgres-bytea/-/postgres-bytea-3.0.0.tgz#9048dc461ac7ba70a6a42d109221619ecd1cb089"
+ integrity sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==
+ dependencies:
+ obuf "~1.1.2"
postgres-date@~1.0.4:
version "1.0.7"
resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-1.0.7.tgz#51bc086006005e5061c591cee727f2531bf641a8"
integrity sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==
+postgres-date@~2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/postgres-date/-/postgres-date-2.0.1.tgz#638b62e5c33764c292d37b08f5257ecb09231457"
+ integrity sha512-YtMKdsDt5Ojv1wQRvUhnyDJNSr2dGIC96mQVKz7xufp07nfuFONzdaowrMHjlAzY6GDLd4f+LUHHAAM1h4MdUw==
+
postgres-interval@^1.1.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-1.2.0.tgz#b460c82cb1587507788819a06aa0fffdb3544695"
@@ 9458,6 9236,16 @@ postgres-interval@^1.1.0:
dependencies:
xtend "^4.0.0"
+postgres-interval@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/postgres-interval/-/postgres-interval-3.0.0.tgz#baf7a8b3ebab19b7f38f07566c7aab0962f0c86a"
+ integrity sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==
+
+postgres-range@^1.1.1:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/postgres-range/-/postgres-range-1.1.3.tgz#9ccd7b01ca2789eb3c2e0888b3184225fa859f76"
+ integrity sha512-VdlZoocy5lCP0c/t66xAfclglEapXPCIVhqqJRncYpvbCgImF0w67aPKfbqUMr72tO2k5q0TdTZwCLjPTI6C9g==
+
prelude-ls@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
@@ 9466,7 9254,7 @@ prelude-ls@^1.2.1:
prelude-ls@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
- integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
+ integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==
prettier-linter-helpers@^1.0.0:
version "1.0.0"
@@ 9486,12 9274,11 @@ pretty-bytes@^5.3.0, pretty-bytes@^5.4.1:
integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==
pretty-format@^27.0.2:
- version "27.0.2"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.2.tgz#9283ff8c4f581b186b2d4da461617143dca478a4"
- integrity sha512-mXKbbBPnYTG7Yra9qFBtqj+IXcsvxsvOBco3QHxtxTl+hHKq6QdzMZ+q0CtL4ORHZgwGImRr2XZUX2EWzORxig==
+ version "27.5.1"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e"
+ integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==
dependencies:
- "@jest/types" "^27.0.2"
- ansi-regex "^5.0.0"
+ ansi-regex "^5.0.1"
ansi-styles "^5.0.0"
react-is "^17.0.1"
@@ 9512,20 9299,20 @@ process-nextick-args@~2.0.0:
process@^0.11.10:
version "0.11.10"
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
- integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI=
+ integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
promise-inflight@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
- integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM=
+ integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==
prompts@^2.0.1:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.2.tgz#480572d89ecf39566d2bd3fe2c9fccb7c4c0b068"
- integrity sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==
+ version "2.4.2"
+ resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
+ integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
dependencies:
kleur "^3.0.3"
- sisteransi "^1.0.4"
+ sisteransi "^1.0.5"
prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1:
version "15.8.1"
@@ 9552,12 9339,12 @@ proxy-from-env@^1.1.0:
prr@~1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
- integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY=
+ integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==
psl@^1.1.33:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
- integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
+ integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==
public-encrypt@^4.0.0:
version "4.0.3"
@@ 9579,15 9366,10 @@ pump@^3.0.0:
end-of-stream "^1.1.0"
once "^1.3.1"
-punycode@1.3.2:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
- integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
-
-punycode@1.4.1, punycode@^1.2.4:
+punycode@1.4.1, punycode@^1.2.4, punycode@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
- integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
+ integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==
punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.0:
version "2.3.0"
@@ 9595,9 9377,9 @@ punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.0:
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
pure-rand@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.0.tgz#701996ceefa253507923a0e864c17ab421c04a7c"
- integrity sha512-rLSBxJjP+4DQOgcJAx6RZHT2he2pkhQdSnofG5VWyVl6GRq/K02ISOuOLcsMOrtKDIJb8JN2zm3FFzWNbezdPw==
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.2.tgz#a9c2ddcae9b68d736a8163036f088a2781c8b306"
+ integrity sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==
qs@6.11.0:
version "6.11.0"
@@ 9606,15 9388,17 @@ qs@6.11.0:
dependencies:
side-channel "^1.0.4"
+qs@^6.11.0:
+ version "6.11.2"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9"
+ integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==
+ dependencies:
+ side-channel "^1.0.4"
+
querystring-es3@^0.2.0:
version "0.2.1"
resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73"
- integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=
-
-querystring@0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620"
- integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=
+ integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==
querystringify@^2.1.1:
version "2.2.0"
@@ 9686,9 9470,9 @@ react-event-listener@^0.6.0:
warning "^4.0.1"
react-fast-compare@^3.1.1:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.0.tgz#641a9da81b6a6320f270e89724fb45a0b39e43bb"
- integrity sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49"
+ integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==
react-helmet@^6.1.0:
version "6.1.0"
@@ 9703,7 9487,7 @@ react-helmet@^6.1.0:
react-hotkeys@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/react-hotkeys/-/react-hotkeys-1.1.4.tgz#a0712aa2e0c03a759fd7885808598497a4dace72"
- integrity sha1-oHEqouDAOnWf14hYCFmEl6TaznI=
+ integrity sha512-TI7YEZXl3ChOfq9MO5LohWA809hxs4pbLAPodPdFrvunLa7uk9TlMKpftnChMlAcbiqDrOGAhnGWZCMbNnd65A==
dependencies:
lodash.isboolean "^3.0.3"
lodash.isequal "^4.5.0"
@@ 9724,19 9508,19 @@ react-immutable-pure-component@^2.2.2:
integrity sha512-vkgoMJUDqHZfXXnjVlG3keCxSO/U6WeDQ5/Sl0GK2cH8TOxEzQ5jXqDXHEL/jqk6fsNxV05oH5kD7VNMUE2k+A==
react-intl@^6.4.2:
- version "6.4.2"
- resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-6.4.2.tgz#cf4f49f5f89e66e0975927783d0d270e708314fd"
- integrity sha512-q8QyLZfbyqV3Ifa7vtjRrgfSQPGTR6Fi+u9tP/CuzhUPl9DJEPIrvUFhlBryKtRW2qNASqchaP/79Obip+h6oA==
- dependencies:
- "@formatjs/ecma402-abstract" "1.15.0"
- "@formatjs/icu-messageformat-parser" "2.4.0"
- "@formatjs/intl" "2.7.2"
- "@formatjs/intl-displaynames" "6.3.2"
- "@formatjs/intl-listformat" "7.2.2"
+ version "6.4.4"
+ resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-6.4.4.tgz#14b45ce046bfbb60c0e6d392d8ddc30e9ead5a4f"
+ integrity sha512-/C9Sl/5//ohfkNG6AWlJuf4BhTXsbzyk93K62A4zRhSPANyOGpKZ+fWhN+TLfFd5YjDUHy+exU/09y0w1bO4Xw==
+ dependencies:
+ "@formatjs/ecma402-abstract" "1.17.0"
+ "@formatjs/icu-messageformat-parser" "2.6.0"
+ "@formatjs/intl" "2.9.0"
+ "@formatjs/intl-displaynames" "6.5.0"
+ "@formatjs/intl-listformat" "7.4.0"
"@types/hoist-non-react-statics" "^3.3.1"
"@types/react" "16 || 17 || 18"
hoist-non-react-statics "^3.3.2"
- intl-messageformat "10.3.5"
+ intl-messageformat "10.5.0"
tslib "^2.4.0"
"react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0, react-is@^18.2.0:
@@ 9798,9 9582,9 @@ react-redux-loading-bar@^5.0.4:
react-lifecycles-compat "^3.0.4"
react-redux@^8.0.4:
- version "8.0.7"
- resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.0.7.tgz#b74ef2f7ce2076e354540aa3511d3670c2b62571"
- integrity sha512-1vRQuCQI5Y2uNmrMXg81RXKiBHY3jBzvCvNmZF437O/Z9/pZ+ba2uYHbemYXb3g8rjsacBGo+/wmfrQKzMhJsg==
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.0.tgz#4e147339f00bbaac7196bc42bc99e6fc412846e7"
+ integrity sha512-CtHZzAOxi7GQvTph4dVLWwZHAWUjV2kMEQtk50OrN8z3gKxpWg3Tz7JfDw32N3Rpd7fh02z73cF6yZkK467gbQ==
dependencies:
"@babel/runtime" "^7.12.1"
"@types/hoist-non-react-statics" "^3.3.1"
@@ 9934,9 9718,9 @@ react-toggle@^4.1.3:
classnames "^2.2.5"
react-transition-group@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.3.0.tgz#fea832e386cf8796c58b61874a3319704f5ce683"
- integrity sha512-1qRV1ZuVSdxPlPf4O8t7inxUGpdyO5zG9IoNfJxSO0ImU2A1YWkEQvFPuIPZmMLkg5hYs7vv5mMOyfgSkvAwvw==
+ version "4.4.5"
+ resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1"
+ integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==
dependencies:
"@babel/runtime" "^7.5.5"
dom-helpers "^5.0.1"
@@ 9970,9 9754,9 @@ read-pkg@^5.2.0:
type-fest "^0.6.0"
readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.3.3, readable-stream@^2.3.6:
- version "2.3.7"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
- integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==
+ version "2.3.8"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
+ integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
@@ 9982,19 9766,19 @@ readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.3.3, readable
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
-readable-stream@^3.0.0, readable-stream@^3.0.6, readable-stream@^3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
- integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
+readable-stream@^3.0.6, readable-stream@^3.6.0:
+ version "3.6.2"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
+ integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
dependencies:
inherits "^2.0.3"
string_decoder "^1.1.1"
util-deprecate "^1.0.1"
readable-stream@^4.1.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.2.0.tgz#a7ef523d3b39e4962b0db1a1af22777b10eeca46"
- integrity sha512-gJrBHsaI3lgBoGMW/jHZsQ/o/TIWiu5ENCJG1BB7fuCKzpFM8GaS2UoBVt9NO+oI+3FcrBNbUkl3ilDe09aY4A==
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.4.0.tgz#55ce132d60a988c460d75c631e9ccf6a7229b468"
+ integrity sha512-kDMOq0qLtxV9f/SQv522h8cxZBqNZXuXNyjyezmfAAuribMyVXziljpQ/uQhfE1XLg2/TLTW2DsnoE4VAi/krg==
dependencies:
abort-controller "^3.0.0"
buffer "^6.0.3"
@@ 10010,10 9794,10 @@ readdirp@^2.2.1:
micromatch "^3.1.10"
readable-stream "^2.0.2"
-readdirp@~3.5.0:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e"
- integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==
+readdirp@~3.6.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
+ integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
dependencies:
picomatch "^2.2.1"
@@ 10040,7 9824,7 @@ redis@^4.6.5:
redux-immutable@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/redux-immutable/-/redux-immutable-4.0.0.tgz#3a1a32df66366462b63691f0e1dc35e472bbc9f3"
- integrity sha1-Ohoy32Y2ZGK2NpHw4dw15HK7yfM=
+ integrity sha512-SchSn/DWfGb3oAejd+1hhHx01xUoxY+V7TeK0BKqpkLKiQPVFf7DYzEaKmrEVxsWxielKfSK9/Xq66YyxgR1cg==
redux-thunk@^2.4.2:
version "2.4.2"
@@ 10054,13 9838,6 @@ redux@^4.0.0, redux@^4.2.1:
dependencies:
"@babel/runtime" "^7.9.2"
-regenerate-unicode-properties@^10.0.1:
- version "10.0.1"
- resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56"
- integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==
- dependencies:
- regenerate "^1.4.2"
-
regenerate-unicode-properties@^10.1.0:
version "10.1.0"
resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz#7c3192cab6dd24e21cb4461e5ddd7dd24fa8374c"
@@ 10098,26 9875,14 @@ regex-not@^1.0.0, regex-not@^1.0.2:
extend-shallow "^3.0.2"
safe-regex "^1.1.0"
-regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3:
- version "1.4.3"
- resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac"
- integrity sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==
+regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#fe7ce25e7e4cca8db37b6634c8a2c7009199b9cb"
+ integrity sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==
dependencies:
call-bind "^1.0.2"
- define-properties "^1.1.3"
- functions-have-names "^1.2.2"
-
-regexpu-core@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.1.0.tgz#2f8504c3fd0ebe11215783a41541e21c79942c6d"
- integrity sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==
- dependencies:
- regenerate "^1.4.2"
- regenerate-unicode-properties "^10.0.1"
- regjsgen "^0.6.0"
- regjsparser "^0.8.2"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.0.0"
+ define-properties "^1.2.0"
+ functions-have-names "^1.2.3"
regexpu-core@^5.3.1:
version "5.3.2"
@@ 10131,18 9896,6 @@ regexpu-core@^5.3.1:
unicode-match-property-ecmascript "^2.0.0"
unicode-match-property-value-ecmascript "^2.1.0"
-regjsgen@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d"
- integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==
-
-regjsparser@^0.8.2:
- version "0.8.4"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f"
- integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==
- dependencies:
- jsesc "~0.5.0"
-
regjsparser@^0.9.1:
version "0.9.1"
resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709"
@@ 10153,27 9906,27 @@ regjsparser@^0.9.1:
remove-trailing-separator@^1.0.1:
version "1.1.0"
resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
- integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8=
+ integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==
repeat-element@^1.1.2:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce"
- integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9"
+ integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==
repeat-string@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
- integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
+ integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==
requestidlecallback@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/requestidlecallback/-/requestidlecallback-0.3.0.tgz#6fb74e0733f90df3faa4838f9f6a2a5f9b742ac5"
- integrity sha1-b7dOBzP5DfP6pIOPn2oqX5t0KsU=
+ integrity sha512-TWHFkT7S9p7IxLC5A1hYmAYQx2Eb9w1skrXmQ+dS1URyvR8tenMLl4lHbqEOUnpEYxNKpkVMXUgknVpBZWXXfQ==
require-directory@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
- integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I=
+ integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
require-from-string@^2.0.2:
version "2.0.2"
@@ 10188,12 9941,12 @@ require-main-filename@^2.0.0:
require-package-name@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz#c11e97276b65b8e2923f75dabf5fb2ef0c3841b9"
- integrity sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=
+ integrity sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==
requires-port@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
- integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=
+ integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
reselect@^4.1.8:
version "4.1.8"
@@ 10203,7 9956,7 @@ reselect@^4.1.8:
resolve-cwd@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a"
- integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=
+ integrity sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==
dependencies:
resolve-from "^3.0.0"
@@ 10217,7 9970,7 @@ resolve-cwd@^3.0.0:
resolve-dir@^1.0.0, resolve-dir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
- integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=
+ integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==
dependencies:
expand-tilde "^2.0.0"
global-modules "^1.0.0"
@@ 10225,7 9978,7 @@ resolve-dir@^1.0.0, resolve-dir@^1.0.1:
resolve-from@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
- integrity sha1-six699nWiBvItuZTM17rywoYh0g=
+ integrity sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==
resolve-from@^4.0.0:
version "4.0.0"
@@ 10242,22 9995,27 @@ resolve-pathname@^3.0.0:
resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd"
integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==
+resolve-pkg-maps@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
+ integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
+
resolve-url@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
- integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
+ integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==
resolve.exports@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.0.tgz#c1a0028c2d166ec2fbf7d0644584927e76e7400e"
- integrity sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg==
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800"
+ integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==
-resolve@^1.10.0, resolve@^1.12.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.1:
- version "1.22.1"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
- integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
+resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.1:
+ version "1.22.2"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.2.tgz#0ed0943d4e301867955766c9f3e1ae6d01c6845f"
+ integrity sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==
dependencies:
- is-core-module "^2.9.0"
+ is-core-module "^2.11.0"
path-parse "^1.0.7"
supports-preserve-symlinks-flag "^1.0.0"
@@ 10286,7 10044,7 @@ ret@~0.1.10:
retry@^0.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b"
- integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=
+ integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==
reusify@^1.0.4:
version "1.0.4"
@@ 10338,9 10096,9 @@ rollup-plugin-terser@^7.0.0:
terser "^5.0.0"
rollup@^2.43.1:
- version "2.72.1"
- resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.72.1.tgz#861c94790537b10008f0ca0fbc60e631aabdd045"
- integrity sha512-NTc5UGy/NWFGpSqF1lFY8z9Adri6uhyMLI6LvPAXdBKoPRFhIIiBUpt+Qg2awixqO3xvzSijjhnb4+QEZwJmxA==
+ version "2.79.1"
+ resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7"
+ integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==
optionalDependencies:
fsevents "~2.3.2"
@@ 10364,9 10122,9 @@ run-parallel@^1.1.9:
queue-microtask "^1.2.2"
rxjs@^7.8.0:
- version "7.8.0"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz#90a938862a82888ff4c7359811a595e14e1e09a4"
- integrity sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==
+ version "7.8.1"
+ resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543"
+ integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==
dependencies:
tslib "^2.1.0"
@@ 10375,7 10133,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0:
+safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.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==
@@ 10392,7 10150,7 @@ safe-regex-test@^1.0.0:
safe-regex@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e"
- integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4=
+ integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==
dependencies:
ret "~0.1.10"
@@ 10413,9 10171,9 @@ sass-loader@^10.2.0:
semver "^7.3.2"
sass@^1.62.1:
- version "1.62.1"
- resolved "https://registry.yarnpkg.com/sass/-/sass-1.62.1.tgz#caa8d6bf098935bc92fc73fa169fb3790cacd029"
- integrity sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==
+ version "1.63.4"
+ resolved "https://registry.yarnpkg.com/sass/-/sass-1.63.4.tgz#caf60643321044c61f6a0fe638a07abbd31cfb5d"
+ integrity sha512-Sx/+weUmK+oiIlI+9sdD0wZHsqpbgQg8wSwSnGBjwb5GwqFhYNwwnI+UWZtLjKvKyFlKkatRK235qQ3mokyPoQ==
dependencies:
chokidar ">=3.0.0 <4.0.0"
immutable "^4.0.0"
@@ 10453,19 10211,10 @@ schema-utils@^2.6.5:
ajv "^6.12.4"
ajv-keywords "^3.5.2"
-schema-utils@^3.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef"
- integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==
- dependencies:
- "@types/json-schema" "^7.0.6"
- ajv "^6.12.5"
- ajv-keywords "^3.5.2"
-
-schema-utils@^3.0.0:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.2.tgz#36c10abca6f7577aeae136c804b0c741edeadc99"
- integrity sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==
+schema-utils@^3.0, schema-utils@^3.0.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"
@@ 10482,12 10231,12 @@ scroll-behavior@^0.9.1:
select-hose@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
- integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=
+ integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==
selfsigned@^1.10.8:
- version "1.10.8"
- resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.8.tgz#0d17208b7d12c33f8eac85c41835f27fc3d81a30"
- integrity sha512-2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w==
+ version "1.10.14"
+ resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.14.tgz#ee51d84d9dcecc61e07e4aba34f229ab525c1574"
+ integrity sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==
dependencies:
node-forge "^0.10.0"
@@ 10544,7 10293,7 @@ serialize-javascript@^5.0.1:
serve-index@^1.9.1:
version "1.9.1"
resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
- integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=
+ integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==
dependencies:
accepts "~1.3.4"
batch "0.6.1"
@@ 10567,7 10316,7 @@ serve-static@1.15.0:
set-blocking@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7"
- integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc=
+ integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==
set-value@^2.0.0, set-value@^2.0.1:
version "2.0.1"
@@ 10582,7 10331,7 @@ set-value@^2.0.0, set-value@^2.0.1:
setimmediate@^1.0.4:
version "1.0.5"
resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
- integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
+ integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==
setprototypeof@1.1.0:
version "1.1.0"
@@ 10617,7 10366,7 @@ shallow-equal@^1.2.1:
shebang-command@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
- integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=
+ integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==
dependencies:
shebang-regex "^1.0.0"
@@ 10631,7 10380,7 @@ shebang-command@^2.0.0:
shebang-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
- integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
+ integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==
shebang-regex@^3.0.0:
version "3.0.0"
@@ 10653,9 10402,9 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7:
integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
signal-exit@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.0.1.tgz#96a61033896120ec9335d96851d902cc98f0ba2a"
- integrity sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.0.2.tgz#ff55bb1d9ff2114c13b400688fa544ac63c36967"
+ integrity sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==
sirv@^1.0.7:
version "1.0.19"
@@ 10666,7 10415,7 @@ sirv@^1.0.7:
mrmime "^1.0.0"
totalist "^1.0.0"
-sisteransi@^1.0.4:
+sisteransi@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
@@ 10738,24 10487,23 @@ snapdragon@^0.8.1:
use "^3.1.0"
sockjs-client@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.5.0.tgz#2f8ff5d4b659e0d092f7aba0b7c386bd2aa20add"
- integrity sha512-8Dt3BDi4FYNrCFGTL/HtwVzkARrENdwOUf1ZoW/9p3M8lZdFT35jVdrHza+qgxuG9H3/shR4cuX/X9umUrjP8Q==
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.6.1.tgz#350b8eda42d6d52ddc030c39943364c11dcad806"
+ integrity sha512-2g0tjOR+fRs0amxENLi/q5TiJTqY+WXFOzb5UwXndlK6TO3U/mirZznpx6w34HVMoc3g7cY24yC/ZMIYnDlfkw==
dependencies:
- debug "^3.2.6"
- eventsource "^1.0.7"
- faye-websocket "^0.11.3"
+ debug "^3.2.7"
+ eventsource "^2.0.2"
+ faye-websocket "^0.11.4"
inherits "^2.0.4"
- json3 "^3.3.3"
- url-parse "^1.4.7"
+ url-parse "^1.5.10"
sockjs@^0.3.21:
- version "0.3.21"
- resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.21.tgz#b34ffb98e796930b60a0cfa11904d6a339a7d417"
- integrity sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==
+ version "0.3.24"
+ resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce"
+ integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==
dependencies:
faye-websocket "^0.11.3"
- uuid "^3.4.0"
+ uuid "^8.3.2"
websocket-driver "^0.7.4"
source-list-map@^2.0.0:
@@ 10796,19 10544,19 @@ source-map-support@~0.5.20:
source-map "^0.6.0"
source-map-url@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
- integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56"
+ integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==
source-map@0.5.6:
version "0.5.6"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
- integrity sha1-dc449SvwczxafwwRjYEzSiu19BI=
+ integrity sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==
source-map@^0.5.6, source-map@^0.5.7:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
- integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
+ integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==
source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
version "0.6.1"
@@ 10833,9 10581,9 @@ sourcemap-codec@^1.4.8:
integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
spdx-correct@^3.0.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9"
- integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c"
+ integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==
dependencies:
spdx-expression-parse "^3.0.0"
spdx-license-ids "^3.0.0"
@@ 10854,9 10602,9 @@ spdx-expression-parse@^3.0.0, spdx-expression-parse@^3.0.1:
spdx-license-ids "^3.0.0"
spdx-license-ids@^3.0.0:
- version "3.0.11"
- resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz#50c0d8c40a14ec1bf449bae69a0ea4685a9d9f95"
- integrity sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==
+ version "3.0.13"
+ resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz#7189a474c46f8d47c7b0da4b987bb45e908bd2d5"
+ integrity sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==
spdy-transport@^3.0.0:
version "3.0.0"
@@ 10888,19 10636,17 @@ split-string@^3.0.1, split-string@^3.0.2:
dependencies:
extend-shallow "^3.0.0"
-split2@^3.1.1:
- version "3.2.2"
- resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f"
- integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==
- dependencies:
- readable-stream "^3.0.0"
+split2@^4.1.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
+ integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==
sprintf-js@~1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
- integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
+ integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
-ssri@^8.0.0:
+ssri@^8.0.1:
version "8.0.1"
resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af"
integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==
@@ 10908,31 10654,31 @@ ssri@^8.0.0:
minipass "^3.1.1"
stack-generator@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.5.tgz#fb00e5b4ee97de603e0773ea78ce944d81596c36"
- integrity sha512-/t1ebrbHkrLrDuNMdeAcsvynWgoH/i4o8EGGfX7dEYDoTXOYVAkEpFdtshlvabzc6JlJ8Kf9YdFEoz7JkzGN9Q==
+ version "2.0.10"
+ resolved "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.10.tgz#8ae171e985ed62287d4f1ed55a1633b3fb53bb4d"
+ integrity sha512-mwnua/hkqM6pF4k8SnmZ2zfETsRUpWXREfA/goT8SLCV4iOFa4bzOX2nDipWAZFPTjLvQB82f5yaodMVhK0yJQ==
dependencies:
- stackframe "^1.1.1"
+ stackframe "^1.3.4"
stack-utils@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277"
- integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw==
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f"
+ integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==
dependencies:
escape-string-regexp "^2.0.0"
-stackframe@^1.1.1:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303"
- integrity sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==
+stackframe@^1.3.4:
+ version "1.3.4"
+ resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310"
+ integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==
stacktrace-gps@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/stacktrace-gps/-/stacktrace-gps-3.0.4.tgz#7688dc2fc09ffb3a13165ebe0dbcaf41bcf0c69a"
- integrity sha512-qIr8x41yZVSldqdqe6jciXEaSCKw1U8XTXpjDuy0ki/apyTn/r3w9hDAAQOhZdxvsC93H+WwwEu5cq5VemzYeg==
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/stacktrace-gps/-/stacktrace-gps-3.1.2.tgz#0c40b24a9b119b20da4525c398795338966a2fb0"
+ integrity sha512-GcUgbO4Jsqqg6RxfyTHFiPxdPqF+3LFmQhm7MgCuYQOYuWyqxo5pwRPz5d/u6/WYJdEnWfK4r+jGbyD8TSggXQ==
dependencies:
source-map "0.5.6"
- stackframe "^1.1.1"
+ stackframe "^1.3.4"
stacktrace-js@^2.0.2:
version "2.0.2"
@@ 10946,7 10692,7 @@ stacktrace-js@^2.0.2:
static-extend@^0.1.1:
version "0.1.2"
resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6"
- integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=
+ integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==
dependencies:
define-property "^0.2.5"
object-copy "^0.1.0"
@@ 10959,7 10705,7 @@ statuses@2.0.1:
"statuses@>= 1.4.0 < 2":
version "1.5.0"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c"
- integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=
+ integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==
stop-iteration-iterator@^1.0.0:
version "1.0.0"
@@ 10988,19 10734,19 @@ stream-http@^2.7.2:
xtend "^4.0.0"
string-argv@^0.3.1:
- version "0.3.1"
- resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da"
- integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6"
+ integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==
string-length@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1"
- integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw==
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a"
+ integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
dependencies:
char-regex "^1.0.2"
strip-ansi "^6.0.0"
-"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
+"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@@ 11018,7 10764,7 @@ string-width@^3.0.0, string-width@^3.1.0:
is-fullwidth-code-point "^2.0.0"
strip-ansi "^5.1.0"
-string-width@^5.0.0:
+string-width@^5.0.0, string-width@^5.0.1, string-width@^5.1.2:
version "5.1.2"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
@@ 11041,25 10787,41 @@ string.prototype.matchall@^4.0.6, string.prototype.matchall@^4.0.8:
regexp.prototype.flags "^1.4.3"
side-channel "^1.0.4"
-string.prototype.trimend@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz#914a65baaab25fbdd4ee291ca7dde57e869cb8d0"
- integrity sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==
+string.prototype.trim@^1.2.7:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz#a68352740859f6893f14ce3ef1bb3037f7a90533"
+ integrity sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==
dependencies:
call-bind "^1.0.2"
define-properties "^1.1.4"
- es-abstract "^1.19.5"
+ es-abstract "^1.20.4"
-string.prototype.trimstart@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz#5466d93ba58cfa2134839f81d7f42437e8c01fef"
- integrity sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==
+string.prototype.trimend@^1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz#c4a27fa026d979d79c04f17397f250a462944533"
+ integrity sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==
+ dependencies:
+ call-bind "^1.0.2"
+ define-properties "^1.1.4"
+ es-abstract "^1.20.4"
+
+string.prototype.trimstart@^1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz#e90ab66aa8e4007d92ef591bbf3cd422c56bdcf4"
+ integrity sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==
dependencies:
call-bind "^1.0.2"
define-properties "^1.1.4"
- es-abstract "^1.19.5"
+ es-abstract "^1.20.4"
+
+string_decoder@^1.0.0, string_decoder@^1.1.1:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
+ integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
+ dependencies:
+ safe-buffer "~5.2.0"
-string_decoder@^1.0.0, string_decoder@^1.1.1, string_decoder@~1.1.1:
+string_decoder@~1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
@@ 11082,10 10844,17 @@ stringz@^2.1.0:
dependencies:
char-regex "^1.0.2"
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+ integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
+ dependencies:
+ ansi-regex "^5.0.1"
+
strip-ansi@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
- integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=
+ integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==
dependencies:
ansi-regex "^2.0.0"
@@ 11096,24 10865,17 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
dependencies:
ansi-regex "^4.1.0"
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
strip-ansi@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2"
- integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
+ integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
dependencies:
ansi-regex "^6.0.1"
strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
- integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
+ integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==
strip-bom@^4.0.0:
version "4.0.0"
@@ 11128,7 10890,7 @@ strip-comments@^2.0.1:
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
- integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=
+ integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==
strip-final-newline@^2.0.0:
version "2.0.0"
@@ 11155,7 10917,7 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
style-search@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902"
- integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=
+ integrity sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==
stylehacks@^6.0.0:
version "6.0.0"
@@ 11205,17 10967,17 @@ stylelint-scss@^4.6.0:
postcss-value-parser "^4.2.0"
stylelint@^15.6.2:
- version "15.6.2"
- resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-15.6.2.tgz#06d9005b62a83b72887eed623520e9b472af8c15"
- integrity sha512-fjQWwcdUye4DU+0oIxNGwawIPC5DvG5kdObY5Sg4rc87untze3gC/5g/ikePqVjrAsBUZjwMN+pZsAYbDO6ArQ==
+ version "15.7.0"
+ resolved "https://registry.yarnpkg.com/stylelint/-/stylelint-15.7.0.tgz#945939a2ce9516998a198580e69b1ceef8a7c5f3"
+ integrity sha512-fQRwHwWuZsDn4ENyE9AsKkOkV9WlD2CmYiVDbdZPdS3iZh0ceypOn1EuwTNuZ8xTrHF+jVeIEzLtFFSlD/nJHg==
dependencies:
- "@csstools/css-parser-algorithms" "^2.1.1"
+ "@csstools/css-parser-algorithms" "^2.2.0"
"@csstools/css-tokenizer" "^2.1.1"
- "@csstools/media-query-list-parser" "^2.0.4"
+ "@csstools/media-query-list-parser" "^2.1.0"
"@csstools/selector-specificity" "^2.2.0"
balanced-match "^2.0.0"
colord "^2.9.3"
- cosmiconfig "^8.1.3"
+ cosmiconfig "^8.2.0"
css-functions-list "^3.1.0"
css-tree "^2.3.1"
debug "^4.3.4"
@@ 11236,11 10998,11 @@ stylelint@^15.6.2:
micromatch "^4.0.5"
normalize-path "^3.0.0"
picocolors "^1.0.0"
- postcss "^8.4.23"
+ postcss "^8.4.24"
postcss-media-query-parser "^0.2.3"
postcss-resolve-nested-selector "^0.1.1"
postcss-safe-parser "^6.0.0"
- postcss-selector-parser "^6.0.12"
+ postcss-selector-parser "^6.0.13"
postcss-value-parser "^4.2.0"
resolve-from "^5.0.0"
string-width "^4.2.3"
@@ 11252,15 11014,15 @@ stylelint@^15.6.2:
v8-compile-cache "^2.3.0"
write-file-atomic "^5.0.1"
-stylis@4.0.13:
- version "4.0.13"
- resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.0.13.tgz#f5db332e376d13cc84ecfe5dace9a2a51d954c91"
- integrity sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag==
+stylis@4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51"
+ integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==
substring-trie@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/substring-trie/-/substring-trie-1.0.2.tgz#7b42592391628b4f2cb17365c6cce4257c7b7af5"
- integrity sha1-e0JZI5Fii08ssXNlxszkJXx7evU=
+ integrity sha512-klL9Z/pqyq1JZE1kAa9hxI3i0J2f6XQonARUOEO3qwdtI9I46qVFX10gwdfQBCkM2yKIKj29eZFtufTN4D6GLg==
supports-color@^5.3.0:
version "5.5.0"
@@ 11306,7 11068,7 @@ supports-preserve-symlinks-flag@^1.0.0:
svg-tags@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764"
- integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=
+ integrity sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==
svgo@^3.0.2:
version "3.0.2"
@@ 11355,13 11117,13 @@ tapable@^2.2.0:
integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
tar@^6.0.2:
- version "6.1.11"
- resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
- integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==
+ version "6.1.15"
+ resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.15.tgz#c9738b0b98845a3b344d334b8fa3041aaba53a69"
+ integrity sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==
dependencies:
chownr "^2.0.0"
fs-minipass "^2.0.0"
- minipass "^3.0.0"
+ minipass "^5.0.0"
minizlib "^2.1.1"
mkdirp "^1.0.3"
yallist "^4.0.0"
@@ 11397,12 11159,12 @@ terser-webpack-plugin@^1.4.3, terser-webpack-plugin@^4.2.3:
webpack-sources "^1.4.3"
terser@^5.0.0, terser@^5.3.4:
- version "5.17.6"
- resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.6.tgz#d810e75e1bb3350c799cd90ebefe19c9412c12de"
- integrity sha512-V8QHcs8YuyLkLHsJO5ucyff1ykrLVsR4dNnS//L5Y3NiSXpbK1J+WMVUs67eI0KTxs9JtHhgEQpXQVHlHI92DQ==
+ version "5.18.0"
+ resolved "https://registry.yarnpkg.com/terser/-/terser-5.18.0.tgz#dc811fb8e3481a875d545bda247c8730ee4dc76b"
+ integrity sha512-pdL757Ig5a0I+owA42l6tIuEycRuM7FPY4n62h44mRLRfnOxJkkOHd6i89dOpwZlpF6JXBwaAHF6yWzFrt+QyA==
dependencies:
- "@jridgewell/source-map" "^0.3.2"
- acorn "^8.5.0"
+ "@jridgewell/source-map" "^0.3.3"
+ acorn "^8.8.2"
commander "^2.20.0"
source-map-support "~0.5.20"
@@ 11442,7 11204,7 @@ test-exclude@^6.0.0:
text-table@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
- integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
+ integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
through@^2.3.8:
version "2.3.8"
@@ 11455,21 11217,21 @@ thunky@^1.0.2:
integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==
timers-browserify@^2.0.4:
- version "2.0.11"
- resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f"
- integrity sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==
+ version "2.0.12"
+ resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee"
+ integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==
dependencies:
setimmediate "^1.0.4"
tiny-invariant@^1.0.2:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875"
- integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.1.tgz#8560808c916ef02ecfd55e66090df23a4b7aa642"
+ integrity sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==
tiny-queue@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/tiny-queue/-/tiny-queue-0.2.1.tgz#25a67f2c6e253b2ca941977b5ef7442ef97a6046"
- integrity sha1-JaZ/LG4lOyypQZd7XvdELvl6YEY=
+ integrity sha512-EijGsv7kzd9I9g0ByCl6h42BWNGUZrlCSejfrb3AKeHC33SGbASu1VDf5O3rRiiUOhAC9CHdZxFPbZu0HmR70A==
tiny-warning@^1.0.0:
version "1.0.3"
@@ 11489,24 11251,24 @@ tmpl@1.0.5:
to-arraybuffer@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
- integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=
+ integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==
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 sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
+ integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
to-object-path@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af"
- integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=
+ integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==
dependencies:
kind-of "^3.0.2"
to-regex-range@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38"
- integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=
+ integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==
dependencies:
is-number "^3.0.0"
repeat-string "^1.6.1"
@@ 11539,9 11301,9 @@ totalist@^1.0.0:
integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==
tough-cookie@^4.1.2:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874"
- integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==
+ version "4.1.3"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf"
+ integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==
dependencies:
psl "^1.1.33"
punycode "^2.1.1"
@@ 11551,7 11313,7 @@ tough-cookie@^4.1.2:
tr46@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09"
- integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=
+ integrity sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==
dependencies:
punycode "^2.1.0"
@@ 11572,7 11334,7 @@ tr46@^4.1.1:
tr46@~0.0.3:
version "0.0.3"
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
- integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=
+ integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
trim-newlines@^3.0.0:
version "3.0.1"
@@ 11580,25 11342,30 @@ trim-newlines@^3.0.0:
integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==
tsconfig-paths@^3.14.1:
- version "3.14.1"
- resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz#ba0734599e8ea36c862798e920bcf163277b137a"
- integrity sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==
+ version "3.14.2"
+ resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz#6e32f1f79412decd261f92d633a9dc1cfa99f088"
+ integrity sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==
dependencies:
"@types/json5" "^0.0.29"
- json5 "^1.0.1"
+ json5 "^1.0.2"
minimist "^1.2.6"
strip-bom "^3.0.0"
-tslib@2.5.0, tslib@^2.1.0, tslib@^2.4.0, tslib@^2.5.0:
+tslib@2.5.0:
version "2.5.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf"
integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==
-tslib@^1.8.1, tslib@^1.9.0:
+tslib@^1.8.1:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
+tslib@^2.1.0, tslib@^2.4.0, tslib@^2.5.0:
+ version "2.5.3"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.3.tgz#24944ba2d990940e6e982c4bea147aba80209913"
+ integrity sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==
+
tsutils@^3.21.0:
version "3.21.0"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
@@ 11609,7 11376,7 @@ tsutils@^3.21.0:
tty-browserify@0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
- integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=
+ integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==
twemoji-parser@^11.0.2:
version "11.0.2"
@@ 11636,7 11403,7 @@ type-check@^0.4.0, type-check@~0.4.0:
type-check@~0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
- integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
+ integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==
dependencies:
prelude-ls "~1.1.2"
@@ 11645,11 11412,6 @@ type-detect@4.0.8:
resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
-type-fest@^0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1"
- integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==
-
type-fest@^0.16.0:
version "0.16.0"
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860"
@@ 11688,10 11450,19 @@ type-is@~1.6.18:
media-typer "0.3.0"
mime-types "~2.1.24"
+typed-array-length@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.4.tgz#89d83785e5c4098bec72e08b319651f0eac9c1bb"
+ integrity sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==
+ dependencies:
+ call-bind "^1.0.2"
+ for-each "^0.3.3"
+ is-typed-array "^1.1.9"
+
"typescript@^4.7 || 5", typescript@^5.0.4:
- version "5.0.4"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b"
- integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==
+ version "5.1.3"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.3.tgz#8d84219244a6b40b6fb2b33cc1c062f715b9e826"
+ integrity sha512-XH627E9vkeqhlZFQuL+UsyAXEnibT0kWR2FWONlr4sTjvxyJYnyefgrkyECLzM5NenmKzRAy2rR/OlYLA1HkZw==
unbox-primitive@^1.0.2:
version "1.0.2"
@@ 11733,20 11504,15 @@ unicode-match-property-ecmascript@^2.0.0:
unicode-canonical-property-names-ecmascript "^2.0.0"
unicode-property-aliases-ecmascript "^2.0.0"
-unicode-match-property-value-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714"
- integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==
-
unicode-match-property-value-ecmascript@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0"
integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==
unicode-property-aliases-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8"
- integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==
+ 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==
union-value@^1.0.0:
version "1.0.1"
@@ 11792,12 11558,12 @@ universalify@^2.0.0:
unpipe@1.0.0, unpipe@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
- integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=
+ integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
unset-value@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559"
- integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=
+ integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==
dependencies:
has-value "^0.3.1"
isobject "^3.0.0"
@@ 11812,10 11578,10 @@ upath@^1.1.1, upath@^1.2.0:
resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894"
integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==
-update-browserslist-db@^1.0.10:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3"
- integrity sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==
+update-browserslist-db@^1.0.11:
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940"
+ integrity sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==
dependencies:
escalade "^3.1.1"
picocolors "^1.0.0"
@@ 11830,9 11596,9 @@ uri-js@^4.2.2:
urix@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72"
- integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=
+ integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==
-url-parse@^1.4.3, url-parse@^1.4.7, url-parse@^1.5.3:
+url-parse@^1.5.10, url-parse@^1.5.3:
version "1.5.10"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1"
integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==
@@ 11841,12 11607,12 @@ url-parse@^1.4.3, url-parse@^1.4.7, url-parse@^1.5.3:
requires-port "^1.0.0"
url@^0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1"
- integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/url/-/url-0.11.1.tgz#26f90f615427eca1b9f4d6a28288c147e2302a32"
+ integrity sha512-rWS3H04/+mzzJkv0eZ7vEDGiQbgquI1fGfOad6zKvgYQi1SzMmhl7c/DdRGxhaWrVH6z0qWITo8rpnxK/RfEhA==
dependencies:
- punycode "1.3.2"
- querystring "0.2.0"
+ punycode "^1.4.1"
+ qs "^6.11.0"
use-composed-ref@^1.3.0:
version "1.3.0"
@@ 11890,7 11656,7 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
util@0.10.3:
version "0.10.3"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
- integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk=
+ integrity sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==
dependencies:
inherits "2.0.1"
@@ 11904,13 11670,18 @@ util@^0.11.0:
utils-merge@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
- integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
+ integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
-uuid@^3.3.2, uuid@^3.4.0:
+uuid@^3.3.2:
version "3.4.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
+uuid@^8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
+ integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
+
uuid@^9.0.0:
version "9.0.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5"
@@ 11922,9 11693,9 @@ v8-compile-cache@^2.1.1, v8-compile-cache@^2.3.0:
integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
v8-to-istanbul@^9.0.1:
- version "9.0.1"
- resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz#b6f994b0b5d4ef255e17a0d17dc444a9f5132fa4"
- integrity sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==
+ version "9.1.0"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz#1b83ed4e397f58c85c266a570fc2558b5feb9265"
+ integrity sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==
dependencies:
"@jridgewell/trace-mapping" "^0.3.12"
"@types/istanbul-lib-coverage" "^2.0.1"
@@ 11946,7 11717,7 @@ value-equal@^1.0.1:
vary@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
- integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
+ integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
vm-browserify@^1.0.1:
version "1.1.2"
@@ 11970,7 11741,7 @@ walker@^1.0.8:
warning@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
- integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=
+ integrity sha512-jMBt6pUrKn5I+OGgtQ4YZLdhIeJmObddh6CsibPxyQ5yPZm1XExSyzC1LCNX7BzhxWgiHmizBWJTHJIjMjTQYQ==
dependencies:
loose-envify "^1.0.0"
@@ 11981,23 11752,23 @@ warning@^4.0.1, warning@^4.0.3:
dependencies:
loose-envify "^1.0.0"
-watchpack-chokidar2@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0"
- integrity sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==
+watchpack-chokidar2@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957"
+ integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==
dependencies:
chokidar "^2.1.8"
watchpack@^1.7.4:
- version "1.7.4"
- resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.4.tgz#6e9da53b3c80bb2d6508188f5b200410866cd30b"
- integrity sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==
+ version "1.7.5"
+ resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453"
+ integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==
dependencies:
graceful-fs "^4.1.2"
neo-async "^2.5.0"
optionalDependencies:
chokidar "^3.4.1"
- watchpack-chokidar2 "^2.0.0"
+ watchpack-chokidar2 "^2.0.1"
wbuf@^1.1.0, wbuf@^1.7.3:
version "1.7.3"
@@ 12009,7 11780,7 @@ wbuf@^1.1.0, wbuf@^1.7.3:
webidl-conversions@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
- integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=
+ integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==
webidl-conversions@^4.0.2:
version "4.0.2"
@@ 12070,9 11841,9 @@ webpack-cli@^3.3.12:
yargs "^13.3.2"
webpack-dev-middleware@^3.7.2:
- version "3.7.2"
- resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz#0019c3db716e3fa5cecbf64f2ab88a74bab331f3"
- integrity sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==
+ version "3.7.3"
+ resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz#0639372b143262e2b84ab95d3b91a7597061c2c5"
+ integrity sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==
dependencies:
memory-fs "^0.4.1"
mime "^2.4.4"
@@ 12217,7 11988,7 @@ whatwg-url@^12.0.0, whatwg-url@^12.0.1:
whatwg-url@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
- integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0=
+ integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==
dependencies:
tr46 "~0.0.3"
webidl-conversions "^3.0.0"
@@ 12253,9 12024,9 @@ which-collection@^1.0.1:
is-weakset "^2.0.1"
which-module@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
- integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409"
+ integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==
which-typed-array@^1.1.9:
version "1.1.9"
@@ 12296,9 12067,9 @@ wide-align@^1.1.5:
string-width "^1.0.2 || 2 || 3 || 4"
wildcard@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec"
- integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67"
+ integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==
word-wrap@^1.2.3, word-wrap@~1.2.3:
version "1.2.3"
@@ 12474,6 12245,15 @@ workbox-window@7.0.0, workbox-window@^7.0.0:
"@types/trusted-types" "^2.0.2"
workbox-core "7.0.0"
+"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+ integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
wrap-ansi@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09"
@@ 12492,19 12272,19 @@ wrap-ansi@^6.2.0:
string-width "^4.1.0"
strip-ansi "^6.0.0"
-wrap-ansi@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
- integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+wrap-ansi@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
+ integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
+ ansi-styles "^6.1.0"
+ string-width "^5.0.1"
+ strip-ansi "^7.0.1"
wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
+ integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
write-file-atomic@^4.0.2:
version "4.0.2"
@@ 12560,9 12340,9 @@ y18n@^4.0.0:
integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==
y18n@^5.0.5:
- version "5.0.5"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18"
- integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==
+ version "5.0.8"
+ resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
+ integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
yallist@4.0.0, yallist@^4.0.0:
version "4.0.0"
@@ 12574,15 12354,15 @@ yallist@^3.0.2:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
-yaml@^1.10.0, yaml@^1.7.2:
+yaml@^1.10.0:
version "1.10.2"
resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
yaml@^2.2.2:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073"
- integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.1.tgz#02fe0975d23cd441242aa7204e09fc28ac2ac33b"
+ integrity sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==
yargs-parser@^13.1.2:
version "13.1.2"
@@ 12639,4 12419,4 @@ yocto-queue@^0.1.0:
zlibjs@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/zlibjs/-/zlibjs-0.3.1.tgz#50197edb28a1c42ca659cc8b4e6a9ddd6d444554"
- integrity sha1-UBl+2yihxCymWcyLTmqd3W1ERVQ=
+ integrity sha512-+J9RrgTKOmlxFSDHo0pI1xM6BLVUv+o0ZT9ANtCxGkjIVCCUdx9alUF8Gm+dGLKbkkkidWIHFDZHDMpfITt4+w==