import type { Locale } from '@uppy/utils/lib/Translator'

const zh_TW: Locale<0> = {
  strings: {},
  pluralize() {
    return 0
  },
}

zh_TW.strings = {
  addBulkFilesFailed: '因伺服器錯誤，無法新增 %{smart_count} 個檔案',
  addedNumFiles: '已新增 %{numFiles} 個檔案',
  addingMoreFiles: '正在新增更多檔案',
  additionalRestrictionsFailed: '尚未滿足 %{count} 個額外限制',
  addMore: '新增更多',
  addMoreFiles: '新增更多檔案',
  allFilesFromFolderNamed: '資料夾 %{name} 中的所有檔案',
  allowAccessDescription: '請允許本網站存取相機以拍照或錄影。',
  allowAccessTitle: '請允許對相機的存取權限',
  allowAudioAccessDescription: '請允許本網站存取麥克風以錄製音訊。',
  allowAudioAccessTitle: '請允許對麥克風的存取權限',
  aspectRatioLandscape: '裁切成橫向 (16:9)',
  aspectRatioPortrait: '裁切成直向 (9:16)',
  aspectRatioSquare: '裁切成方形',
  authAborted: '驗證已中止',
  authenticateWith: '連接到 %{pluginName}',
  authenticateWithTitle: '請使用 %{pluginName} 進行身份驗證以選擇檔案',
  back: '返回',
  browse: '瀏覽',
  browseFiles: '瀏覽檔案',
  browseFolders: '瀏覽資料夾',
  cancel: '取消',
  cancelUpload: '取消上傳',
  chooseFiles: '選擇檔案',
  closeModal: '關閉視窗',
  companionError: '與 Companion 的連接失敗',
  companionUnauthorizeHint: '若要取消 %{provider} 帳號認證，請前往 %{url}',
  complete: '完成',
  compressedX: '圖片壓縮後，省下了 %{size}',
  compressingImages: '正在壓縮圖片...',
  connectedToInternet: '連線至網路',
  copyLink: '複製連結',
  copyLinkToClipboardFallback: '複製以下網址',
  copyLinkToClipboardSuccess: '連結已複製到剪貼簿',
  creatingAssembly: '正在準備上傳...',
  creatingAssemblyFailed: 'Transloadit：無法建立程序集',
  dashboardTitle: 'Uppy 儀表板',
  dashboardWindowTitle: 'Uppy 儀表板視窗（按下 Esc 以關閉）',
  dataUploadedOfTotal: '%{complete}/%{total}',
  discardRecordedFile: '捨棄錄影檔',
  done: '完成',
  dropHereOr: '拖曳至此處，或%{browse}',
  dropHint: '將檔案拖曳至此處',
  dropPasteBoth: '將檔案拖曳至此處、%{browseFiles}，或%{browseFolders}',
  dropPasteFiles: '將檔案拖曳至此處，或%{browseFiles}',
  dropPasteFolders: '將檔案拖曳至此處，或%{browseFolders}',
  dropPasteImportBoth: '將檔案拖曳至此處、%{browseFiles}，或匯入',
  dropPasteImportFiles: '將檔案拖曳至此處、%{browseFiles}，或匯入',
  dropPasteImportFolders: '將檔案拖曳至此處、%{browseFolders}，或匯入',
  editFile: '編輯檔案',
  editImage: '編輯圖片',
  editFileWithFilename: '編輯檔案 %{file}',
  editing: '編輯 %{file}',
  emptyFolderAdded: '未從空資料夾新增任何檔案',
  encoding: '編碼中...',
  enterCorrectUrl: '錯誤連結：請確認您輸入的是檔案連結',
  enterTextToSearch: '輸入文字以搜尋圖片',
  enterUrlToImport: '輸入連結以匯入檔案',
  error: '錯誤',
  exceedsSize: '此檔案大小超出允許的最大值 %{size}',
  failedToFetch: 'Companion 無法抓取此連結，請確認它是正確的',
  failedToUpload: '%{file} 上傳失敗',
  filesUploadedOfTotal: '已上傳 %{complete} 個檔案中的 %{smart_count} 個檔案',
  filter: '篩選器',
  finishEditingFile: '完成檔案編輯',
  flipHorizontal: '水平翻轉',
  folderAdded: '從 %{folder} 新增了 %{smart_count} 個檔案',
  folderAlreadyAdded: '資料夾 "%{folder}" 已新增',
  generatingThumbnails: '正在產生縮圖...',
  import: '匯入',
  importFiles: '檔案匯入來源：',
  importFrom: '從 %{name} 匯入',
  inferiorSize: '此檔案小於允許的大小：%{size}',
  loading: '正在載入...',
  logOut: '登出',
  micDisabled: '使用者拒絕麥克風存取權限',
  missingRequiredMetaField: '遺漏中繼資料必要欄位',
  missingRequiredMetaFieldOnFile: '%{fileName} 遺漏中繼資料必要欄位',
  missingRequiredMetaFields: '遺漏中繼資料必要欄位：%{fields}。',
  myDevice: '我的裝置',
  noAudioDescription: '請連接麥克風或其他音訊輸入裝置以錄製音訊',
  noAudioTitle: '無法使用麥克風',
  noCameraDescription: '請連接相機以拍照或錄影',
  noCameraTitle: '無法使用相機',
  noDuplicates: "無法新增重複檔案，'%{fileName}' 已存在",
  noFilesFound: '這裡空空如也',
  noInternetConnection: '無網路連線',
  noMoreFilesAllowed: '無法新增更多檔案',
  noSearchResults: '抱歉，找不到符合此搜尋條件的結果',
  openFolderNamed: '開啟資料夾 %{name}',
  pause: '暫停',
  paused: '已暫停',
  pauseUpload: '暫停上傳',
  pluginNameAudio: '音訊',
  pluginNameBox: 'Box',
  pluginNameCamera: '相機',
  pluginNameDropbox: 'Dropbox',
  pluginNameFacebook: 'Facebook',
  pluginNameGoogleDrive: 'Google 雲端硬碟',
  pluginNameInstagram: 'Instagram',
  pluginNameOneDrive: 'OneDrive',
  pluginNameZoom: 'Zoom',
  poweredBy: '技術提供者 %{uppy}',
  processingXFiles: '正在處理 %{smart_count} 個檔案',
  recording: '正在錄製',
  recordingLength: '錄製時長 %{recording_length}',
  recordingStoppedMaxSize: '因檔案大小即將超出限制而停止錄製',
  recordVideoBtn: '錄影',
  recoveredAllFiles: '我們還原了所有檔案。您現在可以繼續上傳了。',
  recoveredXFiles:
    '我們無法完全復原 %{smart_count} 個檔案。請重新選擇檔案並繼續上傳。',
  removeFile: '移除檔案',
  reSelect: '重新選擇',
  resetFilter: '重設篩選器',
  resetSearch: '重設搜尋',
  resume: '繼續',
  resumeUpload: '繼續上傳',
  retry: '重試',
  retryUpload: '重試上傳',
  revert: '還原',
  rotate: '旋轉',
  save: '儲存',
  saveChanges: '儲存變更',
  search: '搜尋',
  searchImages: '搜尋圖片',
  selectX: '選擇 %{smart_count}',
  sessionRestored: '已復原工作階段',
  showErrorDetails: '顯示錯誤詳細資訊',
  signInWithGoogle: '透過 Google 登入',
  smile: '請微笑！',
  startAudioRecording: '開始錄音',
  startCapturing: '開始畫面擷取',
  startRecording: '開始錄影',
  stopAudioRecording: '停止錄音',
  stopCapturing: '停止畫面擷取',
  stopRecording: '停止錄影',
  streamActive: '主動串流',
  streamPassive: '被動串流',
  submitRecordedFile: '提交錄影檔',
  takePicture: '拍照',
  takePictureBtn: '拍照',
  timedOut: '上傳已停滯 %{seconds} 秒，正在中止上傳。',
  upload: '上傳',
  uploadComplete: '上傳完成',
  uploadFailed: '上傳失敗',
  uploading: '正在上傳',
  uploadingXFiles: '正在上傳 %{smart_count} 個檔案',
  uploadPaused: '暫停上傳',
  uploadStalled: '上傳已停滯 %{seconds} 秒。請考慮重試。',
  uploadXFiles: '上傳 %{smart_count} 個檔案',
  uploadXNewFiles: '上傳 +%{smart_count} 個檔案',
  xFilesSelected: '已選擇 %{smart_count} 個檔案',
  xMoreFilesAdded: '又新增 %{smart_count} 個檔案',
  xTimeLeft: '還剩下 %{time}',
  youCanOnlyUploadFileTypes: '您只能上傳這些檔案類型：%{types}',
  youCanOnlyUploadX: '您只能上傳 %{smart_count} 個檔案',
  youHaveToAtLeastSelectX: '您至少要選擇 %{smart_count} 個檔案',
  zoomIn: '放大',
  zoomOut: '縮小',
}

// TODO: remove this in the next major?
// @ts-expect-error Uppy can be a global in legacy bundle
if (typeof Uppy !== 'undefined') {
  // @ts-expect-error Uppy can be a global in legacy bundle
  globalThis.Uppy.locales.zh_TW = zh_TW
}

export default zh_TW
