Compare commits

..

1552 Commits

Author SHA1 Message Date
Natty 1975a21c80
Merge junk cleanup
ci/woodpecker/tag/ociImageTag Pipeline was successful Details
2023-06-29 18:44:16 +02:00
Natty 8ccbec3db1
Merge branch 'beta'
# Conflicts:
#	.woodpecker/commit.yml
#	CALCKEY.md
#	README.md
#	chart/Chart.yaml
#	chart/templates/_helpers.tpl
#	package.json
#	packages/backend/package.json
#	packages/backend/src/models/entities/messaging-message.ts
#	packages/backend/src/remote/activitypub/models/note.ts
#	packages/backend/src/server/api/index.ts
#	packages/backend/src/server/api/mastodon/ApiMastodonCompatibleService.ts
#	packages/backend/src/server/api/mastodon/endpoints/account.ts
#	packages/backend/src/server/api/mastodon/endpoints/filter.ts
#	packages/backend/src/server/api/mastodon/endpoints/meta.ts
#	packages/backend/src/server/api/mastodon/endpoints/notifications.ts
#	packages/backend/src/server/api/mastodon/endpoints/search.ts
#	packages/backend/src/server/api/mastodon/endpoints/status.ts
#	packages/backend/src/server/api/mastodon/endpoints/timeline.ts
#	packages/backend/src/server/api/stream/index.ts
#	packages/backend/src/server/index.ts
#	packages/backend/src/server/nodeinfo.ts
#	packages/client/src/components/MkChatPreview.vue
#	packages/client/src/components/MkRenoteButton.vue
#	packages/client/src/pages/messaging/index.vue
#	packages/client/src/pages/messaging/messaging-room.form.vue
#	packages/client/src/pages/messaging/messaging-room.message.vue
#	packages/client/src/pages/messaging/messaging-room.vue
#	packages/client/src/ui/universal.vue
#	patrons.json
#	pnpm-lock.yaml
2023-06-29 18:13:53 +02:00
ThatOneCalculator 5ab80337db
docs: 📝 v14.0.0-rc3 changelog 2023-06-24 15:18:26 -07:00
ThatOneCalculator 0c6e0ba09d
Merge branch 'develop' into beta 2023-06-24 15:17:43 -07:00
ThatOneCalculator b13cc20a6a
feat: 🔖 v14.0.0-rc3 2023-06-24 15:16:27 -07:00
ThatOneCalculator 389734e5a6
Merge branch 'develop' into beta 2023-06-24 15:12:45 -07:00
Kainoa Kanter 1c2a4c1a22 Merge pull request '[PR]: fix: scrolling in deck view' (#10359) from naskya/calckey:fix/deck-scroll into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10359
2023-06-24 21:14:09 +00:00
syuilo 65d0e8f683
enhance(frontend): improve ux of deck scroll 2023-06-24 21:09:32 +00:00
freeplay c63f56f79b Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-24 16:36:17 -04:00
freeplay ce53288bf0 fix: basically just undo my previous modal changes 2023-06-24 16:35:56 -04:00
ThatOneCalculator ae14da7014
fix: 🩹 make cacheRemoteFiles false by default for new instances 2023-06-24 13:25:25 -07:00
ThatOneCalculator 4a3bcbeb5e
docs: 📝 mention libvips requirement
#10352
2023-06-24 13:23:12 -07:00
ThatOneCalculator 15e8db0563
feat: 🔒 expand /api/v1/instance/peers to proper endpoint and check for private mode
Closes #10358
2023-06-24 13:00:50 -07:00
freeplay 0b2a84d805 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-24 15:03:27 -04:00
freeplay 08df1d9d44 fix: focus first element inside modal 2023-06-24 15:02:54 -04:00
ThatOneCalculator ac768ece13
fix: ⚗️ ensure splash is removed upon load
https://codeberg.org/calckey/calckey/pulls/10285#issuecomment-951231
2023-06-24 11:43:37 -07:00
freeplay dd140db13f Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-24 10:22:06 -04:00
Freeplay eff50abf3d fix: jump to top of page when opening modals
I want to do this probably later, for now it will still focus inside the window when pressing tab
2023-06-24 10:21:14 -04:00
jolupa 77aa1f9b92
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1805 of 1805 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-24 13:52:45 +02:00
Kainoa Kanter 9712299065 Merge pull request '[PR]: fix (calckey-js): compile error' (#10356) from nmkj/calckey:fix-build-calckey-js into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10356
2023-06-24 08:34:40 +00:00
Namekuji fd6b655a7c
fix compile error 2023-06-24 04:07:19 -04:00
ThatOneCalculator d110099e1c
chore: ⬆️ up emojilib 2023-06-23 22:21:37 -07:00
ThatOneCalculator 18f88034bb
chore: ⚰️ remove vim settings 2023-06-23 22:11:13 -07:00
ThatOneCalculator 6e364a857f
docs: 📝 clearer package docs 2023-06-23 22:07:52 -07:00
ThatOneCalculator 62efd07ca0
docs: 📝 document packages dir 2023-06-23 22:00:29 -07:00
ThatOneCalculator ff71963414
docs: 📝 use document instead of symlink 2023-06-23 21:48:49 -07:00
ThatOneCalculator 98a22d8d04
docs: 📝 add symlink for api docs in docs/ 2023-06-23 21:41:52 -07:00
ThatOneCalculator 301c79bb36
chore: 📝 too many emojis 2023-06-23 21:27:00 -07:00
ThatOneCalculator d3c5c48537
fix: 👷 fix format run 2023-06-23 21:24:16 -07:00
ThatOneCalculator 2eea153ba1
chore: 🎨 format 2023-06-23 21:22:44 -07:00
ThatOneCalculator 1fddd319c4
fix: 🐛 remove cw in post edit
Closes #10353
2023-06-23 21:18:04 -07:00
ThatOneCalculator 0e4a4b09c9
docs: 📝 API documentation generation 2023-06-23 21:13:03 -07:00
ThatOneCalculator 0625bcbec3
refactor: 🏷️ add antenna type to streaming types 2023-06-23 20:37:24 -07:00
ThatOneCalculator fea10ab6db
docs: 📝 changelog 2023-06-23 20:19:25 -07:00
ThatOneCalculator cbd781b5b9
docs: 📝 update links 2023-06-23 20:10:12 -07:00
ThatOneCalculator f91b8019e9
chore: 📝 emojis in issue label 2023-06-23 19:17:53 -07:00
ThatOneCalculator ebe86c7bed
chore: 📝 add emojis to issue templates
Because everything's better with emojis!
2023-06-23 19:14:35 -07:00
ThatOneCalculator 8113c77df7
chore: 📝 fix duplicate, add emojis 2023-06-23 19:09:14 -07:00
ThatOneCalculator efd96621b4
chore: 📝 deployment method in bug report 2023-06-23 19:06:19 -07:00
ThatOneCalculator 3e5886883a
chore: 📝 bring bug template changes to feature template 2023-06-23 19:01:10 -07:00
ThatOneCalculator 873cc0ae51
chore: 📝 links in bug template 2023-06-23 18:57:00 -07:00
ThatOneCalculator 796d1a171d
fix: ✏️ fix tab characters
thanks, yaml. ugh.
2023-06-23 18:52:51 -07:00
ThatOneCalculator 38e1c4c0fd
chore: update bug report template 2023-06-23 18:51:25 -07:00
tamania c462d48bdb
perf: use setInterval instead of setTimeout chain in MkTime 2023-06-23 18:33:37 -07:00
ThatOneCalculator be83ac8f43
fix: 🐛 start transaction with multi 2023-06-23 18:21:00 -07:00
ThatOneCalculator 8bb5844feb
show greeter on rebuild 2023-06-23 18:04:13 -07:00
ThatOneCalculator 0d6256113d
Revert "build: use vite 4.4 beta with lightningcss"
This reverts commit 25aab24861.
2023-06-23 18:04:02 -07:00
ThatOneCalculator c567f4f14b
Revert "fix: 🚑 disable lightningcss transformer for now"
This reverts commit d0fd6a7de8.
2023-06-23 18:03:49 -07:00
ThatOneCalculator 089abadc31
fix: ⬇️ downgrade chalk 2023-06-23 17:59:27 -07:00
ThatOneCalculator 9e14daecbf
fix: typo 2023-06-23 17:57:05 -07:00
ThatOneCalculator d0fd6a7de8
fix: 🚑 disable lightningcss transformer for now 2023-06-23 17:55:42 -07:00
ThatOneCalculator 3ea701afdc
build: build greeting 2023-06-23 17:54:58 -07:00
ThatOneCalculator 9d161d9021
chore: 🎨 format 2023-06-23 17:47:14 -07:00
ThatOneCalculator 2f38f228d6
fix: 🐛 non-duplicate skin tone selection 2023-06-23 17:47:07 -07:00
ThatOneCalculator b6dd48a375
refactor: ♻️ url preview 2023-06-23 17:40:01 -07:00
ThatOneCalculator 25aab24861
build: use vite 4.4 beta with lightningcss 2023-06-23 17:35:52 -07:00
ThatOneCalculator c0f6a53223
fix: 🐛 race condition between workers when creating note
Closes #10345
Discovered here: https://codeberg.org/calckey/calckey/issues/10345#issuecomment-950475
2023-06-23 17:27:25 -07:00
ThatOneCalculator 7640f4d3f8
refactor: ♻️ make skin tones modular
Could possibly be for future custom emoji sets that support custom skin tones? (i.e. Mutant Standard)
2023-06-23 17:19:26 -07:00
ThatOneCalculator 3a17ef6d42
feat: skin tone selector in category 2023-06-23 16:51:13 -07:00
ThatOneCalculator 9e1fbed9b9
refactor: ♻️ simplify null check 2023-06-23 15:40:38 -07:00
ThatOneCalculator 087591e62d
chore: 🔖 dev52 2023-06-23 15:36:43 -07:00
ThatOneCalculator 66ef6a8da8
refactor: ♻️ refactor MkModalWindow for TS safety 2023-06-23 15:36:28 -07:00
Freeplay cf923e57ad fix: mobile note spacing 2023-06-23 17:41:39 -04:00
Freeplay 56cd2ea888 fix: autocomplete not being focused properly 2023-06-23 17:30:50 -04:00
ThatOneCalculator f101317f3c
refactor: 📌 use own emoji descriptions 2023-06-23 00:27:26 -07:00
ThatOneCalculator d7ffffa8ab
chore: 🎨 format 2023-06-23 00:22:55 -07:00
ThatOneCalculator 7c5e7d7d85
fix: 🐛 pull up instance window instead of search field 2023-06-23 00:21:48 -07:00
ThatOneCalculator a7dd8bffe5
fix: 🩹 disable Unicode 15 emojis
https://github.com/jdecked/twemoji/pull/43
2023-06-22 22:39:52 -07:00
ThatOneCalculator 11dbe898d9
docs: 📝 changelog 2023-06-22 22:11:06 -07:00
ThatOneCalculator 05c75579d5
Merge branch 'refactor/emojis' into develop 2023-06-22 22:09:25 -07:00
ThatOneCalculator 77734cf69b
fix: 💄 consistent emoji styling 2023-06-22 21:08:04 -07:00
ThatOneCalculator a5fe0ac8b5
feat: emoji skin tone
Closes #9959
2023-06-22 20:58:44 -07:00
ThatOneCalculator 738b111a4c
fix: don't use cache on autocomplete for now 2023-06-22 19:56:42 -07:00
ThatOneCalculator d296fee10a
perf: update emojis, cache in IndexedDb
Closes #9959
May fix #9724
2023-06-22 19:34:52 -07:00
Hosted Weblate c69e8315cd
chore: Merge branch 'origin/develop' into Weblate. 2023-06-23 04:20:10 +02:00
Kainoa Kanter 1db5beb41b refactor: ♻️ open instance as lookup window 2023-06-23 02:02:27 +00:00
Hosted Weblate e1e3973858
chore: Merge branch 'origin/develop' into Weblate. 2023-06-23 03:46:58 +02:00
Daniele Tricoli 4fda6e6b6b
chore: Translated using Weblate (Italian)
Currently translated at 69.9% (1262 of 1804 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/it/
2023-06-23 03:41:56 +02:00
ThatOneCalculator 5e0a0df262
feat: clickable domains on job queue
https://post.naskya.net/notes/9gbfos2mv5iz6g63
2023-06-22 18:11:25 -07:00
ThatOneCalculator 1a971efa68
feat: $[small ] and $[center ] MFM syntax 2023-06-22 17:41:34 -07:00
ThatOneCalculator 6c72806e31
refactor: ♻️ reorganize note menu
translate just above view remote
2023-06-22 17:25:50 -07:00
ThatOneCalculator 43dacdcf81
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-22 17:14:49 -07:00
ThatOneCalculator 7ca519560f
feat: display remaining time on ratelimits 2023-06-22 17:14:27 -07:00
Freeplay 0c5c3f8e07 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-22 19:55:04 -04:00
Freeplay 260afcd6e8 fix: hide tooltip on page change 2023-06-22 19:54:26 -04:00
ThatOneCalculator 8a45d25912
fix: ✏️ typo in API docs + errors
Co-authored-by: naskya <m@naskya.net>
2023-06-22 16:53:56 -07:00
ThatOneCalculator 9eb130880d
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-22 16:46:33 -07:00
ThatOneCalculator 278f42a720
fix: 🐛 collapse reply if type is a mention and it has a reply 2023-06-22 16:46:18 -07:00
Kainoa Kanter 17018c9b99 Merge pull request '[PR]: enhance (docker): proper caching and smaller image size' (#10349) from nmkj/calckey:v14-docker into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10349
2023-06-22 23:42:50 +00:00
naskya d5854c2324
fix: 🐛 proper isDuplicateKeyValueError handling
Closes #10340
Co-authored-by: Kainoa Kanter <kainoa@t1c.dev>
2023-06-22 16:25:27 -07:00
ThatOneCalculator a0a4423f45
fix: 🐛 only collapsed reply if notification is reply 2023-06-22 16:18:59 -07:00
Freeplay e91389b1af fix 2023-06-22 17:04:57 -04:00
Namekuji f7631772a3
cache native-utils 2023-06-22 16:25:42 -04:00
Namekuji 99e1f1ad84
chore: format 2023-06-22 16:00:28 -04:00
Namekuji 80f21df0e0
mount files directory 2023-06-22 16:00:28 -04:00
Namekuji 9b009918ac
add environment variable 2023-06-22 16:00:28 -04:00
Namekuji 3780be57c0
clean unnecessary artifacts 2023-06-22 16:00:28 -04:00
Namekuji e232332a46
fix build and clean scripts 2023-06-22 16:00:28 -04:00
Lily Cohen 48f58feae6
precompile rust components 2023-06-22 16:00:28 -04:00
Lily Cohen 90ad37c3a3
remove apk update as 'no-cache' already updates 2023-06-22 16:00:28 -04:00
Lily Cohen 90c7ecf92f
update to node 20 2023-06-22 16:00:27 -04:00
Freeplay b3a34075eb Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-22 15:36:00 -04:00
Freeplay eb52e67398 fix 2023-06-22 15:35:56 -04:00
ThatOneCalculator d342539450
docs: 📝 min rust ver 2023-06-21 22:13:57 -07:00
Freeplay f407910e70 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-21 23:41:06 -04:00
Freeplay 94a8f64b3b Minimize reply context in notifications 2023-06-21 23:38:56 -04:00
Namekuji 4bd0838f29
fix: 🐛 empty fs stat 2023-06-21 16:26:43 -07:00
Freeplay 29d1970f59 Fix missing deviceKind imports for swipers 2023-06-21 17:13:46 -04:00
Freeplay 7ed1cc1ff7 i apologize to all the cats that may have been harmed before this commit (#10342) 2023-06-21 14:22:04 -04:00
Freeplay 49142df177 Fix show more button being shown when more than 4 images inside CW 2023-06-21 12:51:36 -04:00
Byron Fröhlich a15e5753b0
chore: Translated using Weblate (German)
Currently translated at 99.2% (1791 of 1804 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-20 21:53:07 +02:00
jolupa 526260260c
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1804 of 1804 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-20 21:53:04 +02:00
Freeplay 19874ef231 label to close button 2023-06-20 14:41:51 -04:00
Freeplay c05f151b1a Proper use of focus trap 2023-06-20 14:13:05 -04:00
Freeplay be6a640edb remove gaps ? 2023-06-20 10:30:13 -04:00
Freeplay 77d1cf1add Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-19 16:50:56 -04:00
Freeplay d830a6dad3 Share dropdown w/ remote copy 2023-06-19 16:50:51 -04:00
Kainoa Kanter 6e1f3a01cf Merge pull request '[PR]: Allow moderators to see modlogs' (#10327) from daikei/calckey:allow-mods-to-see-mod-notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10327
2023-06-19 16:39:03 +00:00
Freeplay 8281817c0f fix UI sometimes being offset on mobile 2023-06-19 12:21:46 -04:00
daikei 87145bd823 Merge branch 'develop' into allow-mods-to-see-mod-notes 2023-06-19 15:41:38 +00:00
daikei 0bc68a4b6f Fix formatting 2023-06-19 14:14:15 +00:00
daikei a3d26eaf31 Allow moderators to see moderation notes 2023-06-19 14:08:34 +00:00
ThatOneCalculator e2ce197938
refactor: ♻️ better edited timestamp display 2023-06-18 20:34:57 -07:00
ThatOneCalculator cc9e5cada4
fix: 💄 badge style on mobile 2023-06-18 20:11:30 -07:00
ThatOneCalculator 2339c63fcb
fix: 🩹 duplicate update 2023-06-18 19:38:32 -07:00
ThatOneCalculator b179970f15
fix: 🐛 properly index edited post 2023-06-18 19:04:04 -07:00
ThatOneCalculator fe0ceb98c5
chore: formatting 2023-06-18 18:36:34 -07:00
ThatOneCalculator 6fd240a764
fix: 🐛 when editing polls, keep votes for unmodified choices 2023-06-18 18:36:26 -07:00
ThatOneCalculator 10b9030368
fix: 🐛 don't allow editing a post on another account 2023-06-18 17:46:39 -07:00
Hosted Weblate ac614e72f1
chore: Merge branch 'origin/develop' into Weblate. 2023-06-19 01:55:51 +02:00
NISZOgen 24f69de918
chore: Translated using Weblate (Polish)
Currently translated at 95.1% (1716 of 1804 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-06-19 01:55:51 +02:00
jolupa 5f39e4c575
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1804 of 1804 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-19 01:55:48 +02:00
ThatOneCalculator 8a98888595
fix: 🌐 correct "clear" 2023-06-18 16:55:11 -07:00
ThatOneCalculator 37be746812
fix: 💄 white foreground on forced black background
Remedies the problem introduced by 020c4f5788 causing black text to appear over a black-ish background
2023-06-18 16:37:46 -07:00
ThatOneCalculator f978c9200d
Revert "dot inside renote button when renoted"
This reverts commit e0c7c8f49d.
2023-06-18 15:54:45 -07:00
Kainoa Kanter 46f051cc57 Merge pull request '[PR]: Fix missing recursion in dockerignore' (#10323) from PrivateGER/calckey:fix/dockerignore-missing-recursion into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10323
2023-06-18 22:41:50 +00:00
Kainoa Kanter a1e9609605 Merge pull request '[PR]: fix: poll result update' (#10322) from nmkj/calckey:fix-poll-update into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10322
2023-06-18 22:36:41 +00:00
PrivateGER 6c6be5af78 Fix missing recursive exclusion 2023-06-18 22:20:02 +00:00
Namekuji 739a80a94e
shorten cache expire 2023-06-18 18:04:26 -04:00
Namekuji 4c9153fd14
add refresh button to poll 2023-06-18 17:14:38 -04:00
Namekuji 68cc264f5f
don't broadcast poll updates 2023-06-18 13:23:59 -04:00
Freeplay 020c4f5788 Prevent white flash during loading screen
no longer have to deal with getting flashbanged every time! :D
2023-06-17 22:22:35 -04:00
Freeplay f53d8b7e1d fix user preview menu color 2023-06-17 21:41:41 -04:00
Freeplay ad4c43b3f4 fix overflow 2023-06-17 21:21:58 -04:00
Freeplay 24390f1d99 reply line fixes 2023-06-17 16:35:11 -04:00
Freeplay e0c7c8f49d dot inside renote button when renoted 2023-06-17 14:59:19 -04:00
Freeplay 11c00946b5 fix 2023-06-17 13:18:19 -04:00
Freeplay 8f8025910e Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-17 00:51:43 -04:00
Freeplay 1abf71f569 add faded edges to swiper + shadows :3 2023-06-17 00:51:38 -04:00
Hosted Weblate 8ac328bcaf
chore: Merge branch 'origin/develop' into Weblate. 2023-06-17 05:18:16 +02:00
Aléxia 5019d42345
chore: Translated using Weblate (Portuguese (Brazil))
Currently translated at 4.4% (81 of 1803 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pt_BR/
2023-06-17 05:18:16 +02:00
jolupa d62182454a
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1803 of 1803 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-17 05:18:15 +02:00
Freeplay cbefe34e99 Add 'remove your reaction' label 2023-06-16 23:17:55 -04:00
Freeplay be413d5bd2 Add backgrounds in nav & settings when wallpaper in use 2023-06-16 22:54:01 -04:00
Freeplay b4f7506950 Fix mini follow button label + its position in user cards 2023-06-16 22:05:36 -04:00
ThatOneCalculator 51a7bab9ff
fix 2023-06-16 14:19:42 -07:00
ThatOneCalculator 3d6d90a137
refactor: 🎨 locale loader 2023-06-16 14:14:47 -07:00
ThatOneCalculator 0127cc6ac3
refactor: ⚰️ unused import 2023-06-16 14:12:21 -07:00
ThatOneCalculator 54bdfd6e1d
Revert "refactor: ⬆️ use custom version of vue3-otp-input"
This reverts commit f50f8830a8.
2023-06-16 14:11:33 -07:00
ThatOneCalculator 35445f8591
Revert "refactor: 🦺 replace js-yaml with yaml"
This reverts commit 837a45bd98.
2023-06-16 14:09:42 -07:00
ThatOneCalculator c921d5117b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-16 10:16:31 -07:00
ThatOneCalculator 3aab4c05e7
fix: 🐛 display punishments on desktop 2023-06-16 10:16:19 -07:00
Kainoa Kanter 27965f708d Merge pull request '[PR]: fix: publish posts boosted by relays' (#10309) from nmkj/calckey:fix-aode-relay into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10309
2023-06-16 16:59:10 +00:00
Kainoa Kanter 5cccb3378c Merge pull request '[PR]: fix: skip deleting remote actor if not found or already deleted' (#10310) from nmkj/calckey:fix-delete-actor into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10310
2023-06-16 16:49:59 +00:00
Namekuji aa46f5f1bb
skip if actor is not found or has been already deleted 2023-06-16 04:49:11 -04:00
Namekuji c5ccd68c08
remove unused import 2023-06-16 04:17:32 -04:00
Namekuji 2b1e16d489
add comments 2023-06-16 03:48:40 -04:00
Namekuji fda6a1b1d2
wait a bit more 2023-06-16 03:48:39 -04:00
Namekuji 6236661d62
use redis 2023-06-16 03:48:39 -04:00
Namekuji 0c9cce7c7c
fix aode-relay compatibility 2023-06-16 03:48:39 -04:00
Hosted Weblate da6f611185
chore: Merge branch 'origin/develop' into Weblate. 2023-06-16 09:14:12 +02:00
ThatOneCalculator 837a45bd98
refactor: 🦺 replace js-yaml with yaml
Technically mitigates CVE-2023-2251, but users never input YAML to Calckey. Still, this does no harm, and it's a good idea to keep dependencies like these up-to-date, as js-yaml was last updated 2 years ago.
2023-06-16 00:13:41 -07:00
ThatOneCalculator 074e633306
fix: 🩹 convert numeric input to string 2023-06-15 22:16:21 -07:00
ThatOneCalculator f50f8830a8
refactor: ⬆️ use custom version of vue3-otp-input
This enables the use of number inputs without the slider
2023-06-15 22:15:16 -07:00
ThatOneCalculator b148338b78
fix: 🐛 use correct 2fa value 2023-06-15 20:06:47 -07:00
ThatOneCalculator 9c16c879de
fix: 🐛 2FA dialog 2023-06-15 19:52:51 -07:00
ThatOneCalculator 7220fede8c
feat: 2FA input dialog 2023-06-15 19:32:27 -07:00
ThatOneCalculator c5ad1d9580
Merge remote-tracking branch 'weblate/develop' into develop 2023-06-15 16:51:10 -07:00
ThatOneCalculator 905d80898a
fix: 💄 fix sign-in 2fa token style 2023-06-15 16:50:04 -07:00
ThatOneCalculator 892a9ad0b6
feat: 💄 button icons for security 2023-06-15 16:42:24 -07:00
ThatOneCalculator 16b2eda924
style: 💄 2fa dialog styling 2023-06-15 16:34:56 -07:00
ThatOneCalculator ef37b360ed
fix: 🚑 fix switch import 2023-06-15 16:25:31 -07:00
ThatOneCalculator 1dbe44b211
fix: 🐛 sonic logged connection despite not existing 2023-06-15 16:21:51 -07:00
Kenny Hui 0504c17b93
chore: Translated using Weblate (Chinese (Traditional))
Currently translated at 95.6% (1709 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/zh_Hant/
2023-06-16 01:13:12 +02:00
Namekuji e915604b32
chore: Translated using Weblate (Japanese)
Currently translated at 100.0% (1787 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-06-16 01:13:09 +02:00
ThatOneCalculator 46af585cf7
feat: 🔒 Improve 2FA/keypass experience
Co-authored-by: Tamania <tamaina@hotmail.co.jp>
Co-authored-by: Syuilo <syuilotan@yahoo.co.jp>
2023-06-15 16:12:32 -07:00
ThatOneCalculator fbce5d819f
style: 💄 margin on user card follow btn 2023-06-15 14:53:21 -07:00
Kainoa Kanter 55902208e7 docs: 📝 fix formatting 2023-06-15 03:49:17 +00:00
ThatOneCalculator 9fa71f37d7
docs: 📝 sea orm migration "Setting Up Migration" doc link 2023-06-14 20:47:49 -07:00
ThatOneCalculator fe5834e470
docs: 📝 rudamentary sea-orm-cli instructions 2023-06-14 20:46:54 -07:00
ThatOneCalculator 0850950449
chore: 🎨 format 2023-06-14 20:34:00 -07:00
ThatOneCalculator 084e9072d1
fix: 🚑 fix stream.ts 2023-06-14 20:32:59 -07:00
ThatOneCalculator e728a40a9a
docs: 📝 changelog 2023-06-14 20:25:22 -07:00
ThatOneCalculator 8f61ff7f33
fix: 🚸 make "show replies in timeline" work as expected
Co-authored-by: Syuilo <syuilotan@yahoo.co.jp>
2023-06-14 20:17:56 -07:00
Freeplay 50031f1150 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-14 14:58:17 -04:00
Freeplay 8b201fddbd hide acc menu button in notifications 2023-06-14 14:57:16 -04:00
ThatOneCalculator 88e96fc640
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-14 11:52:48 -07:00
ThatOneCalculator 9f7151e3aa
style: 💄 full follow button for userinfo in userlist 2023-06-14 11:52:35 -07:00
Aléxia 3075c535a2
chore: Translated using Weblate (Portuguese (Brazil))
Currently translated at 0.6% (12 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pt_BR/
2023-06-14 06:40:58 +02:00
Ettore Atalan 76dc36fd53
chore: Translated using Weblate (German)
Currently translated at 98.6% (1762 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-14 06:40:57 +02:00
Kainoa Kanter d4bf86d0f8
chore: Added translation using Weblate (Portuguese (Brazil)) 2023-06-14 04:59:43 +02:00
ThatOneCalculator 7517c77ca9
build: 🔨 add cargo clean to clean-all 2023-06-13 19:13:54 -07:00
ThatOneCalculator f3aad508d6
chore: ⬆️ up pnpm 2023-06-13 17:48:29 -07:00
ThatOneCalculator cd929a01c1
refactor: 💄 style punishments 2023-06-13 17:42:00 -07:00
ThatOneCalculator de5d210b04
fix: 🩹 day isn't decreased by 1 2023-06-13 17:32:01 -07:00
ThatOneCalculator 6a6f5e57da
chore: 🛂 conventional commits in body, not checkbox 2023-06-13 17:25:12 -07:00
ThatOneCalculator c0397474c8
fix: 🚨 fix unused import 2023-06-13 17:23:18 -07:00
ThatOneCalculator 40841227b1
chore: 🛂 improve gitea templates 2023-06-13 17:20:57 -07:00
ThatOneCalculator 8151da6b6a
fix: 🩹 YYYYMMDD with dashes 2023-06-13 17:16:10 -07:00
ThatOneCalculator beb96f7cff
feat: 🧐 bring back misskey's moderation displays on profile 2023-06-13 17:15:00 -07:00
ThatOneCalculator 5a7aca3b91
fix: "24"th hour doesn't exist, it's 0 2023-06-13 17:06:32 -07:00
ThatOneCalculator c80d91dc38
chore: formatting 2023-06-13 17:04:17 -07:00
Freeplay ca1581a494 oh 2023-06-13 15:18:43 -04:00
Freeplay 21677fdd27 match posting form font size 2023-06-13 15:16:46 -04:00
Freeplay 119ca924a7 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-13 14:42:21 -04:00
Freeplay e8ae6738d1 Set font size directly rather than using classes, add 18px font size option, fixes 2023-06-13 14:42:18 -04:00
AkDk7 54626e62ea
chore: Translated using Weblate (German)
Currently translated at 97.4% (1741 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-13 19:12:12 +02:00
Ettore Atalan e8efee009a
chore: Translated using Weblate (German)
Currently translated at 97.4% (1741 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-13 19:12:09 +02:00
jolupa bae5ad8db8
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1787 of 1787 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-13 07:47:45 +02:00
Freeplay 35fd45965d spacing and font size adjustments 2023-06-13 00:04:36 -04:00
Freeplay cb59298df4 Always bold first boost option 2023-06-12 20:06:42 -04:00
Freeplay 1a29bbe895 chore: format 2023-06-12 19:56:15 -04:00
Freeplay c1d4178360 fix 2023-06-12 19:49:38 -04:00
Freeplay d1c3706940 Add user options to note menu 2023-06-12 19:44:30 -04:00
Freeplay d0aeee089d fix back button display 2023-06-12 18:54:29 -04:00
Freeplay fea8203c2f fix 2023-06-12 18:05:31 -04:00
Freeplay 85c5af4a5b Move user menu to MkFollowButton 2023-06-12 17:59:13 -04:00
ThatOneCalculator 1862d83f9f
chore: formatting 2023-06-12 13:20:30 -07:00
Freeplay a9bbae27df Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-12 15:01:25 -04:00
Freeplay 79f9398ca3 widgets scrollbar + little refactor 2023-06-12 14:59:54 -04:00
Kainoa Kanter 5d627d56aa Merge pull request '[PR]:' (#10302) from PrivateGER/calckey:fix/search-filter-behavior into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10302
2023-06-12 17:25:23 +00:00
PrivateGER 8e46059d61 Merge branch 'develop' into fix/search-filter-behavior 2023-06-12 14:54:44 +00:00
PrivateGER 40f7756176 use actually correct webfinger check 2023-06-12 16:46:30 +02:00
PrivateGER cb47c585f9 Add webfinger support to from: and allow UNIX timestamps in date filters 2023-06-12 16:35:04 +02:00
ThatOneCalculator d778f6ad77
refactor: ♻️ use parent/child selector for attachment 2023-06-12 02:19:27 -07:00
ThatOneCalculator f72120bb9a
fix math 2023-06-12 02:00:38 -07:00
ThatOneCalculator f69c6ef274
refactor: 💄 reverse pie chart color on indexing
Co-authored-by: PrivateGER <privateger@codeberg.org>
2023-06-12 01:58:32 -07:00
ThatOneCalculator 856c8a26e4
fix: 🐛 properly enter date 2023-06-12 01:39:52 -07:00
ThatOneCalculator 1d9ce9c288
refactor: ♻️ import from @/db 2023-06-12 01:28:39 -07:00
ThatOneCalculator 4b1fc747e4
refactor: ⚰️ remove old db calls, add todo 2023-06-12 01:23:53 -07:00
ThatOneCalculator bd9f28246b
perf: use charts data for stats endpoint 2023-06-12 01:16:36 -07:00
ThatOneCalculator d4ddf2c867
fix 2023-06-12 01:01:32 -07:00
ThatOneCalculator 703b34c07c
fix search features 2023-06-11 23:25:10 -07:00
ThatOneCalculator 266534d35c
fix typo 2023-06-11 23:12:22 -07:00
ThatOneCalculator 69d4a3aee5
chore: formatting 2023-06-11 21:57:20 -07:00
ThatOneCalculator c3b332acf9
seperate error for null followers 2023-06-11 21:56:56 -07:00
Kainoa Kanter fc7c752337 Merge pull request '[PR]: Advanced Search dropdown' (#10299) from Freeplay/calckey:search2 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10299
2023-06-12 03:54:07 +00:00
Freeplay d79e974fd0 Only show if available 2023-06-11 22:12:11 -04:00
Freeplay 19ca91c201 i18n 2023-06-11 22:05:50 -04:00
Daniele Tricoli 7efd99d16f
chore: Translated using Weblate (Italian)
Currently translated at 71.0% (1262 of 1777 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/it/
2023-06-11 18:49:25 +02:00
Kainoa Kanter 41b3ecbb49 Merge pull request '[PR]: fix: boost mutes logic' (#10300) from naskya/calckey:fix/boost-mutes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10300
2023-06-11 12:18:49 +00:00
Kainoa Kanter 5ebb0e1c8d Merge pull request '[PR]: Bring back the scrollable sticky widgets sidebar' (#10294) from Freeplay/calckey:sticky into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10294
2023-06-11 12:17:30 +00:00
naskya 4e382c9124
fix boost mutes 2023-06-11 11:46:18 +00:00
Freeplay 621e760056 remove unnecessary 2023-06-10 20:58:22 -04:00
Freeplay b20225a1d4 format 2023-06-10 20:48:35 -04:00
Freeplay 930ca79392 fix width 2023-06-10 20:46:35 -04:00
Freeplay 715f7a7a1a fixes 2023-06-10 20:33:51 -04:00
Freeplay 5b686d161a Add dropdown for advanced search 2023-06-10 20:33:40 -04:00
Freeplay 999722f262 Hide time travel button from Antennas for now (it's been broken) 2023-06-10 19:45:11 -04:00
Freeplay 1276025e1d Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-10 19:35:02 -04:00
Freeplay fbc67ca745 force advanced MFM in posting form preview 2023-06-10 19:34:20 -04:00
Freeplay 4bf7357c30 format 2023-06-10 18:33:39 -04:00
Freeplay 2ec1e09105 remove scrollbars 2023-06-10 18:08:06 -04:00
Freeplay 5893b4c117 simpler way lol 2023-06-10 16:49:07 -04:00
Kainoa Kanter 9bc2a8202e docs: 📝 tips 2023-06-10 16:09:48 +00:00
Grunge Fox 1c1dc36f6a
chore: Translated using Weblate (Polish)
Currently translated at 96.4% (1714 of 1777 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-06-10 14:51:41 +02:00
jolupa 64953b9c2f
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1777 of 1777 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-10 14:51:38 +02:00
Kainoa Kanter f6c2acc7f5 Merge pull request '[PR]: Fix invalid CSP policy' (#10296) from esm/calckey:fix/note-csp-urls into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10296
2023-06-09 18:51:53 +00:00
ThatOneCalculator 3cc8f60ee9
feat: delay function in animated MFM 2023-06-09 11:46:55 -07:00
ThatOneCalculator 3f3d777e6e
update cheat sheet with delay 2023-06-09 10:52:20 -07:00
Essem 84be788034
Fix CSP 2023-06-09 11:15:49 -05:00
Freeplay 27a935a2ff scrollable sticky widgets attempt 2023-06-08 23:33:39 -04:00
ThatOneCalculator f5945269bf
revert method 2023-06-08 13:27:28 -07:00
Hosted Weblate abf8e4f585
chore: Merge branch 'origin/develop' into Weblate. 2023-06-08 22:20:42 +02:00
ThatOneCalculator c5d102021e
perf: set patrons in redis 2023-06-08 13:19:46 -07:00
ThatOneCalculator 31acc8caad
patron async computed 2023-06-08 12:51:05 -07:00
ThatOneCalculator 344adbe2a1
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-08 12:41:27 -07:00
ThatOneCalculator 8cbfcedf92
old patrons method 2023-06-08 12:40:47 -07:00
Hosted Weblate eed96d0a97
chore: Merge branch 'origin/develop' into Weblate. 2023-06-08 21:34:21 +02:00
jolupa 33064fac92
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1772 of 1772 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-08 21:34:21 +02:00
ThatOneCalculator f2d8882fd5
Merge branch 'patron-labels' into develop 2023-06-08 12:33:51 -07:00
ThatOneCalculator c980920094
chore: update patrons 2023-06-08 12:33:16 -07:00
ThatOneCalculator fb71b7beff
Revert "fix logic"
This reverts commit 8734de13f1.
2023-06-08 11:35:31 -07:00
ThatOneCalculator 2945f25268
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-08 11:22:16 -07:00
ThatOneCalculator 8734de13f1
fix logic 2023-06-08 11:22:11 -07:00
Freeplay 63255b5641 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-08 14:16:06 -04:00
Freeplay 449a75319a allow scrolling from body again, keep scrollbar in widgets 2023-06-08 14:16:00 -04:00
ThatOneCalculator 73ff326ca9
dev46 2023-06-08 11:14:01 -07:00
ThatOneCalculator 9f931e6e8b
fix: unread message bgcolor 2023-06-08 11:13:45 -07:00
ThatOneCalculator 5d3abfcb98
Close #10280 2023-06-08 11:03:39 -07:00
ThatOneCalculator 5769bdcc69
chore: formatting 2023-06-08 11:01:00 -07:00
Kainoa Kanter 1186969ee6 Merge pull request '[PR]: Improve the order of note menu items' (#10290) from naskya/calckey:chore/note-menu-order into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10290
2023-06-08 17:53:32 +00:00
naskya db37f2f8e0
change style 2023-06-08 17:47:21 +00:00
Hosted Weblate 2c39e99875
chore: Merge branch 'origin/develop' into Weblate. 2023-06-08 18:52:59 +02:00
Namekuji 6ab48c947e
chore: Translated using Weblate (Japanese)
Currently translated at 100.0% (1770 of 1770 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-06-08 18:52:58 +02:00
jolupa ed34d62eff
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1770 of 1770 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-08 18:52:56 +02:00
Kainoa Kanter d7b3813c9a Merge pull request '[PR]: feat: channel column in deck view' (#10291) from naskya/calckey:feat/deck-channel-column into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10291
2023-06-08 16:52:43 +00:00
Kainoa Kanter 4dbe74a6bd Merge pull request '[PR]: Split content/sidebar scrolling on default/centered views' (#10292) from esm/calckey:fix/column-scroll-split into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10292
2023-06-08 16:46:42 +00:00
Kainoa Kanter cfa339a51b Merge pull request '[PR]: fix: take invalid expiresAt of polls as null' (#10279) from nmkj/calckey:fix-poll-expire into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10279
2023-06-08 16:46:14 +00:00
Essem 6aa3c301e3
Attempt to split column scrolling 2023-06-08 10:06:22 -05:00
naskya f4bf5cc447
feat: channel column in deck view 2023-06-08 13:29:19 +00:00
naskya 91190244fb
change note menu order 2023-06-08 19:02:50 +09:00
Kainoa Kanter bf78733da4 Merge pull request '[PR]: Fixes #10284 and Fixes #10208; Allows Custom MOTD and Splash Icons on all pages, by passing in variables more consistantly - fixes a CSP issue preventing the site from loading' (#10285) from kartonrad/calckey:fix-motd-and-csp into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10285
2023-06-07 18:50:55 +00:00
Konni (im Schloss) 2d8ad9389c fixes #10284, fixes #10208; passing in all pugVariables needed in base.pug, fixes csp 2023-06-07 20:35:24 +02:00
Namekuji ab9b9e5bff
fix inbox stall 2023-06-07 10:01:16 -04:00
Kainoa Kanter f49f8bf8f7 chore: update patrons 2023-06-07 06:55:24 +00:00
Kainoa Kanter 4d9457ec6a chore: update patrons 2023-06-07 04:46:35 +00:00
ThatOneCalculator e13af49118
dont lint in format 2023-06-06 21:02:02 -07:00
ThatOneCalculator ca5ae3a4c9
chore: lint sw 2023-06-06 21:01:28 -07:00
ThatOneCalculator 90c0e4e9ed
allow iframes for notes 2023-06-06 21:00:16 -07:00
ThatOneCalculator abe8474883
fix server metric iteration 2023-06-06 19:10:43 -07:00
ThatOneCalculator 23d59b634b
fix: only show meili in metrics if available 2023-06-06 19:08:41 -07:00
ThatOneCalculator 0c5be99d77
perf: limit number of antennas 2023-06-06 18:47:06 -07:00
ThatOneCalculator 6825595bdc
feat: patron labels 2023-06-06 18:43:05 -07:00
ThatOneCalculator 71d4f5d516
chore: update patrons 2023-06-06 16:54:41 -07:00
ThatOneCalculator eda82780de
feat: searchFilters meta property 2023-06-06 16:19:13 -07:00
ThatOneCalculator 8bd8c7532b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-06 13:27:53 -07:00
ThatOneCalculator 75f9831d46
Merge remote-tracking branch 'weblate/develop' into develop 2023-06-06 13:27:30 -07:00
Kainoa Kanter 7dfc94b2c1 Update 'issue_template/bug.yaml' 2023-06-06 20:17:56 +00:00
Kainoa Kanter 7e9abc9b1c Update 'issue_template/feature.yaml' 2023-06-06 20:17:31 +00:00
ThatOneCalculator 047e923660
refactor: client assets 2023-06-06 13:03:15 -07:00
ThatOneCalculator 1e58e4ce69
fix: editing caption accuracy 2023-06-06 13:03:09 -07:00
ThatOneCalculator 441bdd6211
refactor: client assets 2023-06-06 13:02:30 -07:00
ThatOneCalculator 41dcd10900
fix: editing caption accuracy 2023-06-06 12:29:45 -07:00
ThatOneCalculator df69149826
Merge branch 'develop' into beta 2023-06-06 12:17:30 -07:00
ThatOneCalculator 349411ac76
typo 2023-06-06 12:16:49 -07:00
ThatOneCalculator 0485b545e2
release: 🚑 rc2c 2023-06-06 12:13:54 -07:00
ThatOneCalculator 7ecb20bf79
Merge branch 'develop' into beta 2023-06-06 12:11:37 -07:00
ThatOneCalculator f621e58efa
fix: post editing meta 2023-06-06 12:11:15 -07:00
Namekuji 3ca1f31c82
chore: Translated using Weblate (Japanese)
Currently translated at 100.0% (1753 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-06-06 18:41:10 +02:00
Kainoa Kanter 84506b606d Merge pull request '[PR]: fix: JSON5.parse error' (#10272) from nmkj/calckey:fix-json5 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10272
2023-06-06 16:39:51 +00:00
CaffeeLake cb8f1617c7
Fix: #10955 TypeError: JSON5.parse is not a function (#10956)
* Fix: JSON5.parse is not a function

* update changelog

* update chglog

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
2023-06-06 04:32:22 -04:00
ThatOneCalculator 2d79418851
rc2b 2023-06-05 21:21:10 -07:00
ThatOneCalculator 10823934de
Merge branch 'develop' into beta 2023-06-05 21:20:41 -07:00
ThatOneCalculator c5a0c01e4e
Revert "chore: formatting"
This reverts commit 36283b9a35.
2023-06-05 21:15:49 -07:00
ThatOneCalculator 7925399f0d
Merge branch 'develop' into beta 2023-06-05 18:56:05 -07:00
ThatOneCalculator 9bd03cc92e
update cargo.lock 2023-06-05 18:55:27 -07:00
ThatOneCalculator 9a20ad0d02
Merge branch 'develop' into beta 2023-06-05 18:51:10 -07:00
ThatOneCalculator 5483dd567f
Don't ignore Cargo.lock 2023-06-05 18:49:27 -07:00
Freeplay bea409b4fa Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-05 20:54:25 -04:00
Freeplay 747a71ddc4 fix cw button pos... oops 2023-06-05 20:54:21 -04:00
ThatOneCalculator ae880ff716
Merge branch 'develop' into beta 2023-06-05 17:37:17 -07:00
ThatOneCalculator 0c5246b6ab
changelog 2023-06-05 17:36:58 -07:00
ThatOneCalculator 65bd69fd01
Merge branch 'develop' into beta 2023-06-05 17:34:27 -07:00
ThatOneCalculator ed674f2dac
chore: format 2023-06-05 17:27:40 -07:00
Freeplay 96b6c433c8 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-05 20:15:21 -04:00
Freeplay 6bddeac975 fix 2023-06-05 20:15:17 -04:00
ThatOneCalculator 9b55518bf8
Merge branch 'develop' into beta 2023-06-05 17:11:55 -07:00
ThatOneCalculator 36283b9a35
chore: formatting 2023-06-05 16:40:48 -07:00
Kainoa Kanter 5b73351e80 Merge pull request '[PR]: Add delay to MFM' (#10248) from Freeplay/calckey:mfm into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10248
2023-06-05 22:38:33 +00:00
ThatOneCalculator c664d7da08
fix 2023-06-05 15:08:35 -07:00
Freeplay 035d6660be Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-05 18:07:53 -04:00
Freeplay 63798dd4b7 remove invalid css 2023-06-05 18:07:42 -04:00
ThatOneCalculator a018bfca9a
dep: down typeorm 2023-06-05 15:02:59 -07:00
ThatOneCalculator 4f16bdea78
chore: ⬆️ up deps 2023-06-05 14:54:43 -07:00
Kainoa Kanter a60cb874c1 Merge pull request '[PR]: Meilisearch Stop-Words' (#10261) from PrivateGER/calckey:feat/meilisearch-stop-words into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10261
2023-06-05 21:39:31 +00:00
Kainoa Kanter c32d26e6c7 Merge pull request '[PR]: Fix database connection URL' (#10263) from nmkj/calckey:fix-database-url into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10263
2023-06-05 21:36:48 +00:00
Freeplay 9382afeb5e comment out easing part for now 2023-06-05 15:28:42 -04:00
Freeplay 6f1bdf79cd fix collapsed height 2023-06-05 15:07:04 -04:00
Freeplay 807093b94c Better post clipping 2023-06-05 13:11:14 -04:00
Namekuji cf3f566e06
escape database password as it may contain special characters 2023-06-05 11:59:45 -04:00
Freeplay de65c3c3f6 the better way of doing advanced MFM™ 2023-06-05 11:55:21 -04:00
Freeplay 60960d659d fix in cheat sheet also, I've realized I will need to do it a different at some point but this works for now. 2023-06-05 11:41:56 -04:00
Freeplay c25b80d39a Fix animated MFM not playing in posting form preview 2023-06-05 11:33:48 -04:00
Freeplay e1279b4abe Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-04 18:17:07 -04:00
Freeplay 47e3acd233 center-align navbar icons 2023-06-04 18:16:54 -04:00
Kainoa Kanter 3fb246f962 Update 'docker-compose.yml' 2023-06-04 21:55:35 +00:00
Freeplay 517e0a16f3 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-04 17:52:49 -04:00
Freeplay 7c436d0a41 Prevent newly-made unlisted posts from showing in antennas 2023-06-04 17:52:44 -04:00
Kainoa Kanter f1e8099c48 Merge pull request '[PR]: Fix docker' (#10259) from nmkj/calckey:fix-docker into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10259
2023-06-04 21:48:39 +00:00
ThatOneCalculator 6a7e950f21
chore: formatting 2023-06-04 14:42:22 -07:00
ThatOneCalculator acc3b672bc
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-04 14:41:30 -07:00
ThatOneCalculator 535fa9f506
fix: 🐛 prevent null date insertion
https://calckey.aokaga.work/notes/9f6ksv2oov
2023-06-04 14:41:18 -07:00
Namekuji 0151b256fc
cache cargo artifacts 2023-06-04 17:03:47 -04:00
Namekuji 9a9c3d4c62
add rust to the runtime container for migrations 2023-06-04 16:29:24 -04:00
Freeplay b0cd3b25fc fix background of mentions 2023-06-04 16:29:12 -04:00
Freeplay 3b889d9c05 header spacing 2023-06-04 16:05:06 -04:00
Freeplay c4fa29be50 i18n to more button in navbar 2023-06-04 15:46:11 -04:00
Freeplay 49d2c87e50 'clip' to 'clips' #10255 2023-06-04 15:39:23 -04:00
Freeplay 9e6a553434 preload antennas & lists 2023-06-04 15:31:42 -04:00
ThatOneCalculator 482c21d00e
chore: format 2023-06-04 12:02:34 -07:00
Kainoa Kanter 89330c5161 Merge pull request '[PR]: Add advanced MFM toggle' (#10254) from Freeplay/calckey:advanced-mfm into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10254
2023-06-04 18:59:56 +00:00
Kainoa Kanter 8d96733137 Merge pull request '[PR]: Some more ARIA label and live-region magic' (#10257) from TalonTheDragon/calckey:fix/more-accessibility into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10257
2023-06-04 16:53:35 +00:00
Talon 4a9e442abb Merge branch 'develop' into fix/more-accessibility 2023-06-04 12:41:40 +02:00
Freeplay 15b30231eb Allow clicking pfp in header of note page 2023-06-03 22:20:42 -04:00
Freeplay 5a3e14fa32 Forgot clip-path 2023-06-03 17:26:37 -04:00
Freeplay c80e106fb5 Advanced MFM toggle 2023-06-03 17:12:08 -04:00
Freeplay 28780772cb tweak 2023-06-03 13:43:08 -04:00
Freeplay 0c20e7076e Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-03 12:58:23 -04:00
Freeplay 47a38969eb Highlight boost button if boosted! 2023-06-03 12:57:51 -04:00
jolupa f468fd57a6
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1753 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-06-03 18:01:47 +02:00
Kainoa Kanter 3749f92cc8 docs: 📝 rust version 2023-06-03 16:00:46 +00:00
Freeplay d780fea36a Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-03 10:47:48 -04:00
Freeplay 9c424ee041 Fix blue highlight on post tap 2023-06-03 10:47:41 -04:00
TalonTheDragon 3d951c7f4b Merge branch 'develop' into fix/more-accessibility 2023-06-03 12:42:20 +02:00
Kainoa Kanter 554241e7c7 fix outdated docker deps 2023-06-03 09:12:32 +00:00
ThatOneCalculator 02658fee0b
chore: ⬆️ up various deps 2023-06-03 00:41:30 -07:00
ThatOneCalculator 8b223bd5bf
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-02 23:55:41 -07:00
ThatOneCalculator 99df1dcbd7
fix: summary if 1 attachment 2023-06-02 23:55:31 -07:00
Kainoa Kanter 89d5810e63 Merge pull request '[PR]: Switch position of Social and Recommended timelines' (#10239) from naskya/calckey:social-recommended-position-switch into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10239
2023-06-03 06:40:16 +00:00
ThatOneCalculator 2ec387de4a
regress: no metrics in dashboard for now 2023-06-02 23:38:05 -07:00
ThatOneCalculator dbe00078a3
refactor: remove mk remnants 2023-06-02 23:30:51 -07:00
ThatOneCalculator 6956522694
perf: インスタンスデフォルトテーマを予めjson5 -> jsonに変換しておくことでjson5を初期バンドルに含めずに済むように
Co-authored-by: Syuilo <syuilotan@yahoo.co.jp>
2023-06-02 23:28:21 -07:00
naskya 0eb65d0f12
fix tutorial 2023-06-03 15:24:16 +09:00
ThatOneCalculator c1f699789b
chore: formatting 2023-06-02 23:21:06 -07:00
ThatOneCalculator f2a1d5643b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-02 23:20:46 -07:00
ThatOneCalculator 696c07b19a
fix: remove unessicary extra line in note menu 2023-06-02 23:20:34 -07:00
Kainoa Kanter 7017b13706 dev39 2023-06-03 06:02:47 +00:00
Kainoa Kanter d81af5e991 Merge pull request '[PR]: feat: rust backend model and utilities' (#10250) from nmkj/calckey:native-model into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10250
2023-06-03 06:00:46 +00:00
ThatOneCalculator f3bd82b074
refactor: ♻️ sync note summaries 2023-06-02 22:11:34 -07:00
ThatOneCalculator 7ea4c39fb7
refactor: ♻️ ssr views
Correct og:type for users, format docs, deprecate _info_card_
2023-06-02 21:45:11 -07:00
Namekuji 382b009ffd
add cargo test script 2023-06-03 00:40:51 -04:00
Namekuji 15f8a4cbba
cargo formats all modules 2023-06-03 00:37:10 -04:00
Namekuji d7f80edbea
call seaorm migrations after typeorm 2023-06-03 00:27:00 -04:00
Namekuji afe4c76392
fix migration 2023-06-02 23:48:28 -04:00
Namekuji d3d30bbbc2
add integration test of antenna 2023-06-02 23:48:28 -04:00
Namekuji 874b0a2c69
add unit test 2023-06-02 23:48:27 -04:00
Namekuji 7cf2b39cde
fix unit tests 2023-06-02 23:48:27 -04:00
Namekuji c443a5601c
add format script 2023-06-02 23:48:27 -04:00
Namekuji 80e5d25698
pnpm install 2023-06-02 23:48:26 -04:00
Namekuji 0224824a36
fix native import 2023-06-02 23:48:26 -04:00
Namekuji 10072d6e4d
remove node cuid2 2023-06-02 23:48:26 -04:00
Namekuji ba578c8701
initialize native database on boot 2023-06-02 23:48:25 -04:00
Namekuji 8bb87f9ea4
use native generators 2023-06-02 23:48:25 -04:00
Namekuji 55118df538
add test 2023-06-02 23:48:25 -04:00
Namekuji a10ade8cf5
fix unit test 2023-06-02 23:48:24 -04:00
Namekuji 752d63e6de
add native calls 2023-06-02 23:48:24 -04:00
Namekuji e932d6effa
use schema in native-utils 2023-06-02 23:48:24 -04:00
Namekuji 5e9dce3e8c
adjust module structure 2023-06-02 23:48:23 -04:00
Namekuji 148dbbe56d
move files out from crate 2023-06-02 23:48:23 -04:00
Namekuji 403e95b673
fix unit test 2023-06-02 23:48:22 -04:00
Namekuji e51deb3794
add napi schema 2023-06-02 23:48:22 -04:00
Namekuji d0734ef4c9
add pack_by_id 2023-06-02 23:48:22 -04:00
Namekuji c9f31aef9b
add default values 2023-06-02 23:48:21 -04:00
Namekuji 3eb87c8f04
rename feature 2023-06-02 23:48:21 -04:00
Namekuji 193c75a2bb
skip empty array 2023-06-02 23:48:21 -04:00
Namekuji d9d2673939
use thread to copy data 2023-06-02 23:48:20 -04:00
Namekuji 3010ac9e74
use iden enum 2023-06-02 23:48:20 -04:00
Namekuji d28f74b513
fix primary key specifier 2023-06-02 23:48:20 -04:00
Namekuji 98f2397fbb
add migration to convert array to jsonb 2023-06-02 23:48:19 -04:00
Namekuji 745384ff58
use vec newtype 2023-06-02 23:48:19 -04:00
Namekuji 6178593e22
make sqlite compat 2023-06-02 23:48:19 -04:00
Namekuji 354ece6432
add abstraction of string array type 2023-06-02 23:48:18 -04:00
Namekuji 0bd5893e7d
fix varchar array 2023-06-02 23:48:18 -04:00
Namekuji 1455068e0c
add newtype 2023-06-02 23:48:18 -04:00
Namekuji 76e5e31411
todo unread note check 2023-06-02 23:48:17 -04:00
Namekuji 6698c00f78
rename test modules 2023-06-02 23:48:17 -04:00
Namekuji 6bbfe1a6b4
add tests 2023-06-02 23:48:17 -04:00
Namekuji 4012d38f7f
add integration test in model 2023-06-02 23:48:16 -04:00
Namekuji 737ccfe11c
remove mock database 2023-06-02 23:48:16 -04:00
Namekuji f1f3e5976d
add random string generator 2023-06-02 23:48:15 -04:00
Namekuji 6bb8775b2e
change aid to cuid2 2023-06-02 23:48:15 -04:00
Namekuji eda1e7ab3b
fix features 2023-06-02 23:48:15 -04:00
Namekuji 00ba8a2804
return mock db when mock feature is enabled 2023-06-02 23:48:14 -04:00
Namekuji 2f9a6859f1
add utility crate 2023-06-02 23:48:14 -04:00
Namekuji 535eb3540b
add mock database 2023-06-02 23:48:14 -04:00
Namekuji d453eaf4ae
remove unused feature 2023-06-02 23:48:13 -04:00
Namekuji 81ba464f1b
format 2023-06-02 23:48:13 -04:00
Namekuji 9220aa3e4c
remove unused serde 2023-06-02 23:48:13 -04:00
Namekuji bc0e0b14d0
add repository trait 2023-06-02 23:48:12 -04:00
Namekuji 4e82dab1eb
add entities and two schemas 2023-06-02 23:48:07 -04:00
ThatOneCalculator 14126de3d7
chore: formatting 2023-06-02 20:06:04 -07:00
ThatOneCalculator 44d77f60ef
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-02 20:05:19 -07:00
mappi bf54fb70af
fix: vue-plyr audio tag
Co-authored-by: mappi <mappi-pr@github.com>
2023-06-02 20:05:02 -07:00
Freeplay 217b389a7b tweak 2023-06-02 22:57:04 -04:00
Freeplay bf21b84129 fix mfm-cheat-sheet styling 2023-06-02 22:54:23 -04:00
Freeplay 9ee51bc690 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-02 21:05:46 -04:00
Freeplay 389ca3f332 aria to acc menu button 2023-06-02 21:04:51 -04:00
ThatOneCalculator 09983a657d
chore: update example config 2023-06-02 16:10:57 -07:00
ThatOneCalculator f8879650c6
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-02 15:45:15 -07:00
ThatOneCalculator b0a04faaba
fix: ♻️ use locale for error
https://calckey.social/notes/9fippqiwhl287b5m
2023-06-02 15:45:05 -07:00
Freeplay 83d5415801 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-06-02 18:14:43 -04:00
Freeplay 903d12f18f fix gap 2023-06-02 18:14:39 -04:00
ThatOneCalculator 8e5a374ac7
chore: formatting 2023-06-02 14:53:28 -07:00
ThatOneCalculator 088ff4c251
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-06-02 14:52:58 -07:00
ThatOneCalculator 4cbf73140c
fix: show message on error alert if text is null 2023-06-02 14:52:44 -07:00
Kainoa Kanter 028d47587c Update 'CODE_OF_CONDUCT.md' 2023-06-02 21:36:47 +00:00
Freeplay 6233883cd0 hide close button bottom fade for now 2023-06-02 17:23:09 -04:00
mutex 860e5bdbd0
chore: Translated using Weblate (German)
Currently translated at 99.5% (1745 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-02 21:51:58 +02:00
Kainoa Kanter 004bab2d56 Merge pull request '[PR]: chore: use the word "server" instead of "instance" in docs' (#10249) from naskya/calckey:chore/word into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10249
2023-06-02 19:51:36 +00:00
Freeplay d8d2ee266e Setup to also support steps 2023-06-02 15:39:33 -04:00
naskya d9bf0f7cc4
instance -> server 2023-06-03 04:16:36 +09:00
Freeplay c722cee101 Idk why I used ?? there 2023-06-02 15:06:57 -04:00
Freeplay 1efb167f8f Add delay & start adding cubic-bezier to mfm 2023-06-02 14:44:41 -04:00
Kainoa Kanter caa6408e03 Merge pull request '[PR]: Add an option to toggle opening post on click' (#10242) from Freeplay/calckey:note-click into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10242
2023-06-01 20:44:56 +00:00
Kainoa Kanter e3b337e115 Merge pull request 'Add raw zip emoji imports' (#10246) from PrivateGER/calckey:fix/no-metadata-emoji-import into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10246
2023-06-01 20:43:57 +00:00
Michael 465537 4c64feee46
chore: Translated using Weblate (German)
Currently translated at 98.9% (1734 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-06-01 22:31:07 +02:00
PrivateGER 7eeac4810a formatter 2023-06-01 21:38:37 +02:00
PrivateGER 9be58ba0b4 missing inversion + use proper emoji path 2023-06-01 21:30:23 +02:00
PrivateGER d409c31ad5 me when I lack a brain 2023-06-01 21:12:03 +02:00
PrivateGER f508a358b1 more logging 2023-06-01 21:01:15 +02:00
ThatOneCalculator 35e72bfca7
chore: formatting 2023-06-01 11:55:13 -07:00
ThatOneCalculator 4e4617b475
fix: locale key 2023-06-01 11:53:32 -07:00
PrivateGER 4d2eaa645b Import emojis without meta.json 2023-06-01 20:53:13 +02:00
Morten Juhl-Johansen b1eab102ec
chore: Translated using Weblate (Danish)
Currently translated at 11.5% (203 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/da/
2023-06-01 13:34:13 +02:00
Freeplay 7c4b14e432 typo 2023-05-31 23:52:18 -04:00
Freeplay c5cd624d82 Add expand on note click option 2023-05-31 23:52:05 -04:00
Freeplay 2515319c08 hide back button when not needed 2023-05-31 22:38:14 -04:00
Freeplay b0390a3fc0 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-05-31 22:10:49 -04:00
Freeplay 1548fc2f2a Fix #10219 2023-05-31 22:10:44 -04:00
Kainoa Kanter 001e31bfcd Merge pull request '[PR]: fix: import settings backup' (#10240) from naskya/calckey:fix/import-settings-backups into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10240
2023-06-01 00:35:15 +00:00
Freeplay c97c6fbe5b hide broken logged-out header link for now 2023-05-31 19:43:58 -04:00
Freeplay b9046573e1 fix 2023-05-31 19:35:02 -04:00
naskya 7b02b87ec6
format 2023-06-01 08:01:24 +09:00
naskya 151f5e355d
Fix exported settings being not importable 2023-06-01 07:55:59 +09:00
naskya 0a99366298
no change, but more comfortable 2023-06-01 07:29:54 +09:00
naskya 9d9047c33d
switch position of social and recommended 2023-06-01 07:24:49 +09:00
Freeplay 618042c3e3 lemme just update that 2023-05-31 17:59:03 -04:00
Freeplay f3bdce0636 Fix #10236 2023-05-31 17:02:58 -04:00
Freeplay 0663a67b86 fix 2023-05-31 16:41:31 -04:00
Freeplay 3443e5d649 button styling 2023-05-31 16:34:29 -04:00
Kainoa Kanter 38b92b7aee Merge pull request '[PR]: enhance: multiple alsoKnownAs' (#10232) from nmkj/calckey:more-aka into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10232
2023-05-31 19:10:25 +00:00
Kainoa Kanter 41ba921780 Merge pull request '[PR]: Repair the dev env by: Updating .envrc to new nix-direnv version, Updating flake.lock to fix pnpm version, downgrading to node version 18 and documenting the process' (#10235) from kartonrad/calckey:fix-dev-enviroment into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10235
2023-05-31 19:09:15 +00:00
Kainoa Kanter 831abc22d0 Merge pull request 'Less WS logging + use logger for meilisearch' (#10234) from PrivateGER/calckey:fix/remove-console-logs into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10234
2023-05-31 19:08:36 +00:00
ThatOneCalculator 88892d886e
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-31 12:06:34 -07:00
ThatOneCalculator 0291579e2f
chore: ⬆️ up bull 2023-05-31 12:06:26 -07:00
kartonrad d1efcd1247 Merge branch 'develop' into fix-dev-enviroment 2023-05-31 12:05:15 +00:00
Konni (im Schloss) ffb93678d7 Fixed dev enviroment _> documented procedure 2023-05-31 13:52:21 +02:00
PrivateGER 23f551884f Less logging of every single WS message + use logger in Meilisearch 2023-05-31 12:08:21 +02:00
Namekuji 8480ced256
remove empty form input 2023-05-31 01:14:13 -04:00
Namekuji c321a6ee39
use parse instead 2023-05-31 01:02:41 -04:00
Namekuji b1d0b291ff
get array for alsoKnownAs 2023-05-31 01:02:22 -04:00
Kainoa Kanter 2619c141ab docs: 📝 full git clone 2023-05-31 02:41:29 +00:00
Kainoa Kanter e7a028e9dd docs: 📝 typos 2023-05-31 02:40:23 +00:00
Kainoa Kanter 862384d32d docs: 📝 versions 2023-05-31 02:37:57 +00:00
Kainoa Kanter ea79bdb353 Update '.node-version' 2023-05-31 02:36:19 +00:00
Kainoa Kanter 85fc4bf5ad revert 3bc9577cf3
revert Delete '.node-version'
2023-05-31 02:34:44 +00:00
PrivateGER b10337c858 Add english and japanese stop words to Meili database 2023-05-30 23:11:10 +02:00
Freeplay 0aef4977b2 fix border w/ wallpaper 2023-05-30 10:15:18 -04:00
Kainoa Kanter 3bc9577cf3 Delete '.node-version' 2023-05-30 03:09:35 +00:00
ThatOneCalculator d339fa3a1a
node v20 2023-05-29 19:49:53 -07:00
ThatOneCalculator c1f42d5bc1
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 19:46:21 -07:00
ThatOneCalculator ce5d93c9df
Revert "refactor: add back old info display from mkv12"
This reverts commit c58692fa58.
2023-05-29 19:45:42 -07:00
Freeplay c6c3ec0bb6 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-05-29 22:41:09 -04:00
Freeplay 102d2bd6a8 swiper tweak 2023-05-29 22:40:53 -04:00
ThatOneCalculator 15d311c513
fix 2023-05-29 19:34:32 -07:00
ThatOneCalculator 2c42707551
up redis deps 2023-05-29 19:32:33 -07:00
ThatOneCalculator da8ed09932
chore: up bull-board deps 2023-05-29 19:30:20 -07:00
ThatOneCalculator c58692fa58
refactor: add back old info display from mkv12 2023-05-29 16:13:36 -07:00
ThatOneCalculator fd97dd7c18
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 15:40:18 -07:00
ThatOneCalculator a5f3822456
margin 2023-05-29 15:40:02 -07:00
Freeplay 209fbf3759 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-05-29 18:29:55 -04:00
Freeplay 380f81dfba fix close button pos in compose box 2023-05-29 18:29:42 -04:00
ThatOneCalculator 28cdfc0b6f
fix query 2023-05-29 15:21:29 -07:00
ThatOneCalculator e80dc758a2
dev35 2023-05-29 15:10:33 -07:00
ThatOneCalculator ea6fca97fd
feat: server metrics in admin overview 2023-05-29 15:10:25 -07:00
ThatOneCalculator a87fc03b92
style: 💄 server metrics widgets 2023-05-29 15:10:14 -07:00
ThatOneCalculator 4a05f0c876
refactor: ⚰️ remove old metrics view 2023-05-29 13:49:38 -07:00
ThatOneCalculator 7969fe3dd1
chore: formatting 2023-05-29 13:17:42 -07:00
ThatOneCalculator c3bc85e141
fix: server info widget images 2023-05-29 13:16:41 -07:00
ThatOneCalculator 5f0c58a43a
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 13:04:03 -07:00
ThatOneCalculator d6eee26e49
add tooltip to meili pie chart 2023-05-29 13:03:47 -07:00
Freeplay b8498c09c9 Merge branch 'develop' of https://codeberg.org/calckey/calckey into upstream/develop 2023-05-29 15:59:08 -04:00
Freeplay f3bb46b94a typo 2023-05-29 15:59:04 -04:00
ThatOneCalculator 908e7e20cb
remove repetitive errors in groups 2023-05-29 12:52:43 -07:00
ThatOneCalculator c075455bc2
dev33 2023-05-29 12:28:58 -07:00
ThatOneCalculator 0276b59ef6
typo 2023-05-29 12:23:19 -07:00
ThatOneCalculator 97fe0dcedd
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 12:22:10 -07:00
ThatOneCalculator e15449f51d
chore: 🧑‍💻 pull request template 2023-05-29 12:22:03 -07:00
Freeplay d9211926bc forgot to give aria to close button o o p s 2023-05-29 15:19:53 -04:00
Kainoa Kanter ba30a9a55b Merge pull request 'Add hints for clips, antennas, lists, and timelines' (#10226) from Freeplay/calckey:hints into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10226
2023-05-29 19:16:56 +00:00
ThatOneCalculator b0c2f1d99f
locales 2023-05-29 12:16:35 -07:00
Freeplay d232ba2aff Add lists hint 2023-05-29 15:08:33 -04:00
Freeplay 4bead341a1 closeable prop 2023-05-29 14:55:00 -04:00
Freeplay 7527351620 Add timeline hints 2023-05-29 14:51:02 -04:00
Kainoa Kanter 2fd4041e71 Merge pull request 'Make Meilisearch optional and don't connect if unconfigured' (#10225) from PrivateGER/calckey:fix/meilisearch-optional into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10225
2023-05-29 18:15:49 +00:00
PrivateGER 33ef39cd4a formatter 2023-05-29 20:09:52 +02:00
PrivateGER 0524789185 Make Meilisearch optional and don't connect if unconfigured 2023-05-29 19:46:38 +02:00
ThatOneCalculator 8dd99a2d1d
formatting 2023-05-29 10:19:13 -07:00
ThatOneCalculator 41c80b693d
fixes 2023-05-29 10:18:12 -07:00
Freeplay 020b212b10 always show antennas hint at top 2023-05-29 13:10:35 -04:00
ThatOneCalculator 971347de8c
dev32 2023-05-29 10:01:41 -07:00
ThatOneCalculator 7476ebc7a2
chore: format 2023-05-29 10:01:34 -07:00
ThatOneCalculator b15f001b31
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 10:00:25 -07:00
ThatOneCalculator 316a09409c
revert #10222 2023-05-29 10:00:16 -07:00
Freeplay 6d66bee740 Merge branch 'develop' of https://codeberg.org/calckey/calckey into hints 2023-05-29 12:47:15 -04:00
Kainoa Kanter 8d81e4f5ee Merge pull request 'Delete deleted posts from Meilisearch' (#10223) from PrivateGER/calckey:feat/delete-posts-from-meili into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10223
2023-05-29 16:42:57 +00:00
PrivateGER 73bf8eddc7 Delete deleted posts from Meilisearch 2023-05-29 18:33:57 +02:00
ThatOneCalculator d7d5915e3b
dev31 2023-05-29 09:32:55 -07:00
ThatOneCalculator 655cf3dc27
chore: format 2023-05-29 09:31:02 -07:00
ThatOneCalculator ded157a9e5
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-29 09:22:35 -07:00
ThatOneCalculator 61ebac5817
docs: deps 2023-05-29 09:22:24 -07:00
ThatOneCalculator 8806ce8923
docs: searc providers 2023-05-29 09:21:45 -07:00
Kainoa Kanter 48d7c9f881 Merge pull request 'Only connect to Meili with valid config' (#10222) from PrivateGER/calckey:fix/meilisearch-fallback-code into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10222
2023-05-29 16:21:04 +00:00
PrivateGER e52b1330d3 Only connect to Meili with valid config 2023-05-29 17:36:03 +02:00
Michael 465537 0cf9ad0727
chore: Translated using Weblate (German)
Currently translated at 98.9% (1734 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-29 15:40:40 +02:00
Freeplay 69852b8a05 Move follow button + always show label 2023-05-29 09:40:00 -04:00
Freeplay ee08e1bdda Add clips, antennas hint 2023-05-29 09:11:42 -04:00
Kainoa Kanter fca3c6f85e Merge pull request 'fix: deprecate AID and enforce Cuid2' (#10216) from nmkj/calckey:deprecate-aid into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10216
2023-05-29 04:12:15 +00:00
ThatOneCalculator a717ef6923
properly calculate percent 2023-05-28 21:10:21 -07:00
ThatOneCalculator 9063f93fb2
chore: 💡 meili 2023-05-28 21:04:54 -07:00
ThatOneCalculator d7e906bcf7
fix 2023-05-28 20:59:36 -07:00
Namekuji cf4427f4f0
fix example config format 2023-05-28 23:51:09 -04:00
ThatOneCalculator 7f81268f07
fix 2023-05-28 20:47:22 -07:00
ThatOneCalculator 39d73ca6b2
chore: ⬆️ up pnpm 2023-05-28 20:43:23 -07:00
ThatOneCalculator 9be629919a
add pie chart to meili stats 2023-05-28 20:37:53 -07:00
ThatOneCalculator 2cf1d9f630
chore: formatting 2023-05-28 20:34:18 -07:00
Kainoa Kanter 5c56487802 Merge pull request 'MeiliSearch Integration' (#10204) from PrivateGER/calckey:feat/meilisearch-integration into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10204
2023-05-29 03:31:38 +00:00
ThatOneCalculator 544e3a008e
feat: server info widget
Co-authored-by: Syuilo <syuilotan@yahoo.co.jp>
2023-05-28 20:14:08 -07:00
Namekuji 98f9e3e5c4
use cuid2 with timestamp 2023-05-28 22:16:42 -04:00
Freeplay eeb4a41d6c add channel federation warn 2023-05-28 20:31:00 -04:00
Freeplay 56359f0c2d fix: move isRenote check to note.vue 2023-05-28 20:20:53 -04:00
TalonTheDragon 7c2876894a Merge branch 'more-accessibility' into fix/more-accessibility 2023-05-29 01:49:44 +02:00
TalonTheDragon 91e5389f86 Add labels to dialog OK and Close buttons 2023-05-29 01:48:24 +02:00
Free 3acf8de621 revert 18156487d9
revert fix: move isRenote check to note.vue
2023-05-28 23:17:10 +00:00
Freeplay 18156487d9 fix: move isRenote check to note.vue 2023-05-28 19:14:01 -04:00
Michael 465537 6ea11668c1
chore: Translated using Weblate (German)
Currently translated at 98.9% (1734 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-28 23:32:30 +02:00
Michael 465537 34c9c1bd92
chore: Translated using Weblate (German)
Currently translated at 98.9% (1734 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-28 23:25:09 +02:00
Kainoa Kanter 5475b6ed44 Merge pull request 'New media list layout + hide controls when player too small' (#10213) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10213
2023-05-28 21:24:45 +00:00
Freeplay cae7c6b3ca fix position 2023-05-28 16:21:00 -04:00
Freeplay b15d84451d fix 2023-05-28 15:25:57 -04:00
Freeplay a55271b96b fix 2023-05-28 14:35:05 -04:00
Freeplay cb164d0f0a Hide video controls if player too small 2023-05-28 13:57:25 -04:00
Kainoa Kanter efa48238ad Merge pull request 'fix: MFM crop percentage parsing' (#10212) from ikiko/calckey:feat-mfm-crop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10212
2023-05-28 17:47:59 +00:00
ikiko b22e0f495e Merge branch 'develop' into feat-mfm-crop 2023-05-28 17:33:23 +00:00
Isabell 19c9f5af68 fix: MFM crop percentage parsing 2023-05-29 03:31:06 +10:00
Kainoa Kanter 28d7d0019b dev26 2023-05-28 16:35:09 +00:00
Kainoa Kanter d2a77c9964 Merge pull request 'Feat: add MFM crop content' (#10211) from ikiko/calckey:feat-mfm-crop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10211
2023-05-28 16:34:18 +00:00
Richard d822b74f9e
chore: Translated using Weblate (Dutch)
Currently translated at 34.2% (601 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-28 18:31:55 +02:00
Kainoa Kanter 12f316a8e0 Merge pull request 'Use ph-lock for followers-only visibility' (#10210) from naskya/calckey:ph-lock into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10210
2023-05-28 16:31:29 +00:00
Freeplay d8810600bf tweak 2023-05-28 10:53:45 -04:00
Isabell e208a96e31 add ability to crop content 2023-05-28 15:19:57 +10:00
Freeplay 01de9c0a3b Add bottom fade to show less & hide buttons 2023-05-28 00:17:23 -04:00
Freeplay 8ef68f559c new media list layout 2023-05-27 23:24:38 -04:00
PrivateGER 57577ddedb use correct stats property 2023-05-28 03:05:32 +02:00
PrivateGER 4fdf331f63 Fix Meilisearch widget reactivity 2023-05-28 02:58:20 +02:00
PrivateGER 9beda9d362 add advanced search parameters in search popup 2023-05-28 00:27:16 +00:00
PrivateGER 0d41422423 Implement follower and following searches 2023-05-28 00:27:16 +00:00
PrivateGER b6638a7862 add semicolon after property 2023-05-28 00:27:16 +00:00
PrivateGER a9889721ec Default meilisearch data response + linting + prettyfier 2023-05-28 00:27:16 +00:00
PrivateGER 5dd106e956 i18n strings 2023-05-28 00:27:16 +00:00
PrivateGER 7e1e42bc47 Pin meilisearch library 2023-05-28 00:27:16 +00:00
PrivateGER 8790ac4a11 Remove stray newline 2023-05-28 00:27:16 +00:00
PrivateGER 8549b66a39 Add ssl option to MeiliSearch config 2023-05-28 00:27:16 +00:00
PrivateGER 56ddb0555b add sonic back to compose 2023-05-28 00:27:16 +00:00
PrivateGER 274bfcd898 Lint + formatting 2023-05-28 00:27:16 +00:00
PrivateGER 43813d12b5 Remove indexing logger 2023-05-28 00:27:16 +00:00
PrivateGER f7a60544b2 Fix up dockerfile to use 1.0 meili 2023-05-28 00:27:16 +00:00
PrivateGER ecdec8320f Fix apiKey naming in config 2023-05-28 00:27:16 +00:00
PrivateGER 308d0a62a6 Correct logging statement + add missing returns 2023-05-28 00:27:16 +00:00
PrivateGER d0bd8b7d4c .filter isn't in-place, now reassigning correctly 2023-05-28 00:27:16 +00:00
PrivateGER 1036ac4e8b Actually assign user object to note 2023-05-28 00:27:16 +00:00
PrivateGER d9ccf4310f Load relationships to populate user fields 2023-05-28 00:27:16 +00:00
PrivateGER 62eef2fa67 Add parsing of host, fix usernames 2023-05-28 00:27:16 +00:00
PrivateGER dae4f58e4c Specify primary key 2023-05-28 00:27:16 +00:00
PrivateGER 856b05303b Fix import 2023-05-28 00:27:16 +00:00
PrivateGER 5ae89a69bc Add high performance batch imports 2023-05-28 00:27:16 +00:00
PrivateGER 8d08bf3ee4 Add search operators to frontend 2023-05-28 00:27:16 +00:00
PrivateGER e6371e4665 Adjust search term logging + use filtered search query 2023-05-28 00:27:16 +00:00
PrivateGER 9859060c59 Add createdAt column, fix username filtering, filter advanced search terms correctly 2023-05-28 00:27:16 +00:00
PrivateGER 03cd2de8ec Add basic advanced search + attachment metadata hints 2023-05-28 00:27:16 +00:00
PrivateGER c7c21f5c16 remove extra header 2023-05-28 00:27:16 +00:00
PrivateGER ed16e6cc28 Import .js files 2023-05-28 00:27:16 +00:00
PrivateGER c35a640bb1 Fix property names 2023-05-28 00:27:16 +00:00
PrivateGER a33b548555 Add Meilisearch widget 2023-05-28 00:27:16 +00:00
PrivateGER 4f07c88abb Fix wrong parameter ordering 2023-05-28 00:27:16 +00:00
PrivateGER 7c0509b2f5 Meilisearch Config 2023-05-28 00:27:16 +00:00
PrivateGER 340be8e35a Implement Meilisearch Indexing 2023-05-28 00:27:16 +00:00
Freeplay 9b0b8a4180 fix 2023-05-27 18:38:27 -04:00
Michael 465537 2084273251
chore: Translated using Weblate (German)
Currently translated at 98.9% (1734 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 21:33:42 +02:00
Michael 465537 6a64a6e2bc
chore: Translated using Weblate (German)
Currently translated at 98.1% (1720 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 20:10:43 +02:00
naskya bfe2de8dea
use ph-lock for followers visibility 2023-05-28 03:10:15 +09:00
Freeplay 73d31ec332 Fix hide button being not clickable 2023-05-27 11:00:10 -04:00
Michael 465537 c1f2664e0c
chore: Translated using Weblate (German)
Currently translated at 98.1% (1720 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 12:39:15 +02:00
Michael 465537 3828ef028c
chore: Translated using Weblate (German)
Currently translated at 98.1% (1720 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 03:04:22 +02:00
Michael 465537 98b9caa7bc
chore: Translated using Weblate (German)
Currently translated at 98.1% (1720 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 02:43:07 +02:00
Michael 465537 237e685d4a
chore: Translated using Weblate (German)
Currently translated at 97.6% (1711 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-27 02:07:14 +02:00
Freeplay c9e5b596c1 Don't show unlisted posts in antennas 2023-05-26 20:05:26 -04:00
TalonTheDragon be6c41d0c5 Add labels to chat form 2023-05-26 23:43:35 +02:00
TalonTheDragon 371794fb34 Do the same for the typing list 2023-05-26 23:38:38 +02:00
TalonTheDragon 36fbd0e419 Add aria live region to message list so they get read automatically as they come in 2023-05-26 23:30:27 +02:00
jolupa 425f628de3
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1753 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-26 23:04:04 +02:00
Freeplay 7609ac4d88 maybe fix blurry text in swiper ? 2023-05-26 17:02:17 -04:00
Kainoa Kanter c3456c027a hotfix: try catch hasUnreadAntenna 2023-05-26 16:32:59 +00:00
Richard 0ffa306e1d
chore: Translated using Weblate (Dutch)
Currently translated at 32.3% (567 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-26 15:15:00 +02:00
Freeplay a3f3ccf514 fix font size 2023-05-26 09:13:13 -04:00
Richard 02685cad68
chore: Translated using Weblate (Dutch)
Currently translated at 32.2% (566 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-26 07:25:17 +02:00
naskya 8ca72cf143
chore: Translated using Weblate (Japanese)
Currently translated at 98.8% (1732 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-05-26 07:25:16 +02:00
naskya ff04e6935d
chore: Translated using Weblate (English)
Currently translated at 100.0% (1753 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-05-26 07:25:11 +02:00
ThatOneCalculator 870765684a
locale 2023-05-25 22:24:46 -07:00
ThatOneCalculator 5ecb7815ff
Revert "chore: rebase to v13 MkFolder"
This reverts commit 8783cf0adf.
2023-05-25 22:17:19 -07:00
ThatOneCalculator 5b765eedd5
dev23 2023-05-25 22:06:04 -07:00
ThatOneCalculator afa15e17ef
refactor: make post imports an experiment 2023-05-25 22:05:43 -07:00
ThatOneCalculator 8783cf0adf
chore: rebase to v13 MkFolder
Co-authored-by: Syuilo <syuilotan@yahoo.co.jp>
2023-05-25 21:46:45 -07:00
ThatOneCalculator e1462133f6
chore: format 2023-05-25 20:42:14 -07:00
Kainoa Kanter f9074ad771 Merge pull request 'fix: weird styling of reaction counts' (#10203) from naskya/calckey:fix/no-emoji-reaction-count-styling into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10203
2023-05-26 03:33:39 +00:00
naskya 0f40c2ea25
fix style 2023-05-26 12:28:31 +09:00
Kainoa Kanter 29e512af4d Merge pull request 'Fix reply and quote icons' (#10202) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10202
2023-05-26 03:16:52 +00:00
ThatOneCalculator 406901236b
fix: 💄 margin on expand tweet button 2023-05-25 20:05:19 -07:00
Freeplay d373e7be25 Fix reply and quote icons
past me was really dumb wth
2023-05-25 22:51:55 -04:00
ThatOneCalculator 911704d6a8
chore: formatting 2023-05-25 19:47:10 -07:00
Kainoa Kanter ceae7341d4 Merge pull request 'Only load timeline in active swiper slide' (#10200) from Freeplay/calckey:swiper into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10200
2023-05-26 01:58:24 +00:00
Freeplay a534ec5565 fix z-index 2023-05-25 21:27:51 -04:00
Freeplay 5d224bf1c6 make consistent 2023-05-25 19:42:42 -04:00
Freeplay 9c7af415ae apply properties to all swipers 2023-05-25 19:40:47 -04:00
Freeplay 30beffab78 Only load timeline in active slide 2023-05-25 19:32:56 -04:00
Kainoa Kanter 6383babe04 Merge pull request 'Fix polls & own reactions not showing in replies' (#10199) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10199
2023-05-25 20:50:57 +00:00
Freeplay c683ee304e tweak 2023-05-25 16:24:31 -04:00
Freeplay b5ffb5af8d fix z-index 2023-05-25 15:50:14 -04:00
Freeplay 3f58162cf4 Fix polls & own reactions not showing in replies 2023-05-25 15:49:39 -04:00
Richard a4f089670d
chore: Translated using Weblate (Dutch)
Currently translated at 32.1% (564 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-25 14:30:30 +02:00
Kainoa Kanter 991788dcce Merge pull request 'Display author's replies first, fixes, other stuff' (#10194) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10194
2023-05-25 03:51:34 +00:00
Freeplay 2375d2a8a6 hide follow-button label on mobile 2023-05-24 21:41:28 -04:00
Freeplay a9a1c22605 a 2023-05-24 21:33:49 -04:00
Freeplay b70139f2bb little refactor 2023-05-24 19:33:59 -04:00
Freeplay 54777fc12f Display replies by same author first 2023-05-24 17:40:16 -04:00
Kainoa Kanter cfd9dca7de Merge pull request 'Hide security key section if TOTP is disabled' (#10192) from esm/calckey:hide-fido2 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10192
2023-05-24 19:48:15 +00:00
Essem af3f36f063
Hide security key section if TOTP is disabled
This should prevent some unintended behavior (and 500 errors) for now.
2023-05-24 14:43:22 -05:00
April John 3ac0946019 update inbox import timeout 2023-05-24 21:03:37 +02:00
April John 208c7d380a update post import 2023-05-24 20:22:16 +02:00
Freeplay b531145270 Add 'View on remote server' to right click menu 2023-05-24 14:00:18 -04:00
Freeplay 7b86c7087d Fix 'noteOf' text in post title 2023-05-24 13:22:53 -04:00
Kainoa Kanter 2ce76a7097 Merge pull request 'Fix truncated text in header' (#10191) from Freeplay/calckey:header into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10191
2023-05-24 16:33:10 +00:00
Freeplay 34f33e6bb5 Fix truncated text in header 2023-05-24 12:27:12 -04:00
Kainoa Kanter 4fae29e471 Merge pull request 'Change note right click menu to link context menu' (#10186) from Freeplay/calckey:a into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10186
2023-05-24 06:29:06 +00:00
Freeplay 3d6c480334 overflow hidden to clip 2023-05-23 22:09:24 -04:00
Freeplay 2c87697492 fix 2023-05-23 21:48:54 -04:00
Freeplay 7f76143273 Change note right click menu to link context menu 2023-05-23 21:33:18 -04:00
ThatOneCalculator e8ab73562b
make tosUrl open action in case it's external 2023-05-23 18:23:06 -07:00
ThatOneCalculator 3d27929a41
dev19 2023-05-23 18:17:50 -07:00
ThatOneCalculator 48385d7a8f
feat: 👔 add link to TOS in info icon
Address #10117
2023-05-23 18:16:54 -07:00
ThatOneCalculator fff166be42
docs: develop by default 2023-05-23 18:03:45 -07:00
ThatOneCalculator 3d5b0c5d83
chore: formatting 2023-05-23 18:02:52 -07:00
ThatOneCalculator 41bfbf7df1
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-23 18:01:50 -07:00
Kainoa Kanter 147e5e42c2 Merge pull request 'Fix z-index's, better clipping in notes' (#10185) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10185
2023-05-24 01:00:50 +00:00
ThatOneCalculator e615ff5ebd
Merge branches 'develop' and 'develop' of codeberg.org:calckey/calckey into develop 2023-05-23 18:00:10 -07:00
ThatOneCalculator 983c860bd0
webhooks icon 2023-05-23 17:59:58 -07:00
Freeplay e135f15832 hide scrollbar in header 2023-05-23 20:54:28 -04:00
Freeplay 6e1d5f366d fix 2023-05-23 20:49:56 -04:00
Freeplay cab146fb96 Fix z-index, better clipping in notes 2023-05-23 20:30:55 -04:00
Richard 5e5fdbdf13
chore: Translated using Weblate (Dutch)
Currently translated at 31.6% (554 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-23 23:18:25 +02:00
AkDk7 51874bbdbd
chore: Translated using Weblate (German)
Currently translated at 95.6% (1676 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-23 23:18:24 +02:00
Ettore Atalan 184e887359
chore: Translated using Weblate (German)
Currently translated at 95.6% (1676 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-23 23:18:23 +02:00
Freeplay e04562cdc8 Fix tabs not transitioning on first click 2023-05-23 13:56:29 -04:00
Richard 8213ba42ee
chore: Translated using Weblate (Dutch)
Currently translated at 30.8% (541 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-23 11:39:26 +02:00
jolupa a3ce3ad5d3
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1753 of 1753 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-23 11:39:25 +02:00
Hosted Weblate 9787a201fe
chore: Merge branch 'origin/develop' into Weblate. 2023-05-23 07:34:17 +02:00
jolupa 18968979e1
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1750 of 1750 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-23 07:34:16 +02:00
Kainoa Kanter dae9bd43d4 Merge pull request 'Add some labels to & truncate notifications' (#10181) from Freeplay/calckey:notifications into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10181
2023-05-23 05:33:54 +00:00
Kainoa Kanter 88b2c1d60c Merge pull request 'security: escape SQL-like queries' (#10182) from naskya/calckey:security/escape-sql into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10182
2023-05-23 05:29:55 +00:00
naskya 6dba4a145c
Format 2023-05-23 14:11:03 +09:00
naskya c7943ca177
.js 2023-05-23 14:07:35 +09:00
MeiMei 910b06c35a
fix: Escape SQL LIKE
* SQL LIKE escape
2023-05-23 13:56:16 +09:00
ThatOneCalculator d8aaa8f199
fix edit icon 2023-05-22 18:42:47 -07:00
Freeplay 8fe2aca14e Match notification padding to note's padding 2023-05-22 21:26:52 -04:00
Freeplay 05ce3e7039 fix rogue :global() (would prevent text in toggles from wrapping) 2023-05-22 21:16:55 -04:00
Freeplay 3a92e77c6c Merge branch 'develop' of https://codeberg.org/calckey/calckey into notifications 2023-05-22 21:12:11 -04:00
Freeplay d85067fad5 Add labels to some & truncate notifications 2023-05-22 21:11:35 -04:00
Natty 1773ae14e3
Renote button optimization 2023-05-22 17:54:44 -07:00
ThatOneCalculator 97e69144f6
docs: notes 2023-05-22 17:40:59 -07:00
ThatOneCalculator 28750dddc8
why was that ever there?? 2023-05-22 17:36:19 -07:00
ThatOneCalculator b5eb374e62
fix fade 2023-05-22 17:26:27 -07:00
ThatOneCalculator 79fe1dcd61
chore: formatting 2023-05-22 17:00:50 -07:00
ThatOneCalculator 2a87323242
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-22 16:59:48 -07:00
ThatOneCalculator 549802e5fa
Close #10177 2023-05-22 16:59:38 -07:00
Kainoa Kanter 2c36590ec7 Merge pull request 'Center header tabs, only hide labels if more than 3' (#10178) from Freeplay/calckey:header into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10178
2023-05-22 23:48:01 +00:00
Freeplay afaf22ee23 padding fix 2023-05-22 19:40:38 -04:00
Hosted Weblate 447bcac862
chore: Merge branch 'origin/develop' into Weblate. 2023-05-22 23:48:29 +02:00
Richard f27611b00b
chore: Translated using Weblate (Dutch)
Currently translated at 25.0% (438 of 1748 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-22 23:48:28 +02:00
jolupa ccfdf95642
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1748 of 1748 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-22 23:48:28 +02:00
Kainoa Kanter 840f7f1930 Merge pull request 'Feat: MFM fade' (#10179) from ikiko/calckey:Feat-MFM-fade-dev into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10179
2023-05-22 21:48:03 +00:00
Isabell 45a8b9831e clean up rebase 2023-05-23 07:08:58 +10:00
Isabell 5ee098e51f remove autogenerated translations 2023-05-23 07:01:40 +10:00
Isabell a4f075271f add fade to MFM options 2023-05-23 07:01:10 +10:00
Isabell 006358540c add fade to cheat sheet 2023-05-23 06:59:33 +10:00
Isabell 03f41c12a4 add fade description 2023-05-23 06:56:22 +10:00
Isabell e2552bdfbb Add MFM fade functionality 2023-05-23 06:54:42 +10:00
ThatOneCalculator 454fec34b9 docs: cleanup apache 2023-05-23 06:54:39 +10:00
warrows 452b0309a5 Doc : Add apache2 basic configuration to documentation
Signed-off-by: warrows <codeberg@warrows.fr>
2023-05-23 06:54:11 +10:00
Freeplay 07ce15d30e this took longer than i would have liked. 2023-05-22 16:38:11 -04:00
Freeplay e36ce8e849 fix avatar pos 2023-05-22 15:45:39 -04:00
Freeplay ddb52ca4e3 add ::before & ::after to themeChanging class 2023-05-22 15:40:36 -04:00
Freeplay 9db7962e37 more fix, actually 2023-05-22 15:35:03 -04:00
Freeplay 4b56d34f93 better way of doing that
Couldn't due before becuase of how css was done
2023-05-22 15:23:26 -04:00
Freeplay 9f360606a0 fixes!! 2023-05-22 15:20:05 -04:00
Kainoa Kanter 161557d559 Nyanize non[consonant]
🟨🟪

https://calckey.social/notes/9f2l6x5u8e
2023-05-22 15:57:56 +00:00
Freeplay f4e4dd6b5e Merge branch 'develop' of https://codeberg.org/calckey/calckey into header 2023-05-22 11:44:08 -04:00
ThatOneCalculator 8526f0af06
chore: up pnpm 2023-05-22 08:24:04 -07:00
ThatOneCalculator 299ee75d83
dev17 2023-05-22 08:23:18 -07:00
ThatOneCalculator d88d74c8e0
chore: formatting 2023-05-22 08:23:00 -07:00
ThatOneCalculator afd244351b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-22 08:22:31 -07:00
ThatOneCalculator 9e94668911
chore: upgrade swiper 2023-05-22 08:22:21 -07:00
Hosted Weblate 8e8e0881ae
chore: Merge branch 'origin/develop' into Weblate. 2023-05-22 16:52:05 +02:00
GayCookie ✌ d6c7d038f6
chore: Translated using Weblate (Dutch)
Currently translated at 24.9% (436 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-22 16:52:05 +02:00
Richard 1ad166bfa3
chore: Translated using Weblate (Dutch)
Currently translated at 24.9% (436 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-22 16:52:05 +02:00
jolupa 561706bb2f
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1747 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-22 16:52:04 +02:00
Kainoa Kanter 16d0304d97 Merge pull request 'Fix: Accessibility fixes, mostly for screen reader' (#10173) from TalonTheDragon/calckey:fix/accessibility into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10173
2023-05-22 14:51:51 +00:00
Kainoa Kanter fd03d443ef Hide icons in note tabs, always show reply tab (#10176) 2023-05-22 14:48:53 +00:00
TalonTheDragon 16bec67f27 Set postIsExpanded to ref() for reactivity 2023-05-22 13:08:32 +02:00
Freeplay ef17ff4e05 fix 2023-05-22 06:26:17 -04:00
Freeplay fea1f993e2 Hide icons in note tabs, always show reply tab 2023-05-22 06:21:41 -04:00
TalonTheDragon 891cc62e0d Emit event when cw is expanded 2023-05-22 12:18:17 +02:00
TalonTheDragon c6d6950006 Add cw to english locale 2023-05-22 10:58:20 +02:00
TalonTheDragon 4ae3eea8a3 Add translation to content warning in MKNote.vue 2023-05-22 10:56:42 +02:00
TalonTheDragon 1c275c9114 Add translations to deck.vue aria labels 2023-05-22 10:54:42 +02:00
ThatOneCalculator 892414f303
chore: up mfm-js in backend 2023-05-21 21:39:20 -07:00
ThatOneCalculator 6ef6b62fb2
don't show underline if no tabs 2023-05-21 20:19:41 -07:00
ThatOneCalculator 3d9212c0d6
dev15 2023-05-21 20:07:46 -07:00
ThatOneCalculator 16c48307b6
Close #10175 2023-05-21 20:07:25 -07:00
ThatOneCalculator 70f6a4808c
chore: formatting 2023-05-21 20:05:52 -07:00
ThatOneCalculator 2c9d211af1
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-21 20:05:36 -07:00
ThatOneCalculator 8b2ffa773e
Close #10174 2023-05-21 20:04:59 -07:00
Kainoa Kanter 47b122536b Merge pull request 'Tweak note tabs + add follow button to header + other minor stuff' (#10172) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10172
2023-05-22 01:08:21 +00:00
Freeplay 88f39b2b02 Give article semantic to subnote 2023-05-21 18:23:17 -04:00
TalonTheDragon 8806dc92f7 Add translation to aria labels 2023-05-21 23:02:22 +02:00
Freeplay a5ba2c3e8f padding fix 2023-05-21 16:48:25 -04:00
Freeplay 0f82c4250b Add follow button to header 2023-05-21 16:30:35 -04:00
TalonTheDragon c240e37be9 Accessible label in MKNote should be a computed value. Also Fixes renoted note labels 2023-05-21 21:57:29 +02:00
Freeplay 9c1c001f25 Set minimum size for buttons 2023-05-21 14:11:45 -04:00
TalonTheDragon fd9d23f3cb Label deck and universal bar buttons for screen readers on mobile. Still needs translation and aria-selected 2023-05-21 19:17:13 +02:00
Freeplay 55b6b6075d Accessible follow button 2023-05-21 13:10:27 -04:00
Richard 1a076a5956
chore: Translated using Weblate (Dutch)
Currently translated at 23.2% (407 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-21 18:31:12 +02:00
jolupa 0bea4f91e7
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1747 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-21 18:31:10 +02:00
TalonTheDragon 0b7e9068bc Properly set aria-hidden on note content only if CW is present and show content has not been clicked 2023-05-21 16:12:13 +02:00
TalonTheDragon 84ea25771d Add aria-label to note container. This makes screen-readers read out the content while navigating with the keyboard. 2023-05-21 16:10:48 +02:00
Freeplay da0a0503ba tab fix 2023-05-20 21:46:33 -04:00
Freeplay b871746b93 hide empty tabs 2023-05-20 21:20:17 -04:00
Kainoa Kanter 7dfb4ff3d4 Merge pull request 'fix: TypeError in word mutes' (#10168) from naskya/calckey:fix/alt-text-mutes-undefined into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10168
2023-05-20 23:41:47 +00:00
Freeplay 506420130e 'Jump to Reply' to 'Jump to previous' 2023-05-20 16:42:06 -04:00
naskya 813fb25d72
files may be undefined 2023-05-21 05:34:39 +09:00
Kainoa Kanter 3146749a30 Merge pull request 'Change detailed note tabs design' (#10164) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10164
2023-05-20 16:36:15 +00:00
Freeplay e57fbbb335 add back icons 2023-05-20 12:34:04 -04:00
Freeplay bfde7bbb88 Change detailed note tabs design 2023-05-20 12:08:20 -04:00
ThatOneCalculator 38d323962a
fix import 2023-05-19 23:59:49 -07:00
ThatOneCalculator 76b55e8c21
dev14 2023-05-19 23:38:54 -07:00
ThatOneCalculator 2d316fca4a
standardize post buttons 2023-05-19 23:38:36 -07:00
ThatOneCalculator b049b5bfaa
chore: formatting 2023-05-19 23:27:56 -07:00
ThatOneCalculator 83db6ec70a
forgot } 2023-05-19 23:26:01 -07:00
ThatOneCalculator c20e501d69
simpler fix, thank you @wikiyu 2023-05-19 23:22:10 -07:00
ThatOneCalculator b4983ef56f
Revert "fix api doc?"
This reverts commit 9e366dc563.
2023-05-19 23:21:00 -07:00
ThatOneCalculator 7a004d8850
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-19 23:15:11 -07:00
ThatOneCalculator 9e366dc563
fix api doc? 2023-05-19 23:14:59 -07:00
Hosted Weblate 744afa788e
chore: Merge branch 'origin/develop' into Weblate. 2023-05-20 07:52:49 +02:00
jolupa 2fea627d86
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1746 of 1746 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-20 07:52:48 +02:00
ThatOneCalculator 973b1837a6
fix: show follow requests even if not locked 2023-05-19 22:52:14 -07:00
Kainoa Kanter 7a75ba477d Merge pull request 'Add reactions tab to detailed notes view' (#10161) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10161
2023-05-20 04:57:44 +00:00
Freeplay e79b1c693e bottom padding 2023-05-20 00:53:15 -04:00
Freeplay bf9077e1dc fix 2023-05-20 00:41:42 -04:00
Freeplay c3b8ce2e57 Reactions tab 2023-05-20 00:14:14 -04:00
Kainoa Kanter 36581a5b94 Merge pull request 'enhance: emoji width and height' (#10155) from nmkj/calckey:emoji-size into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10155
2023-05-20 03:26:20 +00:00
Freeplay 7e93391ac3 fix depth 2023-05-19 23:02:15 -04:00
Namekuji 3ddcffd169
enhance: emoji width and height 2023-05-19 22:26:13 -04:00
Kainoa Kanter 6d3a5d63cc chore: formatting 2023-05-19 15:41:59 -07:00
Hosted Weblate 4bf3501668
chore: Merge branch 'origin/develop' into Weblate. 2023-05-19 23:20:39 +02:00
Richard 1dee117ccc
chore: Translated using Weblate (Dutch)
Currently translated at 19.7% (344 of 1743 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/nl/
2023-05-19 23:20:39 +02:00
Kainoa Kanter 722489821c Note tabs + Jump to Reply changes + other stuff (#10157) 2023-05-19 21:20:15 +00:00
Freeplay 2b6053d0b3 fix null error 2023-05-19 17:07:22 -04:00
Freeplay f7856c6525 note metadata 2023-05-19 16:29:16 -04:00
Freeplay f573f93d16 Make UserCardMini clickable 2023-05-19 14:45:29 -04:00
Freeplay 5db7460a82 fix loading icon for boosts tab 2023-05-19 14:40:47 -04:00
Freeplay d60002f426 mini mfm button 2023-05-19 14:34:16 -04:00
Freeplay 79af6df55e add withChart prop to UserCardMini 2023-05-19 14:28:36 -04:00
Freeplay 98a831961e little bit more accessible tabs 2023-05-19 13:20:48 -04:00
Freeplay d013b351e2 Tabbed content in detailed notes page 2023-05-19 13:02:41 -04:00
Freeplay e921e2dce3 simplify conversation code 2023-05-18 15:48:36 -04:00
Kainoa Kanter 9f397dd29f Merge pull request 'revert history api for now' (#10150) from Freeplay/calckey:history into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10150
2023-05-18 16:03:21 +00:00
Freeplay 2ed994fb6d revert history api 2023-05-18 11:48:45 -04:00
Kainoa Kanter b5b8a7c7ef Merge pull request 'fix: check alt text on word mutes' (#10149) from naskya/calckey:fix/alt-text-mutes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10149
2023-05-18 15:08:38 +00:00
naskya 80d4f06962
format 2023-05-18 20:50:24 +09:00
naskya 079d757009
Check alt text on mutes 2023-05-18 20:38:33 +09:00
Kenny Hui 60b5aec626
chore: Translated using Weblate (Chinese (Traditional))
Currently translated at 98.6% (1719 of 1743 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/zh_Hant/
2023-05-18 11:15:39 +02:00
Kainoa Kanter 3fc94f9348 Merge pull request 'More focusable elements + allow closing modal's w/ browser back & esc' (#10142) from Freeplay/calckey:keyboard into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10142
2023-05-18 05:43:55 +00:00
Freeplay fb06aecb7b Jump to Reply + other note page improvmeents 2023-05-17 21:54:37 -04:00
Freeplay 72a40b3139 Display account info of post rather than 'Post' in header 2023-05-17 18:56:03 -04:00
Freeplay c3cd14ece0 (actually) fix clicking audio opening post 2023-05-17 16:44:06 -04:00
Freeplay eec5f5dc23 SubNoteContent fixes 2023-05-17 15:24:51 -04:00
Freeplay da522482ac Allow pressing esc to close lightbox 2023-05-17 13:46:00 -04:00
Freeplay 4bebe2187f add touch events for tooltip on range input 2023-05-17 12:53:00 -04:00
Freeplay 49acbd10ae Close modals on browser back 2023-05-17 12:34:45 -04:00
Kainoa Kanter d505b596a4 Update 'patrons.json' 2023-05-17 15:59:18 +00:00
Kainoa Kanter 158a136c68 patrons 2023-05-16 21:19:44 -07:00
Freeplay 1e0d38dc55 There seemed to be no use for that ? 2023-05-17 00:10:24 -04:00
Hosted Weblate 1c6f9cffbb
chore: Merge branch 'origin/develop' into Weblate. 2023-05-17 06:01:55 +02:00
jolupa c7b2804088
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1743 of 1743 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-17 06:01:55 +02:00
Kainoa Kanter 4a92688c75 locales 2023-05-16 20:59:54 -07:00
Kainoa Kanter 2de535b0b8 fix: dont show cheat sheet when not needed 2023-05-16 20:31:13 -07:00
Freeplay 4d45cd38d9 focus to elements 2023-05-16 22:40:02 -04:00
Kainoa Kanter dcd6e48101 rm unessicary option 2023-05-16 19:31:18 -07:00
Kainoa Kanter d79968e095 Merge pull request 'Add loading spinners to detailed note page & popups(if slow)' (#10139) from Freeplay/calckey:loaders into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10139
2023-05-17 01:39:50 +00:00
Freeplay 8a6112ec24 Display waiting dialog if component takes more than a second to load 2023-05-16 19:28:07 -04:00
Freeplay 095ac9d929 Add loading spinners + remove unused 2023-05-16 18:18:07 -04:00
April John 6a5b9009f0 feat: allow horizontal scaling 2023-05-17 00:08:33 +02:00
Kainoa Kanter 3897adaed7 Merge pull request 'chart 0.1.2' (#10135) from lilithmooncohen/calckey:chart-0.1.2 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10135
2023-05-16 21:48:52 +00:00
Lily Cohen eae1f53684 chart 0.1.2 2023-05-16 14:26:11 -06:00
Kainoa Kanter 3bf08a9610 Merge pull request 'Accessible Form Inputs!' (#10130) from Freeplay/calckey:settings into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10130
2023-05-16 17:58:01 +00:00
Freeplay 86f1d104c4 fix border-radius of folder 2023-05-15 22:39:05 -04:00
Freeplay 3fde459b6e fix noBg timeline BG's when wallpaper set 2023-05-15 22:05:43 -04:00
Freeplay 805134bb74 move labels in migration page into caption 2023-05-15 21:45:17 -04:00
Freeplay b38607a694 fix show replies toggle not saving 2023-05-15 18:13:59 -04:00
Freeplay 1cc7c3f8dd Accessible form components 2023-05-15 16:19:33 -04:00
jolupa 40496c29b5
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-15 18:52:34 +02:00
April John 1161db414e Fix 2023-05-15 13:03:48 +00:00
April John 38a5f4e543 Fix: add done statements 2023-05-15 12:25:54 +00:00
Freeplay 38a29ad2c5 organize settings 2023-05-14 22:10:52 -04:00
Kainoa Kanter 21c5b3665c Merge pull request 'Replace classic.vue w/ a class in universal.vue' (#10122) from Freeplay/calckey:classic into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10122
2023-05-14 23:55:54 +00:00
Kainoa Kanter 8b611a175e tooltip for edited 2023-05-14 16:52:31 -07:00
Freeplay cda1e7bbf4 classic view spacing 2023-05-14 19:19:00 -04:00
Freeplay ba1f39a9ac Remove classic header (isn't used anywhere anymore) 2023-05-14 19:14:54 -04:00
Freeplay 8b91a6faa1 tweak navbar 2023-05-14 19:10:59 -04:00
Freeplay d2cee55c35 Change "Classic" to "Centered" 2023-05-14 19:10:48 -04:00
Kainoa Kanter a3435bf1c9 instance -> server 2023-05-14 15:29:51 -07:00
Kainoa Kanter 231b82b35d fix quote 2023-05-14 15:25:15 -07:00
Kainoa Kanter 779379ab8a Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-14 15:20:44 -07:00
Kainoa Kanter c6aa87cc9c chore: formatting 2023-05-14 15:20:26 -07:00
Kainoa Kanter 9d6172757c Revert "fix: 🐛 go to last timeline selected"
This reverts commit 4478468256.
2023-05-14 15:19:58 -07:00
Hosted Weblate 88d90a617b
chore: Merge branch 'origin/develop' into Weblate. 2023-05-15 00:18:41 +02:00
jolupa 4b81b4e7a4
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1745 of 1745 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-15 00:18:41 +02:00
Kainoa Kanter 18afe6ab47 Revert "feat: swap home timeline with social's functionality (#9597)"
This reverts commit df68d5ffff.
2023-05-14 15:18:18 -07:00
Freeplay 0996e2e2b6 fix mobile navbar 2023-05-14 17:21:28 -04:00
Hosted Weblate 2e6f9f8461
chore: Merge branch 'origin/develop' into Weblate. 2023-05-14 23:13:19 +02:00
Michael 465537 b4bd4e1511
chore: Translated using Weblate (German)
Currently translated at 99.1% (1729 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-14 23:13:19 +02:00
Abdul Karim Kikar 0833f38c63
chore: Translated using Weblate (Danish)
Currently translated at 11.4% (200 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/da/
2023-05-14 23:13:16 +02:00
Kainoa Kanter a71f33701d warn against graze for mastodon 2023-05-14 14:12:59 -07:00
Freeplay 2a313e73ff Replace classic.vue w/ a class in universal.vue 2023-05-14 17:06:58 -04:00
Kainoa Kanter 001f8038bf remove duplicate 2023-05-14 13:45:36 -07:00
Kainoa Kanter b669986060 Merge pull request 'Fix media not displaying when no body text' (#10121) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10121
2023-05-14 20:02:04 +00:00
Freeplay 2c22a20da4 button alignment 2023-05-14 15:33:50 -04:00
Freeplay 448d830c51 fix image not displaying if no text 2023-05-14 15:31:07 -04:00
April John 657857e8d6 Feat: move post imports to new jobs 2023-05-14 20:20:31 +02:00
April John e4a821a494 Feat: move post imports to new jobs 2023-05-14 18:46:48 +02:00
Kainoa Kanter d6c8e0dbf4 Merge pull request 'feat: automatically set antenna/list column names' (#10116) from naskya/calckey:feat/set-column-names-by-default into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10116
2023-05-14 14:04:03 +00:00
Kainoa Kanter 02d39d43fb Merge pull request 'chore: use better icons' (#10115) from naskya/calckey:chore/better-icons into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10115
2023-05-14 14:03:12 +00:00
Кибер огурчик 950100e95e
chore: Translated using Weblate (Russian)
Currently translated at 98.1% (1711 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-05-14 15:26:12 +02:00
waon c2d7b5c183
chore: Translated using Weblate (Japanese)
Currently translated at 99.9% (1743 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-05-14 15:26:09 +02:00
naskya b8168fed90
chore: Translated using Weblate (Japanese)
Currently translated at 99.9% (1743 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-05-14 15:26:08 +02:00
naskya 389df53f56
chore: Translated using Weblate (English)
Currently translated at 100.0% (1744 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-05-14 15:26:03 +02:00
naskya 5d5edbb655
Set antenna/list column names automatically 2023-05-14 14:53:33 +09:00
naskya 6109122d02
Change "Add caption" icon in Drive 2023-05-14 14:40:36 +09:00
naskya cdc48bd018
Use ph-flying-saucer for antenna column in Deck 2023-05-14 14:36:29 +09:00
Kainoa Kanter e63c89c723 Merge pull request 'Fix hover unblur text after keyboard nav changes' (#10113) from amybones/calckey:fix_word_mute_blur into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10113
2023-05-14 00:44:38 +00:00
amy bones b01c9ce0b0
Fix hover unblur text after keyboard nav changes 2023-05-13 16:30:46 -07:00
Hosted Weblate 1bd8b34238
chore: Merge branch 'origin/develop' into Weblate. 2023-05-13 22:05:16 +02:00
Thomas 49cf003e4f
chore: Translated using Weblate (French)
Currently translated at 96.2% (1682 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-13 22:05:16 +02:00
FineFindus 1d4a9a56b2
chore: Translated using Weblate (German)
Currently translated at 99.0% (1730 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-13 22:05:13 +02:00
jolupa f0ddb5832f
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1747 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-13 22:05:11 +02:00
Kainoa Kanter a7bd62e964 Use proper beta label 2023-05-13 13:04:53 -07:00
Richard Azia b904d2616a
chore: Translated using Weblate (French)
Currently translated at 96.2% (1682 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-13 18:18:55 +02:00
Marud 15eb13cef6
chore: Translated using Weblate (French)
Currently translated at 96.2% (1682 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-13 18:18:53 +02:00
Thomas 8751f0668a
chore: Translated using Weblate (French)
Currently translated at 96.2% (1682 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-13 18:18:53 +02:00
jolupa 2dcb5e6f92
chore: Translated using Weblate (Catalan)
Currently translated at 99.9% (1746 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-13 18:18:49 +02:00
Kainoa Kanter 3458573517 Merge pull request 'Implementation of post editing' (#10054) from supakaity/hajkey:feature/edits into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10054
2023-05-13 15:18:20 +00:00
Kaity A 950c9b5caf
update translation 2023-05-14 00:57:37 +10:00
Kaity A 1e48c89528
Update meta to include feaures 2023-05-14 00:51:31 +10:00
Kaity A adda2816c8
Update meta to return experimentals 2023-05-14 00:18:30 +10:00
Kaity A ee5c907a72
Add page header to experiments 2023-05-14 00:04:24 +10:00
Kaity A 7f0cd17b38
fix meta update 2023-05-13 23:57:55 +10:00
Kaity A 59307392d4
add experimental feature gate 2023-05-13 23:41:36 +10:00
Kaity A f0a0a657b9
Merge branch 'develop' of https://codeberg.org/calckey/calckey into feature/edits 2023-05-13 22:13:02 +10:00
Kainoa Kanter 2dbd26e4ed Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-12 20:11:57 -07:00
Kainoa Kanter 8877598799 chore: formatting 2023-05-12 20:11:41 -07:00
Hosted Weblate 97ed28662e
chore: Merge branch 'origin/develop' into Weblate. 2023-05-13 05:06:15 +02:00
Kainoa Kanter 26aa19c9cc dev10 2023-05-12 20:06:01 -07:00
Hosted Weblate 3c2fefe204
chore: Merge branch 'origin/develop' into Weblate. 2023-05-13 05:05:40 +02:00
Kainoa Kanter a51169a948 todo 2023-05-12 20:05:25 -07:00
Kainoa Kanter dcd9f0a9c2 Revert "add (back) pwa install button to help menu"
This reverts commit 298960f4dd.
2023-05-12 20:05:18 -07:00
Kainoa Kanter 88ba0a9734 Revert "better icon"
This reverts commit 3808777c93.
2023-05-12 20:03:56 -07:00
Hosted Weblate d55adb75d9
chore: Merge branch 'origin/develop' into Weblate. 2023-05-13 05:03:09 +02:00
Michael 465537 d56a7be9bf
chore: Translated using Weblate (German)
Currently translated at 99.4% (1729 of 1738 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-13 05:03:08 +02:00
jolupa 46f1439651
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1738 of 1738 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-13 05:03:06 +02:00
Kainoa Kanter 8470fb4a85 Merge pull request 'MFM Play Animation Button' (#10100) from Freeplay/calckey:mfm-warn into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10100
2023-05-13 03:02:38 +00:00
Freeplay 9aee07ef4b update locale 2023-05-12 21:59:13 -04:00
Freeplay b20b2f5be9 tweak css 2023-05-12 21:54:59 -04:00
Freeplay d2f1f6f4c0 Only show mfm warning the first time + fix sparkle 2023-05-12 21:48:58 -04:00
Freeplay f0fe5fcf6c Add reduced motion & autoplay MFM toggles to welcome popup 2023-05-12 21:19:56 -04:00
Freeplay 17acb0ee56 styling + remove log 2023-05-12 20:30:06 -04:00
Freeplay a5f9dfd84a Settings option 2023-05-12 20:05:33 -04:00
Freeplay 5dedd6b706 Merge branch 'develop' of https://codeberg.org/calckey/calckey into mfm-warn 2023-05-12 17:28:07 -04:00
Kainoa Kanter 245564924c Merge pull request 'Flake updates, dev server, and small doc improvements' (#10104) from pyrox/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10104
2023-05-12 14:01:44 +00:00
Pyrox 62e0ded409
flake: Cleanup devenv on clean, add helper scripts, and run dev server on `devenv up`
Also adds a new config example for use with the devenv scripts, as well
as a developer's guide for setting up the Nix environment. This could
also have steps for speific distros, such as what packages to install,
and specific notes.
2023-05-12 09:09:58 -04:00
Freeplay 3c5b1280c7 add initial button 2023-05-12 00:46:26 -04:00
Kainoa Kanter 3808777c93 better icon 2023-05-11 19:11:53 -07:00
Kainoa Kanter 79fc831dfa Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-11 19:06:04 -07:00
Kainoa Kanter 997db33e07 chore: up pnpm 2023-05-11 19:05:12 -07:00
Hosted Weblate 1614637ebc
chore: Merge branch 'origin/develop' into Weblate. 2023-05-12 04:03:07 +02:00
Kainoa Kanter 2bc1142016 fix typo 2023-05-11 19:02:51 -07:00
Hosted Weblate c51909e412
chore: Merge branch 'origin/develop' into Weblate. 2023-05-12 04:00:41 +02:00
drakonicguy d5237e5df1
chore: Translated using Weblate (Polish)
Currently translated at 99.3% (1725 of 1737 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-05-12 04:00:41 +02:00
Michael 465537 b1128c6b70
chore: Translated using Weblate (German)
Currently translated at 99.3% (1725 of 1737 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-12 04:00:38 +02:00
Mæve Rey e54367cd53
chore: Translated using Weblate (German)
Currently translated at 99.3% (1725 of 1737 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-12 04:00:38 +02:00
Kainoa Kanter 298960f4dd add (back) pwa install button to help menu 2023-05-11 18:59:42 -07:00
Kainoa Kanter d743f53db6 changelog 2023-05-11 18:48:36 -07:00
Kainoa Kanter b1a62b94b3 Merge pull request 'Replace classic view sidebars w/ default UI sidebars + fix wallpapers' (#10097) from Freeplay/calckey:classic into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10097
2023-05-12 01:44:02 +00:00
Freeplay f27368afda remove backdrop-filter in icon-only sidebar 2023-05-11 21:01:47 -04:00
Freeplay dc808e1149 fix 2023-05-11 20:52:30 -04:00
Freeplay aa4136da5b fix 2023-05-11 20:43:00 -04:00
Freeplay e9fdd707af Fix wallpaper support for all views 2023-05-11 20:38:54 -04:00
Freeplay 547848d663 Replace classic navbar w/ new 2023-05-11 19:46:42 -04:00
Freeplay 91345ceed1 Replace classic view widgets w/ the one from default view 2023-05-11 18:34:44 -04:00
Kainoa Kanter 619250a51d Merge pull request 'feat: local only boost' (#10089) from naskya/calckey:feat/local-only-boost-option into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10089
2023-05-11 20:31:04 +00:00
Kainoa Kanter 418f7d47bd Merge pull request 'docs: Add configuration for Caddy' (#10091) from pyrox/calckey:add-caddy-configuration into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10091
2023-05-11 20:22:36 +00:00
Pyrox 0e07a2773d
docs: Add configuration for Caddy 2023-05-11 09:27:23 -04:00
naskya 59010e2004
Fix silly typo, format 2023-05-11 20:28:32 +09:00
naskya a719b386e7
Add local only boost option 2023-05-11 20:10:19 +09:00
Hosted Weblate 7985422c61
chore: Merge branch 'origin/develop' into Weblate. 2023-05-11 08:31:03 +02:00
ThatOneCalculator 37fea1136b
calckey.org 2023-05-10 23:30:48 -07:00
Hosted Weblate 0dbc3bdd65
chore: Merge branch 'origin/develop' into Weblate. 2023-05-11 05:59:45 +02:00
Michael 465537 70de728188
chore: Translated using Weblate (German)
Currently translated at 97.5% (1693 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-11 05:59:44 +02:00
jolupa 016ee7c621
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1735 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-11 05:59:42 +02:00
syuilo 5ffef363f3
念のためnoimageaiもつける 2023-05-10 20:51:22 -07:00
syuilo 6bc07036ac
feat: 投稿したコンテンツのAIによる学習を軽減するオプションを追加
Co-authored-by: GitHub <syuilo>
2023-05-10 20:50:21 -07:00
ThatOneCalculator 9ed2173b42
docs: cleanup apache 2023-05-10 17:10:01 -07:00
Kainoa Kanter 6b9b4a6866
Merge pull request 'docs: Add Apache2 documentation' (#10078) from warrows/calckey:main into main
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10078
2023-05-10 17:08:51 -07:00
ThatOneCalculator 19d745b843
docs: add opencollective 2023-05-10 16:59:47 -07:00
ThatOneCalculator f74cf06062
docs: fix k8s link 2023-05-10 16:56:46 -07:00
ThatOneCalculator 890b3b5bc3
Merge remote-tracking branch 'helm/add-helm-chart' into develop 2023-05-10 16:54:26 -07:00
Lily Cohen a7e361da6c adding example config 2023-05-10 16:17:05 -07:00
Lily Cohen 1f6b1a7c32 adding calckey helm chart 2023-05-10 16:07:45 -07:00
Kainoa Kanter 8154082b72 Merge pull request 'keyboard-accessibility' (#10084) from Freeplay/calckey:keyboard-accessibility into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10084
2023-05-10 22:20:57 +00:00
Freeplay f5867f2541 Fix more unfocusable elements 2023-05-10 17:44:08 -04:00
ThatOneCalculator 3adcc107ff
call it "moderation notice" 2023-05-10 14:32:27 -07:00
ThatOneCalculator 860a26b10f
email padding 2023-05-10 14:29:43 -07:00
ThatOneCalculator 81c56d980e
improve emails 2023-05-10 14:27:46 -07:00
ThatOneCalculator 3ea930a8ce
don't need random style there 2023-05-10 14:21:32 -07:00
ThatOneCalculator c542fb5c0f
fix typo 2023-05-10 14:19:48 -07:00
ThatOneCalculator 4163e4439b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-10 14:15:26 -07:00
ThatOneCalculator 850b3a2c6d
fix button 2023-05-10 14:15:19 -07:00
Hosted Weblate b5285695bf
chore: Merge branch 'origin/develop' into Weblate. 2023-05-10 23:09:30 +02:00
Hosted Weblate 5c2581c1fe
chore: Merge branch 'origin/develop' into Weblate. 2023-05-10 23:09:28 +02:00
drakonicguy 0f3c258a27
chore: Translated using Weblate (Polish)
Currently translated at 99.4% (1725 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-05-10 23:09:27 +02:00
Jeff ae7379a680
chore: Translated using Weblate (Indonesian)
Currently translated at 84.0% (1457 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/id/
2023-05-10 23:09:25 +02:00
Jesse Wierzbinski 3c36021e45
chore: Translated using Weblate (French)
Currently translated at 95.4% (1655 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-10 23:09:23 +02:00
Richard Azia 749dd9691a
chore: Translated using Weblate (French)
Currently translated at 95.4% (1655 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-05-10 23:09:22 +02:00
D David 0c529d9972
chore: Translated using Weblate (Spanish)
Currently translated at 92.5% (1605 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/es/
2023-05-10 23:09:20 +02:00
Michael 465537 e9e2f96a7a
chore: Translated using Weblate (German)
Currently translated at 97.6% (1693 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-10 23:09:18 +02:00
Tomkoid 9feb63979a
chore: Translated using Weblate (Czech)
Currently translated at 50.6% (879 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/cs/
2023-05-10 23:09:15 +02:00
Rubén cfbc76386c
chore: Translated using Weblate (Catalan)
Currently translated at 99.9% (1733 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-10 23:09:14 +02:00
len 57fa93a828
chore: Translated using Weblate (English)
Currently translated at 100.0% (1734 of 1734 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-05-10 23:09:10 +02:00
ThatOneCalculator 97aedcb564
dev8 2023-05-10 14:09:06 -07:00
ThatOneCalculator d6dbb4b8ff
chore: formatting 2023-05-10 14:08:51 -07:00
ThatOneCalculator 21ab26a7b3
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-10 14:06:55 -07:00
ThatOneCalculator a11abdde60
feat: ability for moderators to send mod mail 2023-05-10 14:06:45 -07:00
April John 9118ca50d3 reintroduce async into post import 2023-05-10 22:26:31 +02:00
Freeplay 5e23d960ab some semantics 2023-05-10 16:20:52 -04:00
Freeplay de1c25f9db Use tooltips as aria-labels 2023-05-10 15:15:27 -04:00
Kainoa Kanter 10e6e3ae14 Merge pull request 'Switch to adm-zip for emoji pack handling' (#10077) from esm/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10077
2023-05-10 02:44:17 +00:00
Essem 947e8932f2
Switch to adm-zip for emoji pack handling
Unzipper seems to corrupt files in certain cases on Node 18/19.
See https://github.com/ZJONSSON/node-unzipper/issues/271
2023-05-09 19:19:15 -05:00
ThatOneCalculator 186b8a9b16
Address #10076 2023-05-09 15:15:13 -07:00
ThatOneCalculator df7e6843b2
properly link aps 2023-05-08 18:19:11 -07:00
Kainoa Kanter abd7aa0ff6 Merge pull request 'display new direct replies at end instead of top' (#10071) from Freeplay/calckey:direct-reply-thing into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10071
2023-05-09 00:48:58 +00:00
Freeplay 5ffcbd0039 display new direct replies at end instead of top 2023-05-08 19:41:56 -04:00
ThatOneCalculator c6d997bd11
fix opening info button 2023-05-08 16:26:36 -07:00
ThatOneCalculator 1cd775797d
chore: patrons 2023-05-08 16:25:13 -07:00
ThatOneCalculator 56d760505a
chore: patrons 2023-05-08 16:15:49 -07:00
ThatOneCalculator 2fa508feaf
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-08 16:15:11 -07:00
ThatOneCalculator 4b229eb31d
missed one 2023-05-08 16:15:04 -07:00
Kainoa Kanter 97284756f7 Merge pull request 'fix quote attached styling' (#10069) from Freeplay/calckey:compose-box-fix into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10069
2023-05-08 21:48:47 +00:00
Freeplay 7e07060f88 fix quote attached styling, will prob improve later 2023-05-08 17:26:59 -04:00
ThatOneCalculator 2a44213306
fix: 🐛 add zip/unzip to docker container
Closes #9843
2023-05-08 14:06:15 -07:00
ThatOneCalculator 257bf2bf01
mention 2023-05-08 13:52:11 -07:00
April John b10f9beef2 Revert "fix: run post import async"
This reverts commit 3bedd1b347.
2023-05-08 22:48:12 +02:00
ThatOneCalculator a929dc11de
example.com -> calckey.org 2023-05-08 13:39:39 -07:00
ThatOneCalculator a7c523ee46
chore: formatting 2023-05-08 13:36:53 -07:00
ThatOneCalculator cb73e277e9
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-08 13:36:28 -07:00
ThatOneCalculator fd8ca682e5
fix: allow disabled radio buttons when created from radios.vue 2023-05-08 13:36:22 -07:00
April John 3bedd1b347 fix: run post import async 2023-05-08 22:30:40 +02:00
April John ecf263bd91 import replies too 2023-05-08 22:09:42 +02:00
April John ede47e45c8 try fetching replies 2023-05-08 22:09:42 +02:00
ThatOneCalculator 189e972e0d
chore: formatting 2023-05-08 13:01:06 -07:00
ThatOneCalculator 49abfba71a
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-08 13:00:44 -07:00
ThatOneCalculator 48ade7ce5c
update import-export options 2023-05-08 13:00:34 -07:00
Kainoa Kanter f2db650c1a Merge pull request 'fix click.stop' (#10068) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10068
2023-05-08 19:51:44 +00:00
Kainoa Kanter 787245aefb Merge pull request 'Make config syntax more consistant' (#10066) from s1idewhist1e/calckey:issue/10065 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10066
2023-05-08 19:46:48 +00:00
Freeplay 9b27a6e7b9 fix click.stop 2023-05-08 15:39:20 -04:00
ThatOneCalculator 205382dcf6
add back #10067 except for media change 2023-05-08 12:38:56 -07:00
ThatOneCalculator 08ceb5e082
Revert "notes (#10067)"
This reverts commit 84f904516c, reversing
changes made to 0c742929a5.
2023-05-08 12:37:28 -07:00
Kainoa Kanter 84f904516c notes (#10067) 2023-05-08 19:02:51 +00:00
Freeplay a1a356b696 fix clicking audio & search mfm opening post 2023-05-08 13:59:39 -04:00
Freeplay 03e65864cb fix padding 2023-05-08 13:45:00 -04:00
s1idewhist1e 8088b0ec90
Make config syntax more consistant 2023-05-08 10:40:43 -07:00
April John 0c742929a5 fix: dont stream hidden posts 2023-05-08 19:33:04 +02:00
April John 0b59937e9e fix: Detach push notifications..
..from "isRead" check. Apps will handle that theself.
2023-05-08 11:36:32 +02:00
April John 8c6475961e fix hidden post behavior 2023-05-08 11:23:30 +02:00
ThatOneCalculator 4d9b4b65d3
missing action + locales 2023-05-07 19:05:05 -07:00
ThatOneCalculator 5fbe82700d
calckey.org 2023-05-07 18:57:50 -07:00
ThatOneCalculator 78552e44b2
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-07 18:53:29 -07:00
ThatOneCalculator 6c5ca005ee
remove reference to apps.vue 2023-05-07 18:53:15 -07:00
Hosted Weblate d4a48fb66d
chore: Merge branch 'origin/develop' into Weblate. 2023-05-08 03:50:16 +02:00
Michael 465537 b6510533b8
chore: Translated using Weblate (German)
Currently translated at 97.3% (1703 of 1749 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-08 03:50:16 +02:00
ThatOneCalculator 9e17f1b525
refactor: remove internal apps page 2023-05-07 18:49:56 -07:00
ThatOneCalculator da61357f2d
fix: only fetch admin/meta if admin 2023-05-07 18:41:31 -07:00
ThatOneCalculator 5d88fc4555
dev5 2023-05-07 18:17:02 -07:00
ThatOneCalculator 6126b43aa9
fix incomplete revert 2023-05-07 18:05:11 -07:00
ThatOneCalculator ba7418aa6d
Revert "fix: hidden post federation"
This reverts commit 8a51c73fe7.
2023-05-07 18:01:36 -07:00
ThatOneCalculator 3dcd6c0e4a
chore: format 2023-05-07 16:12:18 -07:00
ThatOneCalculator 5679e634d0
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-07 16:11:37 -07:00
ThatOneCalculator 5f69f3fa34
fix instance-info if moderator but not admin 2023-05-07 16:11:20 -07:00
Kainoa Kanter f079bc9dc2 Merge pull request 'fix font size + remove unecessary class' (#10058) from Freeplay/calckey:note-fixes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10058
2023-05-07 22:31:39 +00:00
Freeplay 8ab7843e44 fix font size + remove unecessary class 2023-05-07 18:19:05 -04:00
Kainoa Kanter 04f954ca78 Update 'patrons.json' 2023-05-07 22:18:16 +00:00
Michael 465537 93cbd7cfff
chore: Translated using Weblate (German)
Currently translated at 96.6% (1690 of 1749 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-07 23:15:04 +02:00
ThatOneCalculator cb4f23ec38
chore: pnpm 8.4.0 2023-05-07 12:55:07 -07:00
ThatOneCalculator af33012932
use MkChannelList 2023-05-07 12:48:28 -07:00
ThatOneCalculator 2b9c880719
disable auto load for channels pagination 2023-05-07 12:41:08 -07:00
ThatOneCalculator 20c424d18b
docs: 📝 pm2 logrotate 2023-05-07 12:35:46 -07:00
ThatOneCalculator 4ef9137559
dev4 2023-05-07 12:29:36 -07:00
ThatOneCalculator f2ffe07425
chore: formatting 2023-05-07 12:29:02 -07:00
ThatOneCalculator 91704cb07c
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-07 12:28:36 -07:00
ThatOneCalculator a7b7e1c5d4
remove gfonts from redoc 2023-05-07 12:28:24 -07:00
Hosted Weblate 160e63bc96
chore: Merge branch 'origin/develop' into Weblate. 2023-05-07 20:39:00 +02:00
Michael 465537 0dcdffb6f1
chore: Translated using Weblate (German)
Currently translated at 96.5% (1688 of 1748 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-07 20:38:59 +02:00
jolupa b773eb4433
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1750 of 1750 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-07 20:38:57 +02:00
ThatOneCalculator 988b530745
Revert "Merge pull request 'Add support for CW boosting' (#10047) from supakaity/hajkey:hk/cw-boost into develop"
This reverts commit 5e86bafb24, reversing
changes made to d1977fc320.
2023-05-07 11:38:39 -07:00
April John d0d49696e2 fix: make userId optional cause its not used and
should not be used lmao
2023-05-07 16:27:49 +02:00
Pyrox 7e46506d4e feat: Add Nix development flake with flake-parts 2023-05-07 12:10:36 +00:00
Kaity A 9e8110b7bc
Fix up PR issues 2023-05-07 22:07:40 +10:00
Kaity A 1b5d2084d8
Add in edit buttons 2023-05-07 20:48:55 +10:00
Kaity A 8e4d38cb45
Revert accidental commit 2023-05-07 20:30:20 +10:00
Kaity A 5395b96428
Note editing 2023-05-07 20:27:25 +10:00
Kainoa Kanter 176c0727e3 Merge pull request 'feat: channel search' (#10048) from naskya/calckey:feat/search-channels into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10048
2023-05-07 03:06:01 +00:00
Kainoa Kanter 5e86bafb24 Merge pull request 'Add support for CW boosting' (#10047) from supakaity/hajkey:hk/cw-boost into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10047
2023-05-07 03:05:15 +00:00
Michael 465537 d1977fc320
chore: Translated using Weblate (German)
Currently translated at 96.6% (1688 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-07 04:41:36 +02:00
Kaity A bee6a590ec
Higlight CWs by default off 2023-05-07 11:54:31 +10:00
Kaity A 282f07dd72
pnpm format 2023-05-07 11:53:01 +10:00
naskya 324ec9e095
format 2023-05-07 09:46:07 +09:00
naskya 020c02476a
Not found icon 2023-05-07 09:43:11 +09:00
naskya d6b751f800
Update Chinese locale 2023-05-07 09:26:52 +09:00
MeiMei 9a3eb859bc
(partially) cherry-picked from misskey/10e526b
fix: Escape SQL LIKE

* SQL LIKE escape

* CHANGELOG
2023-05-07 09:16:46 +09:00
naskya 27d1d96c9d
Modify backend for Calckey 2023-05-07 09:13:37 +09:00
Ville Lepistö 001e6ecd8e
chore: Translated using Weblate (Finnish)
Currently translated at 51.6% (902 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-05-07 01:40:34 +02:00
JPlexer 3788b39b39
chore: Translated using Weblate (German)
Currently translated at 96.5% (1687 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-07 01:40:33 +02:00
Michael 465537 a748642b79
chore: Translated using Weblate (German)
Currently translated at 96.5% (1687 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-07 01:40:31 +02:00
jolupa 41f05f2704
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1747 of 1747 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-07 01:40:28 +02:00
Kaity A cd3cfe4203
Add support for CW boosting 2023-05-07 09:26:24 +10:00
naskya baef1b8ca9
Use phosphor icons 2023-05-07 08:08:07 +09:00
naskya 8a2135ba28
format 2023-05-07 08:05:18 +09:00
たーびん 54f6876c9c
feat: チャンネルの検索用ページとAPIの追加
* add channel search

* move  channel search to channel list page

---------

Co-authored-by: tamaina <tamaina@hotmail.co.jp>
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Co-authored-by: atsuchan <83960488+atsu1125@users.noreply.github.com>
Co-authored-by: Masaya Suzuki <15100604+massongit@users.noreply.github.com>
Co-authored-by: Kagami Sascha Rosylight <saschanaz@outlook.com>
Co-authored-by: taiy <53635909+taiyme@users.noreply.github.com>
Co-authored-by: xianon <xianon@hotmail.co.jp>
Co-authored-by: kabo2468 <28654659+kabo2468@users.noreply.github.com>
Co-authored-by: YS <47836716+yszkst@users.noreply.github.com>
Co-authored-by: Khsmty <me@khsmty.com>
Co-authored-by: Soni L <EnderMoneyMod@gmail.com>
Co-authored-by: mei23 <m@m544.net>
Co-authored-by: daima3629 <52790780+daima3629@users.noreply.github.com>
Co-authored-by: Windymelt <1113940+windymelt@users.noreply.github.com>
2023-05-07 08:00:30 +09:00
Kainoa Kanter e488131e68 Update 'patrons.json' 2023-05-06 22:04:28 +00:00
trollo 8a51c73fe7 fix: hidden post federation 2023-05-06 18:27:42 +02:00
Kainoa Kanter 3b45cd8f40 Update 'patrons.json' 2023-05-06 16:21:30 +00:00
Kainoa Kanter 6c65da161f Update 'patrons.json' 2023-05-06 06:26:30 +00:00
Kainoa Kanter 2a3f460a35 Update 'patrons.json' 2023-05-06 06:04:22 +00:00
Kainoa Kanter 02682693aa Update 'patrons.json' 2023-05-06 06:01:48 +00:00
Kainoa Kanter 9aa9441512 Update 'patrons.json'
Joeeeeee biden
2023-05-06 04:06:40 +00:00
Kainoa Kanter 0a9da8fa45 Merge pull request 'fix tiny text on mobile' (#10037) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10037
2023-05-06 03:28:21 +00:00
Kainoa Kanter f06c52e059 Update 'patrons.json' 2023-05-06 03:22:13 +00:00
ThatOneCalculator a758c13e20
chore: patrons 2023-05-05 18:42:36 -07:00
ThatOneCalculator 52ab21e737
chore: formatting 2023-05-05 18:37:13 -07:00
ThatOneCalculator 0694547f46
chore: patrons 2023-05-05 18:34:39 -07:00
ThatOneCalculator 3d2eb1aa0d
chore: patrons 2023-05-05 18:33:34 -07:00
ThatOneCalculator dd5a8eefad
dev3 2023-05-05 18:32:44 -07:00
ThatOneCalculator 0d7ddf532d
patrons as span, not div 2023-05-05 18:32:00 -07:00
ThatOneCalculator e284e3e620
update tag 2023-05-05 18:27:47 -07:00
ThatOneCalculator 472613f9ea
chore: patrons 2023-05-05 18:27:19 -07:00
Froggo c9d57e5d49 Remove clutter from repost dialog by removing repost icon for non-default visibility (#10015)
The repost dialog is pretty cluttered, and the extra repeat icon next to the visibility icon seems to be a source of the clutter. This PR removes those icons next to the visibility icon, making it so that only the icon correlating to the visibility will show.

Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10015
Co-authored-by: Froggo <froggo@noreply.codeberg.org>
Co-committed-by: Froggo <froggo@noreply.codeberg.org>
2023-05-06 00:43:34 +00:00
ThatOneCalculator 695cb87052
chore: format 2023-05-05 13:29:39 -07:00
ThatOneCalculator fe499ccf9d
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-05 13:28:39 -07:00
ThatOneCalculator 8f85f2c58f
re-enable post imports 2023-05-05 13:27:52 -07:00
Hosted Weblate 3e871b64fe
chore: Merge branch 'origin/develop' into Weblate. 2023-05-05 22:03:26 +02:00
jolupa e253fc11d0
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1744 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-05 22:03:25 +02:00
Kainoa Kanter 4496507af2 Merge pull request 'fix: word mutes' (#10034) from naskya/calckey:fix/word-mutes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10034
2023-05-05 20:03:03 +00:00
ThatOneCalculator de3f231470
docs: links 2023-05-05 12:51:26 -07:00
naskya 4b119caffe Merge branch 'develop' into fix/word-mutes 2023-05-05 19:05:32 +00:00
ThatOneCalculator 88f9f8609d
fix: only show signupsDisabled if signups disabled 2023-05-05 12:04:13 -07:00
naskya 8ec6ab1119 Merge branch 'develop' into fix/word-mutes 2023-05-05 18:00:43 +00:00
Ettore Atalan 8d36aabcc5
chore: Translated using Weblate (German)
Currently translated at 96.5% (1683 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-05 19:34:06 +02:00
JPlexer f913c52a80
chore: Translated using Weblate (German)
Currently translated at 96.5% (1683 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-05 19:34:05 +02:00
Michael 465537 5947732c1f
chore: Translated using Weblate (German)
Currently translated at 96.5% (1683 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-05 19:34:04 +02:00
naskya e17d5f57f0 Merge branch 'develop' into fix/word-mutes 2023-05-05 15:36:58 +00:00
Michael 465537 21d6f1ded0
chore: Translated using Weblate (German)
Currently translated at 96.3% (1681 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-05 17:14:21 +02:00
jolupa f5514d7cd8
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1744 of 1744 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-05 17:14:18 +02:00
naskya 069c789a78 Merge branch 'develop' into fix/word-mutes 2023-05-05 14:01:14 +00:00
April John dd777935cb fix: dont stream hidden posts over websocket 2023-05-05 15:53:05 +02:00
April John 6b6e5dfcdf hide hidden posts in websocket streams 2023-05-05 15:50:50 +02:00
April John 3800eb8980 Feat: new internal post visibility "hidden" 2023-05-05 15:16:10 +02:00
April John 5fd6690755 Fix: properly handle timeline db errors 2023-05-05 14:30:08 +02:00
naskya db273318b8
Remove the code snippets which didn't work 2023-05-05 16:58:42 +09:00
naskya 52f521941c
I believe I finally solved the boost hard mute issue (took 3 hours) 2023-05-05 15:32:47 +09:00
naskya e617463ea7 Merge branch 'develop' into fix/word-mutes 2023-05-05 06:31:16 +00:00
ThatOneCalculator 7c1e1d336f
spaces 2023-05-04 23:19:32 -07:00
naskya 86dc71b201
oops 2023-05-05 12:49:34 +09:00
naskya 95f04a1c3c
Fix regex hard mutes 2023-05-05 12:36:17 +09:00
naskya ba1e96a020
Fix non-ASCII word soft mutes 2023-05-05 12:23:44 +09:00
naskya d1ab75beed
Fix dirty duplicated code 2023-05-05 10:38:56 +09:00
naskya 1baf760c4c
Merge branch 'fix/word-mutes' of https://codeberg.org/naskya/calckey into fix/word-mutes 2023-05-05 09:47:17 +09:00
naskya 1601676d55
Show the correct username 2023-05-05 09:46:47 +09:00
naskya c713563a2e
Boosts should be prioritized 2023-05-05 08:17:45 +09:00
naskya 8bfe67c031
Fix missing import 2023-05-05 08:14:16 +09:00
naskya edf47d390b
Fix channel bug 2023-05-05 07:47:03 +09:00
naskya 3b3da42763
clean up 2023-05-05 06:16:23 +09:00
naskya 48b5865507
Merge branch 'fix/word-mutes' of https://codeberg.org/naskya/calckey into fix/word-mutes 2023-05-05 05:48:55 +09:00
naskya 7113735212
Use original (Misskey's) implementation for hard mutes as muted reason isn't needed 2023-05-05 05:48:31 +09:00
naskya 19524b1010 Merge branch 'develop' into fix/word-mutes 2023-05-04 20:33:11 +00:00
naskya ffea68ad8d
I was confused 2023-05-05 05:26:59 +09:00
naskya e46cac02e3
Fix missing return, typo 2023-05-05 05:22:32 +09:00
naskya fc3296d64f
Fix missing arguments 2023-05-05 05:17:16 +09:00
ThatOneCalculator 597ce41081
margin top 2023-05-04 10:24:31 -07:00
ThatOneCalculator d4e048999d
move button outside form 2023-05-04 10:20:27 -07:00
ThatOneCalculator 096140b400
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-04 10:10:11 -07:00
ThatOneCalculator d6983f7864
fix: external link 2023-05-04 10:10:02 -07:00
Hosted Weblate 2f5d583c79
chore: Merge branch 'origin/develop' into Weblate. 2023-05-04 19:04:18 +02:00
ThatOneCalculator f9e206d0d2
dev1 2023-05-04 10:04:04 -07:00
Hosted Weblate 3bf426a932
chore: Merge branch 'origin/develop' into Weblate. 2023-05-04 19:03:47 +02:00
Ville Lepistö 821b9a8ab3
chore: Translated using Weblate (Finnish)
Currently translated at 48.9% (853 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-05-04 19:03:47 +02:00
Michael 465537 cc874c21b9
chore: Translated using Weblate (German)
Currently translated at 94.6% (1649 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-04 19:03:45 +02:00
jolupa ce1a6b61be
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-04 19:03:43 +02:00
ThatOneCalculator a2588aaed8
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-04 10:03:02 -07:00
ThatOneCalculator 61214d0464
feat: show message if signups are disabled 2023-05-04 10:02:53 -07:00
Freeplay b5b577e001 fix tiny text on mobile 2023-05-04 08:30:28 -04:00
Freeplay 015eed31f8 center header 2023-05-04 08:16:51 -04:00
naskya ebfd07628e
format 2023-05-04 14:41:18 +09:00
naskya 137cef81b6 Merge branch 'develop' into fix/word-mutes 2023-05-04 05:36:29 +00:00
naskya d9553e73af
Differentiate soft mutes and hard mutes 2023-05-04 14:20:06 +09:00
naskya cdd876ba03
Refactor soft word mutes 2023-05-04 14:13:13 +09:00
naskya 075e5a1c7a
Refactor hard word mutes 2023-05-04 13:17:37 +09:00
Kainoa Kanter 4ceb2b816c Merge pull request 'fix: Documentation of migration from Misskey v13' (#10014) from nmkj/calckey:update-migration-doc into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10014
2023-05-03 21:58:56 +00:00
Kainoa Kanter 68c9ba5403 Merge pull request 'fix: Don't increment boost counts of non-person actors' (#10023) from nmkj/calckey:fix-boostcount into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10023
2023-05-03 21:57:48 +00:00
ThatOneCalculator 1a120df9ce
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-03 13:51:53 -07:00
ThatOneCalculator eb7ccfed71
panos 2023-05-03 13:51:49 -07:00
Namekuji 49e9fb9001
don't update if renoted by bot 2023-05-03 16:16:34 -04:00
Ville Lepistö a758af1513
chore: Translated using Weblate (Finnish)
Currently translated at 43.5% (759 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-05-03 20:24:41 +02:00
jolupa db4388d0c9
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-03 20:05:57 +02:00
spla 85ef06d9f4
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-03 20:05:56 +02:00
Ville Lepistö fecee558c3
chore: Translated using Weblate (Finnish)
Currently translated at 43.4% (757 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-05-03 19:57:20 +02:00
Ettore Atalan 4768ea640f
chore: Translated using Weblate (German)
Currently translated at 94.0% (1639 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-03 19:57:19 +02:00
JPlexer 91af331928
chore: Translated using Weblate (German)
Currently translated at 94.0% (1639 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-05-03 19:57:18 +02:00
spla bb7f25c59b
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-03 19:57:15 +02:00
jolupa 792ccafb63
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-03 19:57:13 +02:00
Jeff 16f3a67160
chore: Translated using Weblate (English)
Currently translated at 100.0% (1742 of 1742 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-05-03 19:57:08 +02:00
Namekuji a5581ad272
fix typo 2023-05-02 20:45:20 -04:00
Namekuji 89325cacaf
add migration patches and fix commands 2023-05-02 20:36:02 -04:00
ThatOneCalculator 45528e3630
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-02 15:15:05 -07:00
ThatOneCalculator 4999b4f1a6
add catppuccin latte 2023-05-02 15:14:44 -07:00
ThatOneCalculator 8a69b48351
Revert "chore: theme refactor"
This reverts commit 6953fceade.
2023-05-02 15:14:12 -07:00
Kainoa Kanter ad41adb24e Merge pull request 'notes' (#10008) from Freeplay/calckey:notes into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10008
2023-05-02 22:05:48 +00:00
ThatOneCalculator 087f3aaaa2
fix: correctly display links to self instance URL
Closes #9270

Co-authored-by: GitHub <futchitwo>
2023-05-02 14:45:09 -07:00
Kainoa Kanter 28dd7e0393 Merge pull request 'Re-add deepClone and move updated into note capture' (#10006) from supakaity/hajkey:hk/fix-update-event into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/10006
2023-05-02 19:10:00 +00:00
Freeplay 9727a03f05 Add tooltips to visibility icons (#9598) 2023-05-02 15:07:46 -04:00
Freeplay f34fd4991f fix translation box 2023-05-02 14:52:05 -04:00
Freeplay 5b03b21ba3 Fix line color (#9997) 2023-05-02 14:50:22 -04:00
Hosted Weblate 01317454b4
chore: Merge branch 'origin/develop' into Weblate. 2023-05-02 18:30:46 +02:00
Ville Lepistö 7ca3f6ccfc
chore: Translated using Weblate (Finnish)
Currently translated at 21.1% (367 of 1739 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-05-02 18:30:46 +02:00
Kenny Hui 7497bb12ef
chore: Translated using Weblate (Chinese (Traditional))
Currently translated at 96.8% (1685 of 1739 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/zh_Hant/
2023-05-02 18:30:45 +02:00
jolupa fb5cd7bd16
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1739 of 1739 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-02 18:30:42 +02:00
Kainoa Kanter 1cc9945e65 Merge pull request 'Implement inbound note edit federation' (#9975) from supakaity/hajkey:hk/edit-federation into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9975
2023-05-02 16:30:16 +00:00
Kaity A ad181a10c3
Readd deepClone and move updated into note capture 2023-05-02 22:42:33 +10:00
Kaity A 69bf975b58
allow upstream note updates to propogate 2023-05-02 19:32:36 +10:00
Kaity A 3e2c8f490e
allow upstream note updates to propogate 2023-05-02 19:30:05 +10:00
Kaity A a7c9400a42
Merge remote-tracking branch 'origin/develop' into hk/edit-federation 2023-05-02 18:24:54 +10:00
Kaity A 389c531b2c
update file sensitivity on note edit 2023-05-02 18:22:42 +10:00
Kaitlyn Allan 61dde4c0b0
updates to include alt text editing 2023-05-02 17:47:16 +10:00
ThatOneCalculator c836bcfd0a
no imports 2023-05-01 23:09:10 -07:00
ThatOneCalculator f8a1331d69
Merge branch 'develop' into beta 2023-05-01 23:08:54 -07:00
ThatOneCalculator 169d61f0ad
disable post imports for now 2023-05-01 23:08:35 -07:00
ThatOneCalculator bf262b972f
max import posts twice a month 2023-05-01 21:54:15 -07:00
ThatOneCalculator b28c3f5da7
max import posts twice a month 2023-05-01 21:50:14 -07:00
ThatOneCalculator 7c2808333b
Merge branch 'develop' into beta
ci/woodpecker/tag/commit Pipeline failed Details
2023-05-01 21:10:49 -07:00
ThatOneCalculator 3518c1dd8a
14 dev 2023-05-01 21:10:08 -07:00
ThatOneCalculator bbc4d83414
import correctly 2023-05-01 21:09:48 -07:00
ThatOneCalculator e44052cd25
fix show more import 2023-05-01 21:08:44 -07:00
ThatOneCalculator bd4b969489
Merge branch 'develop' into beta 2023-05-01 21:06:11 -07:00
ThatOneCalculator b02bfdd7de
fix lang 2023-05-01 21:00:27 -07:00
ThatOneCalculator 1d83c0ab55
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-01 20:54:06 -07:00
ThatOneCalculator eac64dad5b
how in the world does this keep getting reversed 2023-05-01 20:54:02 -07:00
Hosted Weblate 9c4a89c156
chore: Merge branch 'origin/develop' into Weblate. 2023-05-02 05:33:53 +02:00
jolupa 30fd6c3138
chore: Translated using Weblate (Catalan)
Currently translated at 100.0% (1739 of 1739 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-02 05:33:44 +02:00
ThatOneCalculator ad969a28cc
chore: formatting 2023-05-01 20:32:18 -07:00
Kainoa Kanter 9708170559 Merge pull request 'fix: db migration of InstanceSilence' (#9996) from nmkj/calckey:fix-dbmigration into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9996
2023-05-02 03:29:41 +00:00
Namekuji aaa8083740
fix db migration 2023-05-01 18:11:56 -04:00
Kainoa Kanter 4e726421d1 Merge pull request 'bring back show more component' (#9993) from Freeplay/calckey:notifications into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9993
2023-05-01 21:21:03 +00:00
Freeplay f34c224a10 bring back Show More component 2023-05-01 17:02:43 -04:00
ThatOneCalculator 200cd84bb2
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-05-01 13:56:52 -07:00
ThatOneCalculator a17b5fc680
chore: patrons 2023-05-01 13:56:48 -07:00
Freeplay f759476a4a Merge branch 'develop' of https://codeberg.org/calckey/calckey into notifications 2023-05-01 16:50:21 -04:00
Freeplay 505a0dfd9c revert show more notification component 2023-05-01 16:50:08 -04:00
jolupa 659fd9a16d
chore: Translated using Weblate (Catalan)
Currently translated at 69.2% (1204 of 1739 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-05-01 22:29:59 +02:00
ThatOneCalculator 53669aa293
update patrons 2023-05-01 12:57:24 -07:00
Kainoa Kanter 93309db051 Merge pull request 'Fix: 500 server error when attempting to fetch followers-only reply as guest' (#9983) from s1idewhist1e/calckey:issue/9075 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9983
2023-05-01 19:38:16 +00:00
Kainoa Kanter 9722b7bafe Merge pull request 'Fix: email validation' (#9984) from s1idewhist1e/calckey:issue/9268 into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9984
2023-05-01 19:37:56 +00:00
Kainoa Kanter 8ddb221046 Merge pull request 'fix: Commit CI not finishing because cargo is not installed' (#9989) from thehedgeh0g/calckey:fix-commit-ci into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9989
2023-05-01 19:34:24 +00:00
Pyrox 1be1b2db76
fix: Switch to node alpine image 2023-05-01 15:21:52 -04:00
Pyrox ee5f067069
fix: Commit CI not running because cargo is not installed 2023-05-01 14:52:38 -04:00
Cleo 455c7273ee Fixing post visibility patch
Co-authored-by: Laura Hausmann <laura@hausmann.dev>
2023-05-01 15:42:27 +00:00
s1idewhist1e 8d1251b977
fix email validation 2023-04-30 22:57:10 -07:00
s1idewhist1e 6f32efd898
Wrap note fetching in a try/catch 2023-04-30 22:11:15 -07:00
Kainoa Kanter 34a6e1caa4 Merge pull request 'feat: Suppress notifications by silenced accounts and instances' (#9965) from nmkj/calckey:instance-silence into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9965
2023-05-01 02:18:37 +00:00
Namekuji 93dc237835
Merge branch 'develop' into instance-silence 2023-04-30 22:02:04 -04:00
Namekuji fe96578b14
enforce follow-request from silenced users 2023-04-30 21:43:56 -04:00
Namekuji 784f632b99
suppress notification from silenced users and instances 2023-04-30 21:35:10 -04:00
ThatOneCalculator 68d8e40017
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-30 17:57:16 -07:00
ThatOneCalculator 6953fceade
chore: theme refactor 2023-04-30 17:57:04 -07:00
s1idewhist1e 16d8682721 FIx: incorrect/poorly worded warning when deleting drive files (#9982)
Closes #9047

Co-authored-by: s1idewhist1e <trombonedude05@gmail.com>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9982
Co-authored-by: s1idewhist1e <s1idewhist1e@noreply.codeberg.org>
Co-committed-by: s1idewhist1e <s1idewhist1e@noreply.codeberg.org>
2023-05-01 00:15:26 +00:00
ThatOneCalculator e18f3eb212
patrons 2023-04-30 17:14:31 -07:00
ThatOneCalculator 69b62fa2c0
favicon 2023-04-30 17:14:04 -07:00
Namekuji 9535bbcf89
do not notify if the target is not following 2023-04-30 19:46:02 -04:00
Namekuji 5338185605
format 2023-04-30 18:01:06 -04:00
Namekuji 5b62f110d1
add db migration 2023-04-30 18:00:19 -04:00
Namekuji 74b1bead52
Merge branch 'develop' into instance-silence 2023-04-30 17:52:05 -04:00
Namekuji 441bf2842f
add silenced colour 2023-04-30 17:45:45 -04:00
Namekuji 631aa3de41
fix params 2023-04-30 17:32:14 -04:00
Namekuji d8e139a21f
fix meta fetch 2023-04-30 17:06:43 -04:00
ThatOneCalculator 121ddedce8
chore: format 2023-04-30 13:27:27 -07:00
ThatOneCalculator 4b1fa90c8f
fix(ap): Use unique identifier for each follow request
Closes #9677

Co-authored-by: GitHub <hutchisr>
2023-04-30 13:26:51 -07:00
ThatOneCalculator 3533f6b481
chore: up browser-image-resizer 2023-04-30 13:13:43 -07:00
Hosted Weblate 89feba5415
chore: Merge branch 'origin/develop' into Weblate. 2023-04-30 21:37:45 +02:00
waon 4cc9673873
chore: Translated using Weblate (Japanese)
Currently translated at 99.3% (1724 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-04-30 21:37:45 +02:00
Kainoa Kanter c4a4d4c881 Merge pull request 'chore: update mfm-cheat-sheet' (#9967) from naskya/calckey:chore/mfm-cheat-sheet into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9967
2023-04-30 19:37:35 +00:00
Kainoa Kanter 51a61ef39e Merge pull request 'keyboard-accessability' (#9974) from Freeplay/calckey:keyboard-accessability into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9974
2023-04-30 19:36:17 +00:00
fruye c3d747e42d Use numeric ids everywhere in mastodon API (#9970)
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9970
Co-authored-by: fruye <fruye@unix.dog>
Co-committed-by: fruye <fruye@unix.dog>
2023-04-30 19:34:52 +00:00
Kaity A 6eed038028
fix poll voting causing edit revisions. 2023-05-01 03:17:38 +10:00
Freeplay 842b38aff6 Merge branch 'develop' of https://codeberg.org/calckey/calckey into keyboard-accessability 2023-04-30 12:31:41 -04:00
Kaity A 627a71701f
Implement inbound note edit federation 2023-05-01 02:29:50 +10:00
Freeplay fcd9fa4adc Fix jumping to top of page when opening menu
I also thought this would maybe fix one of the focustrap errors in the console, but no.
2023-04-30 11:58:36 -04:00
Namekuji c89bed41b0
use tab instead of page header 2023-04-30 11:47:39 -04:00
naskya b8598fcace
KaTex -> KaTeX 2023-05-01 00:02:16 +09:00
naskya e116dabdf4
blockMath is not necessarily multi-line (is this copy-pasted from blockCode?) 2023-04-30 23:49:08 +09:00
naskya fb3a43aeba
use new styling method 2023-04-30 23:28:17 +09:00
naskya be58c08337
more search syntax (although it doesn't appear since the description of the search syntax is commented out) 2023-04-30 23:24:19 +09:00
naskya 518ae2f089
add blockMath 2023-04-30 23:18:39 +09:00
Namekuji a1645ddc5b
can overlap with blocked hosts 2023-04-30 09:04:29 -04:00
Namekuji 51858ae473
add toggler 2023-04-30 09:01:42 -04:00
Namekuji 9bc872dc00
format 2023-04-30 08:08:45 -04:00
Namekuji 151b30c53d
rename and comment 2023-04-30 07:58:03 -04:00
Namekuji ba734a9f3c
instance silence 2023-04-30 07:27:55 -04:00
ThatOneCalculator 7373fc625a
Merge remote-tracking branch 'weblate/develop' into develop 2023-04-29 19:52:43 -07:00
Kainoa Kanter 7d25b7adc6
chore: Translated using Weblate (Finnish)
Currently translated at 11.7% (204 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-04-30 04:51:50 +02:00
Ville Lepistö 50d8301b2f
chore: Translated using Weblate (Finnish)
Currently translated at 11.7% (204 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-04-30 04:51:50 +02:00
jolupa 3b9b6daba3
chore: Translated using Weblate (Catalan)
Currently translated at 37.1% (644 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-04-30 04:51:49 +02:00
Laker Turner 4706bc8796
chore: Translated using Weblate (English)
Currently translated at 100.0% (1735 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-04-30 04:51:46 +02:00
ThatOneCalculator a1c874eff5
9h
ci/woodpecker/tag/commit Pipeline failed Details
2023-04-29 19:39:28 -07:00
ThatOneCalculator 0e602a2824
Revert "Merge pull request 'Add show more button to notifications' (#9942) from Freeplay/calckey:notifications into develop"
This reverts commit 8cb321b110, reversing
changes made to 133391122b.
2023-04-29 19:39:04 -07:00
ThatOneCalculator f6c5a52106
Revert "Merge pull request 'Add show more button to notifications' (#9942) from Freeplay/calckey:notifications into develop"
This reverts commit 8cb321b110, reversing
changes made to 133391122b.
2023-04-29 19:38:26 -07:00
ThatOneCalculator d493665922
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-29 19:15:47 -07:00
ThatOneCalculator da6dd31812
hotfix 2023-04-29 19:14:47 -07:00
ThatOneCalculator d1c1d75388
Revert "keyboard accessibility (#9725)"
This reverts commit c1d5922acb.
2023-04-29 19:14:36 -07:00
Kainoa Kanter 23b14b3bd7 Merge pull request 'Remove eslint from calckey-js (use rome)' (#9962) from supakaity/hajkey:hk/calckeyjs-rome into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9962
2023-04-30 01:40:17 +00:00
Kaitlyn Allan 461fdd1408
Remove eslint from calckey-js (use rome) 2023-04-30 11:33:45 +10:00
Kainoa Kanter 6a9b0e961b Merge pull request 'Add Libre Translate support' (#9961) from supakaity/hajkey:hk/libre-translate into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9961
2023-04-30 01:29:09 +00:00
Kaity A 914355c644
Add Libre Translate support 2023-04-30 11:09:51 +10:00
ThatOneCalculator e7b714c134
beta9
ci/woodpecker/tag/commit Pipeline failed Details
2023-04-29 16:26:51 -07:00
ThatOneCalculator b17bab4981
Merge branch 'develop' into beta 2023-04-29 15:44:46 -07:00
ThatOneCalculator 2b3191b6cd
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-29 15:32:38 -07:00
ThatOneCalculator 41151ca918
new logos 2023-04-29 15:32:33 -07:00
Free c1d5922acb keyboard accessibility (#9725)
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9725
Co-authored-by: Free <freeplay@duck.com>
Co-committed-by: Free <freeplay@duck.com>
2023-04-29 22:30:14 +00:00
ThatOneCalculator f3b45186fb
docs 2023-04-29 13:38:52 -07:00
ThatOneCalculator 11b93d2d9a
chore: upgrade megalodon 2023-04-29 13:28:24 -07:00
naskya 6cfb83660f fix: centering block math (#9946)
Similar to `inlineCode` and `blockCode`, MFM provides two types of formula syntax, `mathInline` and `mathBlock` (I'm curious why these aren't called `inlineMath`/`blockMath`, but oh well)

Other platforms, like GitHub, **Math**todon, my blog, etc., also support these two types of formula representation, and math blocks are centered on (maybe) all such platforms.

![](https://cdn.discordapp.com/attachments/823878222897741868/1101837026304720997/2023-04-29_201943.png)

But Calckey (Misskey v12) don't center math blocks. I'd say this is a bug, and this makes `blockMath` useless (it's just `inlineMath` in a new line).

![](https://cdn.discordapp.com/attachments/823878222897741868/1101837026027917342/2023-04-29_202008.png)

So I fixed this.

![](https://cdn.discordapp.com/attachments/823878222897741868/1101837183574355978/2023-04-29_202854.png)

Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9946
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-29 14:01:24 +00:00
Freeplay 544e4bab51 a 2023-04-29 09:56:28 -04:00
Freeplay 1ee8b7285e Merge branch 'develop' of https://codeberg.org/calckey/calckey into keyboard-accessability 2023-04-29 09:48:10 -04:00
Ville Lepistö a9081ee567
chore: Translated using Weblate (Finnish)
Currently translated at 2.4% (43 of 1735 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fi/
2023-04-29 10:08:42 +02:00
Kainoa Kanter 7f9e341427 Merge pull request 'chore: update icons on the post form' (#9944) from naskya/calckey:chore/update-icons into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9944
2023-04-29 07:59:17 +00:00
naskya acb6cdcea5 Merge branch 'develop' into chore/update-icons 2023-04-29 07:39:48 +00:00
Kainoa Kanter 69ad1bd2dc
chore: Added translation using Weblate (Finnish) 2023-04-29 09:35:03 +02:00
naskya cc0a478b65
chore: update icons on post form 2023-04-29 14:08:11 +09:00
Freeplay 0b758321ba a 2023-04-28 23:47:13 -04:00
Freeplay 5e01581d06 outline fixes 2023-04-28 23:26:19 -04:00
Freeplay ca68d4fd28 classic view fixes 2023-04-28 23:18:01 -04:00
Freeplay 9392d84625 widgets 2023-04-28 22:50:32 -04:00
Freeplay cb017d1006 sidebar focus 2023-04-28 22:40:23 -04:00
Freeplay 70c8690623 fix 2023-04-28 22:24:40 -04:00
Freeplay c55b521e57 a 2023-04-28 22:19:02 -04:00
Freeplay af62073544 focus to media 2023-04-28 22:17:39 -04:00
Freeplay 1389dd9000 make folder dropdown focusable 2023-04-28 22:04:35 -04:00
Freeplay 4bda4ffffc Make accounts in account management page focusable 2023-04-28 21:49:41 -04:00
Freeplay 3a49c3eb37 Fix focusing avatars in weird places 2023-04-28 21:39:48 -04:00
Freeplay 609f4cff5b fix subnote 2023-04-28 21:22:29 -04:00
Freeplay 253ba164e5 consistency + fix 2023-04-28 21:18:00 -04:00
Freeplay 81121533b0 focus last element on bg click 2023-04-28 20:52:09 -04:00
Freeplay db692fcf83 fixes? 2023-04-28 20:47:57 -04:00
Freeplay 23beca49e3 fixes 2023-04-28 20:26:10 -04:00
Kainoa Kanter 8cb321b110 Merge pull request 'Add show more button to notifications' (#9942) from Freeplay/calckey:notifications into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9942
2023-04-29 00:05:53 +00:00
Freeplay 3be2147397 add the focus trap thingies again 2023-04-28 19:57:19 -04:00
Freeplay 6498a90dc1 Fix focusing inside of CW's 2023-04-28 19:28:25 -04:00
Freeplay 56b6b450c0 forgot to add this 2023-04-28 19:06:29 -04:00
Freeplay a39802cf92 Merge branch 'develop' of https://codeberg.org/calckey/calckey into keyboard-accessability 2023-04-28 19:06:21 -04:00
Freeplay 3cc7979aad Add show more button to notifications + make show more button into its own component 2023-04-28 18:18:09 -04:00
Hosted Weblate 133391122b
chore: Merge branch 'origin/develop' into Weblate. 2023-04-28 23:47:44 +02:00
Kainoa Kanter 68172bc599 Merge pull request 'fix: Declare /api/v1/accounts/relationships before /api/v1/accounts/:id' (#9938) from fruye/calckey:account-relationships-fix into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9938
2023-04-28 21:47:17 +00:00
Hosted Weblate 95f9ab41b3
chore: Merge branch 'origin/develop' into Weblate. 2023-04-28 23:46:49 +02:00
Kainoa Kanter 6157c41ffb Merge pull request 'Fix dot menu in welcome page' (#9939) from esm/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9939
2023-04-28 21:46:29 +00:00
Hosted Weblate a383f3ddf5
chore: Merge branch 'origin/develop' into Weblate. 2023-04-28 23:45:58 +02:00
Kenny Hui 2307fa11be
chore: Translated using Weblate (Chinese (Traditional))
Currently translated at 97.4% (1683 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/zh_Hant/
2023-04-28 23:45:58 +02:00
Кибер огурчик e1bda44710
chore: Translated using Weblate (Russian)
Currently translated at 100.0% (1727 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-28 23:45:56 +02:00
jolupa 5ad9c06d21
chore: Translated using Weblate (Catalan)
Currently translated at 35.0% (606 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-04-28 23:45:54 +02:00
Kainoa Kanter ee0adee33b Merge pull request 'FEAT/UI: Add documentation for various MFM functions' (#9940) from the-og-gear/calckey:document_mfm into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9940
2023-04-28 21:45:29 +00:00
Gear cff9276f2a Add documentation for various MFM functions 2023-04-28 16:01:09 -04:00
Essem 1de71cd440
Fix dot menu in welcome page 2023-04-28 13:19:57 -05:00
fruye a18e1cccc6 fix: Declare /api/v1/accounts/relationships before /api/v1/accounts/:id
Previously the 'relationships' part was considered to be an account id
and was handled by completely different API endpoint.
2023-04-28 20:03:06 +02:00
Kainoa Kanter e4d995406c revert faulty commits 2023-04-27 16:32:44 -07:00
Kainoa Kanter 1865a9c204 Revert "[Fix] Properly replace koa-fix-trailing-slashes with inhouse script (#9870)"
This reverts commit 2cdaad588c.
2023-04-27 16:32:37 -07:00
Kainoa Kanter 431a08d06e Revert "Merge pull request '[feat] Replace Koa-FavICO with a smaller router' (#9853) from daikei/calckey:modularize-favico into develop"
This reverts commit 4f6cae7643, reversing
changes made to 64a737d001.
2023-04-27 16:25:13 -07:00
Kainoa Kanter 6271e1880b Merge pull request 'fix: Get list titles from Form data when creating and updating lists' (#9930) from fruye/calckey:create-and-update-lists-from-masto into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9930
2023-04-27 21:40:55 +00:00
fruye f8178a9535 fix: Get list titles from Form data when creating and updating lists
This change will actually make it possible for Mastodon clients to
create and rename lists, as they send the title in a Form data instead
of a query string.

https://docs.joinmastodon.org/methods/lists/#form-data-parameters
2023-04-27 22:42:10 +02:00
Kainoa Kanter 191dd98eb6 Merge pull request 'fix: Make statusModel `created_at` fields be ISO 8601 strings' (#9929) from fruye/calckey:53y-ago into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9929
2023-04-27 20:07:13 +00:00
fruye e5fcde758f fix: Make statusModel `created_at` fields be ISO 8601 strings
This makes the 'Reactions to this post' status (seen when viewing
a status context) send the correct data type for `created_at` fields.

https://docs.joinmastodon.org/entities/Account/#created_at
https://docs.joinmastodon.org/entities/Status/#created_at
2023-04-27 21:54:51 +02:00
Kainoa Kanter 38ef95765b Merge pull request 'Fix readme link to docker doc page' (#9927) from warrows/calckey:main into main
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9927
2023-04-27 19:17:40 +00:00
warrows 93101ff7af Fix readme link to docker doc page 2023-04-27 14:09:37 +00:00
Kainoa Kanter dd58a9a3ff Merge pull request 'add additional information & show more button in user preview popup' (#9926) from Freeplay/calckey:userpopup into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9926
2023-04-27 13:24:13 +00:00
Freeplay bd8d8af9ac add additional information & show more button in user preview popup 2023-04-27 08:16:25 -04:00
ThatOneCalculator 0fdb5c4230
hide for now 2023-04-27 01:22:50 -07:00
ThatOneCalculator 9db2930f68
it's always pleroma 2023-04-27 01:17:09 -07:00
ThatOneCalculator 8a950d6a3e
fix disabled, formatting 2023-04-27 01:16:33 -07:00
ThatOneCalculator d223007295
import formradio 2023-04-27 01:12:02 -07:00
ThatOneCalculator 17b05511aa
refactor: change import type to radio 2023-04-27 01:08:28 -07:00
ThatOneCalculator 6f1a7d84d9
add kaiteki to example proxyBypassHosts 2023-04-26 21:07:40 -07:00
ThatOneCalculator df8db1171a
fix: style email with inline styles 2023-04-26 20:21:30 -07:00
ThatOneCalculator a47d05dcda
im dumb 2023-04-26 20:10:42 -07:00
ThatOneCalculator e048d951fc
try to fix email style... 2023-04-26 20:04:58 -07:00
ThatOneCalculator ddc487cb39
mfw 2023-04-26 20:03:04 -07:00
ThatOneCalculator a44fee3aae
fix? 2023-04-26 19:58:26 -07:00
ThatOneCalculator 8e22a211d1
fix: add route 2023-04-26 19:51:25 -07:00
ThatOneCalculator 09f9817d10
dev38 2023-04-26 19:45:46 -07:00
ThatOneCalculator 0a2335ff75
feat: frontend interface for post-account creation email verification 2023-04-26 19:44:38 -07:00
ThatOneCalculator 868489d5ac
notes -> posts 2023-04-26 19:02:38 -07:00
ThatOneCalculator b81b932c5f
patrons 2023-04-26 18:30:25 -07:00
ThatOneCalculator f0e76b29f8
more patrons! 2023-04-26 17:26:12 -07:00
ThatOneCalculator 65f1f5116c
comma! 2023-04-26 17:24:58 -07:00
ThatOneCalculator 0bc72b798b
update patrons 2023-04-26 17:20:54 -07:00
ThatOneCalculator bef4245753
chore: update examples 2023-04-26 15:50:28 -07:00
ThatOneCalculator 9177825990
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-26 15:10:48 -07:00
ThatOneCalculator 2c98d43996
chore: more rpine for server activity widget 2023-04-26 15:10:33 -07:00
yawhn e7fe452f22 Fix: Inline Ads bug (#9922)
This PR fixes this issue: https://codeberg.org/calckey/calckey/issues/9747

Co-authored-by: ThatOneCalculator <kainoa@t1c.dev>
Co-authored-by: yawhn <kordaris@gmail.com>
Co-authored-by: Otto Richter <otto@codeberg.org>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9922
Co-authored-by: yawhn <yawhn@noreply.codeberg.org>
Co-committed-by: yawhn <yawhn@noreply.codeberg.org>
2023-04-26 21:38:44 +00:00
ThatOneCalculator ec454b58f1
Merge branch 'develop' into beta
ci/woodpecker/tag/commit Pipeline failed Details
2023-04-26 14:21:18 -07:00
ThatOneCalculator 1bab53fed2
chore: formatting 2023-04-26 14:20:27 -07:00
ThatOneCalculator 3dfb43be84
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-26 14:20:02 -07:00
ThatOneCalculator fca37cd86e
Revert "chore: update summaly"
This reverts commit b60a3b509e.
2023-04-26 14:19:55 -07:00
Namekuji eebfdf8559 feat: reserved usernames (#9917)
This PR adds a feature to prevent users from creating a new account with a reserved username such as root, admin, system, proxy, info, etc...

Reserved usernames can be configured via the config file.

The administrator can create an account with a reserved username via the first setup screen or the control panel.

The existing account of reserved usernames will not be affected.

Co-authored-by: Namekuji <nmkj@mx.kazuno.co>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9917
Co-authored-by: Namekuji <nmkj@noreply.codeberg.org>
Co-committed-by: Namekuji <nmkj@noreply.codeberg.org>
2023-04-26 20:06:18 +00:00
Free 48b8aeaf62 super minor styling stuff (#9918)
Co-authored-by: Freeplay <Freeplay@duck.com>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9918
Co-authored-by: Free <freeplay@duck.com>
Co-committed-by: Free <freeplay@duck.com>
2023-04-26 20:03:32 +00:00
Kainoa Kanter e17d5b0f9f Merge pull request 'fix: local instance ticker' (#9919) from naskya/calckey:fix/local-instance-ticker into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9919
2023-04-26 18:54:58 +00:00
naskya eea98cb6c2
fix an instance ticker bug 2023-04-27 03:29:07 +09:00
ThatOneCalculator 6b87d708f3
posts 2023-04-25 19:05:29 -07:00
ThatOneCalculator 47744afdbc
rm todo 2023-04-25 18:40:10 -07:00
ThatOneCalculator d2fd719cab
use chartLimit 2023-04-25 18:34:04 -07:00
ThatOneCalculator 19783a9002
mmm matrix math yummy 2023-04-25 18:31:04 -07:00
ThatOneCalculator a6761ec278
see if this works 2023-04-25 18:21:15 -07:00
ThatOneCalculator 8fa0919810
typo 2023-04-25 18:16:14 -07:00
ThatOneCalculator 221bac64db
feat: heatmap option for activity widget 2023-04-25 18:06:21 -07:00
Kenny Hui bafcc77509
chore: Translated using Weblate (Chinese (Traditional))
Currently translated at 97.2% (1680 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/zh_Hant/
2023-04-26 01:21:34 +02:00
Кибер огурчик 68d3115131
chore: Translated using Weblate (Russian)
Currently translated at 100.0% (1727 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-26 01:21:32 +02:00
Marud 15ec2efd6e
chore: Translated using Weblate (French)
Currently translated at 95.6% (1652 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/fr/
2023-04-26 01:21:30 +02:00
Miguel Frias Mosquea 3f2628e442
chore: Translated using Weblate (Spanish)
Currently translated at 92.2% (1594 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/es/
2023-04-26 01:21:27 +02:00
mutex 00ae3db5a4
chore: Translated using Weblate (German)
Currently translated at 94.6% (1634 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-04-26 01:21:25 +02:00
Ettore Atalan 5da65711bc
chore: Translated using Weblate (German)
Currently translated at 94.6% (1634 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/de/
2023-04-26 01:21:24 +02:00
jolupa b28fb4cc62
chore: Translated using Weblate (Catalan)
Currently translated at 22.9% (396 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ca/
2023-04-26 01:21:23 +02:00
Kainoa Kanter 4d16b0abbd Merge pull request 'Fix typo in migration docs' (#9914) from phoslash/calckey:develop into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9914
2023-04-25 18:47:45 +00:00
phoslash 58fffede9f Fix typo in migration docs 2023-04-25 18:34:19 +00:00
ThatOneCalculator 1690d787ce
hotfix 2023-04-25 11:13:20 -07:00
ThatOneCalculator e8b70cb7f5
hotfix: explore page 2023-04-25 11:12:47 -07:00
ThatOneCalculator 382b77e26a
Merge branch 'develop' into beta 2023-04-25 09:18:38 -07:00
ThatOneCalculator 9b129be524
throw different error if following is null 2023-04-25 08:31:05 -07:00
ThatOneCalculator b2e80db219
revert messaging room 2023-04-24 15:45:34 -07:00
naskya df8294bde3 fix: boost muting in the recommended timeline (#9906)
Closes: #9905
Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9906
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-24 19:47:56 +00:00
ThatOneCalculator 64a1c24686
chore: up pakcages 2023-04-23 15:34:50 -07:00
Kainoa Kanter 0c82c4662f Merge pull request 'feat: Implement reading Announcements from MastoAPI' (#9896) from fruye/calckey:announcements into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9896
2023-04-23 22:32:18 +00:00
fruye 1a39e7a48e feat: Implement reading Announcements from MastoAPI 2023-04-23 22:17:02 +02:00
Кибер огурчик 59d31ffae1
chore: Translated using Weblate (Russian)
Currently translated at 99.8% (1724 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-23 07:29:11 +02:00
Kainoa Kanter 66f9913e95
chore: Translated using Weblate (English)
Currently translated at 100.0% (1727 of 1727 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-04-23 07:29:07 +02:00
Hosted Weblate 4051770346
chore: Merge branch 'origin/develop' into Weblate. 2023-04-23 02:23:06 +02:00
ThatOneCalculator 591e44ccd6
chore: formatting 2023-04-22 17:22:53 -07:00
Hosted Weblate 593c649fa1
chore: Merge branch 'origin/develop' into Weblate. 2023-04-23 02:21:54 +02:00
Free 29818a067b Notes refactoring (?) + new CW design (#9888)
Moved a lot of the duplicated code in the different note components into the SubNoteContent component

I've also replaced the detailed note stuff with just the MkNote component

Co-authored-by: Freeplay <Freeplay@duck.com>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9888
Co-authored-by: Free <freeplay@duck.com>
Co-committed-by: Free <freeplay@duck.com>
2023-04-23 00:21:38 +00:00
Hosted Weblate c16ce7d28b
chore: Merge branch 'origin/develop' into Weblate. 2023-04-23 02:20:11 +02:00
Кибер огурчик 09bacea5df
chore: Translated using Weblate (Russian)
Currently translated at 100.0% (1726 of 1726 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-23 02:20:11 +02:00
tinaxd 4974088061
fix: ドライブアップロードで413が返ってきたときにエラーメッセージを表示 (#10680) 2023-04-22 17:19:52 -07:00
Кибер огурчик 2415ef48d1
chore: Translated using Weblate (Russian)
Currently translated at 95.2% (1644 of 1726 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-22 15:50:49 +02:00
Кибер огурчик 0bb502c78f
chore: Translated using Weblate (Russian)
Currently translated at 95.0% (1640 of 1726 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-22 01:52:35 +02:00
Jeder 2127237448
chore: Translated using Weblate (Polish)
Currently translated at 100.0% (1726 of 1726 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-04-22 01:52:33 +02:00
naskya 46a21c9a6d
chore: Translated using Weblate (Japanese)
Currently translated at 100.0% (1726 of 1726 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ja/
2023-04-22 01:52:31 +02:00
naskya 00b45ad726 security: validate image url (#9882)
It looks like url validations are added in f7564d87b0, but I found another validation commit not applied in Calckey, so I cherry-picked 0da0cc80b9 from [Misskey](https://github.com/misskey-dev/misskey).

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9882
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-21 01:50:47 +00:00
naskya e0d76ef8ef feat: make it toggleable whether to disable emojis in notifications (#9880)
I talked about feature #9865 on my fedi account and received a comment like, "I don't care about emoji reactions in my timelines, but I do care what reactions I get!"

Adding too many options is bad, but I agreed that making it toggleable whether to disable emojis in notifications is helpful, so I added this feature. This allows you to check emoji reactions to your posts in notifications while using the simple UI. I'd say this provides an experience that neither Mastodon nor Misskey has.

The new setting item shows up only when you disable emoji reactions.

Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9880
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-20 07:57:36 +00:00
ThatOneCalculator b60a3b509e
chore: update summaly 2023-04-19 21:28:43 -07:00
ThatOneCalculator 89d2a83d7a
email styling 2023-04-19 21:26:49 -07:00
ThatOneCalculator a1f723a18e
chore: formatting 2023-04-19 21:06:05 -07:00
ThatOneCalculator 08930c6de2
fix header tabs 2023-04-19 21:05:41 -07:00
ThatOneCalculator e3e3ee8bb0
why was the order reversed? 2023-04-19 21:02:12 -07:00
ThatOneCalculator f584c460e3
fix tag on explore 2023-04-19 21:00:01 -07:00
ThatOneCalculator c6f0047aed
reaction settings auto reload 2023-04-19 20:46:37 -07:00
ThatOneCalculator bcaaa19c43
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-19 20:42:12 -07:00
ThatOneCalculator 9813e72a27
Revert "docs: rm yunohost"
This reverts commit 9ef11deb99.
2023-04-19 20:41:57 -07:00
Hosted Weblate a497f0fa6b
chore: Merge branch 'origin/develop' into Weblate. 2023-04-20 04:54:00 +02:00
Panagiotis Damelos 67aadc97e7
chore: Translated using Weblate (Greek)
Currently translated at 43.2% (745 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/el/
2023-04-20 04:53:59 +02:00
Кибер огурчик 77bbbbde79
chore: Translated using Weblate (Russian)
Currently translated at 93.6% (1615 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-20 04:53:58 +02:00
D David fcc08b0be6
chore: Translated using Weblate (Spanish)
Currently translated at 92.5% (1595 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/es/
2023-04-20 04:53:56 +02:00
naskya 0a173a3c1c feat: add an option to disable emoji reactions (#9878)
Closes: #9865
Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9878
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-20 02:53:28 +00:00
Kainoa Kanter 8588979db9 Merge pull request 'fix: search bar appearance on iOS' (#9879) from naskya/calckey:fix/search-bar-on-iOS into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9879
2023-04-19 21:08:25 +00:00
naskya 70e4b36bd3
Fix the search bar bug on iOS 2023-04-20 04:21:28 +09:00
Panagiotis Damelos e2237b604a
chore: Translated using Weblate (Greek)
Currently translated at 43.2% (745 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/el/
2023-04-19 00:10:19 +02:00
Panagiotis Damelos 70e1f1339e
chore: Translated using Weblate (Greek)
Currently translated at 41.4% (714 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/el/
2023-04-18 23:43:37 +02:00
D David e8761dbc2b
chore: Translated using Weblate (Spanish)
Currently translated at 92.0% (1587 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/es/
2023-04-18 23:43:36 +02:00
Panagiotis Damelos 87483616dc
chore: Translated using Weblate (Greek)
Currently translated at 33.2% (574 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/el/
2023-04-18 20:59:38 +02:00
Кибер огурчик 60b739c405
chore: Translated using Weblate (Russian)
Currently translated at 90.1% (1554 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/ru/
2023-04-18 20:59:36 +02:00
Eryk Michalak 3552475df7
chore: Translated using Weblate (Polish)
Currently translated at 100.0% (1724 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-04-18 20:59:35 +02:00
D David a527abc0df
chore: Translated using Weblate (Spanish)
Currently translated at 92.0% (1587 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/es/
2023-04-18 20:59:32 +02:00
Kainoa Kanter 0b8a82f28f
chore: Translated using Weblate (English)
Currently translated at 100.0% (1724 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/en/
2023-04-18 20:59:29 +02:00
ThatOneCalculator fc78e1e51e
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-18 11:58:33 -07:00
ThatOneCalculator 1ddb15909d
gallery styling 2023-04-18 11:58:04 -07:00
Panagiotis Damelos 58449b05c0
chore: Translated using Weblate (Greek)
Currently translated at 31.6% (545 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/el/
2023-04-18 01:36:10 +02:00
ThatOneCalculator d6a4ecb495
Revert "update locales for calckey"
This reverts commit 8ab6a4c442.
2023-04-17 15:37:05 -07:00
ThatOneCalculator ae79e54ced
Revert "fix"
This reverts commit 9b0a3b2187.
2023-04-17 15:36:54 -07:00
daikei 2cdaad588c [Fix] Properly replace koa-fix-trailing-slashes with inhouse script (#9870)
This follows up #9869, with an awaited ``next()``, fixing the script.

> I'm looking to remove another 5kb package, replacing it with an in-house script. The commit i'm proposing translates the entire job of koa-remove-trailing-slashes into a 206 byte script that gets the job done well.

(just to show the code does work)
![](https://s3.kitsunes.club/storage/41c7854d-d01e-4f4c-94dd-8b651e2d7367.gif)

Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9870
Co-authored-by: daikei <daikei@noreply.codeberg.org>
Co-committed-by: daikei <daikei@noreply.codeberg.org>
2023-04-17 22:36:22 +00:00
ThatOneCalculator 9b0a3b2187
fix 2023-04-17 03:07:50 -07:00
ThatOneCalculator 8ab6a4c442
update locales for calckey 2023-04-17 03:07:07 -07:00
ThatOneCalculator 48ff0254b1
chore: formatting 2023-04-17 01:47:53 -07:00
Hosted Weblate 7db26f3f94
chore: Merge branch 'origin/develop' into Weblate. 2023-04-17 10:29:02 +02:00
ThatOneCalculator c0fe351bed
Revert "[Fix] remove-trailing-slashes with inhouse script (#9869)"
This reverts commit 07db141fc0.
2023-04-17 01:22:31 -07:00
ThatOneCalculator 1ed5ff7caf
Revert "formatting"
This reverts commit b32e1b56fa.
2023-04-17 01:22:25 -07:00
Jędrzej Tomaszewski f238d024ca
chore: Translated using Weblate (Polish)
Currently translated at 99.7% (1720 of 1724 strings)

Translation: Calckey/locales
Translate-URL: https://hosted.weblate.org/projects/calckey/locales/pl/
2023-04-17 10:17:13 +02:00
ThatOneCalculator b32e1b56fa
formatting 2023-04-17 01:03:56 -07:00
daikei 07db141fc0 [Fix] remove-trailing-slashes with inhouse script (#9869)
I'm looking to remove another 5kb package, replacing it with an in-house script. The commit i'm proposing translates the entire job of `koa-remove-trailing-slashes` into a 206 byte script that gets the job done well.

Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9869
Co-authored-by: daikei <daikei@noreply.codeberg.org>
Co-committed-by: daikei <daikei@noreply.codeberg.org>
2023-04-17 08:02:29 +00:00
ThatOneCalculator 5fa80feb1d
chore: add weblate config file 2023-04-16 19:38:29 -07:00
ThatOneCalculator 86ba9af4e7
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-16 19:27:19 -07:00
ThatOneCalculator ca5d9377a1
MkNumber for data in MkUserInfo 2023-04-16 19:26:57 -07:00
Kainoa Kanter 9ef11deb99 docs: rm yunohost
has been broken for months, I don't maintain it either.
2023-04-17 02:21:19 +00:00
ThatOneCalculator d2a1c947a4
style announcement image 2023-04-16 19:04:28 -07:00
ThatOneCalculator 8a80dd0438
move hover to entire ticker 2023-04-16 17:52:14 -07:00
ThatOneCalculator 57a4360165
remove duplicate styles 2023-04-16 17:51:34 -07:00
ThatOneCalculator dfd20a3a22
capitalize string 2023-04-16 17:50:05 -07:00
ThatOneCalculator 2a8b9dc92a
feat: software name on hover icon in instance ticker 2023-04-16 17:35:10 -07:00
Kainoa Kanter 432905efa6 Update 'patrons.json' 2023-04-16 08:26:04 +00:00
Kaity A 011b482e98 Add continuation for thread reply level (#9821)
I think this will solve the continuation issue in threads where the reply level reaches 12 deep in the conversation thread, without getting to indent depth 5.

Co-authored-by: Kaity A <kaity@theallans.com.au>
Co-authored-by: Kaity A <supakaity@blahaj.zone>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9821
Co-authored-by: Kaity A <supakaity@noreply.codeberg.org>
Co-committed-by: Kaity A <supakaity@noreply.codeberg.org>
2023-04-15 21:56:17 +00:00
ThatOneCalculator 0a3259993b
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-15 13:16:17 -07:00
ThatOneCalculator 1ecc91b0d3
read messages with dialog 2023-04-15 13:16:13 -07:00
naskya f7602be0e7 fix: disable "Search" keyword (#9856)
Related: #9816 #9830
I was so careless that I didn't know "Search" was also a keyword. I disabled that and fixed a minor bug.

Co-authored-by: naskya <m@naskya.net>
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9856
Co-authored-by: naskya <naskya@noreply.codeberg.org>
Co-committed-by: naskya <naskya@noreply.codeberg.org>
2023-04-15 17:53:17 +00:00
Kainoa Kanter de85e32b6b Merge pull request 'feat: rename workspaces' (#9862) from naskya/calckey:feat/rename-workspaces into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9862
2023-04-15 17:51:59 +00:00
naskya dde2679875
feat: rename workspaces 2023-04-16 01:05:18 +09:00
ThatOneCalculator 1824b27e16
chore: formatting 2023-04-14 15:35:18 -07:00
Kainoa Kanter 4f6cae7643 Merge pull request '[feat] Replace Koa-FavICO with a smaller router' (#9853) from daikei/calckey:modularize-favico into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9853
2023-04-14 22:33:49 +00:00
Kainoa Kanter 64a737d001 Merge pull request 'feat: improved local time display' (#9851) from naskya/calckey:localtime-improvement into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9851
2023-04-14 22:32:34 +00:00
naskya 429b926fcf
change regex priority 2023-04-15 01:41:49 +09:00
naskya f531ed2ab2
fix a bug 2023-04-15 01:37:53 +09:00
daikei c959d4185c remove koa-favicon 2023-04-14 16:20:27 +00:00
daikei 1b9a776220 replace koa-favicon with a small patch of code
This should remove a needless dependency and replace it with a tiny, simple koa router
2023-04-14 16:18:50 +00:00
naskya 06d56aeb41
update locale 2023-04-15 01:10:59 +09:00
naskya a2e56314fe
prevent crashes due to timezone === null 2023-04-15 01:01:36 +09:00
naskya 4d0245f1a5
allow acute accent 2023-04-15 01:00:43 +09:00
naskya afa8f06ef6
improve city search 2023-04-15 00:40:13 +09:00
ThatOneCalculator 9501e8a882
only show index posts action if admin 2023-04-13 20:11:39 -07:00
ThatOneCalculator 25f45f8b4b
fix: 🔒 don't show notes with CW on welcome screen
Closes #9849
2023-04-13 19:46:52 -07:00
ThatOneCalculator 4125e3704e
Merge branch 'develop' of codeberg.org:calckey/calckey into develop 2023-04-13 09:43:22 -07:00
ThatOneCalculator 4694e30573
chore: up swc 2023-04-13 09:43:13 -07:00
Kainoa Kanter d8fd33d467 Merge pull request 'chore: change labels on boost buttons' (#9845) from naskya/calckey:change-boost-buttons-label into develop
Reviewed-on: https://codeberg.org/calckey/calckey/pulls/9845
2023-04-13 07:30:46 +00:00
naskya a53e3d9beb
Update locale 2023-04-13 11:58:57 +09:00
naskya d5ce896bd2
Change boost button labels 2023-04-13 11:58:42 +09:00
Freeplay a5a6d90771 actually fix submenu pos 2023-02-12 22:31:55 -05:00
Freeplay 06b37eccdd fix submenu positioning 2023-02-12 22:24:12 -05:00
Freeplay b51d24d31a focus trap emoji picker (also fixes closing w/ esc) 2023-02-12 22:19:40 -05:00
Freeplay aac8246e10 foxes 2023-02-12 22:16:15 -05:00
Freeplay b3c0c6124e FOCUS TRAPPING!!!! 2023-02-12 21:56:01 -05:00
Freeplay b818e97c67 Allow focusing of elements inside notes/posts 2023-02-12 20:59:11 -05:00
Freeplay 6550940625 Focus last element when exiting modal 2023-02-12 20:49:41 -05:00
Freeplay 9e7bd91f88 Merge branch 'develop' of https://codeberg.org/calckey/calckey into keyboard-accessability 2023-02-12 20:01:41 -05:00
Freeplay 6631f77d5b Merge branch 'develop' of https://codeberg.org/calckey/calckey into keyboard-accessability 2023-02-11 14:14:56 -05:00
Freeplay 9bd958e692 focus to more elements 2023-02-11 14:11:25 -05:00
Freeplay 2c837da3e3 Change line-height to w3c recommend
https://www.w3.org/TR/WCAG21/#text-spacing
2023-02-10 11:43:47 -05:00
Freeplay 8f43786bee focus selected page 2023-02-08 21:55:07 -05:00
Freeplay 34f2c957c5 fixes 2023-02-08 21:19:37 -05:00
Freeplay 93539615f8 oops 2023-02-08 20:25:22 -05:00
Freeplay 94c60784b1 Merge branch 'keyboard-accessability' of https://codeberg.org/Freeplay/calckey into keyboard-accessability 2023-02-08 19:58:47 -05:00
Freeplay d96f9bbef0 forgot to remove comment 2023-02-08 19:56:35 -05:00
Freeplay cab1557b90 Use v-bind instead for focus, allow focusing submenus, change tabindex's 2023-02-08 19:55:36 -05:00
Freeplay c99586cfcb Use v-bind instead for focus, change tabindex's 2023-02-08 19:53:38 -05:00
Freeplay 49ea503fe6 Fix tabbing orders & allow closing modals w/ esc 2023-02-06 23:23:56 -05:00
Freeplay d3466948d1 Improving keyboard support, part 1™ 2023-02-06 15:52:00 -05:00
752 changed files with 56437 additions and 29686 deletions

38
.config/devenv.yml Normal file
View File

@ -0,0 +1,38 @@
url: http://localhost:3000
port: 3000
db:
host: 127.0.0.1
port: 5432
db: calckey
user: calckey
pass: calckey
redis:
host: localhost
port: 6379
family: 4
#sonic:
# host: localhost
# port: 1491
# auth: SecretPassword
# collection: notes
# bucket: default
#elasticsearch:
# host: localhost
# port: 9200
# ssl: false
# user:
# pass:
id: 'aid'
reservedUsernames:
- root
- admin
- administrator
- me
- system

View File

@ -2,32 +2,31 @@
# Calckey configuration
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# After starting your server, please don't change the URL! Doing so will break federation.
# ┌─────┐
#───┘ URL └─────────────────────────────────────────────────────
# Final accessible URL seen by a user.
url: https://example.tld/
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# URL SETTINGS AFTER THAT!
url: https://example.com/
# ┌───────────────────────┐
#───┘ Port and TLS settings └───────────────────────────────────
#
# Misskey requires a reverse proxy to support HTTPS connections.
# Calckey requires a reverse proxy to support HTTPS connections.
#
# +----- https://example.tld/ ------------+
# +----- https://example.com/ ------------+
# +------+ |+-------------+ +----------------+|
# | User | ---> || Proxy (443) | ---> | Misskey (3000) ||
# | User | ---> || Proxy (443) | ---> | Calckey (3000) ||
# +------+ |+-------------+ +----------------+|
# +---------------------------------------+
#
# You need to set up a reverse proxy. (e.g. nginx)
# You need to set up a reverse proxy. (e.g. nginx, caddy)
# An encrypted connection with HTTPS is highly recommended
# because tokens may be transferred in GET requests.
# The port that your Misskey server should listen on.
# The port that your Calckey server should listen on.
port: 3000
# ┌──────────────────────────┐
@ -62,6 +61,17 @@ redis:
#prefix: example-prefix
#db: 1
# Please configure either MeiliSearch *or* Sonic.
# If both MeiliSearch and Sonic configurations are present, MeiliSearch will take precedence.
# ┌───────────────────────────┐
#───┘ MeiliSearch configuration └─────────────────────────────────────
#meilisearch:
# host: meilisearch
# port: 7700
# ssl: false
# apiKey:
# ┌─────────────────────┐
#───┘ Sonic configuration └─────────────────────────────────────
@ -72,49 +82,49 @@ redis:
# collection: notes
# bucket: default
# ┌─────────────────────────────┐
#───┘ Elasticsearch configuration └─────────────────────────────
#elasticsearch:
# host: localhost
# port: 9200
# ssl: false
# user:
# pass:
# ┌───────────────┐
#───┘ ID generation └───────────────────────────────────────────
# You can select the ID generation method.
# You don't usually need to change this setting, but you can
# change it according to your preferences.
# No need to uncomment in most cases, but you may want to change
# these settings if you plan to run a large and/or distributed server.
# Available methods:
# aid ... Short, Millisecond accuracy
# meid ... Similar to ObjectID, Millisecond accuracy
# ulid ... Millisecond accuracy
# objectid ... This is left for backward compatibility
# cuid:
# # Min 16, Max 24
# length: 16
#
# # Set this to a unique string across workers (e.g., machine's hostname)
# # if your workers are running in multiple hosts.
# fingerprint: my-fingerprint
# ONCE YOU HAVE STARTED THE INSTANCE, DO NOT CHANGE THE
# ID SETTINGS AFTER THAT!
id: 'aid'
# ┌─────────────────────┐
#───┘ Other configuration └─────────────────────────────────────
# Max note length, should be < 8000.
# Maximum length of a post (default 3000, max 8192)
#maxNoteLength: 3000
# Maximum lenght of an image caption or file comment (default 1500, max 8192)
# Maximum length of an image caption (default 1500, max 8192)
#maxCaptionLength: 1500
# Reserved usernames that only the administrator can register with
reservedUsernames: [
'root',
'admin',
'administrator',
'me',
'system'
]
# Whether disable HSTS
#disableHsts: true
# Number of worker processes
#clusterLimit: 1
# Worker only mode
#onlyQueueProcessor: 1
# Job concurrency per worker
# deliverJobConcurrency: 128
# inboxJobConcurrency: 16
@ -139,6 +149,7 @@ id: 'aid'
#proxy: http://127.0.0.1:3128
#proxyBypassHosts: [
# 'web.kaiteki.app',
# 'example.com',
# '192.0.2.8'
#]
@ -167,13 +178,21 @@ id: 'aid'
# Upload or download file size limits (bytes)
#maxFileSize: 262144000
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# Congrats, you've reached the end of the config file needed for most deployments!
# Enjoy your Calckey server!
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
# Managed hosting settings
# !!!!!!!!!!
# >>>>>> NORMAL SELF-HOSTERS, STAY AWAY! <<<<<<
# >>>>>> YOU DON'T NEED THIS! <<<<<<
# !!!!!!!!!!
# >>> NORMAL SELF-HOSTERS, STAY AWAY! <<<
# >>> YOU DON'T NEED THIS! <<<
# Each category is optional, but if each item in each category is mandatory!
# If you mess this up, that's on you, you've been warned...
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
#maxUserSignups: 100
#isManagedHosting: true

View File

@ -0,0 +1,82 @@
replicaCount: 1
resources:
requests:
cpu: 0.5
memory: 512Mi
limits:
cpu: 1
memory: 1Gi
calckey:
domain: example.tld
smtp:
from_address: noreply@example.tld
port: 587
server: smtp.gmail.com
useImplicitSslTls: false
login: me@example.tld
password: CHANGEME
objectStorage:
baseUrl: https://example-bucket.nyc3.cdn.digitaloceanspaces.com
access_key: CHANGEME
access_secret: CHANGEME
bucket: example-bucket
endpoint: nyc3.digitaloceanspaces.com:443
region: nyc3
allowedPrivateNetworks: []
ingress:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt
hosts:
- host: example.tld
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: example-tld-certificate
hosts:
- example.tld
elasticsearch:
enabled: false
postgresql:
auth:
password: CHANGEME
postgresPassword: CHANGEME
primary:
persistence:
enabled: true
storageClass: vultr-block-storage
size: 25Gi
resources:
requests:
cpu: 0.25
memory: 256Mi
limits:
cpu: 0.5
memory: 512Mi
metrics:
enabled: true
redis:
auth:
password: CHANGEME
master:
resources:
requests:
cpu: 0.25
memory: 256Mi
limits:
cpu: 0.5
memory: 256Mi
persistence:
storageclass: vultr-block-storage
size: 10Gi
replica:
replicaCount: 0
metrics:
enabled: true

View File

@ -10,8 +10,12 @@ packages/backend/.idea/vcs.xml
# Node.js
node_modules
**/node_modules
report.*.json
# Rust
packages/backend/native-utils/target/*
# Cypress
cypress/screenshots
cypress/videos
@ -24,9 +28,6 @@ coverage
!/.config/example.yml
!/.config/docker_example.env
#docker dev config
/dev/docker-compose.yml
# misskey
built
db
@ -46,3 +47,4 @@ packages/backend/assets/instance.css
# dockerignore custom
.git
Dockerfile
docker-compose.yml

4
.envrc Normal file
View File

@ -0,0 +1,4 @@
if ! has nix_direnv_version || ! nix_direnv_version 2.3.0; then
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.3.0/direnvrc" "sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8="
fi
use flake . --impure

10
.gitignore vendored
View File

@ -22,7 +22,9 @@ coverage
# config
/.config/*
!/.config/example.yml
!/.config/devenv.yml
!/.config/docker_example.env
!/.config/helm_values_example.yml
#docker dev config
/dev/docker-compose.yml
@ -56,3 +58,11 @@ packages/backend/assets/sounds/None.mp3
# old yarn
.yarn
yarn*
# Nix Development shell items
.devenv
.direnv
# Cargo cache for Docker
/.cargo-cache
/.cargo-target

View File

@ -1 +1 @@
v16.15.0
v18.16.0

View File

@ -1,4 +0,0 @@
{
"eslint.packageManager": "pnpm",
"workspace.workspaceFolderCheckCwd": false
}

3
.weblate Normal file
View File

@ -0,0 +1,3 @@
[weblate]
url = https://hosted.weblate.org/api/
translation = calckey/locales

View File

@ -1,5 +1,8 @@
# All the changes to Calckey from stock Misskey
> **Warning**
> This list is incomplete. Please check the [Releases](https://codeberg.org/calckey/calckey/releases) and [Changelog](https://codeberg.org/calckey/calckey/src/branch/develop/CHANGELOG.md) for a more complete list of changes. There have been [>4000 commits (laggy link)](https://codeberg.org/calckey/calckey/compare/700a7110f7e34f314b070987aa761c451ec34efc...develop) since we forked Misskey!
## Planned
- Stucture
@ -8,33 +11,25 @@
- Rewrite backend in Rust and [Rocket](https://rocket.rs/)
- Use [Magic RegExP](https://regexp.dev/) for RegEx 🦄
- Function
- Federate with note edits
- User "choices" (recommended users) like Mastodon and Soapbox
- User "choices" (recommended users) and featured hashtags like Mastodon and Soapbox
- Join Reason system like Mastodon/Pleroma
- Option to publicize instance blocks
- Build flag to remove NSFW/AI stuff
- Filter notifications by user
- Exclude self from antenna
- Option to publicize server blocks
- More antenna options
- Groups
- Form
- MFM button
- Personal notes for all accounts
- Fully revamp non-logged-in screen
- Classic mode make instance icon bring up new context menu
- Lookup/details for post/file/instance
- Lookup/details for post/file/server
- [Rat mode?](https://stop.voring.me/notes/933fx97bmd)
## Work in progress
- Weblate project
- Customizable max note length
- Link verification
- Better Messaging UI
- Better API Documentation
- Remote follow button
- Admin custom CSS
- Add back time machine (jump to date)
- Improve accesibility
- Timeline filters
- Events
- Fully revamp non-logged-in screen
## Implemented
@ -44,7 +39,7 @@
- Upgrade packages with security vunrabilities
- Saner defaults
- Fediverse account migration
- Recommended instances timeline
- Recommended servers timeline
- OCR image captioning
- Improve mobile UX
- Swipe through pages on mobile
@ -72,10 +67,9 @@
- Better welcome screen (not logged in)
- vue-plyr as video/audio player
- Ability to turn off "Connection lost" message
- Raw instance info only for moderators
- Raw server info only for moderators
- New spinner animation
- Spinner instead of "Loading..."
- SearchX instead of Google
- Always signToActivityPubGet
- Spacing on group items
- Quotes have solid border
@ -99,7 +93,7 @@
- Obliteration of Ai-chan
- Switch to [Calckey.js](https://codeberg.org/calckey/calckey.js)
- Woozy mode 🥴
- Improve blocking instances
- Improve blocking servers
- Release notes
- New post style
- Admins set default reaction emoji
@ -110,19 +104,27 @@
- More antenna options
- New dashboard
- Backfill follower counts
- Improved emoji licensing
- This feature was ported from Misskey.
- https://github.com/misskey-dev/misskey/commit/8ae9d2eaa8b0842671558370f787902e94b7f5a3: enhance: カスタム絵文字にライセンス情報を付与できるように
- https://github.com/misskey-dev/misskey/commit/ed51209172441927d24339f0759a5badbee3c9b6: 絵文字のライセンスを表示できるように
- Compile time compression
- Sonic search
- Popular color schemes, including Nord, Gruvbox, and Catppuccin
- Non-nyaify cat mode
- Keyboard accesibility
- Post imports from other Calckey/Misskey/Mastodon/Pleroma/Akkoma servers
- Improve Classic mode
- Proper Helm/Kubernetes config
- Multiple boost visibilities
- Improve system emails
- Mod mail
- Focus trapping and button labels
- Meilisearch with filters
- Post editing
- Display remaining time on rate-limits
- Proper 2FA input dialog
- Let moderators see moderation nodes
- Non-mangled unicode emojis
- Skin tone selection support
## Implemented (remote)
- MissV: [fix Misskey Forkbomb](https://code.vtopia.live/Vtopia/MissV/commit/40b23c070bd4adbb3188c73546c6c625138fb3c1)
- [Make showing ads optional](https://github.com/misskey-dev/misskey/pull/8996)
- [Tapping avatar in mobile opens account modal](https://github.com/misskey-dev/misskey/pull/9056)

File diff suppressed because it is too large Load Diff

View File

@ -62,7 +62,7 @@ representative at an online or offline event.
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
@thatonecalculator on Codeberg,
`@thatonecalculator@stop.voring.me` or `@t1c@i.calckey.cloud` on the Fediverse,
`@kainoa@calckey.social` on the Fediverse,
or kainoa@t1c.dev via email.
All complaints will be reviewed and investigated promptly and fairly.

View File

@ -1,9 +1,19 @@
## Install dev and compilation dependencies, build files
FROM node:19-alpine as build
FROM alpine:3.18 as build
WORKDIR /calckey
# Install compilation dependencies
RUN apk add --no-cache --no-progress git alpine-sdk python3 rust cargo vips
RUN apk add --no-cache --no-progress git alpine-sdk python3 nodejs-current npm rust cargo vips
# Copy only the cargo dependency-related files first, to cache efficiently
COPY packages/backend/native-utils/Cargo.toml packages/backend/native-utils/Cargo.toml
COPY packages/backend/native-utils/Cargo.lock packages/backend/native-utils/Cargo.lock
COPY packages/backend/native-utils/src/lib.rs packages/backend/native-utils/src/
COPY packages/backend/native-utils/migration/Cargo.toml packages/backend/native-utils/migration/Cargo.toml
COPY packages/backend/native-utils/migration/src/lib.rs packages/backend/native-utils/migration/src/
# Install cargo dependencies
RUN cargo fetch --locked --manifest-path /calckey/packages/backend/native-utils/Cargo.toml
# Copy only the dependency-related files first, to cache efficiently
COPY package.json pnpm*.yaml ./
@ -15,27 +25,31 @@ COPY packages/backend/native-utils/package.json packages/backend/native-utils/pa
COPY packages/backend/native-utils/npm/linux-x64-musl/package.json packages/backend/native-utils/npm/linux-x64-musl/package.json
COPY packages/backend/native-utils/npm/linux-arm64-musl/package.json packages/backend/native-utils/npm/linux-arm64-musl/package.json
# Configure corepack and pnpm
RUN corepack enable
RUN corepack prepare pnpm@latest --activate
# Configure corepack and pnpm, and install dev mode dependencies for compilation
RUN corepack enable && corepack prepare pnpm@latest --activate && pnpm i --frozen-lockfile
# Install dev mode dependencies for compilation
RUN pnpm i --frozen-lockfile
# Copy in the rest of the native-utils rust files
COPY packages/backend/native-utils/.cargo packages/backend/native-utils/.cargo
COPY packages/backend/native-utils/build.rs packages/backend/native-utils/
COPY packages/backend/native-utils/src packages/backend/native-utils/src/
COPY packages/backend/native-utils/migration/src packages/backend/native-utils/migration/src/
# Copy in the rest of the files, to compile from TS to JS
# Compile native-utils
RUN pnpm run --filter native-utils build
# Copy in the rest of the files to compile
COPY . ./
RUN pnpm run build
RUN env NODE_ENV=production sh -c "pnpm run --filter '!native-utils' build && pnpm run gulp"
# Trim down the dependencies to only the prod deps
# Trim down the dependencies to only those for production
RUN pnpm i --prod --frozen-lockfile
## Runtime container
FROM node:19-alpine
FROM alpine:3.18
WORKDIR /calckey
# Install runtime dependencies
RUN apk add --no-cache --no-progress tini ffmpeg vips-dev
RUN apk add --no-cache --no-progress tini ffmpeg vips-dev zip unzip nodejs-current
COPY . ./
@ -51,8 +65,9 @@ COPY --from=build /calckey/built /calckey/built
COPY --from=build /calckey/packages/backend/built /calckey/packages/backend/built
COPY --from=build /calckey/packages/backend/assets/instance.css /calckey/packages/backend/assets/instance.css
COPY --from=build /calckey/packages/backend/native-utils/built /calckey/packages/backend/native-utils/built
COPY --from=build /calckey/packages/backend/native-utils/target /calckey/packages/backend/native-utils/target
RUN corepack enable
RUN corepack enable && corepack prepare pnpm@latest --activate
ENV NODE_ENV=production
VOLUME "/calckey/files"
ENTRYPOINT [ "/sbin/tini", "--" ]
CMD [ "pnpm", "run", "migrateandstart" ]

148
README.md
View File

@ -1,12 +1,13 @@
<div align="center">
<a href="https://i.calckey.cloud/">
<a href="https://calckey.org/">
<img src="./title_float.svg" alt="Calckey logo" style="border-radius:50%" width="400"/>
</a>
**🌎 **[Calckey](https://i.calckey.cloud/)** is an open source, decentralized social media platform that's free forever! 🚀**
**🌎 **[Calckey](https://calckey.org/)** is an open source, decentralized social media platform that's free forever! 🚀**
[![no github badge](https://nogithub.codeberg.page/badge.svg)](https://nogithub.codeberg.page/)
[![status badge](https://ci.codeberg.org/api/badges/calckey/calckey/status.svg)](https://ci.codeberg.org/calckey/calckey)
[![opencollective badge](https://opencollective.com/calckey/tiers/badge.svg)](https://opencollective.com/Calckey)
[![liberapay badge](https://img.shields.io/liberapay/receives/ThatOneCalculator?logo=liberapay)](https://liberapay.com/ThatOneCalculator)
[![translate-badge](https://hosted.weblate.org/widgets/calckey/-/svg-badge.svg)](https://hosted.weblate.org/engage/calckey/)
[![docker badge](https://img.shields.io/docker/pulls/thatonecalculator/calckey?logo=docker)](https://hub.docker.com/r/thatonecalculator/calckey)
@ -22,21 +23,23 @@
# ✨ About Calckey
- Calckey is based off of Misskey, a powerful microblogging server on ActivityPub with features such as emoji reactions, a customizable web UI, rich chatting, and much more!
- Calckey adds many quality of life changes and bug fixes for users and instance admins alike.
- Calckey adds many quality of life changes and bug fixes for users and server admins alike.
- Read **[this document](./CALCKEY.md)** all for current and future differences.
- Notable differences:
- Improved UI/UX (especially on mobile)
- Post editing
- Content importing
- Improved notifications
- Fediverse account migration
- Improved instance security
- Improved server security
- Improved accessibility
- Recommended Instances timeline
- Improved threads
- Recommended Servers timeline
- OCR image captioning
- New and improved Groups
- Better intro tutorial
- Compatibility with Mastodon clients/apps
- Backfill user information
- Sonic search
- Advanced search
- Many more user and admin settings
- [So much more!](./CALCKEY.md)
@ -46,16 +49,26 @@
# 🥂 Links
- 💸 Liberapay: <https://liberapay.com/ThatOneCalculator>
### Want to get involved? Great!
- If you have the means to, [donations](https://opencollective.com/Calckey) are a great way to keep us going.
- If you know how to program in TypeScript, Vue, or Rust, read the [contributing](./CONTRIBUTING.md) document.
- If you know a non-English language, translating Calckey on [Weblate](https://hosted.weblate.org/engage/calckey/) help bring Calckey to more people. No technical experience needed!
- Want to write/report about us, have any professional inquiries, or just have questions to ask? Contact us [here!](https://calckey.org/contact/)
### All links
- 🌐 Homepage: <https://calckey.org>
- 💸 Donations:
- OpenCollective: <https://opencollective.com/Calckey>
- Liberapay: <https://liberapay.com/ThatOneCalculator>
- Donate publicly to get your name on the Patron list!
- 🚢 Flagship instance: <https://calckey.social>
- 📣 Official account: <https://i.calckey.cloud/@calckey>
- 🚢 Flagship server: <https://calckey.social>
- 💁 Matrix support room: <https://matrix.to/#/#calckey:matrix.fedibird.com>
- 📜 Instance list: <https://calckey.fediverse.observer/list>
- 📖 JoinFediverse Wiki: <https://joinfediverse.wiki/What_is_Calckey%3F>
- 🐋 Docker Hub: <https://hub.docker.com/r/thatonecalculator/calckey>
- 📣 Official account: <https://i.calckey.cloud/@calckey>
- 📜 Server list: <https://calckey.org/join>
- ✍️ Weblate: <https://hosted.weblate.org/engage/calckey/>
- 📦 Yunohost: <https://github.com/YunoHost-Apps/calckey_ynh>
- ️️📬 Contact: <https://calckey.org/contact/>
# 🌠 Getting started
@ -67,31 +80,34 @@ If you have access to a server that supports one of the sources below, I recomme
[![Install on Ubuntu](https://pool.jortage.com/voringme/misskey/3b62a443-1b44-45cf-8f9e-f1c588f803ed.png)](https://codeberg.org/calckey/ubuntu-bash-install)  [![Install on the Arch User Repository](https://pool.jortage.com/voringme/misskey/ba2a5c07-f078-43f1-8483-2e01acca9c40.png)](https://aur.archlinux.org/packages/calckey)  [![Install Calckey with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=calckey)
### 🐋 Docker
## 🛳️ Containerization
[How to run Calckey with Docker](./docs/docker.md).
- [🐳 How to run Calckey with Docker](https://codeberg.org/calckey/calckey/src/branch/develop/docs/docker.md)
- [🛞 How to run Calckey with Kubernetes/Helm](https://codeberg.org/calckey/calckey/src/branch/develop/docs/kubernetes.md)
## 🧑‍💻 Dependencies
- 🐢 At least [NodeJS](https://nodejs.org/en/) v18.12.1 (v19 recommended)
- 🐢 At least [NodeJS](https://nodejs.org/en/) v18.16.0 (v20 recommended)
- Install with [nvm](https://github.com/nvm-sh/nvm)
- 🐘 At least [PostgreSQL](https://www.postgresql.org/) v12
- 🍱 At least [Redis](https://redis.io/) v6 (v7 recommend)
- 🐘 At least [PostgreSQL](https://www.postgresql.org/) v12 (v14 recommended)
- 🍱 At least [Redis](https://redis.io/) v6 (v7 recommended)
- Web Proxy (one of the following)
- 🍀 Nginx (recommended)
- 🦦 Caddy
- 🪶 Apache
- ⚡ [libvips](https://www.libvips.org/)
### 😗 Optional dependencies
- [FFmpeg](https://ffmpeg.org/) for video transcoding
- Full text search (choost one of the following)
- 🦔 [Sonic](https://crates.io/crates/sonic-server) (highly recommended!)
- Full text search (one of the following)
- 🦔 [Sonic](https://crates.io/crates/sonic-server)
- [MeiliSearch](https://www.meilisearch.com/)
- [ElasticSearch](https://www.elastic.co/elasticsearch/)
- Management (choose one of the following)
- 🛰️ [pm2](https://pm2.io/)
- 🐳 [Docker](https://docker.com)
- Service manager (systemd, openrc, etc)
### 🏗️ Build dependencies
- 🦀 [Rust toolchain](https://www.rust-lang.org/)
- 🦀 At least [Rust](https://www.rust-lang.org/) v1.68.0
- 🦬 C/C++ compiler & build tools
- `build-essential` on Debian/Ubuntu Linux
- `base-devel` on Arch Linux
@ -100,11 +116,12 @@ If you have access to a server that supports one of the sources below, I recomme
## 👀 Get folder ready
```sh
git clone --depth 1 https://codeberg.org/calckey/calckey.git
git clone https://codeberg.org/calckey/calckey.git
cd calckey/
```
By default, you're on the development branch. Run `git checkout beta` or `git checkout main` to switch to the Beta/Main branches.
> **Note**
> By default, you're on the develop branch. Run `git checkout main` or `git checkout beta` to switch to the Main/Beta branches.
## 📩 Install dependencies
@ -116,9 +133,27 @@ corepack prepare pnpm@latest --activate
pnpm i # --no-optional
```
### pm2
To install pm2 run:
```
npm i -g pm2
pm2 install pm2-logrotate
```
> **Note**
> [`pm2-logrotate`](https://github.com/keymetrics/pm2-logrotate/blob/master/README.md) ensures that log files don't infinitely gather size, as Calckey produces a lot of logs.
## 🐘 Create database
Assuming you set up PostgreSQL correctly, all you have to run is:
In PostgreSQL (`psql`), run the following command:
```sql
CREATE DATABASE calckey WITH encoding = 'UTF8';
```
or run the following from the command line:
```sh
psql postgres -c "create database calckey with encoding = 'UTF8';"
@ -126,25 +161,41 @@ psql postgres -c "create database calckey with encoding = 'UTF8';"
In Calckey's directory, fill out the `db` section of `.config/default.yml` with the correct information, where the `db` key is `calckey`.
## 🦔 Set up search
## 🔎 Set up search
### 🦔 Sonic
Sonic is better suited for self hosters with smaller deployments. It uses almost no resources, barely any any disk space, and is relatively fast.
Follow sonic's [installation guide](https://github.com/valeriansaliou/sonic#installation)
If you use IPv4: in Sonic's directory, edit the `config.cfg` file to change `inet` to `"0.0.0.0:1491"`.
> **Note**
> If you use IPv4: in Sonic's directory, edit the `config.cfg` file to change `inet` to `"0.0.0.0:1491"`.
In Calckey's directory, fill out the `sonic` section of `.config/default.yml` with the correct information.
### Meilisearch
Meilisearch is better suited for larger deployments. It's faster but uses far more resources and disk space.
Follow Meilisearch's [quick start guide](https://www.meilisearch.com/docs/learn/getting_started/quick_start)
In Calckey's directory, fill out the `meilisearch` section of `.config/default.yml` with the correct information.
### ElasticSearch
Please don't use ElasticSearch unless you already have an ElasticSearch setup and want to continue using it for Calckey. ElasticSearch is slow, heavy, and offers very few benefits over Sonic/Meilisearch.
## 💅 Customize
- To add custom CSS for all users, edit `./custom/assets/instance.css`.
- To add static assets (such as images for the splash screen), place them in the `./custom/assets/` directory. They'll then be available on `https://yourinstance.tld/static-assets/filename.ext`.
- To add static assets (such as images for the splash screen), place them in the `./custom/assets/` directory. They'll then be available on `https://yourserver.tld/static-assets/filename.ext`.
- To add custom locales, place them in the `./custom/locales/` directory. If you name your custom locale the same as an existing locale, it will overwrite it. If you give it a unique name, it will be added to the list. Also make sure that the first part of the filename matches the locale you're basing it on. (Example: `en-FOO.yml`)
- To add custom error images, place them in the `./custom/assets/badges` directory, replacing the files already there.
- To add custom sounds, place only mp3 files in the `./custom/assets/sounds` directory.
- To update custom assets without rebuilding, just run `pnpm run gulp`.
## 🧑‍🔬 Configuring a new instance
## 🧑‍🔬 Configuring a new server
- Run `cp .config/example.yml .config/default.yml`
- Edit `.config/default.yml`, making sure to fill out required fields.
@ -152,17 +203,36 @@ In Calckey's directory, fill out the `sonic` section of `.config/default.yml` wi
## 🚚 Migrating from Misskey to Calckey
For migrating from Misskey v13, Misskey v12, and Foundkey, read [this document](./docs/migrate.md).
For migrating from Misskey v13, Misskey v12, and Foundkey, read [this document](https://codeberg.org/calckey/calckey/src/branch/develop/docs/migrate.md).
## 🍀 NGINX
## 🌐 Web proxy
### 🍀 Nginx (recommended)
- Run `sudo cp ./calckey.nginx.conf /etc/nginx/sites-available/ && cd /etc/nginx/sites-available/`
- Edit `calckey.nginx.conf` to reflect your instance properly
- Run `sudo cp ./calckey.nginx.conf ../sites-enabled/`
- Edit `calckey.nginx.conf` to reflect your server properly
- Run `sudo ln -s ./calckey.nginx.conf ../sites-enabled/calckey.nginx.conf`
- Run `sudo nginx -t` to validate that the config is valid, then restart the NGINX service.
</details>
### 🦦 Caddy
- Add the following block to your `Caddyfile`, replacing `example.tld` with your own domain:
```caddy
example.tld {
reverse_proxy http://127.0.0.1:3000
}
```
- Reload your caddy configuration
### 🪶 Apache
> **Warning**
> Apache has some known problems with Calckey. Only use it if you have to.
- Run `sudo cp ./calckey.apache.conf /etc/apache2/sites-available/ && cd /etc/apache2/sites-available/`
- Edit `calckey.apache.conf` to reflect your server properly
- Run `sudo a2ensite calckey.apache` to enable the site
- Run `sudo service apache2 restart` to reload apache2 configuration
## 🚀 Build and launch!
### 🐢 NodeJS + pm2
@ -189,4 +259,4 @@ pm2 start "NODE_ENV=production pnpm run start" --name Calckey
- Go back to Overview > click the clipboard icon next to the ID
- Run `psql -d calckey` (or whatever the database name is)
- Run `UPDATE "user" SET "isAdmin" = true WHERE id='999999';` (replace `999999` with the copied ID)
- Have the new admin log out and log back in
- Restart your Calckey server

View File

@ -1,12 +1,12 @@
import { defineConfig } from 'cypress'
import { defineConfig } from "cypress";
export default defineConfig({
e2e: {
// We've imported your old cypress plugins here.
// You may want to clean this up later by importing these.
setupNodeEvents(on, config) {
return require('./cypress/plugins/index.js')(on, config)
return require("./cypress/plugins/index.js")(on, config);
},
baseUrl: 'http://localhost:61812',
baseUrl: "http://localhost:61812",
},
})
});

View File

@ -1,4 +1,4 @@
describe('Before setup instance', () => {
describe("Before setup instance", () => {
beforeEach(() => {
cy.resetState();
});
@ -9,31 +9,31 @@ describe('Before setup instance', () => {
cy.wait(1000);
});
it('successfully loads', () => {
cy.visit('/');
it("successfully loads", () => {
cy.visit("/");
});
it('setup instance', () => {
cy.visit('/');
it("setup instance", () => {
cy.visit("/");
cy.intercept('POST', '/api/admin/accounts/create').as('signup');
cy.intercept("POST", "/api/admin/accounts/create").as("signup");
cy.get('[data-cy-admin-username] input').type('admin');
cy.get('[data-cy-admin-password] input').type('admin1234');
cy.get('[data-cy-admin-ok]').click();
cy.get("[data-cy-admin-username] input").type("admin");
cy.get("[data-cy-admin-password] input").type("admin1234");
cy.get("[data-cy-admin-ok]").click();
// なぜか動かない
//cy.wait('@signup').should('have.property', 'response.statusCode');
cy.wait('@signup');
cy.wait("@signup");
});
});
describe('After setup instance', () => {
describe("After setup instance", () => {
beforeEach(() => {
cy.resetState();
// インスタンス初期セットアップ
cy.registerUser('admin', 'pass', true);
cy.registerUser("admin", "pass", true);
});
afterEach(() => {
@ -42,34 +42,34 @@ describe('After setup instance', () => {
cy.wait(1000);
});
it('successfully loads', () => {
cy.visit('/');
it("successfully loads", () => {
cy.visit("/");
});
it('signup', () => {
cy.visit('/');
it("signup", () => {
cy.visit("/");
cy.intercept('POST', '/api/signup').as('signup');
cy.intercept("POST", "/api/signup").as("signup");
cy.get('[data-cy-signup]').click();
cy.get('[data-cy-signup-username] input').type('alice');
cy.get('[data-cy-signup-password] input').type('alice1234');
cy.get('[data-cy-signup-password-retype] input').type('alice1234');
cy.get('[data-cy-signup-submit]').click();
cy.get("[data-cy-signup]").click();
cy.get("[data-cy-signup-username] input").type("alice");
cy.get("[data-cy-signup-password] input").type("alice1234");
cy.get("[data-cy-signup-password-retype] input").type("alice1234");
cy.get("[data-cy-signup-submit]").click();
cy.wait('@signup');
cy.wait("@signup");
});
});
describe('After user signup', () => {
describe("After user signup", () => {
beforeEach(() => {
cy.resetState();
// インスタンス初期セットアップ
cy.registerUser('admin', 'pass', true);
cy.registerUser("admin", "pass", true);
// ユーザー作成
cy.registerUser('alice', 'alice1234');
cy.registerUser("alice", "alice1234");
});
afterEach(() => {
@ -78,51 +78,53 @@ describe('After user signup', () => {
cy.wait(1000);
});
it('successfully loads', () => {
cy.visit('/');
it("successfully loads", () => {
cy.visit("/");
});
it('signin', () => {
cy.visit('/');
it("signin", () => {
cy.visit("/");
cy.intercept('POST', '/api/signin').as('signin');
cy.intercept("POST", "/api/signin").as("signin");
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-username] input').type('alice');
cy.get("[data-cy-signin]").click();
cy.get("[data-cy-signin-username] input").type("alice");
// Enterキーでサインインできるかの確認も兼ねる
cy.get('[data-cy-signin-password] input').type('alice1234{enter}');
cy.get("[data-cy-signin-password] input").type("alice1234{enter}");
cy.wait('@signin');
cy.wait("@signin");
});
it('suspend', function() {
cy.request('POST', '/api/admin/suspend-user', {
it("suspend", function () {
cy.request("POST", "/api/admin/suspend-user", {
i: this.admin.token,
userId: this.alice.id,
});
cy.visit('/');
cy.visit("/");
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-username] input').type('alice');
cy.get('[data-cy-signin-password] input').type('alice1234{enter}');
cy.get("[data-cy-signin]").click();
cy.get("[data-cy-signin-username] input").type("alice");
cy.get("[data-cy-signin-password] input").type("alice1234{enter}");
// TODO: cypressにブラウザの言語指定できる機能が実装され次第英語のみテストするようにする
cy.contains(/アカウントが凍結されています|This account has been suspended due to/gi);
cy.contains(
/アカウントが凍結されています|This account has been suspended due to/gi,
);
});
});
describe('After user singed in', () => {
describe("After user singed in", () => {
beforeEach(() => {
cy.resetState();
// インスタンス初期セットアップ
cy.registerUser('admin', 'pass', true);
cy.registerUser("admin", "pass", true);
// ユーザー作成
cy.registerUser('alice', 'alice1234');
cy.registerUser("alice", "alice1234");
cy.login('alice', 'alice1234');
cy.login("alice", "alice1234");
});
afterEach(() => {
@ -131,16 +133,16 @@ describe('After user singed in', () => {
cy.wait(1000);
});
it('successfully loads', () => {
cy.get('[data-cy-open-post-form]').should('be.visible');
it("successfully loads", () => {
cy.get("[data-cy-open-post-form]").should("be.visible");
});
it('note', () => {
cy.get('[data-cy-open-post-form]').click();
cy.get('[data-cy-post-form-text]').type('Hello, Misskey!');
cy.get('[data-cy-open-post-form-submit]').click();
it("note", () => {
cy.get("[data-cy-open-post-form]").click();
cy.get("[data-cy-post-form-text]").type("Hello, Misskey!");
cy.get("[data-cy-open-post-form-submit]").click();
cy.contains('Hello, Misskey!');
cy.contains("Hello, Misskey!");
});
});

View File

@ -1,14 +1,14 @@
describe('After user signed in', () => {
describe("After user signed in", () => {
beforeEach(() => {
cy.resetState();
cy.viewport('macbook-16');
cy.viewport("macbook-16");
// インスタンス初期セットアップ
cy.registerUser('admin', 'pass', true);
cy.registerUser("admin", "pass", true);
// ユーザー作成
cy.registerUser('alice', 'alice1234');
cy.registerUser("alice", "alice1234");
cy.login('alice', 'alice1234');
cy.login("alice", "alice1234");
});
afterEach(() => {
@ -17,47 +17,47 @@ describe('After user signed in', () => {
cy.wait(1000);
});
it('widget edit toggle is visible', () => {
cy.get('.mk-widget-edit').should('be.visible');
it("widget edit toggle is visible", () => {
cy.get(".mk-widget-edit").should("be.visible");
});
it('widget select should be visible in edit mode', () => {
cy.get('.mk-widget-edit').click();
cy.get('.mk-widget-select').should('be.visible');
it("widget select should be visible in edit mode", () => {
cy.get(".mk-widget-edit").click();
cy.get(".mk-widget-select").should("be.visible");
});
it('first widget should be removed', () => {
cy.get('.mk-widget-edit').click();
cy.get('.customize-container:first-child .remove._button').click();
cy.get('.customize-container').should('have.length', 2);
it("first widget should be removed", () => {
cy.get(".mk-widget-edit").click();
cy.get(".customize-container:first-child .remove._button").click();
cy.get(".customize-container").should("have.length", 2);
});
function buildWidgetTest(widgetName) {
it(`${widgetName} widget should get added`, () => {
cy.get('.mk-widget-edit').click();
cy.get('.mk-widget-select select').select(widgetName, { force: true });
cy.get('.bg._modalBg.transparent').click({ multiple: true, force: true });
cy.get('.mk-widget-add').click({ force: true });
cy.get(`.mkw-${widgetName}`).should('exist');
cy.get(".mk-widget-edit").click();
cy.get(".mk-widget-select select").select(widgetName, { force: true });
cy.get(".bg._modalBg.transparent").click({ multiple: true, force: true });
cy.get(".mk-widget-add").click({ force: true });
cy.get(`.mkw-${widgetName}`).should("exist");
});
}
buildWidgetTest('memo');
buildWidgetTest('notifications');
buildWidgetTest('timeline');
buildWidgetTest('calendar');
buildWidgetTest('rss');
buildWidgetTest('trends');
buildWidgetTest('clock');
buildWidgetTest('activity');
buildWidgetTest('photos');
buildWidgetTest('digitalClock');
buildWidgetTest('federation');
buildWidgetTest('postForm');
buildWidgetTest('slideshow');
buildWidgetTest('serverMetric');
buildWidgetTest('onlineUsers');
buildWidgetTest('jobQueue');
buildWidgetTest('button');
buildWidgetTest('aiscript');
buildWidgetTest("memo");
buildWidgetTest("notifications");
buildWidgetTest("timeline");
buildWidgetTest("calendar");
buildWidgetTest("rss");
buildWidgetTest("trends");
buildWidgetTest("clock");
buildWidgetTest("activity");
buildWidgetTest("photos");
buildWidgetTest("digitalClock");
buildWidgetTest("federation");
buildWidgetTest("postForm");
buildWidgetTest("slideshow");
buildWidgetTest("serverMetric");
buildWidgetTest("onlineUsers");
buildWidgetTest("jobQueue");
buildWidgetTest("button");
buildWidgetTest("aiscript");
});

View File

@ -18,4 +18,4 @@
module.exports = (on, config) => {
// `on` is used to hook into various events Cypress emits
// `config` is the resolved Cypress config
}
};

View File

@ -24,32 +24,34 @@
// -- This will overwrite an existing command --
// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... })
Cypress.Commands.add('resetState', () => {
cy.window(win => {
win.indexedDB.deleteDatabase('keyval-store');
Cypress.Commands.add("resetState", () => {
cy.window((win) => {
win.indexedDB.deleteDatabase("keyval-store");
});
cy.request('POST', '/api/reset-db').as('reset');
cy.get('@reset').its('status').should('equal', 204);
cy.request("POST", "/api/reset-db").as("reset");
cy.get("@reset").its("status").should("equal", 204);
cy.reload(true);
});
Cypress.Commands.add('registerUser', (username, password, isAdmin = false) => {
const route = isAdmin ? '/api/admin/accounts/create' : '/api/signup';
Cypress.Commands.add("registerUser", (username, password, isAdmin = false) => {
const route = isAdmin ? "/api/admin/accounts/create" : "/api/signup";
cy.request('POST', route, {
cy.request("POST", route, {
username: username,
password: password,
}).its('body').as(username);
})
.its("body")
.as(username);
});
Cypress.Commands.add('login', (username, password) => {
cy.visit('/');
Cypress.Commands.add("login", (username, password) => {
cy.visit("/");
cy.intercept('POST', '/api/signin').as('signin');
cy.intercept("POST", "/api/signin").as("signin");
cy.get('[data-cy-signin]').click();
cy.get('[data-cy-signin-username] input').type(username);
cy.get('[data-cy-signin-password] input').type(`${password}{enter}`);
cy.get("[data-cy-signin]").click();
cy.get("[data-cy-signin-username] input").type(username);
cy.get("[data-cy-signin-password] input").type(`${password}{enter}`);
cy.wait('@signin').as('signedIn');
cy.wait("@signin").as("signedIn");
});

View File

@ -14,19 +14,21 @@
// ***********************************************************
// Import commands.js using ES2015 syntax:
import './commands'
import "./commands";
// Alternatively you can use CommonJS syntax:
// require('./commands')
Cypress.on('uncaught:exception', (err, runnable) => {
if ([
Cypress.on("uncaught:exception", (err, runnable) => {
if (
[
// Chrome
'ResizeObserver loop limit exceeded',
"ResizeObserver loop limit exceeded",
// Firefox
'ResizeObserver loop completed with undelivered notifications',
].some(msg => err.message.includes(msg))) {
"ResizeObserver loop completed with undelivered notifications",
].some((msg) => err.message.includes(msg))
) {
return false;
}
});

View File

@ -8,7 +8,9 @@ services:
depends_on:
- db
- redis
- sonic
### Uncomment one of the following to use a search engine
# - meilisearch
# - sonic
ports:
- "3000:3000"
networks:
@ -40,14 +42,30 @@ services:
volumes:
- ./db:/var/lib/postgresql/data
sonic:
restart: unless-stopped
image: docker.io/valeriansaliou/sonic:v1.4.0
networks:
- calcnet
volumes:
- ./sonic:/var/lib/sonic/store
- ./sonic/config.cfg:/etc/sonic.cfg
### Only one of the below should be used.
### Meilisearch is better overall, but resource-intensive. Sonic is a very light full text search engine.
# meilisearch:
# container_name: meilisearch
# image: getmeili/meilisearch:v1.1.1
# environment:
# - MEILI_ENV=${MEILI_ENV:-development}
# ports:
# - "7700:7700"
# networks:
# - calcnet
# volumes:
# - ./meili_data:/meili_data
# restart: unless-stopped
# sonic:
# restart: unless-stopped
# image: docker.io/valeriansaliou/sonic:v1.4.0
# networks:
# - calcnet
# volumes:
# - ./sonic:/var/lib/sonic/store
# - ./sonic/config.cfg:/etc/sonic.cfg
networks:
calcnet:

5
docs/api-doc.md Normal file
View File

@ -0,0 +1,5 @@
# API Documentation
You can find interactive API documentation at any Calckey instance. https://calckey.social/api-doc
You can also find auto-generated documentation for calckey-js [here](../packages/calckey-js/markdown/calckey-js.md).

108
docs/development.md Normal file
View File

@ -0,0 +1,108 @@
# 🌎 Calckey Developer Docs
## Nix Dev Environment
The Calckey repo comes with a Nix-based shell environment to help make development as easy as possible!
Please note, however, that this environment will not work on Windows outside of a WSL2 environment.
### Prerequisites
- Installed the [Nix Package Manager](https://nixos.org/download.html) (use the comman on their website)
- Installed [direnv](https://direnv.net/docs/installation.html) and added its hook to your shell. (package manager)
Once the repo is cloned to your computer, follow these next few steps inside the Calckey folder:
- Run `direnv allow`. This will build the environment and install all needed tools.
- Run `install-deps`, then `prepare-config`, to install the node dependencies and prepare the needed config files.
- In a second terminal, run `devenv up`. This will spawn a **Redis** server, a **Postgres** server, and the **Calckey** server in dev mode.
- Once you see the Calckey banner printed in your second terminal, run `migrate` in the first.
- Once migrations finish, open http://localhost:3000 in your web browser.
- You should now see the admin user creation screen!
Note: When you want to restart a dev server, all you need to do is run `devenv up`, no other steps are necessary.
# Possible Troubles with the dev enviroment
(this doesn't have to be done under normal conditions, this is for future reference)
### direnv
If you have any trouble with `direnv allow`
Check that the contents of `.envrc` have the same version of nix-direnv that is specified here:
> nix-direnv under -> installation -> using direnv source url
> https://github.com/nix-community/nix-direnv#direnv-source_url
there should be no errors during `direnv allow`
### outdated nix packages
if `install-deps` or any subsequent command doesn't run due to versioning problems
`flake.nix` and `flake.lock` may be outdated
delete `flake.lock`, or better, run `nix flake update --extra-experimental-features flakes --extra-experimental-features nix-command`
after that, run `direnv rebuild`
if there are any errors, you might have to change `flake.nix`
(because the available options can change between versions - consider getting support in [the matrix channel](https://matrix.to/#/#calckey:matrix.fedibird.com))
### after changing a node version
in my case, i had to change the node version from 19, to 18
! before proceeding, make sure to delete all build artifacts!
remove `node_modules` and `built` folders, and maybe `.devenv` and `.direnv` as well
manually, or run `npm cache clean --force` and `pnpm cleanall`
### Windows Subsystem for Linux
if `devenv up` terminates because of wrong folder permissions,
create the file `/etc/wsl.conf` in your distro and add
```shell
[automount]
options = "metadata"
```
this allows `chmod` calls to actually have an effect.
the build scripts DO actually set the permissions, it just needs to work in wsl.
### devenv up
devenv up may take a looong time. (some say this is fake news, maybe it was bad luck in my case)
do not get spooked by this error:
```
> calckey@14.0.0-dev32 start /mnt/.../calckey
> pnpm --filter backend run start
> backend@ start /mnt/.../calckey/packages/backend
> pnpm node ./built/index.js
node:internal/modules/cjs/loader:1078
throw err;
^
Error: Cannot find module '/mnt/.../calckey/packages/backend/built/index.js'
at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)
at Module._load (node:internal/modules/cjs/loader:920:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Node.js v18.16.0
undefined
/mnt/.../calckey/packages/backend:
ERR_PNPM_RECURSIVE_RUN_FIRST_FAIL backend@ start: `pnpm node ./built/index.js`
Exit status 1
ELIFECYCLE Command failed with exit code 1.
```
the script is designed to constantly try to start the server, while the build is still running.
this just means that the build isn't finished yet.
at some point you should see a banner that says "Calckey" in big letters -
then you're good to go and can run `migrate` (in another terminal)!
if you don't see the banner,
and it's for some reason stuck on `Finished 'build' after 917 ms` for a view minutes,
just leave devenv running and open another terminal in the folder
run `migrate` and then `pnpm --filter backend run start` by yourself
the server should start

View File

@ -1,4 +1,4 @@
# 🐳 Running a Calckey instance with Docker
# 🐳 Running a Calckey server with Docker
## Pre-built docker container
[thatonecalculator/calckey](https://hub.docker.com/r/thatonecalculator/calckey)
@ -8,7 +8,7 @@
There is a `docker-compose.yml` in the root of the project that you can use to build the container from source
- .config/docker.env (**db config settings**)
- .config/default.yml (**calckey instance settings**)
- .config/default.yml (**calckey server settings**)
## Configuring
@ -20,7 +20,7 @@ Rename the files:
then edit them according to your environment.
You can configure `docker.env` with anything you like, but you will have to pay attention to the `default.yml` file:
- `url` should be set to the URL you will be hosting the web interface for the instance at.
- `url` should be set to the URL you will be hosting the web interface for the server at.
- `host`, `db`, `user`, `pass` will have to be configured in the `PostgreSQL configuration` section - `host` is the name of the postgres container (eg: *calckey_db_1*), and the others should match your `docker.env`.
- `host`will need to be configured in the *Redis configuration* section - it is the name of the redis container (eg: *calckey_redis_1*)
- `auth` will need to be configured in the *Sonic* section - cannot be the default `SecretPassword`
@ -36,7 +36,7 @@ Copy `docker-compose.yml` and the `config/` to a directory, then run the **docke
NOTE: This will take some time to come fully online, even after download and extracting the container images, and it may emit some error messages before completing successfully. Specifically, the `db` container needs to initialize and so isn't available to the `web` container right away. Only once the `db` container comes online does the `web` container start building and initializing the calckey tables.
Once the instance is up you can use a web browser to access the web interface at `http://serverip:3000` (where `serverip` is the IP of the server you are running the calckey instance on).
Once the server is up you can use a web browser to access the web interface at `http://serverip:3000` (where `serverip` is the IP of the server you are running the calckey server on).
## Docker for development

View File

@ -1,27 +1,44 @@
# 🚚 Migrating from Misskey to Calckey
The following procedure may not work depending on your environment and version of Misskey.
**Make sure you**
- **stopped all master and worker processes of Misskey.**
- **have backups of the database before performing any commands.**
## Misskey v13 and above
Tested with Misskey v13.11.3.
If your Misskey v13 is older, we recommend updating your Misskey to v13.11.3.
```sh
wget -O mkv13.patch https://codeberg.org/calckey/calckey/raw/branch/develop/docs/mkv13.patch
git apply mkv13.patch
wget -O mkv13_restore.patch https://codeberg.org/calckey/calckey/raw/branch/develop/docs/mkv13_restore.patch
git apply mkv13.patch mkv13_restore.patch
cd packages/backend
LINE_NUM="$(npx typeorm migration:show -d ormconfig.js | grep -n activeEmailValidation1657346559800 | cut -d ':' -f 1)"
NUM_MIGRATIONS="$(npx typeorm migration:show -d ormconfig.js | tail -n+"$LINE_NUM" | grep '\[X\]' | nl)"
LINE_NUM="$(pnpm typeorm migration:show -d ormconfig.js | grep -n activeEmailValidation1657346559800 | cut -d ':' -f 1)"
NUM_MIGRATIONS="$(pnpm typeorm migration:show -d ormconfig.js | tail -n+"$LINE_NUM" | grep '\[X\]' | wc -l)"
for i in $(seq 1 $NUM_MIGRAIONS); do
npx typeorm migration:revert -d ormconfig.js
done
for i in $(seq 1 $NUM_MIGRATIONS); do pnpm typeorm migration:revert -d ormconfig.js; done
cd ../../
git remote set-url origin https://codeberg.org/calckey/calckey.git
git fetch
git checkout main # or beta or develop
git fetch origin
git stash push
rm -rf fluent-emojis misskey-assets
git switch main # or beta or develop
git pull --ff
wget -O renote_muting.patch https://codeberg.org/calckey/calckey/raw/branch/develop/docs/renote_muting.patch
git apply renote_muting.patch
NODE_ENV=production pnpm run migrate
# build using prefered method
pnpm install
NODE_ENV=production pnpm run build
pnpm run migrate
git stash push
```
Depending on the version you're migrating from, you may have to open Postgres with `psql -d your_database` and run the following commands:
@ -44,6 +61,10 @@ ALTER TABLE "instance" ADD COLUMN "lastCommunicatedAt" date;
then quit with `\q`, and restart Calckey.
Note: Ignore errors of `column "xxx" of relation "xxx" already exists`.
If no other errors happened, your Calckey is ready to launch!
## Misskey v12.119 and before
```sh
@ -79,4 +100,4 @@ NODE_ENV=production pnpm run migrate
## Reverse
You ***cannot*** migrate back to Misskey from Calckey due to re-hashing passwords on signin with argon2. You can migrate from to Calckey to Foundkey, though.
You ***cannot*** migrate back to Misskey from Calckey due to re-hashing passwords on signin with argon2. You can migrate from Calckey to Foundkey, though.

127
docs/mkv13_restore.patch Normal file
View File

@ -0,0 +1,127 @@
diff --git a/packages/backend/migration/1680491187535-cleanup.js b/packages/backend/migration/1680491187535-cleanup.js
index 1e609ca06..0e6accf3e 100644
--- a/packages/backend/migration/1680491187535-cleanup.js
+++ b/packages/backend/migration/1680491187535-cleanup.js
@@ -1,10 +1,40 @@
export class cleanup1680491187535 {
- name = 'cleanup1680491187535'
+ name = "cleanup1680491187535";
- async up(queryRunner) {
- await queryRunner.query(`DROP TABLE "antenna_note" `);
- }
+ async up(queryRunner) {
+ await queryRunner.query(`DROP TABLE "antenna_note" `);
+ }
- async down(queryRunner) {
- }
+ async down(queryRunner) {
+ await queryRunner.query(
+ `CREATE TABLE antenna_note ( id character varying(32) NOT NULL, "noteId" character varying(32) NOT NULL, "antennaId" character varying(32) NOT NULL, read boolean DEFAULT false NOT NULL)`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN antenna_note."noteId" IS 'The note ID.'`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN antenna_note."antennaId" IS 'The antenna ID.'`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY antenna_note ADD CONSTRAINT "PK_fb28d94d0989a3872df19fd6ef8" PRIMARY KEY (id)`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_0d775946662d2575dfd2068a5f" ON antenna_note USING btree ("antennaId")`,
+ );
+ await queryRunner.query(
+ `CREATE UNIQUE INDEX "IDX_335a0bf3f904406f9ef3dd51c2" ON antenna_note USING btree ("noteId", "antennaId")`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_9937ea48d7ae97ffb4f3f063a4" ON antenna_note USING btree (read)`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_bd0397be22147e17210940e125" ON antenna_note USING btree ("noteId")`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY antenna_note ADD CONSTRAINT "FK_0d775946662d2575dfd2068a5f5" FOREIGN KEY ("antennaId") REFERENCES antenna(id) ON DELETE CASCADE`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY antenna_note ADD CONSTRAINT "FK_bd0397be22147e17210940e125b" FOREIGN KEY ("noteId") REFERENCES note(id) ON DELETE CASCADE`,
+ );
+ }
}
diff --git a/packages/backend/migration/1680582195041-cleanup.js b/packages/backend/migration/1680582195041-cleanup.js
index c587e456a..a91d6ff3c 100644
--- a/packages/backend/migration/1680582195041-cleanup.js
+++ b/packages/backend/migration/1680582195041-cleanup.js
@@ -1,11 +1,64 @@
export class cleanup1680582195041 {
- name = 'cleanup1680582195041'
+ name = "cleanup1680582195041";
- async up(queryRunner) {
- await queryRunner.query(`DROP TABLE "notification" `);
- }
+ async up(queryRunner) {
+ await queryRunner.query(`DROP TABLE "notification"`);
+ }
- async down(queryRunner) {
-
- }
+ async down(queryRunner) {
+ await queryRunner.query(
+ `CREATE TABLE notification ( id character varying(32) NOT NULL, "createdAt" timestamp with time zone NOT NULL, "notifieeId" character varying(32) NOT NULL, "notifierId" character varying(32), "isRead" boolean DEFAULT false NOT NULL, "noteId" character varying(32), reaction character varying(128), choice integer, "followRequestId" character varying(32), type notification_type_enum NOT NULL, "customBody" character varying(2048), "customHeader" character varying(256), "customIcon" character varying(1024), "appAccessTokenId" character varying(32), achievement character varying(128))`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN notification."createdAt" IS 'The created date of the Notification.'`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN notification."notifieeId" IS 'The ID of recipient user of the Notification.'`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN notification."notifierId" IS 'The ID of sender user of the Notification.'`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN notification."isRead" IS 'Whether the Notification is read.'`,
+ );
+ await queryRunner.query(
+ `COMMENT ON COLUMN notification.type IS 'The type of the Notification.'`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "PK_705b6c7cdf9b2c2ff7ac7872cb7" PRIMARY KEY (id)`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_080ab397c379af09b9d2169e5b" ON notification USING btree ("isRead")`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_33f33cc8ef29d805a97ff4628b" ON notification USING btree (type)`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_3b4e96eec8d36a8bbb9d02aa71" ON notification USING btree ("notifierId")`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_3c601b70a1066d2c8b517094cb" ON notification USING btree ("notifieeId")`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_b11a5e627c41d4dc3170f1d370" ON notification USING btree ("createdAt")`,
+ );
+ await queryRunner.query(
+ `CREATE INDEX "IDX_e22bf6bda77b6adc1fd9e75c8c" ON notification USING btree ("appAccessTokenId")`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "FK_3b4e96eec8d36a8bbb9d02aa710" FOREIGN KEY ("notifierId") REFERENCES "user"(id) ON DELETE CASCADE`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "FK_3c601b70a1066d2c8b517094cb9" FOREIGN KEY ("notifieeId") REFERENCES "user"(id) ON DELETE CASCADE`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "FK_769cb6b73a1efe22ddf733ac453" FOREIGN KEY ("noteId") REFERENCES note(id) ON DELETE CASCADE`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "FK_bd7fab507621e635b32cd31892c" FOREIGN KEY ("followRequestId") REFERENCES follow_request(id) ON DELETE CASCADE`,
+ );
+ await queryRunner.query(
+ `ALTER TABLE ONLY notification ADD CONSTRAINT "FK_e22bf6bda77b6adc1fd9e75c8c9" FOREIGN KEY ("appAccessTokenId") REFERENCES access_token(id) ON DELETE CASCADE`,
+ );
+ }
}

23
docs/renote_muting.patch Normal file
View File

@ -0,0 +1,23 @@
diff --git a/packages/backend/migration/1665091090561-add-renote-muting.js b/packages/backend/migration/1665091090561-add-renote-muting.js
index 2c76aaff5..f8541c818 100644
--- a/packages/backend/migration/1665091090561-add-renote-muting.js
+++ b/packages/backend/migration/1665091090561-add-renote-muting.js
@@ -4,18 +4,6 @@ export class addRenoteMuting1665091090561 {
}
async up(queryRunner) {
- await queryRunner.query(
- `CREATE TABLE "renote_muting" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "muteeId" character varying(32) NOT NULL, "muterId" character varying(32) NOT NULL, CONSTRAINT "PK_renoteMuting_id" PRIMARY KEY ("id"))`,
- );
- await queryRunner.query(
- `CREATE INDEX "IDX_renote_muting_createdAt" ON "muting" ("createdAt") `,
- );
- await queryRunner.query(
- `CREATE INDEX "IDX_renote_muting_muteeId" ON "muting" ("muteeId") `,
- );
- await queryRunner.query(
- `CREATE INDEX "IDX_renote_muting_muterId" ON "muting" ("muterId") `,
- );
}
async down(queryRunner) {}

View File

@ -2,66 +2,98 @@
* Gulp tasks
*/
const fs = require('fs');
const gulp = require('gulp');
const replace = require('gulp-replace');
const terser = require('gulp-terser');
const cssnano = require('gulp-cssnano');
const fs = require("fs");
const gulp = require("gulp");
const replace = require("gulp-replace");
const terser = require("gulp-terser");
const cssnano = require("gulp-cssnano");
const locales = require('./locales');
const meta = require('./package.json');
const locales = require("./locales");
const meta = require("./package.json");
gulp.task('copy:backend:views', () =>
gulp.src('./packages/backend/src/server/web/views/**/*').pipe(gulp.dest('./packages/backend/built/server/web/views'))
gulp.task("copy:backend:views", () =>
gulp
.src("./packages/backend/src/server/web/views/**/*")
.pipe(gulp.dest("./packages/backend/built/server/web/views")),
);
gulp.task('copy:backend:custom', () =>
gulp.src('./custom/assets/**/*').pipe(gulp.dest('./packages/backend/assets/'))
gulp.task("copy:backend:custom", () =>
gulp
.src("./custom/assets/**/*")
.pipe(gulp.dest("./packages/backend/assets/")),
);
gulp.task('copy:client:fonts', () =>
gulp.src('./packages/client/node_modules/three/examples/fonts/**/*').pipe(gulp.dest('./built/_client_dist_/fonts/'))
gulp.task("copy:client:fonts", () =>
gulp
.src("./packages/client/node_modules/three/examples/fonts/**/*")
.pipe(gulp.dest("./built/_client_dist_/fonts/")),
);
gulp.task('copy:client:locales', cb => {
fs.mkdirSync('./built/_client_dist_/locales', { recursive: true });
gulp.task("copy:client:locales", (cb) => {
fs.mkdirSync("./built/_client_dist_/locales", { recursive: true });
const v = { '_version_': meta.version };
const v = { _version_: meta.version };
for (const [lang, locale] of Object.entries(locales)) {
fs.writeFileSync(`./built/_client_dist_/locales/${lang}.${meta.version}.json`, JSON.stringify({ ...locale, ...v }), 'utf-8');
fs.writeFileSync(
`./built/_client_dist_/locales/${lang}.${meta.version}.json`,
JSON.stringify({ ...locale, ...v }),
"utf-8",
);
}
cb();
});
gulp.task('build:backend:script', () => {
return gulp.src(['./packages/backend/src/server/web/boot.js', './packages/backend/src/server/web/bios.js', './packages/backend/src/server/web/cli.js'])
.pipe(replace('LANGS', JSON.stringify(Object.keys(locales))))
.pipe(terser({
toplevel: true
}))
.pipe(gulp.dest('./packages/backend/built/server/web/'));
gulp.task("build:backend:script", () => {
return gulp
.src([
"./packages/backend/src/server/web/boot.js",
"./packages/backend/src/server/web/bios.js",
"./packages/backend/src/server/web/cli.js",
])
.pipe(replace("LANGS", JSON.stringify(Object.keys(locales))))
.pipe(
terser({
toplevel: true,
}),
)
.pipe(gulp.dest("./packages/backend/built/server/web/"));
});
gulp.task('build:backend:style', () => {
return gulp.src(['./packages/backend/src/server/web/style.css', './packages/backend/src/server/web/bios.css', './packages/backend/src/server/web/cli.css'])
.pipe(cssnano({
zindex: false
}))
.pipe(gulp.dest('./packages/backend/built/server/web/'));
gulp.task("build:backend:style", () => {
return gulp
.src([
"./packages/backend/src/server/web/style.css",
"./packages/backend/src/server/web/bios.css",
"./packages/backend/src/server/web/cli.css",
])
.pipe(
cssnano({
zindex: false,
}),
)
.pipe(gulp.dest("./packages/backend/built/server/web/"));
});
gulp.task('build', gulp.parallel(
'copy:client:locales', 'copy:backend:views', 'copy:backend:custom', 'build:backend:script', 'build:backend:style', 'copy:client:fonts'
));
gulp.task(
"build",
gulp.parallel(
"copy:client:locales",
"copy:backend:views",
"copy:backend:custom",
"build:backend:script",
"build:backend:style",
"copy:client:fonts",
),
);
gulp.task('default', gulp.task('build'));
gulp.task("default", gulp.task("build"));
gulp.task('watch', () => {
gulp.watch([
'./packages/*/src/**/*',
], { ignoreInitial: false }, gulp.task('build'));
gulp.task("watch", () => {
gulp.watch(
["./packages/*/src/**/*"],
{ ignoreInitial: false },
gulp.task("build"),
);
});

View File

@ -1,18 +1,28 @@
name: Bug Report
name: 🐛 Bug Report
about: File a bug report
title: "[Bug]: "
blank_issues_enabled: true
contact_links:
- name: 💁 Support Matrix
url: https://matrix.to/#/%23calckey:matrix.fedibird.com
about: Having trouble with deployment? Ask the support chat.
- name: 🔒 Resposible Disclosure
url: https://codeberg.org/calckey/calckey/src/branch/develop/SECURITY.md
about: Found a security vulnerability? Please disclose it responsibly.
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
💖 Thanks for taking the time to fill out this bug report!
💁 Having trouble with deployment? [Ask the support chat.](https://matrix.to/#/%23calckey:matrix.fedibird.com)
🔒 Found a security vulnerability? [Please disclose it responsibly.](https://codeberg.org/calckey/calckey/src/branch/develop/SECURITY.md)
🤝 By submitting this issue, you agree to follow our [Contribution Guidelines.](https://codeberg.org/calckey/calckey/src/branch/develop/CONTRIBUTING.md)
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Please give us a brief description of what happened.
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: textarea
@ -21,7 +31,6 @@ body:
label: What did you expect to happen?
description: Please give us a brief description of what you expected to happen.
placeholder: Tell us what you wish happened!
value: "Instead of x, y should happen instead!"
validations:
required: true
- type: input
@ -29,7 +38,7 @@ body:
attributes:
label: Version
description: What version of calckey is your instance running? You can find this by clicking your instance's logo at the bottom left and then clicking instance information.
placeholder: Calckey Version 13.0.4
placeholder: v13.1.4.1
validations:
required: true
- type: input
@ -37,15 +46,26 @@ body:
attributes:
label: Instance
description: What instance of calckey are you using?
placeholder: stop.voring.me
placeholder: calckey.social
validations:
required: false
- type: dropdown
id: browsers
id: issue-type
attributes:
label: What browser are you using?
label: What type of issue is this?
description: If this happens on your device and has to do with the user interface, it's client-side. If this happens on either with the API or the backend, or you got a server-side error in the client, it's server-side.
multiple: false
options:
- Client-side
- Server-side
- Other (Please Specify)
- type: dropdown
id: browsers
attributes:
label: What browser are you using? (Client-side issues only)
multiple: false
options:
- N/A
- Firefox
- Chrome
- Brave
@ -54,6 +74,50 @@ body:
- Safari
- Microsoft Edge
- Other (Please Specify)
- type: dropdown
id: device
attributes:
label: What operating system are you using? (Client-side issues only)
multiple: false
options:
- N/A
- Windows
- MacOS
- Linux
- Android
- iOS
- Other (Please Specify)
- type: dropdown
id: deplotment-method
attributes:
label: How do you deploy Calckey on your server? (Server-side issues only)
multiple: false
options:
- N/A
- Manual
- Ubuntu Install Script
- Docker Compose
- Docker Prebuilt Image
- Helm Chart
- YunoHost
- AUR Package
- Other (Please Specify)
- type: dropdown
id: operating-system
attributes:
label: What operating system are you using? (Server-side issues only)
multiple: false
options:
- N/A
- Ubuntu >= 22.04
- Ubuntu < 22.04
- Debian
- Arch
- RHEL (CentOS/AlmaLinux/Rocky Linux)
- FreeBSD
- OpenBSD
- Android
- Other (Please Specify)
- type: textarea
id: logs
attributes:
@ -68,3 +132,5 @@ body:
options:
- label: I agree to follow this project's Contribution Guidelines
required: true
- label: I have searched the issue tracker for similar issues, and this is not a duplicate.
required: true

View File

@ -1,18 +1,28 @@
name: Feature Request
name: Feature Request
about: Request a Feature
title: "[Feature]: "
blank_issues_enabled: true
contact_links:
- name: 💁 Support Matrix
url: https://matrix.to/#/%23calckey:matrix.fedibird.com
about: Having trouble with deployment? Ask the support chat.
- name: 🔒 Resposible Disclosure
url: https://codeberg.org/calckey/calckey/src/branch/develop/SECURITY.md
about: Found a security vulnerability? Please disclose it responsibly.
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this feature request!
💖 Thanks for taking the time to fill out this feature request!
💁 Having trouble with deployment? [Ask the support chat.](https://matrix.to/#/%23calckey:matrix.fedibird.com)
🔒 Found a security vulnerability? [Please disclose it responsibly.](https://codeberg.org/calckey/calckey/src/branch/develop/SECURITY.md)
🤝 By submitting this issue, you agree to follow our [Contribution Guidelines.](https://codeberg.org/calckey/calckey/src/branch/develop/CONTRIBUTING.md)
- type: textarea
id: what-feature
attributes:
label: What feature would you like implemented?
description: Please give us a brief description of what you'd like.
placeholder: Tell us what you want!
value: "x feature would be great!"
validations:
required: true
- type: textarea
@ -21,7 +31,6 @@ body:
label: Why should we add this feature?
description: Please give us a brief description of why your feature is important.
placeholder: Tell us why you want this feature!
value: "x feature is super useful because y!"
validations:
required: true
- type: input
@ -29,7 +38,7 @@ body:
attributes:
label: Version
description: What version of calckey is your instance running? You can find this by clicking your instance's logo at the bottom left and then clicking instance information.
placeholder: Calckey Version 13.0.4
placeholder: Calckey Version 13.1.4.1
validations:
required: true
- type: input
@ -37,29 +46,9 @@ body:
attributes:
label: Instance
description: What instance of calckey are you using?
placeholder: stop.voring.me
placeholder: calckey.social
validations:
required: false
- type: dropdown
id: browsers
attributes:
label: What browser are you using?
multiple: false
options:
- Firefox
- Chrome
- Brave
- Librewolf
- Chromium
- Safari
- Microsoft Edge
- Other (Please Specify)
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. You can find your log by inspecting the page, and going to the "console" tab. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: checkboxes
id: terms
attributes:
@ -68,3 +57,5 @@ body:
options:
- label: I agree to follow this project's Contribution Guidelines
required: true
- label: I have searched the issue tracker for similar requests, and this is not a duplicate.
required: true

View File

@ -176,7 +176,6 @@ operations: "الإجراءات"
software: "البرمجية"
version: "الإصدار"
metadata: "البيانات الوصفية"
withNFiles: "{n} ملف (ملفات)"
monitor: "شاشة التحكم"
jobQueue: "قائمة الانتظار"
cpuAndMemory: "وحدة المعالجة المركزية والذاكرة"
@ -197,7 +196,7 @@ noUsers: "ليس هناك مستخدمون"
editProfile: "تعديل الملف التعريفي"
noteDeleteConfirm: "هل تريد حذف هذه الملاحظة؟"
pinLimitExceeded: "لا يمكنك تدبيس الملاحظات بعد الآن."
intro: "لقد انتهت عملية تنصيب Misskey. الرجاء إنشاء حساب إداري."
intro: "لقد انتهت عملية تنصيب Calckey. الرجاء إنشاء حساب إداري."
done: "تمّ"
processing: "المعالجة جارية"
preview: "معاينة"
@ -372,7 +371,7 @@ exploreFediverse: "استكشف الفديفرس"
popularTags: "الوسوم الرائجة"
userList: "القوائم"
about: "عن"
aboutMisskey: "عن Misskey"
aboutMisskey: "عن Calckey"
administrator: "المدير"
token: "الرمز المميز"
twoStepAuthentication: "الإستيثاق بعاملَيْن"
@ -1027,10 +1026,31 @@ _time:
minute: "د"
hour: "سا"
day: "ي"
_tutorial:
title: "How to use Calckey"
step1_1: "Welcome!"
step1_2: "Let's get you set up. You'll be up and running in no time!"
step2_1: "First, please fill out your profile."
step2_2: "Providing some information about who you are will make it easier for others to tell if they want to see your notes or follow you."
step3_1: "Now time to follow some people!"
step3_2: "Your home and social timelines are based off of who you follow, so try following a couple accounts to get started.\nClick the plus circle on the top right of a profile to follow them."
step4_1: "Let's get you out there."
step4_2: "For your first post, some people like to made a {introduction} post or a simple \"Hello world!\""
step5_1: "Timelines, timelines everywhere!"
step5_2: "Your instance has {timelines} different timelines enabled."
step5_3: "The Home {icon} timeline is where you can see posts from your followers."
step5_4: "The Local {icon} timeline is where you can see posts from everyone else on this instance."
step5_5: "The Recommended {icon} timeline is where you can see posts from instances the admins recommend."
step5_6: "The Social {icon} timeline is where you can see posts from friends of your followers."
step5_7: "The Global {icon} timeline is where you can see posts from every other connected instance."
step6_1: "So, what is this place?"
step6_2: "Well, you didn't just join Calckey. You joined a portal to the Fediverse, an interconnected network of thousands of servers, called \"instances\"."
step6_3: "Each server works in different ways, and not all servers run Calckey. This one does though! It's a bit complicated, but you'll get the hang of it in no time."
step6_4: "Now go, explore, and have fun!"
_2fa:
alreadyRegistered: "سجلت سلفًا جهازًا للاستيثاق بعاملين."
registerDevice: "سجّل جهازًا جديدًا"
registerKey: "تسجيل مفتاح أمان جديد"
registerTOTP: "سجّل جهازًا جديدًا"
registerSecurityKey: "تسجيل مفتاح أمان جديد"
step1: "أولًا ثبّت تطبيق استيثاق على جهازك (مثل {a} و{b})."
step2: "امسح رمز الاستجابة السريعة الموجد على الشاشة."
step3: "أدخل الرمز الموجود في تطبيقك لإكمال التثبيت."

View File

@ -177,7 +177,6 @@ operations: "ক্রিয়াকলাপ"
software: "সফটওয়্যার"
version: "সংস্করণ"
metadata: "মেটাডাটা"
withNFiles: "{n} টি ফাইল"
monitor: "মনিটর"
jobQueue: "জব কিউ"
cpuAndMemory: "সিপিউ এবং মেমরি"
@ -199,9 +198,9 @@ noUsers: "কোন ব্যাবহারকারী নেই"
editProfile: "প্রোফাইল সম্পাদনা করুন"
noteDeleteConfirm: "আপনি কি নোট ডিলিট করার ব্যাপারে নিশ্চিত?"
pinLimitExceeded: "আপনি আর কোন নোট পিন করতে পারবেন না"
intro: "Misskey এর ইন্সটলেশন সম্পন্ন হয়েছে!দয়া করে অ্যাডমিন ইউজার তৈরি করুন।"
intro: "Calckey এর ইন্সটলেশন সম্পন্ন হয়েছে!দয়া করে অ্যাডমিন ইউজার তৈরি করুন।"
done: "সম্পন্ন"
processing: "প্রক্রিয়াধীন..."
processing: "প্রক্রিয়াধীন"
preview: "পূর্বরূপ দেখুন"
default: "পূর্বনির্ধারিত"
noCustomEmojis: "কোন ইমোজি নাই"
@ -377,7 +376,7 @@ exploreFediverse: "Fediverse ঘুরে দেখুন"
popularTags: "জনপ্রিয় ট্যাগগুলি"
userList: "লিস্ট"
about: "আপনার সম্পর্কে"
aboutMisskey: "Misskey সম্পর্কে"
aboutMisskey: "Calckey সম্পর্কে"
administrator: "প্রশাসক"
token: "টোকেন"
twoStepAuthentication: "২-ধাপ প্রমাণীকরণ"
@ -695,7 +694,7 @@ onlineUsersCount: "{n} জন ব্যাবহারকারী অনলা
nUsers: "{n} জন ব্যাবহারকারী"
nNotes: "{n} টি নোট"
sendErrorReports: "ক্রুটি প্রতিবেদন পাঠান"
sendErrorReportsDescription: "চালু থাকলে, বিস্তারিত ত্রুটির তথ্য Misskey-এর সাথে শেয়ার করা হয়। যা সফ্টওয়্যারটির গুণমান উন্নত করতে সাহায্য করে। ত্রুটির তথ্যের মধ্যে রয়েছে OS সংস্করণ, ব্রাউজারের ধরন, কর্মের ইতিহাস ইত্যাদি।"
sendErrorReportsDescription: "চালু থাকলে, বিস্তারিত ত্রুটির তথ্য Calckey-এর সাথে শেয়ার করা হয়। যা সফ্টওয়্যারটির গুণমান উন্নত করতে সাহায্য করে। ত্রুটির তথ্যের মধ্যে রয়েছে OS সংস্করণ, ব্রাউজারের ধরন, কর্মের ইতিহাস ইত্যাদি।"
myTheme: "আমার থিম"
backgroundColor: "পটভূমির রং"
accentColor: "এক্সেন্টের রং"
@ -786,7 +785,7 @@ hashtags: "হ্যাশট্যাগ"
troubleshooting: "ট্রাবলশুটিং"
useBlurEffect: "UI তে ব্লার ইফেক্ট ব্যাবহার করুন"
learnMore: "আরও জানুন"
misskeyUpdated: "Misskey আপডেট করা হয়েছে!"
misskeyUpdated: "Calckey আপডেট করা হয়েছে!"
whatIsNew: "পরিবর্তনগুলি দেখান"
translate: "অনুবাদ"
translatedFrom: "{x} হতে অনুবাদ করা"
@ -902,8 +901,8 @@ _aboutMisskey:
contributors: "প্রধান কন্ট্রিবিউটারগণ"
allContributors: "সকল কন্ট্রিবিউটারগণ"
source: "সোর্স কোড"
translation: "Misskey অনুবাদ করুন"
donate: "Misskey তে দান করুন"
translation: "Calckey অনুবাদ করুন"
donate: "Calckey তে দান করুন"
morePatrons: "আরও অনেকে আমাদের সাহায্য করছেন। তাদের সবাইকে ধন্যবাদ 🥰"
patrons: "সমর্থনকারী"
_nsfw:
@ -912,7 +911,7 @@ _nsfw:
force: "সকল মিডিয়া লুকান"
_mfm:
cheatSheet: "MFM চিটশিট"
intro: "MFM একটি মার্কআপ ভাষা যা Misskey-এর মধ্যে বিভিন্ন জায়গায় ব্যবহার করা যেতে পারে। এখানে আপনি MFM-এর সিনট্যাক্সগুলির একটি তালিকা দেখতে পারবেন।"
intro: "MFM একটি মার্কআপ ভাষা যা Calckey-এর মধ্যে বিভিন্ন জায়গায় ব্যবহার করা যেতে পারে। এখানে আপনি MFM-এর সিনট্যাক্সগুলির একটি তালিকা দেখতে পারবেন।"
dummy: "মিসকি ফেডিভার্সের বিশ্বকে প্রসারিত করে"
mention: "উল্লেখ"
mentionDescription: "@ চিহ্ন + ব্যবহারকারীর নাম একটি নির্দিষ্ট ব্যবহারকারীকে নির্দেশ করতে ব্যবহার করা যায়।"
@ -1108,10 +1107,31 @@ _time:
minute: "মিনিট"
hour: "ঘণ্টা"
day: "দিন"
_tutorial:
title: "How to use Calckey"
step1_1: "Welcome!"
step1_2: "Let's get you set up. You'll be up and running in no time!"
step2_1: "First, please fill out your profile."
step2_2: "Providing some information about who you are will make it easier for others to tell if they want to see your notes or follow you."
step3_1: "Now time to follow some people!"
step3_2: "Your home and social timelines are based off of who you follow, so try following a couple accounts to get started.\nClick the plus circle on the top right of a profile to follow them."
step4_1: "Let's get you out there."
step4_2: "For your first post, some people like to made a {introduction} post or a simple \"Hello world!\""
step5_1: "Timelines, timelines everywhere!"
step5_2: "Your instance has {timelines} different timelines enabled."
step5_3: "The Home {icon} timeline is where you can see posts from your followers."
step5_4: "The Local {icon} timeline is where you can see posts from everyone else on this instance."
step5_5: "The Recommended {icon} timeline is where you can see posts from instances the admins recommend."
step5_6: "The Social {icon} timeline is where you can see posts from friends of your followers."
step5_7: "The Global {icon} timeline is where you can see posts from every other connected instance."
step6_1: "So, what is this place?"
step6_2: "Well, you didn't just join Calckey. You joined a portal to the Fediverse, an interconnected network of thousands of servers, called \"instances\"."
step6_3: "Each server works in different ways, and not all servers run Calckey. This one does though! It's a bit complicated, but you'll get the hang of it in no time."
step6_4: "Now go, explore, and have fun!"
_2fa:
alreadyRegistered: "আপনি ইতিমধ্যে একটি 2-ফ্যাক্টর অথেনটিকেশন ডিভাইস নিবন্ধন করেছেন৷"
registerDevice: "নতুন ডিভাইস নিবন্ধন করুন"
registerKey: "সিকিউরিটি কী নিবন্ধন করুন"
registerTOTP: "নতুন ডিভাইস নিবন্ধন করুন"
registerSecurityKey: "সিকিউরিটি কী নিবন্ধন করুন"
step1: "প্রথমে, আপনার ডিভাইসে {a} বা {b} এর মতো একটি অথেনটিকেশন অ্যাপ ইনস্টল করুন৷"
step2: "এরপরে, অ্যাপের সাহায্যে প্রদর্শিত QR কোডটি স্ক্যান করুন।"
step2Url: "ডেস্কটপ অ্যাপে, নিম্নলিখিত URL লিখুন:"

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,9 @@
---
_lang_: "Čeština"
headlineMisskey: "Síť propojená poznámkami"
introMisskey: "Vítejte! Misskey je otevřený a decentralizovaný microblogový servis.\n\"Poznámkami\" můžete sdílet co se zrovna děje se všemi ve Vašem okolí. 📡\nPomocí \"reakcí\" můžete sdílet své názory a pocity na ostatní poznámky. 👍\nPojďte objevovat nový svět! 🚀"
introMisskey: "Vítejte! Calckey je otevřený a decentralizovaný microblogový servis.\n\
\"Poznámkami\" můžete sdílet co se zrovna děje se všemi ve Vašem okolí. \U0001F4E1\
\nPomocí \"reakcí\" můžete sdílet své názory a pocity na ostatní poznámky. \U0001F44D\
\nPojďte objevovat nový svět! \U0001F680"
monthAndDay: "{day}. {month}."
search: "Vyhledávání"
notifications: "Oznámení"
@ -44,7 +46,8 @@ copyContent: "Zkopírovat obsah"
copyLink: "Kopírovat odkaz"
delete: "Smazat"
deleteAndEdit: "Smazat a upravit"
deleteAndEditConfirm: "Jste si jistí že chcete smazat tuto poznámku a editovat ji? Ztratíte tím všechny reakce, sdílení a odpovědi na ni."
deleteAndEditConfirm: "Jste si jistí že chcete smazat tuto poznámku a editovat ji?\
\ Ztratíte tím všechny reakce, sdílení a odpovědi na ni."
addToList: "Přidat do seznamu"
sendMessage: "Odeslat zprávu"
copyUsername: "Kopírovat uživatelské jméno"
@ -63,9 +66,11 @@ import: "Importovat"
export: "Exportovat"
files: "Soubor(ů)"
download: "Stáhnout"
driveFileDeleteConfirm: "Opravdu chcete smazat soubor \"{name}\"? Poznámky, ke kterým je tento soubor připojen, budou také smazány."
driveFileDeleteConfirm: "Opravdu chcete smazat soubor \"{name}\"? Soubor bude odstraněn\
\ ze všech příspěvků, které ji obsahují jako přílohu."
unfollowConfirm: "Jste si jisti že už nechcete sledovat {name}?"
exportRequested: "Požádali jste o export. To může chvíli trvat. Přidáme ho na váš Disk až bude dokončen."
exportRequested: "Požádali jste o export. To může chvíli trvat. Přidáme ho na váš\
\ Disk až bude dokončen."
importRequested: "Požádali jste o export. To může chvilku trvat."
lists: "Seznamy"
noLists: "Nemáte žádné seznamy"
@ -81,7 +86,8 @@ somethingHappened: "Jejda. Něco se nepovedlo."
retry: "Opakovat"
pageLoadError: "Nepodařilo se načíst stránku"
serverIsDead: "Server neodpovídá. Počkejte chvíli a zkuste to znovu."
youShouldUpgradeClient: "Pro zobrazení této stránky obnovte stránku pro aktualizaci klienta."
youShouldUpgradeClient: "Pro zobrazení této stránky obnovte stránku pro aktualizaci\
\ klienta."
enterListName: "Jméno seznamu"
privacy: "Soukromí"
makeFollowManuallyApprove: "Žádosti o sledování vyžadují potvrzení"
@ -105,7 +111,8 @@ clickToShow: "Klikněte pro zobrazení"
sensitive: "NSFW"
add: "Přidat"
reaction: "Reakce"
reactionSettingDescription2: "Přetažením změníte pořadí, kliknutím smažete, zmáčkněte \"+\" k přidání"
reactionSettingDescription2: "Přetažením změníte pořadí, kliknutím smažete, zmáčkněte\
\ \"+\" k přidání"
rememberNoteVisibility: "Zapamatovat nastavení zobrazení poznámky"
attachCancel: "Odstranit přílohu"
markAsSensitive: "Označit jako NSFW"
@ -134,13 +141,18 @@ emojiUrl: "URL obrázku"
addEmoji: "Přidat emoji"
settingGuide: "Doporučené nastavení"
cacheRemoteFiles: "Ukládání vzdálených souborů do mezipaměti"
cacheRemoteFilesDescription: "Zakázání tohoto nastavení způsobí, že vzdálené soubory budou odkazovány přímo, místo aby byly ukládány do mezipaměti. Tím se ušetří úložiště na serveru, ale zvýší se provoz, protože se negenerují miniatury."
cacheRemoteFilesDescription: "Zakázání tohoto nastavení způsobí, že vzdálené soubory\
\ budou odkazovány přímo, místo aby byly ukládány do mezipaměti. Tím se ušetří úložiště\
\ na serveru, ale zvýší se provoz, protože se negenerují miniatury."
flagAsBot: "Tento účet je bot"
flagAsBotDescription: "Pokud je tento účet kontrolován programem zaškrtněte tuto možnost. To označí tento účet jako bot pro ostatní vývojáře a zabrání tak nekonečným interakcím s ostatními boty a upraví Misskey systém aby se choval k tomuhle účtu jako bot."
flagAsBotDescription: "Pokud je tento účet kontrolován programem zaškrtněte tuto možnost.\
\ To označí tento účet jako bot pro ostatní vývojáře a zabrání tak nekonečným interakcím\
\ s ostatními boty a upraví Calckey systém aby se choval k tomuhle účtu jako bot."
flagAsCat: "Tenhle účet je kočka"
flagAsCatDescription: "Vyberte tuto možnost aby tento účet byl označen jako kočka."
flagShowTimelineReplies: "Zobrazovat odpovědi na časové ose"
flagShowTimelineRepliesDescription: "Je-li zapnuto, zobrazí odpovědi uživatelů na poznámky jiných uživatelů na vaší časové ose."
flagShowTimelineRepliesDescription: "Je-li zapnuto, zobrazí odpovědi uživatelů na\
\ poznámky jiných uživatelů na vaší časové ose."
autoAcceptFollowed: "Automaticky akceptovat následování od účtů které sledujete"
addAccount: "Přidat účet"
loginFailed: "Přihlášení se nezdařilo."
@ -153,7 +165,10 @@ searchWith: "Hledat: {q}"
youHaveNoLists: "Nemáte žádné seznamy"
followConfirm: "Jste si jisti, že chcete sledovat {name}?"
proxyAccount: "Proxy účet"
proxyAccountDescription: "Proxy účet je účet, který za určitých podmínek sleduje uživatele na dálku vaším jménem. Například když uživatel zařadí vzdáleného uživatele do seznamu, pokud nikdo nesleduje uživatele na seznamu, aktivita nebude doručena instanci, takže místo toho bude uživatele sledovat účet proxy."
proxyAccountDescription: "Proxy účet je účet, který za určitých podmínek sleduje uživatele\
\ na dálku vaším jménem. Například když uživatel zařadí vzdáleného uživatele do\
\ seznamu, pokud nikdo nesleduje uživatele na seznamu, aktivita nebude doručena\
\ instanci, takže místo toho bude uživatele sledovat účet proxy."
host: "Hostitel"
selectUser: "Vyberte uživatele"
recipient: "Pro"
@ -174,7 +189,6 @@ operations: "Operace"
software: "Software"
version: "Verze"
metadata: "Metadata"
withNFiles: "{n} soubor(ů)"
monitor: "Monitorovat"
jobQueue: "Fronta úloh"
cpuAndMemory: "CPU a paměť"
@ -189,7 +203,7 @@ blockedInstances: "Blokované instance"
noUsers: "Žádní uživatelé"
editProfile: "Upravit můj profil"
pinLimitExceeded: "Nemůžete připnout další poznámky."
intro: "Instalace Misskey byla dokončena! Prosím vytvořte admina."
intro: "Instalace Calckey byla dokončena! Prosím vytvořte admina."
done: "Hotovo"
processing: "Zpracovávám"
preview: "Náhled"
@ -239,7 +253,8 @@ agreeTo: "Souhlasím s {0}"
tos: "Podmínky užívání"
start: "Začít"
home: "Domů"
remoteUserCaution: "Tyto informace nemusí být aktuální jelikož uživatel je ze vzdálené instance."
remoteUserCaution: "Tyto informace nemusí být aktuální jelikož uživatel je ze vzdálené\
\ instance."
activity: "Aktivita"
images: "Obrázky"
birthday: "Datum narození"
@ -332,7 +347,7 @@ recentlyUpdatedUsers: "Nedávno aktívni uživatelé"
popularTags: "Populární tagy"
userList: "Seznamy"
about: "Informace"
aboutMisskey: "O Misskey"
aboutMisskey: "O Calckey"
administrator: "Administrátor"
token: "Token"
twoStepAuthentication: "Dvoufaktorová autentikace"
@ -548,7 +563,8 @@ info: "Informace"
unknown: "Neznámý"
onlineStatus: "Online status"
hideOnlineStatus: "Skrýt Váš online status"
hideOnlineStatusDescription: "Skrytí vašeho online stavu může snížit funkcionalitu některých funkcí, například vyhledávání."
hideOnlineStatusDescription: "Skrytí vašeho online stavu může snížit funkcionalitu\
\ některých funkcí, například vyhledávání."
online: "Online"
active: "Aktivní"
offline: "Offline"
@ -682,8 +698,8 @@ _time:
minute: "Minut"
hour: "Hodin"
_2fa:
registerDevice: "Přidat zařízení"
registerKey: "Přidat bezpečnostní klíč"
registerTOTP: "Přidat zařízení"
registerSecurityKey: "Přidat bezpečnostní klíč"
_weekday:
sunday: "Neděle"
monday: "Pondělí"
@ -928,3 +944,66 @@ _deck:
antenna: "Antény"
list: "Seznamy"
mentions: "Zmínění"
noteDeleteConfirm: Chcete opravdu smazat tento příspěvek?
defaultValueIs: 'Výchozí: {value}'
lookup: Hledat
keepOriginalUploading: Ponechat originální obrázek
uploadFromUrlRequested: Vyžádáno nahrání souboru
manageGroups: Spravovat skupiny
reloadConfirm: Znovu načíst časovou osu?
driveCapacityPerRemoteAccount: Místo na disku pro vzdálené uživatele
silenceThisInstance: Ztlumit tuto instance
silencedInstances: Ztlumené instance
blockedInstancesDescription: Zadejte seznam domén instancí, jež chcete blokovat. Uvedené
instance nebudou moci s touto instancí komunikovat.
hiddenTags: Skryté hashtagy
noInstances: Nejsou zde žádné instance
silenced: Ztlumené
disablingTimelinesInfo: Administrátoři a moderátoři budou vždy mít přístup ke všem
časovým osám, i pokud jsou vypnuté.
deleted: Vymazáno
editNote: Upravit poznámku
edited: 'Upraveno dne {date} {time}'
silencedInstancesDescription: Vypište hostnames instancí, které chcete ztlumit. Účty
v uvedených instancích jsou považovány za "ztlumené", mohou pouze zadávat požadavky
na sledování a nemohou zmiňovat místní účty, pokud nejsou sledovány. Na blokované
instance toto nebude mít vliv.
hiddenTagsDescription: 'Vypište hashtagy (bez #), které chcete skrýt před trendy a
prozkoumat. Skryté hashtagy jsou stále zjistitelné jinými způsoby. Blokované případy
nejsou ovlivněny, i když jsou zde uvedeny.'
circularReferenceFolder: Cílová složka je podsložka přesouvané složky.
whenServerDisconnected: Při ztrátě spojení se serverem
pinnedUsersDescription: Uveďte uživatelská jména uživatelů připnutých na stránce "Procházet",
jedno na řádek.
pinnedPagesDescription: Zadejte cesty ke stránkám, které chcete připnout na horní
stránku této instance, oddělené zlomy řádků.
pageLoadErrorDescription: Toto je obvykle způsobeno chybami sítě nebo mezipaměti prohlížeče.
Zkuste vymazat mezipaměť a po chvíli čekání to zkuste znovu.
emptyDrive: Váš disk je prázdný
inputNewDescription: Zadejte nový popisek
hasChildFilesOrFolders: Složka nemůže být smazána, protože není prázdná.
noThankYou: Ne, děkuji
addInstance: Přidat instance
selectInstance: Vybrat si instance
blockedUsers: Zablokovaní uživatelé
muteAndBlock: Ztlumení a blokace
noJobs: Žádné úlohy
federating: Federace
clearQueueConfirmText: Nedoručené příspěvky, které zůstanou ve frontě, nebudou federovány.
Obvykle tato operace není potřeba.
clearCachedFilesConfirm: Chcete opravdu vymazat mezipaměť všech vzdálených souborů?
accountMoved: 'Uživatel/ka se přesunul/a na nový účet:'
keepOriginalUploadingDescription: Ponechá originálně nahraný obrázek tak, jak je.
Pokud vypnuto, verze pro zobrazení na webu bude vygenerována při nahrání.
mutedUsers: Ztlumení uživatelé
enableRecommendedTimeline: Povolit doporučenou časovou osu
driveCapacityPerLocalAccount: Místo na disku pro místní uživatele
pinnedPages: Připnuté Stránky
directNotes: Přímé zprávy
enableEmojiReactions: Povolit reakce pomocí emoji
showEmojisInReactionNotifications: Zobrazit emotikony v oznámeních o reakcích
reactionSetting: Reakce, které se mají zobrazit v seznamu reakcí
renoteMute: Ztlumit přeposílání
renoteUnmute: Zrušit ztlumení přeposílání
flagSpeakAsCat: Mluvit jako kočka
flagSpeakAsCatDescription: Vaše příspěvky budou v kočičím režimu nyanifikovány.

View File

@ -1,2 +1,236 @@
---
_lang_: "Dansk"
monthAndDay: '{month}/{day}'
search: Søge
notifications: Notifikationer
username: Brugernavn
password: Adgangskode
forgotPassword: Glemt adgangskode
fetchingAsApObject: Henter fra Fediverset
ok: OK
gotIt: Forstået!
cancel: Annullere
enterUsername: Indtast brugernavn
instance: Instans
renotedBy: Forstærket fra {user}
noNotes: Ingen opslag
otherSettings: Andre Indstillinger
profile: Profil
timeline: Tidslinje
signup: Registrere
logout: Log Ud
login: Log ind
uploading: Uploader...
save: Gem
users: Brugere
favorited: Tilsat til bogmærker.
unfavorite: Fjerne fra bogmærker
alreadyFavorited: Allerede inden i bogmærker.
pin: Fastgøre til profil
unpin: Løse fra profil
delete: Slet
addToList: Tilsæt til liste
deleteAndEdit: Slet og ændre
reply: Svar
loadMore: Indlæs mere
receiveFollowRequest: Følgeanmodning er blevet sendt
import: Importere
export: Eksportere
driveFileDeleteConfirm: Er du sikker på at du vil slette filen "{name}"? Denne vil
blive slettet fra alle tilknyttede opslage.
unfollowConfirm: Er du sikker på at du vil ikke følge {name} længere?
privacy: Privatlivs
enterListName: Indtast navnen for denne list
makeFollowManuallyApprove: Følgeanmodninger kræver godkendelse
unrenote: Fratag forstærkelse
renote: Forstærk
add: Tilsæt
reactionSetting: Reaktioner til at vise i reaktion-vælgeren
reactionSettingDescription2: Bevæg til at flytte om på, tryk til at slette og indtast
"+" til at tilsætte.
rememberNoteVisibility: Husk opslagsynlidhedsindstillinger
emojis: Emoji
flagShowTimelineReplies: Vis svare i tidslinjen
flagAsCatDescription: Du kommer til at få katøre og tale som en kat!
showOnRemote: Vis på fjerninstans
general: Generelt
accountMoved: 'Bruger har flyttet til et nyt konto:'
settings: Indstillinger
basicSettings: Primær Indstillinger
openInWindow: Åben i vindue
noAccountDescription: Denne bruger har ikke skrevet deres bio endnu.
loggingIn: Logger ind
cantFavorite: Kunne ikke tilsætte til bogmærker.
copyUsername: Kopi brugernavn
copyContent: Kopi indholdet
copyLink: Kopi link
searchUser: Søg for en bruger
files: Filer
noLists: Du har ingen liste
lists: Lister
reaction: Reaktioner
sensitive: NSFW
emoji: Emoji
cacheRemoteFilesDescription: Når denne indstilling er deaktiveret, fremmed filer bliver
indlæset direkte fra denne fjerneinstans. Hvis du deaktivere dette så vil det formindske
brugte opbevaringsplads men det vil også få netværktraffic til at stige fordi miniaturebilleder
vil ikke blive skabt.
flagAsBot: Markere denne konto som en robot
flagShowTimelineRepliesDescription: Vis svare af brugere til opslage af andre brugere
i tidslinjen hvis den bliver tændt.
loginFailed: Kunne ikke logge ind
silenceThisInstance: Nedtone denne instans
deleteAndEditConfirm: Er du sikker på at du vil slet denne opslag og ændre det? Du
vil tabe alle reaktioner, forstærkninger og svarer indenfor denne opslag.
editNote: Ændre note
deleted: Slettet
edited: 'Ændret den {date} {time}'
sendMessage: Send en besked
youShouldUpgradeClient: Til at vise denne side, vær sød at refresh til at opdatere
din brugerenhed.
defaultNoteVisibility: Standard synlighed
follow: Følge
followRequest: Følge
followRequests: Følgeanmodninger
unfollow: Følge ikke længere
followRequestPending: Følgeanmodning ventes på
enterEmoji: Indtast en emoji
renoted: Forstærket.
cantRenote: Denne opslag kunne ikke forstærkes.
cantReRenote: En forstærkelse kan ikke forstærkes.
quote: Citere
pinnedNote: Fastgjort opslag
pinned: Fastgøre til profil
you: Dig
clickToShow: Tryk til at vise
unblock: Blokere ikke længere
suspend: Suspendere
unsuspend: Suspendere ikke længere
blockConfirm: Er du sikker på at du vil blokere denne konto?
unblockConfirm: Er du sikker på at du vil ikke blokere denne konto endnu længere?
suspendConfirm: Er du sikker på at du vil suspendere denne konto?
selectAntenna: Vælg en antenne
selectWidget: Vælg en widget
editWidgets: Ændre widgettere
customEmojis: Brugerdefineret emoji
emojiName: Emoji navn
operations: Operationer
software: Software
metadata: Metadata
version: Version
monitor: Vagt
jobQueue: Jobkø
statistics: Statistik
cpuAndMemory: CPU og hukommelse
network: Netværk
disk: Disk
instanceInfo: Instans information
noThankYou: Nej tak
noNotifications: Intet notifikationer
addUser: Indsæt en bruger
addInstance: Indsæt en instans
favorite: Indsæt til bogmærker
favorites: Bogmærker
showMore: Vis mere
showLess: Luk
youGotNewFollower: følgte dig
followRequestAccepted: Følgeanmodning accepteret
mention: Nævne
mentions: Nævnene
directNotes: Direkt beskeder
importAndExport: Importere/Eksporter data
download: Download
exportRequested: Du har bedt om en eksport. Det vil tage noget tid. Den vil blive
tilsæt til din Drev når den er færdig.
importRequested: Du har bedt om en eksport. Det vil tage noget tid.
note: Opslag
notes: Opslage
following: Følger
followers: Følgere
followsYou: Følger dig
createList: Skab en list
manageLists: Administrere lister
error: Fejl
somethingHappened: En fejl har opstået
retry: Gentage
pageLoadError: En fejl har opstået ved indlæsning af siden.
pageLoadErrorDescription: Dette er normalt på grund af netværksproblemer eller din
browser's cache. Prøv at ryd cachen og så gentage efter et styk tid.
serverIsDead: Serveren svarer ikke. Vær sød at vente et styk tid og prøv igen.
editWidgetsExit: Færdig
headlineMisskey: En åben-kildekode, decentraliseret social-media platform som er frit
forevigt! 🚀
introMisskey: Velkommen! Calckey er en åbent-kildekode, decentraliseret social-media
platform som er frit forevigt!🚀
enableEmojiReactions: Aktivere emoji reaktioner
unsuspendConfirm: Er du sikker på at du vil ikke suspendere denne konto endnu længere?
selectList: Vælg en list
showEmojisInReactionNotifications: Vis emoji i reaktion notifikationer
attachCancel: Fjern tilknyttelse
markAsSensitive: Markere som NSFW
unmarkAsSensitive: Markere ikke som NSFW længere
enterFileName: Indtast filnavn
mute: Nedtone
unmute: Nedtone ikke længere
renoteMute: Nedtone forstærkninger
renoteUnmute: Nedtone forstærkninger ikke længere
block: Blokere
cacheRemoteFiles: Cachere fremmed filer
flagAsBotDescription: Aktivere denne valgmulighed hvis denne konto er kontrolleret
af en komputerprogram. Hvis den et tændt så vil det signalere til andre udviklere
som arbejder på komputer-kontrolleret social-media kontoer og det vil også adjustere
Calckey's indresystemer til at behandle denne konto som en robot.
flagAsCat: Er du en kat? 😺
flagSpeakAsCat: Tale som en kat
emojiUrl: Emoji URL
addEmoji: Tilsæt
settingGuide: Anbefalet indstillinger
flagSpeakAsCatDescription: Din opslage vil blive nyaniferet når du er i kat-mode
autoAcceptFollowed: Automatisk godkende følgeanmodninger fra brugere som du selv følger
addAccount: Tilsæt konto
wallpaper: Baggrund
setWallpaper: Sæt baggrund
removeWallpaper: Fjern baggrund
host: Host
selectUser: Vælg en bruger
searchWith: 'Søge: {q}'
youHaveNoLists: Du har ingen liste
followConfirm: Er du sikker på at du vil gerne følge {name}?
proxyAccount: Proxykonto
proxyAccountDescription: En proxykonto er en konto som virker som en fremmed følger
for bruger under særlige konditioner. For eksempel, når en bruger tilsætter en fjernbruger
til denne list, vil denne fjernbruger's aktivitet ikke blive leveret til den instans
hvis ingen lokalebruger følger fjernbrugeren, så denne proxykonto vil følge den
istedetfor.
instances: Instanser
registeredAt: Registreret på
latestRequestSentAt: Sidste anmodning sendt
latestRequestReceivedAt: Sidste anmodning modtaget
selectInstance: Vælg en instans
recipient: Recipient(er)
annotation: Kommentarer
federation: Føderation
latestStatus: Senest status
storageUsage: Opbevaringspladsbrug
charts: Grafer
perHour: Hver time
perDay: Hver dag
stopActivityDelivery: Stop med at sende aktiviteter
blockThisInstance: Blokere denne instans
muteAndBlock: Mutes og blokeringer
mutedUsers: Mutede brugere
newer: nyere
older: ældre
silencedInstances: Nedtonede servere
clearQueue: Ryd kø
clearQueueConfirmTitle: Er du sikker på, at du ønsker at rydde køen?
clearCachedFiles: Ryd cache
clearCachedFilesConfirm: Er du sikker på, at du ønsker at slette alle cachede eksterne
filer?
blockedInstances: Blokerede servere
blockedInstancesDescription: Listen af navne på servere, du ønsker at blokere. Servere
på listen vil ikke længere kunne kommunikere med denne server.
hiddenTags: Skjulte hashtags
clearQueueConfirmText: De indlæg i denne kø, der ikke allerede er leveret, vil ikke
blive federeret. Denne operation er almindeligvis ikke påkrævet.
jumpToPrevious: Spring til tidligere
cw: Advarsel om indhold

File diff suppressed because it is too large Load Diff

View File

@ -1,22 +1,21 @@
---
_lang_: "Ελληνικά"
monthAndDay: "{μήνας}/{ημέρα}"
monthAndDay: "{day}/{month}"
search: "Αναζήτηση"
notifications: "Ειδοποιήσεις"
username: "Όνομα μέλους"
password: "Κωδικός πρόσβασης"
forgotPassword: "Ξέχασα τον κωδικό πρόσβασης"
fetchingAsApObject: "Μαζεύοντας από το Fediverse..."
fetchingAsApObject: "Άντληση από το Fediverse"
ok: "Εντάξει"
gotIt: "Τό'πιασα!"
cancel: "Ακύρωση"
enterUsername: "Εισάγετε το όνομα μέλους"
renotedBy: "Κοινοποιήθηκε από {user}"
noNotes: "Δεν υπάρχουν σημειώματα"
enterUsername: "Εισαγωγή ονόματος μέλους"
renotedBy: "Προωθήθηκε από {user}"
noNotes: "Δεν υπάρχουν δημοσιεύσεις"
noNotifications: "Δεν υπάρχουν ειδοποιήσεις"
settings: "Ρυθμίσεις"
basicSettings: "Βασικές ρυθμίσεις"
otherSettings: "Άλλες ρυθμίσεις"
basicSettings: "Βασικές Ρυθμίσεις"
otherSettings: "Άλλες Ρυθμίσεις"
openInWindow: "Άνοιγμα σε παράθυρο"
profile: "Προφίλ"
timeline: "Χρονολόγιο"
@ -24,24 +23,25 @@ noAccountDescription: "Αυτό το μέλος δεν έχει γράψει β
login: "Σύνδεση"
loggingIn: "Συνδέεστε"
logout: "Αποσύνδεση"
signup: "Δημιουργία λογαριασμού"
signup: "Εγγραφή"
uploading: "Ανέβασμα..."
save: "Αποθήκευση"
users: "Μέλη"
addUser: "Προσθήκη μέλους"
favorite: "Προσθήκη στα αγαπημένα"
favorites: "Αγαπημένα"
unfavorite: "Αφαίρεση από αγαπημένα"
favorited: "Προστέθηκε στα αγαπημένα."
alreadyFavorited: "Έχει ήδη προστεθεί στα αγαπημένα."
cantFavorite: "Αδυναμία προσθήκης στα αγαπημένα."
favorite: "Προσθήκη στους σελιδοδείκτες"
favorites: "Σελιδοδείκτες"
unfavorite: "Αφαίρεση από τους σελιδοδείκτες"
favorited: "Προστέθηκε στους σελιδοδείκτες."
alreadyFavorited: "Έχει ήδη προστεθεί στους σελιδοδείκτες."
cantFavorite: "Αδυναμία προσθήκης στους σελιδοδείκτες."
pin: "Καρφίτσωμα στο προφίλ"
unpin: "Ξεκαρφίτσωμα από το προφίλ"
copyContent: "Αντιγραφή περιεχομένων"
copyLink: "Αντιγραφή συνδέσμου"
delete: "Διαγραφή"
deleteAndEdit: "Διαγραφή και επεξεργασία"
deleteAndEditConfirm: "Σίγουρα θέλετε να διαγράψετε αυτό το σημείωμα και να το επεξεργαστείτε; Θα χάσετε όλες τις αντιδράσεις, κοινοποιήσεις και απαντήσεις σε αυτό."
deleteAndEditConfirm: "Σίγουρα θέλετε να διαγράψετε αυτή τη δημοσίευση και να την\
\ επεξεργαστείτε; Θα χάσετε όλες τις αντιδράσεις, προωθήσεις και απαντήσεις σε αυτήν."
addToList: "Προσθήκη στη λίστα"
sendMessage: "Αποστολή μηνύματος"
copyUsername: "Αντιγραφή ονόματος μέλους"
@ -55,20 +55,22 @@ receiveFollowRequest: "Λάβατε αίτημα ακολούθησης"
followRequestAccepted: "Το αίτημα ακολούθησης έγινε δεκτό"
mention: "Επισήμανση"
mentions: "Επισημάνσεις"
directNotes: "Απευθείας σημειώματα"
importAndExport: "Εισαγωγή / Εξαγωγή"
directNotes: "Απευθείας μηνύματα"
importAndExport: "Εισαγωγή/Εξαγωγή Δεδομένων"
import: "Εισαγωγή"
export: "Εξαγωγή"
files: "Αρχεία"
download: "Λήψη"
driveFileDeleteConfirm: "Θέλετε σίγουρα να διαγράψετε το αρχείο \"{name}\"; Τα σημειώματα με αυτό το συνημμένο αρχείο επίσης θα διαγραφούν."
download: "Κατέβασμα"
driveFileDeleteConfirm: "Θέλετε σίγουρα να διαγράψετε το αρχείο \"{name}\"; Οι δημοσιεύσεις\
\ με αυτό το συνημμένο αρχείο επίσης θα διαγραφούν."
unfollowConfirm: "Θέλετε σίγουρα να σταματήσετε να ακολουθείτε το μέλος {name};"
exportRequested: "Ζητήσατε μία εξαγωγή. Αυτό μπορεί να πάρει κάποιον χρόνο. Επίσης θα προστεθεί στον Δίσκο σας μόλις ολοκληρωθεί."
importRequested: "Ζητήσατε μία εισαγωγή. Αυτό μπορεί να πάρει κάποιον χρόνο."
exportRequested: "Ζητήσατε μία εξαγωγή. Αυτό μπορεί να πάρει κάποιον χρόνο. Θα προστεθεί\
\ στον Αποθηκευτικό Χώρο σας μόλις ολοκληρωθεί."
importRequested: "Ζητήσατε μια εισαγωγή. Αυτό μπορεί να πάρει κάποιον χρόνο."
lists: "Λίστες"
noLists: "Δεν έχετε λίστες"
note: "Σημείωμα"
notes: "Σημειώματα"
note: "Δημοσίευση"
notes: "Δημοσιεύσεις"
following: "Ακολουθεί"
followers: "Ακολουθούν"
followsYou: "Σε ακολουθεί"
@ -78,69 +80,74 @@ error: "Σφάλμα"
somethingHappened: "Προέκυψε ένα σφάλμα"
retry: "Προσπάθεια ξανά"
pageLoadError: "Ένα σφάλμα προέκυψε φορτώνοντας τη σελίδα."
pageLoadErrorDescription: "Αυτό κανονικά προκαλείται από σφάλματα δικτύου ή από την προσωρινή μνήμη του προγράμματος περιήγησης. Δοκιμάστε να σβήσετε την προσωρινή μνήμη (cache) και ξαναδοκιμάστε μετά από λίγο."
serverIsDead: "Αυτός ο server δεν αποκρίνεται. Παρακαλώ περιμέντε λίγο και δοκιμάστε ξανά."
youShouldUpgradeClient: "Για να δείτε αυτή τη σελίδα, παρακαλώ επαναφορτώστε για να ενημερωθεί το πρόγραμμα."
pageLoadErrorDescription: "Αυτό κανονικά προκαλείται από σφάλματα δικτύου ή από την\
\ προσωρινή μνήμη του προγράμματος περιήγησης. Δοκιμάστε να σβήσετε την προσωρινή\
\ μνήμη (cache) και να δοκιμάσετε ξανά μετά από λίγο."
serverIsDead: "Αυτός ο διακομιστής (server) δεν αποκρίνεται. Παρακαλώ περιμένετε λίγο\
\ και δοκιμάστε ξανά."
youShouldUpgradeClient: "Για να δείτε αυτή τη σελίδα, παρακαλώ επαναφορτώστε για να\
\ γίνει ενημέρωση."
enterListName: "Πληκτρολογήστε ένα όνομα για τη λίστα"
privacy: "Ιδιωτικότητα"
makeFollowManuallyApprove: "Τα αιτήματα ακολούθησης χρειάζονται έγκριση"
defaultNoteVisibility: "Προεπιλεγμένη ορατότητα"
follow: "Ακολουθήστε"
followRequest: "Στείλτε αίτημα ακολούθησης"
followRequest: "Ακολουθήστε"
followRequests: "Αιτήματα ακολούθησης"
unfollow: "Να μην ακολουθώ"
followRequestPending: "Το αίτημα ακολούθησης εκκρεμεί"
enterEmoji: "Εισάγετε ένα emoji"
renote: "Κοινοποίηση σημειώματος"
unrenote: "Ακύρωση κοινοποίησης"
renoted: "Κοινοποιήθηκε."
cantRenote: "Αυτή η δημοσίευση δεν μπορεί να κοινοποιηθεί."
cantReRenote: "Μία κοινοποίηση δεν μπορεί να κοινοποιηθεί."
renote: "Προώθηση"
unrenote: "Αναίρεση προώθησης"
renoted: "Προωθήθηκε."
cantRenote: "Αυτή η δημοσίευση δεν μπορεί να προωθηθεί."
cantReRenote: "Μία προώθηση δεν μπορεί να προωθηθεί."
quote: "Παράθεση"
pinnedNote: "Καρφιτσωμένο σημείωμα"
pinnedNote: "Καρφιτσωμένη δημοσίευση"
pinned: "Καρφίτσωμα στο προφίλ"
you: "Εσύ"
clickToShow: "Κάντε κλικ για εμφάνιση"
add: "Προσθέστε"
add: "Προσθήκη"
reaction: "Αντιδράσεις"
reactionSetting: "Αντιδράσεις για εμφάνιση στην επιλογή αντίδρασης"
reactionSettingDescription2: "Σύρετε για να αλλάξετε τη σειρά, κάντε κλικ για να διαγράψετε, πατήστε \"+\" για να προσθέσετε."
rememberNoteVisibility: "Θυμήσου τις ρυθμίσεις ορατότητας σημειώματος"
attachCancel: "Διαγραφή αρχείου"
reactionSetting: "Αντιδράσεις που θα εμφανίζονται στον επιλογέα"
reactionSettingDescription2: "Σύρετε για να αλλάξετε τη σειρά, κάντε κλικ για να διαγράψετε,\
\ πατήστε \"+\" για να προσθέσετε."
rememberNoteVisibility: "Θυμήσου τις ρυθμίσεις ορατότητας για τις δημοσιεύσεις"
attachCancel: "Αφαίρεση επισυναπτόμενου"
enterFileName: "Πληκτρολογήστε όνομα αρχείου"
mute: "Σίγαση"
unmute: "Άρση σίγασης"
unmute: "Διακοπή σίγασης"
block: "Μπλοκάρισμα"
unblock: "Άρση μπλοκαρίσματος"
unblock: "Διακοπή μπλοκαρίσματος"
suspend: "Αποβολή"
unsuspend: "Άρση αποβολής"
unsuspend: "Διακοπή αποβολής"
blockConfirm: "Θέλετε σίγουρα να μπλοκάρετε αυτόν τον λογαριασμό;"
unblockConfirm: "Θέλετε σίγουρα να ξεμπλοκάρετε αυτόν τον λογαριασμό;"
suspendConfirm: "Θέλετε σίγουρα να αποβάλλετε αυτόν τον λογαριασμό;"
suspendConfirm: "Θέλετε σίγουρα να αποβάλετε αυτόν τον λογαριασμό;"
unsuspendConfirm: "Θέλετε σίγουρα να άρετε την αποβολή αυτού του λογαριασμού;"
selectList: "Επιλέξτε μία λίστα"
selectAntenna: "Επιλέξτε μία αντένα"
selectWidget: "Επιλέξτε ένα μαραφέτι"
editWidgets: "Επεξεργασία μαραφετίων"
selectList: "Επιλέξτε μια λίστα"
selectAntenna: "Επιλέξτε μια αντένα"
selectWidget: "Επιλέξτε ένα πρόσθετο"
editWidgets: "Επεξεργασία πρόσθετων"
editWidgetsExit: "Ολοκληρώθηκε"
customEmojis: "Επιπλέον emoji"
customEmojis: "Προσαρμοσμένα Emoji"
emojiName: "Όνομα emoji"
addEmoji: "Προσθήκη emoji"
settingGuide: "Συνιστώμενες ρυθμίσεις"
flagAsBot: "Αυτός ο λογαριασμός είναι bot"
flagAsCat: "Αυτός ο λογαριασμός είναι γάτα"
addEmoji: "Προσθήκη"
settingGuide: "Προτεινόμενες ρυθμίσεις"
flagAsBot: "Δήλωση αυτού του λογαριασμού ως bot"
flagAsCat: "Είσαι γατί; \U0001F63A"
flagShowTimelineReplies: "Εμφάνιση απαντήσεων στο χρονολόγιο"
addAccount: "Προσθήκη λογαριασμού"
general: "Γενικές"
wallpaper: "Ταπετσαρία"
setWallpaper: "Ορισμός ταπετσαρίας"
removeWallpaper: "Διαγραφή ταπετσαρίας"
removeWallpaper: "Αφαίρεση ταπετσαρίας"
searchWith: "Αναζήτηση: {q}"
youHaveNoLists: "Δεν έχετε λίστες"
followConfirm: "Θέλετε σίγουρα να ακολουθήσετε τον λογαριασμό {name};"
host: "Φιλοξενεί"
host: "Φιλοξενεί (Host)"
selectUser: "Επιλέξτε ένα μέλος"
recipient: "Αποδέκτης-τρια"
recipient: "Αποδέκτης-τρια(-ες)"
annotation: "Σχόλια"
federation: "Ομοσπονδία"
storageUsage: "Χρήση χώρου"
@ -148,11 +155,11 @@ version: "Έκδοση"
metadata: "Μεταδεδομένα"
network: "Δίκτυο"
disk: "Δίσκος"
instanceInfo: "Πληροφορίες του instance"
instanceInfo: "Πληροφορίες Instance"
statistics: "Στατιστικά"
clearQueue: "Εκκαθάριση ουράς"
clearQueueConfirmTitle: "Θέλετε να διαγράψετε την ουρά;"
clearCachedFiles: "Εκκαθάριση προσωρινής μνήμης"
clearCachedFiles: "Εκκαθάριση προσωρινής μνήμης (cache)"
done: "Ολοκληρώθηκε"
attachFile: "Επισύναψη αρχείων"
more: "Περισσότερα!"
@ -166,12 +173,12 @@ messaging: "Συνομιλία"
upload: "Ανεβάστε"
fromDrive: "Από τον Αποθηκευτικό Χώρο"
fromUrl: "Από URL"
uploadFromUrl: "Ανεβάστε από URL"
explore: "Εξερευνήστε"
uploadFromUrl: "Ανέβασμα από URL"
explore: "Εξερεύνηση"
messageRead: "Διαβάστηκε"
startMessaging: "Ξεκινήστε μία συνομιλία"
startMessaging: "Ξεκινήστε μια νέα συνομιλία"
nUsersRead: "διαβάστηκε από {n}"
tos: "Όροι χρήσης"
tos: "Όροι Χρήσης"
start: "Ας αρχίσουμε"
home: "Κεντρικό"
activity: "Δραστηριότητα"
@ -180,8 +187,8 @@ birthday: "Γενέθλια"
registeredDate: "Έγινε μέλος στις"
location: "Τοποθεσία"
theme: "Θέματα"
light: "Ανοιχτόχρωμο"
dark: "Σκούρο"
light: "Φωτεινό"
dark: "Σκοτεινό"
drive: "Αποθηκευτικός Χώρος"
fileName: "Όνομα αρχείου"
selectFile: "Επιλέξτε ένα αρχείο"
@ -189,16 +196,16 @@ selectFiles: "Επιλέξτε αρχεία"
selectFolder: "Επιλέξτε φάκελο"
selectFolders: "Επιλέξτε φακέλους"
renameFile: "Μετονομασία αρχείου"
addFile: "Προσθήκη αρχείου"
addFile: "Προσθέστε ένα αρχείο"
emptyDrive: "Ο Αποθηκευτικός Χώρος σας είναι άδειος"
copyUrl: "Αντιγραφή URL"
rename: "Αλλαγή ονόματος"
avatar: "Εικονίδιο"
banner: "Πανό"
copyUrl: "Αντιγραφή διεύθυνσης URL"
rename: "Μετονομασία"
avatar: "Άβαταρ"
banner: "Εξώφυλλο"
reload: "Ανανέωση"
doNothing: "Αγνόηση"
watch: "Παρακολούθηση"
unwatch: "Τέλος παρακολούθησης"
unwatch: "Διακοπή παρακολούθησης"
accept: "Αποδοχή"
reject: "Απόρριψη"
normal: "Κανονικό"
@ -212,23 +219,23 @@ connectService: "Σύνδεση"
disconnectService: "Αποσύνδεση"
registration: "Εγγραφή"
pinnedPages: "Καρφιτσωμένες Σελίδες"
pinnedNotes: "Καρφιτσωμένα σημειώματα"
pinnedNotes: "Καρφιτσωμένες δημοσιεύσεις"
antennas: "Αντένες"
manageAntennas: "Διαχείριση αντενών"
manageAntennas: "Διαχείριση Αντενών"
name: "Όνομα"
antennaSource: "Πηγή αντένας"
antennaSource: "Πηγή Αντένας"
antennaKeywords: "Λέξεις-κλειδιά για παρακολούθηση"
antennaExcludeKeywords: "Λέξεις-κλειδιά για αποκλεισμό"
notifyAntenna: "Ειδοποίηση για νέα σημειώματα"
withFileAntenna: "Μόνο σημειώματα με αρχεία"
antennaExcludeKeywords: "Λέξεις-κλειδιά για εξαίρεση"
notifyAntenna: "Ειδοποίηση για νέες δημοσιεύσεις"
withFileAntenna: "Μόνο δημοσιεύσεις με αρχεία"
caseSensitive: "Διάκριση Πεζών-Κεφαλαίων"
popularTags: "Δημοφιλείς ετικέτες"
userList: "Λίστες"
about: "Πληροφορίες"
moderator: "Συντονιστής"
about: "Σχετικά με"
moderator: "Συντονιστής/στρια"
moderation: "Συντονισμός"
cacheClear: "Εκκαθάριση προσωρινής μνήμης"
markAsReadAllNotifications: "Όλες οι ειδοποιήσεις διαβάστηκαν"
cacheClear: "Εκκαθάριση προσωρινής μνήμης (cache)"
markAsReadAllNotifications: "Σημειώστε όλες τις ειδοποιήσεις ως διαβασμένες"
group: "Ομάδα"
groups: "Ομάδες"
createGroup: "Δημιουργία ομάδας"
@ -236,13 +243,13 @@ ownedGroups: "Οι ομάδες σας"
groupName: "Όνομα ομάδας"
members: "Μέλη"
transfer: "Μεταφορά"
messagingWithUser: "Ιδιωτική συνομιλία"
messagingWithUser: "Προσωπική συνομιλία"
messagingWithGroup: "Ομαδική συνομιλία"
title: "Τίτλος"
text: "Κείμενο"
enable: "Ενεργοποίηση"
next: "Επόμενο"
noteOf: "Σημείωμα από {user}"
noteOf: "Δημοσίευση από {user}"
inviteToGroup: "Πρόσκληση στην ομάδα"
quoteAttached: "Παράθεση"
signinRequired: "Παρακαλούμε δημιουργήστε λογαριασμό ή συνδεθείτε πριν συνεχίσετε"
@ -250,26 +257,26 @@ category: "Κατηγορία"
tags: "Ετικέτες"
createAccount: "Δημιουργία λογαριασμού"
local: "Τοπικό"
remote: "Απομακρυσμένo"
remote: "Απομακρυσμένο"
total: "Σύνολο"
appearance: "Εμφάνιση"
accountSettings: "Ρυθμίσεις λογαριασμού"
accountSettings: "Ρυθμίσεις Λογαριασμού"
sounds: "Ήχοι"
sound: "Ήχοι"
listen: "Ακρόαση"
showInPage: "Εμφάνιση στη σελίδα"
volume: "Ένταση"
masterVolume: "Κύρια ένταση"
masterVolume: "Κεντρική ένταση"
details: "Λεπτομέρειες"
install: "Εγκατάσταση"
uninstall: "Κατάργηση εγκατάστασης"
install: "Εγκαταστήστε"
uninstall: "Απεγκατάσταση"
manage: "Διαχείριση"
smtpHost: "Φιλοξενεί"
smtpHost: "Φιλοξενεί (Host)"
smtpUser: "Όνομα μέλους"
smtpPass: "Κωδικός πρόσβασης"
smtpPass: "Κωδικός"
notificationSetting: "Ρυθμίσεις ειδοποιήσεων"
notificationSettingDesc: "Επιλέξτε τους τύπους ειδοποιήσεων που εμφανίζονται"
switchUi: "Αλλαγή UI"
notificationSettingDesc: "Επιλέξτε τους τύπους ειδοποιήσεων για προβολή."
switchUi: "Διάταξη"
clip: "Κλιπ"
driveFilesCount: "Αριθμός αρχείων Αποθηκευτικού Χώρου"
driveUsage: "Χρήση Αποθηκευτικού Χώρου"
@ -293,7 +300,8 @@ manageAccounts: "Διαχείριση Λογαριασμών"
searchByGoogle: "Αναζήτηση"
file: "Αρχεία"
recommended: "Προτεινόμενα"
cannotUploadBecauseNoFreeSpace: "Το ανέβασμα απέτυχε λόγω ανεπαρκούς Αποθηκευτικού Χώρου"
cannotUploadBecauseNoFreeSpace: "Το ανέβασμα απέτυχε λόγω ανεπαρκούς Αποθηκευτικού\
\ Χώρου."
_email:
_follow:
title: "Έχετε ένα νέο ακόλουθο"
@ -327,15 +335,20 @@ _ago:
monthsAgo: "{n} μήνα(ες) πριν"
yearsAgo: "{n} έτος(η) πριν"
_permissions:
"write:drive": "Επεξεργαστείτε ή διαγράψτε τα αρχεία και τους φακέλους του Αποθηκευτικού Χώρου σας"
"read:favorites": "Δείτε τη λίστα των αγαπημένων σας"
"write:favorites": "Επεξεργαστείτε τη λίστα των αγαπημένων σας"
"write:drive": "Επεξεργαστείτε ή διαγράψτε τα αρχεία και τους φακέλους του Αποθηκευτικού\
\ Χώρου σας"
"read:favorites": "Δείτε τη λίστα με τους σελιδοδείκτες σας"
"write:favorites": "Επεξεργαστείτε τη λίστα με τους σελιδοδείκτες σας"
"read:messaging": "Δείτε τις συνομιλίες σας"
"write:messaging": "Γράψτε ή διαγράψτε μηνύματα συνομιλίας"
"read:notifications": "Δείτε τις ειδοποιήσεις σας"
"write:notifications": "Διαχειριστείτε τις ειδοποιήσεις σας"
"read:pages": "Δείτε τις Σελίδες σας"
"write:pages": "Επεξεργαστείτε ή διαγράψτε τις σελίδες σας"
"write:gallery-likes": Επεξεργασία της λίστας των αγαπημένων σας δημοσιεύσεων γκαλερί
"read:gallery": Δείτε την γκαλερί σας
"write:gallery": Επεξεργασία της γκαλερί σας
"read:gallery-likes": Δείτε τη λίστα των αγαπημένων σας δημοσιεύσεων γκαλερί
_antennaSources:
all: "Όλα τα σημειώματα"
homeTimeline: "Σημειώματα από μέλη που ακολουθείτε"
@ -368,6 +381,7 @@ _visibility:
_profile:
name: "Όνομα"
username: "Όνομα μέλους"
changeAvatar: Αλλαγή άβαταρ
_exportOrImport:
allNotes: "Όλα τα σημειώματα"
followingList: "Ακολουθεί"
@ -398,11 +412,408 @@ _notification:
reply: "Απάντηση"
renote: "Κοινοποίηση σημειώματος"
_deck:
widgetsIntroduction: "Παρακαλούμε επιλέξτε \"Επεξεργασία μαραφετίων\" στο μενού και προσθέστε μαραφέτι."
widgetsIntroduction: "Παρακαλούμε επιλέξτε \"Επεξεργασία πρόσθετων\" στο μενού και\
\ προσθέστε μαραφέτι."
_columns:
widgets: "Μαραφέτια"
widgets: "Πρόσθετα"
notifications: "Ειδοποιήσεις"
tl: "Χρονολόγιο"
antenna: "Αντένες"
list: "Λίστα"
mentions: "Επισημάνσεις"
sensitive: Ευαίσθητο περιεχόμενο (NSFW)
createFolder: Δημιουργία φακέλου
uploadFromUrlDescription: Το URL του αρχείου που θέλετε να ανεβάσετε
emptyFolder: Αυτός ο φάκελος είναι άδειος
unableToDelete: Αδυναμία διαγραφής
recentlyUpdatedUsers: Πρόσφατα ενεργά μέλη
recentlyRegisteredUsers: Νέα μέλη
exploreUsersCount: Υπάρχουν {count} μέλη
help: Βοήθεια
inputNewFileName: Πληκτρολογήστε ένα νέο όνομα αρχείου
nothing: Δεν υπάρχει τίποτα να δείτε εδώ
newNoteRecived: Υπάρχουν νέες δημοσιεύσεις
passwordMatched: Ταιριάζει
unmarkAsSensitive: Αναίρεση επισήμανσης ως Ευαίσθητο Περιεχόμενο (NSFW)
blockedUsers: Μπλοκαρισμένα μέλη
noteDeleteConfirm: Θέλετε σίγουρα να διαγράψετε αυτή τη δημοσίευση;
preview: Προεπισκόπηση
noCustomEmojis: Δεν υπάρχουν emoji
tosUrl: URL Όρων Χρήσης
monthX: '{month}'
markAsReadAllTalkMessages: Σημειώστε όλα τα μηνύματα ως διαβασμένα
inputMessageHere: Γράψτε εδώ το μήνυμά σας
close: Κλείσιμο
newMessageExists: Υπάρχουν νέα μηνύματα
usernameInvalidFormat: Μπορείτε να χρησιμοποιήσετε κεφαλαία και μικρά γράμματα, αριθμούς,
και κάτω παύλες.
tooShort: Πολύ σύντομο
passwordNotMatched: Δεν ταιριάζει
existingAccount: Υπάρχων λογαριασμός
deleteAll: Διαγραφή όλων
chooseEmoji: Επιλέξτε ένα emoji
sort: Ταξινόμηση
descendingOrder: Φθίνουσα
deleteAllFiles: Διαγραφή όλων των αρχείων
userSuspended: Αυτό το μέλος έχει αποβληθεί.
menu: Μενού
divider: Χώρισμα
deletedNote: Διαγραμμένη δημοσίευση
useCw: Απόκρυψη περιεχομένου
description: Περιγραφή
width: Πλάτος
disableAll: Απενεργοποίηση όλων
notificationType: Τύπος ειδοποίησης
wordMute: Σίγαση λέξεων
userSaysSomething: '{name} είπε κάτι'
metrics: Μετρήσεις
overview: Γενική εικόνα
database: Βάση δεδομένων
channel: Κανάλια
other: Άλλα
abuseReports: Αναφορές
reportAbuse: Αναφορά
unclip: Ακύρωση κλιπ
public: Δημόσιο
renotedCount: Αριθμός προωθήσεων που ελήφθησαν
alwaysMarkSensitive: Επισήμανση ως ευαίσθητο περιεχόμενο (NSFW) ως προεπιλογή
markAllAsRead: Σημειώστε τα όλα ως διαβασμένα
_gallery:
like: Μου αρέσει
liked: Αγαπημένες δημοσιεύσεις
my: Η Γκαλερί μου
unlike: Δεν μου αρέσει
showOnRemote: Δείτε στο απομακρυσμένο instance
perDay: Ανά Ημέρα
software: Λογισμικό
cpuAndMemory: CPU και Μνήμη
noUsers: Δεν υπάρχουν μέλη
processing: Επεξεργασία
changePassword: Αλλαγή κωδικού
security: Ασφάλεια
featured: Προτεινόμενα
keepOriginalUploading: Διατήρηση πρωτότυπης εικόνας
manageGroups: Διαχείριση ομάδων
deleteFolder: Διαγραφή φακέλου
nsfw: Ευαίσθητο περιεχόμενο (NSFW)
nUsersMentioned: Έχει αναφερθεί από {n} μέλη
notFound: Δεν βρέθηκε
markAsReadAllUnreadNotes: Σημειώστε όλες τις δημοσιεύσεις ως διαβασμένες
invites: Προσκλήσεις
quoteQuestion: Να προστεθεί ως Παράθεση;
noMessagesYet: Δεν υπάρχουν μηνύματα ακόμη
onlyOneFileCanBeAttached: Μπορείτε να επισυνάψετε μόνο ένα αρχείο σε ένα μήνυμα
tooLong: Υπερβολικά μακροσκελές
or: Ή
language: Γλώσσα
groupInvited: Προσκληθήκατε σε μία ομάδα
ascendingOrder: Αύξουσα
visibility: Ορατότητα
invisibleNote: Αόρατη δημοσίευση
enableInfiniteScroll: Αυτόματη φόρτωση περισσοτέρων
poll: Ψηφοφορία
enablePlayer: Άνοιγμα προβολής βίντεο
large: Μεγάλο
medium: Μεσαίο
small: Μικρό
postToGallery: Δημιουργία νέας δημοσίευσης γκαλερί
reloadConfirm: Θα θέλατε να ανανεώσετε το χρονολόγιο;
enableAll: Ενεργοποίηση όλων
permission: Εξουσιοδοτήσεις
sample: Δείγμα
copy: Αντιγραφή
display: Προβολή
send: Αποστολή
behavior: Συμπεριφορά
useGlobalSetting: Χρήση παγκόσμιων ρυθμίσεων
abuseMarkAsResolved: Επισήμανση της αναφοράς ως επιλυμένης
openInNewTab: Άνοιγμα σε νέα καρτέλα
_sensitiveMediaDetection:
setSensitiveFlagAutomatically: Επισήμανση ως ευαίσθητο περιεχόμενο (NSFW)
defaultNavigationBehaviour: Προεπιλεγμένη συμπεριφορά περιήγησης
system: Σύστημα
createNew: Δημιουργία νέου
createNewClip: Δημιουργία νέου κλιπ
repliesCount: Αριθμός απεσταλμένων απαντήσεων
optional: Προαιρετικό
renotesCount: Αριθμός προωθήσεων σε δημοσιεύσεις άλλων
addItem: Προσθήκη αντικειμένου
disablePlayer: Κλείσιμο προβολής βίντεο
describeFile: Προσθήκη περιγραφής
enterFileDescription: Πληκτρολογήστε περιγραφή
author: Συντάκτης/τρια
setMultipleBySeparatingWithSpace: Διαχωρίστε πολλαπλές καταχωρήσεις με κενά.
random: Τυχαίο
accountInfo: Πληροφορίες Λογαριασμού
notesCount: Αριθμός δημοσιεύσεων
repliedCount: Αριθμός απαντήσεων που ελήφθησαν
flagAsCatDescription: Θα έχεις γατοαυτιά και θα μιλάς σαν γατί!
muteAndBlock: Σιγάσεις και Μπλοκαρίσματα
mutedUsers: Σιγασμένα μέλη
editProfile: Επεξεργασία προφίλ
pinLimitExceeded: Δεν μπορείτε να καρφιτσώσετε άλλες δημοσιεύσεις
currentPassword: Τρέχων κωδικός
newPassword: Νέος κωδικός
newPasswordRetype: Ξαναπληκτρολογήστε τον νέο κωδικό
notesAndReplies: Δημοσιεύσεις και απαντήσεις
popularUsers: Δημοφιλή μέλη
share: Κοινοποίηση
retype: Πληκτρολογήστε ξανά
invitations: Προσκλήσεις
available: Διαθέσιμο
unavailable: Μη διαθέσιμο
youHaveNoGroups: Δεν έχετε ομάδες
doing: Επεξεργασία...
yourAccountSuspendedTitle: Αυτός ο λογαριασμός έχει αποβληθεί
leaveConfirm: Υπάρχουν αλλαγές που δεν έχουν σωθεί. Θέλετε να τις απορρίψετε;
height: Ύψος
edit: Επεξεργασία
headlineMisskey: Μία ανοιχτού λογισμικού, αποκεντρωμένη πλατφόρμα κοινωνικής δικτύωσης
που θα είναι για πάντα ελεύθερη! 🚀
introMisskey: Καλώς ήρθατε! Το Calckey είναι μία ανοιχτού λογισμικού, αποκεντρωμένη
πλατφόρμα κοινωνικής δικτύωσης που θα είναι για πάντα ελεύθερη! 🚀
markAsSensitive: Επισήμανση ως Ευαίσθητο Περιεχόμενο (NSFW)
autoAcceptFollowed: Αυτόματη έγκριση αιτημάτων ακολούθησης από λογαριασμούς που ακολουθείτε
loginFailed: Αποτυχία σύνδεσης
accountMoved: 'Έχει μεταφερθεί σε νέο λογαριασμό:'
perHour: Ανά Ώρα
remoteUserCaution: Οι πληροφορίες από απομακρυσμένους λογαριασμούς μπορεί να είναι
ατελείς.
folderName: Όνομα φακέλου
renameFolder: Μετονομασία φακέλου
recentUsed: Χρησιμοποιήθηκαν πρόσφατα
deleteAllFilesConfirm: Σίγουρα θέλετε να διαγράψετε όλα τα αρχεία;
removeAllFollowing: Διακοπή ακολούθησης όλων των ακολουθούμενων μελών
userSilenced: Αυτό το μέλος είναι υπό σιώπηση.
makeActive: Ενεργοποίηση
create: Δημιουργία
reportAbuseOf: Αναφορά {name}
cacheRemoteFilesDescription: Όταν αυτή η ρύθμιση είναι απενεργοποιημένη, τα απομακρυσμένα
αρχεία φορτώνονται απευθείας από το απομακρυσμένο instance. Η απενεργοποίηση θα
μειώσει τη χρήση του δίσκου σας, αλλά θα αυξήσει την κίνηση δεδομένων, καθώς δεν
θα δημιουργούνται σμικρύνσεις αρχείων (thumbnails).
registeredAt: Εγγράφηκε στις
latestStatus: Τελευταία κατάσταση
charts: Πίνακες
stopActivityDelivery: Σταμάτα να στέλνεις δραστηριότητες
operations: Λειτουργίες
monitor: Παρακολούθηση
jobQueue: Ουρά εργασιών
blockedInstances: Μπλοκαρισμένα Instances
blockedInstancesDescription: Παραθέστε τις διευθύνσεις (hostnames) των instances που
θέλετε να μπλοκάρετε. Τα παρακάτω instances δεν θα μπορούν πλέον να επικοινωνούν
με αυτό το instance.
intro: Η εγκατάσταση του Calckey τελείωσε! Παρακαλώ δημιουργήστε ένα μέλος διαχειριστή/στρια.
noThankYou: Όχι, ευχαριστώ
addInstance: Προσθήκη instance
renoteMute: Σίγαση προωθήσεων
emojiUrl: Διεύθυνση emoji (URL)
cacheRemoteFiles: Προσωρινή αποθήκευση απομακρυσμένων αρχείων
flagSpeakAsCat: Να μιλάς σαν γατί
flagSpeakAsCatDescription: Οι δημοσιεύσεις σου θα nyaοποιούνται όταν είσαι γατί
selectInstance: Επιλέξτε ένα instance
latestRequestSentAt: Τελευταίο αίτημα στάλθηκε
hiddenTags: Κρυμμένες Ετικέτες (Hashtags)
noInstances: Δεν υπάρχουν instances
renoteUnmute: Διακοπή σίγασης προωθήσεων
flagAsBotDescription: Ενεργοποιήστε αυτή την επιλογή αν αυτός ο λογαριασμός ελέγχεται
από ένα πρόγραμμα. Αν ενεργοποιηθεί, θα λειτουργεί σαν σημάδι για τους προγραμματιστές,
ώστε να αποφύγουν ατέρμονη αλληλεπίδραση με άλλα bots και για να ρυθμίσει τα εσωτερικά
συστήματα του Calckey ώστε να αντιμετωπίζουν αυτόν τον λογαριασμό ως bot.
flagShowTimelineRepliesDescription: Εμφάνιση απαντήσεων μελών σε δημοσιεύσεις άλλων
μελών στο χρονολόγιο.
latestRequestReceivedAt: Τελευταίο αίτημα ελήφθη
blockThisInstance: Μπλοκάρισμα αυτού του instance
clearQueueConfirmText: Τυχόν δημοσιεύσεις στην ουρά που δεν έχουν αποσταλεί δεν θα
ομοσπονδοποιηθούν. Συνήθως αυτή η λειτουργία δεν χρειάζεται.
clearCachedFilesConfirm: Σίγουρα θέλετε να διαγράψετε όλα τα προσωρινά αποθηκευμένα
απομακρυσμένα αρχεία;
default: Προεπιλεγμένο
defaultValueIs: 'Προεπιλεγμένο: {value}'
noJobs: Δεν υπάρχουν εργασίες (jobs)
federating: Ομοσπονδοποιείται
blocked: Μπλοκαρισμένο
suspended: Σε αποβολή
instanceFollowing: Ακολουθεί στο instance
instanceFollowers: Ακόλουθοι του instance
instanceUsers: Μέλη αυτού του instance
retypedNotMatch: Οι καταχωρήσεις δεν ταιριάζουν.
usernameOrUserId: Όνομα μέλους ή ταυτότητα μέλους (id)
removeAreYouSure: Θέλετε σίγουρα να αφαιρέσετε το "{x}";
deleteAreYouSure: Θέλετε σίγουρα να διαγράψετε το "{x}";
resetAreYouSure: Σίγουρα επανεκκίνηση;
uploadFromUrlMayTakeTime: Ίσως πάρει λίγο χρόνο μέχρι το ανέβασμα να ολοκληρωθεί.
noMoreHistory: Δεν υπάρχει περαιτέρω ιστορικό
agreeTo: Συμφωνώ στο {0}
yearsOld: '{age} ετών'
themeForDarkMode: Θέμα για τη Σκοτεινή Λειτουργία
syncDeviceDarkMode: Συγχρονισμός της Σκοτεινής Λειτουργίας με τις ρυθμίσεις της συσκευής
σας
inputNewDescription: Προσθέστε νέα περιγραφή
whenServerDisconnected: Όταν χάνεται η σύνδεση στον σέρβερ
disconnectedFromServer: Η σύνδεση στον σέρβερ έχει χαθεί
instanceDescription: Περιγραφή instance
maintainerEmail: Διεύθυνση email προγραμματιστή/στριας
yearX: '{year}'
enableGlobalTimeline: Ενεργοποίηση παγκόσμιου χρονολογίου
enableLocalTimeline: Ενεργοποίηση τοπικού χρονολογίου
enableRegistration: Ενεργοποίηση εγγραφής νέων μελών
invite: Πρόσκληση
disablingTimelinesInfo: Οι Διαχειρίστριες-ες και οι Συντονιστές-στριες θα έχουν πάντα
πρόσβαση σε όλα τα χρονολόγια, ακόμα κι αν δεν είναι ενεργοποιημένα.
inMb: Σε megabytes
iconUrl: Διεύθυνση URL εικονιδίου
bannerUrl: Διεύθυνση URL εικόνας Εξώφυλλου
pinnedUsers: Καρφιτσωμένα μέλη
hcaptchaSiteKey: Κλειδί του site
recaptcha: Προστασία reCAPTCHA
enableServiceworker: Ενεργοποίηση Ειδοποιήσεων Push για τον browser σας
recentlyDiscoveredUsers: Μέλη που ανακαλύφθηκαν πρόσφατα
twoStepAuthentication: Επαλήθευση δύο παραγόντων
securityKey: Κλειδί ασφάλειας
registerSecurityKey: Καταχωρήστε ένα κλειδί ασφάλειας
resetPassword: Επαναφορά κωδικού
newPasswordIs: Ο νέος κωδικός είναι "{password}"
uploadFolder: Προεπιλεγμένος φάκελος για ανέβασμα αρχείων
joinedGroups: Οι ομάδες που είστε μέλος
checking: Έλεγχος...
invitationCode: Κωδικός πρόσκλησης
normalPassword: Μέτριος κωδικός
weakPassword: Αδύναμος κωδικός
strongPassword: Δυνατός κωδικός
signinWith: Συνδεθείτε με {x}
tapSecurityKey: Βάλτε το κλειδί ασφάλειας
signinFailed: Αδυναμία σύνδεσης. Το όνομα μέλους ή ο κωδικός είναι λάθος.
aboutX: Σχετικά με {x}
useOsNativeEmojis: Χρήση των Emoji του λειτουργικού συστήματος
uiLanguage: Γλώσσα διεπαφής
disableDrawer: Να μη χρησιμοποιούνται μενού σε στιλ συρταριού
noHistory: Δεν υπάρχει διαθέσιμο ιστορικό
joinOrCreateGroup: Λάβετε πρόσκληση για μία ομάδα ή δημιουργήστε τη δική σας.
docSource: Πηγή αυτού του εγγράφου
regenerate: Επαναδημιουργία
fontSize: Μέγεθος γραμματοσειράς
noFollowRequests: Δεν έχετε αιτήματα ακολούθησης σε αναμονή
dashboard: Ταμπλό
clientSettings: Ρυθμίσεις διεπαφής
numberOfDays: Αριθμός ημερών
hideThisNote: Απόκρυψη αυτής της δημοσίευσης
showFeaturedNotesInTimeline: Εμφάνιση προτεινόμενων δημοσιεύσεων στα χρονολόγια
objectStorage: Αποθήκευση Object Storage
useObjectStorage: Χρήση object storage
objectStorageBucket: ''
showFixedPostForm: Εμφάνιση της φόρμας δημοσίευσης στο πάνω μέρος των χρονολογίων
none: Κανένα
unableToProcess: Η επιχείρηση ήταν αδύνατο να ολοκληρωθεί
installedApps: Εφαρμογές με εξουσιοδότηση
state: Κατάσταση
installedDate: Εξουσιοδοτήθηκε στις
lastUsedDate: Χρησιμοποιήθηκε τελευταία φορά στις
scratchpadDescription: Το σημειωματάριο παρέχει ένα περιβάλλον για πειραματισμό με
AiScript. Σε αυτό μπορείτε να γράψετε, να εκτελέσετε, και να δοκιμάσετε τα αποτελέσματα
της αλληλεπίδρασης του AiScript με το Calckey.
scratchpad: Σημειωματάριο
output: Αποτέλεσμα
updateRemoteUser: Ανανέωση πληροφοριών απομακρυσμένου μέλους
disablePagesScript: Απενεργοποίηση του AiScript στις Σελίδες
removeAllFollowingDescription: Η εκτέλεση θα διακόψη την ακολούθηση όλων των μελών
από {host}. Παρακαλούμε εκτελέστε το αν το instance π.χ. δεν υπάρχει πια.
caption: Αυτόματη Περιγραφή
all: Όλα
subscribing: Εγγραφή σε συνδρομή
publishing: Δημοσιεύεται
notResponding: Δεν αποκρίνεται
keepOriginalUploadingDescription: Αποθηκεύει το πρωτότυπο αρχείο όπως είναι. Αν απενεργοποιηθεί,
μία έκδοση για προβολή στο ίντερνετ θα δημιουργηθεί κατά το ανέβασμα.
lookup: Αναζήτηση
lightThemes: Φωτεινά θέματα
darkThemes: Σκοτεινά θέματα
inputNewFolderName: Πληκτρολογήστε ένα νέο όνομα φακέλου
hasChildFilesOrFolders: Εφόσον αυτός ο φάκελος δεν είναι άδειος, δεν μπορεί να διαγραφεί.
integration: Ενσωματώσεις
enableRecommendedTimeline: Ενεργοποίηση χρονολογίου προτεινόμενων
driveCapacityPerLocalAccount: Μέγεθος Αποθηκευτικού Χώρου ανά τοπικό μέλος
driveCapacityPerRemoteAccount: Μέγεθος Αποθηκευτικού Χώρου ανά απομακρυσμένο μέλος
basicInfo: Βασικές πληροφορίες
pinnedClipId: Ταυτότητα (id) του κλιπ για καρφίτσωμα
hcaptcha: Προστασία hCaptcha
enableHcaptcha: Ενεργοποίηση hCaptcha
hcaptchaSecretKey: Μυστικό κλειδί
enableRecaptcha: Ενεργοποίηση reCAPTCHA
recaptchaSiteKey: Κλειδί του site
recaptchaSecretKey: Μυστικό κλειδί
antennaKeywordsDescription: Διαχωρίστε με κενά για συνθήκη ΚΑΙ ή με αλλαγή γραμμής
για συνθήκη Ή.
antennaUsersDescription: Παραθέστε ένα όνομα μέλους ανά γραμμή
antennaInstancesDescription: Παραθέστε ένα instance host ανά γραμμή
withReplies: Να περιλαμβάνονται οι απαντήσεις
withFiles: Να περιλαμβάνουν αρχεία
silence: Σιώπηση
silenceConfirm: Θέλετε σίγουρα να σιωπήσετε αυτό το μέλος;
unsilenceConfirm: Σίγουρα θέλετε να αναιρέσετε τη σιώπηση αυτού του μέλους;
securityKeyName: Όνομα κλειδιού
lastUsed: Τελευταία χρήση
unregister: Απεγγραφή
notFoundDescription: Δεν ήταν δυνατό να βρεθεί σελίδα που να ανταποκρίνεται σε αυτή
τη διεύθυνση URL.
signinHistory: Ιστορικό συνδέσεων
disableAnimatedMfm: Απενεργοποίηση του MFM με κίνηση
dayOverDayChanges: Αλλαγές την τελευταία ημέρα
promotion: Προμοταρισμένα
promote: Προμοτάρισμα
squareAvatars: Εμφάνιση τετραγωνισμένων άβαταρ
aboutMisskey: Σχετικά με το Calckey
maintainerName: Προγραμματιστής/στρια
uploadFromUrlRequested: Το ανέβασμα ζητήθηκε
themeForLightMode: Θέμα για τη Φωτεινή Λειτουργία
circularReferenceFolder: Ο φάκελος του προορισμού είναι υποφάκελος του φακέλου που
θέλετε να μετακινήσετε.
backgroundImageUrl: Διεύθυνση URL εικόνας φόντου
pinnedUsersDescription: Παραθέστε τα ονόματα μελών που θα είναι καρφιτσωμένα στην
καρτέλα "Εξερεύνηση" χωρίζοντάς τα με αλλαγή γραμμής.
openImageInNewTab: Άνοιγμα εικόνων σε νέα καρτέλα
weekOverWeekChanges: Αλλαγές την τελευταία εβδομάδα
exploreFediverse: Εξερευνήστε το Fediverse
unsilence: Αναίρεση σιώπησης
administrator: Διαχειριστής/στρια
passwordLessLogin: Σύνδεση χωρίς κωδικό
reduceUiAnimation: Ελάττωση των κινούμενων εικόνων
serviceworkerInfo: Πρέπει να είναι ενεργοποιημένο για ειδοποιήσεις push.
expandTweet: Διεύρυνση τουιτ
themeEditor: Επεξεργασία θεμάτων
deck: Ντεκ
undeck: Έξοδος από το Ντεκ
useFullReactionPicker: Χρήση επιλογέα αντιδράσεων πλήρους μεγέθους
tokenRequested: Παροχή πρόσβασης στον λογαριασμό
emailServer: Σέρβερ email
enableEmail: Ενεργοποίηση του email distribution
emailAddress: Διεύθυνση email
emailConfigInfo: Χρησιμοποιείται για επιβεβαίωση του email σας κατά την εγγραφή ή
αν ξεχάσετε τον κωδικό σας
regenerateLoginToken: Επαναδημιουργία token σύνδεσης
fileIdOrUrl: Ταυτότητα αρχείου (ID) ή διεύθυνση URL
typingUsers: '{users} πληκτρολογεί'
yourAccountSuspendedDescription: Αυτός ο λογαριασμός έχει αποβληθεί λόγω μη συμμόρφωσης
με τους κανόνες του σέρβερ ή κάτι παρόμοιο. Επικοινωνήστε με τον διαχειριστή/στρια
αν θα θέλατε έναν πιο λεπτομερή λόγο. Παρακαλούμε μη δημιουργήσετε νέο λογαριασμό.
inboxUrl: Διεύθυνση URL των Εισερχομένων
generateAccessToken: Δημιουργία token πρόσβασης
emptyToDisableSmtpAuth: Αφήστε το όνομα μέλους και τον κωδικό άδεια για να απενεργοποιήσετε
την επαλήθευση SMTP
instanceMute: Σιγάσεις instance
userSaysSomethingReason: '{name} είπε {reason}'
logs: Αρχεία καταγραφής
abuseReported: Η αναφορά σας στάλθηκε. Ευχαριστούμε πολύ.
reporter: Έκανε την αναφορά
reporteeOrigin: Καταγωγή αναφερόμενου λογαριασμού
reporterOrigin: Καταγωγή λογαριασμού που έκανε την αναφορά
forwardReport: Προώθηση της αναφοράς στο απομακρυσμένο instance
openInSideView: Άνοιγμα σε προβολή παράθεσης
delayed: Με καθυστέρηση
useGlobalSettingDesc: Αν ενεργοποιηθεί, οι ρυθμίσεις ειδοποιήσεων του λογαριασμού
σας θα χρησιμοποιηθούν. Αν απενεργοποιηθεί, μπορούν να γίνουν ανεξάρτητες ρυθμίσεις.
fillAbuseReportDescription: Παρακαλούμε συμπληρώστε λεπτομέρειες σχετικά με αυτή την
αναφορά. Αν πρόκειται για συγκεκριμένη δημοσίευση, παρακαλούμε συμπεριλάβετε τη
διεύθυνση URL της δημοσίευσης.
forwardReportIsAnonymous: Αντί για τον λογαριασμό σας, μία ανώνυμη αναφορά από λογαριασμό
του συστήματος θα εμφανιστεί στο απομακρυσμένο instance.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

970
locales/fi.yml Normal file
View File

@ -0,0 +1,970 @@
_lang_: "Suomi"
username: Käyttäjänimi
fetchingAsApObject: Hae Fedeversestä
gotIt: Selvä!
cancel: Peruuta
enterUsername: Anna käyttäjänimi
renotedBy: Buustannut {user}
noNotes: Ei lähetyksiä
noNotifications: Ei ilmoituksia
instance: Instanssi
settings: Asetukset
basicSettings: Perusasetukset
otherSettings: Muut asetukset
openInWindow: Avaa ikkunaan
profile: Profiili
timeline: Aikajana
noAccountDescription: Käyttäjä ei ole vielä kirjoittanut kuvaustaan vielä.
login: Kirjaudu sisään
loggingIn: Kirjautuu sisään
logout: Kirjaudu ulos
uploading: Tallentaa ylös...
save: Tallenna
favorites: Kirjanmerkit
unfavorite: Poista kirjanmerkeistä
favorited: Lisätty kirjanmerkkeihin.
alreadyFavorited: Lisätty jo kirjanmerkkeihin.
cantFavorite: Ei voitu lisätä kirjanmerkkeihin.
pin: Kiinnitä profiiliin
unpin: Irroita profiilista
delete: Poista
forgotPassword: Unohtunut salasana
search: Etsi
notifications: Ilmoitukset
password: Salasana
ok: OK
noThankYou: Ei kiitos
signup: Rekisteröidy
users: Käyttäjät
addUser: Lisää käyttäjä
addInstance: Lisää instanssi
favorite: Lisää kirjanmerkkeihin
copyContent: Kopioi sisältö
deleteAndEdit: Poista ja muokkaa
copyLink: Kopioi linkki
makeFollowManuallyApprove: Seuraajapyyntö vaatii hyväksymistä
follow: Seuraa
pinned: Kiinnitä profiiliin
followRequestPending: Seuraajapyyntö odottaa
you: Sinä
unrenote: Peruuta buustaus
reaction: Reaktiot
reactionSettingDescription2: Vedä uudelleenjärjestelläksesi, napsauta poistaaksesi,
paina "+" lisätäksesi.
attachCancel: Poista liite
enterFileName: Anna tiedostonimi
mute: Hiljennä
unmute: Poista hiljennys
headlineMisskey: Avoimen lähdekoodin, hajautettu sosiaalisen median alusta, joka on
ikuisesti ilmainen! 🚀
monthAndDay: '{day}/{month}'
deleteAndEditConfirm: Oletko varma, että haluat poistaa tämän lähetyksen ja muokata
sitä? Menetät kaikki reaktiot, buustaukset ja vastaukset lähetyksestäsi.
addToList: Lisää listaan
sendMessage: Lähetä viesti
reply: Vastaa
loadMore: Lataa enemmän
showMore: Näytä enemmän
receiveFollowRequest: Seuraajapyyntö vastaanotettu
followRequestAccepted: Seuraajapyyntö hyväksytty
mentions: Maininnat
importAndExport: Tuo/Vie Tietosisältö
import: Tuo
export: Vie
files: Tiedostot
download: Lataa
unfollowConfirm: Oletko varma, ettet halua seurata enää käyttäjää {name}?
noLists: Sinulla ei ole listoja
note: Viesti
notes: Viestit
following: Seuraa
createList: Luo lista
manageLists: Hallitse listoja
error: Virhe
somethingHappened: On tapahtunut virhe
retry: Yritä uudelleen
pageLoadError: Virhe ladattaessa sivua.
serverIsDead: Tämä palvelin ei vastaa. Yritä hetken kuluttua uudelleen.
youShouldUpgradeClient: Nähdäksesi tämän sivun, virkistä päivittääksesi asiakasohjelmasi.
privacy: Tietosuoja
defaultNoteVisibility: Oletusnäkyvyys
followRequest: Seuraajapyyntö
followRequests: Seuraajapyynnöt
unfollow: Poista seuraaminen
enterEmoji: Syötä emoji
renote: Buustaa
renoted: Buustattu.
cantRenote: Tätä lähetystä ei voi buustata.
cantReRenote: Buustausta ei voi buustata.
quote: Lainaus
pinnedNote: Lukittu lähetys
clickToShow: Napsauta nähdäksesi
sensitive: Herkkää sisältöä (NSFW)
add: Lisää
enableEmojiReactions: Ota käyttöön emoji-reaktiot
showEmojisInReactionNotifications: Näytä emojit reaktioilmoituksissa
reactionSetting: Reaktiot näytettäväksi reaktiovalitsimessa
rememberNoteVisibility: Muista lähetyksen näkyvyysasetukset
markAsSensitive: Merkitse herkäksi sisällöksi (NSFW)
unmarkAsSensitive: Poista merkintä herkkää sisältöä (NSFW)
renoteMute: Hiljennä buustit
renoteUnmute: Poista buustien hiljennys
block: Estä
unblock: Poista esto
unsuspend: Poista keskeytys
suspend: Keskeytys
blockConfirm: Oletko varma, että haluat estää tämän tilin?
unblockConfirm: Oletko varma, että haluat poistaa tämän tilin eston?
selectAntenna: Valitse antenni
selectWidget: Valitse vimpain
editWidgets: Muokkaa vimpaimia
editWidgetsExit: Valmis
emoji: Emoji
emojis: Emojit
emojiName: Emojin nimi
emojiUrl: Emojin URL-linkki
cacheRemoteFiles: Taltioi etätiedostot välimuistiin
flagAsBot: Merkitse tili botiksi
flagAsBotDescription: Ota tämä vaihtoehto käyttöön, jos tätä tiliä ohjaa ohjelma.
Jos se on käytössä, se toimii lippuna muille kehittäjille, jotta estetään loputtomat
vuorovaikutusketjut muiden bottien kanssa ja säädetään Calckeyn sisäiset järjestelmät
käsittelemään tätä tiliä botina.
flagAsCat: Oletko kissa? 🐱
flagAsCatDescription: Saat kissan korvat ja puhut kuin kissa!
flagSpeakAsCat: Puhu kuin kissa
flagShowTimelineReplies: Näytä vastaukset aikajanalla
addAccount: Lisää tili
loginFailed: Kirjautuminen epäonnistui
showOnRemote: Katsele etäinstanssilla
general: Yleistä
accountMoved: 'Käyttäjä on muuttanut uuteen tiliin:'
wallpaper: Taustakuva
setWallpaper: Aseta taustakuva
searchWith: 'Etsi: {q}'
youHaveNoLists: Sinulla ei ole listoja
followConfirm: Oletko varma, että haluat seurata käyttäjää {name}?
host: Isäntä
selectUser: Valitse käyttäjä
annotation: Kommentit
registeredAt: Rekisteröity
latestRequestReceivedAt: Viimeisin pyyntö vastaanotettu
latestRequestSentAt: Viimeisin pyyntö lähetetty
storageUsage: Tallennustilan käyttö
charts: Kaaviot
stopActivityDelivery: Lopeta toimintojen lähettäminen
blockThisInstance: Estä tämä instanssi
operations: Toiminnot
metadata: Metatieto
monitor: Seuranta
jobQueue: Työjono
cpuAndMemory: Prosessori ja muisti
network: Verkko
disk: Levy
clearCachedFiles: Tyhjennä välimuisti
clearCachedFilesConfirm: Oletko varma, että haluat tyhjentää kaikki välimuistiin tallennetut
etätiedostot?
blockedInstances: Estetyt instanssit
hiddenTags: Piilotetut asiatunnisteet
mention: Maininta
copyUsername: Kopioi käyttäjänimi
searchUser: Etsi käyttäjää
showLess: Sulje
youGotNewFollower: seurasi sinua
directNotes: Yksityisviestit
driveFileDeleteConfirm: Oletko varma, että haluat poistaa tiedoston " {name}"? Se
poistetaan kaikista viesteistä, jotka sisältävät sen liitetiedostona.
importRequested: Olet pyytänyt viemistä. Tämä voi viedä hetken.
exportRequested: Olet pyytänyt tuomista. Tämä voi viedä hetken. Se lisätään asemaan
kun tuonti valmistuu.
lists: Listat
followers: Seuraajat
followsYou: Seuraa sinua
pageLoadErrorDescription: Tämä yleensä johtuu verkkovirheistä tai selaimen välimuistista.
Kokeile tyhjentämällä välimuisti ja yritä sitten hetken kuluttua uudelleen.
enterListName: Anna listalle nimi
instanceInfo: Instanssin tiedot
clearQueue: Tyhjennä jono
suspendConfirm: Oletko varma, että haluat keskeyttää tämän tilin?
unsuspendConfirm: Oletko varma, että haluat poistaa tämän tilin keskeytyksen?
selectList: Valitse lista
customEmojis: Kustomoitu Emoji
addEmoji: Lisää
settingGuide: Suositellut asetukset
cacheRemoteFilesDescription: Kun tämä asetus ei ole käytössä, etätiedostot on ladattu
suoraan etäinstanssilta. Asetuksen poistaminen käytöstä vähentää tallennustilan
käyttöä, mutta lisää verkkoliikennettä kun pienoiskuvat eivät muodostu.
flagSpeakAsCatDescription: Lähetyksesi nyanifioidaan, kun olet kissatilassa
flagShowTimelineRepliesDescription: Näyttää käyttäjien vastaukset muiden käyttäjien
lähetyksiin aikajanalla, jos se on päällä.
autoAcceptFollowed: Automaattisesti hyväksy seuraamispyynnöt käyttäjiltä, joita seuraat
perHour: Tunnissa
removeWallpaper: Poista taustakuva
recipient: Vastaanottaja(t)
federation: Federaatio
software: Ohjelmisto
proxyAccount: Proxy-tili
proxyAccountDescription: Välitystili (Proxy-tili) on tili, joka toimii käyttäjien
etäseuraajana tietyin edellytyksin. Kun käyttäjä esimerkiksi lisää etäkäyttäjän
luetteloon, etäkäyttäjän toimintaa ei toimiteta instanssiin, jos yksikään paikallinen
käyttäjä ei seuraa kyseistä käyttäjää, joten välitystili seuraa sen sijaan.
latestStatus: Viimeisin tila
selectInstance: Valitse instanssi
instances: Instanssit
perDay: Päivässä
version: Versio
statistics: Tilastot
clearQueueConfirmTitle: Oletko varma, että haluat tyhjentää jonon?
introMisskey: Tervetuloa! Calckey on avoimen lähdekoodin, hajautettu sosiaalisen median
alusta, joka on ikuisesti ilmainen! 🚀
clearQueueConfirmText: Mitkään välittämättömät lähetykset, jotka ovat jonossa, eivät
federoidu. Yleensä tätä toimintoa ei tarvita.
blockedInstancesDescription: Lista instanssien isäntänimistä, jotka haluat estää.
Listatut instanssit eivät kykene kommunikoimaan enää tämän instanssin kanssa.
security: Turvallisuus
retypedNotMatch: Syöte ei kelpaa.
fromDrive: Asemasta
keepOriginalUploading: Säilytä alkuperäinen kuva
uploadFromUrlDescription: Tiedoston URL, jonka haluat ylösladata
themeForLightMode: Teema vaaleassa tilassa
theme: Teemat
themeForDarkMode: Teema tummassa tilassa
drive: Asema
darkThemes: Tummat teemat
copyUrl: Kopioi URL-linkki
rename: Uudelleennimeä
maintainerName: Ylläpitäjä
maintainerEmail: Ylläpitäjän sähköposti
tosUrl: Palvelun ehdot URL-linkki
thisYear: Vuosi
backgroundImageUrl: Taustakuvan URL-linkki
basicInfo: Perustiedot
pinnedPagesDescription: Kirjoita niiden sivujen polut, jotka haluat liittää tämän
instanssin yläsivulle rivinvaihdoin erotettuna.
hcaptchaSiteKey: Sivuston avain
hcaptchaSecretKey: Salausavain
silencedInstances: Hiljennetyt instanssit
muteAndBlock: Hiljennykset ja estetyt
mutedUsers: Hiljennetyt käyttäjät
blockedUsers: Estetyt käyttäjät
noUsers: Ei yhtään käyttäjää
noInstances: Ei yhtään instanssia
editProfile: Muokkaa profiilia
noteDeleteConfirm: Oletko varma, että haluat poistaa tämän viestin?
pinLimitExceeded: Et voi kiinnittää enempää viestejä
intro: Calckey -asennus valmis! Ole hyvä ja luo admin-käyttäjä.
done: Valmis
processing: Suorittaa
preview: Esikatselu
default: Oletus
defaultValueIs: 'Oletus: {value}'
noCustomEmojis: Ei emojia
noJobs: Ei töitä
federating: Federoi
blocked: Estetty
silenced: Hiljennetty
suspended: Keskeytetty
all: Kaikki
publishing: Julkaisee
subscribing: Tilaa
notResponding: Ei vastaa
instanceFollowing: Seuraa instanssia
instanceFollowers: Instanssin seuraajat
instanceUsers: Instanssin käyttäjät
changePassword: Muuta salasana
newPasswordRetype: Uudelleensyötä uusi salasana
more: Lisää!
featured: Esillä
usernameOrUserId: Käyttäjänimi tai käyttäjä id
noSuchUser: Käyttäjää ei löydy
lookup: Hae
announcements: Tiedoitteet
imageUrl: Kuva URL-linkki
removed: Onnistuneesti poistettu
removeAreYouSure: Oletko varma, että haluat poistaa " {x}"?
resetAreYouSure: Haluatko nollata?
saved: Tallennettu
messaging: Juttele
upload: Lataa ylös
fromUrl: URL:stä
uploadFromUrl: Ylöslataa URL:stä
uploadFromUrlRequested: Ylöslataus pyydetty
uploadFromUrlMayTakeTime: Voi viedä hetki, kun ylöslataus on valmis.
explore: Tutustu
messageRead: Lue
noMoreHistory: Ei lisää historiaa
startMessaging: Aloita uusi juttelu
manageGroups: Hallitse ryhmiä
nUsersRead: lukenut {n}
agreeTo: Hyväksyn {0}
tos: Palvelun ehdot
start: Aloita
home: Koti
remoteUserCaution: Etäkäyttäjän tiedot saattavat olla puutteellisia.
light: Vaalea
dark: Tumma
lightThemes: Vaaleat teemat
syncDeviceDarkMode: Synkronoi tumma tila laitteen asetuksen mukaan
fileName: Tiedostonimi
selectFile: Valitse tiedosto
selectFiles: Valitse tiedostot
selectFolder: Valitse kansio
selectFolders: Valitse kansiot
renameFile: Uudelleennimeä tiedosto
folderName: Kansionimi
createFolder: Luo kansio
renameFolder: Uudelleennimeä kansio
deleteFolder: Poista kansio
addFile: Lisää tiedosto
emptyDrive: Asemasi on tyhjä
emptyFolder: Tämä kansio on tyhjä
unableToDelete: Ei voitu poistaa
inputNewFileName: Syötä uusi tiedostonimi
inputNewDescription: Syötä uusi kuvateksti
inputNewFolderName: Syötä uusi kansionimi
hasChildFilesOrFolders: Koska kansio ei ole tyhjä, sitä ei voi poistaa.
avatar: Kuvake
banner: Banneri
nsfw: Herkkää sisältöä (NSFW)
whenServerDisconnected: Kun yhteys palvelimeen menetetään
disconnectedFromServer: Yhteys palvelimeen katkennut
reload: Päivitä
doNothing: Hylkää
reloadConfirm: Haluaisitko päivittää aikajanan?
unwatch: Lopeta katselu
watch: Katsele
accept: Hyväksy
reject: Hylkää
normal: Normaali
instanceName: Instanssin nimi
thisMonth: Kuukausi
today: Tänään
monthX: '{month}'
connectService: Yhdistä
disconnectService: Katkaise yhteys
enableLocalTimeline: Ota käyttöön paikallinen aikajana
enableGlobalTimeline: Ota käyttöön globaali aikajana
enableRecommendedTimeline: Ota käyttöön suositellut -aikajana
registration: Rekisteröinti
enableRegistration: Ota käyttöön uuden käyttäjän rekisteröinti
driveCapacityPerLocalAccount: Aseman kapasiteetti paikallista käyttäjää kohti
driveCapacityPerRemoteAccount: Aseman kapasiteetti etäkäyttäjää kohti
inMb: megatavuissa
bannerUrl: Bannerikuvan URL-linkki
pinnedUsers: Kiinnitetyt käyttäjät
pinnedPages: Kiinnitetyt sivut
pinnedClipId: Kiinnitettävän leikkeen ID
enableHcaptcha: Ota käyttöön hCaptcha-tunnistus
recaptcha: CAPTCHA uudelleen
enableRecaptcha: Ota käyttöön CAPTCHA uudelleen
recaptchaSiteKey: Sivuston avain
recaptchaSecretKey: Salausavain
silenceThisInstance: Hiljennä tämä instanssi
silencedInstancesDescription: Lista isäntänimistä, joka haluat hiljentää. Tilejä listassa
kohdellaan "hiljennettynä", ne voivat tehdä seuraajapyyntöjä ja eivät voi tehdä
mainintoja paikallistileistä jossei seurattu. Tämä ei vaikuta estettyihin instansseihin.
hiddenTagsDescription: 'Listaa aihetunnisteet (ilman #-merkkiä) aihetunnisteet, jotka
haluat piilottaa trendaavista ja Tutustu-osiosta. Piilotetut aihetunnisteet ovat
kuitenkin löydettävissä muilla keinoilla. Estetyt instanssit eivät vaikuta, vaikka
listattu tähän.'
currentPassword: Nykyinen salasana
newPassword: Uusi salasana
attachFile: Liitetyt tiedostot
keepOriginalUploadingDescription: Tallentaa alkuperäisen kuvan sellaisenaan. Jos kytketty
päältä, webissä näytettävä versio luodaan ylöslatauksen yhteydessä.
remove: Poista
circularReferenceFolder: Kohdekansio on kansion alikansio, jonka haluat siirtää.
deleteAreYouSure: Oletko varma, että haluat poistaa kokonaan" {x}"?
yearsOld: '{age} vuotias'
activity: Aktiivisuus
images: Kuvat
birthday: Syntymäpäivä
registeredDate: Liittynyt
location: Sijainti
disablingTimelinesInfo: Järjestelmänvalvojilla ja moderaattoreilla on aina pääsy kaikille
aikajanoille, vaikka olisikin poistettu käytöstä.
dayX: '{day}'
yearX: '{year}'
pages: Sivut
integration: Integraatiot
instanceDescription: Instanssin kuvaus
invite: Kutsu
iconUrl: Ikoni URL-linkki
pinnedUsersDescription: Listaa käyttäjänimet eroteltuna rivivaihdoin kiinnittääksesi
ne "Tutustu" välilehteen.
pinnedNotes: Kiinnitetyt viestit
hcaptcha: hCaptcha-tunnistus
antennaSource: Antennin lähde
invitationCode: Kutsukoodi
checking: Tarkistetaan...
passwordNotMatched: Ei vastaa
doing: Käsittelee...
category: Kategoria
tags: Tagit
disableAnimatedMfm: Poista MFM -animaatiot käytöstä
openImageInNewTab: Avaa kuvat uuteen välilehteen
dashboard: Kojelauta
local: Paikallinen
remote: Etä
total: Yhteensä
weekOverWeekChanges: Muutokset viime viikkoon
objectStorageRegion: Alue
popout: Ulosvedettävä
volume: Äänenvoimakkuus
masterVolume: Master äänenvoimakkuus
details: Yksityiskohdat
chooseEmoji: Valitse emoji
descendingOrder: Laskevasti
scratchpad: Raaputusalusta
output: Ulostulo
invisibleNote: Näkymätön viesti
enableInfiniteScroll: Lataa enemmän automaattisesti
visibility: Näkyvyys
useCw: Piilota sisältö
poll: Kysely
enablePlayer: Avaa videotoistimeen
enterFileDescription: Syötä tiedostokuvaus
author: Kirjoittaja
manage: Hallinta
description: Kuvaus
describeFile: Lisää tiedostokuvaus
height: Korkeus
large: Suuri
medium: Keskikokoinen
small: Pieni
other: Muu
create: Luo
regenerateLoginTokenDescription: Luo uudelleen kirjautumisen aikana sisäisesti käytettävän
tunnuksen. Normaalisti tämä toiminto ei ole tarpeen. Jos tunniste luodaan uudelleen,
kaikki laitteet kirjautuvat ulos.
setMultipleBySeparatingWithSpace: Erottele useat merkinnät välilyönneillä.
fileIdOrUrl: Tiedosto ID tai URL-linkki
behavior: Käytös
instanceTicker: Viestejä koskevat instanssitiedot
waitingFor: Odottaa {x}
random: Satunnainen
system: Järjestelmä
switchUi: Ulkoasu
createNew: Luo uusi
followersCount: Seuraajien määrä
renotedCount: Saatujen buustausten määrä
followingCount: Seurattujen tilien määrä
notSet: Ei asetettu
nUsers: '{n} Käyttäjää'
nNotes: '{n} Viestiä'
sendErrorReports: Lähetä virheraportteja
backgroundColor: Taustaväri
accentColor: Korostusväri
textColor: Tekstin väri
advanced: Edistynyt
saveAs: Tallenna nimellä...
invalidValue: Epäkelpo arvo.
registry: Rekisteri
closeAccount: Sulje tili
currentVersion: Nykyinen versio
capacity: Kapasiteetti
clear: Palaa
_theme:
explore: Tutustu teemoihin
silenceConfirm: Oletko varma, että haluat hiljentää tämän käyttäjän?
notesAndReplies: Viestit ja vastaukset
withFiles: Tiedostot sisältyvät
silence: Hiljennä
popularTags: Suositut tagit
userList: Listat
about: Tietoja
aboutMisskey: Tietoja Calckeystä
exploreFediverse: Tutustu fediverseen
recentlyUpdatedUsers: Vastikään lisätyt käyttäjät
recentlyRegisteredUsers: Uudet liittyneet jäyttäjät
recentlyDiscoveredUsers: Vastikään löydetyt käyttäjät
exploreUsersCount: Täällä on {count} käyttäjää
share: Jaa
moderation: Sisällön valvonta
nUsersMentioned: Mainittu {n} käyttäjältä
securityKey: Turva-avain
securityKeyName: Avainnimi
registerSecurityKey: Rekisteröi turva-avain
lastUsed: Viimeksi käytetty
unregister: Poista rekisteröinti
passwordLessLogin: Salasanaton sisäänkirjautuminen
cacheClear: Tyhjennä välimuisti
markAsReadAllNotifications: Merkitse kaikki ilmoitukset luetuksi
markAsReadAllUnreadNotes: Merkitse kaikki viestit luetuiksi
uploadFolder: Oletuskansio ylöslatauksille
createGroup: Luo ryhmä
group: Ryhmä
groups: Ryhmät
ownedGroups: Omistetut ryhmät
help: Apua
inputMessageHere: Syötä viesti tähän
close: Sulje
joinedGroups: Liittyneet ryhmät
invites: Kutsut
groupName: Ryhmänimi
members: Jäsenet
language: Kieli
signinHistory: Kirjautumishistoria
docSource: Tämän dokumentin lähde
createAccount: Luo tili
existingAccount: Olemassa oleva tili
promotion: Edistetty
promote: Edistää
numberOfDays: Päivien määrä
accountSettings: Tilin asetukset
objectStorage: Objektitallennus
useObjectStorage: Käytä objektitallennusta
objectStorageBaseUrl: Perus URL-linkki
objectStorageBaseUrlDesc: "Viitteenä käytetty URL-linkki. Määritä CDN:n tai välityspalvelimen\
\ URL-linkki, jos käytät kumpaakin.\nKäytä S3:lle 'https://<bucket>.s3.amazonaws.com'\
\ ja GCS:lle tai vastaaville palveluille 'https://storage.googleapis.com/<bucket>'\
\ jne."
objectStorageBucket: Kauha
newNoteRecived: Uusia viestejä
smtpPort: Portti
instanceMute: Instanssin mykistys
repliesCount: Lähetettyjen vastausten määrä
updatedAt: Päivitetty
notFound: Ei löydy
useOsNativeEmojis: Käytä käyttöjärjestelmän natiivi-Emojia
joinOrCreateGroup: Tule kutsutuksi ryhmään tai luo oma ryhmä.
text: Teksti
usernameInvalidFormat: Käytä isoja ja pieniä kirjaimia, numeroita ja erikoismerkkejä.
unsilenceConfirm: Oletko varma, että haluat poistaa käyttäjän hiljennyksen?
popularUsers: Suositut käyttäjät
moderator: Moderaattori
twoStepAuthentication: Kaksivaiheinen tunnistus
notFoundDescription: URL-linkkiin liittyvää sivua ei löytynyt.
antennaKeywords: Kuunneltavat avainsanat
antennaExcludeKeywords: Poislasketut avainsanat
antennaKeywordsDescription: Erottele välilyönneillä AND-ehtoa varten tai rivinvaihdolla
OR-ehtoa varten.
notifyAntenna: Ilmoita uusista viesteistä
withFileAntenna: Vain viestit tiedoston kanssa
enableServiceworker: Ota käyttöön Push-notifikaatiot selaimessasi
antennaUsersDescription: Luettele yksi käyttäjänimi rivi kohti
antennaInstancesDescription: Luettele yksi instanssi riviä kohti
caseSensitive: Isot ja pienet kirjaimet
withReplies: Sisällytä vastaukset
connectedTo: Seuraavat tili(t) on yhdistetty
unsilence: Poista hiljennys
administrator: Järjestelmänvalvoja
token: Merkki
resetPassword: Resetoi salasana
reduceUiAnimation: Vähennä käyttöliittymän animaatioita
transfer: Siirrä
messagingWithUser: Yksityisjuttelu
title: Otsikko
enable: Ota käyttöön
next: Seuraava
retype: Syötä uudelleen
noteOf: Lähettänyt {user}
inviteToGroup: Kutsu ryhmään
quoteAttached: Lainaus
quoteQuestion: Liitä lainauksena?
noMessagesYet: Ei vielä viestejä
newMessageExists: Uusia viestejä
onlyOneFileCanBeAttached: Voit liittää vain yhden tiedoston viestiin
signinRequired: Ole hyvä ja rekisteröidy tai kirjaudu sisään jatkaaksesi
invitations: Kutsut
available: Saatavilla
unavailable: Ei saatavissa
tooShort: Liian lyhyt
tooLong: Liian pitkä
weakPassword: Heikko salasana
normalPassword: Kohtalainen salasana
strongPassword: Vahva salasana
passwordMatched: Vastaa
signinWith: Kirjaudu sisään {x}
signinFailed: Ei voitu kirjautua sisään. Annettu käyttäjänimi tai salasana virheellinen.
tapSecurityKey: Napsauta turva-avaintasi
or: Tai
uiLanguage: Anna käyttöliittymän kieli
groupInvited: Sinut on kutsuttu ryhmään
aboutX: Tietoja {x}
disableDrawer: Älä käytä laatikkotyyppisiä valikoita
youHaveNoGroups: Sinulla ei ole ryhmiä
noHistory: Ei historiaa saatavilla
regenerate: Uudelleenluo
fontSize: Kirjasinkoko
dayOverDayChanges: Muutokset eiliseen
clientSettings: Asiakkaan asetukset
hideThisNote: Piilota tämä viesti
showFeaturedNotesInTimeline: Näytä esillä olevat viestit aikajanalla
objectStorageBucketDesc: Määritä palveluntarjoajasi käyttämä kauhan nimi.
objectStoragePrefix: Etuliite
objectStorageEndpoint: Päätepiste
objectStorageRegionDesc: Määritä alue, kuten "xx-east-1". Jos palvelusi ei tee eroa
alueiden välillä, jätä tämä kohta tyhjäksi tai kirjoita "us-east-1".
objectStorageUseSSL: Käytä SSL-salausta
objectStorageUseSSLDesc: Poista tämä käytöstä, jos et aio käyttää HTTPS:ää API-yhteyksissä
objectStorageUseProxy: Yhdistä välityspalvelimen kautta
objectStorageUseProxyDesc: Poista tämä käytöstä, jos et aio käyttää välityspalvelinta
API-yhteyksiä varten
objectStorageSetPublicRead: Aseta "public-read" ylöslataukseen
serverLogs: Palvelimen lokit
deleteAll: Poista kaikki
showFixedPostForm: Näytä viesti-ikkuna aikajanan yläpuolella
sounds: Äänet
listen: Kuuntele
none: Ei mitään
showInPage: Näytä sivulla
recentUsed: Vastikään käytetty
install: Asenna
uninstall: Poista asennus
installedApps: Hyväksytyt sovellukset
nothing: Ei nähtävää täällä
state: Tila
sort: Järjestä
ascendingOrder: Nousevasti
scratchpadDescription: Raaputusalusta tarjoaa ympäristön AiScript-kokeiluja varten.
Voit kirjoittaa, suorittaa ja tarkistaa sen tulokset vuorovaikutuksessa siinä olevan
Calckeyn kanssa.
script: Skripti
disablePagesScript: Poista AiScript käytöstä sivuilla
updateRemoteUser: Päivitä etäkäyttäjän tiedot
deleteAllFiles: Poista kaikki tiedostot
deleteAllFilesConfirm: Oletko varma, että haluat poistaa kaikki tiedostot?
removeAllFollowing: Poista seuraaminen kaikista seuratuista käyttäjistä
removeAllFollowingDescription: Tämän suorittaminen poistaa kaikki {host}:n tilit.
Suorita tämä, jos instanssia ei esimerkiksi enää ole olemassa.
userSuspended: Tämä käyttäjä on hyllytetty.
userSilenced: Tämä käyttäjä on hiljennetty.
yourAccountSuspendedTitle: Tämä tili on hyllytetty
yourAccountSuspendedDescription: Tämä tili on hyllytetty palvelimen palveluehtojen
tai vastaavien rikkomisen vuoksi. Ota yhteyttä ylläpitäjään, jos haluat tietää tarkemman
syyn. Älä luo uutta tiliä.
menu: Valikko
divider: Jakaja
addItem: Lisää kohde
relays: Releet
addRelay: Lisää rele
inboxUrl: Saavuneen postin URL
addedRelays: Lisätyt releet
serviceworkerInfo: Pitää ottaa käyttöön Push-notifikaatioissa.
deletedNote: Poistetut viestit
disablePlayer: Sulje videotoistin
expandTweet: Laajenna twiittiä
themeEditor: Teemaeditori
leaveConfirm: Tallentamattomia muutoksia olemassa. Hylätäänkö ne?
plugins: Liitännäiset
preferencesBackups: Asetusten varmuuskopiot
deck: Kansi
undeck: Jätä kansi
useBlurEffectForModal: Käytä blur-efektiä modaaleissa
useFullReactionPicker: Käytä täysikokoista reaktiovalitsinta
width: Leveys
generateAccessToken: Luo käyttöoikeustunniste
enableAll: Ota käyttöön kaikki
disableAll: Poista käytöstä kaikki
tokenRequested: Myönnä oikeus tiliin
notificationType: Ilmoituksen tyyppi
edit: Muokkaa
emailServer: Sähköpostipalvelin
enableEmail: Ota sähköpostin jakelu käyttöön
emailConfigInfo: Käytetään vahvistamaan sähköpostiosoitteesi rekisteröitymisen yhteydessä
tai jos unohdat salasanasi
email: Sähköposti
smtpHost: Isäntä
smtpUser: Käyttäjänimi
smtpPass: Salasana
emptyToDisableSmtpAuth: Jätä käyttäjänimi ja salasana tyhjäksi ohittaaksesi SMTP verifioinnin
smtpSecureInfo: Kytke tämä päältä kun käytät STARTTLS
testEmail: Kokeile email-lähetystä
wordMute: Sanan hiljennys
regexpError: Säännöllinen lausekevirhe
userSaysSomething: '{name} sanoi jotakin'
userSaysSomethingReason: '{name} sanoi {reason}'
makeActive: Aktivoi
display: Näyttö
copy: Kopioi
metrics: Mittarit
overview: Yleiskatsaus
logs: Lokit
delayed: Viivästynyt
database: Tietokanta
channel: Kanavat
notificationSetting: Ilmoitusasetukset
notificationSettingDesc: Valitse näytettävät ilmoitustyypit.
useGlobalSetting: Käytä globaaleja asetuksia
regenerateLoginToken: Luo kirjautumistunniste uudelleen
sample: Näyte
abuseReports: Raportit
reportAbuse: Raportti
reportAbuseOf: Raportti {name}
fillAbuseReportDescription: Täytä tätä raporttia koskevat tiedot. Jos se koskee tiettyä
viestiä, ilmoita sen URL-linkki.
abuseReported: Raporttisi on lähetetty. Kiitoksia paljon.
reporter: Raportoija
reporteeOrigin: Ilmoittajan alkuperä
reporterOrigin: Raportoijan alkuperä
forwardReport: Välitä raportti etäinstanssille
forwardReportIsAnonymous: Tilisi sijasta anonyymi järjestelmätili näytetään toimittajana
etäinstanssissa.
send: Lähetä
abuseMarkAsResolved: Merkitse raportti ratkaistuksi
openInNewTab: Avaa uuteen välilehteen
openInSideView: Avaa sivunäkymään
defaultNavigationBehaviour: Navigoinnin oletuskäyttäytyminen
editTheseSettingsMayBreakAccount: Näiden asetusten muuttaminen voi vahingoittaa tiliäsi.
desktop: Työpöytä
clip: Leike
optional: Vaihtoehtoinen
createNewClip: Luo uusi leike
unclip: Poista leike
confirmToUnclipAlreadyClippedNote: Tämä viesti on jo osa "{name}"-leikettä. Haluatko
sen sijaan poistaa sen tästä leikkeestä?
manageAccessTokens: Hallitse käyttöoikeuskoodeja
accountInfo: Tilin tiedot
notesCount: Viestien määrä
renotesCount: Lähetettyjen buustausten määrä
repliedCount: Saatujen vastausten määrä
sentReactionsCount: Lähetettyjen reaktioiden määrä
receivedReactionsCount: Saatujen reaktioiden määrä
pollVotesCount: Lähetettyjen kyselyäänien määrä
pollVotedCount: Saatujen kyselyäänien määrä
yes: Kyllä
no: Ei
driveFilesCount: Tiedostojen määrä asemalla
driveUsage: Aseman tilankäyttö
noCrawle: Hylkää hakukoneindeksointi
noCrawleDescription: Pyydä hakukoneita olemaan indeksoimatta profiilisivuasi, viestejäsi,
sivujasi jne.
alwaysMarkSensitive: Merkitse oletusarvoisesti herkäksi sisällöksi (NSFW)
loadRawImages: Alkuperäisten kuvien lataaminen pikkukuvien näyttämisen sijaan
disableShowingAnimatedImages: Älä näytä animoituja kuvia
verificationEmailSent: Vahvistussähköposti on lähetetty. Seuraa mukana olevaa linkkiä
suorittaaksesi vahvistuksen loppuun.
emailVerified: Sähköposti on vahvistettu
noteFavoritesCount: Kirjanmerkittyjen viestien määrä
pageLikedCount: Saatujen Sivu-tykkäysten määrä
pageLikesCount: Sivut-tykkäysten määrä
contact: Yhteystieto
useSystemFont: Käytä järjestelmän oletuskirjasinta
clips: Leikkeet
experimentalFeatures: Kokeiluluontoiset ominaisuudet
developer: Kehittäjä
makeExplorable: Tee tili näkyväksi osiossa "Tutustu"
makeExplorableDescription: Jos otat tämän pois käytöstä, tilisi ei näy "Tutustu"-osiossa.
showGapBetweenNotesInTimeline: Näytä väli viestien välissä aikajanalla
duplicate: Monista
left: Vasen
center: Keskellä
wide: Leveä
narrow: Kapea
reloadToApplySetting: Asetus otetaan käyttöön vain uudelleenladattaessa. Ladataanko
uudelleen nyt?
showTitlebar: Näytä otsikkorivi
clearCache: Tyhjennä välimuisti
onlineUsersCount: '{n} käyttäjää online-tilassa'
myTheme: Minun teemani
value: Arvo
saveConfirm: Tallenna muutokset?
deleteConfirm: Poistetaanko tosiaan?
latestVersion: Uusin versio
newVersionOfClientAvailable: Asiakasohjelmiston uudempi versio saatavilla.
usageAmount: Käyttö
inUse: Käytetty
editCode: Muokkaa koodia
apply: Käytä
receiveAnnouncementFromInstance: Vastaanota ilmoituksia tästä instanssista
emailNotification: Sähköposti-ilmoitukset
publish: Julkaise
inChannelSearch: Etsi kanavalta
useReactionPickerForContextMenu: Avaa reaktiovalitsin napsauttamalla oikeaa
typingUsers: '{users} kirjoittaa'
jumpToSpecifiedDate: Hyppää tiettyyn päivään
markAllAsRead: Merkitse kaikki luetuksi
goBack: Takaisin
unlikeConfirm: Poistatko todella tykkäyksesi?
fullView: Täysi koko
quitFullView: Poistu täydestä koosta
addDescription: Lisää kuvaus
markAsReadAllTalkMessages: Merkitse kaikki yksityisviestit luetuiksi
appearance: Ulkonäkö
messagingWithGroup: Ryhmäjuttelu
newPasswordIs: Uusi salasana on "{password}"
noFollowRequests: Sinulla ei ole odottavia seuraajapyyntöjä
objectStoragePrefixDesc: Tiedostot tallennetaan hakemistoihin tällä etuliitteellä.
objectStorageEndpointDesc: Jätä tämä tyhjäksi, jos käytät AWS S3:a. Muuten määritä
päätepisteeksi '<host>' tai '<host>:<port>' käyttämästäsi palvelusta riippuen.
unableToProcess: Toimenpidettä ei voida suorittaa loppuun
installedDate: Hyväksynyt
lastUsedDate: Viimeksi käytetty
pluginTokenRequestedDescription: Tämä litännäinen voi käyttää tässä asetettuja käyttöoikeuksia.
permission: Oikeudet
smtpConfig: Lähtevän sähköpostin palvelimen (SMTP) asetukset
regexpErrorDescription: 'Säännöllisessä lausekkeessa tapahtui virhe rivillä {line}
sanan {tab} sanan mykistäminen rivillä {line}:'
emailAddress: Sähköpostiosoite
smtpSecure: Käytä implisiittistä SSL/TLS:ää SMTP-yhteyksissä
useGlobalSettingDesc: Jos se on päällä, käytetään tilisi ilmoitusasetuksia. Jos se
on pois päältä, voit tehdä yksilöllisiä asetuksia.
public: Julkinen
i18nInfo: Vapaaehtoiset kääntävät Calckeyta eri kielille. Voit auttaa osoitteessa
{link}.
lockedAccountInfo: Ellet aseta postauksen näkyvyydeksi "Vain seuraajille", postauksesi
näkyvät kaikille, vaikka vaatisitkin seuraajilta manuaalista hyväksyntää.
sendErrorReportsDescription: "Kun tämä on päällä, yksityiskohtaiset virhetiedot jaetaan\
\ Calckeyn kanssa ongelman ilmetessä, mikä auttaa parantamaan Calckeyn laatua.\n\
Näihin tietoihin sisältyy esimerkiksi käyttöjärjestelmäversio, käyttämäsi selain,\
\ toimintasi Calckeyssä jne."
createdAt: Luotu
youAreRunningUpToDateClient: Käytössäsi on asiakasohjelman uusin versio.
needReloadToApply: Uudelleenlataus vaaditaan, jotta tämä näkyy.
showingPastTimeline: Näytetään parhaillaan vanhaa aikajanaa
userPagePinTip: Voit näyttää viestit täällä valitsemalla yksittäisten viestien valikosta
"Kiinnitä profiiliin".
notSpecifiedMentionWarning: Tämä viesti sisältää mainintoja käyttäjistä, joita ei
ole mainittu vastaanottajina
name: Nimi
allowedInstances: Sallitut (whitelisted) instanssit
hashtags: Aihetunnisteet
troubleshooting: Vianetsintä
received: Vastaanotettu
searchResult: Hakutulokset
filter: Suodatin
antennas: Antennit
noMaintainerInformationWarning: Ylläpitäjän tietoja ei ole konfiguroitu.
controlPanel: Hallintapaneeli
manageAccounts: Hallitse tilejä
makeReactionsPublic: Aseta reaktiohistoria julkiseksi
unread: Lukematon
deleted: Poistettu
editNote: Muokkaa viestiä
edited: 'Muokattu klo {date} {time}'
avoidMultiCaptchaConfirm: Useiden Captcha-järjestelmien käyttö voi aiheuttaa häiriöitä
niiden välillä. Haluatko poistaa käytöstä muut tällä hetkellä käytössä olevat Captcha-järjestelmät?
Jos haluat, että ne pysyvät käytössä, paina peruutusnäppäintä.
manageAntennas: Hallitse antenneja
info: Tietoja
userInfo: Käyttäjätiedot
unknown: Tuntematon
onlineStatus: Online-tila
hideOnlineStatus: Piilota Online-tila
hideOnlineStatusDescription: Online-tilasi piilottaminen vähentää joidenkin toimintojen,
kuten haun, käyttömukavuutta.
online: Online
active: Aktiivinen
offline: Offline
botProtection: Botti-suojaus
instanceBlocking: Federaatio Esto/Hiljennys
enabled: Otettu käyttöön
quickAction: Pikatoiminnot
user: Käyttäjä
accounts: Tilit
switch: Vaihda
noBotProtectionWarning: Botti-suojausta ei ole konfiguroitu.
configure: Konfiguroi
postToGallery: Luo uusi galleriaviesti
gallery: Galleria
recentPosts: Viimeaikaiset sivut
popularPosts: Suositut sivut
ads: Mainokset
expiration: Aikaraja
memo: Muistio
priority: Prioriteetti
high: Korkea
middle: Keskitaso
low: Alhainen
emailNotConfiguredWarning: Sähköpostiosoitetta ei ole asetettu.
ratio: Suhde
secureMode: Suojattu moodi (Valtuutettu nouto)
instanceSecurity: Instanssiturvallisuus
allowedInstancesDescription: Federaatiota varten sallitulle listalle (whitelisted)
otettavien instanssien isännät, kukin erotettuna uudella rivillä (sovelletaan vain
yksityisessä tilassa).
previewNoteText: Näytä esikatselu
customCss: Kustomoitu CSS
customCssWarn: Tätä asetusta tulisi käyttää vain, jos tiedät, mitä se tekee. Vääränlaisten
arvojen syöttäminen voi aiheuttaa sen, että asiakasohjelma lakkaa toimimasta normaalisti.
recommended: Suositeltu
squareAvatars: Näytä neliön malliset kuvakkeet
seperateRenoteQuote: Erilliset buustaa ja lainaa -napit
sent: Lähetetty
useBlurEffect: Käytä blur-efektejä käyttöliittymässä
misskeyUpdated: Calckey on päivitetty!
whatIsNew: Näytä muutokset
translate: Käännä
translatedFrom: Käännetty kielestä {x}
accountDeletionInProgress: Tilin poistaminen on parhaillaan menossa
usernameInfo: Nimi, joka erottaa tilisi muista tällä palvelimella olevista tileistä. Voit
käyttää aakkosia (a~z, A~Z), numeroita (0~9) tai alaviivoja (_). Käyttäjätunnuksia
ei voi muuttaa myöhemmin.
aiChanMode: Ai-chan klassisessa käyttöliittymässä
keepCw: Pidä sisältövaroitukset
pubSub: Pub/Sub tilit
lastCommunication: Viimeisin kommunikaatio
unresolved: Ratkaisematon
breakFollow: Poista seuraaja
breakFollowConfirm: Oletko varma, että haluat poistaa seuraajan?
itsOn: Otettu käyttöön
itsOff: Poistettu käytöstä
emailRequiredForSignup: Vaadi sähköpostiosoitetta sisäänkirjautumiseen
makeReactionsPublicDescription: Tämä laittaa viimeisimmät reaktiosi julkisesti näkyväksi.
classic: Klassinen
muteThread: Mykistä lanka
unmuteThread: Poista langan mykistys
ffVisibility: Seurataan/Seurattavien näkyvyys
notRecommended: Ei suositeltu
disabled: Poistettu käytöstä
selectAccount: Valitse tili
switchAccount: Vaihda tili
administration: Hallinta
shareWithNote: Jaa viestin kanssa
secureModeInfo: Kun pyydät muista instansseista, älä lähetä takaisin ilman todisteita.
privateMode: Yksityinen moodi
privateModeInfo: Kun tämä on käytössä, vain sallittujen (whitelisted) luetteloon merkityt
instanssit voivat liittyä instansseihisi. Kaikki viestit piilotetaan yleisöltä.
global: Globaali
resolved: Ratkaistu
learnMore: Opi lisää
continueThread: Jatka lankaa
file: Tiedosto
cropImageAsk: Haluatko rajata tätä kuvaa?
recentNHours: Viimeiset {n} tuntia
rateLimitExceeded: Nopeusraja ylittynyt
cropImage: Rajaa kuvaa
socialTimeline: Sosiaalinen aikajana
themeColor: Instanssi Ticker Väri
check: Tarkista
ffVisibilityDescription: Antaa sinun konfiguroida, kuka voi nähdä ketä seuraat ja
kuka seuraa sinua.
homeTimeline: Koti aikajana
size: Koko
showLocalPosts: 'Näytä paikalliset viestit:'
oneDay: Päivä
instanceDefaultDarkTheme: Instanssikattava tumma oletusteema
recentNDays: Viimeiset {n} päivää
reflectMayTakeTime: Voi kestää jonkin aikaa, ennen kuin tämä näkyy.
failedToFetchAccountInformation: Ei voitu hakea tietoja
requireAdminForView: Sinun tulee kirjautua järjestelmänvalvojana nähdäksesi tämän.
driveCapOverrideCaption: Resetoi oletusarvoon syöttämällä arvo 0 tai alempi.
isSystemAccount: Järjestelmän luoma ja automaattisesti käyttämä tili.
userSaysSomethingReasonReply: '{name} vastasi viestiin sisältäen {reason}'
userSaysSomethingReasonRenote: '{name} buustasi viestiin sisältäen {reason}'
voteConfirm: Vahvista äänesi vaihtoehdolle "{choice}"?
hide: Piilota
leaveGroup: Poistu ryhmästä
leaveGroupConfirm: Oletko varma, että haluat poistua ryhmästä "{name}"?
welcomeBackWithName: Tervetuloa takaisin, {name}
clickToFinishEmailVerification: Klikkaa [{ok}] viimeistelläksesi sähköpostivahvistuksen.
overridedDeviceKind: Laitetyyppi
tablet: Tabletti
numberOfColumn: Sarakkeiden määrä
searchByGoogle: Etsi
mutePeriod: Vaiennuksen kesto
indefinitely: Pysyvästi
tenMinutes: 10 minuuttia
oneHour: Tunti
thereIsUnresolvedAbuseReportWarning: On ratkaisemattomia raportteja.
driveCapOverrideLabel: Muuta aseman kapasiteetti tälle käyttäjälle
userSaysSomethingReasonQuote: '{name} lainasi viestiä sisältäen {reason}'
deleteAccountConfirm: Tämä peruuttamattomasti poistaa tilisi. Jatketaanko?
incorrectPassword: Väärä salasana.
useDrawerReactionPickerForMobile: Näytä reaktiovalitsin mobiilissa laatikkomallisena
smartphone: Älypuhelin
auto: Automaattinen
oneWeek: Viikko
instanceDefaultLightTheme: Instanssin kattava vaalea oletusteema
instanceDefaultThemeDescription: Anna teemakoodi objektiformaatille.
noEmailServerWarning: Sähköpostipalvelinta ei konfiguroituna.

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,9 @@
---
_lang_: "Bahasa Indonesia"
headlineMisskey: "Jaringan terhubung melalui catatan"
introMisskey: "Selamat datang! Misskey adalah perangkat mikroblog tercatu bersifat sumber terbuka.\nMulailah menuliskan catatan, bagikan peristiwa terkini, serta ceritakan segala tentangmu.📡\nTunjukkan juga reaksimu pada catatan pengguna lain.👍\nMari jelajahi dunia baru🚀"
introMisskey: "Selamat datang! Calckey adalah perangkat mikroblog tercatu bersifat\
\ sumber terbuka.\nMulailah menuliskan catatan, bagikan peristiwa terkini, serta\
\ ceritakan segala tentangmu.\U0001F4E1\nTunjukkan juga reaksimu pada catatan pengguna\
\ lain.\U0001F44D\nMari jelajahi dunia baru\U0001F680"
monthAndDay: "{day} {month}"
search: "Penelusuran"
notifications: "Pemberitahuan"
@ -44,7 +46,8 @@ copyContent: "Salin konten"
copyLink: "Salin tautan"
delete: "Hapus"
deleteAndEdit: "Hapus dan sunting"
deleteAndEditConfirm: "Apakah kamu yakin ingin menghapus note ini dan menyuntingnya? Kamu akan kehilangan semua reaksi, renote dan balasan di note ini."
deleteAndEditConfirm: "Apakah kamu yakin ingin menghapus note ini dan menyuntingnya?\
\ Kamu akan kehilangan semua reaksi, renote dan balasan di note ini."
addToList: "Tambahkan ke daftar"
sendMessage: "Kirim pesan"
copyUsername: "Salin nama pengguna"
@ -66,7 +69,8 @@ files: "Berkas"
download: "Unduh"
driveFileDeleteConfirm: "Hapus {name}? Catatan dengan berkas terkait juga akan terhapus."
unfollowConfirm: "Berhenti mengikuti {name}?"
exportRequested: "Kamu telah meminta ekspor. Ini akan memakan waktu sesaat. Setelah ekspor selesai, berkas yang dihasilkan akan ditambahkan ke Drive"
exportRequested: "Kamu telah meminta ekspor. Ini akan memakan waktu sesaat. Setelah\
\ ekspor selesai, berkas yang dihasilkan akan ditambahkan ke Drive"
importRequested: "Kamu telah meminta impor. Ini akan memakan waktu sesaat."
lists: "Daftar"
noLists: "Kamu tidak memiliki daftar apapun"
@ -81,9 +85,12 @@ error: "Galat"
somethingHappened: "Terjadi kesalahan"
retry: "Coba lagi"
pageLoadError: "Gagal memuat halaman."
pageLoadErrorDescription: "Umumnya disebabkan jaringan atau tembolok perambah. Cobalah bersihkan tembolok peramban lalu tunggu sesaat sebelum mencoba kembali."
serverIsDead: "Tidak ada respon dari peladen. Mohon tunggu dan coba beberapa saat lagi."
youShouldUpgradeClient: "Untuk melihat halaman ini, mohon muat ulang untuk memutakhirkan klienmu."
pageLoadErrorDescription: "Umumnya disebabkan jaringan atau tembolok perambah. Cobalah\
\ bersihkan tembolok peramban lalu tunggu sesaat sebelum mencoba kembali."
serverIsDead: "Tidak ada respon dari peladen. Mohon tunggu dan coba beberapa saat\
\ lagi."
youShouldUpgradeClient: "Untuk melihat halaman ini, mohon muat ulang untuk memutakhirkan\
\ klienmu."
enterListName: "Masukkan nama daftar"
privacy: "Privasi"
makeFollowManuallyApprove: "Permintaan mengikuti membutuhkan persetujuan"
@ -108,7 +115,8 @@ sensitive: "Konten sensitif"
add: "Tambahkan"
reaction: "Reaksi"
reactionSetting: "Reaksi untuk dimunculkan di bilah reaksi"
reactionSettingDescription2: "Geser untuk memindah urutkan, klik untuk menghapus, tekan \"+\" untuk menambahkan"
reactionSettingDescription2: "Geser untuk memindah urutkan, klik untuk menghapus,\
\ tekan \"+\" untuk menambahkan"
rememberNoteVisibility: "Ingat pengaturan visibilitas catatan"
attachCancel: "Hapus lampiran"
markAsSensitive: "Tandai sebagai konten sensitif"
@ -137,14 +145,22 @@ emojiUrl: "URL Emoji"
addEmoji: "Tambahkan emoji"
settingGuide: "Pengaturan rekomendasi"
cacheRemoteFiles: "Tembolokkan berkas remote"
cacheRemoteFilesDescription: "Ketika pengaturan ini dinonaktifkan, berkas luar akan dimuat langsung dari instansi luar. Menonaktifkan ini akan mengurangi penggunaan penyimpanan, namun dapat menyebabkan meningkatkan lalu lintas bandwidth, karena thumbnail tidak dihasilkan."
cacheRemoteFilesDescription: "Ketika pengaturan ini dinonaktifkan, berkas luar akan\
\ dimuat langsung dari instansi luar. Menonaktifkan ini akan mengurangi penggunaan\
\ penyimpanan, namun dapat menyebabkan meningkatkan lalu lintas bandwidth, karena\
\ thumbnail tidak dihasilkan."
flagAsBot: "Atur akun ini sebagai Bot"
flagAsBotDescription: "Jika akun ini dikendalikan oleh program, tetapkanlah opsi ini. Jika diaktifkan, ini akan berfungsi sebagai tanda bagi pengembang lain untuk mencegah interaksi berantai dengan bot lain dan menyesuaikan sistem internal Misskey untuk memperlakukan akun ini sebagai bot."
flagAsBotDescription: "Jika akun ini dikendalikan oleh program, tetapkanlah opsi ini.\
\ Jika diaktifkan, ini akan berfungsi sebagai tanda bagi pengembang lain untuk mencegah\
\ interaksi berantai dengan bot lain dan menyesuaikan sistem internal Calckey untuk\
\ memperlakukan akun ini sebagai bot."
flagAsCat: "Atur akun ini sebagai kucing"
flagAsCatDescription: "Nyalakan tanda ini untuk menandai akun ini sebagai kucing."
flagShowTimelineReplies: "Tampilkan balasan di linimasa"
flagShowTimelineRepliesDescription: "Menampilkan balasan pengguna dari note pengguna lain di linimasa apabila dinyalakan."
autoAcceptFollowed: "Setujui otomatis permintaan mengikuti dari pengguna yang kamu ikuti"
flagShowTimelineRepliesDescription: "Menampilkan balasan pengguna dari note pengguna\
\ lain di linimasa apabila dinyalakan."
autoAcceptFollowed: "Setujui otomatis permintaan mengikuti dari pengguna yang kamu\
\ ikuti"
addAccount: "Tambahkan akun"
loginFailed: "Gagal untuk masuk"
showOnRemote: "Lihat profil asli"
@ -156,7 +172,11 @@ searchWith: "Cari: {q}"
youHaveNoLists: "Kamu tidak memiliki daftar apapun"
followConfirm: "Apakah kamu yakin ingin mengikuti {name}?"
proxyAccount: "Akun proksi"
proxyAccountDescription: "Akun proksi merupakan sebuah akun yang bertindak sebagai pengikut luar untuk pengguna dalam kondisi tertentu. Sebagai contoh, ketika pengguna menambahkan seorang pengguna luar ke dalam daftar, aktivitas dari pengguna luar tidak akan disampaikan ke instansi apabila tidak ada pengguna lokal yang mengikuti pengguna tersebut, dengan begitu akun proksilah yang akan mengikutinya."
proxyAccountDescription: "Akun proksi merupakan sebuah akun yang bertindak sebagai\
\ pengikut luar untuk pengguna dalam kondisi tertentu. Sebagai contoh, ketika pengguna\
\ menambahkan seorang pengguna luar ke dalam daftar, aktivitas dari pengguna luar\
\ tidak akan disampaikan ke instansi apabila tidak ada pengguna lokal yang mengikuti\
\ pengguna tersebut, dengan begitu akun proksilah yang akan mengikutinya."
host: "Host"
selectUser: "Pilih pengguna"
recipient: "Penerima"
@ -177,7 +197,6 @@ operations: "Tindakan"
software: "Perangkat lunak"
version: "Versi"
metadata: "Metadata"
withNFiles: "{n} berkas"
monitor: "Pantau"
jobQueue: "Antrian kerja"
cpuAndMemory: "CPU dan Memori"
@ -187,11 +206,15 @@ instanceInfo: "Informasi Instansi"
statistics: "Statistik"
clearQueue: "Bersihkan antrian"
clearQueueConfirmTitle: "Apakah kamu yakin ingin membersihkan antrian?"
clearQueueConfirmText: "Seluruh sisa catatan yang tidak tersampaikan di dalam antrian tidak akan difederasi. Biasanya operasi ini TIDAK dibutuhkan."
clearQueueConfirmText: "Seluruh sisa catatan yang tidak tersampaikan di dalam antrian\
\ tidak akan difederasi. Biasanya operasi ini TIDAK dibutuhkan."
clearCachedFiles: "Hapus tembolok"
clearCachedFilesConfirm: "Apakah kamu yakin ingin menghapus seluruh tembolok berkas remote?"
clearCachedFilesConfirm: "Apakah kamu yakin ingin menghapus seluruh tembolok berkas\
\ remote?"
blockedInstances: "Instansi terblokir"
blockedInstancesDescription: "Daftar nama host dari instansi yang diperlukan untuk diblokir. Instansi yang didaftarkan tidak akan dapat berkomunikasi dengan instansi ini."
blockedInstancesDescription: "Daftar nama host dari instansi yang diperlukan untuk\
\ diblokir. Instansi yang didaftarkan tidak akan dapat berkomunikasi dengan instansi\
\ ini."
muteAndBlock: "Bisukan / Blokir"
mutedUsers: "Pengguna yang dibisukan"
blockedUsers: "Pengguna yang diblokir"
@ -199,7 +222,7 @@ noUsers: "Tidak ada pengguna"
editProfile: "Sunting profil"
noteDeleteConfirm: "Apakah kamu yakin ingin menghapus catatan ini?"
pinLimitExceeded: "Kamu tidak dapat menyematkan catatan lagi"
intro: "Instalasi Misskey telah selesai! Mohon untuk membuat pengguna admin."
intro: "Instalasi Calckey telah selesai! Mohon untuk membuat pengguna admin."
done: "Selesai"
processing: "Memproses"
preview: "Pratinjau"
@ -239,7 +262,8 @@ saved: "Telah disimpan"
messaging: "Pesan"
upload: "Unggah"
keepOriginalUploading: "Simpan gambar asli"
keepOriginalUploadingDescription: "Simpan gambar yang diunggah sebagaimana gambar aslinya. Bila dimatikan, versi tampilan web akan dihasilkan pada saat diunggah."
keepOriginalUploadingDescription: "Simpan gambar yang diunggah sebagaimana gambar\
\ aslinya. Bila dimatikan, versi tampilan web akan dihasilkan pada saat diunggah."
fromDrive: "Dari Drive"
fromUrl: "Dari URL"
uploadFromUrl: "Unggah dari URL"
@ -255,7 +279,8 @@ agreeTo: "Saya setuju kepada {0}"
tos: "Syarat dan ketentuan"
start: "Mulai"
home: "Beranda"
remoteUserCaution: "Informasi ini mungkin tidak mutakhir, karena pengguna ini berasal dari instansi luar."
remoteUserCaution: "Informasi ini mungkin tidak mutakhir, karena pengguna ini berasal\
\ dari instansi luar."
activity: "Aktivitas"
images: "Gambar"
birthday: "Tanggal lahir"
@ -288,7 +313,8 @@ unableToDelete: "Tidak dapat menghapus"
inputNewFileName: "Masukkan nama berkas yang baru"
inputNewDescription: "Masukkan keterangan disini"
inputNewFolderName: "Masukkan nama folder yang baru"
circularReferenceFolder: "Folder tujuan adalah subfolder dari folder yang ingin kamu pindahkan."
circularReferenceFolder: "Folder tujuan adalah subfolder dari folder yang ingin kamu\
\ pindahkan."
hasChildFilesOrFolders: "Karena folder ini tidak kosong, maka tidak dapat dihapus."
copyUrl: "Salin tautan"
rename: "Ubah nama"
@ -322,7 +348,8 @@ connectService: "Sambungkan"
disconnectService: "Putuskan"
enableLocalTimeline: "Nyalakan linimasa lokal"
enableGlobalTimeline: "Nyalakan linimasa global"
disablingTimelinesInfo: "Admin dan Moderator akan selalu memiliki akses ke semua linimasa meskipun linimasa tersebut tidak diaktifkan."
disablingTimelinesInfo: "Admin dan Moderator akan selalu memiliki akses ke semua linimasa\
\ meskipun linimasa tersebut tidak diaktifkan."
registration: "Pendaftaran"
enableRegistration: "Nyalakan pendaftaran pengguna baru"
invite: "Undang"
@ -334,9 +361,11 @@ bannerUrl: "URL Banner"
backgroundImageUrl: "URL Gambar latar"
basicInfo: "Informasi Umum"
pinnedUsers: "Pengguna yang disematkan"
pinnedUsersDescription: "Tuliskan satu nama pengguna dalam satu baris. Pengguna yang dituliskan disini akan disematkan dalam bilah \"Jelajahi\"."
pinnedUsersDescription: "Tuliskan satu nama pengguna dalam satu baris. Pengguna yang\
\ dituliskan disini akan disematkan dalam bilah \"Jelajahi\"."
pinnedPages: "Halaman yang disematkan"
pinnedPagesDescription: "Masukkan tautan dari halaman yang kamu ingin sematkan ke halaman utama dari instansi ini, dipisah dengan membuat baris baru."
pinnedPagesDescription: "Masukkan tautan dari halaman yang kamu ingin sematkan ke\
\ halaman utama dari instansi ini, dipisah dengan membuat baris baru."
pinnedClipId: "ID dari klip yang disematkan"
pinnedNotes: "Catatan yang disematkan"
hcaptcha: "hCaptcha"
@ -347,14 +376,17 @@ recaptcha: "reCAPTCHA"
enableRecaptcha: "Nyalakan reCAPTCHA"
recaptchaSiteKey: "Site key"
recaptchaSecretKey: "Secret Key"
avoidMultiCaptchaConfirm: "Menggunakan banyak Captcha dapat menyebabkan gangguan. Apakah kamu ingin untuk menonaktifkan Captcha yang lain? Kamu dapat membiarkan fitur ini tetap aktif dengan menekan tombol batal."
avoidMultiCaptchaConfirm: "Menggunakan banyak Captcha dapat menyebabkan gangguan.\
\ Apakah kamu ingin untuk menonaktifkan Captcha yang lain? Kamu dapat membiarkan\
\ fitur ini tetap aktif dengan menekan tombol batal."
antennas: "Antena"
manageAntennas: "Pengelola Antena"
name: "Nama"
antennaSource: "Sumber Antenna"
antennaKeywords: "Kata kunci yang diterima"
antennaExcludeKeywords: "Kata kunci yang dikecualikan"
antennaKeywordsDescription: "Pisahkan dengan spasi untuk kondisi AND. Pisahkan dengan baris baru untuk kondisi OR."
antennaKeywordsDescription: "Pisahkan dengan spasi untuk kondisi AND. Pisahkan dengan\
\ baris baru untuk kondisi OR."
notifyAntenna: "Beritahu untuk catatan baru"
withFileAntenna: "Hanya tampilkan catatan dengan berkas yang dilampirkan"
enableServiceworker: "Aktifkan ServiceWorker"
@ -377,7 +409,7 @@ exploreFediverse: "Jelajahi Fediverse"
popularTags: "Tag populer"
userList: "Daftar"
about: "Informasi"
aboutMisskey: "Tentang Misskey"
aboutMisskey: "Tentang Calckey"
administrator: "Admin"
token: "Token"
twoStepAuthentication: "Otentikasi dua faktor"
@ -441,7 +473,8 @@ strongPassword: "Kata sandi kuat"
passwordMatched: "Kata sandi sama"
passwordNotMatched: "Kata sandi tidak sama"
signinWith: "Masuk dengan {x}"
signinFailed: "Tidak dapat masuk. Nama pengguna atau kata sandi yang kamu masukkan salah."
signinFailed: "Tidak dapat masuk. Nama pengguna atau kata sandi yang kamu masukkan\
\ salah."
tapSecurityKey: "Ketuk kunci keamanan kamu"
or: "atau"
language: "Bahasa"
@ -482,19 +515,29 @@ showFeaturedNotesInTimeline: "Tampilkan catatan yang diunggulkan di linimasa"
objectStorage: "Object Storage"
useObjectStorage: "Gunakan object storage"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "Prefix URL digunakan untuk mengkonstruksi URL ke object (media) referencing. Tentukan URL jika kamu menggunakan CDN atau Proxy, jika tidak tentukan alamat yang dapat diakses secara publik sesuai dengan panduan dari layanan yang akan kamu gunakan, contohnya. 'https://<bucket>.s3.amazonaws.com' untuk AWS S3, dan 'https://storage.googleapis.com/<bucket>' untuk GCS."
objectStorageBaseUrlDesc: "Prefix URL digunakan untuk mengkonstruksi URL ke object\
\ (media) referencing. Tentukan URL jika kamu menggunakan CDN atau Proxy, jika tidak\
\ tentukan alamat yang dapat diakses secara publik sesuai dengan panduan dari layanan\
\ yang akan kamu gunakan, contohnya. 'https://<bucket>.s3.amazonaws.com' untuk AWS\
\ S3, dan 'https://storage.googleapis.com/<bucket>' untuk GCS."
objectStorageBucket: "Bucket"
objectStorageBucketDesc: "Mohon tentukan nama bucket yang digunakan pada layanan yang telah dikonfigurasi."
objectStorageBucketDesc: "Mohon tentukan nama bucket yang digunakan pada layanan yang\
\ telah dikonfigurasi."
objectStoragePrefix: "Prefix"
objectStoragePrefixDesc: "Berkas tidak akan disimpan dalam direktori dari prefix ini."
objectStorageEndpoint: "Endpoint"
objectStorageEndpointDesc: "Kosongkan bagian ini jika kamu menggunakan AWS S3, jika tidak tentukan endpoint sebagai '<host>' atau '<host>:<port>' sesuai dengan panduan dari layanan yang akan kamu gunakan."
objectStorageEndpointDesc: "Kosongkan bagian ini jika kamu menggunakan AWS S3, jika\
\ tidak tentukan endpoint sebagai '<host>' atau '<host>:<port>' sesuai dengan panduan\
\ dari layanan yang akan kamu gunakan."
objectStorageRegion: "Region"
objectStorageRegionDesc: "Tentukan region seperti 'xx-east-1'. Jika layanan kamu tidak memiliki perbedaan mengenai region, kosongkan saja atau isi dengan 'us-east-1'."
objectStorageRegionDesc: "Tentukan region seperti 'xx-east-1'. Jika layanan kamu tidak\
\ memiliki perbedaan mengenai region, kosongkan saja atau isi dengan 'us-east-1'."
objectStorageUseSSL: "Gunakan SSL"
objectStorageUseSSLDesc: "Matikan ini jika kamu tidak akan menggunakan HTTPS untuk koneksi API"
objectStorageUseSSLDesc: "Matikan ini jika kamu tidak akan menggunakan HTTPS untuk\
\ koneksi API"
objectStorageUseProxy: "Hubungkan melalui Proxy"
objectStorageUseProxyDesc: "Matikan ini jika kamu tidak akan menggunakan Proxy untuk koneksi ObjectStorage"
objectStorageUseProxyDesc: "Matikan ini jika kamu tidak akan menggunakan Proxy untuk\
\ koneksi ObjectStorage"
objectStorageSetPublicRead: "Setel \"public-read\" disaat mengunggah"
serverLogs: "Log Peladen"
deleteAll: "Hapus semua"
@ -522,7 +565,9 @@ sort: "Urutkan"
ascendingOrder: "Urutkan naik"
descendingOrder: "Urutkan menurun"
scratchpad: "Scratchpad"
scratchpadDescription: "Scratchpad menyediakan lingkungan eksperimen untuk AiScript. Kamu bisa menulis, mengeksuksi, serta mengecek hasil yang berinteraksi dengan Misskey."
scratchpadDescription: "Scratchpad menyediakan lingkungan eksperimen untuk AiScript.\
\ Kamu bisa menulis, mengeksuksi, serta mengecek hasil yang berinteraksi dengan\
\ Calckey."
output: "Keluaran"
script: "Script"
disablePagesScript: "Nonaktifkan script pada halaman"
@ -530,11 +575,14 @@ updateRemoteUser: "Perbaharui informasi pengguna luar"
deleteAllFiles: "Hapus semua berkas"
deleteAllFilesConfirm: "Apakah kamu yakin ingin menghapus semua berkas?"
removeAllFollowing: "Tahan semua mengikuti"
removeAllFollowingDescription: "Batal mengikuti semua akun dari {host}. Mohon jalankan ini ketika instansi sudah tidak ada lagi."
removeAllFollowingDescription: "Batal mengikuti semua akun dari {host}. Mohon jalankan\
\ ini ketika instansi sudah tidak ada lagi."
userSuspended: "Pengguna ini telah dibekukan."
userSilenced: "Pengguna ini telah dibungkam."
yourAccountSuspendedTitle: "Akun ini dibekukan"
yourAccountSuspendedDescription: "Akun ini dibekukan karena melanggar ketentuan penggunaan layanan peladen atau semacamnya. Hubungi admin apabila ingin tahu alasan lebih lanjut. Mohon untuk tidak membuat akun baru."
yourAccountSuspendedDescription: "Akun ini dibekukan karena melanggar ketentuan penggunaan\
\ layanan peladen atau semacamnya. Hubungi admin apabila ingin tahu alasan lebih\
\ lanjut. Mohon untuk tidak membuat akun baru."
menu: "Menu"
divider: "Pembagi"
addItem: "Tambahkan item"
@ -579,7 +627,8 @@ notificationType: "Jenis pemberitahuan"
edit: "Sunting"
emailServer: "Peladen surel"
enableEmail: "Nyalakan distribusi surel"
emailConfigInfo: "Digunakan untuk mengonfirmasi surel kamu disaat mendaftar dan lupa kata sandi"
emailConfigInfo: "Digunakan untuk mengonfirmasi surel kamu disaat mendaftar dan lupa\
\ kata sandi"
email: "Surel"
emailAddress: "Alamat surel"
smtpConfig: "Konfigurasi peladen SMTP"
@ -587,13 +636,15 @@ smtpHost: "Host"
smtpPort: "Port"
smtpUser: "Nama Pengguna"
smtpPass: "Kata sandi"
emptyToDisableSmtpAuth: "Kosongkan nama pengguna dan kata sandi untuk menonaktifkan verifikasi SMTP"
emptyToDisableSmtpAuth: "Kosongkan nama pengguna dan kata sandi untuk menonaktifkan\
\ verifikasi SMTP"
smtpSecure: "Gunakan SSL/TLS implisit untuk koneksi SMTP"
smtpSecureInfo: "Matikan ini ketika menggunakan STARTTLS"
testEmail: "Tes pengiriman surel"
wordMute: "Bisukan kata"
regexpError: "Kesalahan ekspresi reguler"
regexpErrorDescription: "Galat terjadi pada baris {line} ekspresi reguler dari {tab} kata yang dibisukan:"
regexpErrorDescription: "Galat terjadi pada baris {line} ekspresi reguler dari {tab}\
\ kata yang dibisukan:"
instanceMute: "Bisuka instansi"
userSaysSomething: "{name} mengatakan sesuatu"
makeActive: "Aktifkan"
@ -609,30 +660,37 @@ create: "Buat"
notificationSetting: "Pengaturan Pemberitahuan"
notificationSettingDesc: "Pilih tipe pemberitahuan untuk ditampilkan"
useGlobalSetting: "Gunakan setelan global"
useGlobalSettingDesc: "Jika dinyalakan, setelan pemberitahuan akun kamu akan digunakan. Jika dimatikan, konfigurasi secara individu dapat dibuat."
useGlobalSettingDesc: "Jika dinyalakan, setelan pemberitahuan akun kamu akan digunakan.\
\ Jika dimatikan, konfigurasi secara individu dapat dibuat."
other: "Lainnya"
regenerateLoginToken: "Perbarui token login"
regenerateLoginTokenDescription: "Perbarui token yang digunakan secara internal saat login. Normalnya aksi ini tidak diperlukan. Jika diperbarui, semua perangkat akan dilogout."
setMultipleBySeparatingWithSpace: "Kamu dapat menyetel banyak dengan memisahkannya menggunakan spasi."
regenerateLoginTokenDescription: "Perbarui token yang digunakan secara internal saat\
\ login. Normalnya aksi ini tidak diperlukan. Jika diperbarui, semua perangkat akan\
\ dilogout."
setMultipleBySeparatingWithSpace: "Kamu dapat menyetel banyak dengan memisahkannya\
\ menggunakan spasi."
fileIdOrUrl: "File-ID atau URL"
behavior: "Perilaku"
sample: "Contoh"
abuseReports: "Laporkan"
reportAbuse: "Laporkan"
reportAbuseOf: "Laporkan {name}"
fillAbuseReportDescription: "Mohon isi rincian laporan. Jika laporan ini mengenai catatan yang spesifik, mohon lampirkan serta URL catatan tersebut."
fillAbuseReportDescription: "Mohon isi rincian laporan. Jika laporan ini mengenai\
\ catatan yang spesifik, mohon lampirkan serta URL catatan tersebut."
abuseReported: "Laporan kamu telah dikirimkan. Terima kasih."
reporter: "Pelapor"
reporteeOrigin: "Yang dilaporkan"
reporterOrigin: "Pelapor"
forwardReport: "Teruskan laporan ke instansi luar"
forwardReportIsAnonymous: "Untuk melindungi privasi akun kamu, akun anonim dari sistem akan digunakan sebagai pelapor pada instansi luar."
forwardReportIsAnonymous: "Untuk melindungi privasi akun kamu, akun anonim dari sistem\
\ akan digunakan sebagai pelapor pada instansi luar."
send: "Kirim"
abuseMarkAsResolved: "Tandai laporan sebagai selesai"
openInNewTab: "Buka di tab baru"
openInSideView: "Buka di tampilan samping"
defaultNavigationBehaviour: "Navigasi bawaan"
editTheseSettingsMayBreakAccount: "Menyunting pengaturan ini memiliki kemungkinan untuk merusak akun kamu."
editTheseSettingsMayBreakAccount: "Menyunting pengaturan ini memiliki kemungkinan\
\ untuk merusak akun kamu."
instanceTicker: "Informasi pengguna pada instansi"
waitingFor: "Menunggu untuk {x}"
random: "Acak"
@ -644,9 +702,11 @@ createNew: "Buat baru"
optional: "Opsional"
createNewClip: "Buat klip baru"
unclip: "Batalkan klip"
confirmToUnclipAlreadyClippedNote: "Catatan ini sudah disertakan di klip \"{name}\". Yakin ingin membatalkan catatan dari klip ini?"
confirmToUnclipAlreadyClippedNote: "Catatan ini sudah disertakan di klip \"{name}\"\
. Yakin ingin membatalkan catatan dari klip ini?"
public: "Publik"
i18nInfo: "Calckey diterjemahkan ke dalam banyak bahasa oleh sukarelawan. Kamu dapat ikut membantu di {link}."
i18nInfo: "Calckey diterjemahkan ke dalam banyak bahasa oleh sukarelawan. Kamu dapat\
\ ikut membantu di {link}."
manageAccessTokens: "Kelola access token"
accountInfo: "Informasi akun"
notesCount: "Jumlah catatan"
@ -665,12 +725,16 @@ no: "Tidak"
driveFilesCount: "Jumlah berkas drive"
driveUsage: "Penggunaan ruang penyimpanan drive"
noCrawle: "Tolak pengindeksan crawler"
noCrawleDescription: "Meminta mesin pencari untuk tidak mengindeks halaman profil kamu, catatan, Halaman, dll."
lockedAccountInfo: "Kecuali kamu menyetel visibilitas catatan milikmu ke \"Hanya pengikut\", catatan milikmu akan dapat dilihat oleh siapa saja, bahkan jika kamu memerlukan pengikut untuk disetujui secara manual."
noCrawleDescription: "Meminta mesin pencari untuk tidak mengindeks halaman profil\
\ kamu, catatan, Halaman, dll."
lockedAccountInfo: "Kecuali kamu menyetel visibilitas catatan milikmu ke \"Hanya pengikut\"\
, catatan milikmu akan dapat dilihat oleh siapa saja, bahkan jika kamu memerlukan\
\ pengikut untuk disetujui secara manual."
alwaysMarkSensitive: "Tandai media dalam catatan sebagai media sensitif"
loadRawImages: "Tampilkan lampiran gambar secara penuh daripada thumbnail"
disableShowingAnimatedImages: "Jangan mainkan gambar bergerak"
verificationEmailSent: "Surel verifikasi telah dikirimkan. Mohon akses tautan yang telah disertakan untuk menyelesaikan verifikasi."
verificationEmailSent: "Surel verifikasi telah dikirimkan. Mohon akses tautan yang\
\ telah disertakan untuk menyelesaikan verifikasi."
notSet: "Tidak disetel"
emailVerified: "Surel telah diverifikasi"
noteFavoritesCount: "Jumlah catatan yang difavoritkan"
@ -682,14 +746,16 @@ clips: "Klip"
experimentalFeatures: "Fitur eksperimental"
developer: "Pengembang"
makeExplorable: "Buat akun tampil di \"Jelajahi\""
makeExplorableDescription: "Jika kamu mematikan ini, akun kamu tidak akan muncul di bagian \"Jelajahi:"
makeExplorableDescription: "Jika kamu mematikan ini, akun kamu tidak akan muncul di\
\ bagian \"Jelajahi:"
showGapBetweenNotesInTimeline: "Tampilkan jarak diantara catatan pada linimasa"
duplicate: "Duplikat"
left: "Kiri"
center: "Tengah"
wide: "Lebar"
narrow: "Sempit"
reloadToApplySetting: "Pengaturan ini akan diterapkan saat memuat halaman kembali. Apakah kamu ingin memuat halaman kembali sekarang?"
reloadToApplySetting: "Pengaturan ini akan diterapkan saat memuat halaman kembali.\
\ Apakah kamu ingin memuat halaman kembali sekarang?"
needReloadToApply: "Pengaturan ini hanya akan diterapkan setelah memuat ulang halaman."
showTitlebar: "Tampilkan bilah judul"
clearCache: "Hapus tembolok"
@ -697,7 +763,10 @@ onlineUsersCount: "{n} orang sedang daring"
nUsers: "{n} Pengguna"
nNotes: "{n} Catatan"
sendErrorReports: "Kirim laporan kesalahan"
sendErrorReportsDescription: "Ketika dinyalakan, informasi kesalahan rinci akan dibagikan dengan Misskey ketika masalah terjadi, hal ini untuk membantu kualitas Misskey. Fitur ini memungkinkan memuat informasi seperti sistem operasi yang kamu gunakan dan versinya, aplikasi peramban yang kamu gunakan, riwayat aktivitas kamu, dll."
sendErrorReportsDescription: "Ketika dinyalakan, informasi kesalahan rinci akan dibagikan\
\ dengan Calckey ketika masalah terjadi, hal ini untuk membantu kualitas Calckey.\
\ Fitur ini memungkinkan memuat informasi seperti sistem operasi yang kamu gunakan\
\ dan versinya, aplikasi peramban yang kamu gunakan, riwayat aktivitas kamu, dll."
myTheme: "Tema saya"
backgroundColor: "Latar Belakang"
accentColor: "Aksen"
@ -736,14 +805,17 @@ unlikeConfirm: "Yakin ingin hapus sukamu?"
fullView: "Tampilan penuh"
quitFullView: "Keluar tampilan penuh"
addDescription: "Tambahkan deskripsi"
userPagePinTip: "Kamu dapat membuat catatan untuk ditampilkan disini dengan memilih \"Sematkan ke profil\" dari menu pada catatan individu."
notSpecifiedMentionWarning: "Catatan ini mengandung sebutan dari pengguna yang tidak dimuat sebagai penerima"
userPagePinTip: "Kamu dapat membuat catatan untuk ditampilkan disini dengan memilih\
\ \"Sematkan ke profil\" dari menu pada catatan individu."
notSpecifiedMentionWarning: "Catatan ini mengandung sebutan dari pengguna yang tidak\
\ dimuat sebagai penerima"
info: "Informasi"
userInfo: "Informasi pengguna"
unknown: "Tidak diketahui"
onlineStatus: "Status daring"
hideOnlineStatus: "Sembunyikan status daring"
hideOnlineStatusDescription: "Menyembunyikan status daring kamu umengurangi kenyamanan untuk beberapa fungsi seperti contohnya pencarian."
hideOnlineStatusDescription: "Menyembunyikan status daring kamu umengurangi kenyamanan\
\ untuk beberapa fungsi seperti contohnya pencarian."
online: "Daring"
active: "Aktif"
offline: "Luring"
@ -778,7 +850,8 @@ emailNotConfiguredWarning: "Alamat surel tidak disetel."
ratio: "Rasio"
previewNoteText: "Tampilkan pratinjau"
customCss: "Custom CSS"
customCssWarn: "Pengaturan ini seharusnya digunakan jika kamu tahu cara kerjanya. Memasukkan nilai yang tidak tepat dapat menyebabkan klien tidak berfungsi semestinya."
customCssWarn: "Pengaturan ini seharusnya digunakan jika kamu tahu cara kerjanya.\
\ Memasukkan nilai yang tidak tepat dapat menyebabkan klien tidak berfungsi semestinya."
global: "Global"
squareAvatars: "Tampilkan avatar sebagai persegi"
sent: "Kirim"
@ -788,12 +861,14 @@ hashtags: "Tagar"
troubleshooting: "Penyelesaian Masalah"
useBlurEffect: "Gunakan efek blur pada antarmuka"
learnMore: "Pelajari lebih lanjut"
misskeyUpdated: "Misskey telah dimutakhirkan!"
misskeyUpdated: "Calckey telah dimutakhirkan!"
whatIsNew: "Lihat perubahan pemutakhiran"
translate: "Terjemahkan"
translatedFrom: "Terjemahkan dari {x}"
accountDeletionInProgress: "Penghapusan akun sedang dalam proses"
usernameInfo: "Nama yang mengidentifikasikan akun kamu dari yang lain pada peladen ini. Kamu dapat menggunakan alfabet (a~z, A~Z), digit (0~9) atau garis bawah (_). Username tidak dapat diubah setelahnya."
usernameInfo: "Nama yang mengidentifikasikan akun kamu dari yang lain pada peladen\
\ ini. Kamu dapat menggunakan alfabet (a~z, A~Z), digit (0~9) atau garis bawah (_).\
\ Username tidak dapat diubah setelahnya."
aiChanMode: "Mode Ai"
keepCw: "Biarkan Peringatan Konten"
pubSub: "Akun Pub/Sub"
@ -809,12 +884,14 @@ filter: "Saring"
controlPanel: "Panel kendali"
manageAccounts: "Kelola Akun"
makeReactionsPublic: "Tampilkan riwayat reaksi ke publik"
makeReactionsPublicDescription: "Pengaturan ini akan membuat daftar dari semua reaksi masa lalu kamu ditampilkan secara publik."
makeReactionsPublicDescription: "Pengaturan ini akan membuat daftar dari semua reaksi\
\ masa lalu kamu ditampilkan secara publik."
classic: "Klasik"
muteThread: "Bisukan thread"
unmuteThread: "Suarakan thread"
ffVisibility: "Visibilitas Mengikuti/Pengikut"
ffVisibilityDescription: "Mengatur siapa yang dapat melihat pengikutmu dan yang kamu ikuti."
ffVisibilityDescription: "Mengatur siapa yang dapat melihat pengikutmu dan yang kamu\
\ ikuti."
continueThread: "Lihat lanjutan thread"
deleteAccountConfirm: "Akun akan dihapus. Apakah kamu yakin?"
incorrectPassword: "Kata sandi salah."
@ -824,7 +901,8 @@ leaveGroup: "Keluar grup"
leaveGroupConfirm: "Apakah kamu yakin untuk keluar dari \"{name}\"?"
useDrawerReactionPickerForMobile: "Tampilkan bilah reaksi sebagai laci di ponsel"
welcomeBackWithName: "Selamat datang kembali, {name}."
clickToFinishEmailVerification: "Mohon klik [{ok}] untuk menyelesaikan verifikasi email."
clickToFinishEmailVerification: "Mohon klik [{ok}] untuk menyelesaikan verifikasi\
\ email."
overridedDeviceKind: "Tipe perangkat"
smartphone: "Ponsel"
tablet: "Tablet"
@ -866,11 +944,16 @@ _ffVisibility:
_signup:
almostThere: "Hampir selesai"
emailAddressInfo: "Mohon masukkan alamat surel kamu."
emailSent: "Konfirmasi surel telah dikirimkan ke alamat surel kamu ({email}). Mohon klik tautan yang tercantum di dalamnya untuk menyelesaikan pembuatan akun."
emailSent: "Konfirmasi surel telah dikirimkan ke alamat surel kamu ({email}). Mohon\
\ klik tautan yang tercantum di dalamnya untuk menyelesaikan pembuatan akun."
_accountDelete:
accountDelete: "Hapus akun"
mayTakeTime: "Karena penghapusan akun merupakan proses yang berat dan intensif, kemungkinan dapat membutuhkan waktu untuk menyelesaikan tergantung daripada berapa banyak konten yang kamu buat dan berapa banyak berkas yang telah kamu unggah."
sendEmail: "Setelah penghapusan akun selesai, pemberitahuan akan dikirimkan ke alamat surel yang terdaftarkan pada akun ini."
mayTakeTime: "Karena penghapusan akun merupakan proses yang berat dan intensif,\
\ kemungkinan dapat membutuhkan waktu untuk menyelesaikan tergantung daripada\
\ berapa banyak konten yang kamu buat dan berapa banyak berkas yang telah kamu\
\ unggah."
sendEmail: "Setelah penghapusan akun selesai, pemberitahuan akan dikirimkan ke alamat\
\ surel yang terdaftarkan pada akun ini."
requestAccountDelete: "Minta penghapusan akun"
started: "Penghapusan telah dimulai"
inProgress: "Penghapusan sedang dalam proses"
@ -878,9 +961,13 @@ _ad:
back: "Kembali"
reduceFrequencyOfThisAd: "Tampilkan iklan ini lebih sedikit"
_forgotPassword:
enterEmail: "Masukkan alamat surel yang kamu gunakan pada saat mendaftar. Sebuah tautan untuk mengatur ulang kata sandi kamu akan dikirimkan ke alamat surel tersebut."
ifNoEmail: "Apabila kamu tidak menggunakan surel pada saat pendaftaran, mohon hubungi admin segera."
contactAdmin: "Instansi ini tidak mendukung menggunakan alamat surel, mohon kontak admin untuk mengatur ulang password kamu."
enterEmail: "Masukkan alamat surel yang kamu gunakan pada saat mendaftar. Sebuah\
\ tautan untuk mengatur ulang kata sandi kamu akan dikirimkan ke alamat surel\
\ tersebut."
ifNoEmail: "Apabila kamu tidak menggunakan surel pada saat pendaftaran, mohon hubungi\
\ admin segera."
contactAdmin: "Instansi ini tidak mendukung menggunakan alamat surel, mohon kontak\
\ admin untuk mengatur ulang password kamu."
_gallery:
my: "Postingan saya"
liked: "Postingan yang disukai"
@ -902,13 +989,15 @@ _registry:
domain: "Domain"
createKey: "Buat kunci"
_aboutMisskey:
about: "Misskey adalah perangkat lunak sumber terbuka yang sedang dikembangkan oleh syuilo sejak 2014."
about: "Calckey adalah perangkat lunak sumber terbuka yang sedang dikembangkan oleh\
\ syuilo sejak 2014."
contributors: "Kontributor utama"
allContributors: "Seluruh kontributor"
source: "Sumber kode"
translation: "Terjemahkan Misskey"
donate: "Donasi ke Misskey"
morePatrons: "Kami sangat mengapresiasi dukungan dari banyak penolong lain yang tidak tercantum disini. Terima kasih! 🥰"
translation: "Terjemahkan Calckey"
donate: "Donasi ke Calckey"
morePatrons: "Kami sangat mengapresiasi dukungan dari banyak penolong lain yang\
\ tidak tercantum disini. Terima kasih! \U0001F970"
patrons: "Pendukung"
_nsfw:
respect: "Sembunyikan media NSFW"
@ -916,10 +1005,12 @@ _nsfw:
force: "Sembunyikan semua media"
_mfm:
cheatSheet: "Contekan MFM"
intro: "MFM adalah Misskey-exclusive Markup Language yang dapat digunakan di banyak tempat. Berikut kamu bisa melihat daftar dari syntax MFM yang ada."
dummy: "Misskey membentangkan dunia Fediverse"
intro: "MFM adalah Calckey-exclusive Markup Language yang dapat digunakan di banyak\
\ tempat. Berikut kamu bisa melihat daftar dari syntax MFM yang ada."
dummy: "Calckey membentangkan dunia Fediverse"
mention: "Sebut"
mentionDescription: "Kamu dapat menentukan pengguna tertentu dengan menggunakan simbol-At dan nama engguna mereka."
mentionDescription: "Kamu dapat menentukan pengguna tertentu dengan menggunakan\
\ simbol-At dan nama engguna mereka."
hashtag: "Tagar"
hashtagDescription: "Kamu dapat menentukan tagar dengan menggunakan angka dan teks."
url: "URL"
@ -935,15 +1026,18 @@ _mfm:
inlineCode: "Kode (Dalam baris)"
inlineCodeDescription: "Menampilkan sorotan sintaks dalam baris untuk kode(program-)."
blockCode: "Kode (Blok)"
blockCodeDescription: "Menampilkan sorotan sintaks untuk kode(program-) multi baris dalam sebuah blok."
blockCodeDescription: "Menampilkan sorotan sintaks untuk kode(program-) multi baris\
\ dalam sebuah blok."
inlineMath: "Matematika (Dalam baris)"
inlineMathDescription: "Menampilkan formula matematika (KaTeX) dalam baris."
blockMath: "Matematika (Blok)"
blockMathDescription: "Menampilkan formula matematika (KaTeX) multibaris dalam sebuah blok."
blockMathDescription: "Menampilkan formula matematika (KaTeX) multibaris dalam sebuah\
\ blok."
quote: "Kutip"
quoteDescription: "Menampilkan konten sebagai kutipan."
emoji: "Emoji kustom"
emojiDescription: "Emoji kustom dapat ditampilkan dengan mengurung nama emoji kustom menggunakan tanda titik dua."
emojiDescription: "Emoji kustom dapat ditampilkan dengan mengurung nama emoji kustom\
\ menggunakan tanda titik dua."
search: "Penelusuran"
searchDescription: "Menampilkan kotak pencarian dengan teks yang sudah dimasukkan."
flip: "Balik"
@ -969,7 +1063,8 @@ _mfm:
x4: "Sangat besar"
x4Description: "Tampilka konten menjadi sangat besar."
blur: "Buram"
blurDescription: "Konten dapat diburamkan dengan efek ini. Konten dapat ditampilkan dengan jelas dengan melayangkan kursor tetikus di atasnya."
blurDescription: "Konten dapat diburamkan dengan efek ini. Konten dapat ditampilkan\
\ dengan jelas dengan melayangkan kursor tetikus di atasnya."
font: "Font"
fontDescription: "Setel font yang ditampilkan untuk konten."
rainbow: "Pelangi"
@ -1003,15 +1098,21 @@ _menuDisplay:
hide: "Sembunyikan"
_wordMute:
muteWords: "Kata yang dibisukan"
muteWordsDescription: "Pisahkan dengan spasi untuk kondisi AND. Pisahkan dengan baris baru untuk kondisi OR."
muteWordsDescription2: "Kurung kata kunci dengan garis miring untuk menggunakan regular expressions."
muteWordsDescription: "Pisahkan dengan spasi untuk kondisi AND. Pisahkan dengan\
\ baris baru untuk kondisi OR."
muteWordsDescription2: "Kurung kata kunci dengan garis miring untuk menggunakan\
\ regular expressions."
softDescription: "Sembunyikan catatan yang memenuhi aturan kondisi dari linimasa."
hardDescription: "Cegah catatan memenuhi aturan kondisi dari ditambahkan ke linimasa. Dengan tambahan, catatan berikut tidak akan ditambahkan ke linimasa meskipun jika kondisi tersebut diubah."
hardDescription: "Cegah catatan memenuhi aturan kondisi dari ditambahkan ke linimasa.\
\ Dengan tambahan, catatan berikut tidak akan ditambahkan ke linimasa meskipun\
\ jika kondisi tersebut diubah."
soft: "Lembut"
hard: "Keras"
mutedNotes: "Catatan yang dibisukan"
_instanceMute:
instanceMuteDescription: "Pengaturan ini akan membisukan note/renote apa saja dari instansi yang terdaftar, termasuk pengguna yang membalas pengguna lain dalam instansi yang dibisukan."
instanceMuteDescription: "Pengaturan ini akan membisukan note/renote apa saja dari\
\ instansi yang terdaftar, termasuk pengguna yang membalas pengguna lain dalam\
\ instansi yang dibisukan."
instanceMuteDescription2: "Pisah dengan baris baru"
title: "Sembunyikan note dari instansi terdaftar."
heading: "Daftar instansi yang akan dibisukan"
@ -1043,7 +1144,8 @@ _theme:
darken: "Mengelamkan"
lighten: "Menerangkan"
inputConstantName: "Masukkan nama untuk konstanta"
importInfo: "Jika kamu memasukkan kode tema disini, kamu dapat mengimpornya ke penyunting tema"
importInfo: "Jika kamu memasukkan kode tema disini, kamu dapat mengimpornya ke penyunting\
\ tema"
deleteConstantConfirm: "apakah kamu ingin menghapus konstanta {const}?"
keys:
accent: "Aksen"
@ -1113,38 +1215,58 @@ _time:
hour: "jam"
day: "hari"
_tutorial:
title: "Cara menggunakan Misskey"
title: "Cara menggunakan Calckey"
step1_1: "Selamat datang!"
step1_2: "Halaman ini disebut \"linimasa\". Halaman ini menampilkan \"catatan\" yang diurutkan secara kronologis dari orang-orang yang kamu \"ikuti\"."
step1_3: "Linimasa kamu kosong, karena kamu belum mencatat catatan apapun atau mengikuti siapapun."
step2_1: "Selesaikan menyetel profilmu sebelum menulis sebuah catatan atau mengikuti seseorang."
step2_2: "Menyediakan beberapa informasi tentang siapa kamu akan membuat orang lain mudah untuk mengikutimu kembali."
step3_1: "Selesai menyetel profil kamu?"
step3_2: "Langkah selanjutnya adalah membuat catatan. Kamu bisa lakukan ini dengan mengklik ikon pensil pada layar kamu."
step3_3: "Isilah di dalam modal dan tekan tombol pada atas kanan untuk memcatat catatan kamu."
step3_4: "Bingung tidak berpikiran untuk mengatakan sesuatu? Coba saja \"baru aja ikutan bikin akun misskey punyaku\"!"
step1_2: "Halaman ini disebut \"linimasa\". Halaman ini menampilkan \"catatan\"\
\ yang diurutkan secara kronologis dari orang-orang yang kamu \"ikuti\"."
step1_3: "Linimasa kamu kosong, karena kamu belum mencatat catatan apapun atau mengikuti\
\ siapapun."
step2_1: "Selesaikan menyetel profilmu sebelum menulis sebuah catatan atau mengikuti\
\ seseorang."
step2_2: "Menyediakan beberapa informasi tentang siapa kamu akan membuat orang lain\
\ mudah untuk mengikutimu kembali."
step3_1: "Sekarang saatnya mengikuti beberapa orang!"
step3_2: "Langkah selanjutnya adalah membuat catatan. Kamu bisa lakukan ini dengan\
\ mengklik ikon pensil pada layar kamu."
step3_3: "Isilah di dalam modal dan tekan tombol pada atas kanan untuk memcatat\
\ catatan kamu."
step3_4: "Bingung tidak berpikiran untuk mengatakan sesuatu? Coba saja \"baru aja\
\ ikutan bikin akun misskey punyaku\"!"
step4_1: "Selesai mencatat catatan pertamamu?"
step4_2: "Horee! Sekarang catatan pertamamu sudah ditampilkan di linimasa milikmu."
step5_1: "Sekarang, mari mencoba untuk membuat linimasamu lebih hidup dengan mengikuti orang lain."
step5_2: "{featured} akan memperlihatkan catatan yang sedang tren saat ini untuk kamu. {explore} akan membantumu untuk mencari pengguna yang sedang tren juga saat ini. Coba ikuti seseorang yang kamu suka!"
step5_3: "Untuk mengikuti pengguna lain, klik pada ikon mereka dan tekan tombol follow pada profil mereka."
step5_4: "Jika pengguna lain memiliki ikon gembok di sebelah nama mereka, maka pengguna rersebut harus menyetujui permintaan mengikuti dari kamu secara manual."
step5_1: "Sekarang, mari mencoba untuk membuat linimasamu lebih hidup dengan mengikuti\
\ orang lain."
step5_2: "{featured} akan memperlihatkan catatan yang sedang tren saat ini untuk\
\ kamu. {explore} akan membantumu untuk mencari pengguna yang sedang tren juga\
\ saat ini. Coba ikuti seseorang yang kamu suka!"
step5_3: "Untuk mengikuti pengguna lain, klik pada ikon mereka dan tekan tombol\
\ follow pada profil mereka."
step5_4: "Jika pengguna lain memiliki ikon gembok di sebelah nama mereka, maka pengguna\
\ rersebut harus menyetujui permintaan mengikuti dari kamu secara manual."
step6_1: "Sekarang kamu dapat melihat catatan pengguna lain pada linimasamu."
step6_2: "Kamu juga bisa memberikan \"reaksi\" ke catatan orang lain untuk merespon dengan cepat."
step6_3: "Untuk memberikan \"reaksi\", tekan tanda \"+\" pada catatan pengguna lain dan pilih emoji yang kamu suka untuk memberikan reaksimu kepada mereka."
step7_1: "Yay, Selamat! Kamu sudah menyelesaikan tutorial dasar Misskey."
step7_2: "Jika kamu ingin mempelajari lebih lanjut tentang Misskey, cobalah berkunjung ke bagian {help}."
step7_3: "Semoga berhasil dan bersenang-senanglah! 🚀"
step6_2: "Kamu juga bisa memberikan \"reaksi\" ke catatan orang lain untuk merespon\
\ dengan cepat."
step6_3: "Untuk memberikan \"reaksi\", tekan tanda \"+\" pada catatan pengguna lain\
\ dan pilih emoji yang kamu suka untuk memberikan reaksimu kepada mereka."
step7_1: "Yay, Selamat! Kamu sudah menyelesaikan tutorial dasar Calckey."
step7_2: "Jika kamu ingin mempelajari lebih lanjut tentang Calckey, cobalah berkunjung\
\ ke bagian {help}."
step7_3: "Semoga berhasil dan bersenang-senanglah! \U0001F680"
_2fa:
alreadyRegistered: "Kamu telah mendaftarkan perangkat otentikasi dua faktor."
registerDevice: "Daftarkan perangkat baru"
registerKey: "Daftarkan kunci keamanan baru"
step1: "Pertama, pasang aplikasi otentikasi (seperti {a} atau {b}) di perangkat kamu."
registerTOTP: "Daftarkan perangkat baru"
registerSecurityKey: "Daftarkan kunci keamanan baru"
step1: "Pertama, pasang aplikasi otentikasi (seperti {a} atau {b}) di perangkat\
\ kamu."
step2: "Lalu, pindai kode QR yang ada di layar."
step2Url: "Di aplikasi desktop, masukkan URL berikut:"
step3: "Masukkan token yang telah disediakan oleh aplikasimu untuk menyelesaikan pemasangan."
step4: "Mulai sekarang, upaya login apapun akan meminta token login dari aplikasi otentikasi kamu."
securityKeyInfo: "Kamu dapat memasang otentikasi WebAuthN untuk mengamankan proses login lebih lanjut dengan tidak hanya perangkat keras kunci keamanan yang mendukung FIDO2, namun juga sidik jari atau otentikasi PIN pada perangkatmu."
step3: "Masukkan token yang telah disediakan oleh aplikasimu untuk menyelesaikan\
\ pemasangan."
step4: "Mulai sekarang, upaya login apapun akan meminta token login dari aplikasi\
\ otentikasi kamu."
securityKeyInfo: "Kamu dapat memasang otentikasi WebAuthN untuk mengamankan proses\
\ login lebih lanjut dengan tidak hanya perangkat keras kunci keamanan yang mendukung\
\ FIDO2, namun juga sidik jari atau otentikasi PIN pada perangkatmu."
_permissions:
"read:account": "Lihat informasi akun"
"write:account": "Sunting informasi akun"
@ -1180,7 +1302,8 @@ _permissions:
"write:gallery-likes": "Sunting daftar postingan galeri yang disukai"
_auth:
shareAccess: "Apakah kamu ingin mengijinkan \"{name}\" untuk mengakses akun ini?"
shareAccessAsk: "Apakah kamu ingin mengijinkan aplikasi ini untuk mengakses akun kamu?"
shareAccessAsk: "Apakah kamu ingin mengijinkan aplikasi ini untuk mengakses akun\
\ kamu?"
permissionAsk: "Aplikasi ini membutuhkan beberapa ijin, yaitu:"
pleaseGoBack: "Mohon kembali ke aplikasi kamu"
callback: "Mengembalikan kamu ke aplikasi"
@ -1275,7 +1398,8 @@ _profile:
youCanIncludeHashtags: "Kamu juga dapat menambahkan tagar ke dalam bio."
metadata: "Informasi tambahan"
metadataEdit: "Sunting informasi tambahan"
metadataDescription: "Kamu dapat menampilkan hingga 4 bagian informasi tambahan ke dalam profilmu."
metadataDescription: "Kamu dapat menampilkan hingga 4 bagian informasi tambahan\
\ ke dalam profilmu."
metadataLabel: "Label"
metadataContent: "Isi"
changeAvatar: "Ubah avatar"
@ -1596,7 +1720,8 @@ _pages:
_for:
arg1: "Jumlah angka untuk diulangi"
arg2: "Aksi"
typeError: "Slot {slot} menerima tipe \"{expect}\", sayangnya nilai yang disediakan adalah \"{actual}\"!"
typeError: "Slot {slot} menerima tipe \"{expect}\", sayangnya nilai yang disediakan\
\ adalah \"{actual}\"!"
thereIsEmptySlot: "Slot {slot} kosong!"
types:
string: "Teks"

View File

@ -2,59 +2,90 @@
* Languages Loader
*/
const fs = require('fs');
const yaml = require('js-yaml');
let languages = []
let languages_custom = []
const fs = require("fs");
const yaml = require("js-yaml");
const languages = [];
const languages_custom = [];
const merge = (...args) => args.reduce((a, c) => ({
const merge = (...args) =>
args.reduce(
(a, c) => ({
...a,
...c,
...Object.entries(a)
.filter(([k]) => c && typeof c[k] === 'object')
.reduce((a, [k, v]) => (a[k] = merge(v, c[k]), a), {})
}), {});
.filter(([k]) => c && typeof c[k] === "object")
.reduce((a, [k, v]) => ((a[k] = merge(v, c[k])), a), {}),
}),
{},
);
fs.readdirSync(__dirname).forEach((file) => {
if (file.includes('.yml')){
file = file.slice(0, file.indexOf('.'))
if (file.includes(".yml")) {
file = file.slice(0, file.indexOf("."));
languages.push(file);
}
})
});
fs.readdirSync(__dirname + '/../custom/locales').forEach((file) => {
if (file.includes('.yml')){
file = file.slice(0, file.indexOf('.'))
fs.readdirSync(__dirname + "/../custom/locales").forEach((file) => {
if (file.includes(".yml")) {
file = file.slice(0, file.indexOf("."));
languages_custom.push(file);
}
})
});
const primaries = {
'en': 'US',
'ja': 'JP',
'zh': 'CN',
en: "US",
ja: "JP",
zh: "CN",
};
// 何故か文字列にバックスペース文字が混入することがあり、YAMLが壊れるので取り除く
const clean = (text) => text.replace(new RegExp(String.fromCodePoint(0x08), 'g'), '');
const clean = (text) =>
text.replace(new RegExp(String.fromCodePoint(0x08), "g"), "");
const locales = languages.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(`${__dirname}/${c}.yml`, 'utf-8'))) || {}, a), {});
const locales_custom = languages_custom.reduce((a, c) => (a[c] = yaml.load(clean(fs.readFileSync(`${__dirname}/../custom/locales/${c}.yml`, 'utf-8'))) || {}, a), {});
Object.assign(locales, locales_custom)
const locales = languages.reduce(
(a, c) => (
(a[c] =
yaml.load(clean(fs.readFileSync(`${__dirname}/${c}.yml`, "utf-8"))) ||
{}),
a
),
{},
);
const locales_custom = languages_custom.reduce(
(a, c) => (
(a[c] =
yaml.load(
clean(
fs.readFileSync(`${__dirname}/../custom/locales/${c}.yml`, "utf-8"),
),
) || {}),
a
),
{},
);
Object.assign(locales, locales_custom);
module.exports = Object.entries(locales)
.reduce((a, [k ,v]) => (a[k] = (() => {
const [lang] = k.split('-');
module.exports = Object.entries(locales).reduce(
(a, [k, v]) => (
(a[k] = (() => {
const [lang] = k.split("-");
switch (k) {
case 'ja-JP': return v;
case 'ja-KS':
case 'en-US': return merge(locales['ja-JP'], v);
default: return merge(
locales['ja-JP'],
locales['en-US'],
case "ja-JP":
return v;
case "ja-KS":
case "en-US":
return merge(locales["ja-JP"], v);
default:
return merge(
locales["ja-JP"],
locales["en-US"],
locales[`${lang}-${primaries[lang]}`] || {},
v
v,
);
}
})(), a), {});
})()),
a
),
{},
);

View File

@ -1,7 +1,10 @@
---
_lang_: "Italiano"
headlineMisskey: "Rete collegata tramite note"
introMisskey: "Benvenut@! Misskey è un servizio di microblogging decentralizzato, libero e aperto. \nScrivi \"note\" per condividere ciò che sta succedendo adesso o per dire a tutti qualcosa di te. 📡\nGrazie alla funzione \"reazioni\" puoi anche mandare reazioni rapide alle note delle altre persone del Fediverso. 👍\nEsplora un nuovo mondo! 🚀"
introMisskey: "Benvenut@! Calckey è un servizio di microblogging decentralizzato,
libero e aperto. \nScrivi \"note\" per condividere ciò che sta succedendo adesso
o per dire a tutti qualcosa di te. 📡\nGrazie alla funzione \"reazioni\" puoi anche
mandare reazioni rapide alle note delle altre persone del Fediverso. 👍\nEsplora
un nuovo mondo! 🚀"
monthAndDay: "{day}/{month}"
search: "Cerca"
notifications: "Notifiche"
@ -10,7 +13,7 @@ password: "Password"
forgotPassword: "Hai dimenticato la tua password?"
fetchingAsApObject: "Recuperando dal Fediverso"
ok: "OK"
gotIt: "Ho capito"
gotIt: "Ho capito!"
cancel: "Annulla"
enterUsername: "Inserisci un nome utente"
renotedBy: "Rinotato da {user}"
@ -30,9 +33,9 @@ logout: "Esci"
signup: "Iscriviti"
uploading: "Caricamento..."
save: "Salva"
users: "Utente"
users: "Utenti"
addUser: "Aggiungi utente"
favorite: "Preferiti"
favorite: "Aggiungi ai preferiti"
favorites: "Preferiti"
unfavorite: "Rimuovi nota dai preferiti"
favorited: "Aggiunta ai tuoi preferiti."
@ -44,7 +47,8 @@ copyContent: "Copia il contenuto"
copyLink: "Copia il link"
delete: "Elimina"
deleteAndEdit: "Elimina e modifica"
deleteAndEditConfirm: "Vuoi davvero cancellare questa nota e scriverla di nuovo? Verrano eliminate anche tutte le reazioni, Rinote e risposte collegate."
deleteAndEditConfirm: "Vuoi davvero cancellare questa nota e scriverla di nuovo? Verrano
eliminate anche tutte le reazioni, Rinote e risposte collegate."
addToList: "Aggiungi alla lista"
sendMessage: "Invia messaggio"
copyUsername: "Copia nome utente"
@ -54,7 +58,7 @@ loadMore: "Mostra di più"
showMore: "Mostra di più"
showLess: "Chiudi"
youGotNewFollower: "Ha iniziato a seguirti"
receiveFollowRequest: "Hai ricevuto una richiesta di follow."
receiveFollowRequest: "Hai ricevuto una richiesta di follow"
followRequestAccepted: "Richiesta di follow accettata"
mention: "Menzioni"
mentions: "Menzioni"
@ -64,9 +68,11 @@ import: "Importa"
export: "Esporta"
files: "Allegati"
download: "Scarica"
driveFileDeleteConfirm: "Vuoi davvero eliminare il file「{name}? Anche gli allegati verranno eliminati."
driveFileDeleteConfirm: "Vuoi davvero eliminare il file「{name}? Anche gli allegati
verranno eliminati."
unfollowConfirm: "Vuoi davvero smettere di seguire {name}?"
exportRequested: "Hai richiesto un'esportazione, e potrebbe volerci tempo. Quando sarà compiuta, il file verrà aggiunto direttamente al Drive."
exportRequested: "Hai richiesto un'esportazione, e potrebbe volerci tempo. Quando
sarà compiuta, il file verrà aggiunto direttamente al Drive."
importRequested: "Hai richiesto un'importazione. Può volerci tempo. "
lists: "Liste"
noLists: "Nessuna lista"
@ -81,9 +87,11 @@ error: "Errore"
somethingHappened: "Si è verificato un problema"
retry: "Riprova"
pageLoadError: "Caricamento pagina non riuscito. "
pageLoadErrorDescription: "Questo viene normalmente causato dalla rete o dalla cache del browser. Si prega di pulire la cache, o di attendere e riprovare più tardi."
pageLoadErrorDescription: "Questo viene normalmente causato dalla rete o dalla cache
del browser. Si prega di pulire la cache, o di attendere e riprovare più tardi."
serverIsDead: "Il server non risponde. Si prega di attendere e riprovare più tardi."
youShouldUpgradeClient: "Per visualizzare la pagina è necessario aggiornare il client alla nuova versione e ricaricare."
youShouldUpgradeClient: "Per visualizzare la pagina è necessario aggiornare il client
alla nuova versione e ricaricare."
enterListName: "Nome della lista"
privacy: "Privacy"
makeFollowManuallyApprove: "Richiedi di approvare i follower manualmente"
@ -108,7 +116,8 @@ sensitive: "Contenuto sensibile"
add: "Aggiungi"
reaction: "Reazione"
reactionSetting: "Reazioni visualizzate sul pannello"
reactionSettingDescription2: "Trascina per riorganizzare, clicca per cancellare, usa il pulsante \"+\" per aggiungere."
reactionSettingDescription2: "Trascina per riorganizzare, clicca per cancellare, usa
il pulsante \"+\" per aggiungere."
rememberNoteVisibility: "Ricordare le impostazioni di visibilità delle note"
attachCancel: "Rimuovi allegato"
markAsSensitive: "Segna come sensibile"
@ -137,12 +146,19 @@ emojiUrl: "URL dell'emoji"
addEmoji: "Aggiungi un emoji"
settingGuide: "Configurazione suggerita"
cacheRemoteFiles: "Memorizzazione nella cache dei file remoti"
cacheRemoteFilesDescription: "Disabilitando questa opzione, i file remoti verranno linkati direttamente senza essere memorizzati nella cache. Sarà possibile risparmiare spazio di archiviazione sul server, ma il traffico aumenterà in quanto non verranno generate anteprime."
cacheRemoteFilesDescription: "Disabilitando questa opzione, i file remoti verranno
linkati direttamente senza essere memorizzati nella cache. Sarà possibile risparmiare
spazio di archiviazione sul server, ma il traffico aumenterà in quanto non verranno
generate anteprime."
flagAsBot: "Io sono un robot"
flagAsBotDescription: "Se l'account esegue principalmente operazioni automatiche, attiva quest'opzione. Quando attivata, opera come un segnalatore per gli altri sviluppatori allo scopo di prevenire catene dinterazione senza fine con altri bot, e di adeguare i sistemi interni di Misskey perché trattino questo account come un bot."
flagAsBotDescription: "Se l'account esegue principalmente operazioni automatiche,
attiva quest'opzione. Quando attivata, opera come un segnalatore per gli altri sviluppatori
allo scopo di prevenire catene dinterazione senza fine con altri bot, e di adeguare
i sistemi interni di Calckey perché trattino questo account come un bot."
flagAsCat: "Io sono un gatto"
flagAsCatDescription: "Abilita l'opzione \"Io sono un gatto\" per l'account."
autoAcceptFollowed: "Accetta automaticamente le richieste di follow da utenti che già segui"
autoAcceptFollowed: "Accetta automaticamente le richieste di follow da utenti che
già segui"
addAccount: "Aggiungi account"
loginFailed: "Accesso non riuscito"
showOnRemote: "Sfoglia sull'istanza remota"
@ -154,7 +170,10 @@ searchWith: "Cerca: {q}"
youHaveNoLists: "Non hai ancora creato nessuna lista"
followConfirm: "Sei sicur@ di voler seguire {name}?"
proxyAccount: "Account proxy"
proxyAccountDescription: "Un account proxy è un account che funziona da follower remoto per gli utenti sotto certe condizioni. Ad esempio, quando un utente aggiunge un utente remoto alla lista, dato che se nessun utente locale segue quell'utente le sue attività non verranno distribuite, al suo posto lo seguirà un account proxy."
proxyAccountDescription: "Un account proxy è un account che funziona da follower remoto
per gli utenti sotto certe condizioni. Ad esempio, quando un utente aggiunge un
utente remoto alla lista, dato che se nessun utente locale segue quell'utente le
sue attività non verranno distribuite, al suo posto lo seguirà un account proxy."
host: "Server remoto"
selectUser: "Seleziona utente"
recipient: "Destinatario"
@ -175,7 +194,6 @@ operations: "Operazioni"
software: "Software"
version: "Versione"
metadata: "Metadato"
withNFiles: "{n} file in allegato"
monitor: "Monitorare"
jobQueue: "Coda di lavoro"
cpuAndMemory: "CPU e Memoria"
@ -185,11 +203,13 @@ instanceInfo: "Informazioni sull'istanza"
statistics: "Statistiche"
clearQueue: "Svuota coda"
clearQueueConfirmTitle: "Vuoi davvero svuotare la coda?"
clearQueueConfirmText: "Le note ancora non distribuite non verranno rilasciate. Solitamente, non è necessario eseguire questa operazione."
clearQueueConfirmText: "Le note ancora non distribuite non verranno rilasciate. Solitamente,
non è necessario eseguire questa operazione."
clearCachedFiles: "Svuota cache"
clearCachedFilesConfirm: "Vuoi davvero svuotare la cache da tutti i file remoti?"
blockedInstances: "Istanze bloccate"
blockedInstancesDescription: "Elenca le istanze che vuoi bloccare, una per riga. Esse non potranno più interagire con la tua istanza."
blockedInstancesDescription: "Elenca le istanze che vuoi bloccare, una per riga. Esse
non potranno più interagire con la tua istanza."
muteAndBlock: "Silenziati / Bloccati"
mutedUsers: "Account silenziati"
blockedUsers: "Account bloccati"
@ -197,7 +217,7 @@ noUsers: "Nessun utente trovato"
editProfile: "Modifica profilo"
noteDeleteConfirm: "Eliminare questo Nota?"
pinLimitExceeded: "Non puoi fissare altre note "
intro: "L'installazione di Misskey è finita! Si prega di creare un account amministratore."
intro: "L'installazione di Calckey è finita! Si prega di creare un account amministratore."
done: "Fine"
processing: "In elaborazione"
preview: "Anteprima"
@ -251,7 +271,8 @@ agreeTo: "Sono d'accordo con {0}"
tos: "Termini di servizio"
start: "Inizia!"
home: "Home"
remoteUserCaution: "Può darsi che le informazioni siano incomplete perché questo è un utente remoto."
remoteUserCaution: "Può darsi che le informazioni siano incomplete perché questo è
un utente remoto."
activity: "Attività"
images: "Immagini"
birthday: "Compleanno"
@ -284,7 +305,8 @@ unableToDelete: "Eliminazione impossibile"
inputNewFileName: "Inserisci nome del nuovo file"
inputNewDescription: "Inserisci una nuova descrizione"
inputNewFolderName: "Inserisci nome della nuova cartella"
circularReferenceFolder: "La cartella di destinazione è una sottocartella della cartella che vuoi spostare."
circularReferenceFolder: "La cartella di destinazione è una sottocartella della cartella
che vuoi spostare."
hasChildFilesOrFolders: "Impossibile eliminare la cartella perché non è vuota"
copyUrl: "Copia URL"
rename: "Modifica nome"
@ -318,7 +340,8 @@ connectService: "Connessione"
disconnectService: "Disconnessione "
enableLocalTimeline: "Abilita Timeline locale"
enableGlobalTimeline: "Abilita Timeline federata"
disablingTimelinesInfo: "Anche se disabiliti queste timeline, gli amministratori e i moderatori potranno sempre accederci."
disablingTimelinesInfo: "Anche se disabiliti queste timeline, gli amministratori e
i moderatori potranno sempre accederci."
registration: "Iscriviti"
enableRegistration: "Permettere nuove registrazioni"
invite: "Invita"
@ -330,9 +353,11 @@ bannerUrl: "URL dell'immagine d'intestazione"
backgroundImageUrl: "URL dello sfondo"
basicInfo: "Informazioni fondamentali"
pinnedUsers: "Utenti in evidenza"
pinnedUsersDescription: "Elenca gli/le utenti che vuoi fissare in cima alla pagina \"Esplora\", un@ per riga."
pinnedUsersDescription: "Elenca gli/le utenti che vuoi fissare in cima alla pagina
\"Esplora\", un@ per riga."
pinnedPages: "Pagine in evidenza"
pinnedPagesDescription: "Specifica il percorso delle pagine che vuoi fissare in cima alla pagina dell'istanza. Una pagina per riga."
pinnedPagesDescription: "Specifica il percorso delle pagine che vuoi fissare in cima
alla pagina dell'istanza. Una pagina per riga."
pinnedClipId: "ID della clip in evidenza"
pinnedNotes: "Nota fissata"
hcaptcha: "hCaptcha"
@ -343,14 +368,17 @@ recaptcha: "reCAPTCHA"
enableRecaptcha: "Abilita reCAPTCHA"
recaptchaSiteKey: "Chiave del sito"
recaptchaSecretKey: "Chiave segreta"
avoidMultiCaptchaConfirm: "Utilizzare diversi Captcha può causare interferenze. Vuoi disattivare l'altro Captcha? Puoi lasciare diversi Captcha attivi premendo \"Cancella\"."
avoidMultiCaptchaConfirm: "Utilizzare diversi Captcha può causare interferenze. Vuoi
disattivare l'altro Captcha? Puoi lasciare diversi Captcha attivi premendo \"Cancella\"\
."
antennas: "Antenne"
manageAntennas: "Gestore delle antenne"
name: "Nome"
antennaSource: "Fonte dell'antenna"
antennaKeywords: "Parole chiavi da ricevere"
antennaExcludeKeywords: "Parole chiavi da escludere"
antennaKeywordsDescription: "Separare con uno spazio indica la condizione \"E\". Separare con un'interruzzione riga indica la condizione \"O\"."
antennaKeywordsDescription: "Separare con uno spazio indica la condizione \"E\". Separare
con un'interruzzione riga indica la condizione \"O\"."
notifyAntenna: "Invia notifiche delle nuove note"
withFileAntenna: "Solo note con file in allegato"
enableServiceworker: "Abilita ServiceWorker"
@ -373,7 +401,7 @@ exploreFediverse: "Esplora il Fediverso"
popularTags: "Tag di tendenza"
userList: "Liste"
about: "Informazioni"
aboutMisskey: "Informazioni di Misskey"
aboutMisskey: "Informazioni di Calckey"
administrator: "Amministratore"
token: "Token"
twoStepAuthentication: "Autenticazione a due fattori"
@ -478,19 +506,26 @@ showFeaturedNotesInTimeline: "Mostrare le note di tendenza nella tua timeline"
objectStorage: "Stoccaggio oggetti"
useObjectStorage: "Utilizza stoccaggio oggetti"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "URL di riferimento. In caso di utilizzo di proxy o CDN l'URL è 'https://<bucket>.s3.amazonaws.com' per S3, 'https://storage.googleapis.com/<bucket>' per GCS eccetera. "
objectStorageBaseUrlDesc: "URL di riferimento. In caso di utilizzo di proxy o CDN
l'URL è 'https://<bucket>.s3.amazonaws.com' per S3, 'https://storage.googleapis.com/<bucket>'
per GCS eccetera. "
objectStorageBucket: "Bucket"
objectStorageBucketDesc: "Specificare il nome del bucket utilizzato dal provider."
objectStoragePrefix: "Prefix"
objectStoragePrefixDesc: "I file saranno conservati sotto la directory di questo prefisso."
objectStorageEndpoint: "Endpoint"
objectStorageEndpointDesc: "Lasciare vuoto se si sta utilizzando S3. In caso contrario si prega di specificare l'endpoint come '<host>' oppure '<host>:<port>' a seconda del servizio utilizzato."
objectStorageEndpointDesc: "Lasciare vuoto se si sta utilizzando S3. In caso contrario
si prega di specificare l'endpoint come '<host>' oppure '<host>:<port>' a seconda
del servizio utilizzato."
objectStorageRegion: "Region"
objectStorageRegionDesc: "Specificate una regione, quale 'xx-east-1'. Se il servizio in utilizzo non distingue tra regioni, lasciate vuoto o inserite 'us-east-1'."
objectStorageRegionDesc: "Specificate una regione, quale 'xx-east-1'. Se il servizio
in utilizzo non distingue tra regioni, lasciate vuoto o inserite 'us-east-1'."
objectStorageUseSSL: "Usare SSL"
objectStorageUseSSLDesc: "Disabilita quest'opzione se non utilizzi HTTPS per le connessioni API."
objectStorageUseSSLDesc: "Disabilita quest'opzione se non utilizzi HTTPS per le connessioni
API."
objectStorageUseProxy: "Usa proxy"
objectStorageUseProxyDesc: "Disabilita quest'opzione se non usi proxy per la connessione API."
objectStorageUseProxyDesc: "Disabilita quest'opzione se non usi proxy per la connessione
API."
objectStorageSetPublicRead: "Imposta \"visibilità pubblica\" al momento di caricare"
serverLogs: "Log del server"
deleteAll: "Cancella cronologia"
@ -518,7 +553,9 @@ sort: "Ordina per"
ascendingOrder: "Ascendente"
descendingOrder: "Discendente"
scratchpad: "ScratchPad"
scratchpadDescription: "Lo Scratchpad offre un ambiente per esperimenti di AiScript. È possibile scrivere, eseguire e confermare i risultati dell'interazione del codice con Misskey."
scratchpadDescription: "Lo Scratchpad offre un ambiente per esperimenti di AiScript.
È possibile scrivere, eseguire e confermare i risultati dell'interazione del codice
con Calckey."
output: "Uscita"
script: "Script"
disablePagesScript: "Disabilita AiScript nelle pagine"
@ -526,11 +563,14 @@ updateRemoteUser: "Aggiornare le informazioni di utente remot@"
deleteAllFiles: "Elimina tutti i file"
deleteAllFilesConfirm: "Vuoi davvero eliminare tutti i file?"
removeAllFollowing: "Cancella tutti i follows"
removeAllFollowingDescription: "Cancella tutti i follows del server {host}. Per favore, esegui se, ad esempio, l'istanza non esiste più."
removeAllFollowingDescription: "Cancella tutti i follows del server {host}. Per favore,
esegui se, ad esempio, l'istanza non esiste più."
userSuspended: "L'utente è sospes@."
userSilenced: "L'utente è silenziat@."
yourAccountSuspendedTitle: "Questo account è sospeso."
yourAccountSuspendedDescription: "Questo account è stato sospeso a causa di una violazione dei termini di servizio del server. Contattare l'amministrazione per i dettagli. Si prega di non creare un nuovo account."
yourAccountSuspendedDescription: "Questo account è stato sospeso a causa di una violazione
dei termini di servizio del server. Contattare l'amministrazione per i dettagli.
Si prega di non creare un nuovo account."
menu: "Menù"
divider: "Linea di separazione"
addItem: "Aggiungi elemento"
@ -570,12 +610,14 @@ permission: "Autorizzazioni "
enableAll: "Abilita tutto"
disableAll: "Disabilita tutto"
tokenRequested: "Autorizza accesso all'account"
pluginTokenRequestedDescription: "Il plugin potrà utilizzare le autorizzazioni impostate qui."
pluginTokenRequestedDescription: "Il plugin potrà utilizzare le autorizzazioni impostate
qui."
notificationType: "Tipo di notifiche"
edit: "Modifica"
emailServer: "Server email"
enableEmail: "Abilita consegna email"
emailConfigInfo: "Utilizzato per verificare il tuo indirizzo di posta elettronica e per reimpostare la tua password"
emailConfigInfo: "Utilizzato per verificare il tuo indirizzo di posta elettronica
e per reimpostare la tua password"
email: "Email"
emailAddress: "Indirizzo di posta elettronica"
smtpConfig: "Impostazioni del server SMTP"
@ -583,7 +625,8 @@ smtpHost: "Server remoto"
smtpPort: "Porta"
smtpUser: "Nome utente"
smtpPass: "Password"
emptyToDisableSmtpAuth: "Lasciare il nome utente e la password vuoti per disabilitare la verifica SMTP"
emptyToDisableSmtpAuth: "Lasciare il nome utente e la password vuoti per disabilitare
la verifica SMTP"
smtpSecure: "Usare la porta SSL/TLS implicito per le connessioni SMTP"
smtpSecureInfo: "Disabilitare quando è attivo STARTTLS."
testEmail: "Testare la consegna di posta elettronica"
@ -603,10 +646,13 @@ create: "Crea"
notificationSetting: "Impostazioni notifiche"
notificationSettingDesc: "Seleziona il tipo di notifiche da visualizzare."
useGlobalSetting: "Usa impostazioni generali"
useGlobalSettingDesc: "Se abilitato, le impostazioni notifiche dell'account verranno utilizzate. Se disabilitato, si possono definire diverse singole impostazioni."
useGlobalSettingDesc: "Se abilitato, le impostazioni notifiche dell'account verranno
utilizzate. Se disabilitato, si possono definire diverse singole impostazioni."
other: "Avanzate"
regenerateLoginToken: "Genera di nuovo un token di connessione"
regenerateLoginTokenDescription: "Genera un nuovo token di autenticazione. Solitamente questa operazione non è necessaria: quando si genera un nuovo token, tutti i dispositivi vanno disconnessi."
regenerateLoginTokenDescription: "Genera un nuovo token di autenticazione. Solitamente
questa operazione non è necessaria: quando si genera un nuovo token, tutti i dispositivi
vanno disconnessi."
setMultipleBySeparatingWithSpace: "È possibile creare multiple voci separate da spazi."
fileIdOrUrl: "ID o URL del file"
behavior: "Comportamento"
@ -614,7 +660,8 @@ sample: "Esempio"
abuseReports: "Segnalazioni"
reportAbuse: "Segnalazioni"
reportAbuseOf: "Segnala {name}"
fillAbuseReportDescription: "Si prega di spiegare il motivo della segnalazione. Se riguarda una nota precisa, si prega di collegare anche l'URL della nota."
fillAbuseReportDescription: "Si prega di spiegare il motivo della segnalazione. Se
riguarda una nota precisa, si prega di collegare anche l'URL della nota."
abuseReported: "La segnalazione è stata inviata. Grazie."
reporter: "il corrispondente"
reporteeOrigin: "Origine del segnalato"
@ -624,7 +671,8 @@ abuseMarkAsResolved: "Contrassegna la segnalazione come risolta"
openInNewTab: "Apri in una nuova scheda"
openInSideView: "Apri in vista laterale"
defaultNavigationBehaviour: "Navigazione preimpostata"
editTheseSettingsMayBreakAccount: "Modificare queste impostazioni può danneggiare l'account."
editTheseSettingsMayBreakAccount: "Modificare queste impostazioni può danneggiare
l'account."
instanceTicker: "Informazioni sull'istanza da cui vengono le note"
waitingFor: "Aspettando {x}"
random: "Casuale"
@ -636,7 +684,8 @@ createNew: "Crea nuov@"
optional: "Opzionale"
createNewClip: "Nuova clip"
public: "Pubblica"
i18nInfo: "Calckey è tradotto in diverse lingue da volontari. Anche tu puoi contribuire su {link}."
i18nInfo: "Calckey è tradotto in diverse lingue da volontari. Anche tu puoi contribuire
su {link}."
manageAccessTokens: "Gestisci token di accesso"
accountInfo: "Informazioni account"
notesCount: "Conteggio note"
@ -655,12 +704,16 @@ no: "No"
driveFilesCount: "Numero di file nel Drive"
driveUsage: "Utilizzazione del Drive"
noCrawle: "Rifiuta l'indicizzazione dai robot."
noCrawleDescription: "Richiedi che i motori di ricerca non indicizzino la tua pagina di profilo, le tue note, pagine, ecc."
lockedAccountInfo: "A meno che non imposti la visibilità delle tue note su \"Solo ai follower\", le tue note sono visibili da tutti, anche se hai configurato l'account per confermare manualmente le richieste di follow."
noCrawleDescription: "Richiedi che i motori di ricerca non indicizzino la tua pagina
di profilo, le tue note, pagine, ecc."
lockedAccountInfo: "A meno che non imposti la visibilità delle tue note su \"Solo
ai follower\", le tue note sono visibili da tutti, anche se hai configurato l'account
per confermare manualmente le richieste di follow."
alwaysMarkSensitive: "Segnare i media come sensibili per impostazione predefinita"
loadRawImages: "Visualizza le intere immagini allegate invece delle miniature."
disableShowingAnimatedImages: "Disabilita le immagini animate"
verificationEmailSent: "Una mail di verifica è stata inviata. Si prega di accedere al collegamento per compiere la verifica."
verificationEmailSent: "Una mail di verifica è stata inviata. Si prega di accedere
al collegamento per compiere la verifica."
notSet: "Non impostato"
emailVerified: "Il tuo indirizzo email è stato verificato"
noteFavoritesCount: "Conteggio note tra i preferiti"
@ -672,13 +725,15 @@ clips: "Clip"
experimentalFeatures: "Funzioni sperimentali"
developer: "Sviluppatore"
makeExplorable: "Account visibile sulla pagina \"Esplora\""
makeExplorableDescription: "Se disabiliti l'opzione, il tuo account non verrà visualizzato sulla pagina \"Esplora\"."
makeExplorableDescription: "Se disabiliti l'opzione, il tuo account non verrà visualizzato
sulla pagina \"Esplora\"."
showGapBetweenNotesInTimeline: "Mostrare un intervallo tra le note sulla timeline"
duplicate: "Duplica"
left: "Sinistra"
center: "Centro"
wide: "Largo"
reloadToApplySetting: "Le tue preferenze verranno impostate dopo il ricaricamento della pagina. Vuoi ricaricare adesso?"
reloadToApplySetting: "Le tue preferenze verranno impostate dopo il ricaricamento
della pagina. Vuoi ricaricare adesso?"
needReloadToApply: "È necessario riavviare per rendere effettive le modifiche."
showTitlebar: "Visualizza la barra del titolo"
clearCache: "Svuota cache"
@ -686,7 +741,10 @@ onlineUsersCount: "{n} utenti online"
nUsers: "{n} utenti"
nNotes: "{n}Note"
sendErrorReports: "Invia segnalazioni di errori"
sendErrorReportsDescription: "Quando abilitato, se si verifica un problema, informazioni dettagliate sugli errori verranno condivise con Misskey in modo da aiutare a migliorare la qualità del software.\nCiò include informazioni come la versione del sistema operativo, il tipo di navigatore web che usi, la cronologia delle attività, ecc."
sendErrorReportsDescription: "Quando abilitato, se si verifica un problema, informazioni
dettagliate sugli errori verranno condivise con Calckey in modo da aiutare a migliorare
la qualità del software.\nCiò include informazioni come la versione del sistema
operativo, il tipo di navigatore web che usi, la cronologia delle attività, ecc."
myTheme: "I miei temi"
backgroundColor: "Sfondo"
textColor: "Testo"
@ -712,7 +770,8 @@ receiveAnnouncementFromInstance: "Ricevi i messaggi informativi dall'istanza"
emailNotification: "Eventi per notifiche via mail"
publish: "Pubblico"
inChannelSearch: "Cerca in canale"
useReactionPickerForContextMenu: "Cliccare sul tasto destro per aprire il pannello di reazioni"
useReactionPickerForContextMenu: "Cliccare sul tasto destro per aprire il pannello
di reazioni"
typingUsers: "{users} sta(nno) scrivendo"
jumpToSpecifiedDate: "Vai alla data "
showingPastTimeline: "Stai visualizzando una vecchia timeline"
@ -723,14 +782,17 @@ unlikeConfirm: "Non ti piace più?"
fullView: "Schermo intero"
quitFullView: "Esci dalla modalità a schermo intero"
addDescription: "Aggiungi descrizione"
userPagePinTip: "Qui puoi appuntare note, premendo \"Fissa sul profilo\" nel menù delle singole note."
notSpecifiedMentionWarning: "Sono menzionati account che non vengono inclusi fra i destinatari"
userPagePinTip: "Qui puoi appuntare note, premendo \"Fissa sul profilo\" nel menù
delle singole note."
notSpecifiedMentionWarning: "Sono menzionati account che non vengono inclusi fra i
destinatari"
info: "Informazioni"
userInfo: "Informazioni utente"
unknown: "Sconosciuto"
onlineStatus: "Stato di connessione"
hideOnlineStatus: "Stato invisibile"
hideOnlineStatusDescription: "Abilitare l'opzione di stato invisibile può guastare la praticità di singole funzioni, come la ricerca."
hideOnlineStatusDescription: "Abilitare l'opzione di stato invisibile può guastare
la praticità di singole funzioni, come la ricerca."
online: "Online"
active: "Attiv@"
offline: "Offline"
@ -773,12 +835,14 @@ hashtags: "Hashtag"
troubleshooting: "Risoluzione problemi"
useBlurEffect: "Utilizza effetto sfocatura per l'interfaccia utente"
learnMore: "Più dettagli"
misskeyUpdated: "Misskey è stato aggiornato!"
misskeyUpdated: "Calckey è stato aggiornato!"
whatIsNew: "Visualizza le informazioni sull'aggiornamento"
translate: "Traduzione"
translatedFrom: "Tradotto da {x}"
accountDeletionInProgress: "La cancellazione dell'account è in corso"
usernameInfo: "Un nome per identificare univocamente il tuo account sul server. È possibile utilizzare caratteri alfanumerici (a~z, A~Z, 0~9) e il trattino basso (_). Non sarà possibile cambiare il nome utente in seguito."
usernameInfo: "Un nome per identificare univocamente il tuo account sul server. È
possibile utilizzare caratteri alfanumerici (a~z, A~Z, 0~9) e il trattino basso
(_). Non sarà possibile cambiare il nome utente in seguito."
aiChanMode: "Modalità Ai"
keepCw: "Mantieni il CW"
resolved: "Risolto"
@ -802,7 +866,8 @@ leaveGroup: "Esci dal gruppo"
leaveGroupConfirm: "Uscire da「{name}」?"
useDrawerReactionPickerForMobile: "Mostra sul drawer da dispositivo mobile"
welcomeBackWithName: "Bentornato/a, {name}"
clickToFinishEmailVerification: "Fai click su [{ok}] per completare la verifica dell'indirizzo email."
clickToFinishEmailVerification: "Fai click su [{ok}] per completare la verifica dell'indirizzo
email."
searchByGoogle: "Cerca"
indefinitely: "Non scade"
tenMinutes: "10 minuti"
@ -830,7 +895,8 @@ _signup:
emailAddressInfo: "Inserisci il tuo indirizzo email. Non verrà reso pubblico."
_accountDelete:
accountDelete: "Cancellazione account"
sendEmail: "Al termine della cancellazione dell'account, verrà inviata una mail all'indirizzo a cui era registrato."
sendEmail: "Al termine della cancellazione dell'account, verrà inviata una mail
all'indirizzo a cui era registrato."
requestAccountDelete: "Richiesta di cancellazione account"
started: "Il processo di cancellazione è iniziato."
inProgress: "Cancellazione in corso"
@ -838,9 +904,13 @@ _ad:
back: "Indietro"
reduceFrequencyOfThisAd: "Visualizza questa pubblicità meno spesso"
_forgotPassword:
enterEmail: "Inserisci l'indirizzo di posta elettronica che hai registrato nel tuo profilo. Il collegamento necessario per ripristinare la password verrà inviato a questo indirizzo."
ifNoEmail: "Se nessun indirizzo e-mail è stato registrato, si prega di contattare l'amministratore·trice dell'istanza."
contactAdmin: "Poiché questa istanza non permette l'utilizzo di una mail, si prega di contattare l'amministratore·trice dell'istanza per poter ripristinare la password."
enterEmail: "Inserisci l'indirizzo di posta elettronica che hai registrato nel tuo
profilo. Il collegamento necessario per ripristinare la password verrà inviato
a questo indirizzo."
ifNoEmail: "Se nessun indirizzo e-mail è stato registrato, si prega di contattare
l'amministratore·trice dell'istanza."
contactAdmin: "Poiché questa istanza non permette l'utilizzo di una mail, si prega
di contattare l'amministratore·trice dell'istanza per poter ripristinare la password."
_gallery:
my: "Le mie pubblicazioni"
liked: "Pubblicazioni che mi piacciono"
@ -853,7 +923,8 @@ _email:
title: "Hai ricevuto una richiesta di follow"
_plugin:
install: "Installa estensioni"
installWarn: "Si prega di installare soltanto estensioni che provengono da fonti affidabili."
installWarn: "Si prega di installare soltanto estensioni che provengono da fonti
affidabili."
manage: "Gestisci estensioni"
_registry:
key: "Dati"
@ -865,9 +936,10 @@ _aboutMisskey:
contributors: "Principali sostenitori"
allContributors: "Tutti i sostenitori"
source: "Codice sorgente"
translation: "Tradurre Misskey"
donate: "Sostieni Misskey"
morePatrons: "Apprezziamo sinceramente il supporto di tante altre persone. Grazie mille! 🥰"
translation: "Tradurre Calckey"
donate: "Sostieni Calckey"
morePatrons: "Apprezziamo sinceramente il supporto di tante altre persone. Grazie
mille! 🥰"
patrons: "Sostenitori"
_nsfw:
respect: "Nascondere i media segnati come sensibli"
@ -875,10 +947,12 @@ _nsfw:
force: "Nascondere tutti i media"
_mfm:
cheatSheet: "Bigliettino MFM"
intro: "MFM è un linguaggio Markdown particolare che si può usare in diverse parti di Misskey. Qui puoi visualizzare a colpo d'occhio tutta la sintassi MFM utile."
dummy: "Il Fediverso si espande con Misskey"
intro: "MFM è un linguaggio Markdown particolare che si può usare in diverse parti
di Calckey. Qui puoi visualizzare a colpo d'occhio tutta la sintassi MFM utile."
dummy: "Il Fediverso si espande con Calckey"
mention: "Menzioni"
mentionDescription: "Si può menzionare un utente specifico digitando il suo nome utente subito dopo il segno @."
mentionDescription: "Si può menzionare un utente specifico digitando il suo nome
utente subito dopo il segno @."
hashtag: "Hashtag"
url: "URL"
link: "Link"
@ -905,11 +979,14 @@ _mfm:
x4: "Estremamente più grande"
x4Description: "Mostra il contenuto estremamente più ingrandito."
blur: "Sfocatura"
blurDescription: "È possibile rendere sfocato il contenuto. Spostando il cursore su di esso tornerà visibile chiaramente."
blurDescription: "È possibile rendere sfocato il contenuto. Spostando il cursore
su di esso tornerà visibile chiaramente."
font: "Tipo di carattere"
fontDescription: "Puoi scegliere il tipo di carattere per il contenuto."
rainbow: "Arcobaleno"
rotate: "Ruota"
fade: "Dissolvenza"
fadeDescription: "Dissolvenza in entrata e in uscita del contenuto."
_instanceTicker:
none: "Nascondi"
remote: "Mostra solo per gli/le utenti remotə"
@ -932,10 +1009,15 @@ _menuDisplay:
hide: "Nascondere"
_wordMute:
muteWords: "Parole da filtrare"
muteWordsDescription: "Separare con uno spazio indica la condizione \"E\". Separare con un'interruzzione riga indica la condizione \"O\"."
muteWordsDescription2: "Metti le parole chiavi tra slash per usare espressioni regolari (regexp)."
softDescription: "Nascondi della timeline note che rispondono alle condizioni impostate qui."
hardDescription: "Impedisci alla timeline di caricare le note che rispondono alle condizioni impostate qui. Inoltre, le note scompariranno in modo irreversibile, anche se le condizioni verranno successivamente rimosse."
muteWordsDescription: "Separare con uno spazio indica la condizione \"E\". Separare
con un'interruzzione riga indica la condizione \"O\"."
muteWordsDescription2: "Metti le parole chiavi tra slash per usare espressioni regolari
(regexp)."
softDescription: "Nascondi della timeline note che rispondono alle condizioni impostate
qui."
hardDescription: "Impedisci alla timeline di caricare le note che rispondono alle
condizioni impostate qui. Inoltre, le note scompariranno in modo irreversibile,
anche se le condizioni verranno successivamente rimosse."
soft: "Moderato"
hard: "Severo"
mutedNotes: "Note silenziate"
@ -1029,24 +1111,35 @@ _tutorial:
step1_1: "Benvenuto!"
step1_2: "Vediamo di configurarla. Sarete operativi in men che non si dica!"
step2_1: "Per prima cosa, compila il tuo profilo"
step2_2: "Fornendo alcune informazioni su chi siete, sarà più facile per gli altri capire se vogliono vedere le vostre note o seguirvi"
step2_2: "Fornendo alcune informazioni su chi siete, sarà più facile per gli altri
capire se vogliono vedere le vostre note o seguirvi"
step3_1: "Ora è il momento di seguire alcune persone!"
step3_2: "La vostra home e le vostre timeline social si basano su chi seguite, quindi provate a seguire un paio di account per iniziare.\nCliccate sul cerchio più in alto a destra di un profilo per seguirlo"
step3_2: "La vostra home e le vostre timeline social si basano su chi seguite, quindi
provate a seguire un paio di account per iniziare.\nCliccate sul cerchio più in
alto a destra di un profilo per seguirlo"
step4_1: "Fatevi conoscere"
step4_2: "Per il vostro primo post, alcuni preferiscono fare un post di {introduction} o un semplice \"Ciao mondo!\""
step4_2: "Per il vostro primo post, alcuni preferiscono fare un post di {introduction}
o un semplice \"Ciao mondo!\""
step5_1: "Linee temporali, linee temporali dappertutto!"
step5_2: "La tua istanza ha attivato {timelines} diverse timelines"
step5_3: "La timeline Home {icon} è quella in cui si possono vedere i post dei propri follower"
step5_4: "La timeline Locale {icon} è quella in cui si possono vedere i post di tutti gli altri utenti di questa istanza"
step5_5: "La timeline Raccomandati {icon} è quella in cui si possono vedere i post delle istanze raccomandate dagli amministratori"
step5_6: "La timeline Social {icon} è quella in cui si possono vedere i post degli amici dei propri follower"
step5_7: "La timeline Globale {icon} è quella in cui si possono vedere i post di ogni altra istanza collegata"
step5_3: "La timeline Home {icon} è quella in cui si possono vedere i post dei propri
follower"
step5_4: "La timeline Locale {icon} è quella in cui si possono vedere i post di
tutti gli altri utenti di questa istanza"
step5_5: "La timeline Raccomandati {icon} è quella in cui si possono vedere i post
delle istanze raccomandate dagli amministratori"
step5_6: "La timeline Social {icon} è quella in cui si possono vedere i post degli
amici dei propri follower"
step5_7: "La timeline Globale {icon} è quella in cui si possono vedere i post di
ogni altra istanza collegata"
step6_1: "Allora, cos'è questo posto?"
step6_2: "Beh, non ti sei semplicemente unito a Calckey. Sei entrato in un portale del Fediverse, una rete interconnessa di migliaia di server, chiamata \"istanze\""
step6_3: "Ogni server funziona in modo diverso, e non tutti i server eseguono Calckey. Questo però lo fa! È un po' complicato, ma ci riuscirete in poco tempo"
step6_2: "Beh, non ti sei semplicemente unito a Calckey. Sei entrato in un portale
del Fediverse, una rete interconnessa di migliaia di server, chiamata \"istanze\""
step6_3: "Ogni server funziona in modo diverso, e non tutti i server eseguono Calckey.
Questo però lo fa! È un po' complicato, ma ci riuscirete in poco tempo"
step6_4: "Ora andate, esplorate e divertitevi!"
_2fa:
registerDevice: "Aggiungi dispositivo"
registerTOTP: "Aggiungi dispositivo"
_permissions:
"read:account": "Visualizzare le informazioni dell'account"
"write:account": "Modificare le informazioni dell'account"
@ -1172,7 +1265,8 @@ _profile:
youCanIncludeHashtags: "Puoi anche includere hashtag."
metadata: "Informazioni aggiuntive"
metadataEdit: "Modifica informazioni aggiuntive"
metadataDescription: "Puoi pubblicare fino a quattro informazioni aggiuntive sul profilo."
metadataDescription: "Puoi pubblicare fino a quattro informazioni aggiuntive sul
profilo."
metadataLabel: "Etichetta"
metadataContent: "Contenuto"
changeAvatar: "Modifica immagine profilo"
@ -1464,3 +1558,6 @@ _deck:
list: "Liste"
mentions: "Menzioni"
direct: "Diretta"
noThankYou: No grazie
addInstance: Aggiungi un'istanza
deleted: Eliminato

View File

@ -1,7 +1,7 @@
---
_lang_: "日本語"
headlineMisskey: "ずっと無料でオープンソースの非中央集権型ソーシャルメディアプラットフォーム🚀"
introMisskey: "ようこそCalckeyは、オープンソースの非中央集権型ソーシャルメディアプラットフォームです。\nいま起こっていることを共有したり、あなたについて皆に発信しましょう📡\n「リアクション」機能で、皆の投稿に素早く反応を追加できます👍\n新しい世界を探検しよう🚀"
introMisskey: "ようこそCalckeyは、オープンソースの非中央集権型ソーシャルメディアプラットフォームです。\nいま起こっていることを共有したり、あなたについて皆に発信しましょう📡\n\
「リアクション」機能で、皆の投稿に素早く反応を追加できます👍\n新しい世界を探検しよう🚀"
monthAndDay: "{month}月 {day}日"
search: "検索"
notifications: "通知"
@ -17,7 +17,7 @@ enterUsername: "ユーザー名を入力"
renotedBy: "{user}がブースト"
noNotes: "投稿はありません"
noNotifications: "通知はありません"
instance: "インスタンス"
instance: "サーバー"
settings: "設定"
basicSettings: "基本設定"
otherSettings: "その他の設定"
@ -33,7 +33,7 @@ uploading: "アップロード中"
save: "保存"
users: "ユーザー"
addUser: "ユーザーを追加"
addInstance: "インスタンスを追加"
addInstance: "サーバーを追加"
favorite: "お気に入り"
favorites: "お気に入り"
unfavorite: "お気に入り解除"
@ -52,7 +52,7 @@ sendMessage: "メッセージを送信"
copyUsername: "ユーザー名をコピー"
searchUser: "ユーザーを検索"
reply: "返信"
loadMore: "もっと見る"
loadMore: "もっと読み込む"
showMore: "もっと見る"
showLess: "閉じる"
youGotNewFollower: "フォローされました"
@ -66,8 +66,8 @@ import: "インポート"
export: "エクスポート"
files: "ファイル"
download: "ダウンロード"
driveFileDeleteConfirm: "ファイル「{name}」を削除しますか?このファイルを添付した投稿も消えます。"
unfollowConfirm: "{name}のフォローを解除しますか?"
driveFileDeleteConfirm: "ファイル「{name}」を削除しますか?これにより、このファイルが添付されている投稿も削除されます。"
unfollowConfirm: "{name}さんのフォローを解除しますか?"
exportRequested: "エクスポートをリクエストしました。これには時間がかかる場合があります。エクスポートが終わると、「ドライブ」に追加されます。"
importRequested: "インポートをリクエストしました。これには時間がかかる場合があります。"
lists: "リスト"
@ -97,9 +97,6 @@ unfollow: "フォロー解除"
followRequestPending: "フォロー許可待ち"
enterEmoji: "絵文字を入力"
renote: "ブースト"
renoteAsUnlisted: "未収載でブースト"
renoteToFollowers: "フォロワー限定でブースト"
renoteToRecipients: "宛先のユーザーにブースト"
unrenote: "ブースト解除"
renoted: "ブーストしました。"
cantRenote: "この投稿はブーストできません。"
@ -112,6 +109,8 @@ clickToShow: "クリックして表示"
sensitive: "閲覧注意"
add: "追加"
reaction: "リアクション"
enableEmojiReactions: "絵文字リアクションを有効にする"
showEmojisInReactionNotifications: "自分の投稿に対するリアクションの通知で絵文字を表示する"
reactionSetting: "ピッカーに表示するリアクション"
reactionSettingDescription2: "ドラッグして並び替え、クリックして削除、+を押して追加します。"
rememberNoteVisibility: "公開範囲を記憶する"
@ -128,12 +127,13 @@ unblock: "ブロック解除"
suspend: "凍結"
unsuspend: "解凍"
blockConfirm: "ブロックしますか?"
unblockConfirm: "ブロック解除しますか?"
unblockConfirm: "ブロック解除しますか?"
suspendConfirm: "凍結しますか?"
unsuspendConfirm: "解凍しますか?"
selectList: "リストを選択"
selectAntenna: "アンテナを選択"
selectWidget: "ウィジェットを選択"
selectChannel: "チャンネルを選択"
editWidgets: "ウィジェットを編集"
editWidgetsExit: "編集を終了"
customEmojis: "カスタム絵文字"
@ -166,14 +166,14 @@ searchWith: "検索: {q}"
youHaveNoLists: "リストがありません"
followConfirm: "{name}をフォローしますか?"
proxyAccount: "プロキシアカウント"
proxyAccountDescription: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがインスタンスに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
proxyAccountDescription: "プロキシアカウントは、特定の条件下でユーザーのリモートフォローを代行するアカウントです。例えば、ユーザーがリモートユーザーをリストに入れたとき、リストに入れられたユーザーを誰もフォローしていないとアクティビティがサーバーに配達されないため、代わりにプロキシアカウントがフォローするようにします。"
host: "ホスト"
selectUser: "ユーザーを選択"
selectInstance: "インスタンスを選択"
selectInstance: "サーバーを選択"
recipient: "宛先"
annotation: "注釈"
federation: "連合"
instances: "インスタンス"
instances: "サーバー"
registeredAt: "初観測"
latestRequestSentAt: "直近のリクエスト送信"
latestRequestReceivedAt: "直近のリクエスト受信"
@ -183,31 +183,33 @@ charts: "チャート"
perHour: "1時間ごと"
perDay: "1日ごと"
stopActivityDelivery: "アクティビティの配送を停止"
blockThisInstance: "このインスタンスをブロック"
blockThisInstance: "このサーバーをブロック"
silenceThisInstance: "このサーバーをサイレンス"
operations: "操作"
software: "ソフトウェア"
version: "バージョン"
metadata: "メタデータ"
withNFiles: "{n}つのファイル"
monitor: "モニター"
jobQueue: "ジョブキュー"
cpuAndMemory: "CPUとメモリ"
network: "ネットワーク"
disk: "ディスク"
instanceInfo: "インスタンス情報"
instanceInfo: "サーバー情報"
statistics: "統計"
clearQueue: "キューをクリア"
clearQueueConfirmTitle: "キューをクリアしますか?"
clearQueueConfirmText: "未配達の投稿は配送されなくなります。通常この操作を行う必要はありません。"
clearCachedFiles: "キャッシュをクリア"
clearCachedFilesConfirm: "キャッシュされたリモートファイルをすべて削除しますか?"
blockedInstances: "ブロックしたインスタンス"
blockedInstancesDescription: "ブロックしたいインスタンスのホストを改行で区切って設定します。ブロックされたインスタンスは、このインスタンスとやり取りできなくなります。"
blockedInstances: "ブロックしたサーバー"
blockedInstancesDescription: "ブロックしたいサーバーのホストを改行で区切って設定します。ブロックされたサーバーは、このサーバーとやり取りできなくなります。"
silencedInstances: "サイレンスしたサーバー"
silencedInstancesDescription: "サイレンスしたいサーバーのホストを改行で区切って設定します。サイレンスされたサーバーに所属するアカウントはすべて「サイレンス」として扱われ、フォローがすべてリクエストになり、フォロワーでないローカルアカウントにはメンションできなくなります。ブロックしたサーバーには影響しません。"
muteAndBlock: "ミュートとブロック"
mutedUsers: "ミュートしたユーザー"
blockedUsers: "ブロックしたユーザー"
noUsers: "ユーザーはいません"
noInstances: "インスタンスはありません"
noInstances: "サーバーがありません"
editProfile: "プロフィールを編集"
noteDeleteConfirm: "この投稿を削除しますか?"
pinLimitExceeded: "これ以上ピン留めできません"
@ -221,14 +223,15 @@ noCustomEmojis: "絵文字はありません"
noJobs: "ジョブはありません"
federating: "連合中"
blocked: "ブロック中"
silenced: "サイレンス中"
suspended: "配信停止"
all: "全て"
subscribing: "購読中"
publishing: "配信中"
notResponding: "応答なし"
instanceFollowing: "インスタンスのフォロー"
instanceFollowers: "インスタンスのフォロワー"
instanceUsers: "インスタンスのユーザー"
instanceFollowing: "サーバーのフォロー"
instanceFollowers: "サーバーのフォロワー"
instanceUsers: "このサーバーの利用者"
changePassword: "パスワードを変更"
security: "セキュリティ"
retypedNotMatch: "入力が一致しません。"
@ -319,8 +322,8 @@ unwatch: "ウォッチ解除"
accept: "許可"
reject: "拒否"
normal: "正常"
instanceName: "インスタンス名"
instanceDescription: "インスタンスの紹介"
instanceName: "サーバー名"
instanceDescription: "サーバーの紹介文"
maintainerName: "管理者の名前"
maintainerEmail: "管理者のメールアドレス"
tosUrl: "利用規約URL"
@ -351,7 +354,7 @@ basicInfo: "基本情報"
pinnedUsers: "ピン留めユーザー"
pinnedUsersDescription: "「みつける」ページなどにピン留めしたいユーザーを改行で区切って記述します。"
pinnedPages: "ピン留めページ"
pinnedPagesDescription: "インスタンスのトップページにピン留めしたいページのパスを改行で区切って記述します。"
pinnedPagesDescription: "サーバーのトップページにピン留めしたいページのパスを改行で区切って記述します。"
pinnedClipId: "ピン留めするクリップのID"
pinnedNotes: "ピン留めされた投稿"
hcaptcha: "hCaptcha"
@ -374,7 +377,7 @@ notifyAntenna: "新しい投稿を通知する"
withFileAntenna: "ファイルが添付された投稿のみ"
enableServiceworker: "ブラウザへのプッシュ通知を有効にする"
antennaUsersDescription: "ユーザー名を改行で区切って指定します"
antennaInstancesDescription: "インスタンスを改行で区切って指定します"
antennaInstancesDescription: "サーバーを改行で区切って指定します"
caseSensitive: "大文字小文字を区別する"
withReplies: "返信を含む"
connectedTo: "次のアカウントに接続されています"
@ -383,7 +386,7 @@ withFiles: "ファイル付き"
silence: "サイレンス"
silenceConfirm: "サイレンスしますか?"
unsilence: "サイレンス解除"
unsilenceConfirm: "サイレンス解除しますか?"
unsilenceConfirm: "サイレンス解除しますか?"
popularUsers: "人気のユーザー"
recentlyUpdatedUsers: "最近投稿したユーザー"
recentlyRegisteredUsers: "最近登録したユーザー"
@ -499,7 +502,8 @@ showFeaturedNotesInTimeline: "タイムラインにおすすめの投稿を表
objectStorage: "オブジェクトストレージ"
useObjectStorage: "オブジェクトストレージを使用"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "参照に使用するURL。CDNやProxyを使用している場合はそのURL、S3: 'https://<bucket>.s3.amazonaws.com'、GCS等: 'https://storage.googleapis.com/<bucket>'。"
objectStorageBaseUrlDesc: "参照に使用するURL。CDNやProxyを使用している場合はそのURL、S3: 'https://<bucket>.s3.amazonaws.com'、GCS等:
'https://storage.googleapis.com/<bucket>'。"
objectStorageBucket: "Bucket"
objectStorageBucketDesc: "使用サービスのbucket名を指定してください。"
objectStoragePrefix: "Prefix"
@ -547,7 +551,7 @@ updateRemoteUser: "リモートユーザー情報の更新"
deleteAllFiles: "すべてのファイルを削除"
deleteAllFilesConfirm: "すべてのファイルを削除しますか?"
removeAllFollowing: "フォローを全解除"
removeAllFollowingDescription: "{host}からのフォローをすべて解除します。そのインスタンスがもう存在しなくなった場合などに実行してください。"
removeAllFollowingDescription: "{host}からのフォローをすべて解除します。そのサーバーがもう存在しなくなった場合などに実行してください。"
userSuspended: "このユーザーは凍結されています。"
userSilenced: "このユーザーはサイレンスされています。"
yourAccountSuspendedTitle: "アカウントが凍結されています"
@ -612,9 +616,12 @@ testEmail: "配信テスト"
wordMute: "ワードミュート"
regexpError: "正規表現エラー"
regexpErrorDescription: "{tab}ワードミュートの{line}行目の正規表現にエラーが発生しました:"
instanceMute: "インスタンスミュート"
instanceMute: "サーバーミュート"
userSaysSomething: "{name}が何かを言いました"
userSaysSomethingReason: "{name}が{reason}と言いました"
userSaysSomethingReasonReply: "{name}が{reason}を含む投稿に返信しました"
userSaysSomethingReasonRenote: "{name}が{reason}を含む投稿をブーストしました"
userSaysSomethingReasonQuote: "{name}が{reason}を含む投稿を引用しました"
makeActive: "アクティブにする"
display: "表示"
copy: "コピー"
@ -644,15 +651,15 @@ abuseReported: "内容が送信されました。ご報告ありがとうござ
reporter: "通報者"
reporteeOrigin: "通報先"
reporterOrigin: "通報元"
forwardReport: "リモートインスタンスに通報を転送する"
forwardReportIsAnonymous: "リモートインスタンスからはあなたの情報は見れず、匿名のシステムアカウントとして表示されます。"
forwardReport: "リモートサーバーに通報を転送する"
forwardReportIsAnonymous: "リモートサーバーからはあなたの情報は見られず、匿名のシステムアカウントとして表示されます。"
send: "送信"
abuseMarkAsResolved: "対応済みにする"
openInNewTab: "新しいタブで開く"
openInSideView: "サイドビューで開く"
defaultNavigationBehaviour: "デフォルトのナビゲーション"
editTheseSettingsMayBreakAccount: "これらの設定を編集するとアカウントが破損する可能性があります。"
instanceTicker: "投稿のインスタンス情報"
instanceTicker: "投稿のサーバー情報"
waitingFor: "{x}を待っています"
random: "ランダム"
system: "システム"
@ -702,7 +709,7 @@ experimentalFeatures: "実験的機能"
developer: "開発者"
makeExplorable: "アカウントを見つけやすくする"
makeExplorableDescription: "オフにすると、「みつける」にアカウントが載らなくなります。"
showGapBetweenNotesInTimeline: "タイムラインの投稿を離して表示"
showGapBetweenNotesInTimeline: "タイムラインの投稿を離して表示する"
duplicate: "複製"
left: "左"
center: "中央"
@ -716,7 +723,8 @@ onlineUsersCount: "{n}人がオンライン"
nUsers: "{n}ユーザー"
nNotes: "{n}投稿"
sendErrorReports: "エラーリポートを送信"
sendErrorReportsDescription: "オンにすると、問題が発生したときにエラーの詳細情報がCalckeyに共有され、ソフトウェアの品質向上に役立てられます。エラー情報には、OSのバージョン、ブラウザの種類、行動履歴などが含まれます。"
sendErrorReportsDescription: "オンにすると、問題が発生したときにエラーの詳細情報がCalckeyに共有され、ソフトウェアの品質向上に役立てられます。\n\
エラー情報には、OSのバージョン、ブラウザの種類、行動履歴などが含まれます。"
myTheme: "マイテーマ"
backgroundColor: "背景"
accentColor: "アクセント"
@ -740,7 +748,7 @@ capacity: "容量"
inUse: "使用中"
editCode: "コードを編集"
apply: "適用"
receiveAnnouncementFromInstance: "インスタンスからのお知らせを受け取る"
receiveAnnouncementFromInstance: "サーバーからのお知らせを受け取る"
emailNotification: "メール通知"
publish: "公開"
inChannelSearch: "チャンネル内検索"
@ -751,7 +759,7 @@ showingPastTimeline: "過去のタイムラインを表示しています"
clear: "クリア"
markAllAsRead: "全て既読にする"
goBack: "戻る"
unlikeConfirm: "いいね解除しますか?"
unlikeConfirm: "いいね解除しますか?"
fullView: "フルビュー"
quitFullView: "フルビュー解除"
addDescription: "説明を追加"
@ -768,7 +776,7 @@ active: "アクティブ"
offline: "オフライン"
notRecommended: "非推奨"
botProtection: "Botプロテクション"
instanceBlocking: "インスタンスブロック"
instanceBlocking: "連合の管理"
selectAccount: "アカウントを選択"
switchAccount: "アカウントを切り替え"
enabled: "有効"
@ -796,19 +804,19 @@ low: "低"
emailNotConfiguredWarning: "メールアドレスの設定がされていません。"
ratio: "比率"
secureMode: "セキュアモード (Authorized Fetch)"
instanceSecurity: "インスタンスのセキュリティー"
secureModeInfo: "他のインスタンスからリクエストするときに、証明を付けなければ返送しません。他のインスタンスの設定ファイルでsignToActivityPubGetはtrueにしてください。"
instanceSecurity: "サーバーのセキュリティー"
secureModeInfo: "認証情報の無いリモートサーバーからのリクエストに応えません。"
privateMode: "非公開モード"
privateModeInfo: "有効にすると、許可したインスタンスのみからリクエストを受け付けます。"
allowedInstances: "許可されたインスタンス"
allowedInstancesDescription: "許可したいインスタンスのホストを改行で区切って設定します。非公開モードだけで有効です。"
privateModeInfo: "有効にすると、許可したサーバーのみからリクエストを受け付けます。"
allowedInstances: "許可されたサーバー"
allowedInstancesDescription: "許可したいサーバーのホストを改行で区切って設定します。非公開モードだけで有効です。"
previewNoteText: "本文をプレビュー"
customCss: "カスタムCSS"
customCssWarn: "この設定は必ず知識のある方が行ってください。不適切な設定を行うとクライアントが正常に使用できなくなる恐れがあります。"
global: "グローバル"
recommended: "推奨"
squareAvatars: "アイコンを四角形で表示"
seperateRenoteQuote: "ブーストと引用ボタンを分ける"
seperateRenoteQuote: "ブーストと引用ボタンを分ける"
sent: "送信"
received: "受信"
searchResult: "検索結果"
@ -830,7 +838,7 @@ lastCommunication: "直近の通信"
resolved: "解決済み"
unresolved: "未解決"
breakFollow: "フォロワーを解除"
breakFollowConfirm: "フォロワー除しますか?"
breakFollowConfirm: "フォロワーから削除しますか?"
itsOn: "オンになっています"
itsOff: "オフになっています"
emailRequiredForSignup: "アカウント登録にメールアドレスを必須にする"
@ -840,7 +848,7 @@ controlPanel: "コントロールパネル"
manageAccounts: "アカウントを管理"
makeReactionsPublic: "リアクション一覧を公開する"
makeReactionsPublicDescription: "あなたがしたリアクション一覧を誰でも見れるようにします。"
classic: "クラシック"
classic: "中央寄せ"
muteThread: "スレッドをミュート"
unmuteThread: "スレッドのミュートを解除"
ffVisibility: "つながりの公開範囲"
@ -866,8 +874,8 @@ themeColor: "テーマカラー"
size: "サイズ"
numberOfColumn: "列の数"
searchByGoogle: "検索"
instanceDefaultLightTheme: "インスタンスデフォルトのライトテーマ"
instanceDefaultDarkTheme: "インスタンスデフォルトのダークテーマ"
instanceDefaultLightTheme: "サーバーの標準ライトテーマ"
instanceDefaultDarkTheme: "サーバーの標準ダークテーマ"
instanceDefaultThemeDescription: "オブジェクト形式のテーマコードを記入します。"
mutePeriod: "ミュートする期限"
indefinitely: "無期限"
@ -889,7 +897,7 @@ check: "チェック"
driveCapOverrideLabel: "このユーザーのドライブ容量上限を変更"
driveCapOverrideCaption: "0以下を指定すると解除されます。"
requireAdminForView: "閲覧するには管理者アカウントでログインしている必要があります。"
isSystemAccount: "システムにより自動で作成・管理されているアカウントです。"
isSystemAccount: "システムにより自動で作成・管理されているアカウントです。モデレーション・編集・削除を行うとサーバーの動作が不正になる可能性があるため、操作しないでください。"
typeToConfirm: "この操作を行うには {x} と入力してください"
deleteAccount: "アカウント削除"
document: "ドキュメント"
@ -913,9 +921,10 @@ remoteOnly: "リモートのみ"
failedToUpload: "アップロード失敗"
cannotUploadBecauseInappropriate: "不適切な内容を含む可能性があると判定されたためアップロードできません。"
cannotUploadBecauseNoFreeSpace: "ドライブの空き容量が無いためアップロードできません。"
cannotUploadBecauseExceedsFileSizeLimit: "ファイルサイズの制限を超えているためアップロードできません。"
beta: "ベータ"
enableAutoSensitive: "自動NSFW判定"
enableAutoSensitiveDescription: "利用可能な場合は、機械学習を利用して自動でメディアにNSFWフラグを設定します。この機能をオフにしても、インスタンスによっては自動で設定されることがあります。"
enableAutoSensitiveDescription: "利用可能な場合は、機械学習を利用して自動でメディアにNSFWフラグを設定します。この機能をオフにしても、サーバーによっては自動で設定されることがあります。"
activeEmailValidationDescription: "ユーザーのメールアドレスのバリデーションを、捨てアドかどうかや実際に通信可能かどうかなどを判定しより積極的に行います。オフにすると単に文字列として正しいかどうかのみチェックされます。"
showAds: "広告を表示する"
navbar: "ナビゲーションバー"
@ -926,17 +935,18 @@ pushNotification: "プッシュ通知"
subscribePushNotification: "プッシュ通知を有効化"
unsubscribePushNotification: "プッシュ通知を停止する"
pushNotificationAlreadySubscribed: "プッシュ通知は有効です"
pushNotificationNotSupported: "ブラウザかサーバーがプッシュ通知に非対応"
pushNotificationNotSupported: "ブラウザまたはサーバーがプッシュ通知に非対応です"
sendPushNotificationReadMessage: "通知やメッセージが既読になったらプッシュ通知を削除する"
sendPushNotificationReadMessageCaption: "「{emptyPushNotificationMessage}」という通知が一瞬表示されるようになります。端末の電池消費量が増加する可能性があります。"
adminCustomCssWarn: "この設定は、それが何をするものであるかを知っている場合のみ使用してください。不適切な値を入力すると、クライアントが正常に動作しなくなる可能性があります。ユーザー設定でCSSをテストし、正しく動作することを確認してください。"
customMOTD: "カスタムMOTD(スプラッシュスクリーンメッセージ)"
customMOTDDescription: "ユーザがページをロード/リロードするたびにランダムに表示される、改行で区切られたMOTD(スプラッシュスクリーン)用のカスタムメッセージ"
customSplashIcons: "カスタムスプラッシュスクリーンアイコン"
customSplashIconsDescription: "ユーザがページをロード/リロードするたびにランダムに表示される、改行で区切られたカスタムスプラッシュスクリーンアイコンの URL。画像は静的なURLで、できればすべて192x192にリサイズしてください。"
customSplashIconsDescription: "ユーザがページをロード/リロードするたびにランダムに表示される、改行で区切られたカスタムスプラッシュスクリーンアイコンの
URL。画像は静的なURLで、できればすべて192x192にリサイズしてください。"
showUpdates: "Calckeyの更新時にポップアップを表示する"
recommendedInstances: "おすすめインスタンス"
recommendedInstancesDescription: "おすすめタイムラインに表示される、改行で区切られたインスタンス。`https://`を追加しないでください。ドメインのみを追加してください。"
recommendedInstances: "おすすめサーバー"
recommendedInstancesDescription: "おすすめタイムラインに表示するサーバーを改行区切りで入力してください。`https://`は書かず、ドメインのみを入力してください。"
caption: "自動キャプション"
splash: "スプラッシュスクリーン"
updateAvailable: "アップデートがありますよ!"
@ -948,19 +958,26 @@ migration: "アカウントの引っ越し"
moveTo: "このアカウントを新しいアカウントに引っ越す"
moveToLabel: "引っ越し先のアカウント:"
moveAccount: "引っ越し実行!"
moveAccountDescription: "この操作は取り消せません。まずは引っ越し先のアカウントでこのアカウントに対しエイリアスを作成したことを確認してください。エイリアス作成後、引っ越し先のアカウントをこのように入力してください:@person@instance.com"
moveAccountDescription: "この操作は取り消せません。まずは引っ越し先のアカウントでこのアカウントに対しエイリアスを作成したことを確認してください。エイリアス作成後、引っ越し先のアカウントをこのように入力してください:@person@server.com"
moveFrom: "別のアカウントからこのアカウントに引っ越す"
moveFromLabel: "引っ越し元のアカウント:"
moveFromDescription: "別のアカウントからこのアカウントにフォロワーを引き継いで引っ越したい場合、ここでエイリアスを作成しておく必要があります。必ず引っ越しを実行する前に作成してください!引っ越し元のアカウントをこのように入力してください:@person@instance.com"
migrationConfirm: "本当にこのアカウントを {account} に引っ越しますか?一度引っ越しを行うと取り消せず、二度とこのアカウントを元の状態で使用できなくなります。\nまた、引っ越し先のアカウントでエイリアスを作成したことを確認してください。"
moveFromDescription: "別のアカウントからこのアカウントにフォロワーを引き継いで引っ越したい場合、ここでエイリアスを作成しておく必要があります。必ず引っ越しを実行する前に作成してください!引っ越し元のアカウントをこのように入力してください:@person@server.com"
migrationConfirm: "本当にこのアカウントを {account} に引っ越しますか?一度引っ越しを行うと取り消せず、二度とこのアカウントを元の状態で使用できなくなります。\n\
この操作を行う前に引っ越し先のアカウントでエイリアスを作成する必要があります。エイリアスが作成されているか、必ず確認してください。"
defaultReaction: "リモートとローカルの投稿に対するデフォルトの絵文字リアクション"
license: "ライセンス"
indexPosts: "投稿をインデックス"
indexFrom: "この投稿ID以降をインデックスする空白で全ての投稿を指定します"
indexFrom: "この投稿ID以降をインデックスする"
indexFromDescription: "空白で全ての投稿を指定します"
indexNotice: "インデックスを開始しました。完了まで時間がかかる場合があるため、少なくとも1時間はサーバーを再起動しないでください。"
customKaTeXMacro: "カスタムKaTeXマクロ"
customKaTeXMacroDescription: "数式入力を楽にするためのマクロを設定しましょう記法はLaTeXにおけるコマンドの定義と同様に \\newcommand{\\name}{content} または \\newcommand{\\add}[2]{#1 + #2} のように記述します。後者の例では \\add{3}{foo} が 3 + foo に展開されます。また、マクロの名前を囲む波括弧を丸括弧 () および角括弧 [] に変更した場合、マクロの引数に使用する括弧が変更されます。マクロの定義は一行に一つのみで、途中で改行はできません。マクロの定義が無効な行は無視されます。文字列を単純に置換する機能のみに対応していて、条件分岐などの高度な構文は使用できません。"
customKaTeXMacroDescription: "数式入力を楽にするためのマクロを設定しましょう記法はLaTeXにおけるコマンドの定義と同様に \\newcommand{\\
name}{content} または \\newcommand{\\add}[2]{#1 + #2} のように記述します。後者の例では \\add{3}{foo}
が 3 + foo に展開されます。また、マクロの名前を囲む波括弧を丸括弧 () および角括弧 [] に変更した場合、マクロの引数に使用する括弧が変更されます。マクロの定義は一行に一つのみで、途中で改行はできません。マクロの定義が無効な行は無視されます。文字列を単純に置換する機能のみに対応していて、条件分岐などの高度な構文は使用できません。"
enableCustomKaTeXMacro: "カスタムKaTeXマクロを有効にする"
preventAiLearning: "AIによる学習を防止"
preventAiLearningDescription: "投稿したート、添付した画像などのコンテンツを学習の対象にしないようAIに要求します。これはnoaiフラグをHTMLレスポンスに含めることによって実現されます。"
noGraze: "ブラウザの拡張機能「Graze for Mastodon」は、Calckeyの動作を妨げるため、無効にしてください。"
_sensitiveMediaDetection:
description: "機械学習を使って自動でセンシティブなメディアを検出し、モデレーションに役立てられます。サーバーの負荷が少し増えます。"
@ -997,7 +1014,7 @@ _ad:
_forgotPassword:
enterEmail: "アカウントに登録したメールアドレスを入力してください。そのアドレス宛てに、パスワードリセット用のリンクが送信されます。"
ifNoEmail: "メールアドレスを登録していない場合は、管理者までお問い合わせください。"
contactAdmin: "このインスタンスではメールがサポートされていないため、パスワードリセットを行う場合は管理者までお問い合わせください。"
contactAdmin: "このインスタンスではメールアドレスの登録がサポートされていないため、パスワードリセットを行う場合は管理者までお問い合わせください。"
_gallery:
my: "自分の投稿"
liked: "いいねした投稿"
@ -1058,7 +1075,7 @@ _mfm:
hashtag: "ハッシュタグ"
hashtagDescription: "ナンバーサイン + タグで、ハッシュタグを示せます。"
url: "URL"
urlDescription: "URLを示せます。"
urlDescription: "URLを表示できます。"
link: "リンク"
linkDescription: "文章の特定の範囲を、URLに紐づけられます。"
bold: "太字"
@ -1074,7 +1091,7 @@ _mfm:
inlineMath: "数式(インライン)"
inlineMathDescription: "数式(KaTeX)をインラインで表示します。"
blockMath: "数式(ブロック)"
blockMathDescription: "複数行の数式(KaTeX)をブロックで表示します。"
blockMathDescription: "数式(KaTeX)をブロックで表示します。"
quote: "引用"
quoteDescription: "内容が引用であることを示せます。"
emoji: "カスタム絵文字"
@ -1115,6 +1132,24 @@ _mfm:
rotateDescription: "指定した角度で回転させます。"
plain: "プレーン"
plainDescription: "内側の構文を全て無効にします。"
position: 位置
stop: MFMを停止
alwaysPlay: MFMアニメーションを自動再生する
play: MFMを再生
warn: MFMアニメーションは激しい動きを含む可能性があります。
positionDescription: 位置を指定した値だけずらします。
foreground: 文字色
backgroundDescription: 背景の色を変更します。
background: 背景色
scale: 拡大・縮小
scaleDescription: 大きさを指定した値に拡大・縮小します。
foregroundDescription: 文字の色を変更します。
fade: フェード
fadeDescription: フェードインとフェードアウトする。
crop: 切り抜き
cropDescription: 内容を切り抜く。
advancedDescription: オフにすると、アニメーション再生中を除いて基本的なMFMだけ表示します。
advanced: 高度なMFM
_instanceTicker:
none: "表示しない"
remote: "リモートユーザーに表示"
@ -1123,7 +1158,7 @@ _serverDisconnectedBehavior:
reload: "自動でリロード"
dialog: "ダイアログで警告"
quiet: "控えめに警告"
nothing: "何も起こらない"
nothing: "何もない"
_channel:
create: "チャンネルを作成"
edit: "チャンネルを編集"
@ -1134,6 +1169,8 @@ _channel:
following: "フォロー中"
usersCount: "{n}人が参加中"
notesCount: "{n}投稿があります"
nameAndDescription: "名前と説明"
nameOnly: "名前のみ"
_messaging:
dms: "プライベート"
groups: "グループ"
@ -1152,10 +1189,10 @@ _wordMute:
hard: "ハード"
mutedNotes: "ミュートされた投稿"
_instanceMute:
instanceMuteDescription: "ミュートしたインスタンスのユーザーへの返信を含めて、設定したインスタンスの全ての投稿とブーストをミュートします。"
instanceMuteDescription: "ミュートしたサーバーのユーザーへの返信を含めて、設定したサーバーの全ての投稿とブーストをミュートします。"
instanceMuteDescription2: "改行で区切って設定します"
title: "設定したインスタンスの投稿を隠します。"
heading: "ミュートするインスタンス"
title: "設定したサーバーの投稿を隠します。"
heading: "ミュートするサーバー"
_theme:
explore: "テーマを探す"
install: "テーマのインストール"
@ -1260,30 +1297,45 @@ _tutorial:
step2_1: "最初に、あなたのプロフィールを作りましょう。"
step2_2: "プロフィールを設定することで、他の人があなたの投稿を見たり、フォローしたりするときの助けになります。"
step3_1: "それでは、何人かフォローしてみましょう!"
step3_2: "あなたのホームとソーシャルタイムラインは、あなたが誰をフォローしているかで決まります。まずは、いくつかのアカウントをフォローしてみましょう。\nプロフィールの右上にある丸いボタンをクリックするとフォローできます。"
step3_2: "あなたのホームとソーシャルタイムラインは、あなたが誰をフォローしているかで決まります。まずは、いくつかのアカウントをフォローしてみましょう。\n\
プロフィールの右上にある丸い+ボタンをクリックするとフォローできます。"
step4_1: "投稿してみましょう!"
step4_2: "最初は{introduction}に投稿したり、シンプルに「こんにちは、アカウント作ってみました!」などの投稿をする人もいます。"
step5_1: "タイムライン、タイムラインだらけ!"
step5_2: "あなたのインスタンスでは{timelines}種類のタイムラインが有効になっています。"
step5_3: "ホーム{icon}タイムラインでは、あなたがフォローしているアカウントとこのインスタンスのみんなの投稿を見られます。もしフォローしているアカウントの投稿だけ見たい場合は、設定から変更できます。"
step5_4: "ローカル{icon}タイムラインでは、このインスタンスにいるみんなの投稿を見られます。"
step5_5: "ソーシャル{icon}タイムラインでは、あなたがフォローしているアカウントの投稿を見られます。"
step5_6: "おすすめ{icon}タイムラインでは、管理人がおすすめするインスタンスの投稿を見られます。"
step5_7: "グローバル{icon}タイムラインでは、接続している他のすべてのインスタンスからの投稿を見られます。"
step5_2: "あなたのサーバーでは{timelines}種類のタイムラインが有効になっています。"
step5_3: "ホーム{icon}タイムラインでは、あなたがフォローしているアカウントの投稿を見られます。"
step5_4: "ローカル{icon}タイムラインでは、このサーバーにいるみんなの投稿を見られます。"
step5_5: "ソーシャル{icon}タイムラインでは、ホームタイムラインとローカルタイムラインの投稿が両方表示されます。"
step5_6: "おすすめ{icon}タイムラインでは、管理人がおすすめするサーバーの投稿を見られます。"
step5_7: "グローバル{icon}タイムラインでは、接続している他のすべてのサーバーからの投稿を見られます。"
step6_1: "じゃあ、ここはどんな場所なの?"
step6_2: "実は、あなたはただCalckeyに参加しただけではありません。ここは、何千もの相互接続されたサーバーが構成する Fediverse への入口です。各サーバーは「インスタンス」と呼ばれます。"
step6_2: "実は、あなたはただCalckeyに参加しただけではありません。ここは、何千もの相互接続されたサーバーが構成する Fediverse への入口です。"
step6_3: "それぞれのサーバーでは必ずしもCalckeyが使われているわけではなく、異なる動作をするサーバーもあります。しかし、あなたは他のサーバーのアカウントもフォローしたり、返信・ブーストができます。一見難しそうですが大丈夫すぐ慣れます。"
step6_4: "これで完了です。お楽しみください!"
_2fa:
alreadyRegistered: "既に設定は完了しています。"
registerDevice: "デバイスを登録"
registerKey: "キーを登録"
registerTOTP: "認証アプリの設定を開始"
step1: "まず、{a}や{b}などの認証アプリをお使いのデバイスにインストールします。"
step2: "次に、表示されているQRコードをアプリでスキャンします。"
step2Url: "デスクトップアプリでは次のURLを入力します:"
step3: "アプリに表示されているトークンを入力して完了です。"
step4: "これからログインするときも、同じようにトークンを入力します。"
securityKeyInfo: "FIDO2をサポートするハードウェアセキュリティキーもしくは端末の指紋認証やPINを使用してログインするように設定できます。"
step2Click: "QRコードをクリックすると、お使いの端末にインストールされている認証アプリやキーリングに登録できます。"
step2Url: "デスクトップアプリでは次のURIを入力します:"
step3Title: "確認コードを入力"
step3: "アプリに表示されている確認コード(トークン)を入力して完了です。"
step4: "これからログインするときも、同じように確認コードを入力します。"
securityKeyNotSupported: "お使いのブラウザはセキュリティキーに対応していません。"
registerTOTPBeforeKey: "セキュリティキー・パスキーを登録するには、まず認証アプリの設定を行なってください。"
securityKeyInfo: "FIDO2をサポートするハードウェアセキュリティキー、端末の生体認証やPINロック、パスキーといった、WebAuthn由来の鍵を登録します。"
chromePasskeyNotSupported: "Chromeのパスキーは現在サポートしていません。"
registerSecurityKey: "セキュリティキー・パスキーを登録する"
securityKeyName: "キーの名前を入力"
tapSecurityKey: "ブラウザの指示に従い、セキュリティキーやパスキーを登録してください"
removeKey: "セキュリティキーを削除"
removeKeyConfirm: "{name}を削除しますか?"
whyTOTPOnlyRenew: "セキュリティキーが登録されている場合、認証アプリの設定は解除できません。"
renewTOTP: "認証アプリを再設定"
renewTOTPConfirm: "今までの認証アプリの確認コードは使用できなくなります"
renewTOTPOk: "再設定する"
renewTOTPCancel: "やめておく"
_permissions:
"read:account": "アカウントの情報を見る"
"write:account": "アカウントの情報を変更する"
@ -1331,7 +1383,7 @@ _antennaSources:
users: "指定した一人または複数のユーザーの投稿"
userList: "指定したリストのユーザーの投稿"
userGroup: "指定したグループのユーザーの投稿"
instances: "指定したインスタンスの全ユーザーの投稿"
instances: "指定したサーバーの全ユーザーの投稿"
_weekday:
sunday: "日曜日"
monday: "月曜日"
@ -1354,7 +1406,7 @@ _widgets:
digitalClock: "デジタル時計"
unixClock: "UNIX時計"
federation: "連合"
instanceCloud: "インスタンスクラウド"
instanceCloud: "サーバークラウド"
postForm: "投稿フォーム"
slideshow: "スライドショー"
button: "ボタン"
@ -1365,6 +1417,10 @@ _widgets:
userList: "ユーザーリスト"
_userList:
chooseList: "リストを選択"
meiliStatus: サーバーステータス
serverInfo: サーバー情報
meiliSize: インデックスサイズ
meiliIndexCount: インデックス済みの投稿
_cw:
hide: "隠す"
show: "もっと見る"
@ -1426,7 +1482,7 @@ _profile:
metadataContent: "内容"
changeAvatar: "アバター画像を変更"
changeBanner: "バナー画像を変更"
locationDescription: "正しく入力すると、あなたの現地時間が他のユーザーに表示されます。"
locationDescription: "英語表記の都市名から始まる内容を入力すると、現地時間がユーザーページに表示されます。"
_exportOrImport:
allNotes: "全ての投稿"
followingList: "フォロー"
@ -1793,6 +1849,9 @@ _notification:
followBack: "フォローバック"
reply: "返信"
renote: "ブースト"
reacted: がリアクションしました
renoted: がブーストしました
voted: が投票しました
_deck:
alwaysShowMainColumn: "常にメインカラムを表示"
columnAlign: "カラムの寄せ"
@ -1806,7 +1865,9 @@ _deck:
popRight: "右に出す"
profile: "ワークスペース"
newProfile: "新規ワークスペース"
renameProfile: "ワークスペース名を変更"
deleteProfile: "ワークスペースを削除"
nameAlreadyExists: "この名前のワークスペースは既に存在します。"
introduction: "カラムを組み合わせて自分だけのインターフェイスを作りましょう!"
introduction2: "画面の右にある + を押して、いつでもカラムを追加できます。"
widgetsIntroduction: "カラムのメニューから、「ウィジェットの編集」を選択してウィジェットを追加してください"
@ -1817,22 +1878,56 @@ _deck:
tl: "タイムライン"
antenna: "アンテナ"
list: "リスト"
channel: "チャンネル"
mentions: "あなた宛て"
direct: "ダイレクト"
_apps:
noteId: 投稿のID
hiddenTagsDescription: 'トレンドと「みつける」から除外したいハッシュタグを(先頭の # を除いて)改行区切りで入力してください。この設定はトレンドと「みつける」以外には影響しません。'
hiddenTags: 非表示にするハッシュタグ
apps: "アプリ"
crossPlatform: "クロスプラットフォーム"
mobile: "モバイル"
firstParty: "ファーストパーティ"
firstClass: "対応度◎"
secondClass: "対応度○"
thirdClass: "対応度△"
free: "無料"
paid: "有料"
pwa: "PWAをインストール"
kaiteki: "Kaiteki"
milktea: "Milktea"
missLi: "MissLi"
mona: "Mona"
theDesk: "TheDesk"
lesskey: "Lesskey"
_experiments:
enablePostEditing: 投稿の編集機能を有効にする
title: 試験的な機能
postEditingCaption: 投稿のメニューに既存の投稿を編集するボタンを表示し、他サーバーの編集も受信できるようにします。
postImportsCaption:
ユーザーが過去の投稿をCalckey・Misskey・Mastodon・Akkoma・Pleromaからインポートすることを許可します。キューが溜まっているときにインポートするとサーバーに負荷がかかる可能性があります。
enablePostImports: 投稿のインポートを有効にする
sendModMail: モデレーション通知を送る
deleted: 削除済み
editNote: 投稿を編集
edited: '編集済み: {date} {time}'
signupsDisabled:
現在、このサーバーでは新規登録が一般開放されていません。招待コードをお持ちの場合には、以下の欄に入力してください。招待コードをお持ちでない場合にも、新規登録を開放している他のサーバーには入れますよ!
findOtherInstance: 他のサーバーを探す
newer: 新しい投稿
older: 古い投稿
accessibility: アクセシビリティ
jumpToPrevious: 前に戻る
cw: 閲覧注意
silencedWarning: スパムの可能性があるため、これらのユーザーが所属するサーバーは管理者によりサイレンスされています。
searchPlaceholder: Calckeyを検索
channelFederationWarn: 現時点では、チャンネルは他のサーバーへ連合しません
listsDesc: リストでは指定したユーザーだけのタイムラインを作れます。リストには「タイムライン」のページからアクセスできます。
antennasDesc: "アンテナでは指定した条件に合致する投稿が表示されます。\nアンテナには「タイムライン」のページからアクセスできます。"
expandOnNoteClickDesc: オフの場合、右クリックメニューか日付をクリックすることで開けます。
expandOnNoteClick: クリックで投稿の詳細を開く
clipsDesc: クリップは分類と共有ができるブックマークです。各投稿のメニューからクリップを作成できます。
_dialog:
charactersExceeded: "最大文字数を超えています! 現在 {current} / 制限 {max}"
charactersBelow: "最小文字数を下回っています! 現在 {current} / 制限 {min}"
_filters:
followersOnly: フォロワーのみ
fromUser: ユーザーを指定
withFile: 添付ファイルあり
fromDomain: ドメインを指定
notesBefore: 指定の日付以前
notesAfter: 指定の日付以降
followingOnly: フォロー中のみ
isModerator: モデレーター
audio: 音声
image: 画像
video: 動画
isBot: このアカウントはBotです
isLocked: このアカウントのフォローは承認制です
isAdmin: 管理者
isPatron: Calckey 後援者

View File

@ -177,7 +177,6 @@ operations: "操作"
software: "ソフトウェア"
version: "バージョン"
metadata: "メタデータ"
withNFiles: "{n}個のファイル"
monitor: "モニター"
jobQueue: "ジョブキュー"
cpuAndMemory: "CPUとメモリ"

View File

@ -1,6 +1,6 @@
---
_lang_: "ಕನ್ನಡ"
introMisskey: "ಸ್ವಾಗತ! Misskey ಓಪನ್ ಸೋರ್ಸ್ ಒಕ್ಕೂಟ ಮೈಕ್ರೋಬ್ಲಾಗಿಂಗ್ ಸೇವೆಯಾಗಿದೆ.\n ಏನಾಗುತ್ತಿದೆ ಎಂಬುದನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಅಥವಾ ನಿಮ್ಮ ಬಗ್ಗೆ ಎಲ್ಲರಿಗೂ ಹೇಳಲು \"ಟಿಪ್ಪಣಿ\"ಗಳನ್ನು ರಚಿಸಿ📡\n \"ಸ್ಪಂದನೆ\" ಕ್ರಿಯೆಯೊಂದಿಗೆ, ನೀವು ಎಲ್ಲರ ಟಿಪ್ಪಣಿಗಳಿಗೆ ತ್ವರಿತವಾಗಿ ಸ್ಪಂದನೆಗಳನ್ನು ಕೂಡ ಸೇರಿಸಬಹುದು.👍\n ಹೊಸ ಜಗತ್ತನ್ನು ಅನ್ವೇಷಿಸಿ🚀"
introMisskey: "ಸ್ವಾಗತ! Calckey ಓಪನ್ ಸೋರ್ಸ್ ಒಕ್ಕೂಟ ಮೈಕ್ರೋಬ್ಲಾಗಿಂಗ್ ಸೇವೆಯಾಗಿದೆ.\n ಏನಾಗುತ್ತಿದೆ ಎಂಬುದನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಅಥವಾ ನಿಮ್ಮ ಬಗ್ಗೆ ಎಲ್ಲರಿಗೂ ಹೇಳಲು \"ಟಿಪ್ಪಣಿ\"ಗಳನ್ನು ರಚಿಸಿ📡\n \"ಸ್ಪಂದನೆ\" ಕ್ರಿಯೆಯೊಂದಿಗೆ, ನೀವು ಎಲ್ಲರ ಟಿಪ್ಪಣಿಗಳಿಗೆ ತ್ವರಿತವಾಗಿ ಸ್ಪಂದನೆಗಳನ್ನು ಕೂಡ ಸೇರಿಸಬಹುದು.👍\n ಹೊಸ ಜಗತ್ತನ್ನು ಅನ್ವೇಷಿಸಿ🚀"
monthAndDay: "{month}ನೇ ತಿಂಗಳ {day}ನೇ ದಿನ"
search: "ಹುಡುಕು"
notifications: "ಅಧಿಸೂಚನೆಗಳು"

View File

@ -1,7 +1,7 @@
---
_lang_: "한국어"
headlineMisskey: "노트로 연결되는 네트워크"
introMisskey: "환영합니다! Misskey 는 오픈 소스 분산형 마이크로 블로그 서비스입니다.\n\"노트\" 를 작성해서, 지금 일어나고 있는 일을 공유하거나, 당신만의 이야기를 모두에게 발신하세요📡\n\"리액션\" 기능으로, 친구의 노트에 총알같이 반응을 추가할 수도 있습니다👍\n새로운 세계를 탐험해 보세요🚀"
introMisskey: "환영합니다! Calckey 는 오픈 소스 분산형 마이크로 블로그 서비스입니다.\n\"노트\" 를 작성해서, 지금 일어나고 있는 일을 공유하거나, 당신만의 이야기를 모두에게 발신하세요📡\n\"리액션\" 기능으로, 친구의 노트에 총알같이 반응을 추가할 수도 있습니다👍\n새로운 세계를 탐험해 보세요🚀"
monthAndDay: "{month}월 {day}일"
search: "검색"
notifications: "알림"
@ -177,7 +177,6 @@ operations: "작업"
software: "소프트웨어"
version: "버전"
metadata: "메타데이터"
withNFiles: "{n}개의 파일"
monitor: "모니터"
jobQueue: "작업 대기열"
cpuAndMemory: "CPU와 메모리"
@ -524,7 +523,7 @@ sort: "정렬"
ascendingOrder: "오름차순"
descendingOrder: "내림차순"
scratchpad: "스크래치 패드"
scratchpadDescription: "스크래치 패드는 AiScript 의 테스트 환경을 제공합니다. Misskey 와 상호 작용하는 코드를 작성, 실행 및 결과를 확인할 수 있습니다."
scratchpadDescription: "스크래치 패드는 AiScript 의 테스트 환경을 제공합니다. Calckey 와 상호 작용하는 코드를 작성, 실행 및 결과를 확인할 수 있습니다."
output: "출력"
script: "스크립트"
disablePagesScript: "Pages 에서 AiScript 를 사용하지 않음"
@ -1180,8 +1179,8 @@ _time:
day: "일"
_2fa:
alreadyRegistered: "이미 설정이 완료되었습니다."
registerDevice: "디바이스 등록"
registerKey: "키를 등록"
registerTOTP: "디바이스 등록"
registerSecurityKey: "키를 등록"
step1: "먼저, {a}나 {b}등의 인증 앱을 사용 중인 디바이스에 설치합니다."
step2: "그 후, 표시되어 있는 QR코드를 앱으로 스캔합니다."
step2Url: "데스크톱 앱에서는 다음 URL을 입력하세요:"

View File

@ -1,7 +1,10 @@
---
_lang_: "Nederlands"
headlineMisskey: "Netwerk verbonden door notities"
introMisskey: "Welkom! Misskey is een open source, gedecentraliseerde microblogdienst.\nMaak \"notities\" om je gedachten te delen met iedereen om je heen. 📡\nMet \"reacties\" kun je ook snel je mening geven over berichten van anderen. 👍\nLaten we een nieuwe wereld verkennen! 🚀"
headlineMisskey: "Een open source, gedecentraliseerd, social media platform dat voor
altijd gratis is! 🚀"
introMisskey: "Welkom! Calckey is een open source, gedecentraliseerde microblogdienst.\n
Maak \"notities\" om je gedachten te delen met iedereen om je heen. 📡\nMet \"reacties\"\
\ kun je ook snel je mening geven over berichten van anderen. 👍\nLaten we een nieuwe
wereld verkennen! 🚀"
monthAndDay: "{day} {month}"
search: "Zoeken"
notifications: "Meldingen"
@ -10,7 +13,7 @@ password: "Wachtwoord"
forgotPassword: "Wachtwoord vergeten"
fetchingAsApObject: "Ophalen vanuit de Fediverse"
ok: "Ok"
gotIt: "Begrepen"
gotIt: "Begrepen!"
cancel: "Annuleren"
enterUsername: "Voer een gebruikersnaam in"
renotedBy: "Hergedeeld door {user}"
@ -44,15 +47,16 @@ copyContent: "Kopiëren inhoud"
copyLink: "Kopiëren link"
delete: "Verwijderen"
deleteAndEdit: "Verwijderen en bewerken"
deleteAndEditConfirm: "Weet je zeker dat je deze notitie wilt verwijderen en dan bewerken? Je verliest alle reacties, herdelingen en antwoorden erop."
deleteAndEditConfirm: "Weet je zeker dat je deze post wilt verwijderen en dan bewerken?
Je verliest alle reacties, boosts en antwoorden erop."
addToList: "Aan lijst toevoegen"
sendMessage: "Verstuur bericht"
copyUsername: "Kopiëren gebruikersnaam "
searchUser: "Zoeken een gebruiker"
copyUsername: "Gebruikersnaam kopiëren"
searchUser: "Zoek een gebruiker"
reply: "Antwoord"
loadMore: "Laad meer"
showMore: "Toon meer"
youGotNewFollower: "volgde jou"
youGotNewFollower: "volgt jou"
receiveFollowRequest: "Volgverzoek ontvangen"
followRequestAccepted: "Volgverzoek geaccepteerd"
mention: "Vermelding"
@ -63,9 +67,11 @@ import: "Import"
export: "Export"
files: "Bestanden"
download: "Downloaden"
driveFileDeleteConfirm: "Weet je zeker dat je het bestand \"{name}\" wilt verwijderen? Notities met dit bestand als bijlage worden ook verwijderd."
driveFileDeleteConfirm: "Weet je zeker dat je het bestand \"{name}\" wilt verwijderen?
Posts met dit bestand als bijlage worden ook verwijderd."
unfollowConfirm: "Weet je zeker dat je {name} wilt ontvolgen?"
exportRequested: "Je hebt een export aangevraagd. Dit kan een tijdje duren. Het wordt toegevoegd aan je Drive zodra het is voltooid."
exportRequested: "Je hebt een export aangevraagd. Dit kan een tijdje duren. Het wordt
toegevoegd aan je Drive zodra het is voltooid."
importRequested: "Je hebt een import aangevraagd. Dit kan even duren."
lists: "Lijsten"
noLists: "Je hebt geen lijsten"
@ -75,12 +81,14 @@ following: "Volgend"
followers: "Volgers"
followsYou: "Volgt jou"
createList: "Creëer lijst"
manageLists: "Beheren lijsten"
manageLists: "Lijsten beheren"
error: "Fout"
somethingHappened: "Er is iets misgegaan."
retry: "Probeer opnieuw"
pageLoadError: "Pagina laden mislukt"
pageLoadErrorDescription: "Dit wordt normaal gesproken veroorzaakt door netwerkfouten of door de cache van de browser. Probeer de cache te wissen en probeer het na een tijdje wachten opnieuw."
pageLoadErrorDescription: "Dit wordt normaal gesproken veroorzaakt door netwerkfouten
of door de cache van de browser. Probeer de cache te wissen en probeer het na een
tijdje wachten opnieuw."
serverIsDead: "De server reageert niet. Wacht even en probeer het opnieuw."
youShouldUpgradeClient: "Werk je client bij om deze pagina te zien."
enterListName: "Voer de naam van de lijst in"
@ -93,25 +101,26 @@ followRequests: "Volgverzoeken"
unfollow: "Ontvolgen"
followRequestPending: "Wachten op goedkeuring volgverzoek"
enterEmoji: "Voer een emoji in"
renote: "Herdelen"
unrenote: "Stop herdelen"
renoted: "Herdeeld"
cantRenote: "Dit bericht kan niet worden herdeeld"
cantReRenote: "Een herdeling kan niet worden herdeeld"
renote: "Boost"
unrenote: "Boost intrekken"
renoted: "Boosted."
cantRenote: "Dit bericht kan niet worden geboost."
cantReRenote: "Een boost kan niet worden geboost."
quote: "Quote"
pinnedNote: "Vastgemaakte notitie"
pinnedNote: "Vastgemaakte post"
pinned: "Vastmaken aan profielpagina"
you: "Jij"
clickToShow: "Klik om te bekijken"
sensitive: "NSFW"
add: "Toevoegen"
reaction: "Reacties"
reactionSettingDescription2: "Sleep om opnieuw te ordenen, Klik om te verwijderen, Druk op \"+\" om toe te voegen"
rememberNoteVisibility: "Vergeet niet de notitie zichtbaarheidsinstellingen"
reactionSettingDescription2: "Sleep om opnieuw te ordenen, Klik om te verwijderen,
Druk op \"+\" om toe te voegen"
rememberNoteVisibility: "Onthoud post zichtbaarheidsinstellingen"
attachCancel: "Verwijder bijlage"
markAsSensitive: "Markeren als NSFW"
unmarkAsSensitive: "Geen NSFW"
enterFileName: "Invoeren bestandsnaam"
enterFileName: "Bestandsnaam invoeren"
mute: "Dempen"
unmute: "Stop dempen"
block: "Blokkeren"
@ -122,16 +131,21 @@ blockConfirm: "Weet je zeker dat je dit account wil blokkeren?"
unblockConfirm: "Ben je zeker dat je deze account wil blokkeren?"
suspendConfirm: "Ben je zeker dat je deze account wil suspenderen?"
unsuspendConfirm: "Ben je zeker dat je deze account wil opnieuw aanstellen?"
flagAsBot: "Markeer dit account als een robot."
flagAsBotDescription: "Als dit account van een programma wordt beheerd, zet deze vlag aan. Het aanzetten helpt andere ontwikkelaars om bijvoorbeeld onbedoelde feedback loops te doorbreken of om Misskey meer geschikt te maken."
flagAsBot: "Markeer dit account als een robot"
flagAsBotDescription: "Als dit account van een programma wordt beheerd, zet deze vlag
aan. Het aanzetten helpt andere ontwikkelaars om bijvoorbeeld onbedoelde feedback
loops te doorbreken of om Calckey meer geschikt te maken."
flagAsCat: "Markeer dit account als een kat."
flagAsCatDescription: "Zet deze vlag aan als je wilt aangeven dat dit account een kat is."
flagShowTimelineReplies: "Toon antwoorden op de tijdlijn."
flagShowTimelineRepliesDescription: "Als je dit vlag aanzet, toont de tijdlijn ook antwoorden op andere en niet alleen jouw eigen notities."
autoAcceptFollowed: "Accepteer verzoeken om jezelf te volgen vanzelf als je de verzoeker al volgt."
flagAsCatDescription: "Zet deze vlag aan als je wilt aangeven dat dit account een
kat is."
flagShowTimelineReplies: "Toon antwoorden op de tijdlijn"
flagShowTimelineRepliesDescription: "Als je deze vlag aanzet, toont de tijdlijn ook
antwoorden op andere en niet alleen jouw eigen post."
autoAcceptFollowed: "Accepteer verzoeken om jezelf te volgen vanzelf als je de verzoeker
al volgt"
addAccount: "Account toevoegen"
loginFailed: "Aanmelding mislukt."
showOnRemote: "Toon op de externe instantie."
showOnRemote: "Bekijk op de externe server"
general: "Algemeen"
wallpaper: "Achtergrond"
setWallpaper: "Achtergrond instellen"
@ -140,13 +154,17 @@ searchWith: "Zoeken: {q}"
youHaveNoLists: "Je hebt geen lijsten"
followConfirm: "Weet je zeker dat je {name} wilt volgen?"
proxyAccount: "Proxy account"
proxyAccountDescription: "Een proxy-account is een account dat onder bepaalde voorwaarden fungeert als externe volger voor gebruikers. Als een gebruiker bijvoorbeeld een externe gebruiker aan de lijst toevoegt, wordt de activiteit van de externe gebruiker niet aan de server geleverd als geen lokale gebruiker die gebruiker volgt, dus het proxy-account volgt in plaats daarvan."
proxyAccountDescription: "Een proxy-account is een account dat onder bepaalde voorwaarden
fungeert als externe volger voor gebruikers. Als een gebruiker bijvoorbeeld een
externe gebruiker aan de lijst toevoegt, wordt de activiteit van de externe gebruiker
niet aan de server geleverd als geen lokale gebruiker die gebruiker volgt, dus het
proxy-account volgt in plaats daarvan."
host: "Server"
selectUser: "Kies een gebruiker"
recipient: "Ontvanger"
recipient: "Ontvanger(s)"
annotation: "Reacties"
federation: "Federatie"
instances: "Server"
instances: "Servers"
registeredAt: "Geregistreerd op"
latestRequestSentAt: "Laatste aanvraag verstuurd"
latestRequestReceivedAt: "Laatste aanvraag ontvangen"
@ -161,7 +179,6 @@ operations: "Verwerkingen"
software: "Software"
version: "Versie"
metadata: "Metadata"
withNFiles: "{n} bestand(en)"
monitor: "Monitor"
jobQueue: "Job Queue"
cpuAndMemory: "CPU en geheugen"
@ -171,19 +188,23 @@ instanceInfo: "Serverinformatie"
statistics: "Statistieken"
clearQueue: "Wachtrij wissen"
clearQueueConfirmTitle: "Weet je zeker dat je de wachtrji leeg wil maken?"
clearQueueConfirmText: "Niet-bezorgde biljetten die nog in de wachtrij staan, worden niet gefedereerd. Meestal is deze operatie niet nodig."
clearQueueConfirmText: "Niet-bezorgde posts die nog in de wachtrij staan, worden niet
gefedereerd. Meestal is deze operatie niet nodig."
clearCachedFiles: "Cache opschonen"
clearCachedFilesConfirm: "Weet je zeker dat je alle externe bestanden in de cache wilt verwijderen?"
clearCachedFilesConfirm: "Weet je zeker dat je alle externe bestanden in de cache
wilt verwijderen?"
blockedInstances: "Geblokkeerde servers"
blockedInstancesDescription: "Maak een lijst van de servers die moeten worden geblokkeerd, gescheiden door regeleinden. Geblokkeerde servers kunnen niet meer communiceren met deze server."
blockedInstancesDescription: "Maak een lijst van de servers die moeten worden geblokkeerd,
gescheiden door regeleinden. Geblokkeerde servers kunnen niet meer communiceren
met deze server."
muteAndBlock: "Gedempt en geblokkeerd"
mutedUsers: "Gedempte gebruikers"
blockedUsers: "Geblokkeerde gebruikers"
noUsers: "Er zijn geen gebruikers."
editProfile: "Bewerk Profiel"
noteDeleteConfirm: "Ben je zeker dat je dit bericht wil verwijderen?"
pinLimitExceeded: "Je kunt geen berichten meer vastprikken"
intro: "Installatie van Misskey geëindigd! Maak nu een beheerder aan."
noteDeleteConfirm: "Ben je zeker dat je deze post wil verwijderen?"
pinLimitExceeded: "Je kunt geen posts meer vastprikken"
intro: "Installatie van Calckey geëindigd! Maak nu een beheerder aan."
done: "Klaar"
processing: "Bezig met verwerken"
preview: "Voorbeeld"
@ -223,7 +244,9 @@ saved: "Opgeslagen"
messaging: "Chat"
upload: "Uploaden"
keepOriginalUploading: "Origineel beeld behouden."
keepOriginalUploadingDescription: "Bewaar de originele versie bij het uploaden van afbeeldingen. Indien uitgeschakeld, wordt bij het uploaden een alternatieve versie voor webpublicatie genereert."
keepOriginalUploadingDescription: "Bewaar de originele versie bij het uploaden van
afbeeldingen. Indien uitgeschakeld, wordt bij het uploaden een alternatieve versie
voor webpublicatie genereert."
fromDrive: "Van schijf"
fromUrl: "Van URL"
uploadFromUrl: "Uploaden vanaf een URL"
@ -239,7 +262,8 @@ agreeTo: "Ik stem in met {0}"
tos: "Gebruiksvoorwaarden"
start: "Aan de slag"
home: "Startpagina"
remoteUserCaution: "Aangezien deze gebruiker van een externe server afkomstig is, kan de weergegeven informatie onvolledig zijn."
remoteUserCaution: "Aangezien deze gebruiker van een externe server afkomstig is,
kan de weergegeven informatie onvolledig zijn."
activity: "Activiteit"
images: "Afbeeldingen"
birthday: "Geboortedatum"
@ -280,7 +304,7 @@ disconnectedFromServer: "Verbinding met de server onderbroken."
inMb: "in megabytes"
pinnedNotes: "Vastgemaakte notitie"
userList: "Lijsten"
aboutMisskey: "Over Misskey"
aboutMisskey: "Over Calckey"
administrator: "Beheerder"
token: "Token"
securityKeyName: "Sleutelnaam"
@ -308,7 +332,7 @@ cropImageAsk: "Bijsnijdengevraagd"
file: "Bestanden"
_email:
_follow:
title: "volgde jou"
title: "Je hebt een nieuwe volger"
_mfm:
mention: "Vermelding"
quote: "Quote"
@ -367,7 +391,7 @@ _pages:
types:
array: "Lijsten"
_notification:
youWereFollowed: "volgde jou"
youWereFollowed: "volgt jou"
_types:
follow: "Volgend"
mention: "Vermelding"
@ -383,3 +407,278 @@ _deck:
tl: "Tijdlijn"
list: "Lijsten"
mentions: "Vermeldingen"
showLess: Sluiten
emoji: Emoji
selectList: Selecteer een lijst
selectAntenna: Selecteer een antenne
deleted: Verwijderd
editNote: Bewerk notitie
edited: 'Bewerkt om {date} {time}'
emojis: Emojis
emojiName: Emoji naam
emojiUrl: Emoji URL
addEmoji: Voeg toe
settingGuide: Aanbevolen instellingen
flagSpeakAsCat: Praat als een kat
accountMoved: 'Gebruiker is naar een nieuw account verhuisd:'
showEmojisInReactionNotifications: Toon emojis in reactie notificaties
selectWidget: Selecteer een widget
editWidgetsExit: Klaar
noThankYou: Nee bedankt
addInstance: Voeg een server toe
enableEmojiReactions: Schakel emoji reacties in
editWidgets: Bewerk widgets
thisYear: Jaar
thisMonth: Maand
registration: Registreren
_ffVisibility:
public: Openbaar
private: Privé
followers: Alleen zichtbaar voor volgers
noInstances: Er zijn geen servers
_signup:
almostThere: Bijna klaar
emailAddressInfo: Voer je emailadres in. Deze zal niet openbaar gemaakt worden.
_ad:
back: Terug
reduceFrequencyOfThisAd: Toon deze advertentie minder
pushNotificationNotSupported: Je browser of server ondersteunt geen pushmeldingen
sendPushNotificationReadMessage: Verwijder pushmeldingen wanneer de relevante meldingen
of berichten zijn gelezen
customEmojis: Custom emoji
cacheRemoteFiles: Cache externe bestanden
hiddenTags: Verborgen hashtags
enableRecommendedTimeline: Schakel aanbevolen tijdlijn in
_forgotPassword:
enterEmail: Voer het emailadres in dat je gebruikte om te registreren. Een link
waarmee je je wachtwoord opnieuw kunt instellen zal daar naartoe gestuurd worden.
jumpToReply: Spring naar Antwoord
newer: nieuwer
older: ouder
selectInstance: Kies een server
defaultValueIs: 'Standaard: {value}'
reload: Hernieuwen
doNothing: Negeren
today: Vandaag
inputNewDescription: Voer een nieuw onderschrift in
inputNewFolderName: Voer een nieuwe mapnaam in
circularReferenceFolder: De bestemmingsmap is een submap van de map die je wil verplaatsen.
hasChildFilesOrFolders: Omdat deze map niet leeg is, kan deze niet verwijderd worden.
enableLocalTimeline: Schakel lokale tijdlijn in
enableGlobalTimeline: Schakel globale tijdlijn in
enableRegistration: Nieuwe gebruikersregistratie inschakelen
invite: Uitnodigen
move: Verplaatsen
showAds: Toon advertenties
pushNotification: Pushmeldingen
_gallery:
my: Mijn Gallerij
reactionSetting: Reacties om te tonen in het reactie selectie menu
dayX: '{day}'
renoteMute: Demp boosts
reloadConfirm: Wil je de tijdlijn hernieuwen?
watch: Volgen
unwatch: Ontvolgen
accept: Accepteren
reject: Afwijzen
normal: Normaal
pages: Pagina's
integration: Integraties
connectService: Koppelen
monthX: '{month}'
yearX: '{year}'
instanceName: Servernaam
instanceDescription: Server omschrijving
maintainerName: Onderhouder
maintainerEmail: Onderhouder email
tosUrl: Algemene Voorwaarden URL
disconnectService: Ontkoppelen
unread: Ongelezen
manageGroups: Beheer groepen
subscribePushNotification: Pushmeldingen inschakelen
unsubscribePushNotification: Pushmeldingen uitschakelen
pushNotificationAlreadySubscribed: Pushmeldingen zijn al ingeschakeld
antennaSource: Antenne bron
antennaKeywords: Trefwoorden om naar te luisteren
antennaExcludeKeywords: Trefwoorden om te negeren
driveCapacityPerRemoteAccount: Schijfruimte per externe gebruiker
backgroundImageUrl: Achtergrondafbeelding URL
basicInfo: Basis informatie
pinnedUsers: Vastgezette gebruikers
pinnedPages: Vastgezette Pagina's
driveCapacityPerLocalAccount: Schijfruimte per lokale gebruiker
iconUrl: Icoon URL
bannerUrl: Banner afbeelding URL
manageAntennas: Beheer Antennes
name: Naam
notifyAntenna: Meld nieuwe posts
withFileAntenna: Alleen posts met bestanden
enableServiceworker: Schakel pushmeldingen voor je browser in
renoteUnmute: Ontdemp boosts
jumpToPrevious: Spring naar vorige
caseSensitive: Hoofdlettergevoelig
cw: Inhoudswaarschuwing
recaptcha: reCAPTCHA
enableRecaptcha: reCAPTCHA inschakelen
recaptchaSiteKey: Site sleutel
notFoundDescription: Een pagina met deze URL kon niet worden gevonden.
uploadFolder: Standaard map voor uploads
markAsReadAllNotifications: Markeer alle notificaties als gelezen
text: Tekst
enable: Inschakelen
or: Of
language: Taal
securityKey: Veiligheidssleutel
groupInvited: Je bent voor een groep uitgenodigd
docSource: Bron van dit document
createAccount: Maak account aan
groupName: Groepsnaam
members: Leden
messagingWithUser: Privé chat
messagingWithGroup: Groepschat
title: Titel
createGroup: Maak een groep
ownedGroups: Beheerde groepen
invites: Uitnodigingen
useOsNativeEmojis: Gebruik je standaard besturingssysteem Emojis
disableDrawer: Gebruik niet de lade-stijl menus
joinOrCreateGroup: Krijg een uitnodiging voor een groep of maak er zelf eentje aan.
noHistory: Geen geschiedenis beschikbaar
signinHistory: Inloggeschiedenis
available: Beschikbaar
unavailable: Niet beschikbaar
tooShort: Te kort
signinFailed: Niet gelukt om in te loggen. Gebruikersnaam of wachtwoord is incorrect.
tapSecurityKey: Tik je veiligheidssleutel aan
recaptchaSecretKey: Geheime sleutel
antennas: Antennes
antennaUsersDescription: Zet één gebruikersnaam per regel neer
notesAndReplies: Posts en antwoorden
withFiles: Met bestanden
popularUsers: Populaire gebruikers
recentlyUpdatedUsers: Recente actieve gebruikers
recentlyRegisteredUsers: Nieuwe gebruikers
recentlyDiscoveredUsers: Nieuwe ontdekte gebruikers
exploreUsersCount: Er zijn {count} gebruikers
about: Over
exploreFediverse: Ontdek de Fediverse
popularTags: Populaire labels
moderation: Moderatie
nUsersMentioned: Genoemd door {n} gebruikers
markAsReadAllUnreadNotes: Markeer alle posts als gelezen
markAsReadAllTalkMessages: Markeer alle berichten als gelezen
help: Help
inputMessageHere: Schrijf hier je bericht
close: Sluiten
group: Groep
groups: Groepen
newMessageExists: Er zijn nieuwe berichten
next: Volgende
noteOf: Post door {user}
inviteToGroup: Nodig uit voor de groep
quoteAttached: Quote
noMessagesYet: Nog geen berichten
weakPassword: Zwak wachtwoord
normalPassword: Middelmatig wachtwoord
strongPassword: Sterk wachtwoord
onlyOneFileCanBeAttached: Je kan maar één bestand toevoegen aan je bericht
invitationCode: Uitnodigingscode
checking: Controleren...
uiLanguage: Gebruikersinterface taal
aboutX: Over {x}
youHaveNoGroups: Je hebt geen groepen
disableAnimatedMfm: Schakel MFM met animaties uit
passwordMatched: Komt overeen
passwordNotMatched: Komt niet overeen
signinWith: Log in met {x}
fontSize: Tekstgrootte
openImageInNewTab: Open afbeeldingen in een nieuwe tab
category: Categorie
tags: Labels
existingAccount: Bestaand account
regenerate: Hernieuwen
dayOverDayChanges: Verschillen met gisteren
appearance: Uiterlijk
local: Lokaal
remote: Extern
total: Totaal
weekOverWeekChanges: Verschillen met vorige week
hcaptcha: hCaptcha
enableHcaptcha: hCaptcha inschakelen
hcaptchaSiteKey: Site sleutel
hcaptchaSecretKey: Geheime sleutel
withReplies: Met antwoorden
twoStepAuthentication: Tweefactorauthenticatie
moderator: Moderator
invitations: Uitnodigingen
tooLong: Te lang
doing: Verwerken...
silencedInstances: Gedempte Servers
cacheRemoteFilesDescription: Als deze instelling is uitgeschakeld, worden externe
bestanden direct van de externe server geladen. Het uitschakelen zal opslagruimte
verminderen, maar verkeer zal toenemen, omdat er geen thumbnails gemaakt zullen
worden.
flagSpeakAsCatDescription: Je posts zullen worden ge-'nyanified' als je in kat-modus
zit
avoidMultiCaptchaConfirm: Het gebruik van meerdere Captcha systemen kan voor storing
zorgen tussen ze. Wil je de andere actieve Captcha systemen uitschakelen? Als je
ze ingeschakeld wilt houden, klik op annuleren.
silence: Dempen
silenceConfirm: Weet je zeker dat je deze gebruiker wilt dempen?
unsilence: Ontdempen
unsilenceConfirm: Weet je zeker dat je het dempen van deze gebruiker ongedaan wilt
maken?
silenceThisInstance: Demp deze server
silenced: Gedempt
disablingTimelinesInfo: Beheerders en moderators zullen altijd toegang hebben tot
alle tijdlijnen, zelfs als deze uitgeschakeld zijn.
accountSettings: Account Instellingen
numberOfDays: Aantal dagen
hideThisNote: Verberg deze post
dashboard: Dashboard
accessibility: Toegankelijkheid
promotion: Gepromoot
promote: Promoten
objectStorage: Objectopslag
useObjectStorage: Gebruik objectopslag
objectStorageBaseUrl: Basis -URL
objectStorageUseSSLDesc: Schakel dit uit als je geen HTTPS voor je API connecties
gebruikt
objectStorageUseProxy: Verbind over Proxy
objectStorageUseProxyDesc: Schakel dit uit als je geen Proxy voor je API connecties
gebruikt
sounds: Geluiden
lastUsedDate: Laatst gebruikt op
installedDate: Geautoriseerd op
sort: Sorteren
output: Uitvoer
script: Script
popout: Pop-out
descendingOrder: Aflopend
showInPage: Toon in de pagina
chooseEmoji: Kies een emoji
ascendingOrder: Oplopend
volume: Volume
masterVolume: Master volume
details: Details
unableToProcess: Deze operatie kon niet worden voltooid
nothing: Niks te zien hier
scratchpad: Kladblok
recentUsed: Recentelijk gebruikt
install: Installeer
uninstall: Verwijderen
installedApps: Geautoriseerde Applicaties
state: Status
updateRemoteUser: Update externe gebruikersinformatie
listen: Luister
none: Geen
scratchpadDescription: Het kladblok is een omgeving voor AiScript experimenten. Je
kan hier schrijven, uitvoeren, en de resultaten bekijken van de interactie met Calckey.
disablePagesScript: Zet AiScript op Pages uit
deleteAllFiles: Verwijder alle bestanden
deleteAllFilesConfirm: Weet je zeker dat je alle bestanden wil verwijderen?
removeAllFollowing: Ontvolg alle gevolgde gebruikers
serverLogs: Server logboek
deleteAll: Verwijder alles
showFixedPostForm: Toon het post formulier bovenaan de tijdlijn
newNoteRecived: Er zijn nieuwe posts

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
---
_lang_: "Português"
headlineMisskey: "Uma rede ligada por notas"
introMisskey: "Bem-vindo! Misskey é um serviço de microblogue descentralizado de código aberto.\nCria \"notas\" e partilha o que te ocorre com todos à tua volta. 📡\nCom \"reações\" podes também expressar logo o que sentes às notas de todos. 👍\nExploremos um novo mundo! 🚀"
introMisskey: "Bem-vindo! Calckey é um serviço de microblogue descentralizado de código aberto.\nCria \"notas\" e partilha o que te ocorre com todos à tua volta. 📡\nCom \"reações\" podes também expressar logo o que sentes às notas de todos. 👍\nExploremos um novo mundo! 🚀"
monthAndDay: "{day}/{month}"
search: "Buscar"
notifications: "Notificações"
@ -139,7 +139,7 @@ settingGuide: "Guia de configuração"
cacheRemoteFiles: "Memória transitória de arquivos remotos"
cacheRemoteFilesDescription: "Se você desabilitar essa configuração, os arquivos remotos não serão armazenados em memória transitória e serão vinculados diretamente. Economiza o armazenamento do servidor, mas não gera miniaturas, o que aumenta o tráfego."
flagAsBot: "Marcar conta como robô"
flagAsBotDescription: "Se esta conta for operada por um programa, ative este sinalizador. Quando ativado, serve como um sinalizador para evitar o encadeamento de reações para outros programadores, e o manuseio do sistema do Misskey é adequado para bots."
flagAsBotDescription: "Se esta conta for operada por um programa, ative este sinalizador. Quando ativado, serve como um sinalizador para evitar o encadeamento de reações para outros programadores, e o manuseio do sistema do Calckey é adequado para bots."
flagAsCat: "Marcar conta como gato"
flagAsCatDescription: "Ative essa opção para marcar essa conta como gato."
flagShowTimelineReplies: "Mostrar respostas na linha de tempo"
@ -177,7 +177,6 @@ operations: "operar"
software: "Programas"
version: "versão"
metadata: "Metadados"
withNFiles: "{n} Um arquivo"
monitor: "monitor"
jobQueue: "Fila de trabalhos"
cpuAndMemory: "CPU e memória"
@ -199,7 +198,7 @@ noUsers: "Sem usuários"
editProfile: "Editar Perfil"
noteDeleteConfirm: "Deseja excluir esta nota?"
pinLimitExceeded: "Não consigo mais fixar"
intro: "A instalação do Misskey está completa! Crie uma conta de administrador."
intro: "A instalação do Calckey está completa! Crie uma conta de administrador."
done: "Concluído"
processing: "Em Progresso"
preview: "Pré-visualizar"
@ -377,7 +376,7 @@ exploreFediverse: "Explorar Fediverse"
popularTags: "Tags populares"
userList: "Listas"
about: "Informações"
aboutMisskey: "Sobre Misskey"
aboutMisskey: "Sobre Calckey"
administrator: "Administrador"
token: "Símbolo"
twoStepAuthentication: "Verificação em duas etapas"

87
locales/pt_BR.yml Normal file
View File

@ -0,0 +1,87 @@
username: Nome de usuário
ok: OK
_lang_: Inglês
headlineMisskey: Uma plataforma de mídia social descentralizada e de código aberto
que é gratuita para sempre! 🚀
search: Pesquisar
gotIt: Entendi!
introMisskey: Bem vinde! Calckey é uma plataforma de mídia social descentralizada
e de código aberto que é gratuita para sempre! 🚀
searchPlaceholder: Pesquise no Calckey
notifications: Notificações
password: Senha
forgotPassword: Esqueci a senha
cancel: Cancelar
noThankYou: Não, obrigade
save: Salvar
enterUsername: Insira nome de usuário
cw: Aviso de conteúdo
driveFileDeleteConfirm: Tem a certeza de que pretende apagar o arquivo "{name}"? O
arquivo será removido de todas as mensagens que o contenham como anexo.
deleteAndEdit: Deletar e editar
import: Importar
exportRequested: Você pediu uma exportação. Isso pode demorar um pouco. Será adicionado
ao seu Drive quando for completo.
note: Postar
notes: Postagens
deleteAndEditConfirm: Você tem certeza que quer deletar esse post e edita-lo? Você
vai perder todas as reações, impulsionamentos e respostas dele.
showLess: Fechar
importRequested: Você requisitou uma importação. Isso pode demorar um pouco.
listsDesc: Listas deixam você criar linhas do tempo com usuários específicos. Elas
podem ser acessadas pela página de linhas do tempo.
edited: 'Editado às {date} {time}'
sendMessage: Enviar uma mensagem
older: antigo
createList: Criar lista
loadMore: Carregar mais
mentions: Menções
importAndExport: Importar/Exportar Dados
files: Arquivos
lists: Listas
manageLists: Gerenciar listas
error: Erro
somethingHappened: Ocorreu um erro
retry: Tentar novamente
renotedBy: Impulsionado por {user}
noNotes: Nenhum post
noNotifications: Nenhuma notificação
instance: Servidor
settings: Configurações
basicSettings: Configurações Básicas
otherSettings: Outras Configurações
openInWindow: Abrir em janela
profile: Perfil
noAccountDescription: Esse usuário ainda não escreveu sua bio.
login: Entrar
loggingIn: Entrando
logout: Sair
signup: Criar conta
uploading: Enviando...
users: Usuários
addUser: Adicione um usuário
addInstance: Adicionar um servidor
cantFavorite: Não foi possível adicionar aos marcadores.
pin: Fixar no perfil
unpin: Desfixar do perfil
copyContent: Copiar conteúdos
copyLink: Copiar link
delete: Deletar
deleted: Deletado
editNote: Editar anotação
addToList: Adicionar a lista
copyUsername: Copiar nome de usuário
searchUser: Procurar por um usuário
reply: Responder
jumpToPrevious: Pular para o anterior
showMore: Mostrar mais
newer: novo
youGotNewFollower: seguiu você
mention: Mencionar
directNotes: Mensagens diretas
export: Exportar
unfollowConfirm: Você tem certez que deseja para de seguir {name}?
noLists: Você não possui nenhuma lista
following: Seguindo
followers: Seguidores
followsYou: Segue você

View File

@ -1,7 +1,7 @@
---
_lang_: "Română"
headlineMisskey: "O rețea conectată prin note"
introMisskey: "Bine ai venit! Misskey este un serviciu de microblogging open source și decentralizat.\nCreează \"note\" cu care să îți poți împărți gândurile cu oricine din jurul tău. 📡\nCu \"reacții\" îți poți expirma rapid părerea despre notele oricui. 👍\nHai să explorăm o lume nouă! 🚀"
introMisskey: "Bine ai venit! Calckey este un serviciu de microblogging open source și decentralizat.\nCreează \"note\" cu care să îți poți împărți gândurile cu oricine din jurul tău. 📡\nCu \"reacții\" îți poți expirma rapid părerea despre notele oricui. 👍\nHai să explorăm o lume nouă! 🚀"
monthAndDay: "{day}/{month}"
search: "Caută"
notifications: "Notificări"
@ -139,7 +139,7 @@ settingGuide: "Setări recomandate"
cacheRemoteFiles: "Ține fișierele externe in cache"
cacheRemoteFilesDescription: "Când această setare este dezactivată, fișierele externe sunt încărcate direct din instanța externă. Dezactivarea va scădea utilizarea spațiului de stocare, dar va crește traficul, deoarece thumbnail-urile nu vor fi generate."
flagAsBot: "Marchează acest cont ca bot"
flagAsBotDescription: "Activează această opțiune dacă acest cont este controlat de un program. Daca e activată, aceasta va juca rolul unui indicator pentru dezvoltatori pentru a preveni interacțiunea în lanțuri infinite cu ceilalți boți și ajustează sistemele interne al Misskey pentru a trata acest cont drept un bot."
flagAsBotDescription: "Activează această opțiune dacă acest cont este controlat de un program. Daca e activată, aceasta va juca rolul unui indicator pentru dezvoltatori pentru a preveni interacțiunea în lanțuri infinite cu ceilalți boți și ajustează sistemele interne al Calckey pentru a trata acest cont drept un bot."
flagAsCat: "Marchează acest cont ca pisică"
flagAsCatDescription: "Activează această opțiune dacă acest cont este o pisică."
flagShowTimelineReplies: "Arată răspunsurile în cronologie"
@ -177,7 +177,6 @@ operations: "Operațiuni"
software: "Software"
version: "Versiune"
metadata: "Metadata"
withNFiles: "{n} fișier(e)"
monitor: "Monitor"
jobQueue: "coada de job-uri"
cpuAndMemory: "CPU și memorie"
@ -199,7 +198,7 @@ noUsers: "Niciun utilizator"
editProfile: "Editează profilul"
noteDeleteConfirm: "Ești sigur că vrei să ștergi această notă?"
pinLimitExceeded: "Nu poți mai fixa mai multe note"
intro: "Misskey s-a instalat! Te rog crează un utilizator admin."
intro: "Calckey s-a instalat! Te rog crează un utilizator admin."
done: "Gata"
processing: "Se procesează"
preview: "Previzualizare"
@ -377,7 +376,7 @@ exploreFediverse: "Explorează Fediverse-ul"
popularTags: "Taguri populare"
userList: "Liste"
about: "Despre"
aboutMisskey: "Despre Misskey"
aboutMisskey: "Despre Calckey"
administrator: "Administrator"
token: "Token"
twoStepAuthentication: "Autentificare în doi pași"
@ -522,7 +521,7 @@ sort: "Sortează"
ascendingOrder: "Crescător"
descendingOrder: "Descrescător"
scratchpad: "Scratchpad"
scratchpadDescription: "Scratchpad-ul oferă un mediu de experimentare în AiScript. Poți scrie, executa și verifica rezultatele acestuia interacționând cu Misskey în el."
scratchpadDescription: "Scratchpad-ul oferă un mediu de experimentare în AiScript. Poți scrie, executa și verifica rezultatele acestuia interacționând cu Calckey în el."
output: "Ieșire"
script: "Script"
disablePagesScript: "Dezactivează AiScript în Pagini"

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
---
_lang_: "Slovenčina"
headlineMisskey: "Sieť prepojená poznámkami"
introMisskey: "Vitajte! Misskey je otvorená a decentralizovaná mikroblogovacia služba.\n\"Poznámkami\" môžete zdieľať svoje myšlienky so všetkými okolo. 📡\nPomocou \"reakcií\" môžete rýchlo vyjadri svoje pocity o každého poznámkach. 👍\nPoďte objavovať svet! 🚀"
introMisskey: "Vitajte! Calckey je otvorená a decentralizovaná mikroblogovacia služba.\n\"Poznámkami\" môžete zdieľať svoje myšlienky so všetkými okolo. 📡\nPomocou \"reakcií\" môžete rýchlo vyjadri svoje pocity o každého poznámkach. 👍\nPoďte objavovať svet! 🚀"
monthAndDay: "{day}. {month}."
search: "Hľadať"
notifications: "Oznámenia"
@ -139,7 +139,7 @@ settingGuide: "Odporúčané nastavenia"
cacheRemoteFiles: "Cachovanie vzdialených súborov"
cacheRemoteFilesDescription: "Zakázanie tohoto nastavenia spôsobí, že vzdialené súbory budú odkazované priamo, namiesto ukladania do cache. Ušetrí sa tak miesto na serveri, ale zvýši sa dátový tok, pretože sa negenerujú miniatúry."
flagAsBot: "Tento účet je bot"
flagAsBotDescription: "Ak je tento účet ovládaný programom, zaškrtnite túto voľbu. Ostatní uvidia, že je to bot a zabráni nekonečným interakciám s ďalšími botmi a upraví interné systémy Misskey, aby ho považoval za bota."
flagAsBotDescription: "Ak je tento účet ovládaný programom, zaškrtnite túto voľbu. Ostatní uvidia, že je to bot a zabráni nekonečným interakciám s ďalšími botmi a upraví interné systémy Calckey, aby ho považoval za bota."
flagAsCat: "Tento účet je mačka"
flagAsCatDescription: "Zvoľte túto voľbu, aby bol tento účet označený ako mačka."
flagShowTimelineReplies: "Zobraziť odpovede na poznámky v časovej osi"
@ -177,7 +177,6 @@ operations: "Operácie"
software: "Softvér"
version: "Verzia"
metadata: "Metadáta"
withNFiles: "{n} súbor(ov)"
monitor: "Monitor"
jobQueue: "Fronta úloh"
cpuAndMemory: "CPU a pamäť"
@ -199,7 +198,7 @@ noUsers: "Žiadni používatelia"
editProfile: "Upraviť profil"
noteDeleteConfirm: "Naozaj chcete odstrániť túto poznámku?"
pinLimitExceeded: "Ďalšie poznámky už nemôžete pripnúť."
intro: "Inštalácia Misskey je dokončená! Prosím vytvorte administrátora."
intro: "Inštalácia Calckey je dokončená! Prosím vytvorte administrátora."
done: "Hotovo"
processing: "Pracujem..."
preview: "Náhľad"
@ -378,7 +377,7 @@ exploreFediverse: "Objavovať Fediverzum"
popularTags: "Populárne značky"
userList: "Zoznamy"
about: "Informácie"
aboutMisskey: "O Misskey"
aboutMisskey: "O Calckey"
administrator: "Administrátor"
token: "Token"
twoStepAuthentication: "Dvojfaktorová autentifikácia"
@ -524,7 +523,7 @@ sort: "Zoradiť"
ascendingOrder: "Vzostupne"
descendingOrder: "Zostupne"
scratchpad: "Zápisník"
scratchpadDescription: "Zápisník poskytuje prostredia pre experimenty s AiScriptom. Môžete písať, spúšťať a skúšať vysledky pri interakcii s Misskey."
scratchpadDescription: "Zápisník poskytuje prostredia pre experimenty s AiScriptom. Môžete písať, spúšťať a skúšať vysledky pri interakcii s Calckey."
output: "Výstup"
script: "Skript"
disablePagesScript: "Vypnúť AiScript na stránkach"
@ -699,7 +698,7 @@ onlineUsersCount: "{n} používateľov je online"
nUsers: "{n} používateľov"
nNotes: "{n} poznámok"
sendErrorReports: "Poslať nahlásenie chyby"
sendErrorReportsDescription: "Keď je zapnuté, v prípade problému sa odošlú podrobné informácie o chybe do Misskey. Pomôžete tak zvýšiť kvalitu Misskey.\nTieto informácie zahŕňajú verziu vášho OS, použitý prehliadač, históriu aktivít, atď."
sendErrorReportsDescription: "Keď je zapnuté, v prípade problému sa odošlú podrobné informácie o chybe do Calckey. Pomôžete tak zvýšiť kvalitu Calckey.\nTieto informácie zahŕňajú verziu vášho OS, použitý prehliadač, históriu aktivít, atď."
myTheme: "Moja téma"
backgroundColor: "Pozadie"
accentColor: "Akcent"
@ -790,7 +789,7 @@ hashtags: "Hashtagy"
troubleshooting: "Riešenie problémov"
useBlurEffect: "Používať efekty rozmazania v UI"
learnMore: "Zistiť viac"
misskeyUpdated: "Misskey sa aktualizoval!"
misskeyUpdated: "Calckey sa aktualizoval!"
whatIsNew: "Čo je nové?"
translate: "Preložiť"
translatedFrom: "Preložené z {x}"
@ -966,8 +965,8 @@ _aboutMisskey:
contributors: "Hlavní prispievatelia"
allContributors: "Všetci prispievatelia"
source: "Zdrojový kód"
translation: "Preložiť Misskey"
donate: "Podporiť Misskey"
translation: "Preložiť Calckey"
donate: "Podporiť Calckey"
morePatrons: "Takisto oceňujeme podporu mnoých ďalších, ktorí tu nie sú uvedení. Ďakujeme! 🥰"
patrons: "Prispievatelia"
_nsfw:
@ -976,8 +975,8 @@ _nsfw:
force: "Skryť všetky médiá"
_mfm:
cheatSheet: "MFM Cheatsheet"
intro: "MFM je Misskey exkluzívny značkovací jazyk, ktorý sa dá používať na viacerých miestach. Tu môžete vidieť zoznam všetkej dostupnej MFM syntaxe."
dummy: "Misskey rozširuje svet Fediverza"
intro: "MFM je Calckey exkluzívny značkovací jazyk, ktorý sa dá používať na viacerých miestach. Tu môžete vidieť zoznam všetkej dostupnej MFM syntaxe."
dummy: "Calckey rozširuje svet Fediverza"
mention: "Zmienka"
mentionDescription: "Používateľa spomeniete použítím zavináča a mena používateľa"
hashtag: "Hashtag"
@ -1174,10 +1173,31 @@ _time:
minute: "min"
hour: "hod"
day: "dní"
_tutorial:
title: "How to use Calckey"
step1_1: "Welcome!"
step1_2: "Let's get you set up. You'll be up and running in no time!"
step2_1: "First, please fill out your profile."
step2_2: "Providing some information about who you are will make it easier for others to tell if they want to see your notes or follow you."
step3_1: "Now time to follow some people!"
step3_2: "Your home and social timelines are based off of who you follow, so try following a couple accounts to get started.\nClick the plus circle on the top right of a profile to follow them."
step4_1: "Let's get you out there."
step4_2: "For your first post, some people like to made a {introduction} post or a simple \"Hello world!\""
step5_1: "Timelines, timelines everywhere!"
step5_2: "Your instance has {timelines} different timelines enabled."
step5_3: "The Home {icon} timeline is where you can see posts from your followers."
step5_4: "The Local {icon} timeline is where you can see posts from everyone else on this instance."
step5_5: "The Recommended {icon} timeline is where you can see posts from instances the admins recommend."
step5_6: "The Social {icon} timeline is where you can see posts from friends of your followers."
step5_7: "The Global {icon} timeline is where you can see posts from every other connected instance."
step6_1: "So, what is this place?"
step6_2: "Well, you didn't just join Calckey. You joined a portal to the Fediverse, an interconnected network of thousands of servers, called \"instances\"."
step6_3: "Each server works in different ways, and not all servers run Calckey. This one does though! It's a bit complicated, but you'll get the hang of it in no time."
step6_4: "Now go, explore, and have fun!"
_2fa:
alreadyRegistered: "Už ste zaregistrovali 2-faktorové autentifikačné zariadenie."
registerDevice: "Registrovať nové zariadenie"
registerKey: "Registrovať bezpečnostný kľúč"
registerTOTP: "Registrovať nové zariadenie"
registerSecurityKey: "Registrovať bezpečnostný kľúč"
step1: "Najprv si nainštalujte autentifikačnú aplikáciu (napríklad {a} alebo {b}) na svoje zariadenie."
step2: "Potom, naskenujte QR kód zobrazený na obrazovke."
step2Url: "Do aplikácie zadajte nasledujúcu URL adresu:"

View File

@ -1,7 +1,7 @@
---
_lang_: "Svenska"
headlineMisskey: "Ett nätverk kopplat av noter"
introMisskey: "Välkommen! Misskey är en öppen och decentraliserad mikrobloggningstjänst.\nSkapa en \"not\" och dela dina tankar med alla runtomkring dig. 📡\nMed \"reaktioner\" kan du snabbt uttrycka dina känslor kring andras noter.👍\nLåt oss utforska en nya värld!🚀"
introMisskey: "Välkommen! Calckey är en öppen och decentraliserad mikrobloggningstjänst.\nSkapa en \"not\" och dela dina tankar med alla runtomkring dig. 📡\nMed \"reaktioner\" kan du snabbt uttrycka dina känslor kring andras noter.👍\nLåt oss utforska en nya värld!🚀"
monthAndDay: "{day}/{month}"
search: "Sök"
notifications: "Notifikationer"
@ -176,7 +176,6 @@ operations: "Operationer"
software: "Mjukvara"
version: "Version"
metadata: "Metadata"
withNFiles: "{n} fil(er)"
monitor: "Övervakning"
jobQueue: "Jobbkö"
cpuAndMemory: "CPU och minne"
@ -198,7 +197,7 @@ noUsers: "Det finns inga användare"
editProfile: "Redigera profil"
noteDeleteConfirm: "Är du säker på att du vill ta bort denna not?"
pinLimitExceeded: "Du kan inte fästa fler noter"
intro: "Misskey har installerats! Vänligen skapa en adminanvändare."
intro: "Calckey har installerats! Vänligen skapa en adminanvändare."
done: "Klar"
processing: "Bearbetar..."
preview: "Förhandsvisning"

View File

@ -1,7 +1,7 @@
---
_lang_: "ภาษาไทย"
headlineMisskey: "เชื่อมต่อเครือข่ายโดยโน้ต"
introMisskey: "ยินดีต้อนรับจ้าาา! Misskey เป็นบริการไมโครบล็อกโอเพ่นซอร์ส แบบการกระจายอำนาจ\nสร้าง \"โน้ต\" เพื่อแบ่งปันความคิดของคุณกับทุกคนรอบตัวคุณกันเถอะ 📡\nด้วยการ \"รีแอคชั่นผู้คน\" คุณยังสามารถแสดงความรู้สึกของคุณเกี่ยวกับบันทึกของทุกคนได้อย่างรวดเร็ว 👍\n\nแล้วมาท่องสำรวจโลกใบใหม่กันเถอะ! 🚀"
introMisskey: "ยินดีต้อนรับจ้าาา! Calckey เป็นบริการไมโครบล็อกโอเพ่นซอร์ส แบบการกระจายอำนาจ\nสร้าง \"โน้ต\" เพื่อแบ่งปันความคิดของคุณกับทุกคนรอบตัวคุณกันเถอะ 📡\nด้วยการ \"รีแอคชั่นผู้คน\" คุณยังสามารถแสดงความรู้สึกของคุณเกี่ยวกับบันทึกของทุกคนได้อย่างรวดเร็ว 👍\n\nแล้วมาท่องสำรวจโลกใบใหม่กันเถอะ! 🚀"
monthAndDay: "{เดือน}/{วัน}"
search: "ค้นหา"
notifications: "การเเจ้งเตือน"
@ -139,7 +139,7 @@ settingGuide: "การตั้งค่าที่แนะนำ"
cacheRemoteFiles: "แคชไฟล์ระยะไกล"
cacheRemoteFilesDescription: "เมื่อปิดใช้งานการตั้งค่านี้ ไฟล์ระยะไกลนั้นจะถูกโหลดโดยตรงจากอินสแตนซ์ระยะไกล แต่กรณีการปิดใช้งานนี้จะช่วยลดปริมาณการใช้พื้นที่จัดเก็บข้อมูล แต่เพิ่มปริมาณการใช้งาน เพราะเนื่องจากจะไม่มีการสร้างภาพขนาดย่อ"
flagAsBot: "ทำเครื่องหมายบอกว่าบัญชีนี้เป็นบอท"
flagAsBotDescription: "การเปิดใช้งานตัวเลือกนี้หากบัญชีนี้ถูกควบคุมโดยนักเขียนโปรแกรม หรือ ถ้าหากเปิดใช้งาน มันจะทำหน้าที่เป็นแฟล็กสำหรับนักพัฒนารายอื่นๆ และเพื่อป้องกันการโต้ตอบแบบไม่มีที่สิ้นสุดกับบอทตัวอื่นๆ และยังสามารถปรับเปลี่ยนระบบภายในของ Misskey เพื่อปฏิบัติต่อบัญชีนี้เป็นบอท"
flagAsBotDescription: "การเปิดใช้งานตัวเลือกนี้หากบัญชีนี้ถูกควบคุมโดยนักเขียนโปรแกรม หรือ ถ้าหากเปิดใช้งาน มันจะทำหน้าที่เป็นแฟล็กสำหรับนักพัฒนารายอื่นๆ และเพื่อป้องกันการโต้ตอบแบบไม่มีที่สิ้นสุดกับบอทตัวอื่นๆ และยังสามารถปรับเปลี่ยนระบบภายในของ Calckey เพื่อปฏิบัติต่อบัญชีนี้เป็นบอท"
flagAsCat: "ทำเครื่องหมายบอกว่าบัญชีนี้เป็นแมว"
flagAsCatDescription: "การเปิดใช้งานตัวเลือกนี้เพื่อทำเครื่องหมายบอกว่าบัญชีนี้เป็นแมว"
flagShowTimelineReplies: "แสดงตอบกลับ ในไทม์ไลน์"
@ -177,7 +177,6 @@ operations: "ดำเนินการ"
software: "ซอฟต์แวร์"
version: "เวอร์ชั่น"
metadata: "ข้อมูลเมตา"
withNFiles: "{n} ไฟล์(s)"
monitor: "มอนิเตอร์"
jobQueue: "คิวงาน"
cpuAndMemory: "ซีพียู และ หน่วยความจำ"
@ -199,7 +198,7 @@ noUsers: "ไม่พบผู้ใช้งาน"
editProfile: "แก้ไขโปรไฟล์"
noteDeleteConfirm: "นายแน่ใจแล้วหรอว่าต้องการลบโน้ตนี้นะ?"
pinLimitExceeded: "คุณไม่สามารถปักหมุดโน้ตเพิ่มเติมใดๆได้อีก"
intro: "การติดตั้ง Misskey เสร็จสิ้นแล้วนะ! โปรดสร้างผู้ใช้งานที่เป็นผู้ดูแลระบบ"
intro: "การติดตั้ง Calckey เสร็จสิ้นแล้วนะ! โปรดสร้างผู้ใช้งานที่เป็นผู้ดูแลระบบ"
done: "เสร็จสิ้น"
processing: "กำลังประมวลผล..."
preview: "แสดงตัวอย่าง"
@ -378,7 +377,7 @@ exploreFediverse: "สำรวจเฟดดิเวิร์ส"
popularTags: "แท็กยอดนิยม"
userList: "รายการ"
about: "เกี่ยวกับ"
aboutMisskey: "เกี่ยวกับ Misskey"
aboutMisskey: "เกี่ยวกับ Calckey"
administrator: "ผู้ดูแลระบบ"
token: "โทเค็น"
twoStepAuthentication: "ยืนยันตัวตน 2 ชั้น"
@ -524,7 +523,7 @@ sort: "เรียงลำดับ"
ascendingOrder: "เรียงจากน้อยไปมาก"
descendingOrder: "เรียงจากมากไปน้อย"
scratchpad: "กระดานทดลอง"
scratchpadDescription: "Scratchpad เป็นการจัดเตรียมสภาพแวดล้อมสำหรับการทดลอง AiScript แต่คุณสามารถเขียน ดำเนินการ และตรวจสอบผลลัพธ์ของการโต้ตอบกับ Misskey มันได้ด้วยนะ"
scratchpadDescription: "Scratchpad เป็นการจัดเตรียมสภาพแวดล้อมสำหรับการทดลอง AiScript แต่คุณสามารถเขียน ดำเนินการ และตรวจสอบผลลัพธ์ของการโต้ตอบกับ Calckey มันได้ด้วยนะ"
output: "เอาท์พุต"
script: "สคริปต์"
disablePagesScript: "ปิดการใช้งาน AiScript บนเพจ"
@ -700,7 +699,7 @@ onlineUsersCount: "{n} ผู้ใช้คนนี้กำลังออน
nUsers: "{n} ผู้ใช้งาน"
nNotes: "{n} โน้ต"
sendErrorReports: "ส่งรายงานว่าข้อผิดพลาด"
sendErrorReportsDescription: "เมื่อเปิดใช้งาน ข้อมูลข้อผิดพลาดโดยรายละเอียดนั้นจะถูกแชร์ให้กับ Misskey เมื่อเกิดปัญหา ซึ่งช่วยปรับปรุงคุณภาพของ Misskey\nซึ่งจะรวมถึงข้อมูล เช่น เวอร์ชั่นของระบบปฏิบัติการ เบราว์เซอร์ที่คุณใช้ กิจกรรมของคุณใน Misskey เป็นต้น"
sendErrorReportsDescription: "เมื่อเปิดใช้งาน ข้อมูลข้อผิดพลาดโดยรายละเอียดนั้นจะถูกแชร์ให้กับ Calckey เมื่อเกิดปัญหา ซึ่งช่วยปรับปรุงคุณภาพของ Calckey\nซึ่งจะรวมถึงข้อมูล เช่น เวอร์ชั่นของระบบปฏิบัติการ เบราว์เซอร์ที่คุณใช้ กิจกรรมของคุณใน Calckey เป็นต้น"
myTheme: "ธีมของฉัน"
backgroundColor: "ภาพพื้นหลัง"
accentColor: "รูปแบบสี"
@ -791,7 +790,7 @@ hashtags: "แฮชแท็ก"
troubleshooting: "แก้ปัญหา"
useBlurEffect: "ใช้เอฟเฟกต์เบลอใน UI"
learnMore: "แสดงให้ดูหน่อย"
misskeyUpdated: "Misskey ได้รับการอัปเดตแล้ว!"
misskeyUpdated: "Calckey ได้รับการอัปเดตแล้ว!"
whatIsNew: "แสดงการเปลี่ยนแปลง"
translate: "แปลภาษา"
translatedFrom: "แปลมาจาก {x}"
@ -971,8 +970,8 @@ _aboutMisskey:
contributors: "ผู้สนับสนุนหลัก"
allContributors: "ผู้มีส่วนร่วมทั้งหมด"
source: "ซอร์สโค้ด"
translation: "รับแปลภาษา Misskey"
donate: "บริจาคให้กับ Misskey"
translation: "รับแปลภาษา Calckey"
donate: "บริจาคให้กับ Calckey"
morePatrons: "เราขอขอบคุณสำหรับความช่วยเหลือจากผู้ช่วยอื่นๆ ที่ไม่ได้ระบุไว้ที่นี่นะ ขอขอบคุณ! 🥰"
patrons: "สมาชิกพันธมิตร"
_nsfw:
@ -981,8 +980,8 @@ _nsfw:
force: "ซ่อนสื่อทั้งหมด"
_mfm:
cheatSheet: "โค้ด MFM Cheat Sheet"
intro: "MFM เป็นภาษามาร์กอัปพิเศษเฉพาะของ Misskey ที่สามารถใช้ได้ในหลายที่ คุณยังสามารถดูรายการไวยากรณ์ MFM ที่มีอยู่ทั้งหมดได้ที่นี่นะ"
dummy: "Misskey ขยายโลกของ Fediverse"
intro: "MFM เป็นภาษามาร์กอัปพิเศษเฉพาะของ Calckey ที่สามารถใช้ได้ในหลายที่ คุณยังสามารถดูรายการไวยากรณ์ MFM ที่มีอยู่ทั้งหมดได้ที่นี่นะ"
dummy: "Calckey ขยายโลกของ Fediverse"
mention: "กล่าวถึง"
mentionDescription: "คุณสามารถระบุผู้ใช้โดยใช้ At-Symbol และชื่อผู้ใช้ได้นะ"
hashtag: "แฮชแท็ก"

View File

@ -1,6 +1,6 @@
---
_lang_: "Türkçe"
introMisskey: "Açık kaynaklı bir dağıtılmış mikroblog hizmeti olan Misskey'e hoş geldiniz.\nMisskey, neler olup bittiğini paylaşmak ve herkese sizden bahsetmek için \"notlar\" oluşturmanıza olanak tanıyan, açık kaynaklı, dağıtılmış bir mikroblog hizmetidir.\nHerkesin notlarına kendi tepkilerinizi hızlıca eklemek için \"Tepkiler\" özelliğini de kullanabilirsiniz👍.\nYeni bir dünyayı keşfedin🚀."
introMisskey: "Açık kaynaklı bir dağıtılmış mikroblog hizmeti olan Calckey'e hoş geldiniz.\nMisskey, neler olup bittiğini paylaşmak ve herkese sizden bahsetmek için \"notlar\" oluşturmanıza olanak tanıyan, açık kaynaklı, dağıtılmış bir mikroblog hizmetidir.\nHerkesin notlarına kendi tepkilerinizi hızlıca eklemek için \"Tepkiler\" özelliğini de kullanabilirsiniz👍.\nYeni bir dünyayı keşfedin🚀."
monthAndDay: "{month}Ay {day}Gün"
search: "Arama"
notifications: "Bildirim"

View File

@ -1,7 +1,7 @@
---
_lang_: "Українська"
headlineMisskey: "Мережа об'єднана записами"
introMisskey: "Ласкаво просимо! Misskey - децентралізована служба мікроблогів з відкритим кодом.\nСтворюйте \"нотатки\", щоб поділитися тим, що відбувається, і розповісти всім про себе 📡\nЗа допомогою \"реакцій\" ви також можете швидко висловити свої почуття щодо нотаток інших 👍\nДосліджуймо новий світ! 🚀"
introMisskey: "Ласкаво просимо! Calckey - децентралізована служба мікроблогів з відкритим кодом.\nСтворюйте \"нотатки\", щоб поділитися тим, що відбувається, і розповісти всім про себе 📡\nЗа допомогою \"реакцій\" ви також можете швидко висловити свої почуття щодо нотаток інших 👍\nДосліджуймо новий світ! 🚀"
monthAndDay: "{month}/{day}"
search: "Пошук"
notifications: "Сповіщення"
@ -139,7 +139,7 @@ settingGuide: "Рекомендована конфігурація"
cacheRemoteFiles: "Кешувати дані з інших інстансів"
cacheRemoteFilesDescription: "Якщо кешування вимкнено, віддалені файли завантажуються безпосередньо з віддаленого інстансу. Це зменшує використання сховища, але збільшує трафік, оскільки не генеруются ескізи."
flagAsBot: "Акаунт бота"
flagAsBotDescription: "Ввімкніть якщо цей обліковий запис використовується ботом. Ця опція позначить обліковий запис як бота. Це потрібно щоб виключити безкінечну інтеракцію між ботами а також відповідного підлаштування Misskey."
flagAsBotDescription: "Ввімкніть якщо цей обліковий запис використовується ботом. Ця опція позначить обліковий запис як бота. Це потрібно щоб виключити безкінечну інтеракцію між ботами а також відповідного підлаштування Calckey."
flagAsCat: "Акаунт кота"
flagAsCatDescription: "Ввімкніть, щоб позначити, що обліковий запис є котиком."
flagShowTimelineReplies: "Показувати відповіді на нотатки на часовій шкалі"
@ -177,7 +177,6 @@ operations: "Операції"
software: "Програмне забезпечення"
version: "Версія"
metadata: "Метадані"
withNFiles: "файли: {n}"
monitor: "Монітор"
jobQueue: "Черга завдань"
cpuAndMemory: "ЦП та пам'ять"
@ -199,7 +198,7 @@ noUsers: "Немає користувачів"
editProfile: "Редагувати обліковий запис"
noteDeleteConfirm: "Ви дійсно хочете видалити цей запис?"
pinLimitExceeded: "Більше записів не можна закріпити"
intro: "Встановлення Misskey завершено! Будь ласка, створіть обліковий запис адміністратора."
intro: "Встановлення Calckey завершено! Будь ласка, створіть обліковий запис адміністратора."
done: "Готово"
processing: "Обробка"
preview: "Попередній перегляд"
@ -377,7 +376,7 @@ exploreFediverse: "Огляд федіверсу"
popularTags: "Популярні теги"
userList: "Списки"
about: "Інформація"
aboutMisskey: "Про Misskey"
aboutMisskey: "Про Calckey"
administrator: "Адмін"
token: "Токен"
twoStepAuthentication: "Двохфакторна аутентифікація"
@ -522,7 +521,7 @@ sort: "Сортування"
ascendingOrder: "За зростанням"
descendingOrder: "За спаданням"
scratchpad: "Чернетка"
scratchpadDescription: "Scratchpad надає середовище для експериментів з AiScript. Ви можете писати, виконувати його і тестувати взаємодію з Misskey."
scratchpadDescription: "Scratchpad надає середовище для експериментів з AiScript. Ви можете писати, виконувати його і тестувати взаємодію з Calckey."
output: "Вихід"
script: "Скрипт"
disablePagesScript: "Вимкнути AiScript на Сторінках"
@ -695,7 +694,7 @@ onlineUsersCount: "{n} користувачів онлайн"
nUsers: "{n} Користувачів"
nNotes: "{n} Записів"
sendErrorReports: "Надіслати звіт про помилки"
sendErrorReportsDescription: "При увімкненні детальна інформація про помилки буде надана Misskey у разі виникнення проблем, що дасть можливість покращити Misskey."
sendErrorReportsDescription: "При увімкненні детальна інформація про помилки буде надана Calckey у разі виникнення проблем, що дасть можливість покращити Calckey."
myTheme: "Моя тема"
backgroundColor: "Фон"
accentColor: "Акцент"
@ -761,8 +760,8 @@ _aboutMisskey:
contributors: "Головні помічники"
allContributors: "Всі помічники"
source: "Вихідний код"
translation: "Перекладати Misskey"
donate: "Пожертвувати Misskey"
translation: "Перекладати Calckey"
donate: "Пожертвувати Calckey"
morePatrons: "Ми дуже цінуємо підтримку багатьох інших помічників, не перелічених тут. Дякуємо! 🥰"
patrons: "Підтримали"
_nsfw:
@ -771,8 +770,8 @@ _nsfw:
force: "Приховувати всі медіа файли"
_mfm:
cheatSheet: " Довідка MFM"
intro: "MFM це ексклюзивна мова розмітки тексту в Misskey, яку можна використовувати в багатьох місцях. Тут ви можете переглянути приклади її синтаксису."
dummy: "Misskey розширює світ Федіверсу"
intro: "MFM це ексклюзивна мова розмітки тексту в Calckey, яку можна використовувати в багатьох місцях. Тут ви можете переглянути приклади її синтаксису."
dummy: "Calckey розширює світ Федіверсу"
mention: "Згадка"
mentionDescription: "За допомогою знака \"@\" перед ім'ям можна згадати конкретного користувача."
hashtag: "Хештеґ"
@ -960,7 +959,7 @@ _tutorial:
step6_3: "Кожен сервер працює по-своєму, і не на всіх серверах працює Calckey. Але цей працює! Це трохи складно, але ви швидко розберетеся"
step6_4: "Тепер ідіть, вивчайте і розважайтеся!"
_2fa:
registerKey: "Зареєструвати новий ключ безпеки"
registerSecurityKey: "Зареєструвати новий ключ безпеки"
_permissions:
"read:account": "Переглядати дані профілю"
"write:account": "Змінити дані акаунту"

View File

@ -1,7 +1,7 @@
---
_lang_: "Tiếng Việt"
headlineMisskey: "Mạng xã hội liên hợp"
introMisskey: "Xin chào! Misskey là một nền tảng tiểu blog phi tập trung mã nguồn mở.\nViết \"tút\" để chia sẻ những suy nghĩ của bạn 📡\nBằng \"biểu cảm\", bạn có thể bày tỏ nhanh chóng cảm xúc của bạn với các tút 👍\nHãy khám phá một thế giới mới! 🚀"
introMisskey: "Xin chào! Calckey là một nền tảng tiểu blog phi tập trung mã nguồn mở.\nViết \"tút\" để chia sẻ những suy nghĩ của bạn 📡\nBằng \"biểu cảm\", bạn có thể bày tỏ nhanh chóng cảm xúc của bạn với các tút 👍\nHãy khám phá một thế giới mới! 🚀"
monthAndDay: "{day} tháng {month}"
search: "Tìm kiếm"
notifications: "Thông báo"
@ -139,7 +139,7 @@ settingGuide: "Cài đặt đề xuất"
cacheRemoteFiles: "Tập tin cache từ xa"
cacheRemoteFilesDescription: "Khi tùy chọn này bị tắt, các tập tin từ xa sẽ được tải trực tiếp từ máy chủ khác. Điều này sẽ giúp giảm dung lượng lưu trữ nhưng lại tăng lưu lượng truy cập, vì hình thu nhỏ sẽ không được tạo."
flagAsBot: "Đánh dấu đây là tài khoản bot"
flagAsBotDescription: "Bật tùy chọn này nếu tài khoản này được kiểm soát bởi một chương trình. Nếu được bật, nó sẽ được đánh dấu để các nhà phát triển khác ngăn chặn chuỗi tương tác vô tận với các bot khác và điều chỉnh hệ thống nội bộ của Misskey để coi tài khoản này như một bot."
flagAsBotDescription: "Bật tùy chọn này nếu tài khoản này được kiểm soát bởi một chương trình. Nếu được bật, nó sẽ được đánh dấu để các nhà phát triển khác ngăn chặn chuỗi tương tác vô tận với các bot khác và điều chỉnh hệ thống nội bộ của Calckey để coi tài khoản này như một bot."
flagAsCat: "Tài khoản này là mèo"
flagAsCatDescription: "Bật tùy chọn này để đánh dấu tài khoản là một con mèo."
flagShowTimelineReplies: "Hiện lượt trả lời trong bảng tin"
@ -177,7 +177,6 @@ operations: "Vận hành"
software: "Phần mềm"
version: "Phiên bản"
metadata: "Metadata"
withNFiles: "{n} tập tin"
monitor: "Giám sát"
jobQueue: "Công việc chờ xử lý"
cpuAndMemory: "CPU và Dung lượng"
@ -199,7 +198,7 @@ noUsers: "Chưa có ai"
editProfile: "Sửa hồ sơ"
noteDeleteConfirm: "Bạn có chắc muốn xóa tút này?"
pinLimitExceeded: "Bạn đã đạt giới hạn số lượng tút có thể ghim"
intro: "Đã cài đặt Misskey! Xin hãy tạo tài khoản admin."
intro: "Đã cài đặt Calckey! Xin hãy tạo tài khoản admin."
done: "Xong"
processing: "Đang xử lý"
preview: "Xem trước"
@ -524,7 +523,7 @@ sort: "Sắp xếp"
ascendingOrder: "Tăng dần"
descendingOrder: "Giảm dần"
scratchpad: "Scratchpad"
scratchpadDescription: "Scratchpad cung cấp môi trường cho các thử nghiệm AiScript. Bạn có thể viết, thực thi và kiểm tra kết quả tương tác với Misskey trong đó."
scratchpadDescription: "Scratchpad cung cấp môi trường cho các thử nghiệm AiScript. Bạn có thể viết, thực thi và kiểm tra kết quả tương tác với Calckey trong đó."
output: "Nguồn ra"
script: "Kịch bản"
disablePagesScript: "Tắt AiScript trên Trang"
@ -700,7 +699,7 @@ onlineUsersCount: "{n} người đang online"
nUsers: "{n} Người"
nNotes: "{n} Tút"
sendErrorReports: "Báo lỗi"
sendErrorReportsDescription: "Khi được bật, thông tin chi tiết về lỗi sẽ được chia sẻ với Misskey khi xảy ra sự cố, giúp nâng cao chất lượng của Misskey.\nBao gồm thông tin như phiên bản hệ điều hành của bạn, trình duyệt bạn đang sử dụng, hoạt động của bạn trong Misskey, v.v."
sendErrorReportsDescription: "Khi được bật, thông tin chi tiết về lỗi sẽ được chia sẻ với Calckey khi xảy ra sự cố, giúp nâng cao chất lượng của Calckey.\nBao gồm thông tin như phiên bản hệ điều hành của bạn, trình duyệt bạn đang sử dụng, hoạt động của bạn trong Calckey, v.v."
myTheme: "Theme của tôi"
backgroundColor: "Màu nền"
accentColor: "Màu phụ"
@ -791,7 +790,7 @@ hashtags: "Hashtag"
troubleshooting: "Khắc phục sự cố"
useBlurEffect: "Dùng hiệu ứng làm mờ trong giao diện"
learnMore: "Tìm hiểu thêm"
misskeyUpdated: "Misskey vừa được cập nhật!"
misskeyUpdated: "Calckey vừa được cập nhật!"
whatIsNew: "Hiện những thay đổi"
translate: "Dịch"
translatedFrom: "Dịch từ {x}"
@ -971,8 +970,8 @@ _aboutMisskey:
contributors: "Những người đóng góp nổi bật"
allContributors: "Toàn bộ người đóng góp"
source: "Mã nguồn"
translation: "Dịch Misskey"
donate: "Ủng hộ Misskey"
translation: "Dịch Calckey"
donate: "Ủng hộ Calckey"
morePatrons: "Chúng tôi cũng trân trọng sự hỗ trợ của nhiều người đóng góp khác không được liệt kê ở đây. Cảm ơn! 🥰"
patrons: "Người ủng hộ"
_nsfw:
@ -981,8 +980,8 @@ _nsfw:
force: "Ẩn mọi media"
_mfm:
cheatSheet: "MFM Cheatsheet"
intro: "MFM là ngôn ngữ phát triển độc quyền của Misskey có thể được sử dụng ở nhiều nơi. Tại đây bạn có thể xem danh sách tất cả các cú pháp MFM có sẵn."
dummy: "Misskey mở rộng thế giới Fediverse"
intro: "MFM là ngôn ngữ phát triển độc quyền của Calckey có thể được sử dụng ở nhiều nơi. Tại đây bạn có thể xem danh sách tất cả các cú pháp MFM có sẵn."
dummy: "Calckey mở rộng thế giới Fediverse"
mention: "Nhắc đến"
mentionDescription: "Bạn có thể nhắc đến ai đó bằng cách sử dụng @tên người dùng."
hashtag: "Hashtag"
@ -1179,10 +1178,31 @@ _time:
minute: "phút"
hour: "giờ"
day: "ngày"
_tutorial:
title: "How to use Calckey"
step1_1: "Welcome!"
step1_2: "Let's get you set up. You'll be up and running in no time!"
step2_1: "First, please fill out your profile."
step2_2: "Providing some information about who you are will make it easier for others to tell if they want to see your notes or follow you."
step3_1: "Now time to follow some people!"
step3_2: "Your home and social timelines are based off of who you follow, so try following a couple accounts to get started.\nClick the plus circle on the top right of a profile to follow them."
step4_1: "Let's get you out there."
step4_2: "For your first post, some people like to made a {introduction} post or a simple \"Hello world!\""
step5_1: "Timelines, timelines everywhere!"
step5_2: "Your instance has {timelines} different timelines enabled."
step5_3: "The Home {icon} timeline is where you can see posts from your followers."
step5_4: "The Local {icon} timeline is where you can see posts from everyone else on this instance."
step5_5: "The Recommended {icon} timeline is where you can see posts from instances the admins recommend."
step5_6: "The Social {icon} timeline is where you can see posts from friends of your followers."
step5_7: "The Global {icon} timeline is where you can see posts from every other connected instance."
step6_1: "So, what is this place?"
step6_2: "Well, you didn't just join Calckey. You joined a portal to the Fediverse, an interconnected network of thousands of servers, called \"instances\"."
step6_3: "Each server works in different ways, and not all servers run Calckey. This one does though! It's a bit complicated, but you'll get the hang of it in no time."
step6_4: "Now go, explore, and have fun!"
_2fa:
alreadyRegistered: "Bạn đã đăng ký thiết bị xác minh 2 bước."
registerDevice: "Đăng ký một thiết bị"
registerKey: "Đăng ký một mã bảo vệ"
registerTOTP: "Đăng ký một thiết bị"
registerSecurityKey: "Đăng ký một mã bảo vệ"
step1: "Trước tiên, hãy cài đặt một ứng dụng xác minh (chẳng hạn như {a} hoặc {b}) trên thiết bị của bạn."
step2: "Sau đó, quét mã QR hiển thị trên màn hình này."
step2Url: "Bạn cũng có thể nhập URL này nếu sử dụng một chương trình máy tính:"

View File

@ -107,6 +107,8 @@ clickToShow: "点击以显示"
sensitive: "敏感内容"
add: "添加"
reaction: "回应"
enableEmojiReaction: "启用表情符号回应"
showEmojisInReactionNotifications: "在回应通知中显示表情符号"
reactionSetting: "在选择器中显示的回应"
reactionSettingDescription2: "拖动重新排序,单击删除,点击 + 添加。"
rememberNoteVisibility: "保存上次设置的可见性"
@ -179,7 +181,6 @@ operations: "操作"
software: "软件"
version: "版本"
metadata: "元数据"
withNFiles: "{n}个文件"
monitor: "服务器状态"
jobQueue: "作业队列"
cpuAndMemory: "CPU和内存"
@ -1007,9 +1008,9 @@ _mfm:
blockCode: "代码(块)"
blockCodeDescription: "语法高亮显示整块程序代码。"
inlineMath: "数学公式(内嵌)"
inlineMathDescription: "显示内嵌的KaTex公式。"
inlineMathDescription: "显示内嵌的KaTeX公式。"
blockMath: "数学公式(块)"
blockMathDescription: "显示整块的多行KaTex数学公式。"
blockMathDescription: "显示整块的KaTeX数学公式。"
quote: "引用"
quoteDescription: "可以用来表示引用的内容。"
emoji: "自定义表情符号"
@ -1068,6 +1069,8 @@ _channel:
following: "正在关注"
usersCount: "有{n}人参与"
notesCount: "有{n}个帖子"
nameAndDescription: "名称与描述"
nameOnly: "仅名称"
_menuDisplay:
sideFull: "横向"
sideIcon: "横向(图标)"
@ -1207,8 +1210,8 @@ _tutorial:
step6_4: "现在去学习并享受乐趣!"
_2fa:
alreadyRegistered: "此设备已被注册"
registerDevice: "注册设备"
registerKey: "注册密钥"
registerTOTP: "注册设备"
registerSecurityKey: "注册密钥"
step1: "首先,在您的设备上安装验证应用,例如{a}或{b}。"
step2: "然后,扫描屏幕上显示的二维码。"
step2Url: "在桌面应用程序中输入以下URL"
@ -1731,7 +1734,9 @@ _deck:
popRight: "向右弹出"
profile: "配置文件"
newProfile: "新建配置文件"
renameProfile: "重命名配置文件"
deleteProfile: "删除配置文件"
nameAlreadyExists: "该配置文件名已存在。"
introduction: "将各列进行组合以创建您自己的界面!"
introduction2: "您可以随时通过屏幕右侧的 + 来添加列"
widgetsIntroduction: "从列菜单中,选择“小工具编辑”来添加小工具"

View File

@ -1,7 +1,6 @@
---
_lang_: "繁體中文"
headlineMisskey: "貼文連繫網路"
introMisskey: "歡迎! Misskey是一個開放原始碼且去中心化的社群網路。\n透過「貼文」分享周邊新鮮事並告訴其他人您的想法📡\n透過「反應」功能對大家的貼文表達情感👍\n一起來探索這個新的世界吧🚀"
introMisskey: "歡迎! Calckey是一個免費開放原碼去中心化的社群網路🚀"
monthAndDay: "{month}月 {day}日"
search: "搜尋"
notifications: "通知"
@ -10,32 +9,32 @@ password: "密碼"
forgotPassword: "忘記密碼"
fetchingAsApObject: "從聯邦宇宙取得中"
ok: "OK"
gotIt: "知道了"
gotIt: "知道了"
cancel: "取消"
enterUsername: "輸入使用者名稱"
renotedBy: "{user} 轉傳了"
noNotes: "無貼文"
noNotes: "無貼文"
noNotifications: "沒有通知"
instance: "實例"
instance: "伺服器"
settings: "設定"
basicSettings: "基本設定"
otherSettings: "其他設定"
openInWindow: "在新視窗開啟"
profile: "個人檔案"
timeline: "時間軸"
noAccountDescription: "此用戶還沒有自我介紹"
noAccountDescription: "此用戶還沒有自我介紹"
login: "登入"
loggingIn: "登入中"
logout: "登出"
signup: "註冊"
uploading: "上傳中"
uploading: "上傳中..."
save: "儲存"
users: "使用者"
addUser: "新增使用者"
favorite: "我的最愛"
favorites: "我的最愛"
unfavorite: "從我的最愛中移除"
favorited: "已添加至我的最愛"
favorited: "已添加至我的最愛"
alreadyFavorited: "我的最愛中已存在。"
cantFavorite: "無法加入至我的最愛。"
pin: "置頂"
@ -64,10 +63,10 @@ import: "匯入"
export: "匯出"
files: "檔案"
download: "下載"
driveFileDeleteConfirm: "確定要刪除檔案「{name}」嗎?使用此附件的貼文也會跟著消失。\n"
driveFileDeleteConfirm: "確定要刪除檔案「{name}」嗎?使用此附件的貼文也會跟著消失。"
unfollowConfirm: "確定要取消追隨{name}嗎?"
exportRequested: "已請求匯出。這可能會花一點時間。結束後檔案將會被放到雲端裡。"
importRequested: "已請求匯入。這可能會花一點時間"
importRequested: "已請求匯入。這可能會花一點時間"
lists: "清單"
noLists: "你沒有任何清單"
note: "貼文"
@ -80,10 +79,10 @@ manageLists: "管理清單"
error: "錯誤"
somethingHappened: "發生錯誤"
retry: "重試"
pageLoadError: "載入頁面失敗"
pageLoadErrorDescription: "這通常是因為網路錯誤或是瀏覽器快取殘留的原因。請先清除瀏覽器快取,稍後再重試"
pageLoadError: "載入頁面失敗"
pageLoadErrorDescription: "這通常是因為網路錯誤或是瀏覽器快取殘留的原因。請先清除瀏覽器快取,稍後再重試"
serverIsDead: "伺服器沒有回應。請稍等片刻,然後重試。"
youShouldUpgradeClient: "請重新載入以使用新版本的客戶端顯示此頁面"
youShouldUpgradeClient: "請重新載入以使用新版本的客戶端顯示此頁面"
enterListName: "輸入清單名稱"
privacy: "隱私"
makeFollowManuallyApprove: "手動審核追隨請求"
@ -96,7 +95,7 @@ followRequestPending: "追隨許可批准中"
enterEmoji: "輸入表情符號"
renote: "轉發"
unrenote: "取消轉發"
renoted: "轉傳成功"
renoted: "已轉傳。"
cantRenote: "無法轉發此貼文。"
cantReRenote: "無法轉傳之前已經轉傳過的內容。"
quote: "引用"
@ -107,6 +106,8 @@ clickToShow: "按一下以顯示"
sensitive: "敏感內容"
add: "新增"
reaction: "情感"
enableEmojiReaction: "啟用表情符號反應"
showEmojisInReactionNotifications: "在反應通知中顯示表情符號"
reactionSetting: "在選擇器中顯示反應"
reactionSettingDescription2: "拖動以重新列序,點擊以刪除,按下 + 添加。"
rememberNoteVisibility: "記住貼文可見性"
@ -141,15 +142,15 @@ settingGuide: "推薦設定"
cacheRemoteFiles: "快取遠端檔案"
cacheRemoteFilesDescription: "禁用此設定會停止遠端檔案的緩存,從而節省儲存空間,但資料會因直接連線從而產生額外連接數據。"
flagAsBot: "此使用者是機器人"
flagAsBotDescription: "如果本帳戶是由程式控制,請啟用此選項。啟用後,會作為標示幫助其他開發者防止機器人之間產生無限互動的行為,並會調整Misskey內部系統將本帳戶識別為機器人"
flagAsBotDescription: "如果本帳戶是由程式控制,請啟用此選項。啟用後,會作為標示幫助其他開發者防止機器人之間產生無限互動的行為,並會調整Calckey內部系統將本帳戶識別為機器人。"
flagAsCat: "此使用者是貓"
flagAsCatDescription: "如果想將本帳戶標示為一隻貓,請開啟此標示"
flagAsCatDescription: "如果想將本帳戶標示為一隻貓,請開啟此標示"
flagShowTimelineReplies: "在時間軸上顯示貼文的回覆"
flagShowTimelineRepliesDescription: "啟用時,時間線除了顯示用戶的貼文以外,還會顯示用戶對其他貼文的回覆。"
autoAcceptFollowed: "自動追隨中使用者的追隨請求"
addAccount: "添加帳戶"
loginFailed: "登入失敗"
showOnRemote: "轉到所在實例顯示"
showOnRemote: "轉到所在伺服器顯示"
general: "一般"
wallpaper: "桌布"
setWallpaper: "設定桌布"
@ -164,7 +165,7 @@ selectUser: "選取使用者"
recipient: "收件人"
annotation: "註解"
federation: "站台聯邦"
instances: "實例"
instances: "伺服器"
registeredAt: "初次觀測"
latestRequestSentAt: "上次發送的請求"
latestRequestReceivedAt: "上次收到的請求"
@ -174,26 +175,25 @@ charts: "圖表"
perHour: "每小時"
perDay: "每日"
stopActivityDelivery: "停止發送活動"
blockThisInstance: "封鎖此實例"
blockThisInstance: "封鎖此伺服器"
operations: "操作"
software: "軟體"
version: "版本"
metadata: "元資料"
withNFiles: "{n}個檔案"
monitor: "監視器"
jobQueue: "佇列"
cpuAndMemory: "CPU及記憶體用量"
network: "網路"
disk: "硬碟"
instanceInfo: "實例資訊"
instanceInfo: "伺服器資訊"
statistics: "統計"
clearQueue: "清除佇列"
clearQueueConfirmTitle: "確定要清除佇列嗎?"
clearQueueConfirmText: "未發佈的貼文將不會發佈。您通常不需要確認。"
clearCachedFiles: "清除快取資料"
clearCachedFilesConfirm: "確定要清除所有遠端暫存資料嗎?"
blockedInstances: "已封鎖的實例"
blockedInstancesDescription: "請逐行輸入需要封鎖的實例。已封鎖的實例將無法與本實例進行通訊。"
blockedInstances: "已封鎖的伺服器"
blockedInstancesDescription: "請逐行輸入需要封鎖的伺服器。已封鎖的伺服器將無法與本伺服器進行通訊。"
muteAndBlock: "靜音和封鎖"
mutedUsers: "已靜音用戶"
blockedUsers: "已封鎖用戶"
@ -201,7 +201,7 @@ noUsers: "沒有任何使用者"
editProfile: "編輯個人檔案"
noteDeleteConfirm: "確定刪除此貼文嗎?"
pinLimitExceeded: "不能置頂更多貼文了"
intro: "Misskey 部署完成!請建立管理員帳戶。"
intro: "Calckey 部署完成!請建立管理員帳戶。"
done: "完成"
processing: "處理中"
preview: "預覽"
@ -216,9 +216,9 @@ all: "全部"
subscribing: "訂閱中"
publishing: "直播中"
notResponding: "沒有回應"
instanceFollowing: "追蹤實例"
instanceFollowers: "追蹤實例"
instanceUsers: "用戶"
instanceFollowing: "追蹤伺服器"
instanceFollowers: "伺服器的追蹤者"
instanceUsers: "此伺服器的用戶"
changePassword: "修改密碼"
security: "安全性"
retypedNotMatch: "兩次輸入不一致。"
@ -308,8 +308,8 @@ unwatch: "取消追隨"
accept: "接受"
reject: "拒絕"
normal: "正常"
instanceName: "實例名稱"
instanceDescription: "實例說明"
instanceName: "伺服器名稱"
instanceDescription: "伺服器說明"
maintainerName: "管理員名稱"
maintainerEmail: "管理員郵箱"
tosUrl: "服務條款URL"
@ -339,7 +339,7 @@ basicInfo: "基本資訊"
pinnedUsers: "置頂用戶"
pinnedUsersDescription: "在「發現」頁面中使用換行標記想要置頂的使用者。"
pinnedPages: "釘選頁面"
pinnedPagesDescription: "輸入要固定至實例首頁的頁面路徑,以換行符分隔。"
pinnedPagesDescription: "輸入要固定至伺服器首頁的頁面路徑,以換行符分隔。"
pinnedClipId: "置頂的摘錄ID"
pinnedNotes: "已置頂的貼文"
hcaptcha: "hCaptcha"
@ -357,7 +357,7 @@ name: "名稱"
antennaSource: "接收來源"
antennaKeywords: "包含關鍵字"
antennaExcludeKeywords: "排除關鍵字"
antennaKeywordsDescription: "用空格分隔指定AND、用換行符分隔指定OR"
antennaKeywordsDescription: "用空格分隔指定AND、用換行符分隔指定OR"
notifyAntenna: "通知有新貼文"
withFileAntenna: "僅帶有附件的貼文"
enableServiceworker: "開啟 ServiceWorker"
@ -380,7 +380,7 @@ exploreFediverse: "探索聯邦世界"
popularTags: "熱門標籤"
userList: "清單"
about: "資訊"
aboutMisskey: "關於 Misskey"
aboutMisskey: "關於 Calckey"
administrator: "管理員"
token: "權杖"
twoStepAuthentication: "兩階段驗證"
@ -398,7 +398,7 @@ newPasswordIs: "新密碼為「{password}」"
reduceUiAnimation: "減少介面的動態視覺"
share: "分享"
notFound: "找不到"
notFoundDescription: "找不到與指定URL回應的頁面"
notFoundDescription: "找不到與指定URL回應的頁面"
uploadFolder: "預設上傳資料夾"
cacheClear: "清除快取"
markAsReadAllNotifications: "標記所有通知為已讀"
@ -433,10 +433,10 @@ onlyOneFileCanBeAttached: "只能加入一個附件"
signinRequired: "請先登入"
invitations: "邀請"
invitationCode: "邀請碼"
checking: "確認中"
checking: "確認中..."
available: "可用的"
unavailable: "不可用的"
usernameInvalidFormat: "可使用大小寫英文字母、數字和底線"
usernameInvalidFormat: "可使用大小寫英文字母、數字和底線"
tooShort: "過短"
tooLong: "過長"
weakPassword: "密碼強度過弱"
@ -459,7 +459,7 @@ joinOrCreateGroup: "請加入現有群組,或創建新群組。"
noHistory: "沒有歷史紀錄"
signinHistory: "登入歷史"
disableAnimatedMfm: "禁用MFM動畫"
doing: "正在進行"
doing: "正在處理..."
category: "類別"
tags: "標籤"
docSource: "文件來源"
@ -485,8 +485,8 @@ hideThisNote: "隱藏此貼文"
showFeaturedNotesInTimeline: "在時間軸上顯示熱門推薦"
objectStorage: "Object Storage (物件儲存)"
useObjectStorage: "使用Object Storage"
objectStorageBaseUrl: "Base URL"
objectStorageBaseUrlDesc: "引用時的URL。如果您使用的是CDN或反向代理请指定其URL例如S3“https://<bucket>.s3.amazonaws.com”GCS“https://storage.googleapis.com/<bucket>”"
objectStorageBaseUrl: "URL"
objectStorageBaseUrlDesc: "引用時的URL。如果你使用的是CDN或反向代理請指定其網址URL。\n例如S3“https://<bucket>.s3.amazonaws.com”GCS“https://storage.googleapis.com/<bucket>”"
objectStorageBucket: "儲存空間Bucket"
objectStorageBucketDesc: "請指定您正在使用的服務的存儲桶名稱。"
objectStoragePrefix: "前綴"
@ -526,7 +526,7 @@ sort: "排序"
ascendingOrder: "昇冪"
descendingOrder: "降冪"
scratchpad: "暫存記憶體"
scratchpadDescription: "AiScript控制台為AiScript提供了實驗環境。您可以在此編寫、執行和確認代碼與Misskey互動的结果。"
scratchpadDescription: "AiScript控制台為AiScript提供了實驗環境。您可以在此編寫、執行和確認代碼與Calckey互動的结果。"
output: "輸出"
script: "腳本"
disablePagesScript: "停用頁面的AiScript腳本"
@ -534,8 +534,8 @@ updateRemoteUser: "更新遠端使用者資訊"
deleteAllFiles: "刪除所有檔案"
deleteAllFilesConfirm: "要删除所有檔案嗎?"
removeAllFollowing: "解除所有追蹤"
removeAllFollowingDescription: "解除{host}所有的追蹤。在實例不再存在時執行。"
userSuspended: "該使用者已被停用"
removeAllFollowingDescription: "解除{host}所有的追蹤。在伺服器不再存在時執行。"
userSuspended: "此使用者已被停用。"
userSilenced: "該用戶已被禁言。"
yourAccountSuspendedTitle: "帳戶已被凍結"
yourAccountSuspendedDescription: "由於違反了伺服器的服務條款或其他原因,該帳戶已被凍結。 您可以與管理員連繫以了解更多訊息。 請不要創建一個新的帳戶。"
@ -546,7 +546,7 @@ relays: "中繼"
addRelay: "新增中繼"
inboxUrl: "收件夾URL"
addedRelays: "已加入的中繼"
serviceworkerInfo: "您需要啟用推送通知"
serviceworkerInfo: "您需要啟用推送通知"
deletedNote: "已删除的貼文"
invisibleNote: "隱藏的貼文"
enableInfiniteScroll: "啟用自動滾動頁面模式"
@ -592,14 +592,14 @@ smtpHost: "主機"
smtpPort: "埠"
smtpUser: "使用者名稱"
smtpPass: "密碼"
emptyToDisableSmtpAuth: "留空使用者名稱和密碼以關閉SMTP驗證。"
emptyToDisableSmtpAuth: "留空使用者名稱及密碼以關閉SMTP驗證"
smtpSecure: "在 SMTP 連接中使用隱式 SSL/TLS"
smtpSecureInfo: "使用STARTTLS時關閉。"
smtpSecureInfo: "如使用STARTTLS請關閉"
testEmail: "測試郵件發送"
wordMute: "被靜音的文字"
regexpError: "正規表達式錯誤"
regexpErrorDescription: "{tab} 靜音文字的第 {line} 行的正規表達式有錯誤:"
instanceMute: "實例的靜音"
instanceMute: "伺服器的靜音"
userSaysSomething: "{name}說了什麼"
makeActive: "啟用"
display: "檢視"
@ -612,7 +612,7 @@ database: "資料庫"
channel: "頻道"
create: "新增"
notificationSetting: "通知設定"
notificationSettingDesc: "選擇顯示通知的類型"
notificationSettingDesc: "選擇顯示通知的類型"
useGlobalSetting: "使用全域設定"
useGlobalSettingDesc: "啟用時,將使用帳戶通知設定。停用時,則可以單獨設定。"
other: "其他"
@ -630,19 +630,19 @@ abuseReported: "回報已送出。感謝您的報告。"
reporter: "檢舉者"
reporteeOrigin: "檢舉來源"
reporterOrigin: "檢舉者來源"
forwardReport: "將報告轉送給遠端實例"
forwardReportIsAnonymous: "在遠端實例上看不到您的資訊,顯示的報告者是匿名的系统帳戶。"
forwardReport: "將報告轉送給遠端伺服器"
forwardReportIsAnonymous: "在遠端伺服器上看不到您的資訊,顯示的報告者是匿名的系統帳戶。"
send: "發送"
abuseMarkAsResolved: "處理完畢"
openInNewTab: "在新分頁中開啟"
openInSideView: "在側欄中開啟"
defaultNavigationBehaviour: "默認導航"
editTheseSettingsMayBreakAccount: "修改這些設定可能會毀損您的帳戶"
instanceTicker: "貼文的實例來源"
editTheseSettingsMayBreakAccount: "修改這些設定可能會毀損你的帳戶。"
instanceTicker: "貼文的伺服器資訊"
waitingFor: "等待{x}"
random: "隨機"
system: "系統"
switchUi: "切換界面"
switchUi: "界面"
desktop: "桌面"
clip: "摘錄"
createNew: "新建"
@ -688,7 +688,7 @@ experimentalFeatures: "實驗中的功能"
developer: "開發者"
makeExplorable: "使自己的帳戶能夠在“探索”頁面中顯示"
makeExplorableDescription: "如果關閉,帳戶將不會被顯示在\"探索\"頁面中。"
showGapBetweenNotesInTimeline: "分開顯示時間線上的貼文。"
showGapBetweenNotesInTimeline: "分開顯示時間軸上的貼文"
duplicate: "複製"
left: "左"
center: "置中"
@ -702,7 +702,7 @@ onlineUsersCount: "{n}人正在線上"
nUsers: "{n}用戶"
nNotes: "{n}貼文"
sendErrorReports: "傳送錯誤報告"
sendErrorReportsDescription: "啟用後,問題報告將傳送至開發者以提升軟體品質。問題報告可能包括OS版本瀏覽器類型行為歷史記錄等。"
sendErrorReportsDescription: "啟用後,問題報告將傳送至Calckey開發者以提升軟體品質。\n問題報告可能包括OS版本瀏覽器類型行為歷史記錄等。"
myTheme: "我的佈景主題"
backgroundColor: "背景"
accentColor: "重點色彩"
@ -726,7 +726,7 @@ capacity: "容量"
inUse: "已使用"
editCode: "編輯代碼"
apply: "套用"
receiveAnnouncementFromInstance: "接收由本實例發出的電郵通知"
receiveAnnouncementFromInstance: "接收由本伺服器發出的電郵通知"
emailNotification: "郵件通知"
publish: "發佈"
inChannelSearch: "頻道内搜尋"
@ -754,7 +754,7 @@ active: "最近活躍"
offline: "離線"
notRecommended: "不推薦"
botProtection: "Bot防護"
instanceBlocking: "已封鎖的實例"
instanceBlocking: "聯邦管理"
selectAccount: "選擇帳戶"
switchAccount: "切換帳戶"
enabled: "已啟用"
@ -779,7 +779,7 @@ priority: "優先級"
high: "高"
middle: "中"
low: "低"
emailNotConfiguredWarning: "沒有設定電地址"
emailNotConfiguredWarning: "沒有設定電郵地址"
ratio: "%"
previewNoteText: "預覽文本"
customCss: "自定義 CSS"
@ -793,7 +793,7 @@ hashtags: "#tag"
troubleshooting: "故障排除"
useBlurEffect: "在 UI 上使用模糊效果"
learnMore: "更多資訊"
misskeyUpdated: "Misskey 更新完成!"
misskeyUpdated: "Calckey 更新完成!"
whatIsNew: "顯示更新資訊"
translate: "翻譯"
translatedFrom: "從 {x} 翻譯"
@ -815,11 +815,11 @@ controlPanel: "控制台"
manageAccounts: "管理帳戶"
makeReactionsPublic: "將反應設為公開"
makeReactionsPublicDescription: "將您做過的反應設為公開可見。"
classic: "經典"
classic: "置中"
muteThread: "將貼文串設為靜音"
unmuteThread: "將貼文串的靜音解除"
ffVisibility: "連接的公開範圍"
ffVisibilityDescription: "您可以設定您的關注/關注者資訊的公開範圍"
ffVisibilityDescription: "您可以設定您的關注/關注者資訊的公開範圍"
continueThread: "查看更多貼文"
deleteAccountConfirm: "將要刪除帳戶。是否確定?"
incorrectPassword: "密碼錯誤。"
@ -838,9 +838,9 @@ themeColor: "主題顏色"
size: "大小"
numberOfColumn: "列數"
searchByGoogle: "搜尋"
instanceDefaultLightTheme: "實例預設的淺色主題"
instanceDefaultDarkTheme: "實例預設的深色主題"
instanceDefaultThemeDescription: "輸入物件形式的主题代碼"
instanceDefaultLightTheme: "伺服器預設的淺色主題"
instanceDefaultDarkTheme: "伺服器預設的深色主題"
instanceDefaultThemeDescription: "輸入物件形式的主題代碼。"
mutePeriod: "靜音的期限"
indefinitely: "無期限"
tenMinutes: "10分鐘"
@ -888,14 +888,17 @@ cannotUploadBecauseInappropriate: "由於判定可能包含不適當的內容,
cannotUploadBecauseNoFreeSpace: "由於雲端硬碟沒有可用空間,因此無法上傳。"
beta: "Beta"
enableAutoSensitive: "自動NSFW判定"
enableAutoSensitiveDescription: "如可用,請利用機器學習在媒體上自動設置 NSFW 旗標。 即使關閉此功能,依實例而定也可能會自動設置。"
enableAutoSensitiveDescription: "如可用,請利用機器學習在媒體上自動設置 NSFW 旗標。 即使關閉此功能,依伺服器而定也可能會自動設置。"
activeEmailValidationDescription: "積極地驗證用戶的電子郵件地址,判斷它是否為免洗地址,或者它是否可以通信。 若關閉,則只會檢查字元是否正確。"
navbar: "導覽列"
shuffle: "隨機"
account: "帳戶"
move: "移動"
customKaTeXMacro: "自定義 KaTeX 宏"
customKaTeXMacroDescription: "使用宏來輕鬆的輸入數學表達式吧!宏的用法與 LaTeX 中的命令定義相同。你可以使用 \\newcommand{\\name}{content} 或 \\newcommand{\\name}[number of arguments]{content} 來輸入數學表達式。舉個例子,\\newcommand{\\add}[2]{#1 + #2} 會將 \\add{3}{foo} 展開為 3 + foo。此外宏名稱外的花括號 {} 可以被替換為圓括號 () 和方括號 [],這會影響用於參數的括號。每行只能夠定義一個宏,無法在中間換行,且無效的行將被忽略。只支持簡單字符串替換功能,不支持高級語法,如條件分支等。"
customKaTeXMacroDescription: "使用宏來輕鬆的輸入數學表達式吧!宏的用法與 LaTeX 中的命令定義相同。你可以使用 \\newcommand{\\
name}{content} 或 \\newcommand{\\name}[number of arguments]{content} 來輸入數學表達式。舉個例子,\\
newcommand{\\add}[2]{#1 + #2} 會將 \\add{3}{foo} 展開為 3 + foo。此外宏名稱外的花括號 {} 可以被替換為圓括號
() 和方括號 [],這會影響用於參數的括號。每行只能夠定義一個宏,無法在中間換行,且無效的行將被忽略。只支持簡單字符串替換功能,不支持高級語法,如條件分支等。"
enableCustomKaTeXMacro: "啟用自定義 KaTeX 宏"
_sensitiveMediaDetection:
description: "您可以使用機器學習自動檢測敏感媒體並將其用於審核。 伺服器的負荷會稍微增加。"
@ -932,7 +935,7 @@ _ad:
_forgotPassword:
enterEmail: "請輸入您的帳戶註冊的電子郵件地址。 密碼重置連結將被發送到該電子郵件地址。"
ifNoEmail: "如果您還沒有註冊您的電子郵件地址,請聯繫管理員。"
contactAdmin: "此實例不支持電子郵件,請聯繫您的管理員重置您的密碼。 "
contactAdmin: "此伺服器不支援使用電郵,請聯繫您的管理員重置你的密碼。"
_gallery:
my: "我的貼文"
liked: "喜歡的貼文"
@ -964,7 +967,7 @@ _preferencesBackups:
createdAt: "建立日期:{date} {time}"
updatedAt: "更新日期:{date} {time}"
cannotLoad: "無法讀取"
invalidFile: "檔案形式錯誤。"
invalidFile: "無效的檔案格式"
_registry:
scope: "範圍"
key: "機碼"
@ -972,12 +975,12 @@ _registry:
domain: "域"
createKey: "新增機碼"
_aboutMisskey:
about: "Misskey是由syuilo自2014年起開發的開源軟體。"
about: "Calckey是由ThatOneCalculator自2022年起開發的Misskey分支。"
contributors: "主要貢獻者"
allContributors: "全體貢獻人員"
source: "原始碼"
translation: "翻譯Misskey"
donate: "贊助Misskey"
translation: "翻譯Calckey"
donate: "贊助Calckey"
morePatrons: "還有許許多多幫助我們的其他人,非常感謝你們。 🥰"
patrons: "贊助者"
_nsfw:
@ -987,7 +990,7 @@ _nsfw:
_mfm:
cheatSheet: "MFM代碼小抄"
intro: "MFM是Misskey專用的標記語言可以在Misskey中的各個位置使用。 您可以這裏看到MFM可用語法列表。"
dummy: "Misskey拓展了Fediverse的世界"
dummy: "Calckey拓展了Fediverse的世界"
mention: "提及"
mentionDescription: "透過 @+用戶名 來標示特定使用者。"
hashtag: "#tag"
@ -1007,9 +1010,9 @@ _mfm:
blockCode: "程式碼(區塊)"
blockCodeDescription: "在區塊中用高亮度顯示,例如複數行的程式碼語法。"
inlineMath: "數學公式(內嵌)"
inlineMathDescription: "顯示內嵌的KaTex數學公式。"
inlineMathDescription: "顯示內嵌的KaTeX數學公式"
blockMath: "數學公式(方塊)"
blockMathDescription: "以區塊顯示複數行的KaTex數學式。"
blockMathDescription: "以區塊顯示KaTeX數學式"
quote: "引用"
quoteDescription: "可以用來表示引用的内容。"
emoji: "自訂表情符號"
@ -1041,7 +1044,7 @@ _mfm:
blur: "模糊"
blurDescription: "產生模糊效果。将游標放在上面即可將内容顯示出來。"
font: "字型"
fontDescription: "您可以設定顯示內容的字型"
fontDescription: "您可以設定顯示內容的字型"
rainbow: "彩虹"
rainbowDescription: "用彩虹色來顯示內容。"
sparkle: "閃閃發光"
@ -1050,6 +1053,12 @@ _mfm:
rotateDescription: "以指定的角度旋轉。"
plain: "簡潔"
plainDescription: "停用全部的內部語法。"
play: 播放 MFM
stop: 暫停MFM
warn: MFM 可能包含快速移動或顯眼的動畫
position: 位置
alwaysPlay: 自動播放所有MFM動畫
positionDescription: 按指定數量移動內容。
_instanceTicker:
none: "隱藏"
remote: "向遠端使用者顯示"
@ -1058,6 +1067,7 @@ _serverDisconnectedBehavior:
reload: "自動重載"
dialog: "彈出式警告"
quiet: "非侵入式警告"
nothing:
_channel:
create: "建立頻道"
edit: "編輯頻道"
@ -1068,6 +1078,8 @@ _channel:
following: "關注中"
usersCount: "有{n}人參與"
notesCount: "有{n}個貼文"
nameAndDescription: "名稱與說明"
nameOnly: "僅名稱"
_menuDisplay:
sideFull: "側向"
sideIcon: "側向(圖示)"
@ -1083,10 +1095,10 @@ _wordMute:
hard: "硬性靜音"
mutedNotes: "已靜音的貼文"
_instanceMute:
instanceMuteDescription: "包括對被靜音實例上的用戶的回覆,被設定的實例上所有貼文及轉發都會被靜音。"
instanceMuteDescription: "包括對被靜音伺服器上的用戶的回覆,被設定的伺服器上所有貼文及轉發都會被靜音。"
instanceMuteDescription2: "設定時以換行進行分隔"
title: "被設定的實例,貼文將被隱藏。"
heading: "將實例靜音"
title: "被設定的伺服器,貼文將被隱藏。"
heading: "將會被靜音的伺服器"
_theme:
explore: "取得佈景主題"
install: "安裝佈景主題"
@ -1186,29 +1198,29 @@ _time:
day: "日"
_tutorial:
title: "如何使用Calckey"
step1_1: "迎!"
step1_2: "让我们把你安排好。你很快就会启动并运行!"
step2_1: "首先,请完成您的个人资料。"
step2_2: "通过提供一些关于你自己的信息,其他人会更容易了解他们是否想看到你的帖子或关注你。"
step3_1: "现在是时候跟随一些人了!"
step3_2: "你的主页和社交馈送是基于你所关注的人,所以试着先关注几个账户。{n点击个人资料右上角的加号圈就可以关注它。"
step4_1: "让我们出去找你。"
step4_2: "对于他们的第一条信息,有些人喜欢做{introduction}或一个简单的 \"hello world!\""
step5_1: "时间限制,到处是时间限制"
step5_2: "您的实例已启用各种时间线的{timelines}。"
step5_3: "主{icon}时间线是你可以看到你的订阅者的帖子的时间线。"
step5_4: "本地{icon}时间线是你可以看到实例中所有其他用户的信息的时间线。"
step5_5: "推荐的{icon}时间线 - 是时间轴,你可以看到管理员推荐的实例的信息"
step5_6: "社交{icon}时间线显示来自你的订阅者朋友的信息。"
step5_7: "全球{icon}时间线是你可以看到来自所有其他连接的实例的消息。"
step6_1: "那么,这里是什么地方?"
step6_2: "好吧你不只是加入卡尔基。你已经加入了Fediverse的一个门户这是一个由成千上万台服务器组成的互联网络被称为 \"实例\""
step6_3: "每个服务器的工作方式不同并不是所有的服务器都运行Calckey。但这个人确实如此! 这有点复杂,但你很快就会明白的。"
step6_4: "现在去学习并享受乐趣"
step1_1: "迎!"
step1_2: "讓我們把你安排好。你很快就會啟動並運行!"
step2_1: "首先,請完成你的個人資料。"
step2_2: "通過提供一些關於你自己的資料,其他人會更容易了解他們是否想看到你的帖子或關注你。"
step3_1: "現在是時候追隨一些人了!"
step3_2: "你的主頁和社交時間軸是基於你所追蹤的人,所以試著先追蹤幾個賬戶。\n點擊個人資料右上角的加號圈就可以關注它。"
step4_1: "讓我們出去找你。"
step4_2: "對於他們的第一條信息,有些人喜歡做 {introduction} 或一個簡單的 \"hello world!\""
step5_1: "時間軸,到處都是時間軸"
step5_2: "您的伺服器已啟用了{timelines}個時間軸。"
step5_3: "主 {icon} 時間軸是顯示你追蹤的帳號的帖子。"
step5_4: "本地 {icon} 時間軸是你可以看到伺服器中所有其他用戶的信息的時間軸。"
step5_5: "社交 {icon} 時間軸是顯示你的主時間軸 + 本地時間軸。"
step5_6: "推薦 {icon} 時間軸是顯示你的伺服器管理員推薦的帖文。"
step5_7: "全球 {icon} 時間軸是顯示來自所有其他連接的伺服器的帖文。"
step6_1: "那麼,這裡是什麼地方?"
step6_2: "你不只是加入Calckey。你已經加入了Fediverse的一個門戶這是一個由成千上萬台服務器組成的互聯網絡。"
step6_3: "每個服務器也有不同而並不是所有的服務器都運行Calckey。但這個服務器確實是運行Calckey的! 你可能會覺得有點複雜,但你很快就會明白的。"
step6_4: "現在開始探索吧"
_2fa:
alreadyRegistered: "此設備已經被註冊過了"
registerDevice: "註冊裝置"
registerKey: "註冊鍵"
alreadyRegistered: "你已註冊過一個雙重認證的裝置。"
registerTOTP: "註冊裝置"
registerSecurityKey: "註冊鍵"
step1: "首先,在您的設備上安裝二步驗證程式,例如{a}或{b}。"
step2: "然後掃描螢幕上的QR code。"
step2Url: "在桌面版應用中請輸入以下的URL"
@ -1283,13 +1295,13 @@ _widgets:
digitalClock: "電子時鐘"
unixClock: "UNIX時間"
federation: "聯邦宇宙"
instanceCloud: "實例雲"
instanceCloud: "伺服器雲端"
postForm: "發佈窗口"
slideshow: "幻燈片"
button: "按鈕"
onlineUsers: "線上的用戶"
jobQueue: "佇列"
serverMetric: "器指標 "
serverMetric: "服器指標"
aiscript: "AiScript控制台"
aichan: "小藍"
_cw:
@ -1298,14 +1310,14 @@ _cw:
chars: "{count}字元"
files: "{count} 個檔案"
_poll:
noOnlyOneChoice: "至少需要兩個選項"
noOnlyOneChoice: "至少需要兩個選項"
choiceN: "選擇{n}"
noMore: "沒辦法再添加選項了"
canMultipleVote: "可以多次投票"
expiration: "期限"
infinite: "無期限"
at: "結束時間"
after: "進度指定 "
after: "在指定時間後結束..."
deadlineDate: "截止日期"
deadlineTime: "小時"
duration: "時長"
@ -1322,7 +1334,7 @@ _poll:
_visibility:
public: "公開"
publicDescription: "發布給所有用戶"
home: "首頁"
home: "不在主頁顯示"
homeDescription: "僅發送至首頁的時間軸"
followers: "追隨者"
followersDescription: "僅發送至關注者"
@ -1333,7 +1345,7 @@ _visibility:
_postForm:
replyPlaceholder: "回覆此貼文..."
quotePlaceholder: "引用此貼文..."
channelPlaceholder: "發佈到頻道"
channelPlaceholder: "發佈到頻道..."
_placeholders:
a: "今天過得如何?"
b: "有什麼新鮮事嗎?"
@ -1345,7 +1357,7 @@ _profile:
name: "名稱"
username: "使用者名稱"
description: "關於我"
youCanIncludeHashtags: "你也可以在「關於我」中加上 #tag"
youCanIncludeHashtags: "你也可以在「關於我」中加上 #tag"
metadata: "進階資訊"
metadataEdit: "編輯進階資訊"
metadataDescription: "可以在個人資料中以表格形式顯示其他資訊。"
@ -1353,6 +1365,7 @@ _profile:
metadataContent: "内容"
changeAvatar: "更換大頭貼"
changeBanner: "變更橫幅圖像"
locationDescription: 如果你先輸入你所在的城市,則會向其他用戶顯示你的當地時間。
_exportOrImport:
allNotes: "所有貼文"
followingList: "追隨中"
@ -1392,6 +1405,7 @@ _timelines:
local: "本地"
social: "社群"
global: "公開"
recommended: 推薦
_pages:
newPage: "建立頁面"
editPage: "編輯頁面"
@ -1686,7 +1700,7 @@ _relayStatus:
accepted: "已通過核准"
rejected: "已拒絕"
_notification:
fileUploaded: "上傳檔案成功"
fileUploaded: "上傳檔案成功"
youGotMention: "{name}提及到您"
youGotReply: "{name}回覆了您"
youGotQuote: "{name}引用了您"
@ -1729,12 +1743,14 @@ _deck:
swapDown: "往下移動"
stackLeft: "向左折疊"
popRight: "向右彈出"
profile: "個人檔案"
newProfile: "新建個人檔案"
deleteProfile: "刪除個人檔案"
profile: "工作區"
newProfile: "新增工作區"
renameProfile: "重新命名工作區"
deleteProfile: "刪除工作區"
nameAlreadyExists: "該工作區名稱已經存在。"
introduction: "組合欄位來製作屬於自己的介面吧!"
introduction2: "您可以隨時透過按畫面右方的 + 來添加欄位。"
widgetsIntroduction: "請從欄位的選單中,選擇「編輯小工具」來添加小工具"
widgetsIntroduction: "請從欄位的選單中,選擇「編輯小工具」來添加小工具"
_columns:
main: "主列"
widgets: "小工具"
@ -1744,3 +1760,89 @@ _deck:
list: "清單"
mentions: "提及"
direct: "指定使用者"
secureMode: 安全模式(授權獲取)
instanceSecurity: 伺服器安全性
privateMode: 私人模式
allowedInstances: 列入白名單的伺服器
secureModeInfo: 當從其他伺服器請求時,不要在沒有證據的情況下發回。
_messaging:
dms: 私訊
groups: 群組
manageGroups: 管理群組
replayTutorial: 重新播放教程
moveFromLabel: '您想遷移的舊帳戶:'
customMOTDDescription: 每次用戶加載/重新加載頁面時,由換行符號分隔的 MOTD啟動畫面的自定信息將隨機顯示。
privateModeInfo: 啟用後,只有列入白名單的伺服器才能與你的伺服器聯合。所有貼文都將對公眾隱藏。
adminCustomCssWarn: 除非你知道它的作用,否則請不要使用此設定。 輸入不正確的值可能會導致每個人的客戶端無法正常運行。你可在你的的用戶設定中測試,確保你的
CSS 正常工作。
showUpdates: Calckey 更新時顯示彈出視窗
recommendedInstances: 建議的伺服器
caption: 自動字幕
enterSendsMessage: 在 Messaging 中按 Return 發送消息 (如關閉則是 Ctrl + Return)
migrationConfirm: "您確定要將你的帳戶遷移到 {account} 嗎? 一旦這樣做,你將無法復原,而你將無法再次正常使用您的帳戶。\n另外請確保你已將此當前帳戶設置為您要遷移的帳戶。"
customSplashIconsDescription: 每次用戶加載/重新加載頁面時,以換行符號分隔的自定啟動畫面圖標的網址將隨機顯示。請確保圖片位於靜態網址上,最好所有圖片解析度調整為
192x192。
accountMoved: '該使用者已移至新帳戶:'
showAds: 顯示廣告
noThankYou: 不用了,謝謝
selectInstance: 選擇伺服器
enableRecommendedTimeline: 啟用推薦時間軸
antennaInstancesDescription: 分行列出一個伺服器
moveTo: 遷移此帳戶到新帳戶
moveToLabel: '請輸入你將會遷移到的帳戶:'
moveAccount: 遷移帳戶!
moveAccountDescription: '這個過程是不可逆的。 在遷移前,請確保您已在新帳戶上為此帳戶設置了別名(Alias)。 請輸入帳戶標籤 (格式:
@person@server.com)'
moveFrom: 由舊帳戶移至此帳戶
moveFromDescription: '這將為你的舊帳戶設置一個別名(Alias),以便你可以從該帳戶轉移到當前帳戶。 在你的舊帳戶移動之前請執行此操作。 請輸入帳戶標籤
(格式: @person@server.com)'
enableEmojiReactions: 啟用表情符號反應
breakFollowConfirm: 您確定要移除該關注者嗎?
socialTimeline: 社交時間軸
cannotUploadBecauseExceedsFileSizeLimit: 因檔案太大而無法上傳。
customMOTD: 自定義MOTD (網頁載入時顯示的信息)
customSplashIcons: 啟動畫面圖標 (網址)
splash: 啟動畫面
updateAvailable: 可能有可用的更新!
showAdminUpdates: 表明新的 Calckey 版本可用(只限管理員)
migration: 遷移
homeTimeline: 主頁時間軸
swipeOnDesktop: 允許在桌面上進行手機式滑動
logoImageUrl: 圖標網址
addInstance: 增加一個伺服器
noInstances: 沒有伺服器
flagSpeakAsCat: 像貓一樣地說話
silenceThisInstance: 靜音此伺服器
silencedInstances: 已靜音的伺服器
silenced: 已靜音
_experiments:
enablePostEditing: 啟用帖子編輯
title: 試驗功能
findOtherInstance: 找找另一個伺服器
noGraze: 瀏覽器擴展 "Graze for Mastodon" 會與Calckey發生衝突請停用該擴展。
userSaysSomethingReasonRenote: '{name} 轉傳了包含 {reason} 的帖子'
pushNotificationNotSupported: 你的瀏覽器或伺服器不支援推送通知
accessibility: 輔助功能
userSaysSomethingReasonReply: '{name} 回復了包含 {reason} 的帖子'
hiddenTags: 隱藏主題標籤
indexPosts: 索引帖子
indexNotice: 現在開始索引。 這可能需要一段時間,請不要在一個小時內重啟你的伺服器。
deleted: 已刪除
editNote: 編輯筆記
edited: '於 {date} {time} 編輯'
userSaysSomethingReason: '{name} 說了 {reason}'
allowedInstancesDescription: 要加入聯邦白名單的服務器,每台伺服器用新行分隔(僅適用於私有模式)。
defaultReaction: 默認的表情符號反應
license: 授權
apps: 應用
pushNotification: 推送通知
subscribePushNotification: 啟用推送通知
unsubscribePushNotification: 禁用推送通知
pushNotificationAlreadySubscribed: 推送通知已經啟用
recommendedInstancesDescription: 以每行分隔的推薦服務器出現在推薦的時間軸中。 不要添加 `https://`,只添加域名。
searchPlaceholder: 搜尋 Calckey
cw: 內容警告
selectChannel: 選擇一個頻道
newer: 較新
older: 較舊
jumpToPrevious: 跳到上一個

View File

@ -1,16 +1,16 @@
{
"name": "calckey",
"version": "13.2.0-beta6",
"version": "14.0.0-rc3-magnetar",
"codename": "aqua",
"repository": {
"type": "git",
"url": "https://codeberg.org/calckey/calckey.git"
},
"packageManager": "pnpm@8.2.0",
"packageManager": "pnpm@8.6.3",
"private": true,
"scripts": {
"rebuild": "pnpm run clean && pnpm -r run build && pnpm run gulp",
"build": "pnpm -r run build && pnpm run gulp",
"rebuild": "pnpm run clean && pnpm node ./scripts/build-greet.js && pnpm -r run build && pnpm run gulp",
"build": "pnpm node ./scripts/build-greet.js && pnpm -r run build && pnpm run gulp",
"start": "pnpm --filter backend run start",
"start:test": "pnpm --filter backend run start:test",
"init": "pnpm run migrate",
@ -27,7 +27,7 @@
"e2e": "start-server-and-test start:test http://localhost:61812 cy:run",
"mocha": "pnpm --filter backend run mocha",
"test": "pnpm run mocha",
"format": "pnpm rome format packages/**/* --write && pnpm --filter client run format",
"format": "pnpm -r run format",
"clean": "pnpm node ./scripts/clean.js",
"clean-all": "pnpm node ./scripts/clean-all.js",
"cleanall": "pnpm run clean-all"
@ -36,15 +36,16 @@
"chokidar": "^3.3.1"
},
"dependencies": {
"@bull-board/api": "^4.12.2",
"@bull-board/ui": "^4.12.2",
"@napi-rs/cli": "^2.15.2",
"@bull-board/api": "5.2.0",
"@bull-board/ui": "5.2.0",
"@napi-rs/cli": "^2.16.1",
"js-yaml": "4.1.0",
"seedrandom": "^3.0.5"
},
"devDependencies": {
"@types/gulp": "4.0.10",
"@types/gulp-rename": "2.0.1",
"chalk": "4.1.2",
"cross-env": "7.0.3",
"cypress": "10.11.0",
"execa": "5.1.1",
@ -54,7 +55,7 @@
"gulp-replace": "1.1.4",
"gulp-terser": "2.1.0",
"install-peers": "^1.0.4",
"rome": "^11.0.0",
"rome": "^12.1.3",
"start-server-and-test": "1.15.2",
"typescript": "4.9.4"
}

9
packages/README.md Normal file
View File

@ -0,0 +1,9 @@
# 📦 Packages
This directory contains all of the packages Calckey uses.
- `backend`: Main backend code written in TypeScript for NodeJS
- `backend/native-utils`: Backend code written in Rust, bound to NodeJS by [NAPI-RS](https://napi.rs/)
- `client`: Web interface written in Vue3 and TypeScript
- `sw`: Web [Service Worker](https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API) written in TypeScript
- `calckey-js`: TypeScript SDK for both backend and client, also published on [NPM](https://www.npmjs.com/package/calckey-js) for public use

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 473 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

@ -1,25 +1 @@
<svg id="svg10" version="1.1" sodipodi:docname="title_float.svg" inkscape:version="1.2.2 (b0a8486541, 2022-12-01)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="1.95 0.97 167.97 103.23">
<sodipodi:namedview id="namedview21" pagecolor="#ffffff" bordercolor="#000000" borderopacity="0.25" inkscape:showpageshadow="2" inkscape:pageopacity="0.0" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" showgrid="false" inkscape:zoom="1.1507704" inkscape:cx="260.69492" inkscape:cy="102.54" inkscape:window-width="1600" inkscape:window-height="931" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="svg10"/>
<metadata id="metadata16">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<linearGradient id="myGradient" gradientTransform="rotate(90)">
<stop offset="5%" stop-color="#9ccfd8" id="stop5" style="--darkreader-inline-stopcolor: #265760;" data-darkreader-inline-stopcolor=""/>
<stop offset="95%" stop-color="#31748f" id="stop7" style="--darkreader-inline-stopcolor: #275d72;" data-darkreader-inline-stopcolor=""/>
</linearGradient>
<defs id="defs14"/>
<g id="g8" fill="url('#myGradient')" word-spacing="0" letter-spacing="0" font-family="OTADESIGN Rounded" font-weight="400">
<g id="g17">
<g transform="matrix(.26953 0 0 .26953 -55.341 -52.023)" id="g11"/>
<g transform="matrix(3.6954 0 0 3.6954 208.34 -284.25)" clip-rule="evenodd" fill-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="2" id="g15">
<path d="m -41.8312,77.19 c -3.8683,0 -7.1782,1.3578 -9.9311,4.0734 -2.716,2.7525 -4.0734,6.0628 -4.0734,9.9311 5.0539,0.04979 6.082,0.01348 8.7525,0.0011 0.0024,-4.51e-4 0.0044,-6.05e-4 0.0069,-0.0011 0.03779,-2.8423 2.2103,-4.9346 5.2451,-5.2451 1.4137,0 2.6227,0.52089 3.6268,1.5629 0.855,0.8548 1.897,1.2822 3.1257,1.2822 1.2258,0 2.2676,-0.42741 3.1236,-1.2822 0.85499,-0.85567 1.2833,-1.8976 1.2833,-3.1257 0,-1.2264 -0.42828,-2.2673 -1.2833,-3.1231 -2.7528,-2.7156 -6.0446,-4.0734 -9.8761,-4.0734 z m -5.252,14.006 c -3.4453,-5.5934 -3.4667,0.08539 -8.7525,-0.0011 0,3.8683 1.3584,7.0406 4.0744,9.7931 2.7528,2.7156 6.0623,4.0734 9.9305,4.0734 3.8315,0 7.1238,-1.3578 9.8766,-4.0734 0.85499,-0.85577 1.2827,-1.8967 1.2827,-3.1231 0,-1.2282 -0.42775,-2.2701 -1.2827,-3.1257 -0.85596,-0.8548 -1.8978,-1.2822 -3.1236,-1.2822 -1.2287,0 -2.2707,0.42741 -3.1257,1.2822 -1.0041,1.042 -2.2136,1.5623 -3.6273,1.5623 -3.0348,-0.31051 -5.2084,-2.2633 -5.2462,-5.1056 -0.0024,1.1e-5 -0.0039,-1.2e-5 -0.0063,0 z m 26.154,-7.0965 c -2.8795,0 -5.3538,1.0204 -7.4227,3.0612 -0.64257,0.64316 -0.96404,1.4255 -0.96404,2.3472 0,0.92303 0.32146,1.7062 0.96404,2.3493 0.64331,0.64243 1.4265,0.96351 2.3477,0.96351 0.92347,0 1.7068,-0.32108 2.3493,-0.96351 0.75465,-0.78308 1.6632,-1.1744 2.7256,-1.1744 1.0894,0 2.0261,0.37695 2.8091,1.1316 0.75536,0.78309 1.1332,1.7201 1.1332,2.8102 0,1.0617 -0.39242,1.9703 -1.1754,2.7256 -0.39149,0.4193 -0.86676,0.69884 -1.4249,0.83878 -0.14116,0.02773 -0.25248,0.01369 -0.33614,-0.04175 -0.05605,-0.08456 -0.02751,-0.16827 0.08456,-0.25211 l 0.83825,-0.88053 c 0.64329,-0.64315 0.9651,-1.412 0.9651,-2.306 0,-0.92236 -0.27937,-1.6632 -0.83825,-2.2225 -0.55888,-0.55932 -1.3422,-0.83878 -2.3493,-0.83878 -0.6986,0 -1.397,0.34902 -2.0956,1.0475 l -4.8651,4.8223 c -0.64328,0.6438 -0.96457,1.4271 -0.96457,2.3488 0,0.92302 0.32128,1.7053 0.96457,2.3477 1.9568,1.9293 4.3751,2.8942 7.2546,2.8942 2.9072,0 5.3945,-1.0343 7.4634,-3.103 2.0412,-2.0409 3.0618,-4.501 3.0618,-7.3804 0,-2.9072 -1.0206,-5.3952 -3.0618,-7.4639 -2.0689,-2.0409 -4.5562,-3.0612 -7.4634,-3.0612 z" clip-rule="evenodd" fill-rule="nonzero" stroke-miterlimit="2" stroke-width="0" id="path13" sodipodi:nodetypes="cccccccscsccccccscscscccccccscscscscccccscsccscscsccc"/>
</g>
</g>
</g>
</svg>
<svg viewBox="1.95 0.97 128 128" width="128" height="128" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><linearGradient id="a" gradientTransform="rotate(90)"><stop offset="5%" stop-color="#9ccfd8" style="--darkreader-inline-stopcolor:#265760"/><stop offset="95%" stop-color="#31748f" style="--darkreader-inline-stopcolor:#275d72"/></linearGradient><defs><linearGradient xlink:href="#a" id="f" gradientTransform="scale(1.27567 .7839)" x1="-43.77" y1="98.469" x2="-27.05" y2="137.466" gradientUnits="userSpaceOnUse"/><linearGradient xlink:href="#a" id="d" x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse"/><linearGradient xlink:href="#a" id="e" gradientTransform="scale(1.27567 .7839)" x1="-43.77" y1="98.468" x2="-8.156" y2="98.468" gradientUnits="userSpaceOnUse"/><linearGradient xlink:href="#a" id="c" gradientTransform="scale(1.27567 .7839)" x1="1.571" y1="1.27" x2="133.179" y2="1.27" gradientUnits="userSpaceOnUse"/><linearGradient xlink:href="#a" id="b" gradientTransform="scale(1.27567 .7839)" x1="1.571" y1="1.27" x2="133.179" y2="1.27" gradientUnits="userSpaceOnUse"/></defs><g style="fill:url(#b)" transform="translate(.934 25.196) scale(.75646)"><g style="fill:url(#c)" fill="url(#a)" word-spacing="0" letter-spacing="0" font-family="'OTADESIGN Rounded'" font-weight="400"><g transform="translate(-55.341 -52.023) scale(.26953)" style="fill:url(#d)"/><g style="fill:url(#e)"><path style="fill:url(#f)" d="M-41.832 77.19c-3.868 0-7.177 1.358-9.93 4.074-2.716 2.752-4.074 6.063-4.074 9.931 0 3.869 1.358 7.04 4.074 9.793 2.753 2.716 6.064 4.073 9.932 4.073 3.831 0 7.122-1.357 9.875-4.073.855-.855 1.283-1.896 1.283-3.123 0-1.228-.428-2.271-1.283-3.127-.856-.855-1.897-1.281-3.123-1.281-1.229 0-2.27.426-3.125 1.281-1.004 1.042-2.213 1.563-3.627 1.563-3.035-.31-5.208-2.263-5.246-5.106.038-2.842 2.21-4.935 5.244-5.246 1.414 0 2.623.52 3.627 1.563.855.855 1.898 1.283 3.127 1.283 1.226 0 2.267-.428 3.123-1.283.855-.856 1.283-1.897 1.283-3.125 0-1.227-.428-2.268-1.283-3.123-2.753-2.716-6.046-4.075-9.877-4.075zm20.902 6.91c-2.88 0-5.353 1.02-7.422 3.06-.642.643-.964 1.426-.964 2.348 0 .923.322 1.706.964 2.35.644.642 1.427.962 2.348.962.924 0 1.707-.32 2.35-.963.754-.783 1.662-1.173 2.724-1.173 1.09 0 2.026.376 2.809 1.13a3.909 3.909 0 0 1 1.135 2.811c0 1.062-.393 1.97-1.176 2.725-.392.419-.868.7-1.426.84-.141.027-.252.012-.336-.044-.056-.084-.028-.168.084-.251l.84-.881c.643-.643.965-1.411.965-2.305 0-.922-.28-1.663-.838-2.223-.559-.559-1.343-.84-2.35-.84-.698 0-1.397.35-2.095 1.05l-4.866 4.822c-.643.643-.964 1.426-.964 2.347 0 .923.321 1.705.964 2.348 1.957 1.93 4.375 2.894 7.254 2.894 2.908 0 5.396-1.034 7.465-3.103 2.041-2.041 3.06-4.5 3.06-7.379 0-2.907-1.019-5.396-3.06-7.465-2.069-2.04-4.557-3.06-7.465-3.06z" transform="translate(208.34 -284.25) scale(3.6954)" clip-rule="evenodd" fill-rule="evenodd"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -1,65 +1 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="512.0px"
height="512.0px"
viewBox="0 0 512.0 512.0"
version="1.1"
id="SVGRoot"
sodipodi:docname="inverse wordmark.svg"
xml:space="preserve"
inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview71"
pagecolor="#505050"
bordercolor="#eeeeee"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#505050"
inkscape:document-units="px"
showgrid="true"
inkscape:zoom="0.50150542"
inkscape:cx="59.819892"
inkscape:cy="189.42966"
inkscape:window-width="1600"
inkscape:window-height="931"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="layer1"><inkscape:grid
type="xygrid"
id="grid77" /></sodipodi:namedview><defs
id="defs66" /><g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"><path
id="rect136"
style="fill:#31748f;fill-opacity:1;stroke-width:0.996356"
d="M 0,0 V 512 H 512 V 0 Z" /><g
id="g17"
style="font-weight:400;font-family:'OTADESIGN Rounded';letter-spacing:0;word-spacing:0;fill:#ffffff"
transform="matrix(2.0847185,0,0,2.0847185,76.820648,146.38203)"><g
transform="matrix(0.26953,0,0,0.26953,-55.341,-52.023)"
id="g11"
style="fill:#ffffff" /><g
transform="matrix(3.6954,0,0,3.6954,208.34,-284.25)"
clip-rule="evenodd"
fill-rule="evenodd"
stroke-linejoin="round"
stroke-miterlimit="2"
id="g15"
style="fill:#ffffff"><path
d="m -41.8312,77.19 c -3.8683,0 -7.1782,1.3578 -9.9311,4.0734 -2.716,2.7525 -4.0734,6.0628 -4.0734,9.9311 5.0539,0.04979 6.082,0.01348 8.7525,0.0011 0.0024,-4.51e-4 0.0044,-6.05e-4 0.0069,-0.0011 0.03779,-2.8423 2.2103,-4.9346 5.2451,-5.2451 1.4137,0 2.6227,0.52089 3.6268,1.5629 0.855,0.8548 1.897,1.2822 3.1257,1.2822 1.2258,0 2.2676,-0.42741 3.1236,-1.2822 0.85499,-0.85567 1.2833,-1.8976 1.2833,-3.1257 0,-1.2264 -0.42828,-2.2673 -1.2833,-3.1231 -2.7528,-2.7156 -6.0446,-4.0734 -9.8761,-4.0734 z m -5.252,14.006 c -3.4453,-5.5934 -3.4667,0.08539 -8.7525,-0.0011 0,3.8683 1.3584,7.0406 4.0744,9.7931 2.7528,2.7156 6.0623,4.0734 9.9305,4.0734 3.8315,0 7.1238,-1.3578 9.8766,-4.0734 0.85499,-0.85577 1.2827,-1.8967 1.2827,-3.1231 0,-1.2282 -0.42775,-2.2701 -1.2827,-3.1257 -0.85596,-0.8548 -1.8978,-1.2822 -3.1236,-1.2822 -1.2287,0 -2.2707,0.42741 -3.1257,1.2822 -1.0041,1.042 -2.2136,1.5623 -3.6273,1.5623 -3.0348,-0.31051 -5.2084,-2.2633 -5.2462,-5.1056 -0.0024,1.1e-5 -0.0039,-1.2e-5 -0.0063,0 z m 26.154,-7.0965 c -2.8795,0 -5.3538,1.0204 -7.4227,3.0612 -0.64257,0.64316 -0.96404,1.4255 -0.96404,2.3472 0,0.92303 0.32146,1.7062 0.96404,2.3493 0.64331,0.64243 1.4265,0.96351 2.3477,0.96351 0.92347,0 1.7068,-0.32108 2.3493,-0.96351 0.75465,-0.78308 1.6632,-1.1744 2.7256,-1.1744 1.0894,0 2.0261,0.37695 2.8091,1.1316 0.75536,0.78309 1.1332,1.7201 1.1332,2.8102 0,1.0617 -0.39242,1.9703 -1.1754,2.7256 -0.39149,0.4193 -0.86676,0.69884 -1.4249,0.83878 -0.14116,0.02773 -0.25248,0.01369 -0.33614,-0.04175 -0.05605,-0.08456 -0.02751,-0.16827 0.08456,-0.25211 l 0.83825,-0.88053 c 0.64329,-0.64315 0.9651,-1.412 0.9651,-2.306 0,-0.92236 -0.27937,-1.6632 -0.83825,-2.2225 -0.55888,-0.55932 -1.3422,-0.83878 -2.3493,-0.83878 -0.6986,0 -1.397,0.34902 -2.0956,1.0475 l -4.8651,4.8223 c -0.64328,0.6438 -0.96457,1.4271 -0.96457,2.3488 0,0.92302 0.32128,1.7053 0.96457,2.3477 1.9568,1.9293 4.3751,2.8942 7.2546,2.8942 2.9072,0 5.3945,-1.0343 7.4634,-3.103 2.0412,-2.0409 3.0618,-4.501 3.0618,-7.3804 0,-2.9072 -1.0206,-5.3952 -3.0618,-7.4639 -2.0689,-2.0409 -4.5562,-3.0612 -7.4634,-3.0612 z"
clip-rule="evenodd"
fill-rule="nonzero"
stroke-miterlimit="2"
stroke-width="0"
id="path13"
sodipodi:nodetypes="cccccccscsccccccscscscccccccscscscscccccscsccscscsccc"
style="fill:#ffffff" /></g></g></g></svg>
<svg xml:space="preserve" viewBox="0 0 512 512" height="512" width="512" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="a"><stop style="stop-color:#31748f;stop-opacity:1" offset="0"/><stop style="stop-color:#9ccfd8;stop-opacity:1" offset="1"/></linearGradient><linearGradient xlink:href="#a" id="b" x1="254.819" y1="411.542" x2="259.34" y2="-1.41" gradientUnits="userSpaceOnUse"/></defs><path style="fill:url(#b);fill-opacity:1;stroke-width:.996356" d="M0 0v512h512V0Z"/><g style="font-weight:400;font-family:&quot;OTADESIGN Rounded&quot;;letter-spacing:0;word-spacing:0;fill:#fff"><g transform="translate(-38.55 37.929) scale(.5619)" style="fill:#fff"/><path style="fill:#fff" d="M-41.832 77.19c-3.868 0-7.177 1.358-9.93 4.074-2.716 2.752-4.074 6.063-4.074 9.931 0 3.869 1.358 7.04 4.074 9.793 2.753 2.716 6.064 4.073 9.932 4.073 3.831 0 7.122-1.357 9.875-4.073.855-.855 1.283-1.896 1.283-3.123 0-1.228-.428-2.271-1.283-3.127-.856-.855-1.897-1.281-3.123-1.281-1.229 0-2.27.426-3.125 1.281-1.004 1.042-2.213 1.563-3.627 1.563-3.035-.31-5.208-2.263-5.246-5.106.038-2.842 2.21-4.935 5.244-5.246 1.414 0 2.623.52 3.627 1.563.855.855 1.898 1.283 3.127 1.283 1.226 0 2.267-.428 3.123-1.283.855-.856 1.283-1.897 1.283-3.125 0-1.227-.428-2.268-1.283-3.123-2.753-2.716-6.046-4.075-9.877-4.075zm20.902 6.91c-2.88 0-5.353 1.02-7.422 3.06-.642.643-.964 1.426-.964 2.348 0 .923.322 1.706.964 2.35.644.642 1.427.962 2.348.962.924 0 1.707-.32 2.35-.963.754-.783 1.662-1.173 2.724-1.173 1.09 0 2.026.376 2.809 1.13a3.909 3.909 0 0 1 1.135 2.811c0 1.062-.393 1.97-1.176 2.725-.392.419-.868.7-1.426.84-.141.027-.252.012-.336-.044-.056-.084-.028-.168.084-.251l.84-.881c.643-.643.965-1.411.965-2.305 0-.922-.28-1.663-.838-2.223-.559-.559-1.343-.84-2.35-.84-.698 0-1.397.35-2.095 1.05l-4.866 4.822c-.643.643-.964 1.426-.964 2.347 0 .923.321 1.705.964 2.348 1.957 1.93 4.375 2.894 7.254 2.894 2.908 0 5.396-1.034 7.465-3.103 2.041-2.041 3.06-4.5 3.06-7.379 0-2.907-1.019-5.396-3.06-7.465-2.069-2.04-4.557-3.06-7.465-3.06z" transform="translate(511.15 -446.2) scale(7.70387)" clip-rule="evenodd" fill-rule="evenodd"/></g></svg>

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -5,7 +5,6 @@
<!-- needed for adaptive design -->
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://fonts.googleapis.com/css?family=Montserrat:300,400,700|Roboto:300,400,700" rel="stylesheet">
<!--
ReDoc doesn't change outer page styles

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -4,10 +4,5 @@
"module": "commonjs",
"allowSyntheticDefaultImports": true
},
"exclude": [
"node_modules",
"jspm_packages",
"tmp",
"temp"
]
"exclude": ["node_modules", "jspm_packages", "tmp", "temp"]
}

View File

@ -220,7 +220,7 @@ export class Init1000000000000 {
`CREATE INDEX "IDX_3c601b70a1066d2c8b517094cb" ON "notification" ("notifieeId") `,
);
await queryRunner.query(
`CREATE TABLE "meta" ("id" character varying(32) NOT NULL, "name" character varying(128), "description" character varying(1024), "maintainerName" character varying(128), "maintainerEmail" character varying(128), "announcements" jsonb NOT NULL DEFAULT '[]', "disableRegistration" boolean NOT NULL DEFAULT false, "disableLocalTimeline" boolean NOT NULL DEFAULT false, "disableGlobalTimeline" boolean NOT NULL DEFAULT false, "enableEmojiReaction" boolean NOT NULL DEFAULT true, "useStarForReactionFallback" boolean NOT NULL DEFAULT false, "langs" character varying(64) array NOT NULL DEFAULT '{}'::varchar[], "hiddenTags" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "blockedHosts" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "mascotImageUrl" character varying(512) DEFAULT '/assets/ai.png', "bannerUrl" character varying(512), "errorImageUrl" character varying(512) DEFAULT 'https://xn--931a.moe/aiart/yubitun.png', "iconUrl" character varying(512), "cacheRemoteFiles" boolean NOT NULL DEFAULT true, "proxyAccount" character varying(128), "enableRecaptcha" boolean NOT NULL DEFAULT false, "recaptchaSiteKey" character varying(64), "recaptchaSecretKey" character varying(64), "localDriveCapacityMb" integer NOT NULL DEFAULT 1024, "remoteDriveCapacityMb" integer NOT NULL DEFAULT 32, "maxNoteTextLength" integer NOT NULL DEFAULT 500, "summalyProxy" character varying(128), "enableEmail" boolean NOT NULL DEFAULT false, "email" character varying(128), "smtpSecure" boolean NOT NULL DEFAULT false, "smtpHost" character varying(128), "smtpPort" integer, "smtpUser" character varying(128), "smtpPass" character varying(128), "enableServiceWorker" boolean NOT NULL DEFAULT false, "swPublicKey" character varying(128), "swPrivateKey" character varying(128), "enableTwitterIntegration" boolean NOT NULL DEFAULT false, "twitterConsumerKey" character varying(128), "twitterConsumerSecret" character varying(128), "enableGithubIntegration" boolean NOT NULL DEFAULT false, "githubClientId" character varying(128), "githubClientSecret" character varying(128), "enableDiscordIntegration" boolean NOT NULL DEFAULT false, "discordClientId" character varying(128), "discordClientSecret" character varying(128), CONSTRAINT "PK_c4c17a6c2bd7651338b60fc590b" PRIMARY KEY ("id"))`,
`CREATE TABLE "meta" ("id" character varying(32) NOT NULL, "name" character varying(128), "description" character varying(1024), "maintainerName" character varying(128), "maintainerEmail" character varying(128), "announcements" jsonb NOT NULL DEFAULT '[]', "disableRegistration" boolean NOT NULL DEFAULT false, "disableLocalTimeline" boolean NOT NULL DEFAULT false, "disableGlobalTimeline" boolean NOT NULL DEFAULT false, "enableEmojiReaction" boolean NOT NULL DEFAULT true, "useStarForReactionFallback" boolean NOT NULL DEFAULT false, "langs" character varying(64) array NOT NULL DEFAULT '{}'::varchar[], "hiddenTags" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "blockedHosts" character varying(256) array NOT NULL DEFAULT '{}'::varchar[], "mascotImageUrl" character varying(512) DEFAULT '/static-assets/badges/info.png', "bannerUrl" character varying(512), "errorImageUrl" character varying(512) DEFAULT '/static-assets/badges/error.png', "iconUrl" character varying(512), "cacheRemoteFiles" boolean NOT NULL DEFAULT false, "proxyAccount" character varying(128), "enableRecaptcha" boolean NOT NULL DEFAULT false, "recaptchaSiteKey" character varying(64), "recaptchaSecretKey" character varying(64), "localDriveCapacityMb" integer NOT NULL DEFAULT 1024, "remoteDriveCapacityMb" integer NOT NULL DEFAULT 32, "maxNoteTextLength" integer NOT NULL DEFAULT 500, "summalyProxy" character varying(128), "enableEmail" boolean NOT NULL DEFAULT false, "email" character varying(128), "smtpSecure" boolean NOT NULL DEFAULT false, "smtpHost" character varying(128), "smtpPort" integer, "smtpUser" character varying(128), "smtpPass" character varying(128), "enableServiceWorker" boolean NOT NULL DEFAULT false, "swPublicKey" character varying(128), "swPrivateKey" character varying(128), "enableTwitterIntegration" boolean NOT NULL DEFAULT false, "twitterConsumerKey" character varying(128), "twitterConsumerSecret" character varying(128), "enableGithubIntegration" boolean NOT NULL DEFAULT false, "githubClientId" character varying(128), "githubClientSecret" character varying(128), "enableDiscordIntegration" boolean NOT NULL DEFAULT false, "discordClientId" character varying(128), "discordClientSecret" character varying(128), CONSTRAINT "PK_c4c17a6c2bd7651338b60fc590b" PRIMARY KEY ("id"))`,
);
await queryRunner.query(
`CREATE TABLE "following" ("id" character varying(32) NOT NULL, "createdAt" TIMESTAMP WITH TIME ZONE NOT NULL, "followeeId" character varying(32) NOT NULL, "followerId" character varying(32) NOT NULL, "followerHost" character varying(128), "followerInbox" character varying(512), "followerSharedInbox" character varying(512), "followeeHost" character varying(128), "followeeInbox" character varying(512), "followeeSharedInbox" character varying(512), CONSTRAINT "PK_c76c6e044bdf76ecf8bfb82a645" PRIMARY KEY ("id"))`,

View File

@ -4,10 +4,10 @@ export class AddSomeUrls1557761316509 {
`ALTER TABLE "meta" ADD "ToSUrl" character varying(512)`,
);
await queryRunner.query(
`ALTER TABLE "meta" ADD "repositoryUrl" character varying(512) NOT NULL DEFAULT 'https://github.com/misskey-dev/misskey'`,
`ALTER TABLE "meta" ADD "repositoryUrl" character varying(512) NOT NULL DEFAULT 'https://codeberg.org/calckey/calckey'`,
);
await queryRunner.query(
`ALTER TABLE "meta" ADD "feedbackUrl" character varying(512) DEFAULT 'https://github.com/misskey-dev/misskey/issues/new'`,
`ALTER TABLE "meta" ADD "feedbackUrl" character varying(512) DEFAULT 'https://codeberg.org/calckey/calckey/issues'`,
);
}
async down(queryRunner) {

View File

@ -0,0 +1,53 @@
export class NoteEdit1682753227899 {
name = "NoteEdit1682753227899";
async up(queryRunner) {
await queryRunner.query(`
CREATE TABLE "note_edit" (
"id" character varying(32) NOT NULL,
"noteId" character varying(32) NOT NULL,
"text" text,
"cw" character varying(512),
"fileIds" character varying(32) array NOT NULL DEFAULT '{}',
"updatedAt" TIMESTAMP WITH TIME ZONE NOT NULL,
CONSTRAINT "PK_736fc6e0d4e222ecc6f82058e08" PRIMARY KEY ("id")
)
`);
await queryRunner.query(`
COMMENT ON COLUMN "note_edit"."noteId" IS 'The ID of note.'
`);
await queryRunner.query(`
COMMENT ON COLUMN "note_edit"."updatedAt" IS 'The updated date of the Note.'
`);
await queryRunner.query(`
CREATE INDEX "IDX_702ad5ae993a672e4fbffbcd38" ON "note_edit" ("noteId")
`);
await queryRunner.query(`
ALTER TABLE "note"
ADD "updatedAt" TIMESTAMP WITH TIME ZONE
`);
await queryRunner.query(`
COMMENT ON COLUMN "note"."updatedAt" IS 'The updated date of the Note.'
`);
await queryRunner.query(`
ALTER TABLE "note_edit"
ADD CONSTRAINT "FK_702ad5ae993a672e4fbffbcd38c"
FOREIGN KEY ("noteId")
REFERENCES "note"("id")
ON DELETE CASCADE
ON UPDATE NO ACTION
`);
}
async down(queryRunner) {
await queryRunner.query(`
ALTER TABLE "note_edit" DROP CONSTRAINT "FK_702ad5ae993a672e4fbffbcd38c"
`);
await queryRunner.query(`
ALTER TABLE "note" DROP COLUMN "updatedAt"
`);
await queryRunner.query(`
DROP TABLE "note_edit"
`);
}
}

View File

@ -0,0 +1,23 @@
export class LibreTranslate1682777547198 {
name = "LibreTranslate1682777547198";
async up(queryRunner) {
await queryRunner.query(`
ALTER TABLE "meta"
ADD "libreTranslateApiUrl" character varying(512)
`);
await queryRunner.query(`
ALTER TABLE "meta"
ADD "libreTranslateApiKey" character varying(128)
`);
}
async down(queryRunner) {
await queryRunner.query(`
ALTER TABLE "meta" DROP COLUMN "libreTranslateApiKey"
`);
await queryRunner.query(`
ALTER TABLE "meta" DROP COLUMN "libreTranslateApiUrl"
`);
}
}

View File

@ -0,0 +1,13 @@
export class InstanceSilence1682891890317 {
name = "InstanceSilence1682891890317";
async up(queryRunner) {
await queryRunner.query(
`ALTER TABLE "meta" ADD "silencedHosts" character varying(256) array NOT NULL DEFAULT '{}'`,
);
}
async down(queryRunner) {
await queryRunner.query(`ALTER TABLE "meta" DROP COLUMN "silencedHosts"`);
}
}

View File

@ -0,0 +1,15 @@
export class AddHiddenPosts1682891891317 {
name = "AddHiddenPosts1682891891317";
async up(queryRunner) {
await queryRunner.query(
`ALTER TYPE note_visibility_enum ADD VALUE IF NOT EXISTS 'hidden'`,
);
}
async down(queryRunner) {
await queryRunner.query(
`ALTER TYPE note_visibility_enum REMOVE VALUE IF EXISTS 'hidden'`,
);
}
}

View File

@ -0,0 +1,15 @@
export class PreventAiLearning1683682889948 {
name = "PreventAiLearning1683682889948";
async up(queryRunner) {
await queryRunner.query(
`ALTER TABLE "user_profile" ADD "preventAiLearning" boolean NOT NULL DEFAULT true`,
);
}
async down(queryRunner) {
await queryRunner.query(
`ALTER TABLE "user_profile" DROP COLUMN "preventAiLearning"`,
);
}
}

View File

@ -0,0 +1,16 @@
export class ExperimentalFeatures1683980686995 {
name = "ExperimentalFeatures1683980686995";
async up(queryRunner) {
await queryRunner.query(`
ALTER TABLE "meta"
ADD "experimentalFeatures" jsonb NOT NULL DEFAULT '{}'
`);
}
async down(queryRunner) {
await queryRunner.query(`
ALTER TABLE "meta" DROP COLUMN "experimentalFeatures"
`);
}
}

View File

@ -0,0 +1,15 @@
export class RemoveShowTimelineReplies1684206886988 {
name = "RemoveShowTimelineReplies1684206886988";
async up(queryRunner) {
await queryRunner.query(
`ALTER TABLE "user" DROP COLUMN "showTimelineReplies"`,
);
}
async down(queryRunner) {
await queryRunner.query(
`ALTER TABLE "user" ADD "showTimelineReplies" boolean NOT NULL DEFAULT false`,
);
}
}

View File

@ -0,0 +1,19 @@
export class EmojiSize1684494870830 {
name = "EmojiSize1684494870830";
async up(queryRunner) {
await queryRunner.query(`ALTER TABLE "emoji" ADD "width" integer`);
await queryRunner.query(
`COMMENT ON COLUMN "emoji"."width" IS 'Image width'`,
);
await queryRunner.query(`ALTER TABLE "emoji" ADD "height" integer`);
await queryRunner.query(
`COMMENT ON COLUMN "emoji"."height" IS 'Image height'`,
);
}
async down(queryRunner) {
await queryRunner.query(`ALTER TABLE "emoji" DROP COLUMN "height"`);
await queryRunner.query(`ALTER TABLE "emoji" DROP COLUMN "width"`);
}
}

View File

@ -0,0 +1,3 @@
[*.rs]
indent_style = space
indent_size = 4

View File

@ -187,7 +187,6 @@ built/
#Added by cargo
/target
Cargo.lock
.pnp.*
.yarn/*

3332
packages/backend/native-utils/Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -3,13 +3,42 @@ edition = "2021"
name = "native-utils"
version = "0.0.0"
[workspace]
members = ["migration"]
[features]
default = []
noarray = []
napi = ["dep:napi", "dep:napi-derive", "dep:radix_fmt"]
[lib]
crate-type = ["cdylib"]
crate-type = ["cdylib", "lib"]
[dependencies]
async-trait = "0.1.68"
cfg-if = "1.0.0"
chrono = "0.4.24"
cuid2 = "0.1.0"
derive_more = "0.99.17"
jsonschema = "0.17.0"
once_cell = "1.17.1"
parse-display = "0.8.0"
rand = "0.8.5"
schemars = { version = "0.8.12", features = ["chrono"] }
sea-orm = { version = "0.11.3", features = ["sqlx-postgres", "postgres-array", "sqlx-sqlite", "runtime-tokio-rustls"] }
serde = { version = "1.0.163", features = ["derive"] }
serde_json = "1.0.96"
thiserror = "1.0.40"
tokio = { version = "1.28.1", features = ["full"] }
utoipa = "3.3.0"
# Default enable napi4 feature, see https://nodejs.org/api/n-api.html#node-api-version-matrix
napi = { version = "2.12.0", default-features = false, features = ["napi4"] }
napi-derive = "2.12.0"
napi = { version = "2.13.1", default-features = false, features = ["napi6", "tokio_rt"], optional = true }
napi-derive = { version = "2.12.0", optional = true }
radix_fmt = { version = "1.0.0", optional = true }
[dev-dependencies]
pretty_assertions = "1.3.0"
[build-dependencies]
napi-build = "2.0.1"

View File

@ -1,7 +1,32 @@
import test from "ava";
import { sum } from "../index.js";
import {
convertId,
IdConvertType,
nativeInitIdGenerator,
nativeCreateId,
nativeRandomStr,
} from "../built/index.js";
test("sum from native", (t) => {
t.is(sum(1, 2), 3);
test("convert to mastodon id", (t) => {
t.is(convertId("9gf61ehcxv", IdConvertType.MastodonId), "960365976481219");
t.is(
convertId("9fbr9z0wbrjqyd3u", IdConvertType.MastodonId),
"3954607381600562394",
);
t.is(
convertId("9fbs680oyviiqrol9md73p8g", IdConvertType.MastodonId),
"3494513243013053824",
);
});
test("create cuid2 with timestamp prefix", (t) => {
nativeInitIdGenerator(16, "");
t.not(nativeCreateId(BigInt(Date.now())), nativeCreateId(BigInt(Date.now())));
t.is(nativeCreateId(BigInt(Date.now())).length, 16);
});
test("create random string", (t) => {
t.not(nativeRandomStr(16), nativeRandomStr(16));
t.is(nativeRandomStr(24).length, 24);
});

View File

@ -0,0 +1,34 @@
[package]
name = "migration"
version = "0.1.0"
edition = "2021"
publish = false
[lib]
name = "migration"
path = "src/lib.rs"
[features]
default = []
convert = ["dep:native-utils", "dep:indicatif", "dep:futures"]
[dependencies]
serde_json = "1.0.96"
native-utils = { path = "../", optional = true }
indicatif = { version = "0.17.4", features = ["tokio"], optional = true }
tokio = { version = "1.28.2", features = ["full"] }
futures = { version = "0.3.28", optional = true }
serde_yaml = "0.9.21"
serde = { version = "1.0.163", features = ["derive"] }
urlencoding = "2.1.2"
[dependencies.sea-orm-migration]
version = "0.11.0"
features = [
# Enable at least one `ASYNC_RUNTIME` and `DATABASE_DRIVER` feature if you want to run migration via CLI.
# View the list of supported features at https://www.sea-ql.org/SeaORM/docs/install-and-config/database-and-async-runtime.
# e.g.
"runtime-tokio-rustls", # `ASYNC_RUNTIME` feature
"sqlx-postgres", # `DATABASE_DRIVER` feature
"sqlx-sqlite",
]

View File

@ -0,0 +1,55 @@
# Making migrations
For more information, please read https://www.sea-ql.org/SeaORM/docs/migration/setting-up-migration/
- Install `sea-orm-cli`
```sh
cargo install sea-orm-cli
```
- Generate
```sh
sea-orm-cli migrate generate ****
```
# Running Migrator CLI
- Generate a new migration file
```sh
cargo run -- migrate generate MIGRATION_NAME
```
- Apply all pending migrations
```sh
cargo run
```
```sh
cargo run -- up
```
- Apply first 10 pending migrations
```sh
cargo run -- up -n 10
```
- Rollback last applied migrations
```sh
cargo run -- down
```
- Rollback last 10 applied migrations
```sh
cargo run -- down -n 10
```
- Drop all tables from the database, then reapply all migrations
```sh
cargo run -- fresh
```
- Rollback all applied migrations, then reapply all migrations
```sh
cargo run -- refresh
```
- Rollback all applied migrations
```sh
cargo run -- reset
```
- Check the status of all migrations
```sh
cargo run -- status
```

View File

@ -0,0 +1,12 @@
pub use sea_orm_migration::prelude::*;
mod m20230531_180824_drop_reversi;
pub struct Migrator;
#[async_trait::async_trait]
impl MigratorTrait for Migrator {
fn migrations() -> Vec<Box<dyn MigrationTrait>> {
vec![Box::new(m20230531_180824_drop_reversi::Migration)]
}
}

View File

@ -0,0 +1,51 @@
use sea_orm_migration::{
prelude::*,
sea_orm::{DbBackend, Statement},
};
#[derive(DeriveMigrationName)]
pub struct Migration;
#[async_trait::async_trait]
impl MigrationTrait for Migration {
async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> {
if manager.get_database_backend() == DbBackend::Sqlite {
return Ok(());
}
let db = manager.get_connection();
db.query_one(Statement::from_string(
DbBackend::Postgres,
Table::drop()
.table(ReversiGame::Table)
.if_exists()
.to_string(PostgresQueryBuilder),
))
.await?;
db.query_one(Statement::from_string(
DbBackend::Postgres,
Table::drop()
.table(ReversiMatching::Table)
.if_exists()
.to_string(PostgresQueryBuilder),
))
.await?;
Ok(())
}
async fn down(&self, _manager: &SchemaManager) -> Result<(), DbErr> {
// Replace the sample below with your own migration scripts
Ok(())
}
}
/// Learn more at https://docs.rs/sea-query#iden
#[derive(Iden)]
enum ReversiGame {
Table,
}
#[derive(Iden)]
enum ReversiMatching {
Table,
}

View File

@ -0,0 +1,50 @@
use serde::Deserialize;
use std::env;
use std::fs;
use urlencoding::encode;
use sea_orm_migration::prelude::*;
#[cfg(feature = "convert")]
mod vec_to_json;
#[tokio::main]
async fn main() {
let cwd = env::current_dir().unwrap();
let yml = fs::File::open(cwd.join("../../.config/default.yml"))
.expect("Failed to open '.config/default.yml'");
let config: Config = serde_yaml::from_reader(yml).expect("Failed to parse yaml");
env::set_var(
"DATABASE_URL",
format!(
"postgres://{}:{}@{}:{}/{}",
config.db.user,
encode(&config.db.pass),
config.db.host,
config.db.port,
config.db.db,
),
);
cli::run_cli(migration::Migrator).await;
#[cfg(feature = "convert")]
vec_to_json::convert().await;
}
#[derive(Debug, PartialEq, Deserialize)]
#[serde(rename = "camelCase")]
pub struct Config {
pub db: DbConfig,
}
#[derive(Debug, PartialEq, Deserialize)]
#[serde(rename = "camelCase")]
pub struct DbConfig {
pub host: String,
pub port: u32,
pub db: String,
pub user: String,
pub pass: String,
}

View File

@ -0,0 +1,498 @@
use indicatif::{MultiProgress, ProgressBar, ProgressStyle};
use native_utils::model::entity::newtype::{I32Vec, StringVec};
use sea_orm_migration::{
prelude::*,
sea_orm::{Database, DbBackend, DbConn, Statement, TryGetable},
};
use serde_json::json;
use std::env;
use std::time::Duration;
pub async fn convert() {
let uri = env::var("DATABASE_URL").expect("Environment variable 'DATABASE_URL' not set");
let db = Database::connect(uri).await.expect("Unable to connect");
let mp = MultiProgress::new();
let handlers = vec![
tokio::spawn(to_json::<AccessToken, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
AccessToken::Table,
AccessToken::Id,
AccessToken::Permission,
)),
tokio::spawn(to_json::<Antenna, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Antenna::Table,
Antenna::Id,
Antenna::Users,
)),
tokio::spawn(to_json::<App, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
App::Table,
App::Id,
App::Permission,
)),
tokio::spawn(to_json::<Emoji, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Emoji::Table,
Emoji::Id,
Emoji::Aliases,
)),
tokio::spawn(to_json::<GalleryPost, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
GalleryPost::Table,
GalleryPost::Id,
GalleryPost::FileIds,
)),
tokio::spawn(to_json::<GalleryPost, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
GalleryPost::Table,
GalleryPost::Id,
GalleryPost::Tags,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::MentionedUserIds,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::MentionedLocalUserIds,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::MentionedRemoteUserIds,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::AttachedUserIds,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::AttachedLocalUserIds,
)),
tokio::spawn(to_json::<Hashtag, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Hashtag::Table,
Hashtag::Id,
Hashtag::AttachedRemoteUserIds,
)),
tokio::spawn(to_json::<MessagingMessage, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
MessagingMessage::Table,
MessagingMessage::Id,
MessagingMessage::Reads,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::Langs,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::BlockedHosts,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::HiddenTags,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::PinnedUsers,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::PinnedPages,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::RecommendedInstances,
)),
tokio::spawn(to_json::<Meta, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Meta::Table,
Meta::Id,
Meta::SilencedHosts,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::FileIds,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::AttachedFileTypes,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::VisibleUserIds,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::Mentions,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::Emojis,
)),
tokio::spawn(to_json::<Note, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Note::Table,
Note::Id,
Note::Tags,
)),
tokio::spawn(to_json::<NoteEdit, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
NoteEdit::Table,
NoteEdit::Id,
NoteEdit::FileIds,
)),
tokio::spawn(to_json::<Page, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Page::Table,
Page::Id,
Page::VisibleUserIds,
)),
tokio::spawn(to_json::<RegistryItem, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
RegistryItem::Table,
RegistryItem::Id,
RegistryItem::Scope,
)),
tokio::spawn(to_json::<User, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
User::Table,
User::Id,
User::Tags,
)),
tokio::spawn(to_json::<User, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
User::Table,
User::Id,
User::Emojis,
)),
tokio::spawn(to_json::<Webhook, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Webhook::Table,
Webhook::Id,
Webhook::On,
)),
tokio::spawn(to_json::<Poll, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
Poll::Table,
Poll::NoteId,
Poll::Choices,
)),
tokio::spawn(to_json::<Poll, Vec<i32>, I32Vec>(
db.clone(),
mp.clone(),
Poll::Table,
Poll::NoteId,
Poll::Votes,
)),
tokio::spawn(to_json::<UserProfile, Vec<String>, StringVec>(
db.clone(),
mp.clone(),
UserProfile::Table,
UserProfile::UserId,
UserProfile::MutingNotificationTypes,
)),
];
futures::future::join_all(handlers).await;
}
fn select_query<T: Iden + 'static>(table: T, id: T, col: T) -> String {
Query::select()
.column(id)
.column(col)
.from(table)
.to_string(PostgresQueryBuilder)
}
async fn get_vec<T: TryGetable>(db: &DbConn, query: String) -> Result<Vec<(String, T)>, DbErr> {
let res: Vec<(String, T)> = db
.query_all(Statement::from_string(DbBackend::Postgres, query))
.await?
.iter()
.filter_map(|r| r.try_get_many_by_index().ok())
.collect();
Ok(res)
}
async fn convert_col<T: Iden + Clone + 'static>(
db: &DbConn,
table: T,
col: T,
) -> Result<(), DbErr> {
let stmt = Table::alter()
.table(table)
.drop_column(col.to_owned())
.add_column(
ColumnDef::new(col.to_owned())
.json_binary()
.not_null()
.default(json!([])),
)
.to_string(PostgresQueryBuilder);
db.query_one(Statement::from_string(DbBackend::Postgres, stmt))
.await?;
Ok(())
}
async fn to_json<T, U, V>(
db: DbConn,
mp: MultiProgress,
table: T,
id: T,
col: T,
) -> Result<(), DbErr>
where
T: Iden + Clone + 'static,
U: TryGetable + IntoIterator + Clone,
V: From<U> + Into<SimpleExpr>,
{
let query = select_query(table.clone(), id.clone(), col.clone());
let loading = ProgressBar::new_spinner()
.with_style(ProgressStyle::with_template("{prefix} {msg} {spinner}").unwrap())
.with_prefix("[-]")
.with_message(format!(
"Loading data from {}.{}",
table.to_string(),
col.to_string()
));
let loading = mp.add(loading);
loading.enable_steady_tick(Duration::from_millis(100));
let res = get_vec::<U>(&db, query).await?;
let models: Vec<(String, V)> = res
.iter()
.filter(|(_, r)| r.clone().into_iter().count() > 0)
.map(|(id, r)| (id.clone(), <V>::from(r.clone())))
.collect();
loading.finish_and_clear();
convert_col(&db, table.clone(), col.clone()).await?;
let progress = ProgressBar::new(models.len() as u64)
.with_style(
ProgressStyle::with_template("{prefix} {msg} {wide_bar} {pos}/{len}")
.unwrap()
.progress_chars("##-"),
)
.with_prefix("[*]")
.with_message(format!("Copying {}.{}", table.to_string(), col.to_string()));
let progress = mp.add(progress);
for model in models {
progress.inc(1);
let q = Query::update()
.table(table.clone())
.values([(col.clone(), model.1.into())])
.and_where(Expr::col(id.clone()).eq(model.0))
.to_string(PostgresQueryBuilder);
db.query_one(Statement::from_string(DbBackend::Postgres, q))
.await?;
}
progress.finish_with_message(format!("Done {}.{}", table.to_string(), col.to_string()));
Ok(())
}
#[derive(Iden, Clone)]
enum AccessToken {
Table,
Id,
Permission,
}
#[derive(Iden, Clone)]
enum Antenna {
Table,
Id,
Users,
}
#[derive(Iden, Clone)]
enum App {
Table,
Id,
Permission,
}
#[derive(Iden, Clone)]
enum Emoji {
Table,
Id,
Aliases,
}
#[derive(Iden, Clone)]
enum GalleryPost {
Table,
Id,
#[iden = "fileIds"]
FileIds,
Tags,
}
#[derive(Iden, Clone)]
enum Hashtag {
Table,
Id,
#[iden = "mentionedUserIds"]
MentionedUserIds,
#[iden = "mentionedLocalUserIds"]
MentionedLocalUserIds,
#[iden = "mentionedRemoteUserIds"]
MentionedRemoteUserIds,
#[iden = "attachedUserIds"]
AttachedUserIds,
#[iden = "attachedLocalUserIds"]
AttachedLocalUserIds,
#[iden = "attachedRemoteUserIds"]
AttachedRemoteUserIds,
}
#[derive(Iden, Clone)]
enum MessagingMessage {
Table,
Id,
Reads,
}
#[derive(Iden, Clone)]
enum Meta {
Table,
Id,
Langs,
#[iden = "hiddenTags"]
HiddenTags,
#[iden = "blockedHosts"]
BlockedHosts,
#[iden = "pinnedUsers"]
PinnedUsers,
#[iden = "pinnedPages"]
PinnedPages,
#[iden = "recommendedInstances"]
RecommendedInstances,
#[iden = "silencedHosts"]
SilencedHosts,
}
#[derive(Iden, Clone)]
enum Note {
Table,
Id,
#[iden = "fileIds"]
FileIds,
#[iden = "attachedFileTypes"]
AttachedFileTypes,
#[iden = "visibleUserIds"]
VisibleUserIds,
Mentions,
Emojis,
Tags,
}
#[derive(Iden, Clone)]
enum NoteEdit {
Table,
Id,
#[iden = "fileIds"]
FileIds,
}
#[derive(Iden, Clone)]
enum Page {
Table,
Id,
#[iden = "visibleUserIds"]
VisibleUserIds,
}
#[derive(Iden, Clone)]
enum Poll {
Table,
#[iden = "noteId"]
NoteId,
Choices,
Votes, // I32Vec
}
#[derive(Iden, Clone)]
enum RegistryItem {
Table,
Id,
Scope,
}
#[derive(Iden, Clone)]
enum User {
Table,
Id,
Tags,
Emojis,
}
#[derive(Iden, Clone)]
enum UserProfile {
Table,
#[iden = "userId"]
UserId,
#[iden = "mutingNotificationTypes"]
MutingNotificationTypes,
}
#[derive(Iden, Clone)]
enum Webhook {
Table,
Id,
On,
}

View File

@ -23,8 +23,8 @@
},
"license": "MIT",
"devDependencies": {
"@napi-rs/cli": "^2.15.0",
"ava": "^5.1.1"
"@napi-rs/cli": "2.16.1",
"ava": "5.1.1"
},
"ava": {
"timeout": "3m"
@ -34,11 +34,17 @@
},
"scripts": {
"artifacts": "napi artifacts",
"build": "napi build --platform --release ./built/",
"build:debug": "napi build --platform",
"build": "pnpm run build:napi && pnpm run build:migration",
"build:napi": "napi build --features napi --platform --release ./built/",
"build:migration": "cargo build --locked --release --manifest-path ./migration/Cargo.toml && cp ./target/release/migration ./built/migration",
"build:debug": "napi build --platform ./built/ && cargo build --manifest-path ./migration/Cargo.toml",
"prepublishOnly": "napi prepublish -t npm",
"test": "ava",
"test": "pnpm run cargo:test && pnpm run build:napi && ava",
"universal": "napi universal",
"version": "napi version"
"version": "napi version",
"format": "cargo fmt --all",
"cargo:test": "pnpm run cargo:unit && pnpm run cargo:integration",
"cargo:unit": "cargo test unit_test && cargo test -F napi unit_test",
"cargo:integration": "cargo test -F noarray int_test -- --test-threads=1"
}
}

View File

@ -1,2 +0,0 @@
tab_spaces = 2
edition = "2021"

View File

@ -0,0 +1,13 @@
use sea_orm::error::DbErr;
use crate::impl_into_napi_error;
#[derive(thiserror::Error, Debug, PartialEq, Eq)]
pub enum Error {
#[error("The database connections have not been initialized yet")]
Uninitialized,
#[error("ORM error: {0}")]
OrmError(#[from] DbErr),
}
impl_into_napi_error!(Error);

View File

@ -0,0 +1,38 @@
pub mod error;
use cfg_if::cfg_if;
use error::Error;
use sea_orm::{Database, DbConn};
static DB_CONN: once_cell::sync::OnceCell<DbConn> = once_cell::sync::OnceCell::new();
pub async fn init_database(conn_uri: impl Into<String>) -> Result<(), Error> {
let conn = Database::connect(conn_uri.into()).await?;
DB_CONN.get_or_init(move || conn);
Ok(())
}
pub fn get_database() -> Result<&'static DbConn, Error> {
DB_CONN.get().ok_or(Error::Uninitialized)
}
cfg_if! {
if #[cfg(feature = "napi")] {
use napi_derive::napi;
#[napi]
pub async fn native_init_database(conn_uri: String) -> napi::Result<()> {
init_database(conn_uri).await.map_err(Into::into)
}
}
}
#[cfg(test)]
mod unit_test {
use super::{error::Error, get_database};
#[test]
fn error_uninitialized() {
assert_eq!(get_database().unwrap_err(), Error::Uninitialized);
}
}

View File

@ -1,2 +1,7 @@
pub mod database;
pub mod macros;
pub mod model;
pub mod util;
#[cfg(feature = "napi")]
pub mod mastodon_api;

Some files were not shown because too many files have changed in this diff Show More