* 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
* 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
* 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
* refactor to composition API
* use existing image component
This improves user experience because alt text is displayed correctly.
* fix: correct image src
* fix: defineProps
* fix
* refactor(client): refactor file-dialog to use Composition API
* Apply review suggestion from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor admin/integrations to use Composition API
* Apply review suggestions from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor admin/queue to use Composition API
* Apply review suggestion from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor admin/relays to use Composition API
* Apply review suggestion from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor emoji-edit-dialog to use Composition API
* fix(client): fix editing emoji not updating emoji list
* Apply review suggestions from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* fix(client): use cached category info instead of making a request
* fix(client): use updateItem in emoji pagination when editing
* fix(client): reimplement removeItem in MkPagination
* Apply review suggestion from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor admin/database to use Composition API
* Apply review suggestion from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
* refactor(client): refactor admin/security to use Composition API
* Apply review suggestions from @Johann150
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>
Co-authored-by: Johann150 <johann@qwertqwefsday.eu>