that Japanese string exactly matches that i18n key
(cherry picked from commit a408d32bb72ada9a4ad6bd1afe6e3fadb9b403db)
Co-authored-by: dakkar <dakkar@thenautilus.net>
* fix: pass current user into `InstanceEntityService.packMany`
(cherry picked from commit 858ba188768017764c61c4a5591bdf2524a850e7)
* Update Changelog
* origin
* Update Changelog
---------
Co-authored-by: Hazel K <acomputerdog@gmail.com>
* fix(backend): missing `visibility` param in packing flash
* fix(frontend): use `visibility` value got from API
* enhance(frontend): change preview appearance of private Play
* Update CHANGELOG.md
* fix(backend): check visibility of following/followers of remote users
Resolves https://github.com/misskey-dev/misskey/issues/13362.
* test(backend): add tests for visibility of following/followers of remote users
* docs(changelog): update CHANGELOG.md
* feat: moderators can see following/followers of all users
* docs(changelog): update CHANGELOG.md
* refactor(backend): minor refactoring
`createPerson`と`if`の条件を統一するとともに、異常系の
処理をearly returnに追い出すための変更。
* feat(backend): moderators can see following/followers count of all users
As per https://github.com/misskey-dev/misskey/pull/14375#issuecomment-2275044908.
* chore: improve withReplies toggle for user following
* chore: improve withReplies toggle for list
* docs(changelog): フォロー中のユーザーに関する"TLに他の人への返信を含める"の設定が分かりづらい問題を修正
* Fix CHANGELOG.md
* docs(changelog): update insertion position
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* fix: reply to my follower notes are not shown on the home timeline
* fix: reply to follower note by non-following is on social timeline
* docs: changelog
* test: add endpoint test for changes
* test(e2e): 自分のfollowers投稿に対するリプライが流れる
* test(e2e/streaming): 自分のfollowers投稿に対するリプライが流れる
* test(e2e/streaming): フォローしていないユーザによるフォロワー限定投稿に対するリプライがソーシャルタイムラインで表示されることがある問題
* test(e2e/timelines): try fixing typecheck error
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* chore(frontend): reorder assignments
* fix(frontend): visibleUserIds is not kept when deleteAndEdit
* fix(frontend): quoteId is not kept on draft
* fix(frontend): reactionAcceptance is not kept for draft/deleteAndEdit
* docs(changelog): update changelog
* fix: correct typos
* chore: convert indentation to tabs
* fix: missing lang
* chore: trim unnecessary whitespaces and newlines
* chore: use local path
* chore: use GFM alerts
* fix: missing use GFM alerts
* chore(misskey-js): Unchanged files with check annotationsで紛らわしい部分の警告を抑制 ロジック面は後で直す
* dummy change to see if the feature do not report them (to be reverted after the check)
* refactor: 型合わせ
* refactor: fix warnings from c22dd6358b
* lint
* 型合わせ
* キャスト
* pnpm build-misskey-js-with-types
* Revert "dummy change to see if the feature do not report them (to be reverted after the check)"
This reverts commit 67072e3ca6.
* eliminate reversiGame any
* move reversiGame types
* lint
* Update packages/misskey-js/src/streaming.ts
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* Update acct.ts
* run api extractor
* re-run api extractor
---------
Co-authored-by: Kisaragi Marine <kisaragi.effective@gmail.com>
Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com>
* fix(frontend): blurhashが無い場合に何も出力されないのを修正
* Update Changelog
* Update packages/frontend/src/components/MkImgWithBlurhash.vue
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* attempt to fix test
* Update packages/frontend/src/components/MkImgWithBlurhash.vue
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* attempt to ignore test
---------
Co-authored-by: tamaina <tamaina@hotmail.co.jp>
* feat(backend): Load settings via environment variables
If they're not loaded from the config file.
* chore(docker): Add hints for environment variables
It supports users to know about them.
* docs(changelog): Add the description about this change
Users can notice what's changed by this PR.
* style(backend): Fix code syntax
To pass the linter.
* feat(backend): mark an file as sensitive if the file was newly federated as sensitive
* docs(changelog): もともとセンシティブではないと連合されていたファイルがセンシティブとして連合された場合にセンシティブとしてそのファイルを扱うように
* fix: change way to update federated image
* Update packages/backend/src/core/DriveService.ts
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* update isSensitive of existing record object
---------
Co-authored-by: Sayamame-beans <61457993+Sayamame-beans@users.noreply.github.com>
* feat(backend): add /healthz endpoint
* feat(backend): also check meilisearch status if available
* style: header
* chore: no-store
* chore: healthcheck.sh
* style: format
(Cherry-picked from https://github.com/nafu-at/misskey/commit/b89c2af6945c6a9f9f10e83f54d2bcf0f240b0b4, https://github.com/nafu-at/misskey/commit/8a7d710c6acb83f50c83f050bd1423c764d60a99)
We're glad you're interested in contributing Misskey! In this document you will find the information you need to contribute to the project.
> **Note**
> [!NOTE]
> This project uses Japanese as its major language, **but you do not need to translate and write the Issues/PRs in Japanese.**
> Also, you might receive comments on your Issue/PR in Japanese, but you do not need to reply to them in Japanese as well.\
> The accuracy of machine translation into Japanese is not high, so it will be easier for us to understand if you write it in the original language.
@@ -17,16 +17,31 @@ Before creating an issue, please check the following:
- Issues should only be used to feature requests, suggestions, and bug tracking.
- Please ask questions or troubleshooting in [GitHub Discussions](https://github.com/misskey-dev/misskey/discussions) or [Discord](https://discord.gg/Wp8gVStHW3).
> **Warning**
> [!WARNING]
> Do not close issues that are about to be resolved. It should remain open until a commit that actually resolves it is merged.
## Before implementation
### Recommended discussing before implementation
We welcome your proposal.
When you want to add a feature or fix a bug, **first have the design and policy reviewed in an Issue** (if it is not there, please make one). Without this step, there is a high possibility that the PR will not be merged even if it is implemented.
At this point, you also need to clarify the goals of the PR you will create, and make sure that the other members of the team are aware of them.
PRs that do not have a clear set of do's and don'ts tend to be bloated and difficult to review.
Also, when you start implementation, assign yourself to the Issue (if you cannot do it yourself, ask another member to assign you). By expressing your intention to work the Issue, you can prevent conflicts in the work.
Also, when you start implementation, assign yourself to the Issue (if you cannot do it yourself, ask Committer to assign you).
By expressing your intention to work on the Issue, you can prevent conflicts in the work.
To the Committers: you should not assign someone on it before the Final Decision.
### How issues are triaged
The Committers may:
* close an issue that is not reproducible on latest stable release,
* merge an issue into another issue,
* split an issue into multiple issues,
* or re-open that has been closed for some reason which is not applicable anymore.
@syuilo reserves the Final Decision rights including whether the project will implement feature and how to implement, these rights are not always exercised.
## Well-known branches
- **`master`** branch is tracking the latest release and used for production purposes.
@@ -77,7 +92,7 @@ An actual domain will be assigned so you can test the federation.
## Release
### Release Instructions
1. Commit version changes in the `develop` branch ([package.json](https://github.com/misskey-dev/misskey/blob/develop/package.json))
1. Commit version changes in the `develop` branch ([package.json](package.json))
2. Create a release PR.
- Into `master` from `develop` branch.
- The title must be in the format `Release: x.y.z`.
@@ -88,7 +103,7 @@ An actual domain will be assigned so you can test the federation.
- The target branch must be `master`
- The tag name must be the version
> **Note**
> [!NOTE]
> Why this instruction is necessary:
> - To perform final QA checks
> - To distribute responsibility
@@ -106,12 +121,42 @@ If your language is not listed in Crowdin, please open an issue.
Before developing, you have to set up environment. Misskey requires Redis, PostgreSQL, and FFmpeg.
You would want to install Meilisearch to experiment related features. Technically, meilisearch is not strict requirement, but some features and tests require it.
There are a few ways to proceed.
#### Use system-wide software
You could install them in system-wide (such as from package manager).
#### Use `docker compose`
You could obtain middleware container by typing `docker compose -f $PROJECT_ROOT/compose.local-db.yml up -d`.
#### Use Devcontainer
Devcontainer also has necessary setting. This method can be done by connecting from VSCode.
Instead of running `pnpm` locally, you can use Dev Container to set up your development environment.
To use Dev Container, open the project directory on VSCode with Dev Containers installed.
**Note:** If you are using Windows, please clone the repository with WSL. Using Git for Windows will result in broken files due to the difference in how newlines are handled.
It will run the following command automatically inside the container.
- Server-side source files and automatically builds them if they are modified. Automatically start the server process(es).
@@ -135,26 +180,6 @@ MK_DEV_PREFER=backend pnpm dev
- To change the port of Vite, specify with `VITE_PORT` environment variable.
- HMR may not work in some environments such as Windows.
### Dev Container
Instead of running `pnpm` locally, you can use Dev Container to set up your development environment.
To use Dev Container, open the project directory on VSCode with Dev Containers installed.
**Note:** If you are using Windows, please clone the repository with WSL. Using Git for Windows will result in broken files due to the difference in how newlines are handled.
It will run the following command automatically inside the container.
Thanks to [Chromatic](https://www.chromatic.com/) for providing the visual testing platform that helps us review UI changes and catch visual regressions.
forExistingUsersDescription:"Ist diese Option aktiviert, wird diese Ankündigung nur Nutzern angezeigt, die zum Zeitpunkt der Ankündigung bereits registriert sind. Ist sie deaktiviert, wird sie auch Nutzern, die sich nach dessen Veröffentlichung registrieren, angezeigt."
@@ -108,11 +109,14 @@ enterEmoji: "Enter an emoji"
renote:"Renote"
unrenote:"Remove renote"
renoted:"Renoted."
renotedToX:"Renote to {name}."
cantRenote:"This post can't be renoted."
cantReRenote:"A renote can't be renoted."
quote:"Quote"
inChannelRenote:"Channel-only Renote"
inChannelQuote:"Channel-only Quote"
renoteToChannel:"Renote to channel"
renoteToOtherChannel:"Renote to other channel"
pinnedNote:"Pinned note"
pinned:"Pin to profile"
you:"You"
@@ -122,8 +126,8 @@ add: "Add"
reaction:"Reactions"
reactions:"Reactions"
emojiPicker:"Emoji picker"
pinnedEmojisForReactionSettingDescription:"Set the emojis which should be pinned and displayed immediately when reacting."
pinnedEmojisSettingDescription:"Set the emojis to be pinned and displayed when viewing emoji picker"
pinnedEmojisForReactionSettingDescription:"Set the emojis to be pinned and displayed when reacting."
pinnedEmojisSettingDescription:"Set the emojis to be pinned and displayed when viewing emoji picker."
emojiPickerDisplay:"Emoji picker display"
overwriteFromPinnedEmojisForReaction:"Override from reaction settings"
overwriteFromPinnedEmojis:"Override from general settings"
@@ -151,6 +155,7 @@ editList: "Edit list"
selectChannel:"Select a channel"
selectAntenna:"Select an antenna"
editAntenna:"Edit antenna"
createAntenna:"Create an antenna"
selectWidget:"Select a widget"
editWidgets:"Edit widgets"
editWidgetsExit:"Done"
@@ -162,7 +167,7 @@ emojiUrl: "Emoji URL"
addEmoji:"Add an emoji"
settingGuide:"Recommended settings"
cacheRemoteFiles:"Cache remote files"
cacheRemoteFilesDescription:"When this setting is disabled, remote files are loaded directly from the remote instance. Disabling this will decrease storage usage, but increase traffic, as thumbnails will not be generated."
cacheRemoteFilesDescription:"When this setting is disabled, remote files are loaded directly from the remote servers. Disabling this will decrease storage usage, but increase traffic, as thumbnails will not be generated."
youCanCleanRemoteFilesCache:"You can clear the cache by clicking the 🗑️ button in the file management view."
cacheRemoteSensitiveFilesDescription:"When this setting is disabled, sensitive remote files are loaded directly from the remote instance without caching."
@@ -177,6 +182,10 @@ addAccount: "Add account"
reloadAccountsList:"Reload account list"
loginFailed:"Failed to sign in"
showOnRemote:"View on remote instance"
continueOnRemote:"Continue on a remote server"
chooseServerOnMisskeyHub:"Choose a server from the Misskey Hub"
specifyServerHost:"Specify a server host directly"
inputHostName:"Enter the domain"
general:"General"
wallpaper:"Wallpaper"
setWallpaper:"Set wallpaper"
@@ -187,6 +196,7 @@ followConfirm: "Are you sure that you want to follow {name}?"
proxyAccount:"Proxy account"
proxyAccountDescription:"A proxy account is an account that acts as a remote follower for users under certain conditions. For example, when a user adds a remote user to the list, the remote user's activity will not be delivered to the instance if no local user is following that user, so the proxy account will follow instead."
host:"Host"
selectSelf:"Select myself"
selectUser:"Select a user"
recipient:"Recipient"
annotation:"Comments"
@@ -202,6 +212,7 @@ perDay: "Per Day"
stopActivityDelivery:"Stop sending activities"
blockThisInstance:"Block this instance"
silenceThisInstance:"Silence this instance"
mediaSilenceThisInstance:"Media-silence this server"
operations:"Operations"
software:"Software"
version:"Version"
@@ -222,7 +233,9 @@ clearCachedFilesConfirm: "Are you sure that you want to delete all cached remote
blockedInstances:"Blocked Instances"
blockedInstancesDescription:"List the hostnames of the instances you want to block separated by linebreaks. Listed instances will no longer be able to communicate with this instance."
silencedInstances:"Silenced instances"
silencedInstancesDescription:"List the hostnames of the instances that you want to silence. All accounts of the listed instances will be treated as silenced, can only make follow requests, and cannot mention local accounts if not followed. This will not affect blocked instances."
silencedInstancesDescription:"List the hostnames of the servers that you want to silence, separated by a new line. All accounts belonging to the listed servers will be treated as silenced, and can only make follow requests, and cannot mention local accounts if not followed. This will not affect the blocked servers."
mediaSilencedInstances:"Media-silenced servers"
mediaSilencedInstancesDescription:"List the host names of the servers that you want to media-silence, separated by a new line. All accounts belonging to the listed servers will be treated as sensitive, and can't use custom emojis. This will not affect the blocked servers."
muteAndBlock:"Mutes and Blocks"
mutedUsers:"Muted users"
blockedUsers:"Blocked users"
@@ -313,6 +326,7 @@ selectFile: "Select a file"
selectFiles:"Select files"
selectFolder:"Select a folder"
selectFolders:"Select folders"
fileNotSelected:""
renameFile:"Rename file"
folderName:"Folder name"
createFolder:"Create a folder"
@@ -384,7 +398,7 @@ mcaptcha: "mCaptcha"
enableMcaptcha:"Enable mCaptcha"
mcaptchaSiteKey:"Site key"
mcaptchaSecretKey:"Secret key"
mcaptchaInstanceUrl:"mCaptcha instance URL"
mcaptchaInstanceUrl:"mCaptcha server URL"
recaptcha:"reCAPTCHA"
enableRecaptcha:"Enable reCAPTCHA"
recaptchaSiteKey:"Site key"
@@ -468,10 +482,12 @@ retype: "Enter again"
noteOf:"Note by {user}"
quoteAttached:"Quote"
quoteQuestion:"Append as quote?"
attachAsFileQuestion:"The text in clipboard is long. Would you want to attach it as text file?"
noMessagesYet:"No messages yet"
newMessageExists:"There are new messages"
onlyOneFileCanBeAttached:"You can only attach one file to a message"
signinRequired:"Please register or sign in before continuing"
signinOrContinueOnRemote:"To continue, you need to move your server or sign up / log in to this server."
invitations:"Invites"
invitationCode:"Invitation code"
checking:"Checking..."
@@ -832,6 +848,7 @@ administration: "Management"
accounts:"Accounts"
switch:"Switch"
noMaintainerInformationWarning:"Maintainer information is not configured."
noInquiryUrlWarning:"Inquiry URL isn’t set"
noBotProtectionWarning:"Bot protection is not configured."
configure:"Configure"
postToGallery:"Create new gallery post"
@@ -1021,6 +1038,7 @@ thisPostMayBeAnnoyingHome: "Post to home timeline"
preservedUsernamesDescription:"List usernames to reserve separated by linebreaks. These will become unable during normal account creation, but can be used by administrators to manually create accounts. Already existing accounts using these usernames will not be affected."
createNoteFromTheFile:"Compose note from this file"
channelArchiveConfirmDescription:"An archived channel won't appear in the channel list or search results anymore. New posts can also not be added to it anymore."
thisChannelArchived:"This channel has been archived."
preventAiLearningDescription:"Requests crawlers to not use posted text or image material etc. in machine learning (Predictive / Generative AI) data sets. This is achieved by adding a \"noai\" HTML-Response flag to the respective content. A complete prevention can however not be achieved through this flag, as it may simply be ignored."
options:"Options"
specifyUser:"Specific user"
lookupConfirm:"Do you want to look up?"
openTagPageConfirm:"Do you want to open a hashtag page?"
specifyHost:"Specify a host"
failedToPreviewUrl:"Could not preview"
update:"Update"
rolesThatCanBeUsedThisEmojiAsReaction:"Roles that can use this emoji as reaction"
@@ -1232,9 +1255,23 @@ launchApp: "Launch the app"
useNativeUIForVideoAudioPlayer:"Use UI of browser when play video and audio"
keepOriginalFilename:"Keep original file name"
keepOriginalFilenameDescription:"If you turn off this setting, files names will be replaced with random string automatically when you upload files."
noDescription:"There is not the explanation"
noDescription:"There is no explanation"
alwaysConfirmFollow:"Always confirm when following"
inquiry:"Contact"
tryAgain:"Please try again later"
confirmWhenRevealingSensitiveMedia:"Confirm when revealing sensitive media"
sensitiveMediaRevealConfirm:"This might be a sensitive media. Are you sure to reveal?"
createdLists:"Created lists"
createdAntennas:"Created antennas"
_delivery:
status:"Delivery status"
stop:"Suspended"
resume:"Delivery resume"
_type:
none:"Publishing"
manuallySuspended:"Manually suspended"
goneSuspended:"Server is suspended due to server deletion"
autoSuspendedForNotResponding:"Server is suspended due to no responding"
_bubbleGame:
howToPlay:"How to play"
hold:"Hold"
@@ -1328,7 +1365,7 @@ _initialTutorial:
_exampleNote:
cw:"This will surely make you hungry!"
note:"Just had a chocolate-glazed donut 🍩😋"
useCases:"This is used when following the server guidelines for necessary notes or for self-restriction of spoiler or sensitive text."
useCases:"This is used when following the server guidelines, for necessary notes, or for self-restriction of spoiler or sensitive text."
_howToMakeAttachmentsSensitive:
title:"How to Mark Attachments as Sensitive?"
description:"For attachments that are required by server guidelines or that should not be left intact, add a \"sensitive\" flag."
@@ -1360,6 +1397,8 @@ _serverSettings:
fanoutTimelineDescription:"Greatly increases performance of timeline retrieval and reduces load on the database when enabled. In exchange, memory usage of Redis will increase. Consider disabling this in case of low server memory or server instability."
fanoutTimelineDbFallback:"Fallback to database"
fanoutTimelineDbFallbackDescription:"When enabled, the timeline will fall back to the database for additional queries if the timeline is not cached. Disabling it further reduces the server load by eliminating the fallback process, but limits the range of timelines that can be retrieved."
inquiryUrl:"Inquiry URL"
inquiryUrlDescription:"Specify a URL for the inquiry form to the server maintainer or a web page for the contact information."
preservedUsernamesDescription:"Énumérez les noms d'utilisateur à réserver, séparés par des nouvelles lignes. Les noms d'utilisateur spécifiés ici ne seront plus utilisables lors de la création d'un compte, sauf la création manuelle par un administrateur. De plus, les comptes existants ne seront pas affectés."
createNoteFromTheFile:"Rédiger une note de ce fichier"
channelArchiveConfirmDescription:"Une fois archivé, le canal n'apparaîtra plus dans la liste des canaux ni dans les résultats de recherche, et la publication des nouvelles notes sera impossible."
thisChannelArchived:"Ce canal a été archivé."
@@ -1224,6 +1226,13 @@ enableHorizontalSwipe: "Glisser pour changer d'onglet"
loading:"Chargement en cours"
surrender:"Annuler"
gameRetry:"Réessayer"
launchApp:"Lancer l'app"
inquiry:"Contact"
_delivery:
status:"Statut de la diffusion"
stop:"Suspendu·e"
_type:
none:"Publié"
_bubbleGame:
howToPlay:"Comment jouer"
hold:"Réserver"
@@ -1708,8 +1717,6 @@ _sfx:
note:"Nouvelle note"
noteMy:"Ma note"
notification:"Notifications"
antenna:"Réception de l’antenne"
channel:"Notifications de canal"
reaction:"Lors de la sélection de la réaction"
_soundSettings:
driveFile:"Utiliser un effet sonore sur le Disque"
noMaintainerInformationWarning:"Mancano le informazioni sull'amministratore."
noInquiryUrlWarning:"Non è stata impostata la URL di contatto"
noBotProtectionWarning:"Non è stata impostata alcuna protezione dai Bot"
configure:"Imposta"
postToGallery:"Pubblicare nella galleria"
@@ -1021,6 +1032,7 @@ thisPostMayBeAnnoyingHome: "Pubblica sulla timeline principale"
thisPostMayBeAnnoyingCancel:"Annulla"
thisPostMayBeAnnoyingIgnore:"Pubblica lo stesso"
collapseRenotes:"Comprimi le Rinota già viste"
collapseRenotesDescription:"Comprimi le Note con cui hai già interagito."
internalServerError:"Errore interno del server"
internalServerErrorDescription:"Si è verificato un errore imprevisto all'interno del server"
copyErrorInfo:"Copia le informazioni sull'errore"
@@ -1233,6 +1245,20 @@ useNativeUIForVideoAudioPlayer: "Riprodurre audio/video usando le funzionalità
keepOriginalFilename:"Mantieni il nome file originale"
keepOriginalFilenameDescription:"Disattivandola, i file verranno caricati usando nomi casuali."
noDescription:"Manca la descrizione"
alwaysConfirmFollow:"Richiedi conferma per i Follow"
inquiry:"Contattaci"
tryAgain:"Per favore riprova"
confirmWhenRevealingSensitiveMedia:"Richiedi conferma prima di mostrare gli allegati espliciti"
sensitiveMediaRevealConfirm:"Questo allegato è esplicito, vuoi vederlo?"
_delivery:
status:"Stato della consegna"
stop:"Sospensione"
resume:"Riprendi la consegna"
_type:
none:"Pubblicazione"
manuallySuspended:"Sospesa manualmente"
goneSuspended:"Sospensione server a causa dell'eliminazione"
autoSuspendedForNotResponding:"Sospensione del server a causa di mancata risposta"
_bubbleGame:
howToPlay:"Come giocare"
hold:"Tieni"
@@ -1358,6 +1384,8 @@ _serverSettings:
fanoutTimelineDescription:"Attivando questa funzionalità migliori notevolmente la capacità delle Timeline di collezionare Note, riducendo il carico sul database. Tuttavia, aumenterà l'impiego di memoria RAM per Redis. Disattiva se il tuo server ha poca RAM o la funzionalità è irregolare."
fanoutTimelineDbFallback:"Elaborazione dati alternativa"
fanoutTimelineDbFallbackDescription:"Attivando l'elaborazione alternativa, verrà interrogato ulteriormente il database se la timeline non è nella cache. \nDisattivando, si può ridurre ulteriormente il carico del server, evitando l'elaborazione alternativa, ma limitando l'intervallo recuperabile delle timeline."
inquiryUrl:"URL di contatto"
inquiryUrlDescription:"Specificare l'URL al modulo di contatto, oppure le informazioni con i dati di contatto dell'amministrazione."
_accountMigration:
moveFrom:"Migra un altro profilo dentro a questo"
moveFromSub:"Crea un alias verso un altro profilo remoto"
@@ -1674,6 +1702,7 @@ _role:
canManageAvatarDecorations:"Gestisce le decorazioni di immagini del profilo"
driveCapacity:"Capienza del Drive"
alwaysMarkNsfw:"Impostare sempre come esplicito (NSFW)"
canUpdateBioMedia:"Può aggiornare foto profilo e di testata"
pinMax:"Quantità massima di Note in primo piano"
antennaMax:"Quantità massima di Antenne"
wordMuteMax:"Lunghezza massima del filtro parole"
@@ -1692,6 +1721,11 @@ _role:
roleAssignedTo:"Assegnato a ruoli manualmente"
isLocal:"Profilo locale"
isRemote:"Profilo remoto"
isCat:"È un gattino"
isBot:"È un bot"
isSuspended:"È sospeso"
isLocked:"È in stato privato"
isExplorable:"Autorizza la pubblicazione nei cataloghi"
createdLessThan:"Profilo creato da meno di N"
createdMoreThan:"Profilo creato da più di N"
followersLessThanOrEq:"Profilo con N follower o meno"
@@ -1912,8 +1946,6 @@ _sfx:
note:"Nota"
noteMy:"Mia nota"
notification:"Notifiche"
antenna:"Ricezione dell'antenna"
channel:"Notifiche di canale"
reaction:"Quando seleziono una reazione"
_soundSettings:
driveFile:"Suoni del Drive"
@@ -2025,7 +2057,6 @@ _permissions:
"read:admin:server-info": "Vedere le informazioni sul server"
"read:admin:show-moderation-log": "Vedere lo storico di moderazione"
"read:admin:show-user": "Vedere le informazioni private degli account utente"
"read:admin:show-users": "Vedere le informazioni private degli account utente"
"write:admin:suspend-user": "Sospendere i profili"
"write:admin:unset-user-avatar": "Rimuovere la foto profilo dai profili"
"write:admin:unset-user-banner": "Rimuovere l'immagine testata dai profili"
@@ -2339,6 +2370,7 @@ _deck:
alwaysShowMainColumn:"Mostra sempre la colonna principale"
columnAlign:"Allineare colonne"
addColumn:"Aggiungi colonna"
newNoteNotificationSettings:"Preferenze per le notifiche di nuove Note"
configureColumn:"Impostazioni colonna"
swapLeft:"Sposta a sinistra"
swapRight:"Sposta a destra"
@@ -2377,9 +2409,9 @@ _drivecleaner:
orderByCreatedAtAsc:"Dal più vecchio al più recente"
_webhookSettings:
createWebhook:"Creazione Webhook"
modifyWebhook:"Modifica Webhook"
name:"Nome"
secret:"Segreto"
events:"Quando eseguire il Webhook"
active:"Attivo"
_events:
follow:"Quando segui un profilo"
@@ -2389,6 +2421,25 @@ _webhookSettings:
renote:"Quando la Nota è Rinotata"
reaction:"Quando ricevo una reazione"
mention:"Quando mi menzionano"
_systemEvents:
abuseReport:"Quando arriva una segnalazione"
abuseReportResolved:"Quando una segnalazione è risolta"
deleteConfirm:"Vuoi davvero eliminare il Webhook?"
_abuseReport:
_notificationRecipient:
createRecipient:"Aggiungi destinatario della segnalazione"
modifyRecipient:"Modifica destinatario della segnalazione"
recipientType:"Tipo di notifica"
_recipientType:
mail:"Email"
webhook:"Webhook"
_captions:
mail:"Quando ricevi un abuso, notifica l'amministrazione via email"
webhook:"Spedire una notifica al SystemWebhook specificato (sia quando si riceve una segnalazione, che quando viene risolta)"
keywords:"Parole chiave"
notifiedUser:"Profili da notificare"
notifiedWebhook:"Webhook da usare"
deleteConfirm:"Vuoi davvero rimuovere il destinatario della notifica?"
_moderationLogTypes:
createRole:"Ruolo creato"
deleteRole:"Ruolo eliminato"
@@ -2426,6 +2477,12 @@ _moderationLogTypes:
deleteAvatarDecoration:"Eliminazione decorazione della foto profilo"
unsetUserAvatar:"Rimossa foto profilo"
unsetUserBanner:"Rimossa intestazione profilo"
createSystemWebhook:"Crea un SystemWebhook"
updateSystemWebhook:"Modifica SystemWebhook"
deleteSystemWebhook:"Elimina SystemWebhook"
createAbuseReportNotificationRecipient:"Crea destinatario per le notifiche di segnalazioni"
updateAbuseReportNotificationRecipient:"Aggiorna destinatario notifiche di segnalazioni"
deleteAbuseReportNotificationRecipient:"Elimina destinatario notifiche di segnalazioni"
_fileViewer:
title:"Dettagli del file"
type:"Tipo di file"
@@ -2551,6 +2608,8 @@ _urlPreviewSetting:
userAgent:"User-Agent"
userAgentDescription:"Definire con quale User-Agent si intende identificarsi durante l'acquisizione di un'anteprima. Se è vuoto, useremo il valore predefinito."
summaryProxy:"Endpoint proxy che genera l'anteprima"
summaryProxyDescription:"Genera anteprime utilizzando un proxy Summaly anziché Misskey."
summaryProxyDescription2:"I parametri sono collegano al proxy come stringa query. Se il proxy non li supporta, verranno ignorati."
proxyAccountDescription:"프록시 계정은 특정 조건 하에서 유저의 리모트 팔로우를 대행하는 계정입니다. 예를 들면, 유저가 리모트 유저를 리스트에 넣었을 때, 리스트에 들어간 유저를 아무도 팔로우한 적이 없다면 액티비티가 서버로 배달되지 않기 때문에, 대신 프록시 계정이 해당 유저를 팔로우하도록 합니다."
host:"호스트"
selectUser:"사용자 선택"
selectUser:"유저 선택"
recipient:"수신인"
annotation:"내용에 대한 주석"
federation:"연합"
@@ -230,7 +237,7 @@ noUsers: "아무도 없습니다"
editProfile:"프로필 수정"
noteDeleteConfirm:"이 노트를 삭제하시겠습니까?"
pinLimitExceeded:"더 이상 고정할 수 없습니다."
intro:"Misskey의 설치를 완료했습니다! 관리자 계정을 만들어 주세요."
intro:"Misskey의 설치가 완료되었습니다! 관리자 계정을 생성해주세요."
done:"완료"
processing:"처리중"
preview:"미리보기"
@@ -247,7 +254,7 @@ publishing: "배포 중"
notResponding:"응답 없음"
instanceFollowing:"서버의 팔로잉"
instanceFollowers:"서버의 팔로워"
instanceUsers:"서버의 유저"
instanceUsers:"서버의 사용자"
changePassword:"비밀번호 변경"
security:"보안"
retypedNotMatch:"입력이 일치하지 않습니다."
@@ -263,12 +270,12 @@ lookup: "찾아보기"
announcements:"공지사항"
imageUrl:"이미지 URL"
remove:"삭제"
removed:"삭제하였습니다"
removed:"삭제했습니다"
removeAreYouSure:"\"{x}\" 을(를) 삭제하시겠습니까?"
deleteAreYouSure:"\"{x}\" 을(를) 삭제하시겠습니까?"
resetAreYouSure:"초기화 하시겠습니까?"
areYouSure:"계속 진행하시겠습니까?"
saved:"저장하였습니다"
saved:"저장했습니다"
messaging:"대화"
upload:"업로드"
keepOriginalUploading:"원본 이미지를 유지"
@@ -296,7 +303,7 @@ activity: "활동"
images:"이미지"
image:"이미지"
birthday:"생일"
yearsOld:"만 {age}세"
yearsOld:"{age}세"
registeredDate:"등록일"
location:"장소"
theme:"테마"
@@ -313,6 +320,7 @@ selectFile: "파일 선택"
selectFiles:"파일 선택"
selectFolder:"폴더 선택"
selectFolders:"폴더 선택"
fileNotSelected:"파일을 선택하지 않았습니다"
renameFile:"파일 이름 변경"
folderName:"폴더 이름"
createFolder:"폴더 만들기"
@@ -370,7 +378,7 @@ inMb: "메가바이트 단위"
bannerUrl:"배너 이미지 URL"
backgroundImageUrl:"배경 이미지 URL"
basicInfo:"기본 정보"
pinnedUsers:"고정된 유저"
pinnedUsers:"고정한 사용자"
pinnedUsersDescription:"\"발견하기\" 페이지 등에 고정하고 싶은 유저를 한 줄에 한 명씩 적습니다."
pinnedPages:"고정한 페이지"
pinnedPagesDescription:"서버의 대문에 고정하고 싶은 페이지의 경로를 한 줄에 하나씩 적습니다."
@@ -443,7 +451,7 @@ lastUsed: "마지막 사용"
lastUsedAt:"마지막 사용: {t}"
unregister:"등록 해제"
passwordLessLogin:"비밀번호 없이 로그인"
passwordLessLoginDescription:"비밀번호를 사용하지 않고 보안 키 또는 패스 키 등으로만 로그인합니다."
passwordLessLoginDescription:"비밀번호 없이 보안 키 또는 패스키만 사용해서 로그인합니다."
resetPassword:"비밀번호 재설정"
newPasswordIs:"새로운 비밀번호는 \"{password}\" 입니다"
reduceUiAnimation:"UI의 애니메이션을 줄이기"
@@ -468,10 +476,12 @@ retype: "다시 입력"
noteOf:"{user}의 노트"
quoteAttached:"인용함"
quoteQuestion:"인용해서 작성하시겠습니까?"
attachAsFileQuestion:"붙여넣으려는 글이 너무 깁니다. 텍스트 파일로 첨부하시겠습니까?"
noMessagesYet:"아직 대화가 없습니다"
newMessageExists:"새 메시지가 있습니다"
onlyOneFileCanBeAttached:"메시지에 첨부할 수 있는 파일은 하나까지입니다"
signinRequired:"진행하기 전에 로그인을 해 주세요"
signinOrContinueOnRemote:"계속하려면 사용하는 서버로 이동하거나 이 서버에 로그인해야 합니다."
invitations:"초대"
invitationCode:"초대 코드"
checking:"확인하는 중입니다"
@@ -486,7 +496,7 @@ strongPassword: "강한 비밀번호"
passwordMatched:"일치합니다"
passwordNotMatched:"일치하지 않습니다"
signinWith:"{x}로 로그인"
signinFailed:"로그인할 수 없습니다. 사용자명과 비밀번호를 확인하여 주십시오."
signinFailed:"로그인할 수 없습니다. 사용자 이름과 비밀번호를 확인해 주십시오."
or:"혹은"
language:"언어"
uiLanguage:"UI 표시 언어"
@@ -494,7 +504,7 @@ aboutX: "{x}에 대하여"
emojiStyle:"이모지 스타일"
native:"기본"
disableDrawer:"드로어 메뉴를 사용하지 않기"
showNoteActionsOnlyHover:"노트 액션 버튼을 마우스를 올렸을 때에만 표시"
showNoteActionsOnlyHover:"마우스가 올라간 때에만 노트 동작 버튼을 표시하기"
showReactionsCount:"노트의 반응 수를 표시하기"
noHistory:"기록이 없습니다"
signinHistory:"로그인 기록"
@@ -559,7 +569,7 @@ popout: "새 창으로 열기"
volume:"음량"
masterVolume:"마스터 볼륨"
notUseSound:"음소거 하기"
useSoundOnlyWhenActive:"Misskey가 활성화 되어져 있을 때만 소리 출력하기"
useSoundOnlyWhenActive:"Misskey를 활성화한 때에만 소리를 출력하기"
details:"자세히"
chooseEmoji:"이모지 선택"
unableToProcess:"작업을 완료할 수 없습니다"
@@ -588,7 +598,7 @@ deleteAllFiles: "모든 파일 삭제"
deleteAllFilesConfirm:"모든 파일을 삭제하시겠습니까?"
removeAllFollowing:"모든 팔로잉 해제"
removeAllFollowingDescription:"{host} 서버의 모든 팔로잉을 해제합니다. 해당 서버가 더 이상 존재하지 않는 경우 등에 실행해 주세요."
userSuspended:"이 계정은 정지된 상태입니다."
userSuspended:"이 사용자는 정지되었습니다."
userSilenced:"이 계정은 사일런스된 상태입니다."
yourAccountSuspendedTitle:"계정이 정지되었습니다"
yourAccountSuspendedDescription:"이 계정은 서버의 이용 약관을 위반하거나, 기타 다른 이유로 인해 정지되었습니다. 자세한 사항은 관리자에게 문의해 주십시오. 계정을 새로 생성하지 마십시오."
@@ -752,7 +762,7 @@ experimentalFeatures: "실험실"
experimental:"실험실"
thisIsExperimentalFeature:"이 기능은 실험적인 기능입니다. 사양이 변경되거나 정상적으로 동작하지 않을 가능성이 있습니다."
developer:"개발자"
makeExplorable:"\"발견하기\"에 내 계정 보이기"
makeExplorable:"계정을 쉽게 발견하도록 하기"
makeExplorableDescription:"비활성화하면 \"발견하기\"에 나의 계정을 표시하지 않습니다."
showGapBetweenNotesInTimeline:"타임라인의 노트 사이를 띄워서 표시"
collapseRenotesDescription:"반응이나 리노트를 한 노트를 접어서 표시합니다."
internalServerError:"내부 서버 오류"
internalServerErrorDescription:"내부 서버에서 예기치 않은 오류가 발생했습니다."
copyErrorInfo:"오류 정보 복사"
@@ -1090,7 +1102,7 @@ serverRules: "서버 규칙"
pleaseConfirmBelowBeforeSignup:"이 서버에 가입하기 전에 아래 사항을 확인하여 주십시오."
pleaseAgreeAllToContinue:"계속하시려면 모든 항목에 동의하십시오."
continue:"계속"
preservedUsernames:"예약된 사용자명"
preservedUsernames:"예약한 사용자 이름"
preservedUsernamesDescription:"예약할 사용자명을 한 줄에 하나씩 입력합니다. 여기에서 지정한 사용자명으로는 계정을 생성할 수 없게 됩니다. 단, 관리자 권한으로 계정을 생성할 때에는 해당되지 않으며, 이미 존재하는 계정도 영향을 받지 않습니다."
createNoteFromTheFile:"이 파일로 노트를 작성"
archive:"아카이브"
@@ -1230,6 +1242,22 @@ useTotp: "일회용 비밀번호 사용"
useBackupCode:"백업 코드 사용"
launchApp:"앱 실행"
useNativeUIForVideoAudioPlayer:"브라우저 UI에서 미디어 재생"
keepOriginalFilename:"원본 파일 이름을 유지"
keepOriginalFilenameDescription:"이 설정을 끄면 업로드를 할 때 파일 이름이 자동으로 무작위 문자열로 바뀝니다."
noDescription:"설명문이 없습니다"
alwaysConfirmFollow:"팔로우일 때 항상 확인하기"
inquiry:"문의하기"
tryAgain:"다시 시도해 주세요."
confirmWhenRevealingSensitiveMedia:"민감한 미디어를 열 때 두 번 확인"
_delivery:
status:"전송 상태"
stop:"정지됨"
resume:"전송 다시 시작"
_type:
none:"배포 중"
manuallySuspended:"수동 정지 중"
goneSuspended:"서버 삭제를 이유로 정지 중"
autoSuspendedForNotResponding:"서버 응답 없음을 이유로 정지 중"
_bubbleGame:
howToPlay:"설명"
hold:"홀드"
@@ -1355,6 +1383,8 @@ _serverSettings:
fanoutTimelineDescription:"활성화하면 각종 타임라인을 가져올 때의 성능을 대폭 향상하며, 데이터베이스의 부하를 줄일 수 있습니다. 단, Redis의 메모리 사용량이 증가합니다. 서버의 메모리 용량이 작거나, 서비스가 불안정해지는 경우 비활성화할 수 있습니다."
fanoutTimelineDbFallback:"데이터베이스를 예비로 사용하기"
fanoutTimelineDbFallbackDescription:"활성화하면 타임라인의 캐시되어 있지 않은 부분에 대해 DB에 질의하여 정보를 가져옵니다. 비활성화하면 이를 실행하지 않음으로써 서버의 부하를 줄일 수 있지만, 타임라인에서 가져올 수 있는 게시물 범위가 한정됩니다."
inquiryUrl:"문의처 URL"
inquiryUrlDescription:"서버 운영자에게 보내는 문의 양식의 URL이나 운영자의 연락처 등이 적힌 웹 페이지의 URL을 설정합니다."
_accountMigration:
moveFrom:"다른 계정에서 이 계정으로 이사"
moveFromSub:"다른 계정에 대한 별칭을 생성"
@@ -1671,10 +1701,11 @@ _role:
canManageAvatarDecorations:"아바타 꾸미기 관리"
driveCapacity:"드라이브 용량"
alwaysMarkNsfw:"파일을 항상 NSFW로 지정"
canUpdateBioMedia:"아바타 및 배너 이미지 변경 허용"
pinMax:"고정할 수 있는 노트 수"
antennaMax:"만들 수 있는 안테나 수"
wordMuteMax:"단어 뮤트할 수 있는 문자 수"
webhookMax:"만들 수 있는 웹후크 수"
webhookMax:"만들 수 있는 Webhook 수"
clipMax:"만들 수 있는 클립 수"
noteEachClipsMax:"클립에 넣을 수 있는 노트 수"
userListMax:"만들 수 있는 사용자 리스트 수"
@@ -1689,6 +1720,11 @@ _role:
roleAssignedTo:"수동 역할에 이미 할당됨"
isLocal:"로컬 사용자"
isRemote:"리모트 사용자"
isCat:"고양이 사용자"
isBot:"봇 사용자"
isSuspended:"정지된 사용자"
isLocked:"잠금 계정 사용자"
isExplorable:"‘계정을 쉽게 발견하도록 하기’를 활성화한 사용자"
createdLessThan:"가입한 지 다음 일수 이내인 유저"
createdMoreThan:"가입한 지 다음 일수 이상인 유저"
followersLessThanOrEq:"팔로워 수가 다음 이하인 유저"
@@ -1909,8 +1945,6 @@ _sfx:
note:"새 노트"
noteMy:"내 노트"
notification:"알림"
antenna:"안테나 수신"
channel:"채널 알림"
reaction:"리액션 선택"
_soundSettings:
driveFile:"드라이브에 있는 오디오를 사용"
@@ -1971,6 +2005,7 @@ _2fa:
backupCodesDescription:"인증 앱을 사용할 수 없게 된 경우 아래 백업 코드를 사용하여 계정에 액세스 할 수 있습니다.이 코드들은 반드시 안전한 장소에 보관하십시오.각 코드는 한 번만 사용할 수 있습니다."
backupCodeUsedWarning:"백업 코드가 사용되었습니다.인증 앱을 사용할 수 없게 된 경우, 조속히 인증 앱을 다시 설정해 주십시오."
backupCodesExhaustedWarning:"백업 코드가 모두 사용되었습니다.인증 앱을 사용할 수 없는 경우 더 이상 계정에 액세스하는 것이 불가능합니다.인증 앱을 다시 등록해 주세요."
moreDetailedGuideHere:"여기에 자세한 설명이 있습니다"
_permissions:
"read:account": "계정의 정보를 봅니다"
"write:account": "계정의 정보를 변경합니다"
@@ -2021,7 +2056,6 @@ _permissions:
"read:admin:server-info": "서버 정보 보기"
"read:admin:show-moderation-log": "조정 기록 보기"
"read:admin:show-user": "사용자 개인정보 보기"
"read:admin:show-users": "사용자 개인정보 보기"
"write:admin:suspend-user": "사용자 정지하기"
"write:admin:unset-user-avatar": "사용자 아바타 삭제하기"
"write:admin:unset-user-banner": "사용자 배너 삭제하기"
@@ -2160,7 +2194,7 @@ _postForm:
c:"무엇을 생각하고 있나요?"
d:"말하고 싶은 게 있나요?"
e:"여기에 적어 주세요"
f:"글 쓰기를 기다려요…"
f:"작성해주시길 기다리고 있어요..."
_profile:
name:"이름"
username:"사용자 이름"
@@ -2335,6 +2369,7 @@ _deck:
alwaysShowMainColumn:"메인 칼럼 항상 표시"
columnAlign:"칼럼 정렬"
addColumn:"칼럼 추가"
newNoteNotificationSettings:"새 노트 알림 설정"
configureColumn:"칼럼 설정"
swapLeft:"왼쪽으로 이동"
swapRight:"오른쪽으로 이동"
@@ -2373,9 +2408,9 @@ _drivecleaner:
orderByCreatedAtAsc:"등록일이 오래된 순"
_webhookSettings:
createWebhook:"Webhook 생성"
modifyWebhook:"Webhook 수정"
name:"이름"
secret:"시크릿"
events:"Webhook을 실행할 타이밍"
active:"활성화"
_events:
follow:"누군가를 팔로우했을 때"
@@ -2385,6 +2420,26 @@ _webhookSettings:
renote:"누군가 내 글을 리노트했을 때"
reaction:"누군가 내 노트에 리액션했을 때"
mention:"누군가 나를 멘션했을 때"
_systemEvents:
abuseReport:"유저로부터 신고를 받았을 때"
abuseReportResolved:"받은 신고를 처리했을 때"
userCreated:"유저가 생성되었을 때"
deleteConfirm:"Webhook을 삭제할까요?"
_abuseReport:
_notificationRecipient:
createRecipient:"신고 수신자 추가"
modifyRecipient:"신고 수신자 편집"
recipientType:"알림 수신 유형"
_recipientType:
mail:"이메일"
webhook:"Webhook"
_captions:
mail:"모더레이터 권한을 가진 사용자의 이메일 주소에 알림을 보냅니다 (신고를 받은 때에만)"
webhook:"지정한 SystemWebhook에 알림을 보냅니다 (신고를 받은 때와 해결했을 때에 송신)"
attachAsFileQuestion:"Văn bản ở trong bộ nhớ tạm rất dài. Bạn có muốn đăng nó dưới dạng một tệp văn bản không?"
noMessagesYet:"Chưa có tin nhắn"
newMessageExists:"Bạn có tin nhắn mới"
onlyOneFileCanBeAttached:"Bạn chỉ có thể đính kèm một tập tin"
@@ -1118,6 +1121,10 @@ pullDownToRefresh: "Kéo xuống để làm mới"
cwNotationRequired:"Nếu \"Ẩn nội dung\" được bật thì cần phải có chú thích."
lastNDays:"{n} ngày trước"
surrender:"Từ chối"
_delivery:
stop:"Đã vô hiệu hóa"
_type:
none:"Đang đăng"
_announcement:
forExistingUsers:"Chỉ những người dùng đã tồn tại"
forExistingUsersDescription:"Nếu được bật, thông báo này sẽ chỉ hiển thị với những người dùng đã tồn tại vào lúc thông báo được tạo. Nếu tắt đi, những tài khoản mới đăng ký sau khi thông báo được đăng lên cũng sẽ thấy nó."
CONSTRAINT "FK_abuse_report_notification_recipient_userId1" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE CASCADE ON UPDATE NO ACTION,
CONSTRAINT "FK_abuse_report_notification_recipient_userId2" FOREIGN KEY ("userId") REFERENCES "user_profile"("userId") ON DELETE CASCADE ON UPDATE NO ACTION,
CONSTRAINT "FK_abuse_report_notification_recipient_systemWebhookId" FOREIGN KEY ("systemWebhookId") REFERENCES "system_webhook"("id") ON DELETE CASCADE ON UPDATE NO ACTION
);
CREATE INDEX "IDX_abuse_report_notification_recipient_isActive" ON "abuse_report_notification_recipient" ("isActive");
CREATE INDEX "IDX_abuse_report_notification_recipient_method" ON "abuse_report_notification_recipient" ("method");
CREATE INDEX "IDX_abuse_report_notification_recipient_userId" ON "abuse_report_notification_recipient" ("userId");
CREATE INDEX "IDX_abuse_report_notification_recipient_systemWebhookId" ON "abuse_report_notification_recipient" ("systemWebhookId");
`);
}
asyncdown(queryRunner){
awaitqueryRunner.query(`
ALTER TABLE "abuse_report_notification_recipient" DROP CONSTRAINT "FK_abuse_report_notification_recipient_userId1";
ALTER TABLE "abuse_report_notification_recipient" DROP CONSTRAINT "FK_abuse_report_notification_recipient_userId2";
ALTER TABLE "abuse_report_notification_recipient" DROP CONSTRAINT "FK_abuse_report_notification_recipient_systemWebhookId";
DROP INDEX "IDX_abuse_report_notification_recipient_isActive";
DROP INDEX "IDX_abuse_report_notification_recipient_method";
DROP INDEX "IDX_abuse_report_notification_recipient_userId";
DROP INDEX "IDX_abuse_report_notification_recipient_systemWebhookId";
awaitqueryRunner.query(`CREATE TYPE "public"."instance_suspensionstate_enum" AS ENUM('none', 'manuallySuspended', 'goneSuspended', 'autoSuspendedForNotResponding')`);
awaitqueryRunner.query(`DROP INDEX "public"."IDX_34500da2e38ac393f7bb6b299c"`);
awaitqueryRunner.query(`ALTER TABLE "instance" RENAME COLUMN "isSuspended" TO "suspensionState"`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" DROP DEFAULT`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" TYPE "public"."instance_suspensionstate_enum" USING (
CASE "suspensionState"
WHEN TRUE THEN 'manuallySuspended'::instance_suspensionstate_enum
ELSE 'none'::instance_suspensionstate_enum
END
)`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" SET DEFAULT 'none'`);
awaitqueryRunner.query(`CREATE INDEX "IDX_3ede46f507c87ad698051d56a8" ON "instance" ("suspensionState") `);
}
asyncdown(queryRunner){
awaitqueryRunner.query(`DROP INDEX "public"."IDX_3ede46f507c87ad698051d56a8"`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" DROP DEFAULT`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" TYPE boolean USING (
CASE "suspensionState"
WHEN 'none'::instance_suspensionstate_enum THEN FALSE
ELSE TRUE
END
)`);
awaitqueryRunner.query(`ALTER TABLE "instance" ALTER COLUMN "suspensionState" SET DEFAULT false`);
awaitqueryRunner.query(`ALTER TABLE "instance" RENAME COLUMN "suspensionState" TO "isSuspended"`);
awaitqueryRunner.query(`CREATE INDEX "IDX_34500da2e38ac393f7bb6b299c" ON "instance" ("isSuspended") `);
awaitqueryRunner.query(`DROP TYPE "public"."instance_suspensionstate_enum"`);
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.