Commit Graph

129 Commits

Author SHA1 Message Date
Kainoa Kanter
7fb130b06e formatting 2023-04-06 18:56:46 -07:00
ThatOneCalculator
daba80177a
feat: push notifs button
Co-authored-by: Tamania <tamaina@hotmail.co.jp>
2023-04-03 20:36:59 -07:00
amy bones
b28ba9f82f
fix: changing passwords, 2fa, and password resets.
The argon2 usage was only implemented for sign-ins which broke a bunch of other
endpoints and features.
2023-04-03 05:14:50 -07:00
ThatOneCalculator
e9b45260b5
chore: 🎨 format 2023-04-01 21:10:31 -07:00
Kaitlyn Allan
b96fe57793 Improve performance of charts
Fix some undefined !== deleted issues
2023-04-01 21:42:03 +10:00
Kaity A
706b4ae602 Add sonic full-text search support (#9714)
This pull request adds support for the [sonic](https://github.com/valeriansaliou/sonic) full text indexing server into Calckey.

In addition to this, a stateful endpoint has been added that will completely (re-)index all notes into any (elasticsearch and/or sonic) indexing server defined in your config at `/api/admin/search/index-all`. It can (optionally) take input data to define the starting point, such as:

```
{"cursor": "9beg3lx6ad"}
```

Currently if both sonic and elasticsearch are defined in the config, sonic will take precedence for searching, but both indexes will continue to be updated for new note creations. Future enhancements may include the ability to choose which indexer to use (or combine multiple).

Co-authored-by: Kaitlyn Allan <kaitlyn.allan@enlabs.cloud>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9714
Co-authored-by: Kaity A <supakaity@noreply.codeberg.org>
Co-committed-by: Kaity A <supakaity@noreply.codeberg.org>
2023-03-19 08:26:47 +00:00
Kaity A
f2371daff3 invalidate local user cache on user update 2023-02-12 07:54:59 +00:00
ThatOneCalculator
69da6fa295
chore: formatting 2023-02-11 17:22:05 -08:00
Kaity A
653c71dad5 Enable reply update/display in detailed view. (#9606)
This PR establishes a new replied note stream update for subscribed notes, which gets fired off whenever a note receives a reply and the user is subscribed to the note for updates.

It specifically does not provide note details as part of the update, just the note id of the reply, so that they must go and retrieve the note and be subject to the proper permission and visibility checks.

The detailed note component has then been updated to watch for the replied notification so it can add new replies to the thread as they are created.

This allows both seeing new replies while on the page, and also to see your own replies appear after you post them without having to reload the page.

This PR relies on https://codeberg.org/calckey/calckey.js/pulls/2 to add the replied type to the calkey.js module.

Co-authored-by: Kaity A <supakaity@blahaj.zone>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9606
Co-authored-by: Kaity A <supakaity@noreply.codeberg.org>
Co-committed-by: Kaity A <supakaity@noreply.codeberg.org>
2023-02-12 01:19:43 +00:00
ThatOneCalculator
bb927f1668
fix: 🐛 following issues
Closes #9544
2023-02-04 12:37:20 -08:00
ThatOneCalculator
dc0243b8ea
fix 2023-02-01 11:55:45 -08:00
Skystryder
72e8d9e1ce Cleaning up image conversions to use webp, and increasing the thumbnail size. 2023-01-28 17:46:03 -08:00
ThatOneCalculator
abf47e54f3
clean up w/ rome 2023-01-16 11:19:20 -08:00
cutestnekoaqua
2d8cd5fcde
fix: deliver queue 2023-01-15 02:25:01 +01:00
ThatOneCalculator
7c2dabd047
no more eslint 2023-01-12 20:54:33 -08:00
ThatOneCalculator
6b00abf05c
refactor: 🎨 rome 2023-01-12 20:40:33 -08:00
Kainoa Kanter
508b33e503 Admin set default reactions (#9404)
Co-authored-by: ThatOneCalculator <kainoa@t1c.dev>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9404
2023-01-05 04:06:48 +00:00
Naomi Ahmed
b019c704c2
prevent notifications if the notification contains a note that is muted 2022-12-26 04:19:20 +00:00
Cleo
b1933d00b9 Merge pull request '[Chore] Partial translating of ActivityPub/Boot code + Formatting' (#9229) from prettykool/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9229
2022-12-18 21:01:22 +00:00
chimiana
3e9076045c Fix for #9194, converts webp to png instead of jpg, preserving transparency 2022-12-17 02:26:19 +00:00
PK
845dfc3838
Translate portions of backend/src/remote/activitypub, the suspend-user service, and the boot process.
Some of these weren't translated so I thought I'd do 'em cause why not ¯\_(ツ)_/¯
2022-12-15 12:44:03 -06:00
cutestnekoaqua
9963bea521 WIP move api call 2022-12-08 01:05:07 +01:00
ThatOneCalculator
8eecacec4f AVIF support 2022-11-14 18:53:38 -08:00
Francis Dinh
b331d1b0eb use await for notes.countBy 2022-10-26 14:48:37 -07:00
Johann150
74cf3d887c backend: fix lint "no-throw-literal" 2022-08-04 13:36:37 -07:00
Johann150
dd28859348 fix spelling error 2022-08-04 13:34:18 -07:00
Johann150
20763a84ee Merge: enhance privacy of notes
https://akkoma.dev/FoundKeyGang/FoundKey/pulls/14
2022-07-25 13:36:44 -07:00
ThatOneCalculator
e90d5b23db More #31748f 2022-07-24 18:36:55 -07:00
ThatOneCalculator
b1efe26c89 More Calckey strings 2022-07-19 10:13:17 -07:00
Johann150
714c80bf3f
enhance: read theme color nodeinfo (#8977)
* provide theme color in nodeinfo metadata

* read theme color from nodeinfo

Prefer to read the theme color from the nodeinfo since it is more
performant than performing selector search on a DOM.
2022-07-13 21:06:24 +09:00
MeiMei
660781afd9
Fix crash at startup if TensorFlow is not supported (#8984)
* Lazy loading tensorflow

* CHANGELOG

* CHANGELOG

* Check CPU flags

* .
2022-07-12 10:38:57 +09:00
tamaina
83ebe79a3f
enhance(sw): If receiving a push notification issued more than a day, ignore it. (#8980)
* enhance(sw): ignore old push notification

* ✌️

* 半日

* !==

* 1日
2022-07-10 15:15:21 +09:00
syuilo
75d516011b enhance: make active email validation configurable 2022-07-09 15:05:55 +09:00
syuilo
e560601815
feat: auto nsfw detection (#8840)
* feat: auto nsfw detection

* ✌️

* Update ja-JP.yml

* Update ja-JP.yml

* ポルノ判定のしきい値を高めに

* エラーハンドリングちゃんとした

* Update ja-JP.yml

* 感度設定を強化

* refactor

* feat: add video support for auto nsfw detection

* rename: image -> media

* .js

* fix: add missing error handling

* fix: use valid pathname instead of using filename due to invalid usage

* perf(nsfw-detection): decode frames

* disable detection of video for some reasons

* perf(nsfw-detection): streamify detection process for video

* disable disallowUploadWhenPredictedAsPorn option

* fix(nsfw-detection): improve reliability

* fix(nsfw-detection): use Math.ceil instead of Math.round

* perf(nsfw-detection): delete tmp frames after used

* fix(nsfw-detection): FSWatcher does not emit ready event

* perf(nsfw-detection): skip black frames

* refactor: strip exists check

* Update package.json

* めっちゃ変えた

* lint

* Update COPYING

* オプションで動画解析できるように

* Update yarn.lock

* Update CHANGELOG.md

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
2022-07-07 21:06:37 +09:00
CyberRex
cd07eb222e
Add additional drive capacity change support (#8867)
* Add additional drive capacity change support

* Update packages/backend/src/server/api/endpoints/admin/drive-capacity-override.ts

Co-authored-by: Johann150 <johann@qwertqwefsday.eu>

* 🎨

* show instance default capacity in placeholder

* fix

* update api/drive

* fix

* remove :

* fix lint

Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2022-07-05 00:21:01 +09:00
syuilo
eccc90c843
feat: Log user ips (#8872)
* wip

* store ip and headers

* Update admin-file.vue

* require admin for view ip/headers

* IP (recent) 消した

* admin必須

* opt in

* clean ips periodically

* respect logging setting in drive/files/create
2022-07-02 15:12:11 +09:00
syuilo
329f055a97 feat: make possible to delete an account by admin
Resolve #8830
2022-06-27 23:49:16 +09:00
Johann150
bc3ae901cc
refactor: remove duplicate code (#8895) 2022-06-27 21:48:10 +09:00
Johann150
a5241379af
fix lints 2022-06-24 12:44:22 +02:00
MeiMei
1d8ec102f1
fix: GenerateVideoThumbnail (#8825)
* fix: GenerateVideoThumbnail

* CHANGELOG

* fix cleanup

* Revert "fix cleanup"

This reverts commit d54cf8262ac01a3deb6b8dd7689ec144d4d09ea8.
2022-06-14 23:02:14 +09:00
Johann150
963758d8ec
fix: missing file name parameter (#8820) 2022-06-13 00:25:06 +09:00
syuilo
d17298d3b5 fix(test): make chart tests working 2022-06-05 20:37:24 +09:00
syuilo
89419c05b2 use node 16 2022-06-04 17:26:56 +09:00
Johann150
32dff28460
fix: add id for activitypub follows (#8689)
* add id for activitypub follows

* fix lint

* fix: follower must be local, followee must be remote

Misskey will only use ActivityPub follow requests for users that are local
and are requesting to follow a remote user. This check is to ensure that
this endpoint can not be used by other services or instances.

* fix: missing import

* render block with id

* fix comment
2022-06-04 13:52:42 +09:00
Johann150
c56e45ecef
fix: always remove completed tasks (#8771) 2022-05-31 17:54:02 +09:00
Johann150
804fa33535
refactor: improve code quality (#8751)
* remove unnecessary if

`Array.prototype.some` already returns a boolean so an if to return
true or false is completely unnecessary in this case.

* perf: use count instead of find

When using `count` instead of `findOneBy`, the data is not
unnecessarily loaded.

* remove duplicate null check

The variable is checked for null in the lines above and the function
returns if so. Therefore, it can not be null at this point.

* simplify `getJsonSchema`

Because the assigned value is `null` and the used keys are only
shallow, use of `nestedProperty.set` seems inappropriate. Because the
value is not read, the initial for loop can be replaced by a `for..in`
loop.

Since all keys will be assigned `null`, the condition of the ternary
expression in the nested function will always be true. Therefore the
recursion case will never happen. With this the nested function can be
eliminated.

* remove duplicate condition

The code above already checks `dragging` and returns if it is truthy.
Checking it again later is therefore unnecessary.

To make this more obvious the `return` is removed in favour of using
an if...else construct.

* remove impossible "unknown" time

The `ago` variable will always be a number and all non-negative numbers
are already covered by other cases, the negative case is handled with
`future` so there is no case when `unkown` could be achieved.
2022-05-29 15:15:52 +09:00
Johann150
e27c6abaea
refactor: temporary files (#8713)
* simplify temporary files for thumbnails

Because only a single file will be written to the directory, creating a
separate directory seems unnecessary. If only a temporary file is created,
the code from `createTemp` can be reused here as well.

* refactor: deduplicate code for temporary files/directories

To follow the DRY principle, the same code should not be duplicated
across different files. Instead an already existing function is used.

Because temporary directories are also create in multiple locations,
a function for this is also newly added to reduce duplication.

* fix: clean up identicon temp files

The temporary files for identicons are not reused and can be deleted
after they are fully read. This condition is met when the stream is closed
and so the file can be cleaned up using the events API of the stream.

* fix: ensure cleanup is called when download fails

* fix: ensure cleanup is called in error conditions

This covers import/export queue jobs and is mostly just wrapping all
code in a try...finally statement where the finally runs the cleanup.

* fix: use correct type instead of `any`
2022-05-25 16:50:22 +09:00
Johann150
6b109c7b0f
fix: wrong type for isVisibleForMe 2022-05-24 10:12:42 +02:00
Johann150
edfded7fb7
fix(activitypub): add authorization checks (#8534)
* fix spelling

* fix(activitypub): add authorization checks
2022-05-19 20:40:16 +09:00
Johann150
aaf5bb62ab
enhance: uniform theme color (#8702)
* enhance: make theme color format uniform

All newly fetched instance theme colors will be uniformely formatted
as hashtag followed by 6 hexadecimal digits.

Colors are checked for validity and invalid colors are not handled.

* better input validation for own theme color

* migration to unify theme color formats

Fixes theme colors of other instances as well as the local instance.

* add changelog entry

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-05-19 09:54:45 +02:00