diff --git a/package.json b/package.json index 3eb2ad0a63..748dea0f46 100644 --- a/package.json +++ b/package.json @@ -120,7 +120,7 @@ "build:js": "npm-run-all build:js:typeless build:locale-pack build:angular build:bundle", "build:ts": "yarn workspaces list --no-private --json | yarn tsc -b && yarn workspace @uppy/svelte validate", "build:lib": "yarn node ./bin/build-lib.js", - "build:locale-pack": "yarn workspace @uppy-dev/locale-pack build && eslint packages/@uppy/locales/src/en_US.js --fix && yarn workspace @uppy-dev/locale-pack test unused", + "build:locale-pack": "yarn workspace @uppy-dev/locale-pack build && eslint packages/@uppy/locales/src/en_US.ts --fix && yarn workspace @uppy-dev/locale-pack test unused", "build": "npm-run-all --serial build:ts --parallel build:js build:css --serial size", "contributors:save": "yarn node ./bin/update-contributors.mjs", "dev:with-companion": "npm-run-all --parallel start:companion dev", diff --git a/packages/@uppy/locales/src/en_US.ts b/packages/@uppy/locales/src/en_US.ts index 3d00e18033..76324ee4be 100644 --- a/packages/@uppy/locales/src/en_US.ts +++ b/packages/@uppy/locales/src/en_US.ts @@ -1,9 +1,10 @@ +/* eslint-disable @typescript-eslint/ban-ts-comment */ import type { Locale } from '@uppy/utils/lib/Translator' const en_US: Locale<0 | 1> = { strings: {}, - pluralize(count) { - if (count === 1) { + pluralize(n) { + if (n === 1) { return 0 } return 1 @@ -21,6 +22,8 @@ en_US.strings = { '%{count} additional restrictions were not fulfilled', addMore: 'Add more', addMoreFiles: 'Add more files', + aggregateExceedsSize: + 'You selected %{size} of files, but maximum allowed size is %{sizeAllowed}', allFilesFromFolderNamed: 'All files from folder %{name}', allowAccessDescription: 'In order to take pictures or record video with your camera, please allow camera access for this site.', @@ -70,8 +73,8 @@ en_US.strings = { dropPasteImportFiles: 'Drop files here, %{browseFiles} or import from:', dropPasteImportFolders: 'Drop files here, %{browseFolders} or import from:', editFile: 'Edit file', - editImage: 'Edit image', editFileWithFilename: 'Edit file %{file}', + editImage: 'Edit image', editing: 'Editing %{file}', emptyFolderAdded: 'No files were added from empty folder', encoding: 'Encoding...', @@ -90,7 +93,7 @@ en_US.strings = { }, filter: 'Filter', finishEditingFile: 'Finish editing file', - flipHorizontal: 'Flip horizontal', + flipHorizontal: 'Flip horizontally', folderAdded: { '0': 'Added %{smart_count} file from %{folder}', '1': 'Added %{smart_count} files from %{folder}', @@ -134,8 +137,12 @@ en_US.strings = { pluginNameDropbox: 'Dropbox', pluginNameFacebook: 'Facebook', pluginNameGoogleDrive: 'Google Drive', + pluginNameGooglePhotos: 'Google Photos', pluginNameInstagram: 'Instagram', pluginNameOneDrive: 'OneDrive', + pluginNameScreenCapture: 'Screencast', + pluginNameUnsplash: 'Unsplash', + pluginNameUrl: 'Link', pluginNameZoom: 'Zoom', poweredBy: 'Powered by %{uppy}', processingXFiles: { @@ -160,8 +167,8 @@ en_US.strings = { resumeUpload: 'Resume upload', retry: 'Retry', retryUpload: 'Retry upload', - revert: 'Revert', - rotate: 'Rotate', + revert: 'Reset', + rotate: 'Rotate 90°', save: 'Save', saveChanges: 'Save changes', search: 'Search', @@ -185,7 +192,7 @@ en_US.strings = { submitRecordedFile: 'Submit recorded file', takePicture: 'Take a picture', takePictureBtn: 'Take Picture', - timedOut: 'Upload stalled for %{seconds} seconds, aborting.', + unnamed: 'Unnamed', upload: 'Upload', uploadComplete: 'Upload complete', uploadFailed: 'Upload failed', @@ -227,4 +234,10 @@ en_US.strings = { zoomOut: 'Zoom out', } +// @ts-ignore untyped +if (typeof Uppy !== 'undefined') { + // @ts-ignore untyped + globalThis.Uppy.locales.en_US = en_US +} + export default en_US diff --git a/packages/@uppy/locales/template.js b/packages/@uppy/locales/template.js deleted file mode 100644 index 2bf26d705f..0000000000 --- a/packages/@uppy/locales/template.js +++ /dev/null @@ -1,16 +0,0 @@ -const en_US = { - pluralize (count) { - if (count === 1) { - return 0 - } - return 1 - }, -} - -en_US.strings = {} - -if (typeof Uppy !== 'undefined') { - globalThis.Uppy.locales.en_US = en_US -} - -export default en_US diff --git a/packages/@uppy/locales/template.ts b/packages/@uppy/locales/template.ts new file mode 100644 index 0000000000..82010883af --- /dev/null +++ b/packages/@uppy/locales/template.ts @@ -0,0 +1,22 @@ +/* eslint-disable @typescript-eslint/ban-ts-comment */ +import type { Locale } from '@uppy/utils/lib/Translator' + +const en_US: Locale<0 | 1> = { + strings: {}, + pluralize(n) { + if (n === 1) { + return 0 + } + return 1 + }, +} + +en_US.strings = {} + +// @ts-ignore untyped +if (typeof Uppy !== 'undefined') { + // @ts-ignore untyped + globalThis.Uppy.locales.en_US = en_US +} + +export default en_US diff --git a/private/dev/Dashboard.js b/private/dev/Dashboard.js index 8e9f98f70d..c7a827e26e 100644 --- a/private/dev/Dashboard.js +++ b/private/dev/Dashboard.js @@ -17,6 +17,7 @@ import DropTarget from '@uppy/drop-target' import Audio from '@uppy/audio' import Compressor from '@uppy/compressor' import GoogleDrive from '@uppy/google-drive' +import english from '@uppy/locales/lib/en_US.js' /* eslint-enable import/no-extraneous-dependencies */ import generateSignatureIfSecret from './generateSignatureIfSecret.js' @@ -90,6 +91,7 @@ export default () => { // } const uppyDashboard = new Uppy({ + locale: english, logger: debugLogger, meta: { username: 'John', diff --git a/private/locale-pack/index.mjs b/private/locale-pack/index.mjs index 0951c4ac03..9fda9710ed 100644 --- a/private/locale-pack/index.mjs +++ b/private/locale-pack/index.mjs @@ -8,10 +8,10 @@ import { getLocales, sortObjectAlphabetically } from './helpers.mjs' const root = fileURLToPath(new URL('../../', import.meta.url)) const localesPath = path.join(root, 'packages', '@uppy', 'locales') -const templatePath = path.join(localesPath, 'template.js') -const englishLocalePath = path.join(localesPath, 'src', 'en_US.js') +const templatePath = path.join(localesPath, 'template.ts') +const englishLocalePath = path.join(localesPath, 'src', 'en_US.ts') -async function getLocalesAndCombinedLocale () { +async function getLocalesAndCombinedLocale() { const locales = await getLocales(`${root}/packages/@uppy/**/lib/locale.js`) const combinedLocale = {}