diff --git a/app/controllers/api/v1/statuses_controller.rb b/app/controllers/api/v1/statuses_controller.rb
index 3d903225a..4f52d9dbd 100644
--- a/app/controllers/api/v1/statuses_controller.rb
+++ b/app/controllers/api/v1/statuses_controller.rb
@@ -37,21 +37,6 @@ class Api::V1::StatusesController < Api::BaseController
end
def create
-<<<<<<< HEAD
- @status = PostStatusService.new.call(current_user.account,
- text: status_params[:status],
- thread: @thread,
- media_ids: status_params[:media_ids],
- sensitive: status_params[:sensitive],
- spoiler_text: status_params[:spoiler_text],
- visibility: status_params[:visibility],
- scheduled_at: status_params[:scheduled_at],
- application: doorkeeper_token.application,
- poll: status_params[:poll],
- idempotency: request.headers['Idempotency-Key'],
- with_rate_limit: true,
- quote_id: status_params[:quote_id].presence)
-=======
@status = PostStatusService.new.call(
current_user.account,
text: status_params[:status],
@@ -65,9 +50,9 @@ class Api::V1::StatusesController < Api::BaseController
application: doorkeeper_token.application,
poll: status_params[:poll],
idempotency: request.headers['Idempotency-Key'],
- with_rate_limit: true
+ with_rate_limit: true,
+ quote_id: status_params[:quote_id].presence)
)
->>>>>>> v3.5.0rc1
render json: @status, serializer: @status.is_a?(ScheduledStatus) ? REST::ScheduledStatusSerializer : REST::StatusSerializer
end
diff --git a/app/controllers/auth/sessions_controller.rb b/app/controllers/auth/sessions_controller.rb
index 5323eabc4..4d2695bf5 100644
--- a/app/controllers/auth/sessions_controller.rb
+++ b/app/controllers/auth/sessions_controller.rb
@@ -15,16 +15,11 @@ class Auth::SessionsController < Devise::SessionsController
def create
super do |resource|
-<<<<<<< HEAD
- resource.update_sign_in!(request, new_sign_in: true)
- flash.delete(:notice)
-=======
# We only need to call this if this hasn't already been
# called from one of the two-factor or sign-in token
# authentication methods
on_authentication_success(resource, :password) unless @on_authentication_success_called
->>>>>>> v3.5.0rc1
end
end
diff --git a/app/helpers/context_helper.rb b/app/helpers/context_helper.rb
index 0152be905..9303add35 100644
--- a/app/helpers/context_helper.rb
+++ b/app/helpers/context_helper.rb
@@ -18,19 +18,12 @@ module ContextHelper
atom_uri: { 'ostatus' => 'http://ostatus.org#', 'atomUri' => 'ostatus:atomUri' },
conversation: { 'ostatus' => 'http://ostatus.org#', 'inReplyToAtomUri' => 'ostatus:inReplyToAtomUri', 'conversation' => 'ostatus:conversation' },
focal_point: { 'toot' => 'http://joinmastodon.org/ns#', 'focalPoint' => { '@container' => '@list', '@id' => 'toot:focalPoint' } },
-<<<<<<< HEAD
- identity_proof: { 'toot' => 'http://joinmastodon.org/ns#', 'IdentityProof' => 'toot:IdentityProof' },
-=======
->>>>>>> v3.5.0rc1
blurhash: { 'toot' => 'http://joinmastodon.org/ns#', 'blurhash' => 'toot:blurhash' },
discoverable: { 'toot' => 'http://joinmastodon.org/ns#', 'discoverable' => 'toot:discoverable' },
voters_count: { 'toot' => 'http://joinmastodon.org/ns#', 'votersCount' => 'toot:votersCount' },
olm: { 'toot' => 'http://joinmastodon.org/ns#', 'Device' => 'toot:Device', 'Ed25519Signature' => 'toot:Ed25519Signature', 'Ed25519Key' => 'toot:Ed25519Key', 'Curve25519Key' => 'toot:Curve25519Key', 'EncryptedMessage' => 'toot:EncryptedMessage', 'publicKeyBase64' => 'toot:publicKeyBase64', 'deviceId' => 'toot:deviceId', 'claim' => { '@type' => '@id', '@id' => 'toot:claim' }, 'fingerprintKey' => { '@type' => '@id', '@id' => 'toot:fingerprintKey' }, 'identityKey' => { '@type' => '@id', '@id' => 'toot:identityKey' }, 'devices' => { '@type' => '@id', '@id' => 'toot:devices' }, 'messageFranking' => 'toot:messageFranking', 'messageType' => 'toot:messageType', 'cipherText' => 'toot:cipherText' },
suspended: { 'toot' => 'http://joinmastodon.org/ns#', 'suspended' => 'toot:suspended' },
-<<<<<<< HEAD
quoteUrl: { 'quoteUrl' => 'as:quoteUrl' },
-=======
->>>>>>> v3.5.0rc1
}.freeze
def full_context
diff --git a/app/javascript/mastodon/actions/compose.js b/app/javascript/mastodon/actions/compose.js
index 25465402f..1e99e5afd 100644
--- a/app/javascript/mastodon/actions/compose.js
+++ b/app/javascript/mastodon/actions/compose.js
@@ -177,18 +177,6 @@ export function submitCompose(routerHistory) {
dispatch(submitComposeRequest());
-<<<<<<< HEAD
- api(getState).post('/api/v1/statuses', {
- status,
- in_reply_to_id: getState().getIn(['compose', 'in_reply_to'], null),
- media_ids: media.map(item => item.get('id')),
- sensitive: getState().getIn(['compose', 'sensitive']),
- spoiler_text: getState().getIn(['compose', 'spoiler']) ? getState().getIn(['compose', 'spoiler_text'], '') : '',
- visibility: getState().getIn(['compose', 'privacy']),
- poll: getState().getIn(['compose', 'poll'], null),
- quote_id: getState().getIn(['compose', 'quote_from'], null),
- }, {
-=======
api(getState).request({
url: statusId === null ? '/api/v1/statuses' : `/api/v1/statuses/${statusId}`,
method: statusId === null ? 'post' : 'put',
@@ -200,8 +188,8 @@ export function submitCompose(routerHistory) {
spoiler_text: getState().getIn(['compose', 'spoiler']) ? getState().getIn(['compose', 'spoiler_text'], '') : '',
visibility: getState().getIn(['compose', 'privacy']),
poll: getState().getIn(['compose', 'poll'], null),
+ quote_id: getState().getIn(['compose', 'quote_from'], null),
},
->>>>>>> v3.5.0rc1
headers: {
'Idempotency-Key': getState().getIn(['compose', 'idempotencyKey']),
},
diff --git a/app/javascript/mastodon/actions/notifications.js b/app/javascript/mastodon/actions/notifications.js
index eda4cf002..00e8d74d7 100644
--- a/app/javascript/mastodon/actions/notifications.js
+++ b/app/javascript/mastodon/actions/notifications.js
@@ -45,11 +45,7 @@ defineMessages({
});
const fetchRelatedRelationships = (dispatch, notifications) => {
-<<<<<<< HEAD
- const accountIds = notifications.map(item => item.account.id);
-=======
const accountIds = notifications.filter(item => ['follow', 'follow_request', 'admin.sign_up'].indexOf(item.type) !== -1).map(item => item.account.id);
->>>>>>> v3.5.0rc1
if (accountIds.length > 0) {
dispatch(fetchRelationships(accountIds));
diff --git a/app/javascript/mastodon/actions/statuses.js b/app/javascript/mastodon/actions/statuses.js
index 2c70517b2..77edd45d7 100644
--- a/app/javascript/mastodon/actions/statuses.js
+++ b/app/javascript/mastodon/actions/statuses.js
@@ -30,14 +30,12 @@ export const STATUS_COLLAPSE = 'STATUS_COLLAPSE';
export const REDRAFT = 'REDRAFT';
-<<<<<<< HEAD
export const QUOTE_REVEAL = 'QUOTE_REVEAL';
export const QUOTE_HIDE = 'QUOTE_HIDE';
-=======
+
export const STATUS_FETCH_SOURCE_REQUEST = 'STATUS_FETCH_SOURCE_REQUEST';
export const STATUS_FETCH_SOURCE_SUCCESS = 'STATUS_FETCH_SOURCE_SUCCESS';
export const STATUS_FETCH_SOURCE_FAIL = 'STATUS_FETCH_SOURCE_FAIL';
->>>>>>> v3.5.0rc1
export function fetchStatusRequest(id, skipLoading) {
return {
diff --git a/app/javascript/mastodon/components/status.js b/app/javascript/mastodon/components/status.js
index 523a812b5..9f68f9725 100644
--- a/app/javascript/mastodon/components/status.js
+++ b/app/javascript/mastodon/components/status.js
@@ -166,18 +166,12 @@ class Status extends ImmutablePureComponent {
this.setState({ showMedia: !this.state.showMedia });
}
-<<<<<<< HEAD
handleToggleQuoteMediaVisibility = () => {
this.setState({ showQuoteMedia: !this.state.showQuoteMedia });
}
- handleClick = () => {
- if (this.props.onClick) {
- this.props.onClick();
-=======
handleClick = e => {
if (e && (e.button !== 0 || e.ctrlKey || e.metaKey)) {
->>>>>>> v3.5.0rc1
return;
}
@@ -197,7 +191,6 @@ class Status extends ImmutablePureComponent {
return;
}
-<<<<<<< HEAD
handleQuoteClick = () => {
if (!this.context.router) {
return;
@@ -208,11 +201,7 @@ class Status extends ImmutablePureComponent {
}
handleAccountClick = (e) => {
- if (this.context.router && e.button === 0 && !(e.ctrlKey || e.metaKey)) {
- const id = e.currentTarget.getAttribute('data-id');
-=======
if (e) {
->>>>>>> v3.5.0rc1
e.preventDefault();
}
diff --git a/app/javascript/mastodon/components/status_action_bar.js b/app/javascript/mastodon/components/status_action_bar.js
index 6fbea1bf8..c0ed844b1 100644
--- a/app/javascript/mastodon/components/status_action_bar.js
+++ b/app/javascript/mastodon/components/status_action_bar.js
@@ -347,15 +347,10 @@ class StatusActionBar extends ImmutablePureComponent {
return (
-<<<<<<< HEAD
-
-
-
-=======
+
->>>>>>> v3.5.0rc1
{shareButton}
diff --git a/app/javascript/mastodon/containers/status_container.js b/app/javascript/mastodon/containers/status_container.js
index 30f07c99d..de7bd0b93 100644
--- a/app/javascript/mastodon/containers/status_container.js
+++ b/app/javascript/mastodon/containers/status_container.js
@@ -25,12 +25,9 @@ import {
hideStatus,
revealStatus,
toggleStatusCollapse,
-<<<<<<< HEAD
hideQuote,
revealQuote,
-=======
editStatus,
->>>>>>> v3.5.0rc1
} from '../actions/statuses';
import {
unmuteAccount,
diff --git a/app/javascript/mastodon/features/compose/components/compose_form.js b/app/javascript/mastodon/features/compose/components/compose_form.js
index 52a455405..0997c4d7e 100644
--- a/app/javascript/mastodon/features/compose/components/compose_form.js
+++ b/app/javascript/mastodon/features/compose/components/compose_form.js
@@ -30,14 +30,9 @@ const messages = defineMessages({
spoiler_placeholder: { id: 'compose_form.spoiler_placeholder', defaultMessage: 'Write your warning here' },
publish: { id: 'compose_form.publish', defaultMessage: 'Toot' },
publishLoud: { id: 'compose_form.publish_loud', defaultMessage: '{publish}!' },
-<<<<<<< HEAD
-
-
utilBtns_goji: { id: 'compose_form.utilBtns_goji', defaultMessage: 'Typo!!!' },
- utilBtns_harukin: { id: 'compose_form.utilBtns_harukin', defaultMessage: 'Burn Harukin' }
-=======
+ utilBtns_harukin: { id: 'compose_form.utilBtns_harukin', defaultMessage: 'Burn Harukin' },
saveChanges: { id: 'compose_form.save_changes', defaultMessage: 'Save changes' },
->>>>>>> v3.5.0rc1
});
export default @injectIntl
@@ -71,14 +66,11 @@ class ComposeForm extends ImmutablePureComponent {
onPickEmoji: PropTypes.func.isRequired,
showSearch: PropTypes.bool,
anyMedia: PropTypes.bool,
-<<<<<<< HEAD
singleColumn: PropTypes.bool,
onGojiSubmit: PropTypes.func.isRequired,
- onHarukinSubmit: PropTypes.func.isRequired
-=======
+ onHarukinSubmit: PropTypes.func.isRequired,
isInReply: PropTypes.bool,
singleColumn: PropTypes.bool,
->>>>>>> v3.5.0rc1
};
static defaultProps = {
diff --git a/app/javascript/mastodon/features/compose/index.js b/app/javascript/mastodon/features/compose/index.js
index b42833fbf..e47772bd4 100644
--- a/app/javascript/mastodon/features/compose/index.js
+++ b/app/javascript/mastodon/features/compose/index.js
@@ -146,27 +146,9 @@ class Compose extends React.PureComponent {
header = (
);
}
diff --git a/app/javascript/mastodon/features/directory/index.js b/app/javascript/mastodon/features/directory/index.js
index 8de7fd01c..94d7d1a9c 100644
--- a/app/javascript/mastodon/features/directory/index.js
+++ b/app/javascript/mastodon/features/directory/index.js
@@ -12,10 +12,7 @@ import AccountCard from './components/account_card';
import RadioButton from 'mastodon/components/radio_button';
import LoadMore from 'mastodon/components/load_more';
import ScrollContainer from 'mastodon/containers/scroll_container';
-<<<<<<< HEAD
-=======
import LoadingIndicator from 'mastodon/components/loading_indicator';
->>>>>>> v3.5.0rc1
const messages = defineMessages({
title: { id: 'column.directory', defaultMessage: 'Browse profiles' },
diff --git a/app/javascript/mastodon/features/followers/index.js b/app/javascript/mastodon/features/followers/index.js
index 79642b42c..224e74b3d 100644
--- a/app/javascript/mastodon/features/followers/index.js
+++ b/app/javascript/mastodon/features/followers/index.js
@@ -140,11 +140,7 @@ class Followers extends ImmutablePureComponent {
hasMore={hasMore}
isLoading={isLoading}
onLoadMore={this.handleLoadMore}
-<<<<<<< HEAD
- prepend={
}
-=======
prepend={
}
->>>>>>> v3.5.0rc1
alwaysPrepend
append={remoteMessage}
emptyMessage={emptyMessage}
diff --git a/app/javascript/mastodon/features/following/index.js b/app/javascript/mastodon/features/following/index.js
index 83a98c256..aadce1644 100644
--- a/app/javascript/mastodon/features/following/index.js
+++ b/app/javascript/mastodon/features/following/index.js
@@ -140,11 +140,7 @@ class Following extends ImmutablePureComponent {
hasMore={hasMore}
isLoading={isLoading}
onLoadMore={this.handleLoadMore}
-<<<<<<< HEAD
- prepend={
}
-=======
prepend={
}
->>>>>>> v3.5.0rc1
alwaysPrepend
append={remoteMessage}
emptyMessage={emptyMessage}
diff --git a/app/javascript/mastodon/features/getting_started/index.js b/app/javascript/mastodon/features/getting_started/index.js
index 5ae5c7ec8..57bc6da37 100644
--- a/app/javascript/mastodon/features/getting_started/index.js
+++ b/app/javascript/mastodon/features/getting_started/index.js
@@ -108,16 +108,6 @@ class GettingStarted extends ImmutablePureComponent {
);
height += 48;
-<<<<<<< HEAD
- if (profile_directory) {
- navItems.push(
-
,
-
,
- );
-
- height += 48*2;
- }
-=======
if (multiColumn) {
navItems.push(
,
@@ -125,23 +115,12 @@ class GettingStarted extends ImmutablePureComponent {
);
height += 48*2;
->>>>>>> v3.5.0rc1
navItems.push(
,
);
height += 34;
-<<<<<<< HEAD
- } else if (profile_directory) {
- navItems.push(
-
,
-
,
- );
-
- height += 48*2;
-=======
->>>>>>> v3.5.0rc1
}
if (multiColumn && !columns.find(item => item.get('id') === 'HOME')) {
diff --git a/app/javascript/mastodon/features/picture_in_picture/components/footer.js b/app/javascript/mastodon/features/picture_in_picture/components/footer.js
index e7975b2da..b01f0d97d 100644
--- a/app/javascript/mastodon/features/picture_in_picture/components/footer.js
+++ b/app/javascript/mastodon/features/picture_in_picture/components/footer.js
@@ -185,12 +185,8 @@ class Footer extends ImmutablePureComponent {
-<<<<<<< HEAD
- {withOpenButton &&
}
-=======
{withOpenButton &&
}
->>>>>>> v3.5.0rc1
);
}
diff --git a/app/javascript/mastodon/features/ui/components/columns_area.js b/app/javascript/mastodon/features/ui/components/columns_area.js
index 7f5f87f0b..ff27f3c3a 100644
--- a/app/javascript/mastodon/features/ui/components/columns_area.js
+++ b/app/javascript/mastodon/features/ui/components/columns_area.js
@@ -218,12 +218,7 @@ class ColumnsArea extends ImmutablePureComponent {
const columnIndex = getIndex(this.context.router.history.location.pathname);
if (singleColumn) {
-<<<<<<< HEAD
- const floatingActionButton = shouldHideFAB(this.context.router.history.location.pathname) ? null :
;
-=======
const floatingActionButton = shouldHideFAB(this.context.router.history.location.pathname) ? null :
;
->>>>>>> v3.5.0rc1
-
const content = columnIndex !== -1 ? (
{links.map(this.renderView)}
diff --git a/app/javascript/mastodon/features/ui/components/tabs_bar.js b/app/javascript/mastodon/features/ui/components/tabs_bar.js
index 61caecfef..a93ba20c1 100644
--- a/app/javascript/mastodon/features/ui/components/tabs_bar.js
+++ b/app/javascript/mastodon/features/ui/components/tabs_bar.js
@@ -10,21 +10,12 @@ import { place_tab_bar_at_bottom, show_tab_bar_label } from 'mastodon/initial_st
import classNames from 'classnames';
export const links = [
-<<<<<<< HEAD
- ,
- ,
- ,
- ,
- ,
- ,
-=======
,
,
,
,
,
,
->>>>>>> v3.5.0rc1
];
export function getIndex (path) {
diff --git a/app/javascript/mastodon/features/ui/components/video_modal.js b/app/javascript/mastodon/features/ui/components/video_modal.js
index 81e6e9691..f3ee89dfd 100644
--- a/app/javascript/mastodon/features/ui/components/video_modal.js
+++ b/app/javascript/mastodon/features/ui/components/video_modal.js
@@ -21,11 +21,7 @@ export default class VideoModal extends ImmutablePureComponent {
};
componentDidMount () {
-<<<<<<< HEAD
- const { media, onChangeBackgroundColor, onClose } = this.props;
-=======
const { media, onChangeBackgroundColor } = this.props;
->>>>>>> v3.5.0rc1
const backgroundColor = getAverageFromBlurhash(media.get('blurhash'));
diff --git a/app/javascript/mastodon/features/ui/containers/modal_container.js b/app/javascript/mastodon/features/ui/containers/modal_container.js
index ecde08606..35be26222 100644
--- a/app/javascript/mastodon/features/ui/containers/modal_container.js
+++ b/app/javascript/mastodon/features/ui/containers/modal_container.js
@@ -3,14 +3,9 @@ import { openModal, closeModal } from '../../../actions/modal';
import ModalRoot from '../components/modal_root';
const mapStateToProps = state => ({
-<<<<<<< HEAD
- type: state.getIn(['modal', 0, 'modalType'], null),
- props: state.getIn(['modal', 0, 'modalProps'], {}),
-=======
ignoreFocus: state.getIn(['modal', 'ignoreFocus']),
type: state.getIn(['modal', 'stack', 0, 'modalType'], null),
props: state.getIn(['modal', 'stack', 0, 'modalProps'], {}),
->>>>>>> v3.5.0rc1
});
const mapDispatchToProps = dispatch => ({
diff --git a/app/javascript/mastodon/features/ui/index.js b/app/javascript/mastodon/features/ui/index.js
index 71fa4ebd1..2d0136992 100644
--- a/app/javascript/mastodon/features/ui/index.js
+++ b/app/javascript/mastodon/features/ui/index.js
@@ -153,17 +153,6 @@ class SwitchingColumnsArea extends React.PureComponent {
{redirect}
-<<<<<<< HEAD
-
-
-
-
-
-
-
-
-
-=======
@@ -174,17 +163,10 @@ class SwitchingColumnsArea extends React.PureComponent {
->>>>>>> v3.5.0rc1
-<<<<<<< HEAD
-
-
-
-
-=======
@@ -201,20 +183,10 @@ class SwitchingColumnsArea extends React.PureComponent {
{/* Legacy routes, cannot be easily factored with other routes because they share a param name */}
->>>>>>> v3.5.0rc1
-<<<<<<< HEAD
-
-
-
-
-
-
-=======
->>>>>>> v3.5.0rc1
diff --git a/app/javascript/mastodon/features/video/index.js b/app/javascript/mastodon/features/video/index.js
index 80a0fa745..3cda6aef5 100644
--- a/app/javascript/mastodon/features/video/index.js
+++ b/app/javascript/mastodon/features/video/index.js
@@ -121,12 +121,8 @@ class Video extends React.PureComponent {
autoPlay: PropTypes.bool,
volume: PropTypes.number,
muted: PropTypes.bool,
-<<<<<<< HEAD
componetIndex: PropTypes.number,
quote: PropTypes.bool,
-=======
- componentIndex: PropTypes.number,
->>>>>>> v3.5.0rc1
};
static defaultProps = {
diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json
index d5652ed47..47a35127f 100644
--- a/app/javascript/mastodon/locales/cs.json
+++ b/app/javascript/mastodon/locales/cs.json
@@ -31,12 +31,8 @@
"account.moved_to": "Uživatel {name} se přesunul na:",
"account.mute": "Skrýt @{name}",
"account.mute_notifications": "Skrýt oznámení od @{name}",
-<<<<<<< HEAD
- "account.muted": "Účet skryt",
- "account.never_active": "Nikdy",
-=======
"account.muted": "Skryt",
->>>>>>> v3.5.0rc1
+ "account.never_active": "Nikdy",
"account.posts": "Příspěvky",
"account.posts_with_replies": "Příspěvky a odpovědi",
"account.report": "Nahlásit @{name}",
diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json
index 2b877537f..9a6c8e189 100644
--- a/app/javascript/mastodon/locales/en.json
+++ b/app/javascript/mastodon/locales/en.json
@@ -311,21 +311,8 @@
"navigation_bar.preferences": "Preferences",
"navigation_bar.public_timeline": "Federated timeline",
"navigation_bar.security": "Security",
-<<<<<<< HEAD
- "navigation_bar.short.community_timeline": "LTL",
- "navigation_bar.short.getting_started": "Started",
- "navigation_bar.short.home": "Home",
- "navigation_bar.short.lists": "Lists",
- "navigation_bar.short.logout": "Logout",
- "navigation_bar.short.notifications": "Notif.",
- "navigation_bar.short.preferences": "Pref.",
- "navigation_bar.short.public_timeline": "FTL",
- "navigation_bar.short.search": "Search",
- "notification.favourite": "{name} favourited your toot",
-=======
"notification.admin.sign_up": "{name} signed up",
"notification.favourite": "{name} favourited your post",
->>>>>>> v3.5.0rc1
"notification.follow": "{name} followed you",
"notification.follow_request": "{name} has requested to follow you",
"notification.mention": "{name} mentioned you",
diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json
index 6c5130abf..d121d6573 100644
--- a/app/javascript/mastodon/locales/hu.json
+++ b/app/javascript/mastodon/locales/hu.json
@@ -57,12 +57,8 @@
"alert.rate_limited.title": "Forgalomkorlátozás",
"alert.unexpected.message": "Váratlan hiba történt.",
"alert.unexpected.title": "Hoppá!",
-<<<<<<< HEAD
- "announcement.announcement": "Bejelentés",
-=======
"announcement.announcement": "Közlemény",
"attachments_list.unprocessed": "(feldolgozatlan)",
->>>>>>> v3.5.0rc1
"autosuggest_hashtag.per_week": "{count} hetente",
"boost_modal.combo": "Hogy átugord ezt következő alkalommal, használd {combo}",
"bundle_column_error.body": "Valami hiba történt a komponens betöltése közben.",
diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json
index d13a4f9cd..51028efae 100644
--- a/app/javascript/mastodon/locales/ja.json
+++ b/app/javascript/mastodon/locales/ja.json
@@ -317,26 +317,9 @@
"navigation_bar.preferences": "ユーザー設定",
"navigation_bar.public_timeline": "連合タイムライン",
"navigation_bar.security": "セキュリティ",
-<<<<<<< HEAD
- "notification.and_n_others": "and {count, plural, one {# other} other {# others}}",
- "notification.and_n_others": "と、他 {count} 件",
"navigation_bar.announcements": "運営からのお知らせ",
- "navigation_bar.trends": "トレンド",
- "navigation_bar.bookmarks": "ブックマーク",
- "notification.favourite": "{name}さんがあなたの投稿に╰( ^o^)╮-=ニ=一=三★しました",
- "navigation_bar.short.community_timeline": "ローカル",
- "navigation_bar.short.getting_started": "スタート",
- "navigation_bar.short.home": "ホーム",
- "navigation_bar.short.lists": "リスト",
- "navigation_bar.short.logout": "ログアウト",
- "navigation_bar.short.notifications": "通知",
- "navigation_bar.short.preferences": "設定",
- "navigation_bar.short.public_timeline": "連合",
- "navigation_bar.short.search": "検索",
-=======
"notification.admin.sign_up": "{name} がサインアップしました",
- "notification.favourite": "{name}さんがあなたの投稿をお気に入りに登録しました",
->>>>>>> v3.5.0rc1
+ "notification.favourite": "{name}さんがあなたの投稿に╰( ^o^)╮-=ニ=一=三★しました",
"notification.follow": "{name}さんにフォローされました",
"notification.follow_request": "{name} さんがあなたにフォローリクエストしました",
"notification.mention": "{name}さんがあなたに返信しました",
diff --git a/app/javascript/mastodon/reducers/compose.js b/app/javascript/mastodon/reducers/compose.js
index 895da3985..0065ea798 100644
--- a/app/javascript/mastodon/reducers/compose.js
+++ b/app/javascript/mastodon/reducers/compose.js
@@ -351,7 +351,6 @@ export default function compose(state = initialState, action) {
map.set('spoiler_text', '');
}
});
-<<<<<<< HEAD
case COMPOSE_QUOTE:
return state.withMutations(map => {
map.set('in_reply_to', null);
@@ -385,8 +384,6 @@ export default function compose(state = initialState, action) {
map.set('poll', null);
map.set('idempotencyKey', uuid());
});
-=======
->>>>>>> v3.5.0rc1
case COMPOSE_SUBMIT_REQUEST:
return state.set('is_submitting', true);
case COMPOSE_UPLOAD_CHANGE_REQUEST:
diff --git a/app/javascript/mastodon/reducers/modal.js b/app/javascript/mastodon/reducers/modal.js
index 53f10909d..3eab07d9d 100644
--- a/app/javascript/mastodon/reducers/modal.js
+++ b/app/javascript/mastodon/reducers/modal.js
@@ -1,17 +1,5 @@
import { MODAL_OPEN, MODAL_CLOSE } from '../actions/modal';
import { TIMELINE_DELETE } from '../actions/timelines';
-<<<<<<< HEAD
-import { Stack as ImmutableStack, Map as ImmutableMap } from 'immutable';
-
-export default function modal(state = ImmutableStack(), action) {
- switch(action.type) {
- case MODAL_OPEN:
- return state.unshift(ImmutableMap({ modalType: action.modalType, modalProps: action.modalProps }));
- case MODAL_CLOSE:
- return (action.modalType === undefined || action.modalType === state.getIn([0, 'modalType'])) ? state.shift() : state;
- case TIMELINE_DELETE:
- return state.filterNot((modal) => modal.get('modalProps').statusId === action.id);
-=======
import { COMPOSE_UPLOAD_CHANGE_SUCCESS } from '../actions/compose';
import { Stack as ImmutableStack, Map as ImmutableMap } from 'immutable';
@@ -45,7 +33,6 @@ export default function modal(state = initialState, action) {
return popModal(state, { modalType: 'FOCAL_POINT', ignoreFocus: false });
case TIMELINE_DELETE:
return state.update('stack', stack => stack.filterNot((modal) => modal.get('modalProps').statusId === action.id));
->>>>>>> v3.5.0rc1
default:
return state;
}
diff --git a/app/lib/activitypub/activity/create.rb b/app/lib/activitypub/activity/create.rb
index 25f3f49c0..11cd58119 100644
--- a/app/lib/activitypub/activity/create.rb
+++ b/app/lib/activitypub/activity/create.rb
@@ -368,7 +368,6 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
value_or_id(@object['inReplyTo'])
end
-<<<<<<< HEAD
def text_from_content
return Formatter.instance.linkify([[text_from_name, text_from_summary.presence].compact.join("\n\n"), object_url || object_uri].join(' ')) if converted_object_type?
@@ -431,28 +430,16 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
def name_language_map?
@object['nameMap'].is_a?(Hash) && !@object['nameMap'].empty?
-=======
+ end
+
def converted_text
Formatter.instance.linkify([@status_parser.title.presence, @status_parser.spoiler_text.presence, @status_parser.url || @status_parser.uri].compact.join("\n\n"))
->>>>>>> v3.5.0rc1
end
def unsupported_media_type?(mime_type)
mime_type.present? && !MediaAttachment.supported_mime_types.include?(mime_type)
end
-<<<<<<< HEAD
- def supported_blurhash?(blurhash)
- components = blurhash.blank? || !blurhash_valid_chars?(blurhash) ? nil : Blurhash.components(blurhash)
- components.present? && components.none? { |comp| comp > 5 }
- end
-
- def blurhash_valid_chars?(blurhash)
- /^[\w#$%*+-.:;=?@\[\]^{|}~]+$/.match?(blurhash)
- end
-
-=======
->>>>>>> v3.5.0rc1
def skip_download?
return @skip_download if defined?(@skip_download)
diff --git a/config/brakeman.ignore b/config/brakeman.ignore
index bd8d071b6..c24146da4 100644
--- a/config/brakeman.ignore
+++ b/config/brakeman.ignore
@@ -121,22 +121,6 @@
"note": ""
},
{
-<<<<<<< HEAD
- "warning_type": "SQL Injection",
- "warning_code": 0,
- "fingerprint": "9ccb9ba6a6947400e187d515e0bf719d22993d37cfc123c824d7fafa6caa9ac3",
- "check_name": "SQL",
- "message": "Possible SQL injection",
- "file": "lib/mastodon/snowflake.rb",
- "line": 87,
- "link": "https://brakemanscanner.org/docs/warning_types/sql_injection/",
- "code": "connection.execute(\" CREATE OR REPLACE FUNCTION timestamp_id(table_name text)\\n RETURNS bigint AS\\n $$\\n DECLARE\\n time_part bigint;\\n sequence_base bigint;\\n tail bigint;\\n BEGIN\\n time_part := (\\n -- Get the time in milliseconds\\n ((date_part('epoch', now()) * 1000))::bigint\\n -- And shift it over two bytes\\n << 16);\\n\\n sequence_base := (\\n 'x' ||\\n -- Take the first two bytes (four hex characters)\\n substr(\\n -- Of the MD5 hash of the data we documented\\n md5(table_name ||\\n '#{SecureRandom.hex(16)}' ||\\n time_part::text\\n ),\\n 1, 4\\n )\\n -- And turn it into a bigint\\n )::bit(16)::bigint;\\n\\n -- Finally, add our sequence number to our base, and chop\\n -- it to the last two bytes\\n tail := (\\n (sequence_base + nextval(table_name || '_id_seq'))\\n & 65535);\\n\\n -- Return the time part and the sequence part. OR appears\\n -- faster here than addition, but they're equivalent:\\n -- time_part has no trailing two bytes, and tail is only\\n -- the last two bytes.\\n RETURN time_part | tail;\\n END\\n $$ LANGUAGE plpgsql VOLATILE;\\n\")",
- "render_path": null,
- "location": {
- "type": "method",
- "class": "Mastodon::Snowflake",
- "method": "define_timestamp_id"
-=======
"warning_type": "Cross-Site Scripting",
"warning_code": 2,
"fingerprint": "afad51718ae373b2f19d2513029fd2afccf58b9148e475934bc6a162ee33c352",
@@ -161,7 +145,6 @@
"location": {
"type": "template",
"template": "admin/disputes/appeals/_appeal"
->>>>>>> v3.5.0rc1
},
"user_input": "(Unresolved Model).new.strike",
"confidence": "Weak",
@@ -213,13 +196,8 @@
"type": "template",
"template": "admin/trends/links/_preview_card"
},
-<<<<<<< HEAD
- "user_input": "MediaAttachment.attached.find_by!(:shortcode => ((params[:id] or params[:medium_id]))).file.url(:original)",
- "confidence": "High",
-=======
"user_input": "(Unresolved Model).new.url",
"confidence": "Weak",
->>>>>>> v3.5.0rc1
"note": ""
},
{
diff --git a/config/initializers/twitter_regex.rb b/config/initializers/twitter_regex.rb
index d02e859f7..d2ea5f974 100644
--- a/config/initializers/twitter_regex.rb
+++ b/config/initializers/twitter_regex.rb
@@ -24,16 +24,9 @@ module Twitter::TwitterText
)
\)
/iox
-<<<<<<< HEAD
- REGEXEN[:valid_iri_ucschar] = /[\u{A0}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFEF}\u{10000}-\u{1FFFD}\u{20000}-\u{2FFFD}\u{30000}-\u{3FFFD}\u{40000}-\u{4FFFD}\u{50000}-\u{5FFFD}\u{60000}-\u{6FFFD}\u{70000}-\u{7FFFD}\u{80000}-\u{8FFFD}\u{90000}-\u{9FFFD}\u{A0000}-\u{AFFFD}\u{B0000}-\u{BFFFD}\u{C0000}-\u{CFFFD}\u{D0000}-\u{DFFFD}\u{E1000}-\u{EFFFD}]/iou
- REGEXEN[:valid_iri_iprivate] = /[\u{E000}-\u{F8FF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}]/iou
- REGEXEN[:valid_url_query_chars] = /(?:#{REGEXEN[:valid_iri_ucschar]})|(?:#{REGEXEN[:valid_iri_iprivate]})|[a-z0-9!?\*'\(\);:&=\+\$\/%#\[\]\-_\.,~|@]/iou
- REGEXEN[:valid_url_query_ending_chars] = /(?:#{REGEXEN[:valid_iri_ucschar]})|(?:#{REGEXEN[:valid_iri_iprivate]})|[a-z0-9_&=#\/\-]/iou
-=======
UCHARS = '\u{A0}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFEF}\u{10000}-\u{1FFFD}\u{20000}-\u{2FFFD}\u{30000}-\u{3FFFD}\u{40000}-\u{4FFFD}\u{50000}-\u{5FFFD}\u{60000}-\u{6FFFD}\u{70000}-\u{7FFFD}\u{80000}-\u{8FFFD}\u{90000}-\u{9FFFD}\u{A0000}-\u{AFFFD}\u{B0000}-\u{BFFFD}\u{C0000}-\u{CFFFD}\u{D0000}-\u{DFFFD}\u{E1000}-\u{EFFFD}\u{E000}-\u{F8FF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}'
REGEXEN[:valid_url_query_chars] = /[a-z0-9!?\*'\(\);:&=\+\$\/%#\[\]\-_\.,~|@#{UCHARS}]/iou
REGEXEN[:valid_url_query_ending_chars] = /[a-z0-9_&=#\/\-#{UCHARS}]/iou
->>>>>>> v3.5.0rc1
REGEXEN[:valid_url_path] = /(?:
(?:
#{REGEXEN[:valid_general_url_path_chars]}*
diff --git a/config/locales/simple_form.cs.yml b/config/locales/simple_form.cs.yml
index ca3f3629f..3276b4843 100644
--- a/config/locales/simple_form.cs.yml
+++ b/config/locales/simple_form.cs.yml
@@ -164,13 +164,8 @@ cs:
setting_show_application: Odhalit aplikaci použitou k odeslání příspěvků
setting_system_font_ui: Použít výchozí písmo systému
setting_theme: Vzhled stránky
-<<<<<<< HEAD
- setting_trends: Zobrazit dnes populární hashtagy
- setting_unfollow_modal: Ppřed zrušením sledování zobrazovat potvrzovací okno
-=======
setting_trends: Zobrazit dnešní trendy
setting_unfollow_modal: Před zrušením sledování zobrazovat potvrzovací okno
->>>>>>> v3.5.0rc1
setting_use_blurhash: Zobrazit pro skrytá média barevné gradienty
setting_use_pending_items: Pomalý režim
severity: Vážnost
diff --git a/spec/controllers/activitypub/followers_synchronizations_controller_spec.rb b/spec/controllers/activitypub/followers_synchronizations_controller_spec.rb
index aee49652e..e233bd560 100644
--- a/spec/controllers/activitypub/followers_synchronizations_controller_spec.rb
+++ b/spec/controllers/activitypub/followers_synchronizations_controller_spec.rb
@@ -47,11 +47,7 @@ RSpec.describe ActivityPub::FollowersSynchronizationsController, type: :controll
it 'returns orderedItems with followers from example.com' do
expect(body[:orderedItems]).to be_an Array
-<<<<<<< HEAD
- expect(body[:orderedItems].sort).to eq [follower_4.uri, follower_1.uri, follower_2.uri]
-=======
expect(body[:orderedItems]).to match_array([follower_4.uri, follower_1.uri, follower_2.uri])
->>>>>>> v3.5.0rc1
end
it 'returns private Cache-Control header' do
diff --git a/spec/controllers/api/v1/accounts/notes_controller_spec.rb b/spec/controllers/api/v1/accounts/notes_controller_spec.rb
index 7b5fe85f5..42c2d8a86 100644
--- a/spec/controllers/api/v1/accounts/notes_controller_spec.rb
+++ b/spec/controllers/api/v1/accounts/notes_controller_spec.rb
@@ -3,11 +3,7 @@ require 'rails_helper'
describe Api::V1::Accounts::NotesController do
render_views
-<<<<<<< HEAD
- let(:user) { Fabricate(:user, account: Fabricate(:account, username: 'alice')) }
-=======
let(:user) { Fabricate(:user) }
->>>>>>> v3.5.0rc1
let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: 'write:accounts') }
let(:account) { Fabricate(:account) }
let(:comment) { 'foo' }
@@ -35,11 +31,7 @@ describe Api::V1::Accounts::NotesController do
end
end
-<<<<<<< HEAD
- context 'when account note exceends allowed length' do
-=======
context 'when account note exceeds allowed length' do
->>>>>>> v3.5.0rc1
let(:comment) { 'a' * 2_001 }
it 'returns 422' do