soapbox-pub/soapbox-fe --> soapbox-pub/soapbox

merge-requests/1768/head
Alex Gleason 2022-09-04 15:15:54 -05:00
rodzic 4c6b2ab2f0
commit d9d9c4521f
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 7211D1F99744FBB7
22 zmienionych plików z 43 dodań i 44 usunięć

Wyświetl plik

@ -1,5 +1,5 @@
{ {
// Place your soapbox-fe workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and // Place your Soapbox workspace snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope // description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is // is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are: // used to trigger the snippet and the body will be expanded and inserted. Possible variables are:

Wyświetl plik

@ -211,7 +211,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added ### Added
- Initial beta release. - Initial beta release.
[Unreleased]: https://gitlab.com/soapbox-pub/soapbox-fe/-/compare/v1.0.0...develop [Unreleased]: https://gitlab.com/soapbox-pub/soapbox/-/compare/v1.0.0...develop
[Unreleased patch]: https://gitlab.com/soapbox-pub/soapbox-fe/-/compare/v1.0.0...stable/1.0.x [Unreleased patch]: https://gitlab.com/soapbox-pub/soapbox/-/compare/v1.0.0...stable/1.0.x
[1.0.0]: https://gitlab.com/soapbox-pub/soapbox-fe/-/compare/v0.9.0...v1.0.0 [1.0.0]: https://gitlab.com/soapbox-pub/soapbox/-/compare/v0.9.0...v1.0.0
[0.9.0]: https://gitlab.com/soapbox-pub/soapbox-fe/-/tags/v0.9.0 [0.9.0]: https://gitlab.com/soapbox-pub/soapbox/-/tags/v0.9.0

Wyświetl plik

@ -14,13 +14,13 @@ Installing Soapbox on an existing Pleroma server is extremely easy.
Just ssh into the server and download a .zip of the latest build: Just ssh into the server and download a .zip of the latest build:
```sh ```sh
curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/develop/download?job=build-production -o soapbox.zip
``` ```
Then unpack it into Pleroma's `instance` directory: Then unpack it into Pleroma's `instance` directory:
```sh ```sh
busybox unzip soapbox-fe.zip -o -d /opt/pleroma/instance busybox unzip soapbox.zip -o -d /opt/pleroma/instance
``` ```
**That's it!** :tada: **That's it!** :tada:
@ -54,7 +54,7 @@ location / {
} }
``` ```
(See [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/installation/mastodon.conf) for a full example.) (See [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/installation/mastodon.conf) for a full example.)
Soapbox incorporates much of the [Mastodon API](https://docs.joinmastodon.org/methods/), [Pleroma API](https://api.pleroma.social/), and more. Soapbox incorporates much of the [Mastodon API](https://docs.joinmastodon.org/methods/), [Pleroma API](https://api.pleroma.social/), and more.
It detects features supported by the backend to provide the right experience for the backend. It detects features supported by the backend to provide the right experience for the backend.
@ -64,8 +64,8 @@ It detects features supported by the backend to provide the right experience for
To get it running, just clone the repo: To get it running, just clone the repo:
```sh ```sh
git clone https://gitlab.com/soapbox-pub/soapbox-fe.git git clone https://gitlab.com/soapbox-pub/soapbox.git
cd soapbox-fe cd soapbox
``` ```
Ensure that Node.js and Yarn are installed, then install dependencies: Ensure that Node.js and Yarn are installed, then install dependencies:
@ -101,7 +101,7 @@ Try again.
### Troubleshooting: it's not working! ### Troubleshooting: it's not working!
Run `node -V` and compare your Node.js version with the version in [`.tool-versions`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/.tool-versions). Run `node -V` and compare your Node.js version with the version in [`.tool-versions`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/.tool-versions).
If they don't match, try installing [asdf](https://asdf-vm.com/). If they don't match, try installing [asdf](https://asdf-vm.com/).
## Local Dev Configuration ## Local Dev Configuration

Wyświetl plik

@ -23,6 +23,5 @@
</ol> </ol>
<h1 id="opensource">Open Source Software</h1> <h1 id="opensource">Open Source Software</h1>
<p>Soapbox is free and open source (FOSS) software that runs atop a Pleroma server</p> <p>Soapbox is free and open source (FOSS) software.</p>
<p>The Soapbox repository can be found at <a href="https://gitlab.com/soapbox-pub/soapbox-fe">Soapbox-fe</a></p> <p>The Soapbox repository can be found at <a href="https://gitlab.com/soapbox-pub/soapbox">Soapbox</a></p>
<p>The Pleroma server repository can be found at <a href="https://git.pleroma.social/pleroma/pleroma">Pleroma-be</a></p>

Wyświetl plik

@ -106,10 +106,10 @@ export function importFetchedStatus(status: APIEntity, idempotencyKey?: string)
const isBroken = (status: APIEntity) => { const isBroken = (status: APIEntity) => {
try { try {
// Skip empty accounts // Skip empty accounts
// https://gitlab.com/soapbox-pub/soapbox-fe/-/issues/424 // https://gitlab.com/soapbox-pub/soapbox/-/issues/424
if (!status.account.id) return true; if (!status.account.id) return true;
// Skip broken reposts // Skip broken reposts
// https://gitlab.com/soapbox-pub/soapbox/-/issues/28 // https://gitlab.com/soapbox-pub/rebased/-/issues/28
if (status.reblog && !status.reblog.account.id) return true; if (status.reblog && !status.reblog.account.id) return true;
return false; return false;
} catch (e) { } catch (e) {

Wyświetl plik

@ -78,7 +78,7 @@ export const FieldRecord = ImmutableRecord({
value_plain: '', value_plain: '',
}); });
// https://gitlab.com/soapbox-pub/soapbox-fe/-/issues/549 // https://gitlab.com/soapbox-pub/soapbox/-/issues/549
const normalizePleromaLegacyFields = (account: ImmutableMap<string, any>) => { const normalizePleromaLegacyFields = (account: ImmutableMap<string, any>) => {
return account.update('pleroma', ImmutableMap(), (pleroma: ImmutableMap<string, any>) => { return account.update('pleroma', ImmutableMap(), (pleroma: ImmutableMap<string, any>) => {
return pleroma.withMutations(pleroma => { return pleroma.withMutations(pleroma => {

Wyświetl plik

@ -20,7 +20,7 @@ const importEmojis = (customEmojis: APIEntity[]) => {
const emojis = (fromJS(customEmojis) as ImmutableList<ImmutableMap<string, string>>).filter((emoji) => { const emojis = (fromJS(customEmojis) as ImmutableList<ImmutableMap<string, string>>).filter((emoji) => {
// If a custom emoji has the shortcode of a Unicode emoji, skip it. // If a custom emoji has the shortcode of a Unicode emoji, skip it.
// Otherwise it breaks EmojiMart. // Otherwise it breaks EmojiMart.
// https://gitlab.com/soapbox-pub/soapbox-fe/-/issues/610 // https://gitlab.com/soapbox-pub/soapbox/-/issues/610
const shortcode = emoji.get('shortcode', '').toLowerCase(); const shortcode = emoji.get('shortcode', '').toLowerCase();
return !emojiData[shortcode]; return !emojiData[shortcode];
}); });

Wyświetl plik

@ -67,7 +67,7 @@ const fixNotification = notification => {
const isValid = notification => { const isValid = notification => {
try { try {
// https://gitlab.com/soapbox-pub/soapbox-fe/-/issues/424 // https://gitlab.com/soapbox-pub/soapbox/-/issues/424
if (!notification.account.id) { if (!notification.account.id) {
return false; return false;
} }

Wyświetl plik

@ -242,7 +242,7 @@ const timelineDisconnect = (state: State, timelineId: string) => {
if (items.isEmpty()) return; if (items.isEmpty()) return;
// This is causing problems. Disable for now. // This is causing problems. Disable for now.
// https://gitlab.com/soapbox-pub/soapbox-fe/-/issues/716 // https://gitlab.com/soapbox-pub/soapbox/-/issues/716
// timeline.set('items', addStatusId(items, null)); // timeline.set('items', addStatusId(items, null));
})); }));
}; };

Wyświetl plik

@ -46,8 +46,8 @@ export const PIXELFED = 'Pixelfed';
export const TRUTHSOCIAL = 'TruthSocial'; export const TRUTHSOCIAL = 'TruthSocial';
/** /**
* Soapbox BE, the recommended Pleroma fork for Soapbox. * Rebased, the recommended backend for Soapbox.
* @see {@link https://gitlab.com/soapbox-pub/soapbox-be} * @see {@link https://gitlab.com/soapbox-pub/rebased}
*/ */
export const SOAPBOX = 'soapbox'; export const SOAPBOX = 'soapbox';

Wyświetl plik

@ -35,7 +35,7 @@ export const shouldHaveCard = (status: StatusEntity): boolean => {
}; };
/** Whether the media IDs on this status have integer IDs (opposed to FlakeIds). */ /** Whether the media IDs on this status have integer IDs (opposed to FlakeIds). */
// https://gitlab.com/soapbox-pub/soapbox-fe/-/merge_requests/1087 // https://gitlab.com/soapbox-pub/soapbox/-/merge_requests/1087
export const hasIntegerMediaIds = (status: StatusEntity): boolean => { export const hasIntegerMediaIds = (status: StatusEntity): boolean => {
return status.media_attachments.some(({ id }) => isIntegerId(id)); return status.media_attachments.some(({ id }) => isIntegerId(id));
}; };

Wyświetl plik

@ -11,7 +11,7 @@ The best way to get Soapbox builds is from a GitLab CI job.
The official build URL is here: The official build URL is here:
``` ```
https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/develop/download?job=build-production https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/develop/download?job=build-production
``` ```
(Note that `develop` in that URL can be replaced with any git ref, eg `v2.0.0`, and thus will be updated with the latest zip whenever a new commit is pushed to `develop`.) (Note that `develop` in that URL can be replaced with any git ref, eg `v2.0.0`, and thus will be updated with the latest zip whenever a new commit is pushed to `develop`.)
@ -44,7 +44,7 @@ location ~ ^/(api|oauth|admin) {
} }
``` ```
We recommend trying [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/installation/mastodon.conf) as a starting point. We recommend trying [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/installation/mastodon.conf) as a starting point.
It is fine-tuned, includes support for federation, and should work with any backend. It is fine-tuned, includes support for federation, and should work with any backend.
## The ServiceWorker ## The ServiceWorker

Wyświetl plik

@ -13,7 +13,7 @@ mkdir -p /opt/soapbox
Fetch the build. Fetch the build.
```sh ```sh
curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/v1.3.0/download?job=build-production -o /tmp/soapbox-fe.zip curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/v1.3.0/download?job=build-production -o /tmp/soapbox-fe.zip
``` ```
Unzip the build. Unzip the build.

Wyświetl plik

@ -7,7 +7,7 @@ If you want to install Soapbox to a Pleroma instance installed using [YunoHost](
First, download the latest build of Soapbox from GitLab. First, download the latest build of Soapbox from GitLab.
```sh ```sh
curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/v1.3.0/download?job=build-production -o soapbox-fe.zip curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/v1.3.0/download?job=build-production -o soapbox-fe.zip
``` ```
## 2. Unzip the build ## 2. Unzip the build

Wyświetl plik

@ -8,7 +8,7 @@ To do so, shell into your server and unpack Soapbox:
```sh ```sh
mkdir -p /opt/soapbox mkdir -p /opt/soapbox
curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip
busybox unzip soapbox-fe.zip -o -d /opt/soapbox busybox unzip soapbox-fe.zip -o -d /opt/soapbox
``` ```
@ -17,7 +17,7 @@ Now create an Nginx file for Soapbox with Mastodon.
If you already have one, replace it: If you already have one, replace it:
```sh ```sh
curl https://gitlab.com/soapbox-pub/soapbox-fe/-/raw/develop/installation/mastodon.conf > /etc/nginx/sites-available/mastodon curl https://gitlab.com/soapbox-pub/soapbox/-/raw/develop/installation/mastodon.conf > /etc/nginx/sites-available/mastodon
``` ```
Edit this file and replace all occurrences of `example.com` with your domain name. Edit this file and replace all occurrences of `example.com` with your domain name.

Wyświetl plik

@ -1,6 +1,6 @@
# Updating Soapbox # Updating Soapbox
You should always check the [release notes/changelog](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/CHANGELOG.md) in case there are deprecations, special update changes, etc. You should always check the [release notes/changelog](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/CHANGELOG.md) in case there are deprecations, special update changes, etc.
Besides that, it's relatively pretty easy to update Soapbox. There's two ways to go about it: with the command line or with an unofficial script. Besides that, it's relatively pretty easy to update Soapbox. There's two ways to go about it: with the command line or with an unofficial script.
@ -10,7 +10,7 @@ To update Soapbox via the command line, do the following:
``` ```
# Download the build. # Download the build.
curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip
# Remove all the current Soapbox build in Pleroma's instance directory. # Remove all the current Soapbox build in Pleroma's instance directory.
rm -R /opt/pleroma/instance/static/packs rm -R /opt/pleroma/instance/static/packs

Wyświetl plik

@ -2,20 +2,20 @@
Thank you for your interest in Soapbox! Thank you for your interest in Soapbox!
When contributing to Soapbox, please first discuss the change you wish to make by [opening an issue](https://gitlab.com/soapbox-pub/soapbox-fe/-/issues). When contributing to Soapbox, please first discuss the change you wish to make by [opening an issue](https://gitlab.com/soapbox-pub/soapbox/-/issues).
## Opening an MR (merge request) ## Opening an MR (merge request)
1. Smash that "fork" button on GitLab to make a copy of the repo. 1. Smash that "fork" button on GitLab to make a copy of the repo.
2. Clone the repo locally, then begin work on a new branch (eg not `develop`). 2. Clone the repo locally, then begin work on a new branch (eg not `develop`).
3. Push your branch to your fork. 3. Push your branch to your fork.
4. Once pushed, GitLab should provide you with a URL to open a new merge request right in your terminal. If not, do it [manually](https://gitlab.com/soapbox-pub/soapbox-fe/-/merge_requests/new). 4. Once pushed, GitLab should provide you with a URL to open a new merge request right in your terminal. If not, do it [manually](https://gitlab.com/soapbox-pub/soapbox/-/merge_requests/new).
### Ensuring the CI pipeline succeeds ### Ensuring the CI pipeline succeeds
When you push to a branch, the CI pipeline will run. When you push to a branch, the CI pipeline will run.
[Soapbox uses GitLab CI](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/.gitlab-ci.yml) to lint, run tests, and verify changes. [Soapbox uses GitLab CI](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/.gitlab-ci.yml) to lint, run tests, and verify changes.
It's important this pipeline passes, otherwise we cannot merge the change. It's important this pipeline passes, otherwise we cannot merge the change.
New users of gitlab.com may see a "detatched pipeline" error. New users of gitlab.com may see a "detatched pipeline" error.
@ -31,4 +31,4 @@ We recommend developing Soapbox with [VSCodium](https://vscodium.com/) (or its p
This will help give you feedback about your changes _in the editor itself_ before GitLab CI performs linting, etc. This will help give you feedback about your changes _in the editor itself_ before GitLab CI performs linting, etc.
When this project is opened in Code it will automatically recommend extensions. When this project is opened in Code it will automatically recommend extensions.
See [`.vscode/extensions.json`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/.vscode/extensions.json) for the full list. See [`.vscode/extensions.json`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/.vscode/extensions.json) for the full list.

Wyświetl plik

@ -48,7 +48,7 @@ Typically checks are done against `BACKEND_NAME` and `VERSION`.
The version string is similar in purpose to a [User-Agent](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent) string. The version string is similar in purpose to a [User-Agent](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent) string.
The format was first invented by Pleroma, but is now widely used, including by Pixelfed, Mitra, and Soapbox BE. The format was first invented by Pleroma, but is now widely used, including by Pixelfed, Mitra, and Soapbox BE.
See [`features.ts`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/app/soapbox/utils/features.ts) for the complete list of features. See [`features.ts`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/app/soapbox/utils/features.ts) for the complete list of features.
## Forks of other software ## Forks of other software
@ -73,4 +73,4 @@ For Pleroma forks, the fork name should be in the compat section (eg Soapbox BE)
## Adding support for a new backend ## Adding support for a new backend
If the backend conforms to the above format, please modify [`features.ts`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/app/soapbox/utils/features.ts) and submit a merge request to enable features for your backend! If the backend conforms to the above format, please modify [`features.ts`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/app/soapbox/utils/features.ts) and submit a merge request to enable features for your backend!

Wyświetl plik

@ -18,7 +18,7 @@ location / {
} }
``` ```
(See [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/installation/mastodon.conf) for a full example.) (See [`mastodon.conf`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/installation/mastodon.conf) for a full example.)
Soapbox incorporates much of the [Mastodon API](https://docs.joinmastodon.org/methods/), [Pleroma API](https://api.pleroma.social/), and more. Soapbox incorporates much of the [Mastodon API](https://docs.joinmastodon.org/methods/), [Pleroma API](https://api.pleroma.social/), and more.
It detects features supported by the backend to provide the right experience for the backend. It detects features supported by the backend to provide the right experience for the backend.

Wyświetl plik

@ -3,7 +3,7 @@
To get it running, just clone the repo: To get it running, just clone the repo:
``` ```
git clone https://gitlab.com/soapbox-pub/soapbox-fe.git git clone https://gitlab.com/soapbox-pub/soapbox.git
cd soapbox-fe cd soapbox-fe
``` ```
@ -40,5 +40,5 @@ Try again.
## Troubleshooting: it's not working! ## Troubleshooting: it's not working!
Run `node -V` and compare your Node.js version with the version in [`.tool-versions`](https://gitlab.com/soapbox-pub/soapbox-fe/-/blob/develop/.tool-versions). Run `node -V` and compare your Node.js version with the version in [`.tool-versions`](https://gitlab.com/soapbox-pub/soapbox/-/blob/develop/.tool-versions).
If they don't match, try installing [asdf](https://asdf-vm.com/). If they don't match, try installing [asdf](https://asdf-vm.com/).

Wyświetl plik

@ -10,7 +10,7 @@ First, follow the instructions to [install Pleroma](https://docs-develop.pleroma
The Soapbox frontend is the main component of Soapbox. Once you've installed Pleroma, installing Soapbox is a breeze. The Soapbox frontend is the main component of Soapbox. Once you've installed Pleroma, installing Soapbox is a breeze.
First, ssh into the server and download a .zip of the latest build: ``curl -L https://gitlab.com/soapbox-pub/soapbox-fe/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip`` First, ssh into the server and download a .zip of the latest build: ``curl -L https://gitlab.com/soapbox-pub/soapbox/-/jobs/artifacts/develop/download?job=build-production -o soapbox-fe.zip``
Then unpack it into Pleroma's ``instance`` directory: ``busybox unzip soapbox-fe.zip -o -d /opt/pleroma/instance`` Then unpack it into Pleroma's ``instance`` directory: ``busybox unzip soapbox-fe.zip -o -d /opt/pleroma/instance``

Wyświetl plik

@ -1,19 +1,19 @@
{ {
"name": "soapbox-fe", "name": "soapbox",
"displayName": "Soapbox", "displayName": "Soapbox",
"version": "3.0.0", "version": "3.0.0",
"description": "Soapbox frontend for the Fediverse.", "description": "Soapbox frontend for the Fediverse.",
"homepage": "https://soapbox.pub/", "homepage": "https://soapbox.pub/",
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://gitlab.com/soapbox-pub/soapbox-fe" "url": "https://gitlab.com/soapbox-pub/soapbox"
}, },
"keywords": [ "keywords": [
"fediverse", "fediverse",
"pleroma" "pleroma"
], ],
"bugs": { "bugs": {
"url": "https://gitlab.com/soapbox-pub/soapbox-fe/-/issues" "url": "https://gitlab.com/soapbox-pub/soapbox/-/issues"
}, },
"scripts": { "scripts": {
"start": "npx webpack-dev-server", "start": "npx webpack-dev-server",