Merge branch 'develop' into refactor/push-notification

This commit is contained in:
naskya 2024-05-01 14:11:40 +09:00
commit 7449802409
No known key found for this signature in database
GPG key ID: 712D413B3A9FED5C
5 changed files with 24 additions and 6 deletions

View file

@ -39,6 +39,9 @@ COPY packages/backend-rs packages/backend-rs/
# Compile backend-rs
RUN NODE_ENV='production' pnpm run --filter backend-rs build
# Copy/Overwrite index.js to mitigate the bug in napi-rs codegen
COPY packages/backend-rs/index.js packages/backend-rs/built/index.js
# Copy in the rest of the files to compile
COPY . ./
RUN NODE_ENV='production' pnpm run --filter firefish-js build

View file

@ -17,7 +17,7 @@ Critical security updates are indicated by the :warning: icon.
- Improve the usability of the feature to prevent forgetting to write alt texts
- Add a server-wide setting for the maximum number of antennas each user can create
- Fix bugs (including a medium sevirity security issue)
- Fix bugs (including a medium severity security issue)
- We are very thankful to @mei23 for kindly sharing the information about the security issue.
## [v20240421](https://firefish.dev/firefish/firefish/-/merge_requests/10756/commits)

View file

@ -269,7 +269,7 @@ In this instruction, we use [Caddy](https://caddyserver.com/) to make the Firefi
WorkingDirectory=/home/firefish/firefish
Environment="NODE_ENV=production"
Environment="npm_config_cache=/tmp"
Environment="NODE_OPTIONS=--max-old-space-size=3072"
Environment="NODE_OPTIONS=--max-old-space-size=3072"
# uncomment the following line if you use jemalloc (note that the path varies on different environments)
# Environment="LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2"
StandardOutput=journal

View file

@ -928,7 +928,7 @@ colored: "Coloré"
label: "Étiquette"
localOnly: "Local seulement"
account: "Comptes"
getQrCode: "Obtenir le code QR"
getQrCode: "Afficher le code QR"
_emailUnavailable:
used: "Adresse non disponible"
@ -1836,6 +1836,7 @@ _notification:
reacted: a réagit à votre publication
renoted: a boosté votre publication
voted: a voté pour votre sondage
andCountUsers: et {count} utilisateur(s) de plus {acted}
_deck:
alwaysShowMainColumn: "Toujours afficher la colonne principale"
columnAlign: "Aligner les colonnes"
@ -2321,3 +2322,13 @@ markLocalFilesNsfwByDefaultDescription: Indépendamment de ce réglage, les util
ne sont pas affectés.
noteEditHistory: Historique des publications
media: Multimédia
antennaLimit: Le nombre maximal d'antennes que chaque utilisateur peut créer
showAddFileDescriptionAtFirstPost: Ouvrez automatiquement un formulaire pour écrire
une description lorsque vous tentez de publier des fichiers sans description
foldNotification: Grouper les notifications similaires
cannotEditVisibility: Vous ne pouvez pas modifier la visibilité
useThisAccountConfirm: Voulez-vous continuer avec ce compte?
inputAccountId: Veuillez saisir votre compte (par exemple, @firefish@info.firefish.dev)
remoteFollow: Abonnement à distance
copyRemoteFollowUrl: Copier l'URL d'abonnement à distance
slashQuote: Citation enchaînée

View file

@ -173,11 +173,15 @@ const rootEl = ref<HTMLElement>();
const items = ref<Item[]>([]);
const foldedItems = ref([]) as Ref<Fold[]>;
function toReversed<T>(arr: T[]) {
return [...arr].reverse();
}
// To improve performance, we do not use vues `computed` here
function calculateItems() {
function getItems<T>(folder: (ns: Item[]) => T[]) {
const res = [
folder(prepended.value.toReversed()),
folder(toReversed(prepended.value)),
...arrItems.value.map((arr) => folder(arr)),
folder(appended.value),
].flat(1);
@ -351,7 +355,7 @@ async function fetch(firstFetching?: boolean) {
if (firstFetching && props.folder != null) {
// In this way, prepended has some initial values for folding
prepended.value = res.toReversed();
prepended.value = toReversed(res);
} else {
// For ascending and offset modes, append and prepend may cause item duplication
// so they need to be filtered out.
@ -398,7 +402,7 @@ const prepend = (...item: Item[]): void => {
prepended.value.length >
(props.pagination.secondFetchLimit || SECOND_FETCH_LIMIT_DEFAULT)
) {
arrItems.value.unshift(prepended.value.toReversed());
arrItems.value.unshift(toReversed(prepended.value));
prepended.value = [];
// We don't need to calculate here because it won't cause any changes in items
}