Commit graph

919 commits

Author SHA1 Message Date
syuilo
d3f25fa290 tweak client 2022-06-22 20:47:53 +09:00
syuilo
be383aa5b2 refactor(client): use composition api 2022-06-22 16:30:55 +09:00
syuilo
85365da69e refactor(client): refactor header tab handling 2022-06-22 16:30:45 +09:00
syuilo
e44cb42de4 🎨 2022-06-22 00:48:16 +09:00
syuilo
ad123b3cce tweak client 2022-06-22 00:10:34 +09:00
syuilo
c9d4c00708 fix(client): moderators cannot view instance-info page 2022-06-21 23:22:18 +09:00
syuilo
2d181ba5af enhance(client): show warning in control panel when there is an unresolved abuse report 2022-06-21 19:48:28 +09:00
syuilo
f880d0631c tweak client 2022-06-21 17:55:38 +09:00
syuilo
a6fff86099 refactor(client): use composition api 2022-06-21 14:39:23 +09:00
syuilo
4efee455b1 fix(server): faviconUrl of federated instance is missing 2022-06-21 14:28:43 +09:00
syuilo
14cc341cc9 chore: add comments 2022-06-21 14:18:06 +09:00
syuilo
ce6cc21bcd tweak client
Fix #8856
2022-06-21 14:12:39 +09:00
Johann150
3796a3edea
fix: block button in federation panel (#8855) 2022-06-20 23:48:38 +09:00
syuilo
f995172c5d tweak client 2022-06-20 21:05:18 +09:00
syuilo
8e20e27ff9 fix client 2022-06-20 19:49:51 +09:00
syuilo
699f24f3dc
refactor(client): Refine routing (#8846) 2022-06-20 17:38:49 +09:00
tamaina
30a39a296d
refactor: チャットルームをComposition API化 (#8850)
* pick form

* pick message

* pick room

* fix lint

* fix scroll?

* fix scroll.ts

* fix directives/sticky-container

* update global/sticky-container.vue

* fix, 🎨

* test.1
2022-06-20 13:20:28 +09:00
tamaina
b70473ed60
feat: Add Badge Image to Push Notification (#8012)
* fix

* nanka iroiro

* wip

* wip

* fix lint

* fix loginId

* fix

* refactor

* refactor

* remove follow action

* clean up

* Revert "remove follow action"

This reverts commit defbb416480905af2150d1c92f10d8e1d1288c0a.

* Revert "clean up"

This reverts commit f94919cb9cff41e274044fc69c56ad36a33974f2.

* remove fetch specification

* renoteの条件追加

* apiFetch => cli

* bypass fetch?

* fix

* refactor: use path alias

* temp: add submodule

* remove submodule

* enhane: unison-reloadに指定したパスに移動できるように

* null

* null

* feat: ログインするアカウントのIDをクエリ文字列で指定する機能

* null

* await?

* rename

* rename

* Update read.ts

* merge

* get-note-summary

* fix

* swパッケージに

* add missing packages

* fix getNoteSummary

* add webpack-cli

* ✌️

* remove plugins

* sw-inject分離したがテストしてない

* fix notification.vue

* remove a blank line

* disconnect intersection observer

* disconnect2

* fix notification.vue

* remove a blank line

* disconnect intersection observer

* disconnect2

* fix

* ✌️

* clean up config

* typesを戻した

* backend/src/web/index.ts

* notification-badges

* add scripts

* change create-notification.ts

* Update packages/client/src/components/notification.vue

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>

* disconnect

* oops

* Failed to load the script unexpectedly回避
sw.jsとlib.tsを分離してみた

* truncate notification

* Update packages/client/src/ui/_common_/common.vue

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>

* clean up

* clean up

* refactor

* キャッシュ対策

* Truncate push notification message

* fix

* クライアントがあったらストリームに接続しているということなので通知しない判定の位置を修正

* components/drive-file-thumbnail.vue

* components/drive-select-dialog.vue

* components/drive-window.vue

* merge

* fix

* Service Workerのビルドにesbuildを使うようにする

* return createEmptyNotification()

* fix

* fix

* i18n.ts

* update

* ✌️

* remove ts-loader

* fix

* fix

* enhance: Service Workerを常に登録するように

* pollEnded

* pollEnded

* URLをsw.jsに戻す

* clean up

* fix lint

* changelog

* alpha-test

* also with twemoji

* add isMimeImage function

* catch

* Colour => Color

* char2file => char2filePath

* Update autocomplete.vue

* remove clone?

Co-authored-by: Acid Chicken (硫酸鶏) <root@acid-chicken.com>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-06-20 00:33:46 +09:00
Andreas Nedbal
54465d36a7
Refactor page-editor elements to use Composition API (#8721)
* refactor(client): refactor page-editor elements to use Composition API

* Apply review suggestions from @Johann150

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

Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
2022-06-18 18:39:04 +09:00
syuilo
802a35d4b6 fix typo 2022-06-18 18:27:47 +09:00
futchitwo
5b7595d9d7
Improve: unclip (#8823)
* Refactor clip page to use Composition API

* Refactor clip page

* Refactor clip page

* Refactor clip page

* Improve: unclip

* Fix unclip

* Fix unclip

* chore: better type and name

* Fix

* Fix clipPage vue provider

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-06-18 18:27:09 +09:00
futchitwo
d7bab7cf0b
Refactor clip page to Composition API (#8822)
* Refactor clip page to use Composition API

* Refactor clip page

* Refactor clip page

* Refactor clip page
2022-06-18 18:23:54 +09:00
MeiMei
6422cde5f2
enhance: Improve player detection in URL preview (#8849)
* enhance: Improve player detection in URL preview

* CHANGELOG
2022-06-18 16:02:31 +09:00
syuilo
8df2f19b5b enhance(client): improve file moderation ui 2022-06-17 15:03:02 +09:00
syuilo
7faa75d483 chore(client): tweak range control design 2022-06-17 13:20:33 +09:00
Johann150
6078c986d3
fix: render empty note content correctly
Instead of coercing to `null`, coercing to an empty string should simplify handling.
2022-06-16 12:51:44 +02:00
Johann150
b54f906605
fix: correctly render note text
Fix a regression from #8787 that was previously fixed in #8440.
2022-06-16 12:32:09 +02:00
syuilo
4a55425fdb enhance(client): improve files page of control panel 2022-06-16 16:05:43 +09: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
3a42fe50c6
fix: tmpdir cleanup removes contained files (#8826) 2022-06-14 23:00:10 +09:00
syuilo
e4dc25dd5c enhance(server): モデレーターであってもレートリミットを有効に 2022-06-14 22:59:19 +09:00
tamaina
f1e6fa8ee2
fix: add limit to i/notifications (#8836)
* fix: add limit to i/notifications

* ms

* remove ms
2022-06-14 22:55:58 +09:00
Johann150
10d979bd65
fix(docs): use correct description property 2022-06-14 11:55:58 +02:00
Johann150
b5390c0922
fix: remove unused parameter 2022-06-14 11:54:55 +02:00
syuilo
963f538728 lint fixes 2022-06-14 18:01:23 +09:00
Johann150
963758d8ec
fix: missing file name parameter (#8820) 2022-06-13 00:25:06 +09:00
futchitwo
b15dbb818f
Fix(client): fix wrong gallery page component (#8815) 2022-06-12 19:53:21 +09:00
syuilo
4e89d41f04 lint 2022-06-12 19:50:47 +09:00
syuilo
a8e7b1a303 fix(client): デッキでウィジェットの情報が保存されない問題を修正
Fix #8818
2022-06-12 19:50:43 +09:00
tamaina
11a6bd890c
fix: some fixes of multiple notification read (#8819)
* fix: limit multiple notification read

* fix

* fix
2022-06-12 19:28:13 +09:00
syuilo
ca9753f2e7 Update cropper-dialog.vue 2022-06-11 18:48:59 +09:00
syuilo
7894804eed Update cropper-dialog.vue 2022-06-11 18:47:58 +09:00
syuilo
99eb971c3d Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2022-06-11 16:46:23 +09:00
syuilo
410210cf6f fix(client): オブジェクトストレージを使用していると画像のクロップができない 2022-06-11 16:46:21 +09:00
Johann150
7db09103e7
chore: synchronize visibility checks (#8687)
* reuse single meId parameter

* unify code style

Use template string to avoid having to use escaped quote marks.

* fix: follower only notes are visible to mentioned users

This synchronizes the visibility rules with the Notes.isVisibleForMe
method from packages/backend/src/models/repositories/note.ts

* add comment
2022-06-11 16:14:44 +09:00
syuilo
ecb3c43520
feat: image cropping (#8808)
* wip

* wip

* wip
2022-06-11 15:45:44 +09:00
syuilo
ec6b418a23 update deps 2022-06-10 15:06:42 +09:00
syuilo
b9c64053e8 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2022-06-10 14:56:07 +09:00
syuilo
f5ba73e7c8 chore: tweak logo 2022-06-10 14:56:05 +09:00
Johann150
5e29528ad4
chore: fix some lints automatically (#8788)
* chore: fix some lints automatically

Fixed lints that were automatically fixable with `eslint --fix`.

* fix type

* workaround for empty interface lint
2022-06-10 14:36:55 +09:00
Johann150
a683a7092d
enhance(federation): use ActivityPub defined property in favour of proprietary property. (#8787)
* add activitypub `source` property

* parse MFM from new `source` attribute
2022-06-10 14:31:58 +09:00
Johann150
42f48ffea2
refactor: follow button (#8789)
* fix: display cancelling follow request

* remove unnecessary branch

The executed code is the same as in the else branch so this special
condition is unnecessary.

* remove code duplication

Use the same callback as later for updating these variables.

* use $ref sugar

* remove unused import

Co-authored-by: blackskye-sx <saul.newman@gmail.com>
2022-06-10 14:29:46 +09:00
Johann150
78df3dc484
enhance: improve documentation for /users/ endpoints (#8790)
* docs: category & description for reset password

* docs: category & description for testing

* docs: descriptions for groups endpoints

* docs: descriptions for drive file endpoints

* docs: descriptions for sw endpoints

* docs: descriptions for user list endpoints

* docs: descriptions & result type for gallery posts

* docs: descriptions & result type for user endpoints

* docs: add return type for stats
2022-06-10 14:25:20 +09:00
Andreas Nedbal
7dde0b1362
fix(client): render quote renote CWs as MFM (#8792)
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
2022-06-09 23:45:16 +09:00
Johann150
b66e73aed5
fix: use autocomplete=new-password (#8797) 2022-06-09 23:42:00 +09:00
Johann150
eec7a0a1f6
properly display alt text for videos (#8802)
The alt text is already properly federated and given by the API,
it is just not displayed properly by the client.
2022-06-09 23:35:58 +09:00
Johann150
4800dd06e5
fix: try to prevent autocomplete for emoji search (#8798) 2022-06-08 20:20:37 +09:00
Johann150
0fa2a52fac
refactor: use awaitAll to reduce duplication (#8791)
* refactor: use awaitAll to reduce duplication

* fix lint

* fix typo
2022-06-08 17:59:48 +09:00
syuilo
d17298d3b5 fix(test): make chart tests working 2022-06-05 20:37:24 +09:00
syuilo
09b749eb97 Update .mocharc.json 2022-06-05 19:46:52 +09:00
syuilo
5fb3f8a116 chore: lint fixes 2022-06-05 12:26:36 +09:00
syuilo
adf3190859 chore(client): fix menu item style 2022-06-05 12:23:57 +09:00
syuilo
89419c05b2 use node 16 2022-06-04 17:26:56 +09:00
syuilo
abcd5bc951 update summaly 2022-06-04 17:24:41 +09:00
syuilo
71150f21cd Revert "feat: option to collapse long notes (#8561)"
This reverts commit e675ffcf38.
2022-06-04 15:23:53 +09:00
syuilo
11afdf7e24 fix bug 2022-06-04 15:15:44 +09:00
syuilo
702edfd3d3 fix test 2022-06-04 14:25:30 +09:00
Balazs Nadasdi
e675ffcf38
feat: option to collapse long notes (#8561)
* feat: option to collapse long notes

Closes #8559

* do not collapse if cw exists

* use '閉じる' to close / show less.

* make it sticky

* Change style of the Show less button
2022-06-04 13:57:09 +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
9954c054a7
fix: ensure resolver does not fetch local resources via HTTP(S) (#8733)
* refactor: parseUri types and checks

The type has been refined to better represent what it actually is. Uses of
parseUri are now also checking the parsed object type before resolving.

* cannot resolve URLs with fragments

* also take remaining part of URL into account

Needed for parsing the follows URIs.

* Resolver uses DbResolver for local

* remove unnecessary use of DbResolver

Using DbResolver would mean that the URL is parsed and handled again.
This duplicated processing can be avoided by querying the database directly.

* fix missing property name
2022-06-04 11:29:20 +09:00
Johann150
81109b14b5
fix: correctly render empty note text (#8746)
Ensure that the _misskey_content attribute will always exist. Because
the API endpoint does not require the existence of the `text` field,
that field may be `undefined`. By using `?? null` it can be ensured
that the value is at least `null`.

Furthermore, the rendered HTML of a note with empty text will also be
the empty string. From git blame it seems that this behaviour was added
because of a Mastodon bug that might have previously existed. Hoever,
this seems to be no longer the case as I can find mastodon posts that
have empty content.

The code could be made a bit more succinct by using the null coercion
operator.
2022-06-03 23:18:44 +09:00
PikaDude
6061937996
User moderation details (#8762)
* add more user details for admins to see

* fix some issues

* small style fix

as suggested by Johann150

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

* fix

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

Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
2022-06-03 23:14:50 +09:00
syuilo
71c230b7b7 Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2022-06-03 23:08:18 +09:00
syuilo
a3fed7d0fb fix(test): reset redis in e2e test
#7986
2022-06-03 23:08:15 +09:00
sn0w
df3bbfb416
fix(client): correctly handle MiAuth URLs with query string (#8772) 2022-06-03 21:22:03 +09:00
Johann150
118f354661
fix: server metrics widget 2022-06-01 08:51:00 +02:00
Johann150
121a1784a2
fix(lint): indentation 2022-05-31 16:22:00 +02:00
Johann150
025bf4a5e7
fix(mfm): remove duplicate br tag/newline (#8616) 2022-05-31 18:57:55 +09:00
Johann150
c56e45ecef
fix: always remove completed tasks (#8771) 2022-05-31 17:54:02 +09:00
MeiMei
c05723ca6a
Fix IP address rate limit (#8758)
* Fix IP address rate limit

* CHANGELOG

* Tune getIpHash
2022-05-31 17:44:22 +09:00
tamaina
857055a9dd chore: fix import tinycolor 2022-05-30 12:09:22 +00:00
tamaina
465531d56c Merge branch 'develop' of https://github.com/misskey-dev/misskey into develop 2022-05-30 05:53:40 +00:00
tamaina
9759ca7d24 chore: remove packages/sw/webpack.config.js 2022-05-30 05:53:36 +00:00
Andreas Nedbal
3905185463
fix(client): import shared ESLint config in client package (#8761) 2022-05-30 11:37:34 +09:00
Johann150
ebc2566130
fix: add missing import
fix #8756
2022-05-29 14:33:42 +02:00
futchitwo
d2784030ec
fix(client): fix popout url (#8494) 2022-05-29 12:21:36 +02: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
tamaina
f1d2398eac
fix(client): Vite related boot mechanism revision (#8753)
* preload app css

* remove salt

* APP_FETCH_FAILED error

* set max-age to 15s
2022-05-29 10:58:54 +09:00
tamaina
4917961736
preload app css (#8752) 2022-05-29 10:57:06 +09:00
Johann150
e54aa56ee1
chore: remove unused imports 2022-05-28 21:17:23 +02:00
Johann150
21d54f2758
fix: validate text is not empty
fix #8747
2022-05-28 17:26:17 +02:00
tamaina
abc8998b48
refactor: use css module at components/global/loading.vue (#8750)
* refactor: use css module at components/global/loading.vue

* rename class name to "root"
2022-05-29 00:15:32 +09:00
tamaina
4a50c49211
Fix theme import (#8749) 2022-05-28 21:59:23 +09:00
Andreas Nedbal
708fba989a
feat(tests): add e2e tests for widgets (#8735)
* test(e2e): add baseline for widget tests

* chore(repo): enable test running in branch

* fix(e2e): set viewport for widget tests

* fix(client): add widget identifier classes to widgets

* test(e2e): add memo widget test

* fix(tests): force select value

* fix(tests): force button press for widget addition

* fix(tests): invoke select value differently

* fix(tests): adjust widget submit

* fix(tests): don't explicitly navigate for widget test

* fix(tests): click label to hide select popup

* fix(tests): just click modal background

* fix(tests): adjust modal background selector

* fix(tests): click all modal backgrounds

* feat(e2e): add test for adding timeline widget

* fix(client): add more widget identifier classes

* feat(tests): add method abstraction for test cases

* fix(tests): force-click overlays

* fix(tests): force widget button press

* fix(tests): remove timeout from final widget check

* feat(tests): add widget removal test case

* fix(client): use mk instead of msky as class prefix

* fix(tests): check widgets for existence rather than visibility

* chore(meta): don't run tests for specific feature branch
2022-05-28 14:28:12 +09:00
Johann150
161659de5c
enhance: replace signin CAPTCHA with rate limit (#8740)
* enhance: rate limit works without signed in user

* fix: make limit key required for limiter

As before the fallback limiter key will be set from the endpoint name.

* enhance: use limiter for signin

* Revert "CAPTCHA求めるのは2fa認証が無効になっているときだけにした"

This reverts commit 02a43a310f.

* Revert "feat: make captcha required when signin to improve security"

This reverts commit b21b058005.

* fix undefined reference

* fix: better error message

* enhance: only handle prefix of IPv6
2022-05-28 12:06:47 +09:00
Johann150
63a814c70e
fix(docs): correct information for drive upload (#8736) 2022-05-27 22:03:25 +09:00
Johann150
3dae18b93c
fix lints (#8737)
* fix: emits use ev instead of e

* fix: errors use err instead of e

* fix: replace use of data where possible

* fix: events use evt instead of e

* fix: use strict equals

* fix: use emoji instead of e

* fix: vue lints
2022-05-26 22:53:09 +09:00
Johann150
9c80403072
use http-signature module that supports hs2019 (#8635) 2022-05-26 09:12:17 +09:00
syuilo
b3ad04fcb0 update deps 2022-05-25 23:28:56 +09:00
syuilo
3c3140a100 refactor: use === 2022-05-25 23:19:39 +09:00