Commit graph

21432 commits

Author SHA1 Message Date
515957ee74
render HTML mentions correctly
Reviewed-on: FoundKeyGang/FoundKey#145
Changelog: Fixed
2022-09-11 21:39:49 +02:00
a2fad7ce61
backend: fix mentionedUsers and userInfo queries
Turns out `getMany` doesn't work with the specific query used, so use
`getRawMany` instead.

Also fixup the predicate used in userInfo to use the correct field
names.
2022-09-11 15:28:35 -04:00
syuilo
4b3cf7834b
server: ensure only own notifications can be marked as read
Exploiting this before should already have been rather difficult because you
would need to know or guess the notification's ID. It is also of relatively
low security impact.

Changelog: Fixed
2022-09-11 20:52:38 +02:00
c926b4fbcc Merge pull request 'backend: Fix appendChildren TypeError' (#136) from fix/backend-to-html-typeerror into main
Reviewed-on: FoundKeyGang/FoundKey#136
Changelog: Fixed
2022-09-11 18:31:22 +00:00
9bcc247421
backend: Fix appendChildren TypeError
In #134, the mention `MfmNode` handler was made async to allow the
mentionedUsers query to be used there. This however changed the return
type of that handler to be a `Promise`, causing a `TypeError` in
`appendChildren`.

This fixes the `TypeError` by making every handler and the `appendChildren`
function also async and awaiting on the processed children.

This also attempts to fix the types issue with handlers by casting to
the newly defined `HandlerFunc` type instead of to `any`.
2022-09-11 14:29:37 -04:00
d9f443c6c1 client: refactor radio.vue to composition api 2022-09-10 18:04:40 +00:00
8d5966c0bc
backend: add return types to load.ts functions 2022-09-10 13:52:23 -04:00
ebc4daa6c2
refactor: number-diff.vue to composition api 2022-09-10 12:25:58 -04:00
70c12158f7 Merge pull request 'backend: add types and use named exports for daemons' (#127) from fix/backend-daemons-types into main
Reviewed-on: FoundKeyGang/FoundKey#127
2022-09-10 14:23:30 +00:00
d65b073192 foundkey-js: Sync possible endpoints from backend
I noticed while trying to pick up work on mkbread on a train that the
translate endpoint was missing so here it is now.

I just copy-pasted the list of endpoints in the order that they were
in in the backend and copied back the existing type annotations.
It doesn't feel reasonable to invest more time in the typings if
we might have a chance at creating the one-source-of-truth elseway.
2022-09-10 12:43:19 +02:00
f0a2d368a3
foundkey-js: use re-export syntax 2022-09-10 02:05:56 -04:00
12bc89b7ce Merge pull request 'foundkey-js: fix build errors' (#135) from fix/foundkeyjs-build-errors into main
Reviewed-on: FoundKeyGang/FoundKey#135
2022-09-09 23:08:29 +00:00
dde6f5eb55
foundkey-js: fix build errors
The use of `"moduleResolution": "Node16"` is to make TS use the same
module resolution as Node does when using ESM modules.

`reconnecting-websocket`'s TS definition files were copied over but
wrapped in a `declare module` block to make TS properly accept
using the default import directly without using `.default`.

I also decided to look into `autobind-decorator`'s source code and
figured that I could use the `boundMethod` annotation directly instead
of using the `autobind` default export.
2022-09-09 00:08:21 -04:00
9a34e0b2b1
build: update typescript and related packages 2022-09-08 23:00:36 -04:00
3d789c8251
update vue to 3.2.39 2022-09-08 21:52:45 -04:00
dde4086811
fix(foundkey-js): use default import for eventemitter3 2022-09-08 21:06:38 -04:00
674f91109f
foundkey-js: add remaining file extensions to local imports 2022-09-08 21:00:57 -04:00
106c643f85
foundkey-js: use file extensions in imports
Technically, ESM modules require imports to include file extensions.

For whatever reason this didn't seem to be required when importing into
the client, but it does seem to be required for use in the backend.
2022-09-08 20:51:41 -04:00
f50b31b847 Merge pull request 'backend: move mentionedUsers query to mention handler' (#134) from fix/backend-toHtml-mentionedUsers into main
Reviewed-on: FoundKeyGang/FoundKey#134
2022-09-08 22:07:45 +00:00
199622b415
add check if ids.length > 0 before executing query 2022-09-08 17:47:23 -04:00
714ce60980 Merge pull request 'backend: fix types in boot/{master, worker}.ts' (#128) from fix/backend-boot-types into main
Reviewed-on: FoundKeyGang/FoundKey#128
2022-09-08 21:29:01 +00:00
29c7e7e859
backend: fix types in boot/{master, worker}.ts 2022-09-08 17:28:15 -04:00
42132963cf
refactor(backend): remove types.ts in favour of foundkey-js 2022-09-08 23:27:25 +02:00
aa62c1d7a7
refactor(backend): use foundkey-js constants 2022-09-08 22:27:27 +02:00
19e29c3465
backend: move mentionedUsers query to mention handler
The mentionedUsers query was being run on every post, regardless of
whether a mention was in it or not.

This resulted in an SQL query ending in `WHERE userId IN ()` which is
not allowed in PostgreSQL.

Reference: FoundKeyGang/FoundKey#132
Changelog: Fixed
2022-09-08 16:17:35 -04:00
736c21a80a Merge pull request 'backend: fix table name used in toHtml' (#133) from fix/backend-toHtml into main
Reviewed-on: FoundKeyGang/FoundKey#133
Changelog: Fixed
2022-09-08 18:18:07 +00:00
c33655bc4f backend: fix table name used in toHtml 2022-09-08 17:14:23 +00:00
c469a17623
client: refactor info.vue to composition api 2022-09-08 04:10:28 -04:00
55d20a72b7
backend: add types and use named exports for daemons 2022-09-08 01:33:47 -04:00
058d414fff docs: add migration guide
Includes tag-merge workflow from @toast 's post at
https://mk.toast.cafe/notes/93o9n4tfsi
2022-09-08 05:09:15 +00:00
4ad53f232a
backend: move @types/pg to devDependencies 2022-09-07 14:20:22 -04:00
0e49c726ec
backend: add @types/pg for pg type definitions 2022-09-07 14:19:03 -04:00
bd11b9d818
Revert "ci: combine install and lint/build tasks"
This reverts commit 759d031a5f.

This was originally to solve some issues with builds during the
workspace refactor in FoundKeyGang/FoundKey#86
but this didn't end up being the root cause, so it may actually be
better to split these tasks again.
2022-09-07 14:02:45 -04:00
f21e1afaa4
backend: fix query for mentionedUsers 2022-09-07 13:34:38 -04:00
ad73d01986
client: remove "Disable AiScript on Pages" setting
In #49, the AiScript functionality was removed from pages as they've
been simplified to a simple textarea.

This setting now effectively does nothing as a result.

Changelog: Removed
2022-09-07 13:07:03 -04:00
0d02914de4
client: fix lints in general.vue
Removed some unused variables and added return type to reloadAsk
2022-09-07 12:57:39 -04:00
7a981de883
refactor: remove note.mentionedRemoteUsers column
The column mentionedRemoteUsers on the note table in the database is
firstly in the wrong type since it contains JSON data but is typed as
text. Secondly it seems redundant, since that data can be acquired by
using the note.mentions column to fetch the respective data instead.

Co-authored-by: Francis Dinh <normandy@biribiri.dev>
2022-09-07 14:43:04 +02:00
3bdbbcadd9
adjust MFM to HTML conversion
Removed the misc/get-note-html module which was only used in one place.
Instead of it, the general MFM to HTML functionality has been improved to
take care of the use cases of that module as well.

Co-authored-by: Francis Dinh <normandy@biribiri.dev>
2022-09-07 14:42:39 +02:00
f94ed5e8a6 foundkey-js: remove room api endpoints
Changelog: Removed
2022-09-07 08:30:28 +00:00
7b4ebd2715 backend: remove room data from user
Rooms were remove a while back in upstream Misskey. This removes the
associated data left over in the database.

Changelog: Removed
2022-09-07 08:30:28 +00:00
f51f900115 Merge pull request 'sw: Remove fetch handler from service worker' (#116)
Reviewed-on: FoundKeyGang/FoundKey#116
Changelog: Fixed
2022-09-07 08:10:06 +00:00
f086c6d02f Merge pull request 'build: Move resolutions sections to workspace package.json' (#115) from Michcio/FoundKey-0x7f:build/resolutions-up into main
Reviewed-on: FoundKeyGang/FoundKey#115
2022-09-06 21:28:31 +00:00
026941ce77 sw: Remove fetch handler from service worker
In current state, service worker overloads every "connection error"
kind of reaction to a plaintext 200 saying "Offline.", which leads
to terribly undebuggable situations as the browser decides to cache
this as an image, and then someone's pfp is broken literally
forever unless you Ctrl+Shift+R every time you reload frontend.

This change removes the handler, because it is unclear how we even
benefit from it being there.
2022-09-06 23:24:23 +02:00
abef030a24 build: Move resolutions sections to workspace package.json
Yarn throws a warning on every `yarn install` that the resolutions
from respective packages' manifests are ignored.
2022-09-06 23:18:15 +02:00
5a9d4a3759
client: update dependencies
- Update Vue to 3.2.38
- Update Vite to 3.1.0
- Update cropperjs
2022-09-06 14:15:46 -04:00
a16d7d9dc2
foundkey-js: fix no-param-reassign lint in acct.ts 2022-09-06 11:36:21 -04:00
6e4dbc1053
sw: fix eslintrc
ESLint was throwing erroneous errors, likely because the parser wasn't
properly specified.
2022-09-06 11:23:46 -04:00
5939c90b84
update eslint plugins 2022-09-06 11:19:34 -04:00
6c256c5934 Merge pull request 'client: Fix style scoping in MkMention' (#113) from Michcio/FoundKey-0x7f:fix/mention-style-scoped into main
Reviewed-on: FoundKeyGang/FoundKey#113
Changelog: Fixed
2022-09-06 13:01:04 +00:00
e60a2273d5
client: Fix typo in media caption code (#112)
Reviewed-on: FoundKeyGang/FoundKey#112
2022-09-06 08:35:58 -04:00